50行Python代碼識別楊超越的顏值

行哥又又又又拿楊超越做封面了,只因爲昨天羣裏有小夥伴想學下人臉識別

但是如果要詳細介紹的話,那這個故事得從opencv的那個夏天說起,對於python小白來說,門檻有點高。所以行哥今天先給大家介紹一個幾秒就可以上手的人臉識別案例,下次行哥再深入通過原理來介紹

本次文章的案例就是使用百度的api來進行人臉識別,但凡你學過一點點Python,你就可以藉助百度的力量來進行人臉識別並檢測顏值、年齡等,你要知道現在百度搜索不要錢了

就像上圖所示,只要你註冊了百度開放平臺的賬號,獲取百度api的參數APP_ID ,API_KEY ,SECRET_KEY上圖裏的所有功能隨意你調用,很多接口甚至無限使用

所以行哥利用這個百度開發平臺的接口,僅50行代碼做一個顏值打分系統給大家分享

1.先看效果圖

作爲楊超越20年的鐵粉,非常想看一下她的人臉識別結果,使用百度的接口代碼可以預測楊超越的年齡是22歲,性別女,顏值79.95。不過這個顏值可能因爲臉的角度和光線問題上下波動,所以楊超越的顏值打分還可以再提高的。

後來,行哥用了下自己的照片進行顏值打分,識別效果還是蠻不錯的。這裏大家也可以用下面的代碼來測測自己的顏值哦,如果太低的話可以多讀書來提高

2.no bb show your code

關於百度API的使用方法可以參考這個視頻網站:https://cloud.baidu.com/doc/APIGUIDE/s/Ek1mzbeek,只要瞭解一些http請求,基礎Python知識就可以使用

核心代碼在這裏,只使用了三個模塊

  • cv2模塊導入圖片

  • base64模塊進行圖片編碼

  • aip接口進行人臉識別(安裝命令pip install baidu-aip)

import base64
from aip import AipFace
import cv2

options = {'face_field': 'age,gender,beauty', "max_face_num": 10}

img = cv2.imread(file_path)
# 圖片放文字
# 設置文件的位置、字體、顏色等參數
font = cv2.FONT_HERSHEY_DUPLEX
# font = ImageFont.truetype("simhei.ttf", 20, encoding="utf-8")
color = (0, 0, 255)
for item in result['result']['face_list']:
    x = int(item['location']['left'])
    y = int(item['location']['top'])
    w = item['location']['width']
    h = item['location']['height']
    age = item['age']
    beauty = item['beauty']
    gender = item['gender']['type']
    cv2.rectangle(img, (x, y), (x + w, y + h), (255, 0, 0), 3)
    cv2.putText(img, 'age:%s' % age, (x, y + h + 10), font, 1, color, 1)
    cv2.putText(img, 'beauty:%s' % beauty, (x, y + h + 30), font, 1, color, 1)
    cv2.putText(img, 'gender:%s' % gender, (x, y + h + 50), font, 1, color, 1)
cv2.imshow('Image', img)
# 按任意鍵退出
key = cv2.waitKey()
if key == 27:
    # 銷燬所有窗口
    cv2.destroyAllWindows()

3.最後注意

這個項目,只是利用百度提供了免費的人工智能接口來進行調用,學習和使用的門檻都很低。如果沒學過人工智能只會一點python代碼完全可以利用這個接口做一些有意思的項目

但是,如果你想去面試一家算法的崗位,你要是想說調用百度接口做的人臉識別項目,行哥勸你還是儘早轉行吧

最後,完整代碼後臺回覆【一行07】就可以領取,快看看有沒有比楊超越顏值還高的人臉來告訴行哥

——— / 往期精選 / ————

   【Python遊戲】十款經典Python遊戲

【Python分析】貧窮的原因

【Python可視化】5000億資產的展示

後臺回覆「進羣」可以加入我們的社羣哦~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章