最新版のドキュメントはここ
OpenCV 3.0.0では、新たにdatasets moduleが作られ各種データセットを読み込み評価できるようになっている
計画では、
・基本 データの読み込み
・次段階 評価用コードを作成し、アルゴリズムのベンチマークができるようにする
・最終 各タスクの解決ができる最新技術を実装
データセット
ドキュメントでは各データセットへのリンクがはられている
Action Recognition
HMDB: A Large Human Motion Database [1]
Sports-1M Dataset
Face Recognition
Adience
Labeled Faces in the Wild [1]
Gesture Recognition
ChaLearn Looking at People
Sheffield Kinect Gesture Dataset
Human Pose Estimation
HumanEva Dataset
PARSE Dataset
Image Registration
Affine Covariant Regions Datasets
Robot Data Set
Image Segmentation
The Berkeley Segmentation Dataset and Benchmark
Weizmann Segmentation Evaluation Database
Multiview Stereo Matching
EPFL Multi-View Stereo
Stereo – Middlebury Computer Vision
Object Recognition
ImageNet
MNIST [2]
SUN Database
Pedestrian Detection
Caltech Pedestrian Detection Benchmark [2]
SLAM
KITTI Vision Benchmark
TUMindoor Dataset
Text Recognition
The Chars74K Dataset
The Street View Text Dataset [1]
[1] (1, 2, 3) Benchmark implemented
[2] (1, 2) Not used in Vision Challenge
OpenCV、機械学習、はやりのDeep learningの環境構築の方法、サンプルの動かし方、APIの使い方、Tipsなどをすぐに忘れてしまうので、備忘録として記録している。記憶がなくなるスピードが、早いのでメモしておかないと再現できなくなる確率が高まっている。 最近、再度HDDを飛ばしてしまい、過去の自分のページに再度助けられた。 また、DNNモジュールを触る機会が増えているので、C++からPyhonへと鞍替え中。 内容を気にいっていただければ、twitterで紹介願います。
2014年11月28日金曜日
2014年11月26日水曜日
OpenCV TIPS
現在共有ライブラリーで有効なOpenCVのバージョンを表示する
pkg-config --modversion opencv
パイソンでOpenCVをインストールした時に有効なバージョンを表示する
print cv2.__version__OpenCV 3.0.0 betaをubuntuのpythonで使用する (2)
OpenCVを、ubuntu 14.04 64bit上のpythonで使用できるようにする。
OpenCVのバージョンは、 3.0.0betaである。
注意
3.0.0betaには、不具合があり、cv2.soがビルドできる場合とできない場合がある
今回は、ハマりどころの回避策である
準備
2.4.10と同じ
ビルド
2.4.10と異なり、最初のcmakeを行うときに、すべてのパラメータを指定する必要がある
cmake -DCMAKE_BUILD_TYPE=RELEASE -DWITH_OPENCL=off -DWITH_1394=off -DBUILD_TESTS=off -DBUILD_PERF_TESTS=OFF -DBUILD_DOCS=OFF -DWITH_CUDA=OFF -DWITH_CUFFT=OFF -DWITH_GIGEAPI=OFF ..
一旦cmakeによりmake用のファイルを作成後に、ccmake等で修正を行うとうまく行かないことが確認された
問題の箇所は、下記のようにライブラリのpathが設定されなくなる。
-- Python 2:
-- Interpreter: /usr/bin/python2.7 (ver 2.7.6)
-- Libraries: NO
-- numpy: /usr/lib/python2.7/dist-packages/numpy/core/include (ver 1.8.2)
-- packages path: lib/python2.7/dist-packages
このメッセージは、cmakeの時しか表示されないので、あとで確認するには、
version_string.tmpをみればよい
2014年11月25日火曜日
OpenCVをubuntuのpythonで使用する (1)
OpenCVを、ubuntu 14.04 64bit上のpythonで使用できるようにする。
OpenCVのバージョンは、 2.4.10である。
準備
ubuntuには、あらかじめpythonが使用できるようになっているが、OpenCVをビルドする前に
sudo apt-get install python-dev python-numpy
を行う必要がある
ビルド
OpenCVをビルドする時に、ccmakeを使用し
BUILD_opencv_python が onであることを確認
また、
PYTHON_NUMPY_INCLUDE_DIR に
/usr/lib/python2.7/dist-packages/numpy/core/include が
PYTHON_PACKAGES_PATH に
lib/python2.7/dist-packages
が設定されることを確認する
あとはmake終了後に
sudo make installで
pythonのライブラリ /usr/local/lib/python2.7/dist-packages/cv2.so が
インストールされている。
確認
pythonを起動し
import cv2が成功すれば良い
2014年11月24日月曜日
OpenCV 3.0.0betaのサンプルデータ
これまで、sample言語ごとのフォルダーに分散していた画像やビデオが、3.0.0のベータでは、samples\dataのフォルダーにまとめられている。
画像一覧
ステレオ画像のtsukubaが消えている。
画像一覧
ステレオ画像のtsukubaが消えている。
2014年11月20日木曜日
OpenCV 3.0.0 のContribのモジュールが増えている
前のdatasetsモジュールもそうであるが、アルファのリリース時から少しずつ、contribの内容も増えている。
最近ようやく、モジュールの簡単な説明もつくようになった。
説明は、ここで見ることができる
ソースは今も増えており、現時点では、モジュール説明にないlatentsvmも含まれている。
latentsvmは学習ツールを期待したが、残念ながら提供されていない。
VOC2007のカスケードデータは、テスト用に添付されている。
追記
よく見るとモジュール説明のページではなく、cmake時に特定のモジュールをビルドしないようするための説明のページであった。
最近ようやく、モジュールの簡単な説明もつくようになった。
説明は、ここで見ることができる
ソースは今も増えており、現時点では、モジュール説明にないlatentsvmも含まれている。
latentsvmは学習ツールを期待したが、残念ながら提供されていない。
VOC2007のカスケードデータは、テスト用に添付されている。
追記
よく見るとモジュール説明のページではなく、cmake時に特定のモジュールをビルドしないようするための説明のページであった。
OpenCV 3.0.0の新機能を試してみた (2)
昨日からコンテストが開始されたが、コンテストに使用するデータは指定されている。
OpenCVでは、指定のデータを扱えるように、3.0のcontribのモジュールにdatasetsが準備されている。
説明は、ここに
とあるデータを試してみたく、そのうちの1つを試してみたが、残念ながらエラーが生じうまくいかなかった。
使い方の説明も少なく、使用方法がわるいのか、OpenCV側が悪いのかいまひとつ切り分けができていない。
ソースもあるので解析もやる気があればできるが、そこまでの気力がないので、しばらく様子を見ることとする。
OpenCVでは、指定のデータを扱えるように、3.0のcontribのモジュールにdatasetsが準備されている。
説明は、ここに
とあるデータを試してみたく、そのうちの1つを試してみたが、残念ながらエラーが生じうまくいかなかった。
使い方の説明も少なく、使用方法がわるいのか、OpenCV側が悪いのかいまひとつ切り分けができていない。
ソースもあるので解析もやる気があればできるが、そこまでの気力がないので、しばらく様子を見ることとする。
OpenCV Vision Challengeが開始された
ようやく公式からアナウンスがあり、受付が開始されました。
DARPAとIntelの支援を受け、最新技術のOpenCVのライブラリ拡張のためにchallengeを開始する
賞金$5万は、11のカテゴリの勝者に分配される。
(1) image segmentation
(2) image registration
(3) human pose estimation
(4) SLAM
(5) multi-view stereo matching
(6) object recognition
(7) face recognition
(8) gesture recognition
(9) action recognition
(10) text recognition
(11) tracking.
条件
5人までの優勝者を選定する。参加者は、オリジナルのアルゴリズム、あるいは、他人のアルゴリズムを実装したものでも参加できる
参加するカテゴリを選択する。
カテゴリで優勝すれば賞金$1000を手にする
さらに$7.5kから$9Kまで得るためには、あなたのソースを、BSDライセンスでOpenCVのpull requestを行う必要がある
あなたのコピーライトとともにあなたの貢献は、OpenCVに取り入られる
CVPR 2015やそのWorkShopに提出するコードでもよい、われわれは、CVPRまで公開しない。
勝者と賞品は、委員会の裁量で決められる
期限
参加期間 今から2105/5/8
発表 CVPR 2015の2015/6/8
詳細は以下に
http://code.opencv.org/projects/opencv/wiki/VisionChallenge
http://code.opencv.org/attachments/1672/OpenCVVisionChallenge.pdf
DARPAとIntelの支援を受け、最新技術のOpenCVのライブラリ拡張のためにchallengeを開始する
賞金$5万は、11のカテゴリの勝者に分配される。
(1) image segmentation
(2) image registration
(3) human pose estimation
(4) SLAM
(5) multi-view stereo matching
(6) object recognition
(7) face recognition
(8) gesture recognition
(9) action recognition
(10) text recognition
(11) tracking.
条件
5人までの優勝者を選定する。参加者は、オリジナルのアルゴリズム、あるいは、他人のアルゴリズムを実装したものでも参加できる
参加するカテゴリを選択する。
カテゴリで優勝すれば賞金$1000を手にする
さらに$7.5kから$9Kまで得るためには、あなたのソースを、BSDライセンスでOpenCVのpull requestを行う必要がある
あなたのコピーライトとともにあなたの貢献は、OpenCVに取り入られる
CVPR 2015やそのWorkShopに提出するコードでもよい、われわれは、CVPRまで公開しない。
勝者と賞品は、委員会の裁量で決められる
期限
参加期間 今から2105/5/8
発表 CVPR 2015の2015/6/8
詳細は以下に
http://code.opencv.org/projects/opencv/wiki/VisionChallenge
http://code.opencv.org/attachments/1672/OpenCVVisionChallenge.pdf
2014年11月18日火曜日
OpenCV 3.0 beta で SIFTを動かした
OpenCV 3.0 では、SIFTはmainから、contribに移され、APIも見直しされている。
アルファ版の記事はここ
contribは開発中なので今後も変更される可能性がある。すでにSIFTも修正されアルファ版のソースではエラーとなってしまった。
3.0 の最新のSIFTの説明は、ここで見れるが、残念ながらalphaの内容と変わらない
SIFTのサンプルを探してみたが、SIFT関連のサンプルが準備されていない。前回と同様にソースを見てみたがうまくいかなかった。
変わりにSURFのサンプルがあったので、それを参考にソースの修正を行うことで動作した。
ベータ版でのSIFTのサンプルコードは、以下のようになる
// main用
#include <opencv2/opencv.hpp>
//
// contribは個別に指定
//
#include <opencv2/xfeatures2d.hpp>
int main( int argc, char** argv )
{
cv::Mat image, gimage;
std::string fname = "./opencv/samples/cpp/baboon.jpg";
cv::Ptr<cv::Feature2D> detector = cv::xfeatures2d::SIFT::create();
std::vector<cv::KeyPoint> keypoints;
image = cv::imread(fname);
cv::cvtColor(image, gimage, cv::COLOR_BGR2GRAY);
detector->detect(gimage, keypoints);
cv::drawKeypoints(image, keypoints, image);
cv::imshow( "sift image", image );
cv::waitKey(0);
return 0;
}
以上
アルファ版の記事はここ
contribは開発中なので今後も変更される可能性がある。すでにSIFTも修正されアルファ版のソースではエラーとなってしまった。
3.0 の最新のSIFTの説明は、ここで見れるが、残念ながらalphaの内容と変わらない
SIFTのサンプルを探してみたが、SIFT関連のサンプルが準備されていない。前回と同様にソースを見てみたがうまくいかなかった。
変わりにSURFのサンプルがあったので、それを参考にソースの修正を行うことで動作した。
ベータ版でのSIFTのサンプルコードは、以下のようになる
// main用
#include <opencv2/opencv.hpp>
//
// contribは個別に指定
//
#include <opencv2/xfeatures2d.hpp>
int main( int argc, char** argv )
{
cv::Mat image, gimage;
std::string fname = "./opencv/samples/cpp/baboon.jpg";
cv::Ptr<cv::Feature2D> detector = cv::xfeatures2d::SIFT::create();
std::vector<cv::KeyPoint> keypoints;
image = cv::imread(fname);
cv::cvtColor(image, gimage, cv::COLOR_BGR2GRAY);
detector->detect(gimage, keypoints);
cv::drawKeypoints(image, keypoints, image);
cv::imshow( "sift image", image );
cv::waitKey(0);
return 0;
}
以上
2014年11月17日月曜日
OpenCV 3.0 betaの開発環境をWindows7 64bit版に、Visual Studio Community 2013を使用し構築した
検索などでこのページを訪れる人が、数は少ないけど、コンスタントにいる。
ちょうどこの上にあるG+1のボタンを押してもらうと、Goolgeの検索に見つかりやすくなるので、ご協力いただきたい。
2.4.10までは、OpenGL、OpenNI、CUDAを使用しなければ、ダウンロードしたファイルを展開し、設定すれば使用できたが、今回は自分でビルドする必要がある
以下は、Windows7 64bit版上で、Visual Studio Community 2013を使用しOpenCVでプログラムを開発するための環境作成を行う。
1 ソースの取得
ここに移動し、opencv-3.0.0-beta.exeをダウンロードする
ダウンロードサイズは363M、展開すると3.6Gになる
展開したフォルダーは、ソース sourcesとビルド buildに分かれている
buildには、staticなライブラリは準備されているが、共有ライブラリが準備されていないので、自分でビルドしないといけない
先ほど展開したc:\の直下に移動させ、フォルダー名をopencv30bに変更する
また、opencv30bの下に作業用のworkのフォルダーを作成する
2 cmakeの準備と設定
OpenCVのビルドに、cmakeが必要なのでここからVer. 3.0.2のZIP版をダウンロードする
ダウンロードし、zipの展開後に、bin\cmake-gui.exeを起動する
opencvのソースの場所を指定する。
バイナリは、先ほど作成したworkを指定する。
Configureボタンを押下すると、コンパイラの選択ダイアログが表示されるので、Visual staudio 12 2013 Win64を選択する。
Configureが成功し、画面上部にオプションの選択画面が表示される。最初は、赤く表示されるが気にする必要はない
自分の環境にあったオプションを選択する。今回は、1394やcudaやtestを外している。
再度Configureを押し、設定もれがないか確認する。
選択が終わったら、Generateのボタンを押下する。
作業が完了すると、WorkフォルダーにVisualStudio 2013用のプロジェクト一式ができている
3 プロジェクトのビルド
workフォルダーのOpenCV.slnをダブルクリックする
visual studio 2013が起動する。
Solution configrationをリリースに変更しビルドを開始する。マシンの性能に依存するが、約10分で完了する。
4 インストールファイルの作成
Solution explorerのCmakeTargetsのINSTALLを選択し、右クリックでbuildを指示する。
Solution configrationをデバッグに変更し、プロジェクトのビルドと、INSTALLを行う。
プログラム開発に必要なファイルは、C:\opencv30b\work\installに一式準備される。
この後、OSにpathの設定と3.00のプロパティファイルを作成する。
環境構築2に続く
以上
2014年11月11日火曜日
OpenCV 3.0.0 betaをubuntu 14.04 64bitでビルドした (2)
検索などでこのページを訪れる人が、数は少ないけど、コンスタントにいる。
ちょうどこの上にあるG+1のボタンを押してもらうと、Goolgeの検索に見つかりやすくなるので、ご協力いただきたい。
今回は、main + contribをビルドする
mainのみとの差分を記す
取得できるとopencv_contribのフォルダーが作成されている
以上
ちょうどこの上にあるG+1のボタンを押してもらうと、Goolgeの検索に見つかりやすくなるので、ご協力いただきたい。
今回は、main + contribをビルドする
mainのみとの差分を記す
- opencv300bに移動する
- contribをgitで取得
取得できるとopencv_contribのフォルダーが作成されている
- 作業フォルダーを作成 mkdir buildcontrib
- 作業フォルダーに移動 cd buildcontrib
- cmake .. で一旦makefileを作成する
- ccmake .でオプションを設定する
- OPENCV_EXTRA_MODULES_PATHに ~/opencv300b/opencv_contrib/modulesを設定
- configureすることで、contribのモジュールの選択ができる
- generate実行後終了する
- make -j4
- sudo make install
- sudo ldconfig
以上
OpenCV 3.0.0 betaをubuntu 14.04 64bitでビルドした
検索などでこのページを訪れる人が、数は少ないけど、コンスタントにいる。
ちょうどこの上にあるG+1のボタンを押してもらうと、Goolgeの検索に見つかりやすくなるので、ご協力いただきたい。
今回は、contribを含まないmainのみ
linuxのソースはここからzipでダウンロードする
設定後一旦、configureを行い、genarateする
make install のあとにldconfigを行わないと、共有ライブラリが更新されず、コアダンプを起こす
また、ldconfigを行うと、以前のopencvの共有ライブラリが使用できなくなるので注意
デフォルトのインストール先は/usr/localである。変更する場合は、ccmakeでインストール先を変更する
以上
ちょうどこの上にあるG+1のボタンを押してもらうと、Goolgeの検索に見つかりやすくなるので、ご協力いただきたい。
今回は、contribを含まないmainのみ
linuxのソースはここからzipでダウンロードする
- ダウンロードしたzipファイルを展開し、フォルダー名をopencv300bに変更する
- 先ほど展開したフォルダーをhomeの下に移動させる
- opencv300bに移動し、作業フォルダーを作成
- 作業フォルダーに移動
- cmakeで一旦makefileを作成する cmake ..
設定後一旦、configureを行い、genarateする
- make -j4
- sudo make install
- sudo ldconfig
make install のあとにldconfigを行わないと、共有ライブラリが更新されず、コアダンプを起こす
また、ldconfigを行うと、以前のopencvの共有ライブラリが使用できなくなるので注意
デフォルトのインストール先は/usr/localである。変更する場合は、ccmakeでインストール先を変更する
以上
OpenCV 3.0.0 betaがリリースされた
少しの時間差で公式にアナウンスがありました
winodws版はここ、iOS版はここ、Unix版はここから取得できる
3.0alphaからの変更点が、ここに公開されている
OpnCL
Intel Iris あるいは Iris Proのグラフィックスカードで
Canny edge detector, Laplacian, StereoBM, BruteForceMatcher, BackgroundSubtractorMOG2, StitchingWarpersなど
10%-230%の性能改善
HoughLines, HoughLinesP, cvtColor (selected modes), Gemm, DFTがカーネルに追加
NEON
約40の関数がNEON対応により最適化された
JAVA
JAVAとのIFが大幅に改善
features2d, background subtractor classes, a part of opencv_contribのAPIを更新
IPP
AVX2対応のIPP 8.2.1 のサブセットを採用
GitHUB
200以上のpull requestを採用
以上
登録:
投稿 (Atom)