NI製品ディスカッション

キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

マッチング処理のテンプレートについて

いつもお世話になっています。

 

webカメラに映った画像から手の形状を検出するというプログラムを作っており、手を検出する手段としてvision assistantのパターンマッチングを用いております。

検出率を上げるためにテンプレート画像を増やしたいのですが、テンプレート画像を増やすと処理速度が著しく下がってしまいます。(試しにテンプレートを30枚にすると、0.25~0.5fpsでした)

そこで、テンプレートを増やしても処理速度が著しく落ちない方法はあるでしょうか。是非とも教えていただきたいです、よろしくお願いします。

 

実際に使っているプログラムの手検出までの部分を添付します。

0 件の賞賛
メッセージ1/4
4,966件の閲覧回数

Nnakaさん、はじめまして。

 

もう既にお試しかも知れませんが、フロントパネルのパラメータ設定でNumber of Matches Requestedを増やし、Minimum Match Scoreを減らすのはいかがでしょうか。

 

Minimum Match Scoreが現在800になっていますが、小さい値を設定すればテンプレートを大量に使用する必要がなくなるので、そちらを使用して処理速度を短くするのはいかがでしょうか。もし既にお試しでしたらすみません。

 

よろしくお願いします。

 

0 件の賞賛
メッセージ2/4
4,935件の閲覧回数

こんにちは。

 

seaOtter7 さんが提案された方法の他に、ROI を設定して画像のなかで手が写ってると思われる部分を切り取って、

その切り取った部分のみにパターンマッチングを適用すれば処理時間はさがるかと。

 

あと手の形状を検出した後に行いたい処理やタイミングにもよりますが、

画像集録用とパターンマッチング用にループを2つに分けて回転速度を別々に設定する方法や、

画像一枚一枚にパターンマッチングを行うのではなく、間引きを適用し数枚ごとにパターンマッチングを一回行う方法もあります。

そうすれば画像集録のFPSをある程度維持することができますよ。

 

具体的にどんなことがしたいんですか。

0 件の賞賛
メッセージ3/4
4,909件の閲覧回数

返事が遅くなってしまい申し訳ありません。ご意見ありがとうございます。

 


seaOtter7様

フロントパネルのパラメータ設定を変えることは試しました。Minimum Match Scoreを下げると、誤認識(チョキを出しているのにパーで検出される)が多くなってしまいます。私のプログラムで設定している800という数値は、誤認識が少なく検出率も良いと感じた実測値となっております。数値が高い分、検出率は下がっています…
あと、私以外の人の手でも検出できるようにしたいと考えています。手の形や指の太さが様々でも検出できるようにするため、テンプレートの数を増やせればと考えております。


doradorachan様

提案ごとに分けて回答させて頂きます。

 

・具体的にどんなことがしたいんですか
現在は、検出した手の情報に応じてPCのマウスカーソルなどの操作をしております。例えば、手の座標に応じてカーソルが移動し、グーでは左クリック、チョキでは右クリックするといった操作や、ひとさし指のみを上げると、その座標に応じて(仮想のキーボードを押すように)文字を入力するといった操作です。

 

・手が写っている部分のみ切り取る
上記のようなカーソル移動のために手を動かす必要があるので、範囲を狭くするのは難しいです。

 

・画像集録用とパターンマッチング用にループを2つに分ける
・間引きを適用し、数枚ごとにパターンマッチングを一回行う
これらのような方法があるのですね…すぐには作れないかもしれませんが試してみようと思います。

 


お二方の意見を見ていると、テンプレート画像を増やすのは難しいみたいですね…。
今回挙げられた意見に加え、他にいい方法がないか自分でも検討してみようと思います。
貴重な御意見、ありがとうございました。

0 件の賞賛
メッセージ4/4
4,892件の閲覧回数