(57)【要約】【課題】ユーザインタフェース画面へのユーザ操作による画面の遷移に伴って表示の態様を制御するシステムを提供する。【解決手段】平面台に投影されたユーザインタフェース画面に対するユーザ操作に応じて、ユーザインタフェース画面を遷移させるとともに前記ユーザインタフェース画面の表示の態様を制御する。【選択図】図９
2018112894.tif 000002
【特許請求の範囲】
【請求項１】
平面台にユーザインタフェース画面を投影して表示する投影手段と、
前記投影手段により前記平面台に投影された前記ユーザインタフェース画面に対するユーザ操作を検出する検出手段と、
前記検出手段により検出された前記ユーザ操作に応じて、前記ユーザインタフェース画面を遷移させるとともに前記ユーザインタフェース画面の表示の態様を制御する制御手段と、
を有することを特徴とするシステム。
【請求項２】
前記表示の態様は、前記ユーザインタフェース画面のサイズと表示の向きのうち少なくともいずれかを含むことを特徴とする請求項１に記載のシステム。
【請求項３】
前記ユーザ操作は、前記ユーザインタフェース画面に対するタッチ操作を含むことを特徴とする請求項１に記載のシステム。
【請求項４】
前記タッチ操作は、前記ユーザインタフェース画面に表示された画像の操作を含むことを特徴とする請求項３に記載のシステム。
【請求項５】
前記ユーザ操作は、前記平面台への原稿の載置を含むことを特徴とする請求項１乃至４のいずれか１項に記載のシステム。
【請求項６】
前記平面台に載置された原稿を撮像する撮像手段、をさらに有し、
前記制御手段は、前記撮像手段により前記原稿が撮像された撮像データを、遷移させた後のユーザインタフェース画面として表示させる、
ことを特徴とする請求項５に記載のシステム。
【請求項７】
前記制御手段は、前記ユーザインタフェース画面に含まれる複数の表示領域をそれぞれ互いに異なる向きに表示させることを特徴とする請求項１乃至６のいずれか１項に記載のシステム。
【請求項８】
前記複数の表示領域は、複数のユーザそれぞれのユーザ操作に対応することを特徴とする請求項７に記載のシステム。
【請求項９】
前記検出手段は、測定対象物までの距離を測定するセンサを用いて、前記ユーザ操作を検出することを特徴とする請求項１乃至８のいずれか１項に記載のシステム。
【請求項１０】
前記検出手段は、前記平面台と前記ユーザ操作が行われているユーザの手との間の距離が所定値以下であるユーザ操作を、前記ユーザインタフェース画面へのタッチ操作として検出することを特徴とする請求項９に記載のシステム。
【請求項１１】
システムにおいて実行される制御方法であって、
平面台にユーザインタフェース画面を投影して表示する投影工程と、
前記投影工程において前記平面台に投影された前記ユーザインタフェース画面に対するユーザ操作を検出する検出工程と、
前記検出工程において検出された前記ユーザ操作に応じて、前記ユーザインタフェース画面を遷移させるとともに前記ユーザインタフェース画面の表示の態様を制御する制御工程と、
を有することを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データに基づき画像の投影を行うシステムおよび制御方法に関する。
【背景技術】
【０００２】
従来、一つの画面の表示領域を分割し、複数人に対して各分割された画面を提供することが知られている。特許文献１には、２名〜５名の各人数に応じて画面の表示領域を分割し、各分割された画面上にテレビ画像のような動画を表示することが記載されている。
【０００３】
一方、金融機関等の営業店の窓口では、テラー（tellerオペレータ）が顧客に対して各種商品のセールスを行う窓口業務が行われている。そのような場合、テラーと顧客が１つの画面を異なる方向から見ることが多いので、１つの画面内を分割して表示する表示装置のニーズが高い。また、近年では、顧客業務において様々な用途に対応するために、テラーと顧客との間で取り扱われる情報が多様化してきている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−５４０６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記の窓口業務においては、テラーと顧客との間で取り扱われる情報および手続き進行の態様の多様化に伴って、その手続きのために用いられるユーザインタフェース画面へのユーザ操作も多様化してきている。従って、特許文献１のように、画面の表示領域を分割して表示するだけでは、そのような多様化するユーザ操作に十分に対応することができず、利便性を向上させることが難しい。
【０００６】
本発明の目的は、このような従来の問題点を解決することにある。上記の点に鑑み、本発明は、ユーザインタフェース画面へのユーザ操作による画面の遷移に伴って表示の態様を制御するシステムおよび制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、本発明に係るシステムは、平面台にユーザインタフェース画面を投影して表示する投影手段と、前記投影手段により前記平面台に投影された前記ユーザインタフェース画面に対するユーザ操作を検出する検出手段と、前記検出手段により検出された前記ユーザ操作に応じて、前記ユーザインタフェース画面を遷移させるとともに前記ユーザインタフェース画面の表示の態様を制御する制御手段とを有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、ユーザインタフェース画面へのユーザ操作による画面の遷移に伴って表示の態様を制御することができる。
【図面の簡単な説明】
【０００９】
【図１】カメラスキャナを含むシステムの構成を示す図である。
【図２】カメラスキャナの構成を示す図である。
【図３】カメラスキャナのコントローラ部のハードウェア構成を示す図である。
【図４】カメラスキャナの制御用プログラムの機能構成を示す図である。
【図５】距離画像センサの構成を示す図である。
【図６】ジェスチャー認識の処理を示すフローチャートである。
【図７】書画台の平面に投影された３次元点群を説明するための図である。
【図８】操作者及び顧客が同時にカメラスキャナを操作する様子を示す図である。
【図９】表示制御処理を示すフローチャートである。
【図１０】表示態様の変化を示す図である。
【図１１】表示態様の変化を示す図である。
【図１２】表示制御処理を示すフローチャートである。
【図１３】表示制御処理を示すフローチャートである。
【図１４】表示制御処理を示すフローチャートである。
【図１５】表示制御処理を示すフローチャートである。
【図１６】表示制御処理を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成要素には同一の参照番号を付して、説明を省略する。
【００１１】
［第１の実施形態］
図１は、本実施形態におけるカメラスキャナ１０１を含むシステムの構成を示す図である。後述するが、複数名の操作者が、例えば、契約等の手続き、打ち合わせ、教育の目的で、システム１００を使用する。システム１００では、カメラスキャナ１０１は、イーサネット（登録商標）等のネットワーク１０４を介してホストコンピュータ１０２およびプリンタ１０３に接続されている。システム１００は、ホストコンピュータ１０２からの指示により、カメラスキャナ１０１により読取領域内の画像を読み取るスキャン機能や、読み取られたスキャンデータをプリンタ１０３により出力するプリント機能を実行可能である。また、ホストコンピュータ１０２を介さず、ユーザによるカメラスキャナ１０１への直接の指示により、スキャン機能、プリント機能が実行される場合もある。
【００１２】
［カメラスキャナの構成］
図２は、カメラスキャナ１０１の構成を示す図である。図２（ａ）に示すように、カメラスキャナ１０１は、コントローラ部２０１、カメラ部２０２、腕部２０３、プロジェクタ２０７、距離画像センサ部２０８を含む。カメラスキャナ１０１の本体であるコントローラ部２０１と、撮像を行うためのカメラ部２０２、プロジェクタ２０７および距離画像センサ部２０８は、腕部２０３により連結されている。腕部２０３は、関節を用いて曲げ伸ばしが可能なように構成されている。
【００１３】
図２（ａ）には、カメラスキャナ１０１が設置されている書画台２０４も示されている。書画台２０４は、平面台であり、複数の操作者が書画台２０４の周囲に位置し、上記の様々な手続きが進行する。カメラ部２０２および距離画像センサ部２０８のレンズは、書画台２０４方向に向けられており、破線で囲まれた読取領域２０５内の画像を読取可能である。図２では、原稿２０６は、読取領域２０５内に置かれており、カメラスキャナ１０１により読取可能である。カメラ部２０２は、単一解像度で画像を撮像するものとしても良いし、高解像度画像撮像と低解像度画像撮像が可能なものであっても良い。
【００１４】
書画台２０４内には、ターンテーブル２０９が設けられている。ターンテーブル２０９は、コントローラ部２０１からの指示により回転可能なように構成され、ターンテーブル２０９上に置かれた物体とカメラ部２０２との角度を変化させることができる。また、図２に示されていないが、カメラスキャナ１０１は、ＬＣＤタッチパネル３３０およびスピーカ３４０を含んでも良い。さらに、周囲の環境情報を収集するための人感センサ、照度センサ、加速度センサなどの各種センサデバイスを含んでも良い。
【００１５】
図２（ｂ）は、カメラスキャナ１０１における座標系について表している。カメラスキャナ１０１では、各ハードウェアデバイスに対して、カメラ座標系、距離画像座標系、プロジェクタ座標系という座標系が定義されている。これらは、カメラ部２０２および距離画像センサ部２０８が撮像する画像平面、プロジェクタ２０７が投影する画像平面をそれぞれＸＹ平面とし、各画像平面に直交する方向をＺ方向として定義したものである。さらに、これらの独立した座標系の３次元データを統一的に扱えるようにするために、書画台２０４を含む平面をＸＹ平面とし、このＸＹ平面から上方に垂直な向きをＺ軸とする直交座標系が定義されている。
【００１６】
座標系を変換する場合の一例として、図２（ｃ）に、直交座標系と、カメラ部２０２を中心としたカメラ座標系を用いて表現された空間と、カメラ部２０２が撮像する画像平面との関係を示す。直交座標系における３次元点Ｐ［Ｘ，Ｙ，Ｚ］は、式（１）により、カメラ座標系における３次元点Ｐｃ［Ｘｃ，Ｙｃ，Ｚｃ］へ変換することができる。
【式１】
【００１７】
2018112894.tif 000003
【００１８】
ここで、Ｒｃおよびｔｃは直交座標系に対するカメラの姿勢（回転）と位置（並進）によって求まる外部パラメータによって構成され、Ｒｃを３×３の回転行列、ｔｃを並進ベクトルと呼ぶ。逆に、カメラ座標系で定義された３次元点は、式（２）式により、直交座標系へ変換することができる。
【式２】
【００１９】
2018112894.tif 000004
【００２０】
さらに、カメラ部２０２で撮影される２次元のカメラ画像平面は、カメラ部２０２によって３次元空間中の３次元情報が２次元情報に変換されたものである。即ち、カメラ座標系上での３次元点Ｐｃ［Ｘｃ，Ｙｃ，Ｚｃ］は、式（３）によりカメラ画像平面での２次元座標ｐｃ［ｘｐ，ｙｐ］に透視投影変換することにより変換することができる。
【式３】
【００２１】
2018112894.tif 000005
【００２２】
ここで、Ａは、カメラの内部パラメータと呼ばれ、焦点距離と画像中心などで表現される３×３の行列である。
【００２３】
以上のように、式（１）と式（３）を用いることで、直交座標系で表された３次元点群を、カメラ座標系での３次元点群座標やカメラ画像平面に変換することができる。なお、各ハードウェアデバイスの内部パラメータおよび直交座標系に対する位置姿勢（外部パラメータ）は、公知のキャリブレーション手法により予めキャリブレーションされているものとする。以後、特に断りがなく３次元点群と表記した場合は、直交座標系における３次元データを表しているものとする。
【００２４】
［カメラスキャナのコントローラのハードウェア構成］
図３は、カメラスキャナ１０１の本体であるコントローラ部２０１のハードウェア構成を示す図である。コントローラ部２０１は、ＣＰＵ３０２、ＲＡＭ３０３、ＲＯＭ３０４、ＨＤＤ３０５、ネットワークインタフェース（Ｉ／Ｆ）３０６を含む。また、コントローラ部２０１は、画像処理プロセッサ３０７、カメラＩ／Ｆ３０８、ディスプレイコントローラ３０９、シリアルＩ／Ｆ３１０、オーディオコントローラ３１１およびＵＳＢコントローラ３１２を含む。上記各ブロックは、システムバス３０１を介して相互に通信可能に接続されている。
【００２５】
ＣＰＵ３０２は、コントローラ部２０１全体の動作を統括的に制御する中央演算装置である。ＲＡＭ３０３は、揮発性メモリである。ＲＯＭ３０４は、不揮発性メモリであり、ＣＰＵ３０２の起動用プログラムが格納されている。ＨＤＤ３０５は、ＲＡＭ３０３に対して大容量なハードディスクドライブ（ＨＤＤ）である。ＨＤＤ３０５には、コントローラ部２０１の実行する、カメラスキャナ１０１の制御用プログラムが格納されている。
【００２６】
ＣＰＵ３０２は、電源ＯＮ等の起動時に、ＲＯＭ３０４に格納されている起動用プログラムを実行する。この起動用プログラムは、ＨＤＤ３０５に格納されている制御用プログラムを読み出し、ＲＡＭ３０３上に展開するためのものである。ＣＰＵ３０２は、起動用プログラムを実行すると、続けてＲＡＭ３０３上に展開した制御用プログラムを実行する。また、ＣＰＵ３０２は、制御用プログラムによる動作に用いるデータもＲＡＭ３０３に読み出す。ＨＤＤ３０５には、さらに、制御用プログラムによる動作に必要な各種設定や、また、カメラ入力により生成された画像データを格納することができ、ＣＰＵ３０２により読出し／書込みが行われる。ＣＰＵ３０２は、ネットワークＩ／Ｆ３０６を介してネットワーク１０４上の他の機器と相互に通信を行う。
【００２７】
画像処理プロセッサ３０７は、ＲＡＭ３０３に格納された画像データを読み出して処理し、ＲＡＭ３０３へ書き込む。なお、画像処理プロセッサ３０７が実行する画像処理は、例えば、回転、変倍、色変換である。カメラＩ／Ｆ３０８は、カメラ部２０２および距離画像センサ２０８と接続され、ＣＰＵ３０２からの指示により、カメラ部２０２から撮像データを取得し、距離画像センサ部２０８から距離画像データを取得して、ＲＡＭ３０３へ書き込む。また、ＣＰＵ３０２は、カメラ部２０２および距離画像センサ２０８へ制御コマンドを送信し、カメラ部２０２および距離画像センサ２０８の設定を行う。
【００２８】
ディスプレイコントローラ３０９は、ＣＰＵ３０２の指示により、ディスプレイへの画像データの表示を制御する。図３では、ディスプレイコントローラ３０９は、短焦点プロジェクタ２０７とＬＣＤタッチパネル３３０に接続されている。シリアルＩ／Ｆ３１０は、シリアル信号の入出力を行う。ここでは、シリアルＩ／Ｆ３１０は、ターンテーブル２０９に接続され、ＣＰＵ３０２からの回転開始／終了および回転角度の指示を、ターンテーブル２０９へ送信する。また、シリアルＩ／Ｆ３１０は、ＬＣＤタッチパネル３３０に接続され、ＣＰＵ３０２は、ＬＣＤタッチパネル３３０が押下されたときに、シリアルＩ／Ｆ３１０を介して、押下された座標を取得する。
【００２９】
オーディオコントローラ３１１は、スピーカ３４０に接続され、ＣＰＵ３０２の指示により、音声データをアナログ音声信号に変換し、スピーカ３４０を介して音声を出力する。ＵＳＢコントローラ３１２は、ＣＰＵ３０２の指示により、外付けのＵＳＢデバイスの制御を行う。図３では、ＵＳＢコントローラ３１２は、ＵＳＢメモリやＳＤカードなどの外部メモリ３５０に接続され、外部メモリ３５０へのデータの読出し／書込みを行う。
【００３０】
［カメラスキャナの制御用プログラムの機能構成］
図４は、ＣＰＵ３０２が実行するカメラスキャナ１０１の制御用プログラムの機能構成４０１を示す図である。カメラスキャナ１０１の制御用プログラムは、前述のようにＨＤＤ３０５に格納され、起動時に、ＣＰＵ３０２がＲＡＭ３０３に展開して実行する。
【００３１】
メイン制御部４０２は、機能構成４０１内の他の各モジュールを統括的に制御する。画像取得部４１０は、画像入力処理を行うモジュールであり、カメラ画像取得部４０７、距離画像取得部４０８を含む。カメラ画像取得部４０７は、カメラＩ／Ｆ３０８を介して、カメラ部２０２が出力する撮像データを取得し、ＲＡＭ３０３へ格納する。距離画像取得部４０８は、カメラＩ／Ｆ３０８を介して、距離画像センサ部２０８が出力する距離画像データを取得し、ＲＡＭ３０３へ格納する。距離画像取得部４０８による処理の詳細は、図５を用いて後述する。
【００３２】
ジェスチャー認識部４０９は、カメラ画像取得部４０７、距離画像取得部４０８が取得する画像データから書画台２０４上の物体の動きを検知して認識するモジュールである。ジェスチャー認識部４０９は、画像取得部４１６から書画台２０４上の画像を取得し続け、タッチ操作などのジェスチャーを検知すると、その検知情報をメイン制御部４０２へ通知する。ジェスチャー認識部４０９による処理の詳細は、図６を用いて後述する。画像処理部４１１は、カメラ部２０２および距離画像センサ部２０８から取得した画像データを画像処理プロセッサ３０７で解析するために用いられる。ジェスチャー認識部４０９も、画像処理部４１１の機能を利用して実行される。
【００３３】
ユーザインタフェース部４０３は、メイン制御部４０２からの要求を受け、メッセージやボタン等のＧＵＩ部品を生成する。そして、ユーザインタフェース部４０３は、表示部４０６へ生成したＧＵＩ部品の表示を要求する。表示部４０６は、ディスプレイコントローラ３０９を介して、プロジェクタ２０７もしくはＬＣＤタッチパネル３３０へ、要求されたＧＵＩ部品の表示を行う。
【００３４】
プロジェクタ２０７は、書画台２０４に向けて設置されており、書画台２０４上にＧＵＩ部品を投射する。また、ユーザインタフェース部４０３は、ジェスチャー認識部４０９が認識したタッチ等のジェスチャー操作、あるいはシリアルＩ／Ｆ３１０を介したＬＣＤタッチパネル３３０からの入力操作、そしてさらにそれらの座標情報を受信する。そして、ユーザインタフェース部４０３は、描画中の操作画面の内容と操作座標とを対応させて、操作内容（押下されたボタン等）を判定する。ユーザインタフェース部４０３は、その操作内容の判定結果をメイン制御部４０２へ通知する。このような一連の動作により、操作者のユーザ操作の受付けが行われる。
【００３５】
ネットワーク通信部４０４は、ネットワークＩ／Ｆ３０６を介して、ネットワーク１０４上の他の機器とＴＣＰ／ＩＰによる通信を行う。データ管理部４０５は、制御用プログラム４０１の実行において生成された作業データや、カメラ部２０２や距離画像センサ部２０８からの画像データなど様々なデータを、ＨＤＤ３０５の所定の領域へ保存して管理する。例えば、作業データには、不図示であるが、平面原稿画像撮影部、書籍画像撮影部、立体形状測定部により生成されたスキャンデータが含まれる。
【００３６】
［距離画像センサおよび距離画像取得部の説明］
図５は、距離画像センサ２０８の構成を示す図である。距離画像センサ２０８は、赤外線によるパターン投射方式の距離画像センサである。距離画像センサ２０８内の赤外線パターン投射部３６１は、測定対象物に対して、人の目には不可視である赤外線により３次元測定パターンを投射する。距離画像センサ２０８内の赤外線カメラ３６２は、対象物に対して投射された３次元測定パターンを読み取るカメラである。距離画像センサ２０８内のＲＧＢカメラ３６３は、人の目に見える可視光をＲＧＢ信号で撮影するカメラである。
【００３７】
距離画像取得部４０８の処理を、図５（ａ）のフローチャートを用いて説明する。また、図５（ｂ）〜（ｄ）は、パターン投射方式による距離画像の計測原理を説明するための図である。図５（ａ）の処理は、距離画像取得部４０８により開始される。
【００３８】
Ｓ５０１では、ＣＰＵ３０２は、図５（ｂ）に示すように赤外線パターン投射部３６１を用いて赤外線による３次元形状測定パターン５２２を対象物５２１に対して投射する。Ｓ５０２では、ＣＰＵ３０２は、ＲＧＢカメラ３６３を用いて対象物を撮影したＲＧＢ画像５２３、および、赤外線カメラ３６２を用いてＳ５０１で投射された３次元測定パターン５２２を撮影した赤外線カメラ画像５２４、を取得する。なお、赤外線カメラ３６２とＲＧＢカメラ３６３とでは設置位置が異なるので、図５（ｃ）に示すようにそれぞれで撮影される２つのＲＧＢカメラ画像５２３および赤外線カメラ画像５２４の撮影領域は異なる。そこで、Ｓ５０３では、ＣＰＵ３０２は、赤外線カメラ３６２の座標系からＲＧＢカメラ３６３の座標系への座標系変換を用いて赤外線カメラ画像５２４をＲＧＢカメラ画像５２３の座標系に合わせる。なお、赤外線カメラ３６２とＲＧＢカメラ３６３の相対位置や、それぞれの内部パラメータは、事前のキャリブレーション処理により既知であるとする。
【００３９】
Ｓ５０４では、ＣＰＵ３０２は、図５（ｄ）に示すように、３次元測定パターン５２２とＳ５０３で座標変換が行われた赤外線カメラ画像５２４との間での対応点を抽出する。例えば、赤外線カメラ画像５２４上の１点を３次元測定パターン５２２上から探索して、同一の点が検出された場合に対応付けを行う。あるいは、赤外線カメラ画像５２４の画素の周辺のパターンを３次元測定パターン５２２上から探索し、一番類似度が高い部分と対応付けてもよい。
【００４０】
Ｓ５０５では、ＣＰＵ３０２は、赤外線パターン投射部３６１と赤外線カメラ３６２を結ぶ直線を基線５２５とし、三角測量の原理により赤外線カメラ３６２からの距離を算出する。Ｓ５０４で対応付けがなされた画素については、赤外線カメラ３６２からの距離を算出して画素値として保存し、対応付けが出来なかった画素については、距離の計測ができなかった画素として無効値を保存する。ＣＰＵ３０２は、値の保存処理を、Ｓ５０３で座標変換が行われた赤外線カメラ画像５２４の全画素に対して行い、各画素に距離値が付加された距離画像を生成する。
【００４１】
Ｓ５０６では、ＣＰＵ３０２は、距離画像の各画素にＲＧＢカメラ画像５２３のＲＧＢ値を保存することにより、１画素につきＲ、Ｇ、Ｂ、距離の４つの値を持つ距離画像を生成する。ここで、取得した距離画像は、距離画像センサ２０８のＲＧＢカメラ３６３で定義された距離画像センサ座標系が基準となっている。そこで、Ｓ５０７では、図２（ｂ）で説明したように、距離画像センサ座標系として得られた距離データを直交座標系における３次元点群に変換する。以下、特に指定がなく３次元点群と表記した場合は、直交座標系における３次元点群を示すものとする。
【００４２】
なお、本実施形態では、上述したように、距離画像センサ２０８として赤外線パターン投射方式を採用している。しかしながら、他の方式の距離画像センサを用いるようにしても良い。例えば、２つのＲＧＢカメラでステレオ立体視を行うステレオ方式や、レーザ光の飛行時間を検出することで距離を測定するＴＯＦ（Ｔｉｍe  ｏｆ  Ｆｌｉｇｈｔ）方式など、他の計測方式を用いても良い。
【００４３】
［ジェスチャー認識部の説明］
次に、ジェスチャー認識部４０９の処理の詳細を、図６（ａ）のフローチャートを用いて説明する。図６（ａ）の処理は、ジェスチャー認識部４０９により開始される。
【００４４】
Ｓ６０１では、ＣＰＵ３０２は、初期化処理を行う。初期化処理では、距離画像取得部４０８から距離画像が１フレーム取得される。ここで、ジェスチャー認識部４０９による処理開始時は、書画台２０４上に対象物が置かれていない状態であるので、初期状態として書画台２０４の平面の認識を行う。つまり、ＣＰＵ３０２は、取得した距離画像から最も広い平面を抽出し、その位置と法線ベクトル（以降、書画台２０４の平面パラメータと呼ぶ）を算出し、ＲＡＭ３０３に保存する。
【００４５】
次に、Ｓ６０２では、Ｓ６２１〜６２２に示す、書画台２０４上に存在する物体の３次元点群を取得する処理が行われる。Ｓ６２１では、ＣＰＵ３０２は、距離画像取得部４０８から距離画像と３次元点群を１フレーム取得する。Ｓ６２２では、ＣＰＵ３０２は、書画台２０４の平面パラメータを用いて、取得した３次元点群から書画台２０４を含む平面にある点群を除去する。
【００４６】
次に、Ｓ６０３では、Ｓ６３１〜Ｓ６３４に示す、取得した３次元点群からユーザの手の形状および指先を検出する処理が行われる。ここで、図７（ａ）〜（ｃ）に示す、指先検出処理の方法を模式的に表した図を用いて説明する。Ｓ６３１では、ＣＰＵ３０２は、Ｓ６０２で取得した３次元点群から、書画台２０４を含む平面から所定の高さ以上にある、肌色の３次元点群を抽出することで、手の３次元点群を取得する。図７（ａ）の画像６６１は、抽出した手の３次元点群を表している。
【００４７】
Ｓ６３２では、ＣＰＵ３０２は、抽出した手の３次元点群を、書画台２０４の平面に射影した２次元画像を生成して、その手の外形を検出する。図７（ａ）の画像６６２は、書画台２０４の平面に投影した３次元点群を表している。ここで、点群の各座標は、書画台２０４の平面パラメータを用いて投影される。また、図７（ｂ）に示すように、投影した３次元点群から、ｘｙ座標の値だけを取り出せば、ｚ軸方向から見た２次元画像６６３として扱うことができる。その際、ＣＰＵ３０２は、手の３次元点群の各点が、書画台２０４の平面に投影した２次元画像の各座標のどれに対応するかを記憶領域に記憶しておくものとする。
【００４８】
Ｓ６３３では、ＣＰＵ３０２は、検出した手の外形上の各点について、その点での外形の曲率を算出し、算出した曲率が所定値より小さい点を指先として検出する。図７（ｃ）は、外形の曲率から指先を検出する方法を模式的に表したものである。特徴点６６４は、書画台２０４の平面に投影された２次元画像６６３の外形を表す点の一部を表している。ここで、特徴点６６４のような、外形を表す点のうち、隣り合う５個の点を含むように円を描くとする。円６６５、６６７が、その一例である。ＣＰＵ３０２は、この円を、全ての外形の点に対して順に描き、その直径（例えば、直径６６６、６６８）が所定の値より小さい（曲率が小さい）ことを以て、指先を検出する。この例では、隣り合う５個の点としたが、その数は限定されるものではない。また、ここでは曲率を用いたが、外形に対して楕円フィッティングを行うことで、指先を検出しても良い。
【００４９】
Ｓ６３４では、ＣＰＵ３０２は、検出した指先の個数および各指先の座標を算出する。この時、前述したように、書画台２０４に投影した２次元画像の各点と、手の３次元点群の各点との対応関係を記憶している。従って、各指先の３次元座標を取得することができる。
【００５０】
本実施形態では、３次元点群から２次元画像に投影した画像から指先を検出する方法を説明した。しかしながら、指先検出の対象とする画像は、これに限定されるものではない。例えば、距離画像の背景差分や、ＲＧＢ画像の肌色領域から手の領域を抽出し、上述と同様の方法（外形の曲率計算等）で、手領域のうちの指先を検出しても良い。その場合、検出した指先の座標はＲＧＢ画像や距離画像といった２次元画像上の座標であるので、その座標における距離画像の距離情報を用いて、直交座標系の３次元座標に変換する必要がある。その時、指先点となる外形上の点ではなく、指先を検出するときに用いた、曲率円の中心を指先点としても良い。
【００５１】
Ｓ６０４では、Ｓ６４１〜Ｓ６４６に示す、検出した手の形状および指先からのジェスチャー判定処理が行われる。Ｓ６４１では、ＣＰＵ３０２は、Ｓ６０３で検出された指先が１つであるか否かを判定する。検出された指先が１つでないと判定された場合、Ｓ６４６へ進み、ジェスチャーなしと判定する。一方、検出された指先が１つであると判定された場合、Ｓ６４２へ進み、ＣＰＵ３０２は、検出された指先と書画台２０４を含む平面との距離を算出する。赤外線カメラ３６２から指先までの距離は、図５のＳ５０５における説明のように算出されており、赤外線カメラ３６２と書画台２０４までの距離は既知であるので、指先と書画台２０４との間の距離を算出することができる。
【００５２】
Ｓ６４３では、ＣＰＵ３０２は、Ｓ６４２で算出された距離が微小な所定値以下であるか否かを判定する。所定値以下であると判定された場合、Ｓ６４４へ進み、ＣＰＵ３０２は、指先が書画台２０４へタッチした、即ちタッチジェスチャーありと判定する。一方、所定値以下でないと判定された場合、Ｓ６４５へ進み、ＣＰＵ３０２は、指先が移動したジェスチャー、即ち、タッチはしていないが指先が書画台２０４上に存在するジェスチャーであると判定する。
【００５３】
Ｓ６４４〜Ｓ６４６の処理後、Ｓ６０５へ進む。Ｓ６０５では、ＣＰＵ３０２は、判定したジェスチャーをメイン制御部４０２へ通知する。そして、Ｓ６０２へ戻ってジェスチャー認識処理を繰り返す。
【００５４】
なお、ここでは、一本指でのジェスチャー認識について説明を行ったが、複数の指あるいは複数の手でのジェスチャー認識に適用しても良い。
【００５５】
本実施形態では、以上のような処理により、書画台２０４上での指先の位置、指先のジェスチャーが検出される。そして、書画台２０４上には、プロジェクタ２０７により後述するような複数の遷移画面を含むユーザインタフェース画面が投影されている。従って、カメラスキャナ１０１は、投影されたユーザインタフェース画面におけるどの位置でジェスチャー操作があったかを認識することが可能である。そして、カメラスキャナ１０１は、その認識した情報に基づいて、次に投影すべき表示画面を生成してプロジェクタ２０７により投影する。
【００５６】
また、カメラスキャナ１０１は、書画台２０４上に投影されたユーザインタフェース画面上でのジェスチャー位置によって、書画台２０４のいずれの側に位置しているユーザであるかを判断する。例えば、後述するが、図１１（ｃ）でサムネイル９１５Ａ上でジェスチャー操作を検出した場合には、操作者７０１による操作であると認識し、サムネイル９１５Ｂ上でジェスチャー操作を検出した場合には、顧客７０２による操作であると認識する。そして、カメラスキャナ１０１は、その認識した結果に応じて、次に書画台２０４上に投影するユーザインタフェース画面をいずれかの向きになるように生成してプロジェクタ２０７に投影させる。そのような画面の生成は、例えば、認識したユーザの位置に応じて、例えば、２名であるならばデフォルト画像を１８０度回転させることにより行うことができる。本実施形態では、そのような構成により、ユーザのユーザインタフェース画面の操作性と閲覧性を向上させることができる。
【００５７】
［利用シーンの説明］
図８を用いてカメラスキャナ１０１の利用シーンについて説明する。
【００５８】
本実施形態においては、複数名の操作者がカメラスキャナ１０１を利用する場合を想定している。例えば、契約などの手続きを行う場面、商品などの説明を行う場面、打合せを行う場面、教育など様々なシーンでの使用に適用することができる。カメラスキャナ１０１の操作者は、カメラスキャナ１０１の操作を行いながら説明を行う人（メイン操作者）と、説明を受けながらカメラスキャナ１０１を操作する人（サブ操作者）に分類される。契約などの手続きを行う場面においては、説明員（メイン操作者）と顧客（サブ操作者）により、契約内容の確認、必要事項の入力、入力内容確認、承認といった手続きが行われる。本実施形態では、このような複数の操作者がカメラスキャナ１０１を操作する場合に、適切な処理フローを実現させることを目的とする。
【００５９】
図８は、２人の操作者７０１および顧客７０２が同時にカメラスキャナ１０１を操作している様子を示す図である。例えば、図８のように対面で利用することが可能である。操作者７０１と顧客７０２の配置は、カメラスキャナ１０１のシステム起動時に、メイン操作者がログインする際に決めることができる。あるいは、顔認証技術などを用いて、事前に登録されているメイン操作者の顔を検出し、それ以外の操作者をサブ操作者と判断することで決めることも可能である。また、カメラスキャナ１０１を１人で利用することも、３人以上で利用することも可能である。また、システム起動時に、カメラスキャナ１０１を使用する人数を設定するようにしても良い。上記のような初期設定は、例えば、ホストコンピュータ１０２で起動されたカメラスキャナ１０１の設定画面上で行われるようにしても良い。
【００６０】
以下、図８のように対面での契約手続きで使用するシーンを用いて説明を行う。そして、カメラスキャナ１０１に対して左側にいる人物を操作者７０１、右側にいる人物を顧客７０２とする。なお、操作者数や配置、使用シーンに関して、本実施形態での説明に限定されるものではない。
【００６１】
［メイン制御部の説明］
図９のフローチャートを用いてメイン制御部４０２が実行する表示制御処理について説明する。また、図１０は、操作者７０１と顧客７０２が書画台２０４上に表示されたユーザインタフェース（ＵＩ）画面を操作している様子を示す図である。図９の処理は、メイン制御部４０２により開始される。
【００６２】
Ｓ９０１において、ＣＰＵ３０２は、プロジェクタ２０７によりＵＩ画面を書画台２０４上へ投影表示させる。例えば、ＵＩ画面の一例として、図１０（ａ）に示す画面がある。ＵＩ画面には、氏名入力欄９０１、パスワード入力欄９０２、ＯＫボタン９０３が投影表示されている。操作者７０１および顧客７０２はジェスチャー操作により操作項目を設定する。なお、操作項目についてはこれに限るものではない。例えば、ソフトキーボード入力操作や、表示されたＵＩ部品・画像に対するジェスチャー操作（拡縮表示・回転・移動・切り出しなど）でも良い。
【００６３】
Ｓ９０２において、ＣＰＵ３０２は、ジェスチャー認識部４０９からのジェスチャー検知通知の有無を確認する。なお、以下の説明では、検知するジェスチャーは書画台２０４上へのタッチ操作であるとするが、その他のジェスチャー操作を用いても良い。図１０（ａ）の場合には、指先タッチジェスチャー検知通知がされないので、Ｓ９０６へ進む。一方、図１０（ｂ）に示す場合においては、タッチジェスチャー検知通知が通知されるのでＳ９０３へ進む。
【００６４】
Ｓ９０３において、ＣＰＵ３０２は、検出されたタッチジェスチャーによって選択された操作項目を判定する。図１０（ｂ）の場合には、氏名入力欄９０１への入力開始指示であると判定される。Ｓ９０４では、ＣＰＵ３０２は、Ｓ９０３で判定された操作項目を実行する。Ｓ９０５では、実行された操作項目に伴うＵＩ画面の更新処理を行う。その際に、ソフトキーボードが表示されるようにしても良い。図１０（ｂ）の場合には、氏名入力欄９０１への入力結果が反映される。
【００６５】
Ｓ９０６では、ＣＰＵ３０２は、システムの終了判定を行い、終了判定がなされるまでＳ９０１〜Ｓ９０５の処理を繰り返す。なお、システムの終了は、例えば、ＵＩ画面上に投射表示された終了ボタンを操作することや、カメラスキャナ１０１の本体の電源ボタン（不図示）を押すなどにより行われる。
【００６６】
以下、操作者７０１と顧客７０２が行う操作例と書画台２０４上に投影されるＵＩ画面と詳細な処理フローの例について図１０、図１２を用いて説明する。
【００６７】
［ログイン時の操作画面］
図１０（ａ）は、ログイン画面を示している。図１０（ａ）に示すように、書画台２０４上で、操作者７０１の氏名入力欄９０１とパスワード入力欄９０２、及び入力が完了した後に押下されるＯＫボタン９０３が操作者７０１に向けて表示される。図１０（ｂ）は、氏名を入力するために、操作者７０１が氏名入力欄９０１の部分を選択することで入力が可能となり、氏名を入力している例を示している。
【００６８】
続いてこの画面上での処理フローを図１２（ａ）を用いて説明する。
【００６９】
Ｓ１２０１では、ＣＰＵ３０２は、図１０（ａ）に示すようにログイン画面表示を行い、氏名入力欄９０１とパスワード入力欄９０２の入力を受け付ける。Ｓ１２０２では、ＣＰＵ３０２は、氏名情報とパスワード情報とに基づいて、ログインが成功であるか否かを判定する。ログインが成功でないと判定された場合、Ｓ１２０１からの処理を繰り返す。ログインが成功であると判定された場合、Ｓ１２０３で、ＣＰＵ３０２は、後述する機能メニュー画面表示の処理を実行する。
【００７０】
［機能と商品の選択画面］
図１０（ｃ）は、機能メニュー選択画面を示している。機能メニュー選択画面は、説明員が顧客とどのような内容について相談するかの選択を受け付けるための画面であり、書面台２０４上で、機能メニュー９０５Ａ及び９０５Ｂが操作者７０１に向けて表示される。また、操作を終了する場合のログアウトボタン９０４も表示される。
【００７１】
続いてこの画面上での処理フローを図１２（ｂ）を用いて説明する。
【００７２】
Ｓ１２１１では、ＣＰＵ３０２は、機能メニュー選択画面上でログアウトボタン９０４が押下されたか否かを判定する。ここで、ログアウトボタン９０４が押下されたと判定された場合、Ｓ１２０１のログイン画面表示の処理に移行する。ログインボタン９０４が押下されていないと判定された場合、Ｓ１２１２に進む。
【００７３】
Ｓ１２１２では、ＣＰＵ３０２は、機能メニュー９０５Ａ及び９０５Ｂのいずれかが押下されたか否かを判定する。機能メニュー９０５Ａ及び９０５Ｂのいずれかが押下されたと判定された場合、Ｓ１２１３に進み、ＣＰＵ３０２は、後述する商品メニュー画面表示の処理を実行する。機能メニュー９０５及び９０５Ｂのいずれもが押下されていないと判定された場合、Ｓ１２１１からの処理を繰り返す。
【００７４】
図１０（ｄ）は、商品メニュー選択画面を示している。商品メニュー選択画面は、顧客７０２が説明員である操作者７０１に相談したい内容の選択を受け付けるための画面であり、書面台２０４上で、商品メニュー９０６Ａ、９０６Ｂ、９０６Ｃが顧客７０２に向けて表示される。一方、画面を前に戻すための戻るボタン９０７が操作者７０１に向けて表示される。図１０（ｄ）の商品メニュー選択画面のデータは、例えば、以下のようにして生成しても良い。まず、デフォルトで用意されている商品メニュー選択画面のフォーマットを、商品メニュー９０６Ａ〜９０６Ｃを含む領域と、戻るボタン９０７を含む領域とに分割する。そして、カメラスキャナ１０１の起動時に設定された人数等に対応した角度分、例えば２名であれば１８０度分、商品メニュー９０６Ａ〜９０６Ｃを含む領域を回転させる。そして、回転された商品メニュー９０６Ａ〜９０６Ｃを含む領域と、戻るボタン９０７を含む領域とを合成して図１０（ｄ）の商品メニュー選択画面のデータを生成する。
【００７５】
続いてこの画面上での処理フローを図１２（ｃ）を用いて説明する。
【００７６】
Ｓ１２２１では、ＣＰＵ３０２は、商品メニュー選択画面上で戻るボタン９０７が押下されたか否かを判定する。ここで、戻るボタン９０７が押下されたと判定された場合、Ｓ１２２４で、ＣＰＵ３０２は、１つ前の画面表示を行う。本実施形態では、図１０（ｃ）の機能メニュー選択画面の表示が行われる。戻るボタン９０７が押下されていないと判定された場合、Ｓ１２２２へ進む。
【００７７】
Ｓ１２２２では、ＣＰＵ３０２は、商品メニュー９０６Ａ〜９０６Ｃのいずれかが押下されたか否かを判定する。ここで、商品メニュー９０６Ａ〜９０６Ｃのいずれかが押下されたと判定された場合、Ｓ１２２３で、ＣＰＵ３０２は、後述する顧客情報入力画面表示を実行する。商品メニュー９０６Ａ〜９０６Ｃのいずれもが押下されていないと判定された場合、Ｓ１２２１からの処理を繰り返す。
【００７８】
このように、本実施形態では、顧客７０２が選択すべき項目は顧客７０２に向けて表示され、操作者７０１が選択すべき項目は操作者７０１に向けて表示される。その結果、操作者７０１、顧客７０２の各々のＵＩ上での閲覧及び操作を行い易くすることができる。
【００７９】
［顧客情報入力画面］
図１０（ｅ）は、顧客情報入力画面を示している。顧客情報入力画面は、図１０（ｄ）の商品メニュー選択画面で選択された商品メニューに対する顧客の情報の入力を受け付けるための画面である。また、顧客情報入力画面上には、商品メニュー毎に作業すべき作業ステップを表すステップ欄９０９が表示される。本例では、顧客情報入力としてステップ１であることが強調表示されている。
【００８０】
顧客情報入力画面上には、顧客７０２の情報を入力するための情報選択画面９３０が操作者７０１に向けて表示される。その結果、操作者７０１は、入力したい情報を選択しながら入力を繰り返すことができる。情報が操作者７０１により入力されると、その入力に伴って、入力された情報を反映した顧客情報出力画面９１０が顧客７０２に向けて表示される。このような構成により、操作者７０１と顧客７０２のともに無理なく入力及びリアルタイムでの入力内容の確認を行うことができる。また、入力画面が複数に跨る場合、入力画面選択ボタン９０８Ａ及び９０８Ｂを操作者７０１に向けて表示し、入力画面選択ボタン９０８Ｂが押下されると、ＣＰＵ３０２は、さらに情報選択画面９３０を表示する。
【００８１】
また、入力が完了した場合に次のステップに移行するための完了ボタン９１１を操作者７０１に向けて表示する。操作者７０１は、ステップ欄９０９で表示されているステップボタンを選択することで、ステップ１から順に作業を行うことができる。また、ステップ１の後にステップ３に戻る、もしくは、ステップ４からステップ１に戻る等のステップ間の自由な移行を指示することもできる。
【００８２】
図１０（ｅ）の顧客情報入力画面のデータは、例えば、以下のようにして生成しても良い。まず、デフォルトで用意されている顧客情報入力画面のフォーマットを、顧客情報出力画面９１０を含む領域と、ステップ欄９０９、情報選択画面９３０、入力画面選択ボタン９０８Ａ及び９０８Ｂ、完了ボタン９１１、戻るボタン９０７を含む他の領域とに分割する。そして、カメラスキャナ１０１の起動時に設定された人数等に対応した角度分、例えば２名であれば１８０度分、顧客情報出力画面９１０の領域を回転させる。そして、回転された顧客情報出力画面９１０を含む領域と、上記他の領域とを合成して図１０（ｅ）の顧客情報入力画面のデータを生成する。
【００８３】
［顧客情報確認画面］
図１０（ｆ）は、顧客情報確認画面を示している。図１０（ｅ）の顧客情報入力画面において完了ボタン９１１が押下された、もしくは、全ての情報の入力が完了すると、顧客７０２が顧客情報を確認できるように、顧客７０２に向けて顧客情報一覧９１２が表示される。但し、次のステップに移行するための次へボタン９０５は、操作者７０１に向けて表示される。このような構成により、顧客７０２は画面を無理なく確認することができ、また、情報の入力に問題がないとする顧客７０２の判断を操作者７０１が確認した場合、操作者７０１は、次へボタン９０５を押下する操作を自然な操作により行うことができる。操作者７０１が入力された情報を修正したい場合、図１１（ａ）に示すように、操作者７０１は修正したい箇所を示して選択し、顧客７０２に新たな数値を入力させることで修正が可能である。図１１（ａ）では、顧客情報一覧９１２中のご職業欄が選択された様子を示している。
【００８４】
図１０（ｆ）の顧客情報確認画面のデータは、例えば、以下のようにして生成しても良い。まず、デフォルトで用意されている顧客情報確認画面のフォーマットを、顧客情報一覧９１２を含む領域と、次へボタン９０５を含む領域とに分割する。そして、カメラスキャナ１０１の起動時に設定された人数等に対応した角度分、例えば２名であれば１８０度分、顧客情報一覧９１２を含む領域を回転させる。そして、回転された顧客情報一覧９１２を含む領域と、次へボタン９０５を含む領域とを合成して図１０（ｆ）の顧客情報確認画面のデータを生成する。
【００８５】
このように、本実施形態では、顧客７０２と操作者７０１双方が画面を無理なく確認して操作を行うことができる。なお、上記の選択操作と修正操作は、上述したようなタッチジェスチャーを用いて行っても良いし、付属のキーボード等を用いて行っても良い。
【００８６】
続いて、顧客情報入力画面、顧客情報確認画面上での処理フローを図１３を用いて説明する。
【００８７】
Ｓ１２２３では、ＣＰＵ３０２は、図１０（ｅ）の顧客情報入力画面の表示を上記のように行う。Ｓ１２３２では、ＣＰＵ３０２は、顧客情報入力画面上で何らかのボタンが押下されたかを判定する。何らかのボタンが押下されたと判定された場合、Ｓ１２３３へ進み、ボタンが押下されていないと判定された場合、Ｓ１２３２の処理を繰り返す。
【００８８】
Ｓ１２３３では、ＣＰＵ３０２は、情報選択画面９３０内の入力項目が押下されたか否かを判定する。入力項目が押下されたと判定された場合、Ｓ１２３４へ進み、入力項目が押下されていないと判定された場合、Ｓ１２３６へ進む。
【００８９】
入力項目が押下されたと判定された場合、Ｓ１２３４で、ＣＰＵ３０２は、選択された項目（例えば年齢や性別）の入力が完了したかを判定する。入力が完了したと判定された場合、Ｓ１２３５へ進み、入力が完了していないと判定された場合、Ｓ１２３４の処理を繰り返す。
【００９０】
入力が完了された場合、Ｓ１２３５では、ＣＰＵ３０２は、入力された内容を顧客情報出力画面９１０の項目の欄に表示する。例えば、Ｓ１２３３で年齢が押下され値が入力された場合、年齢の欄に表示される。Ｓ１２３５の処理後、Ｓ１２３２へ戻り、次のボタン押下を待機する。
【００９１】
Ｓ１２３３で入力項目が押下されていないと判定された場合、Ｓ１２３６で、ＣＰＵ３０２は、完了ボタン９１１が押下されたか否かを判定する。完了ボタン９１１が押下されていないと判定された場合、Ｓ１０３２へ戻り、次のボタン押下を待機する。完了ボタン９１１が押下された場合、Ｓ１２３７へ進む。
【００９２】
Ｓ１２３７では、ＣＰＵ３０２は、入力すべき全ての項目が入力されているかの確認を行い、Ｓ１２３８で、入力すべき全ての項目が入力されているか否かを判定する。入力すべき全ての項目が入力されていると判定された場合、Ｓ１２３９へ進み、入力すべき全ての項目が入力されていないと判定された場合、Ｓ１２４２へ進む。Ｓ１２４２では、ＣＰＵ３０２は、どの項目が入力されていないかを示す警告メッセージを操作者７０１に向けて表示し、その後、Ｓ１２２３からの処理を繰り返す。
【００９３】
Ｓ１２３９では、ＣＰＵ３０２は、入力された全項目が反映された図１０（ｆ）の顧客情報確認画面を顧客７０２に向けて表示する。Ｓ１２４０では、ＣＰＵ３０２は、顧客情報確認画面上で次へボタン９０５が押下されたか否かを判定する。次へボタン９０５が押下されると、Ｓ１２４１へ進み、ＣＰＵ３０２は、次のステップの画面、本実施形態では読取書類選択画面を表示する。
【００９４】
Ｓ１２４０で次へボタン９０５が押下されていないと判定された場合、Ｓ１２４３で、ＣＰＵ３０２は、顧客情報一覧９１２の中の項目が押下されたか否かを判定する。項目が押下されたと判定された場合、Ｓ１２４４で、ＣＰＵ３０２は、顧客７０２の入力操作に応じて、押下された項目の入力情報の更新を行う。Ｓ１２４３で項目が押下されていないと判定された場合、もしくは、Ｓ１２４４の処理後、Ｓ１２４０からの処理を繰り返す。
【００９５】
このように、本実施形態では、操作者７０１に対しては情報の入力が行い易いように情報選択画面９３０を表示する。そして、顧客７０２に対しては顧客情報出力画面９１０内に、情報選択画面９３０に情報が入力される毎に途中結果の表示を行う。その結果、情報の入力毎に、操作者７０１と顧客７０２の双方のスムーズな閲覧を実現することができる。また、入力が完了した場合には、顧客情報一覧９１２を顧客７０２に向けて表示することで顧客７０２の全入力情報の確認を容易にすることができる。
【００９６】
［読取書類選択画面］
図１１（ｂ）は、読取書類選択画面を示している。読取書類選択画面は、情報が記載された書類を読み取る際に、その書類の種類の選択を受け付けるための画面である。操作者７０１と顧客７０２が読み取りたい書類を選択できるように、書類の名称が列挙された書類名一覧画面９１３Ａが操作者７０１に向けて表示され、書類名一覧画面９１３Ｂが顧客７０２に向けて表示される。ここで、書類とは、例えば免許書や住民票や帳票や地図等である。書類名を選択してから読取りを行うことで、書類を読み取った後に帳票認識やＯＣＲといった技術の適用を容易にすることができる。また、ここでは、同一画面を複数、双方それぞれに向けて表示するようにしているが、複数の画面を表示する必要がない場合には一つの画面を表示するようにしても良い。その場合には、図１１（ｂ）で示されているが書類名一覧画面９１３Ａ及び９１３Ｂのサイズではなく、操作者７０１と顧客７０２の双方から閲覧し易いように、より大きなサイズで表示するようにしても良い。また、その表示の際に、後述する画像操作ボタン９２０が合わせて表示するようにしても良い。
【００９７】
図１１（ｂ）の読取書類選択画面のデータは、例えば、以下のようにして生成しても良い。まず、デフォルトで用意されている読取書類選択画面フォーマットを、書類名一覧画面９１３Ｂを含む領域、ステップ欄９０９、書類名一覧画面９１３Ａ、ログアウトボタン９０４を含む他の領域とに分割する。そして、カメラスキャナ１０１の起動時に設定された人数等に対応した角度分、例えば２名であれば１８０度分、書類名一覧画面９１３Ｂを回転させる。そして、回転された書類名一覧画面９１３Ｂと、他の部分とを合成して図１１（ｂ）の読取書類選択画面のデータを生成する。
【００９８】
続いて、読取書類選択画面上での処理フローを図１５（ａ）を用いて説明する。Ｓ１２４１では、ＣＰＵ３０２は、図１１（ｂ）の読取書類選択画面の表示を上記のように行う。Ｓ１２７２では、ＣＰＵ３０２は、読み取る書類の選択が行われたか否かを判定する。読み取る書類の選択が行われていないと判定された場合、Ｓ１２７２の処理を繰り返す。読み取る書類の選択が行われていると判定された場合、Ｓ１２７３へ進み、ＣＰＵ３０２は、書類読取画面の表示を行う。
【００９９】
このように、本実施形態では、読み取る書類名一覧画面９１３Ａ及び９１３Ｂを操作者７０１と顧客７０２それぞれに向けて表示する。その結果、操作者７０１と顧客７０２の各々の選択する項目の確認を容易にすることができる。
【０１００】
［書類読取画面］
図１１（ｃ）は、図１１（ｂ）で書類名が選択された後に表示される書類読取画面を示している。書類読取画面には、読取対象の書類を載置可能なエリアを示す載置可能エリア９１４と、書類の載置後にカメラ部２０２によるスキャンの実行を指示するスキャンボタン９２２と、スキャンを実行した後に読み取った画像を表示するサムネイル９１５Ａ及び９１５Ｂとが表示される。ここで、サムネイル９１５Ａは、操作者７０１に向けて表示され、サムネイル９１５Ｂは、顧客７０２に向けて表示される。そのような構成により、操作者７０１及び顧客７０２のそれぞれは、書類のスキャンが正しく行えたかの確認や、書類を複数枚撮影した際にどの画像を採用するかの選択を容易に行うことができる。
【０１０１】
図１１（ｃ）の書類読取画面のデータは、例えば、以下のようにして生成しても良い。ジェスチャー操作が書類名一覧画面９１３Ａで行われた場合、デフォルトで用意されている書類読取画面のフォーマットをサムネイル９１５Ｂを含む領域と、載置可能エリア９１４、サムネイル９１５Ａ及び９１５Ｂ、戻るボタン９０７、スキャンボタン９２２を含む他の領域とに分割する。そして、カメラスキャナ１０１の起動時に設定された人数等に対応した角度分、例えば２名であれば１８０度分、サムネイル９１５Ｂを含む領域を回転させる。そして、回転されたサムネイル９１５Ｂを含む領域と、上記他の領域とを合成して図１１（ｃ）の書類読取画面のデータを生成する。また、ジェスチャー操作が書類名一覧画面９１３Ｂで行われた場合、デフォルトで用意されている書類読取画面のフォーマットをサムネイル９１５Ｂ、載置可能エリア９１４を含む領域と、サムネイル９１５Ａ及び９１５Ｂ、戻るボタン９０７、スキャンボタン９２２を含む他の領域とに分割する。その後は、同様にして書類読取画面のデータを生成する。
【０１０２】
［読取書類確認画面］
図１１（ｄ）は、読取書類確認画面を示している。読取書類確認画面は、操作者７０１若しくは顧客７０２が上述したサムネイル９１５Ａ、９１５Ｂを詳細に確認したい場合、操作者７０１若しくは顧客７０２から、確認したいサムネイル９１５Ａ、９１５Ｂの選択を受け付ける。選択を受け付けると、ＣＰＵ３０２は、更に大きな画像としてプレビュー画像９２１を表示する。また、読取書類確認画面では、プレビュー画像９２１に対して拡大や縮小、回転を指示するための画像操作ボタン９２０が表示される。プレビュー画像９２１や画像操作ボタン９２０は、例えば操作者７０１側のサムネイル９１５Ａが押下された場合、操作者７０１に向けて表示される。一方、顧客７０２側のサムネイル９１５Ｂが押下された場合、顧客７０２に向けて表示される。また、選択ボタン９２３は、サムネイル９１５Ａ、９１５Ｂで選択されたサムネイルを採用する場合に押下される。選択された画像は、図１１（ｂ）の書類名一覧画面９１３Ａ、９１３Ｂの中に表示される。図１１（ｂ）は、書類１がスキャンされた後の表示を示している。書類の読取りが終了し、操作者７０１によりステップ欄９０９の次のステップボタンが押下されると、次のステップの画面、本実施形態では商材選択画面が表示される。
【０１０３】
図１１（ｄ）の読取書類確認画面のデータは、例えば、以下のようにして生成しても良い。デフォルトで用意されている読取書類確認画面のフォーマットを、サムネイル９１５Ｂを含む領域と、プレビュー画像９２１、画像操作ボタン９２０、サムネイル９１５Ａ、戻るボタン９０７、選択ボタン９２３を含む他の領域とに分割する。そして、カメラスキャナ１０１の起動時に設定された人数等に対応した角度分、例えば２名であれば１８０度分、サムネイル９１５Ｂを含む領域を回転させる。そして、回転された、サムネイル９１５Ｂを含む領域と、上記他の領域とを合成して図１１（ｄ）の読取書類確認画面のデータを生成する。
【０１０４】
このように、本実施形態では、図１１（ｃ）の書類読取画面においては、サムネイル９１５Ａ、９１５Ｂの押下に基づいて、操作者７０１と顧客７０２のいずれが押下したかを判定する。そして、押下を行った方に向けてプレビュー画像９２１と画像操作ボタン９２０を表示する。その結果、読取を行った側の操作と閲覧を容易にすることができる。
【０１０５】
続いて、読取書類選択画面、書類読取画面、読取書類確認画面上での処理フローを図１４を用いて説明する。
【０１０６】
Ｓ１２７３では、ＣＰＵ３０２は、図１１（ｃ）の書類読取画面の表示を上記のように行う。Ｓ１２５２では、ＣＰＵ３０２は、書類読取画面上でスキャンボタン９２２が押下されたか否かを判定する。スキャンボタン９２２が押下されていないと判定された場合、Ｓ１２６２へ進む。Ｓ１２６２では、ＣＰＵ３０２は、戻るボタン９０７が押下されたか否かを判定する。戻るボタン９０７が押下されていないと判定された場合、Ｓ１２５２からの処理を繰り返す。戻るボタン９０７が押下されたと判定された場合、Ｓ１２４１へ進み、ＣＰＵ３０２は、前の画面である図１１（ｂ）の読取書類選択画面を表示する。
【０１０７】
Ｓ１２５２でスキャンボタン９２２が押下されたと判定された場合、Ｓ１２５３で、ＣＰＵ３０２は、カメラ部２０２によりス書画台２０４上の書類を撮像する（スキャン）。そして、Ｓ１２５４では、ＣＰＵ３０２は、読み取った画像をサムネイル９１５Ａ、９１５Ｂのようにサムネイル表示する。
【０１０８】
画像のスキャンが終了すると、Ｓ１２５５では、ＣＰＵ３０２は、いずれかのボタンが押下されたかを判定する。ここでは、いずれかのボタンが押下されるまでＳ１２５５の処理を繰り返す。いずれかのボタンが押下されたと判定された場合、Ｓ１２５６で、ＣＰＵ３０２は、スキャンボタン９２２が押下されたか否かを判定する。スキャンボタン９２２が押下されたと判定された場合、Ｓ１２５３からの処理を繰り返す。スキャンボタン９２２が押下されていないと判定された場合、Ｓ１２５７で、ＣＰＵ３０２は、サムネイル９１５Ａ若しくは９１５Ｂが押下されたか否かを判定する。
【０１０９】
Ｓ１２５７でサムネイル９１５Ａと９１５Ｂのいずれも押下されていないと判定された場合、Ｓ１２５２からの処理を繰り返す。サムネイル９１５Ａと９１５Ｂのいずれかが押下されたと判定された場合、Ｓ１２５８で、ＣＰＵ３０２は、図１１（ｄ）の読取書類確認画面を表示する。
【０１１０】
Ｓ１２５９では、ＣＰＵ３０２は、読取書類確認画面上で、画面操作ボタン９２０が押下されたか否かを判定する。画面操作ボタン９２０が押下されたと判定された場合、Ｓ１０６０へ進み、画面操作ボタン９２０が押下されていないと判定された場合、Ｓ１２５７からの処理を繰り返す。
【０１１１】
Ｓ１２６０では、ＣＰＵ３０２は、押下されたボタンに応じて、プレビュー画像９２１を操作処理する。Ｓ１２６１では、ＣＰＵ３０２は、選択ボタン９２３が押下されたか否かを判定する。選択ボタン９２３が押下されたと判定された場合、Ｓ１２４１へ進み、ＣＰＵ３０２は、前の画面である図１１（ｂ）の読取書類選択画面を表示する。選択ボタン９２３が押下されていないと判定された場合、Ｓ１２５７からの処理を繰り返す。
【０１１２】
［商材選択画面］
図１１（ｅ）は、操作者７０１が商品の説明を顧客７０２に行う状況において、どの商材を用いるかの選択を受け付けるための商材選択画面を示している。図１１（ｅ）に示すように、ＣＰＵ３０２は、操作者７０１が使用したい商材を選択できるように商材の名称が列挙された商材名一覧画面９１６Ａを、操作者７０１に向けて表示する。また、ＣＰＵ３０２は、顧客７０２が使用したい商材を選択できるように商材の名称が列挙された商材名一覧画面９１６Ｂを、顧客７０２に向けて表示する。ここでの商材とは、例えばパンフレットやチラシやＷｅｂのページ等である。また、ここでは、同一画面を複数、双方それぞれに向けて表示するようにしているが、複数の画面を表示する必要がない場合には一つの画面を表示するようにしても良い。図１１（ｅ）の商材選択画面のデータは、例えば、図１１（ｂ）の読取書類選択画面のデータと同様の処理により生成される。
【０１１３】
続いて商材選択画面上での処理フローを図１５（ｂ）を用いて説明する。
【０１１４】
Ｓ１２８１では、ＣＰＵ３０２は、図１１（ｅ）の商材選択画面の表示を上記のように行う。Ｓ１２８２では、ＣＰＵ３０２は、商材選択画面上で、商材の選択が行われたか否かを判定する。商材の選択が行われていないと判定された場合、Ｓ１２８２の処理を繰り返す。商材の選択が行われたと判定された場合、Ｓ１２８３へ進み、後述する商材閲覧画面の表示を行う。
【０１１５】
このように、本実施形態では、表示する商材名一覧画面９１６Ａ及び９１６Ｂを操作者７０１と顧客７０２それぞれに向けて表示する。その結果、操作者７０１と顧客７０２の各々の選択する項目の確認を容易にすることができる。
【０１１６】
［商材閲覧画面］
図１１（ｆ）は、図１１（ｅ）で商材１が選択された後に表示される商材閲覧画面を示している。商材閲覧画面上には、閲覧する商材を表示する商材表示エリア９１７と、商材の上に線を引く等の描画ボタン９１９と、キーボード等で商材と対応したコメントを入力するコメント入力ボタン９１８とが表示される。また、商材閲覧画面上には、画像操作ボタン９２０と、描画ボタン９１９、コメント入力ボタン９１８は、操作者７０１に対して表示される。また、商材表示エリア９１７は、顧客７０２に向けて表示される。
【０１１７】
図１１（ｆ）の商材閲覧画面のデータは、例えば、以下のようにして生成しても良い。まず、デフォルトで用意されている商材閲覧画面のフォーマットを、商材表示エリア９１７を含む領域と、戻る部分９０７、描画ボタン９１９、コメント入力ボタン９１８、画像操作ボタン９２０を含む他の領域とに分割する。そして、カメラスキャナ１０１の起動時に設定された人数等に対応した角度分、例えば２名であれば１８０度分、商材表示エリア９１７を含む領域を回転させる。そして、回転された商材表示エリア９１７を含む領域と、上記他の領域とを合成して図１１（ｆ）の商材閲覧画面のデータを生成する。
【０１１８】
続いて、商材閲覧画面上での処理フローを図１６を用いて説明する。
【０１１９】
Ｓ１６０１では、ＣＰＵ３０２は、図１１（ｆ）の商材閲覧画面の表示を上記のように行う。Ｓ１６０２では、ＣＰＵ３０２は、商材閲覧画面上で、いずれかのボタンが押下されたか否かを判定する。いずれのボタンも押下されていないと判定された場合、Ｓ１６０２の処理を繰り返す。いずれかのボタンが押下されたと判定された場合、Ｓ１６０３へ進む。
【０１２０】
Ｓ１６０３では、ＣＰＵ３０２は、画像操作ボタン９２０が押下されたか否かを判定する。画像操作ボタン９２０が押下されたと判定された場合、Ｓ１６０４で、ＣＰＵ３０２は、画像操作ボタン９２０の処理内容に応じた画像操作を行う。Ｓ１６０４の処理後、Ｓ１６０２からの処理を繰り返す。
【０１２１】
Ｓ１６０３で画像操作ボタン９２０が押下されていないと判定された場合、Ｓ１６０５で、ＣＰＵ３０２は、描画ボタン９１９とコメント入力ボタン９１８の少なくともいずれかが押下されたか否かを判定する。描画ボタン９１９とコメント入力ボタン９１８の少なくともいずれかが押下されたと判定された場合、Ｓ１６０６で、ＣＰＵ３０２は、商材表示エリア９１７上で描画／コメント入力操作を行う。Ｓ１６０６の処理後、Ｓ１６０２からの処理を繰り返す。
【０１２２】
Ｓ１６０５で描画ボタン９１９とコメント入力ボタン９１８のいずれも押下されていないと判定された場合、Ｓ１６０７で、ＣＰＵ３０２は、戻るボタン９０７が押下されたか否かを判定する。戻るボタン９０７が押下されていないと判定された場合、Ｓ１６０２からの処理を繰り返す。戻るボタン９０７が押下されたと判定された場合、Ｓ１６０８において、１つ前の画面、本実施形態では、図１１（ｅ）の商材選択画面の表示を行う。
【０１２３】
このように、本実施形態では、商材閲覧画面においては、商材の内容を確認したい顧客７０２に向けて商材表示エリア９１７上に商材を表示する。そして、商材表示エリア９１７の操作を行いたい操作者７０１に向けて描画ボタン９１９、コメント入力ボタン９１８、画像操作ボタン９２０を表示する。そのような構成により、操作者７０１、顧客７０２の各々の操作と閲覧を容易にすることができる。
【０１２４】
以上のように、操作者７０１と顧客７０２の様々なユーザ操作に対応して、柔軟な画面の態様を実現することにより、操作性と閲覧性を向上させることができる。
【０１２５】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１２６】
１０１  カメラスキャナ：  ３０２  ＣＰＵ：  ３０３  ＲＡＭ：  ３０４  ＲＯＭ：  ３０５  ＨＤＤ
【図１】
2018112894.tif 000006
【図２】
2018112894.tif 000007
【図３】
2018112894.tif 000008
【図４】
2018112894.tif 000009
【図５】
2018112894.tif 000010
【図６】
2018112894.tif 000011
【図７】
2018112894.tif 000012
【図８】
2018112894.tif 000013
【図９】
2018112894.tif 000014
【図１０】
2018112894.tif 000015
【図１１】
2018112894.tif 000016
【図１２】
2018112894.tif 000017
【図１３】
2018112894.tif 000018
【図１４】
2018112894.tif 000019
【図１５】
2018112894.tif 000020
【図１６】
2018112894.tif 000021