トップページインストール,運用Windows の種々のソフトウエアのインストールDlib 最新版のインストール(ソースコードを使用)(Windows 上)

Dlib 最新版のインストール(ソースコードを使用)(Windows 上)

Windows で,Dlib 最新版をソースコードからビルドして,インストールする.

Dlib のインストールは,複数の方法がある.

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

Dlib の URL: http://dlib.net

【目次】

  1. 前準備(Python, Git, cmake, マイクロソフト C++ ビルドツール等のインストール)
  2. Dlib のインストール
  3. 上の手順でうまく dlib をインストールできないとき
  4. Dlib 付属のツール類 htmlify, imglab のインストール
  5. サンプルプログラムのビルド

【サイト内の関連ページ】

謝辞

Dlib の作者に感謝します

前準備

Python のインストール,pip と setuptools の更新

① Python のインストール

Python の公式ページ: http://www.python.org/

Python は,次のコマンドで起動できる.

② pip と setuptools の更新

pip は,次のコマンドで起動できる.

インストールに使用するソフトウェア

Windows では,前準備として次を行う.

(NVIDIA GPU を使うとき)NVIDIA グラフィックスドライバ,NVIDIA CUDA ツールキット 11.5 ,NVIDIA cuDNN 8.3 のインストール

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

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

インストール手順の説明

Windows での NVIDIA グラフィックスドライバ,NVIDIA CUDA ツールキット 11.5NVIDIA cuDNN 8.3 のインストール: 別ページで説明している.

関連 Web ページ

(オプション)数値演算ライブラリ等のインストール(vcpkg を使用)

必要な場合には,次のように操作する.

  1. 事前にvcpkg のインストールを行っておく.
  2. コマンドプロンプト管理者として実行し,次のコマンドを実行.
    c:\vcpkg\vcpkg --triplet x64-windows install blas ceres eigen3 lapack lapack-reference libjpeg-turbo libpng lz4 openblas[threads] pthread
    
  3. システム環境変数 Pathに,c:\vcpkg\installed\x64-windows\bin追加することにより,パスを通す

    管理者として実行した コマンドプロンプトで,次のコマンドを実行.

    call powershell -command "$oldpath = [System.Environment]::GetEnvironmentVariable(\"Path\", \"Machine\"); $oldpath += \";c:\vcpkg\installed\x64-windows\bin\"; [System.Environment]::SetEnvironmentVariable(\"Path\", $oldpath, \"Machine\")"
    

Dlib のインストール

