OpenFace:
http://cmusatyalab.github.io/openface/
一、什麼是Openface?
Openface是一個基於深度神經網絡的開源人臉識別系統。該系統基於谷歌的文章FaceNet: A Unified Embedding for Face Recognition and
Clustering。Openface是卡內基梅隆大學的 Brandon
Amos主導的。
官方地址:http://cmusatyalab.github.io/openface/
代碼:https://github.com/cmusatyalab/openface
二、Openface環境搭建
系統:Ubuntu 14.04 64位桌面操作系統
參考:http://cmusatyalab.github.io/openface/setup/
1、Ubuntu切換root用戶
此處不詳述,如果要用普通用戶,請自行測試。
參考文章:
http://blog.csdn.net/itas109/article/details/50679251
2、安裝前準備工作
安裝必要的程序,可以用下面的批處理,也可以一個一個的進行安裝。
-
#!/bin/sh
-
sudo apt-get install build-essential -y
-
sudo apt-get install cmake -y
-
sudo apt-get install curl -y
-
sudo apt-get install gfortran -y
-
sudo apt-get install git -y
-
sudo apt-get install libatlas-dev -y
-
sudo apt-get install libavcodec-dev -y
-
sudo apt-get install libavformat-dev -y
-
sudo apt-get install libboost-all-dev -y
-
sudo apt-get install libgtk2.0-dev -y
-
sudo apt-get install libjpeg-dev -y
-
sudo apt-get install liblapack-dev -y
-
sudo apt-get install libswscale-dev -y
-
sudo apt-get install pkg-config -y
-
sudo apt-get install python-dev -y
-
sudo apt-get install python-pip -y
-
sudo apt-get install wget -y
-
sudo apt-get install zip –y
-
#!/bin/sh
-
sudo apt-get install build-essential -y
-
sudo apt-get install cmake -y
-
sudo apt-get install curl -y
-
sudo apt-get install gfortran -y
-
sudo apt-get install git -y
-
sudo apt-get install libatlas-dev -y
-
sudo apt-get install libavcodec-dev -y
-
sudo apt-get install libavformat-dev -y
-
sudo apt-get install libboost-all-dev -y
-
sudo apt-get install libgtk2.0-dev -y
-
sudo apt-get install libjpeg-dev -y
-
sudo apt-get install liblapack-dev -y
-
sudo apt-get install libswscale-dev -y
-
sudo apt-get install pkg-config -y
-
sudo apt-get install python-dev -y
-
sudo apt-get install python-pip -y
-
sudo apt-get install wget -y
-
sudo apt-get install zip –y
3、安裝必要的庫
-
pip2 install numpy scipy pandas
-
pip2 install scikit-learn scikit-image
-
pip2 install numpy scipy pandas
-
pip2 install scikit-learn scikit-image
注意:
a.如果出現某一個安裝失敗的情況,可以一個一個的安裝
b.提高pip安裝速度
可以更換pip鏡像加快下載速度
建立./pip/pip.conf,輸入以下內容(或者其他可用鏡像):
-
[global]
-
timeout = 6000
-
index-url = http:
-
-
[install]
-
use-mirrors = true
-
mirrors = <a target=_blank href="http://pypi.douban.com/">http://pypi.douban.com/</a>
-
[global]
-
timeout = 6000
-
index-url = http:
-
-
[install]
-
use-mirrors = true
-
mirrors = <a target=_blank href="http://pypi.douban.com/">http://pypi.douban.com/</a>
c.報錯:SSLError: The read operation timed out
可以用下列指令將延時加長
-
pip2 -install scikit-image --timeout 100
-
pip2 -install scikit-image --timeout 100
4、安裝Torch
a.安裝依賴
b.安裝
-
git clone https:
-
cd ~/torch && ./install.sh
-
git clone https:
-
cd ~/torch && ./install.sh
c.安裝依賴
luarocks install $NAME, where $NAME
is as listed below.
dpnn
nn
csvigo
cunn (使用CUDA)
fblualib (僅爲了訓練DNN)
torchx (僅爲了訓練DNN)
命令行,按照需要安裝:
-
~/torch/install/bin/luarocks install dpnn
-
~/torch/install/bin/luarocks install nn
-
~/torch/install/bin/luarocks install optim
-
~/torch/install/bin/luarocks install csvigo
-
~/torch/install/bin/luarocks install cunn
-
~/torch/install/bin/luarocks install fblualib
-
~/torch/install/bin/luarocks install torchx
-
~/torch/install/bin/luarocks install dpnn
-
~/torch/install/bin/luarocks install nn
-
~/torch/install/bin/luarocks install optim
-
~/torch/install/bin/luarocks install csvigo
-
~/torch/install/bin/luarocks install cunn
-
~/torch/install/bin/luarocks install fblualib
-
~/torch/install/bin/luarocks install torchx
d.驗證是否安裝依賴成功
用th命令驗證
注意:
a.gitclone更新網絡老中斷
Git submodule update --init –recursive
或者torch目錄下的
Update.sh
建議用Update.sh解決
b.錯誤:
Cloning into'extra/luaffifb'...
remote:Counting objects: 918, done.
error: RPCfailed; result=56, HTTP code = 200| 0 bytes/s
fatal: Theremote end hung up unexpectedly
fatal: earlyEOF
fatal:index-pack failed
Clone of 'https://github.com/facebook/luaffifb' intosubmodule path 'extra/luaffifb' failed
解決:
-
git config --global http.postBuffer 524288000
-
git config --global http.postBuffer 524288000
5、安裝opencv
OpenCV版本爲2.4.11,下載地址:https://github.com/Itseez/opencv/archive/2.4.11.zip
編譯參考:http://docs.opencv.org/2.4/doc/tutorials/introduction/linux_install/linux_install.html
a.指令下載:
-
cd ~
-
mkdir -p src
-
cd src
-
curl -L https:
-
cd ~
-
mkdir -p src
-
cd src
-
curl -L https:
b.解壓:
c.編譯:
-
cd opencv-2.4.11
-
mkdir release
-
cd release
-
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
-
make -j8
-
make install
-
cd opencv-2.4.11
-
mkdir release
-
cd release
-
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
-
make -j8
-
make install
d.驗證
import cv2
6、安裝dlib
dlib v18.16下載地址:https://github.com/davisking/dlib/releases/download/v18.16/dlib-18.16.tar.bz2
a.安裝編譯
-
mkdir -p ~/src
-
cd ~/src tar xf dlib-18.16.tar.bz2
-
cd dlib-18.16/python_examples
-
mkdir build
-
cd build
-
cmake ../../tools/python
-
cmake --build . --config Release
-
cp dlib.so /usr/local/lib/python2.7/dist-packages
-
mkdir -p ~/src
-
cd ~/src tar xf dlib-18.16.tar.bz2
-
cd dlib-18.16/python_examples
-
mkdir build
-
cd build
-
cmake ../../tools/python
-
cmake --build . --config Release
-
cp dlib.so /usr/local/lib/python2.7/dist-packages
b.確保
在a中最後一條命令中,確保路徑在默認的Python路徑,可以在Python解釋器裏面用sys.path查找
For the final command, make sure the directory is in your default Python path,
which can be found withsys.path
in a python interpreter.
c.驗證
7、Git獲取openface
a.下載Openface
-
git clone https:
-
git submodule init
-
git submodule update
-
git clone https:
-
git submodule init
-
git submodule update
b.在Openface根目錄執行
-
sudo python2 setup.py install
-
sudo python2 setup.py install
python2一定要確保dlib和OpenCV安裝成功
c.獲取模型
8、運行demo
運行demo1:
./demos/compare.pyimages/examples/{lennon*,clapton*}
運行demo2:
./demos/classifier.py infermodels/openface/celeb-classifier.nn4.small2.v1.pkl ./images/examples/carell.jpg
運行demo3:
./demos/web/start-servers.sh
9、demo1可用瀏覽器
可用瀏覽器:
360瀏覽器極速模式
火狐瀏覽器
搜狗瀏覽器高速模式
不可用瀏覽器:
Chrome谷歌瀏覽器(可能與瀏覽器更新有關係,getUserMedia())
IE覽器