VisualStudio2017CommunityでOpenCV開発環境の構築

  • 3
    Like
  • 0
    Comment

Visual Studio 2017 CommunityにてC++で動くOpenCV開発環境を構築したので、残しておきます。

必要なもの

バージョンは投稿時最新のもの
OSはWindows10です。
・Visual Studio 2017 Community (http://www.visualstudio.com/ja/vs/community/)
・OpenCV 3.3.0 (http://opencv.org/releases.html)
・Cmake 3.9.4 (http://cmake.org/download/)
・OpenCV contrib 3.3.0 (http://github.com/opencv/opencv_contrib/releases)

手順

0.事前準備

Visual Studio 2017 Communityのインストール

上のリンクから次のような画面に飛びます。
alt

「VS Community 2017 のダウンロード」と書かれているボタンを押すとDLが始まりますので、完了したらインストーラーを起動してください。

vs2017c02.png

このような画面まできたら、目的ごとに必要な機能をインストールできる「ワークロードベース」インストール機能が実装されているので、自分の目的にあった機能の箇所にチェックを入れましょう。
今回はC++によるデスクトップ開発にチェックをいれました。
次に、「ワークロード」のタブの右隣にある「個別のコンポーネント」というタブを押します。

vs2017c03.png

CMakeを使うので、「CMake の Visual C++ ツール」にチェックを入れます。これを忘れると後々CMake側でエラーが起きますので忘れずに。
最後に「インストール」ボタンを押してインストールを開始します。

OpenCVのインストール

alt

上のOpenCV公式ページのリンクから、バージョン3.3.0の「Win pack」をクリックしソースをDLします。
ダウンロードしたexeを実行して、zipファイルを解凍します。

CMakeのインストール

alt

ソースからコンパイルして導入する場合、CMakeが必要になるので、上のCMake公式ページのリンクから、Latest Release(3.9.4)にある「cmake-3.9.4-winXX-x64.msi」をクリックします。XXは使っているOSのビット数に読み替えてください。自分の場合は画像の赤丸で囲んだものをインストールしました。
インストールが完了したら実行し、指示に従って進めていけばOKです。
途中で、「By default CMake does not add its directory to the system PATH.」の説明がでるので、その際には環境変数にパスを追加する必要があるので、「Add CMake to the system PATH for all users.」の項目にチェックを入れてください。

OpenCV contribのインストール

opencv_contrib01.png

上のgithubのリンクから、OpenCVのバージョンと同じものをDLします。(今回は3.3.0)
これも解凍をして、先程解凍したopencvのフォルダ直下においてください。

1.CMake

Visual Studio 2017でビルドする為のファイルをCMakeで作成します。

cmake02.png

まず、C:\Program Files\CMake\bin の場所にあるファイル[cmake-gui]を管理者権限で起動します。

cmake03.png

そして、「Where is the source code」と「Where to build the binaries」のフォルダを指定します。「Where is the source code」はopencv-3.3.0を解凍したフォルダ直下の[source]フォルダを、[Where to build the binaries]はopencv-3.3.0を解凍したフォルダ直下の[build]フォルダを指定します。

指定したら、「Configure」のボタンを押します。すると次のような画面が出てきます。

cmake04.png

コンパイラの設定ですが、64bitアプリケーション用としてインストールするので「Visual Studio 15 2017 Win64」を選択し「Finish」をクリックします。32bitアプリケーション用としてインストールしたい場合は、[Visual Studio 15 2017]を選択してください。

cmake05.png

表示される結果の最後にConfiguring doneと表示されていれば大丈夫です。

たくさん表示されているチェックボックスでオプションの選択をします。

cmake06.png

「Search」のテキストボックスにEXTRAと入力し、「OPENCV_EXTRA_MODULES_PATH」のオプションを抽出し、「Value」の部分にopencv_contrib-3.3.0フォルダにある[modules]の絶対パスを当てます。
そして、もう一度「Configure」のボタンを押します。
※opencv_worldというすべてのライブラリファイルを一気にリンクできるファイルは、初期状態では生成される設定になっていません。必要な場合は、BUILD_opencv_worldにチェックを入れてください。

再度、Configuring doneが表示されたら、Generateをクリックします。すると、Generating doneと表示された後、buildフォルダの中にたくさんのビルドするためのファイルが生成されています。

2.Visual Studio 2017 Community

次にVisual Studio 2017 Communityでビルドします。
opencvフォルダのbuildフォルダ直下にある「OpenCV.sln」をVisual Studio2017で開きます。そして、CMakeTargetsの中のINSTALLをスタートアッププロジェクトに設定して、DebugとReleaseについてそれぞれビルドを行えばOKです。

vs2017c04.png

vs2017c05.png

vs2017c06.png

3.プロジェクト作成

今までの行程が完了したら、実際にプロジェクトを作成することができますので、適当なプロジェクトを作成してみましょう。

vs2017c09.png

作成したら、「デバック」タブを開き、一番下にある「(作成したプロジェクト名)のプロパティ」をクリックし、設定していきます。

vs2017c07.png

プロジェクトのプロパティページが出てくるので、構成プロパティ ↳ C/C++ ↳ 全般 の「追加のインクルードディレクトリ」の部分にopenCVフォルダのbuilt\install\includeの絶対パスを入力してください。

vs2017c08.png

次に、構成プロパティ ↳ リンカー ↳ 全般 の「追加のライブラリディレクトリ」の部分にopenCVフォルダのbuilt\install\x64\vc15\libの絶対パスを入力してください。

これで、プロジェクトの設定が完了します。この設定はプログラム側に記述しても大丈夫です。