/*模糊图像2-txwtech2021.4.1 中值滤波 双边滤波 统计排序滤波器 中值对椒盐噪声有很好的抑制作用.椒盐噪声就是图片的黑白噪点
双边滤波 均值模糊无法克服边缘像素信息丢失缺陷。原因是均值滤波是基于平均权重
高斯模糊部分克服了该缺陷,但是无法完全避免,因为没有考虑像素值的不同
高斯双边模糊 – 是边缘保留的滤波方法,避免了边缘信息丢失,保留了图像轮廓不变
中值模糊medianBlur(Mat src, Mat dest, ksize)//去噪点 双边模糊bilateralFilter(src, dest, d=15, 150, 3);//美化人像,人脸磨皮,
- 15 –计算的半径,半径之内的像数都会被纳入计算,如果提供-1 则根据sigma space参数取值 - 150 – sigma color 决定多少差值之内的像素会被计算 - 3 – sigma space 如果d的值大于0则声明无效,否则根据它来计算d值 中值模糊的ksize大小必须是大于1而且必须是奇数。
*/
//
/*模糊图像2-txwtech2021.4.1
中值滤波
双边滤波
统计排序滤波器
中值对椒盐噪声有很好的抑制作用.椒盐噪声就是图片的黑白噪点
双边滤波
均值模糊无法克服边缘像素信息丢失缺陷。原因是均值滤波是基于平均权重
高斯模糊部分克服了该缺陷,但是无法完全避免,因为没有考虑像素值的不同
高斯双边模糊 – 是边缘保留的滤波方法,避免了边缘信息丢失,保留了图像轮廓不变
中值模糊medianBlur(Mat src, Mat dest, ksize)//去噪点
双边模糊bilateralFilter(src, dest, d=15, 150, 3);//美化人像,人脸磨皮,
- 15 –计算的半径,半径之内的像数都会被纳入计算,如果提供-1 则根据sigma space参数取值
- 150 – sigma color 决定多少差值之内的像素会被计算
- 3 – sigma space 如果d的值大于0则声明无效,否则根据它来计算d值
中值模糊的ksize大小必须是大于1而且必须是奇数。
*/
#include
#include
using namespace std;
using namespace cv;
int main(int argc, char *argv[])
{
Mat src;
Mat dst2;
src = imread("E:\\pictures\\dog1.jpg", CV_LOAD_IMAGE_ANYCOLOR);
if (!src.data)
{
printf("failed to load image");
return -1;
}
char pic_title[] = "orginal pics";
char median_title[] = "median pics";
char bilateral_title[] = "bilateral pics";
namedWindow(pic_title,CV_WINDOW_AUTOSIZE);
namedWindow(median_title, CV_WINDOW_AUTOSIZE);
namedWindow(bilateral_title, CV_WINDOW_AUTOSIZE);
//中值滤波,去噪点
medianBlur(src,dst2,5);
imshow(pic_title, src);
imshow(median_title, dst2);
//双边滤波。//美化人像,人脸磨皮,
bilateralFilter(src,dst2,15,150,3);
imshow(bilateral_title, dst2);
waitKey(0);
return 0;
}