亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python調(diào)用百度AI實(shí)現(xiàn)顏值評(píng)分功能

 更新時(shí)間:2021年11月29日 16:16:19   作者:阿黎逸陽(yáng)  
這篇文章主要介紹了應(yīng)用百度AI的人臉識(shí)別功能對(duì)年齡、性別、顏值等進(jìn)行識(shí)別,代碼具有一定的學(xué)習(xí)價(jià)值,感興趣的朋友跟隨小編一起看看吧

一、調(diào)用百度接口進(jìn)行人臉屬性識(shí)別

安裝好baidu-aip模塊,獲取了百度AI接口密鑰后,即可調(diào)用百度接口進(jìn)行人臉屬性識(shí)別了。首先以楊紫的圖片為例進(jìn)行年齡、性別、顏值的識(shí)別。

具體python代碼如下:?

import os
import base64
from aip import AipFace


os.chdir(r'F:\公眾號(hào)\28.人臉識(shí)別')
#設(shè)置圖片存放的路徑

pictureName = '1_yz.jpg'
def get_picture_content(pictureName):
    with open(pictureName, 'rb') as fp:
        content = base64.b64encode(fp.read())
        return content.decode('utf-8')
#定義讀取圖片的函數(shù)


APP_ID = 'XXX'
API_KEY = 'XXXXXXXX'
SECRET_KEY = 'XXXXXXXXXXXX'
#百度賬號(hào)和密鑰


options = {}
imageType = 'BASE64'
options["face_field"] = "age, gender, beauty"
aipFace = AipFace(APP_ID, API_KEY, SECRET_KEY)
result = aipFace.detect(get_picture_content(pictureName), imageType, options)
print(result)

注: 其中os.chdir中的內(nèi)容應(yīng)該替換成你存儲(chǔ)圖片的地址,APP_ID、API_KEY、SECRET_KEY應(yīng)該替換成你獲取的百度密鑰。

得到結(jié)果如下:

其中,age對(duì)應(yīng)的值為年齡,gender對(duì)應(yīng)的值為性別,beauty對(duì)應(yīng)的值為顏值分。為進(jìn)一步規(guī)范輸出成標(biāo)準(zhǔn)格式,通過(guò)如下代碼進(jìn)行規(guī)范化:

import pandas as pd

face_character = pd.DataFrame({"age":[result['result']['face_list'][0]['age']], "gender":[result['result']['face_list'][0]['gender']['type']], "beauty":[result['result']['face_list'][0]['beauty']] })

得到結(jié)果如下:

可以發(fā)現(xiàn)楊紫的顏值得分還是很高的圖片,后續(xù)文章也會(huì)對(duì)其它一些明星進(jìn)行測(cè)試。

二、根據(jù)年齡和性別對(duì)顏值進(jìn)行評(píng)價(jià)

根據(jù)性別和顏值分,對(duì)識(shí)別結(jié)果進(jìn)行評(píng)價(jià),具體代碼如下:

if face_character['beauty'][0]>80:
    if face_character['gender'][0] == 'female':
        print("小姐姐顏值爆表")
    else:
        print("小哥哥顏值爆表") 
elif face_character['beauty'][0]>70:
    if face_character['gender'][0] == 'female':
        print("小姐姐天生美顏")
    else:
        print("小哥哥天生美顏") 
elif face_character['beauty'][0]>60:
    if face_character['gender'][0] == 'female':
        print("小姐姐顏值尚可")
    else:
        print("小哥哥顏值尚可") 
elif face_character['beauty'][0]>40:
    if face_character['gender'][0] == 'female':
        print("小姐姐先天不夠,后天來(lái)湊")
    else:
        print("小哥哥先天不夠,后天來(lái)湊") 
else:
    if face_character['gender'][0] == 'female':
        print("小姐姐洗洗睡吧")
    else:
        print("小哥哥洗洗睡吧")

得到結(jié)果:

三、批量識(shí)別人臉屬性

