1

我想在跟踪之前快速检测运动,两帧之间的 absDiff() (或 cmpS() )是否足以实现这一点,还是我应该考虑更多?请记住,我对视觉处理和 opencv 完全陌生 :)

谢谢

4

3 回答 3

2

如果要检测特定对象的运动,则需要“连接组件”计算。参考http://www.bukisa.com/articles/263221_connected-components-using-opencv

于 2011-03-19T02:26:07.873 回答
2

在“Learning OpenCV: Computer Vision with the OpenCV Library”一书的第 9 章中有一个很好的解释。根据您的场景(室内/室外、照明条件等),算法的学习阶段包括在缓冲区中累积帧之间的差异,然后使用形态学运算过滤结果以消除噪声。或者,当基本 cvAbsDiff 检测到虚假运动时,您可以实现更复杂的“码本”算法。

源代码可在 OReilly 的网站上找到。

于 2011-03-20T08:24:04.967 回答
0

没有快速简便的方法。我正在尝试的方法是随着时间的推移构建背景图像,减去不属于背景的任何前景,然后在前景对象上放置一个 roi。

于 2011-05-17T16:18:16.160 回答