輪を見つけ出すために

 トリミングを行う際には、画像のどの位置を切り取るのかを決めるための目印が必要になります。本システムでは、指で作った輪が目印になります。一般に輪の位置を検出する方法として、Hough変換を用いた円検出アルゴリズムなどがありますが、指で作った輪は歪んだ形をしており、うまく検出できるとは限りません。

 そこで、本システムではHough変換を使わず、肌色検出を利用しました。肌色領域の重心位置をトリミング領域の中心位置とすると、指が輪になっているために、ちょうど輪の中心あたりに肌色領域の重心が来ることになります。この性質を利用して、指で作った輪に囲まれた部分 を拡大することができました。

 肌色検出と重心計算はFPGA上で行います。メモリー上の色はRGB形式で格納されていますが、この形式は明るさの変化によって値が大きく変化し、色検出には向いていません。そこで、各ピクセルの色をRGB形式からHSV形式に変換します。HSV形式は明るさが変化してもV(明るさ)の値が変化するだけなので、H(色相)とS(彩度)に対してしきい値判定を行うことで明るさの変化に強い色検出を実装できます。

COJT受講を終えて

 以上が本システム「ゆびスコープ」の説明になります。他の人と比べて特に複雑なアルゴリズムを使ってはいませんが、十分に面白みのあるものが作れたように思います。成果発表会では多くの来場者の方に驚き、楽しんでもらえました。将来的にはメガネ型デバイスの機能として搭載されることで、ジェスチャーと機能が一致し、より直感的に使えるようになると考えています。

 COJTでの1年間は大変なものでしたが充実していました。ハードウェアコースを志望したのはここでしかできないことができると考えたことが主な理由でしたが、その期待通りに貴重な経験ができました。COJTに関わった全ての方々にこの場を借りて御礼申し上げます。