http://physics-station.blogspot.jp/2013/03/opencv-visual-studio.html
の解説です。最終更新:11月19日
OpenCVは非常に強力な画像処理ライブラリであり、一般的な画像処理はこのライブラリをつかえばほぼ実現できます。
いずれのライブラリにも言えることですが、導入が面倒であったり、日本語の解説サイトが少ない又は古いということがよくあります。OpenCVも導入編を解説したサイトの多くが、CMakeを使っていたり、インクルードファイルの設定が面倒だったりと、初心者にとっては辛いサイトが多い気がしていました。
なので、OpenCVの初心者でも間違いなく一発で導入できることを目標に、上の「OpenCV を Visual Studio で使う方法」を書きました(が、これでも難しい人もいるでしょう)。ここでは簡略化のために説明しきれなかった情報の補足をします。
OpenCVは執筆段階のver2.4.7で4つのプラットフォームに対応しています。また、言語もC、C++、Phytonなどに対応しています。ここでは、VC++を使う観点から、全てのコードにおいてC++のコードを使います。OpenCVでは、「cv」+大文字から始まるCの関数は使わず、名前空間cvと小文字から始まるC++の関数を使います。
opencv.orgで配布されているOpenCVのライブラリには、VC++ですぐに使えるダイナミックリンクライブラリ「.dll」が含まれています。以前はCMakeなど自分で「.dll」を作成しなければなりませんでしたが、今はその必要はありません。ただし、OpenNIやICCを使った「.dll」を作成するときなどは、CMakeで作成する方法は有効です。
2.ライブラリの展開
ライブラリの展開場所ですが、C:\以外でも構いません。この後の設定の内容を必要に応じて変えれば問題ありません。3.静的リンクライブラリの設定
静的リンクライブラリの設定は、pragmaというプリプロセッサ命令で解決します。VCに直接指定することもできますし、毎回pragmaを書く方法もありますが、pragmaが書かれたファイルを作成し、そのファイルを使いまわすことが、最も簡単で説明しやすい方法だと思っています。ここで、ファイル名の最後の方にある「247」は、opencvのバージョンによって違うので、バージョンが上がるたびに(筆者かあなたが)書き換える必要があります。バージョンによって梱包されている.libの名前が違うことがあるので、もし動かない場合はバージョン2.4.7を入れてみてください。
4.動的リンクライブラリの設定
動的リンクライブラリ(ダイナミックリンクライブラリ)はWindowsにPathを通す必要があります。VS2008 32bitの場合
C:\opencv\build\x86\vc9\bin
VS2008 64bit の場合
C:\opencv\build\x64\vc10\bin
VS2010 or VS2012 32bit の場合
C:\opencv\build\x86\vc10\bin
VS2010 or VS2012 64bit の場合
C:\opencv\build\x64\vc10\bin
バージョン2.4.7ではVS2010とVS2012に対応しています。VS2008には対応しなくなったようです。
5.VisualStudioの設定
VisualStudioの設定については、いくつかの流儀があるように思います。Userファイルに設定する方法は、表からは見えない場所に各種設定をしてしまうため、再インストールしたときなどに行方不明になる可能性大です(というわけで、筆者はこの方法は使っていません)。プロジェクトを作るときに(面倒だけど)毎回能動的に設定する方法で記述しています。ここまで設定してきたインクルードファイル、静的リンクライブラリ(ライブラリ)をVSに設定することになります。動的リンクライブラリはWindowsに設定したのでVSに設定する必要はありません。また、VSを起動した状態で動的リンクライブラリを設定したときは、VSを再起動する必要があります。
6.サンプルプログラムの作成
ここまでの作業が問題ないかを確認するための大事な作業です。プログラミングの業界ではおなじみのHello World!を画像上に描写しそれを表示するプログラムにしました。解説は以上です。
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。