tukuyo's blog

へっぽこまん

スポンサーリンク

OpenCV環境構築!!! for Windows, Visual Studio 2017

はじめに

 何かコンピュータで画像をいじろうとしたときOpenCVというオープンソースのライブラリがある。
OpenCV を入れる事で画像処理・画像解析が簡単に行える。今流行りの機械学習の機能も持っていたりする。画像を処理するなどの機能を持った アプリ・ソフトは、ほとんどOpenCVが使われているのではないだろうか。

使われているであろう代表的な例をあげると Snowであるとかゾンビブースなどでしょうか

そこで今回ややこしい環境構築の手順を書く。 ソースからビルドする方法などがありますが、
今回はビルドなしでインストールしていきます。 Contlibの導入方法も今回はしませんがいずれ書こうと思います。

環境

今回OpenCV構築する環境です。

OpenCVとVisualStudioの対応について
今回使用する3.4.3は,VisualStudio 2015 or 2017にしか対応していません。
使用するバージョンによってVisualStudioとの対応を調べてからダウンロードインストールしてください。

OpenCV ビルド済をダウンロード

こちらのサイトからwin packという項目からexeファイルをダウンロードします opencv.org 4.0.0版がありますがα版なので今回はスルーして3.4.3のwin packをダウンロードします。 f:id:tukuyoinfo:20180929012223p:plain

ダウンロードしたexeファイルを展開します。 f:id:tukuyoinfo:20180929013416p:plain ...を押してCドライブ直下を選択します。Extractを押して展開を開始します。 f:id:tukuyoinfo:20180929013413p:plain すると、Cドライブ直下にopencvというファイルができるので、これをわかりやすいようにopencv3.4.3などにします。

以上でOpenCVを展開できたので ここにパスを通します。

C:¥opencv3.4.3¥build¥x64¥vc15¥bin;

ここでvc15の方にパスを通しているのですがこのVC15の所がVisualStudioのバージョンになります。
2017を使っているときはVC15
2015を使っているときはVC14
の方にパスを通してください。

以上でOpenCVの設定は完了です。

VisualStudioの方の設定を行う

画像赤枠の部分をRelease x64にし f:id:tukuyoinfo:20181004230529p:plain

ソリューションエクスプローラから
プロジェクト名を右クリック >> プロパティ >> C/C++を選び
追加のインクルードディレクトリにダウンロード・展開した
Cドライブ直下のOpenCVの build のincludeディレクトリを指定してあげます。 f:id:tukuyoinfo:20180930213457p:plain

次に、
リンカ >> 全般 >> 追加のライブラリディレクトリに
Cドライブ直下のOpenCVの build のx64のvc15のlibディレクトリを指定してあげます。

f:id:tukuyoinfo:20180930213452p:plain

また、リンカ >> 入力 >> 追加の依存ファイルに
Cドライブ直下のOpenCVの build のx64のvc15のlibディレクトリの中にあるopencv_world343.libを先頭に追記してあげます。 f:id:tukuyoinfo:20180930213455p:plain

以上で設定が終わりました。

実行

以下のサンプルコードを作成したプロジェクトにソースファイルを追加しビルドしてみてください。

#include <opencv2/opencv.hpp>

int main(int argc, char *argv[])
{
    cv::Mat img = cv::Mat::zeros(500, 500, CV_8UC3);

    // Red,太さ3,4近傍連結
    line(img, cv::Point(100, 100), cv::Point(400, 105), cv::Scalar(0, 0, 200), 3, 4);
    // Green,太さ5,8近傍連結
    line(img, cv::Point(100, 200), cv::Point(400, 205), cv::Scalar(0, 200, 0), 5, 8);
    // Blue,太さ10,アンチエイリアス
    line(img, cv::Point(100, 300), cv::Point(400, 305), cv::Scalar(200, 0, 0), 10, CV_AA);

    cv::namedWindow("drawing", CV_WINDOW_AUTOSIZE | CV_WINDOW_FREERATIO);
    cv::imshow("drawing", img);
    cv::waitKey(0);
}

エラーが出なければ設定完了です。 エラーが出た場合、何かしらのミスをしている可能性があります。 もう一度確認してください。

終わりに

今回は、OpenCVの環境構築とVisualStudioのセットアップを行なった。 今回の説明ではリリースでのみ設定を施したが デバッグについてもファイル名やディレクトリ名が少し変わるだけで設定する箇所は同じである。 時間が空いたら追記したいと思う。

スポンサーリンク