opencv 图片ROI读取

本文通过一个具体的C++示例介绍了如何使用OpenCV库进行图像处理中的感兴趣区域(ROI)操作,包括设置、获取ROI及图像克隆等关键步骤。



// opencv2.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"

#include <highgui.h>
#include <cv.h>     
#include <iostream>
using namespace std;
void  main(	) 
 {
	IplImage* src_img=cvLoadImage("放鸽子女神.jpg",-1);	//读入图像
	IplImage* dst_img;								//定义目标图像头;
	
	CvRect ROI_rect_src;								//源图像ROI的位置以及大小
	CvRect ROI_rect_dst;								//目标图像的ROI							
	cvNamedWindow("src_img",CV_WINDOW_AUTOSIZE); 
	
	cvMoveWindow("src_img", 200, 200);				// 设置源图像输出的窗口位置
	
	cvShowImage("src_img",src_img);			 		//输出源始图像未设置ROI区域
	
	cvWaitKey(800);
	
	
	//cvSetImageROI函数基于给定的矩形设置感兴趣区域  
	// cvShowImage函数将只会显示 ROI指定区域
	
	
	ROI_rect_src.x=0;
	ROI_rect_src.y=0;
	ROI_rect_src.width=120;
	ROI_rect_src.height=100;
	
	cvSetImageROI(src_img, ROI_rect_src);	
	
	cout<<"输出原图像的ROI区域"<<endl;
	
	cout<< (src_img->roi->xOffset) <<"    "<< (src_img->roi->yOffset) <<endl;
	cout<< (src_img->roi->width) <<"  "<< (src_img->roi->height) <<endl<<endl;
	
	cvShowImage("src_img",src_img);					//输出设定ROI后的原始图像
	
	
	//------------	函数 cvCloneImage实现图像的完整拷贝包括头、ROI和数据 ---------------
	
	dst_img=cvCloneImage(src_img);						
	
	//-----------函数cvGetImageROI得到图像的ROI区域---------------------------
	
	ROI_rect_dst=cvGetImageROI(dst_img);
	
	cout<<"输出目标图像的ROI区域"<<endl;
	
	cout<<ROI_rect_dst.x<<"    "<<ROI_rect_dst.y<<endl;
	cout<<ROI_rect_dst.width<<"  "<<ROI_rect_dst.height<<endl;
	
	cvNamedWindow("dst_img",CV_WINDOW_AUTOSIZE); 
	
	cvMoveWindow("dst_img", 400, 200);			//设置目标图像输出的窗口位置
	
	cvShowImage("dst_img",dst_img);				//显示图像
	
	cvWaitKey(800);
	
	cvResetImageROI(dst_img);				//释放目标图像的ROI
	
	cvShowImage("dst_img",dst_img);				//显示释放图像的ROI的源图像
	
	
	cvWaitKey(0);	
	
	cvReleaseImage(&src_img);						//释放图像
	cvReleaseImage(&dst_img); 

 }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值