(57)【要約】【課題】複数の動作が組み合わされた動作を効率的に認識することができる。【解決手段】動作を認識する対象となる対象物体の形状を表す学習画像を生成し、対象物体の画像の入力を受け付け、学習画像に基づいて受け付けた画像が示す動作を認識する物体認識装置であって、対象物体の所定の動作に含まれる一連の動作である第１の動作における相互に異なる複数の形状を、所定の動作に含まれる第１の動作以外の一連の動作の動作状態毎に表した画像を生成し、生成された画像を学習画像とする学習画像生成部と、学習画像生成部にて生成された学習画像のそれぞれを、受け付けた画像が示す動作を認識するための固有空間上の特徴点として投影する学習処理部と、を有する。【選択図】図１
2010267004.tif 000002
【特許請求の範囲】
【請求項１】
動作を認識する対象となる対象物体の形状を表す学習画像を生成し、前記対象物体の画像の入力を受け付け、前記学習画像に基づいて前記受け付けた画像が示す動作を認識する物体認識装置であって、
前記対象物体の所定の動作に含まれる一連の動作である第１の動作における相互に異なる複数の形状を、前記所定の動作に含まれる前記第１の動作以外の一連の動作の動作状態毎に表した画像を生成し、該生成された画像を前記学習画像とする学習画像生成部と、
前記学習画像生成部にて生成された学習画像のそれぞれを、前記受け付けた画像が示す動作を認識するための固有空間上の特徴点として投影する学習処理部と、を有する物体認識装置。
【請求項２】
請求項１に記載の物体認識装置において、
前記対象物体の画像の入力を受け付け、該受け付けた画像に基づいた入力画像を前記固有空間上の特徴点として投影し、前記入力画像の特徴点と、前記学習画像の特徴点との前記固有空間上における距離に応じ、前記入力画像が示す形状に最も近い形状を表す学習画像を抽出し、該抽出された学習画像が示す形状から前記受け付けた画像が示す動作を認識する認識処理部を有する物体認識装置。
【請求項３】
請求項２に記載の物体認識装置において、
前記学習処理部は、前記学習画像の特徴点を含み、前記学習画像の特徴点の間を補間する多次元曲面を前記固有空間上に生成する物体認識装置。
【請求項４】
請求項３に記載の物体認識装置において、
前記認識処理部は、前記多次元曲面上の点のうち前記入力画像の特徴点と最も近い距離にある点と、前記学習画像とに基づき、前記学習画像が示す形状を補間する形状を表す補間学習画像を生成し、該生成された補間学習画像が示す形状から前記受け付けた画像が示す動作を認識する物体認識装置。
【請求項５】
動作を認識する対象となる対象物体の形状を表す学習画像を生成し、前記対象物体の画像の入力を受け付け、前記学習画像に基づいて前記受け付けた画像が示す動作を認識する物体認識装置における物体認識方法であって、
前記対象物体の所定の動作に含まれる一連の動作である第１の動作における相互に異なる複数の形状を、前記所定の動作に含まれる前記第１の動作以外の一連の動作の動作状態毎に表した画像を生成し、該生成された画像を前記学習画像とする処理と、
前記生成された学習画像のそれぞれを、前記受け付けた画像が示す動作を認識するための固有空間上の特徴点として投影する投影処理と、を有する物体認識方法。
【請求項６】
請求項５に記載の物体認識方法において、
前記対象物体の画像の入力を受け付ける処理と、
前記受け付けた画像に基づいた入力画像を前記固有空間上の特徴点として投影する処理と、
前記入力画像の特徴点と、前記学習画像の特徴点との前記固有空間上における距離に応じ、前記入力画像が示す形状に最も近い形状を表す学習画像を抽出する抽出処理と、
前記抽出された学習画像が示す形状から前記受け付けた画像が示す動作を認識する認識処理と、をさらに有する物体認識方法。
【請求項７】
請求項６に記載の物体認識方法において、
前記投影処理は、前記学習画像の特徴点を含み、前記学習画像の特徴点の間を補間する多次元曲面を前記固有空間上に生成する処理をさらに含む物体認識方法。
【請求項８】
請求項７に記載の物体認識方法において、
前記抽出処理は、前記多次元曲面上の点のうち前記入力画像の特徴点と最も近い距離にある点と、前記学習画像とに基づき、前記学習画像が示す形状を補間する形状を表す補間学習画像を生成する処理であり、
前記認識処理は、前記生成された補間学習画像が示す形状から前記受け付けた画像が示す動作を認識する処理である物体認識方法。
【請求項９】
動作を認識する対象となる対象物体の形状を表す学習画像を生成し、前記対象物体の画像の入力を受け付け、前記学習画像に基づいて前記受け付けた画像が示す動作を認識する物体認識装置に、
前記対象物体の所定の動作に含まれる一連の動作である第１の動作における相互に異なる複数の形状を、前記所定の動作に含まれる前記第１の動作以外の一連の動作の動作状態毎に表した画像を生成し、該生成された画像を前記学習画像とする機能と、
前記生成された学習画像のそれぞれを、前記受け付けた画像が示す動作を認識するための固有空間上の特徴点として投影する機能と、を実現させるためのプログラム。
【請求項１０】
請求項９に記載のプログラムにおいて、
前記物体認識装置に、
前記対象物体の画像の入力を受け付ける機能と、
前記受け付けた画像に基づいた入力画像を前記固有空間上の特徴点として投影する機能と、
前記入力画像の特徴点と、前記学習画像の特徴点との前記固有空間上における距離に応じ、前記入力画像が示す形状に最も近い形状を表す学習画像を抽出する機能と、
前記抽出された学習画像が示す形状から前記受け付けた画像が示す動作を認識する機能と、をさらに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、物体の形状及び動作を認識する物体認識装置、物体認識方法及びプログラムに関する。
【背景技術】
【０００２】
手話に代表されるように、手指や身体などの形状及び動作を認識することによってコミュニケーションを図ることが一般的に行われている。このような形状及び動作を認識することは、新たなヒューマンインタフェースとして注目されてきている。
【０００３】
手指の形状及び動作を認識する方法としては、データグローブのような手袋状の装着型のセンサを用いて認識する方法と、カメラによって撮影されたカメラ画像から非接触に認識する方法とがある。ここでは、カメラ画像から手指の形状及び動作を認識する方法について説明する。
【０００４】
カメラ画像から手指の形状及び動作の認識を行う方法としては、複数のカメラによるカメラ画像を用いる多眼視による方法と、１個のカメラのカメラ画像のみを用いる単眼視による方法とがある。
【０００５】
多眼視による方法として例えば、非特許文献１には、多視点画像の手の輪郭から特徴を抽出し、モデルとなる画像とマッチングを行う方法が開示されている。
【０００６】
また、単眼視による方法として例えば、非特許文献２には、カメラから入力された画像を学習画像とし、その学習画像の輪郭線の情報から３Ｄ（３  Ｄｉｍｅｎｓｉｏｎａｌ）モデルを構成し、学習する方法が開示されている。
【０００７】
また、他の単眼視による方法として例えば、非特許文献３には、３Ｄの手指モデルからＣＧ（Ｃｏｍｐｕｔｅｒ  Ｇｒａｐｈｉｃｓ）で作成した手の見え画像である２次元画像を学習画像を生成し、その学習画像の輪郭線の情報を学習・認識する方法が開示されている。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】浜田康志、島田伸敬、白井良明著「遷移ネットワークに基づく多視点画像時系列からの手指形状推定」電子情報通信学会論文誌  Ｄ-II  Ｖｏｌ．Ｊ８５−Ｄ−II  Ｎｏ．８  ｐｐ．１２９１−１２９９  ２００２年８月
【非特許文献２】浜田康志、島田伸敬、白井良明著「手話認識のための複雑背景下で高速に運動する手指の形状推定」電子情報通信学会論文誌  Ｄ  Ｖｏｌ．Ｊ９０−Ｄ  Ｎｏ．３  ｐｐ．６１７−６２７
【非特許文献３】今井章博、島田伸敬、白井良明著「輪郭の変形の学習による３Ｄ手指姿勢の認識」電子情報通信学会論文誌  Ｄ-II  Ｖｏｌ．Ｊ８８−Ｄ−II  Ｎｏ．８  ｐｐ．１６４３−１６５１
【非特許文献４】村瀬  洋、シュリー  ナイヤー「２次元照合による３次元物体認識−パラメトリック固有空間法−」電子情報通信学会論文誌  Ｄ-II  Ｖｏｌ．Ｊ７７−Ｄ−II  Ｎｏ．１１  ｐｐ．２１７９−２１８７  １９９４年１１月
【発明の概要】
【発明が解決しようとする課題】
【０００９】
カメラ画像における輪郭線の情報を用いて手指の形状及び動作の認識を行う場合を考えてみる。この場合、カメラと認識する対象となる物体との位置関係によって物体の見え方が変わったり、手前の物体で奥の物体が隠れてしまったりするオラクルージョン現象が発生する。
【００１０】
非特許文献１に開示されている技術では、複数のカメラを用いることにより、オラクルージョン現象を低減することができる。しかしながら、複数のカメラを用いるためコストが高くなる。
【００１１】
そこで、非特許文献２や非特許文献３に開示されている１個のカメラを用いる技術を利用すれば高コストの問題は解決できるが、学習時に大量の学習画像が必要となる。さらに、認識時に、学習画像と認識の対象となる物体の形状及び動作を表す画像とを照合するための計算時間が長くなる等の問題点がある。
【００１２】
また、手指や身体等の形状が変化する物体は通常、複数の動作が組み合わされた複雑な動作を行う。しかし、非特許文献２や非特許文献３に開示されている技術を利用して複数の動作が組み合わされた動作を認識しようとする場合、さらに多くの学習画像が必要となるという問題点がある。
【００１３】
本発明は、複数の動作が組み合わされた動作を効率的に認識することができる物体認識装置、物体認識方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記目的を達成するために本発明は、
動作を認識する対象となる対象物体の形状を表す学習画像を生成し、前記対象物体の画像の入力を受け付け、前記学習画像に基づいて前記受け付けた画像が示す動作を認識する物体認識装置であって、
前記対象物体の所定の動作に含まれる一連の動作である第１の動作における相互に異なる複数の形状を、前記所定の動作に含まれる前記第１の動作以外の一連の動作の動作状態毎に表した画像を生成し、該生成された画像を前記学習画像とする学習画像生成部と、
前記学習画像生成部にて生成された学習画像のそれぞれを、前記受け付けた画像が示す動作を認識するための固有空間上の特徴点として投影する学習処理部と、を有する。
【００１５】
また、動作を認識する対象となる対象物体の形状を表す学習画像を生成し、前記対象物体の画像の入力を受け付け、前記学習画像に基づいて前記受け付けた画像が示す動作を認識する物体認識装置における物体認識方法であって、
前記対象物体の所定の動作に含まれる一連の動作である第１の動作における相互に異なる複数の形状を、前記所定の動作に含まれる前記第１の動作以外の一連の動作の動作状態毎に表した画像を生成し、該生成された画像を前記学習画像とする処理と、
前記生成された学習画像のそれぞれを、前記受け付けた画像が示す動作を認識するための固有空間上の特徴点として投影する投影処理と、を有する。
【００１６】
また、動作を認識する対象となる対象物体の形状を表す学習画像を生成し、前記対象物体の画像の入力を受け付け、前記学習画像に基づいて前記受け付けた画像が示す動作を認識する物体認識装置に、
前記対象物体の所定の動作に含まれる一連の動作である第１の動作における相互に異なる複数の形状を、前記所定の動作に含まれる前記第１の動作以外の一連の動作の動作状態毎に表した画像を生成し、該生成された画像を前記学習画像とする機能と、
前記生成された学習画像のそれぞれを、前記受け付けた画像が示す動作を認識するための固有空間上の特徴点として投影する機能と、を実現させる。
【発明の効果】
【００１７】
本発明によれば、物体認識装置は、動作を認識する対象となる対象物体の形状を表す学習画像を生成し、対象物体の画像の入力を受け付け、学習画像に基づいて受け付けた画像が示す動作を認識する。このとき、物体認識装置は、学習画像として、対象物体の所定の動作に含まれる一連の動作である第１の動作における相互に異なる複数の形状を、所定の動作に含まれる第１の動作以外の動作の動作状態毎に表した画像を生成する。また、物体認識装置は、生成された学習画像のそれぞれを、受け付けた画像が示す動作を認識するための固有空間上の特徴点として投影する。
【００１８】
そのため、複数の動作が組み合わされた動作を効率的に認識することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の物体認識装置の第１の実施形態の構成を示すブロック図である。
【図２】図１に示した学習画像生成部が作成した３Ｄ基本動作画像データに基づいた３Ｄ基本動作画像及び２次元見え画像の一例を示す図であり、（ａ）は手を回転させる動作（動作Ａ）の場合を示す図、（ｂ）は指を開閉する連続動作（動作Ｂ）の場合を示す図である。
【図３】図１に示した固有空間生成部によって構成された固有空間上に投影された学習画像の特徴点の一例を示す図である。
【図４】図１に示した固有空間生成部によって構成された固有空間上に投影された学習画像の特徴点の他の例を示す図である。
【図５】図１に示した探索処理部がＮ個の学習画像の中から入力画像に最も近い学習画像を探索する様子を示す図である。
【図６】図１に示した物体認識装置が学習及び認識を行う動作を説明するためのフローチャートである。
【図７】本発明の物体認識装置の第２の実施形態の構成を示すブロック図である。
【図８】図７に示した固有空間生成部によって構成された固有空間の一例を示す図であり、（ａ）は固有空間上に投影された学習画像の特徴点を示す図、（ｂ）は固有空間上に投影された多次元曲面を示す図である。
【発明を実施するための形態】
【００２０】
以下に、本発明の実施の形態について図面を参照して説明する。
【００２１】
（第１の実施形態）
図１は、本発明の物体認識装置の第１の実施形態の構成を示すブロック図である。
【００２２】
本実施形態の物体認識装置は、動作を認識する対象となる対象物体である手指の動作を表す３ＤＣＧ画像を作成する。そして、作成された３ＤＣＧ画像から手指の様々な形状を表す複数の２次元見え画像（学習画像）を生成して学習する。そして、実際の手指の動作を表す画像を受け付け、受け付けた画像に基づいた入力画像が示す手指の形状と近い形状を表す学習画像を抽出する。そして、抽出された学習画像が示す形状から入力された画像が示す手指の動作を認識する。
【００２３】
本実施形態では、手指の動作の認識だけではなく、身体等の形状が変化する物体の動作を認識する場合でも、手指のデータを身体のデータに置き換えるだけで、同様に認識することができる。但し、ここでは手指の動作を認識する場合を一例として説明する。
【００２４】
本実施形態の物体認識装置は図１に示すように、学習画像生成部１０と、学習処理部２０と、認識処理部３０とを備えている。
【００２５】
学習画像生成部１０と、学習処理部２０と、認識処理部３０とは、入力装置、記憶装置、制御装置及び出力装置から構成される一般的なコンピュータシステムを用いて構成される。入力装置としては、キーボードやマウス、画像データを取得するカメラ等が挙げられる。また、記憶装置としては、ハードディスクや半導体記憶装置、ＤＶＤ−ＲＡＭ、ＵＳＢメモリ等が挙げられる。また、出力装置としては、液晶ディスプレイやプリンタ等が挙げられる。
【００２６】
学習画像生成部１０は、３次元（３Ｄ）動作画像作成部１１と、２次元（２Ｄ）画像生成部１２とを備えている。
【００２７】
３Ｄ動作画像作成部１１は、３ＤＣＧ画像を作成できるツールやプログラムを用い、手指の３ＤＣＧのモデルデータ（以降、３Ｄ基本動作画像データという）を作成する。そして、作成された３Ｄ基本動作画像データを２Ｄ画像生成部１２へ出力する。
【００２８】
ここで、３Ｄ基本動作画像データについて説明する、
３Ｄ基本動作画像データは、各関節が可動する手指の骨格データと、その上に肉付けされた手指のフィギュアデータとから構成されるデータである。３Ｄ基本動作画像データには、ある静止した形状の情報だけでなく、動きを伴う時間的な動作の情報も含めることができる。
【００２９】
骨格データの具体的な例としては、多くの３次元グラフィックソフト（ツール）で汎用的に用いられているｂｖｈフォーマットがあり、このｂｖｈフォーマットは動作の情報も含めることができる。また、フィギュアデータは、ＣＧで表面を配色して作成したものでもよいし、実際の手の画像を表面に貼り付けたものでもよい。
【００３０】
なお、骨格データにおける手指の形状の情報や時間的な動作の情報は、ツールを利用して人工的に作成することもできるし、予め別の方法で実際の手指の形状の情報や時間的な動作の情報を取得しておき、それらの情報に基づいて作成することもできる。なお、予め実際の手の形状の情報や時間的な動作の情報を取得する方法としては、一般的なモーションキャプチャシステムを利用する方法や、センサを付けた手袋状のデータグローブ等の装置を利用する方法がある。
【００３１】
２Ｄ画像生成部１２は、３Ｄ動作画像作成部１１から出力された３Ｄ基本動作画像データに基づいて１個の動作フレーム毎に、ある視点から見た２次元見え画像を１枚生成する。なお、視点の位置としては、認識する対象となる手指を撮影するカメラの位置と同じか近いところがよい。２Ｄ画像生成部１２は、１つの３Ｄ基本動作画像データに含まれる動作フレーム数をＦとした場合、Ｆ枚の２次元見え画像を生成する。２Ｄ画像生成部１２は、この２次元見え画像を学習画像とし、学習画像を示す学習画像データ４０を出力する。
【００３２】
ここで、本実施形態において２Ｄ画像生成部１２は、複数の種類の動作を対象とした学習画像を生成することができる。以降、対象となる動作の種類の数をＰと表記する。なお、対象となる動作とは、手指の動作であれば、例えば、手を回転させる動作(以降、動作Ａという)、指を開いたり閉じたり（開閉）する連続動作（以降、動作Ｂという）等であり、様々な種類がある。
【００３３】
以下に、一例として動作Ａ及び動作Ｂの２種類（Ｐ＝２の場合）の動作を対象とする場合について説明する。
【００３４】
図２は、図１に示した学習画像生成部１０が作成した３Ｄ基本動作画像データに基づいた３Ｄ基本動作画像及び２次元見え画像の一例を示す図であり、（ａ）は手を回転させる動作（動作Ａ）の場合を示す図、（ｂ）は指を開閉する連続動作（動作Ｂ）の場合を示す図である。
【００３５】
２Ｄ画像生成部１２は、手を回転させる動作Ａにおいて手の方向（手を伸ばした際に中指が向く方向）が相互に異なる動作フレームのそれぞれが示す形状を、指を開閉する動作Ｂの動作状態毎に表した学習画像を生成する。なお、動作Ｂの動作状態とは、動作Ｂにおいて指を開閉する角度が変化していく状態のことである。例えば、図２（ａ）に示す動作Ａにおいて、手の方向が左を向いている場合の動作フレーム、上を向いている場合の動作フレーム及び右を向いている場合の動作フレームのそれぞれが示す形状を、図２（ｂ）に示す動作Ｂにおける指の開閉角度毎に表した学習画像を生成する。また逆に、指を開閉する動作Ｂにおいて指の開閉角度が相互に異なる動作フレームのそれぞれが示す形状を、手を回転させる動作Ａの動作状態毎に表した学習画像を生成することも可能である。また、上述した２つのパターンの学習画像、すなわち、動作Ａを動作Ｂの動作状態毎に表した学習画像と、動作Ｂを動作Ａの動作状態毎に表した学習画像との両方を学習画像としてもよい。なお、ここでは、一例として２種類の動作を組み合わせる場合について説明したが、３種類以上の動作も同様の方法で容易に組み合わせることができる。
【００３６】
なお、以降、動作Ａの手の方向が相互に異なる形状のそれぞれにおける動作Ｂの動作を動作Ｂ１〜動作Ｂｍｂとする。ｍｂは、動作Ａにおける手の方向が相互に異なる形状を示す動作フレーム数であり、すなわち、動作Ａの動作フレーム数となる。また、動作Ｂ１〜動作Ｂｍｂの各動作の最初（または最後または途中）の動作フレームにおける手の形状は、手の回転角度以外は一致しているか、似ているものとする。
【００３７】
再度、図１を参照すると、学習処理部２０は、固有空間生成部２１と、画像投影点算出部２２とを備えている。
【００３８】
ここで、まず、固有空間法について説明する。
【００３９】
固有空間法では、予め学習用の複数の２次元画像を用意する。そして、用意された２次元画像上のすべての画素をラスタースキャンし、その画素値を要素とする１次元ベクトルを作成する。なお、ラスタースキャンとは、走査線に沿って画像を画素毎にスキャンする方法である。そして、複数の２次元画像から作成された複数の１次元ベクトルから共分散行列を求めて主成分分析を行い、固有値とその固有値に対応する固有ベクトルとを生成する。
【００４０】
そして、固有値が大きいものから順番に少数の固有値を選択し、選択された少数の固有値に対応する固有ベクトルを基底とする固有空間を構成する。この場合、１つの２次元画像をこの固有空間へ投影すると、２次元画像は１つの点（特徴点）となる。従って、学習画像の複数の２次元画像のすべてを固有空間上に投影すると点群となる。
【００４１】
１つの２次元画像は、その画素数（例えば１２８×１２８の画像ならば１６３８４画素）に相当する数の次元数（１６３８４次元、ここでの次元は特徴空間の次元を表す）を持つ特徴空間中の１点に投影できる。多くの２次元画像を固有空間へ投影した場合、特徴点は、特徴空間の中の少数の次元で構成される部分空間に偏って分布していることが多い。そこで、固有空間法では、少数の次元（例えば、１０次元）で構成される部分空間を対象とすることにより、情報量を圧縮することができる。そのため、認識の際に要する処理時間を大幅に短縮できるとともに、認識率を高めることができる。
【００４２】
次に、パラメトリック固有空間法について説明する。パラメトリック固有空間法は、上述した固有空間法を発展させた手法である。
【００４３】
物体は、見る方向や照明、動作等によって見かけが大きく変化する。そこで、パラメトリック固有空間法では、様々に変化する見かけの画像をまとめて固有空間表現で表して認識に用いる。
【００４４】
パラメトリック固有空間法では、学習時には最初に、認識するべき物体を様々なパラメータ（方向、照明条件、時間的な動き等）で体系的に撮影する。それを学習パターンとして主成分分析を行い、固有値とその固有値に対応する固有ベクトル（固有空間）とを生成する。
【００４５】
次に、各学習パターンを固有空間に投影し、その特徴点を記憶する。ある物体の２次元見え画像の連続的な変化は、固有空間上において点の連続的な軌跡になることから、特徴点間を補間することによって中間的な画像の認識もできる。
【００４６】
認識の際には、未知の画像を固有空間上に投影し、その投影された特徴点が予め作成した軌跡の上に存在すればその物体とし、存在しなければその物体では無いとする。軌跡は、物体のパラメータ（方向、照明条件、時間的な動き等）の情報を持っているので、その情報を抽出することにより、物体の各種パラメータの検出も行うことができる。なお、パラメトリック固有空間法については、非特許文献４（村瀬  洋、シュリー  ナイヤー「２次元照合による３次元物体認識−パラメトリック固有空間法−」電子情報通信学会論文誌  Ｄ-II  Ｖｏｌ．Ｊ７７−Ｄ−II  Ｎｏ．１１  ｐｐ．２１７９−２１８７  １９９４年１１月）に詳細が記載されている。
【００４７】
固有空間生成部２１は、２Ｄ画像生成部１２から出力され、学習画像を示す学習画像データ４０を受け付ける。そして、受け付けた学習画像データ４０が示す学習画像から、上述した固有空間法を利用して固有値とその固有値に対応する固有ベクトルとを生成する。そして、固有空間生成部２１は、固有値が大きいものから順番に予め決められた数（例えば、Ｋ個とする）だけの固有値を選択する。そして、選択されたＫ個の固有値のそれぞれに対応するＫ個の固有ベクトルを基底とする固有空間を構成する。この場合、固有空間は、Ｋ個の軸を持つＫ次元の固有空間となる。そして、固有空間生成部２１は、構成されたＫ次元の固有空間を示す固有空間情報（選択されたＫ個の固有ベクトルの情報）を画像投影点算出部２２へ出力する。
【００４８】
画像投影点算出部２２は、固有空間生成部２１から出力された固有空間情報を受け付け、受け付けた固有空間情報が示すＫ次元の固有空間上に学習画像のそれぞれを投影する。そして、画像投影点算出部２２は、Ｋ次元の固有空間上に投影された特徴点の座標値であるＫ次元座標値Ｅｉを学習データ５０として出力する。
【００４９】
図３は、図１に示した固有空間生成部２１によって構成された固有空間上に投影された学習画像の特徴点の一例を示す図である。なお、図３においては、説明をわかりやすくするため固有空間の次元数を３次元としている。
【００５０】
図３に示すように、１個（１連）の動作における複数の学習画像を固有空間上に投影すると点群となる。例えば、Ｎ個の学習画像のうちｉ番目（０≦ｉ≦Ｎ−１）の学習画像をラスタースキャンして１次元ベクトルとした学習画像ベクトルをＸｉ＝（xi,0, …, xi,IMAGESIZE-1）とする。なお、ＩＭＡＧＥＳＩＺＥは１つの２次元画像の全画素数である。この場合、固有空間はＫ次元であるため、学習画像の特徴点のＫ次元座標値は、Ｅｉ＝（ei,0, …, ei,K-1）となる。なお、ＩＭＡＧＥＳＩＺＥに比べてＫは十分小さくてよい。例えば、１２８×１２８の画像の場合、ＩＭＡＧＥＳＩＺＥは１６３８４だが、Ｋは１０程度でよい。
【００５１】
ここで、複数の種類の動作を対象とした学習データ５０が作成される場合を考える。ここでは、Ｐ種類の動作のそれぞれにおける学習画像の数をＮｊ（０≦ｊ≦Ｐ−１）とする。この場合、学習画像の総数Ｎは、Ｎ=ΣＮｊ（ｊ；０〜Ｐ−１）となる。例えば、２Ｄ画像生成部１２が、動作Ａにおいて手の方向が相互に異なる形状のそれぞれを、動作Ｂの動作状態毎に表した学習画像を生成した場合（すなわち、動作Ｂ１から動作Ｂｍｂを行った場合）、生成されたすべての学習画像が固有空間へ投影される。
【００５２】
図４は、図１に示した固有空間生成部２１によって構成された固有空間上に投影された学習画像の特徴点の他の例を示す図である。なお、図４においては、説明をわかりやすくするため固有空間の次元数を３次元としている。
【００５３】
図４に示すように、動作Ｂ１〜動作Ｂｍｂは、それぞれがＫ次元の固有空間上で連続した点群の列（Ｋ次元の多次元曲線）となる。また、ｍｂの数を大きくした場合や、動作Ｂ１〜動作Ｂｍｂの間で動作の違いが小さい場合は、それら動作Ｂ１〜動作Ｂｍｂの点群間は近接し、それらすべてを統合した点群は、Ｋ次元固有空間上でＫ次元の多次元曲面上に配置される。
【００５４】
再度、図１を参照すると、認識処理部３０は、画像入力部３１と、画像投影点算出部３２と、探索処理部３３とを備えている。
【００５５】
画像入力部３１は、動画像または静止画像を撮影できるカメラ等によって撮影された対象物体６０の画像の入力を受け付ける。受け付けた画像が動画像である場合、その動画像中の動作フレーム毎の２次元画像を１つずつ画像投影点算出部３２へ出力する。一方、受け付けた画像が静止画像である場合、その静止画像である２次元画像を画像投影点算出部３２へ出力する。
【００５６】
画像投影点算出部３２は、画像入力部３１から出力された２次元画像を入力画像として受け付ける。そして、学習処理部２０の画像投影点算出部２２と同様に、受け付けた１つの入力画像を固有空間へ投影する。なお、この固有空間は、上述した固有空間生成部２１によって構成された固有空間である。ここで、入力画像をラスタースキャンして１次元ベクトルとした入力画像ベクトルをＸＩＮ＝（xIN,0, …, xIN,IMAGESIZE-1）とすると、Ｋ次元の固有空間に投影された入力画像の特徴点のＫ次元座標値は、ＥＩＮ＝（eIN,0, …, eIN,K-1）となる。そして、画像投影点算出部３２は、入力画像の特徴点のＫ次元座標値ＥＩＮを探索処理部３３へ出力する。
【００５７】
探索処理部３３は、画像投影点算出部２２から出力されたＮ個の学習画像の特徴点のＫ次元座標値Ｅｉを示す学習データ５０と、画像投影点算出部３２から出力された入力画像の特徴点のＫ次元座標値ＥＩＮとを受け付ける。そして、受け付けた学習データ５０と、特徴点のＫ次元座標値ＥＩＮとに基づき、Ｎ個の学習画像の中から入力画像に最も近い学習画像を探索する。
【００５８】
図５は、図１に示した探索処理部３３がＮ個の学習画像の中から入力画像に最も近い学習画像を探索する様子を示す図である。図５において、黒い丸印は学習画像の特徴点のＫ次元座標を示しており、黒い星印は入力画像の特徴点のＫ次元座標を示している。
【００５９】
入力画像と最も近い学習画像を探索する方法としては例えば、図５に示すように入力画像のＫ次元座標値ＥＩＮと、Ｎ個の学習画像のＫ次元座標Ｅiとの間のＫ次元の固有空間上での距離Ｄiを算出する。そして、算出された距離Ｄｉが最短となる学習画像を探せばよい。距離Ｄｉは例えば、以下の（１）〜（３）に示す式によって求めることができる。
【００６０】
2010267004.tif 000003
【００６１】
2010267004.tif 000004
【００６２】
2010267004.tif 000005
【００６３】
上記（１）式は、単純であり計算のための処理時間が短くて済むが、マンハッタン距離であるため、精度が少し劣ることがある。なお、マンハッタン距離とは、各座標値の差の絶対値の総和を２点間の距離としたものである。上記（２）式は、Ｋ次元の固有空間上での直線距離の２乗和を表しており正確な距離が計算できる。上記（３）式は、２乗和のＫ乗根であり、実際の距離と同じとなるが、計算のための処理時間が長くなる。実用的には（１）式または（２）式で距離Ｄｉを求めればよい。
【００６４】
そして、探索処理部３３は、算出されたＮ個の距離Ｄｉのうち最短となる距離Ｄｉの特徴点の学習画像を抽出する。このとき、距離Ｄｉが最短となる１つの学習画像だけを抽出してもよいし、距離Ｄｉが短い順番に複数の学習画像を候補として抽出してもよい。抽出された学習画像が入力画像に近い画像と認識されたことになり、探索処理部３３は、抽出された学習画像を探索結果７０として出力する。
【００６５】
なお、学習データ５０は、そのデータ構造を木構造で構築しておくことにより、探索の際に効率よく学習画像の探索を行うことができる。具体的なデータ構造としては例えば、一般によく使われているＫ次元の木構造を用いたｋｄ−ｔｒｅｅ等がある。これを使えば探索の際に、必ずしもＮ個の全てを探索（Ｏ（Ｎ））しなくても済み、探索のための処理時間は、Ｏ（ｌｏｇＮ）での処理時間となる。そのため、処理時間を大幅に短縮することができる。
【００６６】
上述したように、複数の種類の動作を組み合わせた学習画像を生成しておくことにより、異なる動作が混在した動作、例えば「指を徐々に開きながら手を回転させる」等の学習をしていない動作を認識することができる。例えば、動作Ｂ１から動作Ｂｍｂまでの指の開閉動作を学習しておいた場合、つまり、動作Ｂの２次元画像しか事前に学習していない場合でも、指を開閉する動作を行わずに動作Ａだけを行う入力画像の認識をすることができる。この複数の種類の動作については、互いの動作状態が重なるもの（例えば、手を回転させる動作と指を開閉する動作とは同時に両方の動作が存在できるので動作状態が重なると言える）であればよい。具体的な認識の方法について以下に説明する。
【００６７】
動作Ｂ１から動作ＢｍｂのそれぞれがＦ１〜Ｆｍｂ個の動作フレームを持つ動作とし、それぞれの動作フレームをｇ（ｂ，ｆ）（１≦ｂ≦ｍｂ，１≦ｆ≦ＦＢ）と表すとする。ここで、ｂは動作Ａにおける手の方向を示す番号であり、ｆは動作Ｂにおける動作フレーム番号である。また、ｍｂ個のいずれの動作においても動作フレーム数は同一のＦＢ個であるものとし、同じ動作フレーム番号ｆでの動作Ａにおける手の方向は同じか、または近くなるようにしておく。これは例えば、学習用の動作画像を撮影する際に、動作の開始時点と動作の終了時点とにおける指の開閉角度が同じになるように動作させ、さらに動作を行う速度も一定とすることによって容易に実現できる。
【００６８】
このとき、ｇ（１，１）→ｇ（１，２）→ｇ（１，３）→・・・、のように、ｂが変化せずにｆだけが連続して変化する場合は、ｂの連続性を抽出することにより、その動作が動作Ｂであることが認識できる。また、ｇ（１，１）→ｇ（３，１）→ｇ（５，１）→・・・、のように、ｆが変化せずにｂだけが連続して変化する場合（すなわち、動作Ａと同じ）や、ｇ（１，１）→ｇ（３，２）→ｇ（５，３）→・・・、のように、ｂ及びｆの両方がそれぞれ連続して変化する場合（すなわち、動作Ａと動作Ｂとが同時に行われている動作）等についても、それぞれの動作の連続性を抽出することによって動作を容易に認識することができる。
【００６９】
ここでは、動作Ｂ１〜動作Ｂｍｂのいずれにおいても動作フレーム数がＦＢ個であるとして説明したが、動作Ｂ１〜動作Ｂｍｂ毎に動作フレーム数が異なる場合でも、動作Ｂ１〜動作Ｂｍｂの間で手の方向が同じ動作を対応付けておけばよい。この対応付けにより、上述したのと同様の認識を行うことが可能となる。
【００７０】
以下に、上記のように構成された物体認識装置において学習及び認識を行う動作について説明する。ここでは一例として、認識しようとする動作が「手の角度がα度からβ度まで回転しながら、指がγ度からδ度まで開いた」動作であるものとする。
【００７１】
図６は、図１に示した物体認識装置が学習及び認識を行う動作を説明するためのフローチャートである。
【００７２】
３Ｄ動作画像作成部１１は、３ＤＣＧ画像を作成できるツールやプログラムを用い、３Ｄ基本動作画像データを作成する（ステップＳ１）。ここでは、動作Ｂの３Ｄ基本動作画像データが作成されるものとする。
【００７３】
そして、３Ｄ動作画像作成部１１は、作成された動作Ｂの３ＣＧ基本動作画像データを２Ｄ画像生成部１２へ出力する。
【００７４】
２Ｄ画像生成部１２は、３Ｄ動作画像作成部１１から出力された動作Ｂの３Ｄ基本動作画像データを受け付ける。そして、受け付けた動作Ｂの３Ｄ基本動作画像データの動作フレームのそれぞれが示す形状を、動作Ａにおける動作状態毎に表した学習画像を生成する（ステップＳ２）。なお、ここではＮ個の学習画像が生成されたものとする。
【００７５】
そして、２Ｄ画像生成部１２は、生成されたＮ個の学習画像を示す学習画像データ４０を出力する。
【００７６】
固有空間生成部２１は、２Ｄ画像生成部１２から出力され、Ｎ個の学習画像を示す学習画像データ４０を受け付け、受け付けた学習画像データ４０から固有空間法を利用して固有値と、その固有値に対応する固有ベクトルとを生成する（ステップＳ３）。
【００７７】
次に、固有空間生成部２１は、生成された固有値の大きいものから順番に予め決められた数の固有値を選択する。ここでは、固有値の大きいものから順番にＫ個の固有値が選択されるものとする。
【００７８】
次に、固有空間生成部２１は、選択されたＫ個の固有値のそれぞれに対応するＫ個の固有ベクトルを基底とする固有空間を構成する（ステップＳ４）。
【００７９】
そして、固有空間生成部２１は、構成されたＫ次元の固有空間を示す固有空間情報を画像投影点算出部２２へ出力する。
【００８０】
固有空間生成部２１から出力された固有空間情報を受け付けた画像投影点算出部２２は、受け付けた固有空間情報が示すＫ次元の固有空間上にＮ個の学習画像のそれぞれを投影する（ステップＳ５）。
【００８１】
そして、画像投影点算出部２２は、Ｋ次元の固有空間に投影されたＮ個の学習画像の特徴点のＫ次元座標値Ｅｉを認識し（ステップＳ６）、そのＮ個の特徴点のＫ次元座標値Ｅｉを学習データ５０として出力する。
【００８２】
ここで、認識処理部３０の画像入力部３１は、カメラ等によって撮影された対象物体６０の画像の入力を受け付ける（ステップＳ７）。
【００８３】
そして、画像入力部３１は、受け付けた画像の動作フレーム毎の２次元画像を１つずつ画像投影点算出部３２へ出力する。
【００８４】
画像入力部３１から出力された１つの２次元画像を入力画像として受け付けた画像投影点算出部３２は、その１つの入力画像を固有空間へ投影する（ステップＳ８）。
【００８５】
次に、画像投影点算出部３２は、入力画像の特徴点のＫ次元座標値ＥＩＮを認識し（ステップＳ９）、そのＫ次元座標値ＥＩＮを探索処理部３３へ出力する。
【００８６】
探索処理部３３は、画像投影点算出部２２から出力されたＮ個の学習画像の特徴点のＫ次元座標値Ｅｉを示す学習データ５０と、画像投影点算出部３２から出力された入力画像の特徴点のＫ次元座標値ＥＩＮとを受け付ける。
【００８７】
次に、探索処理部３３は、受け付けた入力画像の特徴点のＫ次元座標値ＥＩＮと、受け付けた学習データ５０が示すＮ個の学習画像の特徴点のＫ次元座標値Ｅｉとから、入力画像の特徴点と、Ｎ個の学習画像の特徴点のそれぞれとの間の距離Ｄｉを所定の式を用いて算出する（ステップＳ１０）。
【００８８】
そして、探索処理部３３は、算出されたＮ個の距離Ｄｉのうち最短となる距離Ｄｉの特徴点の学習画像を抽出する（ステップＳ１１）。
【００８９】
そして、探索処理部３３は、抽出された学習画像が示す形状を入力画像が示す形状であると認識する（ステップＳ１２）。
【００９０】
ここで、認識した結果が、ｇ（ｂｓｔａｒｔ，ｆｓｔａｒｔ）〜ｇ（ｂｅｎｄ，ｆｅｎｄ）であった場合を考える。この場合、ｂｓｔａｒｔに対応する指の開閉角度がγ度（またはそれに近い角度）であり、ｂｅｎｄに対応する指の開閉角度がδ度（またはそれに近い角度）であると認識することが期待できる。また同様に、ｆｓｔａｒｔに対応する手の角度がα度（またはそれに近い角度）であり、ｆｅｎｄに対応する手の角度がβ度（またはそれに近い角度）であると認識することも期待できる。これらから、対象物体の動作が「手の角度α度からβ度まで回転しながら、指がγ度からδ度まで開いた」という動作であったことを認識できることになる。
【００９１】
なお、本実施形態では、２種類の動作が組み合わされた動作を認識する場合について説明したが、３種類以上の動作が組み合わされた動作を認識することも容易に可能である。この場合、所定の動作における相互に異なる複数の手指の形状を、所定の動作以外の２種類以上の動作の動作状態毎に表した学習画像を生成しておけばよい。
【００９２】
このように本実施形態において物体認識装置は、動作を認識する対象となる手指の形状を表す学習画像を生成し、手指の画像の入力を受け付け、学習画像に基づいて受け付けた画像が示す動作を認識する。このとき、物体認識装置は、学習画像として、手指の所定の動作に含まれる一連の動作である第１の動作（動作Ｂ）における相互に異なる複数の手指の形状を、所定の動作に含まれる第１の動作以外の動作（動作Ａ）の動作状態毎に表した画像を生成する。また、物体認識装置は、生成された学習画像のそれぞれを、受け付けた画像が示す動作を認識するための固有空間上の特徴点として投影する。
【００９３】
そのため、複数の動作が組み合わされた動作を効率的に認識することができる。
【００９４】
なお、本実施形態では、ある１つの動作を学習することにより、２つの動作が組み合わされた動作を認識する場合について説明した。このように、ある１つの動作（例えば、動作Ａの動作状態を含む動作Ｂ１〜動作Ｂｍｂ）を学習させておけば、もう一つの動作（動作Ａ）の学習をしていなくても、もう一つの動作（動作Ａ）を認識することもできる。
【００９５】
（第２の実施形態）
図７は、本発明の物体認識装置の第２の実施形態の構成を示すブロック図である。
【００９６】
本実施形態の物体認識装置は基本的に、上述した第１の実施形態の物体認識装置と同様の動作を行う。但し、本実施形態において物体認識装置は、固有空間上に投影された複数の学習画像の特徴点である特徴点群を含み、それらの間を補間する多次元曲面を生成する。この多次元曲面については後述する。
【００９７】
また、本実施形態では、上述した第１の実施形態と同様に、手指の認識だけではなく、身体等の形状が変化する物体の動作を認識する場合でも、手指のデータを身体のデータに置き換えるだけで、同様に認識することができる。但し、ここでは手指の動作を認識する場合を一例として説明する。
【００９８】
本実施形態の物体認識装置は図７に示すように、学習画像生成部１００と、学習処理部２００と、認識処理部３００とを備えている。
【００９９】
学習画像生成部１００の構成及び動作は、上述した第１の実施形態における学習画像生成部１０と同じなので、ここでは説明を省略する。
【０１００】
学習処理部２００は、固有空間生成部２０１と、画像投影点算出部２０２と、学習データ補間処理部２０３とを備えている。このうち、固有空間生成部２０１及び画像投影点算出部２０２の構成及び動作は、上述した第１の実施形態における固有空間生成部２１及び画像投影点算出部２２の構成及び動作と同じなので、ここでは説明を省略する。
【０１０１】
学習データ補間処理部２０３は、固有空間生成部２０１によって構成されたＫ次元の固有空間上に投影された学習画像の特徴点群のＫ次元座標値を受け付ける。そして、受け付けた特徴点群のＫ次元座標値から特徴点群の間を補間した多次元曲面、または特徴点間を補間する補間点を生成する。そして、生成された多次元曲面を表す式（またはパラメータ）、または生成された補間点のＫ次元座標値を出力する。なお、この出力された多次元曲面を表す式、または補間点のＫ次元座標値は、学習データ５００に追加される。
【０１０２】
ここで、例えば、第１の実施形態で説明した動作Ｂ１〜動作Ｂｍｂに基づいて多次元曲面が生成される場合を考える。１つの動作Ｂｂは、Ｋ次元の固有空間上における特徴点群であるが、連続した動作であれば隣接した特徴点同士は近接する。これにより、特徴点群のＫ次元座標値から１本の多次元曲線を生成することができる。特徴点群のＫ次元座標値から１本の多次元曲線を算出する方法としては例えば、多次元空間におけるスプライン補間等を利用する方法がある。これにより、１つの動作Ｂｂにおける特徴点間の補間ができる。
【０１０３】
そして、動作Ｂ１〜動作Ｂｍｂのそれぞれについて、上述した多次元曲線を生成する。この場合、隣接した動作Ｂｂと動作Ｂｂ＋１との多次元曲線は近接することから、動作Ｂ１〜動作Ｂｍｂの多次元曲線から多次元曲面を生成することができる。なお、ここでは、２種類の動作における多次元曲面を生成する場合について説明したが、３種類以上の動作の場合も同様に多次元曲面を生成することができる。
【０１０４】
図８は、図７に示した固有空間生成部２０１によって構成された固有空間の一例を示す図であり、（ａ）は固有空間上に投影された学習画像の特徴点を示す図、（ｂ）は固有空間上に投影された多次元曲面を示す図である。なお、図８では説明をわかりやすくするために固有空間の次元数を３次元とし、動作の種類を２種類としている。また、図８では、後述する入力画像の特徴点も示している。
【０１０５】
再度、図７を参照すると、認識処理部３００は、画像入力部３０１と、画像投影点算出部３０２と、探索処理部３０３と、補間画像生成部３０４とを備えている。このうち、画像入力部３０１及び画像投影点算出部３０２の構成及び動作は、上述した第１の実施形態における画像入力部３１及び画像投影点算出部３２の構成及び動作と同じなので、ここでは説明を省略する。
【０１０６】
探索処理部３０３は、第１の実施形態と同様に、Ｎ個の学習画像の特徴点のＫ次元座標値Ｅｉと、入力画像の特徴点のＫ次元座標値ＥＩＮとから、Ｎ個の学習画像の中から入力画像に最も近い学習画像を探索する。探索処理部３０３は、第１の実施形態と同様に、Ｎ個の学習画像の特徴点のＫ次元座標値Ｅｉのそれぞれと、入力画像の特徴点のＫ次元座標値ＥＩＮとの間の距離を算出することもできる。ここでは、探索処理部３０３は、学習データ補間処理部２０３にて生成された多次元曲面と、入力画像の特徴点との間の距離を算出する。そして、入力画像の特徴点からの距離が最短となる多次元曲線上の点である補間特徴点のＫ次元座標値を補間画像生成部３０４へ出力する。
【０１０７】
例えば図８に示すように、入力画像の特徴点が学習画像の特徴点のいずれからも遠い場合（点群の隙間に位置した場合）、図８（ａ）に示すように入力画像の特徴点と学習画像の特徴点との間の距離を算出するよりも、図８（ｂ）に示すように入力画像の特徴点と多次元曲面との間の距離を算出する方が、より最適な（最近傍の）Ｋ次元の固有空間上の点を求めることができる。
【０１０８】
再度、図７を参照すると、補間画像生成部３０４は、探索処理部３０３から出力された補間特徴点のＫ次元座標値を受け付ける。そして、受け付けた補間特徴点のＫ次元座標値と、その補間特徴点の近傍のＫ次元座標値を持つ学習画像に基づき、学習画像が表す形状を補間する形状を表す補間学習画像を生成する。そして、補間画像生成部３０４は、生成された補間学習画像を探索結果７００として出力する。
【０１０９】
このように本実施形態において物体認識装置は、固有空間上に投影された学習画像の特徴点の間を補間する多次元曲面を固有空間上に生成する。そして、生成された多次元曲面と入力画像の特徴点との距離を算出し、その距離が最短となる多次元曲面上の補間特徴点に基づいて生成された補間学習画像を入力画像と認識する。
【０１１０】
そのため、複数の動作が組み合わされた動作を効率的かつ正確に認識することができる。
【０１１１】
なお、本発明においては、物体認識装置内の処理は上述の専用のハードウェアにより実現されるもの以外に、その機能を実現するためのプログラムを物体認識装置にて読取可能な記録媒体に記録し、この記録媒体に記録されたプログラムを物体認識装置に読み込ませ、実行するものであっても良い。物体認識装置にて読取可能な記録媒体とは、フレキシブルディスク、光磁気ディスク、ＤＶＤ、ＣＤなどの移設可能な記録媒体の他、物体認識装置に内蔵されたＨＤＤなどを指す。また、上記のプログラムは、通信回線を介して提供することも可能である。
【符号の説明】
【０１１２】
１０，１００    学習画像生成部
１１，１０１    ３Ｄ動作画像作成部
１２，１０２    ２Ｄ画像生成部
２０，２００    学習処理部
２１，２０１    固有空間生成部
２２，３２，２０２，３０２    画像投影点算出部
３０，３００    認識処理部
３１，３０１    画像入力部
３３，３０３    探索処理部
４０，４００    学習画像データ
５０，５００    学習データ
６０，６００    対象物体
７０，７００    探索結果
２０３    学習データ補間処理部
３０４    補間画像生成部
【図１】
2010267004.tif 000006
【図２】
2010267004.tif 000007
【図３】
2010267004.tif 000008
【図４】
2010267004.tif 000009
【図５】
2010267004.tif 000010
【図６】
2010267004.tif 000011
【図７】
2010267004.tif 000012
【図８】
2010267004.tif 000013