您的位置:首页 > 运维架构

opencv<二>基于opencv对图片进行高斯滤波

2013-10-17 16:19 281 查看
基于opencv对图片进行高斯滤波
  程序如下:



滤波前后图片对比:



      这个程序其实很简单,一部分只主函数,然后调用一个滤波函数,下面具解释程序:

int main( int argc, char** argv )

{

IplImage * img = cvLoadImage("\\vs2008\\project\\fiilter\\lena.jpg");  //读图程序

  cvNamedWindow("滤波前", CV_WINDOW_AUTOSIZE );//设置显示图片的窗口

  cvShowImage("滤波前", img );//opencv显示滤波前的图片

  smootH( img );//调用滤波函数

  cvWaitKey(0);

  cvReleaseImage( &img );

  cvDestroyWindow("滤波前");

}

void smootH( IplImage* image )

{

    cvNamedWindow( "滤波后", CV_WINDOW_AUTOSIZE );

    IplImage* out = cvCreateImage(cvGetSize(image),IPL_DEPTH_8U, 3);//获取图片的大小,像素的数据类型,是几通道图品

    cvSmooth( image, out, CV_GAUSSIAN, 7,7 );//opencv中高斯滤波模板

    cvShowImage( "滤波后", out );

    cvReleaseImage( &out );

    cvWaitKey( 0 );

    cvDestroyWindow("滤波后" );

    

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  opencv vs2008