基于OpenCV双边滤波器的人脸美化 .
来源:互联网 发布:哪些端口不是敏感端口 编辑:程序博客网 时间:2024/04/24 22:43
双边滤波,Bilateral filter,是一种保持边缘的降噪平滑滤波器。注意两点,第一是保持边缘,这样对于人脸而言,可以在平滑皮肤区域的同时不破坏五官的边缘结构。第二,降噪平滑,这样就可以抑制皮肤上的斑点和痘痘,使得皮肤变得柔和。Bilateral filter同时利用了中心像素与周围像素在空间上和颜色强度上的差异,具体可参考这个链接:点击打开链接。
OpenCV中的cvSmooth功能支持双边滤波功能,调用格式为:
cvSmooth(const CvArr* src, CvArr* dst, int smoothtype=CV_BILATERAL, int size1=3, int size2=0, double sigma1=0, double sigma2=0)。 其中要使用双边滤波功能,需指定size1,size3和size4三个参数,分别对应窗口大小size1*size1, color sigma和spatical sigma.
需要特别提醒的是,OpenCV中的Bilateral filater不支持原址运算,也就是说src和dst必须指定为不同的图像,如果指定为同一副图像,华丽丽的会出现运行时崩溃。
下图为一副网络图片:
使用OpenCV中的双边滤波器进行处理,注意需要用cvCreateImage创建一副size、depth和channel与源图像相同的图像,参数设置size1=7,size2=0(无效参数),size3=70,size4=10,滤波结果为:
效果还是挺明显的。
- 基于OpenCV双边滤波器的人脸美化 .
- 基于双边滤波的人脸美化
- 双边滤波器 OPENCV
- 云中双边滤波器——基于opencv图像结构
- Opencv双边滤波器-bilateralFilter函数
- 双边滤波器的原理
- 联合双边滤波器(joint bilateral filter)【OpenCV】
- OpenCV学习----深入理解双边滤波器实现
- 基于opencv的理想低通滤波器和巴特沃斯低通滤波器
- 双边滤波器
- 双边滤波器
- 双边滤波器
- 双边滤波器
- 双边滤波器
- 双边滤波器
- opencv中常用的非线性滤波器--中值滤波medianBlur() 和 双边滤波bilateralFilter()
- 双边滤波器的原理的理解
- 双边滤波器的原理及实现
- java移位运算符 《》
- 打印 GCC编译动态和静态链接库
- 哈夫曼编码的C语言实现
- Android如何使用从Github上下载的开源项目
- Ubuntu下关于Mysql及其图形界面的配置
- 基于OpenCV双边滤波器的人脸美化 .
- 分组头的管理[转载]
- Java中Could not find the main class.program will exit和java.lang.UnsupportedClassVersionError 的解决方法
- 向NS2中添加协议PING[转载]
- 数据库空值处理
- 使用GetOpenFileName 笔记
- 第十二次上机
- Xcode快捷键,史上最全!
- 关于Transparent Hugepage