Python3,区区一段代码,自己就可以制作动漫头像,YYDS。
【摘要】 网友:这不就是相当于 "白嫖"。
1、引言
小云:鱼哥,我看最近不少人都把头像换成动漫的了。
小鱼:嗯,这个很久之前就流行了啊
小云:我擦,埋汰人不带这样埋汰的哈。
小鱼:何出此言…
小云:你的意思,我就是已经被社会out了呗?
小鱼:可没有这个意思。就是…
小云:就是什么??
小鱼:没什么…
小云:赶紧说啊,急死个人嘞…
小鱼:就是,你没看朋友圈,你女神想使用自己的照片生成动漫头像,但是不想下载软件,也不想在各个平台注册…
小云:这事找我啊。
小鱼:难道你知道改怎么操作?
小云:必须的啊,我这不来问你了嘛。
小鱼:…
2、动漫头像制作
2.1 平台制作
关于动漫头像制作的 软件/平台,在百度搜索,很多。
这里就不多说了。
但是值得推荐的是,百度AI平台的动漫头像自动转换,还是不错的,
有兴趣的可以自己看看。
点击,百度AI平台人像动漫,即可到达。
2.2 代码示例
我们这次来搞得,就是代码级别的,
为什么是代码级别的抓换呢,因为真香定律之白嫖最香。
我们也是直接调用百度AI平台的人像动漫的接口,来直接生成,
因为没有什么太复杂的难度,我们直接上代码。
代码示例
# -*- coding:utf-8 -*-
# @Time : 2022-07-10
# @Author : carl_DJ
import base64
import requests
def get_access_token():
# 获取token的API
url = 'https://aip.baidubce.com/oauth/2.0/token'
# 获取access_token需要的参数
params = {
# 固定参数
'grant_type':'client_credentials',
# 必选参数,传入你的API Key
'client_id':'你的API Key',
# 必选参数,传入你的Secret Key
'client_secret':'你的Secret Key'
}
# 发送请求,获取响应数据
response = requests.post(url, params)
# 将响应的数据转成字典类型,然后取出access_token
access_token = eval(response.text)['access_token']
# 将access_token返回
return access_token
def get_Img_Cartoon(img):
# 头像动漫化的API
url = 'https://aip.baidubce.com/rest/2.0/image-process/v1/selfie_anime'
# 以二进制的方式读取原始图片
origin_img = open(img, 'rb')
# 将图片进行base64编码
img = base64.b64encode(origin_img .read())
# 关闭原图片
origin_img.close()
# 请求的headers信息,固定写法
headers = {'content-type':'application/x-www-form-urlencoded'}
# 请求的参数
params = {
# 开始获取的access_token
'access_token':get_access_token(),
# 图片的base64编码
'image':img,
}
# 发送请求
response = requests.post(url, data=params, headers=headers)
# 对响应结果进行处理
if response:
# 打开一个文件
f = open('result.jpg', 'wb')
# 获取动漫头像
anime = response.json()['image']
# 对返回的头像进行解码
anime = base64.b64decode(anime)
# 将头像写入文件当中
f.write(anime)
f.close()
if __name__ == '__main__':
get_Img_Cartoon('queue.jpg')
图片展示
非常的奈斯。
小屌丝:可以啊,我这就去给我女神换头像去。
小鱼:…
3、总结
看到这里,今天的分享差不多就要结束了。
其实现在网上也有很多的动漫头像制作软件,
如果觉得费事的话,直接下载软件注册使用就好;
如果想像小鱼这样,即能练习敲代码,又能获得白嫖的满足感,那就用这段代码;
我是小鱼:
- CSDN 博客专家;
- 阿里云 专家博主;
- 51CTO 博客专家;
- 51认证讲师;
- 金牌面试官;
- 职业规划师;
关注我,带你学习更多更有趣的Python知识。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)