(57)【特許請求の範囲】
【請求項１】
ジェスチャ操作を含む複数種類の操作による入力を認識可能な情報処理装置であって、前記操作を行う操作者の位置と、表示面に表示された複数のオブジェクトの表示位置との距離を取得するオブジェクト距離取得手段と、
前記操作を行う操作者の位置と前記操作者の操作入力位置との距離を取得する操作入力距離取得手段と、
前記複数のオブジェクトのうち、前記オブジェクト距離取得手段で取得された距離が前記操作入力距離取得手段で取得された距離より大きくなるオブジェクトを、前記ジェスチャ操作で操作可能なオブジェクトとして設定するジェスチャ操作対象設定手段を有することを特徴とする情報処理装置。
【請求項２】
さらに、前記オブジェクトの表示位置か、前記操作者の位置か、前記操作入力位置の、少なくとも１つの位置の変化を検出する位置変化検出手段を有し、
前記位置変化検出手段により位置の変化が検出された場合に、前記オブジェクト距離取得手段と前記操作入力距離取得手段は、前記距離を取得することを特徴とする請求項１の情報処理装置。
【請求項３】
前記オブジェクト距離取得手段と前記操作入力距離取得手段は、前記表示面に平行な面における距離を取得することを特徴とする請求項１の表示装置。
【請求項４】
さらに、前記複数のオブジェクトのうち、前記ジェスチャ操作対象設定手段によって前記ジェスチャ操作で操作可能なオブジェクトとして設定されていないオブジェクトに対するタッチ操作認識するタッチ操作認識手段を有することを特徴とする請求項１乃至３のいずれか１項に記載の表示装置。
【請求項５】
ジェスチャ操作を含む複数種類の操作による入力を認識可能な情報処理装置の制御方法であって、
オブジェクト距離取得手段が、前記操作を行う操作者の位置と表示面に表示された複数のオブジェクトの表示位置との距離を取得するオブジェクト距離取得工程段と、
操作入力距離取得手段が、前記操作を行う操作者の位置と前記操作者の操作入力位置との距離を取得する操作入力距離取得工程と、
ジェスチャ操作対象設定手段が、前記複数のオブジェクトのうち、前記オブジェクト距離取得工程で取得された距離が前記操作入力距離取得工程で取得された距離より大きくなるオブジェクトを、前記ジェスチャ操作で操作可能なオブジェクトとして設定するジェスチャ操作対象設定工程を有することを特徴とする情報処理装置の制御方法。
【請求項６】
コンピュータに読み込ませ実行させることで、前記コンピュータを、請求項１乃至４のいずれか１項に記載の情報処理装置の各手段として機能させることを特徴とするプログラム。
【請求項７】
請求項６に記載のプログラムを格納した、コンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画面上に表示されているオブジェクトに対する、ユーザの操作性を向上する技術である。
【背景技術】
【０００２】
電子化された画像や文書等（以下オブジェクトと記載する）を大型のテーブル・ディスプレイや壁面ディスプレイに表示し、ユーザが表示されたオブジェクトに対し操作を行う装置が提案されている（特許文献１）。この装置は会議や研修等に利用され、出席者が表示されたオブジェクトに対し、拡大縮小、移動、編集、グループ化等の操作を行うことで、アイディアの整理や議論の活性化、効率化を促進する。
【０００３】
この装置のディスプレイ近傍には、タッチパネル、デジタイザ、距離センサ等が組み込まれており、画面上に表示されたオブジェクトに対し、タッチ操作やジェスチャ操作といった直感的な操作が可能である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６‐４０２７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ジェスチャ操作を含む２つの操作方法で操作する場合、ジェスチャ操作と他の操作方法（例えば、タッチ操作）が干渉し、ユーザの操作性が低下するという課題がある。以下に、想定したユースケースについて説明する。
【０００６】
画面上に表示されたオブジェクトの操作（例えば、選択操作）を行う。操作方法は、ジェスチャ操作と他の操作方法（例えば、タッチ操作）の両方を用いる。ジェスチャ操作とは、操作者の手と画面との距離に基づいて、オブジェクトを選択する。具体的には、この距離が近い場合は操作者を基準として近くのオブジェクトが選択され、遠い場合は操作者を基準として遠くのオブジェクトが選択される。タッチ操作とは、ユーザが選択したい表示オブジェクトに直接触れることで、オブジェクトを選択する。この２つの操作方法で操作する場合、タッチ操作でオブジェクトを選択する場合に、選択しようとするオブジェクトより近くにオブジェクトがあると、タッチする直前に近くのオブジェクトがジェスチャ操作により選択されてしまう。これは、タッチ操作に限らず、マウスやペンなどで操作する場合も同様で、空間的な操作であるジェスチャ操作と他の操作方法とで操作する場合に起こる課題である。
【０００７】
本発明は、上記課題を考慮してなされたもので、表示部に表示されたオブジェクトを、ジェスチャ操作を含む２つの操作方法で操作する際、前記２つの操作の干渉を抑制し、ユーザの操作性を高めることを目的とする。
【課題を解決するための手段】
【０００８】
この課題を解決するため、本発明の情報処理装置は、ジェスチャ操作を含む複数種類の操作による入力を認識可能な情報処理装置であって、前記操作を行う操作者の位置と表示面に表示された複数のオブジェクトの表示位置との距離を取得するオブジェクト距離取得手段と、前記操作を行う操作者の位置と前記操作者の操作入力位置との距離を取得する操作入力距離取得手段と、前記複数のオブジェクトのうち、前記オブジェクト距離取得手段で取得された距離が前記操作入力距離取得手段で取得された距離より大きくなるオブジェクトを、前記ジェスチャ操作で操作可能なオブジェクトとして設定するジェスチャ操作対象設定手段を有することを特徴とする。
【発明の効果】
【０００９】
本発明は、表示面に表示されたオブジェクトを、ジェスチャ操作を含む複数の操作方法で操作する際、複数ジェスチャ操作と他の操作方法との干渉を抑制し、ユーザの操作性を高めることができる。
【図面の簡単な説明】
【００１０】
【図１】システムの概要図。
【図２】情報処理装置１００のハードウェア構成図。
【図３】情報処理装置１００の機能構成図。
【図４】情報処理装置１００の処理フローチャート。
【図５】Ｓ４０３の詳細な処理フローチャート。
【図６】実施例１におけるオブジェクト選択操作の概要図。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態について図面を参照して詳細に説明する。なお、以下説明する実施例は、本発明を具体的に実施した場合の一例を示すものであり、これに限るものではない。
【実施例１】
【００１２】
図１は、本実施例におけるシステム１００１の概要図である。図１（ａ）は上面から見た図で、図１（ｂ）は側面から見た図である。図１に示すように、システム１００１は、テーブル型のディスプレイ１０１をユーザが利用して、アイディアの整理や議論を行うためのシステムである。ユーザは、表示部であるディスプレイ１０１に表示されたオブジェクト（１０２ａ〜１０２ｅ）を、指や手を使ったタッチ操作、もしくはジェスチャ操作で選択し、操作する。
【００１３】
本実施例では、下方に投影可能なプロジェクタ１０４を利用して、ディスプレイ１０１にオブジェクトを投影する。なお、ディスプレイ１０１には、タッチパネルが組み込まれている。タッチパネルは、抵抗膜方式や静電容量方式等を用いる。本実施例では、ジェスチャ操作とタッチ操作の２つの操作方法で操作する例を示すが、タッチ操作の代わりに、例えば、マウスやペンなどで操作してもよい。つまり、空間的な操作であるジェスチャ操作と、接触により操作を行う他の操作であればよい。
【００１４】
また、オブジェクトに対するジェスチャ操作を認識するためのセンサとして、画像センサ１０３を利用する。そして、画像センサ１０３から取り込んだ画像を解析し、操作者の位置や、操作入力に利用する手や指等の位置を算出する。これらの各デバイスは、情報処理装置１００とネットワークもしくはＵＳＢによって接続されており、協調して機能する。
【００１５】
本実施例では、１つのディスプレイ１０１と１つの画像センサ１０３を利用する例を示したが、その限りではなく複数利用しても良い。また、プロジェクタ１０４のような投影型表示装置ではなく、液晶、プラズマ、有機ＥＬ、無機ＥＬ等の異なる表示方式のディスプレイ１０１を利用してもよい。また、ディスプレイ１０１の設置方式は、テーブル型に限定せず、床面、壁面等に設置してもよい。また、画像センサ１０３に限定せず、赤外線センサや超音波センサ等を利用して、上記の位置算出処理を行ってもよい。
【００１６】
図２は、本実施例における情報処理装置１００のハードウェア構成図である。情報処理装置１００は、ＣＰＵ２００（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＡＭ２０１（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ２０２（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、バス２０３から構成される。さらに、ディスプレイＩ／Ｆ  ２０４、ストレージＩ／Ｆ  ２０５、ストレージ２０６、入力Ｉ／Ｆ  ２０７から構成される。以下、情報処理装置１００のハードウェア構成について、詳細に説明する。
【００１７】
ＣＰＵ２００（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）は、ＲＯＭ２０２（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）及び／又はストレージ２０６に格納された制御プログラムを実行し、各デバイスを制御する。
【００１８】
ＲＡＭ２０１（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）は、ＣＰＵ２００のワーク領域、エラー処理時のデータの退避領域、制御プログラムのロード領域等を有する。
【００１９】
ＲＯＭ２０２には、オペレーティングシステム（以下ＯＳ）をはじめ、本発明に係る各処理プログラム、デバイスドライバ等が記憶されている。
【００２０】
バス２０３は、アドレスバス、データバス及びコントロールバスを含み、各種の通信を媒介する。
【００２１】
ディスプレイＩ／Ｆ  ２０４は、情報処理装置１００で作成される表示画面を、ディスプレイ１０１が表示可能な信号に変換する。
【００２２】
ストレージＩ／Ｆ  ２０５は、情報処理装置１００で処理可能な映像データ形式と、ストレージ２０６に記憶する映像データ形式とを、相互に変換する。
【００２３】
入力Ｉ／Ｆ  ２０７は、画像センサ１０３からの画像情報を入力信号として受信し、情報処理装置１００が処理可能な情報に変換する。
【００２４】
ストレージ２０６は、ハードディスクドライブ装置に代表される大容量情報記憶装置であり、情報処理装置１００で表示するためのオブジェクトが記録されている。ストレージ２０６は、電子化されたマルチメディアデータを記憶している。具体的なデータの種別は、映像、静止画、音声、文書等である。これらのデータには、作成日時、編集日時、グループ等のメタデータが付与されていることが好ましい。これらのメタデータを用いて、データの表示順序を決定する。一方で、メタデータが付与されていない場合は、データファイルの名前で表示順序を決定してもよい。尚、ストレージ２０６は、情報処理装置１００内部に搭載されていても良いし、イーサネット（登録商標）やＵＳＢ、メモリーカードＩ／Ｆなどの各種インターフェースを介して接続されていてもよい。その際、ストレージ２０６は複数台接続されていても構わない。
【００２５】
図３は本実施例における情報処理装置１００の機能構成図である。以下、図３に示した各部について説明する。尚、各機能部はハードウェア、ソフトウェアの組み合わせによって、様々な形態で実現できる。
【００２６】
保持部３０１は、ＲＡＭ２０１に相当し、表示するデータおよび関連するメタデータを、ストレージ２０６から読み出し、保持する。
【００２７】
表示制御部３０２は、保持部３０１に保持されているデータから表示画面を生成し、ディスプレイ１０１に出力する。表示において、ストレージから読み出された各種データは、オブジェクトとして、ディスプレイ１０１に表示される。
【００２８】
オブジェクト位置取得部３０３は、ディスプレイ１０１に表示されているオブジェクトの、画面内の位置情報を、保持部３０１から取得する。位置情報とは、例えば画面内におけるオブジェクトの中心点の位置座標である。ここでは、中心点に限定する必要はなく、重心点、外形上の点、任意の代表点でもよい。また座標は、例えばディスプレイ表示面の縦横の２軸から構成され、さらに高さ方向の軸を利用しても構わない。
【００２９】
操作者位置取得部３０４は、画像センサ１０３から取り込まれた画像に画像処理を行い、ディスプレイ付近にいる操作者の位置を取得する。画像処理とは、例えば一般的な人体検出アルゴリズムを利用して、人物の位置を検出する。もしくは、一般的な顔検出アルゴリズムを利用して、顔の位置を検出する。そして、検出された顔の位置を基に、操作者の位置を算出する。これらのアルゴリズムは、ＲＯＭ２０２に格納され、ＣＰＵ２００によって実行される。
【００３０】
操作入力位置取得部３０５は、画像センサ１０３から取り込まれた画像を、画像処理し、操作者の腕、手もしくは指の位置を取得する。画像処理とは、例えば一般的な物体検出アルゴリズムを利用して、腕、手もしくは指の位置を検出する。このアルゴリズムは、ＲＯＭ２０２に格納され、ＣＰＵ２００によって実行される。
【００３１】
オブジェクト距離算出部３１０は、オブジェクト位置取得部３０３で取得されたオブジェクトの表示位置と、操作者位置取得部３０４で取得された操作者の位置から、オブジェクトの表示位置と操作者の位置との距離を算出する。なお、算出する距離は、ディスプレイの画面に対し平行な面における距離だけを検出することが好ましい。つまり、画面に対し高さ方向の距離は考慮せず、画面に対し縦横方向（平行）の距離のみ計算する。よって、計算する距離の成分を限定することにより、計算コストを削減することができる。
【００３２】
操作入力距離算出部３１１は、操作入力位置取得部３０５で取得された操作者の手や指等の操作入力の位置と、操作者位置取得部３０４で取得された操作者の位置から、操作入力の位置と操作者の位置との距離を算出する。なお、オブジェクト距離算出部３１０と同様、ディスプレイの画面に対し縦横方向（平行な面）の距離のみ計算することが好ましい。
【００３３】
ジェスチャ操作対象設定部３０６は、オブジェクト距離算出部３１０で算出された距離が、操作入力距離算出部３１１で算出された距離より大きくなるオブジェクトを、ジェスチャ操作の操作対象とする。つまり、操作者を基準として、手や指等の操作入力の位置よりも遠くにあるオブジェクトが、ジェスチャ操作の操作対象となる。
【００３４】
ジェスチャ操作認識部３０７は、ジェスチャ操作対象設定部３０６で選択されたオブジェクトに対し、ジェスチャによる選択操作を行う。ジェスチャによるオブジェクトの選択方法は、操作者の手とディスプレイの画面との距離に基づいて、オブジェクトを選択する。具体的には、遠くのオブジェクトを選択する場合は、操作者は手を画面から遠ざけ、近くのオブジェクトを選択する場合は、手を画面に近づける。上記処理に必要となる情報は、オブジェクト位置取得部３０３、操作者位置取得部３０４、操作入力位置取得部３０５から取得する。また、操作者が操作中に手をかざす方向を用いて、選択するオブジェクトを限定してもよい。具体的には、操作者位置と操作入力位置から上記方向が角度で算出され、算出された角度の±５°の範囲に存在するオブジェクトが選択処理の対象となる。
【００３５】
タッチ操作認識部３０８は、タッチパネルで検出される操作者のタッチ操作を認識し、認識された操作に基づいて、オブジェクトを選択する。具体的には、ディスプレイ１０１に表示されているオブジェクトを、操作者が触れる。触れる場所は、表示されているオブジェクト上が好ましいが、オブジェクト近傍でもよい。近傍にタッチした場合は、タッチした地点に最も近いオブジェクトが選択される。
【００３６】
オブジェクト処理部３０９は、タッチ操作認識部３０８とジェスチャ操作認識部３０７で選択されたオブジェクトに対して、所定の処理を行い、ディスプレイ１０１に表示する。尚、オブジェクトに対して処理を施さずに表示する場合は、オブジェクト処理部３０９は動作させずに、タッチ操作認識部３０８とジェスチャ操作認識部３０７で選択されたオブジェクトをディスプレイ１０１に表示する。
【００３７】
図４は本実施例における情報処理装置１００の処理フローチャートである。操作者が情報処理装置１００の操作メニュー（図示していない）で、オブジェクト選択処理を選ぶと、上記処理が開始される。そして、操作メニューでオブジェクト選択処理以外を選ぶまで繰り返し処理を行う。
【００３８】
Ｓ４０１において、タッチ操作認識部３０８でタッチパネル上に操作者のタッチ操作があるか否かを判定する。タッチ操作がある場合はＳ４０２へ進み、無い場合はＳ４０３へ進む。
【００３９】
Ｓ４０２において、タッチ操作認識部３０８で操作者のタッチ操作に基づいて、オブジェクトが選択される。
【００４０】
Ｓ４０３において、ジェスチャ操作対象設定部３０６でジェスチャ操作の対象となるオブジェクトを設定する。詳細については、図５（Ａ）の処理フローチャートで説明する。
【００４１】
Ｓ４０４において、ジェスチャ操作認識部３０７で、Ｓ４０３で操作対象となったオブジェクトの中から、ジェスチャ操作に基づいてオブジェクトが選択される。
【００４２】
図５（Ａ）は本実施例におけるＳ４０３の詳細な処理フローチャートである。
【００４３】
Ｓ５０１において、操作者位置取得部３０４で操作者の位置を取得する。
【００４４】
Ｓ５０２において、オブジェクト位置取得部３０３でディスプレイ１０１に表示されているオブジェクトの表示位置を取得する。
【００４５】
Ｓ５０３において、オブジェクト距離算出部３１０で、操作者の位置とオブジェクトの表示位置との距離を算出する。
【００４６】
Ｓ５０４において、操作入力位置取得部３０５で、ジェスチャ操作を行う操作入力の位置を取得する。
【００４７】
Ｓ５０５において、操作入力距離算出部３１１で、操作者の位置と操作入力の位置との距離を算出する。
【００４８】
Ｓ５０６において、ジェスチャ操作対象設定部３０６で、Ｓ５０３で算出された距離が、Ｓ５０５で算出された距離より大きくなるオブジェクトを、ジェスチャ操作の操作対象とする。つまり、操作者の位置を基準として、手の位置より遠くのオブジェクトを、ジェスチャ操作の対象とする。
【００４９】
尚、処理の順序として、Ｓ５０４とＳ５０５を、Ｓ５０２とＳ５０３の前にやってもよい。また、並列処理が可能であれば、Ｓ５０２とＳ５０３、Ｓ５０４とＳ５０５を並列に行ってもよい。
【００５０】
図６は、本実施例におけるオブジェクト選択操作の概略図である。図６（ａ）（ｂ）（ｃ）は、同一の上記処理を複数の視点から見た図である。図６（ａ）は上面から見た図で、図６（ｂ）は側面から見た図で、図６（ｃ）はオブジェクトと、ジェスチャ操作を行う手と画面からの距離とを対応付けた図である。
【００５１】
図６（ａ）では、テーブル型のディスプレイ上に、オブジェクトＡ、Ｂ、Ｃが表示されている。そして、操作者がジェスチャ操作で、これらのオブジェクトの中から任意のオブジェクトを選択している。
【００５２】
図６（ｂ）では、操作者を基準として近い順に、オブジェクトＡ、Ｂ、Ｃが画面上に表示されている。操作者は、オブジェクトＢを選択しようとしており、選択処理のジェスチャを行っている手の位置は、オブジェクトＡとオブジェクトＢの間にある。よって、オブジェクトＢ、Ｃがジェスチャ操作の操作対象となり、オブジェクトＡは操作対象外となる。
【００５３】
図６（ｃ）では、ジェスチャ操作の操作対象となっているオブジェクトＢ、Ｃを、ジェスチャで選択する方法を説明する。内部処理で、選択対象のオブジェクトと、ジェスチャを行う手と画面からの距離とを対応付けしている。まず、ジェスチャを行う手の移動範囲を、画面から１ｍ以内とする。次に、画面から０．５ｍ未満の範囲をオブジェクトＢに対応付け、０．５ｍ以上をオブジェクトＣに対応付ける。よって、操作者が画面に手を近づけるとオブジェクトＢが選択され、遠ざけるとオブジェクトＣが選択される。
【００５４】
以上のことから、本発明の情報処理装置を利用することで、タッチ操作とジェスチャ操作の干渉を抑制することができる。従って、ユーザの操作性を向上することができる。
【実施例２】
【００５５】
本実施例では、実施例１と同様に、本発明の情報処理装置１００を利用した場合の実施例を説明する。実施例１との違いは、オブジェクトの表示位置、操作者の位置、操作入力の位置の少なくとも１つの変化を検出する。そして、位置変化が検出された場合に、距離算出以降の処理を行う。
【００５６】
図３（Ｂ）は本実施例における情報処理装置１００の機能構成図である。実施例１の情報処理装置１００の構成に、位置変化検出部３１２が追加されている。以下、実施例１の図３（Ａ）と異なる部分のみを説明する。
【００５７】
位置変化検出部３１２は、オブジェクトの表示位置、操作者の位置、操作入力の位置の少なくとも１つの変化を検出する。例えば、前回処理を実行した時のそれぞれの位置を保持部３０１に記憶しておき、新たに取得した位置が所定の閾値以上移動した場合に、位置変化として検出する。この位置変化検出結果は、オブジェクト距離算出部３１０と操作入力距離算出部３１１に通知される。
【００５８】
オブジェクト距離算出部３１０と操作入力距離算出部３１１は、位置変化検出部３１２で位置変化が検出された場合に、距離を算出する。距離を算出する方法は、実施例１と同様である。
【００５９】
図５（Ｂ）は本実施例におけるＳ４０３の詳細フローチャートである。実施例１の図５（Ａ）と異なる部分は、Ｓ５０７が追加されている。
【００６０】
Ｓ５０７において、位置変化検出部３１２で位置変化が検出された場合は、Ｓ５０１へ進む。検出されなかった場合は、処理を終了する。
【００６１】
以上のことから、オブジェクトの表示位置、操作者の位置、操作入力の位置の変化を検出し、位置変化が検出された時に、距離算出以降の処理を行うことで、上記処理を適切な時に実行することができる。したがって、円滑な操作性を保ちながら、計算コストを削減することができる。
【００６２】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005675196.tif 000002
【図２】
0005675196.tif 000003
【図３】
0005675196.tif 000004
【図４】
0005675196.tif 000005
【図５】
0005675196.tif 000006
【図６】
0005675196.tif 000007