2013年2月13日水曜日

Image recognition and Noise reduction

ロボットの原価を低減させる為に、市販の部品を使っていますが、いろいろ課題が発生します。
ロボットの目には、2,000円台のWebcamを使っていますが、高価な物に比べて不安定です。従って、画像認識において、図1のような元のイメージからピンクのボールを認識する場合、大量のノイズが発生する事が多いです。
図2は、その状態を解り易くする為に二値化した物です。大量のノイズが存在します。
このような状況で、図3の様にボールだけを認識しなければなりません。
画像処理は、奥が深いです。だから、面白いです。更に、ロボットと組み合せると、”面白い”の二乗になります。ロボットは、動いていますから、限りなく短い時間で処理をしなければなりません。その情報を元に、駆動系の制御をします。
webcamが、どのような画像を取得しているか解りません。従って、プログラムはそれを前提に作らないとなりません。いやはや、とっても面白い世界です。

しかし、結局、ロボットは、ソフトウェアが勝負ですね。また、ソフトの工数を減らす為には、高価なデバイスが必要になります。結局、高い原価構成のジレンマに陥ります。
だから、企業レベルでロボットの原価を考えると、価格は高くならざるおえません。
それを、僕は、RDCSで解決しています。

図1 元画像 
(白い格子は、画像の保存時に付加)
図2 noiseの大量発生
noiseが解り易いように二値化した画像
HSV色空間では、大量のnoiseを拾ってしまう場合がある
 図3 認識結果
noise処理を行い、ボールだけを認識する 
この処理もRaspberry Piで実行しますが、画像の保存をしなければ処理は瞬時に終わります。

peace!

0 件のコメント:

コメントを投稿