我开发了一种用于对图像中的对象进行边界跟踪的算法。该算法能够跟踪图像中的所有对象并返回结果,因此您不必将具有多个对象的图像切片以将它们与算法一起使用。
所以基本上我首先找到一个阈值,然后在阈值之后获取二进制图像,然后在其上运行算法。
算法如下:
- 找到属于任何对象的第一个像素。
- 跟踪该对象(有自己的算法)
- 获取包含该对象的正方形的最小面积
- 将该正方形中的所有像素标记为 0(从二进制图像中删除它)
- 从 1 开始重复,直到没有任何物体。
该算法与彼此相距很远的对象完美地工作,但是当我尝试附加图像时,我也得到了附加的结果。
问题是,正方形靠近圆形,并且它的一部分位于包含对象的正方形中,因此这部分被删除,因为程序认为它是第一个对象的一部分。
如果有人能解决这个问题,我将不胜感激。
谢谢!