- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我刚刚开始学习 OpenCV,我想问一下如何在循环中使用 cvSetImageROI。问题是,我想将图像分成 9 个相等的区域,并检查每个区域的直线或曲线。但是,我不知道如何在循环中使用cvSetImageROI,以便它自动转到下一个区域。
cvSetImageROI(image, one);
这是用于获取区域的函数。这里,“图像”是区域应该来自的图像,“一”是要实现的特定区域的矩形区域。如果我想检查图像的所有 9 个区域,我怎么可能从一个矩形区域移动到另一个矩形区域?
非常感谢!
最佳答案
您可以做的是将图像(宽度、高度)拆分为宽度为 width_step = original_width/3 和 height_step = original_height/3 的矩形。
然后像这样循环:
for (i = 0; i < 3; i++)
for (j = 0; j < 3; j++)
{
CvRect rect;
rect.x = i * width_step;
rect.y = j * height_step;
if (i < 2)
rect.width = width_step;
else
rect.width = image.width - rect.x;
if (j < 2)
rect.height = height_step;
else
rect.height = image.height - rect.y;
cvSetImageROI(image, rect);
}
您遍历每个区域。希望这会有所帮助,代码尚未经过测试。
关于opencv - 循环中的 cvSetImageROI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8213717/
我正在尝试设置感兴趣的图像区域并将一个图像添加到另一个图像中。一张图像是蒙版(灰度),另一张是彩色图像。现在,我正在做 IplImage * _newImg = newImage.getCvImage
为了处理图像的特定区域,我使用了 cvSetImageROI 和 cvResetImageROI。 但是感觉这个函数本身耗时比我预想的要长。 有没有人知道这个或者有其他方法来完成同样的任务。 最佳答案
在下面的代码中,我试图检测面部和眼睛。从一个视频。我的问题是我正在尝试设置 ROI 来检测眼睛。但我认为 cvSetImageROI funcition 有错误。 显示此错误 错误 C2664:“cv
我刚刚开始学习 OpenCV,我想问一下如何在循环中使用 cvSetImageROI。问题是,我想将图像分成 9 个相等的区域,并检查每个区域的直线或曲线。但是,我不知道如何在循环中使用cvSetIm
我正在将旧的测试应用程序从 OpenCV C 接口(interface)迁移到新的 C++ 接口(interface)(我希望学习它)。使用 C++ 接口(interface),cvSetImageR
我是一名优秀的程序员,十分优秀!