ワナビから貴方へ 独り言の吐き溜め

ワナビから貴方へ 独り言の吐き溜め

2012.11.02
XML
テーマ: 今日の理系(398)
カテゴリ: 理系

最近読んでみた中でちょっと面白かった論文をまとめてみる

内容に誤解などあるかもしれないけれど

Conference

th International Conference on Quality Software

タイトル

Fingertips Detection Algorithm Based on Skin Colour Filtering and Distance Transformation

著者

Yun Liao

Yuxiang Zhou

Zhihong Liang


アブスト

 複数指先定位アルゴリズムは、正確な手のイメージ獲得、そして指先の定位という難点を持つ。本論文では肌色と距離変換に基づく、リアルタイムの定位アルコリズムを提案する。まず楕円境界モデルを用いて、YCbCr色空間で肌色検出を行い、手のひらからの距離で指をフィルタリングする。一方でゼロ次、一次モーメントを使って手のひらの重心位置を求める。指先位置と根本は掌重心までの手の端のピクセルから求まる。指先と指元間の位置関係から正確に指先を定位できる。実験結果として、指先は高速かつ正確に定位され、かつそのアルゴリズムはリアルタイム計算要求を満たす。

1章:イントロダクション

 ヒトとコンピュータのインタラクションシステムのために指先は多くの情報を持ち、重要な役割を果す。手話、ジェスチャ、指文字やタッチが主なアプリケーションで、指の状態はこれらにおいてカギとなる。しかし、指の状態は動きの中で変化し(27度の自由度)、人の手とは複数関節で柔軟な物体であるので映像それ自体は不適切問題である。そのため映像ベースにおいては手の区切りと指先定位が重要な技術となる。

2章:関連研究

 "Bare-Hand human-computer Interaction"では、二つの条件に基づく二値画像から指先を探す。一つは、前景ピクセルを埋める円によって指先中心は囲まれていて、その円の直径は指幅であること。二つ目は指先を囲む円の外側長方形を定義し、その探索長方形はピクセルの有る部分と、それより大きい、ピクセルの無い部分を含む。 "Real-Time Fingertip Tracking and Gesture Recognition",では、まず掌のサイズと、掌と腕の関係に基づき探索範囲を定義、20の指先位置候補を探す。そして候補内から、正確な指先定位を行う。"An Approach to Tracking Deformable Hand Gesture for Real-Time Interaction"は、手輪郭ピクセルの曲率を計算し、しきい値を越えた曲率においてそのピクセルを指先とする。"Embedded implementation of real-time finger interaction system"は、手輪郭の凸率を計算し、指先定位を行う。

 これらの指先定位アルゴリズムは、指の数などの前提条件があり、複雑な条件下では適さない。本論文では、まず楕円境界モデルでYCbCr色空間での肌色検出を行い、距離変換で指をフィルタリングして掌のみ残す。一方でゼロ次、一次モーメントで掌重心を計算。初期指先と指元位置を、手輪郭のピクセルの掌重心から距離によって定位する。最後に、指先と指元の位置関係に従い、正確に指先を定位、実験の結果はリアルタイム性を満たしていることを示した。

3章:肌色検出

 肌色検出は単純かつ高速、頑健であるために広く用いられる。"An elliptical boundary model for skin colour detection"では、肌色において色彩は輝度と関係性がないとして、2000の肌色画像と4000の非肌色画像を用い、6つの色空間(r-g, CIE-uv, CIE-ab, CIE-xy, I-Q, Cb-Cr)変換を行なった結果、肌色は楕円様分布していた。そのため肌色検出の楕円境界モデルを提案している。


4章:手モデルと、掌重心の抽出

 手のモデルは重要で、2Dや3Dのものが考えられる。手は指と掌に分けられ、指は3つの状態(見える、見えない、指先位置)に単純化される。指先位置は掌重心との関係から定位するため、掌重心の計算が重要となる。すべての指がある状態で計算されるのが普通だが、この場合正しい掌重心が得られない。そのため手から指を除くことが必要で、ここでは距離変換に基づいて掌重心の定位を行う。イメージの距離変換は再近傍のゼロ値のピクセルとの距離によって定まるピクセルの値を持つイメージとして定義される。二つの方法--『近似テンプレート法』と『ユークリッド距離法』がある。近似テンプレート法の基本的な考えは、再近傍のゼロ値ピクセルからの距離計算にテンプレートを使うというもの。

 距離変換に基づいて手の二値画像をグレースケールに変換すると、指は細いため暗くなる。そこでしきい値を定めることで掌部分を抽出できる。またゼロ次、1次モーメントを計算することも可能となる。これにより指の数によらない掌重心定位が可能になる。

