OpenCV2.1のインストール:Windows(windows:32bit, 64bit, VIsual Studio)

06 6月 2010 Under: opencv2.x-tips

■安定版をインストール(バイナリから)

1.インストーラ付き実行ファイル(OpenCV-2.1.0-win32-vs2008.exe)をダウンロードします.

配布場所:http://sourceforge.net/projects/opencvlibrary/files/

2.インストーラを実行してインストールを行います.

インストール時に,環境変数PATHに追加するか否かを聞かれるので,問題ない場合は追加してください.

■安定版をインストール(ソースから)

1. ソースコード(OpenCV-2.1.0-win.zip)をダウンロードします.

配布場所:http://sourceforge.net/projects/opencvlibrary/files/

ダウンロードしたファイルは,任意の場所に展開します.ここでは,展開場所を “D:/OpenCV-2.1.0/” とします.

2. TBBをダウンロードします.

配布場所:http://www.threadingbuildingblocks.org/file.php?fid=77

OpenCVでTBBを有効にする場合には,TBBをダウンロードする必要があります.不要な場合には,3. に進んでください.

最新版のTBBをダウンロードし,任意の場所に解凍します.

3.CMake を利用してソリューションを作成します.

CMake をインストールしていない場合は,以下のサイトからダウンロードしてインストールしておきます.

配布場所:http://www.cmake.org/cmake/resources/software.html

CMake (cmake-gui) を起動し,”Where is the source code:” に “D:/OpenCV-2.1.0/” を, “Where to build the binaries:” に ”D:/OpenCV-2.1.0/build” を選択します.ついで,ビルドオプションを選択します.ここでは,

  • BUILD_EXAMPLES:サンプルをビルドします.
  • WITH_TBB:TBBを有効にします.

を選択します.

もちろん,TBB の利用できない環境では,WITH_TBB オプションを選択してはいけません.初回 configure 時に,対象コンパイル環境を聞いてきますので,適切なものを選択してください(例えば,Visual Studio Express Edition 2008 ならば 「Visual Studio 9 2008」,Visual Studio 2005 ならば「Visual Studio 8 2005」 など).ここでは,Visual Studio Express Edition 2010 を利用するので,「Visual Studio 10」を選択します.

TBBのインクルードディレクトリを指定する必要があります.ここでは,”<TBBをインストール(展開)したディレクトリ>\include”を指定します.

次に,TBBのライブラリディレクトリを指定する必要があります.ここでは,”<TBBをインストール(展開)したディレクトリ>\lib\ia32\vc10″を指定します.ia32 は32ビット版,vc10は visual studio 2010 用のライブラリであることを意味します.

そして,「Configure」および「Generate」を実行します.

4.OpenCVをビルドします.

CMakeによって,「OpenCV.sln」 が作成されるので,これを Visual Studio 2010 Express Edition で開きます.

「ビルド」→「バッチビルド」で,「ALL_BUILD」2つ,さらに「INSTALL]2つを選択してバッチビルドを行うと手軽でしょう.

ただし,Pythonのデバッグ版をインストールしていない場合は,PythonバインディングのDebug版はビルドできません.

5. PATH を設定します.

最後に,「マイコンピュータ」の「プロパティ」から,作成したライブラリへのパスを環境変数 PATH に追加します.今回の場合は,”D:\OpenCV-2.1.0\build\bin\Release” と “D:\OpenCV-2.1.0\build\bin\Debug” を追加します.さらに,TBBを利用している場合は,”<TBBをインストール(展開)したディレクトリ>\bin\ia32\vc10″(これも,各自の環境に合わせてください)を PATH に加える必要があります.

■SVN版をインストール

1. OpenCVのオフィシャルリポジトリから,最新のソースコードをチェックアウトします.

SVN クライアントを導入していない場合は,TortoiseSVN を下記サイトからダウンロード,インストールします.また,language Pack も同時にインストールすると,インタフェースを日本語化することも可能です.

配布場所:http://tortoisesvn.net/downloads

TortoiseSVN を導入後,右クリックのメニューより 「SVN チェックアウト」を選択し,リポジトリのURLとローカルのチェックアウト先のディレクトリを(例えば以下のように)指定します.リポジトリのURLは, “https://code.ros.org/svn/opencv/trunk” です.また,チェックアウトディレクトリが存在しない場合には,自動的に作成されます.ここでは,”D:\opencv2.1SVN” 以下にチェックアウトすることとします.

