您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關Python如何使用face_recognition實現AI識別圖片中的人物的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
首先我們看看官方給出的人臉識別效果圖
我們看一下README關于安裝環境的信息
官方給出的可安裝操作系統是Mac和Linux,但是我想在windows安裝,繼續往下看。
windows雖然不是官方支持,但是也能裝,不就是個dlib嗎?好的,那就開始裝。
我們直接安裝requirements_dev.txt,這里要注意,把pip去掉。
注意一點安裝dlib的時候會報錯,需要先安裝cmake,安裝命令如下:
pip install cmake -i https://pypi.douban.com/simple
除此之外,項目還需要安裝opencv-python,安裝命令如下:
pip install opencv-python -i https://pypi.douban.com/simple
先做一下說明,在使用face_recognition運行的時候,可以選擇安裝face_recognition命令進行運行的模式,也可以使用face_recognition模塊構建代碼運行。為了二次開發,我還是先試試代碼的方式,主要試試人臉識別模塊。
官方代碼如下:
import face_recognition # Load the jpg files into numpy arrays biden_image = face_recognition.load_image_file("biden.jpg") obama_image = face_recognition.load_image_file("obama.jpg") unknown_image = face_recognition.load_image_file("obama2.jpg") # Get the face encodings for each face in each image file # Since there could be more than one face in each image, it returns a list of encodings. # But since I know each image only has one face, I only care about the first encoding in each image, so I grab index 0. try: biden_face_encoding = face_recognition.face_encodings(biden_image)[0] obama_face_encoding = face_recognition.face_encodings(obama_image)[0] unknown_face_encoding = face_recognition.face_encodings(unknown_image)[0] except IndexError: print("I wasn't able to locate any faces in at least one of the images. Check the image files. Aborting...") quit() known_faces = [ biden_face_encoding, obama_face_encoding ] # results is an array of True/False telling if the unknown face matched anyone in the known_faces array results = face_recognition.compare_faces(known_faces, unknown_face_encoding) print("Is the unknown face a picture of Biden? {}".format(results[0])) print("Is the unknown face a picture of Obama? {}".format(results[1])) print("Is the unknown face a new person that we've never seen before? {}".format(not True in results))
代碼說明:
1、首先可以看到將兩個人臉的數據加到了known_faces列表內。
2、然后用未知圖數據進行識別判斷。
看一下加入到known_faces的照片
看一下需要識別的照片
看一下執行結果
我們可以看到在拜登的識別中提示false,在奧巴馬識別中提示true。這里要注意一點,我們看一下compare_faces方法參數。
參數tolerance最佳為0.6,越低越嚴格,所以可以按照自己的需求調整。
感謝各位的閱讀!關于“Python如何使用face_recognition實現AI識別圖片中的人物”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。