C++ 中多帧的 Blob ID 匹配(图像分析)
Posted
技术标签:
【中文标题】C++ 中多帧的 Blob ID 匹配(图像分析)【英文标题】:Blob ID matching over multiple frames in C++ (image analysis) 【发布时间】:2010-06-14 10:54:13 【问题描述】:我正在开发 C++ 中的 blob 匹配和跟踪库。目前我正在使用 OpenCV 来检测 blob,并尝试通过检查 blob 的位置、速度和大小来匹配新帧中的 blob。这工作得很好,而且我收到了很高的 blob 匹配率(95% 或更高)。
有时斑点会从图像中掉出或出现新的斑点。现在我需要为匹配的 blob 提供与以前相同的 ID。我想知道是否有典型或常用的技术来做到这一点。甚至是一些我可以在 Google 上使用的关键字。
谢谢
【问题讨论】:
【参考方案1】:http://en.wikipedia.org/wiki/Blob_extraction
我假设您的二进制图像中有 blob,只需使用不同的颜色/id 填充每个 blob,并在具有相同 id 的帧之间注册重叠 blob。
【讨论】:
您好维克托,感谢您的回复。虽然这不适用于快速移动的对象,因为它们不会有重叠的像素(例如网球)。【参考方案2】:CCV 用于多点触控环境的多指跟踪。查看他们的tracking code。它使用了一个函数trackKnn
,它使用了k个最近邻算法。
如果 blob 相互碰撞,您也可以使用 Kalman Filter
。查看this SO
【讨论】:
以上是关于C++ 中多帧的 Blob ID 匹配(图像分析)的主要内容,如果未能解决你的问题,请参考以下文章
OpenCV 例程 300篇253. 多帧图像(动图)的读取与保存