Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!

栏目: 编程工具 · 发布时间: 7年前

内容简介:python & opencv 打造当前相机最新的人脸融合功能。目前大部分IT大企业对人脸技术都是有研究的,人脸识别、人脸检测等等,到我们日常P图软件,随便说一个我知道的天天P图软件APP就可实现,Face++已经打造了人脸技术的API,但是它是收费的并且有点小贵,所以这次把人脸融合算法直接开源,供大家利用。(Python源码至于文末)先来瞧瞧各大软件与我们利用Python_OpenCV实现的效果差距:

python & opencv 打造当前相机最新的人脸融合功能。

论述

目前大部分IT大企业对人脸技术都是有研究的,人脸识别、人脸检测等等,到我们日常P图软件,随便说一个我知道的天天P图软件APP就可实现,Face++已经打造了人脸技术的API,但是它是收费的并且有点小贵,所以这次把人脸融合算法直接开源,供大家利用。(Python源码至于文末)

先来瞧瞧各大软件与我们利用Python_OpenCV实现的效果差距:

Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!

左边为被融合的图,右边为欲融合的图

Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!

手把手教你如何实现人脸融合技术:

零、融合函数

程序入口函数

Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!

参数含义:

Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!

检测及关键的定位

人脸的检测和关键点定位有很多种方法

  1. 使用开源 Dlib 库检测可定位定位68个关键点
  2. 使用腾讯平台的人脸识别和API可定位定位90个关键点
  3. 使用Face++平台的人脸识别和API可定位106个关键点

我们选择Face++的 api,前面就说过它是收费的,而且从这里也看得出它更加强大!

Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!

对齐人脸角度

在欲融合的人脸图不是侧脸的前提下,由调整平面位置和角度让它和将被融合的图进行人脸重合。

Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!

  • src_points 已经 dst_points 传入参数为第一步获取的人脸关键点矩阵

对齐采用“常规 Procrustes 分析法”

结果:

Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!

再次取关键点后融合脸部

再次对转换后的欲融合图片取关键点,与模特图的关键点做三角融合成新的图片

Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!

得到:

Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!

处理加工被融合的图片

对上面结果图进行取关键点,利用三角仿射把被融合图片的脸部轮廓、关键点变形为上面得到的脸部关键点

Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!

处理结果:

Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!

最后一步把融合后的脸部贴到模特图上

用泊松融合算法贴到模特图上。泊松融合可以使用opencv提供的函数

Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!

函数:

Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!

最终结果:

Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!

Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容! 不够满意就继续美颜,我上篇python+OpenCV的教程中有提到,就几行 Python 代码。 Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!


以上所述就是小编给大家介绍的《Python有黄金屋,OpenCV有颜如玉,人脸融合算法开源,堪比整容!》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Big Java Late Objects

Big Java Late Objects

Horstmann, Cay S. / 2012-2 / 896.00元

The introductory programming course is difficult. Many students fail to succeed or have trouble in the course because they don't understand the material and do not practice programming sufficiently. ......一起来看看 《Big Java Late Objects》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码