SlideShare a Scribd company logo
1 of 50
Download to read offline
OpenCV2.2 Install Guide
OpenCV2.2 Install Guide
                                                                                                               Ver.0.5




目次
OpenCV2.2 Install Guide (Win32)

Install Guide の対象 ...................................................................................................... 2

ダウンロード .................................................................................................................. 3

ソリューションファイルの生成(CMake) ..................................................................... 11

ビルド ........................................................................................................................... 16

OpenCV の設定 ............................................................................................................ 18

確認............................................................................................................................... 19



OpenCV2.2 Install Guide (x64)

Install Guide の対象 .................................................................................................... 21

ダウンロード ................................................................................................................ 22

ソリューションファイルの生成(CMake) ..................................................................... 32

ビルド ........................................................................................................................... 37

OpenCV の設定 ............................................................................................................ 39

確認............................................................................................................................... 40



OpenCV SVN (trunk,tag,branch について)........................................................... 42

Visual Studio 2010 のプロパティシートについて ...................................................... 45



参考サイト .................................................................................................................... 47

履歴............................................................................................................................... 47

連絡先 ........................................................................................................................... 47

著作権表記 .................................................................................................................... 48

その他 ........................................................................................................................... 49


                                                                 1
OpenCV2.2 Install Guide
                                                                        Ver.0.5




         OpenCV2.2 Install Guide (Win32)
Install Guide の対象
 本 Guide では,OpenCV2.2 を以下の環境を対象として開発環境を構築する.なお,OS
及び IDE はインストール及びセットアップが終わっているものとする.また,表の環境以
外に OpenCV の Visual Studio 用ソリューションファイル生成に CMake を用いる.
 本 Guide では,OpenCV 以外にインストールするもの(TBB,CUDA など)に関しても,
開発環境を整えています.
                               Table 1. 環境
            OS       Microsoft Windows7 SP1 32bit
           IDE       Microsoft Visual Studio 2008 SP1 (VC++)
                     Microsoft Visual Studio 2010 SP1 (VC++) *1
                     OpenCV2.2
                     TBB
                     CUDA
          OpenCV
                     Qt
                     Eigen
                     IPP *2
                 *1 Visual Studio 2010 については下記の事項を参照して下さい.

                           *2 本 Guide では用いなかった.




※開発環境の構築中に,Windows の UAC(User Account Control:ユーザーアカウント制
御)が警告を出し,インストール作業などが上手くいかない場合がある.インストール作業
中は,UAC を通知しない設定にしておくと回避できる.


※インストール作業を始める前に“OpenCV SVN (trunk,tag,branch について)”を参照
して,インストールする OpenCV のリリース項目を選んで下さい.


※Visual Studio 2010 のパス設定方法は,“Visual Studio 2010 のプロパティシートについ
て”を参照して下さい.




                                    2
OpenCV2.2 Install Guide
                                                                            Ver.0.5




ダウンロード
必要なものをダウンロード及びセットアップする.
① OpenCV2.2
以下の URL から OpenCV2.2“OpenCV-2.2.0-win.zip”をダウンロードする.
    http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.2/




圧縮ファイルを解凍して以下のディレクトリに置く.
    C:¥Program Files¥OpenCV-2.2.0¥




                                       3
OpenCV2.2 Install Guide
                                                                           Ver.0.5



 ② TBB

                                   【解説】
    TBB(Threading Building Blocks)は,Intel のマルチコア CPU を用いた並列
    プログラミングのための C++テンプレートクラスライブラリです.TBB をイ
    ンストールすることで,OpenCV 内部の並列処理機能を有効にします.利用
    には,Intel のマルチコア CPU を推奨します.

 以下の URL から TBB 安定版の最新バージョン“tbb30_◯◯◯oss_win.zip”*3 をダウン
ロードする.    *3 ◯はバージョン番号

     http://threadingbuildingblocks.org/file.php?fid=77




 圧縮ファイルを解凍して以下のディレクトリに置く.
     C:¥Program Files¥tbb30_◯◯◯oss¥
 環境変数と Visual Studio にパスを設定する.*4
 *4 以降のパスの設定では設定するパスのみ表記する.それぞれ読み替えて設定すること.

 【環境変数】
    [コントロールパネル]>[システム]>[システムの詳細設定]を押して,“システムのプ
    ロパティ”ウィンドウを表示する.[詳細設定]タブの[環境変数]を押して,“環境変
    数”ウィンドウを表示する.[システムの環境変数]欄の“Path”を選択し,[編集]
    を押す.
       “システム変数の編集”ウィンドウが表示されるので,変数値に以下のパス
    を追加する.*5
    *5 設定してあるパスは消さないように注意すること.最悪の場合 OS が起動しなくなります.

             ・TBB30_INSTALL_DIR *6
               *6 初期状態では変数が無いので,[新規]を押して作成する.以降の説明で変数名のないものは新規に作る

                      C:¥Program Files¥tbb30_◯◯◯oss


                                       4
OpenCV2.2 Install Guide
                                                                        Ver.0.5



            ・Path *7
              *7 既に設定してある変数値の後ろに追加する.先頭のセミコロンを忘れないこと.

                   ;%TBB30_INSTALL_DIR%¥bin¥ia32¥vc○           *8

                   *8 ○は利用する Visual Studio のバージョンに合わせる.2008 なら 9,2010 なら 10 を指定.




【Visual Studio】
    Visual Studio を開き,[ツール]>[オプション]を押して,“オプション”ウィンドウ
    を表示する.左のツリーから[プロジェクトおよびソリューション]>[VC++ディレク
    トリ]を選択する.右側に表示される[ディレクトリを表示するプロジェクト]欄を以
    下の 3 つに切り替えてそれぞれパスを設定する.
            ・実行可能ファイル
                   $(TBB30_INSTALL_DIR)¥bin¥ia32¥vc○
            ・インクルード ファイル
                   $(TBB30_INSTALL_DIR)¥include
            ・ライブラリ ファイル
                   $(TBB30_INSTALL_DIR)¥lib¥ia32¥vc○




                                    5
OpenCV2.2 Install Guide
                                                                              Ver.0.5



 ③ CUDA

                                    【解説】
     CUDA(Compute Unified Device Architecture)は,NVIDIA の汎用計算向け
     の GPU プログラミング開発環境です.OpenCV には,画像処理や特徴点検出
     などを GPU 上に実装して高速に処理できる機能が含まれています.GPU 機
     能の利用には,NVIDIA の CUDA 対応 GPU を必要とします.また,Fermi
     以降かつミドルレンジ以上の GPU を推奨します.

 以下の URL から NVIDIA GPU の最新バージョンのドライバをダウンロード及びインス
トールする.
       http://www.nvidia.co.jp/Download/index.aspx?lang=jp
 以下の URL から CUDA3.2 の必要なファイルをダウンロードする.
       http://developer.nvidia.com/object/cuda_3_2_downloads.html
       ・CUDA Toolkit“cudatoolkit_3.2.16_win_32.msi”
       ・GPU Computing SDK code samples“gpucomputingsdk_3.2.16_win_32.exe”
       ・NVIDIA Performance Primitives (NPP) library“npp_3.2.16_win_32.zip”




 CUDA Toolkit 及び GPU Computing SDK code samples を実行ファイルからインストー
ルする.    *9

 *9 CUDA Toolkit 及び GPU Computing SDK code samples のインストール途中に利用者登録情報の入力画面が出てきますが,必要

  な項目を入力,更新情報の必要/不要を選択すれば次に進めます.

 NVIDIA Performance Primitives (NPP) library の圧縮ファイルを解凍して以下のディ
レクトリに置く.        *10

 *10 NPP の README.TXT のように CUDA Toolkit のパスにファイルをコピーすると OpenCV の CMake が見つけられない.

       C:¥Program Files¥npp_3.2.16_win_32¥SDK


                                        6
OpenCV2.2 Install Guide
                                                                        Ver.0.5



 環境変数と Visual Studio にパスを設定する.
 【環境変数】
      ・NPP_ROOT_DIR
              C:¥Program Files¥npp_3.2.16_win_32¥SDK
      ・Path
              ;%NPP_ROOT_DIR%¥common¥npp¥bin
 【Visual Studio】
      ・実行可能ファイル
              $(CUDA_BIN_PATH)
              $(NPP_ROOT_DIR)¥common¥npp¥bin
      ・インクルード ファイル
              $(CUDA_INC_PATH)
              $(NVSDKCOMPUTE_ROOT)¥C¥common¥inc
              $(NVSDKCOMPUTE_ROOT)¥shared¥inc
              $(NPP_ROOT_DIR)¥common¥npp¥include
      ・ライブラリ ファイル
              $(CUDA_LIB_PATH)
              $(NVSDKCOMPUTE_ROOT)¥C¥common¥lib
              $(NVSDKCOMPUTE_ROOT)¥shared¥lib
              $(NPP_ROOT_DIR)¥common¥npp¥lib


※CUDA3.2 は Visual Studio 2010 に対応していません.Visual Studio 2010 は CUDA4.0
からの対応となります.CUDA4.0 のリリースに合わせて OpenCV も対応すると思われま
す.




                                   7
OpenCV2.2 Install Guide
                                                                Ver.0.5



 ④ Qt

                                      【解説】
    Qt は,Nokia のクロスプラットフォームなアプリケーション・ユーザーイン
    ターフェース開発フレームワークです.OpenCV では,Qt をインストールす
    ることで,以前からのシンプルな GUI に加え,リッチな GUI を使えるよう
    になります.

 以下の URL から最新バージョンの Windows 版 Qt ライブラリ“qt-win-opensource-4.
◯.◯-vs2008.exe”をダウンロード,インストールする.
        http://qt.nokia.com/downloads-jp




 環境変数と Visual Studio のパスを設定する.
 【環境変数】
        ・QTDIR
                C:¥Qt¥4.◯.◯
        ・Path
                ;%QTDIR%¥bin
 【Visual Studio】
        ・実行可能ファイル
                $(QTDIR)¥bin
        ・インクルード ファイル
                $(QTDIR)¥include
        ・ライブラリ ファイル
                $(QTDIR)¥lib


                                           8
OpenCV2.2 Install Guide
                                                                          Ver.0.5



 ⑤ Eigen

                                    【解説】
    Eigen は,フリーの行列・ベクトル演算ライブラリです.様々な行列・ベクト
    ル演算を SIMD 拡張命令を用いて高速に処理できます.OpenCV では,Eigen
    の行列と cv::Mat を相互に変換でき,Eigen の高機能な行列・ベクトル演算を
    利用しやすくなっています.

 以下の URL から Eigen 安定版の最新バージョン“eigen-2.0.◯◯.zip”をダウンロード
する.
      http://eigen.tuxfamily.org/index.php?title=Main_Page#Download




 圧縮ファイルを解凍して以下のディレクトリに置く.右のディレクトリ構造図を参照し
て下さい.
       C:¥Program Files¥eigen¥                    Program Files


                                                            eigen



 環境変数と Visual Studio にパスを設定する.
 【環境変数】                                                               Eigen

       ・EIGEN_DIR
                                                                                src
               C:¥Program Files¥eigen
                                                                        Array
 【Visual Studio】
                                                                        Core
       ・インクルード ファイル                                                     Eigen

               $(EIGEN_DIR)


                                        9
OpenCV2.2 Install Guide
                                                                           Ver.0.5



 ⑥ CMake

                                 【解説】
   CMake は,ソフトウェアのビルドを自動化するためのクロスプラットフォー
   ムなシステムです.OpenCV では,標準で用意されているバイナリを用いな
   い場合は,CMake を用いてソリューションファイルを作成,ビルドします.

 以下の URL から CMake“cmake-2.○.○-win32-x86.exe”をダウンロード,インストー
ルする.
     http://www.cmake.org/cmake/resources/software.html




                                    10
OpenCV2.2 Install Guide
                                                                     Ver.0.5




ソリューションファイルの生成(CMake)
CMake を使って Visual Studio 用のソリューションファイルを生成する.
① [ ス タ ー ト メ ニ ュ ー ]>[す べ て の プ ロ グ ラ ム ]>[CMake ◯ ◯ ] の 中 に あ る CMake
   (cmake-gui)を起動する.


② [Where is the source code:]の[Browse Source…]を押し,以下のパスを指定する.
     C:¥Program Files¥OpenCV-2.2.0


③ [Where is build the binaries:]の[Browse Source…]を押し,以下のパスを指定する.
     C:¥Program Files¥OpenCV-2.2.0¥build


④ [Configure]を押し,[Specify the generator for this project]で利用する IDE(Visual
   Studio)を選び[Finish]を押す.Visual Studio 製品名と内部バージョンの対応は以下
   のとおり.


            Table 2. Visual Studio 製品名と内部バージョンの対応
                Visual Studio 製品名          内部バージョン
             Visual Studio 6.0                 6
             Visual Studio .NET                7
             Visual Studio .NET 2003          7.1
             Visual Studio 2005                8
             Visual Studio 2008                9
             Visual Studio 2010               10




                                     11
OpenCV2.2 Install Guide
                                                                                             Ver.0.5



⑤ 下の欄に現在の設定での出力及びエラー内容,中央の欄に選択できるオプションの一
 覧が表示されます.以下に初期状態の出力の一部を示します.


 Could NOT find PythonInterp (missing: PYTHON_EXECUTABLE)

 Could NOT find PythonLibs (missing: PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS)

 Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)

 Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)



 “Could NOT find ◯◯◯◯(missing:◯◯◯◯)”などはオプションを指定しているが
 必要な情報が見つからないということを示しています.オプションを指定する場合,
 必要な情報の指定漏れか間違っている可能性があるので,中央の欄でオプションの設
 定を確認します.また,オプションを必要としない場合,中央の欄でオプションの設
 定を外します.


 General configuration for opencv 2.2.0 =====================================

 Built as dynamic libs?: ON

 GUI:

        Win32 UI: 1

 Image I/O:

        JPEG: build

        PNG: build

        TIFF: build

        JPEG 2000: build

        OpenEXR: NO

 Video I/O:

        VideoInput: 1

 Interfaces:

        Use IPP: NO

        Use TBB: NO

        Use Cuda: No

        Use Eigen2: NO

 -----------------------------------------------------------------



 “General configuration for opencv 2.2.0=”以降は現在の出力設定の一覧を示してい
 ます.




                                                  12
OpenCV2.2 Install Guide
                                                                        Ver.0.5



⑥ 中央の欄でオプションを設定します.
   CMake では,中央の欄でのオプションの設定と[Configure]を繰り返して出力設定
   をしていきます.[Configure]を押すたびに,下の欄のエラーや出力設定の一覧が
   更新されます.


   1. TBB
   [WITH_TBB]にチェックを入れ,[Configure]を押します.
   新たに[TBB_INCLUDE_DIR]が表示されるので,TBB の include を指定し,
   [Configure]を押します.
            C:¥Program Files¥tbb30_◯◯◯oss¥include
   新たに[TBB_LIB_DIR]が表示されるので,TBB の lib¥ia32¥vc9 を指定し,
   [Configure]を押します.
            C:¥Program Files¥tbb30_◯◯◯oss¥lib¥ia32¥vc9


   2. CUDA
   [WITH_CUDA]にチェックを入れ,[Configure]を押します.
   新たに以下のオプションが表示されるので,それぞれ設定し,[Configure]を押し
   ます.
   [CUDA_BUILD_CUBIN]
            チェック無し
   [CUDA_BUILD_EMULATION]
            チェック無し
   [CUDA_COMPUTE_CAPABILITES]
            1.1 1.2 1.3 2.0 *11
            *11 Compute Capabilitey は,CUDA-Z などを使って確認できる.利用する GPU に合わせて変更する?

   [CUDA_NPP_LIBRARY_ROOT_DIR]
            C:/Program Files/npp_3.2.16_win_32/SDK
   [CUDA_SDK_ROOT_DIR]
            C:¥ProgramData¥NVIDIA Corporation¥NVIDIA GPU Computing
            SDK 3.2¥C
   [CUDA_TOOLKIT_ROOT_DIR]
            C:¥Program Files¥NVIDIA GPU Computing Toolkit¥CUDA¥v3.2
   [CUDA_VERBOSE_BUILD]
            チェック無し




                                    13
