2

このプロジェクトは、色付きの正方形を検出し、それに応じて制御信号をマイクロコントローラーに送信することを目的としています

これが処理された画像の私の出力です。

赤 :

ここに画像の説明を入力してください

緑 :

ここに画像の説明を入力してください

赤の広場が検出された場合、MATLABはシリアルポートを介して文字「R」を送信します緑の広場が検出された場合、MATLABはシリアルポートを介して文字「G」を送信します

処理された画像を区別してデータを送信するためのアイデア/テクニックはありますか?

RED Squareがブール値で表示red=trueされ、GREENSuwareがブール値で表示される場合のようにgreen=true

後で、またはブール値を確認して、文字があれば送信することもできますtrue

4

1 に答える 1

4

すべての画像が例で示しているのと同じくらい単純であれば、画像処理の部分は本当に簡単です。赤と緑のどちらのチャンネルがより優勢であるかを簡単に確認できます。

   green = im(:,:,2);
   red = im(:,:,1);
   if sum( green(:)) > sum(red(:))
       % Send green!
   else
       % Send red!
   end

画像がそれほど単純でない場合は、画像をHSV色空間に変換し、しきい値に満たないHueものを除いて、何が支配的であるかを確認できます。Sat後者の部分は、決定から黒いピクセルを削除するために必要です(それらはほとんどランダムになる傾向がありますHue)。

シリアルポートの制御についてはこちらをご覧ください

于 2012-10-05T12:26:32.483 に答える