トップページ -> インストール,設定,利用 -> Ubuntu ソフトウエア -> Dlib 最新版のインストール(Ubuntu 上)
[サイトマップへ], [サイト内検索へ]

Dlib 最新版のインストール(Ubuntu 上)

Dlibは「apt install libdlib-dev」で簡単にインストールできるが,最新版を追いかけたい場合.自分の環境にあわせてビルドしたい(NVidia CUDA を使うなど)場合は,ソースコードからビルドする.

Ubuntu での手順を説明する.(Windows でのインストールは別ページで説明)

Dlib は,機械学習などのライブラリ.顔認知,顔検知,顔特徴の抽出の機能もある. Dlib を用いた顔検出,顔識別,表情,顔分類,肌色については,別ページにまとめている.

Dlib の URL: http://dlib.net

【このページの目次】

  1. 前準備
  2. Dlib のソースコードのダウンロードとビルド
  3. システム Python 以外(virtualenv や pyenv や Anaconda)を用いる場合のインストール手順

サイト内の関連ページ

先人に感謝.

参考 Web ページ


前準備

OS のシステム更新

Ubuntu で OS のシステム更新を行うときは, 端末で,次のコマンドを実行.

sudo apt update
sudo apt -yV upgrade
sudo /sbin/shutdown -r now

pip と setuptools の更新,Python 開発環境(JupyterLab, spyder)のインストール(Ubuntu 上)

次のコマンドを実行.

sudo apt -yV install python3-dev python3-pip python3-setuptools
sudo apt -yV install jupyter-qtconsole jupyter-notebook python3-jupyter-client python3-jupyter-console python3-spyder spyder3

git, cmake, wget, p7zip-full のインストール

端末で,次のコマンドを実行.

sudo apt -yV install git cmake cmake-curses-gui cmake-gui wget p7zip-full

GNU コンパイラ・コレクション(C, C++ 処理系),make のインストール

端末で,次のコマンドを実行.

sudo apt -yV install build-essential gcc g++ make 

(NVIDIA GPU を使うとき)NVIDIA グラフィックスボード・ドライバのインストール

GPU とは,グラフィックス・プロセッシング・ユニットの略で、コンピュータグラフィックス関連の機能,乗算や加算の並列処理の機能などがある.

ダウンロードページ

詳しくは,次のように別ページで説明している.インストール手順が分からなくなったり,不具合があったときは,次に書いている別ページの説明を確認すること.

(NVIDIA GPU を使うとき)NVIDIA CUDA ツールキットのインストール

CUDA とは,NVIDIA社が提供している GPU 用のプラットフォームである.

ダウンロードページ

詳細説明

(NVIDIA GPU を使うとき)NVIDIA cuDNN のインストール

ダウンロードページ

詳細説明


Dlib のソースコードのダウンロードとビルド

  1. Dlib のソースコードのダウンロード

    端末で,次のコマンドを実行.

    cd /usr/local
    sudo rm -rf dlib
    sudo git clone https://github.com/davisking/dlib
    

    [image]
  2. cmake の実行

    端末で,次のコマンドを実行.

    プロセッサの AVS の機能を使いたいときは、cmake のオプションに「-DUSE_AVX_INSTRUCTIONS=YES」を付ける.

    /usr/local/cuda-10.1」のところは,NVIDIA CUDA ツールキット をインストールしたディレクトリに読み替えること.

    ※ NVIDIA ドライバ (https://www.nvidia.com/download/index.aspx), NVIDIA CUDA ツールキット 10,NVIDIA cuDNN 7 のインストールは,別ページで説明している.

    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 ..
    

    [image]
  3. 結果の確認

    エラーメッセージが出ていないこと.

    [image]
  4. ビルド

    端末で,次のコマンドを実行.

    /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 .
    

    [image]
  5. 結果の確認

    エラーメッセージが出ていないこと.

    [image]
  6. インストール
    sudo make install 
    

    [image]
  7. 結果の確認

    エラーメッセージが出ていないこと.

    [image]
  8. python の確認

    ※ Ubuntu システムの中のどの Python が使用されるかを事前に確認しておくため。

    which python3
    

    [image]
  9. python についてビルドとインストール

    /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 
    
  10. 結果の確認

    エラーメッセージが出ないこと

    [image]
  11. python のimport で確認

    次のように実行

    エラーメッセージが出ないこと

    python3
    import dlib
    print(dlib.__version__)
    exit()
    

    [image]
  12. Dlib でよく使用するファイルをダウンロード

    次のコマンドを実行することにより, 顔識別などに利用できるファイルの ダウンロードと展開(解凍)が行われる.

    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
    
  13. example のビルドとインストール
    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 .
    

Dlib を使う C++ プログラム

  1. Dlib の確認のため,次のプログラムを動かしてみる.
    #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();
    }
    
  2. このプログラムを a.c のようなファイル名で保存する.次のコマンドでビルドする.
    g++ -o a.exe a.c -ldlib -llapack -lblas 
    
  3. 次のように、画像ファイル名を指定して実行する
    ./a.out 2007_007763.jpg 
    

システム Python 以外(virtualenv や pyenv や venv や Anaconda)を用いる場合のインストール手順

前準備

  1. 使用する Python の確認

    ※ どの Python が使用されるかを事前に確認しておくため。

    which python 
    

    次のように表示されたら pyenv をインストール済みであることが確認できる

    [image]
  2. python 環境の有効化
  3. pip をインストール(インストール済みのときは最新版に更新)

    端末で、次のコマンドを実行

    cd /tmp
    sudo rm -f get-pip.py
    wget https://bootstrap.pypa.io/get-pip.py
    
  4. 今開いている端末は、引き続き使用する

Dlib のソースコードのダウンロードとビルド

  1. Dlib のソースコードのダウンロード

    端末で,次のコマンドを実行.

    cd /usr/local
    sudo rm -rf dlib
    sudo git clone https://github.com/davisking/dlib
    

    [image]
  2. cmake の実行

    端末で,次のコマンドを実行.

    プロセッサの AVS の機能を使いたいときは、cmake のオプションに「-DUSE_AVX_INSTRUCTIONS=YES」を付ける.

    /usr/local/cuda-10.1」のところは,NVIDIA CUDA ツールキット をインストールしたディレクトリに読み替えること.

    ※ NVIDIA ドライバ (https://www.nvidia.com/download/index.aspx), NVIDIA CUDA ツールキット 10,NVIDIA cuDNN 7 のインストールは,別ページで説明している.

    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 ..
    

    [image]
  3. 結果の確認

    エラーメッセージが出ていないこと.

    [image]
  4. ビルド

    /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 .
    

    [image]
  5. 結果の確認

    エラーメッセージが出ていないこと.

    [image]
  6. インストール
    sudo make install 
    

    [image]
  7. 結果の確認

    エラーメッセージが出ていないこと.

    [image]
  8. ビルドとインストール

    /usr/local/cuda-10.1」のところは,NVIDIA CUDA ツールキット をインストールしたディレクトリに読み替えること.

    cd /usr/local/dlib
    python -m pip install -U pip setuptools
    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 
    
  9. 結果の確認

    エラーメッセージが出ないこと

    [image]
  10. python のimport で確認

    次のように実行

    エラーメッセージが出ないこと

    python
    import dlib
    print(dlib.__version__)
    exit()
    

    [image]

本サイトは金子邦彦研究室のWebページです.サイトマップは,サイトマップのページをご覧下さい. 本サイト内の検索は,サイト内検索のページをご利用下さい.

問い合わせ先: 金子邦彦(かねこ くにひこ) [image]