我在VS2010中将opencv 2.0与cvblob.h一起使用,我制作了一个检测黄色斑点的程序。现在,我要对这些斑点进行编号,无论它们是否移动。我知道label属性对于对它们进行编号很有用,但是我已经尝试过了,当移动一个Blob时,标签会更改。如何保存“初始”标签号?

最佳答案

您想要的是跟踪斑点。跟踪斑点意味着您逐帧跟踪斑点。这样,您将获得一个标识移动物体(随着时间的推移出现斑点)的数字。

为此,您必须编写自己的跟踪算法(基于您的特定问题)或使用cvBlob随附的跟踪功能,这些功能远非完美,但可用于测试目的。

您在cvBlob软件包中有代码示例。尤其是:

http://cvblob.googlecode.com/svn/trunk/samples/red_object_tracking.cpp
http://cvblob.googlecode.com/svn/trunk/test/test_tracking.cpp

关于c++ - 如何在cvblob上保留blob标签?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9540941/

10-10 04:32