Python實現(xiàn)識別圖像中人物的示例代碼
前言
接著上一篇:AI識別照片是誰,人臉識別face_recognition開源項目安裝使用
根據(jù)項目提供的demo代碼,調整了一下功能,自己寫了一個識別人臉的工具代碼。
環(huán)境部署
按照上一篇的安裝部署就可以了。
代碼
不廢話,直接上代碼。
#!/user/bin/env python # coding=utf-8 """ @project : face_recognition @author : 劍客阿良_ALiang @file : test.py @ide : PyCharm @time : 2022-01-11 19:50:58 """ import face_recognition known_faces = [[], []] def add_person(image_path: str, name: str): image = face_recognition.load_image_file(image_path) try: encoding = face_recognition.face_encodings(image)[0] known_faces[0].append(name) known_faces[1].append(encoding) except IndexError: print("I wasn't able to locate any faces in at least one of the images. Check the image files. Aborting...") def compare(new_image: str): new1 = face_recognition.load_image_file(new_image) unknown_face_encoding = face_recognition.face_encodings(new1)[0] results = face_recognition.compare_faces(known_faces[1], unknown_face_encoding,0.5) print(known_faces[0]) print(results) name = '' for i in range(0, len(known_faces[0])): if results[i]: print(i) name = known_faces[0][i] break if name == '': return 'I do not who' else: return name if __name__ == '__main__': add_person('data/1.jpg', '楊冪') add_person('data/2.jpg', '迪麗熱巴') add_person('data/3.jpg', '宋軼') add_person('data/4.jpg', '鄧紫棋') print(compare('data/121.jpg')) print(compare('data/123.jpg'))
代碼說明:
1、先將一些人臉錄進去,指定人物名稱,方法為add_person。
2、compare方法用來判斷照片是誰。
先看一下我準備的照片。
看一下需要驗證的照片
執(zhí)行結果
可以看出已經(jīng)識別出楊冪和鄧紫棋了。
總結
還是要提醒一下,我多次測試了各類圖片,識別還是有一定的誤差率的??梢愿鶕?jù)自己的情況調整代碼。
到此這篇關于Python實現(xiàn)識別圖像中人物的示例代碼的文章就介紹到這了,更多相關Python識別圖像中人物內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
從Pyspark UDF調用另一個自定義Python函數(shù)的方法步驟
PySpark,通常稱為Apache Spark的Python API,是為分布式數(shù)據(jù)處理而創(chuàng)建的,使用UDF,可以擴展和定制 PySpark 的功能以滿足某些需求,在本文中,我們將學習如何從Pyspark UDF調用另一個自定義Python函數(shù),需要的朋友可以參考下2023-11-11python實現(xiàn)簡易自習室座位預約系統(tǒng)
本文將結合實例代碼,介紹python實現(xiàn)簡易自習室座位預約系統(tǒng),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-06-06python使用cStringIO實現(xiàn)臨時內存文件訪問的方法
這篇文章主要介紹了python使用cStringIO實現(xiàn)臨時內存文件訪問的方法,涉及Python使用cStringIO模塊操作內存的技巧,需要的朋友可以參考下2015-03-03