dlib人臉識別


dlib人臉識別

1、dlib安裝

​ 代碼的編寫在jupyter notebook中來完成

​ jupyter notebook是一個工具

​ pip install jupyter ------------>安裝使用

​ 如何啟動:

​ 命令行輸入:jupyter notebook

​ 前提,環境變量配置成功

​ dlib安裝-------------> pip install dlib

​ dlib有不同的版本,最新版本(19.17.0),經過測試,dll包不完備,所以上次我在使用時,出了一點問題,隨着時間的推移,修復

​ 建議大家安裝之前的版本(19.8.1)

​ pip install dlib==19.8.1

2、dlib人臉識別

​ cv2和dlib異同

​ 都可以識別人臉

​ cv2級聯方式識別人臉,啟用算法時,人臉特征數據:haar

​ dlib底層使用的是深度神經網絡

​ 所以dlib識別准確率,要比opencv(cv2)高

​ pip install opencv-python

​ 我們就可以在代碼中,導包了

​ dlib調用相應方法,識別人臉

​ face_detector = dlib.get_frontal_face_detector()

​ 調用:

​ 人臉坐標數據

​ faces = face_detector(image,1)

​ 繪制:

    for face in faces:
        left = face.left()
        top = face.top()
        right = face.right()
        bottom = face.bottom()
 
        cv2.rectangle(jin,pt1 = (left,top),pt2 = (right,bottom),color = [0,0,255],thickness = 2)

3、dlib多張人臉的識別

​ jupyter執行代碼 Ctrl + Enter

​ 多張人臉和單張人臉識別的代碼完全一樣的

4、dlib可以識別視頻中的人臉

​ 視頻操作,首先讀取視頻

​ cv2工具---------> opencv------->計算機視覺

​ 演示,視頻每一張圖片,進行顯示

​ cv2.waitKey(10) -------->毫秒,快進感覺

​ 視頻中人臉可以檢測,但是播放速度變慢,為什么???

​ 因為人臉識別,算法應用,大量計算,計算時,花時間的

5、dlib可以標記人臉的關鍵點(輪廓點)

​ 1、識別人臉

​ 2、輪廓識別人臉關鍵點

​ 人臉68個關鍵點:嘴巴,鼻子,眼睛,眉毛,輪廓

​ shape = dlib.shape_predictor('./shape_predictor_68_face_landmarks.dat')

​ facemarks = shape(jin,face)

​ for mark in facemarks.parts():

​ x = mark.x

​ y = mark.y

​ cv2.circle(jin,center = (x,y),radius = 2,color = [0,255,0],thickness = 2)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM