(57)【要約】【課題】ユーザの利用状況や意図を考慮してジェスチャに対応する動作を実行することが可能な表示制御装置を提供する。【解決手段】表示面に対して行われた操作から、ジェスチャの内容を判定する判定部と、前記判定部が判定した前記ジェスチャに対応する、前記表示面で表示されるオブジェクトの表示に関する方向が規定されている効果及び該効果の対象となる前記オブジェクトを決定する効果決定部と、を備える、表示制御装置が提供される。【選択図】図１
2018096827.tif 000002
【特許請求の範囲】
【請求項１】
表示面に対して行われた操作から、ジェスチャの内容を判定する判定部と、
前記判定部が判定した前記ジェスチャに対応する、前記表示面で表示される表示オブジェクトの配置方向を設定する効果及び該効果の対象となる前記表示オブジェクトを決定する効果決定部と、
を備える、表示制御装置。
【請求項２】
前記効果決定部は、決定した前記効果に基づき前記表示面上の該効果の対象の表示オブジェクトの配置を決定する、請求項１に記載の表示制御装置。
【請求項３】
前記操作は撮像装置によって撮像され、前記表示オブジェクトは、所定の物体の表面に投影を行う投影装置により表示される、請求項２に記載の表示制御装置。
【請求項４】
前記効果決定部は、前記操作から前記ジェスチャの候補として２以上の候補が存在すると前記判定部が判定した場合、複数の候補に基づいて前記効果を決定する処理を行う、請求項１に記載の表示制御装置。
【請求項５】
前記効果決定部は、前記ジェスチャの候補として２以上の候補が存在する場合、行われた前記操作から推測される複数のジェスチャで共通する効果を選択する、請求項４に記載の表示制御装置。
【請求項６】
前記効果決定部は、前記判定部が判定したジェスチャに対応する効果の対象となる表示オブジェクトの候補として２以上の候補が存在する場合、複数の候補に基づいて対象の表示オブジェクトを決定する処理を行う、請求項１に記載の表示制御装置。
【請求項７】
前記効果決定部は、効果の対象の表示オブジェクトの候補として２以上の候補が存在する場合、前記操作の場所に最も近い表示オブジェクトを対象の表示オブジェクトとする、請求項６に記載の表示制御装置。
【請求項８】
前記判定部は、同時に複数の操作が行われている場合、先に完了した操作の内容を優先してジェスチャの判定を行う、請求項１に記載の表示制御装置。
【請求項９】
前記判定部は、同時に複数の操作が行われている場合、該操作の対象に近い前記表示オブジェクトに近い位置で行われた操作の内容を優先してジェスチャの判定を行う、請求項１に記載の表示制御装置。
【請求項１０】
前記判定部は、同時に複数の操作が行われていた場合、効果が発揮される対象の表示オブジェクトに最後に触っていたユーザによって行われた操作の内容を優先してジェスチャの判定を行う、請求項１に記載の表示制御装置。
【請求項１１】
前記操作が、操作体で前記表示面に線を描く操作である場合に、前記判定部は、前記線の垂線の範囲に重心がある前記表示オブジェクトを前記線に沿って整列させるジェスチャであると判定する、請求項１に記載の表示制御装置。
【請求項１２】
前記操作が、操作体で前記表示面に線を描く操作である場合に、前記判定部は、前記表示面に表示されている全ての前記表示オブジェクトを前記線に沿って整列させるジェスチャであると判定する、請求項１に記載の表示制御装置。
【請求項１３】
前記操作が、操作体により前記表示面に第１の方向に沿う第１の線を描いた後に、続けて前記第１の方向に対して略垂直方向である第２の方向に第２の線を描く操作である場合、前記判定部は、少なくとも一つの前記表示オブジェクトを前記第１の線に沿う位置に移動させかつ前記第２の方向を基準とした配置方向に前記表示オブジェクトを表示させるジェスチャであると判定する、請求項１に記載の表示制御装置。
【請求項１４】
前記効果決定部は、前記第１の線及び前記第２の線の長さに合わせて、移動させる前記表示オブジェクトの表示サイズを調整する、請求項１３に記載の表示制御装置。
【請求項１５】
前記操作が、前記表示面上に存在する物理オブジェクトと所定の位置関係にある操作である場合に、前記効果決定部は、前記物理オブジェクトの配置位置に基づいて前記表示オブジェクトを表示させる、請求項１に記載の表示制御装置。
【請求項１６】
前記操作が、前記物理オブジェクトに沿って線を描く操作である場合に、前記効果決定部は、前記物理オブジェクト上に前記表示オブジェクトを表示させる、請求項１５に記載の表示制御装置。
【請求項１７】
前記操作が、複数の前記物理オブジェクトの間に線を描く操作である場合に、前記効果決定部は、前記複数の物理オブジェクトの間に前記表示オブジェクトを表示させる、請求項１５に記載の表示制御装置。
【請求項１８】
前記効果決定部は、前記操作を行うユーザの位置または手の角度に応じて前記表示オブジェクトの表示を補正する、請求項１に記載の表示制御装置。
【請求項１９】
プロセッサが、
表示面に対して行われた操作から、ジェスチャの内容を判定することと、
判定された前記ジェスチャに対応する、前記表示面で表示される表示オブジェクトの配置方向を設定する効果及び該効果の対象となる前記表示オブジェクトを決定することと、
を含む、表示制御方法。
【請求項２０】
コンピュータに、
表示面に対して行われた操作から、ジェスチャの内容を判定することと、
判定された前記ジェスチャに対応する、前記表示面で表示される表示オブジェクトの配置方向を設定する効果及び該効果の対象となる前記表示オブジェクトを決定することと、
を実行させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、表示制御装置、表示制御方法及びコンピュータプログラムに関する。
【背景技術】
【０００２】
ユーザの操作が予め規定されたパターン（ジェスチャ）に合致すれば、そのパターンに対応する動作を行う技術が存在する。例えば特許文献１には、ユーザが指やペンなどで矩形や丸を描くジェスチャを行うと、そのジェスチャのサイズに合わせてウインドウの大きさを規定する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−２７２８３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
既存のジェスチャを認識してそのジェスチャに対応する動作を行う技術では、ユーザが利用する向きがディスプレイに対する正面かつ鉛直方向の下向きに限定されている。従って、他の方向からの利用が考慮されていない。【０００５】
そこで、本開示では、ユーザの利用状況や意図を考慮してジェスチャに対応する動作を実行することが可能な、新規かつ改良された表示制御装置、表示制御方法及びコンピュータプログラムを提案する。
【課題を解決するための手段】
【０００６】
本開示によれば、表示面に対して行われた操作から、ジェスチャの内容を判定する判定部と、前記判定部が判定した前記ジェスチャに対応する、前記表示面で表示されるオブジェクトの表示に関する方向が規定されている効果及び該効果の対象となる前記オブジェクトを決定する効果決定部と、を備える、表示制御装置が提供される。【０００７】
また本開示によれば、プロセッサが、表示面に対して行われた操作から、ジェスチャの内容を判定することと、判定された前記ジェスチャに対応する、前記表示面で表示されるオブジェクトの表示に関する方向が規定されている効果及び該効果の対象となる前記オブジェクトを決定することと、を含む、表示制御方法が提供される。【０００８】
また本開示によれば、コンピュータに、表示面に対して行われた操作から、ジェスチャの内容を判定することと、判定された前記ジェスチャに対応する、前記表示面で表示されるオブジェクトの表示に関する方向が規定されている効果及び該効果の対象となる前記オブジェクトを決定することと、を実行させる、コンピュータプログラムが提供される。
【発明の効果】
【０００９】
以上説明したように本開示によれば、ユーザの利用状況や意図を考慮してジェスチャに対応する動作を実行することが可能な、新規かつ改良された表示制御装置、表示制御方法及びコンピュータプログラムを提供することが出来る。【００１０】
なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
【図面の簡単な説明】
【００１１】
【図１】本開示の一実施形態に係る情報処理システムの一構成例を示す説明図である。
【図２】同実施形態に係る情報処理システムの他の構成例を示す図である。
【図３】同実施形態に係る情報処理システムの他の構成例を示す図である。
【図４】同実施形態に係る情報処理システムの他の構成例を示す図である。
【図５】同実施形態に係る情報処理システム１００の機能構成例を示す説明図である。
【図６】ジェスチャ定義蓄積部２１０が蓄積する情報の例を示す説明図である。
【図７Ａ】ジェスチャ検出部２２０によるジェスチャの検出手法の例を示す説明図である。
【図７Ｂ】ジェスチャ検出部２２０によるジェスチャの検出手法の例を示す説明図である。
【図７Ｃ】ジェスチャ検出部２２０によるジェスチャの検出手法の例を示す説明図である。
【図７Ｄ】ジェスチャ検出部２２０によるジェスチャの検出手法の例を示す説明図である。
【図８Ａ】表示面に対してユーザが１本の指で一本線を描くジェスチャを行った様子を示す説明図である。
【図８Ｂ】表示面に対してユーザが１本の指で一本線を描くジェスチャを行った様子を示す説明図である。
【図８Ｃ】表示面に対してユーザが１本の指で一本線を描くジェスチャを行った様子を示す説明図である。
【図８Ｄ】表示面に対してユーザが１本の指で一本線を描くジェスチャを行った様子を示す説明図である。
【図８Ｅ】表示面に対してユーザが１本の指で一本線を描くジェスチャを行った様子を示す説明図である。
【図８Ｆ】表示面に対してユーザが１本の指で一本線を描くジェスチャを行った様子を示す説明図である。
【図８Ｇ】表示面に対してユーザが１本の指で一本線を描くジェスチャを行った様子を示す説明図である。
【図８Ｈ】表示面に対してユーザが１本の指で一本線を描くジェスチャを行った様子を示す説明図である。
【図９Ａ】表示面に対してユーザが２本の指で一本線を描くジェスチャを行った様子を示す説明図である。
【図９Ｂ】表示面に対してユーザが２本の指で一本線を描くジェスチャを行った様子を示す説明図である。
【図１０Ａ】表示面に対してユーザが１本の指で「Ｌ」字型の線を描くジェスチャを行った様子を示す説明図である。
【図１０Ｂ】表示面に対してユーザが１本の指で「Ｌ」字型の線を描くジェスチャを行った様子を示す説明図である。
【図１１Ａ】表示面に対してユーザが１本の指で「Ｌ」字型の線を描くジェスチャを行った様子を示す説明図である。
【図１１Ｂ】表示面に対してユーザが１本の指で「Ｌ」字型の線を描くジェスチャを行った様子を示す説明図である。
【図１２Ａ】パターンマッチングによってジェスチャを検出する際の例を示す説明図である。
【図１２Ｂ】パターンマッチングによってジェスチャを検出する際の例を示す説明図である。
【図１３】対象割り当て部２４０によるジェスチャの割り当て処理を示す説明図である。
【図１４】出力部１３０が出力するユーザインターフェースの例を示す説明図である。
【図１５Ａ】２人のユーザＡ、Ｂがいずれも同じようなタイミングで表示面上にＬ字線を描いた場合の例を示す説明図である。
【図１５Ｂ】２人のユーザＡ、Ｂがいずれも同じようなタイミングで表示面上にＬ字線を描いた場合の例を示す説明図である。
【図１５Ｃ】２人のユーザＡ、Ｂがいずれも同じようなタイミングで表示面上にＬ字線を描いた場合の例を示す説明図である。
【図１６Ａ】ユーザＢがウインドウを触っている様子を示す説明図である。
【図１６Ｂ】２人のユーザＡ、Ｂがいずれも同じようなタイミングで表示面上にＬ字線を描いた場合の例を示す説明図である。
【図１６Ｃ】ジェスチャの前にウインドウを触っていたユーザＢの方のジェスチャを優先させている例を示す説明図である。
【図１７Ａ】ユーザがＬ字線を描くジェスチャを表示面上に行った様子を示す説明図である。
【図１７Ｂ】表示面上にメッセージが表示されていたり、軌跡が表示面上で振動していたりする様子を示す説明図である。
【図１８Ａ】ユーザがＬ字線を描くジェスチャを表示面上に行った様子を示す説明図である。
【図１８Ｂ】メッセージが表示面に表示されている例を示す説明図である。
【図１９Ａ】ユーザＢがウインドウを操作している際に、ユーザＡがＬ字線を描くジェスチャを行った様子を示す説明図である。
【図１９Ｂ】ウインドウが移動する様子を示す説明図である。
【図１９Ｃ】表示面上にメッセージが表示されていたり、軌跡が表示面上で振動していたりする様子を示す説明図である。
【図２０Ａ】ユーザがＬ字線を表示面上に描いた様子を示す説明図である。
【図２０Ｂ】Ｌ字線を描くジェスチャによる効果がウインドウに与えられた様子を示す説明図である。
【図２１Ａ】ユーザがＬ字線を表示面上に描いた様子を示す説明図である。
【図２１Ｂ】Ｌ字線を描くジェスチャによる効果がウインドウに与えられた様子を示す説明図である。
【図２２Ａ】ユーザがＬ字線を表示面上に描いた様子を示す説明図である。
【図２２Ｂ】Ｌ字線を描くジェスチャによる効果がウインドウに与えられた様子を示す説明図である。
【図２３Ａ】ユーザがＬ字線を表示面上に描いた様子を示す説明図である。
【図２３Ｂ】Ｌ字線を描くジェスチャによる効果がウインドウに与えられた様子を示す説明図である。
【図２４Ａ】ユーザがＬ字線を表示面上に描いた様子を示す説明図である。
【図２４Ｂ】Ｌ字線を描くジェスチャによる効果がウインドウに与えられた様子を示す説明図である。
【図２５Ａ】ユーザがＬ字線を表示面上に描いた様子を示す説明図である。
【図２５Ｂ】Ｌ字線を描くジェスチャによる効果がウインドウに与えられた様子を示す説明図である。
【図２６Ａ】同実施形態に係る情報処理システムの動作例を示す流れ図である。
【図２６Ｂ】同実施形態に係る情報処理システムの動作例を示す流れ図である。
【図２７】ハードウェア構成例を示す説明図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１３】
なお、説明は以下の順序で行うものとする。
１．本開示の実施の形態
１．１．システム構成例
１．２．機能構成例
１．３．動作例
２．ハードウェア構成例
３．まとめ
【００１４】
＜１．本開示の実施の形態＞
［１．１．システム構成例］
まず、本開示の実施の形態に係る情報処理システムの構成例を説明する。
【００１５】
図１は、本開示の一実施形態に係る情報処理システムの一構成例を示す説明図である。なお、本明細書において、システムとは、所定の処理を実行するための構成のことを意味していてよく、システム全体として１つの装置とみなすこともできるし、複数の装置によってシステムが構成されているとみなすこともできる。図１に示す本実施形態に係る情報処理システムも、情報処理システム全体として所定の処理を実行可能に構成されていればよく、情報処理システム内のどの構成を１つの装置とみなすかは任意であってよい。
【００１６】
図１を参照すると、本開示の一実施形態に係る情報処理システム１００ａは、入力部１１０ａと、出力部１３０ａと、を備える。
【００１７】
出力部１３０ａは、各種の情報をテーブル１４０ａに表示することにより、当該情報をユーザに対して視覚的に通知する。出力部１３０ａとしては、例えばプロジェクタが用いられる。図示するように、出力部１３０ａは、テーブル１４０ａの上方に、例えば天井から吊り下げられた状態でテーブル１４０ａと所定の距離離隔して配置され、テーブル１４０ａの天面に情報を投影する。このように上方からテーブル１４０ａの天面に情報を表示する方式を、「プロジェクション型」とも呼称する。
【００１８】
なお、以下の説明では、出力部１３０ａによって情報が表示される領域全体のことを表示画面とも呼称する。例えば、出力部１３０ａは、表示画面に、情報処理システム１００ａによるアプリケーションの実行に伴いユーザに対して提示される情報を表示する。表示される情報は、例えば各アプリケーションの動作画面である。以下では、表示画面において、このようなアプリケーションの動作画面が表示される各表示領域を、ウインドウとも呼称する。また、例えば、出力部１３０ａは、表示画面に、ボタンやスライダー、チェックボックス、テキストボックス、キーボード等の、選択、入力等のユーザによる各種の操作を受け付ける、いわゆるＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）部品（ウィジェット）を表示する。ウインドウもＧＵＩ部品の１つとみなすことができるが、本明細書では、ウインドウとその他のＧＵＩ部品とを区別するために、便宜的に、ウインドウをＧＵＩ部品には含めず、ウインドウ以外の表示要素のことをＧＵＩ部品と呼ぶこととする。
【００１９】
ここで、情報処理システム１００ａがプロジェクション型である場合には、出力部１３０ａは照明機器を含んでもよい。出力部１３０ａに照明機器が含まれる場合、情報処理システム１００ａは、入力部１１０ａによって入力された情報の内容及び／又は出力部１３０ａによって表示される情報の内容に基づいて、当該照明機器の点灯、消灯等の状態を制御してもよい。
【００２０】
また、出力部１３０ａは、スピーカを含んでもよく、各種の情報を音声として出力してもよい。出力部１３０ａがスピーカで構成される場合、スピーカの数は１つであってもよく、複数であってもよい。出力部１３０ａが複数のスピーカで構成される場合、情報処理システム１００ａは、音声を出力するスピーカを限定したり、音声を出力する方向を調整したりしてもよい。
【００２１】
入力部１１０ａは、情報処理システム１００ａを使用するユーザの操作内容を入力する装置である。図１に示す例では、入力部１１０ａは、センサ等を含んで構成され、テーブル１４０ａの上方に、例えば天井から吊り下げられた状態で設けられる。このように、入力部１１０ａは、情報が表示される対象となるテーブル１４０ａと離隔して設けられる。入力部１１０ａは、テーブル１４０ａの天面、すなわち、表示画面を撮影し得る撮像装置によって構成され得る。入力部１１０ａとしては、例えば１つのレンズでテーブル１４０ａを撮像するカメラや、２つのレンズでテーブル１４０ａを撮像して奥行き方向の情報を記録することが可能なステレオカメラ等が用いられ得る。入力部１１０ａがステレオカメラである場合には、例えば可視光カメラや赤外線カメラ等が用いられ得る。
【００２２】
入力部１１０ａとして、１つのレンズでテーブル１４０ａを撮像するカメラが用いられる場合、情報処理システム１００ａは、そのカメラが撮像した画像（撮像画像）を解析することで、テーブル１４０ａ上に位置する物体、例えばユーザの手の位置を検出することができる。また、入力部１１０ａとしてステレオカメラが用いられる場合には、情報処理システム１００ａは、当該ステレオカメラによる撮像画像を解析することで、テーブル１４０ａ上に位置する物体の位置情報に加えて、当該物体の深度情報を取得することができる。情報処理システム１００ａは、当該深度情報に基づいて、高さ方向におけるテーブル１４０ａへのユーザの手の接触若しくは近接、及びテーブル１４０ａからの手の離脱を検出することが可能となる。なお、以下の説明では、ユーザが情報に表示画面に手等の操作体を接触又は近接させることを、まとめて単に「接触」とも称する。
【００２３】
本実施形態では、入力部１１０ａによる撮像画像に基づいて、表示画面上（すなわちテーブル１４０ａの天面上）における操作体、例えばユーザの手の位置が検出され、検出された操作体の位置に基づいて各種の情報が入力される。つまり、ユーザは、表示画面上で操作体を動かすことにより、各種の操作入力を行うことができる。例えば、ウインドウその他のＧＵＩ部品に対するユーザの手の接触が検出されることにより、当該ウインドウその他のＧＵＩ部品に対する操作入力が行われることになる。なお、以下の説明では、一例として、操作体としてユーザの手が用いられる場合について説明するが、本実施形態はかかる例に限定されず、操作体としてはスタイラス等の各種の操作部材が用いられてもよい。
【００２４】
また、入力部１１０ａが撮像装置によって構成される場合には、入力部１１０ａは、テーブル１４０ａの天面を撮影するだけでなく、テーブル１４０ａの周囲に存在するユーザを撮影してもよい。例えば、情報処理システム１００ａは、撮像画像に基づいて、テーブル１４０ａの周囲におけるユーザの位置を検出することができる。また、例えば、情報処理システム１００ａは、撮像画像に含まれるユーザの顔や体の大きさ等、ユーザ個人を特定し得る身体的な特徴を抽出することにより、ユーザの個人認識を行ってもよい。
【００２５】
ここで、本実施形態はかかる例に限定されず、他の方法によりユーザの操作入力が実行されてもよい。例えば、入力部１１０ａがテーブル１４０ａの天面にタッチパネルとして設けられてもよく、ユーザの操作入力は、当該タッチパネルに対するユーザの指等の接触によって検出されてもよい。また、入力部１１０ａを構成する撮像装置に対するジェスチャによってユーザの操作入力が検出されてもよい。あるいは、入力部１１０ａは、ユーザが発する音声や、周囲の環境の環境音を収音するマイクロフォン等の音声入力装置を含んでもよい。当該音声入力装置としては、特定の方向の音声を収音するためのマイクアレイが好適に用いられ得る。また、当該マイクアレイは、その収音方向を任意の方向に調整可能に構成され得る。入力部１１０ａとして音声入力装置が用いられる場合には、収音された音声により操作入力が行われてもよい。また、情報処理システム１００ａは、収音された音声を解析することにより、当該音声に基づいて個人認識を行ってもよい。あるいは、入力部１１０ａは、リモートコントロール装置（いわゆるリモコン）によって構成されてもよい。当該リモコンは、リモコンに配置された所定のボタンを操作することにより、所定の指示が入力されるものであってもよいし、リモコンに搭載される加速度センサやジャイロセンサ等のセンサによってリモコンの動きや姿勢が検出されることにより、ユーザが当該リモコンを動かす操作によって、所定の指示が入力されるものであってもよい。更に、情報処理システム１００ａは、図示しないマウス、キーボード、ボタン、スイッチ及びレバー等、他の入力装置を入力部１１０ａとして備えてもよく、ユーザによる操作は、これらの入力装置を介して入力されてもよい。
【００２６】
以上、図１を参照して、本実施形態に係る情報処理システム１００ａの構成について説明した。なお、図１には図示しないが、情報処理システム１００ａには他の装置が接続されていてもよい。例えば、情報処理システム１００ａには、テーブル１４０ａを照らすための照明機器が接続されていてもよい。情報処理システム１００ａは、表示画面の状態に応じて当該照明機器の点灯状態を制御してもよい。
【００２７】
ここで、本実施形態では、情報処理システムの構成は図１に示すものに限定されない。本実施形態に係る情報処理システムは、各種の情報を表示画面に表示する出力部と、表示された情報に対する操作入力を少なくとも受け付けることが可能な入力部を備えればよく、その具体的な構成は限定されない。図２−図４を参照して、本実施形態に係る情報処理システムの他の構成例について説明する。図２−図４は、本実施形態に係る情報処理システムの他の構成例を示す図である。
【００２８】
図２に示す情報処理システム１００ｂでは、テーブル１４０ｂの下方に出力部１３０ａが設けられる。出力部１３０ａは、例えばプロジェクタであり、当該テーブル１４０ｂの天板に向かって下側から情報を投影する。テーブル１４０ｂの天板は、例えばガラス板や透明プラスチック板等の透明な材質で形成されており、出力部１３０ａによって投影された情報は、テーブル１４０ｂの天面に表示されることとなる。このようにテーブル１４０ｂの下から情報を出力部１３０ａに投影して、テーブル１４０ｂの天面に情報を表示する方式を、「リアプロジェクション型」とも称する。
【００２９】
図２に示す例では、テーブル１４０ｂの天面（表面）に入力部１１０ｂが設けられる。入力部１１０ｂは、例えばタッチパネルによって構成され、テーブル１４０ｂの天面の表示画面への操作体の接触が当該タッチパネルによって検出されることにより、ユーザによる操作入力が行われる。なお、入力部１１０ｂの構成はかかる例に限定されず、図１に示す情報処理システム１００ａと同様に、入力部１１０ｂは、テーブル１４０ｂの下方にテーブル１４０ｂと離隔して設けられてもよい。この場合、入力部１１０ｂは、例えば撮像装置によって構成され、透明な材質によって形成される天板越しに、テーブル１４０ｂの天面上での操作体の位置を検出し得る。
【００３０】
図３に示す情報処理システム１００ｃでは、タッチパネル式のディスプレイが、その表示面を上方に向けた状態でテーブル上に設置される。情報処理システム１００ｃでは、入力部１１０ｃ及び出力部１３０ｃは、当該タッチパネル式のディスプレイとして一体的に構成され得る。つまり、ディスプレイの表示画面に各種の情報が表示され、当該ディスプレイの表示画面に対する操作体の接触がタッチパネルによって検出されることにより、ユーザによる操作入力が行われる。なお、情報処理システム１００ｃにおいても、図１に示す情報処理システム１００ａと同様に、入力部１１０ｃとして、タッチパネル式のディスプレイの上方に撮像装置が設けられてもよい。当該撮像装置により、テーブルの周囲のユーザの位置等が検出され得る。
【００３１】
図４に示す情報処理システム１００ｄは、フラットパネル式のディスプレイを備える。情報処理システム１００ｄでは、出力部１３０ｄは、フラットパネル式のディスプレイとして構成され、当該ディスプレイの表示画面に各種の情報が表示される。入力部は、図示しないマウスやキーボード、タッチパッド等の入力装置によって構成され、これらの入力装置によって表示画面内のポインタが操作されることにより、ユーザによる操作入力が行われる。なお、図３に示す情報処理システム１００ｃと同様に、情報処理システム１００ｄの入力部は、フラットパネル式のディスプレイに設けられるタッチパネルを含んでもよく、当該タッチパネルを介してユーザによる操作入力が行われてもよい。また、当該入力部は、フラットパネル式のディスプレイの表示面と対向する領域を撮像し得る撮像装置を含んでもよい。当該撮像装置により、フラットパネル式のディスプレイを観察するユーザの位置等が検出され得る。
【００３２】
以上、図２−図４を参照して、本実施形態に係る情報処理システムの他の構成例について説明した。以上説明したように、本実施形態に係る情報処理システムは、多様な構成によって実現され得る。ここで、以下では、図１に示す、テーブル１４０ａの上方に入力部１１０ａ及び出力部１３０ａが設けられる情報処理システム１００ａの構成を例に挙げて、本実施形態についての説明を行う。ただし、上述した図２−図４に示す構成等、本実施形態に係る情報処理システムを実現し得る他の構成であっても、以下に説明する機能と同様の機能を実現することが可能である。以下の説明では、簡単のため、情報処理システム１００ａ、入力部１１０ａ、出力部１３０ａを、単に情報処理システム１００、入力部１１０、出力部１３０とも呼称することとする。
【００３３】
以上、本開示の実施の形態に係る情報処理システム１００の構成例について説明した。続いて、本開示の実施の形態に係る情報処理システム１００の機能構成例について説明する。
【００３４】
［１．２．機能構成例］
図５は、本開示の実施の形態に係る情報処理システム１００の機能構成例を示す説明図である。以下、図５を用いて本開示の実施の形態に係る情報処理システム１００の機能構成について説明する。
【００３５】
図５に示したように、本開示の実施の形態に係る情報処理システム１００は、入力部１１１０と、グラフィックス表示処理部１２０と、出力部１３０と、表示制御部２００と、を含んで構成される。
【００３６】
入力部１１０は、情報処理システム１００に対して各種の情報を入力するための入力インターフェースである。ユーザは、入力部１１０を介して、各種の情報を情報処理システム１００に入力することができる。本実施形態では、入力部１１０は、出力部１３０によって生成される表示画面に対するユーザの操作入力を少なくとも受け付けることができるように構成される。例えば、入力部１１０は、イメージセンサを含む撮像装置によって構成され、表示画面上でのユーザの手等の操作体を含む撮像画像を撮影する。入力部１１０を介して入力された情報（例えば当該撮像画像についての情報等）は、後述する表示制御部２００に提供され、表示制御部２００によってユーザの操作入力が検出される。なお、本実施形態はかかる例に限定されず、入力部１１０は、例えばタッチパネル、マウス、キーボード、マイクロフォン、ボタン、スイッチ及びレバー等、他の入力装置によって構成されてもよい。
【００３７】
グラフィックス表示処理部１２０は、入力部１１０が受け付けたユーザの操作入力に基づき、出力部１３０に表示するグラフィックスの処理を行う。グラフィックス表示処理部１２０は、例えば、アプリケーションを表示するウインドウなどの様々なコンテンツの描画制御や、それぞれのコンテンツに対してユーザの操作入力などのイベントの提供を行う。本実施形態では、グラフィックス表示処理部１２０は、入力部１１０から受け付けたユーザの操作入力の内容を表示制御部２００に提供する。そしてグラフィックス表示処理部１２０は、表示制御部２００で行われた処理の内容を受け取り、その内容に基づいたグラフィックス処理を実行する。グラフィックス表示処理部１２０は、例えば画像処理回路を含んで構成される。
【００３８】
出力部１３０は、情報処理システム１００によって処理される各種の情報をユーザに対して通知するための出力インターフェースである。出力部１３０は、例えば、ディスプレイやプロジェクタ等の表示装置によって構成され、後述する表示制御部２００からの制御により、表示画面に各種の情報を表示する。出力部１３０は、上述したように、表示画面にウインドウ及びＧＵＩ部品を表示する。出力部１３０に表示されるウインドウ及びＧＵＩ部品等のことを「オブジェクト」とも称する。なお、本実施形態はかかる例に限定されず、出力部１３０は、スピーカ等の音声出力装置を更に含んでもよく、各種の情報を音声として出力してもよい。
【００３９】
表示制御部２００は、入力部１１０が受け付けたユーザの操作入力に基づいた処理を実行する。本実施形態では、表示制御部２００は、入力部１１０が受け付けたユーザの操作入力に基づいてジェスチャを検出し、そのジェスチャに基づいた効果をオブジェクトに対して与える処理を実行する。表示制御部２００は、例えばＣＰＵ等の制御回路と制御回路を動作させるプログラムを格納するメモリを含んで構成される。
【００４０】
表示制御部２００は、ジェスチャ定義蓄積部２１０と、ジェスチャ検出部２２０と、操作対象検出部２３０と、対象割り当て部２４０と、効果発動部２５０と、を含んで構成される。
【００４１】
ジェスチャ定義蓄積部２１０は、入力部１１０が受け付けたユーザの操作入力をジェスチャとして認識するための定義を、所定の形式で格納する。図６は、ジェスチャ定義蓄積部２１０が蓄積する情報の例を示す説明図である。図６では、３種類のジェスチャについて、指の本数、後述する認識パターンマスク、効果、対象の定義が示されている。効果については、位置、大きさ、回転の３種類が規定されており、丸が付いている効果がそのジェスチャによって発揮されることを意味している。
【００４２】
上段のジェスチャは、ユーザが１本の指で直線に近い一本線を描くものである。このジェスチャは、後述するように、出力部１３０によって表示されており、その線の範囲内において存在するオブジェクトを、その線に沿って整列させるものである。上段のジェスチャによって、オブジェクトの回転及び移動は行われうるが、大きさの変更は行われない。従って、図６に示したように、上段のジェスチャでは、「効果」の列において「位置」及び「回転」のみに丸が付いている。
【００４３】
中段のジェスチャは、ユーザが２本の指で直線に近い一本線を描くものである。このジェスチャは、後述するように、出力部１３０によって表示されている全てのオブジェクトを、その線に沿って整列させるものである。中段のジェスチャによって、オブジェクトの回転及び移動は行われうるが、大きさの変更は行われない。従って、図６に示したように、中段のジェスチャでは、「効果」の列において「位置」及び「回転」のみに丸が付いている。
【００４４】
下段のジェスチャは、ユーザが１本の指である方向に線を引いた後、その方向に垂直の方向にさらに線を描くものである。言い換えれば、下段のジェスチャは、ユーザが「Ｌ」の字を描くようなものである。このジェスチャは、後述するように、出力部１３０によって表示されているオブジェクトのうち、例えばユーザの操作位置に最も近いオブジェクトを、その線に沿って配置させるものである。下段のジェスチャによって、オブジェクトの回転、大きさの変更及び移動が行われうる。従って、図６に示したように、下段のジェスチャでは、「効果」の列において「位置」、「大きさ」及び「回転」の全てに丸が付いている。
【００４５】
なお、図６では３種類のジェスチャについての定義が示されているが、情報処理システム１００が解釈可能なジェスチャは係る例に限定されるものでは無い。
【００４６】
ジェスチャ検出部２２０は、入力部１１０が受け付けたユーザの操作入力を用いてジェスチャの成立の有無を検出する。本実施形態では、ジェスチャ検出部２２０は、ジェスチャ定義蓄積部２１０に蓄積されている認識パターンマスクとのマッチングによって、ジェスチャの成立の有無を検出する。
【００４７】
図７Ａ〜７Ｄは、ジェスチャ検出部２２０によるジェスチャの検出手法の例を示す説明図である。図７Ａは、ユーザが表示画面に対して、あるジェスチャに対応する操作を行った例を示す説明図である。図７Ａでは、ユーザが逆「Ｌ」字となるように一本指を表示画面上で移動させた様子が示されている。
【００４８】
図７Ｂ〜７Ｄは、ジェスチャ検出部２２０による、認識パターンマスクを用いたジェスチャの検出処理を示したものである。ジェスチャ検出部２２０は、まず、図７Ｂに示したように、表示画面の左上から右方向に認識パターンマスクを走査させ、右端まで操作すると、次の行で左から右方向へ認識パターンマスクを走査させる。そして、ジェスチャ検出部２２０は、最終的に図７Ｄに示したように、表示画面の右下まで認識パターンマスクを走査させると、ユーザの行った操作が認識パターンマスクと所定の比率以上合致する箇所が存在するかどうかを判断する。例えば、図７Ｃに示したように、ユーザの行った操作が認識パターンマスクと所定の比率以上合致していれば、ジェスチャ検出部２２０は、認識パターンマスクに対応するジェスチャをユーザが行ったと判断することができる。なお、ユーザが「Ｌ」字型の線を描く際には、「Ｌ」字を構成する２本の線のなす角度が完全に９０度になっていなくてもよい。例えば、「Ｌ」字を構成する２本の線のなす角度が８５度〜９５度などの所定の角度範囲であっても、ジェスチャ検出部２２０は、認識パターンマスクを用いることで、ユーザが「Ｌ」字型の線を描いたと判断することができる。
【００４９】
なお、本実施形態では、ジェスチャ検出部２２０は認識パターンマスクとのマッチングによって、ジェスチャの成立の有無を検出しているが、本開示は係る例に限定されるものでない。例えば、ジェスチャ検出部２２０は、ユーザの指の動きを逐次追跡することで、ジェスチャの成立の有無を検出しても良い。また例えば、ジェスチャ検出部２２０は、機械学習によって習得したユーザ毎のジェスチャの癖などから、ジェスチャの成立の有無を検出しても良い。
【００５０】
操作対象検出部２３０は、ユーザが行ったジェスチャによる効果を受け付けるのが、表示面上のどのオブジェクトなのかを検出する。以下、具体例を挙げて操作対象検出部２３０の動作について説明する。なお、実際の表示面には、ユーザが描いた線は描画されていなくても良いし、描画されてもよい。ユーザが描いた線が描画される場合には、所定の時間が経過した後に、その線が消えても良い。消える際には、一瞬で消えても良く、じわじわと消えても良い。またじわじわと消える際には、先に描いたところから順次消えても良い。以下の説明で用いる図面には、便宜上、ユーザが指を使って描いた線の軌跡が描かれているものとする。
【００５１】
（１）ユーザが１本の指で一本線を描く
本実施形態では、ユーザが１本の指で一本線を描くジェスチャは、出力部１３０によって表示面に表示されており、その線の範囲内において存在するオブジェクトを、その線に沿って整列させるものである。図８Ａ、８Ｂは、表示面に対してユーザが１本の指で一本線を描くジェスチャを行った様子を示す説明図である。ユーザがこのジェスチャを行うと、図８Ａのように乱雑に並んでいたウインドウ３０１〜３０３のうち、ウインドウ３０２、３０３が、図８Ｂに示すように、ユーザが描いた線に沿って整列する。なお、ウインドウの描画はグラフィックス表示処理部１２０が行いうる。整列の際には、それぞれのウインドウは、線に近い辺が下になるように整列される。ウインドウ３０２、３０３は、必要に応じて回転される。ユーザがこのジェスチャを行うと、操作対象検出部２３０は、ユーザが描いた線を直線とみなし、その直線の垂線上に重心があるウインドウを、効果の対象として検出する。
【００５２】
なお、対象のウインドウが重なって表示されている場合は、ユーザが１本の指で一本線を描くジェスチャに応じた整列の際にそれらのウインドウが重ならないように整列されてもよい。図８Ｃ、８Ｄは、表示面に対してユーザが１本の指で一本線を描くジェスチャを行った様子を示す説明図である。この例では、図８Ｃのように重なって表示されていたウインドウ３０２、３０３が、図８Ｄのようにジェスチャによって重ならないように整列される様子が示されている。
【００５３】
また、ユーザが１本の指で一本線を描くジェスチャに応じた整列の際に、一本線の垂線上に複数のウインドウが存在していれば、それらのウインドウが重なるように整列されてもよい。図８Ｅ、８Ｆは、表示面に対してユーザが１本の指で一本線を描くジェスチャを行った様子を示す説明図である。この例では、図８Ｅのように一本線の垂線上に複数のウインドウ３０１、３０２、３０３が、図８Ｆのようにジェスチャによって重なるように整列される様子が示されている。この際、図８Ｆに示したように、面積が大きいウインドウが下になるように重なって整列されてもよい。
【００５４】
ユーザがジェスチャを描く位置は表示面の端部付近とは限らない。図８Ｇは、ユーザが表示面の中央付近で１本の指で一本線を描くジェスチャを行った様子を示す説明図である。このような位置でジェスチャを行った場合、移動対象のウインドウはウインドウ３０２、３０３になるが、ウインドウ３０２は一本線の下側に、ウインドウ３０３は一本線の上側に、それぞれ移動されても良い。図８Ｈは、ウインドウ３０２、３０３が、ユーザが引いた一本線に沿って整列している様子を示す説明図である。
【００５５】
（２）ユーザが２本の指で一本線を描く
本実施形態では、ユーザが２本の指で一本線を描くジェスチャは、出力部１３０によって表示面に表示されている全てのオブジェクトを、その線（及び線の延長線上）に沿って整列させるものである。図９Ａ、９Ｂは、表示面に対してユーザが２本の指で一本線を描くジェスチャを行った様子を示す説明図である。ユーザがこのジェスチャを行うと、図９Ａのように乱雑に並んでいたウインドウ３０１〜３０３が、図９Ｂに示すように、ユーザが描いた線に沿って整列する。整列の際には、それぞれのウインドウは、線に近い辺が下になるように整列される。ウインドウ３０１〜３０３は、必要に応じて回転される。ユーザがこのジェスチャを行うと、操作対象検出部２３０は、表示面に表示されている全てのウインドウを、効果の対象として検出する。
【００５６】
なお、対象のウインドウが重なって表示されている場合は、１本の指でのジェスチャのときと同様に、ユーザが２本の指で一本線を描くジェスチャに応じた整列の際にそれらのウインドウが重ならないように整列されてもよい。
【００５７】
（３）ユーザが１本の指で「Ｌ」字型の線を描く
本実施形態では、ユーザが１本の指で「Ｌ」字型の線を描くジェスチャは、出力部１３０によって表示面に表示されているオブジェクトの内、線に最も近いオブジェクトを、その線に沿う位置に移動させるものである。すなわち、ユーザが１本の指で表示面上のある方向に１画目の線を描き、指を表示面に付けたまま、その線に対して略垂直方向に２画目の線を描く操作を「Ｌ」字型の線を描くジェスチャとする。図１０Ａ、１０Ｂは、表示面に対してユーザが１本の指で「Ｌ」字型の線を描くジェスチャを行った様子を示す説明図である。ユーザがこのジェスチャを行うと、図１０Ａのように表示されていたウインドウ３１１、３１２のうち、線に最も近いウインドウ３１２が、図１０Ｂの様に移動する。この際、ユーザが描いた２画目の線に近い辺が下になるように、ウインドウ３１２が移動する。「Ｌ」字型の線を描くジェスチャが行われると、ウインドウの表示内容が、写真、ビデオなどの上下方向があるコンテンツである場合、２画目を描く方向がコンテンツ表示の上方向になるよう、ウインドウが移動する。すなわち、自分に対して正対するＬ字を描けば自分を基準とした上下方向が設定され、机の反対にいる相手に正対する方向にＬ字を描けば相手を基準とした上下方向が設定される。このように「Ｌ」字型の線を描くジェスチャの効果として、「Ｌ」字の描き方によって、簡単に表示面の向こう側にいる相手を基準としたオブジェクトの配置が可能となる。ウインドウ３１２は、必要に応じて回転及び拡大または縮小される。ユーザがこのジェスチャを行うと、操作対象検出部２３０は、線に最も近いウインドウを、効果の対象として検出する。
【００５８】
ユーザが１本の指で「Ｌ」字型の線を描くジェスチャを行った際に、その線に最も近いオブジェクトの表示位置が固定されていれば、そのオブジェクトではなく、線に２番目に近いオブジェクトが、その線に沿う位置に移動される。図１１Ａ、１１Ｂは、表示面に対してユーザが１本の指で「Ｌ」字型の線を描くジェスチャを行った様子を示す説明図である。この場合、線に近いウインドウはウインドウ３２１であるが、そのウインドウ３２１は表示位置が固定されている。従って、操作対象検出部２３０は、ウインドウ３２１ではなく、線に２番目に近いウインドウであるウインドウ３２２を、効果の対象として検出する。
【００５９】
このように、それぞれのジェスチャに対して、操作対象となる条件を設定したり、その条件を無視する条件を設定したりすることで、本開示の実施の形態に係る情報処理システム１００は、ユーザのジェスチャに応じた表示処理を実現することが出来る。
【００６０】
対象割り当て部２４０は、ジェスチャ検出部２２０が検出したジェスチャと、操作対象検出部２３０が検出した対象のオブジェクトの割り当て処理を行う。すなわち、対象割り当て部２４０は、どのジェスチャがどの操作対象のオブジェクトへ影響を及ぼすかを判定する。
【００６１】
まず対象割り当て部２４０は、ユーザが表示面上に描いた線によって、一意にジェスチャが決定できるかどうかを判定する。例えば、ユーザが表示面上に描いた線が一本線なのかＬ字の線なのかが曖昧な場合に、すなわち、ユーザが描いた線に対応するジェスチャの候補が複数存在する場合に、対象割り当て部２４０は、その曖昧さを解決する曖昧ジェスチャ解決処理を行う。
【００６２】
図１２Ａ、１２Ｂは、パターンマッチングによってジェスチャを検出する際の例を示す説明図である。認識パターンマスクが縦５セル、横１０セルの計５０セルによって構成されている場合（なお、セルとは所定の数のピクセルの集合であるとする）、一本線の認識パターンマスクにも、Ｌ字線の認識パターンマスクにも、いずれも９８％（５０セル中４９セル）の割合で合致している。従って、この場合は、対象割り当て部２４０はユーザが描いた線が一本線なのかＬ字線なのかを判別することが出来ない。もちろん、このように２つの認識パターンマスクに合致する割合が完全に一致することは稀であるが、一般的にはジェスチャ定義には遊びを持たせることがあり、合致する割合の差が数％しか無いような場合もあり、そのような場合でも、対象割り当て部２４０は一意にジェスチャを決定することは出来ない。
【００６３】
認識パターンマスクへの合致度合いでは一意にジェスチャを決定することが出来ない場合、対象割り当て部２４０は、どのジェスチャも成立させないという処理も可能である。一方、一意にジェスチャを決定することが出来ない場合、対象割り当て部２４０は、ジェスチャ定義蓄積部２１０に蓄積されている定義の内、共通する効果のみを選択して、その効果を対象のオブジェクトに与えてもよい。例えば、図６を参照すると、一本線のジェスチャとＬ字線のジェスチャとで共通する効果は、「位置」及び「回転」である。従って、対象割り当て部２４０は、「位置」及び「回転」の効果のみを対象のオブジェクトに与えてもよい。図１３は、対象割り当て部２４０によるジェスチャの割り当て処理を示す説明図である。一意にジェスチャを決定することが出来ない場合、対象割り当て部２４０は、Ｌ字線のジェスチャによる効果の内、「位置」及び「回転」の効果のみを対象のウインドウ３３１に与えてもよい。
【００６４】
一意にジェスチャを決定することが出来ない場合、対象割り当て部２４０は、ユーザに利用したい効果を選択させても良い。図１４は、一意にジェスチャを決定することが出来ない場合に、出力部１３０が出力するユーザインターフェースの例を示す説明図である。ユーザが、利用したい方のジェスチャを選択すると、グラフィックス表示処理部１２０は、そのジェスチャに応じた処理を実行する。
【００６５】
本実施形態に係る情報処理システム１００は、複数のユーザが同時に操作するケースもある。対象割り当て部２４０は、複数人がジェスチャを行った際に、どのジェスチャを優先させるかを判断する。
【００６６】
図１５Ａは、２人のユーザＡ、Ｂがいずれも同じようなタイミングで表示面上にＬ字線を描いた場合の例を示す説明図である。このように、２人のユーザが同じようなタイミングで表示面上にＬ字線を描いた場合、対象割り当て部２４０は、例えば先に線を描き終えたユーザの方を優先させてもよい。図１５Ｂは、先に線を描き終えたユーザＡの方のジェスチャを優先させている例を示す説明図である。対象割り当て部２４０は、先に線を描き終えたユーザＡの方のジェスチャを優先させる。従って、ウインドウ３４１に対して効果が適用されるのはユーザＡの方のジェスチャとなっている。
【００６７】
２人のユーザが同じようなタイミングで表示面上にＬ字線を描き、描き終えた時間に有意差がなく、どちらが先に線を書き終えたかの判定が困難である場合は、対象割り当て部２４０は、重心に近い方の線を描いたユーザの方を優先させてもよい。図１５Ｃは、ウインドウ３４１の重心に近い方の線を描いたユーザＡの方のジェスチャを優先させている例を示す説明図である。対象割り当て部２４０は、ウインドウ３４１の重心に近い方の線を描いたユーザＡの方のジェスチャを優先させる。従って、ウインドウ３４１に対して効果が適用されるのはユーザＡの方のジェスチャとなっている。
【００６８】
２人のユーザが同じようなタイミングでジェスチャを行った場合は、対象割り当て部２４０は、ジェスチャを行う前に誰が対象のオブジェクトを利用（操作）していたかを判断の基準として用いても良い。例えば図１６Ａに示したようにユーザＢがウインドウ３５１を触っていたことが検出されていれば、図１６Ｂに示したようにユーザＡ、Ｂが同じようなタイミングでＬ字線を描くジェスチャを行って、同時にＬ字線を描き終えたとしても、対象割り当て部２４０は、ウインドウ３５１の重心に近い方の線を描いたユーザＡの方のジェスチャではなく、その前にウインドウ３５１を触っていたユーザＢの方のジェスチャを優先させても良い。図１６Ｃは、ジェスチャの前にウインドウ３５１を触っていたユーザＢの方のジェスチャを優先させている例を示す説明図である。
【００６９】
なお、最後にどのユーザが触っていたかの情報は、情報処理システム１００に常に保持されていなくても良い。例えば、最後に誰かが触った後に１０秒以上誰も触っていないオブジェクトは、対象割り当て部２４０は、そのオブジェクトは誰も触っていないものとして、オブジェクトに近い方のジェスチャを優先させるようにしても良い。
【００７０】
この他にも、対象割り当て部２４０は、例えばオブジェクトが重なっていれば、上のレイヤのオブジェクトを優先してもよく、またジェスチャを行ったユーザの方を向いているオブジェクトを優先してもよい。
【００７１】
本実施形態では、Ｌ字線を描くジェスチャによる効果が適用されるのは、線に最も近いオブジェクトである。しかし、ユーザがＬ字線を描いた場所によっては、どのオブジェクトに効果を適用して良いか判断できない場合がある。図１７Ａは、表示面に２つのウインドウ３６１、３６２が表示されている状態でユーザがＬ字線を描くジェスチャを表示面上に行った様子を示す説明図である。この場合において、Ｌ字線のジェスチャを適用した場合の、ウインドウ３６１の重心の移動量は６００ピクセル、ウインドウ３６２の重心の移動量は６１０ピクセルであるとする。厳密には、移動量の少ないウインドウ３６１が効果の適用対象になるが、もしかしたら、ユーザはウインドウ３６２を効果の適用対象と考えてジェスチャを行ったかもしれない。
【００７２】
このように、オブジェクトの移動量に有意差がなく、ユーザがどのオブジェクトを操作対象としてジェスチャを行ったのか分からない場合、すなわち、操作対象となるオブジェクトの候補が複数存在する場合に、対象割り当て部２４０は、オブジェクトの曖昧さを解決する曖昧操作対象解決処理を行う。例えば、対象割り当て部２４０は、最も近いオブジェクトを操作対象と決定しても良いが、他に、操作対象が複数存在している旨のメッセージを表示させたり、ユーザが描いた軌跡を表示面上で振動させたりして、操作対象のオブジェクトを一意に決定できない旨をユーザに伝えても良い。図１７Ｂは、表示面上にメッセージが表示されていたり、軌跡が表示面上で振動していたりする様子を示す説明図である。例えば、対象割り当て部２４０は、操作対象が複数存在している旨のメッセージ３６３を表示させて、ユーザに改めてジェスチャを行わせるよう促しても良い。また対象割り当て部２４０は、操作対象が複数存在していることを軌跡の振動でユーザに伝えて、ユーザに改めてジェスチャを行わせるよう促しても良い。
【００７３】
オブジェクトの移動量に有意差がなく、ユーザがどのオブジェクトを操作対象としてジェスチャを行ったのか分からない場合、対象割り当て部２４０は、対象のウインドウがどれなのかをユーザに選択させても良い。図１８Ａは、図１７Ａと同様に、表示面に２つのウインドウ３６１、３６２が表示されている状態でユーザがＬ字線を描くジェスチャを表示面上に行った様子を示す説明図である。この場合も、図１７Ａと同様に、オブジェクトの移動量に有意差がなく、ユーザがどのオブジェクトを操作対象としてジェスチャを行ったのか分からないものとする。この場合において、対象割り当て部２４０は、ジェスチャの効果を適用する対象のウインドウがどれなのかをユーザに選択させるためのメッセージを表示面上に表示させても良い。図１８Ｂは、ジェスチャの効果を適用する対象のウインドウがどれなのかをユーザに選択させるためのメッセージが表示面に表示されている例を示す説明図である。対象割り当て部２４０は、このようなメッセージを表示させることで、対象のウインドウがどれなのかをユーザに選択させることができる。
【００７４】
対象割り当て部２４０は、ユーザがジェスチャを行った際に、本来の操作対象が別のユーザに操作されている場合にも、柔軟に操作対象を決定することが出来る。例えば、Ｌ字線を描くジェスチャは、軌跡に最も近いオブジェクトが効果の適用対象となる。しかし、そのオブジェクトが別のユーザによって操作されている際にそのオブジェクトを移動させてしまうと、操作していたユーザのユーザビリティが損なわれてしまう。そこで対象割り当て部２４０は、ジェスチャを行ったユーザとは異なるユーザが操作しているオブジェクトは効果の適用対象から除外しても良い。
【００７５】
図１９Ａは、ユーザＢがウインドウ３７１を操作している際に、ユーザＡがＬ字線を描くジェスチャを行った様子を示す説明図である。本実施形態におけるジェスチャのルールに従えば、ユーザＡがＬ字線を描くことでウインドウ３７１が移動する。しかし、ウインドウ３７１はユーザＢが操作しており、ウインドウ３７１を移動させてしまうとユーザＢは困惑してしまう。そこで対象割り当て部２４０は、ユーザＢが操作しているウインドウ３７１を効果の適用対象から除外する。図１９Ｂは、ウインドウ３７１が効果の適用対象から除外され、次にジェスチャの軌跡に近いウインドウ３７２が移動する様子を示す説明図である。
【００７６】
同様の現象が発生した場合に、対象割り当て部２４０は、ウインドウ３７２を移動させるのではなく、操作対象のウインドウは他のユーザによって操作されている旨のメッセージを表示させたり、ユーザが描いた軌跡を表示面上で振動させたりして、操作対象のオブジェクトを動かすことができない旨をユーザに伝えても良い。図１９Ｃは、表示面上にメッセージが表示されていたり、軌跡が表示面上で振動していたりする様子を示す説明図である。例えば、対象割り当て部２４０は、操作対象のウインドウが他のユーザによって操作されている旨のメッセージ３７３を表示させて、ユーザに改めてジェスチャを行わせるよう促しても良い。また対象割り当て部２４０は、操作対象のウインドウが他のユーザによって操作されていることを軌跡の振動でユーザに伝えて、ユーザに改めてジェスチャを行わせるよう促しても良い。
【００７７】
効果発動部２５０は、ジェスチャ検出部２２０が検出したジェスチャと、操作対象検出部２３０が検出した操作対象とに基づいて、表示面上のオブジェクトにする効果を適用する処理を行う。例えば効果発動部２５０は、ジェスチャの内容及び操作対象に関する情報をグラフィックス表示処理部１２０に伝えて、グラフィックス表示処理部１２０に実際の画像処理を行わせる。グラフィックス表示処理部１２０は、効果発動部２５０からの情報に基づいて、ウインドウの、移動、拡大または縮小、回転などの処理を実行する。
【００７８】
図２０Ａは、ユーザがＬ字線を表示面上に描いた様子を示す説明図である。この場合、ジェスチャ検出部２２０はＬ字線を描くジェスチャが行われたことを検出し、操作対象検出部２３０は、ウインドウ３８１が、そのジェスチャに対する操作対象であることを検出する。効果発動部２５０は、Ｌ字線を描くジェスチャによる効果を、ウインドウ３８１に対して適用するようグラフィックス表示処理部１２０に通知する。通知を受けたグラフィックス表示処理部１２０は、ウインドウ３８１に対するグラフィックス処理（ここでは、移動、回転、縮小）を実行する。図２０Ｂは、Ｌ字線を描くジェスチャによる効果がウインドウ３８１に与えられた様子を示す説明図である。
【００７９】
効果発動部２５０は、ジェスチャの内容及び操作対象に関する情報をグラフィックス表示処理部１２０に伝える前に、ユーザの入力意図を汲み取るために、必要に応じて効果を適用する際に用いるグラフィックス処理関連のパラメータの補正を行う。
【００８０】
例えば、表示面上に物理的な物体が置かれており、その物体に沿ってユーザがＬ字線を描くジェスチャを行ったケースを想定する。図２１Ａは、ユーザがＬ字線を表示面上に描いた様子を示す説明図である。この場合、ジェスチャ検出部２２０はＬ字線を描くジェスチャが行われたことを検出し、操作対象検出部２３０は、ウインドウ３８１が、そのジェスチャに対する操作対象であることを検出する。しかし、表示面には直方体の物体３８２が置かれおり、そのままウインドウ３８１を移動させてしまうとウインドウ３８１の視認性が悪くなってしまう。なお、表示面上の物体の有無や、物体の位置、高さの情報は入力部１１０が取得する。
【００８１】
そこで効果発動部２５０は、移動、回転および変形後のウインドウ３８１と、物体３８２の表面とが所定値以上重なっていれば、ウインドウ３８１を物体３８２の表面に重なるよう移動させることを決定する。図２１Ｂは、Ｌ字線を描くジェスチャによる効果が、物体３８２の表面に重なるようにウインドウ３８１に与えられた様子を示す説明図である。このようにウインドウ３８１を移動させることで、効果発動部２５０は、ウインドウ３８１の視認性を維持できる。このように物体の位置を考慮した効果の適用は、情報処理システム１００が黒いテーブル上に画像を投影するものである場合に、白いナプキンの上だけにオブジェクトを投影するときにも利用できる。
【００８２】
また例えば、表示面上に物体が置かれており、その物体の間でユーザがＬ字線を描くジェスチャを行ったケースを想定する。図２２Ａは、ユーザがＬ字線を表示面上に描いた様子を示す説明図である。この場合、ジェスチャ検出部２２０はＬ字線を描くジェスチャが行われたことを検出し、操作対象検出部２３０は、ウインドウ３８１が、そのジェスチャに対する操作対象であることを検出する。しかし、表示面には直方体の物体３８３、３８４が置かれおり、そのままウインドウ３８１を移動させてしまうとウインドウ３８１の視認性が悪くなってしまう。なお、表示面上の物体の有無や、物体の位置、高さの情報は入力部１１０が取得する。
【００８３】
そこで効果発動部２５０は、移動、回転および変形後のウインドウ３８１と、物体３８３、３８４の表面とが所定値以上重なっていれば、ウインドウ３８１を物体３８３、３８４の隙間に移動させることを決定する。図２２Ｂは、Ｌ字線を描くジェスチャによる効果が、物体３８３、３８４の隙間に移動させるようにウインドウ３８１に与えられた様子を示す説明図である。このようにウインドウ３８１を移動及び縮小させることで、効果発動部２５０は、ウインドウ３８１の視認性を維持できる。
【００８４】
効果発動部２５０は、表示面上に物体が置かれている場合には、効果を適用する際に用いるグラフィックス処理関連のパラメータを、物体の表面積の大きさや、数、置かれている位置などに応じて補正しても良い。例えば、図２１Ａ、２１Ｂに示した物体３８２のように、形状が平面状で、表面と、移動後の対象のオブジェクトとの重なりが所定の割合以上である場合には、効果発動部２５０は、物体の表面にオブジェクトを重ねるよう、パラメータを補正してもよい。また例えば、図２１Ａ、２１Ｂに示した物体３８２のように、複数の物体が表示面上に置かれ、その物体の間でジェスチャがなされたものである場合には、効果発動部２５０は、その物体の間にオブジェクトが移動するよう、パラメータを補正してもよい。
【００８５】
効果発動部２５０は、ジェスチャを行ったユーザの指の向きや腕の付け根の位置をユーザが存在する向きとみなし、そのユーザの向きに合わせてパラメータを補正してもよい。図２３Ａは、ユーザがＬ字線を表示面上に描いた様子を示す説明図である。この場合、ジェスチャ検出部２２０はＬ字線を描くジェスチャが行われたことを検出し、操作対象検出部２３０は、ウインドウ３８１が、そのジェスチャに対する操作対象であることを検出する。
【００８６】
そして、効果発動部２５０は、入力部１１０が認識した、ジェスチャを行ったユーザの指の向きや腕の付け根の位置の情報を用いて、ウインドウ３８１の回転角のパラメータを補正してもよい。通常であれば、ユーザがＬ字線を表示面上に描くと、対象のウインドウはＬ字線に沿うように移動されるが、ジェスチャを行ったユーザの指の向きや腕の付け根の位置の情報から、ユーザが表示面の角付近にいると推測されれば、効果発動部２５０は、そのユーザによって操作しやすいよう、ウインドウ３８１の回転角を補正する。図２３Ｂは、Ｌ字線を描くジェスチャによる効果がウインドウ３８１に与えられた様子を示す説明図である。効果発動部２５０は、ジェスチャを行ったユーザが操作しやすいようウインドウ３８１の回転角を補正することで、図２３Ｂに示したように、ユーザが操作しやすいようにウインドウ３８１を移動させることができる。
【００８７】
効果発動部２５０は、ジェスチャの軌跡に沿うようオブジェクトを移動させるか、ユーザの位置に合わせて回転角を補正させるか、の判断を、ジェスチャの軌跡とユーザの向きとの角度差を用いて行っても良い。効果発動部２５０は、例えば、図２３Ｂに示した角度θが所定値以上である場合には、ユーザの位置に合わせて回転角を補正し、上記所定値未満である場合には、ジェスチャの軌跡に沿うようオブジェクトを移動させてもよい。
【００８８】
効果発動部２５０は、ユーザの位置が表示面の端部に近い位置にいることが分かれば、オブジェクトを表示面の端部に沿った位置に移動させるよう、オブジェクトの回転角のパラメータを補正しても良い。図２４Ａは、ユーザがＬ字線を表示面上に描いた様子を示す説明図である。この場合、ジェスチャ検出部２２０はＬ字線を描くジェスチャが行われたことを検出し、操作対象検出部２３０は、ウインドウ３８１が、そのジェスチャに対する操作対象であることを検出する。
【００８９】
そして、効果発動部２５０は、入力部１１０が認識した、ジェスチャを行ったユーザの指の向きや腕の付け根の位置の情報を用いて、ウインドウ３８１の回転角のパラメータを補正してもよい。通常であれば、ユーザがＬ字線を表示面上に描くと、対象のウインドウはＬ字線に沿うように移動されるが、ジェスチャを行ったユーザの指の向きや腕の付け根の位置の情報から、ユーザが表示面の角付近にいると推測されれば、ウインドウ３８１を表示面の端部に沿った位置に移動させるよう、ウインドウ３８１の回転角のパラメータを補正する。図２４Ｂは、Ｌ字線を描くジェスチャによる効果がウインドウ３８１に与えられた様子を示す説明図である。効果発動部２５０は、ウインドウ３８１を表示面の端部に沿った位置に移動させるよう、ウインドウ３８１の回転角のパラメータを補正することで、図２４Ｂに示したように、表示面の端部に沿ってウインドウ３８１を移動させることができる。
【００９０】
その他、ユーザがジェスチャを行った際に、どのようにオブジェクトを移動させるか、言い換えれば、効果発動部２５０がどのようにパラメータを補正するかは、例えば機械学習によって習得したユーザの傾向などを用いてもよい。あるユーザは、特定のウインドウを決まった位置に置いて使用していることが多いことが分かれば、そのユーザがジェスチャを行い、そのウインドウが対象となっていれば、効果発動部２５０は、その特定のウインドウが決まった位置に移動するようパラメータを補正してもよい。
【００９１】
ジェスチャを行うユーザの指の高さ方向の角度を入力部１１０が検出できる場合、効果発動部２５０は、その指の高さ方向の角度に応じて効果の適用時のパラメータを補正しても良い。以下では一例として、表示面上に角度のついた物体が置かれており、その物体にオブジェクトを移動される場合について説明する。
【００９２】
図２５Ａは、ユーザがＬ字線を表示面上に描いた様子を示す説明図である。この場合、ジェスチャ検出部２２０はＬ字線を描くジェスチャが行われたことを検出し、操作対象検出部２３０は、ウインドウ３９１が、そのジェスチャに対する操作対象であることを検出する。しかし、そのままウインドウ３９１をＬ字線の傍に移動させると、ウインドウ３９１は表示面上に置かれた物体３９２と重なってしまう。この物体３９２は、平面状ではなく表示面から所定の角度がついた物体であるとする。
【００９３】
この場合、ユーザが指を表示面に付けたまま表示面に対する指の角度を変える動作（例えば、ユーザが指を表示面に付けたまま手のひら部分を上げる動作）が検出されると、効果発動部２５０は、ウインドウ３９１をその動作に応じて変形させるように、パラメータを補正しても良い。その変形は、ウインドウ３９１の下辺を固定させた状態で、上辺の長さを変えることで、ウインドウ３９１の形状を長方形（または正方形）にしたり、台形にしたりするような変形である。
【００９４】
図２５Ｂは、ユーザがＬ字線を表示面上に描いた後に、指を表示面に付けたまま前に倒した様子を示す説明図である。ユーザが指を表示面に付けたまま前に倒したことが検出されると、効果発動部２５０は、その動作に応じて、物体３９２の表面に表示されているウインドウ３９１を変形させるようにパラメータを補正する。効果発動部２５０は、このようにウインドウ３９１を変形させるようにパラメータを補正することで、角度が付いた物体３９２の表面にウインドウ３９１の形状を合わせることができる。
【００９５】
本開示の判定部は、例えばジェスチャ検出部２２０や対象割り当て部２４０が該当し、本開示の効果決定部は、例えば操作対象検出部２３０、対象割り当て部２４０、効果発動部２５０が該当する。
【００９６】
以上、本開示の実施の形態に係る情報処理システム１００の機能構成例について説明した。続いて、本開示の実施の形態に係る情報処理システム１００の動作例について説明する。
【００９７】
［１．３．動作例］
図２６Ａ、２６Ｂは、本開示の実施の形態に係る情報処理システム１００の動作例を示す流れ図である。以下、図２６Ａ、２６Ｂを用いて本開示の実施の形態に係る情報処理システム１００の動作例について説明する。
【００９８】
情報処理システム１００は、ユーザの表示面に対する入力を検出すると（ステップＳ１０１）、ユーザの入力が確定したかどうか判断する（ステップＳ１０２）。ユーザの入力が確定していなければ（ステップＳ１０２、Ｎｏ）、情報処理システム１００はステップＳ１０１のユーザの入力の検出処理に戻る。ユーザの入力が確定していれば（ステップＳ１０２、Ｙｅｓ）、ジェスチャ定義蓄積部２１０からジェスチャ定義情報を取得する（ステップＳ１０３）。情報処理システム１００は、例えば、ユーザが表示面へのタッチ操作を行っていて、指が離れたことをもってユーザ入力が確定したと判断しても良く、また、ユーザの指の位置に所定時間以上変化がなければユーザ入力が確定したと判断しても良い。ユーザの入力が確定したかどうかの判断は、これらの例に限定されるものではない。また、情報処理システム１００は、ユーザの入力内容によっては、入力の確定を待たずにジェスチャを確定させても良い。例えば、ジェスチャ定義蓄積部２１０に蓄積されているジェスチャ定義の中で、指２本の入力によるジェスチャが１つしかなければ、ユーザが指２本で表示面に対する操作を行っていれば、情報処理システム１００は、その１つしかない指２本の入力によるジェスチャが行われていると判断し、入力の確定前に後述のジェスチャ検出処理に移行しても良い。
【００９９】
情報処理システム１００は、ジェスチャ定義蓄積部２１０からジェスチャ定義情報を取得すると、続いて、取得したジェスチャ定義情報を用いて、ジェスチャの定義分のジェスチャ検出処理を開始する（ステップＳ１０４）。全てのジェスチャ定義に対してジェスチャ検出処理が完了していなければ（ステップＳ１０４、Ｎｏ）、情報処理システム１００は、ジェスチャ検出部２２０によるジェスチャ検出処理を実行し（ステップＳ１０５）、あるジェスチャ定義に対するジェスチャ検出処理が完了すると、次のジェスチャ定義に対する処理に移る（ステップＳ１０６）。ジェスチャ検出部２２０によるジェスチャ検出処理は上述した通りであり、ここでは詳細な説明は割愛する。
【０１００】
全てのジェスチャ定義に対して処理が完了すれば（ステップＳ１０４、Ｙｅｓ）、続いて情報処理システム１００は、表示されている全てのオブジェクトに対する操作対象検出処理を開始する（ステップＳ１０７）。全てのオブジェクトに対して操作対象検出処理が完了していなければ（ステップＳ１０７、Ｎｏ）、情報処理システム１００は、操作対象検出部２３０による操作対象検出処理を実行し（ステップＳ１０８）、あるオブジェクトに対する処理が完了すると、次のオブジェクトに対する処理に移る（ステップＳ１０９）。操作対象検出部２３０による操作対象検出処理は上述した通りであり、ここでは詳細な説明は割愛する。操作対象検出処理の順序は、例えば、オブジェクトに付与されたＩＤの昇順であってもよく、オブジェクトの重心位置が表示面の左上にあるものから順次行われるようにしても良い。
【０１０１】
全てのオブジェクトに対して処理が完了すれば（ステップＳ１０７、Ｙｅｓ）、情報処理システム１００は、対象割り当て部２４０による、ジェスチャが一意に確定したかどうかの判断処理を行う（ステップＳ１１０）。ジェスチャが一意に確定していなければ、情報処理システム１００は、対象割り当て部２４０による、曖昧ジェスチャ解決処理を行う（ステップＳ１１１）。対象割り当て部２４０による曖昧ジェスチャ解決処理は上述した通りであり、ここでは詳細な説明は割愛する。
【０１０２】
続いて情報処理システム１００は、対象割り当て部２４０による、操作対象が一意に確定したかどうかの判断処理を行う（ステップＳ１１２）。操作対象が一意に確定していなければ、情報処理システム１００は、対象割り当て部２４０による、曖昧操作対象解決処理を行う（ステップＳ１１３）。対象割り当て部２４０による曖昧操作対象解決処理は上述した通りであり、ここでは詳細な説明は割愛する。
【０１０３】
ジェスチャ及び操作対象が確定すれば、情報処理システム１００は、対象割り当て部２４０による、ジェスチャ・操作対象割り当て処理を実行する（ステップＳ１１４）。対象割り当て部２４０による、ジェスチャ・操作対象割り当て処理は上述した通りであり、ここでは詳細な説明は割愛する。
【０１０４】
ジェスチャ・操作対象割り当て処理が完了すると、続いて情報処理システム１００は、効果発動部２５０によるジェスチャ発動時補正処理を実行する（ステップＳ１１５）。効果発動部２５０によるジェスチャ発動時補正処理は上述した通りであり、ここでは詳細な説明は割愛する。
【０１０５】
効果発動部２５０によるジェスチャ発動時補正処理が完了すると、続いて情報処理システム１００は、ユーザ入力に応じたジェスチャを発動させる（ステップＳ１１６）。
【０１０６】
本開示の実施の形態に係る情報処理システム１００は、上述した一連の動作を実行することで、ユーザの利用状況や意図を考慮してジェスチャに対応する動作を実行することが可能となる。
【０１０７】
＜２．ハードウェア構成例＞
次に、図２７を参照して、本開示の一実施形態にかかる情報処理システム１００のハードウェア構成について説明する。図２７は、本開示の実施形態にかかる情報処理システム１００のハードウェア構成例を示すブロック図である。
【０１０８】
図２７に示すように、情報処理システム１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）９０１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９０３、およびＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９０５を含む。また、情報処理システム１００は、ホストバス９０７、ブリッジ９０９、外部バス９１１、インターフェース９１３、入力装置９１５、出力装置９１７、ストレージ装置９１９、ドライブ９２１、接続ポート９２３、通信装置９２５を含んでもよい。さらに、情報処理システム１００は、必要に応じて、撮像装置９３３、およびセンサ９３５を含んでもよい。情報処理システム１００は、ＣＰＵ９０１に代えて、またはこれとともに、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）またはＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）と呼ばれるような処理回路を有してもよい。
【０１０９】
ＣＰＵ９０１は、演算処理装置および制御装置として機能し、ＲＯＭ９０３、ＲＡＭ９０５、ストレージ装置９１９、またはリムーバブル記録媒体９２７に記録された各種プログラムに従って、情報処理システム１００内の動作全般またはその一部を制御する。ＲＯＭ９０３は、ＣＰＵ９０１が使用するプログラムや演算パラメータなどを記憶する。ＲＡＭ９０５は、ＣＰＵ９０１の実行において使用するプログラムや、その実行において適宜変化するパラメータなどを一次記憶する。ＣＰＵ９０１、ＲＯＭ９０３、およびＲＡＭ９０５は、ＣＰＵバスなどの内部バスにより構成されるホストバス９０７により相互に接続されている。さらに、ホストバス９０７は、ブリッジ９０９を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス９１１に接続されている。
【０１１０】
入力装置９１５は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチおよびレバーなど、ユーザによって操作される装置である。入力装置９１５は、ユーザの音声を検出するマイクを含んでもよい。入力装置９１５は、例えば、赤外線やその他の電波を利用したリモートコントロール装置であってもよいし、情報処理システム１００の操作に対応した携帯電話などの外部接続機器９２９であってもよい。入力装置９１５は、ユーザが入力した情報に基づいて入力信号を生成してＣＰＵ９０１に出力する入力制御回路を含む。ユーザは、この入力装置９１５を操作することによって、情報処理システム１００に対して各種のデータを入力したり処理動作を指示したりする。また、後述する撮像装置９３３も、ユーザの手の動きなどを撮像することによって、入力装置として機能しうる。
【０１１１】
出力装置９１７は、取得した情報をユーザに対して視覚的または聴覚的に通知することが可能な装置で構成される。出力装置９１７は、例えば、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）、ＰＤＰ（Ｐｌａｓｍａ  Ｄｉｓｐｌａｙ  Ｐａｎｅｌ）、有機ＥＬ（Ｅｌｅｃｔｒｏ−Ｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイ、プロジェクタなどの表示装置、ホログラムの表示装置、スピーカおよびヘッドホンなどの音声出力装置、ならびにプリンタ装置などでありうる。出力装置９１７は、情報処理システム１００の処理により得られた結果を、テキストまたは画像などの映像として出力したり、音声または音響などの音声として出力したりする。また、出力装置９１７は、周囲を明るくするためライトなどを含んでもよい。
【０１１２】
ストレージ装置９１９は、情報処理システム１００の記憶部の一例として構成されたデータ格納用の装置である。ストレージ装置９１９は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などの磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス、または光磁気記憶デバイスなどにより構成される。このストレージ装置９１９は、ＣＰＵ９０１が実行するプログラムや各種データ、および外部から取得した各種のデータなどを格納する。
【０１１３】
ドライブ９２１は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブル記録媒体９２７のためのリーダライタであり、情報処理システム１００に内蔵、あるいは外付けされる。ドライブ９２１は、装着されているリムーバブル記録媒体９２７に記録されている情報を読み出して、ＲＡＭ９０５に出力する。また、ドライブ９２１は、装着されているリムーバブル記録媒体９２７に記録を書き込む。
【０１１４】
接続ポート９２３は、機器を情報処理システム１００に直接接続するためのポートである。接続ポート９２３は、例えば、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）ポート、ＩＥＥＥ１３９４ポート、ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）ポートなどでありうる。また、接続ポート９２３は、ＲＳ−２３２Ｃポート、光オーディオ端子、ＨＤＭＩ（登録商標）（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）ポートなどであってもよい。接続ポート９２３に外部接続機器９２９を接続することで、情報処理システム１００と外部接続機器９２９との間で各種のデータが交換されうる。
【０１１５】
通信装置９２５は、例えば、通信ネットワーク９３１に接続するための通信デバイスなどで構成された通信インターフェースである。通信装置９２５は、例えば、有線または無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、またはＷＵＳＢ（Ｗｉｒｅｌｅｓｓ  ＵＳＢ）用の通信カードなどでありうる。また、通信装置９２５は、光通信用のルータ、ＡＤＳＬ（Ａｓｙｍｍｅｔｒｉｃ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ）用のルータ、または、各種通信用のモデムなどであってもよい。通信装置９２５は、例えば、インターネットや他の通信機器との間で、ＴＣＰ／ＩＰなどの所定のプロトコルを用いて信号などを送受信する。また、通信装置９２５に接続される通信ネットワーク９３１は、有線または無線によって接続されたネットワークであり、例えば、インターネット、家庭内ＬＡＮ、赤外線通信、ラジオ波通信または衛星通信などである。
【０１１６】
撮像装置９３３は、例えば、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）またはＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）などの撮像素子、および撮像素子への被写体像の結像を制御するためのレンズなどの各種の部材を用いて実空間を撮像し、撮像画像を生成する装置である。撮像装置９３３は、静止画を撮像するものであってもよいし、また動画を撮像するものであってもよい。
【０１１７】
センサ９３５は、例えば、加速度センサ、ジャイロセンサ、地磁気センサ、光センサ、音センサなどの各種のセンサである。センサ９３５は、例えば情報処理システム１００の筐体の姿勢など、情報処理システム１００自体の状態に関する情報や、情報処理システム１００の周辺の明るさや騒音など、情報処理システム１００の周辺環境に関する情報を取得する。また、センサ９３５は、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）信号を受信して装置の緯度、経度および高度を測定するＧＰＳセンサを含んでもよい。
【０１１８】
以上、情報処理システム１００のハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。かかる構成は、実施する時々の技術レベルに応じて適宜変更されうる。
【０１１９】
＜３．まとめ＞
以上説明したように本開示の実施の形態によれば、表示面に対して行われた、少なくとも方向が規定されているユーザのジェスチャを検出し、そのユーザのジェスチャに応じた処理を実行することが可能な情報処理システム１００が提供される。本開示の実施の形態に係る情報処理システム１００は、ユーザのジェスチャに応じた処理を実行する際に、ユーザの意図を加味した処理を実行することが出来る。
【０１２０】
本明細書の各装置が実行する処理における各ステップは、必ずしもシーケンス図またはフローチャートとして記載された順序に沿って時系列に処理する必要はない。例えば、各装置が実行する処理における各ステップは、フローチャートとして記載した順序と異なる順序で処理されても、並列的に処理されてもよい。
【０１２１】
また、各装置に内蔵されるＣＰＵ、ＲＯＭおよびＲＡＭなどのハードウェアを、上述した各装置の構成と同等の機能を発揮させるためのコンピュータプログラムも作成可能である。また、該コンピュータプログラムを記憶させた記憶媒体も提供されることが可能である。また、機能ブロック図で示したそれぞれの機能ブロックをハードウェアで構成することで、一連の処理をハードウェアで実現することもできる。
【０１２２】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０１２３】
例えば、上述の説明では、表示面に対してユーザが指で操作を行うことで種々の処理が実行されていたが、本開示は係る例に限定されない。指は本開示の操作体の一例であり、操作体としては、指の他にも、スタイラス等のペン型のデバイスが用いられても良い。なお、操作体とは、表示面に対する操作を実行するためのものを言う。
【０１２４】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
【０１２５】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）
表示面に対して行われた操作から、ジェスチャの内容を判定する判定部と、
前記判定部が判定した前記ジェスチャに対応する、前記表示面で表示される表示オブジェクトの配置方向を設定する効果及び該効果の対象となる前記表示オブジェクトを決定する効果決定部と、
を備える、表示制御装置。
（２）
前記効果決定部は、決定した前記効果に基づき前記表示面上の該効果の対象の表示オブジェクトの配置を決定する、前記（１）に記載の表示制御装置。
（３）
前記操作は撮像装置によって撮像され、前記表示オブジェクトは、所定の物体の表面に投影を行う投影装置により表示される、前記（２）に記載の表示制御装置。
（４）
前記効果決定部は、前記操作から前記ジェスチャの候補として２以上の候補が存在すると前記判定部が判定した場合、複数の候補に基づいて前記効果を決定する処理を行う、前記（１）〜（３）のいずれかに記載の表示制御装置。
（５）
前記効果決定部は、前記ジェスチャの候補として２以上の候補が存在する場合、行われた前記操作から推測される複数のジェスチャで共通する効果を選択する、前記（４）に記載の表示制御装置。
（６）
前記効果決定部は、前記判定部が判定したジェスチャに対応する効果の対象となる表示オブジェクトの候補として２以上の候補が存在する場合、複数の候補に基づいて対象の表示オブジェクトを決定する処理を行う、前記（１）〜（５）のいずれかに記載の表示制御装置。
（７）
前記効果決定部は、効果の対象の表示オブジェクトの候補として２以上の候補が存在する場合、前記操作の場所に最も近い表示オブジェクトを対象の表示オブジェクトとする、前記（６）に記載の表示制御装置。
（８）
前記判定部は、同時に複数の操作が行われている場合、先に完了した操作の内容を優先してジェスチャの判定を行う、前記（１）〜（７）のいずれかに記載の表示制御装置。
（９）
前記判定部は、同時に複数の操作が行われている場合、該操作の対象に近い前記表示オブジェクトに近い位置で行われた操作の内容を優先してジェスチャの判定を行う、前記（１）〜（７）に記載の表示制御装置。
（１０）
前記判定部は、同時に複数の操作が行われていた場合、効果が発揮される対象の表示オブジェクトに最後に触っていたユーザによって行われた操作の内容を優先してジェスチャの判定を行う、前記（１）〜（９）のいずれかに記載の表示制御装置。
（１１）
前記操作が、操作体で前記表示面に線を描く操作である場合に、前記判定部は、前記線の垂線の範囲に重心がある前記表示オブジェクトを前記線に沿って整列させるジェスチャであると判定する、前記（１）〜（１０）のいずれかに記載の表示制御装置。
（１２）
前記操作が、操作体で前記表示面に線を描く操作である場合に、前記判定部は、前記表示面に表示されている全ての前記表示オブジェクトを前記線に沿って整列させるジェスチャであると判定する、前記（１）〜（１１）のいずれかに記載の表示制御装置。
（１３）
前記操作が、操作体により前記表示面に第１の方向に沿う第１の線を描いた後に、続けて前記第１の方向に対して略垂直方向である第２の方向に第２の線を描く操作である場合、前記判定部は、少なくとも一つの前記表示オブジェクトを前記第１の線に沿う位置に移動させかつ前記第２の方向を基準とした配置方向に前記表示オブジェクトを表示させるジェスチャであると判定する、前記（１）〜（１２）のいずれかに記載の表示制御装置。
（１４）
前記効果決定部は、前記第１の線及び前記第２の線の長さに合わせて、移動させる前記表示オブジェクトの表示サイズを調整する、前記（１３）に記載の表示制御装置。
（１５）
前記操作が、前記表示面上に存在する物理オブジェクトと所定の位置関係にある操作である場合に、前記効果決定部は、前記物理オブジェクトの配置位置に基づいて前記表示オブジェクトを表示させる、前記（１）〜（１４）のいずれかに記載の表示制御装置。
（１６）
前記操作が、前記物理オブジェクトに沿って線を描く操作である場合に、前記効果決定部は、前記物理オブジェクト上に前記表示オブジェクトを表示させる、前記（１５）に記載の表示制御装置。
（１７）
前記操作が、複数の前記物理オブジェクトの間に線を描く操作である場合に、前記効果決定部は、前記複数の物理オブジェクトの間に前記表示オブジェクトを表示させる、前記（１５）に記載の表示制御装置。
（１８）
前記効果決定部は、前記操作を行うユーザの位置または手の角度に応じて前記表示オブジェクトの表示を補正する、前記（１）〜（１７）のいずれかに記載の表示制御装置。
（１９）
プロセッサが、
表示面に対して行われた操作から、ジェスチャの内容を判定することと、
判定された前記ジェスチャに対応する、前記表示面で表示される表示オブジェクトの配置方向を設定する効果及び該効果の対象となる前記表示オブジェクトを決定することと、
を含む、表示制御方法。
（２０）
コンピュータに、
表示面に対して行われた操作から、ジェスチャの内容を判定することと、
判定された前記ジェスチャに対応する、前記表示面で表示される表示オブジェクトの配置方向を設定する効果及び該効果の対象となる前記表示オブジェクトを決定することと、
を実行させる、コンピュータプログラム。
【符号の説明】
【０１２６】
１００    情報処理システム
２００    表示制御部
【図１】
2018096827.tif 000003
【図２】
2018096827.tif 000004
【図３】
2018096827.tif 000005
【図４】
2018096827.tif 000006
【図５】
2018096827.tif 000007
【図６】
2018096827.tif 000008
【図７Ａ】
2018096827.tif 000009
【図７Ｂ】
2018096827.tif 000010
【図７Ｃ】
2018096827.tif 000011
【図７Ｄ】
2018096827.tif 000012
【図８Ａ】
2018096827.tif 000013
【図８Ｂ】
2018096827.tif 000014
【図８Ｃ】
2018096827.tif 000015
【図８Ｄ】
2018096827.tif 000016
【図８Ｅ】
2018096827.tif 000017
【図８Ｆ】
2018096827.tif 000018
【図８Ｇ】
2018096827.tif 000019
【図８Ｈ】
2018096827.tif 000020
【図９Ａ】
2018096827.tif 000021
【図９Ｂ】
2018096827.tif 000022
【図１０Ａ】
2018096827.tif 000023
【図１０Ｂ】
2018096827.tif 000024
【図１１Ａ】
2018096827.tif 000025
【図１１Ｂ】
2018096827.tif 000026
【図１２Ａ】
2018096827.tif 000027
【図１２Ｂ】
2018096827.tif 000028
【図１３】
2018096827.tif 000029
【図１４】
2018096827.tif 000030
【図１５Ａ】
2018096827.tif 000031
【図１５Ｂ】
2018096827.tif 000032
【図１５Ｃ】
2018096827.tif 000033
【図１６Ａ】
2018096827.tif 000034
【図１６Ｂ】
2018096827.tif 000035
【図１６Ｃ】
2018096827.tif 000036
【図１７Ａ】
2018096827.tif 000037
【図１７Ｂ】
2018096827.tif 000038
【図１８Ａ】
2018096827.tif 000039
【図１８Ｂ】
2018096827.tif 000040
【図１９Ａ】
2018096827.tif 000041
【図１９Ｂ】
2018096827.tif 000042
【図１９Ｃ】
2018096827.tif 000043
【図２０Ａ】
2018096827.tif 000044
【図２０Ｂ】
2018096827.tif 000045
【図２１Ａ】
2018096827.tif 000046
【図２１Ｂ】
2018096827.tif 000047
【図２２Ａ】
2018096827.tif 000048
【図２２Ｂ】
2018096827.tif 000049
【図２３Ａ】
2018096827.tif 000050
【図２３Ｂ】
2018096827.tif 000051
【図２４Ａ】
2018096827.tif 000052
【図２４Ｂ】
2018096827.tif 000053
【図２５Ａ】
2018096827.tif 000054
【図２５Ｂ】
2018096827.tif 000055
【図２６Ａ】
2018096827.tif 000056
【図２６Ｂ】
2018096827.tif 000057
【図２７】
2018096827.tif 000058
【国際調査報告】
2018096827.tif 000059
2018096827.tif 000060
2018096827.tif 000061
2018096827.tif 000062