チェックアウトディレクトリの直下に “opencv” というフォルダが作成されますので,ここを安定版の場合の “D:\OpenCV2.1″ と読み替えれば,後の作業は,2.から5.まで同じです.

“OpenCV2.1のインストール:Windows(windows:32bit, 64bit, VIsual Studio)” への6件のコメント

  1. yae より:

    お世話になります。
    OpenCV初心者です。
    現在、Windows7 64bit上でVisualStudio2008 Professional版にてOpenCVSharpでUSBカメラ画像の画像処理に挑戦しようとしています。
    そこでOpenCV2.1.0をCMakeにて再ビルドしよとしていますが、CMakeのCofigureにてエラーが発生し先に進む事が出来ません。
    解決方法が分かれば教えて下さい。
    エラーの内容は、
    Error Dialogbox:Error in configuration, project files may be invalid.

    最終的には、
    CMake will not be able to correctly generate this project.
    Call Stack (most recent call first):
    CMakeLists.txt:39(project)

    Configuring incomlete, errors occurred.

    と出ます。

    宜しくお願いします。

    尚、Configureの冒頭で、
    CMake Error at C:/Program Files(x86)/CMake 2.8/share/cmake-2.8/Modules/CMakeTestCCompiler.cmake:52(MESSAGE):
    The C compiler “C:/Program Files(x86)/Microsoft Visual Sutdio 9.0/VC/bin/cl.exe” is not able to compile a simple test program

    と言うメッセージも出ています。

    初心者なので分かりやすくお願いできますか?

    因みに使っているVersionは、
    OpenCV2.1.0
    CMake2.8.5
    Windows7 64bit
    VisualStudio2008 Professional

    宜しくお願いします

  2. suenaga より:

    文章の流れから
    インストーラー:OpenCV-2.1.0-win32-vs2008.exe
    VCバージョン:2010
    を利用して,CMakeを使って新たにビルドしているという解釈で合っていますでしょうか?

    ・コンパイルできない
    ・コンパイルはできるが正常に実行ができない

    どちらの問題でお困りなのかが不明なので、ある程度想像でコメント致します。

    ・「コンパイルできない」の場合
    (1) #pragmaの記述を#include行より上に記述してしまっている。
    #pragmaは#includeより下部に記述する必要があります。

    (2) VC2010の設定不足
    VC2010にOpenCVライブラリの情報を教えておく必要があります.
    2-1. 「ツール」→「設定」→「上級者用の設定」をクリック
    2-2. 任意のプロジェクト名で新規プロジェクトを作成
    2-3. 「表示」→「プロパティ マネージャー」をクリックし,サイドメニューから「Microsoft.Cpp.Win32.user」 を開く
    2-4. 「共通プロパティ」→「VC++ディレクトリ」をクリック
    2-5. インクルード ディレクトリの既定値に続けて,「;(OpenCVビルドパス)\include\opencv」
    2-6. ライブラリ ディレクトリの既定値に続けて,「;(OpenCVビルドパス)\lib」
    2-7. 「プロパティマネージャー」から「Microsoft.Cpp.Win32.user」設定の保存

    ・「コンパイルはできるが正常に実行ができない」
    (1)test.aviを用意していない
    ご利用されているソースコードはNAIST千原研究室ホームページ内のLoadVideo.cppのようですが、
    「キャプチャ&動画ファイル出力」にあるWriteVideo.cppでaviファイルを作成した上で、
    test.aviファイルをご利用しておりますでしょうか?

    (2)test.aviの置き場所が間違っている
    コンパイル時に生成されるDebugフォルダ内などにtest.aviファイルを移動した上で実行してみてください。

    これらの情報で解決しますでしょうか?

    • 久保 辰徳 より:

      suenaga様、丁寧な御対応有難うございます。
      ・コンパイルできない
      ・コンパイルはできるが正常に実行ができない のどちらが問題になっているが不明記でした。
      すみません。後者の方です。

      また、LoadVideo.cppのexeファイルは作成できており、同ファイルにtest.aviを移動してあります。
      しかし、実行完了、エラー無しとvisual stadio2010には表示されるのですが、真っ白なウインドウが
      表示されるだけで動画が再生できませんでした。

      Visual Studio 2010のパラメータの設定、コンパイル環境の設定が出来ていないんでしょうか?
      suenaga様、アドバイスをお願いします。

      • suenaga より:

        ウィンドウが生成されていればOpenCVのインストールには成功しているような気がしますね.2点確認させてください.

        1. 千原研究室の別のページで紹介されているWriteVideo.cppで生成したaviファイルを使っていますか?
        2. LoadVideo.cppのソースコードは#pragma以外,変更なしですか?

        どちらもYesの場合は,千原研究室の方にお問い合せいただく方が良いかもしれません.

        余談かもしれませんが,私の手元では千原研究室のWriteVideo.cppを使って生成したtest.aviをLoadVideo.cppで読み込むことが出来ております.WriteVideoを実行すると「ビデオの圧縮」というウィンドウが表示され(これが一般的な動作かは不明),何種類かの圧縮方法が選択できるようになっています.圧縮方法によってはうまく表示されないのもあるようです.

        • 久保 辰徳 より:

          suenaga様、こんにちは。
          迅速にアドバイスを頂き、恐縮です。本当にありがとうございます。

          1. 千原研究室の別のページで紹介されているWriteVideo.cppで生成したaviファイルを使っていますか?
          2. LoadVideo.cppのソースコードは#pragma以外,変更なしですか?
          という御質問に対して答えさせて頂きます。

          1,についてなのですが、圧縮方法によってはうまく表示されないのもあるということが気になりました。QTConverterで動画を変換してみようと思います。

          2,についてなのですが#pragma以外は変更しておりません。

          上記しました僕の条件では、動画ファイルの形式が間違えて思われるので、試行してみようと思います。

          suenaga様、徹頭徹尾に渡って、アドバイスをして頂き有難うございました。感激至極です。

          失礼いたします。

  3. 久保 辰徳 より:

    OpenCV-2.1、visual stadio2010についての質問です。
    動画ファイル(aviファイル)の読み込みのプログラムをvisual stadio2010 でデバック実行しようとしましたが出来ません。
    どなたかアドバイスをお願いします。
    私が試行した道程の詳細を説明させて頂きます。

    私はまず、
    http://opencv.jp/opencv2-x-tips/install-on-windowswindows32bit-64bi...
    の安定版をインストール(バイナリから)の手順
    1.インストーラ付き実行ファイル(OpenCV-2.1.0-win32-vs2008.exe)をダウンロ
    ードし、
    ■安定版をインストール(ソースから)の手順
    1、 ソースコード(OpenCV-2.1.0-win.zip)をダウンロードします.
    2、TBBをダウンロードします.
    を無視し
    3、CMake を利用してソリューションを作成します.
    4、OpenCVをビルドします.
    5. PATH を設定します.
    を実行しました。

    ここで、LoadVideo.cpp
    http://chihara.naist.jp/opencv/?%C6%B0%B2%E8%A5%D5%A5%A1%A5%A4%A5%E...
    をでバックしようとし
    たのですが、上手くできませんでした。

    しかし、ここで疑問なのが、の安定版をインストール(バイナリから)
    の手順1の時点(ダウンロード)でpathを通しますか?
    と表示されるときにpathを通すにしたのですが、
    5、の手順でまたpathを通します。
    ここで誤作動を引き起こす要因が起こる可能性は無いのでしょうか?

    確認なのですが,CMakeでopenCVを(visual stadio2010でconfiguer)ビルドし、
    添付しました、オープンソースなどは、visual stadio2010でビルド・デバック(
    http://eternalwindows.jp/else/vc2010.html

    しますよね?

    また、上記以外にVisual Studio 2005 Professionalにおけるパラメータの設定
    http://chihara.naist.jp/opencv/?%A5%A4%A5%F3%A5%B9%A5%C8%A1%BC%A5%E...
    で追加しました。
    さらに、ソースの冒頭に
    #ifdef _DEBUG
    #pragma comment( lib, “cv210d.lib” )
    #pragma comment( lib, “cxcore210d.lib” )
    #pragma comment( lib, “cvaux210d.lib” )
    #pragma comment( lib, “highgui210d.lib” )
    #else
    #pragma comment( lib, “cv210.lib” )
    #pragma comment( lib, “cxcore210.lib” )
    #pragma comment( lib, “cvaux210.lib” )
    #pragma comment( lib, “highgui210.lib” )
    #endif
    を追加しました。

    上記の手順全てをこなしましたが、なぜか実行できませんでした。

    詳しいご解説を求めています。
    御指導のほどを、よろしくお願いします。

コメントをどうぞ