一、目标
学习如何使用opencv中的函数,学习对图像的中值平滑操作,学习medianBlur()函数的使用
二、函数说明
函数原型:
void medianBlur(InputArray src, OutputArray dst, int ksize)
参数详解:
src:支持1、3、4通道图片输入,当ksize为3或者5时,图片的深度只能是CV_8U,,CV_16U,或者 CV_32F,对于其他大孔径尺寸只支持深度为CV_8U。
dst:输出图片,和输入图片相同大小和深度。
ksize:线性直径大小,只能是一个大于1的奇数,例如:3, 5, 7 …
三、程序代码
#include "cv.h" // OpenCV 文件头
#include "highgui.h"
#include "opencv2/opencv.hpp"
#include "opencv2/imgproc.hpp"
#include <iostream>
#include <string>
using namespace cv;
using namespace std;
int main(int argc, char *argv[])
{
Mat m_SrcImg;
m_SrcImg = imread("C:\\Users\\lidabao\\Desktop\\image\\1\\LENA1.bmp", -1);
namedWindow("原图像", 1);
imshow("原图像", m_SrcImg);
Mat m_ResImg;
//中值平滑
medianBlur(m_SrcImg, m_ResImg, 3);
namedWindow("中值平滑", 1);
imshow("中值平滑", m_ResImg);
waitKey(0);
}
四、结果
程序运行如下图:
五、注意
正确的配置opencv
正确使用medianBlur()函数