OpenCV2.2 Install Guide
                                                                                           Ver.0.5



   3. Qt
   [WITH_QT]と[WITH_QT_OPENGL]にチェックを入れ,[Configure]を押します.
   [QT_QMAKE_EXECUTABLE]に Qt の bin¥qmake.exe を指定し,[Configure]
   を押します.
              C:/Qt/4.◯.◯/bin/qmake.exe


   4. Eigen
   [WITH_EIGEN2]にチェックを入れ,[Configure]を押します.
   [EIGEN2_INCLUDE_PATH]に Eigen の¥include を指定し,[Configure]を押し
   ます.
              C:¥Program Files¥eigen *12
   *12 eigen フォルダと Eigen フォルダの違いに注意.ダウンロード>⑤Eigen のディレクトリ構造図を参照.




   5. IPP
   [USE_IPP]にチェックを入れ,[IPP_PATH]を設定し,[Configure]を押すことで有
   効になります.今回は詳細の説明は省きます.


   6. その他
   その他の設定を確認していきます.
   ・サンプルプログラムが必要な場合
              [INSTALL_C_EXAMPLES](,[INSTALL_PYTHON_EXAMPLES])と
              [BUILD_EXAMPLES]にチェックを入れ,[Configure]を押します.*13
              *13 [INSTALL_◯_EXAMPLES]のみの場合,プロジェクトファイルは生成されない.

   ・Python が不要な場合
              [BUILD_NEW_PYTHON_SUPPORT]のチェックを外して,[Configure]
              を押します.


⑦ 下の欄に現在の設定での出力を確認します.以下にオプション設定後の出力の一部を
 示します.


   CUDA detected: 3.2

   NPP detected: 3.2.16



   General configuration for opencv 2.2.0 =====================================

       Built as dynamic libs?: ON

     GUI:



                                                14
OpenCV2.2 Install Guide
                                                                                        Ver.0.5



       QT 4.x: 1

       QT OpenGL support: 1

     Image I/O:

       JPEG: build

       PNG: build

       TIFF: build

       JPEG 2000: build

       OpenEXR: NO

     Video I/O:

       VideoInput: 1

     Interfaces:

       Python: OFF

       Use IPP: NO

       Use TBB: YES

       Use Cuda: YES

       Use Eigen2: YES

   -----------------------------------------------------------------



 “General configuration for opencv 2.2.0 =”以降に注目してください.“GUI”
 “ImageI/O”
          “VideoI/O”
                   “Interfaces”
                              “Documentation”の出力設定を確認します.


⑧ 最後に[Generate]ボタンを押してソリューションファイルを生成します.
 [Where is build the binaries:]に設定した出力ディレクトリに OpenCV のソリューシ
 ョンファイルが生成されていることを確認し,CMake を閉じます.




                                            15
OpenCV2.2 Install Guide
                                                                         Ver.0.5




ビルド
 OpenCV のビルドを行う前にファイルの修正を行います.
 OpenCV では,Web カメラから動画像をキャプチャして処理を行うことが多いです.し
かし,OpenCV2.2 tag 版にはカメラキャプチャにバグがあります.このままでは Web カメ
ラなどを利用することができません.




 以下の URL から,修正済みのファイル(precomp.hpp)をダウンロードして差し替える(下
の“Zip Archive”からダウンロード),または訂正該当箇所を書き換えます.
      C:¥Program Files¥OpenCV-2.2.0¥modules¥highgui¥src¥precomp.hpp
      https://code.ros.org/trac/opencv/changeset/4383




 修正が完了したら,出力ディレクトリ(OpenCV-2.2.0¥build¥)に作成された OpenCV の
ソリューションファイル“OpenCV.sln”を Visual Studio で開きます.




                                        16
OpenCV2.2 Install Guide
                                                       Ver.0.5



 Visual Studio のメニューから[ビルド]>[バッチビルド]を押します.




 “バッチビルド”ウィンドウが表示されるので,[ALL_BUILD]の Debug,Release の両
方にチェックをつけ,[ビルド]を押します.




 ビルドが終わり,出力ログを見て“0 失敗”ならば成功です.




                          17
OpenCV2.2 Install Guide
                                                                      Ver.0.5




OpenCV の設定
 環境設定と Visual Studio にパスを設定する.
 【環境変数】
      ・OPENCV
              C:¥Program Files¥OpenCV-2.2.0
      ・Path
              ;%OPENCV%¥build¥bin¥Debug
              ;%OPENCV%¥build¥bin¥Release
 【Visual Studio】
      ・実行可能ファイル
              $(OPENCV)¥build¥bin¥Debug
              $(OPENCV)¥build¥bin¥Release
      ・インクルード ファイル
              $(OPENCV)¥include
              $(OPENCV)¥modules¥calib3d¥include
              $(OPENCV)¥modules¥contrib¥include
              $(OPENCV)¥modules¥core¥include
              $(OPENCV)¥modules¥features2d¥include
              $(OPENCV)¥modules¥ffmpeg
              $(OPENCV)¥modules¥flann¥include
              $(OPENCV)¥modules¥gpu¥include
              $(OPENCV)¥modules¥haartraining
              $(OPENCV)¥modules¥highgui¥include
              $(OPENCV)¥modules¥imgproc¥include
              $(OPENCV)¥modules¥legacy¥include
              $(OPENCV)¥modules¥ml¥include
              $(OPENCV)¥modules¥objdetect¥include
              $(OPENCV)¥modules¥traincascade
              $(OPENCV)¥modules¥video¥include
      ・ライブラリ ファイル
              $(OPENCV)¥build¥lib¥Debug
              $(OPENCV)¥build¥lib¥Release




                                    18
OpenCV2.2 Install Guide
                                                                           Ver.0.5




確認
    以上の設定を終えたら,実際に開発できるのか確認する.
    以下のような単純に画像を読み込み,表示するプログラムを書いてみる.


    Visual Studio を開き,[ファイル]>[新規作成]>[プロジェクト]を押し,“新しいプロジェ
              “プロジェクトの種類”から[Visual C++]>[Win32]を選び,
クト”のウィンドウを表示する.
“テンプレート”から[Win32 コンソールアプリケーション]を選ぶ.任意のプロジェクト名
○○○を入力して[OK]を押す.
               “Win32 アプリケーション ウィザード”が開くので,その
まま[完了]を押してソリューションを作成する.
    “ソリューションエクスプローラー”から[○○○]>[ソース ファイル]>[○○○.cpp]を開
き,以下のプログラムを記述する.また,適当な画像ファイルを用意し,ソースファイル
と同じディレクトリに置いておく.ソースコード中の画像ファイル名は適宜変更する.


#include "stdafx.h"
#include <opencv2/opencv.hpp>


#ifdef _DEBUG
         #pragma comment(lib, "opencv_core220d.lib")
         #pragma comment(lib, "opencv_highgui220d.lib")
#else
         #pragma comment(lib, "opencv_core220.lib")
         #pragma comment(lib, "opencv_highgui220.lib")
#endif


using namespace cv;


int _tmain(int argc, _TCHAR* argv[])
{
         Mat sourceImage = imread("Lenna.bmp");
         if(sourceImage.empty()){
                 cout << "画像ファイルが読み込めませんでした" << std::endl;
                 return -1;
         }


         namedWindow("Window", WINDOW_AUTOSIZE);


                                         19
OpenCV2.2 Install Guide
                                                              Ver.0.5



       imshow("Window", sourceImage);
       waitKey(0);


       return 0;
}


    入力できたら,[ビルド]>[ソリューションのビルド]を押してビルドする.ビルドが成功し
たら[デバッグ]>[デバッグ無しで開始]を押し,プログラムを実行する.
    エラー無く以下のような画面が出れば,正しく開発環境の構築ができています.




                                        20
OpenCV2.2 Install Guide
                                                                        Ver.0.5




          OpenCV2.2 Install Guide (x64)
Install Guide の対象
 本 Guide では,OpenCV2.2 を以下の環境を対象として開発環境を構築する.なお,OS
及び IDE はインストール及びセットアップが終わっているものとする.また,表の環境以
外に OpenCV の Visual Studio 用ソリューションファイル生成に CMake を用いる.
 本 Guide では,OpenCV 以外にインストールするもの(TBB,CUDA など)に関しても,
開発環境を整えています.
                               Table 1. 環境
            OS       Microsoft Windows7 SP1 64bit
           IDE       Microsoft Visual Studio 2008 SP1 (VC++)
                     Microsoft Visual Studio 2010 SP1 (VC++) *1
                     OpenCV2.2
                     TBB
                     CUDA
          OpenCV
                     Qt
                     Eigen
                     IPP *2
                 *1 Visual Studio 2010 については下記の事項を参照して下さい.

                           *2 本 Guide では用いなかった.




※開発環境の構築中に,Windows の UAC(User Account Control:ユーザーアカウント制
御)が警告を出し,インストール作業などが上手くいかない場合がある.インストール作業
中は,UAC を通知しない設定にしておくと回避できる.


※インストール作業を始める前に“OpenCV SVN (trunk,tag,branch について)”を参照
して,インストールする OpenCV のリリース項目を選んで下さい.


※Visual Studio 2010 のパス設定方法は,“Visual Studio 2010 のプロパティシートについ
て”を参照して下さい.




                                    21
OpenCV2.2 Install Guide
                                                                            Ver.0.5




ダウンロード
必要なものをダウンロード及びセットアップする.
① OpenCV2.2
以下の URL から OpenCV2.2“OpenCV-2.2.0-win.zip”をダウンロードする.
    http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.2/




圧縮ファイルを解凍して以下のディレクトリに置く.
    C:¥Program Files¥OpenCV-2.2.0¥




                                       22
OpenCV2.2 Install Guide
                                                                           Ver.0.5



 ② TBB

                                   【解説】
    TBB(Threading Building Blocks)は,Intel のマルチコア CPU を用いた並列
    プログラミングのための C++テンプレートクラスライブラリです.TBB をイ
    ンストールすることで,OpenCV 内部の並列処理機能を有効にします.利用
    には,Intel のマルチコア CPU を推奨します.

 以下の URL から TBB 安定版の最新バージョン“tbb30_◯◯◯oss_win.zip”*3 をダウン
ロードする.    *3 ◯はバージョン番号

     http://threadingbuildingblocks.org/file.php?fid=77




 圧縮ファイルを解凍して以下のディレクトリに置く.
     C:¥Program Files¥tbb30_◯◯◯oss¥
 環境変数と Visual Studio にパスを設定する.*4
 *4 以降のパスの設定では設定するパスのみ表記する.それぞれ読み替えて設定すること.

 【環境変数】
    [コントロールパネル]>[システム]>[システムの詳細設定]を押して,“システムのプ
    ロパティ”ウィンドウを表示する.[詳細設定]タブの[環境変数]を押して,“環境変
    数”ウィンドウを表示する.[システムの環境変数]欄の“Path”を選択し,[編集]
    を押す.
       “システム変数の編集”ウィンドウが表示されるので,変数値に以下のパス
    を追加する.*5
    *5 設定してあるパスは消さないように注意すること.最悪の場合 OS が起動しなくなります.

             ・TBB30_INSTALL_DIR *6
               *6 初期状態では変数が無いので,[新規]を押して作成する.以降の説明で変数名のないものは新規に作る

                      C:¥Program Files¥tbb30_◯◯◯oss


                                       23
OpenCV2.2 Install Guide
                                                                        Ver.0.5



            ・Path *7
              *7 既に設定してある変数値の後ろに追加する.先頭のセミコロンを忘れないこと.

                   ;%TBB30_INSTALL_DIR%¥bin¥intel64¥vc○           *8

                   *8 ○は利用する Visual Studio のバージョンに合わせる.2008 なら 9,2010 なら 10 を指定.




【Visual Studio】
    Visual Studio を開き,[ツール]>[オプション]を押して,“オプション”ウィンドウ
    を表示する.左のツリーから[プロジェクトおよびソリューション]>[VC++ディレク
    トリ]を選択する.右側に表示される[プラットフォーム]欄を“x64”に切り替え,[デ
    ィレクトリを表示するプロジェクト]欄を以下の 3 つに切り替えてそれぞれパスを
    設定する.
            ・実行可能ファイル
                   $(TBB30_INSTALL_DIR)¥bin¥intel64¥vc○
            ・インクルード ファイル
                   $(TBB30_INSTALL_DIR)¥include
            ・ライブラリ ファイル
                   $(TBB30_INSTALL_DIR)¥lib¥intel64¥vc○




                                   24
OpenCV2.2 Install Guide
                                                                              Ver.0.5



 ③ CUDA

                                    【解説】
     CUDA(Compute Unified Device Architecture)は,NVIDIA の汎用計算向け
     の GPU プログラミング開発環境です.OpenCV には,画像処理や特徴点検出
     などを GPU 上に実装して高速に処理できる機能が含まれています.GPU 機
     能の利用には,NVIDIA の CUDA 対応 GPU を必要とします.また,Fermi
     以降かつミドルレンジ以上の GPU を推奨します.

 以下の URL から NVIDIA GPU の最新バージョンのドライバをダウンロード及びインス
トールする.
       http://www.nvidia.co.jp/Download/index.aspx?lang=jp
 以下の URL から CUDA3.2 の必要なファイルをダウンロードする.
       http://developer.nvidia.com/object/cuda_3_2_downloads.html
       ・CUDA Toolkit“cudatoolkit_3.2.16_win_64.msi”
       ・GPU Computing SDK code samples“gpucomputingsdk_3.2.16_win_64.exe”
       ・NVIDIA Performance Primitives (NPP) library“npp_3.2.16_win_64.zip”




 CUDA Toolkit 及び GPU Computing SDK code samples を実行ファイルからインストー
ルする.    *9

 *9 CUDA Toolkit 及び GPU Computing SDK code samples のインストール途中に利用者登録情報の入力画面が出てきますが,必要

  な項目を入力,更新情報の必要/不要を選択すれば次に進めます.

 NVIDIA Performance Primitives (NPP) library の圧縮ファイルを解凍して以下のディ
レクトリに置く.        *10

 *10 NPP の README.TXT のように CUDA Toolkit のパスにファイルをコピーすると OpenCV の CMake が見つけられない.

       C:¥Program Files¥npp_3.2.16_win_64¥SDK


                                       25
OpenCV2.2 Install Guide
                                                                        Ver.0.5



 環境変数と Visual Studio にパスを設定する.
 【環境変数】
      ・NPP_ROOT_DIR
              C:¥Program Files¥npp_3.2.16_win_64¥SDK
      ・Path
              ;%NPP_ROOT_DIR%¥common¥npp¥bin
 【Visual Studio】
      ・実行可能ファイル
              $(CUDA_BIN_PATH)
              $(NPP_ROOT_DIR)¥common¥npp¥bin
      ・インクルード ファイル
              $(CUDA_INC_PATH)
              $(NVSDKCOMPUTE_ROOT)¥C¥common¥inc
              $(NVSDKCOMPUTE_ROOT)¥shared¥inc
              $(NPP_ROOT_DIR)¥common¥npp¥include
      ・ライブラリ ファイル
              $(CUDA_LIB_PATH)
              $(NVSDKCOMPUTE_ROOT)¥C¥common¥lib
              $(NVSDKCOMPUTE_ROOT)¥shared¥lib
              $(NPP_ROOT_DIR)¥common¥npp¥lib


※CUDA3.2 は Visual Studio 2010 に対応していません.Visual Studio 2010 は CUDA4.0
からの対応となります.CUDA4.0 のリリースに合わせて OpenCV も対応すると思われま
す.




                                   26
OpenCV2.2 Install Guide
                                                                 Ver.0.5



 ④ Qt

                                      【解説】
    Qt は,Nokia のクロスプラットフォームなアプリケーション・ユーザーイン
    ターフェース開発フレームワークです.OpenCV では,Qt をインストールす
    ることで,以前からのシンプルな GUI に加え,リッチな GUI を使えるよう
    になります.

 以下の URL から最新バージョンの Qt ライブラリのソースコード
“qt-everywhere-opensource-src-4.◯.◯.zip”をダウンロードする.
        http://qt.nokia.com/downloads-jp




 圧縮ファイルを解凍して以下のパスに置く.
        C:¥Qt¥4.◯.◯x64¥
 スタートメニューの[すべてのプログラム]>[Microsoft Visual Studio ◯]>[Visual Studio
Tools]から“Visual Studio ◯ x64 Win64 コマンドプロンプト”を開く.




                                           27
OpenCV2.2 Install Guide
                                                              Ver.0.5



