人臉識別openface
阿新 • • 發佈:2019-02-04
首先安裝上面三個庫,你可以手動安裝或直接使用Docker
我使用Docker,Ubuntu系統:
$ docker pull bamos/openface
$ docker run -p 9000:9000 -p 8000:8000 -t -i bamos/openface /bin/bash
$ cd /root/openface
- 1
- 2
- 3
- 1
- 2
- 3
建立一個目錄用來儲存待訓練的圖片資料:
$ mkdir training_images
- 1
- 1
為要識別的人建立單獨的目錄:
$ cd training_images
$ mkdir obama
$ mkdir print_panda
$ mkdir xiao_ming
$ mkdir trump
- 1
- 2
- 3
- 4
- 5
- 6
- 1
- 2
- 3
- 4
- 5
- 6
把收集的每個人的圖片拷貝到對應的目錄,確保每張圖片只有一張臉。不用特意的提取臉,OpenFace會自動幹這個活。
提取和aligned:
$ cd ..
$ ./util/align-dlib.py ./training_images/ align outerEyesAndNose ./aligned-images/ --size 96
- 1
- 2
- 1
- 2
生成的./aligned-images/目錄包含了處理過的圖片。
提取特徵:
$ ./batch-represent/main.lua -outDir ./generated-embeddings/ -data ./aligned-images/
- 1
- 1
開始訓練:
$ ./demos/classifier.py train ./generated-embeddings/
- 1
- 1
生成的SVM模型位於./generated-embeddings/classifier.pkl。
使用訓練的模型進行識別:
$ ./demos/classifier.py infer ./generated-embeddings/classifier.pkl test_image.jpg
- 1
- 1
如果結果不理想,嘗試新增更多的訓練資料,最好包含各種角度。