广告
返回顶部
首页 > 资讯 > 后端开发 > Python >OpenCV-Python如何实现人脸美白算法
  • 912
分享到

OpenCV-Python如何实现人脸美白算法

2023-06-15 11:06:58 912人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要介绍了OpenCV-python如何实现人脸美白算法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。人脸美白原理人脸美白原理说透了,就是一种图像的颜色空间处理,所以

这篇文章主要介绍了OpenCV-python如何实现人脸美白算法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

人脸美白原理

人脸美白原理说透了,就是一种图像的颜色空间处理,所以我们需要通过颜色空间进行设计。

不过,我们先来参考以下PS对于图像美白的处理步骤:

  • 首先,新建一个图层,将这个图层设置为白色

  • 接着,将白色图层与原本图像进行alpha通道的颜色混合,这样就可以使图像整体变白。

通过PS的操作,我们大致可以知道需要创建一个与原图同等大小维度的图像,然后全部赋值为白色,然后通过图像图像加权和将两个图像叠加即可。

不过,这里明显存在很多问题,在PS中,我们虽然创建了全白色的图层,但是我们可以剪裁或者使用画笔工具只让白色叠加倒人物身上。而程序中,我们这么做会导致整个图像偏白,效果非常不理想。

那么,我们就需要考虑一个新的思路来实现人脸美白效果。

根据论文“A Two-Stage Contrast Enhancement AlGorithm for Digital Images”,采用映射表,使原图在色阶上有所增强,并在图像两端亮度相对减弱,中间增强,则会产生不错的美白效果,又能使图像白的更自然。

这里,我们提供一个美白映射表Color_list:

Color_list = [1, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 31, 33, 35, 37, 39,41, 43, 44, 46, 48, 50, 52, 53, 55, 57, 59, 60, 62, 64, 66, 67, 69, 71, 73, 74,76, 78, 79, 81, 83, 84, 86, 87, 89, 91, 92, 94, 95, 97, 99, 100, 102, 103, 105,106, 108, 109, 111, 112, 114, 115, 117, 118, 120, 121, 123, 124, 126, 127, 128,130, 131, 133, 134, 135, 137, 138, 139, 141, 142, 143, 145, 146, 147, 149, 150,151, 153, 154, 155, 156, 158, 159, 160, 161, 162, 164, 165, 166, 167, 168, 170,171, 172, 173, 174, 175, 176, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187,188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203,204, 205, 205, 206, 207, 208, 209, 210, 211, 211, 212, 213, 214, 215, 215, 216,217, 218, 219, 219, 220, 221, 222, 222, 223, 224, 224, 225, 226, 226, 227, 228,228, 229, 230, 230, 231, 232, 232, 233, 233, 234, 235, 235, 236, 236, 237, 237,238, 238, 239, 239, 240, 240, 241, 241, 242, 242, 243, 243, 244, 244, 244, 245,245, 246, 246, 246, 247, 247, 248, 248, 248, 249, 249, 249, 250, 250, 250, 250,251, 251, 251, 251, 252, 252, 252, 252, 253, 253, 253, 253, 253, 254, 254, 254,254, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,255, 255, 255, 256]

实现人脸美白

既然人脸美白的原理,以及美白的颜色映射表都给到了你。下面,我们就可以实现人脸美白效果,具体代码如下所示:

def face_whitening(fileName):    img = cv2.imread(fileName)    img = cv2.bilateralFilter(img, 19, 75, 75)    height, width, n = img.shape    img2 = img.copy()    for i in range(height):        for j in range(width):            b = img2[i, j, 0]            g = img2[i, j, 1]            r = img2[i, j, 2]            img2[i, j, 0] = Color_list[b]            img2[i, j, 1] = Color_list[g]            img2[i, j, 2] = Color_list[r]    cv2.imwrite("59_1.jpg",img2)    image = Image.open("59_1.jpg")    # 锐度调节    enh_img = ImageEnhance.Sharpness(image)    image_sharped = enh_img.enhance(1.2)    # 颜色均衡调节    con_img = ImageEnhance.Contrast(image_sharped)    image_con = con_img.enhance(1.2)    image_con.save("59_2.jpg")    img1 = cv2.imread("58.jpg")    img2 = cv2.imread("59_2.jpg")    cv2.imshow("1", img1)    cv2.imshow("2", img2)    cv2.waiTKEy()    cv2.destroyAllwindows()if __name__ == "__main__":    face_whitening("58.jpg")

运行之后,效果如下:

OpenCV-Python如何实现人脸美白算法

感谢你能够认真阅读完这篇文章,希望小编分享的“OpenCV-Python如何实现人脸美白算法”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网Python频道,更多相关知识等着你来学习!

--结束END--

本文标题: OpenCV-Python如何实现人脸美白算法

