今天進行了一次比較失敗的嘗試,人臉識別目前應用比較火的有opencv、dlib等。
今天第一次閱讀了dlib相關的資料,在mac系統上編譯dlib並執行,遇到了一些問題。
問題1:Not supported GUI 解決:這個是mac系統沒有GUI支援,需要下載xquartz。
問題2:安裝xquartz後提示1651 FATAL [1] dlib.gui_core: Unable to connect to the X display 解決:這個問題需要重新啟動電腦
問題3:dlib是否支援gif格式。
dlib在config.h.in中留下了#cmakedefine DLIB_GIF_SUPPORT
在config.h中留下了#define DLIB_GIF_SUPPORT
的定義介面,但是沒有gif支援的程式碼
問題4:dlib是否支援流媒體
問題5:dlib人臉識別訓練資料shape_predictor_68_face_landmarks.dat達到了97m,如果非要這個資料集不可,根本不可能移植到移動裝置中
以上幾個問題日後解決。
執行Demo的流程和結果如下
1.下載
2.編譯
按照Github上的指示,
mkdir build;
cd build;
cmake .. ;
cmake --build .
複製程式碼
3.安裝GUI - XQuartz
人臉檢測Demo需要GUI,如果mac本地不支援gui在編譯後不會生成face_landmark_detection_ex對應的可執行檔案。下載地址
4.執行人臉檢測Demo
將example中的faces資料夾複製到build中。 到官網下載shape_predictor_68_face_landmarks.dat,並複製到build資料夾中。 按照face_landmark_detection_ex.cpp註釋的內容執行程式:
./face_landmark_detection_ex shape_predictor_68_face_landmarks.dat faces/*.jpg
複製程式碼
5.執行結果
但看到下圖中間的人時你會發現其實他的識別結果並不是非常準確