目次
概要
Windows 上で OpenCV をビルドする方法について解説します。
ビルドに必要なソフトウェアのインストール
- Visual Studio 2022 をインストールします。
- Download | CMake から Windows 版の CMake をインストールします。
ソースコードのダウンロード
OpenCV のコードをダウンロードする。
- opencv/opencv: Open Source Computer Vision Library にアクセスします。
- 左上のプルダウンメニューから「Tags」を選択し、ビルドするバージョンを選択します。
- 右上の「Code」から「Download Zip」を選択します。
- 解凍したソースコードを適当な場所に配置します。今回は
F:\opencv\opencv-4.7.0
に配置しました。
OpenCV contrib のコードをダウンロードする。
- opencv/opencv_contrib: Repository for OpenCV’s extra modules にアクセスします。
- 左上のプルダウンメニューから「Tags」を選択し、OpenCV のコードをダウンロードする際に選択したバージョンを同じバージョンを選択します。
- 右上の「Code」から「Download Zip」を選択します。
- 解凍したソースコードを適当な場所に配置します。今回は
F:\opencv\opencv_contrib-4.7.0
に配置しました。
ビルドディレクトリを作成する
適当な場所にビルドによって生成されるファイルの出力先であるビルドディレクトリを作成します。今回は F:\opencv\4.7.0
を作成しました。
ここまでの作業でのディレクトリ構成
sample
└─opencv
├─opencv-4.7.0: ダウンロードした OpenCV のコード
├─opencv_contrib-4.7.0: ダウンロードした opencv_contrib のコード
│ └─modules
└─4.7.0: ビルドディレクトリ
CMake の設定
- CMake を起動します。
- 「Where is the source code」に OpenCV のソースコードのディレクトリを指定します。(例:
F:\opencv\opencv-4.7.0
) - 「Where to build the binaries」に先程作成したビルドディレクトリを指定します。(例:
F:\opencv\4.7.0
)
- 「Configure」ボタンをクリックします。
- コンパイラの種類を聞かれるので、インストールされている Visual Studio のバージョン及びプラットフォームを選択し、「Finish」をクリックします。プラットフォームは 64bit 向けにビルドする場合、x64、32bit 向けにビルドする場合は Win32 を選択します。
- 完了すると、以下のようにオプション一覧が表示されます。
- 「OPENCV_EXTRA_MODULES_PATH」というオプションを探し、opencv_contrib のソースがあるディレクトリ以下の
modules
ディレクトリのパスを設定します。(例:F:\opencv\opencv_contrib-4.7.0\modules
)
- 「Generate」ボタンをクリックします。
- ビルドディレクトリ以下に「OpenCV.sln」が生成されます。
Visual Studio でビルドする
- 「OpenCV.sln」をクリックし、Visual Studio を起動します。
- 「ALL_BUILD / Release / x64」と「INSTALL / Release / x64」にチェックを入れ、「ビルド」をクリックします。
- ビルドには時間がかかります。ビルドが完了すると、ビルドディレクトリ以下に
install
というディレクトリが作成され、そこにビルドされたものが配置されます。(例:F:\opencv\4.7.0\install
)
install
├─bin
├─etc
├─include
└─x64
└─vc16
├─bin
└─lib
環境変数を設定する
※ ディレクトリパスは、適宜読み替えてください。
- 環境変数
PATH
にF:\opencv\4.7.0\install\x64\vc16\bin
を追加します。
- 環境変数
OPENCV_DIR
を新規作成し、F:\opencv\4.7.0\install
を設定します。
サンプルプログラムの作成
以下のディレクトリ構成で CMakeLists.txt
及び main.cpp
を作成します。
sample
├─CMakeLists.txt
└─src
└─main.cpp
CMakeLists.txt
cmake_minimum_required(VERSION 3.0.0)
project(sample)
add_executable(${PROJECT_NAME} src/main.cpp)
find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
target_link_libraries(${PROJECT_NAME} ${OpenCV_LIBS})
main.cpp
#include <iostream>
#include <opencv2/opencv.hpp>
int main() { std::cout << "OpenCV version : " << CV_VERSION << std::endl; }
CMake GUI で sample
ディレクトリを選択します。
ビルドディレクトリ以下の sample.sln
をクリックし、Visual Studio を起動します。
- 「ソリューションエクスプローラー」より「sample」を右クリックし、「スタートアッププロジェクトに設定」を選択します。
- 「Release」「x64」を選択します。
- 「ローカル Windows デバッガー」をクリックすると、ビルドを行い、プログラムが実行されます。
- 実行に成功すると、コンソールに OpenCV のバージョンが出力されます。
コメント