使用python进行面部合成,至少比PS新手的效果更好吧

一. 准备工作

1. 此程序使用的是 Face++ 的API,所以需要去Face++官网注册账号:

2. 创建应用,获取 key 和 secret

使用python进行面部合成,至少比PS新手的效果更好吧_第1张图片

推荐下我自己创建的Python学习交流群960410445,这是Python学习交流的地方,不管你是小白还是大牛,小编都欢迎,不定期分享干货,包括我整理的一份适合零基础学习Python的资料和入门教程。

3. 下载 simplejson 模块 ,使用pip就可以下载了

pip install simplejson

二. 程序思路

 1. 使用 decect 接口,获取人脸关键点

* return_landmark 参数 不能为 0 不然不会返回人脸关键点

使用python进行面部合成,至少比PS新手的效果更好吧_第2张图片

核心代码:

使用python进行面部合成,至少比PS新手的效果更好吧_第3张图片

2. 使用 mergeface 接口,合成脸部图像

注意图片文件大小不超过 2 MB

核心代码:

使用python进行面部合成,至少比PS新手的效果更好吧_第4张图片

3. 示例运行代码

使用python进行面部合成,至少比PS新手的效果更好吧_第5张图片

4. 封装一个多张照片的合成函数

用 列表List 储存图片地址,先以最开始的两张进行合成,然后将合成后的图片与列表中的其他图像依次合成

* 程序没有做List的长度验证,注意边界特殊情况

使用python进行面部合成,至少比PS新手的效果更好吧_第6张图片

5. 成果展示

素材1:

使用python进行面部合成,至少比PS新手的效果更好吧_第7张图片

素材2:

使用python进行面部合成,至少比PS新手的效果更好吧_第8张图片

合成结果:

使用python进行面部合成,至少比PS新手的效果更好吧_第9张图片

你可能感兴趣的:(使用python进行面部合成,至少比PS新手的效果更好吧)