最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python實(shí)戰(zhàn)之百度智能云使人像動(dòng)漫化

 更新時(shí)間:2024年04月08日 11:30:12   作者:Linkage interrupt  
這篇文章主要介紹了python實(shí)戰(zhàn)之百度智能云使人像動(dòng)漫化,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)python的小伙伴們有很好地幫助,需要的朋友可以參考下

一、目標(biāo)

之前無意中看到有某位博主寫過人像動(dòng)漫化這樣的文章,看著還挺好玩,所以我也想嘗試一下。

利用百度智能云中的人工智能,對(duì)圖片進(jìn)行處理達(dá)到人像動(dòng)漫化的效果。

二、準(zhǔn)備工作

1.百度云智能賬號(hào)創(chuàng)建

2.圖像特效應(yīng)用

3.開發(fā)環(huán)境python3.7+pycharm

首先要注冊(cè)一個(gè)百度智能云賬號(hào),并創(chuàng)建這個(gè)圖像特效應(yīng)用

在這里插入圖片描述

三、操作流程

3.1 閱讀官方文檔

當(dāng)我們要使用一個(gè)我們不太了解的東西時(shí),閱讀官方文檔無疑是最重要的,官方文檔一般都寫的特別詳細(xì),對(duì)每一個(gè)功能描述的很細(xì)節(jié),我們先來看一下

在這里插入圖片描述
在這里插入圖片描述

而且這里有案例,這里我使用的是python

3.2 開始實(shí)現(xiàn)鑒權(quán)

因?yàn)檎{(diào)用這么個(gè)接口api要進(jìn)行鑒權(quán),就是官方文檔說得到access_token,如何鑒權(quán)呢?

在這里插入圖片描述
在這里插入圖片描述

import requests
import pprint
def get_access_token(id,secret):
    get_access_token_url='https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id='+id+'&client_secret='+secret
    response=requests.get(get_access_token_url)
    pprint.pprint(response.json())
id='*******************'
secret='******************'
get_access_token(id,secret)

這里的id和secret就是創(chuàng)建應(yīng)用的appkey和secretkey:

在這里插入圖片描述

上述代碼打印結(jié)果有很多,閱讀官網(wǎng)文檔得知,我們這里只需要得到access_token就OK了

在這里插入圖片描述

修改上述代碼以獲取access_token

import requests
def get_access_token(id,secret):
    get_access_token_url='https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id='+id+'&client_secret='+secret
    response=requests.get(get_access_token_url)
    content=response.json()
    access_token=content['access_token']
    print(access_token)
id='*******************'
secret='******************'
get_access_token(id,secret)

3.3 人像動(dòng)漫化實(shí)現(xiàn)

正片開始

在這里插入圖片描述

在這里插入圖片描述

修改代碼

import requests
import pprint
import base64
def get_access_token(id,secret):
    get_access_token_url='https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id='+id+'&client_secret='+secret
    response=requests.get(get_access_token_url)
    content=response.json()
    access_token=content['access_token']
    return access_token

def Animation(img_file,access_token):
    request_url='https://aip.baidubce.com/rest/2.0/image-process/v1/selfie_anime'
    f=open(img_file,'rb')
    image=base64.b64encode(f.read())
    params = {"image":image}
    request_url = request_url + "?access_token=" + access_token
    headers = {'content-type': 'application/x-www-form-urlencoded'}
    response = requests.post(request_url, data=params, headers=headers)
    pprint.pprint(response.json())
def main():
    img_file = '1.jpg'#圖片地址
    id = '**************************'
    secret = '**************************'
    access_token = get_access_token(id, secret)
    Animation(img_file, access_token)
if __name__ == '__main__':
    main()

這時(shí)可以得到一系列的返回值

在這里插入圖片描述

我們這里只要image

獲取image值

修改代碼

import requests
import pprint
import base64
def get_access_token(id,secret):
    get_access_token_url='https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id='+id+'&client_secret='+secret
    response=requests.get(get_access_token_url)
    content=response.json()
    access_token=content['access_token']
    return access_token

def Animation(img_file,access_token):
    request_url='https://aip.baidubce.com/rest/2.0/image-process/v1/selfie_anime'
    f=open(img_file,'rb')
    image=base64.b64encode(f.read())
    params = {"image":image}
    request_url = request_url + "?access_token=" + access_token
    headers = {'content-type': 'application/x-www-form-urlencoded'}
    response = requests.post(request_url, data=params, headers=headers)
    image_content=response.json()
    image=image_content['image']
    print(image)
def main():
    img_file = '1.jpg'#圖片地址
    id = '**************************'
    secret = '**************************'
    access_token = get_access_token(id, secret)
    Animation(img_file, access_token)
if __name__ == '__main__':
    main()

獲取到一串base64編碼的圖片,這顯然快得到我們想要的東西了

 with open('result.jpg','wb') as f:
        f.write(base64.b64decode(image))

保存到本地

看一下對(duì)比

在這里插入圖片描述

呃呃呃,這。。。。還好吧,哈哈哈

四、完整代碼如下

import requests
import pprint
import base64
def get_access_token(id,secret):
    get_access_token_url='https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id='+id+'&client_secret='+secret
    response=requests.get(get_access_token_url)
    content=response.json()
    access_token=content['access_token']
    return access_token

def Animation(img_file,access_token):
    request_url='https://aip.baidubce.com/rest/2.0/image-process/v1/selfie_anime'
    f=open(img_file,'rb')
    image=base64.b64encode(f.read())
    params = {"image":image}
    request_url = request_url + "?access_token=" + access_token
    headers = {'content-type': 'application/x-www-form-urlencoded'}
    response = requests.post(request_url, data=params, headers=headers)
    image_content=response.json()
    image=image_content['image']
    with open('result.jpg','wb') as f:
        f.write(base64.b64decode(image))  
def main():
    img_file = '1.jpg'#圖片地址
    id = '**************************'
    secret = '**************************'
    access_token = get_access_token(id, secret)
    Animation(img_file, access_token)
if __name__ == '__main__':
    main()

五、還能這么玩?

在這里插入圖片描述

厲害了,還能加口罩,試一下

修改代碼

params = 
{
"image":image,"type":'anime_mask',"mask_id":1
}
#mask_id 1-8的整數(shù),就用個(gè)1吧

看一下效果

在這里插入圖片描述

嘖嘖嘖

到此這篇關(guān)于python實(shí)戰(zhàn)之百度智能云使人像動(dòng)漫化的文章就介紹到這了,更多相關(guān)python人像動(dòng)漫化內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

鄂伦春自治旗| 定远县| 霍林郭勒市| 镶黄旗| 福建省| 保靖县| 阿图什市| 光泽县| 获嘉县| 长泰县| 巫山县| 灵台县| 浠水县| 西丰县| 崇左市| 台湾省| 黄龙县| 荔波县| 秦皇岛市| 垦利县| 石嘴山市| 竹北市| 宜兰县| 阳江市| 东安县| 巍山| 乐至县| 四子王旗| 德阳市| 邻水| 清徐县| 荣成市| 平度市| 沭阳县| 视频| 衡东县| 曲靖市| 墨玉县| 黑山县| 罗源县| 泽州县|