(57)【要約】【課題】複数のユーザがタッチディスプレイを共有して操作する際の利便性を向上させることを目的とする。【解決手段】入力画面に同時に行われた複数の入力それぞれの入力位置を取得する入力位置取得手段と、入力画面上に存在する複数のオブジェクトそれぞれのオブジェクト位置を取得するオブジェクト位置取得手段と、オブジェクト位置に基づいて、複数のオブジェクトそれぞれに対応する、入力画面上の複数の操作領域を決定する領域決定手段と、入力位置及び操作領域に基づいて、複数の入力をオブジェクト毎に分類する分類手段とを有する。【選択図】図２
2015138291.tif 000002
【特許請求の範囲】
【請求項１】
入力画面に同時に行われた複数の入力それぞれの入力位置を取得する入力位置取得手段と、
前記入力画面上に存在する複数のオブジェクトそれぞれのオブジェクト位置を取得するオブジェクト位置取得手段と、
前記オブジェクト位置に基づいて、前記複数のオブジェクトそれぞれに対応する、前記入力画面上の複数の操作領域を決定する領域決定手段と、
前記入力位置及び前記操作領域に基づいて、前記複数の入力をオブジェクト毎に分類する分類手段と
を有する入力制御装置。
【請求項２】
前記オブジェクトの向きを特定する向き特定手段をさらに有し、
前記領域決定手段は、前記向きに基づいて、前記オブジェクトに対応する前記操作領域を決定する請求項１に記載の入力制御装置。
【請求項３】
前記オブジェクトは、情報処理装置であって、
前記情報処理装置において起動中のアプリケーションを示すアプリケーション情報を取得するアプリケーション情報取得手段をさらに有し、
前記領域決定手段は、前記アプリケーション情報に基づいて、前記オブジェクトに対応する前記操作領域を決定する請求項１又は２に記載の入力制御装置。
【請求項４】
前記領域決定手段は、前記複数のオブジェクト間の距離が閾値以下である場合に、前記操作領域を決定する請求項１乃至３何れか１項に記載の入力制御装置。
【請求項５】
入力制御装置が実行する入力制御方法であって、
入力画面に同時に行われた複数の入力それぞれの入力位置を取得する入力位置取得ステップと、
前記入力画面上に存在する複数のオブジェクトそれぞれのオブジェクト位置を取得するオブジェクト位置取得ステップと、
前記オブジェクト位置に基づいて、前記複数のオブジェクトそれぞれに対応する、前記入力画面上の複数の操作領域を決定する領域決定ステップと、
前記入力位置及び前記操作領域に基づいて、前記複数の入力をオブジェクト毎に分類する分類ステップと
を含む入力制御方法。
【請求項６】
コンピュータを、
入力画面に同時に行われた複数の入力それぞれの入力位置を取得する入力位置取得手段と、
前記入力画面上に存在する複数のオブジェクトそれぞれのオブジェクト位置を取得するオブジェクト位置取得手段と、
前記オブジェクト位置に基づいて、前記複数のオブジェクトそれぞれに対応する、前記入力画面上の複数の操作領域を決定する領域決定手段と、
前記入力位置及び前記操作領域に基づいて、前記複数の入力をオブジェクト毎に分類する分類手段と
として機能するためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力制御装置、入力制御方法及びプログラムに関する。
【背景技術】
【０００２】
従来、大型の１つのタッチスクリーンディスプレイを複数人で共有して操作する技術が知られている。このような技術においては、例えば、ダブルクリックやカットアンドペーストのように連続する操作が異なるユーザによりなされたものと誤認識された場合には、ユーザが意図した処理と異なる処理が行われてしまう。そこで、タッチスクリーンを制御する情報処理装置は、各操作がいずれのユーザによるものかを特定する必要がある。
ユーザ毎の操作を管理する技術としては、タッチスクリーンディスプレイ上に、ユーザ毎に独立して操作可能な領域を形成するものが知られている。例えば、特許文献１には、ユーザ操作に応じて、タッチスクリーンディスプレイ上の領域を形成、レイアウトする技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−６５５５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、より快適な環境において、タッチスクリーンディスプレイを複数人で共有する際のユーザの利便性をさらに向上させることが望まれている。
【０００５】
本発明はこのような問題点に鑑みなされたもので、複数のユーザがタッチディスプレイを共有して操作する際の利便性を向上させることを目的とする。
【課題を解決するための手段】
【０００６】
そこで、本発明は、入力制御装置であって、入力画面に同時に行われた複数の入力それぞれの入力位置を取得する入力位置取得手段と、前記入力画面上に存在する複数のオブジェクトそれぞれのオブジェクト位置を取得するオブジェクト位置取得手段と、前記オブジェクト位置に基づいて、前記複数のオブジェクトそれぞれに対応する、前記入力画面上の複数の操作領域を決定する領域決定手段と、前記入力位置及び前記操作領域に基づいて、前記複数の入力をオブジェクト毎に分類する分類手段とを有する。
【発明の効果】
【０００７】
本発明によれば、複数のユーザがタッチディスプレイを共有して操作する際の利便性を向上させることができる。
【図面の簡単な説明】
【０００８】
【図１】入力制御装置を示す図である。
【図２】入力制御装置を示す図である。
【図３】コンテンツのデータ構成の一例を示す図である。
【図４】イメージデータの表示例を示す図である。
【図５】領域決定処理を示すフローチャートである。
【図６】オブジェクト情報のデータ構成の一例を示す図である。
【図７】領域情報のデータ構成の一例を示す図である。
【図８】イメージデータの表示例を示す図である。
【図９】入力制御処理を示すフローチャートである。
【図１０】入力情報のデータ構成の一例を示す図である。
【図１１】入力情報分類処理を示すフローチャートである。
【図１２】オブジェクト別入力情報のデータ構成の一例を示す図である。
【図１３】コンテンツ更新処理を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について図面に基づいて説明する。
図１は、実施形態にかかる入力制御装置１００のハードウェア構成を示す図である。入力制御装置１００は、ＣＰＵ１０１と、ＲＯＭ１０２と、ＲＡＭ１０３と、ＨＤＤ１０４と、タッチディスプレイ１０５と、ネットワークＩ／Ｆ部１０６と、カメラ１０７とを有している。ＣＰＵ１０１は、ＲＯＭ１０２に記憶された制御プログラムを読み出して各種処理を実行する。ＲＡＭ１０３は、ＣＰＵ１０１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ１０４は、画像データや各種プログラム等各種情報を記憶する。
タッチディスプレイ１０５は、表示画面を有し、各種情報を表示する。タッチディスプレイ１０５はまた、入力画面を有し、ユーザによる指やペンによる接触操作を検知する。本実施形態にかかる入力制御装置１００のタッチディスプレイ１０５は、例えば、マルチタッチ型入力デバイスであり、複数のユーザにより同時に入力が行われた場合に、各入力を検知することができる。タッチディスプレイ１０５は、タッチ入力が行われた場合に、タッチ入力のタッチディスプレイ１０５上における位置を検出し、検出した位置を示す位置情報をＣＰＵ１０１に送る。
【００１０】
カメラ１０７は、画像を撮像する。本実施形態にかかるカメラ１０７は、タッチディスプレイ１０５を含む撮影範囲の画像を撮像する。例えば、ユーザが所持する携帯電話等のオブジェクトをタッチディスプレイ１０５上に置いたとする。この場合、カメラ１０７は、オブジェクトとタッチディスプレイ１０５とを含む画像を撮像する。なお、カメラ１０７は、動画及び静止画のいずれを撮像してもよい。ネットワークＩ／Ｆ部１０６は、ネットワークを介して無縁により外部装置との通信処理を行う。具体的には、ネットワークＩ／Ｆ部１０６は、Ｎｅａｒ  ｆｉｅｌｄ  ｃｏｍｍｕｎｉｃａｔｉｏｎ（ＮＦＣ）により、近距離無線通信を行う。
なお、後述する入力制御装置１００の機能や処理は、ＣＰＵ１０１がＲＯＭ１０２又はＨＤＤ１０４に格納されているプログラムを読み出し、このプログラムを実行することにより実現されるものである。
【００１１】
図２は、入力制御装置１００の機能構成を示す図である。入力制御装置１００は、入力情報生成部２０１と、オブジェクト位置特定部２０２と、オブジェクトＩＤ取得部２０３と、オブジェクト情報生成部２０４と、デバイス情報格納部２０５と、領域決定部２０６と、入力分類部２０７とを有している。入力制御装置１００はまた、コンテンツＤＢ２０８と、アクセス部２０９と、表示処理部２１０とを有している。なお、以下においては、各部の主な処理について説明する。各部の詳細な処理については、後に詳述する。
入力情報生成部２０１は、タッチディスプレイ１０５において、タッチ入力が検出された場合に、タッチディスプレイ１０５から入力位置を取得する。ここで、タ入力位置は、タッチディスプレイ１０５上における入力位置を示す情報である。そして、入力情報生成部２０１は、入力位置に基づいて、入力情報を生成する。
【００１２】
オブジェクト位置特定部２０２は、タッチディスプレイ１０５上にオブジェクトが存在する場合に、オブジェクト位置を特定する。ここで、オブジェクトは、ネットワークＩ／Ｆ部１０６と通信可能な携帯型の情報処理装置である。また、他の例としては、オブジェクトは、携帯型の情報処理装置が取り付けられた物体であってもよい。オブジェクト位置は、タッチディスプレイ１０５の、タッチディスプレイ１０５上における位置である。
具体的には、オブジェクト位置特定部２０２は、カメラ１０７により得られたタッチディスプレイ１０５近傍の画像に基づいて、カメラ１０７の設置位置と画像中のオブジェクトの位置から、オブジェクトの実空間における位置（３次元系の位置）を特定する。なお、オブジェクト位置特定部２０２が３次元系の位置を特定する処理については、例えば特開平２−１９９５９０号公報を参照することができる。さらに、オブジェクト位置特定部２０２は、特定した位置に基づいて、オブジェクトのタッチディスプレイ１０５上における２次元系の位置を特定する。
なお、タッチディスプレイ１０５上に存在するオブジェクトとは、タッチディスプレイ１０５に接しているオブジェクトだけでなく、例えば、ユーザの手に保持された状態でタッチディスプレイ１０５上の空間に位置しているようなオブジェクトも含む。オブジェクト位置特定部２０２は、例えば、タッチディスプレイ１０５の位置を基準とする基準範囲内に位置するオブジェクトを処理対象のオブジェクトとする。なお、基準範囲は、例えばＨＤＤ１０４等に予め格納されているものとする。
【００１３】
オブジェクトＩＤ取得部２０３は、オブジェクト位置特定部２０２により特定されたオブジェクト位置に基づいて、オブジェクト位置に位置するオブジェクトのオブジェクトＩＤを、ネットワークＩ／Ｆ部１０６を介して、オブジェクトから取得する。オブジェクト情報生成部２０４は、オブジェクト位置特定部２０２により特定されたオブジェクト位置及びオブジェクトＩＤ取得部２０３が取得したオブジェクトＩＤに基づいて、検出された各オブジェクトに対応する複数のオブジェクト情報を生成する。
デバイス情報格納部２０５は、デバイス情報を格納している。ここで、デバイス情報とは、タッチディスプレイ１０５の表示領域のサイズを示す情報である。領域決定部２０６は、複数のオブジェクト情報それぞれとデバイス情報とに基づいて、オブジェクト情報それぞれに対応するオブジェクトを所持するユーザの操作領域を特定する。そして、領域決定部２０６は、操作領域を示す領域情報を生成する。ここで、操作領域は、タッチディスプレイ１０５上の領域であり、各ユーザがタッチ操作可能な領域である。領域決定部２０６はまた、特定した操作領域に基づいて、後述のコンテンツのアクセス権を設定する。入力分類部２０７は、領域情報に基づいて、入力情報生成部２０１により生成された入力情報をオブジェクトＩＤ毎の入力情報に分類する。
コンテンツＤＢ２０８は、複数のコンテンツを含むコンテンツ群を格納している。コンテンツは、タッチディスプレイ１０５に表示されるデータである。アクセス部２０９は、入力分類部２０７から受け付けたオブジェクトＩＤ毎の入力情報に基づいて、コンテンツＤＢ２０８のコンテンツを更新する。表示処理部２１０は、領域情報及びコンテンツに基づいて、タッチディスプレイ１０５に表示するイメージデータを生成し、これをタッチディスプレイ１０５に表示する。
【００１４】
図３は、コンテンツのデータ構成の一例を示す図である。コンテンツ群３００は、複数のコンテンツ３０１を有している。各コンテンツ３０１は、コンテンツイメージ３０２と、サムネイルイメージ３０３と、プロパティ３０４とを有している。コンテンツイメージ３０２は、グラフィックデータやカメラ１０７により取得されたデジタルイメージデータである。サムネイルイメージ３０３は、コンテンツイメージ３０２を縮小したイメージデータである。
プロパティ３０４は、サムネイルイメージ３０３の表示レイアウトに関するサムネイル原点座標３０５及びサムネイルサイズ３０６と、コンテンツ３０１へのアクセスパーミッションに関するコンテンツアクセス権３０７とを有している。サムネイル原点座標３０５は、サムネイルイメージ３０３をタッチディスプレイ１０５に表示する際のタッチディスプレイ１０５におけるサムネイルの表示位置を示す座標情報である。サムネイルサイズ３０６は、サムネイルイメージ３０３のサイズを示す情報である。表示処理部２１０は、コンテンツ３０１のサムネイル原点座標３０５及びサムネイルサイズ３０６に基づいて、コンテンツの画像データを生成する。
【００１５】
コンテンツアクセス権３０７は、領域決定部２０６により領域情報に基づいて設定される。なお、コンテンツ３０１のうち、コンテンツアクセス権３０７以外の情報については、予めコンテンツＤＢ２０８に格納されているものとする。
図４は、表示処理部２１０により生成されたイメージデータの表示例を示す図である。図４に示す例においては、タッチディスプレイ１０５には、コンテンツＡ〜Ｅの５つのコンテンツが表示されている。表示処理部２１０は、図３に示すコンテンツ３０１のサムネイル原点座標３０５及びサムネイルサイズ３０６に基づいて、コンテンツＡ〜Ｅの画像を生成し、これらを含むイメージデータを生成する。
【００１６】
図５は、入力制御装置１００による、領域決定処理を示すフローチャートである。ＣＰＵ１０１は、カメラ１０７により撮像される画像に基づいて、オブジェクトの有無を監視し、オブジェクトが検出された場合に、領域決定処理を開始する。なお、本実施形態においては、複数のユーザそれぞれが所持する複数のオブジェクトがタッチディスプレイ１０５上に置かれた場合を例に領域決定処理について説明する。
Ｓ５００において、ＣＰＵ１０１は、検出されたオブジェクトの中から１つのオブジェクトを処理対象として選択する。なお、Ｓ５００〜Ｓ５０４の処理は、ループ処理であり、ＣＰＵ１０１は、検出されたすべてのオブジェクトが処理対象として選択されるまで、Ｓ５００〜Ｓ５０４の処理を繰り返す。
次に、Ｓ５０１において、オブジェクト位置特定部２０２は、処理対象の対象オブジェクトのオブジェクト位置を特定する。なお、Ｓ５０１の処理は、入力画面上に存在するオブジェクトのオブジェクト位置を取得するオブジェクト位置取得処理の一例である。次に、Ｓ５０２において、オブジェクトＩＤ取得部２０３は、オブジェクト位置に基づいて、対象オブジェクトのオブジェクトＩＤを取得する。
【００１７】
次に、Ｓ５０３において、オブジェクト情報生成部２０４は、オブジェクト位置及びオブジェクトＩＤに基づいて、対象オブジェクトのオブジェクト情報を生成する。図６は、オブジェクト情報のデータ構成の一例を示す図である。オブジェクト情報６０１は、オブジェクト位置６０２及びオブジェクトＩＤ６０３を有している。次に、Ｓ５０４において、ＣＰＵ１０１は、検出されたすべてのオブジェクトが対象オブジェクトとして選択されたか否かを確認する。ＣＰＵ１０１は、未選択のオブジェクトが存在する場合には、処理をＳ５００へ進める。そして、Ｓ５００において、未選択のオブジェクトを対象オブジェクトとして選択し、オブジェクト情報を生成する処理を継続する。一方で、ＣＰＵ１０１は、すべてのオブジェクトを対象オブジェクトとして選択済みである場合には、処理をＳ５０５へ進める。
このように、Ｓ５００〜Ｓ５０４の処理を繰り返すことにより、オブジェクト情報生成部２０４は、タッチディスプレイ１０５上に存在するオブジェクトと同数のオブジェクト情報６０１を生成する。これにより、図５に示すように、複数のオブジェクト情報６０１を含むオブジェクト情報群６００が得られる。
【００１８】
次に、Ｓ５０５において、ＣＰＵ１０１は、図６に示すオブジェクト情報群６００の中から１つのオブジェクト情報６０１を処理対象として選択する。なお、Ｓ５０５〜Ｓ５０８の処理は、ループ処理であり、ＣＰＵ１０１は、オブジェクト情報群６００に含まれるすべてのオブジェクト情報６０１が選択されるまで、Ｓ５０５〜Ｓ５０８の処理を繰り返す。
次に、Ｓ５０６において、領域決定部２０６は、デバイス情報及びＳ５００〜Ｓ５０３において生成されたオブジェクト情報に基づいて、オブジェクト毎（ユーザ毎）の操作領域を決定する（領域決定処理）。具体的には、領域決定部２０６は、処理対象の対象オブジェクト情報に含まれるオブジェクト位置６０２を基準とする基準範囲を、対象オブジェクト情報に対応するオブジェクトを所持するユーザの操作領域として決定する。本実施形態においては、基準範囲は、オブジェクト位置を中心とする矩形領域であるものとする。なお、基準範囲に関する情報は、例えばＨＤＤ１０４等に予め格納されているものとする。また、操作領域の形状は、実施形態に限定されるものではない。他の例としては、操作領域の形状は、円形であってもよい。
【００１９】
領域決定部２０６は、さらに、後述のＳ５０４の繰り返し処理において、操作領域間での重なりが生じないような、排他的な複数の操作領域を決定する。例えば、基準範囲に基づいて決定した操作領域が、Ｓ５０５〜Ｓ５０８のループ処理において既に作成済みの操作領域を含むような領域であったとする。この場合には、領域決定部２０６は、重なりが生じる範囲については、重なり合う２つの操作領域それぞれに対応するオブジェクト位置の中間点を２つの操作領域の境界位置とするように、２つの操作領域を調整する。
【００２０】
次に、Ｓ５０７において、領域決定部２０６は、決定した操作領域を示す領域情報を生成する。図７は、領域情報のデータ構成の一例を示す図である。領域情報７０１は、形状情報７０２、頂点座標７０３及びオブジェクトＩＤ７０４を有している。形状情報７０２は、操作領域の形状を示す情報である。本実施形態にかかる形状情報７０２は、矩形を示す情報である。頂点座標７０３は、矩形を描画するための頂点位置の座標情報である。オブジェクトＩＤは、操作領域に対応するオブジェクトのオブジェクトＩＤである。
領域決定部２０６は、ＨＤＤ１０４等に格納されている基準範囲に関する情報に基づいて、形状情報７０２を生成し、Ｓ５０３において実際に生成された操作領域の頂点座標を頂点座標７０３として生成する。領域決定部２０６はまた、処理対象のオブジェクト情報６０１に含まれるオブジェクトＩＤ６０３をオブジェクトＩＤ７０４にコピーする。
【００２１】
図５に戻り、Ｓ５０８において、ＣＰＵ１０１は、オブジェクト情報群６００に含まれるすべてのオブジェクト情報６０１が選択されたか否かを確認する。ＣＰＵ１０１は、未選択のオブジェクト情報６０１が存在する場合には、処理をＳ５０５へ進める。そして、Ｓ５０５において、未選択のオブジェクト情報６０１を選択し、領域情報を生成する処理を継続する。一方、ＣＰＵ１０１は、すべてのオブジェクト情報６０１を選択済みである場合には、処理をＳ５０９へ進める。
このように、Ｓ５０５〜Ｓ５０８の処理を繰り返すことにより、オブジェクト情報群６００に含まれるすべてのオブジェクト情報６０１に対応する複数の領域情報７０１を生成する。これにより、図７に示すように、複数の領域情報７０１を含む領域情報群７００が得られる。
【００２２】
次に、Ｓ５０９において、領域決定部２０６は、図３に示すコンテンツ群３００の各コンテンツ３０１のコンテンツアクセス権３０７を設定する。図３に示すように、コンテンツアクセス権３０７は、オブジェクトＩＤ３０８と、ユーザアクセス許可３０９と、オールアクセス許可３１０とを有している。領域決定部２０６は、オブジェクトＩＤ３０８にコンテンツ３０１のアクセス権を有するオブジェクトのオブジェクトＩＤを設定する。
具体的には、領域決定部２０６は、コンテンツ３０１のサムネイルの表示領域が包含される操作領域の領域情報７０１に含まれるオブジェクトＩＤ７０４をオブジェクトＩＤ３０８に設定する。以降、オブジェクトＩＤ３０８に登録されているオブジェクトＩＤを登録オブジェクトＩＤと称することとする。
【００２３】
ユーザアクセス許可３０９は、オブジェクトＩＤ３０８に設定されている登録オブジェクトＩＤに対するコンテンツ３０１のｒｅａｄ及びｗｒｉｔｅの可否を示す情報である。本実施形態においては、ユーザアクセス許可３０９には、ｒｅａｄ及びｗｒｉｔｅいずれについても可能が設定されているものとする。
オールアクセス許可３１０は、オブジェクトＩＤ３０８に設定されている登録オブジェクトＩＤ以外のオブジェクトＩＤに対する、コンテンツ３０１のｒｅａｄ及びｗｒｉｔｅの可否を示す情報である。本実施形態においては、オールアクセス許可３１０には、ｒｅａｄ可能及びｗｅｉｔｅ不可が設定されているものとする。
すなわち、オブジェクトＩＤ３０８に設定されている登録オブジェクトＩＤに対応するタッチ入力においては、対応するコンテンツ３０１のｒｅａｄ及びｗｒｉｔｅのいずれも許可される。一方、オブジェクトＩＤ３０８のオブジェクトＩＤ以外のオブジェクトＩＤに対応するタッチ入力においては、対応するコンテンツ３０１のｒｅａｄは許可されるが、ｗｒｉｔｅは禁止される。
【００２４】
なお、領域決定部２０６は、サムネイルの表示領域と操作領域の位置関係に基づいて、オブジェクトＩＤ３０８を設定すればよく、具体的な処理については、実施形態に限定されるものではない。他の例としては、領域決定部２０６は、サムネイルの表示領域のすべてが操作領域に包含された場合にかえて、一部包含された場合に、オブジェクトＩＤ７０４をオブジェクトＩＤ３０８に設定してもよい。
【００２５】
また、サムネイルの表示領域が、複数の操作領域と重なる場合には、領域決定部２０６は、重なり合う領域の面積が大きい方の操作領域に対応するオブジェクトＩＤをオブジェクトＩＤ３０８に設定することとする。
表示領域が複数の操作領域と重なる場合の他の例としては、領域決定部２０６は、いずれの操作領域に対応するオブジェクトＩＤ７０４も設定しないこととしてもよい。表示領域が複数の操作領域と重なる場合のさらに他の例としては、領域決定部２０６は、ｒｅａｄについては、いずれの操作領域に対応するオブジェクトＩＤからの指示も許可し、ｗｒｉｔｅについては、いずれのオブジェクＩＤからの指示も禁止してもよい。
【００２６】
次に、Ｓ５１０において、表示処理部２１０は、コンテンツ群３００及び領域情報群７００に基づいてイメージデータを生成し、これをタッチディスプレイ１０５に表示する。図８は、表示処理部２１０により生成されたイメージデータの表示例を示す図である。図８は、ユーザＡ，Ｂの２人のユーザがそれぞれ、自身が所持するオブジェクトＡ，Ｂをタッチディスプレイ１０５上に置いた場合の表示例を示している。
オブジェクトＡ，Ｂに対応し、タッチディスプレイ１０５には、２つの領域枠８００，８０１が表示されている。領域枠８００，８０１は、それぞれオブジェクトＡ，Ｂの置かれた位置を基準として、領域決定部２０６により特定された操作領域の境界線である。
【００２７】
表示処理部２１０は、それぞれ異なるオブジェクト（オブジェクトＡ，Ｂ）に対して生成された領域情報７０１に基づいて、図８に示す領域枠８００，８０１をタッチディスプレイ１０５に表示する。
具体的には、表示処理部２１０は、オブジェクトＡに対応する領域情報７０１の形状情報７０２及び頂点座標７０３により定まる操作領域を示す領域枠８００の画像を生成する。同様に、表示処理部２１０は、オブジェクトＢに対応する領域情報７０１の形状情報７０２及び頂点座標７０３に基づいて、領域枠８０１の画像を生成する。そして、表示処理部２１０は、これらの画像と、コンテンツの画像とを合成することにより、イメージデータを生成する。
【００２８】
図９は、入力制御装置１００による、入力制御処理を示すフローチャートである。ＣＰＵ１０１は、タッチディスプレイ１０５から入力されるタッチ入力の検出結果に基づいて、タッチ入力の有無を監視し、タッチ入力が検出された場合に、入力制御処理を開始する。なお、本実施形態においては、複数のユーザが同時にタッチディスプレイ１０５に対しタッチ入力を行った場合、すなわち、同時に複数のタッチ入力が行われた場合について説明する。また、本実施形態においては、タッチ入力が、コンテンツのレイアウト変更に係る指示入力である場合を例に説明する。
Ｓ９００において、ＣＰＵ１０１は、複数のタッチ入力の中から１つのタッチ入力を処理対象として選択する。なお、Ｓ９００〜Ｓ９０３の処理は、ループ処理であり、ＣＰＵ１０１は、検出されたすべてのタッチ入力が処理対象として選択されるまで、Ｓ９００〜Ｓ９０３の処理を繰り返す。
【００２９】
Ｓ９０１において、入力情報生成部２０１は、タッチディスプレイ１０５から、処理対象の対象タッチ入力に対応する入力位置を取得する（入力位置取得処理）。次に、Ｓ９０２において、入力情報生成部２０１は、対象タッチ入力に対する入力情報を生成する。
図１０は、入力情報のデータ構成の一例を示す図である。入力情報１００１は、ポインティング情報１００２及び操作情報１００３を含んでいる。操作情報１００３は、カット又はペースト等タッチ入力の操作の種類を示す情報である。ポインティング情報１００２は、時刻１００４及び入力座標１００５を含んでいる。時刻１００４は、タッチ入力が行われた時刻を示す情報である。入力座標１００５は、タッチ入力のタッチディスプレイ１０５上における入力位置の座標値（ｘ，ｙ）である。
入力情報生成部２０１は、タッチディスプレイ１０５から入力位置を取得した時刻を示す情報を時刻１００４として生成し、入力位置及びタッチディスプレイ１０５の表示内容等に基づいて、操作情報１００３を生成することにより、入力情報を生成する。
【００３０】
図９に戻り、Ｓ９０３において、ＣＰＵ１０１は、検出されたすべてのタッチ入力が対象タッチ入力として選択されたか否かを確認する。ＣＰＵ１０１は、未選択のタッチ入力が存在する場合には、処理をＳ９００へ進める。そして、Ｓ９００において、ＣＰＵ１０１は、未選択のタッチ入力を選択し、入力情報を生成する処理を継続する。一方で、ＣＰＵ１０１は、すべてのタッチ入力が選択済みである場合には、処理をＳ９０４へ進める。
以上の繰り返し処理により、複数のタッチ入力それぞれに対応する複数の入力情報１００１が生成される。これにより、入力情報生成部２０１は、図１０に示すように、複数の入力情報１００１を含む入力情報群１０００を得る。
【００３１】
Ｓ９０４において、入力分類部２０７は、領域情報に基づいて、入力情報群１０００に含まれる各入力情報１００１をオブジェクト別の入力情報に分類する（分類処理）。
図１１は、入力情報分類処理（Ｓ９０４）における詳細な処理を示すフローチャートである。Ｓ１１００において、ＣＰＵ１０１は、図１０に示す入力情報群１０００から１つの入力情報１００１を処理対象の対象入力情報として選択する。なお、Ｓ１１００〜Ｓ１１０６の処理は、ループ処理であり、ＣＰＵ１０１は、入力情報群１０００に含まれるすべての入力情報１００１が処理対象として選択されるまで、Ｓ１１００〜Ｓ１１０６の処理を繰り返す。
次に、Ｓ１１０１において、ＣＰＵ１０１は、図７に示す領域情報群７００から１つの領域情報７０１を処理対象の対象領域情報として選択する。なお、Ｓ１１０１〜Ｓ１１０５の処理は、ループ処理であり、ＣＰＵ１０１は、領域情報群７００に含まれるすべての領域情報７０１が処理対象として選択されるまで、Ｓ１１０１〜Ｓ１１０５の処理を繰り返す。
【００３２】
次に、Ｓ１１０２において、入力分類部２０７は、対象入力情報及び対象領域情報に基づいて、対象タッチ入力と対象操作領域の重なり判定を行う。ここで、対象タッチ入力は、対象入力情報に対応するタッチ入力である。また、対象操作領域は、対象領域情報に含まれる形状情報７０２及び頂点座標７０３により定まる操作領域である。具体的には、入力分類部２０７は、対象タッチ入力が対象操作領域に含まれるか否かを判定する。
入力分類部２０７は、重なりがあると判定した場合には（Ｓ１１０３でＹｅｓ）、処理をＳ１１０４へ進める。入力分類部２０７は、重なりがないと判定した場合には（Ｓ１１０３でＮｏ）、処理をＳ１１０５へ進める。
【００３３】
Ｓ１１０４において、入力分類部２０７は、対象入力情報に、対象領域情報に含まれるオブジェクトＩＤ７０４を付与し、オブジェクトＩＤと対象入力情報とを含むオブジェクト別入力情報を生成する。図１２は、オブジェクト別入力情報のデータ構成の一例を示す図である。オブジェクト別入力情報１２０１は、入力情報１２０２と、オブジェクトＩＤ１２０３とを有している。入力情報１２０２は、入力情報１００１と同じ情報である。すなわち、入力情報１２０２は、ポインティング情報１２０４と、操作情報１２０５と、時刻１２０６と、入力座標１２０７とを有している。
図１１に戻り、Ｓ１１０４において、入力分類部２０７は、対象入力情報（入力情報１００１）を入力情報１２０２とし、対象領域情報（領域情報７０１）に含まれるオブジェクトＩＤ７０４をオブジェクトＩＤ１２０３として生成する。これにより、オブジェクト別入力情報１２０１が生成される。
【００３４】
次に、Ｓ１１０５において、ＣＰＵ１０１は、領域情報群７００に含まれるすべての領域情報７０１が選択されたか否かを確認する。ＣＰＵ１０１は、未選択の領域情報７０１が存在する場合には、処理をＳ１１０１へ進める。そして、Ｓ１１０１において、未選択の領域情報７０１を選択し、オブジェクト別入力情報を生成する処理を継続する。一方で、ＣＰＵ１０１は、すべての領域情報７０１を選択済みである場合には、処理をＳ１１０６へ進める。
Ｓ１１０６において、ＣＰＵ１０１は、入力情報群１０００に含まれるすべての入力情報１００１が選択されたか否かを確認する。ＣＰＵ１０１は、未選択の入力情報１００１が存在する場合には、処理をＳ１１００へ進める。そして、Ｓ１１００において、未選択の入力情報１００１を選択し、オブジェクト別入力情報を生成する処理を継続する。一方で、ＣＰＵ１０１は、すべての入力情報１００１を選択済みである場合には、入力情報分類処理（Ｓ９０４）を終了し、図９に示すＳ９０５に処理を進める。
以上の繰り返し処理により、入力情報群１０００に含まれる複数の入力情報１００１から複数のオブジェクト別入力情報１２０１が生成され、図１２に示すように、複数のオブジェクト別入力情報１２０１を含むオブジェクト別入力情報群１２００が得られる。
【００３５】
図９のＳ９０５において、アクセス部２０９は、タッチ入力によりＣＰＵ１０１が受け付けたレイアウト変更指示に従い、コンテンツを更新する。図１３は、コンテンツ更新処理（Ｓ９０５）における詳細な処理を示すフローチャートである。Ｓ１３００において、ＣＰＵ１０１は、オブジェクト別入力情報群１２００から１つのオブジェクト別入力情報１２０１を処理対象の対象オブジェクト別入力情報として選択する。なお、Ｓ１３００〜Ｓ１３０８の処理は、ループ処理であり、ＣＰＵ１０１は、オブジェクト別入力情報群１２００に含まれるすべてのオブジェクト別入力情報１２０１が処理対象として選択されるまで、Ｓ１３００〜Ｓ１３０８の処理を繰り返す。
次に、Ｓ１３０１において、ＣＰＵ１０１は、図３に示すコンテンツ群３００から１つのコンテンツ３０１を処理対象の対象コンテンツとして特定する。なお、Ｓ１３０１〜Ｓ１３０７の処理は、ループ処理であり、ＣＰＵ１０１は、コンテンツ群３００に含まれるすべてのコンテンツ３０１が処理対象として選択されるまで、Ｓ１３０１〜Ｓ１３０７の処理を繰り返す。
【００３６】
次に、Ｓ１３０２において、アクセス部２０９は、対象オブジェクト別入力情報及び対象コンテンツに基づいて、対象タッチ入力と、対象サムネイルの重なり判定を行う。ここで、対象タッチ入力は、対象オブジェクト別入力情報に対応するタッチ入力である。また、対象サムネイルは、対象コンテンツに対応して、タッチディスプレイ１０５に表示されているサムネイルである。
具体的には、アクセス部２０９は、対象オブジェクト別入力情報に含まれるポインティング情報１２０４の入力座標１２０７と、対象コンテンツに含まれるサムネイル原点座標３０５と、サムネイルサイズ３０６とを参照する。そして、アクセス部２０９は、対象タッチ入力が対象サムネイルの表示領域に含まれるか否か、すなわち、対象タッチ入力が対象サムネイルを指定するものであるか否かを判定する。
【００３７】
アクセス部２０９は、重なりがあると判定した場合には（Ｓ１３０３でＹｅｓ）、処理をＳ１３０４へ進める。アクセス部２０９は、重なりがないと判定した場合には（Ｓ１３０３でＮｏ）、処理をＳ１３０７へ進める。次に、Ｓ１３０４において、アクセス部２０９は、アクセス権判定を行う。具体的には、アクセス部２０９は、対象オブジェクト別入力情報のオブジェクトＩＤ１２０３が対象コンテンツのコンテンツアクセス権３０７においてアクセス許可されているか否かを判定する。
アクセス部２０９は、アクセス権があると判定した場合には（Ｓ１３０５でＹｅｓ）、処理をＳ１３０６へ進める。アクセス部２０９は、アクセス権がないと判定した場合には（Ｓ１３０５でＮｏ）、処理をＳ１３０７へ進める。Ｓ１３０６において、アクセス部２０９は、対象オブジェクト別入力情報の操作情報１２０５に基づいて、コンテンツ３０１を更新する。本実施形態においては、アクセス部２０９は、操作情報１２０５としてのレイアウト変更指示に従い、コンテンツ３０１のサムネイル原点座標３０５を更新する。
【００３８】
Ｓ１３０７において、ＣＰＵ１０１は、コンテンツ群３００に含まれるすべてのコンテンツ３０１が選択されたか否かを確認する。ＣＰＵ１０１は、未選択のコンテンツ３０１が存在する場合には、処理をＳ１３０１へ進める。そして、Ｓ１３０１において、未選択のコンテンツ３０１を選択し、コンテンツプロパティを更新する処理を継続する。一方で、ＣＰＵ１０１は、すべてのコンテンツ３０１を選択済みである場合には、処理をＳ１３０８へ進める。
Ｓ１３０８において、ＣＰＵ１０１は、オブジェクト別入力情報群１２００に含まれるすべてのオブジェクト別入力情報１２０１が選択されたか否かを確認する。ＣＰＵ１０１は、未選択のオブジェクト別入力情報１２０１が存在する場合には、処理をＳ１３００へ進める。そして、Ｓ１３００において、未選択のオブジェクト別入力情報１２０１を選択し、コンテンツプロパティを更新する処理を継続する。一方で、ＣＰＵ１０１は、すべてのオブジェクト別入力情報１２０１を選択済みである場合には、コンテンツ更新処理（Ｓ９０５）を終了し、図９に示す入力制御処理を終了する。
【００３９】
次に、図８を参照しつつ、入力制御処理について、より具体的に説明する。図８に示すように、領域枠８００，８０１が表示された場合には、入力制御装置１００は、領域枠８００，８０１へのタッチ入力を、それぞれオブジェクトＡ，Ｂに対応するユーザＡ，Ｂによりなされた独立した操作として受け付ける。
以上のように、本実施形態にかかる入力制御装置１００は、複数のオブジェクトそれぞれに対応する複数の操作領域を決定し、入力位置と操作領域の関係に基づいて、入力情報を分類する。すなわち、入力制御装置１００は、複数のオブジェクトそれぞれに対応する複数のユーザによるタッチ入力を自動的に分類することができる。これにより、入力制御装置１００は、複数のユーザがタッチディスプレイを共有して操作する際の利便性を向上させることができる。
【００４０】
実施形態にかかる入力制御装置１００の第１の変更例としては、領域決定部２０６は、オブジェクト位置に加えて又はオブジェクトの位置替えて、オブジェクトの向きに基づいて、操作領域を決定してもよい。例えば、領域決定部２０６は、オブジェクトの正面が向いている方向に存在する領域を操作領域として決定してもよい。この場合、ＣＰＵ１０１は、カメラ１０７により得られた画像に基づいて、オブジェクトの向きを特定する。なお、オブジェクトの向きを特定する処理については、例えば特開平４−２９９４６７号公報を参照することができる。
【００４１】
第２の変更例としては、領域決定部２０６は、オブジェクトにおいて起動しているアプリケーションの種類に基づいて、操作領域の面積を決定してもよい。例えば、領域決定部２０６は、ビューワソフトが起動しているオブジェクトに対し、ビューワソフトが起動していないオブジェクトに比べて広い操作領域を決定してもよい。ビューワソフト起動中は、多くのコンテンツを参照することが予想されるためである。また、他の例としては、領域決定部２０６は、編集ソフトが起動しているオブジェクトに対し、編集ソフトが起動していないオブジェクトに比べて狭い操作領域を決定してもよい。編集ソフト起動中は、コンテンツを参照することが少ないと予想されるためである。なお、この場合には、ＣＰＵ１０１は、ネットワークＩ／Ｆ部１０６によるＮＦＣを介して、核オブジェクトにおいて起動中のアプリケーションを示すアプリケーション情報を取得するものとする（アプリケーション情報取得処理）。
【００４２】
第３の変更例としては、領域決定部２０６は、タッチディスプレイ１０５上に存在するオブジェクト間の距離が閾値以下である場合にのみ、操作領域を決定してもよい。そして、入力分類部２０７は、操作領域が決定された場合、すなわち、オブジェクト間の距離が閾値以下である場合にのみ、入力情報の分類を行う。ここで、閾値は、予めＨＤＤ１０４等に格納されているものとする。これにより、複数ユーザによるタッチ入力が一連の操作と誤認識される可能性が高い場合にのみ、入力情報の分類処理を行うことができる。
【００４３】
第４の変更例としては、入力制御装置１００は、外部機器からオブジェクト位置を取得してもよい（オブジェクト位置取得処理）。例えば、カメラを備える外部機器において、オブジェクト位置が特定され、特定されたオブジェクト位置が入力制御装置１００に送信される。
【００４４】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００４５】
以上、上述した各実施形態によれば、複数のユーザがタッチディスプレイを共有して操作する際の利便性を向上させることができる。
【００４６】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００４７】
１００  入力制御装置、１０１  ＣＰＵ、１０５  タッチディスプレイ、２０１  入力情報生成部、２０４  オブジェクト情報生成部、２０６  領域決定部、２０７  入力分類部
【図１】
2015138291.tif 000003
【図２】
2015138291.tif 000004
【図３】
2015138291.tif 000005
【図４】
2015138291.tif 000006
【図５】
2015138291.tif 000007
【図６】
2015138291.tif 000008
【図７】
2015138291.tif 000009
【図８】
2015138291.tif 000010
【図９】
2015138291.tif 000011
【図１０】
2015138291.tif 000012
【図１１】
2015138291.tif 000013
【図１２】
2015138291.tif 000014
【図１３】
2015138291.tif 000015