画像認識装置および操作判定方法並びにプログラム
【課題】的確な操作の判定を可能にすること。
【解決手段】操作者102は、その右目504と左目503とにより三次元ディスプレイ111上に表示された画像502及び仮想操作面画像501とを見るが、仮想操作面画像501は、それぞれ右目504及び左目503で見ることにより三次元ディスプレイ111から操作者の前面にあるように立体表示される。この仮想操作面が立体表示される位置を、上述のビデオカメラ201で撮影した操作者の像や位置から決定して三次元ディスプレイ111に表示する。仮想操作面と、操作者102との相対関係を用い、操作者102の一部が操作面のビデオカメラ201から見て手前に来ると、操作が開始されたと判断し、各部の形状や動きから、その形状、動きが予め想定されたいずれの操作であるかを判定する。
【解決手段】操作者102は、その右目504と左目503とにより三次元ディスプレイ111上に表示された画像502及び仮想操作面画像501とを見るが、仮想操作面画像501は、それぞれ右目504及び左目503で見ることにより三次元ディスプレイ111から操作者の前面にあるように立体表示される。この仮想操作面が立体表示される位置を、上述のビデオカメラ201で撮影した操作者の像や位置から決定して三次元ディスプレイ111に表示する。仮想操作面と、操作者102との相対関係を用い、操作者102の一部が操作面のビデオカメラ201から見て手前に来ると、操作が開始されたと判断し、各部の形状や動きから、その形状、動きが予め想定されたいずれの操作であるかを判定する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像認識装置および操作判定方法に関し、より詳細には、ビデオカメラ等により撮影した画像から測定対象の動作の判定を行う画像認識装置および操作判定方法に関する。
【背景技術】
【0002】
近年、コンピュータや電子機器と人間とのインタフェース、すなわちマンマシンインタフェースとして様々な機器、手法が提案されており、特にゲーム機や操作ガイド機器などではカメラで操作者全体、あるいは一部を撮影し、その画像に応じて操作者の意志を判断して動作する技術が提案されてきている。例えば、特許文献1には、CCDカメラで撮像した画像中の物体の形状、動きを認識するホストコンピュータと、ホストコンピュータによって認識した物体の形状、動きを表示するディスプレイとを備え、CCDカメラにユーザが向い、手振り等によって指示を与えると、与えた手振りがディスプレイの表示画面上に表示され、表示画面上に表示した仮想スイッチ等を手振りによって矢印カーソルのアイコンで選択でき、マウス等の入力装置を必要とせず、非常に簡便な機器の操作が可能となる技術が提案されている。
【0003】
最近ではさらに、手指の動きや形状を撮像した画像から、ある種のジェスチャとして認識して、操作入力をする入力システムも提案されている。例えば、ジェスチャによる画面操作でのプレゼンテーションや、タッチパネルを必要としない非接触キオスク端末に用いることができる入力装置において、大画面に向き合った操作者は、通常画面下部の位置に設置されたカメラに向けて種々の操作を行うと、その内容が大画面に映し出される。このように撮影された画像から操作者の形状、動きを、本技術分野で知られた方法により抽出し、例えば予め定められ、データベースに格納されたパターンと比較することにより、操作者の形状、動きの意味、すなわちいかなる操作を意図しての動作であるかを判定し機器の制御に用いる。
【0004】
一方、操作者の画像の読み取り技術としては、図13に示すように、三次元または立体対応のカメラで操作者を撮影し、立体画像を再現することも可能となっており、セキュリティチェックなどの用途に用いられている。立体画像を再現することにより、操作者の動きを立体的に把握することができ、例えば操作者の、特に手の動きが前後にも認識できるため、二次元画像を用いたものに比べジェスチャのバラエティが増大する。また、複数の操作者が画像として抽出されても、多人数であれば立体画像であるため前後関係がわかり、一番前の操作者の動きのみ抽出し、操作の入力に使用することもできる。
【0005】
さらに、近年では三次元(3D)あるいは立体表示が可能なディスプレイも様々なタイプが提案されており、従来の映画館といった限られた分野のみならず、イベント会場でのディスプレイから家庭用テレビまでその応用分野が広がってきている。3D表示技術も様々なものが提案されており、カラー表示はもちろん、色味を損なわない方式や、専用のメガネが不要なものも提案されている(例えば、特許文献2参照)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2004−078977号公報
【特許文献2】特開2005−266116号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、従来のジェスチャ操作はデファクトスタンダードといった何らかの標準的なジェスチャが確立されておらず、人差し指でのXY座標のポインティング操作以外はユーザがどのような動作で何ができるのかが直感的に認識できない。「クリック」、「ダブルクリック」、「ドラッグ」等・・・、クリック操作を何秒間かのウェイト時間の間座標に固定することで指示するものはあるが、設定されたウェイト時間が長すぎる等により快適な操作を阻害することも少なくない。したがって、クリックや決定(ダブルクリック等)などの操作をわかり易く、かつ快適にする現実的な手法がないという問題がある。
【0008】
また、従来のジェスチャ検出装置は、タッチパネルといった直接操作者が触れることができる入力装置とは異なり、操作者の明確な意思を汲み取りにくい。すなわち、そもそも操作者が何らかの動作を行っても、それが入力を意図したものなのか、単に癖で動いてしまったのか判定することが容易ではないという問題がある。この結果、例えば単純なジェスチャを不自然に目立つ形で行わなければ認識できず、またジェスチャについての事前の取り決めが必要だったり、複雑なジェスチャは使用できなかったりという問題がある。
【0009】
本発明は、このような問題に鑑みてなされたもので、操作者に何らかの入力につながる操作をしている状態にあることを認識させた上で装置に対し動作させることにより、的確な操作の判定を可能にする画像認識装置および操作判定方法を提供することを目的とする。この結果、操作に習熟していない特殊なジェスチャを覚えることなく、身体全体あるいは一部を動作させることにより、操作者の意志を的確に示す操作として判定することが可能になる。
【課題を解決するための手段】
【0010】
このような目的を達成するために、請求項1に記載の発明は、画像認識装置であって、操作者の像を読取って立体画像データを生成する三次元撮像手段と、三次元撮像手段により読取られた操作者の像及び位置に基づいた形状及び位置で仮想操作面を形成し、形成された仮想操作面を示す立体画像を表示する操作面立体表示手段と、形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、三次元撮像手段で読取って、操作者の一部と仮想操作面との位置関係に基づいて動きが操作であるか否かを判定する操作判定手段と、動きが操作であると判定されると、所定の信号を出力する信号出力手段とを備えたことを特徴とする。
【0011】
請求項2に記載の発明は、請求項1に記載の画像認識装置において、立体画像は、左右眼視差によることを特徴とする。
【0012】
請求項3に記載の発明は、請求項1または2に記載の画像認識装置において、仮想操作面の位置は、操作者と操作面立体表示手段との間のいずれかにあることを特徴とする。
【0013】
請求項4に記載の発明は、請求項1ないし3のいずれかに記載の画像認識装置において、操作者の一部が仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面をさらに備え、操作判定手段は、操作者の一部が位置決定面から仮想操作面へ移動する一連の動作において仮想操作面を横切る際、位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして操作者の操作を判定することを特徴とする。
【0014】
請求項5に記載の発明は、請求項1ないし4のいずれかに記載の画像認識装置において、仮想操作面の形状および位置は、読取られた操作者の像から腕および顔の位置を抽出し、抽出した腕および顔の位置に基づいて決定することを特徴とする。
【0015】
請求項6に記載の発明は、請求項1ないし5のいずれかに記載の画像認識装置において、三次元撮像手段が複数の操作候補者を読み取った場合、予め定められた特定の動きをする操作候補者を前記操作者と判定することを特徴とする。
【0016】
請求項7に記載の発明は、請求項6に記載の画像認識装置において、三次元撮像手段が読み取った複数の操作候補者の画像の示す、操作者と判定された操作候補者が現在の操作者と、他の操作候補者との位置関係を表示する操作者表示手段をさらに備えたことを特徴とする。
【0017】
請求項8に記載の発明は、請求項1ないし7のいずれかに記載の画像認識装置において、操作者の一部と仮想操作面との位置関係から距離を算出して距離に応じた位置に、操作者の一部の仮想操作面に対する位置関係を示す所定の標示を立体表示することを特徴とする。
【0018】
請求項9に記載の発明は、画像認識装置であって、操作者の像を読取って立体画像データを生成する三次元撮像手段と、三次元撮像手段により読取られた操作者の像、及び操作者の予め定められた特定の動きに基づいて定められる位置および形状で、仮想操作面を形成する操作面形成手段と、形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、三次元撮像手段で読取って、操作者の一部と仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定手段と、動きが操作であると判定されると、所定の信号を出力する信号出力手段とを備えたことを特徴とする。
【0019】
請求項10に記載の発明は、請求項9に記載の画像認識装置において、操作者の一部が仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面をさらに備え、操作判定手段は、操作者の一部が位置決定面から仮想操作面へ移動する一連の動作において仮想操作面を横切る際、位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして操作者の操作を判定することを特徴とする。
【0020】
請求項11に記載の発明は、請求項9または10に記載の画像認識装置において、三次元撮像手段が複数の操作候補者を読み取った場合、予め定められた特定の動きをする操作候補者を操作者と判定することを特徴とする。
【0021】
請求項12に記載の発明は、請求項11に記載の画像認識装置において、三次元撮像手段が読み取った複数の操作候補者の画像の示す、操作者と判定された操作候補者が現在の操作者と、他の操作候補者との位置関係を表示する操作者表示手段をさらに備えたことを特徴とする。
【0022】
請求項13に記載の発明は、操作判定方法であって、操作者の像を読取って立体画像データを生成する三次元撮像ステップと、三次元撮像ステップにおいて読取られた操作者の像及び位置に基づいた形状及び位置で仮想操作面を形成し、形成された仮想操作面を示す立体画像を表示する操作面立体表示ステップと、形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、三次元撮像手段で読取って、操作者の一部と仮想操作面との位置関係に基づいて動きが操作であるか否かを判定する操作判定ステップと、動きが操作であると判定されると、所定の信号を出力する信号出力ステップとを備えたことを特徴とする。
【0023】
請求項14に記載の発明は、請求項13に記載の操作判定方法において、操作判定ステップは、操作者の一部が仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から仮想操作面へ移動する一連の動作において仮想操作面を横切る際、位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして操作者の操作を判定することを特徴とする。
【0024】
請求項15に記載の発明は、操作判定方法であって、操作者の像を読取って立体画像データを生成する三次元撮像ステップと、三次元撮像ステップにおいて読取られた操作者の像、及び操作者の予め定められた特定の動きに基づいて定められる位置および形状で、仮想操作面を形成する操作面形成ステップと、形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、三次元撮像手段で読取って、操作者の一部と仮想操作面との位置関係に基づいて動きが操作であるか否かを判定する操作判定ステップと、動きが操作であると判定されると、所定の信号を出力する信号出力ステップとを備えたことを特徴とする。
【0025】
請求項16に記載の発明は、請求項15に記載の操作判定方法において、操作判定ステップは、操作者の一部が仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から仮想操作面へ移動する一連の動作において仮想操作面を横切る際、位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして操作者の操作を判定することを特徴とする。
【0026】
請求項17に記載の発明は、画像認識装置に、操作者の画像を認識して操作内容を判定する操作判定方法を実行させるプログラムであって、操作判定方法は、操作者の像を読取って立体画像データを生成する三次元撮像ステップと、三次元撮像ステップにおいて読取られた操作者の像及び位置に基づいた形状及び位置で仮想操作面を形成し、形成された仮想操作面を示す立体画像を表示する操作面立体表示ステップと、形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、三次元撮像手段で読取って、操作者の一部と仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定ステップと、動きが操作であると判定されると、所定の信号を出力する信号出力ステップとを備えたことを特徴とする。
【0027】
請求項18に記載の発明は、請求項17に記載のプログラムにおいて、操作判定ステップは、操作者の一部が仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から仮想操作面へ移動する一連の動作において仮想操作面を横切る際、位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして操作者の操作を判定することを特徴とする。
【0028】
請求項19に記載の発明は、画像認識装置に、操作者の画像を認識して操作内容を判定する操作判定方法を実行させるプログラムであって、操作判定方法は、操作者の像を読取って立体画像データを生成する三次元撮像ステップと、三次元撮像ステップにおいて読取られた操作者の像、及び操作者の予め定められた特定の動きに基づいて定められる位置および形状で、仮想操作面を形成する操作面形成ステップと、形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、三次元撮像手段で読取って、操作者の一部と仮想操作面との位置関係に基づいて動きが操作であるか否かを判定する操作判定ステップと動きが操作であると判定されると、所定の信号を出力する信号出力ステップとを備えたことを特徴とする。
【0029】
請求項20に記載の発明は、請求項19に記載のプログラムにおいて、操作判定ステップは、操作者の一部が仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から仮想操作面へ移動する一連の動作において仮想操作面を横切る際、位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして操作者の操作を判定することを特徴とする。
【図面の簡単な説明】
【0030】
【図1】本実施形態の操作入力システムの一例を示す図である。
【図2】本実施形態の操作入力システムのコンピュータとの関係を模式的に示すブロック図である。
【図3】本実施形態のコンピュータのCPU内で処理されるプログラムの機能モジュールの一例を示すブロック図である。
【図4】本実施形態の処理のフローチャートである。
【図5】本発明の一実施形態にかかる立体表示された仮想的な操作面を説明するための図である。
【図6】本発明の一実施形態にかかる仮想的な操作面の様子を示す図である。
【図7】本発明の一実施形態の使用例であるテレビ表示装置における仮想的な操作面の様子を示す図である。
【図8】本発明の一実施形態の使用例であるテレビ表示装置における仮想的な操作面の位置を示す図である。
【図9】本発明の一実施形態にかかる操作面形成基準により形成される仮想的な操作面の様子を示す図である。
【図10】従来の3Dカメラを用いた複数の操作者の画像取り込んだ場合の画像の一例を示す図である。
【図11】本発明の一実施形態にかかる操作入力支援の操作領域設定の一例を示す図である。
【図12】本発明の一実施形態にかかる画面またはカメラの位置による操作領域の調整の一例を示す図である。
【図13】本発明の一実施形態にかかる画面またはカメラの位置による操作領域の調整の別の例を示す図である。
【図14】本発明の一実施形態にかかる画面またはカメラの位置による操作領域の調整の別の例を示す図である。
【図15】本発明の一実施形態にかかる画面またはカメラの位置により操作領域を調整する方法を説明するための図である。
【図16】本発明の一実施形態にかかる画面またはカメラの位置による操作領域の調整の一例を示す図である。
【図17】従来の3Dカメラを用いた操作者の画像取り込み方法を示す図である。
【図18】本発明の一実施形態の立体表示アイコンを用いた操作入力を説明するための図である。
【図19】本発明の一実施形態にかかる操作入力支援の具体的な表示の一例を示す図である。
【図20】本発明の一実施形態にかかる仮想的な操作面および操作領域の様子を示す図である。
【図21】本発明の一実施形態にかかる操作者の動きと画面に表示されるアイコンとの関係を示す図である。
【図22】本発明の一実施形態にかかる操作入力画面の具体的な表示の一例を示す図である。
【図23】本発明の一実施形態にかかる操作入力画面で使用可能な種々のアイコンの例を示す図である。
【図24】本発明の一実施形態にかかる操作者の動きと画面に表示されるアイコンとの関係を示す図である。
【図25】本実施形態により画面に表示された図形を移動させる指示を入力する一例の表示画面を示す図である。
【図26】本発明の一実施形態にかかる操作者の動きと画面に表示されるメニューとの関係を示す図である。
【図27】本発明の別の一実施形態にかかる操作者の動きと画面に表示されるメニューとの関係を示す図である。
【図28】本発明のさらに別の一実施形態にかかる操作者の動きと画面に表示されるメニューとの関係を示す図である。
【図29】本発明の一実施形態にかかる仮想操作面および操作面形成基準の様子を示す図である。
【図30】本発明の一実施形態にかかるプロジェクタによる画面またはカメラの位置による操作領域の調整の一例を示す図である。
【図31】本発明の一実施形態にかかる操作者の動きと画面に表示されるメニューとの関係を示す図である。
【図32】本発明の一実施形態にかかる操作者のジェスチャにより操作面の位置を設定する領域を判定するため撮影した画像を示す図である。
【図33】本発明の一実施形態にかかる指定された操作面の位置の抽出を説明するための図である。
【図34】本発明の一実施形態にかかる指定された操作面の位置の抽出するためカメラから取得した距離データ画像を示す図である。
【図35】本発明の一実施形態にかかる操作者のジェスチャにより操作面の位置を設定する処理を示すフローチャートである。
【図36】本発明の一実施形態にかかる指定された操作面の位置の抽出する処理を示すフローチャートである。
【図37】本発明の一実施形態にかかる操作者の操作面設定ジェスチャのバリエーションを示す図である。
【図38】本発明の一実施形態にかかる操作者の操作面設定ジェスチャのバリエーションを示す図である。
【図39】本発明の一実施形態にかかるグリッド吸着処理に用いられる対象画面の例を示す図である。
【図40】本発明の一実施形態にかかるグリッド吸着処理に用いられるグリッドの設定例を示す図である。
【図41】本発明の一実施形態にかかるグリッド吸着処理を説明するための図である。
【図42】本実施形態の現在の操作者を特定するために三次元ディスプレイの下部にアイコンを表示する例を示す図である。
【図43】本実施形態の現在の操作者を特定するために三次元ディスプレイの下部にアイコンを表示する別の例を示す図である。
【図44】本実施形態の操作者を表示する種々のバリエーションの例を示す図である。
【発明を実施するための形態】
【0031】
以下、図面を参照しながら本発明の実施形態について詳細に説明する。
【0032】
(第1実施形態)
図1は、本実施形態の操作入力システムの一例を示す図である。本実施形態の立体表示三次元ディスプレイ111は、操作者102の前面に配置され、操作者102は、三次元ディスプレイ111との間の一定の位置に立体表示された仮想的な操作面に対し、指などの形状が操作判定の対象になることを意識して操作を行うことができる。三次元ディスプレイ111には、本システムが目的とする様々なアプリケーション用の種々の映像が表示されるが、これに加え後述するように操作入力を支援、すなわち例えば対象となる操作者102の部位などを画面の隅の方に表示して、操作者102に、現時点で操作として判定されうる動作を認識させることができる。
【0033】
ここで、本実施形態では操作者が視聴するモニタとして三次元ディスプレイを用いているが、本実施形態では本技術分野で知られたいずれの三次元ディスプレイも使用することもできるので、三次元ディスプレイ自体については以下簡単な説明にとどめる。三次元ディスプレイとは、視聴者に奥行き感や飛び出し感のある立体的な映像を提示することができるようなディスプレイデバイスのことであり、様々なタイプが存在するが、基本的には両眼に対して別々の画像を提示することにより、操作者が立体視できるようにさせるものである。一般的には、操作者があるオブジェクトを立体的に、自分と同じ空間に存在するかのように知覚するためには、人間の輻輳機能を利用し、左右眼に視差 (parallax)のある映像を提示する(両眼視差 binocular parallax とよばれる)と同時に、操作者の頭部運動にあわせて映像の見え方を変化させる(運動視差 motion parallax とよばれる)必要があるので、本実施形態の三次元カメラによる人体寸法計測による補正やトラッキング等の要素と相性が良い。例えば、操作者の三次元的な眼の位置を補足し、リアルタイムに補正をかけることで、さらに臨場感を向上させることが可能となる。
【0034】
三次元ディスプレイは、大別して、観察者に特殊な光学特性を持ったメガネをかけさせ、両眼に視差をつけた画像を提示するタイプと、メガネを利用しないタイプの二つに分けることができ、メガネを利用しないものは特に裸眼立体ディスプレイと呼ばれる。
【0035】
メガネを着用するタイプでは、低コストであっても色味の欠損や疲労感に問題があった「アナグリフ式」が古くから有名であるが、近年は、素材の色調をほとんど失わず、フルカラーで閲覧できる「偏光メガネ式」や「液晶シャッター」を用いたものも製品化され、その撮影技術や表現技術の向上と共に、飛び出し感・臨場感についても飛躍的に向上し、本格的実用化段階を迎えている。
【0036】
メガネを着用するタイプの三次元ディスプレイの方式としては、上述のようにアナグリフ式、偏光メガネ式および液晶シャッターが一般的である。
【0037】
アナグリフ式は、左右の映像をそれぞれ赤と青の光で重ねて映写し、それぞれ赤と青のカラーフィルタの付いたメガネで分離するというものである。技術的に最も簡単で低コストであるものの以前はモノクロ映像に限られていたが、現在ではカラー情報を残したまま映像製作が可能になった。とはいうものの、鑑賞の際には赤と青のカラーフィルタを通さざるを得ないため、どうしてもカラーバランスが崩れる。
【0038】
偏光メガネ式は、左右の映像に直交する直線偏光をかけて重ねて投影し、これを偏光フィルタにより分離して両眼に異なる画像を提供するものである。通常は、偏光状態を保存するためにシルバースクリーンなどが利用される。直線偏光の代わりに円偏光を用いたものもある。円偏光を用いたものは、観察者が顔を傾けても左右映像のクロストークは小さく維持されるが、円偏光の遮光特性には本質的に波長依存性があるため、濃い紫や黄色などの色が見えてしまう場合がある。
【0039】
液晶シャッターメガネは、左右の映像が交互に遮蔽されるように液晶シャッターが駆動するメガネを利用して、左右の眼に異なる画像を届けることにより立体視を可能にするものである。左右で視差のある映像を、ソースのフレームレートの倍のレートで交互に投影するため、色の再現性は良いが、メガネのコストが上がる他、メガネに信号を無線送信するための設備も必要になる。フレームレートは液晶シャッターの応答周波数に依存する。
【0040】
操作者102の動きはビデオカメラ201により撮影され、撮影された映像はコンピュータ110で処理され、操作者102の位置、身長および腕の長さなどにより、あるいは身長や肩幅等の身体寸法情報により最適な仮想操作面およびこれを含む操作領域の位置および大きさを設定し、仮想操作面から三次元ディスプレイ111側に出た部分のジェスチャがどのような操作を意味するかを判定する。すなわち、コンピュータ110は、ビデオカメラ201から得られたデータから、操作者102の立体画像を作成するとともに、作成された立体画像から操作者に最適な仮想操作面の位置を算出し、さらに後述するビデオカメラ201や三次元ディスプレイ111の位置や配置態様により仮想操作面の位置および大きさなどを調整し、仮想操作面を基準に操作者102の手指などがビデオカメラ201側に出ているか否かを決定し、その部分を操作の対象として操作内容を判定する。
【0041】
一方、三次元ディスプレイ111は、操作者102から見て仮想操作面が設定あるいは調整された位置に存在するように見えるように仮想操作面を表示する。これにより、操作者102は、あたかも仮想操作面がそこに存在するように立体映像として認識して、認識した立体映像に対し手や指を用いて操作を実行することができる。この点を図5及び6を参照して説明する。
【0042】
図5は、本実施形態にかかる立体表示された仮想的な操作面を説明するための図である。操作者102は、その右目504と左目503とにより三次元ディスプレイ111上に表示された画像502及び仮想操作面画像501とを見るが、仮想操作面画像501は立体表示させるため、例えば視差を含んだ2枚の画像からなっており、それぞれ右目504及び左目503で見ることにより図5に示すように三次元ディスプレイ111から操作者の前面にあるように立体表示されるような仮想操作面を形成することができる。この仮想操作面画像501が立体表示される位置を、上述のビデオカメラ201で撮影した操作者の像や位置から決定して三次元ディスプレイ111に輻輳角度θ1となるように調整して表示する。ここで、画像502は、通常二次元表示されるからディスプレイ111の位置で表示され、輻輳角度θ2となるよう調整しているが、使用状況にあわせて輻輳角度θ2を定めれば奥行きのある立体映像を提供することができる。なお、図5に示す仮想操作面画像501の位置は、仮想操作面を立体表示する位置であるが、操作者の操作感として実際に仮想操作面が形成される位置とは若干異なる位置に表示させる場合もあり、仮想操作面の形成位置と仮想操作面画像の立体表示位置とは必ずしも一致する必要はない。
【0043】
このように、仮想操作面画像501は、輻輳角度θ1となるよう調整して立体表示されるが、図18に示すようにさらにアイコン1801を輻輳角度θ3となるよう調整して立体表示させ、手先や指先をガイドするようにすることができる。具体的には、手先などの位置にアイコン1801が来るように立体表示させて、仮想操作面へのz方向の距離感やxy方向における位置関係の把握を容易にすることができる。この他、様々な形態、形状でアイコンを立体表示させることができる。例えば、アイコンを、指先と同じ位置に表示する以外に、多少、奥行き方向に距離を持たせて離して表示することもできる。このようにすることにより、仮想面とアイコンの位置関係が指先を見つめる方法よりも視認しやすい場合があり、仮想面の手前への浮き出し距離が不足する場合、これで補う事もできる。なぜなら、いずれの場合も眼前への浮きだしは、一般にピント調節がしにくいことから、多少、奥行きのある位置にアイコンを表示したほうが操作者にとっては操作しやすいからである。さらに、このような立体表示アイコンは第2実施形態において詳述するフォーカスアイコンのいずれかの形状、形態で表示させることができる。例えば、立体表示アイコンとして、指先付近にアイコンを表示させつつ、アイコンの大きさを変化させたり、色を変化させたりして仮想操作面への距離感を操作者に把握できるようにすることもできる。
【0044】
図6は、本実施形態にかかる仮想的な操作面の様子を示す図であり、操作用のアイコンが含まれる仮想操作面画像501が表示されるが、実際のシステムでは立体表示なので操作者からは三次元ディスプレイの手前側の手を伸ばせば触れることができる位置に見えるように表示される。このため、操作者はあたかもそこにタッチパネルあるいは操作パネルが存在するように仮想操作面に対して操作することができる。ここで、一度立体表示された仮想操作面画像501は、操作者102の腕や身体の動きにあわせて操作がより自然に行われるように位置や形状を変更することもできる。
【0045】
(複数操作候補者の処理)
また、図7及び8は、本実施形態の使用例であるテレビ表示装置における仮想的な操作面の様子を示す図であるが、図7及び8に示すように複数の視聴者に対し各々仮想操作面を生成して、個別に操作することもできるし、いずれかの視聴者の指示を優先的に受付けるようにするなど、様々な設定を行うことができる。しかし、通常は複数の視聴者の各々異なる操作による混乱を回避するため、何らかの方法で1人の視聴者を決定してその視聴者だけに操作入力を認めるようにする。ここで、図7または8に示すような複数の視聴者は、装置に対する操作の権限を有する操作者となる候補者であることから、操作候補者と呼び、以下複数の操作候補者がいる場合の操作者の決定、操作者決定後の処理について説明する。したがって、操作候補者には、図7または8に示すような視聴者を含め、本発明の対象である操作者の候補者、例えばゲーム機の複数のプレイヤや、プレゼンテーションの発表者などが含まれる。なお、本実施形態のシステムでは、操作者の対象となる者はシステムが対象として認識できるものに限られるので、操作候補者は、例えばビデオカメラ201の撮像範囲に存在するものに限られる。
【0046】
このような複数の視聴者のいずれを操作者にするかについての設定、および仮想操作面の設定などは、後述する第2実施形態の手法を用いて、すなわち第2実施形態の仮想操作面の設定を行う際に先ず操作候補者から誰が操作者になるかを決定してから決定した操作者が仮想操作面を設定するように行うことができるが、その他本技術分野で知られたいずれの方法で行うこともできる。例えば、図7の例ではテレビの視聴を開始した直後、何らかのジェスチャでいずれの操作者(図7及び8では操作者は視聴者702)とするかを決定したり、視聴途中で一定のジェスチャあるいはリモコンの操作で、設定モードにして設定することができる。操作者が決定すれば、その操作者702に合わせて仮想操作面画像501が立体表示される。なお、立体表示の特性により一定の立体表示システムでは、図7及び8に示すように操作者702以外の他の視聴者には仮想操作面は各々図に示すように立体表示されるが、図に示すように仮想操作面が形成される位置は実際には操作者702の目の前であるから、他の視聴者は実質的に操作が困難となる。このように、通常の立体表示システムでは、複数の者が操作する可能性がある場合、1人の操作者を先ず決定して、その操作者に適合する仮想操作面を形成して、立体表示する必要がある場合が少なくない。
【0047】
ここで、このような複数の操作候補者がおり現在誰が操作者か明確でない場合、操作者でない者が操作をしようとしたり、逆に操作者が不用意な動作をしたりして誤操作となるおそれもあるため、本実施形態では、画面上にいずれが操作者であるかを表示するようにして操作候補者全員に、現在誰が操作者であるのかを認識させることができる。図42は、現在の操作者を特定するために三次元ディスプレイ111の下部にアイコン4202ないし4204を表示する例を示す図である。図42を参照すると、テレビ111を視聴している3人が操作候補者となり、そのうちの真中の1人が操作者702とすると、操作画面例4201では画面の下部に3人の操作候補者を示す3つのボックス4202ないし4204が表示され、優先ユーザである操作者702を示すように真ん中のボックス4203が、着色される等により強調表示される。このような表示は、上述のようにビデオカメラ201により、操作候補者の位置を読取ることができるので、各操作候補者の位置や並び順を、読取った画像から抽出することにより可能となる。
【0048】
図43は、現在の操作者を特定するために三次元ディスプレイ111の下部にアイコン4302ないし4304を表示する別の例を示す図である。図43を参照すると、本例では上述のボックス4202ないし4204を表示する例と比較して、人物のアイコン4302ないし4304を用い、モニタ画面111の下部の領域4301に表示し、距離感もその大きさにより表現しているので、より直感的に誰が操作者であるか認識できるようになっている。このような操作者を示す表示のバリエーションとしては、種々のものが考えられるが、例えば図44に示すような方法を採用することもできる。すなわち、操作候補者が2名の場合はより簡易的に図44(b)に示すような表示にすることもできる。また、操作候補者がそれより多い場合は図44(c)に示すように操作候補者の人数分のボックス(「ユーザ1」ないし「ユーザ5」)を表示している。
【0049】
さらに、人型のアイコンを使用して3人以上を示すためには、図44(a)に示すようにアイコン表示領域内に操作候補者を表すアイコンを位置や並び順を考慮して表示することもできる。この場合、本実施形態では三次元ディスプレイを使用しているので、各アイコンを、対応する操作候補者の実際の位置に基づいた奥行きで表示させ、より直感的に現在の優先ユーザである操作者を認識させることができる。もちろん、図42ないし44を参照して説明した操作者の表示は、通常の二次元ディスプレイを使用するシステム、すなわち三次元アイコンなどを使用せずに、後述の第2実施形態で説明するような形で仮想操作面を設定する場合でも有効であるのは言うまでもない。
【0050】
図1では、画像を取得するためにビデオカメラ201を三次元ディスプレイ111の上部に取りつけ撮影しているが、図11ないし15のように必要な画像が得られればこれに限られることなく、赤外線カメラ等、本技術分野で知られたいずれの撮像手段を用いることもでき、設置場所もモニタの付近の何処を選択することもできる。ここで、本実施形態ではビデオカメラ201として三次元(あるいは3D)カメラを用いることにより、操作者を含め立体画像が作成できるようにする。
【0051】
さらに、本実施形態のシステムには図示しないスピーカ等の音声出力装置を取り付けられており、表示内容や操作に関する情報を音声で操作者に伝えることもできる。このような機能を設けることにより、ディスプレイに操作内容を画像で表示するだけではなく、指示事項や結果について、同時に音声で流すことで仮想操作面が判るため、視覚障害のある操作者でも操作することが可能になる。
【0052】
図9および10は、仮想操作面の役割を具体的に説明するための図である。本実施形態の仮想操作面701は、操作者102の身長や腕の長さ、あるいは身長や肩幅等の身体寸法情報に基づいて設定され、ユーザ102は、立体画像として操作面701が仮想的に存在すると捉え、種々の操作をしようとする場合は操作面701を基準に手601を前に突き出してジェスチャを示したりすることができる。また、仮想操作面を含む操作領域でのユーザが任意のポーズを取った後に、仮想操作面の前方へ押し出す(決定)動作でアクションを決定したり、操作を決定してから押し出すという判断の基準としたりすることができるため、ユーザが認知しやすく、操作性は従来のタッチパネル操作に近いものとなる。一方、操作バリエーションは、従来のタッチパネルより圧倒的に増える(両手操作や、振舞、複数指等)。
【0053】
本実施形態で、図9および10に示すような仮想操作面701は、カメラ201が操作者102の像を捉えるとリアルタイムで形成されるようになっているが、操作者が操作を開始するまでは、操作者の立位置が一定しないため、仮想操作面が定まらず操作判定も容易ではない。そこで、本実施形態では、操作者の身体が三次元カメラの撮像範囲内で一定時間静止したタイミングで仮想操作面の設定処理を開始するようにすることもできる。
【0054】
このように本実施形態の仮想操作面の形成はリアルタイムで行うことができるが、この場合でも、何らかの方法で操作者の立位置を、そのシステムにとって最適な一定の範囲に制限することによって、操作判定をより正確にすることができる。例えば、図示しないが床面に立位置を示す足形を描いておくとか、モニタやシステムの配置により操作者に一定の制限範囲の存在を認識させたり、衝立を立てたりして一定範囲内で操作を行うようにさせることもできる。操作者が自然に認識できる仮想操作面の位置や大きさなどは、操作者とディスプレイとの位置関係に大きく影響され、システム全体でディスプレイ、カメラ、操作者の位置などは予め想定しておいた方が良い場合もある。
【0055】
図2は、本実施形態の画像認識装置のコンピュータ110の構造を模式的に示すブロック図である。コンピュータ110には、モニタ701に取り付けられ、操作者102などを撮影するビデオカメラ201が接続され、撮影した画像がコンピュータ110に取り込まれる。撮影により得られた画像は、CPU210において本実施形態の特徴である画像の抽出、位置の算出などが行われ、算出した位置に基づいて操作面からビデオカメラ側に身体の一部が出たかどうかを決定する。コンピュータ110は、一般にCPU210を備え、ROM211等に記憶されたプログラムをRAM212上で実行して、画像認識装置から入力した画像に基づいた処理結果を三次元ディスプレイ111等に出力する。本実施形態では、三次元ディスプレイ111は、上述の仮想操作面のほか操作者が体験しようとする様々なアプリケーションにより提供される種々の映像を出力することができ、また後述するように操作入力の支援となるような情報も表示する。
【0056】
図3は、本実施形態のコンピュータ110のCPU210内で処理されるプログラムの機能モジュールの一例を示すブロック図である。図3に示すように、本システムにおける処理は、画像読取部301、画像抽出部302、画像位置算出部303、操作判定部304および立体画像表示部305により実行される。なお、本実施形態では、ビデオカメラ201からの画像を受取ってからデータの出力を行うまでの処理をこの5つのモジュールにより実行するが、これに限られることなく、その他のモジュールを用い、あるいはより少ないモジュールで処理することもできる。
【0057】
(本実施形態の処理)
本実施形態では、図10に示すように、ビデオカメラ201で撮影された操作者102の像に基づいて仮想操作面を立体画像として形成し、同じく撮影した操作者102の一部である手や指の位置を定めるとともに、仮想的な操作面701と操作者102の手指601との位置関係を算出する処理を行う。本実施形態では、このような処理を行う前提として、本技術分野で知られた初期設定、例えば本実施形態の画像認識装置が新たに設置された場合を想定すると、事前準備として利用するビデオカメラ201の利用レンズの歪み、三次元ディスプレイ111とレンズとの距離等の情報を装置に入力しておく必要がある。さらに閾値設定等を予め調整しておく。システムの初期設定が終了すると、本実施形態の処理を行うこととなるが、この処理については図4を参照して以下に説明する。
【0058】
図4は、本実施形態の処理のフローチャートである。まず、画像読取部301においてビデオカメラ201で撮影されたデータを読取り(S401)、そのデータから操作者の像を、画像抽出部302により抽出する(S402)。
【0059】
このような準備の結果、抽出した操作者102の画像に基づいて仮想操作面および操作領域を決定する(S403)。ここで、操作面の形状は図11などを参照すると床面から垂直に立てた長方形となっているが、これに限られず、操作者の操作態様に応じて様々な形状(大きさ、ディスプレイに対する角度を含む)の操作面を形成することができる。具体的には、後述する第2実施形態の仮想操作面の設定時のように、操作者の体形や位置を三次元カメラで立体映像として撮影し、操作者の各部位の位置、大きさなどから最適な仮想操作面の形状、位置を決定する。例えば、仮想操作面の形成位置は、操作者の眼の位置から、腕の長さを基準に操作時のストロークが最適となる位置とすることができるが、その他の部位の長さ、大きさを基準に距離を決めても良いし、起点として眼ではなく肩からとすることもできる。また、眼の位置の抽出が困難であれば、頭部の位置を起点とすることもできる。さらに、本実施形態では立体画像を見るため、操作者は通常偏光メガネやシャッターメガネを着用するので、メガネの前面等に三次元カメラの映像から位置を抽出しやすいマーカを付すことにより、仮想操作面の形成位置決定を容易にすることもできる。
【0060】
ここで、操作領域とは本実施形態の特徴である仮想操作面を含み、操作者の操作の主体となる手や指などが主に動かされる領域であり、後述する仮想操作面に至るまでの支援で説明するように、操作者の胴体から仮想操作面を越えた一定の領域が本願発明の操作認識のために用いられる。例えば、図11に示すように大人の操作者810については、身長(視線の位置)や腕の長さを考慮して操作領域811のように形成することができるし、子供の操作者820の場合、身長もより低くなり、腕も短くなるので、これにあわせて操作領域821を設定することができる。このような操作領域の中に仮想操作面を設定すれば、操作者が自然に手や指を動かすことにより、手や指の動きで操作者が意図している操作を判定することができるようになる。
【0061】
より具体的には、例えば、奥行きは、操作者が前方に手を伸ばした指先まで、横幅は、操作者が真横に手を伸ばした場合の左右手首の長さまで、高さは、操作者の頭の位置から腰の位置までの範囲とすることができる。また、本実施形態のシステムの対象者を小学校低学年から成人とした場合、身長の幅はおおよそ100cmないし195cm程度までになり、その身長差として操作領域または仮想操作面の上下位置の補正幅は、約100cm必要となる。なお、仮想操作面、操作領域は、その都度実行することもできるし、一定の条件のもと実行するようにすることもでき、あるいはこれらの設定タイミングを予めあるいはその都度選択することもできる。
【0062】
このように、仮想操作面の形状及び位置が決定すると、本技術分野で知られたいずれかの方法で、操作者から見て決定された位置に決定された形状(大きさ、ディスプレイに対する角度を含む)で仮想操作面を形成する立体画像が立体画像表示部305により生成され、三次元ディスプレイ111に表示される(S410)。したがって、操作者は立体表示された仮想操作面に的確に指や手を触れさせることができるようになるため、仮想操作面に表示されたアイコンをタッチするなどの操作を行うことができる。ここで、本実施形態では、仮想操作面を立体表示させるまでの一連の流れを説明したが、基本的に操作者が全体として移動したり等して、当初設定した仮想操作面では操作しづらくなった場合さらに最適な形状、位置を算出して立体表示しなおすが、仮想操作面として表示する内容によっても同様の処理を繰り返し実行する。例えば、アイコンを仮想操作面として表示する場合は、操作者のアイコンの指定処理をより容易にするため、指または手の動きに合わせて最適な位置、形状で仮想操作面を表示しなおすことができる。
【0063】
操作判定部304は、操作入力システムの立体表示された仮想操作面と、操作者102との相対関係を用い(S404)、操作者102の一部が操作面のビデオカメラ201から見て手前に来ると、操作が開始されたと判断し(S405)、各部の形状(手を開いている、あるいは指を2本立てているなど)や動きから、その形状、動きが予め想定されたいずれの操作であるかを判定する(S406)。ここで、どのような形状、動きがどのような操作に対応するかは、システム独自に取り決めることもできるし、本技術分野で知られたいずれかの手法を取り入れて決定することもでき、あるいはまた、単にその位置が操作者により触れられた、例えばアイコンが選択され、若しくはボタンが押されたと判定することができる。判定した結果は、そのような操作の入力があったものとしてコンピュータ110で実行され(S407)、もともと仮想操作面から手前側に手が出ていない場合、操作は行われていないと判定して終了する(S408)。操作内容の判定はここで説明した手法に限られることなく本実施形態で知られたいずれの方法も用いることができる。また、具体的な判定方法も省略したが、一般には予め定めたジェスチャなどの操作者の身体の形状、動きと、それが意味する操作内容とをデータベース等に格納しておいて、画像抽出後、このデータベースにアクセスして、操作内容を判定する。この際にももちろん、画像認識技術や人工知能などを本技術分野で知られた手法により利用し、判定精度を向上させることもできる。
【0064】
ここで、操作者が子供の場合と大人の場合とで、仮想操作面をどの位置にどの程度の大きさで形成するかが変わることが理解されるが、さらに操作者の身長などの体形の差に加え、カメラ201の位置や三次元ディスプレイ111の位置や取付角度によっても、仮想操作面を調整する必要がある。通常、三次元カメラは、CCDやレンズ面に対して平行か、同心円状に対象物までの距離計測を行うことができる。モニタが操作者の目線の高さに設置され、カメラが近接した位置にあり、それぞれが床面に垂直設置の場合、操作者も立位であれば適正操作領域を生成する上で、相互の位置関係等、特に調整や補正の必要は無いと言える。しかし、天井つり下げ型モニタの場合や超大型モニタあるいはプロジェクタ等を利用する場合、カメラ設置位置やモニタおよび操作者との位置関係は、様々な状況が想定される。
【0065】
一般に、仮想操作面を立体表示したとしても、操作者は操作対象画面を見ながら入力操作を行うので、常に操作者の目線と操作対象画面とを結ぶ直線に垂直に仮想操作面を配置し、それに沿った操作領域を生成しなければ、操作者のZ方向への押し込みストロークの角度が不一致を起こし、操作者が狙ったポイントへの押し込み操作をしても、押し込みに伴い、いずれかの角度に沿って流れてしまい正常な操作ができなくなる可能性がある。したがって、仮想操作面を形成する場合は、モニタ、カメラおよび操作者の位置、配置態様に応じて形成する角度、大きさ、あるいは場合により位置を調整するのが好ましい。
【0066】
図12を参照すると、図11に示したように操作者820に合わせて操作領域821および仮想操作面601が定められるが、図12に示す例のようにカメラ201が三次元ディスプレイ111の上部に配置された場合、仮想操作面601は、操作者820が腕を伸ばす方向910に垂直でなければ操作者820は仮想操作面に対する良好な操作感が得られないから、カメラ201の視野方向に垂直な平面にしないほうが好ましい。
【0067】
また、図13を参照すると、三次元ディスプレイ111自体が上方に設置され、しかも角度をもって取り付けられているため、仮想操作面701は、操作者820が三次元ディスプレイ111を見上げて操作できるように、上方への傾きを持つ方向1010に垂直な面になる。この場合も、図12に示す例と同様にカメラ201の視野1011は視線方向1010と一定の角度をもって傾いているため、カメラ201で読取った情報を傾いた仮想操作面701に合わせるよう補正することが望ましい。さらに、図14を参照すると、カメラ201が三次元ディスプレイ111から離れ床の近くに置かれていて、操作者820の視線1110とカメラ201の視野とは、より大きな角度が付くため、その分の補正することが望ましい。
【0068】
図15は、仮想操作面701および操作領域821を定める一例を説明するための図である。本実施形態では、仮想操作面の形状及び位置を決定するために、三次元ディスプレイ111およびカメラ201の位置、設置方法(どの程度の角度で設置されているかなど)、操作者820の立ち位置、身長などの情報を用いる。すなわち、一例としては先ず、操作者820の三次元ディスプレイ111に対する目の高さ(身長)、立ち位置から操作者の視線に垂直な仮想操作面701を算出する。次に操作者820の頭と胴体とを結ぶ線A−Bと、カメラ201の視野の中心線1210の角度を測定し、仮想操作面および操作領域の傾きを補正する。腕のストロークは、操作者の像から抽出しても良いし、得られた身長の情報から、別途身長ごとの平均的な腕の長さの情報から定めてもよい。
【0069】
本実施形態の仮想操作面および操作領域は、以上の通りカメラ、モニタおよび操作者の位置、配置態様などに基づいて、自然な操作とより容易な操作判定が可能なように定められ、実際の操作者の動きを検出して、いずれの操作が行われているかが判定される。ただし、ここで説明をしない具体的な処理、例えば三次元カメラの像からどのように位置や形状を特定するか、操作者の一部が仮想操作面を通ったか否かの判定処理など、本実施形態の実装に際して必要な処理は、本技術分野で知られたいずれの方法を用いても達成することができる。
【0070】
(操作入力の支援)
以上説明したように、三次元ビデオカメラにより仮想操作面を立体表示することにより、操作者は空間上にあたかもタッチパネルのような操作面が存在するように認識することができ、この操作面に対し、種々の操作を行うことにより、身体の全部または一部を用いた操作入力が可能となるが、さらに仮想的な操作面に対する操作者の映像を三次元ディスプレイ111に表示する等、操作入力を支援することにより、より容易に本実施形態のシステムを活用することができる。
【0071】
図19は、このような操作入力の支援となるガイダンスをディスプレイ111に表示している一例を示す図である。例えば、ディスプレイ111の中心部に表示されている画像のどこかをポインタで指し示す場合、操作者はそれ自体仮想的操作面となっている画像に対し、手指を突き出すことにより所望の場所を指し示すことができるが、そのように指し示す様子を図19に示すポインタ901のように表示することにより、操作者は現在行われている操作を認識し確認しながら、次の操作を実行することができる。この例で言うと、たとえば、ポインタ901は、操作面から手指を突き出すと画面に表示され、引っ込めると消える、あるいは濃淡をつけて表示するようになっており、手の動きとディスプレイ111に表示されるポインタの様子から、操作者は自然な形で、本実施形態の入力法を実行することができるのである。同様に操作者自身の様子を図9および10に示したような形で表した操作画面902を、三次元ディスプレイ111の右上隅に小さく表示させて現在どのような動きをして、システムではどのような操作と判定されているかを表示することができ、また、手の動きをグラフ化した折線グラフ903を示して、手の前後の動きがどうなっているかを操作者自身に意識させる等により、より的確な操作が期待できる。また、図示しないが、システムで使用することができるジェスチャをガイダンスに表示して、それに倣って操作入力をするよう操作者に促すようにして支援することもできる。
【0072】
(仮想操作面の奥側の操作 − 仮想操作階層)
本実施形態では、操作者が空間上に仮想的に立体表示された仮想操作面を基準に、そこにあたかもタッチパネルのような入力機器が存在するかのように操作することにより、その操作内容を確実に判定しようとするものであるが、このようにして判定された操作の内容を仮想操作面から奥側方向である、操作者から離れる方向への仮想操作面と操作者の手等の身体の一部あるいは身につけた物体の位置関係で決定する。例えば、操作者から離れる方向であるz軸方向に2層あるいは3層に操作領域を仮想操作階層として設定し、操作者の手がどの層に入っているかにより操作の種別を決定して、その層内での手の動きにより操作内容を決定する。この際、操作者が視認している表示画面上に手の位置や操作の種別などを表示させれば、より操作者は操作の認識を容易にすることができる。なお、操作者の一部と各階層を分割する面とのz方向の距離は、上述した形成された仮想操作面と操作者の一部との距離を算出する手法によって取得することができる。
【0073】
より具体的に説明すると、図27に示すトリガ面701は、本実施形態の仮想操作面であり、上述の実施形態のいずれかを用いて指601がトリガ面701からz軸方向に入ると、操作が行われたと判定される。さらに、トリガ面701から先の操作領域を階層AないしCの3階層に面4501および4502で分割し、各々異なる操作の種別を割当てる。図27の例では、階層Aにはオブジェクトの回転の操作を、階層Bには拡大縮小の操作を、階層Cにはオブジェクトの移動の操作をそれぞれ割当てている。各階層において指601を動かすことにより決められた操作が実行される。例えば、階層Aにおいては、トリガ面701を指601が通過した際に指601を示すアイコン、例えば回転アイコン4503が示す位置を中心に指定されたオブジェクトが指601の動きに合わせて回転する。階層Bにおいては、例えば三次元ディスプレイ111に拡大縮小アイコン4504を表示し、指601をz方向に動かすとオブジェクトが拡大され、反対方向に動かすとオブジェクトが縮小するようにすることができる。
【0074】
同様に、階層Cでは三次元ディスプレイ111に表示された指定したオブジェクト上の指601の位置に移動アイコン4505を表示し、指601の動きに合わせて移動するようにすることができる。ここで、階層間を区切る面4501および4502は各階層が同じ厚さになるように配置することもでき、階層に割当てられた操作種別に応じて異なる厚さになるよう配置することもできる。例えば図27の例では、階層Bには拡大縮小の操作が割当てられているが、拡大縮小を前後の動きで表現しなければならないため、階層Aや階層Cと比較して通常はz方向の動きが大きくなることから、階層Bをより厚くすることによって操作を容易にすることもできる。
【0075】
以上のような階層は、標準的なストロークによりその間隔を決定することにより、操作者の自然な感触で使用することができるが、本実施形態では各層を分ける面4501および4502などを仮想操作面701と同様に適当に設定された位置に立体表示させることにより操作者に階層の境界を確実に認識させることもできる。あるいはまた、階層A、B、Cのいずれか、あるいは全てを階層の深さでグラデーションをつけて立体表示することにより、操作者に階層の存在とその深さを認識させることもできるほか、本技術分野で知られたいずれかの表示方法によってより効果的に表現することもできる。
【0076】
図28は、本実施形態の別のアイコンの例を示す図である。図28に示す例では、階層Aには三次元ディスプレイ111上での操作位置を特定する操作を、階層Bには特定された位置におけるオブジェクトを「掴む」操作を、階層Cには掴んだオブジェクトを投げるあるいは移動させる操作をそれぞれ割当てている。なお、以上のアイコンは二次元表示で用いることもでき、立体表示用にアイコンを調整して立体表示することもできる。
【0077】
以上のように、仮想操作面により操作と判定された後の操作内容の判定の際に、指や手の動きだけでなく、そのz方向の位置、すなわち仮想操作階層に応じて操作の種別を特定するようにすることができるため、指や手の動きのみでは様々なジェスチャーパターンを数多く準備し、かつ操作者がそれらを覚える必要があるのに比較して、単純な動作のみで複雑な操作を使い分けできることとなる。
【0078】
なお、上述の、特に図27に示す例では、手や指などの一連の動きを各階層間で連続的に行える操作を配置するようになっているが、連続的に操作できないような配置の場合(図28に示す例)は、次のような2つの点が問題となる。すなわち、(1)目的とする仮想操作階層に到達する前に他の階層を通過し、操作者が欲しない指示を与えてしまう、(2)目的の操作を終え、手を操作領域から抜く場合、他の仮想操作階層を通過し、操作者が欲しない指示を与えてしまう、という点である。上記の問題を回避するためには、例えば次の方法などが考えられる。すなわち、操作する方と反対の手を操作領域内に差し込むようなマルチセンシングの状態(例えば、右手で操作している場合、左手を操作領域内に入れた状態)を、操作なし(あるいはその逆に、操作あり)の状態と設定し、操作する方と反対の手の出し入れによって、各階層の操作を行うか否かを判断するようにする(この例では両手操作によるが、XY平面上にすり抜け用エリアを設ける等、様々な方法が考えられる)。
【0079】
以上本実施形態を用いると、操作者は予めジェスチャを覚えたり、取り決めておいたりすることなく、その動きによりシステムの操作を行うことができるほか、操作者の姿勢や各部、例えば手の動きが分かるので身体全体を使用したゲームに用いて、いわゆる複合現実感(MR)を実現することもできる。
【0080】
(第2実施形態)
本実施形態は、上述の第1実施形態で立体表示した仮想操作面を予め操作者に指定させることにより設定する点で異なるが、第1実施形態のシステム構成および仮想操作面に対して操作者が行った動作をどのように操作として認識するか等の処理は同様である。すなわち、本実施形態では、後述するように操作者が操作を行う場合は先ず、仮想操作面をどこに設定するか一定の操作で指示させ、その指示に従って仮想操作面を形成する。したがって、第1実施形態のシステムのように三次元ディスプレイにより仮想操作面を立体表示させなくても操作者はどこにどのような操作面が存在しているかを予め認識することができるので、仮想操作面を必ずしも立体表示する必要はなく、通常の二次元ディスプレイを使用することもできる。ただし、仮想操作面の認識をより確実にするため、三次元ディスプレイを用いて立体表示させることもできる。以上の通り、本実施形態は、仮想操作面を操作者の指示に応じて形成した後の処理は基本的に第1実施形態と同様なので、以下おもに仮想操作面の設定処理について説明する。
【0081】
(仮想操作面の設定)
図32は、本実施形態にかかる操作者のジェスチャにより操作面の位置を設定する領域を判定するため撮影した画像を示す図である。図32に示す例のように、三次元カメラ201で撮影された操作者の画像3210の手3202及び3203により操作面の形状(大きさ、ディスプレイに対する角度を含む)が決定され、z方向の距離データ画像3211のディスプレイから手3202及び3203までの距離、ディスプレイから胴3204までの距離により仮想操作面3201の位置を決定する。具体的には、図33に示すように三次元カメラ201により撮影された操作者の画像データから奥行きを把握することができる。図33は、本実施形態にかかる指定された操作面の位置の抽出を説明するための図であり、操作者の像を奥行き方向(z方向)で示したものである。図33を参照すると、操作者が手3202で示した位置に操作面3201を形成すれば良いことが理解される。
【0082】
本実施形態では、このような仮想操作面の設定処理は、システムの電源投入後や特定の操作、例えばリモコンで指示するなどにより開始されるが、これに限られず本技術分野で知られたいずれの方法、タイミングで開始することができる。図35は、本実施形態にかかる操作者のジェスチャにより操作面の位置を設定する処理を示すフローチャートである。ここで、図7に示すように上述の第1実施形態で説明した複数の操作候補者がある場合、仮想操作面の設定を行う者を操作者と定めることができ、このとき設定された仮想操作面は決定された操作者用のものとなる。その結果、本実施形態で説明する仮想操作面が設定されると、図42ないし44に示すような操作者のアイコンやボックスを画面に表示することにより、決定した操作者も含む操作候補者は、いずれが操作者であるかを認識して、誤操作を防止することができる。
【0083】
まず、電源投入等によりシステムプログラムが開始され(S3501)、システムで使用するデバイスの各種設定などのデバイス管理が実行される(S3502)。ここで仮想操作面のフレーム取得処理が開始され(S3503)、操作者からの指示入力待ちとなって(S3504)、指示が入力されると画像データを取得し(S3505)、後述する操作面抽出処理を実行した(S3506)後、デバイス後処理を実行して仮想操作面の設定を終了する(S3509)。
【0084】
次に図34及び36を参照して操作面抽出処理を説明する。図34は、本実施形態にかかる指定された操作面の位置の抽出するためカメラから取得した距離データ画像を示す図であり、図36は、本実施形態にかかる指定された操作面の位置の抽出する処理を示すフローチャートである。まず、データ、すなわち操作者の立体画像データの入力がなされると(S3601)、手の形状および頭部を認識して(S3602、S3603)、仮想操作面を形成するか否かを判定する(S3604)。具体的には、例えば手が一定の予め定めたジェスチャを一定時間維持していたときは、仮想操作面の設定処理であると判断して、操作者が手により指示した位置及び大きさを含む形状の仮想操作面を、図34に示すような距離データ画像から抽出して仮想操作面を形成し(S3605)、操作者の身体の測定値、例えば腕の長さ、胴や頭部の位置に基づいて操作領域を設定し(S3606)データを出力して終了する(S3609)。ここで、本実施形態では手などの動きを一定時間静止することにより、仮想操作面の設定指示と判断するようにしているが、これに限らず種々のジェスチャ、リモコン操作等で指示するなど本技術分野で知られたいずれの手法により指示を判断させることができる。なお、本実施形態では基本的に手により形づくられた形状、位置に仮想操作面を形成するが、操作者の身体的特徴やディスプレイの位置、使用状況等に合わせて調整することもできる。
【0085】
頭部の認識や手のジェスチャから仮想操作面の設定処理ではないと判断すると、既に仮想操作面が設定された状態か否かを判定し(S3607)、仮想操作面が設定されている場合は通常の操作と判断して操作領域内の手の位置を取得する(S3608)。以上により、操作者の指示に基づく仮想操作面の設定処理を行うが、本実施形態では、操作者が自ら仮想操作面を指示するので、仮想操作面の位置を別途何らかの方法で操作者に示さなくても認識させることができる。なお、仮想操作面の形状及び位置を指示するジェスチャは、本技術分野の通常の知識で様々なものが考えうるため、それらのいずれも本実施形態で用いることができる。そのような、バリエーションの例を図37及び38に示す。
【0086】
(仮想操作面の手前側の操作支援)
本実施形態では、操作者が空間上に仮想的に立体表示された仮想操作面を基準に、そこにあたかもタッチパネルのような入力機器が存在するかのように操作することにより、その操作内容を確実に判定しようとするものであるが、特に上述の第1実施形態のように仮想操作面を立体表示しない場合、操作者の一部である手または指などが仮想操作面に至るまで、つまり操作者が何らかの操作を実行しようと手または指を動かし始めてから、仮想操作面を押下するまでの間も操作支援することにより、さらに操作入力を容易に、より高精度に行うようにすることができる。
【0087】
基本的には、このような操作支援の原理は仮想操作面に対する操作者の部位、例えば手あるいは指の位置の動きにあわせて、三次元ディスプレイ111上に操作者がどのような操作をしようとしているかをビジュアルに表示させることにより、操作者を誘導して的確な操作入力を可能にするというものである。
【0088】
この点について、図20および21を参照して説明すると、本実施形態では予め操作者が一定の立ち位置で操作しうる場合は予め設定された、その立ち位置で仮想操作面への操作が適した位置に、あるいは操作者の立ち位置に合わせて適宜適当な位置に仮想操作面701を立体表示する。同様に図20に示すように、操作者820の適当な操作領域821を設定しておく。上述のとおり三次元ディスプレイ111には現在どのような操作が行われようとしているかを様々な形態で示すことにより、操作者が自己の操作を認識できるようにする。
【0089】
このような形態の1つについて図21を参照して説明すると、操作者はシステムに対し何らかの操作を行おうとする場合、本例では三次元ディスプレイ111に対し、腕2401を前後に動かすことにより、手あるいは指601の位置が変化するため、その様子を三次元ディスプレイ111に表示すると、突き出した指601が一定の位置まで来ると、そのとき三次元ディスプレイ111の画面上で指示された項目が実行される等、システムとして一定の処理が行われる。図21の例では、仮想操作面701に対する指601の位置(深さ)によってアイコンの大きさが変化するようになっており、仮想操作面に近づくほどアイコンが小さくなって操作者には自己の操作により一定の場所にフォーカスされていることが認識できるようになっている。そして、最もアイコンが小さくなった位置で、操作が確定し、それに応じた処理が実行される。
【0090】
以上の操作の結果、アイコンが三次元ディスプレイ111の画面2501上でどのように変化するかを示したのが図22である。図22を参照すると、三次元ディスプレイ111の画面2501には例えばテレビ番組表が立体表示されており、ある番組に関する操作を行おうとしている。このような状態で、例えば操作者が「設定変更」のメニューボタンを選択しようとする場合、操作者は上述のように三次元ディスプレイ111に向かって指601を突き出して選択しようとする。本実施形態では、指601が仮想操作面であるテレビ番組表に対し一定の距離まで近づくと、画面2501にアイコン2503が表示される。このアイコンは指の位置がまだ遠いため図21に示すアイコンのうち右の方にある比較的大きなものが表示される。操作者がさらに腕2401を伸ばすと、このアイコンは目標である選択項目「設定変更」に近づきつつ、小さくなり一定の大きさのアイコン2502のときに特別なアイコンとなり、指が仮想操作面を横切ると、指し示す位置の項目が選択されたと判定される。ここで、テレビ番組表は操作者にとって仮想操作面の位置に立体表示されるが、アイコンは必ずしも同じ位置に表示される必要はなく二次元表示とすることもでき、3D表示により適切な位置に配置することができる。
【0091】
このように、図22の例では、指601の位置に応じて画面2501に表示されるアイコンの大きさを変化させることにより、操作者は自己の動作がシステムでどのように認識されているかを把握することができ、仮想操作面の位置をより認識し易くして、メニューの選択などの操作を行うことができる。ここで、指601、腕2401を含む操作者全体及び各部位の位置や大きさは、操作者の全体像と同様三次元カメラを用いることにより抽出することができる。これにより画面内の物体は奥行きも含めて把握することができるから、これらの情報に基づき仮想操作面との距離や位置関係を算出することができる。ただし、本実施形態で使用する三次元カメラや位置の抽出、距離の算出などは本技術分野で知られたいずれの方法も用いることができるので、ここではその説明を省略する。
【0092】
ここで画面に表示されるアイコンは円形で操作者の動作に合わせて大きさが変化するが、これに限られず図23に示すように様々な形態のアイコンを用い、様々な変化をさせることができる。すなわち、図23を参照すると、(1)は指の形態のアイコンであり、上述の図22の例と同様に仮想操作面に近づくほどに小さくするようになっている。(2)は、円形で次第に小さくなるようになっているが、入力あるいは選択が確定すると特別な形状に変化して確定したことが示される。このアイコンや他のアイコンの場合も形状(大きさ、ディスプレイに対する角度を含む)の変化に代えて、あるいは合わせてアイコンの色を変化させることもできる。例えば、青、緑、黄、赤等、寒色系から暖色系に変化させることにより、直感的に操作がフォーカスされ確定することを操作者は認識することができる。(3)は、Xのような形状で、遠くにある場合は大きいだけでなくぼかしが入っており、近づくにしたがって、アイコンの大きさが小さくなるとともに、ぼかしが消えシャープな形状になる。(4)はアイコン全体の大きさは変化することなく、中に描かれた図形が形状変化を起こしてフォーカスされる様子を認識するようになっている。この場合、図形の色も変化させることができる。図23に示す(5)も、形状を変化させるものである。図23において、指の動きに応じてアイコンの形状や色などが変化していき、仮想操作面を越えるとその瞬間に、欄2601に示すように種々の形状や色に変化させたり、点滅させたりして操作として判定されたことを操作者に認識させるようにすることもできる。また、図示しないがこの他のアイコンの変化としては最初透明で、指が仮想操作面に近づくほどに不透明になるような変化も効果的である。さらに図示しないが、三次元ディスプレイの立体表示機能を利用してフォーカスしていくとアイコンが画面から飛び出すように見せるような画像を作成し、操作者にフォーカスの状況を知らせることもできる。
【0093】
ここで、アイコンのバリエーションのうち特に形状をあまり変化させず色や濃さを変化させる場合は、図24に示すようにアイコンはあまり移動せず指601を近づけていくと、色が暖色系になったり濃くなったりして、入力を確定することができる。
【0094】
また、以上の例では操作の判定状況を確認するためアイコンを仮想操作面の位置に表示させ、操作者の動作に応じて色や形状を変化させたが、例えば元々メニューのように予め指示する位置が固定されているような場合は、わざわざアイコンを表示しなくても、指が指し示す位置が立体表示されたメニューのどの項目ボタンに最も近いかにより決定し、指の動き、特に仮想操作面からの距離に応じて指し示されている項目ボタンを塗りつぶす色または塗りつぶす濃さを変化させることにより、仮想操作面の位置をより分かりやすくし、操作入力を容易にすることができる。
【0095】
同様なメニューの選択例としては、図26に示すような一例もあるので説明すると、例えば図21の指601が仮想操作面701の手前の一定の領域にはいると、画面上にメニュー4301が仮想操作面の位置に立体表示され、その指601がさらに仮想操作面701に近づくと、図26に示すメニューの例えば項目4302上に大きなアイコン2610が表示される。その後、仮想操作面701まで指601が到達すると、項目4302の選択が確定し小さいアイコン2611が表示されて、このことが通知される。その後、指601を左右上下に動かすことで、メニューの選択項目が移動して行き所望の項目で一定時間静止すると、選択された項目に応じた処理が行われるようにすることもできる。また、選択が実行される前に指601が仮想操作面701の手前の一定の領域より後方へ動かされるとメニューを消去するようにすることもできる。図31も、図26と同様に指601が仮想操作面701の手前の一定の領域にはいると、メニューを仮想操作面の位置に立体表示するが、ここではビデオ映像制御の例である。この例でも図26に示す例と同様に大きいアイコン3110および小さいアイコン3111によりメニューの操作が可能となる。
【0096】
さらに、別の入力操作の例を図25を参照して説明する。図25は、本実施形態により画面に表示された図形を移動させる指示を入力する一例の表示画面を示す図である。ここで、表示画面は仮想操作面の位置に立体表示されており、指示は操作者の手または指を仮想操作面に触れて動かすことにより行う。まず、指などを画面に近づけていくと画面4211のアイコン4201から画面4212のアイコン4202へとアイコンを縮小させて仮想操作面に接近していることを示す。その後、仮想操作面に触れると画面4213のアイコン4203のように例えば色を変化させて放置し、その状態で上に向けて指などを動かすと画面4214のラバーバンド4204などを表示させて移動方向を示すことにより、操作者が自己の操作を確認することができる。また、右方向に指を動かすと、画面4215のラバーバンド4205を表示することができる。このように、仮想操作面に指等が到達後の上下左右のドラッグ距離に応じて伸縮するラバーバンド(上図では矢印)を出現させ(アイコン4203の位置は仮想操作面から抜けるまで固定)、伸縮距離に応じて移動スピード、伸ばす角度に応じて3D空間内での移動する方向を変化させることができる(矢印先端が腕先や指先の動きに追随する)。
【0097】
以上、図20に示すような操作者とモニタとがほぼ同じ高さにある、すなわち仮想操作面が操作者の水平方向前面にほぼ垂直に形成される場合について、本実施形態の原理を説明してきたが、この原理はこのような操作者とディスプレイとの位置関係や形状には影響されることはなく、種々の配置や構成が可能である。例えば、図13ないし15に示すようなシステムの配置でも応用することができる。この場合、三次元カメラ201も三次元ディスプレイ111とともに傾いているので、基本的には上述の水平位置に配置された場合と大きな相違はないが、カメラを別な位置に設置したとしても、本技術分野で知られたいずれかの方法で位置補正などを行なうことで、操作者の部位と仮想操作面との位置関係を算出して、操作を判定することができる。
【0098】
以上の通り、本実施形態では第1実施形態で説明した仮想操作面に基づいて操作入力処理の前に、その仮想操作面自体を操作者の意志で設定するものであるため、設定処理についてのみ説明したが、一度仮想操作面が設定されれば第1実施形態のいずれの機能と組み合わせても、操作入力処理を実行することができる。
【0099】
(第3実施形態)
本実施形態は、基本的に上述の第1および第2実施形態で共通に用いることができるものであり、従ってシステム構成や仮想操作面の設定などの処理は同様であるが、操作の判定処理を改良したものである。すなわち、本実施形態では、第1および2実施形態とその処理は基本的に同じであるが、例えば仮想操作面を使用してアイコンを選択するときなど、特に小さいアイコンの場合指の押し込み方向を誤ると、適切にアイコンを指定できなかったり、別のアイコンを指定してしまったりするおそれがあるため、アイコンの周辺にグリッドを設定してグリッド吸着させ、所望のアイコンを指定しやすくするというものである。本発明のように仮想的に操作面を設定して操作の基準とする場合、第1及び2実施形態のように操作面の認識を確実にする様々な処理を盛り込んだとしても、操作者は常に正確な位置指定ができるわけではない。本実施形態では、操作者が多少誤った位置や方向でアイコンを指定、例えば図15に示す例のような場合に、操作面の傾きや位置などの調整がされていないときでも的確に所望のアイコンを選択できるようにすることができる。
【0100】
図39は、本実施形態にかかるグリッド吸着処理に用いられる対象画面の例を示す図であり、図40は、本実施形態にかかるグリッド吸着処理に用いられるグリッドの設定例を示す図である。図40に示すように、例えば各アイコンより大きく、アイコン3902を囲むようにグリッド4001を設定しておくことにより、操作者がアイコン3902を指で指そうとして正確にアイコン3902を押せなかった場合でも、アイコン3902を囲むグリッド4001の範囲に指が入ればグリッド吸着させて、アイコン3902が指されたものと判断することができる。さらに、グリッドの分割位置を調整する等して、アイコン間をさされたときに指された位置に最も近いアイコンを指されたと判定することもできる。
【0101】
具体的には、操作対象ディスプレイ上のアイコンやリンクの中心位置に対し、専用ブラウザやコンテンツ作成ツール等の手段により、一定面積の周囲からターゲット(アイコンやリンク)中心に向かって、フォーカスを吸着させる。これにより、選択操作を容易にすることができ、仮想操作面が傾斜していても、操作者の平面ポインティング動作に問題は生じない。上記である程度のXY平面上でのフォーカス動作の安定を得た後、ターゲット領域に対して仮想操作面からZ軸方向の押し込みストローク(空中タッチパネルへのタッチ操作)があった場合、押し込み動作後も該当ターゲットからフォーカスがずれないように(XYフォーカスを固定)ガイドを続け、Z方向の押し込みストロークのみを判定、すなわち仮想操作面からの押し込みでそのアイコンの領域から外れても、押し込まれたことのみを認識して、XY平面上の動きは無視して、その後の一連のタッチストローク操作を安定したものとして処理する。
【0102】
また、上記以外の補正としては、カメラ等の取付位置や角度が操作対象ディスプレイと大きく異なる場合、XY平面で任意に規定した吸着エリア(面積)をZ軸の奥行き方向に対して拡張・拡大(カメラやディスプレイの取付角度の違いによる「流れ」の角度分相当の面積)させることで、よりグリッド吸着を有効にすることもできる。
【0103】
図41を参照すると、二次元アイコンエリア「D」から操作進入があった場合、奥行き方向に進展させた立体エリア「E」より、手の先端の押し込みストロークが外れた場合であっても、そのままエリア「E」内にZ軸の押し込みストロークを吸着判定させる事で「ぶれ」(手の震えや安定動作が難しいために起因するもの)や「流れ」(カメラ、ディスプレイ、身長差に起因するもの)による誤動作を防止することができる。
【0104】
以上の通り、本実施形態では第1実施形態及び第2実施形態で説明した仮想操作面に基づいて操作判定処理の際、特にアイコン等操作者が一定の領域を指し示すような動作をした場合、様々な原因で正確な指定ができない場合に、グリッド吸着という手法で適切な操作を判定するものであるため、具体的なグリッド吸着処理についてのみ説明したが、それ以外の処理及び仮想操作面の設定等第1実施形態及び第2実施形態で説明したいずれの機能と組み合わせても、操作入力処理を実行することができる。
【技術分野】
【0001】
本発明は、画像認識装置および操作判定方法に関し、より詳細には、ビデオカメラ等により撮影した画像から測定対象の動作の判定を行う画像認識装置および操作判定方法に関する。
【背景技術】
【0002】
近年、コンピュータや電子機器と人間とのインタフェース、すなわちマンマシンインタフェースとして様々な機器、手法が提案されており、特にゲーム機や操作ガイド機器などではカメラで操作者全体、あるいは一部を撮影し、その画像に応じて操作者の意志を判断して動作する技術が提案されてきている。例えば、特許文献1には、CCDカメラで撮像した画像中の物体の形状、動きを認識するホストコンピュータと、ホストコンピュータによって認識した物体の形状、動きを表示するディスプレイとを備え、CCDカメラにユーザが向い、手振り等によって指示を与えると、与えた手振りがディスプレイの表示画面上に表示され、表示画面上に表示した仮想スイッチ等を手振りによって矢印カーソルのアイコンで選択でき、マウス等の入力装置を必要とせず、非常に簡便な機器の操作が可能となる技術が提案されている。
【0003】
最近ではさらに、手指の動きや形状を撮像した画像から、ある種のジェスチャとして認識して、操作入力をする入力システムも提案されている。例えば、ジェスチャによる画面操作でのプレゼンテーションや、タッチパネルを必要としない非接触キオスク端末に用いることができる入力装置において、大画面に向き合った操作者は、通常画面下部の位置に設置されたカメラに向けて種々の操作を行うと、その内容が大画面に映し出される。このように撮影された画像から操作者の形状、動きを、本技術分野で知られた方法により抽出し、例えば予め定められ、データベースに格納されたパターンと比較することにより、操作者の形状、動きの意味、すなわちいかなる操作を意図しての動作であるかを判定し機器の制御に用いる。
【0004】
一方、操作者の画像の読み取り技術としては、図13に示すように、三次元または立体対応のカメラで操作者を撮影し、立体画像を再現することも可能となっており、セキュリティチェックなどの用途に用いられている。立体画像を再現することにより、操作者の動きを立体的に把握することができ、例えば操作者の、特に手の動きが前後にも認識できるため、二次元画像を用いたものに比べジェスチャのバラエティが増大する。また、複数の操作者が画像として抽出されても、多人数であれば立体画像であるため前後関係がわかり、一番前の操作者の動きのみ抽出し、操作の入力に使用することもできる。
【0005】
さらに、近年では三次元(3D)あるいは立体表示が可能なディスプレイも様々なタイプが提案されており、従来の映画館といった限られた分野のみならず、イベント会場でのディスプレイから家庭用テレビまでその応用分野が広がってきている。3D表示技術も様々なものが提案されており、カラー表示はもちろん、色味を損なわない方式や、専用のメガネが不要なものも提案されている(例えば、特許文献2参照)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2004−078977号公報
【特許文献2】特開2005−266116号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、従来のジェスチャ操作はデファクトスタンダードといった何らかの標準的なジェスチャが確立されておらず、人差し指でのXY座標のポインティング操作以外はユーザがどのような動作で何ができるのかが直感的に認識できない。「クリック」、「ダブルクリック」、「ドラッグ」等・・・、クリック操作を何秒間かのウェイト時間の間座標に固定することで指示するものはあるが、設定されたウェイト時間が長すぎる等により快適な操作を阻害することも少なくない。したがって、クリックや決定(ダブルクリック等)などの操作をわかり易く、かつ快適にする現実的な手法がないという問題がある。
【0008】
また、従来のジェスチャ検出装置は、タッチパネルといった直接操作者が触れることができる入力装置とは異なり、操作者の明確な意思を汲み取りにくい。すなわち、そもそも操作者が何らかの動作を行っても、それが入力を意図したものなのか、単に癖で動いてしまったのか判定することが容易ではないという問題がある。この結果、例えば単純なジェスチャを不自然に目立つ形で行わなければ認識できず、またジェスチャについての事前の取り決めが必要だったり、複雑なジェスチャは使用できなかったりという問題がある。
【0009】
本発明は、このような問題に鑑みてなされたもので、操作者に何らかの入力につながる操作をしている状態にあることを認識させた上で装置に対し動作させることにより、的確な操作の判定を可能にする画像認識装置および操作判定方法を提供することを目的とする。この結果、操作に習熟していない特殊なジェスチャを覚えることなく、身体全体あるいは一部を動作させることにより、操作者の意志を的確に示す操作として判定することが可能になる。
【課題を解決するための手段】
【0010】
このような目的を達成するために、請求項1に記載の発明は、画像認識装置であって、操作者の像を読取って立体画像データを生成する三次元撮像手段と、三次元撮像手段により読取られた操作者の像及び位置に基づいた形状及び位置で仮想操作面を形成し、形成された仮想操作面を示す立体画像を表示する操作面立体表示手段と、形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、三次元撮像手段で読取って、操作者の一部と仮想操作面との位置関係に基づいて動きが操作であるか否かを判定する操作判定手段と、動きが操作であると判定されると、所定の信号を出力する信号出力手段とを備えたことを特徴とする。
【0011】
請求項2に記載の発明は、請求項1に記載の画像認識装置において、立体画像は、左右眼視差によることを特徴とする。
【0012】
請求項3に記載の発明は、請求項1または2に記載の画像認識装置において、仮想操作面の位置は、操作者と操作面立体表示手段との間のいずれかにあることを特徴とする。
【0013】
請求項4に記載の発明は、請求項1ないし3のいずれかに記載の画像認識装置において、操作者の一部が仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面をさらに備え、操作判定手段は、操作者の一部が位置決定面から仮想操作面へ移動する一連の動作において仮想操作面を横切る際、位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして操作者の操作を判定することを特徴とする。
【0014】
請求項5に記載の発明は、請求項1ないし4のいずれかに記載の画像認識装置において、仮想操作面の形状および位置は、読取られた操作者の像から腕および顔の位置を抽出し、抽出した腕および顔の位置に基づいて決定することを特徴とする。
【0015】
請求項6に記載の発明は、請求項1ないし5のいずれかに記載の画像認識装置において、三次元撮像手段が複数の操作候補者を読み取った場合、予め定められた特定の動きをする操作候補者を前記操作者と判定することを特徴とする。
【0016】
請求項7に記載の発明は、請求項6に記載の画像認識装置において、三次元撮像手段が読み取った複数の操作候補者の画像の示す、操作者と判定された操作候補者が現在の操作者と、他の操作候補者との位置関係を表示する操作者表示手段をさらに備えたことを特徴とする。
【0017】
請求項8に記載の発明は、請求項1ないし7のいずれかに記載の画像認識装置において、操作者の一部と仮想操作面との位置関係から距離を算出して距離に応じた位置に、操作者の一部の仮想操作面に対する位置関係を示す所定の標示を立体表示することを特徴とする。
【0018】
請求項9に記載の発明は、画像認識装置であって、操作者の像を読取って立体画像データを生成する三次元撮像手段と、三次元撮像手段により読取られた操作者の像、及び操作者の予め定められた特定の動きに基づいて定められる位置および形状で、仮想操作面を形成する操作面形成手段と、形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、三次元撮像手段で読取って、操作者の一部と仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定手段と、動きが操作であると判定されると、所定の信号を出力する信号出力手段とを備えたことを特徴とする。
【0019】
請求項10に記載の発明は、請求項9に記載の画像認識装置において、操作者の一部が仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面をさらに備え、操作判定手段は、操作者の一部が位置決定面から仮想操作面へ移動する一連の動作において仮想操作面を横切る際、位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして操作者の操作を判定することを特徴とする。
【0020】
請求項11に記載の発明は、請求項9または10に記載の画像認識装置において、三次元撮像手段が複数の操作候補者を読み取った場合、予め定められた特定の動きをする操作候補者を操作者と判定することを特徴とする。
【0021】
請求項12に記載の発明は、請求項11に記載の画像認識装置において、三次元撮像手段が読み取った複数の操作候補者の画像の示す、操作者と判定された操作候補者が現在の操作者と、他の操作候補者との位置関係を表示する操作者表示手段をさらに備えたことを特徴とする。
【0022】
請求項13に記載の発明は、操作判定方法であって、操作者の像を読取って立体画像データを生成する三次元撮像ステップと、三次元撮像ステップにおいて読取られた操作者の像及び位置に基づいた形状及び位置で仮想操作面を形成し、形成された仮想操作面を示す立体画像を表示する操作面立体表示ステップと、形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、三次元撮像手段で読取って、操作者の一部と仮想操作面との位置関係に基づいて動きが操作であるか否かを判定する操作判定ステップと、動きが操作であると判定されると、所定の信号を出力する信号出力ステップとを備えたことを特徴とする。
【0023】
請求項14に記載の発明は、請求項13に記載の操作判定方法において、操作判定ステップは、操作者の一部が仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から仮想操作面へ移動する一連の動作において仮想操作面を横切る際、位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして操作者の操作を判定することを特徴とする。
【0024】
請求項15に記載の発明は、操作判定方法であって、操作者の像を読取って立体画像データを生成する三次元撮像ステップと、三次元撮像ステップにおいて読取られた操作者の像、及び操作者の予め定められた特定の動きに基づいて定められる位置および形状で、仮想操作面を形成する操作面形成ステップと、形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、三次元撮像手段で読取って、操作者の一部と仮想操作面との位置関係に基づいて動きが操作であるか否かを判定する操作判定ステップと、動きが操作であると判定されると、所定の信号を出力する信号出力ステップとを備えたことを特徴とする。
【0025】
請求項16に記載の発明は、請求項15に記載の操作判定方法において、操作判定ステップは、操作者の一部が仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から仮想操作面へ移動する一連の動作において仮想操作面を横切る際、位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして操作者の操作を判定することを特徴とする。
【0026】
請求項17に記載の発明は、画像認識装置に、操作者の画像を認識して操作内容を判定する操作判定方法を実行させるプログラムであって、操作判定方法は、操作者の像を読取って立体画像データを生成する三次元撮像ステップと、三次元撮像ステップにおいて読取られた操作者の像及び位置に基づいた形状及び位置で仮想操作面を形成し、形成された仮想操作面を示す立体画像を表示する操作面立体表示ステップと、形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、三次元撮像手段で読取って、操作者の一部と仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定ステップと、動きが操作であると判定されると、所定の信号を出力する信号出力ステップとを備えたことを特徴とする。
【0027】
請求項18に記載の発明は、請求項17に記載のプログラムにおいて、操作判定ステップは、操作者の一部が仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から仮想操作面へ移動する一連の動作において仮想操作面を横切る際、位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして操作者の操作を判定することを特徴とする。
【0028】
請求項19に記載の発明は、画像認識装置に、操作者の画像を認識して操作内容を判定する操作判定方法を実行させるプログラムであって、操作判定方法は、操作者の像を読取って立体画像データを生成する三次元撮像ステップと、三次元撮像ステップにおいて読取られた操作者の像、及び操作者の予め定められた特定の動きに基づいて定められる位置および形状で、仮想操作面を形成する操作面形成ステップと、形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、三次元撮像手段で読取って、操作者の一部と仮想操作面との位置関係に基づいて動きが操作であるか否かを判定する操作判定ステップと動きが操作であると判定されると、所定の信号を出力する信号出力ステップとを備えたことを特徴とする。
【0029】
請求項20に記載の発明は、請求項19に記載のプログラムにおいて、操作判定ステップは、操作者の一部が仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から仮想操作面へ移動する一連の動作において仮想操作面を横切る際、位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして操作者の操作を判定することを特徴とする。
【図面の簡単な説明】
【0030】
【図1】本実施形態の操作入力システムの一例を示す図である。
【図2】本実施形態の操作入力システムのコンピュータとの関係を模式的に示すブロック図である。
【図3】本実施形態のコンピュータのCPU内で処理されるプログラムの機能モジュールの一例を示すブロック図である。
【図4】本実施形態の処理のフローチャートである。
【図5】本発明の一実施形態にかかる立体表示された仮想的な操作面を説明するための図である。
【図6】本発明の一実施形態にかかる仮想的な操作面の様子を示す図である。
【図7】本発明の一実施形態の使用例であるテレビ表示装置における仮想的な操作面の様子を示す図である。
【図8】本発明の一実施形態の使用例であるテレビ表示装置における仮想的な操作面の位置を示す図である。
【図9】本発明の一実施形態にかかる操作面形成基準により形成される仮想的な操作面の様子を示す図である。
【図10】従来の3Dカメラを用いた複数の操作者の画像取り込んだ場合の画像の一例を示す図である。
【図11】本発明の一実施形態にかかる操作入力支援の操作領域設定の一例を示す図である。
【図12】本発明の一実施形態にかかる画面またはカメラの位置による操作領域の調整の一例を示す図である。
【図13】本発明の一実施形態にかかる画面またはカメラの位置による操作領域の調整の別の例を示す図である。
【図14】本発明の一実施形態にかかる画面またはカメラの位置による操作領域の調整の別の例を示す図である。
【図15】本発明の一実施形態にかかる画面またはカメラの位置により操作領域を調整する方法を説明するための図である。
【図16】本発明の一実施形態にかかる画面またはカメラの位置による操作領域の調整の一例を示す図である。
【図17】従来の3Dカメラを用いた操作者の画像取り込み方法を示す図である。
【図18】本発明の一実施形態の立体表示アイコンを用いた操作入力を説明するための図である。
【図19】本発明の一実施形態にかかる操作入力支援の具体的な表示の一例を示す図である。
【図20】本発明の一実施形態にかかる仮想的な操作面および操作領域の様子を示す図である。
【図21】本発明の一実施形態にかかる操作者の動きと画面に表示されるアイコンとの関係を示す図である。
【図22】本発明の一実施形態にかかる操作入力画面の具体的な表示の一例を示す図である。
【図23】本発明の一実施形態にかかる操作入力画面で使用可能な種々のアイコンの例を示す図である。
【図24】本発明の一実施形態にかかる操作者の動きと画面に表示されるアイコンとの関係を示す図である。
【図25】本実施形態により画面に表示された図形を移動させる指示を入力する一例の表示画面を示す図である。
【図26】本発明の一実施形態にかかる操作者の動きと画面に表示されるメニューとの関係を示す図である。
【図27】本発明の別の一実施形態にかかる操作者の動きと画面に表示されるメニューとの関係を示す図である。
【図28】本発明のさらに別の一実施形態にかかる操作者の動きと画面に表示されるメニューとの関係を示す図である。
【図29】本発明の一実施形態にかかる仮想操作面および操作面形成基準の様子を示す図である。
【図30】本発明の一実施形態にかかるプロジェクタによる画面またはカメラの位置による操作領域の調整の一例を示す図である。
【図31】本発明の一実施形態にかかる操作者の動きと画面に表示されるメニューとの関係を示す図である。
【図32】本発明の一実施形態にかかる操作者のジェスチャにより操作面の位置を設定する領域を判定するため撮影した画像を示す図である。
【図33】本発明の一実施形態にかかる指定された操作面の位置の抽出を説明するための図である。
【図34】本発明の一実施形態にかかる指定された操作面の位置の抽出するためカメラから取得した距離データ画像を示す図である。
【図35】本発明の一実施形態にかかる操作者のジェスチャにより操作面の位置を設定する処理を示すフローチャートである。
【図36】本発明の一実施形態にかかる指定された操作面の位置の抽出する処理を示すフローチャートである。
【図37】本発明の一実施形態にかかる操作者の操作面設定ジェスチャのバリエーションを示す図である。
【図38】本発明の一実施形態にかかる操作者の操作面設定ジェスチャのバリエーションを示す図である。
【図39】本発明の一実施形態にかかるグリッド吸着処理に用いられる対象画面の例を示す図である。
【図40】本発明の一実施形態にかかるグリッド吸着処理に用いられるグリッドの設定例を示す図である。
【図41】本発明の一実施形態にかかるグリッド吸着処理を説明するための図である。
【図42】本実施形態の現在の操作者を特定するために三次元ディスプレイの下部にアイコンを表示する例を示す図である。
【図43】本実施形態の現在の操作者を特定するために三次元ディスプレイの下部にアイコンを表示する別の例を示す図である。
【図44】本実施形態の操作者を表示する種々のバリエーションの例を示す図である。
【発明を実施するための形態】
【0031】
以下、図面を参照しながら本発明の実施形態について詳細に説明する。
【0032】
(第1実施形態)
図1は、本実施形態の操作入力システムの一例を示す図である。本実施形態の立体表示三次元ディスプレイ111は、操作者102の前面に配置され、操作者102は、三次元ディスプレイ111との間の一定の位置に立体表示された仮想的な操作面に対し、指などの形状が操作判定の対象になることを意識して操作を行うことができる。三次元ディスプレイ111には、本システムが目的とする様々なアプリケーション用の種々の映像が表示されるが、これに加え後述するように操作入力を支援、すなわち例えば対象となる操作者102の部位などを画面の隅の方に表示して、操作者102に、現時点で操作として判定されうる動作を認識させることができる。
【0033】
ここで、本実施形態では操作者が視聴するモニタとして三次元ディスプレイを用いているが、本実施形態では本技術分野で知られたいずれの三次元ディスプレイも使用することもできるので、三次元ディスプレイ自体については以下簡単な説明にとどめる。三次元ディスプレイとは、視聴者に奥行き感や飛び出し感のある立体的な映像を提示することができるようなディスプレイデバイスのことであり、様々なタイプが存在するが、基本的には両眼に対して別々の画像を提示することにより、操作者が立体視できるようにさせるものである。一般的には、操作者があるオブジェクトを立体的に、自分と同じ空間に存在するかのように知覚するためには、人間の輻輳機能を利用し、左右眼に視差 (parallax)のある映像を提示する(両眼視差 binocular parallax とよばれる)と同時に、操作者の頭部運動にあわせて映像の見え方を変化させる(運動視差 motion parallax とよばれる)必要があるので、本実施形態の三次元カメラによる人体寸法計測による補正やトラッキング等の要素と相性が良い。例えば、操作者の三次元的な眼の位置を補足し、リアルタイムに補正をかけることで、さらに臨場感を向上させることが可能となる。
【0034】
三次元ディスプレイは、大別して、観察者に特殊な光学特性を持ったメガネをかけさせ、両眼に視差をつけた画像を提示するタイプと、メガネを利用しないタイプの二つに分けることができ、メガネを利用しないものは特に裸眼立体ディスプレイと呼ばれる。
【0035】
メガネを着用するタイプでは、低コストであっても色味の欠損や疲労感に問題があった「アナグリフ式」が古くから有名であるが、近年は、素材の色調をほとんど失わず、フルカラーで閲覧できる「偏光メガネ式」や「液晶シャッター」を用いたものも製品化され、その撮影技術や表現技術の向上と共に、飛び出し感・臨場感についても飛躍的に向上し、本格的実用化段階を迎えている。
【0036】
メガネを着用するタイプの三次元ディスプレイの方式としては、上述のようにアナグリフ式、偏光メガネ式および液晶シャッターが一般的である。
【0037】
アナグリフ式は、左右の映像をそれぞれ赤と青の光で重ねて映写し、それぞれ赤と青のカラーフィルタの付いたメガネで分離するというものである。技術的に最も簡単で低コストであるものの以前はモノクロ映像に限られていたが、現在ではカラー情報を残したまま映像製作が可能になった。とはいうものの、鑑賞の際には赤と青のカラーフィルタを通さざるを得ないため、どうしてもカラーバランスが崩れる。
【0038】
偏光メガネ式は、左右の映像に直交する直線偏光をかけて重ねて投影し、これを偏光フィルタにより分離して両眼に異なる画像を提供するものである。通常は、偏光状態を保存するためにシルバースクリーンなどが利用される。直線偏光の代わりに円偏光を用いたものもある。円偏光を用いたものは、観察者が顔を傾けても左右映像のクロストークは小さく維持されるが、円偏光の遮光特性には本質的に波長依存性があるため、濃い紫や黄色などの色が見えてしまう場合がある。
【0039】
液晶シャッターメガネは、左右の映像が交互に遮蔽されるように液晶シャッターが駆動するメガネを利用して、左右の眼に異なる画像を届けることにより立体視を可能にするものである。左右で視差のある映像を、ソースのフレームレートの倍のレートで交互に投影するため、色の再現性は良いが、メガネのコストが上がる他、メガネに信号を無線送信するための設備も必要になる。フレームレートは液晶シャッターの応答周波数に依存する。
【0040】
操作者102の動きはビデオカメラ201により撮影され、撮影された映像はコンピュータ110で処理され、操作者102の位置、身長および腕の長さなどにより、あるいは身長や肩幅等の身体寸法情報により最適な仮想操作面およびこれを含む操作領域の位置および大きさを設定し、仮想操作面から三次元ディスプレイ111側に出た部分のジェスチャがどのような操作を意味するかを判定する。すなわち、コンピュータ110は、ビデオカメラ201から得られたデータから、操作者102の立体画像を作成するとともに、作成された立体画像から操作者に最適な仮想操作面の位置を算出し、さらに後述するビデオカメラ201や三次元ディスプレイ111の位置や配置態様により仮想操作面の位置および大きさなどを調整し、仮想操作面を基準に操作者102の手指などがビデオカメラ201側に出ているか否かを決定し、その部分を操作の対象として操作内容を判定する。
【0041】
一方、三次元ディスプレイ111は、操作者102から見て仮想操作面が設定あるいは調整された位置に存在するように見えるように仮想操作面を表示する。これにより、操作者102は、あたかも仮想操作面がそこに存在するように立体映像として認識して、認識した立体映像に対し手や指を用いて操作を実行することができる。この点を図5及び6を参照して説明する。
【0042】
図5は、本実施形態にかかる立体表示された仮想的な操作面を説明するための図である。操作者102は、その右目504と左目503とにより三次元ディスプレイ111上に表示された画像502及び仮想操作面画像501とを見るが、仮想操作面画像501は立体表示させるため、例えば視差を含んだ2枚の画像からなっており、それぞれ右目504及び左目503で見ることにより図5に示すように三次元ディスプレイ111から操作者の前面にあるように立体表示されるような仮想操作面を形成することができる。この仮想操作面画像501が立体表示される位置を、上述のビデオカメラ201で撮影した操作者の像や位置から決定して三次元ディスプレイ111に輻輳角度θ1となるように調整して表示する。ここで、画像502は、通常二次元表示されるからディスプレイ111の位置で表示され、輻輳角度θ2となるよう調整しているが、使用状況にあわせて輻輳角度θ2を定めれば奥行きのある立体映像を提供することができる。なお、図5に示す仮想操作面画像501の位置は、仮想操作面を立体表示する位置であるが、操作者の操作感として実際に仮想操作面が形成される位置とは若干異なる位置に表示させる場合もあり、仮想操作面の形成位置と仮想操作面画像の立体表示位置とは必ずしも一致する必要はない。
【0043】
このように、仮想操作面画像501は、輻輳角度θ1となるよう調整して立体表示されるが、図18に示すようにさらにアイコン1801を輻輳角度θ3となるよう調整して立体表示させ、手先や指先をガイドするようにすることができる。具体的には、手先などの位置にアイコン1801が来るように立体表示させて、仮想操作面へのz方向の距離感やxy方向における位置関係の把握を容易にすることができる。この他、様々な形態、形状でアイコンを立体表示させることができる。例えば、アイコンを、指先と同じ位置に表示する以外に、多少、奥行き方向に距離を持たせて離して表示することもできる。このようにすることにより、仮想面とアイコンの位置関係が指先を見つめる方法よりも視認しやすい場合があり、仮想面の手前への浮き出し距離が不足する場合、これで補う事もできる。なぜなら、いずれの場合も眼前への浮きだしは、一般にピント調節がしにくいことから、多少、奥行きのある位置にアイコンを表示したほうが操作者にとっては操作しやすいからである。さらに、このような立体表示アイコンは第2実施形態において詳述するフォーカスアイコンのいずれかの形状、形態で表示させることができる。例えば、立体表示アイコンとして、指先付近にアイコンを表示させつつ、アイコンの大きさを変化させたり、色を変化させたりして仮想操作面への距離感を操作者に把握できるようにすることもできる。
【0044】
図6は、本実施形態にかかる仮想的な操作面の様子を示す図であり、操作用のアイコンが含まれる仮想操作面画像501が表示されるが、実際のシステムでは立体表示なので操作者からは三次元ディスプレイの手前側の手を伸ばせば触れることができる位置に見えるように表示される。このため、操作者はあたかもそこにタッチパネルあるいは操作パネルが存在するように仮想操作面に対して操作することができる。ここで、一度立体表示された仮想操作面画像501は、操作者102の腕や身体の動きにあわせて操作がより自然に行われるように位置や形状を変更することもできる。
【0045】
(複数操作候補者の処理)
また、図7及び8は、本実施形態の使用例であるテレビ表示装置における仮想的な操作面の様子を示す図であるが、図7及び8に示すように複数の視聴者に対し各々仮想操作面を生成して、個別に操作することもできるし、いずれかの視聴者の指示を優先的に受付けるようにするなど、様々な設定を行うことができる。しかし、通常は複数の視聴者の各々異なる操作による混乱を回避するため、何らかの方法で1人の視聴者を決定してその視聴者だけに操作入力を認めるようにする。ここで、図7または8に示すような複数の視聴者は、装置に対する操作の権限を有する操作者となる候補者であることから、操作候補者と呼び、以下複数の操作候補者がいる場合の操作者の決定、操作者決定後の処理について説明する。したがって、操作候補者には、図7または8に示すような視聴者を含め、本発明の対象である操作者の候補者、例えばゲーム機の複数のプレイヤや、プレゼンテーションの発表者などが含まれる。なお、本実施形態のシステムでは、操作者の対象となる者はシステムが対象として認識できるものに限られるので、操作候補者は、例えばビデオカメラ201の撮像範囲に存在するものに限られる。
【0046】
このような複数の視聴者のいずれを操作者にするかについての設定、および仮想操作面の設定などは、後述する第2実施形態の手法を用いて、すなわち第2実施形態の仮想操作面の設定を行う際に先ず操作候補者から誰が操作者になるかを決定してから決定した操作者が仮想操作面を設定するように行うことができるが、その他本技術分野で知られたいずれの方法で行うこともできる。例えば、図7の例ではテレビの視聴を開始した直後、何らかのジェスチャでいずれの操作者(図7及び8では操作者は視聴者702)とするかを決定したり、視聴途中で一定のジェスチャあるいはリモコンの操作で、設定モードにして設定することができる。操作者が決定すれば、その操作者702に合わせて仮想操作面画像501が立体表示される。なお、立体表示の特性により一定の立体表示システムでは、図7及び8に示すように操作者702以外の他の視聴者には仮想操作面は各々図に示すように立体表示されるが、図に示すように仮想操作面が形成される位置は実際には操作者702の目の前であるから、他の視聴者は実質的に操作が困難となる。このように、通常の立体表示システムでは、複数の者が操作する可能性がある場合、1人の操作者を先ず決定して、その操作者に適合する仮想操作面を形成して、立体表示する必要がある場合が少なくない。
【0047】
ここで、このような複数の操作候補者がおり現在誰が操作者か明確でない場合、操作者でない者が操作をしようとしたり、逆に操作者が不用意な動作をしたりして誤操作となるおそれもあるため、本実施形態では、画面上にいずれが操作者であるかを表示するようにして操作候補者全員に、現在誰が操作者であるのかを認識させることができる。図42は、現在の操作者を特定するために三次元ディスプレイ111の下部にアイコン4202ないし4204を表示する例を示す図である。図42を参照すると、テレビ111を視聴している3人が操作候補者となり、そのうちの真中の1人が操作者702とすると、操作画面例4201では画面の下部に3人の操作候補者を示す3つのボックス4202ないし4204が表示され、優先ユーザである操作者702を示すように真ん中のボックス4203が、着色される等により強調表示される。このような表示は、上述のようにビデオカメラ201により、操作候補者の位置を読取ることができるので、各操作候補者の位置や並び順を、読取った画像から抽出することにより可能となる。
【0048】
図43は、現在の操作者を特定するために三次元ディスプレイ111の下部にアイコン4302ないし4304を表示する別の例を示す図である。図43を参照すると、本例では上述のボックス4202ないし4204を表示する例と比較して、人物のアイコン4302ないし4304を用い、モニタ画面111の下部の領域4301に表示し、距離感もその大きさにより表現しているので、より直感的に誰が操作者であるか認識できるようになっている。このような操作者を示す表示のバリエーションとしては、種々のものが考えられるが、例えば図44に示すような方法を採用することもできる。すなわち、操作候補者が2名の場合はより簡易的に図44(b)に示すような表示にすることもできる。また、操作候補者がそれより多い場合は図44(c)に示すように操作候補者の人数分のボックス(「ユーザ1」ないし「ユーザ5」)を表示している。
【0049】
さらに、人型のアイコンを使用して3人以上を示すためには、図44(a)に示すようにアイコン表示領域内に操作候補者を表すアイコンを位置や並び順を考慮して表示することもできる。この場合、本実施形態では三次元ディスプレイを使用しているので、各アイコンを、対応する操作候補者の実際の位置に基づいた奥行きで表示させ、より直感的に現在の優先ユーザである操作者を認識させることができる。もちろん、図42ないし44を参照して説明した操作者の表示は、通常の二次元ディスプレイを使用するシステム、すなわち三次元アイコンなどを使用せずに、後述の第2実施形態で説明するような形で仮想操作面を設定する場合でも有効であるのは言うまでもない。
【0050】
図1では、画像を取得するためにビデオカメラ201を三次元ディスプレイ111の上部に取りつけ撮影しているが、図11ないし15のように必要な画像が得られればこれに限られることなく、赤外線カメラ等、本技術分野で知られたいずれの撮像手段を用いることもでき、設置場所もモニタの付近の何処を選択することもできる。ここで、本実施形態ではビデオカメラ201として三次元(あるいは3D)カメラを用いることにより、操作者を含め立体画像が作成できるようにする。
【0051】
さらに、本実施形態のシステムには図示しないスピーカ等の音声出力装置を取り付けられており、表示内容や操作に関する情報を音声で操作者に伝えることもできる。このような機能を設けることにより、ディスプレイに操作内容を画像で表示するだけではなく、指示事項や結果について、同時に音声で流すことで仮想操作面が判るため、視覚障害のある操作者でも操作することが可能になる。
【0052】
図9および10は、仮想操作面の役割を具体的に説明するための図である。本実施形態の仮想操作面701は、操作者102の身長や腕の長さ、あるいは身長や肩幅等の身体寸法情報に基づいて設定され、ユーザ102は、立体画像として操作面701が仮想的に存在すると捉え、種々の操作をしようとする場合は操作面701を基準に手601を前に突き出してジェスチャを示したりすることができる。また、仮想操作面を含む操作領域でのユーザが任意のポーズを取った後に、仮想操作面の前方へ押し出す(決定)動作でアクションを決定したり、操作を決定してから押し出すという判断の基準としたりすることができるため、ユーザが認知しやすく、操作性は従来のタッチパネル操作に近いものとなる。一方、操作バリエーションは、従来のタッチパネルより圧倒的に増える(両手操作や、振舞、複数指等)。
【0053】
本実施形態で、図9および10に示すような仮想操作面701は、カメラ201が操作者102の像を捉えるとリアルタイムで形成されるようになっているが、操作者が操作を開始するまでは、操作者の立位置が一定しないため、仮想操作面が定まらず操作判定も容易ではない。そこで、本実施形態では、操作者の身体が三次元カメラの撮像範囲内で一定時間静止したタイミングで仮想操作面の設定処理を開始するようにすることもできる。
【0054】
このように本実施形態の仮想操作面の形成はリアルタイムで行うことができるが、この場合でも、何らかの方法で操作者の立位置を、そのシステムにとって最適な一定の範囲に制限することによって、操作判定をより正確にすることができる。例えば、図示しないが床面に立位置を示す足形を描いておくとか、モニタやシステムの配置により操作者に一定の制限範囲の存在を認識させたり、衝立を立てたりして一定範囲内で操作を行うようにさせることもできる。操作者が自然に認識できる仮想操作面の位置や大きさなどは、操作者とディスプレイとの位置関係に大きく影響され、システム全体でディスプレイ、カメラ、操作者の位置などは予め想定しておいた方が良い場合もある。
【0055】
図2は、本実施形態の画像認識装置のコンピュータ110の構造を模式的に示すブロック図である。コンピュータ110には、モニタ701に取り付けられ、操作者102などを撮影するビデオカメラ201が接続され、撮影した画像がコンピュータ110に取り込まれる。撮影により得られた画像は、CPU210において本実施形態の特徴である画像の抽出、位置の算出などが行われ、算出した位置に基づいて操作面からビデオカメラ側に身体の一部が出たかどうかを決定する。コンピュータ110は、一般にCPU210を備え、ROM211等に記憶されたプログラムをRAM212上で実行して、画像認識装置から入力した画像に基づいた処理結果を三次元ディスプレイ111等に出力する。本実施形態では、三次元ディスプレイ111は、上述の仮想操作面のほか操作者が体験しようとする様々なアプリケーションにより提供される種々の映像を出力することができ、また後述するように操作入力の支援となるような情報も表示する。
【0056】
図3は、本実施形態のコンピュータ110のCPU210内で処理されるプログラムの機能モジュールの一例を示すブロック図である。図3に示すように、本システムにおける処理は、画像読取部301、画像抽出部302、画像位置算出部303、操作判定部304および立体画像表示部305により実行される。なお、本実施形態では、ビデオカメラ201からの画像を受取ってからデータの出力を行うまでの処理をこの5つのモジュールにより実行するが、これに限られることなく、その他のモジュールを用い、あるいはより少ないモジュールで処理することもできる。
【0057】
(本実施形態の処理)
本実施形態では、図10に示すように、ビデオカメラ201で撮影された操作者102の像に基づいて仮想操作面を立体画像として形成し、同じく撮影した操作者102の一部である手や指の位置を定めるとともに、仮想的な操作面701と操作者102の手指601との位置関係を算出する処理を行う。本実施形態では、このような処理を行う前提として、本技術分野で知られた初期設定、例えば本実施形態の画像認識装置が新たに設置された場合を想定すると、事前準備として利用するビデオカメラ201の利用レンズの歪み、三次元ディスプレイ111とレンズとの距離等の情報を装置に入力しておく必要がある。さらに閾値設定等を予め調整しておく。システムの初期設定が終了すると、本実施形態の処理を行うこととなるが、この処理については図4を参照して以下に説明する。
【0058】
図4は、本実施形態の処理のフローチャートである。まず、画像読取部301においてビデオカメラ201で撮影されたデータを読取り(S401)、そのデータから操作者の像を、画像抽出部302により抽出する(S402)。
【0059】
このような準備の結果、抽出した操作者102の画像に基づいて仮想操作面および操作領域を決定する(S403)。ここで、操作面の形状は図11などを参照すると床面から垂直に立てた長方形となっているが、これに限られず、操作者の操作態様に応じて様々な形状(大きさ、ディスプレイに対する角度を含む)の操作面を形成することができる。具体的には、後述する第2実施形態の仮想操作面の設定時のように、操作者の体形や位置を三次元カメラで立体映像として撮影し、操作者の各部位の位置、大きさなどから最適な仮想操作面の形状、位置を決定する。例えば、仮想操作面の形成位置は、操作者の眼の位置から、腕の長さを基準に操作時のストロークが最適となる位置とすることができるが、その他の部位の長さ、大きさを基準に距離を決めても良いし、起点として眼ではなく肩からとすることもできる。また、眼の位置の抽出が困難であれば、頭部の位置を起点とすることもできる。さらに、本実施形態では立体画像を見るため、操作者は通常偏光メガネやシャッターメガネを着用するので、メガネの前面等に三次元カメラの映像から位置を抽出しやすいマーカを付すことにより、仮想操作面の形成位置決定を容易にすることもできる。
【0060】
ここで、操作領域とは本実施形態の特徴である仮想操作面を含み、操作者の操作の主体となる手や指などが主に動かされる領域であり、後述する仮想操作面に至るまでの支援で説明するように、操作者の胴体から仮想操作面を越えた一定の領域が本願発明の操作認識のために用いられる。例えば、図11に示すように大人の操作者810については、身長(視線の位置)や腕の長さを考慮して操作領域811のように形成することができるし、子供の操作者820の場合、身長もより低くなり、腕も短くなるので、これにあわせて操作領域821を設定することができる。このような操作領域の中に仮想操作面を設定すれば、操作者が自然に手や指を動かすことにより、手や指の動きで操作者が意図している操作を判定することができるようになる。
【0061】
より具体的には、例えば、奥行きは、操作者が前方に手を伸ばした指先まで、横幅は、操作者が真横に手を伸ばした場合の左右手首の長さまで、高さは、操作者の頭の位置から腰の位置までの範囲とすることができる。また、本実施形態のシステムの対象者を小学校低学年から成人とした場合、身長の幅はおおよそ100cmないし195cm程度までになり、その身長差として操作領域または仮想操作面の上下位置の補正幅は、約100cm必要となる。なお、仮想操作面、操作領域は、その都度実行することもできるし、一定の条件のもと実行するようにすることもでき、あるいはこれらの設定タイミングを予めあるいはその都度選択することもできる。
【0062】
このように、仮想操作面の形状及び位置が決定すると、本技術分野で知られたいずれかの方法で、操作者から見て決定された位置に決定された形状(大きさ、ディスプレイに対する角度を含む)で仮想操作面を形成する立体画像が立体画像表示部305により生成され、三次元ディスプレイ111に表示される(S410)。したがって、操作者は立体表示された仮想操作面に的確に指や手を触れさせることができるようになるため、仮想操作面に表示されたアイコンをタッチするなどの操作を行うことができる。ここで、本実施形態では、仮想操作面を立体表示させるまでの一連の流れを説明したが、基本的に操作者が全体として移動したり等して、当初設定した仮想操作面では操作しづらくなった場合さらに最適な形状、位置を算出して立体表示しなおすが、仮想操作面として表示する内容によっても同様の処理を繰り返し実行する。例えば、アイコンを仮想操作面として表示する場合は、操作者のアイコンの指定処理をより容易にするため、指または手の動きに合わせて最適な位置、形状で仮想操作面を表示しなおすことができる。
【0063】
操作判定部304は、操作入力システムの立体表示された仮想操作面と、操作者102との相対関係を用い(S404)、操作者102の一部が操作面のビデオカメラ201から見て手前に来ると、操作が開始されたと判断し(S405)、各部の形状(手を開いている、あるいは指を2本立てているなど)や動きから、その形状、動きが予め想定されたいずれの操作であるかを判定する(S406)。ここで、どのような形状、動きがどのような操作に対応するかは、システム独自に取り決めることもできるし、本技術分野で知られたいずれかの手法を取り入れて決定することもでき、あるいはまた、単にその位置が操作者により触れられた、例えばアイコンが選択され、若しくはボタンが押されたと判定することができる。判定した結果は、そのような操作の入力があったものとしてコンピュータ110で実行され(S407)、もともと仮想操作面から手前側に手が出ていない場合、操作は行われていないと判定して終了する(S408)。操作内容の判定はここで説明した手法に限られることなく本実施形態で知られたいずれの方法も用いることができる。また、具体的な判定方法も省略したが、一般には予め定めたジェスチャなどの操作者の身体の形状、動きと、それが意味する操作内容とをデータベース等に格納しておいて、画像抽出後、このデータベースにアクセスして、操作内容を判定する。この際にももちろん、画像認識技術や人工知能などを本技術分野で知られた手法により利用し、判定精度を向上させることもできる。
【0064】
ここで、操作者が子供の場合と大人の場合とで、仮想操作面をどの位置にどの程度の大きさで形成するかが変わることが理解されるが、さらに操作者の身長などの体形の差に加え、カメラ201の位置や三次元ディスプレイ111の位置や取付角度によっても、仮想操作面を調整する必要がある。通常、三次元カメラは、CCDやレンズ面に対して平行か、同心円状に対象物までの距離計測を行うことができる。モニタが操作者の目線の高さに設置され、カメラが近接した位置にあり、それぞれが床面に垂直設置の場合、操作者も立位であれば適正操作領域を生成する上で、相互の位置関係等、特に調整や補正の必要は無いと言える。しかし、天井つり下げ型モニタの場合や超大型モニタあるいはプロジェクタ等を利用する場合、カメラ設置位置やモニタおよび操作者との位置関係は、様々な状況が想定される。
【0065】
一般に、仮想操作面を立体表示したとしても、操作者は操作対象画面を見ながら入力操作を行うので、常に操作者の目線と操作対象画面とを結ぶ直線に垂直に仮想操作面を配置し、それに沿った操作領域を生成しなければ、操作者のZ方向への押し込みストロークの角度が不一致を起こし、操作者が狙ったポイントへの押し込み操作をしても、押し込みに伴い、いずれかの角度に沿って流れてしまい正常な操作ができなくなる可能性がある。したがって、仮想操作面を形成する場合は、モニタ、カメラおよび操作者の位置、配置態様に応じて形成する角度、大きさ、あるいは場合により位置を調整するのが好ましい。
【0066】
図12を参照すると、図11に示したように操作者820に合わせて操作領域821および仮想操作面601が定められるが、図12に示す例のようにカメラ201が三次元ディスプレイ111の上部に配置された場合、仮想操作面601は、操作者820が腕を伸ばす方向910に垂直でなければ操作者820は仮想操作面に対する良好な操作感が得られないから、カメラ201の視野方向に垂直な平面にしないほうが好ましい。
【0067】
また、図13を参照すると、三次元ディスプレイ111自体が上方に設置され、しかも角度をもって取り付けられているため、仮想操作面701は、操作者820が三次元ディスプレイ111を見上げて操作できるように、上方への傾きを持つ方向1010に垂直な面になる。この場合も、図12に示す例と同様にカメラ201の視野1011は視線方向1010と一定の角度をもって傾いているため、カメラ201で読取った情報を傾いた仮想操作面701に合わせるよう補正することが望ましい。さらに、図14を参照すると、カメラ201が三次元ディスプレイ111から離れ床の近くに置かれていて、操作者820の視線1110とカメラ201の視野とは、より大きな角度が付くため、その分の補正することが望ましい。
【0068】
図15は、仮想操作面701および操作領域821を定める一例を説明するための図である。本実施形態では、仮想操作面の形状及び位置を決定するために、三次元ディスプレイ111およびカメラ201の位置、設置方法(どの程度の角度で設置されているかなど)、操作者820の立ち位置、身長などの情報を用いる。すなわち、一例としては先ず、操作者820の三次元ディスプレイ111に対する目の高さ(身長)、立ち位置から操作者の視線に垂直な仮想操作面701を算出する。次に操作者820の頭と胴体とを結ぶ線A−Bと、カメラ201の視野の中心線1210の角度を測定し、仮想操作面および操作領域の傾きを補正する。腕のストロークは、操作者の像から抽出しても良いし、得られた身長の情報から、別途身長ごとの平均的な腕の長さの情報から定めてもよい。
【0069】
本実施形態の仮想操作面および操作領域は、以上の通りカメラ、モニタおよび操作者の位置、配置態様などに基づいて、自然な操作とより容易な操作判定が可能なように定められ、実際の操作者の動きを検出して、いずれの操作が行われているかが判定される。ただし、ここで説明をしない具体的な処理、例えば三次元カメラの像からどのように位置や形状を特定するか、操作者の一部が仮想操作面を通ったか否かの判定処理など、本実施形態の実装に際して必要な処理は、本技術分野で知られたいずれの方法を用いても達成することができる。
【0070】
(操作入力の支援)
以上説明したように、三次元ビデオカメラにより仮想操作面を立体表示することにより、操作者は空間上にあたかもタッチパネルのような操作面が存在するように認識することができ、この操作面に対し、種々の操作を行うことにより、身体の全部または一部を用いた操作入力が可能となるが、さらに仮想的な操作面に対する操作者の映像を三次元ディスプレイ111に表示する等、操作入力を支援することにより、より容易に本実施形態のシステムを活用することができる。
【0071】
図19は、このような操作入力の支援となるガイダンスをディスプレイ111に表示している一例を示す図である。例えば、ディスプレイ111の中心部に表示されている画像のどこかをポインタで指し示す場合、操作者はそれ自体仮想的操作面となっている画像に対し、手指を突き出すことにより所望の場所を指し示すことができるが、そのように指し示す様子を図19に示すポインタ901のように表示することにより、操作者は現在行われている操作を認識し確認しながら、次の操作を実行することができる。この例で言うと、たとえば、ポインタ901は、操作面から手指を突き出すと画面に表示され、引っ込めると消える、あるいは濃淡をつけて表示するようになっており、手の動きとディスプレイ111に表示されるポインタの様子から、操作者は自然な形で、本実施形態の入力法を実行することができるのである。同様に操作者自身の様子を図9および10に示したような形で表した操作画面902を、三次元ディスプレイ111の右上隅に小さく表示させて現在どのような動きをして、システムではどのような操作と判定されているかを表示することができ、また、手の動きをグラフ化した折線グラフ903を示して、手の前後の動きがどうなっているかを操作者自身に意識させる等により、より的確な操作が期待できる。また、図示しないが、システムで使用することができるジェスチャをガイダンスに表示して、それに倣って操作入力をするよう操作者に促すようにして支援することもできる。
【0072】
(仮想操作面の奥側の操作 − 仮想操作階層)
本実施形態では、操作者が空間上に仮想的に立体表示された仮想操作面を基準に、そこにあたかもタッチパネルのような入力機器が存在するかのように操作することにより、その操作内容を確実に判定しようとするものであるが、このようにして判定された操作の内容を仮想操作面から奥側方向である、操作者から離れる方向への仮想操作面と操作者の手等の身体の一部あるいは身につけた物体の位置関係で決定する。例えば、操作者から離れる方向であるz軸方向に2層あるいは3層に操作領域を仮想操作階層として設定し、操作者の手がどの層に入っているかにより操作の種別を決定して、その層内での手の動きにより操作内容を決定する。この際、操作者が視認している表示画面上に手の位置や操作の種別などを表示させれば、より操作者は操作の認識を容易にすることができる。なお、操作者の一部と各階層を分割する面とのz方向の距離は、上述した形成された仮想操作面と操作者の一部との距離を算出する手法によって取得することができる。
【0073】
より具体的に説明すると、図27に示すトリガ面701は、本実施形態の仮想操作面であり、上述の実施形態のいずれかを用いて指601がトリガ面701からz軸方向に入ると、操作が行われたと判定される。さらに、トリガ面701から先の操作領域を階層AないしCの3階層に面4501および4502で分割し、各々異なる操作の種別を割当てる。図27の例では、階層Aにはオブジェクトの回転の操作を、階層Bには拡大縮小の操作を、階層Cにはオブジェクトの移動の操作をそれぞれ割当てている。各階層において指601を動かすことにより決められた操作が実行される。例えば、階層Aにおいては、トリガ面701を指601が通過した際に指601を示すアイコン、例えば回転アイコン4503が示す位置を中心に指定されたオブジェクトが指601の動きに合わせて回転する。階層Bにおいては、例えば三次元ディスプレイ111に拡大縮小アイコン4504を表示し、指601をz方向に動かすとオブジェクトが拡大され、反対方向に動かすとオブジェクトが縮小するようにすることができる。
【0074】
同様に、階層Cでは三次元ディスプレイ111に表示された指定したオブジェクト上の指601の位置に移動アイコン4505を表示し、指601の動きに合わせて移動するようにすることができる。ここで、階層間を区切る面4501および4502は各階層が同じ厚さになるように配置することもでき、階層に割当てられた操作種別に応じて異なる厚さになるよう配置することもできる。例えば図27の例では、階層Bには拡大縮小の操作が割当てられているが、拡大縮小を前後の動きで表現しなければならないため、階層Aや階層Cと比較して通常はz方向の動きが大きくなることから、階層Bをより厚くすることによって操作を容易にすることもできる。
【0075】
以上のような階層は、標準的なストロークによりその間隔を決定することにより、操作者の自然な感触で使用することができるが、本実施形態では各層を分ける面4501および4502などを仮想操作面701と同様に適当に設定された位置に立体表示させることにより操作者に階層の境界を確実に認識させることもできる。あるいはまた、階層A、B、Cのいずれか、あるいは全てを階層の深さでグラデーションをつけて立体表示することにより、操作者に階層の存在とその深さを認識させることもできるほか、本技術分野で知られたいずれかの表示方法によってより効果的に表現することもできる。
【0076】
図28は、本実施形態の別のアイコンの例を示す図である。図28に示す例では、階層Aには三次元ディスプレイ111上での操作位置を特定する操作を、階層Bには特定された位置におけるオブジェクトを「掴む」操作を、階層Cには掴んだオブジェクトを投げるあるいは移動させる操作をそれぞれ割当てている。なお、以上のアイコンは二次元表示で用いることもでき、立体表示用にアイコンを調整して立体表示することもできる。
【0077】
以上のように、仮想操作面により操作と判定された後の操作内容の判定の際に、指や手の動きだけでなく、そのz方向の位置、すなわち仮想操作階層に応じて操作の種別を特定するようにすることができるため、指や手の動きのみでは様々なジェスチャーパターンを数多く準備し、かつ操作者がそれらを覚える必要があるのに比較して、単純な動作のみで複雑な操作を使い分けできることとなる。
【0078】
なお、上述の、特に図27に示す例では、手や指などの一連の動きを各階層間で連続的に行える操作を配置するようになっているが、連続的に操作できないような配置の場合(図28に示す例)は、次のような2つの点が問題となる。すなわち、(1)目的とする仮想操作階層に到達する前に他の階層を通過し、操作者が欲しない指示を与えてしまう、(2)目的の操作を終え、手を操作領域から抜く場合、他の仮想操作階層を通過し、操作者が欲しない指示を与えてしまう、という点である。上記の問題を回避するためには、例えば次の方法などが考えられる。すなわち、操作する方と反対の手を操作領域内に差し込むようなマルチセンシングの状態(例えば、右手で操作している場合、左手を操作領域内に入れた状態)を、操作なし(あるいはその逆に、操作あり)の状態と設定し、操作する方と反対の手の出し入れによって、各階層の操作を行うか否かを判断するようにする(この例では両手操作によるが、XY平面上にすり抜け用エリアを設ける等、様々な方法が考えられる)。
【0079】
以上本実施形態を用いると、操作者は予めジェスチャを覚えたり、取り決めておいたりすることなく、その動きによりシステムの操作を行うことができるほか、操作者の姿勢や各部、例えば手の動きが分かるので身体全体を使用したゲームに用いて、いわゆる複合現実感(MR)を実現することもできる。
【0080】
(第2実施形態)
本実施形態は、上述の第1実施形態で立体表示した仮想操作面を予め操作者に指定させることにより設定する点で異なるが、第1実施形態のシステム構成および仮想操作面に対して操作者が行った動作をどのように操作として認識するか等の処理は同様である。すなわち、本実施形態では、後述するように操作者が操作を行う場合は先ず、仮想操作面をどこに設定するか一定の操作で指示させ、その指示に従って仮想操作面を形成する。したがって、第1実施形態のシステムのように三次元ディスプレイにより仮想操作面を立体表示させなくても操作者はどこにどのような操作面が存在しているかを予め認識することができるので、仮想操作面を必ずしも立体表示する必要はなく、通常の二次元ディスプレイを使用することもできる。ただし、仮想操作面の認識をより確実にするため、三次元ディスプレイを用いて立体表示させることもできる。以上の通り、本実施形態は、仮想操作面を操作者の指示に応じて形成した後の処理は基本的に第1実施形態と同様なので、以下おもに仮想操作面の設定処理について説明する。
【0081】
(仮想操作面の設定)
図32は、本実施形態にかかる操作者のジェスチャにより操作面の位置を設定する領域を判定するため撮影した画像を示す図である。図32に示す例のように、三次元カメラ201で撮影された操作者の画像3210の手3202及び3203により操作面の形状(大きさ、ディスプレイに対する角度を含む)が決定され、z方向の距離データ画像3211のディスプレイから手3202及び3203までの距離、ディスプレイから胴3204までの距離により仮想操作面3201の位置を決定する。具体的には、図33に示すように三次元カメラ201により撮影された操作者の画像データから奥行きを把握することができる。図33は、本実施形態にかかる指定された操作面の位置の抽出を説明するための図であり、操作者の像を奥行き方向(z方向)で示したものである。図33を参照すると、操作者が手3202で示した位置に操作面3201を形成すれば良いことが理解される。
【0082】
本実施形態では、このような仮想操作面の設定処理は、システムの電源投入後や特定の操作、例えばリモコンで指示するなどにより開始されるが、これに限られず本技術分野で知られたいずれの方法、タイミングで開始することができる。図35は、本実施形態にかかる操作者のジェスチャにより操作面の位置を設定する処理を示すフローチャートである。ここで、図7に示すように上述の第1実施形態で説明した複数の操作候補者がある場合、仮想操作面の設定を行う者を操作者と定めることができ、このとき設定された仮想操作面は決定された操作者用のものとなる。その結果、本実施形態で説明する仮想操作面が設定されると、図42ないし44に示すような操作者のアイコンやボックスを画面に表示することにより、決定した操作者も含む操作候補者は、いずれが操作者であるかを認識して、誤操作を防止することができる。
【0083】
まず、電源投入等によりシステムプログラムが開始され(S3501)、システムで使用するデバイスの各種設定などのデバイス管理が実行される(S3502)。ここで仮想操作面のフレーム取得処理が開始され(S3503)、操作者からの指示入力待ちとなって(S3504)、指示が入力されると画像データを取得し(S3505)、後述する操作面抽出処理を実行した(S3506)後、デバイス後処理を実行して仮想操作面の設定を終了する(S3509)。
【0084】
次に図34及び36を参照して操作面抽出処理を説明する。図34は、本実施形態にかかる指定された操作面の位置の抽出するためカメラから取得した距離データ画像を示す図であり、図36は、本実施形態にかかる指定された操作面の位置の抽出する処理を示すフローチャートである。まず、データ、すなわち操作者の立体画像データの入力がなされると(S3601)、手の形状および頭部を認識して(S3602、S3603)、仮想操作面を形成するか否かを判定する(S3604)。具体的には、例えば手が一定の予め定めたジェスチャを一定時間維持していたときは、仮想操作面の設定処理であると判断して、操作者が手により指示した位置及び大きさを含む形状の仮想操作面を、図34に示すような距離データ画像から抽出して仮想操作面を形成し(S3605)、操作者の身体の測定値、例えば腕の長さ、胴や頭部の位置に基づいて操作領域を設定し(S3606)データを出力して終了する(S3609)。ここで、本実施形態では手などの動きを一定時間静止することにより、仮想操作面の設定指示と判断するようにしているが、これに限らず種々のジェスチャ、リモコン操作等で指示するなど本技術分野で知られたいずれの手法により指示を判断させることができる。なお、本実施形態では基本的に手により形づくられた形状、位置に仮想操作面を形成するが、操作者の身体的特徴やディスプレイの位置、使用状況等に合わせて調整することもできる。
【0085】
頭部の認識や手のジェスチャから仮想操作面の設定処理ではないと判断すると、既に仮想操作面が設定された状態か否かを判定し(S3607)、仮想操作面が設定されている場合は通常の操作と判断して操作領域内の手の位置を取得する(S3608)。以上により、操作者の指示に基づく仮想操作面の設定処理を行うが、本実施形態では、操作者が自ら仮想操作面を指示するので、仮想操作面の位置を別途何らかの方法で操作者に示さなくても認識させることができる。なお、仮想操作面の形状及び位置を指示するジェスチャは、本技術分野の通常の知識で様々なものが考えうるため、それらのいずれも本実施形態で用いることができる。そのような、バリエーションの例を図37及び38に示す。
【0086】
(仮想操作面の手前側の操作支援)
本実施形態では、操作者が空間上に仮想的に立体表示された仮想操作面を基準に、そこにあたかもタッチパネルのような入力機器が存在するかのように操作することにより、その操作内容を確実に判定しようとするものであるが、特に上述の第1実施形態のように仮想操作面を立体表示しない場合、操作者の一部である手または指などが仮想操作面に至るまで、つまり操作者が何らかの操作を実行しようと手または指を動かし始めてから、仮想操作面を押下するまでの間も操作支援することにより、さらに操作入力を容易に、より高精度に行うようにすることができる。
【0087】
基本的には、このような操作支援の原理は仮想操作面に対する操作者の部位、例えば手あるいは指の位置の動きにあわせて、三次元ディスプレイ111上に操作者がどのような操作をしようとしているかをビジュアルに表示させることにより、操作者を誘導して的確な操作入力を可能にするというものである。
【0088】
この点について、図20および21を参照して説明すると、本実施形態では予め操作者が一定の立ち位置で操作しうる場合は予め設定された、その立ち位置で仮想操作面への操作が適した位置に、あるいは操作者の立ち位置に合わせて適宜適当な位置に仮想操作面701を立体表示する。同様に図20に示すように、操作者820の適当な操作領域821を設定しておく。上述のとおり三次元ディスプレイ111には現在どのような操作が行われようとしているかを様々な形態で示すことにより、操作者が自己の操作を認識できるようにする。
【0089】
このような形態の1つについて図21を参照して説明すると、操作者はシステムに対し何らかの操作を行おうとする場合、本例では三次元ディスプレイ111に対し、腕2401を前後に動かすことにより、手あるいは指601の位置が変化するため、その様子を三次元ディスプレイ111に表示すると、突き出した指601が一定の位置まで来ると、そのとき三次元ディスプレイ111の画面上で指示された項目が実行される等、システムとして一定の処理が行われる。図21の例では、仮想操作面701に対する指601の位置(深さ)によってアイコンの大きさが変化するようになっており、仮想操作面に近づくほどアイコンが小さくなって操作者には自己の操作により一定の場所にフォーカスされていることが認識できるようになっている。そして、最もアイコンが小さくなった位置で、操作が確定し、それに応じた処理が実行される。
【0090】
以上の操作の結果、アイコンが三次元ディスプレイ111の画面2501上でどのように変化するかを示したのが図22である。図22を参照すると、三次元ディスプレイ111の画面2501には例えばテレビ番組表が立体表示されており、ある番組に関する操作を行おうとしている。このような状態で、例えば操作者が「設定変更」のメニューボタンを選択しようとする場合、操作者は上述のように三次元ディスプレイ111に向かって指601を突き出して選択しようとする。本実施形態では、指601が仮想操作面であるテレビ番組表に対し一定の距離まで近づくと、画面2501にアイコン2503が表示される。このアイコンは指の位置がまだ遠いため図21に示すアイコンのうち右の方にある比較的大きなものが表示される。操作者がさらに腕2401を伸ばすと、このアイコンは目標である選択項目「設定変更」に近づきつつ、小さくなり一定の大きさのアイコン2502のときに特別なアイコンとなり、指が仮想操作面を横切ると、指し示す位置の項目が選択されたと判定される。ここで、テレビ番組表は操作者にとって仮想操作面の位置に立体表示されるが、アイコンは必ずしも同じ位置に表示される必要はなく二次元表示とすることもでき、3D表示により適切な位置に配置することができる。
【0091】
このように、図22の例では、指601の位置に応じて画面2501に表示されるアイコンの大きさを変化させることにより、操作者は自己の動作がシステムでどのように認識されているかを把握することができ、仮想操作面の位置をより認識し易くして、メニューの選択などの操作を行うことができる。ここで、指601、腕2401を含む操作者全体及び各部位の位置や大きさは、操作者の全体像と同様三次元カメラを用いることにより抽出することができる。これにより画面内の物体は奥行きも含めて把握することができるから、これらの情報に基づき仮想操作面との距離や位置関係を算出することができる。ただし、本実施形態で使用する三次元カメラや位置の抽出、距離の算出などは本技術分野で知られたいずれの方法も用いることができるので、ここではその説明を省略する。
【0092】
ここで画面に表示されるアイコンは円形で操作者の動作に合わせて大きさが変化するが、これに限られず図23に示すように様々な形態のアイコンを用い、様々な変化をさせることができる。すなわち、図23を参照すると、(1)は指の形態のアイコンであり、上述の図22の例と同様に仮想操作面に近づくほどに小さくするようになっている。(2)は、円形で次第に小さくなるようになっているが、入力あるいは選択が確定すると特別な形状に変化して確定したことが示される。このアイコンや他のアイコンの場合も形状(大きさ、ディスプレイに対する角度を含む)の変化に代えて、あるいは合わせてアイコンの色を変化させることもできる。例えば、青、緑、黄、赤等、寒色系から暖色系に変化させることにより、直感的に操作がフォーカスされ確定することを操作者は認識することができる。(3)は、Xのような形状で、遠くにある場合は大きいだけでなくぼかしが入っており、近づくにしたがって、アイコンの大きさが小さくなるとともに、ぼかしが消えシャープな形状になる。(4)はアイコン全体の大きさは変化することなく、中に描かれた図形が形状変化を起こしてフォーカスされる様子を認識するようになっている。この場合、図形の色も変化させることができる。図23に示す(5)も、形状を変化させるものである。図23において、指の動きに応じてアイコンの形状や色などが変化していき、仮想操作面を越えるとその瞬間に、欄2601に示すように種々の形状や色に変化させたり、点滅させたりして操作として判定されたことを操作者に認識させるようにすることもできる。また、図示しないがこの他のアイコンの変化としては最初透明で、指が仮想操作面に近づくほどに不透明になるような変化も効果的である。さらに図示しないが、三次元ディスプレイの立体表示機能を利用してフォーカスしていくとアイコンが画面から飛び出すように見せるような画像を作成し、操作者にフォーカスの状況を知らせることもできる。
【0093】
ここで、アイコンのバリエーションのうち特に形状をあまり変化させず色や濃さを変化させる場合は、図24に示すようにアイコンはあまり移動せず指601を近づけていくと、色が暖色系になったり濃くなったりして、入力を確定することができる。
【0094】
また、以上の例では操作の判定状況を確認するためアイコンを仮想操作面の位置に表示させ、操作者の動作に応じて色や形状を変化させたが、例えば元々メニューのように予め指示する位置が固定されているような場合は、わざわざアイコンを表示しなくても、指が指し示す位置が立体表示されたメニューのどの項目ボタンに最も近いかにより決定し、指の動き、特に仮想操作面からの距離に応じて指し示されている項目ボタンを塗りつぶす色または塗りつぶす濃さを変化させることにより、仮想操作面の位置をより分かりやすくし、操作入力を容易にすることができる。
【0095】
同様なメニューの選択例としては、図26に示すような一例もあるので説明すると、例えば図21の指601が仮想操作面701の手前の一定の領域にはいると、画面上にメニュー4301が仮想操作面の位置に立体表示され、その指601がさらに仮想操作面701に近づくと、図26に示すメニューの例えば項目4302上に大きなアイコン2610が表示される。その後、仮想操作面701まで指601が到達すると、項目4302の選択が確定し小さいアイコン2611が表示されて、このことが通知される。その後、指601を左右上下に動かすことで、メニューの選択項目が移動して行き所望の項目で一定時間静止すると、選択された項目に応じた処理が行われるようにすることもできる。また、選択が実行される前に指601が仮想操作面701の手前の一定の領域より後方へ動かされるとメニューを消去するようにすることもできる。図31も、図26と同様に指601が仮想操作面701の手前の一定の領域にはいると、メニューを仮想操作面の位置に立体表示するが、ここではビデオ映像制御の例である。この例でも図26に示す例と同様に大きいアイコン3110および小さいアイコン3111によりメニューの操作が可能となる。
【0096】
さらに、別の入力操作の例を図25を参照して説明する。図25は、本実施形態により画面に表示された図形を移動させる指示を入力する一例の表示画面を示す図である。ここで、表示画面は仮想操作面の位置に立体表示されており、指示は操作者の手または指を仮想操作面に触れて動かすことにより行う。まず、指などを画面に近づけていくと画面4211のアイコン4201から画面4212のアイコン4202へとアイコンを縮小させて仮想操作面に接近していることを示す。その後、仮想操作面に触れると画面4213のアイコン4203のように例えば色を変化させて放置し、その状態で上に向けて指などを動かすと画面4214のラバーバンド4204などを表示させて移動方向を示すことにより、操作者が自己の操作を確認することができる。また、右方向に指を動かすと、画面4215のラバーバンド4205を表示することができる。このように、仮想操作面に指等が到達後の上下左右のドラッグ距離に応じて伸縮するラバーバンド(上図では矢印)を出現させ(アイコン4203の位置は仮想操作面から抜けるまで固定)、伸縮距離に応じて移動スピード、伸ばす角度に応じて3D空間内での移動する方向を変化させることができる(矢印先端が腕先や指先の動きに追随する)。
【0097】
以上、図20に示すような操作者とモニタとがほぼ同じ高さにある、すなわち仮想操作面が操作者の水平方向前面にほぼ垂直に形成される場合について、本実施形態の原理を説明してきたが、この原理はこのような操作者とディスプレイとの位置関係や形状には影響されることはなく、種々の配置や構成が可能である。例えば、図13ないし15に示すようなシステムの配置でも応用することができる。この場合、三次元カメラ201も三次元ディスプレイ111とともに傾いているので、基本的には上述の水平位置に配置された場合と大きな相違はないが、カメラを別な位置に設置したとしても、本技術分野で知られたいずれかの方法で位置補正などを行なうことで、操作者の部位と仮想操作面との位置関係を算出して、操作を判定することができる。
【0098】
以上の通り、本実施形態では第1実施形態で説明した仮想操作面に基づいて操作入力処理の前に、その仮想操作面自体を操作者の意志で設定するものであるため、設定処理についてのみ説明したが、一度仮想操作面が設定されれば第1実施形態のいずれの機能と組み合わせても、操作入力処理を実行することができる。
【0099】
(第3実施形態)
本実施形態は、基本的に上述の第1および第2実施形態で共通に用いることができるものであり、従ってシステム構成や仮想操作面の設定などの処理は同様であるが、操作の判定処理を改良したものである。すなわち、本実施形態では、第1および2実施形態とその処理は基本的に同じであるが、例えば仮想操作面を使用してアイコンを選択するときなど、特に小さいアイコンの場合指の押し込み方向を誤ると、適切にアイコンを指定できなかったり、別のアイコンを指定してしまったりするおそれがあるため、アイコンの周辺にグリッドを設定してグリッド吸着させ、所望のアイコンを指定しやすくするというものである。本発明のように仮想的に操作面を設定して操作の基準とする場合、第1及び2実施形態のように操作面の認識を確実にする様々な処理を盛り込んだとしても、操作者は常に正確な位置指定ができるわけではない。本実施形態では、操作者が多少誤った位置や方向でアイコンを指定、例えば図15に示す例のような場合に、操作面の傾きや位置などの調整がされていないときでも的確に所望のアイコンを選択できるようにすることができる。
【0100】
図39は、本実施形態にかかるグリッド吸着処理に用いられる対象画面の例を示す図であり、図40は、本実施形態にかかるグリッド吸着処理に用いられるグリッドの設定例を示す図である。図40に示すように、例えば各アイコンより大きく、アイコン3902を囲むようにグリッド4001を設定しておくことにより、操作者がアイコン3902を指で指そうとして正確にアイコン3902を押せなかった場合でも、アイコン3902を囲むグリッド4001の範囲に指が入ればグリッド吸着させて、アイコン3902が指されたものと判断することができる。さらに、グリッドの分割位置を調整する等して、アイコン間をさされたときに指された位置に最も近いアイコンを指されたと判定することもできる。
【0101】
具体的には、操作対象ディスプレイ上のアイコンやリンクの中心位置に対し、専用ブラウザやコンテンツ作成ツール等の手段により、一定面積の周囲からターゲット(アイコンやリンク)中心に向かって、フォーカスを吸着させる。これにより、選択操作を容易にすることができ、仮想操作面が傾斜していても、操作者の平面ポインティング動作に問題は生じない。上記である程度のXY平面上でのフォーカス動作の安定を得た後、ターゲット領域に対して仮想操作面からZ軸方向の押し込みストローク(空中タッチパネルへのタッチ操作)があった場合、押し込み動作後も該当ターゲットからフォーカスがずれないように(XYフォーカスを固定)ガイドを続け、Z方向の押し込みストロークのみを判定、すなわち仮想操作面からの押し込みでそのアイコンの領域から外れても、押し込まれたことのみを認識して、XY平面上の動きは無視して、その後の一連のタッチストローク操作を安定したものとして処理する。
【0102】
また、上記以外の補正としては、カメラ等の取付位置や角度が操作対象ディスプレイと大きく異なる場合、XY平面で任意に規定した吸着エリア(面積)をZ軸の奥行き方向に対して拡張・拡大(カメラやディスプレイの取付角度の違いによる「流れ」の角度分相当の面積)させることで、よりグリッド吸着を有効にすることもできる。
【0103】
図41を参照すると、二次元アイコンエリア「D」から操作進入があった場合、奥行き方向に進展させた立体エリア「E」より、手の先端の押し込みストロークが外れた場合であっても、そのままエリア「E」内にZ軸の押し込みストロークを吸着判定させる事で「ぶれ」(手の震えや安定動作が難しいために起因するもの)や「流れ」(カメラ、ディスプレイ、身長差に起因するもの)による誤動作を防止することができる。
【0104】
以上の通り、本実施形態では第1実施形態及び第2実施形態で説明した仮想操作面に基づいて操作判定処理の際、特にアイコン等操作者が一定の領域を指し示すような動作をした場合、様々な原因で正確な指定ができない場合に、グリッド吸着という手法で適切な操作を判定するものであるため、具体的なグリッド吸着処理についてのみ説明したが、それ以外の処理及び仮想操作面の設定等第1実施形態及び第2実施形態で説明したいずれの機能と組み合わせても、操作入力処理を実行することができる。
【特許請求の範囲】
【請求項1】
操作者の像を読取って立体画像データを生成する三次元撮像手段と、
前記三次元撮像手段により読取られた操作者の像及び位置に基づいた形状及び位置で仮想操作面を形成し、当該形成された仮想操作面を示す立体画像を表示する操作面立体表示手段と、
前記形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、前記三次元撮像手段で読取って、前記操作者の一部と前記仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定手段と、
前記動きが操作であると判定されると、所定の信号を出力する信号出力手段と
を備えたことを特徴とする画像認識装置。
【請求項2】
前記立体画像は、左右眼視差によることを特徴とする請求項1に記載の画像認識装置。
【請求項3】
前記仮想操作面の位置は、前記操作者と前記操作面立体表示手段との間のいずれかにあることを特徴とする請求項1または2に記載の画像認識装置。
【請求項4】
前記仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面をさらに備え、
前記操作判定手段は、前記操作者の一部が前記位置決定面から前記仮想操作面へ移動する一連の動作において前記仮想操作面を横切る際、前記位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして前記操作者の操作を判定することを特徴とする請求項1ないし3のいずれかに記載の画像認識装置。
【請求項5】
前記仮想操作面の形状および位置は、前記読取られた操作者の像から腕および顔の位置を抽出し、当該抽出した腕および顔の位置に基づいて決定することを特徴とする請求項1ないし4のいずれかに記載の画像認識装置。
【請求項6】
前記三次元撮像手段が複数の操作候補者を読み取った場合、予め定められた特定の動きをする操作候補者を前記操作者と判定することを特徴とする請求項1ないし5のいずれかに記載の画像認識装置。
【請求項7】
前記三次元撮像手段が読み取った複数の操作候補者の画像の示す、前記操作者と判定された操作候補者が現在の操作者と、他の操作候補者との位置関係を表示する操作者表示手段をさらに備えたことを特徴とする請求項6に記載の画像認識装置。
【請求項8】
前記操作者の一部と前記仮想操作面との位置関係から当該距離を算出して該距離に応じた位置に、前記操作者の一部の前記仮想操作面に対する位置関係を示す所定の標示を立体表示することを特徴とする請求項1ないし7のいずれかに記載の画像認識装置。
【請求項9】
操作者の像を読取って立体画像データを生成する三次元撮像手段と、
前記三次元撮像手段により読取られた操作者の像、及び前記操作者の予め定められた特定の動きに基づいて定められる位置および形状で、仮想操作面を形成する操作面形成手段と、
当該形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、前記三次元撮像手段で読取って、前記操作者の一部と前記仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定手段と、
前記動きが操作であると判定されると、所定の信号を出力する信号出力手段と
を備えたことを特徴とする画像認識装置。
【請求項10】
前記仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面をさらに備え、
前記操作判定手段は、前記操作者の一部が前記位置決定面から前記仮想操作面へ移動する一連の動作において前記仮想操作面を横切る際、前記位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして前記操作者の操作を判定することを特徴とする請求項9に記載の画像認識装置。
【請求項11】
前記三次元撮像手段が複数の操作候補者を読み取った場合、予め定められた特定の動きをする操作候補者を前記操作者と判定することを特徴とする請求項9または10に記載の画像認識装置。
【請求項12】
前記三次元撮像手段が読み取った複数の操作候補者の画像の示す、前記操作者と判定された操作候補者が現在の操作者と、他の操作候補者との位置関係を表示する操作者表示手段をさらに備えたことを特徴とする請求項11に記載の画像認識装置。
【請求項13】
操作者の像を読取って立体画像データを生成する三次元撮像ステップと、
前記三次元撮像ステップにおいて読取られた操作者の像及び位置に基づいた形状及び位置で仮想操作面を形成し、当該形成された仮想操作面を示す立体画像を表示する操作面立体表示ステップと、
前記形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、前記三次元撮像手段で読取って、前記操作者の一部と前記仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定ステップと、
前記動きが操作であると判定されると、所定の信号を出力する信号出力ステップと
を備えたことを特徴とする操作判定方法。
【請求項14】
前記操作判定ステップは、前記操作者の一部が前記仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から前記仮想操作面へ移動する一連の動作において前記仮想操作面を横切る際、前記位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして前記操作者の操作を判定することを特徴とする請求項13に記載の操作判定方法。
【請求項15】
操作者の像を読取って立体画像データを生成する三次元撮像ステップと、
前記三次元撮像ステップにおいて読取られた操作者の像、及び前記操作者の予め定められた特定の動きに基づいて定められる位置および形状で、仮想操作面を形成する操作面形成ステップと、
当該形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、前記三次元撮像手段で読取って、前記操作者の一部と前記仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定ステップと、
前記動きが操作であると判定されると、所定の信号を出力する信号出力ステップと
を備えたことを特徴とする操作判定方法。
【請求項16】
前記操作判定ステップは、前記操作者の一部が前記仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から前記仮想操作面へ移動する一連の動作において前記仮想操作面を横切る際、前記位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして前記操作者の操作を判定することを特徴とする請求項15に記載の操作判定方法。
【請求項17】
画像認識装置に、操作者の画像を認識して操作内容を判定する操作判定方法を実行させるプログラムであって、該操作判定方法は、
操作者の像を読取って立体画像データを生成する三次元撮像ステップと、
前記三次元撮像ステップにおいて読取られた操作者の像及び位置に基づいた形状及び位置で仮想操作面を形成し、当該形成された仮想操作面を示す立体画像を表示する操作面立体表示ステップと、
前記形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、前記三次元撮像手段で読取って、前記操作者の一部と前記仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定ステップと、
前記動きが操作であると判定されると、所定の信号を出力する信号出力ステップと
を備えたことを特徴とするプログラム。
【請求項18】
前記操作判定ステップは、前記操作者の一部が前記仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から前記仮想操作面へ移動する一連の動作において前記仮想操作面を横切る際、前記位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして前記操作者の操作を判定することを特徴とする請求項17に記載のプログラム。
【請求項19】
画像認識装置に、操作者の画像を認識して操作内容を判定する操作判定方法を実行させるプログラムであって、該操作判定方法は、
操作者の像を読取って立体画像データを生成する三次元撮像ステップと、
前記三次元撮像ステップにおいて読取られた操作者の像、及び前記操作者の予め定められた特定の動きに基づいて定められる位置および形状で、仮想操作面を形成する操作面形成ステップと、
当該形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、前記三次元撮像手段で読取って、前記操作者の一部と前記仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定ステップと、
前記動きが操作であると判定されると、所定の信号を出力する信号出力ステップと
を備えたことを特徴とするプログラム。
【請求項20】
前記操作判定ステップは、前記操作者の一部が前記仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から前記仮想操作面へ移動する一連の動作において前記仮想操作面を横切る際、前記位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして前記操作者の操作を判定することを特徴とする請求項19に記載のプログラム。
【請求項1】
操作者の像を読取って立体画像データを生成する三次元撮像手段と、
前記三次元撮像手段により読取られた操作者の像及び位置に基づいた形状及び位置で仮想操作面を形成し、当該形成された仮想操作面を示す立体画像を表示する操作面立体表示手段と、
前記形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、前記三次元撮像手段で読取って、前記操作者の一部と前記仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定手段と、
前記動きが操作であると判定されると、所定の信号を出力する信号出力手段と
を備えたことを特徴とする画像認識装置。
【請求項2】
前記立体画像は、左右眼視差によることを特徴とする請求項1に記載の画像認識装置。
【請求項3】
前記仮想操作面の位置は、前記操作者と前記操作面立体表示手段との間のいずれかにあることを特徴とする請求項1または2に記載の画像認識装置。
【請求項4】
前記仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面をさらに備え、
前記操作判定手段は、前記操作者の一部が前記位置決定面から前記仮想操作面へ移動する一連の動作において前記仮想操作面を横切る際、前記位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして前記操作者の操作を判定することを特徴とする請求項1ないし3のいずれかに記載の画像認識装置。
【請求項5】
前記仮想操作面の形状および位置は、前記読取られた操作者の像から腕および顔の位置を抽出し、当該抽出した腕および顔の位置に基づいて決定することを特徴とする請求項1ないし4のいずれかに記載の画像認識装置。
【請求項6】
前記三次元撮像手段が複数の操作候補者を読み取った場合、予め定められた特定の動きをする操作候補者を前記操作者と判定することを特徴とする請求項1ないし5のいずれかに記載の画像認識装置。
【請求項7】
前記三次元撮像手段が読み取った複数の操作候補者の画像の示す、前記操作者と判定された操作候補者が現在の操作者と、他の操作候補者との位置関係を表示する操作者表示手段をさらに備えたことを特徴とする請求項6に記載の画像認識装置。
【請求項8】
前記操作者の一部と前記仮想操作面との位置関係から当該距離を算出して該距離に応じた位置に、前記操作者の一部の前記仮想操作面に対する位置関係を示す所定の標示を立体表示することを特徴とする請求項1ないし7のいずれかに記載の画像認識装置。
【請求項9】
操作者の像を読取って立体画像データを生成する三次元撮像手段と、
前記三次元撮像手段により読取られた操作者の像、及び前記操作者の予め定められた特定の動きに基づいて定められる位置および形状で、仮想操作面を形成する操作面形成手段と、
当該形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、前記三次元撮像手段で読取って、前記操作者の一部と前記仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定手段と、
前記動きが操作であると判定されると、所定の信号を出力する信号出力手段と
を備えたことを特徴とする画像認識装置。
【請求項10】
前記仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面をさらに備え、
前記操作判定手段は、前記操作者の一部が前記位置決定面から前記仮想操作面へ移動する一連の動作において前記仮想操作面を横切る際、前記位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして前記操作者の操作を判定することを特徴とする請求項9に記載の画像認識装置。
【請求項11】
前記三次元撮像手段が複数の操作候補者を読み取った場合、予め定められた特定の動きをする操作候補者を前記操作者と判定することを特徴とする請求項9または10に記載の画像認識装置。
【請求項12】
前記三次元撮像手段が読み取った複数の操作候補者の画像の示す、前記操作者と判定された操作候補者が現在の操作者と、他の操作候補者との位置関係を表示する操作者表示手段をさらに備えたことを特徴とする請求項11に記載の画像認識装置。
【請求項13】
操作者の像を読取って立体画像データを生成する三次元撮像ステップと、
前記三次元撮像ステップにおいて読取られた操作者の像及び位置に基づいた形状及び位置で仮想操作面を形成し、当該形成された仮想操作面を示す立体画像を表示する操作面立体表示ステップと、
前記形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、前記三次元撮像手段で読取って、前記操作者の一部と前記仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定ステップと、
前記動きが操作であると判定されると、所定の信号を出力する信号出力ステップと
を備えたことを特徴とする操作判定方法。
【請求項14】
前記操作判定ステップは、前記操作者の一部が前記仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から前記仮想操作面へ移動する一連の動作において前記仮想操作面を横切る際、前記位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして前記操作者の操作を判定することを特徴とする請求項13に記載の操作判定方法。
【請求項15】
操作者の像を読取って立体画像データを生成する三次元撮像ステップと、
前記三次元撮像ステップにおいて読取られた操作者の像、及び前記操作者の予め定められた特定の動きに基づいて定められる位置および形状で、仮想操作面を形成する操作面形成ステップと、
当該形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、前記三次元撮像手段で読取って、前記操作者の一部と前記仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定ステップと、
前記動きが操作であると判定されると、所定の信号を出力する信号出力ステップと
を備えたことを特徴とする操作判定方法。
【請求項16】
前記操作判定ステップは、前記操作者の一部が前記仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から前記仮想操作面へ移動する一連の動作において前記仮想操作面を横切る際、前記位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして前記操作者の操作を判定することを特徴とする請求項15に記載の操作判定方法。
【請求項17】
画像認識装置に、操作者の画像を認識して操作内容を判定する操作判定方法を実行させるプログラムであって、該操作判定方法は、
操作者の像を読取って立体画像データを生成する三次元撮像ステップと、
前記三次元撮像ステップにおいて読取られた操作者の像及び位置に基づいた形状及び位置で仮想操作面を形成し、当該形成された仮想操作面を示す立体画像を表示する操作面立体表示ステップと、
前記形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、前記三次元撮像手段で読取って、前記操作者の一部と前記仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定ステップと、
前記動きが操作であると判定されると、所定の信号を出力する信号出力ステップと
を備えたことを特徴とするプログラム。
【請求項18】
前記操作判定ステップは、前記操作者の一部が前記仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から前記仮想操作面へ移動する一連の動作において前記仮想操作面を横切る際、前記位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして前記操作者の操作を判定することを特徴とする請求項17に記載のプログラム。
【請求項19】
画像認識装置に、操作者の画像を認識して操作内容を判定する操作判定方法を実行させるプログラムであって、該操作判定方法は、
操作者の像を読取って立体画像データを生成する三次元撮像ステップと、
前記三次元撮像ステップにおいて読取られた操作者の像、及び前記操作者の予め定められた特定の動きに基づいて定められる位置および形状で、仮想操作面を形成する操作面形成ステップと、
当該形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、前記三次元撮像手段で読取って、前記操作者の一部と前記仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定ステップと、
前記動きが操作であると判定されると、所定の信号を出力する信号出力ステップと
を備えたことを特徴とするプログラム。
【請求項20】
前記操作判定ステップは、前記操作者の一部が前記仮想操作面の操作者側の所定の位置に配置され、操作面上での操作位置を決定するための位置決定面から前記仮想操作面へ移動する一連の動作において前記仮想操作面を横切る際、前記位置決定面を横切ったときの位置に最も近い一定の距離内にあるアイコン領域を横切ったものとして前記操作者の操作を判定することを特徴とする請求項19に記載のプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図36】
【図37】
【図38】
【図39】
【図40】
【図41】
【図42】
【図43】
【図44】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図36】
【図37】
【図38】
【図39】
【図40】
【図41】
【図42】
【図43】
【図44】
【公開番号】特開2011−175617(P2011−175617A)
【公開日】平成23年9月8日(2011.9.8)
【国際特許分類】
【出願番号】特願2010−199368(P2010−199368)
【出願日】平成22年9月6日(2010.9.6)
【出願人】(591282205)島根県 (122)
【Fターム(参考)】
【公開日】平成23年9月8日(2011.9.8)
【国際特許分類】
【出願日】平成22年9月6日(2010.9.6)
【出願人】(591282205)島根県 (122)
【Fターム(参考)】
[ Back to top ]