マイクロソフト C++ ビルドツール (Build Tools) がインストール済みであるとして手順を示す

  1. Windows で,コマンドプロンプトを実行.

    操作の途中でエラーが出たときは, Visual Studio の x64 Native Tools コマンドプロンプトを使い,操作をやり直すと解決する場合がある.

    ※ その起動は,Windows のメニューで「Visual Studio 20..」の下の「x64 Native Tools コマンドプロンプト (Command Prompt)」(あるいは類似名のもの)を選ぶ

    [image]

    「x64 Native Tools コマンドプロンプト (x64 Native Tools Command Prompt)」がないとき:

    C++ ビルドツール (Build Tools) のインストールを行うことで, 「x64 Native Tools コマンドプロンプト (x64 Native Tools Command Prompt)」がインストールされる.その手順は,別ページで説明している

  2. cmake の確認

    端末で,次のコマンドを実行.エラーメッセージが出なければ OK.

    where cmake
    

    [image]

    エラーメッセージが出たときは,Windows での cmake のインストールがうまく行われていない可能性がある.Windows での cmake のインストール: 別ページで説明している.

  3. Dlib のソースコードのダウンロード
    cd %LOCALAPPDATA%
    rmdir /s /q dlib
    git clone https://github.com/davisking/dlib
    

    [image]

    古いバージョンの Dlib を使いたい場合には,次のように行う

    cd %LOCALAPPDATA%
    curl -O http://dlib.net/files/dlib-19.19.zip
    "c:\Program Files\7-Zip\7z.exe" x dlib-19.19.zip
    move dlib-19.19 dlib
    
  4. cmake の操作

    cmake のオプションの 「Visual Studio 17 2022」のところは, 使用する Visual Studio のバージョンにあわせること. Visual Studio 2022 のときは,「Visual Studio 17 2022」. Visual Studio 2019 のときは,「Visual Studio 16 2019」.

    11.5」のところは,実際にインストールしている NVIDIA CUDA ツールキットのバージョンにあわせること.

    cd %LOCALAPPDATA%
    cd dlib
    rmdir /s /q build
    mkdir build
    cd build
    del CMakeCache.txt
    cmake -G "Visual Studio 17 2022" -A x64 -T host=x64 ^
        -DCUDA_SDK_ROOT_DIR="c:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.5" ^
        -DCUDA_TOOLKIT_ROOT_DIR="c:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.5" ^
        -D CUDA_NVCC_FLAGS="-allow-unsupported-compiler" ^
        -DCUDA_NVCC_FLAGS_DEBUG="-allow-unsupported-compiler" ^
        -DCMAKE_INSTALL_PREFIX=c:/dlib ^
        -DUSE_AVX_INSTRUCTIONS=1 ^
    ..
    

    [image]
    (以下省略)
  5. cmake の結果の確認

    エラーメッセージが出ていないことを確認

    [image]

    CUDA との連携ができている場合には、 「DLIB WILL USE CUDA」と表示される

    ※ CUDAと連携する Dlib を動かすには,NVIDIA CUDA ツールキットNVIDIA cuDNN のインストールが必要.

  6. ビルド操作,インストール操作
    cmake --build . --config RELEASE --target INSTALL
    

    [image]
  7. 終了の確認

    エラーメッセージが出ていないことを確認

    [image]
  8. テスト

    次を実行する.エラーメッセージが出ないことを確認.警告メッセージ(黄色)は無視してよい.

    かなり時間がかかる.(テストが不要なら,この操作は行わない)

    cd c:\
    cd dlib
    cd test
    mkdir build
    cd build
    cmake ..
    cmake --build . --config Release
    .\dtest --runall
    

Python の dlib パッケージのインストール

  1. Windows で,コマンドプロンプト管理者として実行する.
  2. 次のように操作する.
    cd %LOCALAPPDATA%
    cd dlib
    python setup.py build 
    python setup.py install 
    
  3. 結果の確認

    エラーメッセージが出ていないことを確認

    [image]
  4. Python の dlib パッケージがインストールできたことの確認

    バージョン番号が表示されれば OK.下の図とは違うバージョンが表示されることがある.

    python -c "import dlib; print( dlib.__version__ )"
    

    [image]

    dlib を用いた顔検出、顔識別などについては, 別ページにまとめている.

  5. システム環境変数 Pathに,c:\dlib\bin追加することにより,パスを通す

    管理者として実行した コマンドプロンプトで,次のコマンドを実行.

    call powershell -command "$oldpath = [System.Environment]::GetEnvironmentVariable(\"Path\", \"Machine\"); $oldpath += \";c:\dlib\bin\"; [System.Environment]::SetEnvironmentVariable(\"Path\", $oldpath, \"Machine\")"
    
  6. 学習済みデータなどのダウンロードと展開(解凍)

    次のコマンドを実行することにより, 顔識別などに利用できるファイルの ダウンロードと展開(解凍)が行われる. 次のコマンドを実行するには,curl と 7-Zip が必要である. curl のインストールは 別ページで説明している. 7-Zip のインストールは 別ページで説明している.

    cd c:\dlib\python_examples
    curl -O http://dlib.net/files/mmod_human_face_detector.dat.bz2
    curl -O http://dlib.net/files/dlib_face_recognition_resnet_model_v1.dat.bz2
    curl -O http://dlib.net/files/shape_predictor_5_face_landmarks.dat.bz2
    curl -O http://dlib.net/files/shape_predictor_68_face_landmarks.dat.bz2
    "c:\Program Files\7-Zip\7z.exe" e mmod_human_face_detector.dat.bz2
    "c:\Program Files\7-Zip\7z.exe" e dlib_face_recognition_resnet_model_v1.dat.bz2
    "c:\Program Files\7-Zip\7z.exe" e shape_predictor_5_face_landmarks.dat.bz2
    "c:\Program Files\7-Zip\7z.exe" e shape_predictor_68_face_landmarks.dat.bz2
    del mmod_human_face_detector.dat.bz2
    del dlib_face_recognition_resnet_model_v1.dat.bz2
    del shape_predictor_5_face_landmarks.dat.bz2
    del shape_predictor_68_face_landmarks.dat.bz2
    

