这基本上是关于 MATLAB 中的blob / feature跟踪的问题。
我有一系列顺序数组(为简单起见,比如在这个阶段为5),背景为0值,然后是每个数组中的多个对象(blob)。这是在MATLAB中。这些blob可以改变位置和大小,并在阵列之间完全出现或消失。
我想标记具有相同ID(数字或字母)的数组之间位于相同位置的任何blob。
还需要合并功能,以便在将新像素添加到前一图像中的斑点边缘时,将为其提供相同的ID。
还有一些功能,如果blob出现在任何前一个数组中(比如它在数组1中,在数组2和3中消失,然后再次出现在4和5中),那么它将被赋予相同的ID原来在第一阵列。
我目前一直在尝试在MATLAB中使用bwlabel函数来做到这一点,但显然每个连续数组都是独立于之前的标记,所以没有从一个图像到另一个图像的“跟踪”和数字对于每个blob更改,根据该数组中有多少blob及其位置。
非常感谢有关如何做到这一点的任何想法/意见。如果需要进一步澄清此问题,请告知我们。提前谢谢了。
答案 0 :(得分:0)
计算机视觉系统工具箱中有对象跟踪功能。卡尔曼滤波器(vision.KalmanFilter
)的实现可用于预测下一个视频帧中对象的位置,还有一个名为assignDetectionsToTracks
的函数可用于关联对象帧。请参阅Motion-Based Multiple Object Tracking示例。