利用OpenCV平滑处理图像:
-
#include "opencv/cv.h"
-
#include "opencv/highgui.h"
-
-
int main(int argc, char**argv)
-
{
-
IplImage* img = cvLoadImage(argv[1]);
-
-
cvNamedWindow("EX_4_IN",0);
-
cvNamedWindow("EX_4_OUT",0);
-
-
cvShowImage("EX_4_IN",img);
-
-
IplImage* out = cvCreateImage(
-
cvGetSize(img),//当前图像结构的大小
-
IPL_DEPTH_8U,//像素点的数据类型,每个通道8位
-
3 //3个通道
-
);
-
//对每个像素周围11*11区域进行高斯平滑处理
-
cvSmooth(img, out, CV_GAUSSIAN, 11, 11);
-
cvShowImage("EX_4_OUT",out);
-
-
cvReleaseImage(&out);
-
cvReleaseImage(&img);
-
cvWaitKey(0);
-
-
cvDestroyWindow("EX_4_OUT");
-
cvDestroyWindow("EX_4_IN");
-
}
平滑处理之前:

平滑处理之后:

相关文章: