1. face_recognition 使用世界上最簡單的人臉識別工具,它使用dlib最先進的人臉識別技術構建而成,并具有深度學習功能,
(1)Github 地址:https://github.com/ageitgey/face_recognition
(2)官方指南:https://face-recognition.readthedocs.io/en/latest/readme.html
(3)原始碼實作:https://face-recognition.readthedocs.io/en/latest/face_recognition.html

# 1 加入庫
import face_recognition
import cv2
import matplotlib.pyplot as plt
# 2 方法:顯示圖片
def show_image(image, title):
plt.title(title)
plt.imshow(image)
plt.axis("off")
# 3 方法:繪制Landmars關鍵點
def show_landmarks(image, landmarks):
for landmarks_dict in landmarks: #取出串列中的一個字典
for landmarks_key in landmarks_dict.keys(): #獲取字典中的鍵
for point in landmarks_dict[landmarks_key]: # 獲取每個鍵對應的值/點
cv2.circle(image, point, 2, (0,0,255), -1) # 畫出點
return image
# 4 主函式
def main():
# 5 讀取圖片
image = cv2.imread("Tom.jpeg")
# 6 圖片灰度轉換
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
# 7 呼叫face_recognition庫中的方法:face_landmarks() 檢測人臉中的關鍵點
face_marks = face_recognition.face_landmarks(gray, None, "large")
# none 表示不確定人臉所在的位置,自動找,
# large表示68,small表示5
print(face_marks) #輸出一串列,里面是一個字典,每個點來描述
# 8 繪制關鍵點
img_result = show_landmarks(image.copy(), face_marks)
# 9 創建畫布
plt.figure(figsize=(9,6))
plt.suptitle("Face Landmarks with face_recognition", fontsize=14, fontweight="bold")
# 10 顯示整體效果
show_image(img_result, "landmarks")
plt.show()
if __name__ == '__main__':
main()
2.庫的安裝
一定要求dlib 19.7.0,而不是根據已有的dlib版本安裝相應的face_recognition,這樣就可以安裝了face_recognition1.3.0,就在pycharm中安裝,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/423747.html
標籤:AI
上一篇:Kafka匯總
