我有一张像这样的图片![在此处输入图片描述][1]。每次迭代都会扩展非黑色部分。所以,在某个点之后,我需要放大最终图像,以便非黑色图像可以适应。现在,我正在做的是找到非黑色图像的轮廓,找到非黑色图像的边界框轮廓并检查框的宽度/高度。第一次它有效,但经过一些迭代后,我的程序找到了一个大小为 1 的边界框(似乎它没有找到任何轮廓)。可能是什么问题?
Ps: 该程序是视频文件的马赛克,我按照 opencv 教程查找单应性和其他内容。
编辑 抱歉,我不得不删除图片
最佳答案
只是一个建议:
简单地遍历矩阵中的每个元素并记录最上、最下、最左和最右非零元素的坐标会更容易。这些将是您的右上边界矩形的四个角。当然不一定是非零像素包围的最小面积的矩形(不是旋转矩形),还可以作为ROI。
关于c++ - 图像部分的Opencv高度/宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29512666/