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

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を有効にする事は私の環境ではできませんでした...