OpenCV、機械学習、はやりのDeep learningの環境構築の方法、サンプルの動かし方、APIの使い方、Tipsなどをすぐに忘れてしまうので、備忘録として記録している。記憶がなくなるスピードが、早いのでメモしておかないと再現できなくなる確率が高まっている。 最近、再度HDDを飛ばしてしまい、過去の自分のページに再度助けられた。 また、DNNモジュールを触る機会が増えているので、C++からPyhonへと鞍替え中。 内容を気にいっていただければ、twitterで紹介願います。
2012年7月27日金曜日
OpenCV 2.4.2でSURFを使うために
2.4からライセンスの関係でSURFやSIFTがnonfreeのライブラリに移動した
使用に当たっては、
#include "opencv2/nonfree/nonfree.hpp"のインクルードと、
#pragma comment(lib,"opencv_nonfree242.lib")のライブラリの指定が必要である。
また、プログラムの起動時に、cv::initModule_nonfree();による初期化が必要になった。
このまじないを唱えずに、
Ptr<FeatureDetector> featureDetector = FeatureDetector::create( "SURF" );
Ptr<DescriptorExtractor> descriptorExtractor = DescriptorExtractor::create( "SURF" );
などを呼んでも、オブジェクトが生成されず、ヌルポになるので注意
ただし、抽象クラスを使用せず明示的なクラスを使用する場合、初期化の宣言なしでも、利用できる
SurfFeatureDetector detector(50);
SurfDescriptorExtractor extractor;
以上
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