以下のコマンドで Qt の make ファイルを生成する.
    [コマンド]                [操作内容]
    cd C:¥Qt¥4.◯.◯x64     Qt のインストールフォルダへ移動
    configure             メニューの起動
    o                     商用/オープンソースの選択
    y                     ライセンスの承諾




以下のコマンドで Qt をコンパイルする.          *11

*11 Qt のコンパイルには数時間かかるので,OS がスリープモードなどに入らないように電源設定しておく.また,セキュリティソ

 フトの自動スキャンなどを OFF にしておくことを推奨する.

    [コマンド]                [操作内容]
    nmake                 Qt のコンパイル




PC の性能によるが,目安として 3 時間程でコンパイルが終わる.


                              28
OpenCV2.2 Install Guide
                                                      Ver.0.5



環境変数と Visual Studio のパスを設定する.
【環境変数】
     ・QTDIR
             C:¥Qt¥4.◯.◯x64
     ・Path
             ;%QTDIR%¥bin
【Visual Studio】
     ・実行可能ファイル
             $(QTDIR)¥bin
     ・インクルード ファイル
             $(QTDIR)¥include
     ・ライブラリ ファイル
             $(QTDIR)¥lib




                                29
OpenCV2.2 Install Guide
                                                                          Ver.0.5



 ⑤ Eigen

                                    【解説】
    Eigen は,フリーの行列・ベクトル演算ライブラリです.様々な行列・ベクト
    ル演算を SIMD 拡張命令を用いて高速に処理できます.OpenCV では,Eigen
    の行列と cv::Mat を相互に変換でき,Eigen の高機能な行列・ベクトル演算を
    利用しやすくなっています.

 以下の URL から Eigen 安定版の最新バージョン“eigen-2.0.◯◯.zip”をダウンロード
する.
      http://eigen.tuxfamily.org/index.php?title=Main_Page#Download




 圧縮ファイルを解凍して以下のディレクトリに置く.右のディレクトリ構造図を参照し
て下さい.
       C:¥Program Files¥eigen¥                    Program Files


                                                            eigen



 環境変数と Visual Studio にパスを設定する.
 【環境変数】                                                               Eigen

       ・EIGEN_DIR
                                                                                src
               C:¥Program Files¥eigen
                                                                        Array
 【Visual Studio】
                                                                        Core
       ・インクルード ファイル                                                     Eigen

               $(EIGEN_DIR)


                                        30
OpenCV2.2 Install Guide
                                                                            Ver.0.5



 ⑥ CMake

                                  【解説】
    CMake は,ソフトウェアのビルドを自動化するためのクロスプラットフォー
    ムなシステムです.OpenCV では,標準で用意されているバイナリを用いな
    い場合は,CMake を用いてソリューションファイルを作成,ビルドします.

 以下の URL から CMake“cmake-2.○.○-win32-x86.exe”をダウンロード,インストー
ルする.   *12

 *12 x86 版だが,WOW64 によって 64bitOS 上でエミュレーション動作する.

      http://www.cmake.org/cmake/resources/software.html




                                     31
OpenCV2.2 Install Guide
                                                                     Ver.0.5




ソリューションファイルの生成(CMake)
CMake を使って Visual Studio 用のソリューションファイルを生成する.
⑨ [ ス タ ー ト メ ニ ュ ー ]>[す べ て の プ ロ グ ラ ム ]>[CMake ◯ ◯ ] の 中 に あ る CMake
   (cmake-gui)を起動する.


⑩ [Where is the source code:]の[Browse Source…]を押し,以下のパスを指定する.
     C:¥Program Files¥OpenCV-2.2.0


⑪ [Where is build the binaries:]の[Browse Source…]を押し,以下のパスを指定する.
     C:¥Program Files¥OpenCV-2.2.0¥build


⑫ [Configure]を押し,[Specify the generator for this project]で利用する IDE(Visual
   Studio Win64)を選び[Finish]を押す.Visual Studio 製品名と内部バージョンの対応
   は以下のとおり.
            Table 2. Visual Studio 製品名と内部バージョンの対応
                Visual Studio 製品名          内部バージョン
             Visual Studio 6.0                 6
             Visual Studio .NET                7
             Visual Studio .NET 2003          7.1
             Visual Studio 2005                8
             Visual Studio 2008                9
             Visual Studio 2010               10




                                     32
OpenCV2.2 Install Guide
                                                                                             Ver.0.5



⑬ 下の欄に現在の設定での出力及びエラー内容,中央の欄に選択できるオプションの一
 覧が表示されます.以下に初期状態の出力の一部を示します.


 Could NOT find PythonInterp (missing: PYTHON_EXECUTABLE)

 Could NOT find PythonLibs (missing: PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS)

 Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)

 Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)



 “Could NOT find ◯◯◯◯(missing:◯◯◯◯)”などはオプションを指定しているが
 必要な情報が見つからないということを示しています.オプションを指定する場合,
 必要な情報の指定漏れか間違っている可能性があるので,中央の欄でオプションの設
 定を確認します.また,オプションを必要としない場合,中央の欄でオプションの設
 定を外します.


 General configuration for opencv 2.2.0 =====================================

 Built as dynamic libs?: ON

 GUI:

        Win64 UI: 1

 Image I/O:

        JPEG: build

        PNG: build

        TIFF: build

        JPEG 2000: build

        OpenEXR: NO

 Video I/O:

        VideoInput: 1

 Interfaces:

        Use IPP: NO

        Use TBB: NO

        Use Cuda: No

        Use Eigen2: NO

 -----------------------------------------------------------------



 “General configuration for opencv 2.2.0=”以降は現在の出力設定の一覧を示してい
 ます.




                                                  33
OpenCV2.2 Install Guide
                                                                        Ver.0.5



⑭ 中央の欄でオプションを設定します.
   CMake では,中央の欄でのオプションの設定と[Configure]を繰り返して出力設定
   をしていきます.[Configure]を押すたびに,下の欄のエラーや出力設定の一覧が
   更新されます.


   1. TBB
   [WITH_TBB]にチェックを入れ,[Configure]を押します.
   新たに[TBB_INCLUDE_DIR]が表示されるので,TBB の include を指定し,
   [Configure]を押します.
            C:¥Program Files¥tbb30_◯◯◯oss¥include
   新たに[TBB_LIB_DIR]が表示されるので,TBB の lib¥intel64¥vc9 を指定し,
   [Configure]を押します.
            C:¥Program Files¥tbb30_◯◯◯oss¥lib¥intel64¥vc9


   2. CUDA
   [WITH_CUDA]にチェックを入れ,[Configure]を押します.
   新たに以下のオプションが表示されるので,それぞれ設定し,[Configure]を押し
   ます.
   [CUDA_BUILD_CUBIN]
            チェック無し
   [CUDA_BUILD_EMULATION]
            チェック無し
   [CUDA_COMPUTE_CAPABILITES]
            1.1 1.2 1.3 2.0 *13
            *13 Compute Capabilitey は,CUDA-Z などを使って確認できる.利用する GPU に合わせて変更する?

   [CUDA_NPP_LIBRARY_ROOT_DIR]
            C:/Program Files/npp_3.2.16_win_64/SDK
   [CUDA_SDK_ROOT_DIR]
            C:¥ProgramData¥NVIDIA Corporation¥NVIDIA GPU Computing
            SDK 3.2¥C
   [CUDA_TOOLKIT_ROOT_DIR]
            C:¥Program Files¥NVIDIA GPU Computing Toolkit¥CUDA¥v3.2
   [CUDA_VERBOSE_BUILD]
            チェック無し




                                    34
OpenCV2.2 Install Guide
                                                                                           Ver.0.5



   3. Qt
   [WITH_QT]と[WITH_QT_OPENGL]にチェックを入れ,[Configure]を押します.
   [QT_QMAKE_EXECUTABLE]に Qt の bin¥qmake.exe を指定し,[Configure]
   を押します.
              C:/Qt/4.◯.◯x64/bin/qmake.exe


   4. Eigen
   [WITH_EIGEN2]にチェックを入れ,[Configure]を押します.
   [EIGEN2_INCLUDE_PATH]に Eigen の¥include を指定し,[Configure]を押し
   ます.
              C:¥Program Files¥eigen *14
   *14 eigen フォルダと Eigen フォルダの違いに注意.ダウンロード>⑤Eigen のディレクトリ構造図を参照.




   5. IPP
   [USE_IPP]にチェックを入れ,[IPP_PATH]を設定し,[Configure]を押すことで有
   効になります.今回は詳細の説明は省きます.


   6. その他
   その他の設定を確認していきます.
   ・サンプルプログラムが必要な場合
              [INSTALL_C_EXAMPLES](,[INSTALL_PYTHON_EXAMPLES])と
              [BUILD_EXAMPLES]にチェックを入れ,[Configure]を押します.*15
              *15 [INSTALL_◯_EXAMPLES]のみの場合,プロジェクトファイルは生成されない.

   ・Python が不要な場合
              [BUILD_NEW_PYTHON_SUPPORT]のチェックを外して,[Configure]
              を押します.


⑮ 下の欄に現在の設定での出力を確認します.以下にオプション設定後の出力の一部を
 示します.


   CUDA detected: 3.2

   NPP detected: 3.2.16



   General configuration for opencv 2.2.0 =====================================

       Built as dynamic libs?: ON

     GUI:



                                                35
OpenCV2.2 Install Guide
                                                                                        Ver.0.5



       QT 4.x: 1

       QT OpenGL support: 1

     Image I/O:

       JPEG: build

       PNG: build

       TIFF: build

       JPEG 2000: build

       OpenEXR: NO

     Video I/O:

       VideoInput: 1

     Interfaces:

       Python: OFF

       Use IPP: NO

       Use TBB: YES

       Use Cuda: YES

       Use Eigen2: YES

   -----------------------------------------------------------------



 “General configuration for opencv 2.2.0 =”以降に注目してください.“GUI”
 “ImageI/O”
          “VideoI/O”
                   “Interfaces”
                              “Documentation”の出力設定を確認します.


⑯ 最後に[Generate]ボタンを押してソリューションファイルを生成します.
 [Where is build the binaries:]に設定した出力ディレクトリに OpenCV のソリューシ
 ョンファイルが生成されていることを確認し,CMake を閉じます.




                                            36
OpenCV2.2 Install Guide
                                                                         Ver.0.5




ビルド
 OpenCV のビルドを行う前にファイルの修正を行います.
 OpenCV では,Web カメラから動画像をキャプチャして処理を行うことが多いです.し
かし,OpenCV2.2 tag 版にはカメラキャプチャにバグがあります.このままでは Web カメ
ラなどを利用することができません.




 以下の URL から,修正済みのファイル(precomp.hpp)をダウンロードして差し替える(下
の“Zip Archive”からダウンロード),または訂正該当箇所を書き換えます.
      C:¥Program Files¥OpenCV-2.2.0¥modules¥highgui¥src¥precomp.hpp
      https://code.ros.org/trac/opencv/changeset/4383




 修正が完了したら,出力ディレクトリ(OpenCV-2.2.0¥build¥)に作成された OpenCV の
ソリューションファイル“OpenCV.sln”を Visual Studio で開きます.




                                        37
OpenCV2.2 Install Guide
                                                       Ver.0.5



 Visual Studio のメニューから[ビルド]>[バッチビルド]を押します.




 “バッチビルド”ウィンドウが表示されるので,[ALL_BUILD]の Debug,Release の両
方にチェックをつけ,[ビルド]を押します.




 ビルドが終わり,出力ログを見て“0 失敗”ならば成功です.




                          38
OpenCV2.2 Install Guide
                                                                      Ver.0.5




OpenCV の設定
 環境設定と Visual Studio にパスを設定する.
 【環境変数】
      ・OPENCV
              C:¥Program Files¥OpenCV-2.2.0
      ・Path
              ;%OPENCV%¥build¥bin¥Debug
              ;%OPENCV%¥build¥bin¥Release
 【Visual Studio】
      ・実行可能ファイル
              $(OPENCV)¥build¥bin¥Debug
              $(OPENCV)¥build¥bin¥Release
      ・インクルード ファイル
              $(OPENCV)¥include
              $(OPENCV)¥modules¥calib3d¥include
              $(OPENCV)¥modules¥contrib¥include
              $(OPENCV)¥modules¥core¥include
              $(OPENCV)¥modules¥features2d¥include
              $(OPENCV)¥modules¥ffmpeg
              $(OPENCV)¥modules¥flann¥include
              $(OPENCV)¥modules¥gpu¥include
              $(OPENCV)¥modules¥haartraining
              $(OPENCV)¥modules¥highgui¥include
              $(OPENCV)¥modules¥imgproc¥include
              $(OPENCV)¥modules¥legacy¥include
              $(OPENCV)¥modules¥ml¥include
              $(OPENCV)¥modules¥objdetect¥include
              $(OPENCV)¥modules¥traincascade
              $(OPENCV)¥modules¥video¥include
      ・ライブラリ ファイル
              $(OPENCV)¥build¥lib¥Debug
              $(OPENCV)¥build¥lib¥Release




                                    39
OpenCV2.2 Install Guide
                                                                           Ver.0.5




確認
    以上の設定を終えたら,実際に開発できるのか確認する.
    以下のような単純に画像を読み込み,表示するプログラムを書いてみる.


    Visual Studio を開き,[ファイル]>[新規作成]>[プロジェクト]を押し,“新しいプロジェ
              “プロジェクトの種類”から[Visual C++]>[Win32]を選び,
クト”のウィンドウを表示する.
“テンプレート”から[Win32 コンソールアプリケーション]を選ぶ.任意のプロジェクト名
○○○を入力して[OK]を押す.
               “Win32 アプリケーション ウィザード”が開くので,その
まま[完了]を押してソリューションを作成する.
    “ソリューションエクスプローラー”から[○○○]>[ソース ファイル]>[○○○.cpp]を開
き,以下のプログラムを記述する.また,適当な画像ファイルを用意し,ソースファイル
と同じディレクトリに置いておく.ソースコード中の画像ファイル名は適宜変更する.


#include "stdafx.h"
#include <opencv2/opencv.hpp>


#ifdef _DEBUG
         #pragma comment(lib, "opencv_core220d.lib")
         #pragma comment(lib, "opencv_highgui220d.lib")
#else
         #pragma comment(lib, "opencv_core220.lib")
         #pragma comment(lib, "opencv_highgui220.lib")
#endif


using namespace cv;


int _tmain(int argc, _TCHAR* argv[])
{
         Mat sourceImage = imread("Lenna.bmp");
         if(sourceImage.empty()){
                 cout << "画像ファイルが読み込めませんでした" << std::endl;
                 return -1;
         }


         namedWindow("Window", WINDOW_AUTOSIZE);


                                         40
OpenCV2.2 Install Guide
                                                              Ver.0.5



       imshow("Window", sourceImage);
       waitKey(0);


       return 0;
}


    入力できたら,[ビルド]>[構成マネージャ]を押し,“構成マネージャ”のウィンドウを開
きます.[アクティブソリューションプラットフォーム]欄で[新規作成]を押し,
                                     “新しいソリ
ューションプラットフォーム”のウィンドウを開きます.[新しいプラットフォームを入力
または選択してください]欄から“x64”を選択し,[OK]を押します.




    “構成マネージャ”のウィンドウを閉じ,[ビルド]>[ソリューションのビルド]を押してビ
ルドする.ビルドが成功したら[デバッグ]>[デバッグ無しで開始]を押し,プログラムを実行
する.エラー無く以下のような画面が出れば,正しく開発環境の構築ができています.




                                        41
OpenCV2.2 Install Guide
                                                                          Ver.0.5




OpenCV SVN (trunk,tag,branch について)
 OpenCV では,trunk,tag,branch の 3 種類がリリースされています.trunk には,常
