opencv用于查找轮廓的算法是什么?
computer-vision
opencv
5
0

我需要在程序中使用cv::FindContours() ,我必须知道其背后的算法。

openCV使用什么算法查找轮廓?

它是如何工作的?

参考资料:
Stack Overflow
收藏
评论
共 2 个回答
高赞 时间 活跃

截至2018年9月,可通过Google Scholar获得该论文。尽管如此,以下是摘录的摘要:

针对数字化二值图像的拓扑分析,提出了两种边界跟随算法。第一个确定二进制图像边界之间的周围度关系。由于外边界和孔边界分别与l像素的连接分量和孔具有一对一的对应关系,因此所提出的算法产生了二进制图像的表示形式,可以从中提取某种形式的图像。特征而不重建图像。第二个算法是第一个算法的修改版本,仅遵循最外边界(即未被孔包围的外边界)。当使用顺序数字计算机时,这些算法可以有效地用于二进制图像的成分计数,收缩和拓扑结构分析。

收藏
评论

如果您阅读文档 ,则提到此函数实现以下算法:

Suzuki,S.和Abe,K.,通过边界跟随对数字化二进制图像进行拓扑结构分析。 CVGIP 30 1,pp 32-46(1985)

如果您想了解它是如何实现的,OpenCV是开源的,只需阅读以下代码即可: https : //github.com/opencv/opencv/blob/master/modules/imgproc/src/contours.cpp#L1655

该问题的答案之一是所涉论文的链接 ,该链接已失效且该论文位于付费墙后面,也许Google可以帮助您找到免费副本。

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号