2.4.11に関してはここ
最初にraspberry piを更新しておく
sudo rpi-update
sudo apt-get update
sudo apt-get upgrade
ホストPCでOpenCV 3.1.0 と contrib 3.1.0 のソースをダウンロードし、展開して外付けHDDにコピー
USB HDDをRaspberry Pi 2に接続し、3.1.0 のフォルダーにbuildpiを作成し、cd buildpi
OpenCVのコンパイルに必要なファイルは、2.4.11のときにインストールしているが、今回はtesseract-ocrのために
sudo apt-get -y install libtesseract-dev libleptonica-dev
を実行
コンフィグレーションを設定
cmake -DCMAKE_BUILD_TYPE=RELEASE -DENABLE_VFPV3=ON -DENABLE_NEON=ON -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-3.1.0/modules -DBUILD_DOCS=OFF -DBUILD_TESTS=off -DBUILD_PERF_TESTS=OFF -DBUILD_TBB=ON -DBUILD_opencv_apps=OFF -DWITH_OPENCL=off -DWITH_1394=off -DWITH_CUDA=OFF -DWITH_CUFFT=OFF -DWITH_GIGEAPI=OFF -DWITH_OPENCLAMDBLAS=off -DWITH_OPENCLAMDFFT=off -DWITH_TBB=ON ..
time make -j4でビルドを行う
real 60m20.341s
user 203m50.500s
sys 7m10.870s
最後に
tesseract-ocrの英語辞書をダウンロードし、展開して内容をコピー
sudo cp -r tesseract-ocr/* /usr/share/tesseract-ocr/
以上
以下は、コンフィグレーション情報
General configuration for OpenCV 3.1.0 =====================================
Version control: unknown
Platform:
Host: Linux 4.1.15-v7+ armv7l
CMake: 2.8.9
CMake generator: Unix Makefiles
CMake build tool: /usr/bin/make
Configuration: RELEASE
C/C++:
Built as dynamic libs?: YES
C++ Compiler: /usr/bin/c++ (ver 4.6.3)
C++ flags (Release): -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -fdiagnostics-show-option -pthread -fomit-frame-pointer -mfpu=neon -ffunction-sections -fvisibility=hidden -fvisibility-inlines-hidden -O3 -DNDEBUG -DNDEBUG
C++ flags (Debug): -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -fdiagnostics-show-option -pthread -fomit-frame-pointer -mfpu=neon -ffunction-sections -fvisibility=hidden -fvisibility-inlines-hidden -g -O0 -DDEBUG -D_DEBUG
C Compiler: /usr/bin/gcc
C flags (Release): -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -fdiagnostics-show-option -pthread -fomit-frame-pointer -mfpu=neon -ffunction-sections -fvisibility=hidden -O3 -DNDEBUG -DNDEBUG
C flags (Debug): -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -fdiagnostics-show-option -pthread -fomit-frame-pointer -mfpu=neon -ffunction-sections -fvisibility=hidden -g -O0 -DDEBUG -D_DEBUG
Linker flags (Release):
Linker flags (Debug):
Precompiled headers: YES
Extra dependencies: dl m pthread rt
3rdparty dependencies: tbb
OpenCV modules:
To be built: core flann imgproc ml photo reg surface_matching video dnn fuzzy imgcodecs shape videoio highgui objdetect plot superres xobjdetect xphoto bgsegm bioinspired dpm face features2d line_descriptor saliency text calib3d ccalib datasets rgbd stereo structured_light tracking videostab xfeatures2d ximgproc aruco optflow stitching python2
Disabled: world contrib_world
Disabled by dependency: -
Unavailable: cudaarithm cudabgsegm cudacodec cudafeatures2d cudafilters cudaimgproc cudalegacy cudaobjdetect cudaoptflow cudastereo cudawarping cudev java python3 ts viz cvv hdf matlab sfm
GUI:
QT: NO
GTK+ 2.x: YES (ver 2.24.10)
GThread : YES (ver 2.40.0)
GtkGlExt: NO
OpenGL support: NO
VTK support: NO
Media I/O:
ZLib: /usr/lib/arm-linux-gnueabihf/libz.so (ver 1.2.7)
JPEG: libjpeg (ver 90)
WEBP: build (ver 0.3.1)
PNG: /usr/lib/arm-linux-gnueabihf/libpng.so (ver 1.2.49)
TIFF: build (ver 42 - 4.0.2)
JPEG 2000: build (ver 1.900.1)
OpenEXR: build (ver 1.7.1)
GDAL: NO
Video I/O:
DC1394 1.x: NO
DC1394 2.x: NO
FFMPEG: NO
codec: NO
format: NO
util: NO
swscale: NO
resample: NO
gentoo-style: NO
GStreamer: NO
OpenNI: NO
OpenNI PrimeSensor Modules: NO
OpenNI2: NO
PvAPI: NO
GigEVisionSDK: NO
UniCap: NO
UniCap ucil: NO
V4L/V4L2: NO/YES
XIMEA: NO
Xine: NO
gPhoto2: NO
Parallel framework: TBB (ver 4.3 interface 8002)
Other third-party libraries:
Use IPP: NO
Use VA: NO
Use Intel VA-API/OpenCL: NO
Use Eigen: YES (ver 3.1.0)
Use Cuda: NO
Use OpenCL: NO
Use custom HAL: NO
Python 2:
Interpreter: /usr/bin/python2.7 (ver 2.7.3)
Libraries: /usr/lib/libpython2.7.so (ver 2.7.3)
numpy: /usr/lib/pymodules/python2.7/numpy/core/include (ver 1.6.2)
packages path: lib/python2.7/dist-packages
Python 3:
Interpreter: NO
Python (for build): /usr/bin/python2.7
Java:
ant: NO
JNI: NO
Java wrappers: NO
Java tests: NO
Matlab: Matlab not found or implicitly disabled
Tests and samples:
Tests: NO
Performance tests: NO
C/C++ Examples: NO
OpenCV、機械学習、はやりのDeep learningの環境構築の方法、サンプルの動かし方、APIの使い方、Tipsなどをすぐに忘れてしまうので、備忘録として記録している。記憶がなくなるスピードが、早いのでメモしておかないと再現できなくなる確率が高まっている。 最近、再度HDDを飛ばしてしまい、過去の自分のページに再度助けられた。 また、DNNモジュールを触る機会が増えているので、C++からPyhonへと鞍替え中。 内容を気にいっていただければ、twitterで紹介願います。
2015年12月28日月曜日
2015年12月24日木曜日
OpenCV Advent Calendar 2015に投稿しました。 その2
タイトル:文字領域検出用のERFilterの使い方です。
Qiitaでは、記事投稿が予約できますので
実は投稿に失敗しており、朝気づいてやり直しました。
検出結果のサンプルです。
背景が単純なので、簡単に検出できるかと思いましたが縦エッジに影響されやすい気がします。
2015年12月22日火曜日
Ubuntu 14.04上でOpenCV 3.1.0 + Contrib 3.1をビルドしてみた
数日前にOpenCV 3.0 + Contrib masterの組み合わせをビルドしたところだったが
翌日早速3.1がリリースされたので、リリースされたばかりのOpenCV 3.1.0 + Contrib 3.1をビルドしてみた。
結果的には問題のあったContribのモジュールも無事ビルドが通るようになった。
SIFT,DNN,TEXTは動作を確認。これから、他のモジュールや3.0との差分も随時調べていく
また、3.0では、TBBがリンクされていなかったが、3.1では、TBBが通るようになった。
OpenCV 3.1.0がリリースされたのでWindows版をダウンロードしてみた
22日になり、公式が正式にアナウンスをしました。
せっかくWindows用にソースからビルドしたが、公式からビルド済みのものがリリースされました。
28日追記
ビルド済みのコードは含まれていませんので、自前でビルドしないといけません
早速ダウンロードし、c:\に展開しました。
今回は、32bit向けライブラリがなく、64bitのみになっています。
また、対象の開発環境もVisual Studio 2015と2013だけになり、それ以前のVisual Studioは、自力でソースから cmakeでプロジェクトファイルを作成し、ビルドしないといけません。
23日追記
contribの内容は含まれていませんので試したい場合は、自力でビルドを行う必要があります。
その場合は、Windows10 上でOpenCV3.1.0のソースをビルドしてみた を参考にしてください
以上
せっかくWindows用にソースからビルドしたが、公式から
28日追記
ビルド済みのコードは含まれていませんので、自前でビルドしないといけません
早速ダウンロードし、c:\に展開しました。
今回は、32bit向けライブラリがなく、64bitのみになっています。
また、対象の開発環境もVisual Studio 2015と2013だけになり、それ以前のVisual Studioは、
23日追記
contribの内容は含まれていませんので試したい場合は、自力でビルドを行う必要があります。
その場合は、Windows10 上でOpenCV3.1.0のソースをビルドしてみた を参考にしてください
以上
2015年12月21日月曜日
Windows10 上でOpenCV3.1.0のソースをビルドしてみた
OpenCV 3.1.0のソースが公開されたので、早速ダウンロードしてみてビルドしてみた。
zipをc:\に展開し、フォルダーの名前を C:\opencv31\sourcesに変更
C:\opencv31\buildを作成し、cmake-guiを起動
Configureのボタンを押し、画面のターゲットを選択する
Option選択のあと、Generateボタンを押すとbuildの下にVisual Stuidio 2015用のプロジェクトが作成される。
Visual Stuidioを起動し、ソリューションエクスプローラウィンドウのinstallを選択し、マウスの右ボタンでビルドを選択
10数分後にビルドが無事終了(時間は選択したオプションにより変動する)
Windows用のdll libなどが上記のフォルダーに作成される
コントロールパネルのシステムの環境変数のpathに上記binを追加する
一旦ログアウトし、再度ログインすれば、pathが通っている。
3.1用のpropertyファイルを作成し、サンプルプロジェクトを作成する。
簡単に、Configurationのみ表示させてみた。
以上
OpenCV 3.1.0がリリースされました
22日になり公式からアナウンスがありました
公式の変更点
昨夜見たときはなかった気がしますが、3.1.0のtagが付与されたものが公開されています
ここからダウンロードできます。
Windows 10の64bit上でビルドを終えました。cmakeがあれば、問題なくビルドできます
あとで公開します。
公式の変更点
昨夜見たときはなかった気がしますが、3.1.0のtagが付与されたものが公開されています
ここからダウンロードできます。
Windows 10の64bit上でビルドを終えました。cmakeがあれば、問題なくビルドできます
あとで公開します。
opencv_contrib を久々にビルドしてみた
現在3.1への過渡期かもしれないが、久々にUbuntu 14.04 64bit上で OpenCV3.0と合わせてビルドしてみた
現在以下のモジュールは不具合がありビルドの途中でエラーとなるのでcmakeでoffにしている
-DBUILD_opencv_apps=OFF
-DBUILD_opencv_tracking=off
-DBUILD_opencv_xfeatures2d=off
-DBUILD_opencv_aruco=off
-DBUILD_opencv_ximgproc=off
-DBUILD_opencv_xphoto=off
あとdnnが動作したらしいのでこちらを試してみた。
importerのバグは治ったようで、実行すると下記のような結果が帰ってくる。無事動作しているようだ。
Attempting to upgrade input file specified using deprecated V1LayerParameter: bvlc_googlenet.caffemodel
Successfully upgraded file specified using deprecated V1LayerParameter
Net Outputs(1):
prob
Best class: #812 'space shuttle'
Probability: 99.9813%
以上
現在以下のモジュールは不具合がありビルドの途中でエラーとなるのでcmakeでoffにしている
-DBUILD_opencv_apps=OFF
-DBUILD_opencv_tracking=off
-DBUILD_opencv_xfeatures2d=off
-DBUILD_opencv_aruco=off
-DBUILD_opencv_ximgproc=off
-DBUILD_opencv_xphoto=off
あとdnnが動作したらしいのでこちらを試してみた。
importerのバグは治ったようで、実行すると下記のような結果が帰ってくる。無事動作しているようだ。
Attempting to upgrade input file specified using deprecated V1LayerParameter: bvlc_googlenet.caffemodel
Successfully upgraded file specified using deprecated V1LayerParameter
Net Outputs(1):
prob
Best class: #812 'space shuttle'
Probability: 99.9813%
以上
2015年12月20日日曜日
OpenCV 3.1が年内にリリースされる予定です。
どのような内容になるかは、ここにドラフトが公開されています
特に今年のGSoCの内容が多数Contribに取り入れられます。
GSoCのほかにも多数の機能追加や改良がcoreのほうに行われます。
また、VS2015 などの開発環境への対応も期待されます。
ただ、残念なことの高速化のHalモジュールは、単一のクラスにすることをあきらめ
各モジュールに分散させるそうです。
OpenCV GSOC 2015の成果はここに紹介されており、一部はすでに提供されつつあります。
ICFの状況を調べてみた
昨日登校したOpenCV Advent Calendar 2015 19日目の記事はここです
記事に書いてから気になりましたので調べてみました。
12/20時点では、opencv_contribのmasterには存在してませんでした
BranchのTag 3.0.0を見てみると残っています。
ファイルが必要な場合、ここからダウンロードすれば大丈夫でしょう。
使い方は、
学習と検出のサンプルがここにあります
以上
記事に書いてから気になりましたので調べてみました。
12/20時点では、opencv_contribのmasterには存在してませんでした
BranchのTag 3.0.0を見てみると残っています。
ファイルが必要な場合、ここからダウンロードすれば大丈夫でしょう。
使い方は、
学習と検出のサンプルがここにあります
以上
2015年12月18日金曜日
OpenCV Advent Calendar 2015に投稿しました。
タイトル:CascadeClassifierのsetImageとrunAtの使い方
です。内容はかなり偏ったものになっています。
Qiitaでは、記事投稿が予約できますのであと、数分で公開されるかと思います。
Markdownではじめて書いたので、見づらいかも知れません。
もしかしたら修正するかも知れません。
です。内容はかなり偏ったものになっています。
Qiitaでは、記事投稿が予約できますのであと、数分で公開されるかと思います。
Markdownではじめて書いたので、見づらいかも知れません。
もしかしたら修正するかも知れません。
登録:
投稿 (Atom)