に最新の機能が追加されていきます.この trunk がある程度纏まったところで,tag がつけ
られます.この tag が,1.0,1.1prea,2.0,2.1,2.2 など sourceforge で配布されている
ものにあたります.branch は,tag がつけられた段階から機能の追加は行わず,bug fix の
み行っていく安定版にあたります.
                        Table 1. OpenCV の各リリース項目
           リリース項目                    内容                配布場所
              trunk                 最新版                  SVN
               tag                リリース版              sourceforge
              branch                安定版                  SVN


 trunk と branch は SVN(Subversion)で管理されています.SVN では,commit(何らか
の変更や更新)があるごとに revision と呼ばれる管理番号がつけられます.trunk や branch
は,SVN から任意の revision を checkout(ローカルにコピーすること)することで入手でき
ます.ここでは OpenCV SVN から最新の revision を取得する方法を説明します.


 ① SVN クライアントをインストールする.
   本 InstallGuide では,Windows で動作する SVN クライアントとして“TortoiseSVN”
           以下の URL から TortoiseSVN の最新バージョン
 を使う方法を紹介する.                              “TortoiseSVN-1.
 ○.○○.○○○○○-win●●-svn-1.○.○○.msi”と日本語言語パック“LanguagePack_1.
 ○.○○.○○○○○-win●●-ja.msi”をダウンロード,インストールする.                           *1

 *1 ●●は 32bitOS なら 32,64bitOS なら 64.OS のバージョンに合わせてダウンロードする.

         http://tortoisesvn.net/downloads.html




                                        42
OpenCV2.2 Install Guide
                                                                  Ver.0.5



 スタートメニューの[すべてのプログラム]>[TortoiseSVN]から Settings を開く.設定ウ
ィンドウが表示されるので,[General]>[TortoiseSVN]>[Lungage]欄で“日本語”を選択
し,[OK]を押すと日本語化される.




② 最新の revision を checkout する.
 まず checkout するフォルダを作ります.フォルダは,任意の名前,任意の場所で構い
ません.   *2

 *2 今回は C ドライブの直下に“OpenCV2.2”という名前のフォルダを作りました.

 作成したフォルダを右クリックしてコンテキストメニューを開き,[SVN チェックアウ
ト]を押し,“チェックアウト”ウィンドウを表示します.




                                43
OpenCV2.2 Install Guide
                                                                       Ver.0.5



“チェックアウト”ウィンドウの[リポジトリの URL]欄にチェックアウトしたいリリース
項目の URL を入力します.trunk と branch の URL はそれぞれ以下の通りです.
                     Table 2. リポジトリの URL
        trunk     https://code.ros.org/svn/opencv/trunk/
        branch    https://code.ros.org/svn/opencv/branches/2.2/
[チェックアウトする深さ]欄は“再帰的”,[リビジョン]欄は“最新のリビジョン”を選択
します.もし,特定の revision を checkout したい場合は,[リビジョン]欄に revision 番
号を入力します.
 [OK]を押すと,指定フォルダに checkout されます.




③ OpenCV SVN のインストール
 checkout した OpenCV SVN を C:¥Program Files¥OpenCV-2.2.0 に移します.あとは
tag 版と同様に CMake,ビルドすればインストール完了です.




                                  44
OpenCV2.2 Install Guide
                                                                            Ver.0.5




Visual Studio 2010 のプロパティシートについて
 Visual Studio 2010(Express 以外)は,以前のような GUI による作成した全てのプロジェ
クトに設定が継承されるグローバルなパス設定ができなくなりました.Visual Studio 2010
では,作成したプロジェクト毎にプロパティシートで設定を行います.*1 プロジェクト毎
に設定を継承するプロパティシートを変更する,複数のプロパティシートから設定を継承
するなど柔軟に設定することができます.
 *1 以前の Visual Studio にもプロパティシートはあります.

 しかし,プロジェクトを作成する毎にプロパティシートを指定して設定を継承するのは
少々手間がかかります.そこで本 Guide では,デフォルトで全てのプロジェクトに継承さ
れる以下のプロパティシートを利用して,グローバルなパス設定を行う方法を紹介します.


       C:¥Users¥(ユーザー名)¥AppData¥Local¥Microsoft¥MSBuild¥v4.0
               ・Win32 用プロパティシート
                       Microsoft.Cpp.Win32.user.props
               ・x64 用プロパティシート
                       Microsoft.Cpp.x64.user.props


 通常のプロパティシートの作成,記述,継承の方法は以下の URL を参考にして下さい.


       MSDN ライブラリ:“プロパティシート(C++) Visual Studio 2010”
               http://msdn.microsoft.com/ja-jp/library/a4xbdz1e.aspx


 ここからは,既に本 Guide で必要な設定を書き込んだプロパティシートのサンプルを参
考に説明していきます.プロパティシートのサンプルは以下の URL からダウンロードして
下さい.


       まとめ?ブログ:SkyDrive“Visual Studio 2010 用プロパティシート”
               http://goo.gl/SLOnL


 プロパティシートは,XML で記述されています.上記のプロパティシートのファイルを
メモ帳などの任意のテキストエディタで開き,編集します.プロパティシートのタブの間
に値を書きこんでいくことで設定します.パスとパスの間はセミコロン(;)で区切ります.
XML の仕様上,タグの途中で改行は出来ないので注意して下さい.以下に各タブの説明を
記します.




                                         45
OpenCV2.2 Install Guide
                                                                           Ver.0.5



・ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> ~
</PropertyGroup>
       <PropertyGroup>タグに含まれるプロパティがどのビルド設定を対象としたもの
       かを指定する.上の例では Debug ビルドで Win32 アプリケーションを対象とした
       設定.Relase ビルドや x64 アプリケーションを対象とする場合は該当箇所を置き
       換えて下さい.


・<ExecutablePath> ~    ;$(ExecutablePath)</ExecutablePath>
       <ExecutiblePath>タグ内には実行可能ファイルのパスを記述する.
       $(ExecutablePath)は Visual Studio デフォルトの実行可能ファイルのパス.


・<IncludePath> ~    ;$(IncludePath)</IncludePath>
       <IncludePath>タグ内にはインクルードファイルのパスを記述する.
       $(IncludePath)は Visual Studio デフォルトのインクルードファイルのパス.


・<LibraryPath> ~    ;$(LibraryPath)</LibraryPath>
       <LibraryPath>タグ内にはインクルードファイルのパスを記述する.
       $(LibraryPath)は Visual Studio デフォルトのライブラリファイルのパス.


 サンプルのプロパティシートには記述しませんでしたが,以下のタグも利用できます.


・<ReferencePath> ~    ;$(ReferencePath)</ReferencePath>
       <ReferencePath>タグ内には参照ファイルのパスを記述する.
       $(ReferencePath)は Visual Studio デフォルトの参照ファイルのパス.


・<SourcePath> ~     ;$(SourcePath)</SourcePath>
       <SourcePath>タグ内にはソースファイルのパスを記述する.
       $(SourcePath)は Visual Studio デフォルトのソースファイルのパス.


・<ExcludePath> ~     ;$(ExcludePath)</ExcludePath>
       <ExcludePath>タグ内にはディレクトリを除外のパスを記述する.
       $(ExcludePath)は Visual Studio デフォルトのディレクトリを除外のパス.


  本 Guide で説明した方法が必ずしも推奨されるわけではありません.OpenCV                                2.2 用
の設定を記した○○○.props を作成しておき,プロジェクト作成毎に設定を継承する方法
が本来の方法だと思います.方法は任意で選んで下さい.


                                      46
OpenCV2.2 Install Guide
                                                                           Ver.0.5




参考サイト
・OpenCV Wiki
       http://opencv.willowgarage.com/wiki/
・OpenCV Issue Tracker
       https://code.ros.org/trac/opencv/
・Yahoo! GROUPS
       http://tech.groups.yahoo.com/group/OpenCV/
・sourceforge
       http://sourceforge.net/projects/opencvlibrary/
・OpenCVMeetingNotes
       http://pr.willowgarage.com/wiki/OpenCVMeetingNotes
・OpenCV.jp
       http://opencv.jp/
・第 10 回 コンピュータビジョン勉強会@関東 番外編 OpenCV 祭り
 @ms_wiki さん発表資料“リリース動向 & Yahoo! Groups”
       http://sites.google.com/site/cvsaisentan/



履歴
・Ver.0.1 2011/2/27            ・Ver.0.3 2011/3/5          ・Ver.0.5   2011/4/18
・Ver.0.2 2011/2/27            ・Ver.0.4 2011/3/15
 主な変更点
   -タイトルを Win32,x64 に修正                            -VS2010 のプロパティシートについて
   -VS2010 の TBB のパス指定について                         -Eigen のディレクトリ図を追加



連絡先
 説明の間違いや誤字,脱字,エラーなどありましたら以下の連絡先まで御一報頂ければ
幸いです.また,利用した感想など頂けると励みになります.Twitter でリプライ頂けるの
が一番反応良いと思います.長文や添付ファイルで Mail を使う場合も,Twitter で一言リ
プライ頂けると助かります.


       Twitter :@UnaNancyOwen
                  http://twitter.com/UnaNancyOwen
       Mail     :kgxpx834@yahoo.co.jp


                                           47
OpenCV2.2 Install Guide
                                                                         Ver.0.3




著作権表記
 (要約)
 OpenCV2.2 Install Guide は,UnaNancyOwen が私的に作成したものであり,再頒布,
使用,および改変は基本的に自由です.但し,著作者はいかなる損害の保証を致しません
のでご注意下さい.


 (著作権表記)
 Copyright (c) 2011 UnaNancyOwen All rights reserved.


 本文章(OpenCV2.2 Install Guide)は、変更するかしないかを問わず、以下の条件を満た
す場合に限り、再頒布および使用が許可されます。
・本文章を再頒布する場合、上記の著作権表示、本条件一覧、および下記免責条項を含めること。

本文章は、著作権者およびコントリビューターによって「現状のまま」提供されており、
明示黙示を問わず、商業的な使用可能性、および特定の目的に対する適合性に関する暗黙
の保証も含め、またそれに限定されない、いかなる保証もありません。
著作権者もコントリビューターも、事由のいかんを問わず、損害発生の原因いかんを問わ
ず、かつ責任の根拠が契約であるか厳格責任であるか(過失その他の)不法行為であるか
を問わず、仮にそのような損害が発生する可能性を知らされていたとしても、本文章の使
用によって発生した(代替品または代用サービスの調達、使用の喪失、データの喪失、利
益の喪失、業務の中断も含め、またそれに限定されない)直接損害、間接損害、偶発的な
損害、特別損害、懲罰的損害、または結果損害について、一切責任を負わないものとしま
す。




                                       48
OpenCV2.2 Install Guide
                                                               Ver.0.3




