gpt4 book ai didi

c++ - 通过消除持续运动进行运动检测

转载 作者:行者123 更新时间:2023-11-28 04:55:57 25 4
gpt4 key购买 nike

我正在尝试在 OpenCV C++ 中实现运动检测。我尝试了各种方法,如 MOG、光流,效果很好,但有没有一种方法可以消除场景中的持续运动,如持续的风扇运动等?我想到了 opencv accumuateWeighted() 但不确定它是否有效。我们有更好的方法吗?

最佳答案

我还没有完全可靠的解决方案,而且我也没有任何视频处理经验,但我会把我的想法放在现在我遇到这个问题之前:

首先考虑视频中的几对连续图像帧并将它们转换为灰度以进行更稳健的比较。

光栅扫描图像对,通过比较对应的图像对找出图像对的差异。生成的图像将给出成对图像中存在变化的像素位置,将这些像素位置聚类并在它们上面制作边界框。这样这个边界框区域将标记一个正在平移/旋转的对象。

现在我们已经对几对应用了上述图像差异操作。我们将在每个图像对差异中有旋转/平移边界框。现在检查每个结果图像的差异,像素上有边界框。

将差异图像中的边界框中心位置与其他差异图像进行比较。如果在所有差异图像中存在其中心位置有非常轻微变化的边界框,则该边界框中包含的对象将具有旋转运动,如扇形、叶子和其余边界框将代表视频中的实际平移对象。

关于c++ - 通过消除持续运动进行运动检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47131478/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com