以下、図面を参照しながら、本発明の実施形態について説明する。
図1は、本発明の実施形態における情報処理システムのシステム構成の一例を示す図である。情報処理システムは、情報処理装置101と投影撮像装置102とを含む。情報処理装置101は、投影撮像装置102と通信可能に接続されており、更にディスプレイ410と入力デバイス409とも通信可能に接続されている。図1では、これらの装置は有線で接続されているが、無線であってもよい。尚、図1のシステム上に接続される各種端末の構成は一例であり、用途や目的に応じて様々な構成例がある。
情報処理装置101は、オペレーティングシステムを搭載する汎用的な装置である。情報処理装置101は、情報処理装置101に接続された各種デバイスに対して各種動作を実行するよう指示を行う。
投影撮像装置102は、デジタルカメラと赤外線センサとプロジェクタとを備える装置である。情報処理装置101からの指示に応じてプロジェクタで投影をし、投影された机上等の投影面をデジタルカメラで撮像し、また投影面上でユーザの手の動きや物体の位置を認識する。
投影撮像装置102の外部構造及び内部構造の概要の一例について、図2を用いて説明する。
図2は、投影撮像装置102の正面図と右側面図である。内部構造の隠れ線は破線で表現している。投影撮像装置102は、デジタルカメラ421(撮像装置)と赤外線センサ422(センサ装置)とプロジェクタ423(投影装置)とを格納する収納部203を備えている。収納部203は底面201と左側面202aと右側面202bとで左右から挟みこんで固定している。
また、上面204が左側面202aと右側面202bとの上部に設置され、上面204の下側にはプロジェクタ423から照射される光を反射するための反射鏡207を備える。すなわち、プロジェクタ423は第1の開口部205を通してこの反射鏡207に向けて投影できるよう、設置されている。デジタルカメラ421も同様に、反射鏡207で反射した投影面を撮像するため、デジタルカメラ421は第2の開口部206を通して反射鏡207に向けて設置されている。
また赤外線センサ422は、例えば赤外線を用いた深度センサである。これはプロジェクタ423が投影した投影面上におけるユーザの手や紙文書(以下、書類という。)等の位置や動きを特定するために、赤外線センサ422からこれらの物体までの距離を算出する。赤外線センサ422は、近赤外線のドットパターンを現実空間に投影し、このドットの形や間隔を取得することで物体までの距離を算出する。または、赤外線光を投影し、赤外線センサ422が備えるカメラによって反射した赤外線光を読み取り、赤外線光が往復した時間を算出することで距離を算出する方式であってもよい。現実空間における物体の位置や動きを取得することができれば、赤外線センサ422の距離の算出方式はどのような方式であってもよいし、赤外線センサ422以外のセンサを用いてもよい。また、赤外線センサ422もデジタルカメラ421と同様に、第2の開口部206を通して反射鏡207に向けて設置されている。この反射鏡207に向けて赤外線を照射する。
投影撮像装置102は以上のように大きく3つの装置を内包しており、これらがそれぞれ情報処理装置101と通信可能に接続されている。本実施形態においては、情報処理装置101と投影撮像装置102とが異なる筐体であるが、同一の筐体であってもよい。すなわち、投影撮像装置102に更に情報処理装置101を内包してもよいし、情報処理装置101がプロジェクタ、デジタルカメラ、赤外線センサを備えてもよい。
次に図3を用いて、本実施形態における投影撮像装置102とユーザとの位置関係について説明する。投影撮像装置102は、机上303に設置される。本実施形態では机を挟んで二人のユーザがいる。銀行窓口で商品説明を行うテラー301と、商品説明を受ける顧客302である。
テラー301は、入力デバイス409を操作して情報処理装置101に画面の表示指示を行うと、情報処理装置101からプロジェクタ423に対して当該画面の投影指示が送信される。プロジェクタ423はこれを受けると反射鏡207に向かって左右を反転させた画面を投影する。これは、反射鏡207で反射することにより、投影面304に投影される像が左右反転してしまうからである。こうすると、投影面304に指示した画面が投影される。画面を左右に反転させる処理は、情報処理装置101が行ってもよいし、プロジェクタ423が行ってもよい。また投影面304は、投影される光が見やすいよう模様のない白い面であることが望ましい。
プロジェクタ423から照射された光が反射鏡207で図3の破線の矢印で示すような方向に反射されると、その光が投影面304に投影される。この光によって表現される画面を見て、テラー301が顧客302に商品説明を行う。本実施形態では、このようにテラー301と顧客302とが机を挟んで位置しており、それぞれが投影された画面を見ながら操作していく形態を前提として説明を行う。
図4は、情報処理装置101及び投影撮像装置102のハードウェア構成の一例を示す図である。
CPU401は、システムバス404に接続される各デバイスやコントローラを統括的に制御する。
また、ROM402あるいは外部メモリ411(記憶手段)には、CPU401の制御プログラムであるBIOS(Basic Input / OutputSystem)やオペレーティングシステムプログラム(以下、OSという。)が記憶されている。更には、情報処理装置101の実行する機能を実現するために必要な各種プログラム等も記憶されている。RAM403は、CPU401の主メモリ、ワークエリア等として機能する。
CPU401は、処理の実行に際して必要なプログラム等をRAM403にロードして、プログラムを実行することで各種動作を実現するものである。
また、汎用入出力コントローラ405は、キーボードやマウス等の入力デバイス409、更には投影撮像装置102のデジタルカメラ421や赤外線センサ422との入出力を制御する。これらは、USB(Universal Serial Bus)等のバス規格により接続される。
ビデオコントローラ406は、ディスプレイ410や投影撮像装置102のプロジェクタ423等の表示装置や投影装置への表示を制御する。ディスプレイ410は例えばCRTや液晶ディスプレイである。更にビデオコントローラ406は、ディスプレイ410と投影撮像装置102のプロジェクタ423とそれぞれに対して同じ画面または異なる画面を表示及び投影指示する。これらは、いわゆるミラーリングやマルチモニタが可能である。
メモリコントローラ407は、ブートプログラム、ブラウザソフトウエア、各種アプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスクやフレキシブルディスク等の外部メモリ411へのアクセスを制御する。或いはPCMCIAカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ411へのアクセスも制御する。
通信I/Fコントローラ408は、ネットワークを介して、外部機器と接続及び通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いたインターネット通信等が可能である。
尚、CPU401は、例えばRAM403内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ410上での表示や投影撮像装置102のプロジェクタ423での投影を可能としている。また、CPU401は、ディスプレイ410上の不図示のマウスカーソル等でのユーザ指示を可能とする。更にCPU401は、投影面304に投影された画面をユーザの手でタッチすることによっても、ユーザ指示を可能とする。すなわち、赤外線センサ422で検知した現実空間におけるユーザの手の座標位置に応じて、画面のボタン等が押下されたのか否かを検知し、CPU401に動作を実行させる。尚、本実施形態における投影面304でのタッチ操作とは、投影面304である机上に触れているか否かは特に問わない。赤外線センサ422が検知したユーザの手や指の高さによって、タッチ操作を受け付けたか否かを判断する。
本発明の情報処理装置101が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ411に記録されており、必要に応じてRAM403にロードされることによりCPU401によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ411に格納されている。
次に、情報処理装置101の機能構成の一例について図5を用いて説明する。尚、図5の情報処理装置101の機能構成は一例であり、用途や目的に応じて様々な構成例がある。
情報処理装置101は機能部として、記憶部501と、表示制御部502と、投影制御部503と、撮像制御部504と、センサ制御部505と、座標変換部506と、操作検知部507とを備える。
記憶部501は、後述する各種テーブルの情報や各種画面を構成する情報を記憶するための機能部である。必要に応じて、情報の追加・更新・削除を行う。
表示制御部502は、情報処理装置101と通信可能に接続されたディスプレイ410の表示を制御するための機能部である。表示制御部502から画面等の表示指示がなされると、ビデオコントローラ406を介してディスプレイ410に表示指示が送信される。そして、ディスプレイ410はこの指示を受信すると、指示に従って画面等を表示する。
投影制御部503は、情報処理装置101と通信可能に接続されたプロジェクタ423の投影を制御するための機能部である。投影制御部503から画面等の投影指示がなされると、表示制御部502と同様にビデオコントローラ406を介してプロジェクタ423に投影指示が送信される。そして、プロジェクタ423はこの指示を受信すると、指示に従って画面等の情報(投影データ)を現実空間に投影する。
撮像制御部504は、情報処理装置101と通信可能に接続されたデジタルカメラ421の撮像を制御するための機能部である。撮像制御部504から投影面304の撮像指示が出されると、汎用入出力コントローラ405を介してデジタルカメラ421に撮像指示がなされる。デジタルカメラ421はこの指示を受信すると、撮像を行い、撮像により生成された画像データを情報処理装置101に送信する。撮像制御部504は、これを受け取り、画像データを左右反転させた上で記憶部501が外部メモリ411等に記憶する。前述した通り、デジタルカメラ421は反射鏡207に写った像を撮像するため左右が反転している。これを補正するために、記憶部501で画像データを記憶する前に、撮像制御部504がこの画像データを左右反転する。
センサ制御部505は、情報処理装置101と通信可能に接続された赤外線センサ422から送信される、投影面304における現実空間の情報(物体の有無や位置等)を受信するための機能部である。赤外線センサ422が検出した現実空間の情報は、赤外線センサ422から情報処理装置101に対して逐一送信される。センサ制御部505はこれを受信し、後述する座標変換部506に渡す。
座標変換部506は、センサ制御部505が受信した現実空間の情報に含まれる、投影面304にある物体の位置を示す座標値を変換するための機能部である。座標変換部506は、この座標値を投影面304に投影された画面における座標値に変換する。すなわち、赤外線センサ422で検知した座標値が、情報処理装置101が管理する画面のどの座標値に該当するのかを、この座標変換部506を用いて特定する。尚、座標変換の方法は従来技術を用いるため詳細な説明は省略する。
操作検知部507は、ユーザからの操作を検知するための機能部である。情報処理装置101に接続された入力デバイス409を通じて送信されるユーザからの指示を検知したり、投影面304に投影された画面でユーザが行った指示を検知したりする。後者の指示の検知は、投影面304において検知した物体の座標値を座標変換部506で変換することにより画面上のどのボタンが押下されたのかを検知したり、書類が置かれることにより書類の取込が指示されたのかを検知したりする。
次に、本発明の実施形態における一連の処理の流れについて、図6に示すフローチャートを用いて説明する。以下説明する、S601乃至S606の各ステップは、情報処理装置101のCPU401が各機能部を動作することにより実行される処理である。
ステップS601では、情報処理装置101の投影制御部503は、図7に示すような書類取込画面700をプロジェクタ423に投影させて、投影面304に表示する。このとき、ミラーリング機能を用いて、ディスプレイ410にも同じ画面が表示されてもよいし、マルチモニタ機能を用いて、ディスプレイ410には画面を操作するためのマニュアルや説明すべきポイントを表示させてもよい。以下、プロジェクタ423から投影面304に画面を投影する場合についても同様である。
書類取込画面700は、テラー側の領域であるテラー領域701(第2の領域)と、顧客側の領域である顧客領域702(第1の領域)から構成される。テラー領域701と顧客領域702とは、図8に示す領域管理テーブル810の領域座標813が示す領域である。それぞれテラーが作業する領域と顧客が作業する領域に分かれており、本実施形態ではデジタルカメラ421で投影面304にある書類の撮像を行ったり、撮像により生成された画像データである書類データを閲覧したりすることができるようになっている。テラー領域701と顧客領域702のそれぞれに、書類取込ボタン703(撮像指示部)が備えられており、このボタンに対する押下を受け付けると、投影面304にある書類を撮像することができる。
また、書類データのサムネイル画像が書類データ表示領域704に表示されている。テラー領域701で撮像された書類データのサムネイル画像は、テラー領域701の書類データ表示領域704−1に表示され、顧客領域702で撮像された書類データのサムネイル画像は、顧客領域702の書類データ表示領域704−2に表示される。
書類データ表示領域704に表示するサムネイル画像は、図8に示す書類データ管理テーブル800のサムネイル画像保存場所805から取得する。具体的に説明すると、書類取込画面700を表示する際に、顧客IDの入力を受け付けて、この顧客IDを有するレコードを、顧客ID802を検索することにより特定し、特定したレコードのサムネイル画像保存場所805からサムネイル画像を取得する。そして、取得したサムネイル画像のレコードの取込ユーザ803が“テラー”であれば、テラー領域701の書類データ表示領域704−1に取得したサムネイル画像を表示する。一方、取得したサムネイル画像のレコードの取込ユーザ803が“顧客”であれば、顧客領域702の書類データ表示領域704−2に取得したサムネイル画像を表示する。このようにして生成された書類取込画面700をステップS601で投影する。
書類データ管理テーブル800は、情報処理装置101の外部メモリ411に記憶されるデータテーブルであり、書類ID801、顧客ID802、取込ユーザ803、書類データ保存場所804、サムネイル画像保存場所805を備える。書類ID801は、書類データごとに一意に割り振られる識別情報が格納される項目である。顧客ID802は、顧客ごとに一意に割り振られる識別情報が格納される項目である。取込ユーザ803は、書類データを取り込んだユーザを示す情報が格納される項目である。書類データ保存場所804は、書類データの保存場所を示す情報が格納される項目である。サムネイル画像保存場所805は、書類データのサムネイル画像の保存場所を示す情報が格納される項目である。
領域管理テーブル810は、情報処理装置101の外部メモリ411等に記憶されているデータテーブルであり、領域ID811、領域種別812、領域座標813を備える。領域ID811は、領域ごとに割り振られる一意な識別情報が格納される項目である。領域種別812は、領域の種別を示す情報が格納される項目である。本実施形態では、“テラー領域”または“顧客領域”が格納されるが、これに限らない。領域座標813は、領域の範囲を示す座標が格納される項目である。矩形領域の左上と右下の座標が格納されている。
図6に説明を戻す。書類取込画面700が投影面304に投影されると、書類取込画面700に対する操作を受け付ける。ステップS602では、情報処理装置101の操作検知部507は、書類データ表示領域704に表示されたいずれかのサムネイル画像に対する表示指示を受け付けたか否かを判定する。すなわち、操作検知部507が投影面304に投影されたサムネイル画像に対するタッチ操作、つまり選択を検知すると、サムネイル画像に対する表示指示を受け付けたと判定する。書類データ表示領域704に表示されたいずれかのサムネイル画像に対する表示指示を受け付けたと判定した場合には、ステップS603に処理を進める。そうでない場合には、ステップS604に処理をすすめる。
ステップS603では、情報処理装置101のCPU401は、表示指示を受け付けたサムネイル画像に対応する書類データを表示するための処理を実行する。書類データ表示処理の詳細は、後述する図9に示す。これが完了すると、ステップS602に処理を戻す。
ステップS604では、情報処理装置101の操作検知部507では、投影面304に配置された現実物体である書類の取込指示を受け付けたか否かを判定する。すなわち、操作検知部507が投影面304に投影された書類取込ボタン703に対するタッチ操作、つまりボタン押下を検知すると、投影面304にある書類の取込指示(撮像指示)を受け付けたと判定する(撮像指示受付手段)。書類の取込指示を受け付けたと判定した場合には、ステップS605に処理を進める。そうでない場合には、ステップS606に処理を進める。
ステップS605では、情報処理装置101のCPU401は、投影面304に配置された書類を取り込む、すなわち撮像して書類データを生成するための処理を実行する。書類取込処理の詳細は、後述する図12に示す。これが完了すると、ステップS602に処理を戻す。
ステップS606では、情報処理装置101の操作検知部507は、書類取込画面700の表示を終了する指示を受け付けたか否かを判定する。終了指示を受け付けるようなボタンに対する押下を受け付けたか否かに応じて終了指示を受け付けたと判定してもよいし、それ以外の方法によって終了指示を検知してもよい。終了指示を受け付けたと判定した場合には、本一連の処理を終了する。そうでない場合には、ステップS602に処理を戻す。
次に、書類データ表示処理の詳細な処理の流れについて、図9に示すフローチャートを用いて説明する。以下説明する、S901乃至S904の各ステップは、情報処理装置101のCPU401が各機能部を動作することにより実行される処理である。
ステップS901では、情報処理装置101の記憶部501は、表示指示を受け付けたサムネイル画像に対応する書類データを、当該サムネイル画像に対応する書類データ管理テーブル800のレコードの書類データ保存場所804から取得する。
ステップS902では、情報処理装置101の表示制御部502は、表示指示を受け付けたサムネイル画像に対応する書類データ管理テーブル800のレコードを参照し、当該レコードの取込ユーザ803が“テラー”か“顧客”かを判定する。取込ユーザ803が“テラー”であると判定した場合には、ステップS903に処理を進める。取込ユーザ803が“顧客”であると判定した場合には、ステップS904に処理を進める。
ステップS903では、情報処理装置101の表示制御部502は、ステップS901で取得した書類データを書類取込画面700のテラー領域701に表示するよう制御する。例えば、図10に示すように、書類データ表示領域704−1に表示されているサムネイル画像に対して選択を受け付けると、当該サムネイル画像に対応する書類データは、テラー領域701で取り込まれた書類であることが取込ユーザ803から特定できる。そのため、当該サムネイル画像に対応する書類データを図10に示すように、テラー領域701に表示されるよう設定する。書類取込画面700に取得した書類データの表示設定が完了したら、投影制御部503がプロジェクタ423に対して書類取込画面700の表示指示を行う。そして、プロジェクタ423が、書類データが表示された書類取込画面700を投影面304に投影する。
一方ステップS904では、情報処理装置101の表示制御部502は、ステップS901で取得した書類データを書類取込画面700の顧客領域702に表示するよう制御する。例えば、図11に示すように、書類データ表示領域704−2に表示されているサムネイル画像に対して選択を受け付けると、当該サムネイル画像に対応する書類データは、顧客領域702で取り込まれた書類であることが取込ユーザ803から特定できる。そのため、当該サムネイル画像に対応する書類データを図11に示すように、顧客領域702に表示されるよう設定する。書類取込画面700に取得した書類データの表示設定が完了したら、投影制御部503がプロジェクタ423に対して書類取込画面700の表示指示を行う。そして、プロジェクタ423が、書類データが表示された書類取込画面700を投影面304に投影する。
以上のようにして、取込済みの書類データをテラー領域701と顧客領域702のそれぞれに表示することができる。テラーと顧客は、自由にこうした書類データの表示指示を行うことができる。すなわち、テラーと顧客が同時に書類データを表示することもできるし、テラーが後述する書類の取込を行っている最中にも、顧客が書類データを表示することが可能である。その逆も同様である。情報処理装置101の並列処理により、こうした処理を実現する。
次に、書類取込処理の詳細な処理の流れについて、図12に示すフローチャートを用いて説明する。以下説明する、S1201乃至S1217の各ステップは、情報処理装置101のCPU401が各機能部を動作することにより実行される処理である。
ステップS1201では、情報処理装置101の操作検知部507は、押下を受け付けた書類取込ボタン703のうち、テラー領域701の書類取込ボタン703−1が押下されたのか、顧客領域702の書類取込ボタン703−2が押下されたのかを判定する。テラー領域701の書類取込ボタン703−1が押下されたと判定した場合には、ステップS1202に処理を進める。顧客領域702の書類取込ボタン703−2が押下されたと判定した場合には、ステップS1210に処理を進める。
まず、図13に示すように、テラー領域701にある書類取込ボタン703−1が押下された場合について説明する。ステップS1202では、情報処理装置101の表示制御部502は、テラー領域701に存在するボタンやサムネイル画像といった各種オブジェクトが非表示になるよう制御する。具体的には、領域種別812に“テラー領域”が格納されているレコードを領域管理テーブル810から特定し、特定したレコードの領域座標813が示す範囲内のオブジェクトを非表示に設定する。すなわち、図13に示すように書類取込ボタン703−1の押下を受け付けると、図14に示すように書類取込ボタン703−1と書類データ表示領域704−1を非表示に設定する。
ステップS1203では、情報処理装置101の表示制御部502は、顧客領域702に存在する書類取込ボタン703−2が非表示になるよう制御し、これに対する押下を受け付けないように制御する。すなわち、領域種別812が“顧客領域”のレコードを領域管理テーブル810から特定し、特定したレコードの領域座標813が示す領域内にある書類取込ボタン703−2を非表示に設定する。テラーが撮像している間は、顧客がデジタルカメラ421を使用することができないため、テラー領域701で撮像指示を受け付けた場合には、顧客領域702にある書類取込ボタン703−2を非表示にして押下を受け付けないようにしている。
そして、情報処理装置101の投影制御部503は、ステップS1202とステップS1203で各種オブジェクトが非表示になるよう制御した書類取込画面700を投影するよう、プロジェクタ423に対して指示する(投影指示手段)。これに応じてプロジェクタ423が投影面304に、各種オブジェクトを非表示に設定した書類取込画面700を投影する。こうして投影された結果が、図14である。図14に示すように、テラー領域701に表示されていた書類取込ボタン703−1と書類データ表示領域704−1は非表示になっていることがわかる。また、顧客領域702では書類取込ボタン703−2が非表示になっているが、書類データ表示領域704−2や表示中の書類データは表示されたままであることがわかる。このようにすることで、テラー領域701で投影データが撮像されないようにしつつ、顧客領域702で書類データの閲覧を継続させることができる。更には、顧客領域702では撮像中に撮像指示を行うことのないよう制御することができる。
ステップS1204では、情報処理装置101の撮像制御部504は、デジタルカメラ421に対して投影面304を撮像するよう指示する(撮像指示手段)。デジタルカメラ421はこれに応じて投影面304を撮像し、画像データを生成する。生成された画像データは、情報処理装置101に送信され、RAM403に一時記憶する。
ステップS1205では、情報処理装置101の撮像制御部504は、撮像指示に応じて取得した画像データから、投影面304に存在する書類を認識し、この書類の領域をトリミングすることで書類データを生成する(画像データ生成手段)。テンプレートマッチングによって書類の領域を特定してもよいし、書類のエッジを検出することで書類の領域を特定してもよい。
ステップS1206では、情報処理装置101の記憶部501は、書類データ管理テーブル800に新規レコードを作成し、ステップS1205で生成された画像データと顧客の顧客IDとを対応付けて保存する(画像データ保存手段)。より具体的には、ステップS1205で生成された画像データのファイル名を所定の命名規則に従って変更し、そしてこの画像データを所定のフォルダに保存する。この保存場所を示す情報(ファイルパス等)と、書類取込画面700を表示する前またはその後に入力を受け付けた顧客のIDとを、書類データ管理テーブル800の新規レコードに格納する。また、書類データのサムネイル画像を生成し、このサムネイル画像の保存場所を示す情報も、新規レコードに格納する。更に、取込ユーザ803には、どちら側の書類取込ボタン703が押下されたのかによって格納する情報を変更する。すなわち、領域種別812が“テラー領域”である領域座標813の範囲内(つまり、テラー領域701)で書類取込ボタン703−1が押下された場合には、取込ユーザ803に“テラー”を格納する。領域種別812が“顧客領域”である領域座標813の範囲内(つまり、顧客領域702)で書類取込ボタン703−2が押下された場合には、取込ユーザ803に“顧客”を格納する。
ステップS1207では、情報処理装置101の表示制御部502は、ステップS1202で非表示に設定されたテラー領域701の各種オブジェクトが表示されるように制御する。領域種別812が“テラー領域”の領域座標813が示す範囲内に存在する各種オブジェクトの表示状態を非表示から表示に設定変更する。ステップS1208では、情報処理装置101の表示制御部502は、ステップS1203で非表示に設定された顧客領域702の書類取込ボタン703−2が表示されるように制御する。こちらも同様に、領域種別812が“顧客領域”の領域座標813が示す範囲内に存在する書類取込ボタン703−2の表示状態を非表示から表示に設定変更する。
ステップS1209では、情報処理装置101の表示制御部502は、ステップS1205で生成された書類データに対応するサムネイル画像をサムネイル画像保存場所805から取得する。そして、これをテラー領域701の書類データ表示領域704−1に追加表示するよう制御する。
そして、情報処理装置101の投影制御部503は、ステップS1207乃至ステップS1209で表示設定された各種オブジェクトを含む書類取込画面700を投影するよう、プロジェクタ423に対して指示する。これに応じてプロジェクタ423が投影面304に書類取込画面700を投影する。こうして投影された結果が、図15である。図15に示すように、テラー領域701には、新たに取り込んだ書類(図15では「契約書」の書類)のサムネイル画像を含む書類データ表示領域704−1と書類取込ボタン703−1が再表示されていることがわかる。また、顧客領域702には、書類取込ボタン703−2が再表示されていることがわかる。このように、撮像が完了したら各種オブジェクトを再表示し、再度書類データの閲覧や書類の撮像が可能なようにする。ステップS1209の処理が完了したら、書類取込処理を終了する。
次に、図16に示すように、顧客領域702にある書類取込ボタン703−2が押下された場合について説明する。ステップS1210では、情報処理装置101の表示制御部502は、顧客領域702に存在するボタンやサムネイル画像といった各種オブジェクトが非表示になるよう制御する。具体的には、領域種別812に“顧客領域”が格納されているレコードを領域管理テーブル810から特定し、特定したレコードの領域座標813が示す範囲内のオブジェクトを非表示に設定する。すなわち、図16に示すように書類取込ボタン703−2の押下を受け付けると、図17に示すように書類取込ボタン703−2と書類データ表示領域704−2を非表示に設定する。
ステップS1211では、情報処理装置101の表示制御部502は、テラー領域701に存在する書類取込ボタン703−1が非表示になるよう制御し、これに対する押下を受け付けないように制御する。すなわち、領域種別812が“テラー領域”のレコードを領域管理テーブル810から特定し、特定したレコードの領域座標813が示す領域内にある書類取込ボタン703−1を非表示に設定する。テラーが撮像している間は、顧客がデジタルカメラ421を使用することができないため、顧客領域702で撮像指示を受け付けた場合には、テラー領域701にある書類取込ボタン703−1を非表示にして押下を受け付けないようにしている。
そして、情報処理装置101の投影制御部503は、ステップS1210とステップS1211で各種オブジェクトが非表示になるよう制御した書類取込画面700を投影するよう、プロジェクタ423に対して指示する。これに応じてプロジェクタ423が投影面304に、各種オブジェクトを非表示に設定した書類取込画面700を投影する。こうして投影された結果が、図17である。図17に示すように、顧客領域702に表示されていた書類取込ボタン703−2と書類データ表示領域704−2は非表示になっていることがわかる。また、テラー領域701では書類取込ボタン703−1が非表示になっているが、書類データ表示領域704−1や表示中の書類データは表示されたままであることがわかる。このようにすることで、顧客領域702で投影データが撮像されないようにしつつ、テラー領域701で書類データの閲覧を継続させることができる。更には、テラー領域701では撮像中に撮像指示を行うことのないよう制御することができる。
ステップS1212では、情報処理装置101の撮像制御部504は、デジタルカメラ421に対して投影面304を撮像するよう指示する。デジタルカメラ421はこれに応じて投影面304を撮像し、画像データを生成する。生成された画像データは、情報処理装置101に送信され、RAM403に一時記憶する。
ステップS1213では、情報処理装置101の撮像制御部504は、撮像指示に応じて取得した画像データから、投影面304に存在する書類を認識し、この書類の領域をトリミングすることで書類データを生成する。テンプレートマッチングによって書類の領域を特定してもよいし、書類のエッジを検出することで書類の領域を特定してもよい。
ステップS1214では、情報処理装置101の記憶部501は、書類データ管理テーブル800に新規レコードを作成し、ステップS1213で生成された画像データと顧客の顧客IDとを対応付けて保存する。より具体的には、ステップS1213で生成された画像データのファイル名を所定の命名規則に従って変更し、そしてこの画像データを所定のフォルダに保存する。この保存場所を示す情報(ファイルパス等)と、書類取込画面700を表示する前またはその後に入力を受け付けた顧客のIDとを、書類データ管理テーブル800の新規レコードに格納する。また、書類データのサムネイル画像を生成し、このサムネイル画像の保存場所を示す情報も、新規レコードに格納する。更に、取込ユーザ803には、どちら側の書類取込ボタン703が押下されたのかによって格納する情報を変更する。すなわち、領域種別812が“顧客領域”である領域座標813の範囲内(つまり、顧客領域702)で書類取込ボタン703−2が押下された場合には、取込ユーザ803に“顧客”を格納する。領域種別812が“テラー領域”である領域座標813の範囲内(つまり、テラー領域701)で書類取込ボタン703−1が押下された場合には、取込ユーザ803に“テラー”を格納する。
ステップS1215では、情報処理装置101の表示制御部502は、ステップS1210で非表示に設定された顧客領域702の各種オブジェクトが表示されるように制御する。領域種別812が“顧客領域”の領域座標813が示す範囲内に存在する各種オブジェクトの表示状態を非表示から表示に設定変更する。ステップS1216では、情報処理装置101の表示制御部502は、ステップS1211で非表示に設定されたテラー領域701の書類取込ボタン703−1が表示されるように制御する。こちらも同様に、領域種別812が“テラー領域”の領域座標813が示す範囲内に存在する書類取込ボタン703−1の表示状態を非表示から表示に設定変更する。
ステップS1217では、情報処理装置101の表示制御部502は、ステップS1213で生成された書類データに対応するサムネイル画像をサムネイル画像保存場所805から取得する。そして、これを顧客領域702の書類データ表示領域704−2に追加表示するよう制御する。
そして、情報処理装置101の投影制御部503は、ステップS1215乃至ステップS1217で表示設定された各種オブジェクトを含む書類取込画面700を投影するよう、プロジェクタ423に対して指示する。これに応じてプロジェクタ423が投影面304に書類取込画面700を投影する。こうして投影された結果が、図18である。図18に示すように、顧客領域702には、新たに取り込んだ書類(図18では「住宅ローン」の書類)のサムネイル画像を含む書類データ表示領域704−2と書類取込ボタン703−2が再表示されていることがわかる。また、テラー領域701には、書類取込ボタン703−1が再表示されていることがわかる。このように、撮像が完了したら各種オブジェクトを再表示し、再度書類データの閲覧や書類の撮像が可能なようにする。ステップS1217の処理が完了したら、書類取込処理を終了する。
以上説明したように、本実施形態によれば第1の領域を表示したまま第2の領域を非表示にした投影データを投影することにより、第1の領域の投影データを閲覧させつつ、第2の領域が投影された面に存在する現実物体を適切に撮像することが可能となる。
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、1つの機器からなる装置に適用してもよい。
なお、本発明は、前述した実施形態の機能を実現する(実行可能とする)ソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
したがって、本発明の機能処理をコンピュータで実現(実行可能と)するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。