OpenCV 2.4.2 findContours(),如何只得到直线轮廓

Posted

技术标签:

【中文标题】OpenCV 2.4.2 findContours(),如何只得到直线轮廓【英文标题】:OpenCV 2.4.2 findContours(), how to get only the straight lines contours 【发布时间】:2012-10-20 17:03:14 【问题描述】:

当我从 OpenCV 2.4.2 使用时:

cv::findContours()

这是输出:

我怎样才能摆脱所有这些不规则的形状,只留下直线?

【问题讨论】:

你应该发布一些代码来帮助我们理解问题。 一个很好的问题,也是一个常见的问题! 【参考方案1】:

对于这种情况,您可以使用 cvMinAreaRect2。这个函数给你一个 CvBox2D,因为你想要的轮廓有最大的边界框,更大的框是你的目标。 此功能还可以帮助您找到长线周围的轮廓。

【讨论】:

【参考方案2】:

您应该使用HoughLines 而不是findContours

【讨论】:

回顾我的代码,你是对的,我没有先做轮廓。在我记忆中的某个地方,其中一个似乎首先需要轮廓,但我无法很快找到它。

以上是关于OpenCV 2.4.2 findContours(),如何只得到直线轮廓的主要内容,如果未能解决你的问题,请参考以下文章

Opencv 的“findContours”错误:线程停止,代码为 -1073740777

findContours 在 opencv 中找不到轮廓

OpenCV中的findContours崩溃编译器

OpenCV findContours 函数问题

为啥openCV中的输入图像findContours()要转灰度?

OpenCV cv::findcontours *** 异常