第4回 初めてのOpenCV開発 ― Visual Studio/CMake/NuGetでプロジェクト作成【OpenCV 3.0/3.1】:OpenCV入門【3.0対応】(2/3 ページ)
OpenCVを使ったアプリケーションのプロジェクト作成方法として、「Visual Studio」「CMake」「NuGet」の3つの方法を解説する。
3. CMakeによるプロジェクト作成
ここではCMakeを用いてVisual Studioのプロジェクトファイルを簡単に生成する方法について紹介します。そのため、事前に前回の記事を参考にして、CMakeをインストールしておく必要があります。コマンドプロンプトで実行したい場合には環境変数の設定も行っておいてください。
3.1 CMake設定ファイル作成
CMakeを使ってプロジェクト作成を行うためには、CMake設定ファイル(CMakeLists.txt)を用意しておく必要があります。以下に設定ファイルのサンプルを記載します。
# CMakeの最低バージョンを記述
cmake_minimum_required(VERSION 2.8)
# ソリューション名を指定
project(SampleSolution)
# 実行ファイル名とソース指定
add_executable(SampleProject main.cpp)
# OpenCVインストールパスを指定
set(OpenCV_DIR "C:/dev/opencv-3.1.0/build/install")
# OpenCVのパッケージを探す
find_package(OpenCV REQUIRED)
# OpenCVが見つかった場合のみ設定を行う
if(OpenCV_FOUND)
# インクルードパスを指定
include_directories(${OpenCV_INCLUDE_DIRS})
# リンクするライブラリ指定
target_link_libraries(SampleProject ${OpenCV_LIBS})
endif(OpenCV_FOUND)
上記の設定ファイルにある各設定の意味を、次の表で説明します。必要に応じてご自身の環境に応じてカスタマイズしてください。
設定 | 内容 |
---|---|
project(solutionName) | ソリューション名を指定。上記の例では「SampleSolution」としている |
add_executable(projectName sourceFileName) | プロジェクト名とソースファイルを指定。上記の例ではプロジェクト名を「SampleProject」、ソースファイルを「main.cpp」としている |
set(OpenCV_DIR OpenCV_Path) | OpenCVをインストールしたパスの環境変数(OpenCV_DIR)を設定。上記の例では「C:/dev/opencv-3.1.0/build/install」を指定 |
CMake設定ファイルにおける各設定の意味 |
また、ここでは作成したCMakeLists.txtファイルと同一階層に「5.1 サンプルコード」にあるmain.cppファイルを作成しておきます。
3.2 プロジェクトファイル生成(GUI)
まず、前回の記事でインストールしたcmake-gui.exeを起動します。その後、以下の手順を踏むことでOpenCVを使ったアプリケーションのプロジェクトを生成できます。
これらの一連の作業を行うと、図19の(2)で指定したディレクトリ内にソリューションファイルが生成されます。
3.3 プロジェクトファイル生成(CUI)
「3.2 プロジェクトファイル生成(GUI)」ではGUIを用いてプロジェクトファイル生成しましたが、生成するたびにGUI操作が発生してしまいます。そのため、これらの操作を自動化するためにCUIで行いたい場合もあると思います。3.3ではコマンドプロンプトからCMakeを使ってプロジェクトファイルを生成する方法について解説します。
コマンドプロンプトからCMakeを使ってプロジェクトファイルを生成する手順は以下の通りです。
- コマンドプロンプトを開き、ソースコードのあるディレクトリに移動する。
- 以下のバッチファイルを作成して、ソースコードのあるディレクトリに配置し、バッチファイルを実行する。
また、以下のバッチファイルはVisual Studio 2013向けになっていますが、Visual Studio 2015で使いたい場合は、以下のバッチファイルで「Visual Studio 12」となっているところを「Visual Studio 14」に書き換える必要があります。
:: カレントパスをSOURCE_DIRにセット
set SOURCE_DIR=%~dp0
:: buildディレクトリをSOURCE_DIRにセット
set BUILD_DIR=%SOURCE_DIR%\build
:: ビルド構成(コンパイラー、アーキテクチャ)を指定
set GENERATOR_NAME=Visual Studio 12 Win64
mkdir build
cd build
:: CMakeによるプロジェクト生成
cmake.exe ^
-G"%GENERATOR_NAME%" ^
--build "%BUILD_DIR%" ^
-D CMAKE_CONFIGURATION_TYPES="Debug;Release" ^
%SOURCE_DIR%
これらの一連の作業を行うと、buildディレクトリ内にソリューションファイルが生成されます。
Copyright© Digital Advantage Corp. All Rights Reserved.