美文网首页
Opencv中cvResize的使用

Opencv中cvResize的使用

作者: 大梦一场三十一 | 来源:发表于2018-02-10 09:40 被阅读0次

    使用opencv库中的cvResize函数
    功能:函数cvResize 重新调整图像src(或它的ROI),使它精确匹配目标dst(或其ROI)。

    (void)  cvResize( const CvArr* src, CvArr* dst,
                           int interpolation CV_DEFAULT( CV_INTER_LINEAR ));
    

    src:输入图像.
    dst:输出图像.
    interpolation:差值方法:
    • CV_INTER_NN - 最近邻插值,
    • CV_INTER_LINEAR - 双线性插值 (默认的方法)
    • CV_INTER_AREA - 使用像素关系重采样。当图像缩小时候,该方法可以避免波纹出现。当图像放大时,类似于 CV_INTER_NN 方法..
    • CV_INTER_CUBIC - 立方插值(双三次插值
    函数 cvResize 将图像 src 改变尺寸得到与 dst 同样大小。若设定ROI,函数将按常规支持 ROI.

    代码实例:

    #include <iostream>  
    #include <cv.h>  
    #include <highgui.h>  
      
    using namespace std;  
     int main()  
     {  
         IplImage* imag=cvLoadImage("1.jpg",1);  
         if(imag==0)  
             return -1;  
         float scal=0.68;   //缩放倍数为0.68倍   
           
         CvSize dec_size;  
         dec_size.height=cvGetSize(imag).height*scal;  
         dec_size.width=cvGetSize(imag).width*scal;  
         IplImage* dec=cvCreateImage(dec_size,imag->depth,imag->nChannels);  
           
         cvResize(imag,dec,1);  
         cvNamedWindow("cvResize",1);  
         cvNamedWindow("source",1);  
         cvShowImage("cvResize",dec);  
         cvShowImage("source",imag);  
         cvWaitKey(0);  
      
         cvReleaseImage(&imag);  
         cvReleaseImage(&dec);  
         cvDestroyWindow("cvResize");  
         cvDestroyWindow("source");  
         return 0;  
      
      
      
     }  
    
    
    

    相关文章

      网友评论

          本文标题:Opencv中cvResize的使用

          本文链接:https://www.haomeiwen.com/subject/skpazxtx.html