説明

画像認識装置および操作判定方法並びにプログラム

【課題】的確な操作の判定を可能にすること。
【解決手段】画像読取部301においてビデオカメラ201で撮影されたデータを読取り(S401)、そのデータから操作者の像を、画像抽出部302により抽出する(S402)。このような準備の結果、抽出した操作者102の画像に基づいて仮想操作面および操作領域を形成する(S403)。大人の操作者810については、身長(視線の位置)や腕の長さを考慮して操作領域811のように形成することができるし、子供の操作者820の場合、身長もより低くなり、腕も短くなるので、これにあわせて操作領域821を設定することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像認識装置および操作判定方法に関し、より詳細には、ビデオカメラ等により撮影した画像から測定対象の動作の判定を行う画像認識装置および操作判定方法に関する。
【背景技術】
【0002】
近年、コンピュータや電子機器と人間とのインタフェース、すなわちマンマシンインタフェースとして様々な機器、手法が提案されており、特にゲーム機や操作ガイド機器などではカメラで操作者全体、あるいは一部を撮影し、その画像に応じて操作者の意志を判断して動作する技術が提案されてきている。例えば、特許文献1には、CCDカメラで撮像した画像中の物体の形状、動きを認識するホストコンピュータと、ホストコンピュータによって認識した物体の形状、動きを表示するディスプレイとを備え、CCDカメラにユーザが向い、手振り等によって指示を与えると、与えた手振りがディスプレイの表示画面上に表示され、表示画面上に表示した仮想スイッチ等を手振りによって矢印カーソルのアイコンで選択でき、マウス等の入力装置を必要とせず、非常に簡便な機器の操作が可能となる技術が提案されている。
【0003】
最近ではさらに、手指の動きや形状を撮像した画像から、ある種のジェスチャとして認識して、操作入力をする入力システムも提案されている。例えば、ジェスチャによる画面操作でのプレゼンテーションや、タッチパネルを必要としない非接触キオスク端末に用いることができる入力装置において、大画面に向き合った操作者は、通常画面下部の位置に設置されたカメラに向けて種々の操作を行うと、その内容が大画面に映し出される。このように撮影された画像から操作者の形状、動きを、本技術分野で知られた方法により抽出し、例えば予め定められ、データベースに格納されたパターンと比較することにより、操作者の形状、動きの意味を判定し機器の制御に用いる。
【0004】
一方、操作者の画像の読み取り技術としては、図13に示すように、三次元または立体対応のカメラで操作者を撮影し、立体画像を再現することも可能となっており、セキュリティチェックなどの用途に用いられている。立体画像を再現することにより、操作者の動きを立体的に把握することができ、例えば操作者の、特に手の動きが前後にも認識できるため、二次元画像を用いたものに比べジェスチャのバラエティが増大する。また、複数の操作者が画像として抽出されても、多人数であれば立体画像であるため前後関係がわかり、一番前の操作者の動きのみ抽出し、操作の入力に使用することもできる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2004−078977号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、従来のジェスチャ操作はデファクトスタンダードといった何らかの標準的なジェスチャが確立されておらず、人差し指でのXY座標のポインティング操作以外はユーザがどのような動作で何ができるのかが直感的に認識できない。「クリック」、「ダブルクリック」、「ドラッグ」等・・・、クリック操作を何秒間かのウェイト時間の間座標に固定することで指示するものはあるが、設定されたウェイト時間が長すぎる等により快適な操作を阻害することも少なくない。したがって、クリックや決定(ダブルクリック等)などの操作をわかり易く、かつ快適にする現実的な手法がないという問題がある。
【0007】
また、従来のジェスチャ検出装置は、タッチパネルといった直接操作者が触れることができる入力装置とは異なり、操作者の明確な意思を汲み取りにくい。すなわち、そもそも操作者が何らかの動作を行っても、それが入力を意図したものなのか、単に癖で動いてしまったのか判定することが容易ではないという問題がある。この結果、例えば単純なジェスチャを不自然に目立つ形で行わなければ認識できず、またジェスチャについての事前の取り決めが必要だったり、複雑なジェスチャは使用できなかったりという問題がある。
【0008】
本発明は、このような問題に鑑みてなされたもので、操作者に何らかの入力につながる操作をしている状態にあることを認識させた上で装置に対し動作させることにより、的確な操作の判定を可能にする画像認識装置および操作判定方法を提供することを目的とする。この結果、操作に習熟していない特殊なジェスチャを覚えることなく、身体全体あるいは一部を動作させることにより、操作者の意志を的確に示す操作として判定することが可能になる。
【課題を解決するための手段】
【0009】
このような目的を達成するために、画像認識装置であって、請求項1に記載の発明は、操作者の像を読取って立体画像データを生成する三次元撮像手段と、三次元撮像手段により読取られた操作者の像に基づいて、仮想操作面を形成する操作面形成手段と、形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、三次元撮像手段で読取って、操作者の一部と仮想操作面との位置関係に基づいて動きが操作であるか否かを判定する操作判定手段と、動きが操作であると判定されると、所定の信号を出力する信号出力手段とを備えたことを特徴とする。
【0010】
請求項2に記載の発明は、請求項1に記載の画像認識装置において、操作者が所定の空間上の仮想操作面を把握するよう設けられた操作者に知覚可能な、撮像手段の撮像範囲内に予め配置された操作面形成基準をさらに備え、操作面形成手段は、三次元撮像手段により読取られた操作者の像および操作面形成基準に基づいて、仮想操作面を形成することを特徴とする。
【0011】
請求項3に記載の発明は、請求項2に記載の画像認識装置において、操作面形成手段は、操作面形成基準の位置により一定の操作面を形成し、三次元撮像手段により読取られた操作者の像により形成された一定の操作面を補正して、仮想操作面を形成することを特徴とする。
【0012】
請求項4に記載の発明は、請求項2または3に記載の画像認識装置において、仮想操作面は、操作面形成基準から上方に投射した面であることを特徴とする。
【0013】
請求項5に記載の発明は、請求項2または3に記載の画像認識装置において、操作面形成基準の操作者側であって、操作者の移動を一定の範囲内に制限する動作制限手段をさらに備えたことを特徴とする。
【0014】
請求項6に記載の発明は、請求項2ないし5のいずれかに記載の画像認識装置において、操作面形成基準は、操作者が載る床面に示されていることを特徴とする。
【0015】
請求項7に記載の発明は、請求項2ないし5のいずれかに記載の画像認識装置において、操作者と三次元撮像手段との間に配置された立体物をさらに備え、操作面形成基準は、立体物の所定の外縁であることを特徴とする。
【0016】
請求項8に記載の発明は、請求項2ないし7のいずれかに記載の画像認識装置において、操作面形成基準は、読取られた画像からの抽出が容易になるように三次元撮像手段に撮像される所定の面にマーカを有することを特徴とする。
【0017】
請求項9に記載の発明は、請求項1に記載の画像認識装置において、操作者の移動を制限する移動制限手段をさらに備え、操作面形成手段は、移動制限手段の位置または形状および三次元撮像手段により読取られた操作者の像に基づいて、仮想操作面を形成することを特徴とする。
【0018】
請求項10に記載の発明は、請求項1ないし9のいずれかに記載の画像認識装置において、操作判定手段は、操作者の一部が仮想操作面よりも三次元撮像手段側にあるとき操作であると判定することを特徴とする。
【0019】
請求項11に記載の発明は、請求項1ないし9のいずれかに記載の画像認識装置において、操作判定手段は、操作者の一部の、仮想操作面よりも三次元撮像手段側にある部分の形状または動きによりいずれの操作が行われているかを判定することを特徴とする。
【0020】
請求項12に記載の発明は、請求項11に記載の画像認識装置において、操作判定手段は、予め操作者の一部の形状または動きと対応付けた操作内容を格納する記憶手段を検索して、合致する形状または動きに対応する操作を、入力する操作と判定することを特徴とする。
【0021】
請求項13に記載の発明は、請求項1ないし12のいずれかに記載の画像認識装置において、操作者と対面して配置された画像表示手段をさらに備え、操操作判定手段は、操作者が操作の判定結果を認識できるように、画像表示手段に現時点の操作判定結果を表示させることを特徴とする。
【0022】
請求項14に記載の発明は、請求項1ないし12のいずれかに記載の画像認識装置において、操作者と対面して配置された画像表示手段をさらに備え、仮想操作階層の領域内で操作者の動きが読取られると、画像表示手段に仮想操作階層に予め割当てられた標示を表示することを特徴とする。
【0023】
請求項15に記載の発明は、請求項1ないし12のいずれかに記載の画像認識装置において、操作面形成手段により形成される仮想操作面に対し、三次元撮像手段の反対側における操作者の一部と仮想操作面との位置関係から距離を算出して距離に応じ変化する標示を表示させて、判定しようとする操作を示す操作者が視認可能な画像表示手段を備えたことを特徴とする。
【0024】
請求項16に記載の発明は、請求項1ないし15のいずれかに記載の画像認識装置において、仮想操作面との位置関係に基づいて定められる2つ以上の仮想操作階層のいずれかの領域内で操作者の動きが読取られると、仮想操作階層に予め割当てられた操作種別および仮想操作階層内での操作者の動きに基づいて操作の内容を決定する操作内容決定手段を備えたことを特徴とする。
【0025】
請求項17に記載の発明は、画像認識装置によって、操作者の画像を認識して操作内容を判定する操作判定方法であって、操作者の像を読取って立体画像データを生成する三次元撮像ステップと、三次元撮像手段により読取られた操作者の像に基づいて、仮想操作面を形成する操作面形成ステップと、形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、三次元撮像手段で読取って、操作者の一部と仮想操作面との位置関係に基づいて動きが操作であるか否かを判定する操作判定ステップと、動きが操作であると判定されると、所定の信号を出力する信号出力ステップとを備えたことを特徴とする。
【0026】
請求項18に記載の発明は、画像認識装置に、操作者の画像を認識して操作内容を判定する操作判定方法を実行させるプログラムであって、操作判定方法は、操作者の像を読取って立体画像データを生成する三次元撮像ステップと、三次元撮像手段により読取られた操作者の像に基づいて、仮想操作面を形成する操作面形成ステップと、形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、三次元撮像手段で読取って、操作者の一部と仮想操作面との位置関係に基づいて動きが操作であるか否かを判定する操作判定ステップと、動きが操作であると判定されると、所定の信号を出力する信号出力ステップとを備えたことを特徴とする。
【図面の簡単な説明】
【0027】
【図1】本実施形態の操作入力システムの一例を示す図である。
【図2】本実施形態の操作入力システムのコンピュータとの関係を模式的に示すブロック図である。
【図3】本実施形態のコンピュータのCPU内で処理されるプログラムの機能モジュールの一例を示すブロック図である。
【図4】本実施形態の処理のフローチャートである。
【図5】本発明の一実施形態にかかる操作面形成基準により形成される仮想的な操作面の様子を示す図である。
【図6】本発明の一実施形態にかかる操作面形成基準により形成される仮想的な操作面の様子を示す図である。
【図7】従来の3Dカメラを用いた複数の操作者の画像取り込んだ場合の画像の一例を示す図である。
【図8】本発明の一実施形態にかかる操作入力支援の操作領域設定の一例を示す図である。
【図9】本発明の一実施形態にかかる画面またはカメラの位置による操作領域の調整の一例を示す図である。
【図10】本発明の一実施形態にかかる画面またはカメラの位置による操作領域の調整の別の例を示す図である。
【図11】本発明の一実施形態にかかる画面またはカメラの位置による操作領域の調整の別の例を示す図である。
【図12】本発明の一実施形態にかかる画面またはカメラの位置により操作領域を調整する方法を説明するための図である。
【図13】従来の3Dカメラを用いた操作者の画像取り込み方法を示す図である。
【図14】本発明の一実施形態のマーカに基づく仮想操作面を用いた操作入力システムの一例を示す図である。
【図15】本発明の別の一実施形態にかかる操作入力方法の具体的な操作の一例を示す図である。
【図16】本発明の一実施形態にかかる画面またはカメラの位置による操作領域の調整の一例を示す図である。
【図17】本発明の一実施形態にかかる操作入力支援の具体的な表示の一例を示す図である。
【図18】本発明の一実施形態にかかる仮想的な操作面および操作領域の様子を示す図である。
【図19】本発明の一実施形態にかかる操作者の動きと画面に表示されるアイコンとの関係を示す図である。
【図20】本発明の一実施形態にかかる操作入力画面の具体的な表示の一例を示す図である。
【図21】本発明の一実施形態にかかる操作入力画面で使用可能な種々のアイコンの例を示す図である。
【図22】本発明の一実施形態にかかる操作者の動きと画面に表示されるアイコンとの関係を示す図である。
【図23】本発明の一実施形態にかかる操作入力画面のメニューボタンの色の変化する様子を示す図である。
【図24】本発明の一実施形態にかかる操作入力画面のメニューボタンの濃淡の変化する様子を示す図である。
【図25】本実施形態により画面に表示された図形を移動させる指示を入力する一例の表示画面を示す図である。
【図26】本発明の一実施形態にかかる操作者の動きと画面に表示されるメニューとの関係を示す図である。
【図27】本発明の別の一実施形態にかかる操作者の動きと画面に表示されるメニューとの関係を示す図である。
【図28】本発明のさらに別の一実施形態にかかる操作者の動きと画面に表示されるメニューとの関係を示す図である。
【図29】本発明の一実施形態にかかる仮想操作面および操作面形成基準の様子を示す図である。
【図30】本発明の一実施形態にかかるプロジェクタによる画面またはカメラの位置による操作領域の調整の一例を示す図である。
【図31】本発明の一実施形態にかかる操作者の動きと画面に表示されるメニューとの関係を示す図である。
【発明を実施するための形態】
【0028】
以下、図面を参照しながら本発明の実施形態について詳細に説明する。
(第1実施形態)
図1は、本実施形態の操作入力システムの一例を示す図である。本実施形態のモニタ111は、操作者102の前面に配置され、操作者102は、モニタ111との間の一定の位置に仮想的な操作面があると考えて、指などの形状が操作判定の対象になることを意識して操作入力システムに対し操作を行うことができる。モニタ111には、本システムが目的とする様々なアプリケーション用の種々の映像が表示されるが、これに加え後述するように操作入力を支援、すなわち例えば対象となる操作者102の部位などを画面の隅の方に表示して、操作者102に、現時点で操作として判定されうる動作を認識させることができる。操作者102の動きはビデオカメラ201により撮影され、撮影された映像はコンピュータ110で処理され、操作者102の位置、身長および腕の長さなどにより、あるいは身長や肩幅等の身体寸法情報により最適な仮想操作面およびこれを含む操作領域の位置および大きさを設定し、仮想操作面からモニタ111側に出た部分のジェスチャがどのような操作を意味するかを判定する。すなわち、コンピュータ110は、ビデオカメラ201から得られたデータから、操作者102の立体画像を作成するとともに、仮想操作面の位置を算出し、さらに後述するビデオカメラ201やモニタ111の位置や配置態様により仮想操作面の位置および大きさなどを調整し、仮想操作面を基準に操作者102の手指などがビデオカメラ201側に出ているか否かを決定し、その部分を操作の対象として操作内容を判定する。
【0029】
図1では、画像を取得するためにビデオカメラ201をモニタ111の上部に取りつけ撮影しているが、図8ないし12のように必要な画像が得られればこれに限られることなく、赤外線カメラ等、本技術分野で知られたいずれの撮像手段を用いることもでき、設置場所もモニタの付近の何処を選択することもできる。ここで、本実施形態ではビデオカメラ201として三次元(あるいは3D)カメラを用いることにより、操作者を含め立体画像が作成できるようにする。
【0030】
さらに、本実施形態のシステムには図示しないスピーカ等の音声出力装置を取り付けられており、表示内容や操作に関する情報を音声で操作者に伝えることもできる。このような機能を設けることにより、ディスプレイに操作内容を画像で表示するだけではなく、指示事項や結果について、同時に音声で流すことで仮想操作面が判るため、視覚障害のある操作者でも操作することが可能になる。
【0031】
図5および6は、仮想操作面の役割を具体的に説明するための図である。本実施形態の仮想操作面701は、操作者102の身長や腕の長さ、あるいは身長や肩幅等の身体寸法情報に基づいて設定され、ユーザ102は、自分が自然な形で腕を伸ばしたところに操作面701が仮想的に存在すると捉え、種々の操作をしようとする場合は操作面701を基準に手601を前に突き出してジェスチャを示したりすることができる。また、仮想操作面を含む操作領域でのユーザが任意のポーズを取った後に、仮想操作面の前方へ押し出す(決定)動作でアクションを決定したり、操作を決定してから押し出すという判断の基準としたりすることができるため、ユーザが認知しやすく、操作性は従来のタッチパネル操作に近いものとなる。一方、操作バリエーションは、従来のタッチパネルより圧倒的に増える(両手操作や、振舞、複数指等)。
【0032】
本実施形態で、図5および6に示すような仮想操作面701は、カメラ201が操作者102の像を捉えるとリアルタイムで形成されるようになっているが、操作者が操作を開始するまでは、操作者の立位置が一定しないため、仮想操作面が定まらず操作判定も容易ではない。そこで、本実施形態では、操作者の身体が三次元カメラの撮像範囲内で一定時間静止したタイミングで仮想操作面の設定処理を開始する。
【0033】
このように本実施形態の仮想操作面の形成はリアルタイムで行うことができるが、この場合でも、何らかの方法で操作者の立位置を、そのシステムにとって最適な一定の範囲に制限することによって、操作判定をより正確にすることができる。例えば、図示しないが床面に立位置を示す足形を描いておくとか、モニタやシステムの配置により操作者に一定の制限範囲の存在を認識させたり、衝立を立てたりして一定範囲内で操作を行うようにさせることもできる。操作者が自然に認識できる仮想操作面の位置や大きさなどは、操作者とモニタとの位置関係に大きく影響され、システム全体でモニタ、カメラ、操作者の位置などは予め想定しておいた方が良いことから、このように制限することにより操作者は概ね仮想操作面が存在する位置を推測して操作を行うことができる。
【0034】
また、図7に示すように、本実施形態において操作対象者が複数存在、すなわち複数の人物がカメラ201により読み取られる場合、そのうちから例えば最前列にいる者710を操作者102と特定して仮想操作面を形成する。もちろん、複数者のうちのいずれを操作者102として選択するかは、システムに応じて種々定めることができるが、最前面の優先ユーザ以外には、操作領域を提供しないことで、誤動作や誤入力を防止できる(シングル入力の場合)。
【0035】
図2は、本実施形態の画像認識装置のコンピュータ110の構造を模式的に示すブロック図である。コンピュータ110には、モニタ701に取り付けられ、操作者102などを撮影するビデオカメラ201が接続され、撮影した画像がコンピュータ110に取り込まれる。撮影により得られた画像は、CPU210において本実施形態の特徴である画像の抽出、位置の算出などが行われ、算出した位置に基づいて操作面からビデオカメラ側に身体の一部が出たかどうかを決定する。コンピュータ110は、一般にCPU210を備え、ROM211等に記憶されたプログラムをRAM212上で実行して、画像認識装置から入力した画像に基づいた処理結果をモニタ111等に出力する。本実施形態では、モニタ111は、主に操作者が体験しようとする様々なアプリケーションにより提供される種々の映像を出力するものだが、後述するように操作入力の支援となるような情報も表示する。
【0036】
図3は、本実施形態のコンピュータ110のCPU210内で処理されるプログラムの機能モジュールの一例を示すブロック図である。図3に示すように、本システムにおける処理は、画像読取部301、画像抽出部302、画像位置算出部303および操作判定部304により実行される。なお、本実施形態では、ビデオカメラ201からの画像を受取ってからデータの出力を行うまでの処理を4つのモジュールにより実行するがこれに限られることなく、その他のモジュールを用い、あるいはより少ないモジュールで処理することもできる。
【0037】
(本実施形態の処理)
本実施形態では、図6に示すように、ビデオカメラ201で撮影された操作者102の像に基づいて仮想操作面を形成し、同じく撮影した操作者102の一部である手や指の位置を定めるとともに、仮想的な操作面701と操作者102の手指601との位置関係を算出する処理を行う。本実施形態では、このような処理を行う前提として、本技術分野で知られた初期設定、例えば本実施形態の画像認識装置が新たに設置された場合を想定すると、事前準備として利用するビデオカメラ201の利用レンズの歪み、モニタ111とレンズとの距離等の情報を装置に入力しておく必要がある。さらに閾値設定等を予め調整しておく。システムの初期設定が終了すると、本実施形態の処理を行うこととなるが、この処理については図4を参照して以下に説明する。
【0038】
図4は、本実施形態の処理のフローチャートである。まず、画像読取部301においてビデオカメラ201で撮影されたデータを読取り(S401)、そのデータから操作者の像を、画像抽出部302により抽出する(S402)。
【0039】
このような準備の結果、抽出した操作者102の画像に基づいて仮想操作面および操作領域を形成する(S403)。ここで、操作面の形状は図8などを参照すると床面から垂直に立てた長方形となっているが、これに限られず、操作者の操作態様に応じて様々な形状、大きさの操作面を形成することができる。
【0040】
ここで、操作領域とは本実施形態の特徴である仮想操作面を含み、操作者の操作の主体となる手や指などが主に動かされる領域であり、後述する仮想操作面に至るまでの支援で説明するように、操作者の胴体から仮想操作面を越えた一定の領域が本願発明の操作認識のために用いられる。例えば、図8に示すように大人の操作者810については、身長(視線の位置)や腕の長さを考慮して操作領域811のように形成することができるし、子供の操作者820の場合、身長もより低くなり、腕も短くなるので、これにあわせて操作領域821を設定することができる。このような操作領域の中に仮想操作面を設定すれば、操作者が自然に手や指を動かすことにより、手や指の動きで操作者が意図している操作を判定することができるようになる。
【0041】
より具体的には、例えば、奥行きは、操作者が前方に手を伸ばした指先まで、横幅は、操作者が真横に手を伸ばした場合の左右手首の長さまで、高さは、操作者の頭の位置から腰の位置までの範囲とすることができる。また、本実施形態のシステムの対象者を小学校低学年から成人とした場合、身長の幅はおおよそ100cmないし195cm程度までになり、その身長差として操作領域または仮想操作面の上下位置の補正幅は、約100cm必要となる。
【0042】
なお、仮想操作面、操作領域は、その都度実行することもできるし、一定の条件のもと実行するようにすることもでき、あるいはこれらの設定タイミングを予めあるいはその都度選択することもできる。
【0043】
操作判定部304は、操作入力システムの形成された仮想操作面と、操作者102との相対関係を用い(S404)、操作者102の一部が操作面のビデオカメラ201から見て手前に来ると、操作が開始されたと判断し(S405)、各部の形状(手を開いている、あるいは指を2本立てているなど)や動きから、その形状、動きが予め想定されたいずれの操作であるかを判定する(S406)。ここで、どのような形状、動きがどのような操作に対応するかは、システム独自に取り決めることもできるし、本技術分野で知られたいずれかの手法を取り入れて決定することもできる。判定した結果は、そのような操作の入力があったものとしてコンピュータ110で実行され(S407)、もともと仮想操作面から手前側に手が出ていない場合、操作は行われていないと判定して終了する(S408)。操作内容の判定はここで説明した手法に限られることなく本実施形態で知られたいずれの方法も用いることができる。また、具体的な判定方法も省略したが、一般には予め定めたジェスチャなどの操作者の身体の形状、動きと、それが意味する操作内容とをデータベース等に格納しておいて、画像抽出後、このデータベースにアクセスして、操作内容を判定する。この際にももちろん、画像認識技術や人工知能などを本技術分野で知られた手法により利用し、判定精度を向上させることもできる。
【0044】
ここで、操作者が子供の場合と大人の場合とで、仮想操作面をどの位置にどの程度の大きさで形成するかが変わることが理解されるが、さらに操作者の身長などの体形の差に加え、カメラ201の位置やモニタ111の位置や取付角度によっても、仮想操作面を調整する必要がある。通常、三次元カメラは、CCDやレンズ面に対して平行か、同心円状に対象物までの距離計測を行うことができる。モニタが操作者の目線の高さに設置され、カメラが近接した位置にあり、それぞれが床面に垂直設置の場合、操作者も立位であれば適正操作領域を生成する上で、相互の位置関係等、特に調整や補正の必要は無いと言える。しかし、天井つり下げ型モニタの場合や超大型モニタあるいはプロジェクタ等を利用する場合、カメラ設置位置やモニタおよび操作者との位置関係は、様々な状況が想定される。
【0045】
一般に、操作者は操作対象画面を見ながら入力操作を行うので、常に操作者の目線と操作対象画面とを結ぶ直線に垂直に仮想操作面を配置し、それに沿った操作領域を生成しなければ、操作者のZ方向への押し込みストロークの角度が不一致を起こし、操作者が狙ったポイントへの押し込み操作をしても、押し込みに伴い、いずれかの角度に沿って流れてしまい正常な操作ができなくなることになる。したがって、仮想操作面を形成する場合は、モニタ、カメラおよび操作者の位置、配置態様に応じて形成する角度、大きさ、あるいは場合により位置を調整する必要がある。
【0046】
図9を参照すると、図8に示したように操作者820に合わせて操作領域821および仮想操作面601が定められるが、図9に示す例のようにカメラ201がモニタ111の上部に配置された場合、仮想操作面601は、操作者820が腕を伸ばす方向910に垂直でなければ操作者820は仮想操作面に対する良好な操作感が得られないから、カメラ201の視野方向に垂直な平面にはならない。
【0047】
また、図10を参照すると、モニタ111自体が上方に設置され、しかも角度をもって取り付けられているため、仮想操作面701は、操作者820がモニタ111を見上げて操作できるように、上方への傾きを持つ方向1010に垂直な面になる。この場合も、図9に示す例と同様にカメラ201の視野1011は視線方向1010と一定の角度をもって傾いているため、カメラ201で読取った情報を傾いた仮想操作面701に合わせるよう補正する必要がある。さらに、図11を参照すると、カメラ201がモニタ111から離れ床の近くに置かれていて、操作者820の視線1110とカメラ201の視野とは、より大きな角度が付くため、その分の補正が必要である。
【0048】
図12は、仮想操作面701および操作領域821を定める一例を説明するための図である。本実施形態では、仮想操作面を形成するために、モニタ111およびカメラ201の位置、設置方法(どの程度の角度で設置されているかなど)、操作者820の立ち位置、身長などの情報を用いる。すなわち、一例としては先ず、操作者820のモニタ111に対する目の高さ(身長)、立ち位置から操作者の視線に垂直な仮想操作面701を算出する。次に操作者820の頭と胴体とを結ぶ線A−Bと、カメラ201の視野の中心線1210の角度を測定し、仮想操作面および操作領域の傾きを補正する。腕のストロークは、操作者の像から抽出しても良いし、得られた身長の情報から、別途身長ごとの平均的な腕の長さの情報から定めてもよい。あるいは、後述する第2実施形態の操作面形成基準と同様のマーカなどを用いて、仮想操作面の位置、大きさ、角度などを設定することもできる。例えば、システムを設置する段階で、マーカの付された台やガードバーなどを最適な位置に置いてカメラで撮像し、これらの撮像されたマーカの位置により仮想操作面の設定を行い、実際に使用するときは、最初に置いた台やガードバーは取り去って、操作者の体形等により補正をかけて仮想操作面および操作領域を形成することができる。
【0049】
本実施形態の仮想操作面および操作領域は、以上の通りカメラ、モニタおよび操作者の位置、配置態様などに基づいて、自然な操作とより容易な操作判定が可能なように定められ、実際の操作者の動きを検出して、いずれの操作が行われているかが判定される。ただし、ここで説明をしない具体的な処理、例えば三次元カメラの像からどのように位置や形状を特定するか、操作者の一部が仮想操作面を通ったか否かの判定処理など、本実施形態の実装に際して必要な処理は、本技術分野で知られたいずれの方法を用いても達成することができる。
【0050】
(操作入力の支援)
以上説明したように、単に三次元ビデオカメラにより仮想操作面を形成するだけで、操作者は空間上にタッチパネルのような操作面を認識することができ、この操作面に対し、種々の操作を行うことにより、身体の全部または一部を用いた操作入力が可能となるが、さらに仮想的な操作面に対する操作者の映像をモニタ111に表示する等、操作入力を支援することにより、より容易に本実施形態のシステムを活用することができる。
【0051】
図17は、このような操作入力の支援となるガイダンスをモニタ111に表示している一例を示す図である。例えば、モニタ111の中心部に表示されている画像のどこかをポインタで指し示す場合、操作者は仮想的操作面を表示された画像と重ね合わせて、手指を突き出すことにより所望の場所を指し示すことができるが、そのように指し示す様子を図17に示すポインタ901のように表示することにより、操作者は現在行われている操作を認識し確認しながら、次の操作を実行することができる。この例で言うと、たとえば、ポインタ901は、操作面から手指を突き出すと画面に表示され、引っ込めると消える、あるいは濃淡をつけて表示するようになっており、手の動きとモニタ111に表示されるポインタの様子から、操作者は自然な形で、本実施形態の入力法を実行することができるのである。同様に操作者自身の様子を図5および6に示したような形で表した操作画面902を、モニタ111の右上隅に小さく表示させて現在どのような動きをして、システムではどのような操作と判定されているかを表示することができ、また、手の動きをグラフ化した折線グラフ903を示して、手の前後の動きがどうなっているかを操作者自身に意識させる等により、より的確な操作が期待できる。また、図示しないが、システムで使用することができるジェスチャをガイダンスに表示して、それに倣って操作入力をするよう操作者に促すようにして支援することもできる。
【0052】
(仮想操作面の手前側の操作支援)
本実施形態では、操作者が空間上に仮想的に形成された仮想操作面を基準に、そこにあたかもタッチパネルのような入力機器が存在するかのように操作することにより、その操作内容を確実に判定しようとするものであるが、操作者の一部である手または指などが仮想操作面に至るまで、つまり操作者が何らかの操作を実行しようと手または指を動かし始めてから、仮想操作面を押下するまでの間も操作支援することにより、さらに操作入力を容易に、より高精度に行うようにすることができる。
【0053】
基本的には、このような操作支援の原理は仮想操作面に対する操作者の部位、例えば手あるいは指の位置の動きにあわせて、モニタ111上に操作者がどのような操作をしようとしているかをビジュアルに表示させることにより、操作者を誘導して的確な操作入力を可能にするというものである。
【0054】
この点について、図18および19を参照して説明すると、本実施形態では予め操作者が一定の立ち位置で操作しうる場合は予め設定された、その立ち位置で仮想操作面への操作が適した位置に、あるいは操作者の立ち位置に合わせて適宜適当な位置に仮想操作面701を形成する。同様に図18に示すように、操作者820の適当な操作領域821を設定しておく。上述のとおりモニタ111には現在どのような操作が行われようとしているかを様々な形態で示すことにより、操作者が自己の操作を認識できるようにする。
【0055】
このような形態の1つについて図19を参照して説明すると、操作者はシステムに対し何らかの操作を行おうとする場合、本例ではモニタ111に対し、腕2401を前後に動かすことにより、手あるいは指601の位置が変化するため、その様子をモニタ111に表示すると、突き出した指601が一定の位置まで来ると、そのときモニタ111の画面上で指示された項目が実行される等、システムとして一定の処理が行われる。図19の例では、仮想操作面701に対する指601の位置(深さ)によってアイコンの大きさが変化するようになっており、仮想操作面に近づくほどアイコンが小さくなって操作者には自己の操作により一定の場所にフォーカスされていることが認識できるようになっている。そして、最もアイコンが小さくなった位置で、操作が確定しそれに応じた処理が実行される。
【0056】
以上の操作の結果、アイコンがモニタ111の画面2501上でどのように変化するかを示したのが図20である。図20を参照すると、モニタ111の画面2501には例えばテレビ番組表が表示されており、ある番組に関する操作を行おうとしている。このような状態で、例えば操作者が「設定変更」のメニューボタンを選択しようとする場合、操作者は上述のようにモニタ111に向かって指601を突き出して選択しようとする。本実施形態では、指601が仮想操作面に対し一定の距離まで近づくと、画面2501にアイコン2503が表示される。このアイコンは指の位置がまだ遠いため図19に示すアイコンのうち右の方にある比較的大きなものが表示される。操作者がさらに腕2401を伸ばすと、このアイコンは目標である選択項目「設定変更」に近づきつつ、小さくなり一定の大きさのアイコン2502のときに特別なアイコンとなり、指が仮想操作面を横切ると指し示す位置の項目が選択されたと判定される。
【0057】
このように、図20の例では、指601の位置に応じて画面2501に表示されるアイコンの大きさを変化させることにより、操作者は自己の動作がシステムでどのように認識されているかを把握することができ、仮想操作面の位置を直感的に認識して、メニューの選択などの操作を行うことができる。ここで、指601、腕2401を含む操作者全体及び各部位の位置や大きさは、操作者の全体像と同様三次元カメラを用いることにより抽出することができる。これにより画面内の物体は奥行きも含めて把握することができるから、これらの情報に基づき仮想操作面との距離や位置関係を算出することができる。ただし、本実施形態で使用する三次元カメラや位置の抽出、距離の算出などは本技術分野で知られたいずれの方法も用いることができるので、ここではその説明を省略する。
【0058】
ここで画面に表示されるアイコンは円形で操作者の動作に合わせて大きさが変化するが、これに限られず図21に示すように様々な形態のアイコンを用い、様々な変化をさせることができる。すなわち、図21を参照すると、(1)は指の形態のアイコンであり、上述の図20の例と同様に仮想操作面に近づくほどに小さくするようになっている。(2)は、円形で次第に小さくなるようになっているが、入力あるいは選択が確定すると特別な形状に変化して確定したことが示される。このアイコンや他のアイコンの場合も形状や大きさの変化に代えて、あるいは合わせてアイコンの色を変化させることもできる。例えば、青、緑、黄、赤等、寒色系から暖色系に変化させることにより、直感的に操作がフォーカスされ確定することを操作者は認識することができる。(3)は、Xのような形状で、遠くにある場合は大きいだけでなくぼかしが入っており、近づくにしたがって、アイコンの大きさが小さくなるとともに、ぼかしが消えシャープな形状になる。(4)はアイコン全体の大きさは変化することなく、中に描かれた図形が形状変化を起こしてフォーカスされる様子を認識するようになっている。この場合、図形の色も変化させることができる。図21に示す(5)も、形状を変化させるものである。図21において、指の動きに応じてアイコンの形状や色などが変化していき、仮想操作面を越えるとその瞬間に、欄2601に示すように種々の形状や色に変化させたり、点滅させたりして操作として判定されたことを操作者に認識させるようにすることもできる。また、図示しないがこの他のアイコンの変化としては最初透明で、指が仮想操作面に近づくほどに不透明になるような変化も効果的である。
【0059】
ここで、アイコンのバリエーションのうち特に形状をあまり変化させず色や濃さを変化させる場合は、図22に示すようにアイコンはあまり移動せず指601を近づけていくと、色が暖色系になったり濃くなったりして、入力を確定することができる。
【0060】
また、以上の例では操作の判定状況を確認するためアイコンを表示させ、操作者の動作に応じて色や形状を変化させたが、例えば図23や図24に示すように元々メニューのように予め指示する位置が固定されているような場合は、わざわざアイコンを表示しなくても、指601が指し示す位置がメニューのどの項目ボタンに最も近いかにより決定し、指601の動き、特に仮想操作面からの距離に応じて指し示されている項目ボタンを塗りつぶす色または塗りつぶす濃さを変化させることにより、仮想操作面の位置を認識させ、操作入力を容易にすることができる。図23は、指601が近づくにしたがって、その選択されているボタンの色を寒色系から暖色系に変化させる例を示す図である。この例の色の選択としては、例えば(2)青、(3)緑、(4)黄、(5)赤のようにすると操作者は直感的に赤になると確定されると認識することができる。同様に、図24は、ボタンの塗りつぶしの濃さを変化させる例を示す図である。
【0061】
同様なメニューの選択例としては、図26に示すような一例もあるので説明すると、例えば図19の指601が仮想操作面701の手前の一定の領域にはいると、画面上にメニュー4301が表示され、その指601がさらに仮想操作面701に近づくと、図26に示すメニューの例えば項目4302上に大きなアイコン2610が表示される。その後、仮想操作面701まで指601が到達すると、項目4302の選択が確定し小さいアイコン2611が表示されて、このことが通知される。その後、指601を左右上下に動かすことで、メニューの選択項目が移動して行き所望の項目で一定時間静止すると、選択された項目に応じた処理が行われるようにすることもできる。また、選択が実行される前に指601が仮想操作面701の手前の一定の領域より後方へ動かされるとメニューを消去するようにすることもできる。図31も、図26と同様に指601が仮想操作面701の手前の一定の領域にはいると、メニューを表示するが、ここではビデオ映像制御の例である。この例でも図26に示す例と同様に大きいアイコン3110および小さいアイコン3111によりメニューの操作が可能となる。
【0062】
さらに、別の入力操作の例を図25を参照して説明する。図25は、本実施形態により画面に表示された図形を移動させる指示を入力する一例の表示画面を示す図である。指示は操作者の手または指を仮想操作面に触れて動かすことにより行う。まず、指などを画面に近づけていくと画面4211のアイコン4201から画面4212のアイコン4202へとアイコンを縮小させて仮想操作面に接近していることを示す。その後、仮想操作面に触れると画面の4213のアイコン4203のように例えば色を変化させて放置し、その状態で上に向けて指などを動かすと画面4214のラバーバンド4204などを表示させて移動方向を示すことにより、操作者が自己の操作を確認することができる。また、右方向に指を動かすと、画面4215のラバーバンド4205を表示することができる。このように、仮想操作面に指等が到達後の上下左右のドラッグ距離に応じて伸縮するラバーバンド(上図では矢印)を出現させ(アイコン4203の位置は仮想操作面から抜けるまで固定)、伸縮距離に応じて移動スピード、伸ばす角度に応じて3D空間内での移動する方向を変化させることができる(矢印先端が腕先や指先の動きに追随する)。
【0063】
以上、図18に示すような操作者とモニタとがほぼ同じ高さにある、すなわち仮想操作面が操作者の水平方向前面にほぼ垂直に形成される場合について、本実施形態の原理を説明してきたが、この原理はこのような操作者とモニタとの位置関係や形状には影響されることはなく、種々の配置や構成が可能である。例えば、図10ないし12に示すようなシステムの配置でも応用することができる。この場合、三次元カメラ201もモニタ111とともに傾いているので、基本的には上述の水平位置に配置された場合と大きな相違はないが、カメラを別な位置に設置したとしても、本技術分野で知られたいずれかの方法で位置補正などを行なうことで、操作者の部位と仮想操作面との位置関係を算出して、操作を判定することができる。
【0064】
(仮想操作面の奥側の操作 − 仮想操作階層)
本実施形態では、操作者が空間上に仮想的に形成された仮想操作面を基準に、そこにあたかもタッチパネルのような入力機器が存在するかのように操作することにより、その操作内容を確実に判定しようとするものであるが、このようにして判定された操作の内容を仮想操作面から奥側方向である、操作者から離れる方向への仮想操作面と操作者の手等の身体の一部あるいは身につけた物体の位置関係で決定する。例えば、操作者から離れる方向であるz軸方向に2層あるいは3層に操作領域を仮想操作階層として設定し、操作者の手がどの層に入っているかにより操作の種別を決定して、その層内での手の動きにより操作内容を決定する。この際、操作者が視認している表示画面上に手の位置や操作の種別などを表示させれば、より操作者は操作の認識を容易にすることができる。なお、操作者の一部と各階層を分割する面とのz方向の距離は、上述した形成された仮想操作面と操作者の一部との距離を算出する手法によって取得することができる。
【0065】
より具体的に説明すると、図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方向に動かすとオブジェクトが拡大され、反対方向に動かすとオブジェクトが縮小するようにすることができる。
【0066】
同様に、階層Cではモニタ111に表示された指定したオブジェクト上の指601の位置に移動アイコン4505を表示し、指601の動きに合わせて移動するようにすることができる。ここで、階層間を区切る面4501および4502は各階層が同じ厚さになるように配置することもでき、階層に割当てられた操作種別に応じて異なる厚さになるよう配置することもできる。例えば図27の例では、階層Bには拡大縮小の操作が割当てられているが、拡大縮小を前後の動きで表現しなければならないため、階層Aや階層Cと比較して通常はz方向の動きが大きくなることから、階層Bをより厚くすることによって操作を容易にすることもできる。
【0067】
図28は、本実施形態の別のアイコンの例を示す図である。図28に示す例では、階層Aにはモニタ111上での操作位置を特定する操作を、階層Bには特定された位置におけるオブジェクトを「掴む」操作を、階層Cには掴んだオブジェクトを投げるあるいは移動させる操作をそれぞれ割当てている。
【0068】
以上のように、仮想操作面により操作と判定された後の操作内容の判定の際に、指や手の動きだけでなく、そのz方向の位置、すなわち仮想操作階層に応じて操作の種別を特定するようにすることができるため、指や手の動きのみでは様々なジェスチャーパターンを数多く準備し、かつユーザがそれらを覚える必要があるのに比較して、単純な動作のみで複雑な操作を使い分けできることとなる。
【0069】
なお、上述の、特に図27に示す例では、手や指などの一連の動きを各階層間で連続的に行える操作を配置するようになっているが、連続的に操作できないような配置の場合(図28に示す例)は、次のような2つの点が問題となる。すなわち、(1)目的とする仮想操作階層に到達する前に他の階層を通過し、操作者が欲しない指示を与えてしまう、(2)目的の操作を終え、手を操作領域から抜く場合、他の仮想操作階層を通過し、操作者が欲しない指示を与えてしまう、という点である。上記の問題を回避するためには、例えば次の方法などが考えられる。すなわち、操作する方と反対の手を操作領域内に差し込むようなマルチセンシングの状態(例えば、右手で操作している場合、左手を操作領域内に入れた状態)を、操作なし(あるいはその逆に、操作あり)の状態と設定し、操作する方と反対の手の出し入れによって、各階層の操作を行うか否かを判断するようにする(この例では両手操作によるが、XY平面上にすり抜け用エリアを設ける等、様々な方法が考えられる)。
【0070】
以上本実施形態を用いると、操作者は予めジェスチャを覚えたり、取り決めておいたりすることなく、その動きによりシステムの操作を行うことができるほか、操作者の姿勢や各部、例えば手の動きが分かるので身体全体を使用したゲームに用いて、いわゆる複合現実感(MR)を実現することもできる。
【0071】
(第2実施形態)
本実施形態は、操作面形成基準を除き基本的に上述の第1実施形態のシステム構成と同様である。すなわち、本実施形態では、第1実施形態のシステムおよび処理を踏まえ、図14に示すように操作者にも知覚可能な一定のマーカ101のような操作面形成基準と言う概念を導入することにより、操作者はこれを目印に仮想操作面の認識がより容易になる。すなわち、図14等に示すマーカ101は、操作者102が仮想操作面を認識するための操作面形成基準であり、ユーザ102は、図16に示すように、床面に示されたマーカ101の上方に操作面701が仮想的に存在すると捉えて種々の操作をして、マーカ101を基準に手601を前に突き出してジェスチャを示したりすることができる。マーカ101の横幅は操作面の幅とすることもできる。また、補助マーカ等により、マーカ101の前後を区別したり、補助マーカを用いて、操作領域を確定したり、3次元パース計算要素としたりすることもでき、形状や方向も自由であり、測定に適したエリアを示すようにしても良い。
【0072】
このような、マーカ101を備えた操作入力システムでは、図16に示すようにマーカ101の上部に操作面701が仮想的に形成され、操作者102は、マーカ101から仮想的な操作面701を想定して手601を突き出したり、モニタ111と連動させて画面上の一部と操作面701とをタッチパネルに見立ててタッチするように手601を動かしたりすることにより、入力操作を容易に行うことができる。また、操作領域でユーザが任意のポーズを取った後に、線分の前方へ押し出す(決定)動作でアクションを決定したり、操作を決定してから押し出すという判断の基準としたりすることができるため、ユーザが認知しやすく、操作性は従来のタッチパネル操作に近いものとなる。
【0073】
本実施形態で、仮想操作面は図16などを参照するとマーカの真上に垂直に形成されているように示されているが、図9ないし11に示すようなシステムの配置の場合は、例えば仮想操作面の底辺のみ操作面形成基準に合わせて仮想操作面全体は傾けたり、形成される位置を身長に合わせて位置を変えたりすることができる。この場合、例えば先ずマーカ101により一定の操作面を算出しておいて、その後操作者の像により補正をすることによって適切な位置に仮想操作面を形成するよう調整してもよい。あるいは、計測されたマーカ101の位置と、予め設定されたモニタ111およびカメラ201の位置とに基づいて、操作面を算出しておき、さらに操作者の像から身長、腕の長さなどを抽出してこれらの情報を加味して仮想操作面の位置、大きさおよび角度などを補正することもできる。
【0074】
また、操作面形成基準であるマーカは視認可能であり、操作者がマーカを視認してこれを基準とし、概ね仮想操作面が存在する位置を推測して操作を行う。したがって、仮想操作面はマーカの上方に形成する必要があるが、操作者から見て前後の位置関係については操作者やシステム全体の状況に応じて変化する可能性がある。一般的には、図27に示すように、例えば床面などにマーカ4401を配置した場合などは操作者102の目の位置からするとマーカ4401の真上に近い位置に立つことが多いと考えられるので、マーカ4401の操作者102と反対側に少しずらした位置4402に仮想操作面701を形成した方が腕の動きに余裕ができて自然な操作が可能な場合もあると考えられる。一方、後述するような図15に示す机の縁にマーカ1902を貼り付けたような場合は、マーカを貼り付けた反対側の縁により操作者は動作を制限される、すなわちこの縁より前面には体を操作面に近づけることはできないから机の幅を操作しやすいように適当に取ることができる。この場合、仮想操作面はマーカの真上に形成するほうが操作者により容易に仮想操作面を認識させることができると考えられる。第1実施形態では、操作者の腕の長さを測定してこのような前後の位置を設定しているが、操作者にも知覚可能なマーカによるとより客観的な操作面の形成が可能となる。
【0075】
このように、上述の第1実施形態では仮想操作面を含む操作領域として腕のストローク等を考慮して設定しているが、マーカを様々に組み合わせることにより、より客観的に、すなわちどのような操作者があっても目で見て一定の正確さで認識できるように操作領域を確定することができる。
【0076】
さらに、本実施形態のような操作面形成基準は、キャプチャした画面上で広範囲、適度かつ同時に測定マーカを分散配置することができるため、非常に信頼性の高い測定が可能となる。また、このような効果とともに、常にマーカがカメラの撮影範囲内にあることが保証されるキャリブレーションシステムと併用することができ、省スペース・多機能な装置を実現することができ、基本的に初回設置のキャリブレーション後、毎回再測定する必要がない。
【0077】
マーカ101は、このようにビデオカメラ201により撮影されて操作面形成基準となり、これを容易にするため、マーカ素材は本技術分野で知られた種々のものを用いることができるが、通常は使用するカメラにより適当なものが選択される。例えば、通常カメラの場合、背景色彩から際立つような特徴あるカラーリングが必要であり、赤外線カメラを使用するときは、再帰性反射材などを使用することができる。一方、レーザ光は、黒色部分等、反射が少ないような色、素材の場合は反射光を測定しにくいので、レーザ光によりマーカや再帰性反射材などを使用することなく黒色のバーなどを使用することにより、レーザ光が照射された部分は反射されずに画面上欠損が発生するので、このようにしてもバーの位置を検出することができる。
【0078】
例えば、一定のカラーリングによりマーカを付している場合、具体的には次のように処理してマーカを抽出することができる。画像読取部301においてビデオカメラ201で撮影されたデータを読取り、そのデータからマーカ101の、例えばカラー画像の場合、画像抽出部302により、予めマーカとして決めておいた色領域を抜き出してマーカ101の画像のみを抽出する。具体的には、本実施形態では、カラーNTSC信号の輝度信号Yと色差信号U、Vの各々に上下の閾値を設定して全ての閾値を満たす画素を抽出するが、これに限られず本技術分野で知られたいずれの方法を用いることもできる。このようにして、マーカ101の位置を三次元的に把握し、仮想的な操作面がどの様なものとなるのかを算出してデータベースに記憶しておく。カラー抽出が終了すると、さらに補助マーカがある場合は補助マーカも同様の処理を行って抽出した後、画像位置算出部303により、抽出したマーカ部分を白黒の2値化し、ビデオカメラ201の撮影した画像から抽出したマーカの縦横の辺を構成するピクセル数を計算する。取得した画像の縦横の辺の長さや傾斜を、基準となる画像と比較して撮像空間の歪みやスケールを割り出す。本実施形態では、歪みやスケールを算出する場合に、この他に少なくとも4点以上の箇所にマーカを設けて基準とすることもできる。例えば、4点以上の基準点が有ればそれを結んで線分とし、キャリブレーションを行うことが可能である。
【0079】
マーカはこのように適切な素材を床面に貼り付けることにより使用することができるが、これに限られることなく直接床面に塗布したり、本技術分野で知られた任意の付着方法を用いたりすることができる。また、上記の説明では、操作面形成基準としてマーカ101を用いることとしたが、これに限られることなく任意の部材や構造を立体測定基準として用いることができる。例えば、マーカは図1に示すような形ではなく様々な形の図形とすることができ、いくつかの点に一定の面積を有するマーカを複数設けるようにしてもよい。
【0080】
また、操作面形成基準としては、立体物、例えば図15に示す机状の立体物1901にマーカ1902、1903を付して操作面形成基準とすることにより仮想操作面701を形成し、これに対し例えば指601等で操作を行うことで、入力操作を可能とすることもできる。なお、図16を参照すると仮想操作面の形状は床面から垂直に立てた長方形となっているが、これに限られず、マーカ101の形状や配置の仕方で様々な形状、大きさの操作面を形成することができる。例えば、図15に示すマーカ101は、モニタ111の面に平行な一定の長さの直線であるため、仮想的な操作面は操作面701のようになるが、マーカを斜めに一定の角度をつけた直線とすることもでき、その場合、形状は図15に示す操作面701と同じであるが、向きがモニタ111と一定の角度を持って斜めに置かれたものとなる。この場合も、操作者102は、マーカで斜めに配置された操作面が仮想的に形成されていると捉えることができるから、その操作面を意識して操作を行えばよい。また、立体的に補助マーカを配置して、床面に対しても一定の角度を持った斜面の操作面にしたり、曲面の操作面にしたりすることもできる。なお、本実施形態は、マーカなどにより形成された仮想的な操作面を基準にして処理を行うように説明するが、当業者であれば理解できるように、実際の計算処理では、操作面から操作者の位置を計算しなくてもよい。仮想的な操作面は、あくまでも操作者が意識して操作入力を行うようにするためのものだからである。
【0081】
また、図15に示すようなマーカ付置き台を使用する場合、後述する図18に示すように、例えばマーカ1903を用いて操作者102の上半身のみを対象エリア2301として、仮想操作面701から前面に出た部分の動きのみを操作として判定することもできる。このようにすることにより、操作者が図15に示すような置き台を体の支えにして入力操作を行う場合に下半身、特に足が仮想操作面から前に出ても、あくまで上半身の動きのみを操作として認識するようにすることができる。
【0082】
操作面形成基準を用いて仮想操作面などを形成する場合、立体マーカで測定して基準面および測定エリアを設定した後に、立体マーカは取り去り、生成した基準面が判るように床にライン等のマーキングのみを事後設置することもできる。例えば、立体ガイドバー等を残せないような狭いところ等、常に立体マーカを設置するのが不向きな環境において、このような仮想操作面の形成方法が有効である。また、床平面キャリブレーションパターンの場合、3Dカメラの設置角度によっては、立体のそれよりも測定しにくい場合や、床面利用下における適性(耐摩耗やスリップ防止等)を備えた良い素材選定が難しい傾向があるためキャリブレーション機の無い簡易な床マーキングとして置き換える方が実施しやすい。また、上記と同様に測定後、キャリブレーション機能(マーカ)を持たない立体ガイドに置き換える。デザイン重視の場合や安価なタイプへの置き換えとして有効であり、ユーザからは変わらず視認できる。
【0083】
上記のいずれもキャリブレーション後にユーザがその位置を視認でき、移動制限に繋がる別の手段(立体 or 平面)に置き換える方法となる。さらに、カメラ側のみでキャリブレーション手法に頼らず、予め使いやすい距離や位置に基準面を設定し、その後、ユーザ側が認知できるように、その面(エリア)に床ラインか立体ガイドを事後設置する。
【0084】
ここで、本実施形態におけるマーカと仮想操作面との関係を図29を参照して説明する。本実施形態では基本的に机や台などの縁にマーカを付してマーカの上方に形成された仮想操作面に対し操作者が接触したり、手を移動させたりしてシステムに入力操作であることを認識させる。この際、机や台のマーカの付されていない縁は操作者の動作を制限し、適度にかざした手が仮想操作面に自然に触れることを支援する。この概念を図38を参照して説明すると、操作面形成手段であるマーカ4402の上方に仮想操作面701が形成されるが、一方操作者102は、何らかの動作制限手段4401により仮想操作面から一定の距離が保たれることになり、自然に前に出した手601により仮想操作面に対し操作を行うことができる。本実施形態では、仮想操作面701は、マーカ4402の真上に形成されているが、第1実施形態で述べたようにマーカ4402を基準に前後に移動させることもできる。例えば、動作制限手段4401は基本的に固定であるから、操作者102の体形によってはマーカ4402の真上に仮想操作面が形成されると、手前過ぎたり、奥過ぎたりして使用感が悪くなる可能性もある。この場合に、操作者ごとにマーカ4402から、仮想操作面が形成される位置を前後させることもできる。
【0085】
以上、本実施形態では、仮想操作面を操作者に知覚可能な操作面形成基準および操作者自身を三次元カメラで撮影した像に基づいて形成することから、仮想操作面の位置が客観的に特定しやすく、操作者の身長なども加味されるので、操作者はより違和感なく自然な操作感を得ることができる。
【0086】
(第3実施形態)
本実施形態は、基本的に上述の第1および第2実施形態のシステム構成と同様であるが、モニタの替わりに表示用としてプロジェクタを用いた点が異なる。すなわち、本実施形態では、第1および2実施形態とその処理は基本的に同じであるが、LCDやプラズマなどのモニタ111の替わりに、図30に示すようにプロジェクタ3011から映像をスクリーン3010に投影することによって操作者に様々な情報を通知する。本実施形態のシステムでは、第1実施形態などでLCD等を配置している表示面にはスクリーンだけが配置されるので、映像を投影するプロジェクタ3011、カメラ201およびこれらを制御するコンピュータは図30に示すように一体型にすることができる。このような一体型のシステムは通常操作者とスクリーンとの間におかれるので、例えば図に示すように進入禁止領域を認識させるためにガイドバー3012が置かれ、これを第2実施形態のような操作面形成基準として流用することもできる。
【0087】
本実施形態は、第1実施形態と表示の方法が異なるだけで、表示面自体は大きく異なることはないから、仮想操作面および操作領域の設定並びに操作の判定処理などは基本的に第1または2実施形態と同様である。ただし、上述のようにプロジェクタ、カメラおよびコンピュータが一体型となって、操作者と表示面(スクリーン3010)との間に配置されるのでカメラ201の位置が若干異なり、カメラが表示面の下部などに設置される第1実施形態などの場合と比較すると、操作領域などの角度の調整幅が大きくなる。また、ガイドバー3012と仮想操作面701との位置関係は、第2実施形態で説明した場合とは異なり、ガイドバー3012の真上に仮想操作面701が形成されるとは限らない。これは、例えば図14に示すような操作者にも知覚可能な一定のマーカ101のように床に意識的に描かれている場合と、侵入防止用を兼ねる本実施形態のガイドバー3012とは操作面形成基準としての役割は同一であるものの、仮想操作面を形成する位置は操作者との位置関係、操作者との関係により異なってくるからである。本技術分野で知られたいずれかの知識を用いて、システムに応じてガイドバー3012を基準に奥側あるいは手前側に仮想操作面を形成することができる。
【0088】
以上、本実施形態では表示用にプロジェクタを用いることにより、プロジェクタ、カメラおよびコンピュータが一体型とすることができるため、設置や取扱が容易となり、また画面が大型する場合、大型LCDを使用するのに比べ、設置容易性や費用の点で有利となる。

