濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > Python三十行代碼實(shí)現(xiàn)簡單人臉識(shí)別的示例代碼

Python三十行代碼實(shí)現(xiàn)簡單人臉識(shí)別的示例代碼

熱門標(biāo)簽:工廠智能電話機(jī)器人 江蘇客服外呼系統(tǒng)廠家 千陽自動(dòng)外呼系統(tǒng) 西藏智能外呼系統(tǒng)五星服務(wù) 在哪里辦理400電話號(hào)碼 清遠(yuǎn)360地圖標(biāo)注方法 400電話申請(qǐng)服務(wù)商選什么 平頂山外呼系統(tǒng)免費(fèi) 原裝電話機(jī)器人

一、庫介紹

opencv,face_recognition,numpy,以及dlib

注意:
安裝opencv速度可能過慢,需要更換國內(nèi)鏡像源,參考:https://www.jb51.net/article/208359.htm
附帶Python3.7,64位版本 dlib whl下載路徑:dlib-19_jb51.rar

二、庫安裝

pip install opencv-python
pip install face_recognition
pip install numpy

dlib庫需進(jìn)入whl文件路徑下安裝

pip install dlib-19.17.99-cp37-cp37m-win_amd64.whl

三、face_recognition庫簡單介紹

face_recognition的load_image_file方法會(huì)加載圖片,并返回一個(gè)ndarray類型的數(shù)據(jù)

face_path = "C://Users//25103//Desktop//Python人臉識(shí)別//face//徐先生.jpg"
image = face_recognition.load_image_file(face_path)

face_recognition的face_encoding方法,可從返回的ndarray類型數(shù)據(jù)中提取人臉特征,可同時(shí)提取多個(gè)特征,返回值為列表類型

face_encoding = face_recognition.face_encodings(image)[0]

face_recognition的face_location方法可以獲取圖片中所有人臉的位置,其返回值為一個(gè)列表

face_locations = face_recognition.face_locations(rgb_frame)

四、代碼實(shí)現(xiàn)以及注釋講解

# coding = utf-8
import dlib
import cv2
import face_recognition
import os

# 創(chuàng)建視頻對(duì)象
video_capture = cv2.VideoCapture(0)

# 加載需要識(shí)別的人臉圖片(這張圖片需要僅有一張臉)
# face_recognition的load_image_file方法會(huì)加載圖片,并返回一個(gè)ndarray類型的數(shù)據(jù)
# ndarray類型就是NumPy的數(shù)組類型,其中的元素類型可以一致也可以不一致
face_path = "C://Users//25103//Desktop//Python人臉識(shí)別//face//徐先生.jpg"
image = face_recognition.load_image_file(face_path)

# face_recognition的face_encoding方法,可從返回的ndarray類型數(shù)據(jù)中提取人臉特征,可同時(shí)提取多個(gè)特征,返回值為列表類型
# 因?yàn)檎掌兄挥幸粋€(gè)人臉,所以我們?nèi)×斜淼牡谝粋€(gè)值
face_encoding = face_recognition.face_encodings(image)[0]

while True:
 # 從視頻對(duì)象中讀取一幀照片
 ret,frame = video_capture.read()
 # 將照片縮小,加快處理速度,這里將其縮小為原圖的1/4
 # frame = cv2.rectangle(frame,(0,0),fx=0.25,fy=0.25)
 # 因?yàn)閏v2用的是BGR色彩,我們組要將其轉(zhuǎn)化為RGB進(jìn)行處理
 rgb_frame = frame[:,:,::-1] # 列表轉(zhuǎn)置操作

 # face_recognition的face_location方法可以獲取圖片中所有人臉的位置,其返回值為一個(gè)列表
 face_locations = face_recognition.face_locations(rgb_frame)
 print("共從視頻中找到了{(lán)}張人臉".format(len(face_locations)))

 # 獲取視頻中所有人臉的特征
 face_encodings = face_recognition.face_encodings(rgb_frame,face_locations)

 for face in face_encodings:
 # 比較兩個(gè)特征值——encoding1與encoding2,匹配返回True,否則返回False。tolerance越低,顧名思義,容錯(cuò)率越低,返回值為列表類型
 match = face_recognition.compare_faces([face_encoding],face,tolerance=0.4)
 name = "不認(rèn)識(shí)的人"

 if match[0]:
  # face為圖片名稱
  name = os.path.basename(face_path[0:-4])
 print("找到了{(lán)}".format(name))

到此這篇關(guān)于Python三十行代碼實(shí)現(xiàn)簡單人臉識(shí)別的示例代碼的文章就介紹到這了,更多相關(guān)Python 簡單人臉識(shí)別內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python opencv人臉識(shí)別考勤系統(tǒng)的完整源碼
  • 10分鐘學(xué)會(huì)使用python實(shí)現(xiàn)人臉識(shí)別(附源碼)
  • 用Python實(shí)現(xiàn)簡單的人臉識(shí)別功能步驟詳解
  • python基于opencv實(shí)現(xiàn)人臉識(shí)別
  • python實(shí)現(xiàn)圖片,視頻人臉識(shí)別(dlib版)
  • python實(shí)現(xiàn)圖片,視頻人臉識(shí)別(opencv版)
  • python調(diào)用百度API實(shí)現(xiàn)人臉識(shí)別
  • 使用python-cv2實(shí)現(xiàn)Harr+Adaboost人臉識(shí)別的示例
  • python3.8動(dòng)態(tài)人臉識(shí)別的實(shí)現(xiàn)示例
  • Python3 利用face_recognition實(shí)現(xiàn)人臉識(shí)別的方法
  • python實(shí)現(xiàn)的人臉識(shí)別打卡系統(tǒng)

標(biāo)簽:錦州 白城 西安 安慶 股票 日照 天水 隨州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Python三十行代碼實(shí)現(xiàn)簡單人臉識(shí)別的示例代碼》,本文關(guān)鍵詞  Python,三十,行,代碼,實(shí)現(xiàn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Python三十行代碼實(shí)現(xiàn)簡單人臉識(shí)別的示例代碼》相關(guān)的同類信息!
  • 本頁收集關(guān)于Python三十行代碼實(shí)現(xiàn)簡單人臉識(shí)別的示例代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    台北县| 武威市| 时尚| 贵定县| 苏州市| 大城县| 长沙市| 祁东县| 阿拉善左旗| 渝北区| 邯郸县| 沙雅县| 郓城县| 温州市| 乐安县| 游戏| 安溪县| 五大连池市| 梁山县| 股票| 景宁| 讷河市| 镇江市| 峡江县| 临夏市| 绿春县| 龙口市| 阿合奇县| 苍梧县| 乐都县| 台前县| 利辛县| 郎溪县| 新巴尔虎右旗| 鸡东县| 慈利县| 凤台县| 巴中市| 连南| 灯塔市| 安顺市|