IplImage圖像大小變換
- void cvResize( const CvArr* src, CvArr* dst, int interpolation=CV_INTER_LINEAR );
src:輸入圖像.
dst:輸出圖像.
interpolation:差值方法:
• CV_INTER_NN - 最近鄰差值,
• CV_INTER_LINEAR - 雙線性差值 (缺省使用)
• CV_INTER_AREA - 使用象素關係重採樣。當圖像縮小時候,該方法可以避免波紋出現。當圖像放大時,類似於 CV_INTER_NN 方法..
• CV_INTER_CUBIC - 立方差值.
- IplImage *src = cvLoadImage("test.png");
- IplImage *desc;
- CvSize sz;
- if(src)
- {
- sz.width = src->width*scale;
- sz.height = src->height*scale;
- desc = cvCreateImage(sz,src->depth,src->nChannels);
- cvResize(src,desc,CV_INTER_CUBIC);
- cvNamedWindow("desc",CV_WINDOW_AUTOSIZE);
- cvShowImage("desc",desc);
- cvWaitKey(0);
- }
Mat圖像大小變換
- //resize(image, image2,dsize);從代碼中很容易看出這個resize的函數的用法了,第一個參數就是輸入原始圖像Mat格式,第二個參數就是輸出新圖像Mat格式,第三個參數就是圖像的大小了
-
cv::Mat
dst;
- cv::resize(newsrcImage, dst, cv::Size(dstBbox(0, 2), dstBbox(0, 3)));