AI换脸
AI换脸
技术
调用到百度的AI接口,layui的图片上传,栅格化布局
核心代码
纯py文件运行
# encoding:utf-8
import requests
import base64
import json # 获取token
# client_id 为官网获取的AK, client_secret 为官网获取的SK
def get_token(client_id, client_secret):
url = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials"
params = {"client_id": client_id, "client_secret": client_secret}
response = requests.get(url, params=params)
resultJson = response.json()
return resultJson['access_token'] # 根据图片名读取图片,并转换成base64
def read_photo(name):
with open(name, 'rb') as f:
base64_data = base64.b64encode(f.read())
base64_code = base64_data.decode()
return base64_code # 调用百度的接口,实现融合图片
def face_fusion(token, template, target):
url = 'https://aip.baidubce.com/rest/2.0/face/v1/merge'
request_url = url + '?access_token=' + token
params = {
"image_template": {
"image": template,
"image_type": "BASE64",
"quality_control": "NONE"
},
"image_target": {
"image": target,
"image_type": "BASE64",
"quality_control": "NONE"
},
"merge_degree": "NORMAL"
}
params = json.dumps(params)
headers = {'content-type': 'application/json'}
result = requests.post(request_url, data=params, headers=headers).json()
if result['error_code'] == 0:
res = result["result"]["merge_image"]
down_photo(res)
else:
print(str(result['error_code'])+result['error_msg']) # 下载融合后图片
def down_photo(data):
imagedata = base64.b64decode(data)
file = open('./result.jpg', "wb")
file.write(imagedata) # 主程序
if __name__ == '__main__':
template = read_photo('img/jjy.jpg')
target = read_photo('img/mzc.jpeg')
token = get_token('你的ID', '你的key')
face_fusion(token, template, target)
实战开发-换脸大法
操作步骤
1.准备页面:两个图片上传,一个为模板图,一个为目标图,还有一个结果图
2.上传照片后,当点击“开始换脸”就会将两张图片的地址发送到后端,通过上面的纯py代码,下载换脸后的照片到本地,将地址返还给前端
3.前端将src进行更换即可
展示
将知否中的盛明兰与张一凡进行换脸

AI换脸的更多相关文章
- 程序员体验AI换脸就不要用ZAO了,详解Github周冠军项目Faceswap的变脸攻略
本文链接:https://blog.csdn.net/BEYONDMA/article/details/100594136 上个月笔者曾在<银行家杂志>发文传统银行如何引领开放 ...
- AI换脸必备知识:如何查看显卡型号以及显存大小!
使用Deepfakes(AI换脸) 软件,拼的就是配置,耗的就是时间,考验的是耐心. 配置好了,时间就少了. 所以玩这种软件,硬核需求就是:配置,配置,配置. 我的电脑能跑这个软件么?也是很多新手的 ...
- Thiago2(TPO AI.ROSTO):集成式AI换脸软件(Autodesk Flame)
如标题一样,Thiago2 是一款集成式AI换脸软件(TPO AI.ROSTO),需要与Autodesk Flame结合使用,从demo来看完成度还是很高的,算是一种完全GUI版的DeepFaceLa ...
- AI换脸教程:DeepFaceLab使用教程(2.训练及合成)
如果前期工作已经准备完毕(DeepFaceLab下载(https://www.deepfacelabs.com/list-5-1.html),然后安装相应的显卡驱动,DeepFaceLab使用教程(1 ...
- AI换脸教程:DeepFaceLab使用教程(1.安装及分解视频)
首先需要选择合适的DeepFaceLab下载(https://www.deepfacelabs.com/list-5-1.html),然后安装相应的显卡驱动,如果已经准备好这些工作,那么恭喜你,终于开 ...
- 从Vehicle-ReId到AI换脸,应有尽有,解你所惑
最近在做视频搜索的技术调研,已经初步有了一些成果输出,算法准确性还可以接受,基本达到了调研的预期.现将该技术调研过程中涉及到的内容总结一篇文章分享出来,内容比较多,初看起来可能关系不大,但是如果接触面 ...
- AI换脸实战教学(FaceSwap的使用)---------第一步Extration:提取人脸。
市面上有多款AI换脸的方法,笔者这里节选了Github那年很火的开源项目FaceSwap: (很早就实践了,但是忘记记录啦hhh,请勿用于不正当用途哦) 做了一篇详细教学,包括配置,参数设置,换脸效果 ...
- Deepfakes:AI换脸技术自制明星XX片
ps:亮瞎狗眼 去年开始就在国外网站上比较火的项目了,通过Deepfakes技术可以将视频中的人脸换成自己喜欢的明星, 当时就有不少人制作了换脸视频,其中大部分是替换了XX片的女主角. 国外网站Red ...
- 使用FakeAPP进行AI换脸必看!!
C盘生于容量小于5G的千万别用啊!!笔者本人因为C盘只剩了3G,根本用不上这个,最后会把大小为4G的core文件必须移植到C盘当中,俺的CUDA也白安装了,而且还不小心安装成CUDA8了,应该用9好么 ...
随机推荐
- Nginx 四层负载均衡
目录 四层负载均衡概述 配置七层负载均衡 配置四层负载均衡 四层负载均衡概述 四层负载均衡是基于IP+端口的负载均衡,七层负载均衡是基于URL或主机名等应用层信息的负载均衡. 其他层负载均衡(转载): ...
- kubernetes实战-交付dubbo服务到k8s集群(五)交付dubbo-monitor监控服务到k8s
首先下载 dubbo-monitor源码包7-200 dubbo-monitor是监控zookeeper状态的一个服务,另外还有dubbo-admin,效果一样,感兴趣的可以自己研究一下. # cd ...
- Django的settings配置文件
一.邮件配置 EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_HOST = 'smtp.qq.com' EMAI ...
- 生成不带签名(BOM)的UTF8格式的XML
生成XML的一种方法如下: using System.Xml; private void SaveXML(string savePath) { XmlWriterSettings setting = ...
- Hexo-使用阿里iconfont图标
Hexo-使用阿里iconfont图标 因为使用hexo搭建的博客中,大家并不懂都有什么图标,fa fa-xx就懵了,不知道都有什么. 首先,fa fa-xxx中的图标可以在 图标库 中寻找. (上面 ...
- 【非原创】sg函数模板
学习博客:戳这里 解题模型: 1.把原游戏分解成多个独立的子游戏,则原游戏的SG函数值是它的所有子游戏的SG函数值的异或. 即sg(G)=sg(G1)^sg(G2)^...^sg(Gn) ...
- IFIX 5.9 历史数据 曲线 (非SQL模式)
装完 ifix 5.9 默认是没有Hist 开头的 历史数据源的,没存,至少我装的版本是这样. 那个Historian 也没有安装包,好像还要授权,自己研究不了. 1 先把数据存本地 在你的安装包里 ...
- redis字符串-sds
redis自己实现了一种名为简单动态字符串的抽象类型(simple dynamic string)作为字符串的表示.下面将简单介绍sds的实现原理. 一.sds的结构
- 微服务架构Day04-SpringBoot之web开发
引入项目 把html页面放在模板引擎文件夹templates下,这样能使用模板引擎的功能. 登录页面国际化 国际化:编写国际化配置文件 1.编写国际化配置文件,抽取页面需要显示的国际化消息 2.Spr ...
- 如何在手机上实现 H5 页面全屏显示
如何在手机上实现 H5 页面全屏显示 fullscreen 隐藏头部地址栏 隐藏底部导航栏 refs xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许注册用户才 ...