上の手順でうまく dlib をインストールできないとき

上の手順でうまく dlib をインストールできないとき

このページでは, CUDA と連携させたい,最新版を使いたいという理由で, pip を用いずに,コマンド(手動)で,ソースコードをダウンロードし,ビルドしてインストールしている.

上の手順でうまくいかないときは,次の(1),(2),(3),(4)で解決する可能性がある.

(1)cmakeにパスが通っているかを確認する

(2)Python のインストール: 別ページで説明している.のときに, 「Install for all users」をチェックしなかった場合にトラブルが起きることがある. Python をインストールし直す(このとき, 「Install for all users」をチェック)と簡単に解決できる場合がある.

(3)なお,NVIDIA GPU と Visual Studio Community 2019 を使う場合には, CUDA バージョン 10.1 以上と,それに合う cuDNN をインストールすること.

(4)最新版のDlib でなく,古いバージョンの Dlib を使うと解決できる場合はある.その手順については,このWebページの上に説明がある.

(5)pip を用いて,インストール操作するとうまく動くようになる場合がある.その手順は次の通り.

  1. Windows では,コマンドプロン プトを管理者として実行する.

    [image]
  2. 使用する Python のバージョンの確認
    python --version
    

    [image]
  3. パッケージのインストール

    dlib==19.19」とあるのはバージョン指定. 上の手順でうまく dlib をインストールできない場合は,別のバージョン(古いバージョンなど)を指定してインストールすることで,問題を回避できる可能性がある

    python -m pip install -U dlib==19.19 
    

    [image]
  4. Python の dlib パッケージがインストールできたことの確認

    python -c "import dlib; print( dlib.__version__ )"
    

    [image]

Dlib 付属のツール類 htmlify, imglab のインストール

今度は,Dlib 付属のツール類をインストールしたい

http://dlib.net/compile.html の記述に従う

  1. Windows で,コマンドプロンプト管理者として実行する.
  2. htmlify のビルドとインストール
    cd c:\dlib
    cd tools\htmlify
    rmdir /s /q build
    mkdir build
    cd build
    cmake -G "Visual Studio 17 2022" -A x64 -T host=x64 ^
        -DCMAKE_INSTALL_PREFIX="c:\dlib" ..
    cmake --build . --config RELEASE 
    cmake --build . --config RELEASE --target INSTALL 
    

    結果を確認.エラーメッセージが出ていないこと

    [image]
  3. imglab のビルドとインストール
    cd c:\dlib
    cd tools\imglab
    rmdir /s /q build
    mkdir build
    cd build
    cmake -G "Visual Studio 17 2022" -A x64 -T host=x64 ^
        -DCMAKE_INSTALL_PREFIX="c:\dlib" ..
    cmake --build . --config RELEASE 
    cmake --build . --config RELEASE --target INSTALL 
    

    結果を確認.エラーメッセージが出ていないこと

    [image]

    imglab の使用法については 別ページで説明している.

サンプルプログラムのビルド

今度は,examples をビルドしたい

http://dlib.net/compile.html の記述に従う

  1. Windows で,コマンドプロンプト管理者として実行する.
    cd c:\dlib
    cd examples
    rmdir /s /q build
    mkdir build
    cd build
    cmake -G "Visual Studio 17 2022" -A x64 -T host=x64 ^
        -DCMAKE_INSTALL_PREFIX="c:\dlib" ..
    
  2. 結果の確認

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

    [image]
  3. ビルド操作,インストール操作
    cmake --build . --config RELEASE
    cmake --build . --config RELEASE --target INSTALL 
    

    結果を確認.エラーメッセージが出ていないこと

    [image]