用Python把人物头像动漫化,不同的表情给你不同的惊喜

   日期:2024-01-17     浏览:45    评论:0    

前言

最近上网冲浪的时候看到了一个有趣的东西,叫做『人物动漫化』,作为老大的粉丝,怎么可能放过这个机会,让我们先看看效果图:

 

 

这就是这次要用Python搞的事情啦,我们会利用百度AI的人物动漫化技术,结合Python对图片进行处理,生成动漫图片。

 

 

开始敲代码

老规矩先来敲代码,导入所需库

import base64
import requests

 

接下来利用百度AI的账号获取token,得到调用权限

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':'sUxvp1MQkEXLuzkCY10SP8M1',
        # 必选参数,传入你的Secret Key
        'client_secret':'miK5YLBsMGvGC84q7eFtGxiAefmIS8sq'
    }
    # 发送请求,获取响应数据
    response = requests.post(url, params)
    # 将响应的数据转成字典类型,然后取出access_token
    access_token = eval(response.text)['access_token']
    # 将access_token返回
    return access_token

 

然后编写我们的图片处理代码,来进行人物的动漫化处理,并保存到本地,调用我们的函数,输入我们要处理的图片地址和处理后的存储地址即可

def img2Cartoon(img):
    # 头像动漫化的API
    url = 'https://aip.baidubce.com/rest/2.0/image-process/v1/selfie_anime'
    # 以二进制的方式读取原始图片
    origin_im = open(img, 'rb')
    # 将图片进行base64编码
    img = base64.b64encode(origin_im .read())
    # 关闭原图片
    origin_im.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('01.jpg', 'wb')
        # 获取动漫头像
        anime = response.json()['image']
        # 对返回的头像进行解码
        anime = base64.b64decode(anime)
        # 将头像写入文件当中
        f.write(anime)
        f.close()

if __name__ == '__main__':
    img2Cartoon('1.jpg')

 

结果展示

 

 

 

 

 

 

ennnn,没错我也是超级小杰的粉丝,所以就一起来吧

50行左右的Python代码就能把图片做成动漫风格,大家可以去尝试一下,很多人的微信头像又可以更换了呢~

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服