首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在OpenCV中从边获取多边形

在OpenCV中从边获取多边形
EN

Stack Overflow用户
提问于 2015-07-14 04:06:45
回答 2查看 2.2K关注 0票数 1

我有一幅图像,我想使用Hough line算法从(血管网络)中提取线条。首先对图像进行预处理,然后使用Canny边缘检测生成二值图像。

我想要得到一个多边形/一个连接线段的数组来表示血管网络的形状。然而,直接在此图像上应用霍夫线变换会产生平庸的结果,部分原因是边缘检测意味着每个血管都由每边的两条线表示,而不是一条线。

一般来说,我对OpenCV和图像处理是个新手,所以我可能用错了方法。有什么建议或推荐的文学作品吗?

EN

回答 2

Stack Overflow用户

发布于 2016-04-07 01:48:05

我建议不要使用Canny边缘检测。

相反,首先使用二进制阈值来获得血管网络的二进制图像(有关应用二进制阈值的信息,请参阅http://docs.opencv.org/3.1.0/d7/d4d/tutorial_py_thresholding.html#gsc.tab=0 )。然后,“开”的像素应该是网络内部的点,而那些“关”的像素应该是外面的点。

然后使用findContours方法:

http://opencvexamples.blogspot.com/2013/09/find-contour.html

此方法为您提供了一个轮廓线数组,每个轮廓线都是一个点列表。一个点的列表将表示您正在查找的线段列表(它将表示一个轮廓,如果您幸运的话,它可能是一个多边形!)。

票数 1
EN

Stack Overflow用户

发布于 2015-07-14 07:09:20

Hough可能不是这项工作的最佳工具。Hough将为您提供直线或其他几何形状。它不是为遵循这样的详细模式而设计的。

考虑到这张图片,我会阅读已经解决这个问题的研究论文。这里有几个在谷歌学者上搜索的例子。如果它们对你不起作用,请查阅引文,因为它们应该引导你走上其他道路。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31392445

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档