假設(shè)文件夾中有數(shù)張人臉圖片,想批量對(duì)這批圖片進(jìn)行顏值打分,可執(zhí)行如下代碼:

import os
import re
import time
import base64
from aip import AipFace


os.chdir(r'F:\公眾號(hào)\28.人臉識(shí)別')
#設(shè)置圖片存放的路徑

pictureName = '6_brzp.jpg'
def get_picture_content(pictureName):
    with open(pictureName, 'rb') as fp:
        content = base64.b64encode(fp.read())
        return content.decode()
#定義讀取圖片的函數(shù)

APP_ID = 'XXX'
API_KEY = 'XXXXXXXX'
SECRET_KEY = 'XXXXXXXXXXXX'
#百度賬號(hào)和密鑰


options = {}
imageType = 'BASE64'
options["face_field"] = "beauty"
options["max_face_num"] = 2
aipFace = AipFace(APP_ID, API_KEY, SECRET_KEY)

root_path = r'F:\公眾號(hào)\28.人臉識(shí)別'
list = os.listdir(root_path) 
# 列出文件夾下所有的目錄與文件

for i in range(0, len(list)):
    time.sleep(1)  
    path = os.path.join(root_path, list[i])
    if os.path.isfile(path):
        result = aipFace.detect(get_picture_content(path), imageType, options)
        print(list[i] + ' 評(píng)分為:' + str(result['result']['face_list'][0]['beauty']))
#顯示出所有圖片的顏值得分

得到結(jié)果:

可以發(fā)現(xiàn)楊紫的那張照片顏值分很高,有八十幾分。為了更好的用戶體驗(yàn),我們?cè)O(shè)置一個(gè)窗口,顯示評(píng)價(jià)照片并語(yǔ)音播報(bào)顏值得分。?

四、自定義窗口語(yǔ)音播報(bào)顏值得分

為了更清晰地評(píng)價(jià)人的顏值,把圖片和結(jié)果用tkinter庫(kù)和語(yǔ)音播放庫(kù)包裝起來(lái),效果會(huì)更好。具體代碼如下:

import os
import re
import time
import base64
import pandas as pd
import tkinter as tk
from aip import AipFace
from tkinter import filedialog

root = tk.Tk()
root.withdraw()
Folderpath = filedialog.askdirectory(title = '請(qǐng)選擇圖片存放的文件夾')  
picturePath = filedialog.askopenfilename(title = '請(qǐng)選擇要進(jìn)行顏值評(píng)價(jià)的圖片')
root.destroy()
os.chdir(Folderpath)
#設(shè)置圖片存放的路徑

def get_picture_content(picturePath):
    with open(picturePath, 'rb') as fp:
        content = base64.b64encode(fp.read())
        return content.decode()
#定義讀取圖片的函數(shù)

APP_ID = 'XXX'
API_KEY = 'XXXXXXXX'
SECRET_KEY = 'XXXXXXXXXXXX'
#百度賬號(hào)和密鑰


options = {}
options["max_face_num"] = 2
options["face_field"] = "gender"
aipFace = AipFace(APP_ID, API_KEY, SECRET_KEY)
imageType = 'BASE64'
result = aipFace.detect(get_picture_content(picturePath), imageType, options)
gender = result['result']['face_list'][0]['gender']['type']
options["face_field"] = "age"
time.sleep(1)
result = aipFace.detect(get_picture_content(picturePath), imageType, options)
age = result['result']['face_list'][0]['age']
options["face_field"] = "beauty"
time.sleep(2)
result = aipFace.detect(get_picture_content(picturePath), imageType, options)
beauty = result['result']['face_list'][0]['beauty']
#獲取年齡、性別、顏值信息

face_character = pd.DataFrame({"age":age, "gender":gender, "beauty":beauty},index = ['value'])
if face_character['beauty'][0]>80:
    if face_character['gender'][0] == 'female':
        str_list = "小姐姐芳齡:"+ str(age) + ",顏值爆表"+ ',最終顏值得分為:'+str(beauty)
    else:
        str_list = "小哥哥貴庚:"+ str(age) + ",顏值爆表"+ ',最終顏值得分為:'+str(beauty)
