こんにちは、現役エンジニアの inno_tech です。
画像処理ライブラリOpenCVを使った開発をしたいとお悩みでしょうか?
まずは、OpenCVをWindowsにインストール方法から説明します。
OpenCVのダウンロード
github からダウンロードします。下記のリンクにアクセスしてください。
今回はOpenCV 4.2.0をダウンロードすることにします。
https://github.com/opencv/opencv/releases
色々ファイルがありますが、下記の.exeファイルがバイナリパッケージのインストーラーです。
この中にはコンパイル済みのDLL, libファイルとソースファイルが含まれています。(バイナリパッケージ と呼ばれます。)
ただし、64bit用のバイナリしか含まれていません。
使用するコンパイラのバージョンが、VC14 or VC15 且つ、x64向け用プロジェクトを開発する場合、このバイナリパッケージをダウンロードしてください。
本記事ではバイナリパッケージを利用する方法、ソースコードからビルドする方法の両方を説明します。
バイナリパッケージを利用したOpenCVインストール方法
バイナリパッケージのダウンロード完了後の手順を説明していきます。
バイナリパッケージの解凍
バイナリパッケージ(.exe) を実行すると、ファイルの解凍先を選択するダイアログが出るので、好みの場所に解凍してください。
解凍先の直下にopencvディレクトリが生成されます。
環境変数を追加
環境変数PATHに、OpenCVのDLL格納先 を追加します。これはプロジェクトからDLLを参照するために必要な設定です。
コントロールパネル > システムとセキュリティ > システム > システムの詳細設定 から、環境変数の設定画面を開きます。
ユーザー環境変数、もしくはシステム環境変数の「Path」にDLLが存在するディレクトリを追記します。
その後、環境変数を反映するため、Visual Studioを再起動してください。
バイナリパッケージを利用する方は、次の「ソースからビルドする方法」はスキップしてください。
ソースからビルドする方法(OpenCV32bit DLLのビルド方法)
事前準備:CMakeをインストール
CMakeというビルド用のソフトウェアが必要なので、インストールします。
CMakeのダウンロード先はこちら。
CMake ダウンロード先では、「Binary distributions」から自分の環境に合うインストーラーをダウンロードします。
今回は Windows10 x64bit環境 なので「cmake-3.16.2-win64-x64.msi」をダウンロードします。
ダウンロード完了後、インストーラーを実行します。
CMake インストールの流れ
インストーラーの起動後、Next をクリック。
次に、ライセンスに同意するにチェックを付け、Nextをクリック。
環境パスの追加オプションが開くので、2番目の全ユーザーへの追加を選択し、Next をクリック。
(デフォルトは1番目のPATHを追加しない)
インストール先のフォルダを選択し、Nextをクリック。
確認画面が表示されるので、問題なければインストールを開始します。
1分ほどかかります。
以上でCMakeのインストールは完了です。
CMakeでソリューションファイルを生成
続いて、CMakeを用いて OpenCVビルド用のソリューションファイル(.sln) を作成します。
その後、.slnファイルを開き、通常のVC++プログラムと同様にビルドすれば、OpenCVのDLLが生成されます。
今回は、32bit用のOpenCV DLLをビルドする場合を例に手順を説明します。
まずは、CMake(cmake-gui) を起動してください。
このような画面が表示されるので、下表のように設定してください。
項目 | 設定内容 |
Where is the source code | CMakeLists.txtが存在するディレクトリを指定します。 opencvのフォルダの直下にCMakeLists.txt があるはずなので、そこを設定します。 |
Where to build the binaries | 出力フォルダを指定します。 自由に設定してください。 |
設定完了後、「Configure」をクリックすると、下の画像のウィンドウが開きます。
下表のように設定してください。
項目 | 設定内容 |
Specify the generator for this project | ビルド環境を選択します。今回はVisual Studio 2019を使用しますがお使いの環境に合わせてください。 |
Optional platform for generator | ビルドターゲットを選択します。 今回は32bit用のOpenCV DLLを作成するため、「Win32」を選択します。 |
設定完了後、Finishを押下すると、CMakeの展開が始まるので数分待ちます。
処理が終わると、このような画面になります。
リストボックス内にあるチェックボックスは、ビルドオプションなので必要に応じて変更していきます。
今回は、以下を変更してください。
設定終了後、「Generate」ボタンをクリックします。
再び、CMakeの処理が始まるので1分ほど待ちます。
全ての処理が終わると、「Where to build the binaries」に指定したフォルダ直下に.slnファイルが生成されています。
ソリューションファイルのビルド
Visual Studio で .slnファイルを開きます。
CMakeTargets配下にある 「INSTALL」プロジェクトをビルドします。
ビルドが完了後、[ソリューションディレクトリ]/install配下 に libやbinのフォルダ が生成されます。
この中に、 OpenCVの .libやDLL があります。
以上が、OpenCVのソースコードからビルドする方法です。
バイナリパッケージと同様、dllが格納されているディレクトリを環境変数PATHに追加すれば、他のプロジェクトからx32bit用DLLを参照できるようになります。
最後に
今回は、OpenCVのDLLファイルの準備の手順を説明しました。
次回は、これらのDLLファイルを使ってVisual Studioのプロジェクトの設定する方法を説明します。
今回のおすすめ書籍はこちら。
上級者向けはこちら
手堅くスキルアップを目指したい方はこちら。
いかがだったでしょうか。
ほかにも役立つ情報が他のページにもあるかもしれません。
ご覧になるかはあなた次第です!
この記事がイイねと思ったら、Twitterフォロー か にほんブログ村のどちらかしてくれたら嬉しいよ!
コメント / ご要望