我正在使用OpenCV在深度灰度图像中查找框。
在进行一些过滤,关闭并执行了一些基本操作之后,我得到了一个顶部切割的图像,该图像与框底部和边界框的位置合并在一起。请参见下图:
现在的目标是尝试拉伸内部矩形,直到它们接触顶部边缘的角为止。问题是盒子可以旋转,这使填充变得比仅水平/垂直循环并填充空隙要困难得多。
一种方法是获取内部矩形的一侧,一直沿拉伸方向移动它,直到它接触到值255的某些像素为止。但是,这会花费很多时间,而且效率不高。
另一种方法是消除所有不沿拉伸段方向的像素,找到其余对象的轮廓,然后尝试相同的方法。
第三种方法对我来说最有意义:
- 绘制其他两个连接到矩形侧面但作为线条的线段,以填充整个图像。
- 两行以外的任何内容都会被忽略
- 查找以获取剩余对象轮廓在拉伸/填充方向上的坐标的列表
- 找到最靠近侧面的像素;这是我们将盒子伸展到的地方 这仍然效率很低。
任何帮助,指导或见解将不胜感激。谢谢!