elif face_character['beauty'][0]>70:
    if face_character['gender'][0] == 'female':
        str_list = "小姐姐芳齡:"+ str(age) + ",天生美顏"+ ',最終顏值得分為:'+str(beauty)
    else:
        str_list = "小哥哥貴庚:"+ str(age) + ",天生美顏"+ ',最終顏值得分為:'+str(beauty)
elif face_character['beauty'][0]>50:
    if face_character['gender'][0] == 'female':
        str_list = "小姐姐芳齡:"+ str(age) + ",顏值尚可"+ ',最終顏值得分為:'+str(beauty)
    else:
        str_list = "小哥哥貴庚:"+ str(age) + ",顏值尚可"+ ',最終顏值得分為:'+str(beauty)
elif face_character['beauty'][0]>30:
    if face_character['gender'][0] == 'female':
        str_list = "小姐姐芳齡:"+ str(age) + ",先天不夠,后天來(lái)湊"+ ',最終顏值得分為:'+str(beauty)
    else:
        str_list = "小哥哥貴庚:"+ str(age) + ",先天不夠,后天來(lái)湊" + ',最終顏值得分為:'+str(beauty)
else:
    if face_character['gender'][0] == 'female':
        str_list = "小姐姐芳齡:"+ str(age) + ",早點(diǎn)洗洗睡吧"+ ',最終顏值得分為:'+str(beauty)
    else:
        str_list = "小哥哥貴庚:"+ str(age) + ",早點(diǎn)洗洗睡吧"+ ',最終顏值得分為:'+str(beauty)
#顏值定義

from tkinter import *
from PIL import Image, ImageTk
from win32com.client import Dispatch
#導(dǎo)入包


speaker = Dispatch("SAPI.SpVoice")
def roll_call():
    speaker.Speak(str_list)
#控制播放語(yǔ)音


os.chdir(Folderpath)
#設(shè)置文件路徑

root = Tk()
root.title("顏值測(cè)試小程序")
root.iconbitmap("pikaqiu2.ico")
#設(shè)置窗口

image = Image.open(picturePath)
#加載圖片

root.geometry("400x300")
#根據(jù)圖片大小設(shè)置窗口大小

img_pic = ImageTk.PhotoImage(image)
label = Label(root, image=img_pic)
label.pack()

b2 = tk.Button(root, bg='lightyellow', text='顏值評(píng)價(jià)', font=("KaiTi", 8), width=8, height=2, command=roll_call)
b2.place(x=0, y=0)

root.mainloop()

五、明星顏值評(píng)價(jià)

最后我們來(lái)看下明星的顏值評(píng)分吧。

1 劉亦菲

顏值評(píng)價(jià)結(jié)果:

'小姐姐芳齡:21,顏值尚可,最終顏值得分為:64.19'

對(duì)于這個(gè)結(jié)果,我也比較吃驚,所以顏值得分大家當(dāng)成娛樂就好圖片。

2 賈玲

顏值評(píng)價(jià)結(jié)果:

'小姐姐芳齡:37,先天不夠,后天來(lái)湊,最終顏值得分為:30.67'

顏值得分僅供參考,請(qǐng)勿當(dāng)真。我的有些照片測(cè)出來(lái)也是三十多分,可能跟背景、光線、表情都有一定的關(guān)系,大家當(dāng)成娛樂就好。

3 肖戰(zhàn)

顏值評(píng)價(jià)結(jié)果:

'小哥哥貴庚:23,顏值尚可,最終顏值得分為:63.9'

顏值得分僅供參考,請(qǐng)勿當(dāng)真圖片,認(rèn)為我的代碼有問題的可以自行下載圖片和代碼進(jìn)行嘗試。

4 宋小寶

顏值評(píng)價(jià)結(jié)果:

'小哥哥貴庚:40,先天不夠,后天來(lái)湊,最終顏值得分為:45.18'