アルゴリズム(1)

Step1:手の二値画像を得る(楕円分布利用)

Step2:近似テンプレート法で二値画像を変換、変換された距離画像を得る

Step3:結果を二値化、フィルタリングして指を除く。

Step4:掌の重心を計算(0次、1次モーメント)

5章:掌重心に基づく指先定位

 指先は大きな特徴を持ち、それは周囲のピクセルよりも相対的に掌重心位置から遠い位置にあるということだ。掌中心からの距離をY軸、手輪郭上ピクセルの指標をX軸として手輪郭のグラフを得る。手輪郭上で、手輪郭の多角形頂点から掌中心までの距離と多角形の頂点指標によって形作られる距離画像である。手の輪郭は閉じているため、左端と右端は結合される。波の峰は指先、谷は根元と考えられる。

 A.谷定位のアルゴリズム

谷は次のような特徴を持つ

・平均距離より低い

・谷から左右へ延長すると、波は平均線を横切る。谷はその交差点の間で最低点。

アルゴリズム(2)

1,底点、走査点、スタートポイントの次の点を初期化

2,走査点がスタートポイントに戻ってくるまで次を行う(底点を探す)

・走査点の重心との距離が、底点の距離より小さければ底点を更新

・底点の距離が平均距離より小さければ『谷候補』とする

・走査点が平均距離以上(谷部を抜ける)になったとき、『谷候補』が見つかっていれば谷とする

B.峰定位のアルゴリズム

峰は次のような特長を持つ

・峰は平均距離より高い

・峰から左右に延長して平均距離と交差した点P1,P2の間で最も高い点。

アルゴリズム(3)

1,峰点、走査点、開始点の次の点を初期化

2,走査点が開始点に戻るまで続ける

 ・走査点の距離が峰点の距離より大きいなら峰点を更新

 ・峰点が平均線より高ければ『峰候補』とする

 ・『峰候補』が見つかっている&平均線を下回ると終了

しかし、距離変換を用いただけでは不十分。たとえば指がない場合など明らかな波が見られない。手輪郭が平均距離に近く、峰が非常に小さくなってしまう。誤検出をなくすために、間違った指を除く式を利用する

加えて、指先と根元の作る三角形に着目し、その角度でもフィルタリングを行う。指先の角度をαとして余弦定理よりcosαの値を求め、しきい値より大きいか判定。

もう一つの問題は、指先から根元への距離が左右で異なる三角形である場合。指先までの距離が近いほど、正確な指の根元であるとして、他方の根元として同じ距離の指の端を探す。

アルゴリズム(4)

Step1:指先候補を探す

Step2:指先と掌重心の距離 < 平均距離 × 0.2 なら除く

 Step3:次の手順で根元定位

  1,指先とその両側の根元の距離を計算(DL,DR)

  2,左側の距離が短い場合

   ・左は根元とする

   ・Dp=DLとなる点から右側を探す。そこが右の根元

  3,右側の距離が短い場合も同様

 Step4:cosα > K かどうか

6章:実験結果と解析

 実験の結果、指先の定位はかなり正確に行え、誤検出もなかった。

7章:結論

 正確な指先定位は、正確な手の二値画像の取得、指先定位という困難なタスクである。本論文では、肌色と距離変換に基づく、リアルタイムの複数指先定位アルゴリズムを提案した。まず楕円境界モデルを用いて肌色検出をYCbCr 色空間で行い、距離変換を用いて指先を除いた掌だけを残す。一方で0次、1次モーメントを用いて掌重心を定位する。指先と指の根元の初期位置は、掌重心までの手の端のピクセルによって定位される。最後に、指先と指の根元の関係に従って、指先を定位し、実験の結果、高速かつ正確に指先位置が定位できた。






お気に入りの記事を「いいね!」で応援しよう

最終更新日  2012.11.28 10:05:53コメント(0) | コメントを書く
[理系] カテゴリの最新記事


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x
X

© Rakuten Group, Inc.
X
Design a Mobile Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: