c++ - 图像部分的Opencv高度/宽度

标签 c++ opencv contour bounding-box image-stitching

我有一张像这样的图片![在此处输入图片描述][1]。每次迭代都会扩展非黑色部分。所以,在某个点之后,我需要放大最终图像,以便非黑色图像可以适应。现在,我正在做的是找到非黑色图像的轮廓,找到非黑色图像的边界框轮廓并检查框的宽度/高度。第一次它有效,但经过一些迭代后,我的程序找到了一个大小为 1 的边界框(似乎它没有找到任何轮廓)。可能是什么问题?

Ps: 该程序是视频文件的马赛克,我按照 opencv 教程查找单应性和其他内容。

编辑 抱歉,我不得不删除图片

最佳答案

只是一个建议:

简单地遍历矩阵中的每个元素并记录最上、最下、最左和最右非零元素的坐标会更容易。这些将是您的右上边界矩形的四个角。当然不一定是非零像素包围的最小面积的矩形(不是旋转矩形),还可以作为ROI。

关于c++ - 图像部分的Opencv高度/宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29512666/

相关文章:

c++ - 在命名空间 std 中找不到 GCC std::thread

c++ - 枚举范围问题

matlab - 在 Visual Studio C++ 中使用 MATLAB 共享库

opencv - OpenCV中有没有量化RGB值的函数?

c++ - 从 C++ 中的 Blob 检测中提取 OpenCV 轮廓数组

python - 如何在图像的特定区域应用膨胀?

c++ - 使用 OpenCV 函数的灰度图像的 Videowriter 函数

c++ - 初始空的 unordered_map 使用多少内存?

c++ - 用于将存储在列表中的描述符与新图像描述符进行比较的 OpenCV 代码

python - 在opencv python中创建一个掩码并删除内部轮廓