測測你的顏值有多少?
阿新 • • 發佈:2020-12-11
測測你的顏值有多少?
突然看到一個測顏值的工具,覺得很有意思,寫完之後上傳照片感覺好好玩呀 ~~~
今天週末,不想寫的太詳細了,有點懶,直接上程式碼 ~~~
import base64 import json import requests class AIFace: def __init__(self,img): #你的應用API KEY self.AK = 'Oahh6GbkGsw5bzEGSVHwLhY2' #你應用的祕鑰 self.SK = 'CfUe9h5qnqRwfvydHmyYGh2TQGejw8TN' self.img_src = img self.headers = { 'Content-Type':'application/json;charset=UTF-8' } def get_AccessToken(self): #獲取AccessToken host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id' \ '=' + self.AK + '&client_secret=' + self.SK response = requests.get(host,headers = self.headers) json_result = json.loads(response.text) if response: return json_result['access_token'] else: print(json_result) return 0 def img_to_base64(self,path): #圖片轉化為base64 with open(path,'rb')as f: image = f.read() image_base64 = str(base64.b64encode(image),encoding='utf-8') return image_base64 def face_identification(self): #人臉檢測與屬性分析 img = self.img_to_base64(self.img_src) request_url = 'https://aip.baidubce.com/rest/2.0/face/v3/detect' post_data = { "image": img, "image_type": "BASE64", "face_field": "gender,age,beauty,gender,race,emotion,face_shape,landmark", # 包括age,beauty,expression,face_shape,gender,glasses,landmark,emotion,face_type,mask,spoofing資訊 "face_type": "LIVE" # 人臉的型別。LIVE表示生活照,IDCARD表示身份證晶片照,WATERMARK表示帶水印證件照,CERT表示證件照片,預設LIVE。 } access_token = self.get_AccessToken() request_url = request_url + "?access_token=" + access_token response = requests.post(url=request_url, data=post_data, headers=self.headers) json_result = json.loads(response.text) # print(json_result) if json_result['error_code'] == 0: print("人臉表情:", json_result['result']['face_list'][0]['emotion']['type']) print("人物年齡:", json_result['result']['face_list'][0]['age']) print("人物顏值評分:", json_result['result']['face_list'][0]['beauty']) print("人物性別:", json_result['result']['face_list'][0]['gender']['type']) print("人物種族:", json_result['result']['face_list'][0]['race']['type']) # print("人物特徵點位置:", json_result['result']['face_list'][0]['landmark72']) else: print(json_result['error_code']) print(json_result['error_msg']) if __name__ == '__main__': imglist = ['OIP.jpeg','OIP 1.jpeg','qian.jpg','haven.jpg','11.jpg','2.jpg' ,'3.jpg' ,'4.jpg' ,'5.png','111.jpg',] for i in range(0, len(imglist)): print('第{}張圖片:'.format(i + 1)) demo = AIFace(imglist[i]) if (demo.get_AccessToken()): demo.face_identification()
測了一下紫琪的顏值,真是不愧實力與顏值並存,85分~
黃渤~
哈哈 ~ 真好玩