OpenCV设置ROI函数 cvSetImageROI( ):
void cvSetImageROI(IplImage* image,CvRect rect);
image 图像头,待处理图像
rect ROI 矩形
释放基于给定的矩形设置图像的ROI函数 cvResetImageROI( ):
void cvResetImageROI(IplImage* image);
image 图像头,待处理图像
保存图像函数cvSaveImage( );
cvSaveImage(const char* filename, const CvArr* image);
filename 文件名
image 要保存的图像
函数cvSaveImage保存图像到指定文件。只有8位单通道或者3通道(通道顺序为'BGR')可以使用这个函数保存。
如果格式,深度或者通道不符合要求,请先用cvCvtScale和cvCvtColor转换。
#include
#include
int main()
{
//Loading the original image and declaring the variables
IplImage* src=cvLoadImage("D:\\Study Documents\\opencv_source\\images\\lena.jpg");
CvSize size=cvSize(100,120);
IplImage* roi=cvCreateImage(size,src->depth,src->nChannels);
CvRect box=cvRect(120,100,size.width,size.height);
//Setting the ROI and copying it
cvSetImageROI(src,box);
cvCopy(src,roi);
cvSaveImage("D:\\Study Documents\\opencv_source\\images\\lenaROI.jpg",roi);
cvResetImageROI(src);
//Defining windows
cvNamedWindow("ShowSRC");
cvNamedWindow("ShowROI");
//Showing images
cvShowImage("ShowSRC",src);
cvShowImage("ShowROI",roi);
cvWaitKey(0);
//Releasing resources
cvReleaseImage(&src);
cvReleaseImage(&roi);
cvDestroyAllWindows();
return 0;
}