一、imread读取图片
Mat对象可以用来接收图片。
Mat srcImage = imread("D:\\image\\4.jpg",0);
//函数对应的参数含义
Mat imread( const String& filename, int flags = IMREAD_COLOR );
//(文件路径,读取图片的格式)默认为IMREAD_COLOR
参数中flags的值可以有三种:
1.IMREAD_COLOR ,>0
2.IMREAD_GRAYSCALE ,=0
3.IMREAD_UNCHANGED , <0
二、方框滤波
boxFilter(srcImage, dstImage, -1, Size(3, 3));
//函数对应的参数含义
CV_EXPORTS_W void boxFilter( InputArray src, OutputArray dst, int ddepth,
Size ksize, Point anchor = Point(-1,-1),
bool normalize = true,
int borderType = BORDER_DEFAULT );
三、均值滤波
blur(srcImage, dstImage1, Size(5, 5), Point(-1, -1));
//函数对应的参数含义
CV_EXPORTS_W void blur( InputArray src, OutputArray dst,
Size ksize, Point anchor = Point(-1,-1),
int borderType = BORDER_DEFAULT );
四、高斯滤波
GaussianBlur(srcImage, dstImage2, Size(5, 5), 0, 0);
//函数对应的参数含义
CV_EXPORTS_W void GaussianBlur( InputArray src, OutputArray dst,
Size ksize,
double sigmaX, double sigmaY = 0,
int borderType = BORDER_DEFAULT );
五、中值滤波
medianBlur(srcImage, dstImage3, 5);
//函数对应的参数含义
CV_EXPORTS_W void medianBlur( InputArray src, OutputArray dst, int ksize );
六、双边滤波
bilateralFilter(srcImage, dstImage4, 6, 12, 6 / 2);
//函数对应的参数含义
CV_EXPORTS_W void bilateralFilter( InputArray src, OutputArray dst, int d,
double sigmaColor, double sigmaSpace,
int borderType = BORDER_DEFAULT );