1. 程式人生 > >人臉識別之face_recognition:(三)face_recognition在樹莓派上的提速

人臉識別之face_recognition:(三)face_recognition在樹莓派上的提速

在前面說過,樹莓派上使用face_recognition是十分慢的,這裡講解一下作者自己的提速方法:

face_recognition在不同機器上識別時間對比

可能是因為我在樹莓派上使用了多執行緒,opencv等原因樹莓派上識別時間比較久,後來關閉了多執行緒識別時間平均為13,但是可見樹莓派上識別任然是十分緩慢的。

裝置 使用語言 識別時間
臺式ubuntu16.04 python 0.5s
樹莓派 python 23

原因分析

在前面我有整理過face_recognition的資料,上面有介紹識別的過程。這裡主要分析軟體上的原因,不考慮硬體。
face_recognition的識別過程和時間分析如下(本測試全在樹莓派上進行):

識別步驟 作用 使用函式 花費時間 備註
1 讀入圖片 load_image_file 0.02S
2 尋找人臉 batch_face_locations 8s 使用hog
3 提取特徵 face_encodings 6s
4 面部比較 compare_faces 0.05 比對了15張人臉特徵

可以看出時間主要花費在【尋找人臉】和【提取特徵】這兩步,所以解決方案從裡面開始入手。

提速方案

這裡只提出了一部分結局方案,其他的方案正在研究中,以後有其他的解決方案作者新增到這裡。

  1. 更換【尋找人臉】方法
    這裡使用的HOG方法,這是face_recognitinon 裡面自帶的,雖然識別比較準確,但是速度相對較慢。所以這裡替換成opencv自帶的的HARR尋找人臉模型。
    待續。。。