(57)【特許請求の範囲】
【請求項１】
サーバと、端末とを有する表示制御システムであって、
前記サーバは、
テンプレート画像と注釈情報とを対応付けした注釈情報テーブルを記憶する記憶部と、
前記端末から送信された撮像画像上に類似する領域がある前記テンプレート画像を特定する特定部と、を備え、
前記端末は、
表示画面の変化を検知した場合に、該表示画面を撮像した撮像画像を生成する撮像部と、
前記撮像部が生成した前記撮像画像を前記サーバに送信する送信部と、
前記サーバから、特定された前記テンプレート画像と該テンプレート画像に対応付けされている前記注釈情報とを取得する取得部と、
最新の前記撮像画像上で前記取得部が取得した前記テンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、前記取得部が取得した前記注釈情報を重畳して表示する表示制御部と、を備え、
前記取得部は、前記サーバに送信された前記撮像画像の撮像時刻と最新の前記撮像画像の撮像時刻との差が所定のしきい値以下の場合に、前記サーバから、特定された前記テンプレート画像の前記撮像画像上の位置を取得し、
前記表示制御部は、前記取得部が取得した前記位置と同一の表示画面上の位置に対応して、前記注釈情報を重畳して表示する
ことを特徴とする表示制御システム。
【請求項２】
サーバと、端末とを有する表示制御システムであって、
前記サーバは、
テンプレート画像と注釈情報とを対応付けした注釈情報テーブルを記憶する記憶部と、
前記端末から送信された撮像画像上に類似する領域がある前記テンプレート画像を特定する特定部と、を備え、
前記端末は、
表示画面の変化を検知した場合に、該表示画面を撮像した撮像画像を生成する撮像部と、
前記撮像部が生成した前記撮像画像を前記サーバに送信する送信部と、
前記サーバから、特定された前記テンプレート画像と該テンプレート画像に対応付けされている前記注釈情報とを取得する取得部と、
最新の前記撮像画像上で前記取得部が取得した前記テンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、前記取得部が取得した前記注釈情報を重畳して表示する表示制御部と、を備え、
前記表示制御部は、前記サーバが特定した前記テンプレート画像のうち、所定の数より少ない前記テンプレート画像を対象にして、最新の前記撮像画像上で該テンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、該テンプレート画像に対応付けされている前記注釈情報を重畳して表示する
ことを特徴とする表示制御システム。
【請求項３】
サーバと、端末とを有する表示制御システムであって、
前記サーバは、
テンプレート画像と注釈情報とを対応付けした注釈情報テーブルを記憶する記憶部と、
前記端末から送信された撮像画像上に類似する領域がある前記テンプレート画像を特定する特定部と、を備え、
前記端末は、
表示画面の変化を検知した場合に、該表示画面を撮像した撮像画像を生成する撮像部と、
前記撮像部が生成した前記撮像画像を前記サーバに送信する送信部と、
前記サーバから、特定された前記テンプレート画像と該テンプレート画像に対応付けされている前記注釈情報とを取得する取得部と、
最新の前記撮像画像上で前記取得部が取得した前記テンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、前記取得部が取得した前記注釈情報を重畳して表示する表示制御部と、を備え、
前記表示制御部は、前記サーバに送信された前記撮像画像と最新の前記撮像画像との間で画像が共通する領域を除いて、該最新の前記撮像画像上で該テンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、該テンプレート画像に対応付けされている前記注釈情報を重畳して表示する
ことを特徴とする表示制御システム。
【請求項４】
サーバと、端末とを有する表示制御システムであって、
前記サーバは、
テンプレート画像と注釈情報とを対応付けした注釈情報テーブルを記憶する記憶部と、
前記端末から送信された撮像画像上に類似する領域がある前記テンプレート画像を特定する特定部と、を備え、
前記端末は、
表示画面の変化を検知した場合に、該表示画面を撮像した撮像画像を生成する撮像部と、
前記撮像部が生成した前記撮像画像を前記サーバに送信する送信部と、
前記サーバから、特定された前記テンプレート画像と該テンプレート画像に対応付けされている前記注釈情報とを取得する取得部と、
最新の前記撮像画像上で前記取得部が取得した前記テンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、前記取得部が取得した前記注釈情報を重畳して表示する表示制御部と、を備え、
前記送信部は、今回の前記撮像画像から前回送信した前記撮像画像との差分を抽出して前記サーバに送信し、
前記特定部は、前回送信された前記撮像画像と今回送信された該差分とを用いて今回の前記撮像画像の全体を復元し、復元した該撮像画像上に類似する領域がある前記テンプレート画像を特定する
ことを特徴とする表示制御システム。
【請求項５】
前記端末は、前記注釈情報テーブルを記憶する記憶部をさらに備え、
前記取得部は、前記サーバが特定した前記テンプレート画像を識別する識別情報を取得し、
前記表示制御部は、最新の前記撮像画像上で前記取得部が取得した前記識別情報に対応する前記テンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、該テンプレート画像に対応付けされている前記注釈情報を重畳して表示する
ことを特徴とする請求項１〜４のいずれか１項に記載の表示制御システム。
【請求項６】
テンプレート画像と注釈情報とを対応付けした注釈情報テーブルを記憶する記憶部を参照し、受信した撮像画像上に類似する領域がある前記テンプレート画像を特定するサーバに通信回線を介して接続され、表示画面上の対象物に対応して前記注釈情報を表示する端末が実行する表示制御方法であって、
表示画面の変化を検知した場合に、該表示画面を撮像した撮像画像を生成する撮像工程と、
前記撮像工程において生成された前記撮像画像を前記サーバに送信する送信工程と、
前記サーバから、特定された前記テンプレート画像と該テンプレート画像に対応付けされている前記注釈情報とを取得する取得工程と、
最新の前記撮像画像上で前記取得工程において取得された前記テンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、前記取得工程において取得された前記注釈情報を重畳して表示する表示制御工程と、
を含み、
前記取得工程においては、前記サーバに送信された前記撮像画像の撮像時刻と最新の前記撮像画像の撮像時刻との差が所定のしきい値以下の場合に、前記サーバから、特定された前記テンプレート画像の前記撮像画像上の位置を取得し、
前記表示制御工程においては、前記取得工程において取得された前記位置と同一の表示画面上の位置に対応して、前記注釈情報を重畳して表示する
ことを特徴とする表示制御方法。
【請求項７】
テンプレート画像と注釈情報とを対応付けした注釈情報テーブルを記憶する記憶部を参照し、受信した撮像画像上に類似する領域がある前記テンプレート画像を特定するサーバに通信回線を介して接続され、表示画面上の対象物に対応して前記注釈情報を表示する端末が実行する表示制御方法であって、
表示画面の変化を検知した場合に、該表示画面を撮像した撮像画像を生成する撮像工程と、
前記撮像工程において生成された前記撮像画像を前記サーバに送信する送信工程と、
前記サーバから、特定された前記テンプレート画像と該テンプレート画像に対応付けされている前記注釈情報とを取得する取得工程と、
最新の前記撮像画像上で前記取得工程において取得された前記テンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、前記取得工程において取得された前記注釈情報を重畳して表示する表示制御工程と、
を含み、
前記表示制御工程においては、前記サーバが特定した前記テンプレート画像のうち、所定の数より少ない前記テンプレート画像を対象にして、最新の前記撮像画像上で該テンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、該テンプレート画像に対応付けされている前記注釈情報を重畳して表示する
ことを特徴とする表示制御方法。
【請求項８】
テンプレート画像と注釈情報とを対応付けした注釈情報テーブルを記憶する記憶部を参照し、受信した撮像画像上に類似する領域がある前記テンプレート画像を特定するサーバに通信回線を介して接続され、表示画面上の対象物に対応して前記注釈情報を表示する端末が実行する表示制御方法であって、
表示画面の変化を検知した場合に、該表示画面を撮像した撮像画像を生成する撮像工程と、
前記撮像工程において生成された前記撮像画像を前記サーバに送信する送信工程と、
前記サーバから、特定された前記テンプレート画像と該テンプレート画像に対応付けされている前記注釈情報とを取得する取得工程と、
最新の前記撮像画像上で前記取得工程において取得された前記テンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、前記取得工程において取得された前記注釈情報を重畳して表示する表示制御工程と、
を含み、
前記表示制御工程においては、前記サーバに送信された前記撮像画像と最新の前記撮像画像との間で画像が共通する領域を除いて、該最新の前記撮像画像上で該テンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、該テンプレート画像に対応付けされている前記注釈情報を重畳して表示する
ことを特徴とする表示制御方法。
【請求項９】
テンプレート画像と注釈情報とを対応付けした注釈情報テーブルを記憶する記憶部を参照し、受信した撮像画像上に類似する領域がある前記テンプレート画像を特定するサーバに通信回線を介して接続され、表示画面上の対象物に対応して前記注釈情報を表示する端末が実行する表示制御方法であって、
表示画面の変化を検知した場合に、該表示画面を撮像した撮像画像を生成する撮像工程と、
前記撮像工程において生成された前記撮像画像を前記サーバに送信する送信工程と、
前記サーバから、特定された前記テンプレート画像と該テンプレート画像に対応付けされている前記注釈情報とを取得する取得工程と、
最新の前記撮像画像上で前記取得工程において取得された前記テンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、前記取得工程において取得された前記注釈情報を重畳して表示する表示制御工程と、
を含み、
前記送信工程においては、今回の前記撮像画像から前回送信した前記撮像画像との差分を抽出して前記サーバに送信し、
前記サーバは、前回送信された前記撮像画像と今回送信された該差分とを用いて今回の前記撮像画像の全体を復元し、復元した該撮像画像上に類似する領域がある前記テンプレート画像を特定する
ことを特徴とする表示制御方法。
【請求項１０】
請求項６〜９のいずれか１項に記載の表示制御方法が含む各工程をコンピュータに実行させることを特徴とする表示制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示制御システム、表示制御方法、および表示制御プログラムに関する。
【背景技術】
【０００２】
一般に、画面上の特定の部分の対象物に対して補足説明を行う注釈を対象物と一体に表示して、ユーザの理解を支援するアノテーション技術が知られている。例えば、アノテーションシステムでは、表示画面のスクリーン画面を連続的にキャプチャして、そのスクリーン画面から対象物を特定するテンプレート画像と類似した領域を探索し、表示画面のその領域にテンプレート画像に対応した注釈をオーバレイ表示する（特許文献１参照）。
【０００３】
なお、過去のスクリーン画像とテンプレート画像とのマッチングの結果を利用して、迅速に注釈の表示位置を特定し、一度表示した注釈を表示画面の動きに迅速に追従させる技術も開示されている（特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１４／００２８１２号
【特許文献２】国際公開第２０１６／０３９２７３号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のアノテーションシステムでは、表示する注釈ごとにスクリーン画像とテンプレート画像とのマッチングを行う場合がある。そのため、スクリーン画面の面積が大きい場合や表示画面の変化が大きい場合には、処理負荷が高く処理時間が長くなっていた。したがって、表示画面に注釈を重畳する更新処理を迅速に行うことができず、不自然な動きになってしまったり、潜在する多数の注釈のうち表示する注釈を特定してリアルタイムに正しい位置に表示することができなかったりしていた。
【０００６】
また、特許文献２に記載の技術によっても、アプリケーションの起動、切り替え、画面遷移、または画面のスクロール等の後に、新たに注釈を表示させる処理に要する時間を短縮することはできなかった。
【０００７】
本発明は、上記に鑑みてなされたものであって、画面上の対象物に対する注釈を迅速に正しい位置に表示することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明に係る表示制御システムは、サーバと、端末とを有する表示制御システムであって、前記サーバは、テンプレート画像と注釈情報とを対応付けした注釈情報テーブルを記憶する記憶部と、前記端末から送信された撮像画像上に類似する領域があるテンプレート画像を特定する特定部と、を備え、前記端末は、表示画面の変化を検知した場合に、該表示画面を撮像して前記撮像画像を生成する撮像部と、前記撮像部が生成した前記撮像画像を前記サーバに送信する送信部と、前記サーバから前記撮像画像上で前記領域が特定された前記テンプレート画像と該テンプレート画像に対応付けされている前記注釈情報とを取得する取得部と、最新の撮像画像上で前記取得部が取得したテンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、前記取得部が取得した前記注釈情報を重畳して表示する表示制御部と、を備える、ことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、画面上の対象物に対する注釈を迅速に正しい位置に表示することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、本発明の一実施形態に係る表示制御システムの概略構成を示す模式図である。
【図２】図２は、注釈情報テーブルのデータ構成を例示する図である。
【図３】図３は、表示制御処理の概要を説明するための説明図である。
【図４】図４は、表示制御処理手順を示すシーケンス図である。
【図５】図５は、表示制御プログラムを実行するコンピュータを例示する図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
【００１２】
［表示制御システムの構成］
図１は、本実施形態に係る表示制御システム１の概略構成を例示する図である。図１に例示するように、表示制御システム１は、サーバ１０と端末２０とが、ＬＡＮ（Local  Area  Network）やインターネットなどの電気通信回線を介して接続されて構成される。この表示制御システム１は、後述する表示制御処理を実行し、端末２０の表示画面上の対象物に対応して補足説明を行う注釈を表示する。
【００１３】
［サーバの構成］
サーバ１０は、ワークステーションやパソコン等の汎用コンピュータで実現され、入力部１１、出力部１２、通信制御部１３、記憶部１４、および制御部１５を備える。
【００１４】
入力部１１は、キーボードやマウス等の入力デバイスを用いて実現され、操作者による入力操作に対応して、制御部１５に対して処理開始などの各種指示情報を入力する。出力部１２は、液晶ディスプレイなどの表示装置、プリンター等の印刷装置、情報通信装置等によって実現される。
【００１５】
通信制御部１３は、ＮＩＣ（Network  Interface  Card）等で実現され、ＬＡＮやインターネットなどの電気通信回線を介した端末２０等の外部の装置と制御部１５との通信を制御する。
【００１６】
記憶部１４は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。なお、記憶部１４は、通信制御部１３を介して制御部１５と通信する構成でもよい。
【００１７】
記憶部１４には、テンプレート画像と注釈情報とを対応付けした注釈情報テーブル１４ａが記憶されている。ここで、注釈情報は、注釈の内容を示す情報である。また、テンプレート画像とは、後述する表示制御処理により、端末２０の表示画面上で注釈を表示する対象物を特定するための画像を意味する。
【００１８】
図２は、注釈情報テーブル１４ａのデータ構成を例示する図である。図２に例示するように、注釈情報テーブル１４ａには、ルールＩＤ、表示アイコン、およびテンプレート画像が含まれる。表示アイコンとは、注釈情報を意味する。ルールＩＤとは、テンプレート画像と表示アイコンとの組み合わせを識別する情報を意味する。なお、テンプレート画像と表示アイコンとは一意に対応付けされているため、ルールＩＤは、テンプレート画像を識別する情報をも意味する。
【００１９】
例えば、図２には、端末２０の表示画面上の「あ」に対応して表示アイコン「ア」が表示されることが示されている。具体的に、図３は、後述する表示制御処理の概要を説明するための説明図である。図３（ａ）に示すように、端末２０の表示画面上に「あ」「い」「か」が表示されている場合に、図２に例示した注釈情報テーブル１４ａに基づいて、図３（ｂ）に示すように、「あ」に対応して表示アイコン「ア」、また「い」に対応して表示アイコン「イ」が表示される。
【００２０】
なお、注釈情報テーブル１４ａは、表示制御処理に先立って予め記憶部１４に格納される。
【００２１】
図１の説明に戻る。制御部１５は、ＣＰＵ（Central  Processing  Unit）等を用いて実現され、メモリに記憶された処理プログラムを実行する。これにより、制御部１５は、図１に例示するように、特定部１５ａとして機能する。
【００２２】
特定部１５ａは、端末２０から送信された撮像画像上に類似する領域があるテンプレート画像を特定する。具体的に、後述するように、端末２０は、ユーザに提示される表示画面をキャプチャした撮像画像をサーバ１０に送信する。特定部１５ａは、注釈情報テーブル１４ａを参照し、所定の順番で各テンプレート画像を抽出し、このテンプレート画像と受信した撮像画像とのマッチングを行って、撮像画像上でテンプレート画像と類似する領域を探索する探索処理を行う。
【００２３】
特定部１５ａは、撮像画像上で各テンプレート画像とマッチした領域があれば、そのテンプレート画像を特定する。そして、特定部１５ａは、特定したテンプレート画像と、このテンプレート画像に対応する表示アイコンとを、通信制御部（１３，２３）を介して端末２０に送信する。また、特定部１５ａは、テンプレート画像と類似する領域を特定してもよい。例えば、特定部１５ａは、類似する領域の撮像画像上の位置を表す座標を特定する。
【００２４】
なお、表示制御システム１は、複数のサーバ１０を備え、各サーバ１０の特定部１５ａが、上記の探索処理を分散して行ってもよい。その場合に、全サーバ１０に同一の注釈情報テーブル１４ａを記憶させて、探索処理を冗長化してもよい。例えば、同一のテンプレート画像が２回目以降に特定された場合には、以降の処理で無視すればよい。これにより、探索処理の信頼性が向上する。
【００２５】
あるいは、注釈情報テーブル１４ａを分割して各サーバ１０に記憶させることにより、各サーバ１０の各特定部１５ａに探索処理を分担させてもよい。これにより、探索処理の処理速度がさらに向上する。
【００２６】
複数のサーバ１０を用いる場合には、端末２０は、複数のサーバ１０のうちの１台の代表サーバとデータ通信を行うようにするとよい。その場合には、各サーバ１０は代表サーバとデータを共有すればよい。これにより、高速な通信を行える回線数を削減して、コストを抑制できる。
【００２７】
［端末の構成］
端末２０は、パソコン等の汎用コンピュータで実現され、入力部２１、出力部２２、通信制御部２３、記憶部２４、および制御部２５を備える。
【００２８】
入力部２１は、キーボードやマウス等の入力デバイスを用いて実現され、操作者による入力操作に対応して、制御部２５に対して処理開始などの各種指示情報を入力する。出力部２２は、液晶ディスプレイなどの表示装置、プリンター等の印刷装置、情報通信装置等によって実現される。本実施形態において、ユーザが視認できる操作画面等の表示画面が出力部２２に出力される。
【００２９】
通信制御部２３は、ＮＩＣ等で実現され、ＬＡＮやインターネットなどの電気通信回線を介したサーバ１０等の外部の装置と制御部２５との通信を制御する。
【００３０】
記憶部２４は、ＲＡＭ、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。なお、記憶部２４は、通信制御部２３を介して制御部２５と通信する構成でもよい。
【００３１】
制御部２５は、ＣＰＵ等を用いて実現され、メモリに記憶された処理プログラムを実行する。これにより、制御部２５は、図１に例示するように、撮像部２５ａ、送信部２５ｂ、取得部２５ｃ、および表示制御部２５ｄとして機能する。
【００３２】
撮像部２５ａは、表示画面の変化を検知した場合に、該表示画面を撮像して撮像画像を生成する。例えば、撮像部２５ａは、ユーザに提示されている表示画面の変化を監視して、変化の度合いが所定のしきい値を超えた場合に、表示画面をキャプチャした撮像画像を生成し、メモリ等に保存する。
【００３３】
送信部２５ｂは、撮像部２５ａが生成した撮像画像をサーバ１０に送信する。すなわち、送信部２５ｂは、サーバ１０の探索処理の対象として、撮像部２５ａが表示画面をキャプチャして生成した撮像画像を、通信制御部（１３，２３）を介してサーバ１０の特定部１５ａに送信する。
【００３４】
取得部２５ｃは、サーバ１０から特定されたテンプレート画像と該テンプレート画像に対応付けされている注釈情報とを取得する。具体的に、取得部２５ｃは、サーバ１０の特定部１５ａが探索処理の対象としたテンプレート画像と、このテンプレート画像に対応付けされている表示アイコンとを、通信制御部（１３，２３）を介して受信する。
【００３５】
表示制御部２５ｄは、最新の撮像画像上で取得部２５ｃが取得したテンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、取得部２５ｃが取得した注釈情報を重畳して表示する。具体的に、表示制御部２５ｄは、サーバ１０が探索したテンプレート画像を、撮像部２５ａが撮像した最新の撮像画像上で探索して位置を特定し直す検算処理を実行し、特定した位置の座標に対応する位置に、表示アイコンを重畳して表示する（図３参照）。
【００３６】
ここで、表示アイコンを表示する位置は、例えば、テンプレート画像からの相対位置を固定として、所定の方向に所定の間隔で離れた位置とする。あるいは、テンプレート画像ごとに相対位置を変えて表示アイコンを表示してもよい。その場合、例えば、注釈情報テーブル１４ａにおいて、各テンプレート画像に対応する表示アイコンについて、テンプレート画像からの相対位置を設定しておき、表示アイコンとともに取得部２５ｃに送信されるようにすればよい。
【００３７】
なお、表示制御部２５ｄは、サーバ１０が特定したテンプレート画像のうち、所定の数より少ないテンプレート画像を対象にして、最新の撮像画像上で該テンプレート画像と類似する領域を特定する検算処理を行って、特定した領域の位置と同一の表示画面上の位置に対応して、取得部２５ｃが取得した注釈情報を重畳して表示するようにしてもよい。すなわち、表示制御部２５ｄが行う検算処理の上限を、例えば単位時間当たりの上限回数として、予め設定しておいてもよい。これにより、端末２０の処理負荷を軽減できる。
【００３８】
この場合に、各テンプレート画像に検算処理を行う優先順位を、注釈情報テーブル１４ａ等に設定しておくとよい。これにより、優先順位の高い表示アイコンをもれなく表示させることができる。また、上限を超えたテンプレート画像については、注釈情報を表示しないようにしてもよい。あるいは、上限を超えたテンプレート画像については、検算処理を行わずに注釈情報を表示してもよい。その場合、取得部２５ｃが、サーバ１０がテンプレート画像に類似すると特定した領域の撮像画像上の位置を表す座標を、通信制御部（１３，２３）を介して取得して、表示制御部２５ｄが、取得した位置に対応して、表示アイコンを表示する。
【００３９】
また、表示制御部２５ｄは、サーバ１０に送信された撮像画像と最新の撮像画像との間で画像が共通する領域を除いて、最新の撮像画像上でサーバ１０が特定したテンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、該テンプレート画像に対応付けされている注釈情報を重畳して表示してもよい。すなわち、表示制御部２５ｄが、サーバ１０で探索処理の対象とされた撮像画像から変化があった領域に限定して、検算処理を行う。これにより、端末２０の処理負荷を軽減できる。
【００４０】
なお、サーバ１０に送信された撮像画像と撮像部２５ａが撮像した最新の撮像画像との間で画像が共通する領域については、サーバ１０からテンプレート画像に類似する領域の位置を取得して、取得した位置に対応して表示アイコンを表示するようにすればよい。
【００４１】
また、記憶部２４が注釈情報テーブル１４ａを記憶して、取得部２５ｃは、サーバ１０が特定したテンプレート画像を識別するルールＩＤを取得してもよい。この場合、表示制御部２５ｄが、最新の撮像画像上で取得部２５ｃが取得したルールＩＤに対応するテンプレート画像と類似する領域を特定する検算処理を実行し、特定した領域の位置と同一の表示画面上の位置に対応して、該テンプレート画像に対応付けされている注釈情報を重畳して表示する。
【００４２】
すなわち、端末２０は、サーバ１０の注釈情報テーブル１４ａを予めコピーして記憶部２４に格納しておく。その場合、サーバ１０からテンプレート画像と注釈情報とのセットを取得しなくても、サーバ１０が特定したテンプレート画像に対応するルールＩＤを取得するだけで検算処理を行える。したがって、サーバ１０と端末２０との通信処理の負荷を軽減できる。
【００４３】
また、取得部２５ｃは、サーバ１０に送信された撮像画像の撮像時刻と最新の撮像画像の撮像時刻との差が所定のしきい値以下の場合に、サーバ１０から特定されたテンプレート画像に類似する撮像画像上の位置を取得して、表示制御部２５ｄは、取得部２５ｃが取得した位置と同一の表示画面上の位置に対応して、注釈情報を重畳して表示してもよい。
【００４４】
すなわち、サーバ１０で探索処理の対象とされた撮像画像と撮像部２５ａがキャプチャした最新の撮像画像との撮像時刻の差が、例えば１秒以内と短時間であれば、サーバ１０の探索処理の鮮度が高いと判断される。このように、サーバ１０の探索処理の鮮度が高い場合には、表示制御部２５ｄは検算処理を行わないようにしてもよい。この場合、取得部２５ｃが、サーバ１０から、テンプレート画像に類似するとして特定された領域の撮像画像上の位置を表す座標を、通信制御部（１３，２３）を介して取得し、表示制御部２５ｄが、取得した位置に対応して、表示アイコンを重畳して表示する。これにより、端末２０の処理負荷を軽減できる。
【００４５】
また、送信部２５ｂは、今回の撮像画像から前回送信した撮像画像との差分を抽出してサーバ１０に送信するようにしてもよい。この場合、サーバ１０の特定部１５ａは、前回送信された撮像画像と今回送信された差分とを用いて今回の撮像画像の全体を復元し、復元した該撮像画像上に類似する領域があるテンプレート画像を特定する。あるいは、送信部２５ｂは、過去に送信した複数の撮像画像のうち最も類似する撮像画像を識別する識別情報と、この類似する撮像画像と今回の撮像画像との差分とを送信してもよい。これにより、サーバ１０と端末２０との通信処理の負荷を軽減できる。なお、サーバ１０は今回の撮像画像の全体を復元する代わりに、過去の撮像画像との共通の領域について過去の探索結果を代用してもよい。これにより、サーバ１０の処理負荷が軽減される。
【００４６】
また、表示制御システム１に、さらに、サーバ１０と端末２０との間にプロキシサーバを備え、該プロキシサーバが端末２０と検算処理を分担して行ってもよい。例えば、検算処理対象の全テンプレート画像を端末２０とプロキシサーバとで分割してもよいし、上記した鮮度の判定等をプロキシサーバが行うようにしてもよい。これにより、端末２０の処理負荷を軽減できる。
【００４７】
［表示制御処理］
次に、図４を参照して、本実施形態に係る表示制御システム１による表示制御処理について説明する。図４は、表示制御処理手順を示すシーケンス図である。図４のシーケンス図は、例えば、端末２０に処理の開始を指示する操作入力があったタイミングで開始される。
【００４８】
端末２０では、撮像部２５ａが、表示画面の変化を検知した場合に、該表示画面を撮像して撮像画像を生成し（ステップＳ１）、送信部２５ｂが、撮像画像をサーバ１０に送信する（ステップＳ２）。
【００４９】
サーバ１０では、特定部１５ａが、端末１０から送信された撮像画像と注釈情報テーブル１４ａのテンプレート画像とのマッチングを行って、撮像画像上に類似する領域があるテンプレート画像を特定する（ステップＳ３）。また、特定部１５ａが、特定したテンプレート画像と、テンプレート画像に対応付けされている注釈情報とを、端末２０に送信する（ステップＳ４）。
【００５０】
端末２０では、取得部２５ｃが、サーバ１０から特定されたテンプレート画像とこのテンプレート画像に対応付けされている注釈情報とを受信する。また、表示制御部２５ｄが、最新の撮像画像上で、特定されたテンプレート画像と類似する領域を特定する検算処理を行って、特定した領域の位置と同一の表示画面上の位置に対応して、注釈情報を重畳して表示する（ステップＳ５）。これにより、一連の表示制御処理が終了する。
【００５１】
以上、説明したように、本実施形態の表示制御システム１のサーバ１０では、記憶部１４が、テンプレート画像と注釈情報とを対応付けした注釈情報テーブル１４ａを記憶し、特定部１５ａが、端末２０から送信された撮像画像上で類似する領域があるテンプレート画像を特定する。また、端末２０では、撮像部２５ａが、表示画面の変化を検知した場合に、該表示画面を撮像して撮像画像を生成し、送信部２５ｂが、撮像画像をサーバ１０に送信する。また、取得部２５ｃが、サーバ１０から特定されたテンプレート画像と該テンプレート画像に対応付けされている注釈情報とを取得し、表示制御部２５ｄが、最新の撮像画像上で取得部２５ｃが取得したテンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、注釈情報を重畳して表示する。
【００５２】
これにより、表示制御システム１において、端末２０の処理負荷を低減させることができる。また、端末２０の表示画面が変化した場合にも、より正確な位置に表示アイコンを表示することができる。したがって、シンクライアント端末、タブレット端末、またはスマートフォン等の計算リソースに余裕がない端末２０にも、表示画面と注釈とがずれることなく、表示画面の正しい位置に注釈を表示することができる。このように、端末２０の表示画面上の対象物に対する注釈を迅速に正しい位置に表示することができる。
【００５３】
つまり、従来のアノテーションシステムでは汎用性を確保するために画像テンプレートマッチングを利用しているが、一般に適用対象画像の面積の増大にともなって、計算時間がかかるという潜在的な課題があった。なお、例えば、アクティブなウィンドウ領域に限定して、アノテーション表示計算を行うことでこの問題に対処することも考えられるが、そもそもウィンドウサイズが大きい場合や、Ｗｅｂブラウザのように内部全体がスクロールする場合などは、近年の高性能ＰＣを用いてもコマ送りのように不自然な動きになってしまう。
【００５４】
また、例えば、アノテーションシステムの実用シーンを考えると、１つのウィンドウに対して３０以上の画像テンプレートと注釈とを組み合わせたルールが定義・適用される場合がある。フレーム画像に対し実行される画像テンプレートマッチングの計算回数は、表示ルールごとに１回必要なため、ルール数に比例して計算時間がかかる。つまり、実用的なルールセットを使用しようとすると、容易にリアルタイム処理に追いつかないレベルに達してしまうことになる。
【００５５】
さらには、例えば、Ｗｅｂブラウザなどはスクロールにより可視になっている画像内容にマッチする一部のルールだけが発火し、ほとんどのルールについては視野外にスクロールアウトして関係ないことが多い。しかしながら、これらが関係ないルールかどうかは、実際に画像テンプレートマッチングを行ってマッチ位置が見つかるかどうかでしか判断できない。つまり、ユーザの見た目に表示されるアイコンが数個であっても、１フレームごとに逐一評価計算しなければならないルールは潜在的に多数となってしまう。
【００５６】
以上の要因が重なると、多数のアイコンが表示されるわけでもなく、見た目に多くの情報が表示されないにも関わらず、１フレームの更新に５〜１０秒かかるなど、実用に耐えないほどユーザが待たされる場合もある。背景の画像はこれと並行・非同期にリアルタイムで進行するため、画面が変化しているあいだはオーバレイ表示が追い付かない。この間はオーバレイ表示が消えてしまうか元の位置に表示が取り残されたままとなってしまう上に、操作中の画面が静止し十分時間がたってはじめてオーバレイ表示が更新されことになる。
【００５７】
また、過去の画像テンプレートマッチングの結果を利用し、マッチ位置を高速に特定する特許文献２に記載の技術では、過去のマッチ位置を元に探索範囲を限定し、そこから優先的に手画像テンプレートマッチングを行うことで、高速化を実現している。この技術を用いると、一度表示されたアノテーションメッセージについては、ユーザ操作などにより操作画面に動きが生じた場合にも対象物に高速にアノテーションを追従させることが可能である。
【００５８】
ただし、この技術は、過去の画像テンプレートマッチングの結果を用いて、一度表示したアノテーションを高速に操作画面の動きに追従させるための仕組みであって、アプリケーションの起動や切り替え、画面遷移、画面のスクロールなどにより、全く新たなルールを初期表示する際に要する表示時間を短縮させることはできない。
【００５９】
初期表示の高速化のためには、大量の画像テンプレートマッチングに要する時間を短縮する必要がある。一つのアプローとして、画像テンプレートマッチングを並列化することで、全体の処理時間を短縮することが考えられる。並列化の方法として、ＣＰＵやコアで処理を分散することも考えられる。例えば、ルールごとに処理するＣＰＵやコアを割り当て、各ＣＰＵやコアで並列して画像テンプレートマッチングを行うことで、全体の処理時間を短縮することが可能である。
【００６０】
ただし、この手法は、端末のＣＰＵリソースやメモリのリソースに余裕がある環境での適用に限られる。例えば、近年業務端末への導入が進んでいるシンクライアント環境では、各端末に割り当てられるリソースがコスト低減のために業務の実行する上で最低限のリソースに制限されていることが多い。また、タブレット端末やスマートフォンなどの携帯端末においては消費電力を抑えるために計算リソースに余裕がなく、このような環境で、アノテーション表示のために計算リソースを専有すると、他のアプリケーションの動作に影響を生じることになる。
【００６１】
また、端末に計算リソースが乏しい場合には、サーバ・クライアント方式を採用し、専用のサーバで処理を代行することも考えられる。サーバに端末と同じルールセットを保存しておき、端末で取得した操作画面の画像をサーバへ通知し、サーバ側で操作画面の画像とルールセットからテンプレート画像との画像テンプレートマッチングを実行し、マッチ位置を端末へ通知し、端末で通知されたマッチ位置に操作画面にアノテーションを表示するといった単純な分散化が考えられる。しかし、このような方式では、操作画面の通知、マッチ位置の通知といった通信にかかる処理時間のために、ユーザ操作などにより操作画面が変化してしまい、本来表示すべき位置に正しく表示されないことになる。
【００６２】
これに対し、本実施形態の表示制御システム１によれば、端末２０の表示画面上の対象物に対する注釈を迅速に正しい位置に表示することができる。
【００６３】
なお、端末２０は、記憶部２４に注釈情報テーブル１４ａを記憶して、取得部２５ｃは、サーバ１０が領域を特定したテンプレート画像を識別するルールＩＤを取得してもよい。この場合、表示制御部２５ｄが、最新の撮像画像上で取得部が取得したルールＩＤに対応するテンプレート画像と類似する領域を特定する検算処理を実行し、特定した領域の位置と同一の表示画面上の位置に対応して、該テンプレート画像に対応付けされている注釈情報を重畳して表示する。これにより、サーバ１０からテンプレート画像と注釈情報とのセットを取得しなくても検算処理を行えるので、サーバ１０と端末２０との通信処理の負荷を軽減できる。
【００６４】
また、取得部２５ｃは、サーバ１０に送信された撮像画像の撮像時刻と最新の撮像画像の撮像時刻との差が所定のしきい値以下の場合に、サーバ１０から特定されたテンプレート画像に類似する撮像画像上の位置を取得し、表示制御部２５ｄは、取得部２５ｃが取得した位置と同一の表示画面上の位置に対応して、注釈情報を重畳して表示してもよい。このように、サーバ１０の探索処理の鮮度が高い場合に、表示制御部２５ｄは検算処理を行わないようにすることにより、端末２０の処理負荷をさらに軽減できる。
【００６５】
また、表示制御部２５ｄは、サーバ１０が特定したテンプレート画像のうち、所定の数より少ないテンプレート画像を対象にして、最新の撮像画像上で該テンプレート画像と類似する領域を特定する検算処理を行って、特定した領域の位置と同一の表示画面上の位置に対応して、取得部２５ｃが取得した注釈情報を重畳して表示するようにしてもよい。これにより、端末２０の処理負荷をさらに軽減できる。
【００６６】
また、表示制御部２５ｄは、サーバ１０に送信された撮像画像と最新の撮像画像との間で画像が共通する領域を除いて、最新の撮像画像上でサーバ１０が特定したテンプレート画像と類似する領域を特定し、特定した領域の位置と同一の表示画面上の位置に対応して、該テンプレート画像に対応付けされている注釈情報を重畳して表示してもよい。これにより、サーバ１０で探索処理の対象とされた撮像画像から変化があった領域に限定して、検算処理を行うので、端末２０の処理負荷をさらに軽減できる。
【００６７】
また、送信部２５ｂは、今回の撮像画像から前回送信した撮像画像との差分を抽出してサーバ１０に送信するようにしてもよい。この場合、サーバ１０の特定部１５ａが、前回送信された撮像画像と今回送信された差分とを用いて今回の撮像画像を復元し、復元した撮像画像上に類似する領域があるテンプレート画像を特定する。これにより、サーバ１０と端末２０との通信処理の負荷を軽減できる。
【００６８】
また、表示制御システム１は、サーバ１０と端末２０との間にプロキシサーバを備え、プロキシサーバが、端末２０と検算処理を分担して行ってもよい。これにより、端末２０の処理負荷をさらに軽減できる。
【００６９】
また、表示制御システム１は、複数のサーバ１０を備え、各サーバの特定部１５ａが、処理を分散して行ってもよい。これにより、処理速度や信頼性がさらに向上する。
【００７０】
［プログラム］
上記実施形態に係る表示制御システム１が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。一実施形態として、表示制御システムを構成するサーバ１０および端末２０は、パッケージソフトウェアやオンラインソフトウェアとして上記の表示制御処理を実行する表示制御プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の表示制御プログラムを情報処理装置に実行させることにより、情報処理装置を表示制御システム１のサーバ１０および端末２０として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）などの移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistants）などのスレート端末などがその範疇に含まれる。また、サーバ１０は、アウトソーシングによって上記の表示制御処理に関するサービスを提供するクラウドとして実装することとしてもかまわない。以下に、表示制御システム１のサーバ１０および端末２０と同様の機能を実現する検知プログラムを実行するコンピュータの一例を説明する。
【００７１】
図５に示すように、表示制御プログラムを実行するコンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有する。これらの各部は、バス１０８０によって接続される。
【００７２】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１およびＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０３１に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１０４１に接続される。ディスクドライブ１０４１には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース１０５０には、例えば、マウス１０５１およびキーボード１０５２が接続される。ビデオアダプタ１０６０には、例えば、ディスプレイ１０６１が接続される。
【００７３】
ここで、図５に示すように、ハードディスクドライブ１０３１は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３およびプログラムデータ１０９４を記憶する。上記実施形態で説明した各テーブルは、例えばハードディスクドライブ１０３１やメモリ１０１０に記憶される。
【００７４】
また、表示制御プログラムは、例えば、コンピュータ１０００によって実行される指令が記述されたプログラムモジュール１０９３として、ハードディスクドライブ１０３１に記憶される。具体的には、上記実施形態で説明した表示制御システム１が実行する各処理が記述されたプログラムモジュール１０９３が、ハードディスクドライブ１０３１に記憶される。
【００７５】
また、表示制御プログラムによる情報処理に用いられるデータは、プログラムデータ１０９４として、例えば、ハードディスクドライブ１０３１に記憶される。そして、ＣＰＵ１０２０が、ハードディスクドライブ１０３１に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して、上述した各手順を実行する。
【００７６】
なお、表示制御プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０３１に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ１０４１等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、表示制御プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ＬＡＮ（Local  Area  Network）やＷＡＮ（Wide  Area  Network）等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【００７７】
以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述および図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例および運用技術等は全て本発明の範疇に含まれる。
【符号の説明】
【００７８】
１  表示制御システム
１０  サーバ
１１  入力部
１２  出力部
１３  通信制御部
１４  記憶部
１４ａ  注釈情報テーブル
１５  制御部
１５ａ  特定部
２０  端末
２１  入力部
２２  出力部
２３  通信制御部
２４  記憶部
２５  制御部
２５ａ  撮像部
２５ｂ  送信部
２５ｃ  取得部
２５ｄ  表示制御部
【図１】
0006603178.tif 000002
【図２】
0006603178.tif 000003
【図３】
0006603178.tif 000004
【図４】
0006603178.tif 000005
【図５】
0006603178.tif 000006