【特許請求の範囲】
【請求項1】
操作者の像を読取って立体画像データを生成する三次元撮像手段と、
前記三次元撮像手段により読取られた操作者の像に基づいて、仮想操作面を形成する操作面形成手段と、
当該形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、前記三次元撮像手段で読取って、前記操作者の一部と前記仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定手段と、
前記動きが操作であると判定されると、所定の信号を出力する信号出力手段と
を備えたことを特徴とする画像認識装置。
【請求項2】
前記操作者が所定の空間上の仮想操作面を把握するよう設けられた該操作者に知覚可能な、前記撮像手段の撮像範囲内に予め配置された操作面形成基準
をさらに備え、前記操作面形成手段は、前記三次元撮像手段により読取られた前記操作者の像および前記操作面形成基準に基づいて、前記仮想操作面を形成することを特徴とする請求項1に記載の画像認識装置。
【請求項3】
前記操作面形成手段は、前記操作面形成基準の位置により一定の操作面を形成し、前記三次元撮像手段により読取られた前記操作者の像により当該形成された一定の操作面を補正して、前記仮想操作面を形成することを特徴とする請求項2に記載の画像認識装置。
【請求項4】
前記仮想操作面は、前記操作面形成基準から上方に投射した面であることを特徴とする請求項2または3に記載の画像認識装置。
【請求項5】
前記操作面形成基準の操作者側であって、操作者の移動を一定の範囲内に制限する動作制限手段をさらに備えたことを特徴とする請求項2または3に記載の画像認識装置。
【請求項6】
前記操作面形成基準は、操作者が載る床面に示されていることを特徴とする請求項2ないし5のいずれかに記載の画像認識装置。
【請求項7】
操作者と前記三次元撮像手段との間に配置された立体物をさらに備え、
前記操作面形成基準は、前記立体物の所定の外縁であることを特徴とする請求項2ないし5のいずれかに記載の画像認識装置。
【請求項8】
前記操作面形成基準は、読取られた画像からの抽出が容易になるように前記三次元撮像手段に撮像される所定の面にマーカを有することを特徴とする請求項2ないし7のいずれかに記載の画像認識装置。
【請求項9】
前記操作者の移動を制限する移動制限手段
をさらに備え、前記操作面形成手段は、前記移動制限手段の位置または形状および前記三次元撮像手段により読取られた前記操作者の像に基づいて、前記仮想操作面を形成することを特徴とする請求項1に記載の画像認識装置。
【請求項10】
前記操作判定手段は、前記操作者の一部が前記仮想操作面よりも前記三次元撮像手段側にあるとき操作であると判定することを特徴とする請求項1ないし9のいずれかに記載の画像認識装置。
【請求項11】
前記操作判定手段は、前記操作者の一部の、前記仮想操作面よりも前記三次元撮像手段側にある部分の形状または動きによりいずれの操作が行われているかを判定することを特徴とする請求項1ないし9のいずれかに記載の画像認識装置。
【請求項12】
前記操作判定手段は、予め操作者の一部の形状または動きと対応付けた操作内容を格納する記憶手段を検索して、合致する形状または動きに対応する操作を、入力する操作と判定することを特徴とする請求項11に記載の画像認識装置。
【請求項13】
操作者と対面して配置された画像表示手段をさらに備え、
前記操操作判定手段は、操作者が操作の判定結果を認識できるように、前記画像表示手段に現時点の操作判定結果を表示させることを特徴とする請求項1ないし12のいずれかに記載の画像認識装置。
【請求項14】
操作者と対面して配置された画像表示手段をさらに備え、
前記仮想操作階層の領域内で前記操作者の動きが読取られると、前記画像表示手段に該仮想操作階層に予め割当てられた標示を表示することを特徴とする請求項1ないし12のいずれかに記載の画像認識装置。
【請求項15】
前記操作面形成手段により形成される仮想操作面に対し、前記三次元撮像手段の反対側における前記操作者の一部と前記仮想操作面との位置関係から当該距離を算出して該距離に応じ変化する標示を表示させて、判定しようとする操作を示す前記操作者が視認可能な画像表示手段
を備えたことを特徴とする請求項1ないし12のいずれかに記載の画像認識装置。
【請求項16】
前記仮想操作面との位置関係に基づいて定められる2つ以上の仮想操作階層のいずれかの領域内で前記操作者の動きが読取られると、該仮想操作階層に予め割当てられた操作種別および前記仮想操作階層内での操作者の動きに基づいて前記操作の内容を決定する操作内容決定手段
を備えたことを特徴とする請求項1ないし15のいずれかに記載の画像認識装置。
【請求項17】
画像認識装置によって、操作者の画像を認識して操作内容を判定する操作判定方法であって、
操作者の像を読取って立体画像データを生成する三次元撮像ステップと、
前記三次元撮像手段により読取られた操作者の像に基づいて、仮想操作面を形成する操作面形成ステップと、
当該形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、前記三次元撮像手段で読取って、前記操作者の一部と前記仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定ステップと、
前記動きが操作であると判定されると、所定の信号を出力する信号出力ステップと
を備えたことを特徴とする操作判定方法。
【請求項18】
画像認識装置に、操作者の画像を認識して操作内容を判定する操作判定方法を実行させるプログラムであって、該操作判定方法は、
操作者の像を読取って立体画像データを生成する三次元撮像ステップと、
前記三次元撮像手段により読取られた操作者の像に基づいて、仮想操作面を形成する操作面形成ステップと、
当該形成された仮想操作面に対する操作者の少なくとも一部の像の動きを、前記三次元撮像手段で読取って、前記操作者の一部と前記仮想操作面との位置関係に基づいて該動きが操作であるか否かを判定する操作判定ステップと、
前記動きが操作であると判定されると、所定の信号を出力する信号出力ステップと
を備えたことを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate


【公開番号】特開2011−39844(P2011−39844A)
【公開日】平成23年2月24日(2011.2.24)
【国際特許分類】
【出願番号】特願2009−187449(P2009−187449)
【出願日】平成21年8月12日(2009.8.12)
【出願人】(591282205)島根県 (122)
【復代理人】
【識別番号】100115624
【弁理士】
【氏名又は名称】濱中 淳宏
【復代理人】
【識別番号】100120581
【弁理士】
【氏名又は名称】市原 政喜
【Fターム(参考)】