Dlibは「apt install libdlib-dev」で簡単にインストールできるが,最新版を追いかけたい場合.自分の環境にあわせてビルドしたい(NVidia CUDA を使うなど)場合は,ソースコードからビルドする.
Ubuntu での手順を説明する.(Windows でのインストールは別ページで説明)
Dlib は,機械学習などのライブラリ.顔認知,顔検知,顔特徴の抽出の機能もある. Dlib を用いた顔検出,顔識別,表情,顔分類,肌色については,別ページにまとめている.
Dlib の URL: http://dlib.net
【このページの目次】
サイト内の関連ページ
先人に感謝.
参考 Web ページ
DLib 内に実装された estimator を利用(One Millisecond Face Alignment with an Ensemble of Regression Trees by Vahid Kazemi and Josephine Sullivan, CVPR 2014)
iBUG 300-W face landmark dataset を用いて学習(https://ibug.doc.ic.ac.uk/resources/facial-point-annotations/)
学習済みデータは http://dlib.net/files/shape_predictor_68_face_landmarks.dat.bz2 (ライセンス条項に注意すること。商用不可)
自分で学習したいときは http://dlib.net/train_shape_predictor_ex.cpp.html
LeCun, Yann, et al. "Gradient-based learning applied to document recognition." Proceedings of the IEEE 86.11 (1998): 2278-2324.
Ubuntu で OS のシステム更新を行うときは, 端末で,次のコマンドを実行.
sudo apt update sudo apt -yV upgrade sudo /sbin/shutdown -r now
インストールするには, 端末で,次のコマンドを実行.
sudo apt -y install python3-dev python3-pip python3-setuptools python3-venv
インストールするには, 端末で,次のコマンドを実行.
sudo pip3 uninstall ptyprocess sniffio terminado tornado jupyterlab jupyter jupyter-console jupytext nteract_on_jupyter spyder sudo apt -y install jupyter jupyter-qtconsole spyder3 sudo apt -y install python3-ptyprocess python3-sniffio python3-terminado python3-tornado sudo pip3 install -U jupyterlab nteract_on_jupyter
端末で,次のコマンドを実行.
sudo apt -y install git cmake cmake-curses-gui cmake-gui wget p7zip-full
端末で,次のコマンドを実行.
sudo apt -y install build-essential gcc g++ make libtool texinfo dpkg-dev pkg-config
※ GPU とは,グラフィックス・プロセッシング・ユニットの略で、コンピュータグラフィックス関連の機能,乗算や加算の並列処理の機能などがある.
ダウンロードページ
詳しくは,次のように別ページで説明している.インストール手順が分からなくなったり,不具合があったときは,次に書いている別ページの説明を確認すること.
※ CUDA とは,NVIDIA社が提供している GPU 用のプラットフォームである.
ダウンロードページ
詳細説明
ダウンロードページ
ダウンロードして展開(解凍)したら,パスを通しておくこと.
詳細説明
端末で,次のコマンドを実行.
cd /usr/local sudo rm -rf dlib sudo git clone https://github.com/davisking/dlib
端末で,次のコマンドを実行.
プロセッサの AVS の機能を使いたいときは、cmake のオプションに「-DUSE_AVX_INSTRUCTIONS=YES」を付ける.
「/usr/local/cuda-10.1」のところは,NVIDIA CUDA ツールキット をインストールしたディレクトリに読み替えること.
※ NVIDIA グラフィックスドライバ (https://www.nvidia.com/download/index.aspx), NVIDIA CUDA ツールキット 11.0,NVIDIA cuDNN 8.0.5 のインストール: 別ページで説明している.
cd /usr/local/dlib sudo rm -rf build sudo mkdir build cd build CUDA_PATH="/usr/local/cuda-10.1" CFLAGS="-I/usr/local/cuda-10.1/include" LDFLAGS="-L/usr/local/cuda-10.1/lib64" \ sudo cmake -DUSE_AVX_INSTRUCTIONS=YES -DDLIB_USE_CUDA=YES ..
エラーメッセージが出ていないこと.
端末で,次のコマンドを実行.
「/usr/local/cuda-10.1」のところは,NVIDIA CUDA ツールキット をインストールしたディレクトリに読み替えること.
しばらく待つ.
CUDA_PATH="/usr/local/cuda-10.1" CFLAGS="-I/usr/local/cuda-10.1/include" LDFLAGS="-L/usr/local/cuda-10.1/lib64" \ sudo cmake --build .
エラーメッセージが出ていないこと.
sudo make install
エラーメッセージが出ていないこと.
※ Ubuntu システムの中のどの Python が使用されるかを事前に確認しておくため。
which python3
「/usr/local/cuda-10.1」のところは,NVIDIA CUDA ツールキット をインストールしたディレクトリに読み替えること.
cd /usr/local/dlib CUDA_PATH="/usr/local/cuda-10.1" CFLAGS="-I/usr/local/cuda-10.1/include" LDFLAGS="-L/usr/local/cuda-10.1/lib64" \ sudo python3 setup.py build sudo python3 setup.py install
エラーメッセージが出ないこと
端末で,次のコマンドを実行.
エラーメッセージが出ないこと
python3 import dlib print(dlib.__version__) exit()
次のコマンドを実行することにより, 顔識別などに利用できるファイルの ダウンロードと展開(解凍)が行われる.
cd /usr/local/dlib/python_examples sudo wget http://dlib.net/files/mmod_human_face_detector.dat.bz2 sudo wget http://dlib.net/files/dlib_face_recognition_resnet_model_v1.dat.bz2 sudo wget http://dlib.net/files/shape_predictor_5_face_landmarks.dat.bz2 sudo wget http://dlib.net/files/shape_predictor_68_face_landmarks.dat.bz2 sudo bzip2 -d mmod_human_face_detector.dat.bz2 sudo bzip2 -d dlib_face_recognition_resnet_model_v1.dat.bz2 sudo bzip2 -d shape_predictor_5_face_landmarks.dat.bz2 sudo bzip2 -d shape_predictor_68_face_landmarks.dat.bz2
cd /usr/local/dlib cd examples sudo rm -rf build sudo mkdir build cd build CUDA_PATH="/usr/local/cuda-10.1" CFLAGS="-I/usr/local/cuda-10.1/include" LDFLAGS="-L/usr/local/cuda-10.1/lib64" \ sudo cmake -DUSE_AVX_INSTRUCTIONS=YES -DDLIB_USE_CUDA=YES .. CUDA_PATH="/usr/local/cuda-10.1" CFLAGS="-I/usr/local/cuda-10.1/include" LDFLAGS="-L/usr/local/cuda-10.1/lib64" \ sudo cmake --build .
#include <dlib/image_processing/frontal_face_detector.h> #include <dlib/image_io.h> #include <iostream> using namespace dlib; using namespace std; int main(int argc, char** argv) { frontal_face_detector detector = get_frontal_face_detector(); array2d<unsigned char> img; load_image(img, argv[1]); pyramid_up(img); std::vector<rectangle> dets = detector(img); std::vector<rectangle>::iterator it; for( it = dets.begin(); it != dets.end(); it++ ) cout << *it << endl; image_window win; win.clear_overlay(); win.set_image(img); win.add_overlay(dets, rgb_pixel(255,0,0)); cin.get(); }
g++ -o a.exe a.c -ldlib -llapack -lblas
./a.out 2007_007763.jpg
※ どの Python が使用されるかを事前に確認しておくため。
which python
次のように表示されたら pyenv をインストール済みであることが確認できる
activate コマンドで有効化する
「pyenv versions」でインストールされている Python の種類を調べ、 「pyenv shell <環境名>」でPython 環境を切り替える。実行手順の例は次の通り.
インストールするには, 端末で,次のコマンドを実行.
sudo apt -y install python3-dev python3-pip python3-setuptools python3-venv
端末で,次のコマンドを実行.
cd /usr/local sudo rm -rf dlib sudo git clone https://github.com/davisking/dlib
端末で,次のコマンドを実行.
プロセッサの AVS の機能を使いたいときは、cmake のオプションに「-DUSE_AVX_INSTRUCTIONS=YES」を付ける.
「/usr/local/cuda-10.1」のところは,NVIDIA CUDA ツールキット をインストールしたディレクトリに読み替えること.
※ NVIDIA グラフィックスドライバ (https://www.nvidia.com/download/index.aspx), NVIDIA CUDA ツールキット 11.0,NVIDIA cuDNN 8.0.5 のインストール: 別ページで説明している.
cd /usr/local/dlib sudo rm -rf build sudo mkdir build cd build CUDA_PATH="/usr/local/cuda-10.1" CFLAGS="-I/usr/local/cuda-10.1/include" LDFLAGS="-L/usr/local/cuda-10.1/lib64" \ sudo cmake -DUSE_AVX_INSTRUCTIONS=YES -DDLIB_USE_CUDA=YES ..
エラーメッセージが出ていないこと.
「/usr/local/cuda-10.1」のところは,NVIDIA CUDA ツールキット をインストールしたディレクトリに読み替えること.
しばらく待つ.
CUDA_PATH="/usr/local/cuda-10.1" CFLAGS="-I/usr/local/cuda-10.1/include" LDFLAGS="-L/usr/local/cuda-10.1/lib64" \ sudo cmake --build .
エラーメッセージが出ていないこと.
sudo make install
エラーメッセージが出ていないこと.
「/usr/local/cuda-10.1」のところは,NVIDIA CUDA ツールキット をインストールしたディレクトリに読み替えること.
cd /usr/local/dlib sudo chown $USER -R /usr/local/dlib CUDA_PATH="/usr/local/cuda-10.1" CFLAGS="-I/usr/local/cuda-10.1/include" LDFLAGS="-L/usr/local/cuda-10.1/lib64" \ python setup.py build python setup.py install
エラーメッセージが出ないこと
次のように実行
エラーメッセージが出ないこと
python import dlib print(dlib.__version__) exit()
本サイトは金子邦彦研究室のWebページです.サイトマップは,サイトマップのページをご覧下さい. 本サイト内の検索は,サイト内検索のページをご利用下さい.
問い合わせ先: 金子邦彦(かねこ くにひこ)