その他
     TBB や NPP を C:¥Program Files 以下に置いているが,Windows のユーザー権
      限の方針を考慮して C:¥ProgramData 以下に置いたほうがいいのではないか?


     CMake オプションの動作解明.(特に検証が面倒臭い CUDA 関係)


     Doxygen への対応


     Python への対応


     サンプルプログラムを追加 or 変更する?
      ・Web カメラからのキャプチャ
      ・簡単な画像処理
      ・画素値へのアクセス方法


     日本語って難しいねー(´・ω・`)


     OpenNI への対応


     OpenEXR への対応


     IPP への対応(Intel Compiler 欲しいお)


     x64 で Eigen の CMake & Compile は必要なのか?


     x64 のテストをする.(曖昧なところ多数なため)


     著作権表記をクリエイティブコモンズに変更する?


     Windows 以外の OS への対応




                               49

More Related Content

What's hot

Android起動周りのノウハウ
Android起動周りのノウハウAndroid起動周りのノウハウ
Android起動周りのノウハウchancelab
 
FreeCAD OpenFOAM Workbenchセットアップ方法と課題
FreeCAD OpenFOAM Workbenchセットアップ方法と課題FreeCAD OpenFOAM Workbenchセットアップ方法と課題
FreeCAD OpenFOAM Workbenchセットアップ方法と課題murai1972
 
PEZY-SC programming overview
PEZY-SC programming overviewPEZY-SC programming overview
PEZY-SC programming overviewRyo Sakamoto
 
Windows8でOpenCVを使ったAndroid(MOVERIO)開発体験したい
Windows8でOpenCVを使ったAndroid(MOVERIO)開発体験したいWindows8でOpenCVを使ったAndroid(MOVERIO)開発体験したい
Windows8でOpenCVを使ったAndroid(MOVERIO)開発体験したいYukio Saito
 
Howto CAD and Meshing on DEXCS2021
Howto CAD and Meshing on DEXCS2021Howto CAD and Meshing on DEXCS2021
Howto CAD and Meshing on DEXCS2021Etsuji Nomura
 
Andoird版OpenCVのJavaサンプルを動かす
Andoird版OpenCVのJavaサンプルを動かすAndoird版OpenCVのJavaサンプルを動かす
Andoird版OpenCVのJavaサンプルを動かすshobomaru
 
Docker調査20150704
Docker調査20150704Docker調査20150704
Docker調査20150704HommasSlide
 
Open Build Service で deb パッケージをビルドしてみた
Open Build Service で deb パッケージをビルドしてみたOpen Build Service で deb パッケージをビルドしてみた
Open Build Service で deb パッケージをビルドしてみたFuminobu Takeyama
 
NVIDIA GPUで作るHeadless X11 Linux
NVIDIA GPUで作るHeadless X11 LinuxNVIDIA GPUで作るHeadless X11 Linux
NVIDIA GPUで作るHeadless X11 LinuxTomoki SHISHIKURA
 
Mercurial入門(後半)解説版
Mercurial入門(後半)解説版Mercurial入門(後半)解説版
Mercurial入門(後半)解説版You&I
 
Docker実践入門
Docker実践入門Docker実践入門
Docker実践入門hiro nemu
 
Raspberrypi+yocto in Yocto Workshop Japan #1
Raspberrypi+yocto in Yocto Workshop Japan #1Raspberrypi+yocto in Yocto Workshop Japan #1
Raspberrypi+yocto in Yocto Workshop Japan #1kazuya-nisimura
 
Xilinx SDSoC(2016.3)解体新書ソフトウェア編
Xilinx SDSoC(2016.3)解体新書ソフトウェア編Xilinx SDSoC(2016.3)解体新書ソフトウェア編
Xilinx SDSoC(2016.3)解体新書ソフトウェア編Mr. Vengineer
 
Protecting microsoft azure blobs using net backup with blobfuse jp
Protecting microsoft azure blobs using net backup with blobfuse jpProtecting microsoft azure blobs using net backup with blobfuse jp
Protecting microsoft azure blobs using net backup with blobfuse jpvxsejapan
 
Linux kernelのbspとupstream
Linux kernelのbspとupstreamLinux kernelのbspとupstream
Linux kernelのbspとupstreamwata2ki
 

What's hot (20)

Decsx launcherv 2.5
Decsx launcherv 2.5Decsx launcherv 2.5
Decsx launcherv 2.5
 
Android起動周りのノウハウ
Android起動周りのノウハウAndroid起動周りのノウハウ
Android起動周りのノウハウ
 
FreeCAD OpenFOAM Workbenchセットアップ方法と課題
FreeCAD OpenFOAM Workbenchセットアップ方法と課題FreeCAD OpenFOAM Workbenchセットアップ方法と課題
FreeCAD OpenFOAM Workbenchセットアップ方法と課題
 
Version管理 1
Version管理 1Version管理 1
Version管理 1
 
PEZY-SC programming overview
PEZY-SC programming overviewPEZY-SC programming overview
PEZY-SC programming overview
 
Windows8でOpenCVを使ったAndroid(MOVERIO)開発体験したい
Windows8でOpenCVを使ったAndroid(MOVERIO)開発体験したいWindows8でOpenCVを使ったAndroid(MOVERIO)開発体験したい
Windows8でOpenCVを使ったAndroid(MOVERIO)開発体験したい
 
Howto CAD and Meshing on DEXCS2021
Howto CAD and Meshing on DEXCS2021Howto CAD and Meshing on DEXCS2021
Howto CAD and Meshing on DEXCS2021
 
Andoird版OpenCVのJavaサンプルを動かす
Andoird版OpenCVのJavaサンプルを動かすAndoird版OpenCVのJavaサンプルを動かす
Andoird版OpenCVのJavaサンプルを動かす
 
Docker調査20150704
Docker調査20150704Docker調査20150704
Docker調査20150704
 
Mercurial入門(後半)
Mercurial入門(後半)Mercurial入門(後半)
Mercurial入門(後半)
 
Open Build Service で deb パッケージをビルドしてみた
Open Build Service で deb パッケージをビルドしてみたOpen Build Service で deb パッケージをビルドしてみた
Open Build Service で deb パッケージをビルドしてみた
 
NVIDIA GPUで作るHeadless X11 Linux
NVIDIA GPUで作るHeadless X11 LinuxNVIDIA GPUで作るHeadless X11 Linux
NVIDIA GPUで作るHeadless X11 Linux
 
Mercurial入門(後半)解説版
Mercurial入門(後半)解説版Mercurial入門(後半)解説版
Mercurial入門(後半)解説版
 
Docker実践入門
Docker実践入門Docker実践入門
Docker実践入門
 
Raspberrypi+yocto in Yocto Workshop Japan #1
Raspberrypi+yocto in Yocto Workshop Japan #1Raspberrypi+yocto in Yocto Workshop Japan #1
Raspberrypi+yocto in Yocto Workshop Japan #1
 
Xilinx SDSoC(2016.3)解体新書ソフトウェア編
Xilinx SDSoC(2016.3)解体新書ソフトウェア編Xilinx SDSoC(2016.3)解体新書ソフトウェア編
Xilinx SDSoC(2016.3)解体新書ソフトウェア編
 
Protecting microsoft azure blobs using net backup with blobfuse jp
Protecting microsoft azure blobs using net backup with blobfuse jpProtecting microsoft azure blobs using net backup with blobfuse jp
Protecting microsoft azure blobs using net backup with blobfuse jp
 
123 dexcs2020
123 dexcs2020123 dexcs2020
123 dexcs2020
 
Linux kernelのbspとupstream
Linux kernelのbspとupstreamLinux kernelのbspとupstream
Linux kernelのbspとupstream
 
about dakota6.7 gui
about dakota6.7 guiabout dakota6.7 gui
about dakota6.7 gui
 

Similar to OpenCV2.2 Install Guide ver.0.5

もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順Hide Koba
 
【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門sandai
 
Code igniterでテスト駆動開発 資料作成中
Code igniterでテスト駆動開発 資料作成中Code igniterでテスト駆動開発 資料作成中
Code igniterでテスト駆動開発 資料作成中Takako Miyagawa
 
Linux でavr開発環境を構築する+mbed(20100612koedo94)
Linux でavr開発環境を構築する+mbed(20100612koedo94)Linux でavr開発環境を構築する+mbed(20100612koedo94)
Linux でavr開発環境を構築する+mbed(20100612koedo94)Kenichiro MATOHARA
 
Android Studioの魅力
Android Studioの魅力Android Studioの魅力
Android Studioの魅力Keiji Ariyama
 
LibreOffice を Windows 上でビルドする UPDATE
LibreOffice を Windows 上でビルドする UPDATELibreOffice を Windows 上でビルドする UPDATE
LibreOffice を Windows 上でビルドする UPDATETomofumi Yagi
 
[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~
[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~
[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~de:code 2017
 
Windows Server 2019 で Container を使ってみる
Windows Server 2019 で Container を使ってみるWindows Server 2019 で Container を使ってみる
Windows Server 2019 で Container を使ってみるKazuki Takai
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Masahito Zembutsu
 
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」aitc_jp
 
microPCFを使ってみよう
microPCFを使ってみようmicroPCFを使ってみよう
microPCFを使ってみようHiroaki_UKAJI
 
Displaylink : Reloaded
Displaylink : ReloadedDisplaylink : Reloaded
Displaylink : ReloadedMasataka Kondo
 
OpenCLに触れてみよう
OpenCLに触れてみようOpenCLに触れてみよう
OpenCLに触れてみようYou&I
 
今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門Masahito Zembutsu
 
Docker & Kubernetes基礎
Docker & Kubernetes基礎Docker & Kubernetes基礎
Docker & Kubernetes基礎Daisuke Hiraoka
 
CMake multiplatform build-tool
CMake multiplatform build-toolCMake multiplatform build-tool
CMake multiplatform build-toolNaruto TAKAHASHI
 
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考えるNetラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考えるdavid9142
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on dockerHiroshi Miura
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on dockerHiroshi Miura
 
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1Kotaro Noyama
 

Similar to OpenCV2.2 Install Guide ver.0.5 (20)

もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順
 
【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門
 
Code igniterでテスト駆動開発 資料作成中
Code igniterでテスト駆動開発 資料作成中Code igniterでテスト駆動開発 資料作成中
Code igniterでテスト駆動開発 資料作成中
 
Linux でavr開発環境を構築する+mbed(20100612koedo94)
Linux でavr開発環境を構築する+mbed(20100612koedo94)Linux でavr開発環境を構築する+mbed(20100612koedo94)
Linux でavr開発環境を構築する+mbed(20100612koedo94)
 
Android Studioの魅力
Android Studioの魅力Android Studioの魅力
Android Studioの魅力
 
LibreOffice を Windows 上でビルドする UPDATE
LibreOffice を Windows 上でビルドする UPDATELibreOffice を Windows 上でビルドする UPDATE
LibreOffice を Windows 上でビルドする UPDATE
 
[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~
[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~
[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~
 
Windows Server 2019 で Container を使ってみる
Windows Server 2019 で Container を使ってみるWindows Server 2019 で Container を使ってみる
Windows Server 2019 で Container を使ってみる
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
 
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
 
microPCFを使ってみよう
microPCFを使ってみようmicroPCFを使ってみよう
microPCFを使ってみよう
 
Displaylink : Reloaded
Displaylink : ReloadedDisplaylink : Reloaded
Displaylink : Reloaded
 
OpenCLに触れてみよう
OpenCLに触れてみようOpenCLに触れてみよう
OpenCLに触れてみよう
 
今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門
 
Docker & Kubernetes基礎
Docker & Kubernetes基礎Docker & Kubernetes基礎
Docker & Kubernetes基礎
 
CMake multiplatform build-tool
CMake multiplatform build-toolCMake multiplatform build-tool
CMake multiplatform build-tool
 
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考えるNetラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on docker
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on docker
 
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1
 

More from Tsukasa Sugiura

Azure Kinect DK C/C++ 開発概要(仮)
Azure Kinect DK C/C++ 開発概要(仮)Azure Kinect DK C/C++ 開発概要(仮)
Azure Kinect DK C/C++ 開発概要(仮)Tsukasa Sugiura
 
OpenCVとPCLでのRealSenseのサポート状況+α
OpenCVとPCLでのRealSenseのサポート状況+αOpenCVとPCLでのRealSenseのサポート状況+α
OpenCVとPCLでのRealSenseのサポート状況+αTsukasa Sugiura
 
第38回 名古屋CV・PRML勉強会 「Kinect v2本の紹介とPCLの概要」
第38回 名古屋CV・PRML勉強会 「Kinect v2本の紹介とPCLの概要」第38回 名古屋CV・PRML勉強会 「Kinect v2本の紹介とPCLの概要」
第38回 名古屋CV・PRML勉強会 「Kinect v2本の紹介とPCLの概要」Tsukasa Sugiura
 
Kinect v2 Introduction and Tutorial
Kinect v2 Introduction and TutorialKinect v2 Introduction and Tutorial
Kinect v2 Introduction and TutorialTsukasa Sugiura
 
Introduction to Kinect v2
Introduction to Kinect v2Introduction to Kinect v2
Introduction to Kinect v2Tsukasa Sugiura
 
ViEW2013 「SS-01 画像センサと応用事例の紹介」
ViEW2013 「SS-01 画像センサと応用事例の紹介」ViEW2013 「SS-01 画像センサと応用事例の紹介」
ViEW2013 「SS-01 画像センサと応用事例の紹介」Tsukasa Sugiura
 
Leap Motion - 1st Review
Leap Motion - 1st ReviewLeap Motion - 1st Review
Leap Motion - 1st ReviewTsukasa Sugiura
 
第2回名古屋CV・PRML勉強会 「Kinectの導入」
第2回名古屋CV・PRML勉強会 「Kinectの導入」第2回名古屋CV・PRML勉強会 「Kinectの導入」
第2回名古屋CV・PRML勉強会 「Kinectの導入」Tsukasa Sugiura
 

More from Tsukasa Sugiura (8)

Azure Kinect DK C/C++ 開発概要(仮)
Azure Kinect DK C/C++ 開発概要(仮)Azure Kinect DK C/C++ 開発概要(仮)
Azure Kinect DK C/C++ 開発概要(仮)
 
OpenCVとPCLでのRealSenseのサポート状況+α
OpenCVとPCLでのRealSenseのサポート状況+αOpenCVとPCLでのRealSenseのサポート状況+α
OpenCVとPCLでのRealSenseのサポート状況+α
 
第38回 名古屋CV・PRML勉強会 「Kinect v2本の紹介とPCLの概要」
第38回 名古屋CV・PRML勉強会 「Kinect v2本の紹介とPCLの概要」第38回 名古屋CV・PRML勉強会 「Kinect v2本の紹介とPCLの概要」
第38回 名古屋CV・PRML勉強会 「Kinect v2本の紹介とPCLの概要」
 
Kinect v2 Introduction and Tutorial
Kinect v2 Introduction and TutorialKinect v2 Introduction and Tutorial
Kinect v2 Introduction and Tutorial
 
Introduction to Kinect v2
Introduction to Kinect v2Introduction to Kinect v2
Introduction to Kinect v2
 
ViEW2013 「SS-01 画像センサと応用事例の紹介」
ViEW2013 「SS-01 画像センサと応用事例の紹介」ViEW2013 「SS-01 画像センサと応用事例の紹介」
ViEW2013 「SS-01 画像センサと応用事例の紹介」
 
Leap Motion - 1st Review
Leap Motion - 1st ReviewLeap Motion - 1st Review
Leap Motion - 1st Review
 
第2回名古屋CV・PRML勉強会 「Kinectの導入」
第2回名古屋CV・PRML勉強会 「Kinectの導入」第2回名古屋CV・PRML勉強会 「Kinectの導入」
第2回名古屋CV・PRML勉強会 「Kinectの導入」
 

Recently uploaded

TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 

Recently uploaded (8)

TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 

OpenCV2.2 Install Guide ver.0.5

  • 2. OpenCV2.2 Install Guide Ver.0.5 目次 OpenCV2.2 Install Guide (Win32) Install Guide の対象 ...................................................................................................... 2 ダウンロード .................................................................................................................. 3 ソリューションファイルの生成(CMake) ..................................................................... 11 ビルド ........................................................................................................................... 16 OpenCV の設定 ............................................................................................................ 18 確認............................................................................................................................... 19 OpenCV2.2 Install Guide (x64) Install Guide の対象 .................................................................................................... 21 ダウンロード ................................................................................................................ 22 ソリューションファイルの生成(CMake) ..................................................................... 32 ビルド ........................................................................................................................... 37 OpenCV の設定 ............................................................................................................ 39 確認............................................................................................................................... 40 OpenCV SVN (trunk,tag,branch について)........................................................... 42 Visual Studio 2010 のプロパティシートについて ...................................................... 45 参考サイト .................................................................................................................... 47 履歴............................................................................................................................... 47 連絡先 ........................................................................................................................... 47 著作権表記 .................................................................................................................... 48 その他 ........................................................................................................................... 49 1
  • 3. OpenCV2.2 Install Guide Ver.0.5 OpenCV2.2 Install Guide (Win32) Install Guide の対象 本 Guide では,OpenCV2.2 を以下の環境を対象として開発環境を構築する.なお,OS 及び IDE はインストール及びセットアップが終わっているものとする.また,表の環境以 外に OpenCV の Visual Studio 用ソリューションファイル生成に CMake を用いる. 本 Guide では,OpenCV 以外にインストールするもの(TBB,CUDA など)に関しても, 開発環境を整えています. Table 1. 環境 OS Microsoft Windows7 SP1 32bit IDE Microsoft Visual Studio 2008 SP1 (VC++) Microsoft Visual Studio 2010 SP1 (VC++) *1 OpenCV2.2 TBB CUDA OpenCV Qt Eigen IPP *2 *1 Visual Studio 2010 については下記の事項を参照して下さい. *2 本 Guide では用いなかった. ※開発環境の構築中に,Windows の UAC(User Account Control:ユーザーアカウント制 御)が警告を出し,インストール作業などが上手くいかない場合がある.インストール作業 中は,UAC を通知しない設定にしておくと回避できる. ※インストール作業を始める前に“OpenCV SVN (trunk,tag,branch について)”を参照 して,インストールする OpenCV のリリース項目を選んで下さい. ※Visual Studio 2010 のパス設定方法は,“Visual Studio 2010 のプロパティシートについ て”を参照して下さい. 2
  • 4. OpenCV2.2 Install Guide Ver.0.5 ダウンロード 必要なものをダウンロード及びセットアップする. ① OpenCV2.2 以下の URL から OpenCV2.2“OpenCV-2.2.0-win.zip”をダウンロードする. http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.2/ 圧縮ファイルを解凍して以下のディレクトリに置く. C:¥Program Files¥OpenCV-2.2.0¥ 3
  • 5. OpenCV2.2 Install Guide Ver.0.5 ② TBB 【解説】 TBB(Threading Building Blocks)は,Intel のマルチコア CPU を用いた並列 プログラミングのための C++テンプレートクラスライブラリです.TBB をイ ンストールすることで,OpenCV 内部の並列処理機能を有効にします.利用 には,Intel のマルチコア CPU を推奨します. 以下の URL から TBB 安定版の最新バージョン“tbb30_◯◯◯oss_win.zip”*3 をダウン ロードする. *3 ◯はバージョン番号 http://threadingbuildingblocks.org/file.php?fid=77 圧縮ファイルを解凍して以下のディレクトリに置く. C:¥Program Files¥tbb30_◯◯◯oss¥ 環境変数と Visual Studio にパスを設定する.*4 *4 以降のパスの設定では設定するパスのみ表記する.それぞれ読み替えて設定すること. 【環境変数】 [コントロールパネル]>[システム]>[システムの詳細設定]を押して,“システムのプ ロパティ”ウィンドウを表示する.[詳細設定]タブの[環境変数]を押して,“環境変 数”ウィンドウを表示する.[システムの環境変数]欄の“Path”を選択し,[編集] を押す. “システム変数の編集”ウィンドウが表示されるので,変数値に以下のパス を追加する.*5 *5 設定してあるパスは消さないように注意すること.最悪の場合 OS が起動しなくなります. ・TBB30_INSTALL_DIR *6 *6 初期状態では変数が無いので,[新規]を押して作成する.以降の説明で変数名のないものは新規に作る C:¥Program Files¥tbb30_◯◯◯oss 4
  • 6. OpenCV2.2 Install Guide Ver.0.5 ・Path *7 *7 既に設定してある変数値の後ろに追加する.先頭のセミコロンを忘れないこと. ;%TBB30_INSTALL_DIR%¥bin¥ia32¥vc○ *8 *8 ○は利用する Visual Studio のバージョンに合わせる.2008 なら 9,2010 なら 10 を指定. 【Visual Studio】 Visual Studio を開き,[ツール]>[オプション]を押して,“オプション”ウィンドウ を表示する.左のツリーから[プロジェクトおよびソリューション]>[VC++ディレク トリ]を選択する.右側に表示される[ディレクトリを表示するプロジェクト]欄を以 下の 3 つに切り替えてそれぞれパスを設定する. ・実行可能ファイル $(TBB30_INSTALL_DIR)¥bin¥ia32¥vc○ ・インクルード ファイル $(TBB30_INSTALL_DIR)¥include ・ライブラリ ファイル $(TBB30_INSTALL_DIR)¥lib¥ia32¥vc○ 5
  • 7. OpenCV2.2 Install Guide Ver.0.5 ③ CUDA 【解説】 CUDA(Compute Unified Device Architecture)は,NVIDIA の汎用計算向け の GPU プログラミング開発環境です.OpenCV には,画像処理や特徴点検出 などを GPU 上に実装して高速に処理できる機能が含まれています.GPU 機 能の利用には,NVIDIA の CUDA 対応 GPU を必要とします.また,Fermi 以降かつミドルレンジ以上の GPU を推奨します. 以下の URL から NVIDIA GPU の最新バージョンのドライバをダウンロード及びインス トールする. http://www.nvidia.co.jp/Download/index.aspx?lang=jp 以下の URL から CUDA3.2 の必要なファイルをダウンロードする. http://developer.nvidia.com/object/cuda_3_2_downloads.html ・CUDA Toolkit“cudatoolkit_3.2.16_win_32.msi” ・GPU Computing SDK code samples“gpucomputingsdk_3.2.16_win_32.exe” ・NVIDIA Performance Primitives (NPP) library“npp_3.2.16_win_32.zip” CUDA Toolkit 及び GPU Computing SDK code samples を実行ファイルからインストー ルする. *9 *9 CUDA Toolkit 及び GPU Computing SDK code samples のインストール途中に利用者登録情報の入力画面が出てきますが,必要 な項目を入力,更新情報の必要/不要を選択すれば次に進めます. NVIDIA Performance Primitives (NPP) library の圧縮ファイルを解凍して以下のディ レクトリに置く. *10 *10 NPP の README.TXT のように CUDA Toolkit のパスにファイルをコピーすると OpenCV の CMake が見つけられない. C:¥Program Files¥npp_3.2.16_win_32¥SDK 6
  • 8. OpenCV2.2 Install Guide Ver.0.5 環境変数と Visual Studio にパスを設定する. 【環境変数】 ・NPP_ROOT_DIR C:¥Program Files¥npp_3.2.16_win_32¥SDK ・Path ;%NPP_ROOT_DIR%¥common¥npp¥bin 【Visual Studio】 ・実行可能ファイル $(CUDA_BIN_PATH) $(NPP_ROOT_DIR)¥common¥npp¥bin ・インクルード ファイル $(CUDA_INC_PATH) $(NVSDKCOMPUTE_ROOT)¥C¥common¥inc $(NVSDKCOMPUTE_ROOT)¥shared¥inc $(NPP_ROOT_DIR)¥common¥npp¥include ・ライブラリ ファイル $(CUDA_LIB_PATH) $(NVSDKCOMPUTE_ROOT)¥C¥common¥lib $(NVSDKCOMPUTE_ROOT)¥shared¥lib $(NPP_ROOT_DIR)¥common¥npp¥lib ※CUDA3.2 は Visual Studio 2010 に対応していません.Visual Studio 2010 は CUDA4.0 からの対応となります.CUDA4.0 のリリースに合わせて OpenCV も対応すると思われま す. 7
  • 9. OpenCV2.2 Install Guide Ver.0.5 ④ Qt 【解説】 Qt は,Nokia のクロスプラットフォームなアプリケーション・ユーザーイン ターフェース開発フレームワークです.OpenCV では,Qt をインストールす ることで,以前からのシンプルな GUI に加え,リッチな GUI を使えるよう になります. 以下の URL から最新バージョンの Windows 版 Qt ライブラリ“qt-win-opensource-4. ◯.◯-vs2008.exe”をダウンロード,インストールする. http://qt.nokia.com/downloads-jp 環境変数と Visual Studio のパスを設定する. 【環境変数】 ・QTDIR C:¥Qt¥4.◯.◯ ・Path ;%QTDIR%¥bin 【Visual Studio】 ・実行可能ファイル $(QTDIR)¥bin ・インクルード ファイル $(QTDIR)¥include ・ライブラリ ファイル $(QTDIR)¥lib 8
  • 10. OpenCV2.2 Install Guide Ver.0.5 ⑤ Eigen 【解説】 Eigen は,フリーの行列・ベクトル演算ライブラリです.様々な行列・ベクト ル演算を SIMD 拡張命令を用いて高速に処理できます.OpenCV では,Eigen の行列と cv::Mat を相互に変換でき,Eigen の高機能な行列・ベクトル演算を 利用しやすくなっています. 以下の URL から Eigen 安定版の最新バージョン“eigen-2.0.◯◯.zip”をダウンロード する. http://eigen.tuxfamily.org/index.php?title=Main_Page#Download 圧縮ファイルを解凍して以下のディレクトリに置く.右のディレクトリ構造図を参照し て下さい. C:¥Program Files¥eigen¥ Program Files eigen 環境変数と Visual Studio にパスを設定する. 【環境変数】 Eigen ・EIGEN_DIR src C:¥Program Files¥eigen Array 【Visual Studio】 Core ・インクルード ファイル Eigen $(EIGEN_DIR) 9
  • 11. OpenCV2.2 Install Guide Ver.0.5 ⑥ CMake 【解説】 CMake は,ソフトウェアのビルドを自動化するためのクロスプラットフォー ムなシステムです.OpenCV では,標準で用意されているバイナリを用いな い場合は,CMake を用いてソリューションファイルを作成,ビルドします. 以下の URL から CMake“cmake-2.○.○-win32-x86.exe”をダウンロード,インストー ルする. http://www.cmake.org/cmake/resources/software.html 10
  • 12. OpenCV2.2 Install Guide Ver.0.5 ソリューションファイルの生成(CMake) CMake を使って Visual Studio 用のソリューションファイルを生成する. ① [ ス タ ー ト メ ニ ュ ー ]>[す べ て の プ ロ グ ラ ム ]>[CMake ◯ ◯ ] の 中 に あ る CMake (cmake-gui)を起動する. ② [Where is the source code:]の[Browse Source…]を押し,以下のパスを指定する. C:¥Program Files¥OpenCV-2.2.0 ③ [Where is build the binaries:]の[Browse Source…]を押し,以下のパスを指定する. C:¥Program Files¥OpenCV-2.2.0¥build ④ [Configure]を押し,[Specify the generator for this project]で利用する IDE(Visual Studio)を選び[Finish]を押す.Visual Studio 製品名と内部バージョンの対応は以下 のとおり. Table 2. Visual Studio 製品名と内部バージョンの対応 Visual Studio 製品名 内部バージョン Visual Studio 6.0 6 Visual Studio .NET 7 Visual Studio .NET 2003 7.1 Visual Studio 2005 8 Visual Studio 2008 9 Visual Studio 2010 10 11
  • 13. OpenCV2.2 Install Guide Ver.0.5 ⑤ 下の欄に現在の設定での出力及びエラー内容,中央の欄に選択できるオプションの一 覧が表示されます.以下に初期状態の出力の一部を示します. Could NOT find PythonInterp (missing: PYTHON_EXECUTABLE) Could NOT find PythonLibs (missing: PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS) Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) “Could NOT find ◯◯◯◯(missing:◯◯◯◯)”などはオプションを指定しているが 必要な情報が見つからないということを示しています.オプションを指定する場合, 必要な情報の指定漏れか間違っている可能性があるので,中央の欄でオプションの設 定を確認します.また,オプションを必要としない場合,中央の欄でオプションの設 定を外します. General configuration for opencv 2.2.0 ===================================== Built as dynamic libs?: ON GUI: Win32 UI: 1 Image I/O: JPEG: build PNG: build TIFF: build JPEG 2000: build OpenEXR: NO Video I/O: VideoInput: 1 Interfaces: Use IPP: NO Use TBB: NO Use Cuda: No Use Eigen2: NO ----------------------------------------------------------------- “General configuration for opencv 2.2.0=”以降は現在の出力設定の一覧を示してい ます. 12
  • 14. OpenCV2.2 Install Guide Ver.0.5 ⑥ 中央の欄でオプションを設定します. CMake では,中央の欄でのオプションの設定と[Configure]を繰り返して出力設定 をしていきます.[Configure]を押すたびに,下の欄のエラーや出力設定の一覧が 更新されます. 1. TBB [WITH_TBB]にチェックを入れ,[Configure]を押します. 新たに[TBB_INCLUDE_DIR]が表示されるので,TBB の include を指定し, [Configure]を押します. C:¥Program Files¥tbb30_◯◯◯oss¥include 新たに[TBB_LIB_DIR]が表示されるので,TBB の lib¥ia32¥vc9 を指定し, [Configure]を押します. C:¥Program Files¥tbb30_◯◯◯oss¥lib¥ia32¥vc9 2. CUDA [WITH_CUDA]にチェックを入れ,[Configure]を押します. 新たに以下のオプションが表示されるので,それぞれ設定し,[Configure]を押し ます. [CUDA_BUILD_CUBIN] チェック無し [CUDA_BUILD_EMULATION] チェック無し [CUDA_COMPUTE_CAPABILITES] 1.1 1.2 1.3 2.0 *11 *11 Compute Capabilitey は,CUDA-Z などを使って確認できる.利用する GPU に合わせて変更する? [CUDA_NPP_LIBRARY_ROOT_DIR] C:/Program Files/npp_3.2.16_win_32/SDK [CUDA_SDK_ROOT_DIR] C:¥ProgramData¥NVIDIA Corporation¥NVIDIA GPU Computing SDK 3.2¥C [CUDA_TOOLKIT_ROOT_DIR] C:¥Program Files¥NVIDIA GPU Computing Toolkit¥CUDA¥v3.2 [CUDA_VERBOSE_BUILD] チェック無し 13
  • 15. OpenCV2.2 Install Guide Ver.0.5 3. Qt [WITH_QT]と[WITH_QT_OPENGL]にチェックを入れ,[Configure]を押します. [QT_QMAKE_EXECUTABLE]に Qt の bin¥qmake.exe を指定し,[Configure] を押します. C:/Qt/4.◯.◯/bin/qmake.exe 4. Eigen [WITH_EIGEN2]にチェックを入れ,[Configure]を押します. [EIGEN2_INCLUDE_PATH]に Eigen の¥include を指定し,[Configure]を押し ます. C:¥Program Files¥eigen *12 *12 eigen フォルダと Eigen フォルダの違いに注意.ダウンロード>⑤Eigen のディレクトリ構造図を参照. 5. IPP [USE_IPP]にチェックを入れ,[IPP_PATH]を設定し,[Configure]を押すことで有 効になります.今回は詳細の説明は省きます. 6. その他 その他の設定を確認していきます. ・サンプルプログラムが必要な場合 [INSTALL_C_EXAMPLES](,[INSTALL_PYTHON_EXAMPLES])と [BUILD_EXAMPLES]にチェックを入れ,[Configure]を押します.*13 *13 [INSTALL_◯_EXAMPLES]のみの場合,プロジェクトファイルは生成されない. ・Python が不要な場合 [BUILD_NEW_PYTHON_SUPPORT]のチェックを外して,[Configure] を押します. ⑦ 下の欄に現在の設定での出力を確認します.以下にオプション設定後の出力の一部を 示します. CUDA detected: 3.2 NPP detected: 3.2.16 General configuration for opencv 2.2.0 ===================================== Built as dynamic libs?: ON GUI: 14
  • 16. OpenCV2.2 Install Guide Ver.0.5 QT 4.x: 1 QT OpenGL support: 1 Image I/O: JPEG: build PNG: build TIFF: build JPEG 2000: build OpenEXR: NO Video I/O: VideoInput: 1 Interfaces: Python: OFF Use IPP: NO Use TBB: YES Use Cuda: YES Use Eigen2: YES ----------------------------------------------------------------- “General configuration for opencv 2.2.0 =”以降に注目してください.“GUI” “ImageI/O” “VideoI/O” “Interfaces” “Documentation”の出力設定を確認します. ⑧ 最後に[Generate]ボタンを押してソリューションファイルを生成します. [Where is build the binaries:]に設定した出力ディレクトリに OpenCV のソリューシ ョンファイルが生成されていることを確認し,CMake を閉じます. 15
  • 17. OpenCV2.2 Install Guide Ver.0.5 ビルド OpenCV のビルドを行う前にファイルの修正を行います. OpenCV では,Web カメラから動画像をキャプチャして処理を行うことが多いです.し かし,OpenCV2.2 tag 版にはカメラキャプチャにバグがあります.このままでは Web カメ ラなどを利用することができません. 以下の URL から,修正済みのファイル(precomp.hpp)をダウンロードして差し替える(下 の“Zip Archive”からダウンロード),または訂正該当箇所を書き換えます. C:¥Program Files¥OpenCV-2.2.0¥modules¥highgui¥src¥precomp.hpp https://code.ros.org/trac/opencv/changeset/4383 修正が完了したら,出力ディレクトリ(OpenCV-2.2.0¥build¥)に作成された OpenCV の ソリューションファイル“OpenCV.sln”を Visual Studio で開きます. 16
  • 18. OpenCV2.2 Install Guide Ver.0.5 Visual Studio のメニューから[ビルド]>[バッチビルド]を押します. “バッチビルド”ウィンドウが表示されるので,[ALL_BUILD]の Debug,Release の両 方にチェックをつけ,[ビルド]を押します. ビルドが終わり,出力ログを見て“0 失敗”ならば成功です. 17
  • 19. OpenCV2.2 Install Guide Ver.0.5 OpenCV の設定 環境設定と Visual Studio にパスを設定する. 【環境変数】 ・OPENCV C:¥Program Files¥OpenCV-2.2.0 ・Path ;%OPENCV%¥build¥bin¥Debug ;%OPENCV%¥build¥bin¥Release 【Visual Studio】 ・実行可能ファイル $(OPENCV)¥build¥bin¥Debug $(OPENCV)¥build¥bin¥Release ・インクルード ファイル $(OPENCV)¥include $(OPENCV)¥modules¥calib3d¥include $(OPENCV)¥modules¥contrib¥include $(OPENCV)¥modules¥core¥include $(OPENCV)¥modules¥features2d¥include $(OPENCV)¥modules¥ffmpeg $(OPENCV)¥modules¥flann¥include $(OPENCV)¥modules¥gpu¥include $(OPENCV)¥modules¥haartraining $(OPENCV)¥modules¥highgui¥include $(OPENCV)¥modules¥imgproc¥include $(OPENCV)¥modules¥legacy¥include $(OPENCV)¥modules¥ml¥include $(OPENCV)¥modules¥objdetect¥include $(OPENCV)¥modules¥traincascade $(OPENCV)¥modules¥video¥include ・ライブラリ ファイル $(OPENCV)¥build¥lib¥Debug $(OPENCV)¥build¥lib¥Release 18
  • 20. OpenCV2.2 Install Guide Ver.0.5 確認 以上の設定を終えたら,実際に開発できるのか確認する. 以下のような単純に画像を読み込み,表示するプログラムを書いてみる. Visual Studio を開き,[ファイル]>[新規作成]>[プロジェクト]を押し,“新しいプロジェ “プロジェクトの種類”から[Visual C++]>[Win32]を選び, クト”のウィンドウを表示する. “テンプレート”から[Win32 コンソールアプリケーション]を選ぶ.任意のプロジェクト名 ○○○を入力して[OK]を押す. “Win32 アプリケーション ウィザード”が開くので,その まま[完了]を押してソリューションを作成する. “ソリューションエクスプローラー”から[○○○]>[ソース ファイル]>[○○○.cpp]を開 き,以下のプログラムを記述する.また,適当な画像ファイルを用意し,ソースファイル と同じディレクトリに置いておく.ソースコード中の画像ファイル名は適宜変更する. #include "stdafx.h" #include <opencv2/opencv.hpp> #ifdef _DEBUG #pragma comment(lib, "opencv_core220d.lib") #pragma comment(lib, "opencv_highgui220d.lib") #else #pragma comment(lib, "opencv_core220.lib") #pragma comment(lib, "opencv_highgui220.lib") #endif using namespace cv; int _tmain(int argc, _TCHAR* argv[]) { Mat sourceImage = imread("Lenna.bmp"); if(sourceImage.empty()){ cout << "画像ファイルが読み込めませんでした" << std::endl; return -1; } namedWindow("Window", WINDOW_AUTOSIZE); 19
  • 21. OpenCV2.2 Install Guide Ver.0.5 imshow("Window", sourceImage); waitKey(0); return 0; } 入力できたら,[ビルド]>[ソリューションのビルド]を押してビルドする.ビルドが成功し たら[デバッグ]>[デバッグ無しで開始]を押し,プログラムを実行する. エラー無く以下のような画面が出れば,正しく開発環境の構築ができています. 20
  • 22. OpenCV2.2 Install Guide Ver.0.5 OpenCV2.2 Install Guide (x64) Install Guide の対象 本 Guide では,OpenCV2.2 を以下の環境を対象として開発環境を構築する.なお,OS 及び IDE はインストール及びセットアップが終わっているものとする.また,表の環境以 外に OpenCV の Visual Studio 用ソリューションファイル生成に CMake を用いる. 本 Guide では,OpenCV 以外にインストールするもの(TBB,CUDA など)に関しても, 開発環境を整えています. Table 1. 環境 OS Microsoft Windows7 SP1 64bit IDE Microsoft Visual Studio 2008 SP1 (VC++) Microsoft Visual Studio 2010 SP1 (VC++) *1 OpenCV2.2 TBB CUDA OpenCV Qt Eigen IPP *2 *1 Visual Studio 2010 については下記の事項を参照して下さい. *2 本 Guide では用いなかった. ※開発環境の構築中に,Windows の UAC(User Account Control:ユーザーアカウント制 御)が警告を出し,インストール作業などが上手くいかない場合がある.インストール作業 中は,UAC を通知しない設定にしておくと回避できる. ※インストール作業を始める前に“OpenCV SVN (trunk,tag,branch について)”を参照 して,インストールする OpenCV のリリース項目を選んで下さい. ※Visual Studio 2010 のパス設定方法は,“Visual Studio 2010 のプロパティシートについ て”を参照して下さい. 21
  • 23. OpenCV2.2 Install Guide Ver.0.5 ダウンロード 必要なものをダウンロード及びセットアップする. ① OpenCV2.2 以下の URL から OpenCV2.2“OpenCV-2.2.0-win.zip”をダウンロードする. http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.2/ 圧縮ファイルを解凍して以下のディレクトリに置く. C:¥Program Files¥OpenCV-2.2.0¥ 22
  • 24. OpenCV2.2 Install Guide Ver.0.5 ② TBB 【解説】 TBB(Threading Building Blocks)は,Intel のマルチコア CPU を用いた並列 プログラミングのための C++テンプレートクラスライブラリです.TBB をイ ンストールすることで,OpenCV 内部の並列処理機能を有効にします.利用 には,Intel のマルチコア CPU を推奨します. 以下の URL から TBB 安定版の最新バージョン“tbb30_◯◯◯oss_win.zip”*3 をダウン ロードする. *3 ◯はバージョン番号 http://threadingbuildingblocks.org/file.php?fid=77 圧縮ファイルを解凍して以下のディレクトリに置く. C:¥Program Files¥tbb30_◯◯◯oss¥ 環境変数と Visual Studio にパスを設定する.*4 *4 以降のパスの設定では設定するパスのみ表記する.それぞれ読み替えて設定すること. 【環境変数】 [コントロールパネル]>[システム]>[システムの詳細設定]を押して,“システムのプ ロパティ”ウィンドウを表示する.[詳細設定]タブの[環境変数]を押して,“環境変 数”ウィンドウを表示する.[システムの環境変数]欄の“Path”を選択し,[編集] を押す. “システム変数の編集”ウィンドウが表示されるので,変数値に以下のパス を追加する.*5 *5 設定してあるパスは消さないように注意すること.最悪の場合 OS が起動しなくなります. ・TBB30_INSTALL_DIR *6 *6 初期状態では変数が無いので,[新規]を押して作成する.以降の説明で変数名のないものは新規に作る C:¥Program Files¥tbb30_◯◯◯oss 23
  • 25. OpenCV2.2 Install Guide Ver.0.5 ・Path *7 *7 既に設定してある変数値の後ろに追加する.先頭のセミコロンを忘れないこと. ;%TBB30_INSTALL_DIR%¥bin¥intel64¥vc○ *8 *8 ○は利用する Visual Studio のバージョンに合わせる.2008 なら 9,2010 なら 10 を指定. 【Visual Studio】 Visual Studio を開き,[ツール]>[オプション]を押して,“オプション”ウィンドウ を表示する.左のツリーから[プロジェクトおよびソリューション]>[VC++ディレク トリ]を選択する.右側に表示される[プラットフォーム]欄を“x64”に切り替え,[デ ィレクトリを表示するプロジェクト]欄を以下の 3 つに切り替えてそれぞれパスを 設定する. ・実行可能ファイル $(TBB30_INSTALL_DIR)¥bin¥intel64¥vc○ ・インクルード ファイル $(TBB30_INSTALL_DIR)¥include ・ライブラリ ファイル $(TBB30_INSTALL_DIR)¥lib¥intel64¥vc○ 24
  • 26. OpenCV2.2 Install Guide Ver.0.5 ③ CUDA 【解説】 CUDA(Compute Unified Device Architecture)は,NVIDIA の汎用計算向け の GPU プログラミング開発環境です.OpenCV には,画像処理や特徴点検出 などを GPU 上に実装して高速に処理できる機能が含まれています.GPU 機 能の利用には,NVIDIA の CUDA 対応 GPU を必要とします.また,Fermi 以降かつミドルレンジ以上の GPU を推奨します. 以下の URL から NVIDIA GPU の最新バージョンのドライバをダウンロード及びインス トールする. http://www.nvidia.co.jp/Download/index.aspx?lang=jp 以下の URL から CUDA3.2 の必要なファイルをダウンロードする. http://developer.nvidia.com/object/cuda_3_2_downloads.html ・CUDA Toolkit“cudatoolkit_3.2.16_win_64.msi” ・GPU Computing SDK code samples“gpucomputingsdk_3.2.16_win_64.exe” ・NVIDIA Performance Primitives (NPP) library“npp_3.2.16_win_64.zip” CUDA Toolkit 及び GPU Computing SDK code samples を実行ファイルからインストー ルする. *9 *9 CUDA Toolkit 及び GPU Computing SDK code samples のインストール途中に利用者登録情報の入力画面が出てきますが,必要 な項目を入力,更新情報の必要/不要を選択すれば次に進めます. NVIDIA Performance Primitives (NPP) library の圧縮ファイルを解凍して以下のディ レクトリに置く. *10 *10 NPP の README.TXT のように CUDA Toolkit のパスにファイルをコピーすると OpenCV の CMake が見つけられない. C:¥Program Files¥npp_3.2.16_win_64¥SDK 25
  • 27. OpenCV2.2 Install Guide Ver.0.5 環境変数と Visual Studio にパスを設定する. 【環境変数】 ・NPP_ROOT_DIR C:¥Program Files¥npp_3.2.16_win_64¥SDK ・Path ;%NPP_ROOT_DIR%¥common¥npp¥bin 【Visual Studio】 ・実行可能ファイル $(CUDA_BIN_PATH) $(NPP_ROOT_DIR)¥common¥npp¥bin ・インクルード ファイル $(CUDA_INC_PATH) $(NVSDKCOMPUTE_ROOT)¥C¥common¥inc $(NVSDKCOMPUTE_ROOT)¥shared¥inc $(NPP_ROOT_DIR)¥common¥npp¥include ・ライブラリ ファイル $(CUDA_LIB_PATH) $(NVSDKCOMPUTE_ROOT)¥C¥common¥lib $(NVSDKCOMPUTE_ROOT)¥shared¥lib $(NPP_ROOT_DIR)¥common¥npp¥lib ※CUDA3.2 は Visual Studio 2010 に対応していません.Visual Studio 2010 は CUDA4.0 からの対応となります.CUDA4.0 のリリースに合わせて OpenCV も対応すると思われま す. 26
  • 28. OpenCV2.2 Install Guide Ver.0.5 ④ Qt 【解説】 Qt は,Nokia のクロスプラットフォームなアプリケーション・ユーザーイン ターフェース開発フレームワークです.OpenCV では,Qt をインストールす ることで,以前からのシンプルな GUI に加え,リッチな GUI を使えるよう になります. 以下の URL から最新バージョンの Qt ライブラリのソースコード “qt-everywhere-opensource-src-4.◯.◯.zip”をダウンロードする. http://qt.nokia.com/downloads-jp 圧縮ファイルを解凍して以下のパスに置く. C:¥Qt¥4.◯.◯x64¥ スタートメニューの[すべてのプログラム]>[Microsoft Visual Studio ◯]>[Visual Studio Tools]から“Visual Studio ◯ x64 Win64 コマンドプロンプト”を開く. 27
  • 29. OpenCV2.2 Install Guide Ver.0.5 以下のコマンドで Qt の make ファイルを生成する. [コマンド] [操作内容] cd C:¥Qt¥4.◯.◯x64 Qt のインストールフォルダへ移動 configure メニューの起動 o 商用/オープンソースの選択 y ライセンスの承諾 以下のコマンドで Qt をコンパイルする. *11 *11 Qt のコンパイルには数時間かかるので,OS がスリープモードなどに入らないように電源設定しておく.また,セキュリティソ フトの自動スキャンなどを OFF にしておくことを推奨する. [コマンド] [操作内容] nmake Qt のコンパイル PC の性能によるが,目安として 3 時間程でコンパイルが終わる. 28
  • 30. OpenCV2.2 Install Guide Ver.0.5 環境変数と Visual Studio のパスを設定する. 【環境変数】 ・QTDIR C:¥Qt¥4.◯.◯x64 ・Path ;%QTDIR%¥bin 【Visual Studio】 ・実行可能ファイル $(QTDIR)¥bin ・インクルード ファイル $(QTDIR)¥include ・ライブラリ ファイル $(QTDIR)¥lib 29
  • 31. OpenCV2.2 Install Guide Ver.0.5 ⑤ Eigen 【解説】 Eigen は,フリーの行列・ベクトル演算ライブラリです.様々な行列・ベクト ル演算を SIMD 拡張命令を用いて高速に処理できます.OpenCV では,Eigen の行列と cv::Mat を相互に変換でき,Eigen の高機能な行列・ベクトル演算を 利用しやすくなっています. 以下の URL から Eigen 安定版の最新バージョン“eigen-2.0.◯◯.zip”をダウンロード する. http://eigen.tuxfamily.org/index.php?title=Main_Page#Download 圧縮ファイルを解凍して以下のディレクトリに置く.右のディレクトリ構造図を参照し て下さい. C:¥Program Files¥eigen¥ Program Files eigen 環境変数と Visual Studio にパスを設定する. 【環境変数】 Eigen ・EIGEN_DIR src C:¥Program Files¥eigen Array 【Visual Studio】 Core ・インクルード ファイル Eigen $(EIGEN_DIR) 30
  • 32. OpenCV2.2 Install Guide Ver.0.5 ⑥ CMake 【解説】 CMake は,ソフトウェアのビルドを自動化するためのクロスプラットフォー ムなシステムです.OpenCV では,標準で用意されているバイナリを用いな い場合は,CMake を用いてソリューションファイルを作成,ビルドします. 以下の URL から CMake“cmake-2.○.○-win32-x86.exe”をダウンロード,インストー ルする. *12 *12 x86 版だが,WOW64 によって 64bitOS 上でエミュレーション動作する. http://www.cmake.org/cmake/resources/software.html 31
  • 33. OpenCV2.2 Install Guide Ver.0.5 ソリューションファイルの生成(CMake) CMake を使って Visual Studio 用のソリューションファイルを生成する. ⑨ [ ス タ ー ト メ ニ ュ ー ]>[す べ て の プ ロ グ ラ ム ]>[CMake ◯ ◯ ] の 中 に あ る CMake (cmake-gui)を起動する. ⑩ [Where is the source code:]の[Browse Source…]を押し,以下のパスを指定する. C:¥Program Files¥OpenCV-2.2.0 ⑪ [Where is build the binaries:]の[Browse Source…]を押し,以下のパスを指定する. C:¥Program Files¥OpenCV-2.2.0¥build ⑫ [Configure]を押し,[Specify the generator for this project]で利用する IDE(Visual Studio Win64)を選び[Finish]を押す.Visual Studio 製品名と内部バージョンの対応 は以下のとおり. Table 2. Visual Studio 製品名と内部バージョンの対応 Visual Studio 製品名 内部バージョン Visual Studio 6.0 6 Visual Studio .NET 7 Visual Studio .NET 2003 7.1 Visual Studio 2005 8 Visual Studio 2008 9 Visual Studio 2010 10 32
  • 34. OpenCV2.2 Install Guide Ver.0.5 ⑬ 下の欄に現在の設定での出力及びエラー内容,中央の欄に選択できるオプションの一 覧が表示されます.以下に初期状態の出力の一部を示します. Could NOT find PythonInterp (missing: PYTHON_EXECUTABLE) Could NOT find PythonLibs (missing: PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS) Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) “Could NOT find ◯◯◯◯(missing:◯◯◯◯)”などはオプションを指定しているが 必要な情報が見つからないということを示しています.オプションを指定する場合, 必要な情報の指定漏れか間違っている可能性があるので,中央の欄でオプションの設 定を確認します.また,オプションを必要としない場合,中央の欄でオプションの設 定を外します. General configuration for opencv 2.2.0 ===================================== Built as dynamic libs?: ON GUI: Win64 UI: 1 Image I/O: JPEG: build PNG: build TIFF: build JPEG 2000: build OpenEXR: NO Video I/O: VideoInput: 1 Interfaces: Use IPP: NO Use TBB: NO Use Cuda: No Use Eigen2: NO ----------------------------------------------------------------- “General configuration for opencv 2.2.0=”以降は現在の出力設定の一覧を示してい ます. 33
  • 35. OpenCV2.2 Install Guide Ver.0.5 ⑭ 中央の欄でオプションを設定します. CMake では,中央の欄でのオプションの設定と[Configure]を繰り返して出力設定 をしていきます.[Configure]を押すたびに,下の欄のエラーや出力設定の一覧が 更新されます. 1. TBB [WITH_TBB]にチェックを入れ,[Configure]を押します. 新たに[TBB_INCLUDE_DIR]が表示されるので,TBB の include を指定し, [Configure]を押します. C:¥Program Files¥tbb30_◯◯◯oss¥include 新たに[TBB_LIB_DIR]が表示されるので,TBB の lib¥intel64¥vc9 を指定し, [Configure]を押します. C:¥Program Files¥tbb30_◯◯◯oss¥lib¥intel64¥vc9 2. CUDA [WITH_CUDA]にチェックを入れ,[Configure]を押します. 新たに以下のオプションが表示されるので,それぞれ設定し,[Configure]を押し ます. [CUDA_BUILD_CUBIN] チェック無し [CUDA_BUILD_EMULATION] チェック無し [CUDA_COMPUTE_CAPABILITES] 1.1 1.2 1.3 2.0 *13 *13 Compute Capabilitey は,CUDA-Z などを使って確認できる.利用する GPU に合わせて変更する? [CUDA_NPP_LIBRARY_ROOT_DIR] C:/Program Files/npp_3.2.16_win_64/SDK [CUDA_SDK_ROOT_DIR] C:¥ProgramData¥NVIDIA Corporation¥NVIDIA GPU Computing SDK 3.2¥C [CUDA_TOOLKIT_ROOT_DIR] C:¥Program Files¥NVIDIA GPU Computing Toolkit¥CUDA¥v3.2 [CUDA_VERBOSE_BUILD] チェック無し 34
  • 36. OpenCV2.2 Install Guide Ver.0.5 3. Qt [WITH_QT]と[WITH_QT_OPENGL]にチェックを入れ,[Configure]を押します. [QT_QMAKE_EXECUTABLE]に Qt の bin¥qmake.exe を指定し,[Configure] を押します. C:/Qt/4.◯.◯x64/bin/qmake.exe 4. Eigen [WITH_EIGEN2]にチェックを入れ,[Configure]を押します. [EIGEN2_INCLUDE_PATH]に Eigen の¥include を指定し,[Configure]を押し ます. C:¥Program Files¥eigen *14 *14 eigen フォルダと Eigen フォルダの違いに注意.ダウンロード>⑤Eigen のディレクトリ構造図を参照. 5. IPP [USE_IPP]にチェックを入れ,[IPP_PATH]を設定し,[Configure]を押すことで有 効になります.今回は詳細の説明は省きます. 6. その他 その他の設定を確認していきます. ・サンプルプログラムが必要な場合 [INSTALL_C_EXAMPLES](,[INSTALL_PYTHON_EXAMPLES])と [BUILD_EXAMPLES]にチェックを入れ,[Configure]を押します.*15 *15 [INSTALL_◯_EXAMPLES]のみの場合,プロジェクトファイルは生成されない. ・Python が不要な場合 [BUILD_NEW_PYTHON_SUPPORT]のチェックを外して,[Configure] を押します. ⑮ 下の欄に現在の設定での出力を確認します.以下にオプション設定後の出力の一部を 示します. CUDA detected: 3.2 NPP detected: 3.2.16 General configuration for opencv 2.2.0 ===================================== Built as dynamic libs?: ON GUI: 35
  • 37. OpenCV2.2 Install Guide Ver.0.5 QT 4.x: 1 QT OpenGL support: 1 Image I/O: JPEG: build PNG: build TIFF: build JPEG 2000: build OpenEXR: NO Video I/O: VideoInput: 1 Interfaces: Python: OFF Use IPP: NO Use TBB: YES Use Cuda: YES Use Eigen2: YES ----------------------------------------------------------------- “General configuration for opencv 2.2.0 =”以降に注目してください.“GUI” “ImageI/O” “VideoI/O” “Interfaces” “Documentation”の出力設定を確認します. ⑯ 最後に[Generate]ボタンを押してソリューションファイルを生成します. [Where is build the binaries:]に設定した出力ディレクトリに OpenCV のソリューシ ョンファイルが生成されていることを確認し,CMake を閉じます. 36
  • 38. OpenCV2.2 Install Guide Ver.0.5 ビルド OpenCV のビルドを行う前にファイルの修正を行います. OpenCV では,Web カメラから動画像をキャプチャして処理を行うことが多いです.し かし,OpenCV2.2 tag 版にはカメラキャプチャにバグがあります.このままでは Web カメ ラなどを利用することができません. 以下の URL から,修正済みのファイル(precomp.hpp)をダウンロードして差し替える(下 の“Zip Archive”からダウンロード),または訂正該当箇所を書き換えます. C:¥Program Files¥OpenCV-2.2.0¥modules¥highgui¥src¥precomp.hpp https://code.ros.org/trac/opencv/changeset/4383 修正が完了したら,出力ディレクトリ(OpenCV-2.2.0¥build¥)に作成された OpenCV の ソリューションファイル“OpenCV.sln”を Visual Studio で開きます. 37
  • 39. OpenCV2.2 Install Guide Ver.0.5 Visual Studio のメニューから[ビルド]>[バッチビルド]を押します. “バッチビルド”ウィンドウが表示されるので,[ALL_BUILD]の Debug,Release の両 方にチェックをつけ,[ビルド]を押します. ビルドが終わり,出力ログを見て“0 失敗”ならば成功です. 38
  • 40. OpenCV2.2 Install Guide Ver.0.5 OpenCV の設定 環境設定と Visual Studio にパスを設定する. 【環境変数】 ・OPENCV C:¥Program Files¥OpenCV-2.2.0 ・Path ;%OPENCV%¥build¥bin¥Debug ;%OPENCV%¥build¥bin¥Release 【Visual Studio】 ・実行可能ファイル $(OPENCV)¥build¥bin¥Debug $(OPENCV)¥build¥bin¥Release ・インクルード ファイル $(OPENCV)¥include $(OPENCV)¥modules¥calib3d¥include $(OPENCV)¥modules¥contrib¥include $(OPENCV)¥modules¥core¥include $(OPENCV)¥modules¥features2d¥include $(OPENCV)¥modules¥ffmpeg $(OPENCV)¥modules¥flann¥include $(OPENCV)¥modules¥gpu¥include $(OPENCV)¥modules¥haartraining $(OPENCV)¥modules¥highgui¥include $(OPENCV)¥modules¥imgproc¥include $(OPENCV)¥modules¥legacy¥include $(OPENCV)¥modules¥ml¥include $(OPENCV)¥modules¥objdetect¥include $(OPENCV)¥modules¥traincascade $(OPENCV)¥modules¥video¥include ・ライブラリ ファイル $(OPENCV)¥build¥lib¥Debug $(OPENCV)¥build¥lib¥Release 39
  • 41. OpenCV2.2 Install Guide Ver.0.5 確認 以上の設定を終えたら,実際に開発できるのか確認する. 以下のような単純に画像を読み込み,表示するプログラムを書いてみる. Visual Studio を開き,[ファイル]>[新規作成]>[プロジェクト]を押し,“新しいプロジェ “プロジェクトの種類”から[Visual C++]>[Win32]を選び, クト”のウィンドウを表示する. “テンプレート”から[Win32 コンソールアプリケーション]を選ぶ.任意のプロジェクト名 ○○○を入力して[OK]を押す. “Win32 アプリケーション ウィザード”が開くので,その まま[完了]を押してソリューションを作成する. “ソリューションエクスプローラー”から[○○○]>[ソース ファイル]>[○○○.cpp]を開 き,以下のプログラムを記述する.また,適当な画像ファイルを用意し,ソースファイル と同じディレクトリに置いておく.ソースコード中の画像ファイル名は適宜変更する. #include "stdafx.h" #include <opencv2/opencv.hpp> #ifdef _DEBUG #pragma comment(lib, "opencv_core220d.lib") #pragma comment(lib, "opencv_highgui220d.lib") #else #pragma comment(lib, "opencv_core220.lib") #pragma comment(lib, "opencv_highgui220.lib") #endif using namespace cv; int _tmain(int argc, _TCHAR* argv[]) { Mat sourceImage = imread("Lenna.bmp"); if(sourceImage.empty()){ cout << "画像ファイルが読み込めませんでした" << std::endl; return -1; } namedWindow("Window", WINDOW_AUTOSIZE); 40
  • 42. OpenCV2.2 Install Guide Ver.0.5 imshow("Window", sourceImage); waitKey(0); return 0; } 入力できたら,[ビルド]>[構成マネージャ]を押し,“構成マネージャ”のウィンドウを開 きます.[アクティブソリューションプラットフォーム]欄で[新規作成]を押し, “新しいソリ ューションプラットフォーム”のウィンドウを開きます.[新しいプラットフォームを入力 または選択してください]欄から“x64”を選択し,[OK]を押します. “構成マネージャ”のウィンドウを閉じ,[ビルド]>[ソリューションのビルド]を押してビ ルドする.ビルドが成功したら[デバッグ]>[デバッグ無しで開始]を押し,プログラムを実行 する.エラー無く以下のような画面が出れば,正しく開発環境の構築ができています. 41
  • 43. OpenCV2.2 Install Guide Ver.0.5 OpenCV SVN (trunk,tag,branch について) OpenCV では,trunk,tag,branch の 3 種類がリリースされています.trunk には,常 に最新の機能が追加されていきます.この trunk がある程度纏まったところで,tag がつけ られます.この tag が,1.0,1.1prea,2.0,2.1,2.2 など sourceforge で配布されている ものにあたります.branch は,tag がつけられた段階から機能の追加は行わず,bug fix の み行っていく安定版にあたります. Table 1. OpenCV の各リリース項目 リリース項目 内容 配布場所 trunk 最新版 SVN tag リリース版 sourceforge branch 安定版 SVN trunk と branch は SVN(Subversion)で管理されています.SVN では,commit(何らか の変更や更新)があるごとに revision と呼ばれる管理番号がつけられます.trunk や branch は,SVN から任意の revision を checkout(ローカルにコピーすること)することで入手でき ます.ここでは OpenCV SVN から最新の revision を取得する方法を説明します. ① SVN クライアントをインストールする. 本 InstallGuide では,Windows で動作する SVN クライアントとして“TortoiseSVN” 以下の URL から TortoiseSVN の最新バージョン を使う方法を紹介する. “TortoiseSVN-1. ○.○○.○○○○○-win●●-svn-1.○.○○.msi”と日本語言語パック“LanguagePack_1. ○.○○.○○○○○-win●●-ja.msi”をダウンロード,インストールする. *1 *1 ●●は 32bitOS なら 32,64bitOS なら 64.OS のバージョンに合わせてダウンロードする. http://tortoisesvn.net/downloads.html 42
  • 44. OpenCV2.2 Install Guide Ver.0.5 スタートメニューの[すべてのプログラム]>[TortoiseSVN]から Settings を開く.設定ウ ィンドウが表示されるので,[General]>[TortoiseSVN]>[Lungage]欄で“日本語”を選択 し,[OK]を押すと日本語化される. ② 最新の revision を checkout する. まず checkout するフォルダを作ります.フォルダは,任意の名前,任意の場所で構い ません. *2 *2 今回は C ドライブの直下に“OpenCV2.2”という名前のフォルダを作りました. 作成したフォルダを右クリックしてコンテキストメニューを開き,[SVN チェックアウ ト]を押し,“チェックアウト”ウィンドウを表示します. 43
  • 45. OpenCV2.2 Install Guide Ver.0.5 “チェックアウト”ウィンドウの[リポジトリの URL]欄にチェックアウトしたいリリース 項目の URL を入力します.trunk と branch の URL はそれぞれ以下の通りです. Table 2. リポジトリの URL trunk https://code.ros.org/svn/opencv/trunk/ branch https://code.ros.org/svn/opencv/branches/2.2/ [チェックアウトする深さ]欄は“再帰的”,[リビジョン]欄は“最新のリビジョン”を選択 します.もし,特定の revision を checkout したい場合は,[リビジョン]欄に revision 番 号を入力します. [OK]を押すと,指定フォルダに checkout されます. ③ OpenCV SVN のインストール checkout した OpenCV SVN を C:¥Program Files¥OpenCV-2.2.0 に移します.あとは tag 版と同様に CMake,ビルドすればインストール完了です. 44
  • 46. OpenCV2.2 Install Guide Ver.0.5 Visual Studio 2010 のプロパティシートについて Visual Studio 2010(Express 以外)は,以前のような GUI による作成した全てのプロジェ クトに設定が継承されるグローバルなパス設定ができなくなりました.Visual Studio 2010 では,作成したプロジェクト毎にプロパティシートで設定を行います.*1 プロジェクト毎 に設定を継承するプロパティシートを変更する,複数のプロパティシートから設定を継承 するなど柔軟に設定することができます. *1 以前の Visual Studio にもプロパティシートはあります. しかし,プロジェクトを作成する毎にプロパティシートを指定して設定を継承するのは 少々手間がかかります.そこで本 Guide では,デフォルトで全てのプロジェクトに継承さ れる以下のプロパティシートを利用して,グローバルなパス設定を行う方法を紹介します. C:¥Users¥(ユーザー名)¥AppData¥Local¥Microsoft¥MSBuild¥v4.0 ・Win32 用プロパティシート Microsoft.Cpp.Win32.user.props ・x64 用プロパティシート Microsoft.Cpp.x64.user.props 通常のプロパティシートの作成,記述,継承の方法は以下の URL を参考にして下さい. MSDN ライブラリ:“プロパティシート(C++) Visual Studio 2010” http://msdn.microsoft.com/ja-jp/library/a4xbdz1e.aspx ここからは,既に本 Guide で必要な設定を書き込んだプロパティシートのサンプルを参 考に説明していきます.プロパティシートのサンプルは以下の URL からダウンロードして 下さい. まとめ?ブログ:SkyDrive“Visual Studio 2010 用プロパティシート” http://goo.gl/SLOnL プロパティシートは,XML で記述されています.上記のプロパティシートのファイルを メモ帳などの任意のテキストエディタで開き,編集します.プロパティシートのタブの間 に値を書きこんでいくことで設定します.パスとパスの間はセミコロン(;)で区切ります. XML の仕様上,タグの途中で改行は出来ないので注意して下さい.以下に各タブの説明を 記します. 45
  • 47. OpenCV2.2 Install Guide Ver.0.5 ・ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> ~ </PropertyGroup> <PropertyGroup>タグに含まれるプロパティがどのビルド設定を対象としたもの かを指定する.上の例では Debug ビルドで Win32 アプリケーションを対象とした 設定.Relase ビルドや x64 アプリケーションを対象とする場合は該当箇所を置き 換えて下さい. ・<ExecutablePath> ~ ;$(ExecutablePath)</ExecutablePath> <ExecutiblePath>タグ内には実行可能ファイルのパスを記述する. $(ExecutablePath)は Visual Studio デフォルトの実行可能ファイルのパス. ・<IncludePath> ~ ;$(IncludePath)</IncludePath> <IncludePath>タグ内にはインクルードファイルのパスを記述する. $(IncludePath)は Visual Studio デフォルトのインクルードファイルのパス. ・<LibraryPath> ~ ;$(LibraryPath)</LibraryPath> <LibraryPath>タグ内にはインクルードファイルのパスを記述する. $(LibraryPath)は Visual Studio デフォルトのライブラリファイルのパス. サンプルのプロパティシートには記述しませんでしたが,以下のタグも利用できます. ・<ReferencePath> ~ ;$(ReferencePath)</ReferencePath> <ReferencePath>タグ内には参照ファイルのパスを記述する. $(ReferencePath)は Visual Studio デフォルトの参照ファイルのパス. ・<SourcePath> ~ ;$(SourcePath)</SourcePath> <SourcePath>タグ内にはソースファイルのパスを記述する. $(SourcePath)は Visual Studio デフォルトのソースファイルのパス. ・<ExcludePath> ~ ;$(ExcludePath)</ExcludePath> <ExcludePath>タグ内にはディレクトリを除外のパスを記述する. $(ExcludePath)は Visual Studio デフォルトのディレクトリを除外のパス. 本 Guide で説明した方法が必ずしも推奨されるわけではありません.OpenCV 2.2 用 の設定を記した○○○.props を作成しておき,プロジェクト作成毎に設定を継承する方法 が本来の方法だと思います.方法は任意で選んで下さい. 46
  • 48. OpenCV2.2 Install Guide Ver.0.5 参考サイト ・OpenCV Wiki http://opencv.willowgarage.com/wiki/ ・OpenCV Issue Tracker https://code.ros.org/trac/opencv/ ・Yahoo! GROUPS http://tech.groups.yahoo.com/group/OpenCV/ ・sourceforge http://sourceforge.net/projects/opencvlibrary/ ・OpenCVMeetingNotes http://pr.willowgarage.com/wiki/OpenCVMeetingNotes ・OpenCV.jp http://opencv.jp/ ・第 10 回 コンピュータビジョン勉強会@関東 番外編 OpenCV 祭り @ms_wiki さん発表資料“リリース動向 & Yahoo! Groups” http://sites.google.com/site/cvsaisentan/ 履歴 ・Ver.0.1 2011/2/27 ・Ver.0.3 2011/3/5 ・Ver.0.5 2011/4/18 ・Ver.0.2 2011/2/27 ・Ver.0.4 2011/3/15 主な変更点 -タイトルを Win32,x64 に修正 -VS2010 のプロパティシートについて -VS2010 の TBB のパス指定について -Eigen のディレクトリ図を追加 連絡先 説明の間違いや誤字,脱字,エラーなどありましたら以下の連絡先まで御一報頂ければ 幸いです.また,利用した感想など頂けると励みになります.Twitter でリプライ頂けるの が一番反応良いと思います.長文や添付ファイルで Mail を使う場合も,Twitter で一言リ プライ頂けると助かります. Twitter :@UnaNancyOwen http://twitter.com/UnaNancyOwen Mail :kgxpx834@yahoo.co.jp 47
  • 49. OpenCV2.2 Install Guide Ver.0.3 著作権表記 (要約) OpenCV2.2 Install Guide は,UnaNancyOwen が私的に作成したものであり,再頒布, 使用,および改変は基本的に自由です.但し,著作者はいかなる損害の保証を致しません のでご注意下さい. (著作権表記) Copyright (c) 2011 UnaNancyOwen All rights reserved. 本文章(OpenCV2.2 Install Guide)は、変更するかしないかを問わず、以下の条件を満た す場合に限り、再頒布および使用が許可されます。 ・本文章を再頒布する場合、上記の著作権表示、本条件一覧、および下記免責条項を含めること。 本文章は、著作権者およびコントリビューターによって「現状のまま」提供されており、 明示黙示を問わず、商業的な使用可能性、および特定の目的に対する適合性に関する暗黙 の保証も含め、またそれに限定されない、いかなる保証もありません。 著作権者もコントリビューターも、事由のいかんを問わず、損害発生の原因いかんを問わ ず、かつ責任の根拠が契約であるか厳格責任であるか(過失その他の)不法行為であるか を問わず、仮にそのような損害が発生する可能性を知らされていたとしても、本文章の使 用によって発生した(代替品または代用サービスの調達、使用の喪失、データの喪失、利 益の喪失、業務の中断も含め、またそれに限定されない)直接損害、間接損害、偶発的な 損害、特別損害、懲罰的損害、または結果損害について、一切責任を負わないものとしま す。 48
  • 50. OpenCV2.2 Install Guide Ver.0.3 その他  TBB や NPP を C:¥Program Files 以下に置いているが,Windows のユーザー権 限の方針を考慮して C:¥ProgramData 以下に置いたほうがいいのではないか?  CMake オプションの動作解明.(特に検証が面倒臭い CUDA 関係)  Doxygen への対応  Python への対応  サンプルプログラムを追加 or 変更する? ・Web カメラからのキャプチャ ・簡単な画像処理 ・画素値へのアクセス方法  日本語って難しいねー(´・ω・`)  OpenNI への対応  OpenEXR への対応  IPP への対応(Intel Compiler 欲しいお)  x64 で Eigen の CMake & Compile は必要なのか?  x64 のテストをする.(曖昧なところ多数なため)  著作権表記をクリエイティブコモンズに変更する?  Windows 以外の OS への対応 49