本文链接: https://www.lsjlt.com/news/280041.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • OpenCV-Python如何实现人脸美白算法
    这篇文章主要介绍了OpenCV-Python如何实现人脸美白算法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。人脸美白原理人脸美白原理说透了,就是一种图像的颜色空间处理,所以...
    99+
    2023-06-15
  • OpenCV-Python实现人脸美白算法的实例
    人脸美白原理 人脸美白原理说透了,就是一种图像的颜色空间处理,所以我们需要通过颜色空间进行设计。 不过,我们先来参考以下PS对于图像美白的处理步骤: 首先,新建一个图层,将...
    99+
    2022-11-12
  • OpenCV-Python如何实现人脸磨皮算法
    这篇文章将为大家详细讲解有关OpenCV-Python如何实现人脸磨皮算法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。人脸磨皮是最基础的人脸美颜效果。主要分为祛斑,祛痘,淡化黑眼圈等步骤。通过前面的学习...
    99+
    2023-06-15
  • OpenCV-Python实现人脸磨皮算法
    人脸磨皮是最基础的人脸美颜效果。主要分为祛斑,祛痘,淡化黑眼圈等步骤。通过前面的学习相信大家一眼都看得出来我们需要干什么才能识别人脸磨皮效果。 因为磨皮之后,脸部的杂质基本上就没有了...
    99+
    2022-11-12
  • C++ OpenCV实现白平衡之完美反射算法
    目录实现原理功能函数代码C++测试代码测试效果实现原理 白平衡的意义在于,对在特定光源下拍摄时出现的偏色现象,通过加强对应的补色来进行补偿,使白色物体能还原为白色。 完美反射算法是白...
    99+
    2022-11-13
  • java+opencv如何实现人脸识别功能
    这篇文章主要介绍了java+opencv如何实现人脸识别功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Java的特点有哪些Java的特点有哪些1.Java语言作为静态面向...
    99+
    2023-06-15
  • springboot集成opencv如何实现人脸识别功能
    这篇文章主要介绍springboot集成opencv如何实现人脸识别功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!前言项目中检测人脸图片是否合法的功能,之前用的是百度的人脸识别接口,由于成本高昂不得不寻求替代方案...
    99+
    2023-06-15
  • python计算机视觉OpenCV库实现实时摄像头人脸检测示例
    目录设备准备:实现过程调用模型库文件打开摄像头人脸检测设置退出机制程序运行全部代码OpenCV 是一个C++库,目前流行的计算机视觉编程库,用于实时处理计算机视觉方面的问题...
    99+
    2022-11-12
  • Python如何实现人脸识别系统
    小编给大家分享一下Python如何实现人脸识别系统,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!基本原理人脸识别和目标检测这些还不太一样,比如大家传统的训练一个目...
    99+
    2023-06-26
  • opencv+mediapipe如何实现人脸检测及摄像头实时示例
    这篇文章主要为大家展示了“opencv+mediapipe如何实现人脸检测及摄像头实时示例”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“opencv+mediapipe如何实现人脸检测及摄像头实...
    99+
    2023-06-22
  • Python+OpenCV内置方法如何实现行人检测
    小编给大家分享一下Python+OpenCV内置方法如何实现行人检测,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!您是否知道 OpenCV 具有执行行人检测的内置...
    99+
    2023-06-22
  • Python OpenCV Canny边缘检测算法如何实现
    本文小编为大家详细介绍“Python OpenCV Canny边缘检测算法如何实现”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python OpenCV Canny边缘检测算法如何实现”文章能帮助...
    99+
    2023-07-02
  • Python OpenCV Hough直线检测算法如何实现
    这篇文章主要介绍了Python OpenCV Hough直线检测算法如何实现的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python OpenCV Hough直线检测算...
    99+
    2023-07-02
  • Python中如何实现简单人脸识别的示例
    这篇文章给大家分享的是有关Python中如何实现简单人脸识别的示例的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、库介绍opencv,face_recognition,numpy,以及dlib注意:安装open...
    99+
    2023-06-14
  • pytorch液态算法如何实现瘦脸效果
    这篇文章主要介绍了pytorch液态算法如何实现瘦脸效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。算法思路:假设当前点为(x,y),手动指定变形区域的中心点为C(cx,c...
    99+
    2023-06-21
  • OpenCV如何实现无缝克隆算法
    这篇“OpenCV如何实现无缝克隆算法”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“OpenCV如何实现无缝克隆算法”文章吧...
    99+
    2023-07-02
  • OpenCV如何实现图像去噪算法
    今天小编给大家分享一下OpenCV如何实现图像去噪算法的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、函数参考1、Prim...
    99+
    2023-07-02
  • 如何使用Python实现简单的人脸识别功能
    小编给大家分享一下如何使用Python实现简单的人脸识别功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、首先梳理一下实现人脸识别需要进行的步骤:流程大致如此...
    99+
    2023-06-14
  • 教你如何用Python实现人脸识别(含源代码)
    工具与图书馆 Python-3.x CV2-4.5.2 矮胖-1.20.3 人脸识别-1.3.0 若要安装上述软件包,请使用以下命令。 pip...
    99+
    2022-11-12
  • 如何使用Python OpenCV实现人物动漫化效果
    这篇文章主要介绍如何使用Python OpenCV实现人物动漫化效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!效果展示第一组古风美女原图效果图啊......西湖的水 我的泪......这张图动漫化的超级...
    99+
    2023-06-26
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作