Python 在其他轮廓内填充轮廓/像素|使用深度图像检测框 我正在使用OpenCV查找深度灰度图像中的方框。
首先,我从框的顶部剪切深度图像,如下所示: 接下来,我从框的底部剪切深度图像,如下所示: 经过一些过滤、关闭和一些基本操作后,我得到了一个顶部切割的图像,与框底部以及边界框合并在一起。请参见下图:Python 在其他轮廓内填充轮廓/像素|使用深度图像检测框 我正在使用OpenCV查找深度灰度图像中的方框。,python,opencv,image-processing,object-detection,Python,Opencv,Image Processing,Object Detection,首先,我从框的顶部剪切深度图像,如下所示: 接下来,我从框的底部剪切深度图像,如下所示: 经过一些过滤、关闭和一些基本操作后,我得到了一个顶部切割的图像,与框底部以及边界框合并在一起。请参见下图: 现在的目标是尝试拉伸内部矩形,直到它们接触到顶部边缘的角。问题是盒子可能会旋转,这使得填充比水平/垂直循环和填充间隙更加困难 一种方法是获取内部矩形的一侧,沿拉伸方向不断移动它,直到它接触到一些值为255的像素。然而,这需要很多时间,而且效率不高 另一种方法是消除所有不沿拉伸线段方向的像素,找
现在的目标是尝试拉伸内部矩形,直到它们接触到顶部边缘的角。问题是盒子可能会旋转,这使得填充比水平/垂直循环和填充间隙更加困难 一种方法是获取内部矩形的一侧,沿拉伸方向不断移动它,直到它接触到一些值为255的像素。然而,这需要很多时间,而且效率不高 另一种方法是消除所有不沿拉伸线段方向的像素,找到剩余对象的轮廓,并尝试相同的方法 第三种方法,也是对我最有意义的方法:
- 绘制与矩形边相连的其他两个线段,但作为直线,以填充整个图像
- 2行之外的任何内容都将被忽略
- 查找并获取拉伸/填充方向上剩余对象轮廓的坐标列表
- 找到离侧面最近的像素;这就是我们要把箱子伸到的地方 这仍然是相当低效的