文書の表示以前のリビジョンバックリンク文書の先頭へ この文書は読取専用です。文書のソースを閲覧することは可能ですが、変更はできません。もし変更したい場合は管理者に連絡してください。 {{indexmenu_n>1}} ====== OpenCVでDNN ====== OpenCVのVersion3.3以降から,標準でDeep Learning用途のライブラリ群(DNN)が追加されました. このページではそれらの使い方やサンプルの紹介をします. * 動作環境:MacOS(10.13以降) * OpenCV 3.4.1とOpenCV 3.4.2ではobject_detection.cpp のexampleに変更があり,homebrewの3.4.2ではyoloやssdがちゃんと動作しなくなっていました.そこで,最新のソースコードにて再度object_detection.cpp を動かしてみたところ,ちゃんとした結果が得られました.動作変だなったおもったら,やっぱ自分でコンパイルが一番なようです. * 令和元年7月26日追記:4.1.0にて同様に動作確認済み <WRAP center round tip 60%> Openframeworksのaddonとしてdnnサンプルを利用できるようにしました。馬場のgithubからご参照ください。 * https://github.com/TetsuakiBaba </WRAP> ===== Install ===== インストールには2種類あります. - brewをつかう(授業でやるくらいならこれで十分) - ソースコードをコンパイル(OpenCV楽しむならこちらのほうがあとあとよろしい) ==== brewをつかう ==== [[https://brew.sh/index_ja|Homebrew]]からまずはhomebrewのインストールを行ってください. その後ターミナルで, $ brew install opencv でbrew上での最新バージョンのopencvがインストールされます. ==== ソースコードからコンパイル ==== brewのバージョンによらず,最新版を試したいときに有効です.cmakeを使うので,上記同様にbrewのインストールを行っておいてください.[[https://opencv.org/releases.html|opencv.org]]から最新版のopencvのソースコードをダウンロードします.現時点(平成30年9月11日)では3.4.3が最新版です.ダウンロード,解凍が終わったらターミナルを開いて展開したディレクトリに移動します. $ mkdir build $ cd build $ cmake .. $ make $ make install 以上の手順で,/usr/local/optに opencvライブラリ一式がインストールされます.cmakeやmake時にエラーがでたら適時brewでパッケージを追加してください.なお,cmakeの際にオプションを指定することができます. <code> -DOPENCV_EXTRA_MODULES_PATH=<opencv_contribへのパス> // contribを一緒にビルドするオプション -DBUILD_opencv_world=ON // スタティックリンク(全部まとまったライブラリ)をビルドするオプション -DBUILD_EXAMPLES=ON // Exampleのビルド </code> あたりは,抑えておくと良いでしょう.opencvのcmakeビルドのオプションについては,下記リンクに詳しく載っています.また,CMakefile.txtを直接参照してもよいでしょう. * https://www.atmarkit.co.jp/ait/articles/1704/10/news134.html#cmakeoption cmake の際に,-DBUILD_EXAMPLES オプションをONにしておくと,sampleもビルドしてくれます.opencv.version/CmakeList.txtを直接編集してもOKです. <code .txt CMakeList.txt> # OpenCV build components の欄に下記があるので,OFFになっている箇所をONに変えます OCV_OPTION(BUILD_EXAMPLES "Build all examples" ON ) </code> cmakeオプションでsampleをビルドした場合は,opencv-version/build/bin 以下にexample_* という名前で実行ファイルが生成されています. cmakeで上記のビルドオプションをONにしなかった場合は,一旦make install した後,sampleをビルドする必要があります. $ cd ../samples $ mkdir build $ cd build $ cmake .. $ make 以上で,opencv-3.4.3/samples/build 以下に dnn というディレクトリの中に実行可能なdnnのファイルが確認できます. 生成された実行ファイル一覧は下記の通り. <code> example_dnn_classification example_dnn_object_detection example_dnn_segmentation example_dnn_colorization example_dnn_openpose example_dnn_text_detection </code> ===== modelデータの一括ダウンロード ===== 実行にあたり,事前に必要なmodelデータを一括ダウンロードしておくとよいです(容量に余裕があれば). $ wget https://raw.githubusercontent.com/opencv/opencv_extra/master/testdata/dnn/download_models.py $ python download_models.py もしくは下記gitにモデル一覧が載っているので,こちらから個別にdownloadしてもよいでしょう. * https://github.com/opencv/opencv_extra/tree/master/testdata/dnn /home/users/2/lolipop.jp-4404d470cd64c603/web/ws/data/pages/opencv_dnn/環境構築/install.txt 最終更新: 2019/07/30 09:08by baba