Mil*_*d R 23 algorithm opencv contour computer-vision
我需要cv::FindContours()在程序中使用,我必须知道背后的算法.
openCV使用什么算法来查找轮廓?
它是如何工作的?
fir*_*ant 25
如果您阅读文档,则会提到此函数实现以下算法:
Suzuki,S.和Abe,K.,边界跟随数字化二值图像的拓扑结构分析.CVGIP 30 1,第32-46页(1985)
OpenCV是开源的,如果你想看看它是如何实现的,只需要阅读代码:https: //github.com/opencv/opencv/blob/master/modules/imgproc/src/contours.cpp#L1655
其中一个回答的这个问题有链接到有问题的文件,该链接是死的,纸是付费墙后,或许谷歌可以找到一个免费副本帮助.
截至 2018 年 9 月,该论文可通过Google Scholar获取。尽管如此,这里还是摘要,以防论文被删除:
提出了两种边界跟踪算法用于数字化二值图像的拓扑分析。第一个确定二值图像边界之间的包围关系。由于外边界和孔边界分别与 l 像素和孔的连通分量具有一一对应关系,因此所提出的算法产生二值图像的表示,从中可以提取某种无需重建图像即可获得特征。第二种算法是第一种算法的修改版本,仅遵循最外边界(即,未被孔包围的外边界)。当使用顺序数字计算机时,这些算法可以有效地用于二值图像的成分计数、缩小和拓扑结构分析。