C/C++ OpenCV设置感兴趣区域ROI

C/C++ OpenCV设置感兴趣区域ROI

原创  2017年01月09日 15:05:09

设置感兴趣区域(ROI,region of interest),来专注或者简化工作过程,也就是从图像中选择一个图像区域,这个区域是

图像分析所关注的重点。我们圈定的这个区域,以便进行进一步处理


定义ROI的两种方法

1.使用表示矩形区域的Rect。他指定矩形的左上角左边和矩形的长宽以定义一个矩形区域

例:其中image是已经载入好的图片

Mat imageROI=image(Rect(x,y,xleng,yleng))

2.指定感兴趣行或列的范围(Range),Range是指从起始索引到终止索引的一段联系序列

如:Mat imageROI=image(Range(500,500+xleng),Range(250,250+yleng))


下面是代码:

[cpp]  view plain  copy
  1. #include <opencv2\opencv.hpp>  
  2. #include <opencv2\imgproc\imgproc.hpp>  
  3.   
  4. using namespace cv;  
  5.   
  6. int main()  
  7. {  
  8.     Mat image1 = imread("1.jpg");  
  9.     Mat image2 = imread("2.jpg");  
  10.     if (!image1.data)  
  11.     {  
  12.         printf("第一张图片读取失败!\n");  
  13.         return -1;  
  14.     }  
  15.     imshow("image1", image1);  
  16.     if (!image2.data)  
  17.     {  
  18.         printf("第二张图片读取失败!\n");  
  19.         return -1;  
  20.     }  
  21.     imshow("image2", image2);  
  22.   
  23.     //定义一个Mat类型并设置ROI区域  
  24.     Mat imageROI = image1(Rect(10, 15, image2.cols, image2.rows));  
  25.   
  26.     //加载掩码  
  27.     Mat mask = imread("2.jpg");  
  28.     //将掩码复制到ROI  
  29.     image2.copyTo(imageROI, mask);  
  30.     imshow("利用ROI实验窗口叠加",image1);  
  31.     waitKey();  
  32.     return 0;  
  33. }  


运行结果:


版权声明:本文为博主原创文章,未经博主允许不得转载。
 
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值