//不处理边界void smartBlur(Mat &Img, Mat &OutImg, int Radius, int Threshold) {OutImg.create(Img.size(),CV_8UC3);for (int i = Radius; i < Img.rows - Radius; i++) {uchar *curPtr = Img.ptr<uchar>(i);uchar *outPtr = OutImg.ptr<uchar>(i);for (int j = Radius; j < Img.cols - Radius; j++) {int curValue = curPtr[j * 3];int curValue2 = curPtr[j * 3 + 1];int curValue3 = curPtr[j * 3 + 2];int low = curValue - Threshold;int low2 = curValue2 - Threshold;int low3 = curValue3 - Threshold;int high = curValue + Threshold;int high2 = curValue2 + Threshold;int high3 = curValue3 + Threshold;int Index1 = 0;int Index2 = 0;int Index3 = 0;int cvx1 = 0;int cvx2 = 0;int cvx3 = 0;for (int r = -Radius; r <= Radius; r++) {uchar *tPtr = Img.ptr<uchar>(i + r);for (int c = -Radius; c <= Radius; c++) {int r = tPtr[(j + c) * 3];int g = tPtr[(j + c) * 3 + 1];int b = tPtr[(j + c) * 3 + 2];if (r > low&&r < high) {cvx1 += r;Index1++;}if (g > low2&&g < high2) {cvx2 += g;Index2++;}if (b > low3&&b < high3) {cvx3 += b;Index3++;}}}outPtr[j * 3] = cvx1 / Index1;outPtr[j * 3+1] = cvx2 / Index2;outPtr[j * 3+2] = cvx3 / Index3;}}}

效果图对比

OpenCV实现PS2018中的SmartBlur美颜算法相关推荐

  1. 【OpenCV图像处理入门学习教程六】基于Python的网络爬虫与OpenCV扩展库中的人脸识别算法比较

    OpenCV图像处理入门学习教程系列,上一篇第五篇:基于背景差分法的视频目标运动侦测 一.网络爬虫简介(Python3) 网络爬虫,大家应该不陌生了.接下来援引一些Jack-Cui在专栏<Pyt ...

  2. Opencv 3.4 中P3P位姿估计算法解析

    先上图,Opencv3.4中用两种算法实现P3P位姿估计问题.一种是基于距离P3P算法问题(算法1:P3P),一种是基于矩阵P3P算法问题(算法2:aP3P),具体推导细节可以参看论文还以整理的本地关 ...

  3. OpenCV中直方图反向投影算法详解与实现

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达本文转自:opencv学堂 一:直方图交叉 OpenCV中直方图反向 ...

  4. Python+opencv 机器视觉 - 基于霍夫圈变换算法检测图像中的圆形实例演示

    Python+opencv 机器视觉 - 基于霍夫圈变换算法检测图像中的圆形实例演示 第一章:霍夫变换检测圆 ① 实例演示1 ② 实例演示2 ③ 霍夫变换函数解析 第二章:Python + openc ...

  5. 简析美颜sdk中的人脸识别算法

    我们可能在网上听说过人脸检测.人脸识别等算法,那么这些常用于美颜sdk的算法之间,到底有没有联系?答案是"有的". 一般来说,可以将人脸识别算法分为基础层算法与应用层算法.而开头提 ...

  6. 均值滤波计算_从零学美颜算法保边滤波

    作者:天儿哥 有了前面的照片处理基础,这一篇开始讲美颜算法. 一.滤波为什么要保边? 人像美颜技术中,最重要的技术之一就是磨皮,没有磨皮谁还敢自拍,谁还敢直播? 磨皮本质上就是对图像进行滤波,比如前面 ...

  7. python编写美颜算法

    好的,在 Python 中编写美颜算法需要使用到图像处理和机器学习相关的库. 一种常用的方法是使用 OpenCV 库进行图像处理,可以对图像进行裁剪.旋转.缩放等操作. 然后使用机器学习模型对图像进行 ...

  8. python实现面部特效_【AI美颜算法】300行Python实现基于人脸特征的美颜算法

    先上效果图: AI美颜 人类一直是一个看脸的物种,人人都希望可以变得更美是无可争议的,而美颜类应用的出现拯救了所有人,从此人类进入了美(照)颜(骗)时代. .... 每次写技术blog都要写一堆废话引 ...

  9. 使用Python和OpenCV检测图像中的条形码

    使用Python和OpenCV检测图像中的条形码 1. 效果图 2. 算法的步骤 3. 源码 参考 这篇博客将介绍使用计算机视觉和图像处理技术进行条形码检测的必要步骤,并演示使用Python编程语言和 ...

最新文章

  1. select每门可说大于90分_小女子风雨黑暗无惧 90分全自动反向折叠照明伞
  2. nginx中的数组结构ngx_array_t
  3. e2fsprogs制作嵌入式 mkfs.ext2 mkfs.ext3 mkfs.ext4
  4. 干货总结:I2C总线详细要点
  5. 石头剪刀布 -2013编程之美全国测试赛 每日一练
  6. QT+CUDA7.5+UBUNTU14.04
  7. dblink 同步数据_使用DBLINK同步TC数据库
  8. 【C语言数据结构】数组
  9. 读透《华为数据之道》
  10. 关于被锁机软件修改硬盘引导扇区锁机软件读取密码的方法
  11. crosscheck命令
  12. 一文看懂并了解5G网络切片
  13. 【安全牛学习笔记】反射型XSS***漏洞的原理及解决办法
  14. ubuntu18.04安装搜狗拼音输入法
  15. MSDN(VS2010版)使用问题小记
  16. 为什么中国只有5%的景区暴利惊人?95%的景区却总是踩到陷阱!做文旅必须看懂此文!
  17. 使用 Cocos Creator 开发动感音乐游戏!
  18. 微积分小课堂:微分(从宏观变化了解微观趋势)
  19. 算法实战(二)两数相加
  20. win2003下搭建IIS serve

热门文章

  1. 2022年焊工考试电焊工考试模拟试题卷及答案
  2. SQL临时表|游标|两个日期之间计算时差|临时表条件查询
  3. 帆软相同列合并_合并表格工具_合并表格工具的痛点_合并表格工具哪一款比较好用-帆软...
  4. Windows 10 Enterprise 2015 LTSB 2019_裸奔Windows用户成主流:杀软的时代去了
  5. 236_自定义抽签器二
  6. 如何选择好用的海康视频恢复软件?综合考虑这几点
  7. 《认知觉醒:开启自我改变的原动力》读书摘记
  8. ESI文章详细信息获取
  9. 超级表格超好用的4个功能,你知道其中几个?
  10. javascript对输入框的字数限制(转自愚人码头)