Python实现人脸识别
文章目錄
- 叨叨幾句
- 準(zhǔn)備工作
- 代碼流程
叨叨幾句
哈嘍兄弟們,今天實(shí)現(xiàn)一下人臉識(shí)別。
先問大家一個(gè)問題
什么是百度Aip模塊?
百度AI平臺(tái)提供了很多的API接口供開發(fā)者快速的調(diào)用運(yùn)用在項(xiàng)目中
本文寫的是使用百度AI的在線接口SDK模塊(baidu-aip)進(jìn)行實(shí)現(xiàn)人臉識(shí)別
除了人臉識(shí)別,其他api功能的調(diào)用也同理。
準(zhǔn)備工作
本機(jī)環(huán)境
系統(tǒng):win11
Python版本:3.9.7
編輯器:VS2022
安裝baidu-aip模塊
win + R 輸入cmd打開命令提示符
執(zhí)行安裝百度AI模塊
pip install baidu-aip登錄百度AI平臺(tái)創(chuàng)建應(yīng)用
打開百度AI平臺(tái) 進(jìn)行登錄
在控制臺(tái)中找到人臉識(shí)別
按自己要求創(chuàng)建應(yīng)用
最后得到應(yīng)用的AppID API Key Secret Key
記下值 等等會(huì)用到
AppID:10000000 API Key:xxxxxxxxxxxxxxxxxxxxxxxx Secret Key:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx代碼流程
導(dǎo)入baidu-aip模塊
打開VS2022(VSCode PyCharm Sypder等同理)創(chuàng)建一個(gè)py文件
輸入
聲明上文獲取的AppID API Key Secret Key
APP_ID = '10000000' API_KEY = 'xxxxxxxxxxxxxxxxxxxxxxxx' SECRET_KEY = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'初始化百度AIP 人臉識(shí)別模塊
client = AipFace(APP_ID, API_KEY, SECRET_KEY)創(chuàng)建人臉檢測函數(shù)
def face_detect(image):result = client.detect(image, image_type='BASE64')print(result)return result輸入的圖片image必須是BASE64格式
將圖片轉(zhuǎn)為BASE64格式
導(dǎo)入base64包
import base64將圖片打開為 BASE64格式
但是導(dǎo)入到百度AI中需要為字符串格式,所以返回為字符串
def imageToBase64(imagePath):with open(imagePath, 'rb') as f:image = base64.b64encode(f.read())return str(image, encoding='utf-8')打開圖片進(jìn)行檢測
先準(zhǔn)備一張圖片pic1.jpg
調(diào)用函數(shù)
face_detect(imageToBase64("pic1.jpg"))提示調(diào)用成功:
遇到的問題
運(yùn)行時(shí)候提示:
requests.exceptions.ProxyError: HTTPSConnectionPool(host='aip.baidubce.com', port=443)win + R 輸入 regedit打開注冊表,找到
\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings把ProxyEnable的值改為0
再運(yùn)行即可
延伸出使用其他功能
除了人臉檢測還可以使用人臉比、人臉?biāo)阉鲗Φ群瘮?shù),調(diào)用方法同理,比如人臉比對。
def face_match(image1, image2):result = client.match([{'image': image1,'image_type': 'BASE64',},{'image': image2,'image_type': 'BASE64',}])print(result)return result人臉?biāo)阉?/p> def face_search(image,group_id_list):result = client.search(image, image_type='BASE64',group_id_list=group_id_list)print(result)return result
APP_ID API_KEY SECRET_KEY 需要修改為自己的
今天的分享就到這里結(jié)束了,完整代碼點(diǎn)擊下方V-x名片獲取。
推薦一套Python教程,涵蓋了常見的一百多個(gè)實(shí)戰(zhàn)案例,每一個(gè)都非常詳細(xì)。
代碼總是學(xué)完就忘記?100個(gè)爬蟲實(shí)戰(zhàn)項(xiàng)目!讓你沉迷學(xué)習(xí)丨學(xué)以致用丨下一個(gè)Python大神就是你!
總結(jié)
以上是生活随笔為你收集整理的Python实现人脸识别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SOA架构师注意的问题
- 下一篇: python人脸识别代码_一行Pytho