首页 > 解决方案 > 从非常嘈杂的图像Opencv Python中获取矩形形状

问题描述

需要从嘈杂的彩色分割图像中获取矩形形状。问题在于,有时对象不是统一的正确颜色,导致图像中出现孔洞,或者有时对象在背景中的反射会导致颜色分割的噪声/误报。

物体可以位于图像的任何位置,并且具有任何未知的矩形大小,孔可以出现在物体内部的任何位置,并且噪声可以出现在物体的任何一侧。唯一已知的常数是物体是矩形的。

过滤掉对象左侧的噪声并在对象周围获得边界框的最佳方法是什么?

使用腐蚀会删除对象底部的细节,并会导致边界框的大小错误

在此处输入图像描述

标签: pythonopencvcomputer-visionimage-segmentation

解决方案


由于我的代表,我无法发表评论,但我认为您可以尝试使用其他颜色空间分析彩色图像。创建所需颜色的上限和下限,直到它选择对象,从而减少噪音,您可以使用侵蚀/扩张/打开/关闭进行过滤。

例如,在我的项目中,我想找到一个颜色变化的绿色矩形的边界框,所以我尝试了很多不同的颜色空间,有很多不同的上/下界,直到我最终得到了一些有价值的东西。这是我正在谈论的内容的一个很好的阅读:Docs

您也可以尝试按区域过滤对象,在扩张它之后(首先扩张,以便较近的点相互连接,而较远的点,即噪声,不要,创建一个有很多噪声的大矩形,但是然后你按一个大区域过滤)。


推荐阅读