10
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

windows10でdlib(C++、Python3.x)とimglab(C++)が使えるようにする

Last updated at Posted at 2017-09-13

windows10PC何台かに、dlibが使えるように環境構築しました。途中、つっかかったり警告やエラーもあったので備忘録として記載しておきます。
基本的には下記サイトの通り進めれば大丈夫だと思います。
http://www.learnopencv.com/install-dlib-on-windows/
#Cmakeのエラーが出たら
https://stackoverflow.com/questions/41514379/cmake-error-during-installation-of-dlib-on-windows
こちらを参照するとC++ 2015 Build Toolsを入れるといいと書いてあります。
そこで
http://landinghub.visualstudio.com/visual-cpp-build-tools
こちらからC++ 2015 Build Toolsをインストールしてみました。

そしたら、「既にRedistributionがインストールされているので一部完了できませんでした」という旨のポップアップがVisual Studioセットアップに表示されました。

Visual Studio2015や2017が共存していたので思い切ってVisual Studio関連を一旦全てアンインストールしてからを再度構築する事にしました。

#Visual Studio関連の再セットアップ
・Visual Studio2017のアンインストール方法
https://docs.microsoft.com/ja-jp/visualstudio/install/uninstall-visual-studio

・Visual Studio2015のアンインストール方法
http://heetnote.com/vsuninst/
さらに、私の場合はRedistributionに関するポップアップが出ていたので、
windowsのシステム設定「プログラムの追加と削除」から"Microsoft Visual C++ 20** Redistributable"はすべて手動アンインストールしました。

・C++ 2015 Build Toolsのインストール
http://landinghub.visualstudio.com/visual-cpp-build-tools

・Visual Studio2015のインストール
https://www.visualstudio.com/ja/vs/older-downloads/
Visual Studio Dev Essentials に登録し、サインインします。
その上で、「以前のバージョンをお使いになりたいですか?」の"2015 Visual Studio 2015 およびその他の製品"という項目の「ダウンロード」リンクから「Visual Studio Community 2015 with Update 3」を選んでダウンロードします
#dlibライブラリのC++用ビルドコマンドについて
http://www.learnopencv.com/install-dlib-on-windows/
こちらのStep 5: Build Dlib libraryには

cmake -G "Visual Studio 14 2015 Win64" -DJPEG_INCLUDE_DIR=..\dlib\external\libjpeg -DJPEG_LIBRARY=..\dlib\external\libjpeg -DPNG_PNG_INCLUDE_DIR=..\dlib\external\libpng -DPNG_LIBRARY_RELEASE=..\dlib\external\libpng -DZLIB_INCLUDE_DIR=..\dlib\external\zlib -DZLIB_LIBRARY_RELEASE=..\dlib\external\zlib -DCMAKE_INSTALL_PREFIX=install ..

とありますが、PCにCUDA-Toolkitがインストールされていないとエラーになります。
CUDA-Toolkitが無い場合は-DDLIB_USE_CUDA=OFF というオプションを加えます
参考
https://taktak.jp/2017/07/07/%E9%96%8B%E7%99%BA%E3%83%A1%E3%83%A2-%E3%81%9D%E3%81%AE72-dlib%E3%82%92cuda%E3%82%92%E6%9C%89%E5%8A%B9%E3%81%AB%E3%81%97%E3%81%A6%E3%83%93%E3%83%AB%E3%83%89%E3%81%99%E3%82%8B/

cmake -G "Visual Studio 14 2015 Win64" -DJPEG_INCLUDE_DIR=..\dlib\external\libjpeg -DJPEG_LIBRARY=..\dlib\external\libjpeg -DPNG_PNG_INCLUDE_DIR=..\dlib\external\libpng -DPNG_LIBRARY_RELEASE=..\dlib\external\libpng -DZLIB_INCLUDE_DIR=..\dlib\external\zlib -DZLIB_LIBRARY_RELEASE=..\dlib\external\zlib -DCMAKE_INSTALL_PREFIX=install -DDLIB_USE_CUDA=OFF ..

#dlib examplesのexeファイルのあるディレクトリ
http://www.learnopencv.com/install-dlib-on-windows/
こちらのStep 7: Build Dlib examples によると、
dlib-19.6\examples\build\Release
に実行形式ファイルがあると書かれてますが、私の環境だと
dlib-19.6\examples\Release
にありました。

#Pythonでdlibを利用
http://www.learnopencv.com/install-dlib-on-windows/
こちらのStep 9: Install Dlib’s Python module (Only Anaconda 3)でバージョン指定がありますが、公式
https://anaconda.org/menpo/dlib
の通り

> conda install -c menpo dlib

でよいかと思います。
#imglabのビルド
http://tadaoyamaoka.hatenablog.com/entry/2016/09/27/225124
こちらの記事だと、imglabはデフォルトのままだとPNG_SUPPORTが有効になっていないようなので
dlib-19.6\dlib\image_saver\save_png.hに下記を記載してPNG_SUPPORTを有効にしておきます。

#ifndef DLIB_PNG_SUPPORT
#define DLIB_PNG_SUPPORT
#endif

そして
dlib-19.6\tools\imglab\README.txtの手順の「cmake ..」を「cmake -G "Visual Studio 14 2015 Win64" ..」に変更し実行します

> cd dlib/tools/imglab
> mkdir build
> cd build
> cmake ..
> cmake --build . --config Release
> sudo make install

これでdlib-19.6\tools\imglab\build\Releaseにimglab.exeが出来上がります。
使い方は以下等参考にします
http://tadaoyamaoka.hatenablog.com/entry/2016/09/21/184955

ちなみに
http://tadaoyamaoka.hatenablog.com/entry/2016/09/27/225124
こちらの方法でdlibのJPEG_SUPPORTを有効にする事は私の環境ではできませんでした...

10
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?