顏值得分僅供參考,請(qǐng)勿當(dāng)真。從上面的顏值得分可以發(fā)現(xiàn),普遍顏值得分較低,八十多分的已經(jīng)算高分了,也算是為楊紫的顏值正名了吧。至此,調(diào)用百度接口顏值識(shí)別已講解完畢,感興趣的朋友自己實(shí)現(xiàn)一遍吧。?

以上就是Python調(diào)用百度AI實(shí)現(xiàn)顏值評(píng)分功能的詳細(xì)內(nèi)容,更多關(guān)于Python 顏值評(píng)分的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python爬蟲入門案例之爬取去哪兒旅游景點(diǎn)攻略以及可視化分析

    Python爬蟲入門案例之爬取去哪兒旅游景點(diǎn)攻略以及可視化分析

    讀萬(wàn)卷書不如行萬(wàn)里路,學(xué)的扎不扎實(shí)要通過(guò)實(shí)戰(zhàn)才能看出來(lái),本篇文章手把手帶你爬取去哪兒平臺(tái)的旅游景點(diǎn)攻略并進(jìn)行可視化分析,大家可以在過(guò)程中查缺補(bǔ)漏,看看自己掌握程度怎么樣
    2021-10-10
  • Python實(shí)現(xiàn)一個(gè)簡(jiǎn)單的畢業(yè)生信息管理系統(tǒng)的示例代碼

    Python實(shí)現(xiàn)一個(gè)簡(jiǎn)單的畢業(yè)生信息管理系統(tǒng)的示例代碼

    這篇文章主要介紹了Python實(shí)現(xiàn)一個(gè)簡(jiǎn)單的畢業(yè)生信息管理系統(tǒng)的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • Python中的for循環(huán)詳情

    Python中的for循環(huán)詳情

    這篇文章主要介紹了Python中的for循環(huán),for語(yǔ)句實(shí)際上解決的是循環(huán)問題。在很多的高級(jí)語(yǔ)言中都有for循環(huán)(for loop)。下面就來(lái)簡(jiǎn)單給大家介紹Python中的for循環(huán)的相關(guān)資料,需要的朋友可以參考一下
    2021-10-10
  • Python sys.path詳細(xì)介紹

    Python sys.path詳細(xì)介紹

    這篇文章詳細(xì)介紹了Python sys.path,有需要的朋友可以參考一下
    2013-10-10
  • tensorflow2.0與tensorflow1.0的性能區(qū)別介紹

    tensorflow2.0與tensorflow1.0的性能區(qū)別介紹

    今天小編就為大家分享一篇tensorflow2.0與tensorflow1.0的性能區(qū)別介紹,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-02-02
  • Python錯(cuò)誤提示:[Errno 24] Too many open files的分析與解決

    Python錯(cuò)誤提示:[Errno 24] Too many open files的分析與解決

    這篇文章主要給大家介紹了Python中出現(xiàn)錯(cuò)誤提示:[Errno 24] Too many open files的分析與解決,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-02-02
  • 解決echarts中餅圖標(biāo)簽重疊的問題

    解決echarts中餅圖標(biāo)簽重疊的問題

    這篇文章主要介紹了解決echarts中餅圖標(biāo)簽重疊的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-05-05
  • python用opencv完成圖像分割并進(jìn)行目標(biāo)物的提取

    python用opencv完成圖像分割并進(jìn)行目標(biāo)物的提取

    這篇文章主要介紹了python用opencv完成圖像分割并進(jìn)行目標(biāo)物的提取,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • python實(shí)現(xiàn)決策樹

    python實(shí)現(xiàn)決策樹

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)決策樹的相關(guān)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • pandas中遍歷dataframe的每一個(gè)元素的實(shí)現(xiàn)

    pandas中遍歷dataframe的每一個(gè)元素的實(shí)現(xiàn)

    這篇文章主要介紹了pandas中遍歷dataframe的每一個(gè)元素的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10

最新評(píng)論