平滑处理函数void cvSmooth(const CvArr* src, CvArr* dst, int smoothtype, int param1, int param2,int param3,int param4);
src——源; dst——目的。
smoothtype——平滑类型,也就是滤波类型。(CV_BLUR 简单模糊, CV_BLUR_NO_SCALE简单无缩放变换的模糊,CV_MEDIAN中值模糊,CV_GAUSS高斯模糊,CV_BLATERAL双边滤波)。
感觉此函数也是滤波的一种。
code:
int main()
{
IplImage *image = cvLoadImage("....jpg");
CvMat *imageR = cvCreateMat(512,512,CV_8UC3);
cvResize(image, imageR);
namedWindow("原图");
cvShowImage("原图",imageR);
// CvSize size = cvSize(512,512);
CvMat *imageD1 = cvCreateMat(512,512,CV_8UC3);
CvMat *imageD2 = cvCreateMat(512,512,CV_8UC3);
// IplImage *m = cvCreateImage(size, IPL_DEPTH_8U, 3);
cvSmooth(imageR,imageD1, CV_GAUSSIAN);
cvSmooth(imageR,imageD2, CV_BILATERAL);
namedWindow("效果图1");
cvShowImage("效果图1", imageD1);
namedWindow("效果图2");
cvShowImage("效果图2", imageD2);
cvWaitKey(0);
cvDestroyAllWindows();
cvReleaseMat(&imageD1);
cvReleaseMat(&imageD2);
cvReleaseMat(&imageR);
cvReleaseImage(&image);
return 0;
}