利用OpenCV平滑处理图像:


[cpp] view plain copy
  1. #include "opencv/cv.h"  
  2. #include "opencv/highgui.h"  
  3.   
  4. int main(int argc, char**argv)  
  5. {  
  6.     IplImage* img = cvLoadImage(argv[1]);  
  7.       
  8.     cvNamedWindow("EX_4_IN",0);  
  9.     cvNamedWindow("EX_4_OUT",0);  
  10.   
  11.     cvShowImage("EX_4_IN",img);  
  12.       
  13.     IplImage* out = cvCreateImage(  
  14.         cvGetSize(img),//当前图像结构的大小  
  15.         IPL_DEPTH_8U,//像素点的数据类型,每个通道8位  
  16.         3                      //3个通道  
  17.         );  
  18.     //对每个像素周围11*11区域进行高斯平滑处理  
  19.     cvSmooth(img, out, CV_GAUSSIAN, 11, 11);  
  20.     cvShowImage("EX_4_OUT",out);  
  21.       
  22.     cvReleaseImage(&out);  
  23.     cvReleaseImage(&img);  
  24.     cvWaitKey(0);  
  25.       
  26.     cvDestroyWindow("EX_4_OUT");  
  27.     cvDestroyWindow("EX_4_IN");  
  28. }  


平滑处理之前:

OpenCV学习笔记(4)——平滑处理图像


平滑处理之后:

OpenCV学习笔记(4)——平滑处理图像


相关文章: