使用Python来看看动漫中的你

久未见 提交于 2020-04-14 13:23:26

【推荐阅读】微服务还能火多久?>>>

百度人工智能运用世界领先的对抗生成网络,结合人脸检测、头发分割、人像分割等技术,为用户量身定制千人千面的二次元动漫形象,并且可通过参数设置,生成戴口罩的二次元动漫人像。

先来一组图看看效果

八种口罩任意选呦

不懂技术的想要自己的动漫头像可以QQ我呦:496575233

也可以在微信小程序上直接获取头像哦

接下来一起来看看制作过程吧

1、首先在百度智能云=>产品服务=>人工智能=>图片效果增强 模块下方注册应用

输入应用名称、应用类型、接口选择可以默认(默认就开启了人像动漫化权限)、应用描述

立即创建即可

2、进入应用列表、查看上述注册应用的API Key和Secret Key 这两个值注意保密哦,不要告诉别人,因为人像动漫画是免费次数500次,免费次数用完了收费标准目前是80元每1000次

3、接下来就需要获取用户权限了,就是使用2中的API Key和Secret Key获取token令牌了

原理是向服务器发起http请求,获取返回值中的token

可以使用python请求模块requests来完成

来一段案例代码

import requests
res = requests.post("https://aip.baidubce.com/oauth/2.0/token",data={
    "grant_type":"client_credentials",
    "client_id":"注册应用的API Key",
    "client_secret":"注册应用的Secret Key"
})
token = res.json()["access_token"]
print(token)

这个token可以使用一个月哦

获取到token之后就就可以使用token结合自己头像来获取动漫头像了

4、将上述token和自己的头像发送给服务器对应接口,可以选择是否带口罩以及口罩的类型哦

来一段案例代码

import base64
imgpath = "zly.jpg"
with open(imgpath,"rb") as f:
    base64str = base64.b64encode(f.read()).decode()
    res = requests.post("https://aip.baidubce.com/rest/2.0/image-process/v1/selfie_anime", data={
        "access_token": "上述代码获取的token",
        # 图片需要base64编码
        "image":base64str,
        # type的值anime或者anime_mask。前者生成二次元动漫图,后者生成戴口罩的二次元动漫人像
        "type":"anime_mask",
        # 1~8之间的整数,用于指定所使用的口罩的编码。
        "mask_id":"2"
    }, headers={
        "Content-Type": "application/x-www-form-urlencoded"
    })
    resultstr =res.json()["image"]
    resultstr = base64.b64decode(resultstr)
    with open("result.jpg", "wb") as f:
        f.write(resultstr)

就可以将获取到的头像进行保存到result.jpg中了

调整type类型结合mask_id可以选择更多口罩类型哦

再来一波美图看看

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!