您当前的位置: 首页 >  opencv

txwtech

暂无认证

  • 3浏览

    0关注

    813博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

OpenCV10中值模糊去噪点-双边模糊美化人像

txwtech 发布时间:2021-04-01 22:23:55 ,浏览量:3

/*模糊图像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;
}

 

关注
打赏
1665060526
查看更多评论
立即登录/注册

微信扫码登录

0.0902s