MATLAB Answers

0

カラーマーカーを使ったトラッキングの動作について

Asked by Takashi Kano on 19 Apr 2019
Latest activity Answered by Takashi Kano on 13 May 2019
カラーマーカーを使ったトラッキングのページにあるサンプルプログラムに動画データ(mp4)を入力して動作させました。
次のエラーが出ました。
関数または変数 'createMask' が未定義です。
エラー: test2 (line 69)
mask = createMask(frame);
69 mask = createMask(frame);
使用したスクリプトは添付します。
データは添付不能でした。
送付するにはどうすればよいでしょうか。ご教授ください。

  0 Comments

Sign in to comment.

3 Answers

Answer by Tohru Kikawada on 23 Apr 2019

ファイル内のコメントに沿って作ってみてはいかがでしょう?
% 色のしきい値アプリを使ってマスク関数を作成
colorThresholder(frame);
% 色空間はHSVを選択
% 緑色のマーカーだけが検出されるようにしきい値を決める
% しきい値が決まったら「エクスポート」⇒「関数のエクスポート」で
% createMask.m関数を生成し、保存する

  0 Comments

Sign in to comment.


Answer by Takashi Kano on 26 Apr 2019

ご親切にご教授いただきありがとうございます。
赤いマーカーを使用してスレッショルドを操作しマーカーのトレースができるようになりました。
ところが、マーカーが回転して動画内で大きさが半分になるとマーカーのトレースができなくなりました。普通は球形のマーカーを使って、この問題を回避していると思いますが、現在の用途では球形のマーカーを使いたくない事情がございます。何か良い方法をご存知でしたら教えてください。
宜しくお願い致します。

  1 Comment

Tohru Kikawada on 2 May 2019
下記をもっと小さな値にしてみてはいかがでしょう。
'MinimumBlobArea', 100,
vision.BlobAnalyzer のヘルプドキュメントに詳しい使い方がのっています。

Sign in to comment.


Answer by Takashi Kano on 13 May 2019

ご教授いただきありがとうございました。
ご教授通りにしてみたところ、動画の最後までトレースしました。
ところが今度はマーカー以外にも複数トレースしてしまいました。
スレッショルドの処理が甘いのか、そもそもの動画に問題があるのか
動画撮影に関して何か理想的な環境があれば教えていただけると幸いです。
よろしくお願い申し上げます。

  0 Comments

Sign in to comment.