基於Python的開源人臉識別庫:離線識別率高達99.38%——新開源的用了一下感受一下
該項目是要構建一款免費、開源、實時、離線的網絡 app,支持組織者使用人臉識別技術或二維碼識別所有受邀人員。
有了世界上最簡單的人臉識別庫,使用 Python 或命令行,即可識別和控制人臉。
該庫使用 dlib 頂尖的深度學習人臉識別技術構建,在戶外臉部檢測數據庫基准(Labeled Faces in the Wild benchmark)上的准確率高達 99.38%。 這也提供了一個簡單的 face_recognition 命令行工具,你可以打開命令行中任意圖像文件夾,**進行人臉識別!並且還可以進行人臉自動定位等。** 項目地址:https://github.com/ageitgey/face_recognition#face-recognition
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
今天剛剛在anaconda中通過命令pip install face_recongnition命令安裝了這個開源庫,然后嘗試了一把,
首先我在D盤創建了 兩個文件夾,一個文件夾內用於提供訓練的照片並且照片是以人名命名的,第二個文件夾是用於檢驗測試的。
我在首先D:\train_face_recongintion文件夾里面就放入了一個圖片里面包含了五個人,照片名字叫five_people.jpg,在測試集里面隨便放入一個人的unknown.jpg(訓練集里面的包含五個人的照片並沒有這個人)照片,然后會發出警告的提示我那個有五個人的照片里面,識別出來超過一個人的臉了
然后我就在train_face_recongintion文件夾下繼續放入了一張本人的圖片,順便把這個測試集的unknown.jpg放入到訓練集文件夾中命為unknown_person.jpg,並且在test_face_recongintion里面放入了我的另一個照片 ,結果是正確識別,塗抹出因為訓練集中本人照片命名是身份證忘記改。
最后在訓練文件夾 測試文件夾分別多放入了幾個圖片 然后識別開始模糊了
這是train文件夾里面的圖片:
這是test文件夾里面圖片:
結果如下:
unknown_1是女的 咋還識別成hhy 和swq兩種男生圖片,跟男的像嗎???
可能hhy就是me跟swq*(我同學哈哈)長得太像了 測試的hhy圖片不僅識別成了hhy還識別成了swq兩個人;
至於unkown_1為什么被識別為兩個馮提莫 是因為我的訓練文件夾里面有一個馮提莫的jpg圖片 有一個是馮提莫的png圖片;
不知道為什么我的測試里面還一個unknown_fengtimo.jpg根本沒有輸出結果,難道是沒有識別出來嗎??
接着我就把unknown_fengtimo.jpg這張圖片放入到了訓練文件夾,明明為fengtimo.jpg結果你猜發生什么了???原來是沒有識別到這個圖片中有人臉 自然就不會輸出了,放入到了訓練文件夾最起碼提示告訴我這個圖片沒有找到人臉了。
但是這個圖片是有人臉的自己看圖就知道。。。。。。。
,今天看到這吧 改天在研究研究吧。
說一下常見問題(摘抄):
常見問題
問題:使用 face_recognition 或運行樣本時,出現 Illegal instruction (core dumped)。
解決方案:dlib 需要在 SSE4 或 AVX 支持下編譯,但是你的 CPU 太舊,無法支持編譯。你需要根據此處(https://github.com/ageitgey/face_recognition/issues/11#issuecomment-287398611)所示修改代碼,然后對 dilb 進行重新編譯。
問題:運行攝像頭樣本時,出現 RuntimeError: Unsupported image type, must be 8bit gray or RGB image.
解決方案:你的攝像頭可能並未在 OpenCV 上正確設置。點擊此處(https://github.com/ageitgey/face_recognition/issues/21#issuecomment-287779524)了解更多。
問題:運行 pip2 install face_recognition 時出現 MemoryError。
解決方案:face_recognition_models 文件太大,不適合你可用的 pip 緩存內存。試一下 pip2 –no-cache-dir install face_recognition,解決該問題。
問題:AttributeError: ‘module’ object has no attribute ‘face_recognition_model_v1’
解決方案:你安裝的 dlib 版本過舊,需要 19.4 或者更新的版本。請升級 dlib 版本。
問題:TypeError: imread() got an unexpected keyword argument ‘mode’
解決方案:你安裝的 scipy 版本過舊,需要 0.17 或者更新的版本。請升級 scipy 版本。