2

小さなarduinoロボットに接続されたC328Rカメラから画像を取得しています。ロボットがオレンジ色のピンポン球に向かって走り、それらを拾ってほしい。私はhttp://www.codeproject.com/KB/recipes/C328R.aspxでfunkotron76によって提供されたC#コードを使用しています。

これを行うために使用できるライブラリはありますか、それとも画像内のすべてのピクセルを繰り返してオレンジを探す必要がありますか?もしそうなら、私はさまざまな照明条件を補償するためにどのような許容範囲が必要でしょうか?

私はおそらくこれらの数字を理解するためにテストすることができますが、私はそこにいる誰かが答えを知っていることを望んでいます。

4

1 に答える 1

3

特にさまざまな条件に耐えようとすると、視力が驚くほど難しくなる可能性があります。調査すべきいくつかの良い点には、ブロブファインディング(特定の基準、通常は明るさのしきい値に一致する連続したピクセルの検索)、画像セグメンテーション(画像に複数のボールを含めることができますか?)、および色相に関する一般理論(ほとんどの視覚アルゴリズムはグレースケールで機能します)が含まれますまたはバイナリ画像なので、最初に、選択の基準としてオレンジ色を強調する方法で画像を変換する必要があります。)

おそらく、これらのオブジェクトに向かって移動するときにリアルタイムで追跡しているので、カルマンフィルターなどの追跡モデルについても学習することをお勧めします。それはあなたがしていることにはやり過ぎですが、それは興味深く、基本的な考え方は役に立ちます。オブジェクトがあまり速く移動してはならないことをおそらく知っているので、その事実を使用して、オブジェクトから離れる原因となる可能性のある誤検知を除外できます。以前に受け入れられたフレームから離れすぎたフレームを単に無視することで、この種のフィルタリングのより単純なバージョンをまとめることができます(オブジェクトを無視してスタックしないようにいくつかの境界条件があります)。

于 2010-05-05T01:42:03.040 に答える