2014年9月17日水曜日

OpenCV 3.0 alphaのADASに関して

事前の案内では、ADAS用のモジュールが追加されるとあり期待していたが、いざリリースされると、contribにADAS.cppが存在するが中身はない。それどころか、自動車の検出用の辞書さえも存在していないのは、残念な結果となった。




よく調べてみると、pencv_contrib/modules/adas/tools/fcw_trainに、辞書作成と、検出のツールのソースが含まれており、contribをビルドすると、ツールができる。使用方法などドキュメントは存在しない。

ソースを見ると、単にcv::xobjdetect::ICFDetectorにパラメータを整えて渡しているだけのようであり、cv::xobjdetect::ICFDetectorのリファレンスには、WaldBoost and Integral Channel Featuresと簡単な説明がある

必要なパラメータは、
pos_path  path to training object samples
model_size  model size in pixels
ぐらいしかない。

cascadeでの辞書作成は、画像のパス、左上座標、サイズを記したファイルを指定していたが、ファイル名しか指定していないので、今回は、自分で事前に指定のサイズにpositive画像を切り抜いておく必要があると推測される

ソースを見ると、読み込んだファイル(jpg, png)を指定のサイズにリサイズしているので、範囲さえあっていればよいみたいである。

negativeは、指定数だけランダムに画像を切る抜いたものを使用している。

その後、パラメータを整えてwaldboostを使用して学習している。

マルチスケールでwaldboostを使用して検出しているが、並列化などの高速化や、検出結果のグルーピングは行われていないので、自力で対応しないといけない

以上

0 件のコメント:

コメントを投稿