问题标签 [opencv-contour]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - OpenCV 2.4.4 中的轮廓/连接组件
我目前正在处理具有大量检测到的轮廓的图像。我的目标是缩小轮廓的数量,最终只得到我正在寻找的轮廓。为此,我根据区域和边界框进行了一系列测试。
现在我在每一步 a 之后drawContours
为要保留的轮廓执行 a findContours
。
我的问题是我只想做findContours
一次然后只是擦除我不想要的轮廓,这可能吗?
当前方式:
ETC
想要的方式:
有谁现在如何擦除这些轮廓?
PS:我不关心内部轮廓,我希望所有这些都通过我的测试。
编辑,解决方案(由 limonana 指出)是:contours.erase(contours.begin()+i);
python-2.7 - 在 OpenCV 2.4 - python 2.7 中处理轮廓和边界矩形
我正在使用 openCv 和 python,我正在处理结构分析和形状描述符。我找到了这个博客: http: //opencvpython.blogspot.it/2012/06/contours-2-brotherhood.html 这非常有帮助,我尝试使用黑白图像来绘制边界矩形并且它有效。但是现在我从图像中提取,例如黄色,然后我想在上面绘制一个边界矩形。问题是黑白图像不均匀,它有一些噪音,并且代码无法识别整个形状。
这是代码:
opencv - OpenCV - 如何从轮廓中删除小线段?
有没有办法从轮廓中删除小线段?
例如,在此图像中,最大轮廓由绿色指定,其近似值由蓝色指定:
由于轮廓是一组点,我想我们可以做一些事情来删除红色圆圈中的轮廓段。例如通过检测和去除小线条或小子轮廓或其他方式。但我不知道我该怎么做。
请记住我想在找到轮廓后删除它们,而不是在那之前。你知道我怎样才能删除它们吗?或者有什么想法?
python - 获取轮廓Opencv Python内的区域?
我使用了一种自适应阈值技术来创建如下图所示的图片:
我使用的代码是:
然后,我使用此代码获取轮廓:
我的目标是使用外轮廓内的所有像素生成蒙版,因此我想将对象内的所有像素填充为白色。我怎样才能做到这一点?
我已尝试使用下面的代码创建蒙版,但生成的蒙版似乎与应用自适应阈值后的图像没有什么不同
python - 如何在opencv-python中从左到右制作顺序轮廓
在 opencv-python 中使用轮廓分割手写数字后,它给出了一个随机输出轮廓。我如何获得一个从左到右和从上到下的顺序?
c++ - openCV 2.4.10 bwlabel - 连接组件
这是matlab的原始代码:
这是我使用openCV的代码
因为现在我有了轮廓,我想使用 bwlabel 函数
1。我认为标记是为了获得连接的 4-8 个对象。你能解释一下标签实际上是什么吗?我会aapriciate任何链接。
2.这篇文章中OpenCV
中的连接组件有人说的是CVblob,有人说的是opecv的cvContourArea,你能解释一下区别吗?什么更适合我的用例?
更新:这是我尝试使用 cvBlobs
c++ - 使用opencv填充随机形状
我正在尝试创建一个需要填充不规则形状的应用程序,例如嘴唇和眼球。
我试图做的是提取 CLM 点。接下来,我尝试了 OpenCV 中的填充功能,但我无法为随机形状做到这一点。
之后,我尝试了该drawContours
功能并使用负厚度进行填充,得到的结果如下。
任何人都可以为获得更好的填充结果和跟踪 CLM 点提供建议吗?
android - 在android上绘制凸包
我尝试在图像上绘制凸包。为此,我找到所有轮廓并选择最大区域轮廓。drawContours
接受MatOfPoint
但convexHull
给我MatOfInt
。我读了这个问题并运行了一些代码。他们中的一些人绘制了凸包,但他们找不到真正的凸点。
我使用下面的代码,但它在最后一行出现运行时错误m.fromArray(hullpoints.get(i));
。hullpoints.get(i)
只有一点,代码无法创建MatOfPoint
对象。如何转换为MatOfPoint
from MatOfInt
?
c++ - Opencv findcontours CV_RETR_EXTERNAL not working
I've this image:
EDIT Sorry but I had to remove the images!
I need to extract the contour of the non-black picture, so I used findcontour with the CV_RETR_EXTERNAL parameter, but I obtain this:
Here's the code:
how can I resolve?
c++ - 如何在 OpenCV 2.4.10 中过滤掉小轮廓
速览:我对 OpenCV 非常陌生,但想通过它变得更好,但目前我对它真的很不好(显然没有经验或导师......)。我需要制作一个可以从四轴飞行器检测不同物体的程序,唯一的问题是我会出现大量随机的小形状。我从这里借用了代码:http: //opencv-srf.blogspot.com/2011/09/object-detection-tracking-using-contours.html并在从四轴飞行器拍摄的一些图像上进行了尝试。这是程序的结果:http: //imgur.com/IqzNVVr. 它应该只看到顶部附近的银色盒子,但它看到的所有小形状。我从逻辑上知道该怎么做;如果形状的面积低于某个像素量,则不要在形状周围画线......但我不知道该怎么做。我稍微更改了代码并将其包含在下面。我该怎么做呢?(如果您知道任何关于 OpenCV 的深入深入的教程,那就太好了!)
代码: