python使用百度云API接口图片卡通化:
import requests
import base64
class AnimeDemo:
def __init__(self,AK,SK):
self.AK=AK
self.SK=SK
self.access_token=self.get_access_token()
def get_access_token(self):
token_host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id={ak}&client_secret={sk}'.format(
ak=self.AK, sk=self.SK)
header = {'Content-Type': 'application/json; charset=UTF-8'}
response = requests.post(url=token_host, headers=header)
content = response.json()
access_token = content.get("access_token")
return access_token
def baidu_selfie_anime(self,image_path,save_path):
request_url = "https://aip.baidubce.com/rest/2.0/image-process/v1/selfie_anime"
f = open(image_path, 'rb')
img = base64.b64encode(f.read())
params = {"image": img}
request_url = request_url + "?access_token=" + self.access_token
headers = {'content-type': 'application/x-www-form-urlencoded'}
try:
response = requests.post(request_url, data=params, headers=headers)
if response.status_code==200:
result= response.json()
image=result.get("image")
if image:
img_data=base64.b64decode(image)
with open(save_path,"wb") as f:
f.write(img_data)
return {"msg":"完成"}
return {"msg":"失败"}
except Exception as e:
return {"msg":"失败:%s"%e}
if __name__ == '__main__':
AK = "yEEMam*************b0eb"
SK = "4wOgjke******************jh1BI"
anime_obj = AnimeDemo(AK=AK, SK=SK)
anime_obj.baidu_selfie_anime("D:\\Py-thon\\pyhon-yunwei\\2345.jpg",'D:\\Py-thon\\pyhon-yunwei\\23456.jpg')
执行结果:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210409192841267.png)