(57)【要約】      （修正有）【課題】３次元画像の３次元的な画像処理を指示する操作手段として、たとえば、人間の手を、Ｋｉｎｅｔｅｃｔなどの撮像手段を用いて撮像し、その撮像結果を分析して手の位置、姿勢などを検出して、手の位置の変化、姿勢など応じて３次元画像に画像処理を施して、表示する。【解決手段】画像処理装置は、スクリーン４に投影されている３次元画像に対する３次元の操作を指示する、たとえば、手５を撮像して、その色信号および深度信号を出力する、撮像手段、たとえば、Ｋｉｎｅｔｅｃｔ１と、Ｋｉｎｅｔｅｃｔ１から出力された色信号および深度信号から手５の動きを検出し、検出した結果に応じて３次元画像に対する画像処理を行なうＰＣ３と、ＰＣ３から出力された画像信号をスクリーン４に投影するプロジェクタ２とを有する。【選択図】図１
2014029656.tif 000002
【特許請求の範囲】
【請求項１】
表示された、または、スクリーンに投影された３次元画像に対して３次元的な画像処理を指示する３次元操作対象を撮像し、当該３次元操作対象の色信号および深度信号を出力する撮像手段と、
当該撮像手段から出力された色信号および深度信号を入力し、当該入力した色信号および深度信号を解析して前記３次元操作対象の操作内容を検出し、当該検出した結果に応じて前記３次元画像に対して画像処理を行なって表示手段に出力する、信号処理手段と
を有する、
画像処理装置。
【請求項２】
上記表示手段は、上記信号処理手段から出力された画像処理された映像信号に応じた３次元画像をスクリーンに向けて投影（投射）する、投影手段を含む、
請求項１に記載の画像処理装置。
【請求項３】
上記撮像手段は、Ｋｉｎｅｔｅｃｔを含む、
請求項１または２に記載の画像処理装置。
【請求項４】
上記投影手段は、プロジェクタを含む、
請求項２または３のいずれかに記載の画像処理装置。
【請求項５】
上記手による操作指示は、フリックによるスクロール、ピンチイン、ピンチアウトを含む３次元画像の回転、移動などに対応する操作指示である、
請求項１〜４のいずれかに記載の画像処理装置。
【請求項６】
表示手段に表示された、または、スクリーンに投影された３次元画像に対して３次元的な画像処理を指示する３次元操作対象を撮像し、当該３次元操作対象の色信号および深度信号を出力する撮像手段から出力された色信号および深度信号を解析して前記３次元操作対象の操作内容を検出し、
当該検出した結果に応じて前記３次元画像に対して画像処理を行なって表示手段に出力する、画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置およびその方法に関する。
より特定的には、本発明は、たとえば、３次元画像（３次元オブジェクト、３Ｄオブジェクト）に対する、回転などの信号処理を指示する操作手段、たとえば、人間の手、の３次元位置、形状、動きを検出して、それに応じた３Ｄオブジェクトに対する画像処理を行う、画像処理装置に関する。また本発明はそのような信号処理を行なう画像処理方法に関する。
【背景技術】
【０００２】
ジェスチャーなど人間の操作に応じた画像処理を行う発明が種々提案されている（たとえば、特許文献１〜４を参照）。
【０００３】
また、近年、いわゆる、「スマートフォン」、タブレットＰＣが普及しており、これまでのキーボード、マウスによる入力操作ではなく、タッチパネル上で人間の指を動かすことにより、直観的に利用者の希望する情報をスマートフォン、タブレットＰＣなどに入力することが可能となっている。すなわち、タッチパネルを有するデバイスに、文字、図形等を表示し、それらの情報をユーザがタッチしたり、スライドさせることにより、映像に対する信号処理をすることが行われている。
このようなデバイスを用いると、従来のマウスを使用した場合に比較して、フリックによるスクロール、ピンチイン、ピンチアウトによる図形の３次元的な拡大または縮小（拡大・縮小）などが、ユーザの指の操作で直観的に行なうことができる。
【０００４】
しかしながら、上述したデバイスにおける操作は、２次元画像に対する２次元的な操作であり、ユーザの手の位置、姿勢などの３次元的な情報を直接入力することができず、そのような３次元操作に対する画像の３次元的な処理を行なうことには限界がある。
また、上述したデバイスでは、個人を想定しているため、情報を表示する範囲が狭く、情報表示そのものに限界がある。
【０００５】
他方、コンピュータゲームなどへの適用を想定した、Ｋｉｎｅｔｅｃｔ（非特許文献１）を用いたマイクロソフト社によるＨｏｌｏＤｅｓｋが知られている。ＨｏｌｏＤｅｓｋを用いると、Ｋｉｎｅｔｅｃｔで取得した手の形状情報に応じて反射板にコンピュータグラフック（ＣＧ）を投影して、希望する操作を行うことができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平１０−１７７４４９号公報
【特許文献２】特開２００１−２４６１６１号公報
【特許文献３】特開２０１０−０３９６０７号公報
【特許文献４】特開２０１０−０７９６６２号公報
【非特許文献】
【０００７】
【非特許文献１】ウィキペディア（Ｋｉｎｅｔｅｃｔ）
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記ＨｏｌｏＤｅｓｋにおいては、下記に例示する課題または限界に遭遇している。
（１）手の形状情報に対して表示されたＣＧに対して３次元的な回転処理を行うことができない。
（２）情報を表示する範囲は、個人を想定しているため、狭く、情報表示に限界がある。
（３）特殊な反射板を用いており、枠があるところでしか使用出来ない。
【０００９】
そこで、画像に対する３次元的な操作を直接指示する３次元操作手段として、たとえば、人間の手などを用い、その３次元操作手段、たとえば、手、の操作指示内容を、たとえば、Ｋｉｎｅｔｅｃｔなどの３次元撮像手段（３次元形状取得手段）を用いて撮像し、撮像結果に基づく３次元操作手段の色信号および深度信号から３次元操作手段（たとえば、手）の位置、姿勢などを分析して、その分析結果に基づいて３次元画像に対して信号処理して表示することが望まれている。
【００１０】
さらに、好ましくは、３次元画像に対して３次元的な画像処理された画像として、たとえば、プロジェクタなどの投射装置からスクリーンに投影（投射）可能とし、任意の大きさの画像で多数の聴衆に提示可能とすることが望まれている。
【００１１】
上記３次元操作手段としての、たとえば、手は、フリックによるスクロール、ピンチイン、ピンチアウトなどを含む３次元画像の回転、移動などに対応する操作を指示する。
【００１２】
また、たとえば、ミーティングなどにおいて、一人または複数のユーザ（聴衆）が、直観的な操作で、たとえば、インタラクティブな３次元画像の画像処理を行なうことが望まれている。
【課題を解決するための手段】
【００１３】
上記要望を達成するため、本発明によれば、表示された、または、スクリーンに投影されて３次元画像に対して３次元的な画像処理を指示する３次元操作対象を撮像し、当該３次元操作対象の色信号および深度信号を出力する撮像手段と、当該撮像手段から出力された色信号および深度信号を入力し、当該入力した色信号および深度信号を解析して前記３次元操作対象の操作内容を検出し、当該検出した結果に応じて前記３次元画像に対して画像処理を行なって表示手段に出力する信号処理手段とを有する画像処理装置が提供される。
【００１４】
好ましくは、上記表示手段は、プロジェクタなどの画像投影手段であり、当該画像投影手段は、上記信号処理手段から出力された画像処理された映像信号に応じた３次元画像をスクリーンに向けて投影（投射）する。
【００１５】
また本発明によれば、表示された、または、スクリーンに投影されて３次元画像に対して３次元的な画像処理を指示する３次元操作対象を撮像した結果得られた当該３次元操作対象の色信号および深度信号を解析して前記３次元操作対象の操作内容を検出し、当該検出した結果に応じて前記３次元画像に対して画像処理を行なって表示手段に出力する信号処理方法が提供される。
【発明の効果】
【００１６】
本発明によれば、画像に対する３次元的な操作、たとえば、フリック、ピンチイン、ピンチアウトを含み、回転、移動などを指示する３次元操作手段として、たとえば、人間の手などを用いる。これにより、ユーザが直接的に操作を行なうことが可能となる。
また本発明によれば、手などの操作指示内容を、たとえば、Ｋｉｎｅｔｅｃｔなどの３次元撮像手段（３次元形状取得手段）を用いて撮像し、撮像結果に基づく３次元操作手段の色信号および深度信号から３次元操作手段（たとえば、手）の位置、姿勢などを分析して、その分析結果に基づいて３次元画像に対して信号処理して表示するので、直接的かつインタラクティブな操作が可能となる。
【００１７】
好ましくは、本発明によれば、３次元画像に対して３次元的な画像処理された画像として、たとえば、プロジェクタなどの投射装置からスクリーンに投影（投射）可能としており、任意の大きさの３次元画像を多数の聴衆に同時に提示することができる。
【００１８】
さらに、本発明によれば、たとえば、ミーティングなどにおいて、一人または複数のユーザ（聴衆）が、直観的な操作で、たとえば、インタラクティブな３次元画像の画像処理を行なうことができる。
【図面の簡単な説明】
【００１９】
【図１】図１は本発明の画像処理装置の１実施の形態としての構成を示す図であり、図１（Ａ）は全体構成図、図１（Ｂ）は図１（Ａ）におけるプロジェクタとＫｉｎｅｔｅｃｔの平面図、図１（Ｃ）は図１（Ａ）におけるプロジェクタとＫｉｎｅｔｅｃｔの正面図である。
【図２】図２は図１に図解した画像処理装置の動作の形態を示す図である。
【図３】図３は図１（Ａ）に図解したパースナル・コンピュータ（ＰＣ）の処理の流れを示すフローチャートである。
【図４】図４は図１（Ａ）に図解したスクリーン４の４隅に４個のランドマーク（基準マーク）を配置する例を示す図である。
【図５】図５は、スクリーンの４隅に投影されたランドマークをＫｉｎｅｔｅｃｔで撮像して、４隅の座標位置を検出する方法を示す図である。
【図６】図６はＫｉｎｅｔｅｃｔから出力される深度情報の初期値の例を示す図である。
【図７】図７はスクリーンの投射面に手を置いた時に、それを撮像したＫｉｎｅｔｅｃｔの手の深度情報の例を示す図である。
【図８】図８（Ａ）〜（Ｃ）は手移動抽出範囲を認識することを示す図である。
【図９】図９はプロジェクタからスクリーンに投影（投射）する画像領域を抽出することを示す図である。
【図１０】図１０はスクリーンにおける手の中心の座標を取得する方法を示す図である。
【図１１】図１１はスクリーンにおける腕の中心の座標を取得する方法を示す図である。
【図１２】図１２はスクリーンに腕が入る状況での手の中心位置の座標を示す図である。
【図１３】図１３は手の垂直成分を示す図である。
【図１４】図１４は、図３に図解したステップ４の分岐処理を詳細に図解したフローチャートである。
【図１５】図１５は両手の認識を行う方法を示す図である。
【図１６】図１６は手がグーパー（グー、または、パー）のいずれかであることを認識することを示す図である。
【図１７】図１７は手の３次元座標系から３次元画像（対象物）の３次元座標系への座標変換を示す図である。
【図１８】図１８は手の指の角度を検出することを示す図である。
【図１９】図１９は手の平面を推定する方法を示す図である。
【図２０】図２０は両手の中心座標を示す図である。
【発明を実施するための形態】
【００２０】
装置構成
図１を参照して本発明の実施の形態の画像処理装置１０について述べる。
図１は本発明の画像処理装置の１実施の形態としての構成を示す図であり、図１（Ａ）は全体構成図であり、図１（Ｂ）は図１（Ａ）に図解したプロジェクタとＫｉｎｅｔｅｃｔの平面図であり、図１（Ｃ）は図１（Ａ）に図解したプロジェクタとＫｉｎｅｔｅｃｔの正面図である。
【００２１】
画像処理装置１０は、Ｋｉｎｅｔｅｃｔ（１）と、プロジェクタ２と、パーソナル・コンピュータ（ＰＣ）３と、スクリーン４とを有する。
Ｋｉｎｅｔｅｃｔ（１）は、３次元画像に対する３次元操作を指示する操作対象としての手５を、実時間で撮像し、手５の色信号、たとえば、各ピクセル毎のＲＧＢ信号、および、たとえば、図６に例示した各ブロックごとの深度信号を出力する、本発明の撮像手段（または、３次元形状取得手段）の１例である。
【００２２】
パーソナル・コンピュータ（ＰＣ）３は、下記に詳述する信号処理を行なう演算処理部（ＣＰＵ）、各種データを記憶するメモリ部（記憶部）、Ｋｉｎｅｔｅｃｔ（１）からの色情報と深度情報を入力する入力インターフェース、信号処理した画像（映像）信号をプロジェクタ２に出力する出力インターフェースなどを有して構成されている。
ＰＣ３は、Ｋｉｎｅｔｅｃｔ（１）から出力された色信号および深度信号を実時間で入力してメモリ部に記憶し、入力した色信号および深度信号を解析して手５で指示された画像処理のための操作内容を検出し、当該検出した操作結果に応じた画像処理を、スクリーン４に表示される３次元画像に対して行なって映像信号を実時間で表示手段に出力する、本発明の信号処理手段の１例である。
【００２３】
なお、３次元画像の原画像と、上画像処理した修正（更新）画像とをＰＣ３のメモリ部に記憶している。
また、Ｋｉｎｅｔｅｃｔ（１）から出力されたＲＧＢ信号から輝度信号を得ることができる。
特に、下記に述べる手５の内容を分析するためには、ＲＧＢ信号そのものを用いず、たとえば、０〜２５５の階調を持つ白色または黒色の輝度信号として扱う。
【００２４】
プロジェクタ２は、ＰＣ３などの信号処理手段から出力された映像信号をスクリーン４に投影（投射）する、本発明の投影（投射）手段の１例である。
【００２５】
本実施の形態において、３次元オブジェクトとしてのスクリーン４に投射される３次元画像に対する３次元画像操作を指示する３次元操作手段は、人間の手５である。
しかしながら、指を備えた手５に相当する義手、または、それに相当する手段など、たとえば、フリックして画像をスクロールさせる手段、ピンチイン、ピンチアウトさせる手段、あるいは、後述する移動、回転などをさせるための他の手段を用いることができる。
【００２６】
Ｋｉｎｅｔｅｃｔ（１）はスクリーン４を指向して配設されている。その理由は、本実施形態においては、手５がスクリーン４の前の手移動可能領域に規定されており、手５がスクリーン４の前とＫｉｎｅｔｅｃｔ（１）との間で操作されるためである。
Ｋｉｎｅｔｅｃｔ（１）は、Ｋｉｎｅｔｅｃｔ（１）とスクリーン４との間に位置して３次元画像に対する画像処理操作を指示する手５を、たとえば、赤外線センサ窓を介して入射した赤外線を用いて実時間で撮像して、手５の色信号および深度信号を実時間でＰＣ３に出力する。
【００２７】
色信号としては、各ビクセル毎の、たとえば、Ｒ（赤）Ｇ（緑）Ｂ（青）の３原色信号である。また、深度信号は、たとえば、図６に例示したように、各ブロックごとの深度信号である。
なお、この例示では、Ｋｉｎｅｔｅｃｔ（１）はプロジェクタ２の上に載置されている。
【００２８】
ＰＣ３は、図２に画像処理装置１０の処理の概要を示したように、Ｋｉｎｅｔｅｃｔ（１）から出力されたＲＧＢ画像信号と深度信号とを実時間で入力して、手５の３次元座標および形状（姿勢）を示す情報を取得して、手５の３次元画像に対する基本的な３次元操作、たとえば、移動、回転、拡大、縮小などの処理を解析して、その操作に応じた画像処理を行う。
ＰＣ３は、その結果の映像信号を実時間でプロジェクタ２に出力する。
ＰＣ３の処理内容については図３を参照して後述する。
【００２９】
プロジェクタ２は、ＰＣ３から出力された画像データに対応した３次元画像を投射（投影）レンズからスクリーン４に投射（投影）する。
【００３０】
Ｋｉｎｅｔｅｃｔ（１）による手５の撮像、Ｋｉｎｅｔｅｃｔ（１）に対するＰＣ３による信号処理、ＰＣ３の処理結果をスクリーン４に投射するプロジェクタ２の処理が、実時間で反復されることにより、ユーザは、自己の手５の操作に応じた３次元画像をスクリーン４に、実時間で、連続的に、投射（投影）させることができる。
【００３１】
図３を参照してＰＣ３の処理内容を述べる。
【００３２】
ステップ１、初期設定
ＰＣ３は図４〜図６を参照して述べる下記の初期設定を行う。
この初期設定は、特に、プロジェクタ２と、スクリーン４との距離を任意に設定可能としているためであり、プロジェクタ２とスクリーン４との距離が固定している場合は、不要である。なお、この初期設定は、必ずしも、実時間で行なう必要はない。
【００３３】
（１）ランド（基準）マークの投影
図４は、図１（Ａ）に図解したスクリーン４の４隅に隅（角）を指向した４個のランドマーク（基準マーク）を配置する例を示す図である。
ユーザは、スクリーン４の投影面（投射面）の４隅に隅（角）を指向したランドマークを配置する。
なお、４個のランドマークは、スクリーン４に対する手５の操作範囲（手移動抽出範囲）を規定し、さらに、ＰＣ３からプロジェクタ２を介して出力される画像のスクリーン４における有効範囲を規定する。
すなわち、４個のランドマークで規定される領域にプロジェクタ２からの画像が投影され、この領域（手移動抽出範囲）において手５が操作される。
【００３４】
（２）ランドマーク画像の取得
図５はスクリーン４の４隅に配置されたランドマークをＫｉｎｅｔｅｃｔ（１）で撮像して、４隅の座標位置を検出する方法を示す図である。
Ｋｉｎｅｔｅｃｔ（１）は、ランドマークが配置されたスクリーン４を撮像して、ＲＧＢ信号および、深度信号を生成して、ＰＣ３に出力する。
ＰＣ３はＫｉｎｅｔｅｃｔ（１）から出力されたＲＧＢ信号を、ＰＣ３内のメモリ部に記憶する。なお、ＰＣ３は手５の操作を処理するとき、ＲＧＢ信号としてではなく、たとえば、０〜２５５の階調を持つ輝度信号として用いるので、ＰＣ３のメモリ部には輝度信号も記憶される。メモリ部は、各ピクセル毎に輝度信号をも記憶している。
【００３５】
ＰＣ３は、Ｋｉｎｅｔｅｃｔ（１）から出力された４隅に配置したランドマークのテンプレートマッチングを行い、ＲＧＢ画像上の４隅のランドマークの輝度からランドマークの座標を取得して、メモリ部に記憶する。
この処理以降、メモリ部に記憶したランドマークの座標の範囲内で、ＰＣ３が画像処理を行う。
【００３６】
（３）深度情報の初期値の記憶
図６はＫｉｎｅｔｅｃｔから出力されるランドマークの深度情報の初期値の例を示す図である。
スクリーン４の投射面にユーザの手５が存在しない状態で、Ｋｉｎｅｔｅｃｔ（１）でスクリーン４を撮像して、Ｋｉｎｅｔｅｃｔ（１）からのスクリーン４上のランドマークの深度状態を取得する。この深度情報は、Ｋｉｎｅｔｅｃｔ（１）の先端からスクリーン４までの距離を意味する。
ＰＣ３はその深度情報、すなわち、スクリーン４までの距離情報をＰＣ３内のメモリ部に記憶する。
【００３７】
この処理は、後述するスクリーン４の投射面に手５を置いた場合の深度情報と対比して、スクリーン４の投影面からＫｉｎｅｔｅｃｔ（１）に向かう距離が、たとえば、２０ｍｍ以上の領域を手５の移動する領域（手移動可能領域）として認識するための処理である。上記例示した２０ｍｍを、手移動可能領域の下限値という。
なお、この例示では、Ｋｉｎｅｔｅｃｔ（１）から、ヒクセル毎ではなく、横８×縦８＝６４ブロック（区分）の各ブロックごとに深度情報が出力される。
この例示では、スクリーン４が下から上に向かって傾斜しており、上列の深度情報が大きく、下列の深度情報が小さい。
【００３８】
以上の初期値設定により、スクリーン４とＫｉｎｅｔｅｃｔ（１）との間の距離、および／または、手５とスクリーン４またはＫｉｎｅｔｅｃｔ（１）との間の距離が任意であっても、画像処理装置１０を使用可能となる。
換言すれば、スクリーン４に表示する３次元画像の大きさ、手移動可能領域の大きさ等に応じて、スクリーン４とプロジェクタ２の距離、または、スクリーン４とＫｉｎｅｔｅｃｔ（１）の距離を設定した場合に、上述した初期設定を行えば、希望するスクリーン４とＫｉｎｅｔｅｃｔ（１）またはプロジェクタ２の距離に応じた３次元画像（３次元オブジェクト）を得ること、および、手５の操作が可能となる。
【００３９】
ステップ２、投影画像上の手領域の抽出
図７〜図９を参照して、ユーザの手５の３次元座標を取得するために、ＰＣ３は、Ｋｉｎｅｔｅｃｔ（１）と協働して、スクリーン４の投影画像上の手５の領域（手移動可能領域）の抽出を行う。
【００４０】
（１）手移動可能領域の認識
図７はスクリーンの投射面にユーザが手５を置いた時に、それを撮像したＫｉｎｅｔｅｃｔ（１）の手の深度情報の例を示す図である。
図７に例示したように、ユーザがスクリーン４の投影面に手５を置いた状態で、Ｋｉｎｅｔｅｃｔ（１）で手５を撮像し、Ｋｉｎｅｔｅｃｔ（１）は撮像による深度情報をＰＣ３に出力する。ＰＣ３はその深度情報をメモリ部に記憶する。
【００４１】
ＰＣ３は、図５に例示したスクリーン４の投射面に手５がないときの深度情報の初期値と、図７に例示したスクリーン４の投射面に手５を置いたときのＫｉｎｅｔｅｃｔ（１）で取得した現在の深度情報との差を、各ブロック（区分）ごとに求める。
なお、図７に例示した深度情報と図５に例示した深度情報とを対比すると、図７の深度情報は手５があるブロック（区分）の深度情報の値が小さい。
スクリーン４の投射面における手５の深度情報の差が、スクリーン４とＫｉｎｅｔｅｃｔ（１）との間の手移動可能領域の下限値、たとえば、２０ｍｍより大きいとき、ＰＣ３は、有効な手移動可能領域とする。この例示では、手５はスクリーン４の投射面から２０ｍｍ以上離して操作する。
【００４２】
図８（Ａ）〜（Ｃ）は手移動可能領域を認識することを示す図である。図８（Ａ）は図６を参照して述べたスクリーン４の投射面の前に手５がないときの深度情報の初期値を示し、図８（Ｂ）は図７を参照して述べたスクリーン４の投射面の前にユーザの手５を置いたときの深度情報を示す。図８（Ｃ）は、上述したＰＣ３の処理により、ユーザの手５の部分の、図８（Ｂ）の深度情報と図８（Ａ）の深度情報との差が手移動可能領域の下限値である２０ｍｍ以上ある領域を明示した図である。
【００４３】
次に、ＰＣ３は図９に図解した投影画像領域を抽出する。
図９はプロジェクタ２からスクリーン４に３次元画像を投影（投射）する画像領域を抽出することを示す図である。図９において、左側の上部にプロジェクタ２側から肉眼で見た画面を示し、左側の下部にＫｉｎｅｔｅｃｔ（１）で撮像した画像を示す。また、図９において、右側の上部に左側の上部の肉眼で見た画面を４隅のランドマーク内に展開した図を示し、右側の下部にスクリーン４の投影画像上の手移動可能領域を示す。
ＰＣ３は、図９の左側の上部に図解した、初期設定で取得したスクリーン４へのランドマークの投影画像の４隅の座標を用いて、座標変換のための射影変換行列を算出し、手移動可能領域から、図９の右側に図解した、手移動可能領域を抽出する。
【００４４】
参考までに、座標変換のための射影変換について述べる。
ｎ＋１次元アフィン空間Ａn+1の一次変換Ｆを考える。
Ｆ：Ａn+1    −−＞    Ａn+1（ｕ−−＞ＭＵ）
ただし、ｕは、縦ベクトル表示してあるものとし、
Ｍは、ｎ＋１次正方行列である。
原点を通る直線はＦによって再び原点を通る直線に移る。したがって、Ｆは射影空間の変換を引きおこしている。
Ｆ：Ｐn   −−＞    Ｐn （〔ｕ〕−−＞  Ｍ〔ｕ〕＝〔Ｍｕ〕
これを射影変換という。
なお、ｎ＋１次元の縦ベクトルｕ（≠０）に対して、〔ｕ〕は対応するｎ次元射影空間の点とする。
【００４５】
以上の処理により、初期設定で取得したスクリーン４へのランドマークの投影画像内における手移動可能領域が抽出できる。
【００４６】
ステップ３、手の３次元座標取得
図１０〜図１３を参照して、手５の３次元座標（ｘ，ｙ，ｚ）の取得を行う。
（１）手の中心座標の取得
図１０は、スクリーン４における手５の中心の座標を取得する方法を示す図である。
ＰＣ３は、図１０の左側に図解した手５の手移動可能領域を抽出した画像を、図１０において、白画素から最も近い黒画素までの距離で正規化する。そして、ＰＣ３は、輝度値が最大の輝度、本例では、２５５の画素を検出し、図１０の右側に図解したように、その座標を手５の中心座標とする。
【００４７】
なお、本例では、手５のある部分（ピクセル）は白画素または白画素に近い画素として表し、手５が存在しない部分、たとえば、３次元画像、手５が存在しないスクリーン４の白い色の部分を、黒画素として図解している場合について、述べている。
【００４８】
図１１はスクリーン４の手移動可能領域に、手５だけでなく、腕も入った時の、腕の中心の座標を取得する方法を示す図である。
図１１の左側に図解したように、手５の他に腕も手移動可能領域に入った場合には、その状態でスクリーン４の投影画像上の手移動可能領域を、白画素から元も近い黒画素まで距離で正規化して、最大輝度値、たとえば、２５５の画素を検出すると、図１１の右側に図解したように、腕の中心座標を検出してしまうという問題が起こる。
【００４９】
この問題を解決するため、図１２に図解したように、腕の画像を排除する処理を行う。
図１２はスクリーン４の前の手移動抽出範囲に腕が入る状況での手の中心位置の座標を示す図である。
ＰＣ３は、腕がスクリーン４の前の手移動可能領域に位置する状態で手の中心座標を検出する。
まず、ＰＣ３は、腕の画像を削除するため、ＰＣ３のメモリ部に記憶してある画像データについて、取得した腕の中心座標から輪郭までの最短距離を計測する。
ＰＣ３は、その距離を半径として、図１２の左側に図解したように、腕の中心座標を中心とする黒い円を描く。そして、黒い円の輝度は低いので、それら低い輝度を排除して、腕の画像を廃棄する。これにより、手移動可能領域に入り込んだ腕の情報を削除することができる。
したがって、ユーザは、手５の操作に対して、特別注意をする必要がない。
【００５０】
次に、ＰＣ３は、白画素から最も近い黒画素までの距離で正規化し、最大輝度値、たとえば、２５５の画素を検出する。
この最大輝度値の画素の部分が、図１２の右側に図解した、手５の中心座標（ｘ，ｙ）である。
【００５１】
ＰＣ３は、さらに、図１３に図解したように、取得した手５の中心座標（ｘ，ｙ）の深度情報の初期値と現在の深度情報の差を算出して、垂直成分ｚとする。
この垂直成分は、手５までの距離を意味している。
以上の処理により、ステップ３の手の３次元座標を取得する処理が終了する。
【００５２】
ステップ４、分岐処理
手５の操作に応じて、スクリーン４に表示されている３次元画像（すなわち、３Ｄオブジェクト）の移動、回転、拡大、縮小操作の切り替えを一意的に行うため、操作の分岐処理を行う。
図１４は、図４に図解したステップ４の分岐処理を詳細に図解したフローチャートである。
図４においては、３Ｄオブジェクトの移動操作（ステップ４ａ）、３次元画像（３Ｄオブジェクト）の回転操作（ステップ４ｂ）、３Ｄオブジェクトの拡大、縮小操作（ステップ４ｃ）と、簡略して図解している。
他方、図１４においては、片手または両手の操作（ステップＳ４１）、片手のグー操作またはパー操作（ステップＳ４２）、両手のグー操作またはパー操作（ステップＳ４３）、Ｋｉｎｅｔｅｃｔ（１）から見て、スクリーン４に表示されている３次元画像（３Ｄオブジェクト）の上に（または、前に）手５がある処理（ステップＳ４４）、移動操作（ステップＳ４５）、ｚ軸回転操作（ステップＳ４６）、ｘｙ軸回転操作（ステップＳ４７）、拡大・縮小操作（ステップＳ４８）、３Ｄオブジェクトの表示（ステップＳ４９）の操作に分類している。
【００５３】
３Ｄオブジェクトの移動操作
３次元画像（３Ｄオブジェクト）の移動操作は、手５が片手で（ステップＳ４１）、手５の形状が「グー（握りこぶし）」のとき（ステップＳ４２、ステップＳ４５）、その手５の移動方向、移動量、移動速度などに対応して行う（ステップＳ４５）。
ＰＣ３が行う３次元画像の移動操作としては、スクリーン４において３次元画像の上下左右への移動、スクリーン４から３次元画像がＫｉｎｅｔｅｃｔ（１）に向かって近づく、または、Ｋｉｎｅｔｅｃｔ（１）からスクリーン４に向かって遠ざかるなどの操作である。
なお、ＰＣ３は、３次元画像がスクリーン４に向かって移動するとき、３次元画像をその距離に応じて縮小させることもできる。他方、ＰＣ３は、３次元画像がスクリーン４から離れてＫｉｎｅｔｅｃｔ（１）に向かって接近するとき、３次元画像をその距離に応じて拡大させることもできる。
【００５４】
そのため、ＰＣ３は、手５の移動を、メモリ部に記憶している、Ｋｉｎｅｔｅｃｔ（１）で撮像した連続する複数の画像を示す、色信号（輝度信号）および深度情報を参照して、判断する。
以下、各画面におけるＫｉｎｅｔｅｃｔ（１）の撮像データに基づく、ＰＣ３の処理について述べる。
【００５５】
ステップＳ４１、片手または両手の認識
図１５は両手の認識を行う方法を示す図である。
ＰＣ３は、図１５に図解したように、Ｋｉｎｅｔｅｃｔ（１）から出力されて、メモリ部に記憶しているＲＧＢ信号に基づく輝度値のうち、スクリーン４の投影画像上の画像について、たとえば、図７、図８に例示した区分（領域）のピクセル（画素）ごとに、画像処理において、画像処理において通常行われている「ラベリング処理」を行い、輝度が第１の輝度値、たとえば、２５０、より大きな最大領域を抽出して、最大領域を認識する。
【００５６】
次いで、ＰＣ３は、上述した手移動可能領域に腕が入ったときの排除処理と同様、上記抽出した最大領域の画像データを黒くして、次の処理の対象から外す。
ＰＣ３は、再度、「ラベリング処理」を行い、輝度が上記第１の輝度値より小さな第２の輝度値、たとえば、２４０、より大きな大きい領域が所定量のピクセル、たとえば、１００ピクセル以上存在すれば、両手であると認識する。
両手でなければ、ＰＣ３は、片手であると判断する。
【００５７】
ステップＳ４２、Ｓ４３、手の形状認識（グー、または、パーの検出）
図１６は手がグーパー（グー、または、パー）のいずれかであることを認識することを示す図である。
まず、ＰＣ３が、上記処理で、手移動可能領域にあるものが、片手であると認識した場合を例示して述べる。
【００５８】
（１）輪郭検出
ＰＣ３は、スクリーン４の投影画像上の輪郭を検出する。この輪郭の検出は、隣接する二次元方向の領域（ピクセル）の輝度の差が所定の値以上の部分として（あるいは、２次元方向の微分値が所定値以上の部分として）検出することができる。その結果を、図１６において、細い白線で示している。
【００５９】
（２）輪郭線の曲率の算出
ＰＣ３は次いで、輪郭線の曲率を算出する。
輪郭線の曲率は、変曲点を意味しており、手５が開いている場合は、握りこぶしのときより、変曲点は多くなる。
このような曲率の演算は、通常の数学モデルを用いて行なうことができる。
【００６０】
（３）グーまたはパーの検出
ＰＣ３は、曲率の高い部分が所定量以下、たとえば、５個以下の場合は、手５が「グー」であると判断する。他方、ＰＣ３は、曲率の高い部分が所定量以上、たとえば、６個以下の場合は、手５が「パー」であると（検出）認識する。
【００６１】
以上、ＰＣ３が片手であると認識した場合について述べたが、ＰＣ３が両手であると認識した場合についても、片手ごとに上述した処理を行う。
それにより、両手の場合についても、片手ごとに、「グー」または「パー」を検出することができる。
【００６２】
動き検出
ＰＣ３は、Ｋｉｎｅｔｅｃｔ（１）で撮像した結果得られた、ある時刻におけるＲＧＢ信号および深度信号を用いて、上述した処理を行う。
ＰＣ３は、Ｋｉｎｅｔｅｃｔ（１）から時々刻々と連続して出力される、ＲＧＢ信号および深度信号についての上述した処理結果を追跡している。
それにより、ＰＣ３は総合的に、（１）手５の動き、たとえば、手５全体の動き、手５の指の広がりの程度、（２）さらに、それらの動きの速度、（３）動きの方向などを検出することができる。
すなわち、時々刻々と連続して出力される、ＲＧＢ信号および深度信号についての上述した処理結果の変化を追跡していくことにより、（１）手５の動き、たとえば、手５全体の動き、手５の指の広がりの程度、（２）さらに、それらの動きの速度、（３）動きの方向などを検出することができる。
【００６３】
３次元画像の移動操作としては、たとえば、上記手５の動き（操作）に応じた、スクリーン４において上下左右への移動、スクリーン４からＫｉｎｅｔｅｃｔ（１）に向かって遠ざかる、または、Ｋｉｎｅｔｅｃｔ（１）からスクリーン４に向かって近づくなどの操作である。
【００６４】
ステップＳ４５、３Ｄオブジェクトの３次元移動操作
図１７は手の３次元座標系（ｘ，ｙ，ｚ）から３Ｄオブジェクト（３次元画像）の３次元座標系（Ｘ，Ｙ，Ｚ）への変換を示す図である。
【００６５】
（１）ｘｙ軸への変換
ＰＣ３は、図１７に例示した手移動可能領域について、下記式（１）、（２）に基づいてｘｙ軸への変換を行う。
【００６６】
（２）ｚ軸への変換
ＰＣ３は、次いで、図１７に例示した範囲について、下記式（３）に基づいて、ｚ軸への変換を行う。
【００６７】
【数１】
2014029656.tif 000003
【００６８】
以上の処理により、３次元画像（３Ｄオブジェクト）について、手５の３次元座標系（ｘ，ｙ，ｚ）から、３次元座標系（Ｘ，Ｙ，Ｚへの変換を行うことができる。
【００６９】
ＰＣ３は、このようにして、座標変換を行い、手５が片手で（ステップＳ４１）、手５の形状が「グー（握りこぶし）のとき（ステップＳ４２、ステップＳ４５）、その手５の移動に応じて量、および、その手５の移動方向に対応して、スクリーン４に投影されている３次元画像（３Ｄオブジェクト）の移動操作を行う（ステップＳ４５）。
【００７０】
この処理は、実際は、ＰＣ３は、現在、スクリーン４に投影されている３次元画像に対応する、ＰＣ３のメモリ部に記憶されている画像データに対して、移動操作に応じた処理を行うことを意味する。
移動操作以外の他の操作についても、ＰＣ３は、スクリーン４に投影されている３次元画像に対応するメモリ部に記憶されている画像データについて、対応する信号処理を行う。
【００７１】
ステップＳ４９、表示
ＰＣ３は、上記結果に基づく画像処理した画像データをプロジェクタ２に出力する。
プロジェクタ２は、その画像データをスクリーン４に、３次元画像として投影する。
【００７２】
ステップＳ４４、４６、３Ｄオブジェクトの垂直軸（Ｚ軸）の回転操作
図１８は手の指の角度を検出することを示す図である。
スクリーン４に投影されている３次元画像（３Ｄオブジェクト）上に手５がある場合、ＰＣ３は、手５の角度を用いて、垂直軸（Ｚ軸）の回転操作を行う。
ＰＣ３は、図１８に例示したように、投影画像上の手移動可能領域の画像信号（ＲＧＢ画像）において中心座標を腕の中心座標として、その半径を手の中心座標（ｘ，ｙ）までの距離で黒い円を描く。
ＰＣ３は次に、手の中心座標から最も遠い白画素を検出する。検出した座標を、中指の座標（Ｆｘ，Ｆｙ）とする。
ＰＣ３は、中指の座標（Ｆｘ，Ｆｙ）と手の中心座標（ｘ，ｙ）の角度Ｆθを、下記式（４）により、算出する。
【００７３】
【数２】
2014029656.tif 000004
【００７４】
ＰＣ３は、算出した手の角度Ｆθに応じて、３Ｄオブジェクトの垂直軸（ｚ軸）の回転操作を行う。
ＰＣ３におけるこの回転操作は、たとえば、ＣＧなどで行う変換処理と同様に行うことができる。
【００７５】
ステップＳ４９、表示
ＰＣ３は、回転操作の結果に基づく画像データをプロジェクタ２に出力する。
プロジェクタ２は、その画像データをスクリーン４に３次元画像として投影する。
【００７６】
ステップＳ４４、４７、ｘｙ軸回転操作
図１９は手の平面を推定する方法を示す図である。
ＰＣ３は、手５がスクリーン４に投影されている３Ｄオブジェクト（３次元画像）の上にない場合、手の法線ベクトルを用いて、３Ｄオブジェクトの平面（ｘｙ軸面）の回転操作を行う。
【００７７】
（１）手の３点の検出
ＰＣ３は、まず、手の法線ベクトル（Ｈ）を算出するため、図１９に例示した手の３点を検出する。
ＰＣ３は、まず、手の中心座標Ｏ（ｘ，ｙ，ｚ）の点を第１の点とする。ＰＣ３はこの点を中心に手の幅を検出する。
ＰＣ３は次に、中指の方向に、手の中心座標Ｏ（ｘ，ｙ，ｚ）から手の幅の分離れた点を検出する。
ＰＣ３は次に、手の中心座標Ｏ（ｘ，ｙ，ｚ）を中心に、中指の方向の点を＋４５度の点を第２の点とし、その座標をＲ１（Ｒ1 ｘ，Ｒ1 ｙ，Ｒ1 ｚ）とする。
また、ＰＣ３は、手の中心座標Ｏ（ｘ，ｙ，ｚ）を中心に、中指の方向の点を−４５度の点を第３の点とし、その座標をＲ２（Ｒ2 ｘ，Ｒ2 ｙ，Ｒ2 ｚ）とする。
以上の３点を用いて、下記式（５）、（６）、（７）を用いて、手５の法線ベクトル（Ｈ）を算出する。
【００７８】
【数３】
2014029656.tif 000005
【００７９】
次に、ＰＣ３は、手の法線ベクトル（Ｈ）と、ｚ軸ベクトル（Ｚ）の法線ベクトル（Ｖ）を、下記式（８）に従って算出する。
【００８０】
【数４】
2014029656.tif 000006
【００８１】
ＰＣ３は、算出した法線ベクトル（Ｖ）を、平面軸（ｘｙ軸）の回転操作の回転軸とする。
次に、ＰＣ３は、手の法線ベクトル（Ｈ）とｚ軸ベクトルとの間の角度Ｒθを下記式（９）を用いて算出する。
この角度Ｒθを平面軸（ｘｙ軸）回転操作の回転角度とする。
【００８２】
【数５】
2014029656.tif 000007
【００８３】
ＰＣ３は、手の法線ベクトルよって算出した回転軸（Ｖ）、回転角度Ｒθとを下記式（１０）に代入して回転行列Ｍを算出する。
【００８４】
【数６】
2014029656.tif 000008
【００８５】
ＰＣ３は、上記算出した回転行列Ｍを用いてスクリーン４の投射されている３Ｄオブジェクト（３次元画像）の平面軸（ｘｙ軸）の回転操作を行う。
【００８６】
ステップＳ４９、表示
ＰＣ３は、上記回転操作の結果に基づく画像データをプロジェクタ２に出力する。
プロジェクタ２は、その画像データをスクリーン４に３次元画像（３Ｄオブジェクト）として投影する。
【００８７】
ステップＳ４８、３Ｄオブジェクトの任意軸方向の拡大・縮小
図２０は両手の中心座標を示す図である。
両手がグーの場合（ステップＳ４３）、ＰＣ３は、両手間のベクトルと距離に応じて、３Ｄオブジェクトの任意軸方向の拡大・縮小操作を行う。
【００８８】
（１）両手の座標の検出
ＰＣ３は、まず、図２０に例示した、両手の中心座標を検出する。右手の中心座標Ｓ１を（Ｓ1 ｘ，Ｓ1 ｙ，Ｓ1 ｚ）とし、左手の中心座標Ｓ２を（Ｓ2 ｘ，Ｓ2 ｙ，Ｓ2 ｚ）とする。
【００８９】
（２）両手間のベクトルと距離の算出
ＰＣ３は、式（１１）、（１２）を用いて、両手間のベクトル（ｕ）と、距離λとを算出する。
【００９０】
【数７】
2014029656.tif 000009
【００９１】
（３）拡大・縮小行列の算出
ＰＣ３は次に、式（１３）を用いて、任意軸方向の拡大・縮小行列Ｔを算出する。
【００９２】
【数８】
2014029656.tif 000010
【００９３】
ＰＣ３は、上記算出した任意軸方向の拡大・縮小行列Ｔを用いて、スクリーン４に投影されている３Ｄオブジェクト（３次元画像）に対して、任意軸方向の拡大・縮小処理を行う。
【００９４】
ステップＳ４９、表示
ＰＣ３は、上記任意軸方向の拡大・縮小操作の結果に基づく、３Ｄオブジェクトの画像データをプロジェクタ２に出力する。
プロジェクタ２は、その画像データを３次元画像として、スクリーン４に投影する。
【００９５】
ステップＳ５、終了判定
ＰＣ３は、ユーザが終了指示をするまで、上述したステップＳ２〜ステップＳ４の処理を反復する。
【００９６】
ステップＳ６、終了
ＰＣ３は、ユーザが終了指示をしたとき、上記処理を終了する。
【００９７】
上記実施の形態においては、スクリーン４に投影された３次元画像に対する３次元的な操作、たとえば、フリック、ピンチイン、ピンチアウトを含み、回転、移動などを指示する手５を用いる。これにより、ユーザが手５を用いて３次元画像に直接的に操作を行なうことが可能となる。
【００９８】
また上記実施の形態本発明によれば、手５操作指示内容を、たとえば、Ｋｉｎｅｔｅｃｔなどの３次元撮像手段（３次元形状取得手段）を用いて撮像し、撮像結果に基づく３次元操作手段の色信号および深度信号から３次元操作手段（たとえば、手）の位置、姿勢などを分析して、その分析結果に基づいて３次元画像に対して信号処理して、実時間で表示するので、直接的かつインタラクティブな操作が可能となる。
【００９９】
好ましくは、本実施の形態によれば、スクリーン４に投影された３次元画像に対して３次元的な画像処理された画像として、プロジェクタなどの投射装置からスクリーンに投影（投射）可能としており、任意の大きさの３次元画像を多数の聴衆に同時に提示することができる。
【０１００】
さらに、本実施の形態によれば、たとえば、ミーティングなどにおいて、一人または複数のユーザ（聴衆）が、直観的な操作で、たとえば、インタラクティブな３次元画像の画像処理を行なうことができる。
【０１０１】
３次元形状取得装置、または、撮像手段としてのＫｉｎｅｔｅｃｔ（１）は、既に市販されており、実時間で、撮像結果をＲＧＢ信号および深度情報として提供するので、３次元形状取得装置として新規に設計することが不要である。
また、プロジェクタ２も既存のものを使用することができる。
したがって、以上の実施の形態においては、上述した処理を行うパーソナル・コンピュータ（ＰＣ）３のみを新規に開発すればよく、実施で容易であった。
【０１０２】
スクリーン４と、Ｋｉｎｅｔｅｃｔ（１）またはプロジェクタ２との間隔を適宜設定することにより、手移動可能領域に挿入する手５の数を任意にすることができる。その結果、大勢の聴衆の前で、多数のユーザがプロジェクタ２からの投影画面を、手を用いて、フリック、ピンチイン、ピンチアウトなどの操作をすることにより、ユーザが直観的に操作することができる。
【０１０３】
さらに、プロジェクタ２から投影される画面の寸法が大きいので、複数のユーザが同時に投影画面上の表示を操作することが可能となり、たとえば、複数の人間によるミィーティングなどにおいても、手などの直観的な操作で、ＰＣ３を介して、所望の画像処理を行うことが可能となる。
【０１０４】
以上の実施の形態においては、３次元形状取得装置、または、撮像手段として、Ｋｉｎｅｔｅｃｔ（１）を用いた場合について述べたが、Ｋｉｎｅｔｅｃｔ（１）に代えて、Ｋｉｎｅｔｅｃｔ（１）と同等の機能、性能を有する撮像手段を用いることができる。
【０１０５】
第２実施の形態
また、上記実施の形態において、ＰＣ３からの映像を３次元画像として表示する表示手段として、プロジェクタ２を用いた場合について述べたが、その表示手段をＰＣ３の表示画面、または、他のコンピュータの表示画面とすることもできる。ＰＣ３の表示画面、または、他のコンピュータの表示画面は、プロジェクタ２からの投射画像とは異なるが、ＰＣ３のユーザ、または、他の聴衆に視認することができる。
なお、ユーザは、ＰＣ３の表示画面の前に規定される手移動可能領域、または、他のコンピュータの表示画面の前に規定される手移動可能領域において、手５による操作を行う。
したがって、本発明の表示手段としては、プロジェクタ２には限定されない。
【０１０６】
本発明の実施の形態に際しては、上述した例示に限定されず、種々の変形態様を取ることができる。
【符号の説明】
【０１０７】
１０…画像処理装置、１…Ｋｉｎｅｔｅｃｔ、２…プロジェクタ、パーソナル・コンピュータ、４…スクリーン、５…手。
【図１】
2014029656.tif 000011
【図２】
2014029656.tif 000012
【図３】
2014029656.tif 000013
【図４】
2014029656.tif 000014
【図５】
2014029656.tif 000015
【図６】
2014029656.tif 000016
【図７】
2014029656.tif 000017
【図８】
2014029656.tif 000018
【図９】
2014029656.tif 000019
【図１０】
2014029656.tif 000020
【図１１】
2014029656.tif 000021
【図１２】
2014029656.tif 000022
【図１３】
2014029656.tif 000023
【図１４】
2014029656.tif 000024
【図１５】
2014029656.tif 000025
【図１６】
2014029656.tif 000026
【図１７】
2014029656.tif 000027
【図１８】
2014029656.tif 000028
【図１９】
2014029656.tif 000029
【図２０】
2014029656.tif 000030