設置圖像的感興趣區域(opencv1.0)

#include <highgui.h>
#include <cv.h>
#include <iostream.h>
void main()
{
IplImage * src=cvLoadImage("baboon.jpg",-1);
IplImage * dst;
CvRect roi_rect_src;
CvRect roi_rect_dst;
cvNamedWindow("src",CV_WINDOW_AUTOSIZE);
cvMoveWindow("src",200,200);    //設置窗口輸出位置
cvShowImage("src",src);
cvWaitKey(0);

//基於給定的矩形設置感興趣區域ROI
roi_rect_src.x=125;
roi_rect_src.y=300;
roi_rect_src.width=240;
roi_rect_src.height=200;
cvSetImageROI(src,roi_rect_src);
cout<<"輸出源圖像的ROI區域:"<<endl;
cout<<(src->roi->xOffset)<<" "<<(src->roi->yOffset)<<endl;
cout<<(src->roi->width)<<" "<<(src->roi->height)<<endl;
cvShowImage("src",src);//這時候只顯示ROI區域
cvWaitKey(0);

dst=cvCloneImage(src);//完整複製包括頭,ROI和數據
roi_rect_dst=cvGetImageROI(dst);//獲得ROI區域
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",CV_WINDOW_AUTOSIZE);
cvMoveWindow("dst",600,200);
cvShowImage("dst",dst);
cvWaitKey(0);
cvResetImageROI(dst);//釋放圖像的ROI
cvShowImage("dst",dst);
cvWaitKey(0);
cvReleaseImage(&src);
cvReleaseImage(&dst);
}
發佈了13 篇原創文章 · 獲贊 5 · 訪問量 6703
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章