【C++入門】 <opencv環境設定編> 

# 実行環境
![cap_13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/e5d8f12d-839b-edf5-c996-9e231cb22ece.png)

# Step1 ダウンロード
1. OpenCVのホームページへ移動する。https://opencv.org/
2. 上部の"Release"をクリックする。
![cap_2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/334c7093-669a-5235-4d5f-dd32498ed857.png)
3. 使用するライブラリのバージョンまた実行環境に合わせてダウンロードする。今回は、ライブラリバージョン"4.1.2"と実行環境はWindowsOSを使用する。そのため、"OpenCV-4.1.2"の"Windows"をクリックする。
![cap_1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/24256b69-72c8-aa11-e596-8796af497c48.png)
4. クリック後、ソースのダウンロードが行われる。
![cap_3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/8e888b6d-38d2-3a49-773a-95046918763f.png)
5. ダウンロード完了後、実行ファイルをお好みのディレクトリへ移動する。自分の場合、Cドライブに"LIB/OPENCV/ver_4_1_2/x64"の様なフォルダを作成し、そちらに移動した。
![キャプチャ_31.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/479805e8-3c9d-0247-6779-38c684bc23a3.png)
6. 実行ファイルを実行すると、自分の場合、ソフトウェア"7zip"が入っているため、7zipのGUIが表示され、展開先を明記することにより、"opencv"フォルダが作成された。

![キャプチャ_32.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/c3dab6e4-742b-89ec-d395-ee1e8a86951c.png)
![cap_4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/6d9c1475-54fa-ef3c-c945-41082236d204.png)

# Step2 プロジェクトビルド（Cmake）
1. CMakeでOpenCVプロジェクトをビルドを行うため、CMakeのGUIを起動する。
2. ソースパスとビルドパスを下記の様に明記する。

ソースパス：LIB/OPENCV/ver_4_1_2/x64/opencv/sources
ビルドパス：LIB/OPENCV/ver_4_1_2/x64/opencv/build
![キャプチャ_49.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/ffe53132-cde4-1ba4-9f46-67f9895b68a3.png)
3. パスを明記後、"Configure"をクリックする。
![cap_5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/eea21c55-4fce-78a3-1156-766ae2352f2b.png)
4. Generatorを指定後、"Finish"をクリックする。今回は、"Visual Studio 15 2017 Win64"と指定する。そのため、OpenCVプロジェクトは"x64"環境でで作成される。
![キャプチャ_36.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/ad338c2d-4faa-d8f6-6f60-6994af2ac316.png)
5. Configure処理が問題なく完了すると、下記の様に"Cinfiguring done"と表示される。表示を確認したら、"Generate"をクリックする。
![キャプチャ_51.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/60bc47e4-eb96-8486-a4f5-a2f2a102cd5d.png)
6. Generate処理が問題なく完了すると、下記の様に"Generating done"と表示される。表示を確認したら、"Open Project"をクリックすると、OpenCVプロジェクトがVisualStudio2017で起動される。
![キャプチャ_38.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/a50016d7-1472-b4a3-82f2-03d848c1db9d.png)
![キャプチャ_54.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/6ae61c15-664b-bf39-9055-21c8e2678c1a.png)
# Step3 ライブラリビルド（VisualStudio）
1. プロジェクト起動後、"CMakeTargets"の"ALL_BUILD"をプロジェクトとして選択後、"Build/Build Solution"をクリックする。今回は、"Debug"の"x64"でライブラリをビルドする。"Release"でライブラリをビルドする場合は、"Release"に変更する。

![cap_6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/071c8ac0-3b58-3646-e589-157cd0cc104c.png)
![cap_7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/548c12c7-8974-eaba-6076-282a46c388dc.png)
2. ライブラリビルドが正常に完了すると、"LIB/OPENCV/ver_4_1_2/x64/opencv/build/lib/Debug"にライブラリがビルドされているのが確認できる。
![cap_8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/355558dd-97e2-1ba5-0b13-81106453f82f.png)

# Step4 PC環境設定
1. OpenCVライブラリを使うにあたって、バイナリーフォルダをシステム環境変数の"Path"に追加する必要がある。
2. "Windows10"の場合、コントロールパネルの"システム環境変数の編集"をクリックする。
![cap_9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/cef92bf5-3c19-670c-2618-f21b7e565d4e.png)
3. システムプロパティの"環境変数(N)"をクリックする。
![cap_10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/916175a9-8a73-75f3-6b74-ce2853added2.png)
4. 環境変数の"システム環境変数(S)"の"Path"を選択した状態で、"編集"をクリックする。
![cap_11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/50f0c042-bd49-a1aa-aff7-e81e59d56460.png)
5. 下記のパスを新規で追加する。

・LIB/OPENCV/ver_4_1_2/x64/opencv/build/bin
・LIB/OPENCV/ver_4_1_2/x64/opencv/build/bin/Debug

![キャプチャ_62.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/7630c4af-e54a-b7cc-c4c2-1a7b72677770.png)
6. パスを有効にするため、PCを再起動する。

# Step5 例

## プロジェクト構成
![cap_12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/677578c6-435a-d0ae-b18f-93c399ab570a.png)

## コード内容例
![キャプチャ_64.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/8d90da34-be88-136b-c62e-f4838ac18bf0.png)

## プロジェクトプロパティ
インクルードディレクトリ：LIB/OPENCV/ver_4_1_2/x64/opencv/build/include
ライブラリディレクトリ：LIB/OPENCV/ver_4_1_2/x64/opencv/build/lib/Debug
![キャプチャ_67.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/725b0bd6-5455-413f-4ff4-b10e8be6f184.png)

## 出力結果例

![キャプチャ_45.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574171/c59a6cac-bf96-1adb-4164-e551e2917602.png)