LoginSignup
16
15

More than 5 years have passed since last update.

Visual Studio Community 2013によるOpenCV3.0のコンパイル(付属ファイル込み)

Last updated at Posted at 2015-10-23

リンク

Visual Studio2015を使ったOpenCV3.2に関する最新の情報はこちら

概要

OpenCVを使った画像処理プログラミングではなくて,OpenCV自身をコンパイルするためのメモ

OpenCV3.0をgithubからソースをダウンロード
同時に,他の組織からの拡張機能(contrib)やその他のライブラリも一緒にコンパイルした.
使ったコンパイラはVisual Studio Community 2013,OSはWindows7 64-bit.

MSのWebサイトを良く見るとVisual Studio Community 2013をダウンロードできるので,あえて2013を使うこと.最新版は2015.
Visual Studio Community 2015しかダウンロードできないと思って,コンパイルしてみたが,2015/10/22現在,OpenCVのコンパイルはできなかった(その後2013ダウンロードできることに気づいた.).

その他の一緒にコンパイルするライブラリ
- Qt デフォルトよりは使いやすいGUI用.
- VTK vizモジュールのコンパイルに必須.
- TBB 並列化ライブラリ.cv::parallel_for_を最大限高速にするにはこれをインストール.
- CUDA GPUで焼肉を焼くためのライブラリ
- doxygen ドキュメント生成用.

最近のOpenCVからはディープラーニングのライブラリ(caffe)も使えます.

手順

  1. Qt5.4.0 for Windows 64-bit with OpenGL (Visual Studio 2013用)をWebインストーラからダウンロード.最新版にはwith OpenGLがないため,あえてひとつ前のバージョンを使用.最新版が使いたい場合は,OpenGLをつけたQtのコンパイルが必須(下記参照).
  2. VTK6.2.0をコンパイルする.コードをダウンロードしてきてcmakeにて,VTK_QtVersionを5に,OpenGL1.0に設定,VTK_Group_Qtのチェックを入れてconfigure->generate.出来たslnファイルをVS2013で起動してコンパイル→インストール.デフォルトのインストール先がProgram Files/VTKのためinstallするには管理者権限が必要になる.面倒な場合はインストール先を権限のいらない場所に設定する(cmakeのCMAKE_INSTALL_PREFIXの設定値をC:\VTKなどに設定).なお,最新版6.3.0はQt5.4と同時にコンパイルできなかった.
  3. TBB4.4をダウンロードして圧縮ファイルを復号.VS2013用までしかバイナリファイルは用意されていないので,将来的に2015を使うときにはコンパイル必須?slnファイルがあるのでそれをコンパイルするだけでよいが.
  4. Cuda7.5をインストール
  5. OpenCVをcmake.OpenCVのソースにcontribのソースの中身を全部コピーしたあとで,cmakeをする.いろいろオプションを有効化してcmake.詳細はこのあたりを参照 (http://www.buildinsider.net/small/opencv/07)

生成されるもの

これまでのいろいろなライブラリに加えて最新版(contrib)では,
- ディープラーニング用のopencv_dnn
- ARマーカーを生成するためのopencv_aruco
- Kinect v1のようなセンサを自作するために必要なopencv_structured_light
- 人間をうまく検出するための関数(Deformable Part-based Models) opencv_dpm
- Kinectなどから3次元復元するのに使うrgbd
- 高度なデノイズ,エッジ保持平滑化フィルタを使うためのopencv_ximgproc,opencv_xphoto
などが生成されます.

付録1:Qtのコンパイルメモ(2015用.2013の場合は2015->2013)

  1. 'VS2015 x64Native Toolsコマンドプロンプトの起動
  2. set QTDIR="C:\Qt\5.5"
  3. set PATH=%QTDIR%\bin;%PATH%
  4. set QMAKESPEC=win32-msvc2015
  5. configure -release -opensource -nomake examples -nomake tests -opengl desktop -prefix "c:\Qt\5.5\Src" -extprefix "c:\Qt\5.5"
  6. nmake もしくは jom -j24 (※数字は並列化する数)
  7. nmake install'

付録2:コードの修正

2015/10/23のGithub上のコードは,Qt5.4.0+windowsでコンパイルするとエラーします.
ただし,このファイルの最終更新日時が4日前だったので,おそらくすぐに修正されると思います.

window_QT.cpp内の
int maxval = t->slider->getMaximum();
を下記に書き換えるとコンパイルがとおります.
int minval = t->slider->minimum();

16
15
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
16
15