OpenCV 截取圖像中某一區域的方法


Mat圖像存儲:

1 Mat img= imread(image); 2 Rect rect(50,20, 200, 50); 3 Mat ROI = img(rect); 4 imshow("ROI_WIN",ROI);

- 其中:Rect的函數定義為: Rect(_Tp _x, _Tp _y, _Tp _width, _Tp _height); 
_Tp _x:表示矩形左上角頂點的x坐標; _Tp _y:表示矩形左上角頂點的y坐標; 
_Tp _width:表示矩形框的寬度 ; _Tp _height:表示矩形框的高度

另外:srcImage(rect).copyTo(roiImage)也可以達到同樣的效果!

IplImage*圖像存儲:

1 CvSize size= cvSize(40,50);//區域大小
2 cvSetImageROI(pSrc,cvRect(60,70,size.width, size.height));//設置源圖像ROI
3 IplImage* pDest = cvCreateImage(size,pSrc->depth,pSrc->nChannels);//創建目標圖像
4 cvCopy(pSrc,pDest); //復制圖像
5 cvResetImageROI(pDest);//源圖像用完后,清空ROI
6 cvSaveImage("Roi.jpg",pDest);//保存目標圖像

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM