利用OpenCV设定不规则ROI区域
2012-05-03 21:13
981 查看
ROI(Regions Of Interest)区域在实际工作中有着很重要的作用,它不仅能提高计算机视觉代码的执行速度,而且还能排除一些复杂背景带来的干扰。OpenCV中提供了一个提取ROI区域的函数,函数原型为void cvSetImageROI(IplImage* image,CvRect rect),但是这个函数限定了CvRect类型的矩形。在实际的工作中,我们所需要设定的ROI区域不仅仅是矩形区域,还有可能是其它不规则的区域。
利用OpenCV的其它函数,我们也可以提取不规则的ROI区域,方法步骤如下:(仅供参考)
1、利用鼠标响应函数cvSetMouseCallback( const char* window_name, CvMouseCallback on_mouse, void* param)在初始化的图像上设定将要提取的不规则区域的各个顶点,并获取各顶点坐标(其实这些不规则区域即是由这些顶点的顺序连接组成的);
2、然后根据这些顶点坐标,利用cvPolyLine()函数绘制多边形,其次利用cvFillPoly()填充多边形内部,即完成mask的制作;
3、将得到的mask图像与原图像cvAnd()即可得到原图像的ROI区域。
利用OpenCV的其它函数,我们也可以提取不规则的ROI区域,方法步骤如下:(仅供参考)
1、利用鼠标响应函数cvSetMouseCallback( const char* window_name, CvMouseCallback on_mouse, void* param)在初始化的图像上设定将要提取的不规则区域的各个顶点,并获取各顶点坐标(其实这些不规则区域即是由这些顶点的顺序连接组成的);
2、然后根据这些顶点坐标,利用cvPolyLine()函数绘制多边形,其次利用cvFillPoly()填充多边形内部,即完成mask的制作;
3、将得到的mask图像与原图像cvAnd()即可得到原图像的ROI区域。
相关文章推荐
- 【Python_Demo_4】 利用OpenCv的ROI区域,将衣服图片切成规则的小图片的python程序
- OpenCV2.4.13 中 选取roi区域,任意形状(矩形,不规则多边形,圆形,椭圆,手动指定形状)
- opencv开发笔记(八):利用感兴趣区域ROI实现图像叠加
- 【OpenCV+Python】轮廓检测及绘制,可用以生成对应于不规则形状ROI区域的mask
- 【OpenCV3】将图像指定区域使用另一图像(或ROI)覆盖
- OpenCV截取图像的任意形状区域,规则的图形(圆、椭圆、矩形),不规则鼠标自己选择
- OpenCV之感兴趣区域(ROI)
- OpenCV-利用颜色、形态学和最大稳定极值区域MSER实现车牌区域检测
- 【OpenCV入门教程之四】 ROI区域图像叠加&初级图像混合 全剖析
- OpenCV学习-利用ROI裁剪图片
- OpenCV Cut Image via ROI 根据兴趣区域剪裁图片
- OpenCV学习笔记(18):在OpenCV中利用鼠标绘制矩形和截取图像的矩形区域
- 【OpenCV入门教程之四】 ROI区域图像叠加&初级图像混合 全剖析
- OpenCV:设置图像的感兴趣区域(ROI)
- 在OpenCV中利用鼠标绘制矩形和截取图像的矩形区域
- 【OpenCV入门教程之四】 ROI区域图像叠加&初级图像混合 全剖析
- opencv处理不规则多边形ROI 之二
- opencv中如何利用mat来获取连续内存的图像区域,并改变形状
- 在OpenCV中利用鼠标绘制矩形和截取图像的矩形区域