opencv的ROI操作
来源:互联网 发布:阿里云 安卓软件 编辑:程序博客网 时间:2024/05/17 23:19
在OpenCV中我们能够非常方便地获取指定ROI区域的子图像。如果你对图像设置了ROI,那么,Opencv的大多数函数只在该ROI区域内运算(只处理该ROI区域),如果没设ROI的话,就会出来整幅图像。
ROI非常有用,例如我们想把图像中的人脸扣出来,进行人脸识别。需要注意的时候,ROI一定在图像内部,而不能超出图像的范围。
对图像设定ROI的函数是:
cvSetImageROI(IplImage* src,CvRect rect);
src表示的是源图像,rect只的是ROI区域。
如果要取消ROI区域,那么使用函数:
cvResetImageROI(IplImage* src);
这个函数,就把src上的ROI区域取消掉。
图像的剪切有多种措施,其中利用ROI的措施
第一步:将必需剪切的图像图像不局部设置为ROI
cvSetImageROI(src , cvRect(x,y,width,height));
第二步:修建一个与必需剪切的图像局部同样大小的新图像
cvCreateImage(cvSize(width,height),IPL_DEPTH,nchannels);
第三步:将源图像复制到修建的图像中
cvCopy(src,dst,0);
第四步:释放ROI区域
cvResetIamgeROI(src);
缩放可用cvResize();
下面是对mat进行roi操作
#include <iostream>
#include <opencv2/core/core.hpp>#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
using namespace std;
using namespace cv;
void main()
{
Mat Image,Gray_Image,ROI1,ROI2;
Mat RowClone;
int channels,rows,columns;
Image=imread("E:\\ali.jpg",1);
channels=Image.channels(); //获取通道、行、列
rows=Image.rows;
columns=Image.cols;
cout<<"channels="<<channels<<endl;
cout<<"Rows="<<rows;
cout<<"colmns="<<columns;
cvtColor(Image,Gray_Image,CV_BGR2GRAY); //转灰度图
RowClone=Gray_Image.row(1).clone(); //复制一个图像的部分
ROI1=Gray_Image(Range(10,100),Range(10,100)); //通过行列来获取目标区域
ROI2=Gray_Image(Range::all(),Range(1,100));
namedWindow("ROI1",CV_WINDOW_AUTOSIZE);
imshow("ROI1",ROI1);
namedWindow("ROI2",CV_WINDOW_AUTOSIZE);
imshow("ROI2",ROI2);
namedWindow("RowClone",CV_WINDOW_AUTOSIZE);
imshow("RowClone",RowClone);
namedWindow("ali",CV_WINDOW_AUTOSIZE);
imshow("ali",Image);
waitKey(0);
return;
}
0 0
- opencv的ROI操作
- OpenCV对感兴趣区域(ROI)的操作
- OpenCV对感兴趣区域(ROI)的操作
- openCV学习笔记-ROI区域的操作
- opencv:感兴趣区域的操作:ROI
- Opencv ROI区域操作
- 基于opencv的感兴趣区域ROI的操作
- 图像的ROI操作
- 有关ROI的操作
- opencv ROI(感兴趣区域)与掩码操作 ROI图像融合
- opencv的ROI的提取
- OpenCV:ROI使用的注意事项
- opencv 的 ROI 和 COI
- 关于OPENCV ROI的使用
- Opencv的ROI代码分析
- opencv只操作不规则多边形roi
- opencv roi
- opencv ROI
- 【PAT】1067. Sort with Swap(0,*)
- P1028数的计算
- Java基础知识点总结
- P1307 数字反转
- Codeforces #211 (Div. 2) A. Soroban
- opencv的ROI操作
- call和apply用法
- POJ 1365 Prime Land 【素数分解】
- Plus One
- JavaSE 学习参考:位运算符
- Hdu2717 Catch That Cow(BFS) ---Java版
- MySQL笔记四之 字符串函数
- spring3.x第一章 Spring概述
- spark应用提交