JP6487642B2 - 手指形状の検出方法、そのプログラム、そのプログラムの記憶媒体、及び、手指の形状を検出するシステム。 - Google Patents

手指形状の検出方法、そのプログラム、そのプログラムの記憶媒体、及び、手指の形状を検出するシステム。 Download PDF

Info

Publication number
JP6487642B2
JP6487642B2 JP2014135721A JP2014135721A JP6487642B2 JP 6487642 B2 JP6487642 B2 JP 6487642B2 JP 2014135721 A JP2014135721 A JP 2014135721A JP 2014135721 A JP2014135721 A JP 2014135721A JP 6487642 B2 JP6487642 B2 JP 6487642B2
Authority
JP
Japan
Prior art keywords
image
finger
data
shape
matching
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014135721A
Other languages
English (en)
Other versions
JP2016014954A (ja
Inventor
聖 星野
聖 星野
遥平 豊原
遥平 豊原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Tsukuba NUC
Original Assignee
University of Tsukuba NUC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Tsukuba NUC filed Critical University of Tsukuba NUC
Priority to JP2014135721A priority Critical patent/JP6487642B2/ja
Publication of JP2016014954A publication Critical patent/JP2016014954A/ja
Application granted granted Critical
Publication of JP6487642B2 publication Critical patent/JP6487642B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • User Interface Of Digital Computer (AREA)
  • Image Analysis (AREA)

Description

本発明は、撮像装置で撮像した画像から、判別対象物体として手指の形状(形態変化、各部の位置/移動方向/移動速度等を含む)を検出(センシング)する方法に関し、特に、平面(2D)グレイスケール画像から人間の手指の形状(以下、「手指形状」と記載する)を推定して検出する方法に関する。
従来から、人間の手指に類似した形状の多指型ロボットハンド又はマニピュレーター等を人間と同じ動きで駆動させるか、あるいは、情報機器又はゲーム装置等の表示部に表示されたキャラクター等の手指を動作させるための方法の一例として、使用者の手の動きからその手指の形状を検出するジェスチャー入力が知られている。さらに近年、バーチャルリアリティ技術の発展により。バーチャル空間内で実作業のシミュレーションをする機会が広がっている。このようなシミュレーションをする上で、ジェスチャー入力における手指の緻密な動きを検出し、それをそのままバーチャル空間内にそのまま再現すれば、より具体的なシミュレーションが可能となる。
ジェスチャー入力を大まかに分類すると以下の2方式に分類できる。
(X)機器装着方式:使用者の腕や手指に、位置や加速度等のセンサー装置、又は、マーカー等の機器を装着(必要に応じてデータグローブ等の装着具形式として装着)し、その装着されたセンサー装置の出力、又は、装着されたマーカーをカメラ等の撮像装置で撮像した画像データを解析した結果から、手指形状を求めて、ジェスチャー入力動作を検出する。
(Y)画像処理方式:使用者の腕や手指への機器装着は不要で、腕や手指の撮像装置による撮像画像のみから手指形状のジェスチャー入力動作を検出する。
手指の形状を検出するために上記データグローブなどの機器装着型の装置を使う場合、正確な手指のジェスチャー入力は可能であるが、例えばセンサー装着型は装置の構成が大がかりであり、手指にセンサー又はマーカーを装着するため準備に時間がかかり容易に検出できないという問題と、ユーザが装着された装置により拘束されて自由な動作を阻害する場合が有った。そこで、より容易にジェスチャー入力を導入するためには、上記(Y)のように、検出される人が何も装着しないで、非接触で検出する画像処理方式のジェスチャー入力装置を用いることが望ましい。
画像処理方式のジェスチャー入力装置をさらに大まかに分類すると以下の2方式に分類できる。一つ目が(Y1)3D−model−basedアプローチ(以下、3Dアプローチと記す。)であり、二つ目が(Y2)2D−appearance−basedアプローチ(以下、2Dアプローチと記す。)である。
3Dアプローチは、撮影された画像情報を特徴量化し、その特徴量に合うように手指形状の3次元モデルパラメータを決定する方法である。この手法では各指の形状を精細に決定することが可能である。しかし、その計算量が膨大であるためリアルタイムに推定することが難しいという課題を有している。
3Dアプローチとして、例えば、3Dモデルと奥行き情報を取得できるDepthカメラであるkinectを用いて手を撮影し、粒子群最適化法を用いて不一致を最小化するモデルパラメータを求めることができる。このような立体的に見える3次元(3D)画像で手指を撮像する場合には、一般的に手指を複数の異なる方向から同時に撮影できるように複数のレンズ機構を備えるステレオ撮像装置等が用いられる。しかし、この方法による手指形状の推定では、高い演算能力が必要であり、計算能力の高いコンピュータを用いても15[fps]程度の画像しか得られず、リアルタイムに滑らかな動画像で手指形状を推定することが困難である。
一方、2Dアプローチは、撮影された画像から得られた特徴量と、あらかじめ用意されたデータベースに格納されている、形状情報を関連付けた画像特徴量を比較し、最類似形状を推定する。この手法では高速計算による推定が可能である。しかし、個人差による見えの変化に弱く、不特定ユーザでの推定が困難であるという課題を有している。
2Dアプローチは、例えば、(Y2a)高次自己局所相関特徴(以下、HLACと記す。)により、手画像の輪郭線(シルエットの外形線)情報を特徴量化し、マッチングを行うことで高精度に推定を行うことができる。さらに、画像から形状比率という荒い画像特徴量を算出し、これを用いて低計算コスト(低演算量)で全探索を行い、探索範囲を絞り込むことで高速化することができる。しかしHLACによる手法では、手画像の輪郭線情報を用いているので、同一又は類似する輪郭線になった場合、異形状の場合の識別が困難であり、また、同一の手の形状でも輪郭線が異なり、他の手の形状と識別が困難になる個人差の問題も解決できない。
2Dアプローチの他の例として、輪郭線形状の識別をできるように(Y2b)Histogram of Gradients(以下、HoGと記す。)による特徴を用いる方法が知られている。HoGによる方法では、数パターンの手形状認識を行い、個人差をSVMと逐次学習を併用することで解決を試みることができる。HoGによる方法は画像の輝度勾配情報を特徴量化しているため、輪郭線形状の内部の識別が可能になる。ただし、HoGによる方法の特徴次元数は1枚の手画像当たり17010次元と非常に高次であるため、手指形状推定システムの様な、多種多様な形状変化をデータベースに格納するには物理メモリが多く必要になる。また、HoGによる方法を用いても特徴量化レベルでの個人差対応はできておらず、データベースの物理メモリ量も各個人毎に対応させるためにはさらに多くの物理メモリが多く必要になる。
上記2Dアプローチの撮像装置としては、一般的に例えば、外形や動き等の解析に輝度又はモノクロの濃淡(グレイスケール)のみを利用する場合はモノクロ撮像装置が利用され、色差や各色の濃淡が利用される場合にはカラー撮像装置が利用される。また、平面的に見える2次元(2D)画像で手を撮像する場合には、1組のレンズ機構を備える単眼の撮像装置(カメラ)が用いられる。従来の単眼(2D)撮像装置を用いた撮像画像から手指形状のジェスチャー入力動作を検出することは、上記したように困難とえられている。
また、2Dアプローチで、手指検出の精度を向上させるために、例えば、(X)の機器装着方式を併用して得た手指の関節角度及び回旋角度データと、使用者を単眼撮像装置で撮像したグレイスケール手指画像の分割領域毎の輪郭線からの画像特徴量(手指縦画像寸法、手指画像横寸法、輪郭線の縦線、横線、斜線、折れ線、ドット等)とを組み合わせて照合用の画像データベースを作成して、照合結果を手指の検出結果に利用することが知られている。その場合、新規の手指画像が得られたら、その新規の手指画像から得られる輪郭線等の画像特徴量に対する、画像データベース中の手指画像のうちの画像特徴量が最も類似する画像データを検索する。そして、その最も類似する画像データと組み合わされている手指の関節角度及び回旋角度データから、新規画像の手指形状を推定する。
また、照合用の画像データベースの画像データ量を減らし、照合を容易にするために、画像データベース中の手指画像の向き及びサイズと、新規の手指画像の向き及びサイズを揃える方法が知られている。例えば、手指画像の向きを揃える方法については、各手指画像の前腕部の輪郭線等が求められ、そこから前腕部の延伸方向と手首の位置を求めることで、手首から先を同じ向きにして照合することができる。また、手指画像のサイズを揃える方法については、各手指画像の輪郭線を利用して各手指画像を、最終的に縦横が所定サイズの画素(ピクセル)数の画像に正規化することで揃えることができる(例えば、特許文献1、2参照)。従って、従来の単眼カメラによる手指形状推定プログラムでは、手画像の生データから、なるべく精緻な輪郭線情報を得て、その輪郭線情報と照合用の画像データベースの画像データとから手指形状の推定に用いていた。
国際公開WO2009/147904号パンフレット 国際公開WO2013/051681号パンフレット
しかしながら、従来のジェスチャー入力における上記(X)の機器装着方式は、手指の形状検出における正確性は優れているが、上記したように腕や手指に装置を装着して使用者を拘束して動作が制限されるため、ヘッドトラッキングやモーションキャプチャなどのシステムと干渉しないで形状を推定することが困難であり、準備に時間がかかり、容易に短時間で検出したい場合には使用できない。
それに対して、上記(Y)の各方式は画像処理方式である点であるので、システムと干渉しないで形状を推定できることは好ましいが、入力効率が悪くなるという問題があった。また上記HLACによる「手指形状、位置関係及び動き」を単眼撮像装置で撮像した画像中から輪郭線形状のみを用いて検出する場合、以下の(a)、(b)、(c)の3点から、同一又は類似する輪郭線になった場合、異形状の場合の識別が困難であり、手指形状や位置関係を正確に推定する事は困難であることが知られている。さらに、この場合、同一の手の形状でも輪郭線が異なり、他の手の形状と識別が困難になる個人差の問題も解決できないことになる。
(a)手指は、多関節構造であるため形状変化が複雑である点。
(b)手指は、関節を曲げたり、握った場合に、輪郭線形状としては手指の甲や手指のひらに手指が隠れてしまう自己遮蔽が多い点。
(c)手指は、身体全体に対する部位の占める比率は小さいが、可動空間が広い点。
また、上記単眼カメラを用いた2Dアプローチの方式で照合用の図6(b)のような関節角度データに対して、図5の各画像について、図3(a)のようにした分割画像を用いて対応をとり画像データベースを作成する場合は、どの分割領域に画像特徴量が入るか等は個人差が有り、汎用性を持たせた照合用の候補となる手指画像の画像データベースを作成することが困難であり、上記したように手指画像の向き及びサイズを揃えても画像データ量が増加していた。例えば、平均的な指の太さと長さを有する人の輪郭線等の画像特徴量と分割領域に対して、指の太い人や指の長い人のような個人差がある人は、同じ手指形状であっても、輪郭線等の画像特徴量の長さや斜めの角度が異なることがある上に、更に異なる分割領域に入ることがあり、あるいは、複数の分割領域に跨って入ることがある。また、指の太さや長さ等の個人差は非常に多様である。
従って、汎用性を有する手指画像の画像データの作成やそのデータで代表させることは困難であることから、上記したような全ての個人差を包含させて、かつ、どの分割領域にどの画像特徴量が入るかを組み合わせて画像データを準備する必要性があり、画像データ量が増加していた。そして、そのように全ての個人差を包含させた画像データを準備しないで、不十分にしか画像データが準備できない場合には、誤推定する可能性があった。
また、上記したような誤推定を避けるために、多様な個人差に対応させて可能性のある全ての画像データを準備することは、データ量が非常に増加し、その結果、必要なメモリ量も増えることになり、図4(a)のデータベース作成の工数も増加する。そしてその場合は、新規の画像データに対してデータ照合処理をする場合の対象となるデータ量が増加することになる。その場合、新規の画像データに最も類似した画像データを画像データベース中から探すのに時間がかかり、動画を処理するデータ処理装置の演算速度が不足する可能性がある。あるいは逆に、データ処理装置の演算速度には限界があることから、照合処理をする場合の対象となるデータ量も制限する必要が発生し、多様な個人差に対応させて可能性のある全ての画像データを準備することが困難になる。
また、演算速度の不足に対しては、特許文献1のように照合用の画像データベースを階層構造とし、上位階層(上層)で大まかな絞り込みを行い、その上位階層に従属する下位階層(下層)から照合して最類似する画像データを探すことで時間を短縮できる技術が知られているが、そのような階層的な画像データベースを作成することは、例えば、各画像データの特性を解析して、類型分けし、類型毎の代表画像データを作成する必要があり、さらに困難な作業が必要になる。
また、画像データ量を削減することで、演算速度の不足も解消できるように、特許文献2のように、画像特徴量に用いられる輪郭線に代えて、手指の中心を通る尾根線形状を利用する事も知られている。手指の尾根線としては、例えば、使用者を単眼撮像装置で撮像したグレイスケールの手指の画像に、エッジ処理等で用いられる細線化処理を用いて、擬似的な骨格化処理を施し、その骨格化された細線(尾根線)を用いる。また、細線化の際の指先以外のノイズの先端については、手指の重心座標からの距離が一致する値以内は無効として排除する。また、上記2Dアプローチの方式における手指の移動方向や移動量の検出は、上記した手指画像の輪郭線形状等から、3次元手指の形状推定(hand pose estimation)等を用いて、手指の移動方向や移動量(hand tracking)を検出すればよい。
<<同一輪郭線だが指形状が異形状の場合の識別が困難である問題>>
例えば、(A)握った状態の指と、(B)物を摘む時のように指の第1関節を屈曲させた状態の指と、を正面から撮像した場合等のように、手指画像の指の関節が屈曲状態である場合には、従来の輪郭線による(A)、(B)両者の照合は困難であり、特許文献2のような尾根線を用いても複数の指が密着している場合は、尾根線が各指毎には対応しないことになり(A)、(B)両者の照合は困難であった。つまり、従来の単眼カメラによる(Y2)の各形状推定では、同一輪郭線で異形状をどのように識別するかという課題を有していた。
例えば、従来の方法では、入力画像を、例えば、図7(c)のように、手指の高さと幅を用いて手指の形状を推定している。正規化した手画像を、例えば、図7(a)、図3(a)、(b)のようにして縦8セル×横8セルに分割して64分割された局所領域(セル領域)にする。その場合、図4(a3)及び図6(b)のデータベースの照合用画像それぞれの輪郭線のみを抽出した画像も同様に64分割する。
図3(c)に示したように各セル領域内の縦線・横線・斜線・折れ線・ドットに相当する画像特徴量により手指形状を表現する。例えば、図3(c1)の指の両側が示された領域の場合は、輪郭線にすると右下がりが2本になるが、図3(c2)の指の片側のみが示された領域の場合は、輪郭線にすると右下がりが1本になり、両画像領域は一致又は類似しない。また、正規化された手画像を縦16セル×横16セルに分割して256分割されたセル領域にすることもでき、それ以上の、縦64セル横64セル等にも分割できる。
ここで、図3(b1)、(b2)に示したように、縦列の隣接する複数個のセル領域をグループ化(グループ401、403)してブロック領域とするか、横列の隣接する各セル領域をグループ化(グループ402、404)してブロック領域とするか、あるいは、縦横両方の隣接するセル領域を組み合わせてグループ化してブロック領域として画像領域を拡大することで、比較される各ブロック領域の画像特徴量が一致又は類似する確率を向上させることができる。
また、ブロック領域は、例えば、図7(b)のようにして、順次シフト又は走査(スキャン)させることができる。例えば、横列の隣接する2個のセル領域をグループ化してブロック領域とした図3(c3)と図3(c4)は、上記した図3(c1)と図3(c2)の場合と変わらないので一致又は類似しないが、その2領域横方向グループ化したブロック領域を、横列で隣接する1セル領域だけ順次シフトさせる、言い換えれば、ブロック領域をセル毎の細かいピッチで横方向に走査させると、図3(c5)と図3(c6)のように、各ブロック領域には指の両側が示され、輪郭線にすると右下がりが2本になるので、各ブロック領域の画像特徴量が一致又は類似することになる。
このブロック領域をセル領域単位で走査させることで、各回のブロック領域は他の領域と一部重なって特徴量化される。これを各セル単位で判断すると、各セル領域は複数回特徴量化されることになる。従って、その各セル毎の複数回の特徴量化から、例えば平均値を得る等により平滑化することができる。これによって1枚の手画像から算出される画像特徴量が平滑化され、手画像から得られる手の形状の見えの個人差を吸収して、画像の相違による手形状の誤推定を緩和させることが可能となる。そのため、一部の手指形状については、データベース内に各個人に対応するようにデータを増やすことなく形状推定が可能になって、多くの使用者により汎用的に利用できる可能性が出てくる。従って、本発明でもブロック領域をセル領域単位で走査させている。
しかし、例えば、図4(a1)及び(a5)に示すような各手指形状の場合は、図4(a1)に示す手形状はつまみ動作を表し、図4(a5)に示す手形状は握り動作を表しており、両手形状は異なるが、図4(a2)及び(a4)に示すように輪郭線が類似しているため、外周の輪郭線のみでは識別が困難である。しかしながら、このような輪郭線が類似している手指形状の識別は、例えば、仮想空間内での作業や、遠隔地にあるハンドロボットを操作する上での、「物のつかみ方」に関わる。この識別ができることは緻密な作業には欠かせないものであるので、この識別は課題となっている。
また、骨格化された細線(尾根線)を用いる方法では、例えば、多様な指の幅の個人差に対して、輪郭線ではそのまま幅の個人差が残ってしまうが、尾根線を用いて推定を行うと指の幅は出ないので、指を伸ばした状態については、個人差をある程度は抑制することができる。しかし、この尾根線情報は、上記したように輪郭線を得て、それを元に生成される情報であるので、図4(a1)と図4(a5)のように、輪郭線で判別できない手指形状を識別する問題を解決することができない。
また、HoGによる方法を用いた場合、HLACによる手法と比較して、手の形状情報を多く含む輝度勾配情報を用いるため、より高精度な手指形状状推定を行うことができるので、同一輪郭線で異形状の識別問題を解決できる可能性は高く、本発明でもHoGによる方法を基本的に用いている。
<<人の手には様々な個人差があるため、同じ形状をしていても識別が困難である問題>>
上記したHLACによる手法やHoGによる手法では、各局所領域の内部で分割局所領域毎に緻密な特徴量化を行っており、例えば、指の太さ・厚み・長さなど人の手には様々な個人差があるため、同じ形状をしても、分割局所領域毎に緻密な特徴量化を行ってしまうと、指の各部の位置が別の分割局所領域内に含まれてしまう事態が発生し、局所領域としての特徴量としては大きく変わることになる。その場合個人差により輪郭の識別が困難になるという問題が生じていた。このように、従来の単眼カメラによる形状推定では、個人差をどのように抑制するかという課題も有していた。
換言して言えば、上記した従来の手指の形状検出における単眼カメラを用いた2Dアプローチでは、いずれも特徴量を得る段階で、画像形状をより正確に認識するために、各局所領域の内部で分割局所領域毎、あるいは画素単位毎のように正確に輝度を認識するようにしており、同一輪郭線異形状の識別問題と個人差問題を解消するためには、特徴量化においてもなるべく画素毎に近いように正確で緻密に行い、それをデータ処理又は演算処理により解析することで抑制する方法が検討されていたが、逆に、細部まで特徴量化して個人差が明確になることで、識別が困難になっていた。
以上のように、従来の単眼カメラによる手指形状推定プログラムで、手画像から精緻な輪郭線情報を得て、その輪郭線情報と照合用の画像データとから手指形状を推定しようとしても、手画像の輪郭線情報から復元できる手の最外形の形状情報に限られており、指が手の平や他の指と重なっていたり、握られていた場合、最外形の輪郭線から全ての指の様々な形状を推定するのは容易ではないという問題があった。
換言すれば、個人差をどのように抑制するかという問題は、従来の事前に照合用の手指データベースを構築し、入力画像の最外形の輪郭線との照合を行うシステムで、入力画像に対して、膨大なデータベースから最も類似する手指画像を、動画の次の画像が入力される前に高速に見つけなければならないのでデータベースの容量と演算(検索)速度にも関係する。一般的に、データベースに格納されている各個人の各形状毎の手の数は有限であるので、汎用に用いられるようなあらゆる場面を含んで、入力画像と同一の個人の格納された形状の手に該当しない場合の手の形状、すなわち、個人差を含んだ任意の手の形状を正しく推定することは困難である。特に、手の形(骨の長さ、太さ、掌と指の比率)などの個人差はデータベースの増強では間に合わない問題でもある。
従って、単眼カメラを用いた2Dアプローチでの従来の形状推定方法では、図4(a1)及び(a5)に示すような各手指形状の場合の同一輪郭線異形状の識別問題を解決できず、個人差問題も解決できなかった。
そこで本発明は、上記の同一輪郭線異形状の識別問題と個人差問題を解決するために、単眼カメラを用いた2Dアプローチでの形状推定における、上記各問題を解消する方法を提供することを目的とし、より詳しくは、単眼撮像装置で撮像した多様な個人差を有する手指画像から個人差を抑制して手指形状を推定及び検出でき、さらにその指の関節が屈曲状態であっても、その画像から、手指の形状を推定して検出できる方法を提供することを目的とする。
まず、同一輪郭線異形状の識別問題を解決するために、上記したように本発明では、手の形状情報をあまり含まない輪郭線情報を推定に用いる従来のHLACによる手法を用いず、手の形状情報をより多く含む、手の輝度勾配情報を推定に用いるようにHoGによる手法を用いて、手画像の局所領域毎に輝度勾配方向ヒストグラムを算出し、これを特徴量化しこれを推定に用いている。これにより輪郭線情報を用いていた手指形状推定よりも多くの形状を推定することが可能になる。この輪郭ではなく輝度勾配を用いることから、上記した輪郭線が類似しているため識別が困難となる問題が発生しなくなり、推定可能な形状が増加し、より緻密な作業が可能となっている。また、特徴量化を行う局所領域のセルとしては、縦3セル×横3セルを1ブロック領域としている。
上記個人差問題の原因について、本発明の発明者は、次に、この個人差問題が生じるのは、各局所領域の内部で分割局所領域毎に緻密な特徴量化を行っているためであると推定した。この緻密な特徴量化は、従来の2Dアプローチの特徴量による形状推定では、より正確で、より緻密な手指形状の検出結果からでなければ形状は解析できないという概念が常識的であったためと考えられる。
しかし、例えば、指の太さ・厚み・長さなど人の手には様々な個人差があるため、同じ形状をしても、緻密な特徴量化を行ってしまうと、指の位置が別の分割局所領域内に含まれてしまい、特徴量が大きく変わることになる。従って個人差により輪郭の識別が困難になり、手の形状の個人差による誤推定問題が発生することになる。これは換言すれば、同じ形状でも、指の太さや長さなどの個人差により画像の見え方が変化していまい、予め用意した図4(a3)等のデータベースの中に入力と同じ形状があるにもかかわらず出力する形状は異なったものとなってしまう可能性がある。そこで本実施形態では、逆に正確性については劣化させることになるため従来は考慮されない平滑化の手法を用いる。
上記した問題を解決するために、本発明に係る手指形状の検出方法は、撮像装置で撮像された手指の撮像画像から、情報処理装置により手指形状の検出方法であって、画像特徴抽出法として、HoG法を用い、情報処理装置が、撮像画像の画像特徴量データを生成する際に、撮像画像を正規化して正規化撮像画像とした後、さらにその正規化撮像画像の輝度の画像を平滑化した平滑化輝度画像としてから、その平滑化輝度画像の輝度勾配情報を画像特徴量として算出する工程、を含む。
好ましくは、本発明に係る手指形状の検出方法では、情報処理装置が、平滑化を、ガウス関数を利用したガウシアンフィルタで行うようにしてもよい。
好ましくは、本発明に係る手指形状の検出方法では、情報処理装置が、撮像画像の画像特徴を生成する際に、機器装着方式のジェスチャー入力により形状が検出された複数の手指形状データのデータセットに、照合用の撮像画像から生成された照合用画像特徴量データとを含ませて照合用データベースを作成する工程と、検出用の撮像画像から、検出用画像特徴量データを生成する工程と、検出用画像特徴量データを、データセット中の照合用画像特徴量データと対比し、類似する照合用の画像特徴量データを含むデータセットを選択する工程と、選択工程で選択されたデータセット中の手指形状データを手指形状の検出結果に含ませて出力する工程と、を含むようにしてもよい。
好ましくは、本発明に係る手指形状の検出方法では、照合用データベースを作成する工程では、さらに照合用の撮像画像から生成された照合用画像形状比率データを含ませて照合用データベースを作成し、類似する照合用の画像特徴量データを含むデータセットを選択する工程では、第1段階として、検出用の撮像画像から、検出用画像形状比率データを生成し、検出用画像形状比率データを、全てのデータセット中の照合用画像形状比率データと対比し、類似する照合用画像形状比率データを含む複数のデータセットを選択し、さらに第2段階として、検出用画像特徴量データを、第1段階の選択工程で選択されたデータセット中の照合用画像特徴量データと対比し、最も類似する照合用画像特徴量データを含むデータセットを選択し、手指形状データを検出結果に含ませて出力する工程では、第2段階の選択工程で選択されたデータセット中の手指形状データを手指形状の検出結果に含ませて出力すること、を含むようにしてもよい。
好ましくは、本発明に係る手指形状の検出方法では、照合用データベースを作成する工程が、機器装着方式のジェスチャー入力により、複数の手指形状について、関節角度及び回旋角度を含む形状データを検出し、手指形状毎に検出された形状データを対応させて格納するデータセットを作成し、照合用データベースが、データセット中の同種の手指形状の各データに対応させて、当該同種の手指形状に対応する各画像形状比率が含まれる第1段階照合用画像形状比率データを、照合用データベースの階層構造の上層に格納し、同種の手指形状の各データの各々に対応させて、複数の手指形状を撮像装置により撮像した照合用の各撮像画像からHoG法により各々の画像特徴量を算出し、各々の手指形状に対応する画像特徴量が含まれる第2段階照合用特徴量データを、照合用データベースの階層構造の下層に格納する工程と、を含むようにしてもよい。
好ましくは、本発明に係る手指形状の検出方法では、検出用画像形状比率データの生成が、検出用の撮像画像から、手指画像の縦長度、上長度及び右長度を含んで全体形状の特徴を示す画像形状比率を算出する算出方法により、撮像画像の画像形状比率を画像形状比率データとして生成されるようにしてもよい。
上記課題を解決するために、本発明に係る手指形状の検出方法のプログラムは、上記した何れか一つの検出する方法における各工程を実施し、本発明に係る手指形状の検出方法のプログラムの記憶媒体は、上記したプログラムを記憶する。
上記課題を解決するために、本発明に係る手指の形状を検出するシステムは、(a)手指の画像を撮像可能に設置された少なくとも1台の撮像装置と、(b)撮像装置から入力する各手指形状を撮像した画像データから画像形状比率データ、輝度勾配方向ベクトルを含む画像特徴量データ、を算出し、両データを機器装着方式のジェスチャー入力により形状が検出された複数の手指形状のデータセットに対応させて照合用データベースに格納する情報処理装置とを少なくとも含んで構成される手指の形状を検出するシステムであって、情報処理装置が、上記したプログラムを実行する。
本発明の手指形状の検出方法によれば、単眼カメラを用いた形状推定において、指の関節が屈曲状態である手指の撮像画像からは、輪郭線による識別が困難である同一輪郭線異形状の識別問題と、多様な個人差を有する手指画像から、その個人差を抑制して任意の人の手指形状を推定及び検出することが困難である個人差問題を抑制して、任意の人の手指画像から手指の形状を推定して検出することができる。
本発明の第一実施形態に係る手指の形状を検出するシステムの概略構成を示すブロック図である。 本発明の第一実施形態に係る動作フローチャートである。 さまざまな手形状の個人差、指の端部、輪郭線を示した図である。 従来の輪郭線による方法と本願発明の方法の概要を比較した図である。 さまざまな手形状の変化の例を示した図である。 データグローブとデータベースの例を示した図である。 セル分割とブロックの移動、手指の領域の例について示した図である。 輝度画像と平滑化、輝度勾配の例を示した図である。 輝度勾配のヒストグラムの例を示した図である。 縦横を8セル分割してブロック化しない場合の例を示した図である。 縦横を8セル分割して2セルを1ブロックとした場合の例を示した図である。 加算特徴量の可視化(特徴量化)を示した図である。 (a)が平滑化無しの場合の1セルの縦横が4画素と8画素の場合のヒストグラムであり、(b)が平滑化無しと有りの場合の1セルの縦横が8画素の場合のヒストグラムである。 (a)が平滑化無しと有りの場合の1セルの縦横が8画素の場合のヒストグラムであり、(b)が図13(a)〜(b)と図14(a)を合わせたヒストグラムの昇順結果を示す図である。 図13(a)〜(b)と図14(a)を合わせたヒストグラムの特徴量化面積の割合順結果を示す図である。
<実施形態>
同一輪郭線異形状の識別問題と個人差問題を解消するために、
本発明のより具体的な特徴量としては、上記HoGによる手法の画像空間内での輝度勾配情報を用いた。指の場合の輝度については、指の内側領域は全般的に輝度が高く変化が少なく、それに対して指のエッジ領域の輝度はエッジに近づくほど低くなる。従って指の輝度の勾配値は、指の内側領域では変化が小さいのに対して、指のエッジ領域では、エッジに近づくほど輝度勾配値が大きくなる。そこで、輝度勾配値に所定のしきい値を設けて、そのしきい値以上の領域を繋げていけば指のエッジ領域を検出できる。また、輝度勾配値を、方向と輝度変化値を可視化して示すベクトルの矢印線で表示し、そのベクトルの矢印線に直交する線を引き、その直交線を連結させることで指の擬似的な輪郭線を求めることができる。ここで「擬似的な」という表現を用いたのは、指のエッジ領域に対するベクトルの矢印線とそのベクトルの矢印線の描き方によっては、実際の指のエッジの線に対して指の内側又は外側にシフトする場合があるためである。
従来のHoGによるアプローチでは、指の所定エッジ領域毎に、正確に画素毎の輝度値と各隣接画素毎の輝度差から輝度変化の方向と輝度変化値を可視化して示すベクトルを求め、矢印線で表示させていた。本発明では、そのベクトルを求める際に、ベクトルを求める目的画素に対して周辺の画素まで含めて拡大領域化し、その拡大領域を1画素毎又は所定画素毎にシフトさせて平滑化させる。シフト方向は、例えば上記したベクトルの矢印線に対する直交線の方向とすればよい。つまりHoGによる手法の輝度勾配情報を用いたアプローチにおける特徴量化段階、より具体的には、輝度変化の方向と輝度変化値を示すベクトルを求める際に平滑化の手法を用いて特徴量化する検出方法を提供する。
<システム構成>
図1の本実施形態に係る手指の形状を検出するシステムにおいては、情報処理装置1と撮像装置100と表示装置200とデータグローブ300とを含み、情報処理装置1は撮像装置100と表示装置200とデータグローブ300と通信接続される。
データグローブ300は、図6(a1)、及び/又は図6(a2)に示したように手袋形状の手指装着部の各関節部に、その各関節部の角度を検出可能なセンサが設置されており、図6(a3)〜図6(a6)に示したような異なる手指形状に対応する各関節部の角度データを出力できる。各画像の手指形状に対応させて角度データが情報処理装置1内の照合用手指データベース記憶部31に格納される。このデータグローブ300は、照合用手指データベース記憶部31に、各手指形状に対する角度データを対応させて格納する時に用いられるが、実際の手指画像から手指データを照合して検出する時には用いられない。
より具体的には、指関節角度データの取得にはデータグローブ300(Virtual Technologies社製、Cyber GloveII)を用いることができる。また、前腕回旋角度の計測には、3軸加速度センサ(kionix社製、KXP84−2050)を用いて前腕回旋角度計測を行うことができる。加速度センサはデータグローブ300の手首の位置に固定される。データグローブからの指関節角度データの値と前腕回旋角度の値とは組み合わされて情報処理装置1内の照合用手指データベース記憶部31に格納される。
表示装置200は、入力画像及び/又は入力画像から検出された手指形状の確認、輪郭線の確認等の用途であれば通常のLCD等の平面ディスプレイを用いることができる。また、表示装置200内に実写の背景画像又はバーチャルリアリティの背景画像を表示させ、その中で入力画像から検出された手指形状に基づいて再生又は合成された手指形状を表示させると共に、遠隔地等に設置された各種の手指形状対応機器等に向けて検出された手指形状のデータを送信することで、手指形状対応機器等の遠隔操作を行いモニタリングすることができる。手指形状対応機器は、遠隔地の大型の装置に設置された大型ロボットハンド等であってもよいし、極小部品の組み立て用等の小型ロボットハンド等であってもよく、そのような場合の表示装置200では、周囲状況や合成された手指形状を縮小又は拡大して示せばよい。
この応用として、本発明は、センサ類の装着なしに、バーチャルリアリティ空間内で手を用いた様々な作業をすることが可能である。また、本発明は、没入型のヘッドマウントディスプレイや、赤外線センサによるヘッドトラッキング・モーションキャプチャをするシステムを併用することで体全体をバーチャルリアリティ空間に入り込むことが可能である。その際に本発明は、単眼カメラのみを用いて推定を行うため、赤外線センサによるモーションキャプチャが手指形状画像と干渉することはない。
撮像装置100は、手指の画像を撮像可能に設置された少なくとも1台の撮像装置であり、例えば、2Dアプローチで動画を撮像できる単眼カメラであればよいが、本実施形態では高速(例えば、640×480[pixel]の画像を60fpsに設定可能)に動画像を撮像できるカメラを用いた。そのようなカメラとしては、例えば、Point Grey Research 社製 Flea3を使用することができる。本実施形態では、撮像装置100は、手を自由に移動できるように、例えば、机から80[cm]の高さに設置した。
情報処理装置1は、撮像装置100から入力する各手指形状を撮像した画像データから画像形状比率データ、輝度勾配方向ベクトルを含む画像特徴量データ、を算出し、両データを機器装着方式のジェスチャー入力により形状が検出された複数の手指形状のデータセットに対応させて照合用データベースに格納する。
情報処理装置1内には、画像データ記憶部11、手指領域検出部12、画像形状比率算出部13、手指画像領域正規化部14、輝度情報検出部15、輝度画像平滑化部16、輝度勾配方向算出部17、N×Nセル分割部18、M×Mセルブロック領域設定部19、輝度勾配方向ベクトル算出部20、ヒストグラム作成部21、ヒストグラム正規化部22、繰り返し判定部23、撮像画像特徴量生成部24、類似度照合部25、最類似手指形状記憶部26、照合用手指データベース記憶部31、データグローブデータ記憶部41、各種設定値記憶部71、プログラム記憶部81及び制御部91が設けられ、撮像装置100側から表示装置200側に向けて、上記順に通信可能に接続される。
画像データ記憶部11は、撮像装置100で撮像された各フレームの画像データを格納する。手指領域検出部12は、格納された手指の撮像画像の画像データから図7(c)に示したように手指画像領域の高さ(L height)と幅(L width)を求めて処理される画像の領域を検出する。その際に、手首の位置は、例えば前腕の両側部を輪郭線検出することで上腕側ではない端部を手首と検出することができる。検出画像は図5に示したような様々な形態をとりうる。手指領域の検出は、より具体的には、撮像装置100から取得した画像に対して、まず正規化を行った色空間から人肌抽出を実施する。次に、その人肌抽出後の画像に対して、画像下端から延びる領域を腕領域とし、その腕領域のみを切り出す。次に、腕画像の二値化画像から距離変換画像を算出し、最も高い画素値を持つ位置から、その画素値分だけ下ろした位置を「手領域の下端」とする。腕領域内でその「手領域の下端」より上部の領域における、最も右にある前景領域位置を「手領域の右端」、最も左にある前景領域位置を「手領域の左端」、最も上にある前景領域位置を「手領域の上端」とする。
画像形状比率算出部13は、検出された手指領域の画像から画像形状比率を算出し、例えば、図5(c)に示したReference Pointから上部のL upper部のL height(高さ)に対する比率を算出し、L right部のL width(幅)に対する比率を算出し、各画像の分類に使用する。
より具体的には、手指領域検出部12で検出された手指画像を二値化し距離変換画像を作成する。距離変換画像の最深点を基準点として、データベース第一次探索用の手形状比率を算出する。手形状比率は縦長度、上長度、右長度の3つのパラメータで表し、それぞれ以下の数式(1)〜(3)のように定義する。
Rtall =Lheight / (Lheight+ Lwidth) ・・・(1)
但し、
Rtall:縦長度
Lheight:下端から上端までの長さ[pixel]
Lwidth:左端から右端までの長さ[pixel]
Rtopheavy = Lupper / (Lupper + Llower) ・・・(2)
但し、
Rtopheavy :上長度
Lupper:基準点から上端までの長さ[pixel]
Llower :基準点から下端までの長さ[pixel]
Rrightbased= Lright / (Lright + Lleft) ・・・(3)
但し、
Rrightbased:右長度
Lright:基準点から右端までの長さ[pixel]
Lleft:基準点から左端までの長さ[pixel]
手指画像領域正規化部14は、検出された手指領域の画像から手指領域を正規化する。より詳しくは、手指画像領域の各画像データの高さ(L height)と幅(L width)の値を正規化して、例えば、図8(a)の64pixel×64pixel等の所定値になるように揃える。つまり、本実施形態の正規化では、手指の幅と高さを規定することに加えて、例えば、入力画像を縦64(pixel)×横64(pixel)の画像に縮小して正規化する。輝度情報検出部15は、正規化された手指領域画像の各画像データから各画素(pixel)の輝度情報を検出して輝度画像を得る。輝度画像平滑化部16は、例えば、図8(b)のガウス関数を利用した5×5[pixel]のガウシアン・フィルタを用いて正規化された輝度画像を平滑化することで画像のノイズを低減させる。
ガウス関数のフーリエ変換は、以下の数式(4)−(5)のようにやはりガウス関数になる。
G(ω)=exp(−σω/2)=exp(−ω/2(1/σ)) ・・・(4)
G(u、v)=exp(−σ(u+v)/2)=exp(−(u+v)/2(1/σ)) ・・・(5)
g(x)は平均0、分散σの正規分布を表し、0を中心に釣鐘状の分布を持つ。また、分散が大きいほどデータのばらつきが大きいことになり、分布は広範囲に広がることになる。そのフーリエ変換であるF(ω)は、数式4,5から平均0、分散(1/σ)の正規分布となっていることがわかる。このフィルタを使って信号を畳み込み積分すると、低周波数成分だけを増幅させて高周波領域をカットする「低域フィルタ」として作用することになり、分散を大きくするほどそのフーリエ変換の幅は狭くなるため、低周波領域が極端に強調される。畳み込み積分によって周囲の信号をいっしょに積算する度合いが増えることにより値が平滑化されることからも推測できる。
ガウシアン・フィルタを画像に使用した場合、“ぼかし”を掛けたような効果が得られる。これは「ガウシアンぼかし(Gaussian Blur)」と呼ばれる画像処理である。処理内容としては、各位置におけるガウス関数の値をコンストラクタで作成して、画像内の各画素について、その周囲の画素といっしょに畳み込み積分を行っている。σを大きくするほど低周波領域の成分が強調されるため、結果として画像がぼやけた感じになる様子を上の結果から見ることができる。サンプリングされた画素は、その周囲の画素の色成分がガウス関数の分布に従って加味されるので、ある程度周囲の画素の影響を受けることになる。
輝度勾配方向算出部17は、検出された輝度情報から各画素の輝度勾配情報(輝度勾配方向)を算出する。例えば、平滑化された輝度画像から、空間1次微分を計算して輪郭を検出する3×3のソーベル・フィルタを用いて各画素(pixel)における輝度の勾配方向を情報として検出し、例えば、18方向に量子化し、量子化した輝度勾配方向を画素値として図8(c)のように輝度勾配画像を形成する。各画素における輝度勾配方向θは、それぞれ以下の数式(6)−(7)のように定義する。

但し、
θ(x,y):画素 (x,y) における勾配方向
fx(x,y):画素 (x,y) における横方向のソーベルフィルタSxによって得られた値
fy(x,y):画素 (x,y) における縦方向のソーベルフィルタSyによって得られた値
N×Nセル分割部18は、撮像画像を分割して分割セル領域を設定する。例えば、図7(a)、図8(d)及び図10(a)に示したように縦横の画素数とセル数を同じにした場合、輝度勾配画像を縦N列のセル×横N列のセルに分割してN×N個のセルからなる画像とする。Nは2以上の自然数から選択される所定数であり、例えば、8、16、32、64等の2の累乗の数を用いることができる。M×Mセルブロック領域設定部19は、図7(b)に示したように撮像画像内に、縦横に隣接する複数の分割セル領域で構成される検出ウィンドウとなるブロック領域を、上下左右の角の一つから初めて順次設定する。例えば、2個以上の複数のセルを1ブロックとして、縦横のセル数を同じにした場合、縦M列×横M列(Mは1以上の自然数から選択される所定数)のブロックを設定できる。図8(d2)〜図8(d10)では3×3のブロックを横にシフトさせて、左側の指の左端部の片側ライン、2本の指の中央線のライン、右側の指の右端部の片側ラインを検出している。
輝度勾配方向ベクトル算出部20は、撮像画像内のブロック領域内の輝度勾配方向から、角度分割数L(Lは180>L>2の自然数から選択される所定数)毎に各画素の輝度勾配のヒストグラムを作成する。例えば、図9に示したようにブロック毎の輝度勾配方向を、例えば0°から10°刻みで170°までの(L=)18方向、又は、0°から20°刻みで160°までの(L=)9方向に角度分割して、各方向の画素数を計数し、ヒストグラム化する。つまり、エッジ抽出した正規化画像を複数のセルに分割後、0度から180度での輝度勾配方向を一定ピッチに分割し、各セルにおいて輝度勾配ヒストグラムを算出し、さらにこれを正規化したものを特徴量とする。ヒストグラム作成部21は、各ヒストグラムの全角度の最大値(画素数)の大きさが、例えば、同じ1になるように正規化する。
ヒストグラム正規化部22は、正規化された各ヒストグラムの各方向の値(特徴量)を加算する。繰り返し判定部23は、手指領域内のブロックのうち、正規化ヒストグラムの各方向の値(特徴量)の加算が行われていないブロックが有るか、又は逆に、正規化ヒストグラムの各方向の値(特徴量)の加算が手指領域内の全ブロックについて加算されたかを判定し、次ブロックがあればM×Mセルブロック領域設定部19により、像画像内の分割セル領域を左右方向又は上下方向に1セルずらして、撮像画像内に新規の領域が設定できなくなるまで、次のセルブロック領域を設定させ、以降のヒストグラム作成処理と加算処理を繰りして実施させる。
これは、上記した特徴量化のみでは個人差問題に対応できないため、複数のセルで構成されるブロック領域毎に輝度勾配ヒストグラムで特徴量を作成し、正規化を行うという特徴量化を、1セルずつブロック領域をずらしながら行う。これにより、手指の空間的な変化を特徴量レベルで平滑化することができる。
撮像画像特徴量生成部24は、次ブロックが無い場合、検出ウィンドウブロック領域内の各画素の輝度の加算結果から、角度分割数Lの各方向ピンから割り当てられた方向の輝度勾配を得て、各検出ウィンドウブロック領域毎にブロック領域内の角度分割数Lの各方向の輝度勾配を計算する。各画素の輝度の加算結果から、撮像画像内の加算化した輝度勾配方向ベクトルを特徴量として生成して可視化する。可視化した輝度勾配方向ベクトルを特徴次元数とする。
特徴次元数はセル分割数・ブロック領域内セル数・輝度勾配方向分割数に依存し、以下の数式(8)のように定義する。
Df = (Cx- Bx + 1) × (Cy - By+ 1) × DivA ・・・(8)
但し、
Df:画像特徴次元数
Cx:横方向セル分割数
Cy:縦方向セル分割数
Bx:横方向ブロック領域内セル数
By:縦方向ブロック領域内セル数
DivA:輝度勾配方向分割数
上記したように図7(a)に8×8[セル]分割したときの例を示し、図7(b)に2×2[セル]を1ブロック領域の例を示し、図9に輝度勾配分方向割数を9にしたときの輝度勾配ヒストグラムの例を示す。また、図12に提案手法の特徴量の可視化の様子を示す。ただし、重なっているセルにおいては特徴量を加算して可視化しているので、この可視化情報が特徴量と等しいわけではない。また、この可視化における輝度勾配方向分割数は18である。この場合の入力形状を図12(a)に示す。
図12(b)は1セルが8×8[pixel]で1ブロック領域が1セルで構成されている。HoGを可視化すると図12(d)に類似する画像となる。図12(c)は1セルが8×8[pixel]で1ブロック領域が2×2[セル]で構成されており、図12(b)の特徴量が平滑化された画像である。図12(f)は1セルが4×4[pixel]で1ブロック領域が4×4[セル]で構成されているが、セルサイズが小さくなったので図12(e)より細かく平滑化される。
検出(推定)に用いるデータベースをあらかじめ作成する場合には、図6(b)に示したようにデータベース探索を高速にするための手形状比率、細かいマッチングを行うためのこの可視化データ(画像特徴量)とデータグローブ等からの出力用の関節角度データ等の3つのを組み合わせて1データセットとして、複数のデータセットの集合をデータベースとして照合用手指データベース記憶部31に格納する。
データベースを作成する場合、例えば、所定位置に固定された撮像装置100により右手を撮影し、同時に左手にはデータグローブ300を装着し、撮影している右手と同じ形状をすることで関節角度データを取得する。撮影した画像に対して、上記したステップS2〜S13の処理(実際の新規の手指の形状を検出する場合と同様の処理)を行うことで手形状比率と画像特徴量を取得し、それを同フレームにおける関節角度データを関連付けることでデータセットを作成する。これを連続して行うことでデータベースを作成する。
実際の新規の手指の形状を検出(推定)する場合には、可視化データを類似度照合部25に送出する。類似度照合部25は、照合用手指データベース記憶部31の各画像特徴量データと、撮像画像特徴量生成部24から入力した新規の画像特徴量データ(可視化データ)との類似度を照合し、最類似する画像特徴量データから手指の形状を検出して出力する。最類似手指形状記憶部26は、最類似データに含まれる手指画像に組み合わされた手指の関節角度及び回旋角度データを記憶し、表示装置200に出力する。
この場合の出力は、概略的にまとめると、以上のように所定位置の撮像装置100により手を撮影し、後述するステップS2〜S13の処理を行うことで手形状比率と画像特徴量を算出し、同様にして得た画像特徴量とデータグローブ300を装着して得られた関節角度データ等とを組み合わせて用意されたデータベース内の特徴と比較し、関連付けられた関節角度データを最類似手指形状記憶部26から出力する。
類似度照合部25では、データベース探索高速化を目的として、入力手画像から算出された手形状比率とすべてのデータセット内の手形状比率を比較し、絞り込みを行う。以下の数式(9)を満たすデータセットのみにおいて画像特徴量による細かな比較を行う。
Th >
(Rcurrenttall- Rtall[i])2 +
(Rcurrenttopheavy- Rtopheavy[i])2 +
(Rcurrentrightbased- Rrightbased[i])2 ・・・(9)
但し、
Th:閾値
i:参照データセット番号
Rtall[i]:i番目のデータセットの縦長度
Rtopheavy[i] :i番目のデータセットの上長度
Rrightbased[i] :i番目のデータセットの右長度
Rcurrenttall:入力画像の縦長度
Rcurrenttopheavy:入力画像の縦長度
Rcurrentrightbased:入力画像の右長度
入力手画像の画像特徴量と、上記の絞り込みを通過したデータセット内の画像特徴量を比較し、類似度を算出する。類似度の計算にはユークリッド距離を用い、以下の数式(10)によって算出する。

但し、
j:データセット番号
E[j]:j番目のデータセットとの類似度
x-currenth:入力画像特徴量
x-dataseth:j番目のデータセット画像特徴量
Df:特徴次元数
h:特徴量次元番号
類似度照合部25は、例えば、類似度E[j]が最も小さくなるとき、j番目のデータセットに格納された手指関節角度情報を出力する。このようにして、最類似のデータセットを求め、その場合の手指関節角度情報に対応する画像を表示装置200に出力する。
エッジ検出部27は、手指画像領域正規化部14で正規化された画像に対して、ソーベルフィルタを用いてエッジ抽出を行い照合用手指データベース記憶部31及び類似度照合部25に出力する。これにより、従来の手指の形状を検出(推定)する方法のメリットも享受することができる。
各種設定値記憶部71は、例えば、領域を分割する縦横の所定数N(縦横で異なる場合は縦N1、横N2)、1ブロック内のセルの縦横の所定数M(縦横で異なる場合は縦M1、横M2)、角度分割数L=ヒストグラムの棒数、との設定値を格納する。プログラム記憶部81は、汎用の情報処理装置1内の記憶装置と演算装置等について、上記した各部のように動作させるためのプログラムを格納する。制御部91は、プログラムに従い、上記した各部を制御する。
本実施形態に係る手指の形状を検出するシステムの動作について図2のフローチャートを用いて説明する。まず、実際の手指形状の検出を実施する前に照合用データベースを構築する(S1)。照合用データベースの構築には、データグローブ等の機器を装着して得られた手指の関節角度及び回旋角度データと、後述する使用者を単眼撮像装置で撮像したグレイスケール手指画像の分割領域毎のHoGによるアプローチによる画像特徴量と、撮像装置100からの各個人の画像を組み合わせて照合用の画像データベースを作成する。その際には、例えば、画像特徴量としては輝度勾配の方向と画素数を可視化して示すベクトルを求め、そのベクトルを求める際に、ベクトルを求める目的画素に対して周辺の画素まで含めて拡大領域化し、その拡大領域を1画素毎又はブロック毎又はセル毎等の所定画素毎にシフトさせて各画素毎の値を加算及び平滑化させる。また、従来の輪郭線からの画像特徴量(手指縦画像寸法、手指画像横寸法、輪郭線の縦線、横線、斜線、折れ線、ドット等)とを組み合わせることもできる。
実際の手指形状の検出では、撮像装置100からの新規又は既知の個人の手指を含んで撮像された画像が情報処理装置1に入力され、画像データ記憶部11に画像データ格納される(S2)。画像データ記憶部11に格納された画像データから手指領域検出部12で手指領域が検出される(S3)。検出した画像の手指領域から、画像形状比率算出部13で、その形状比率が算出される。その画像領域が手指画像領域正規化部14で正規化される(S4)。
その後、正規化された画像領域から輝度情報検出部15で輝度情報が検出されて輝度画像が得られる(S5)。輝度画像が輝度画像平滑化部16で平滑化される(S6)。平滑化された輝度画像から輝度勾配方向算出部17で輝度勾配の方向を含む情報が算出される(S7)。
図7(a)、図10(a)に示したように輝度画像がN×Nセル分割部18でN×Nセルに分割される(S8)。次に、図7(b)、図11(a)に示したようにM×Mセルブロック領域設定部19で輝度画像にM×Mセルのブロックが設定される(S9)。
各ブロックは、輝度画像から図9、図11(b)に示したように、輝度勾配方向ベクトル算出部20で、ブロック毎に、角度分割数Lの各輝度勾配方向毎の画素数のヒストグラムが作成される(S10)。なお、比較のために図10(b)に1セルの場合の角度分割数Lの各輝度勾配方向毎の画素数のヒストグラムを示す。次に、図11(c)に示すように各ヒストグラムをヒストグラム作成部21で正規化する(S11)。この場合も、比較のために図10(c)に各ヒストグラムを正規化したものを示す。
正規化された各ヒストグラム内の同じセルについてヒストグラム正規化部22で角度分割数Lの各輝度勾配方向毎の特徴量を加算する(S12)。M×Mセルブロック領域設定部19により次のブロックが設定不可能かをヒストグラム正規化部22で判断し(S13)、次のブロックが設定可能な場合(S13:No)は、ステップS9に戻って、1セル分シフトした次のブロックを設定する。次のブロックが設定不可能な場合(S13:Yes)は、撮像画像特徴量生成部24で、図12(e)、図12(f)に示されたように加算された特徴量がベクトル形式で可視化される(S14)。尚、図12(d)〜(f)においてDfは特徴次元数であり、Df=縦(N−M+1)×横(N−M+1)×Lで求めることができる。図12(e)が平滑化された手指画像を縦横のN=8セルに分割してM=2セル毎のブロックを設定し、角度分割数Lが18、特徴次元数Df=882の場合であり、図12(f)が平滑化された手指画像を縦横のN=16セルに分割してM=4セル毎のブロックを設定し、角度分割数Lが18、特徴次元数Df=3042の場合である。また、図12(b)と図12(d)は、比較参照用に示された平滑化されていない手指画像とその場合の可視化された特徴量である。
ステップS1の照合用データベースの構築時には、各個人の参照用手指画像がこのステップS14までの処理で特徴量化されて、データグローブ等の機器を装着して得られた手指形状に対応する関節角度及び回旋角度データや輪郭線からの画像特徴量等と組み合わされて格納される。次に、ステップS14で可視化された新規手指画像の特徴量が、照合用手指データベース記憶部31内に格納された参照データの画像特徴量と、順次類似度照合部25で類似度が照合される(S15)。そして、照合により類似度照合部25で判断された最も類似した手指形状が関節角度及び回旋角度データ等と共に出力されて(S16)、最類似手指形状記憶部26に格納され、対応する手指画像が表示装置200に表示される。その後、撮像装置100からの次の画像が情報処理装置1に入力されるか判断し(S17)、次の画像が無い場合(S17:Yes)は処理を終了し、次の画像が有る場合(S17:No)はステップS2に戻って次の画像を入力して上記した処理を実施する。
<最適セル分割数と最適ブロック内セル数を求める実験>
本実施形態の方法で、特徴量化レベルでの個人差対応をするには、その特徴量化領域を精査する必要がある。そこで、複数の被験者において、指を左右に振るなどの、個人差の影響が生じやすい形状を入力し、その結果から最適なセル分割数と1ブロック領域内のセル数を検討する。今回実験に用いたCPUはIntel社製core i7 950 (3。07GHz)である。
図3に示したような手形状から、上記の方法によりデータベースを作成した。この時のデータセット数は32671セットである。撮像装置100に手の甲を向けた状態を前腕回旋角度0度とし、前腕回旋角度0度から、撮像装置100に手のひらを向けた、前腕回旋角度180度まで、握り動作やつまみ動作、各指を立てた形状など数多くの形状をデータベースに格納した。
上記データベースに対して新規の被験者の図5のような形状の連続した動きを入力した。ただし、人肌抽出の誤作動を考慮し、背景に黒幕を敷いた。またデータベース探索高速化のための形状比率による絞り込み処理はせず、データベースを全探索するようなシステムとした。この時の提案手法における出力形状が入力形状と類似しているかどうかを目視によって判断し、その正答率を見た。
今回検討したパターンは(表1)に記述したものに従来手法であるHLACを加えたものである。また、できるだけ細かい輝度勾配方向分割の方が、識別形状が増えると考えたが、分割数を増やしすぎて、特徴次元数が増えすぎるのも好ましくない。そこで、今回の実験における輝度勾配方向分割数は18とした。これは、検討するパターンの内、1ブロック領域に複数のセルを持つ領域分割パターンにおける最大特徴次元数が、正規化画像サイズ、すなわち、4096より大きくならない程度の輝度勾配方向分割としたためである(表2)。
実験結果を図13−15に示す。ただし、簡略化のため、今回の実験ではすべてセルの大きさ、ブロック領域の大きさともに正方形であるので、特徴量化パターンの記述を、1ブロック領域内セル数N×N、画像内セル数M×Mのとき、bNcMとする。
図13(a)のヒストグラムでは従来手法と同様の、局所領域の1セルのみを特徴量化したパターン同士の比較を行っている。b1c8の結果から、従来手法で用いられていたHLACよりも輝度勾配ヒストグラムを特徴量化した手法の方の正答率が高いことがわかる。ただし、b1c16の特徴量化パターンでは正答率が従来手法と同程度であることもわかる。これは、特徴量化領域が4×4[pixel]と、狭すぎたためと思われる。
図13(b)のヒストグラムでは1画像内のセル分割数8×8同士の平滑化がある場合と無い場合の比較を行っており、また、図14(a)のヒストグラムでは1画像内のセル分割数16×16同士の平滑化がある場合と無い場合の比較を行っている。図14(b)はそれらの結果をまとめて正解率の昇順に示したヒストグラムである。図15はそれらの結果をまとめて特徴量化面積の割合順に示したヒストグラムである。図13−15から、最も正答率の高かった特徴量化パターンはb3c16であることがわかる。この時の正答率は平均92.26[%]で、標準偏差が2.25[%]であった(表3)。
以上の実験結果から、b3c16、すなわち、64×64[pixel]に正規化された画像中の12×12[pixel]の領域を4×4[pixel]ずつ動かしながら特徴量化した特徴量化パターンが92.26[%]と最も正答率が高く、標準偏差が2.25[%]と最も低いことがわかったことから個人差も少ないことがわかる。
最適とされたb3c16の特徴量化パターンにおいて、提案手法をシステムに組み込んだ時の処理速度を計測した。この時の特徴量次元数は3528である。カメラ画像の取得から背景分離まで平均0。01[s](100[fps])、背景分離から関節角度データの出力まで平均0。014[s](71[fps])であった。これらの処理を1スレッドで行うと平均47[fps]程度である。また、マルチスレッドにすることで約71[fps]での手指形状推定が可能である。
本発明の特徴量化領域による形状推定では、指の内側領域の様な無駄な領域のみの特徴量化をすることは無く、指のエッジ情報のみを特徴量化していることがわかった。また、本発明では、単眼カメラ1台で撮像された手画像から、形状情報を多く含む輝度勾配情報を特徴量化することで、5指それぞれ4自由度、手姿勢3自由度の、合計23自由度を高精度に推定することができ、特徴量化する局所領域の一部を複数回参照することで、手の形状の個人差による特徴量の変化を減らし、個人差による誤推定を減少させることができることがわかる。
以上のように本実施形態の手指形状の検出方法によれば、単眼カメラを用いた形状推定において、指の関節が屈曲状態である手指の撮像画像からは、輪郭線による識別が困難である同一輪郭線異形状の識別問題と、多様な個人差を有する手指画像から、その個人差を抑制して任意の人の手指形状を推定及び検出することが困難である個人差問題を抑制して、任意の人の手指画像から手指の形状を推定して検出することができる。
1 情報処理装置、
11 画像データ記憶部、
12 手指領域検出部、
13 画像形状比率算出部、
14 手指画像領域正規化部、
15 輝度情報検出部、
16 輝度画像平滑化部、
17 輝度勾配方向算出部、
18 N×Nセル分割部、
19 M×Mセルブロック領域設定部、
20 輝度勾配方向ベクトル算出部、
21 ヒストグラム作成部、
22 ヒストグラム正規化部、
23 繰り返し判定部、
24 撮像画像特徴量生成部、
25 類似度照合部、
26 最類似手指形状記憶部、
27 エッジ検出部、
31 照合用手指データベース記憶部、
41 データグローブデータ記憶部、
71 各種設定値記憶部、
81 プログラム記憶部、
91 制御部、
100 撮像装置(カメラ)、
200 表示装置、
300 データグローブ。

Claims (9)

  1. 撮像装置で撮像された手指の撮像画像から、情報処理装置により手指形状の検出方法であって、
    前記情報処理装置が、手指の撮像画像のデータから人肌抽出された画像を輪郭線検出して腕領域を検出し、前記腕領域の最も高い画素値を持つ位置から手領域の下端を算出し、前記手領域の下端より上部の領域における、最も右にある手領域の右端の位置、最も左にある手領域の左端の位置、最も上にある手領域の上端の位置から手指領域を検出する工程と、
    画像特徴抽出法として、Histogram of Oriented Gradients(HoG)法を用い、
    前記情報処理装置が、前記撮像画像の画像特徴量データを生成する際に、前記検出された手指領域の画像から画像形状比率を算出することで正規化して正規化撮像画像とした後、さらにその正規化撮像画像の輝度の画像を平滑化した平滑化輝度画像としてから、その平滑化輝度画像の角度分割された各方向の輝度勾配情報を画像特徴量として算出する工程
    前記情報処理装置が、前記各方向の画像特徴量を加算して可視化データにし、照合用の手指データと類似度を照合して手指の形状を検出する工程、
    を含むことを特徴とする手指形状の検出方法。
  2. 前記情報処理装置が、前記平滑化を、ガウス関数を利用したガウシアンフィルタで行う
    ことを特徴とする請求項1に記載の手指形状の検出方法。
  3. 前記情報処理装置が、前記撮像画像の画像特徴量データを生成する際に、
    機器装着方式のジェスチャー入力により形状が検出された複数の手指形状データのデータセットに、照合用の撮像画像から生成された照合用前記画像特徴量データとを含ませて照合用データベースを作成する工程と、
    前記検出用の撮像画像から、検出用前記画像特徴量データを生成する工程と、
    前記検出用画像特徴量データを、前記データセット中の前記照合用画像特徴量データと対比し、類似する前記照合用の画像特徴量データを含むデータセットを選択する工程と、
    前記選択工程で選択されたデータセット中の手指形状データを手指形状の検出結果に含ませて出力する工程と、
    を含むことを特徴とする請求項1又は2に記載の手指形状の検出方法。
  4. 前記照合用データベースを作成する工程では、さらに照合用の撮像画像から生成された照合用画像形状比率データを含ませて照合用データベースを作成し、
    前記類似する照合用の画像特徴量データを含むデータセットを選択する工程では、
    第1段階として、
    前記検出用の撮像画像から、検出用画像形状比率データを生成し、
    前記検出用画像形状比率データを、全ての前記データセット中の照合用画像形状比率データと対比し、類似する前記照合用画像形状比率データを含む複数のデータセットを選択し、
    さらに第2段階として、
    前記検出用画像特徴量データを、前記第1段階の選択工程で選択された前記データセット中の照合用画像特徴量データと対比し、最も類似する前記照合用画像特徴量データを含むデータセットを選択し、
    前記手指形状データを検出結果に含ませて出力する工程では、
    前記第2段階の選択工程で選択されたデータセット中の手指形状データを手指形状の検出結果に含ませて出力する、
    を含むことを特徴とする請求項3に記載の手指形状の検出方法。
  5. 前記照合用データベースを作成する工程が、
    前記機器装着方式のジェスチャー入力により、複数の手指形状について、関節角度及び回旋角度を含む形状データを検出し、手指形状毎に検出された形状データを対応させて格納するデータセットを作成し、
    前記照合用データベースが、前記データセット中の同種の手指形状の各データに対応させて、当該同種の手指形状に対応する各画像形状比率が含まれる第1段階照合用画像形状比率データを、前記照合用データベースの階層構造の上層に格納し、
    前記同種の手指形状の各データの各々に対応させて、前記複数の手指形状を撮像装置により撮像した照合用の各撮像画像から前記HoG法により各々の画像特徴量を算出し、各々の手指形状に対応する画像特徴量が含まれる第2段階照合用特徴量データを、前記照合用データベースの階層構造の下層に格納する工程と、
    を含む請求項3又は4に記載の手指形状の検出方法。
  6. 前記検出用画像形状比率データの生成が、
    前記検出用の撮像画像から、前記検出用の撮像画像から、手指画像の縦長度、上長度及び右長度を含んで全体形状の特徴を示す画像形状比率を算出する算出方法により、前記撮像画像の画像形状比率を画像形状比率データとして生成される、
    請求項4に記載の手指形状の検出方法。
  7. 請求項1〜6の何れか一つの手指形状の検出方法における各工程を実施するプログラム。
  8. 請求項7のプログラムを記憶する記憶媒体。
  9. (a)手指の画像を撮像可能に設置された少なくとも1台の撮像装置と、
    (b)前記撮像装置から入力する各手指形状を撮像した画像データから画像形状比率データ、輝度勾配方向ベクトルを含む画像特徴量データ、を算出し、前記両データを機器装着方式のジェスチャー入力により形状が検出された複数の手指形状のデータセットに対応させて照合用データベースに格納する情報処理装置と
    を少なくとも含んで構成される手指の形状を検出するシステムであって、
    前記情報処理装置が、
    請求項7のプログラムを実行する
    ことを特徴とするシステム。
JP2014135721A 2014-07-01 2014-07-01 手指形状の検出方法、そのプログラム、そのプログラムの記憶媒体、及び、手指の形状を検出するシステム。 Active JP6487642B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014135721A JP6487642B2 (ja) 2014-07-01 2014-07-01 手指形状の検出方法、そのプログラム、そのプログラムの記憶媒体、及び、手指の形状を検出するシステム。

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014135721A JP6487642B2 (ja) 2014-07-01 2014-07-01 手指形状の検出方法、そのプログラム、そのプログラムの記憶媒体、及び、手指の形状を検出するシステム。

Publications (2)

Publication Number Publication Date
JP2016014954A JP2016014954A (ja) 2016-01-28
JP6487642B2 true JP6487642B2 (ja) 2019-03-20

Family

ID=55231108

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014135721A Active JP6487642B2 (ja) 2014-07-01 2014-07-01 手指形状の検出方法、そのプログラム、そのプログラムの記憶媒体、及び、手指の形状を検出するシステム。

Country Status (1)

Country Link
JP (1) JP6487642B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6810442B2 (ja) * 2016-06-20 2021-01-06 聖 星野 カメラアセンブリ、そのカメラアセンブリを用いる手指形状検出システム、そのカメラアセンブリを用いる手指形状検出方法、その検出方法を実施するプログラム、及び、そのプログラムの記憶媒体
CN106920251A (zh) 2016-06-23 2017-07-04 阿里巴巴集团控股有限公司 人手检测跟踪方法及装置
JP6764378B2 (ja) * 2017-07-26 2020-09-30 株式会社Subaru 車外環境認識装置
JP6987341B2 (ja) 2017-10-24 2021-12-22 マクセル株式会社 情報表示装置およびその空間センシング装置
JP6892155B2 (ja) * 2018-01-16 2021-06-23 Necソリューションイノベータ株式会社 人体部位推定装置、人体部位推定方法、及びプログラム
JP2021128661A (ja) 2020-02-17 2021-09-02 セイコーエプソン株式会社 操作検出方法、操作検出装置及び表示システム
JP2021128657A (ja) 2020-02-17 2021-09-02 セイコーエプソン株式会社 位置検出方法、位置検出装置及び位置検出システム
JP2021128659A (ja) 2020-02-17 2021-09-02 セイコーエプソン株式会社 位置検出方法、位置検出装置及び表示装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102113012B (zh) * 2008-06-04 2016-10-12 国立大学法人筑波大学 手指形状推定装置、手指形状的推定方法及程序
JP5297530B2 (ja) * 2009-07-15 2013-09-25 株式会社東芝 画像処理装置、及びインターフェース装置
JP6044180B2 (ja) * 2012-02-23 2016-12-14 株式会社明電舎 画像特徴量抽出装置

Also Published As

Publication number Publication date
JP2016014954A (ja) 2016-01-28

Similar Documents

Publication Publication Date Title
JP6487642B2 (ja) 手指形状の検出方法、そのプログラム、そのプログラムの記憶媒体、及び、手指の形状を検出するシステム。
US11237637B2 (en) Gesture recognition systems
CN108369643B (zh) 用于3d手部骨架跟踪的方法和***
US9372546B2 (en) Hand pointing estimation for human computer interaction
JP3962803B2 (ja) 頭部検出装置、頭部検出方法および頭部検出プログラム
CN105247461B (zh) 为触摸屏交互确定俯仰和偏航
JP6740033B2 (ja) 情報処理装置、計測システム、情報処理方法及びプログラム
US20160027208A1 (en) Image analysis method
JP6570786B2 (ja) 動作学習装置、技能判別装置および技能判別システム
JP2016099982A (ja) 行動認識装置、行動学習装置、方法、及びプログラム
KR101551576B1 (ko) 로봇 청소기, 제스쳐 인식 장치 및 방법
CN108171133A (zh) 一种基于特征协方差矩阵的动态手势识别方法
JP6454984B2 (ja) 深度画像に基づく手の位置確定方法と装置
JP6066093B2 (ja) 手指形状推定装置、手指形状推定方法、及び手指形状推定プログラム
JP2019096113A (ja) キーポイントデータに関する加工装置、方法及びプログラム
JP2014235634A (ja) 手指動作検出装置、手指動作検出方法、手指動作検出プログラム、及び仮想物体処理システム
KR20150127381A (ko) 얼굴 특징점 추출 방법 및 이를 수행하는 장치
CN107949851A (zh) 在场景内的物体的端点的快速和鲁棒识别
Xu et al. A novel method for hand posture recognition based on depth information descriptor
CN106406507B (zh) 图像处理方法以及电子设备
JP6810442B2 (ja) カメラアセンブリ、そのカメラアセンブリを用いる手指形状検出システム、そのカメラアセンブリを用いる手指形状検出方法、その検出方法を実施するプログラム、及び、そのプログラムの記憶媒体
Xu et al. MultiView-based hand posture recognition method based on point cloud
Gallo et al. View-independent hand posture recognition from single depth images using PCA and Flusser moments
Rong et al. RGB-D hand pose estimation using fourier descriptor
JP2015114762A (ja) 手指動作検出装置、手指動作検出方法、手指動作検出プログラム、及び仮想物体処理システム

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20160201

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170620

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180703

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180829

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181029

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190222

R150 Certificate of patent or registration of utility model

Ref document number: 6487642

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250