以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、本実施形態に係る転送システム10の構成を示す。転送システム10は、撮像装置12により情報処理装置14の表示画面18を撮像し、撮像装置12の表示画面20上で使用者に情報処理装置14の操作をさせる。
例えば、転送システム10は、転送装置16により、操作対象となる情報処理装置14を、情報処理装置14が表示する識別画像IGに基づいて特定し、特定した情報処理装置14に撮像装置12が記憶する記憶画像MGを転送して、当該情報処理装置14の表示画面18に記憶画像MGを貼り付ける。転送システム10は、撮像装置12と、情報処理装置14と、転送装置16とを備える。
転送システム10は、複数の撮像装置12及び/又は複数の情報処理装置14を備えていてもよい。図1の示す例では、転送システム10は、2個の情報処理装置14a、14bを含む。なお、後述の説明において、いずれかの情報処理装置14a、14bを個別に特定する必要がない場合、符号「14」と表す。
撮像装置12は、被写体を撮像して被写体の画像を生成し、当該画像を記憶画像MGとして記憶する。撮像装置12は、無線通信等により転送装置16と接続され、記憶画像MG、及び、情報処理装置14の表示画面18を撮像した撮像画像PGを転送装置16に送信する。
撮像装置12は、記憶画像MG及び撮像画像PG等の画像を表示画面20に表示する。また、撮像装置12は、使用者から情報処理装置14に対する操作を入力し、入力した操作を転送装置16に送信する。
情報処理装置14は、無線通信等により転送装置16と接続された、各種のアプリケーションプログラムを実行する大型コンピュータ又は携帯型コンピュータであってよく、転送装置16に識別画像IG及び表示画像DGを送信し、転送装置16を介して撮像装置12から記憶画像MGを受け取る。
情報処理装置14は、アプリケーションプログラムが生成する画像等を識別画像IGとともに表示画像DGとして表示画面18上に表示する。また、情報処理装置14は、転送装置16を介して撮像装置12から受け取った記憶画像MGを表示画面18に貼り付けて表示する。
転送装置16は、情報処理装置14から受け取った識別画像IG、及び、撮像装置12から受け取った撮像画像PGに基づいて、使用者の操作(例えば、記憶画像MGの転送及び貼り付け)の対象となる情報処理装置14を特定する。転送装置16は、撮像装置12から記憶画像MG及び使用者の操作を取得して、記憶画像MGを特定した情報処理装置14へと転送し、情報処理装置14の表示画面18に記憶画像MGを貼り付ける。
図1に示す例では、転送装置16は、撮像装置12が表示画面18を撮像する情報処理装置14aに、記憶画像MGを転送する。これにより、転送装置16は、使用者から情報処理装置14を特定する情報を直接入力されなくても、使用者が記憶画像MGの転送を意図する情報処理装置14を特定し、特定した情報処理装置14に記憶画像MGを転送する。
図2は、本実施形態に係る転送システム10のブロック図である。撮像装置12は、処理部30と、撮像部32と、記憶部34と、表示部36と、入力部38と、通信部40とを有する。
処理部30は、例えば、CPU(Central Processing Unit)等を含む演算及び制御回路を含む。処理部30は、記憶部34に記憶されているプログラムを実行する。処理部30は、撮像部32、記憶部34、表示部36、入力部38、及び、通信部40と接続され、それぞれを制御する。
撮像部32は、使用者の操作に応じて、被写体を撮像して生成した画像を記憶画像MGとして記憶部34に記憶する。また、撮像部32は、操作対象となる情報処理装置14の表示画面18を撮像した撮像画像PGを生成する。撮像部32は、記憶画像MG及び撮像画像PGを通信部40に供給する。
表示部36は、撮像装置12の背面に設けられた液晶表示装置又は有機EL装置等を有し、使用者による操作に応じて、撮像画像PG又は記憶部34に記憶されている記憶画像MG等を表示画面20に表示する。
入力部38は、ボタン及び表示部36の全面に設けられたタッチパネル等を含み、使用者の撮像部32に対する操作、及び、撮像画像PG上の位置を指定する操作等を受け付ける。入力部38は、入力した使用者の操作を、処理部30に供給する。例えば、入力部38は、撮像画面PG中の表示画面18において、記憶画像MGを貼付する位置を指定する操作を入力する。
通信部40は、転送装置16と無線通信等によってデータを送受信する。例えば、通信部40は、記憶画像MG、撮像画像PG、及び、使用者の操作を処理部30から受け取り転送装置16に送信する。
情報処理装置14は、処理部42と、入力部44と、記憶部46と、通信部48と、識別画像表示部50とを有する。
処理部42は、例えば、CPU等を含む演算及び制御回路を含む。処理部42は、記憶部46に記憶されているプログラムを実行する。処理部42は、入力部44、記憶部46、通信部48、及び、識別画像表示部50に接続され、それぞれを制御する。処理部42は、表示画面18に表示されている表示画像DGをスクリーンキャプチャ等によって取得し、通信部48に供給する。
入力部44は、キーボード、マウス、及び/又は、タッチパネル等を含み、使用者からの情報処理装置14に対する操作を入力する。入力部44は、入力した使用者の操作を処理部42に供給する。
記憶部46は、情報処理装置14が実行するプログラム、及び、情報処理装置14又は情報処理装置14の使用者を識別するための、人の視覚により識別可能な識別画像IGを記憶する。記憶部46は、1つの識別画像IGを記憶してよく、または、情報処理装置14の複数の使用者に対応する複数の識別画像IGを記憶してよい。
通信部48は、転送装置16と無線通信等によりデータの送受信をする。例えば、通信部48は、処理部42から表示画像DG及び識別画像IGを取得し、これらの画像を転送装置16に送信する。また、通信部48は、転送装置16から記憶画像MG、記憶画像MGに対する操作、及び、識別画像IGに対する操作を受信し、これらを処理部42に供給する。
識別画像表示部50は、液晶表示装置又は有機EL装置等を有してよく、記憶部46から識別画像IGを取得し、処理部42が実行するプログラムが生成する画像等を識別画像IGとともに表示画面18上に表示する。識別画像表示部50は、処理部42を介して受け取った識別画像IGに対する指示に応じて、識別画像IGの表示の変更又は移動等を実行する。
また、識別画像表示部50は、転送装置16を介して撮像装置12から転送された記憶画像MG等の画像を処理部42から受け取る。識別画像表示部50は、通信部48が受信した記憶画像MGに対する指示に応じて、表示画面18に記憶画像MGを貼り付けて表示する。
転送装置16は、通信部52と、識別データ記憶部54と、制御部56とを有する。
通信部52は、撮像装置12及び情報処理装置14との間でデータを送受信する。通信部52は、制御部56と接続され、撮像装置12及び情報処理装置14から受信したデータを制御部56へと出力する。通信部52は、制御部56から入力されたデータを、撮像装置12及び情報処理装置14へと送信する。
識別データ記憶部54は、制御部56と接続され、複数の識別画像IGと複数の情報処理装置14との対応関係、又は、複数の識別画像IGと複数の使用者との対応関係を記憶する。例えば、識別データ記憶部54は、MACアドレス等の情報処理装置14の識別情報、又は、情報処理装置14の識別情報及びユーザID等の使用者の識別情報と識別画像IGとが対応付けられたテーブルを記憶する。
また、識別データ記憶部54は、制御部56から入力されるデータを記憶する。例えば、識別データ記憶部54は、制御部56を介して、撮像装置12から受信した撮像画像PG及び記憶画像MGを記憶してよい。
制御部56は、例えば、CPU等を含む制御回路である。制御部56は、識別画像取得部60と、撮像画像取得部62と、特定部64と、操作入力部66と、識別画像操作部68と、転送処理部70とを含む。
識別画像取得部60は、特定部64及び操作入力部66と接続され、識別データ記憶部54から情報処理装置14又は使用者毎の識別画像IGを取得して、特定部64及び操作入力部66へと出力する。
撮像画像取得部62は、特定部64、操作入力部66及び識別画像操作部68と接続され、撮像装置12により撮像された情報処理装置14の表示画面18の撮像画像PGを、通信部52を介して撮像装置12から取得して、特定部64、操作入力部66及び識別画像操作部68へと出力する。また、撮像画像取得部62は、撮像装置12が撮像画像PGを撮像した旨の撮像通知を情報処理装置14へと送信する。
特定部64は、識別データ記憶部54から検索した識別画像IGおよび撮像画像PGを比較して、撮像画像PG内にいずれかの情報処理装置14又は使用者に対応する識別画像IGが含まれるか否かを判断する。撮像画像PG内に識別画像IGが含まれると判断する場合、特定部64は、当該識別画像IGに対応する情報処理装置14又は使用者を特定する。
操作入力部66は、撮像装置12の入力部38において撮像画像PG上の位置が指定されたことに応じて、当該位置に対応する情報処理装置14の表示画面18上の位置に対する操作を、通信部52を介して撮像装置12から入力する。
操作入力部66は、撮像画像PG上で指定された位置が撮像画像PG内において識別画像IGが存在する位置と一致又は略一致するか判断する。操作入力部66は、両者の位置が一致又は略一致する場合には、記憶画像MGの貼付操作を情報処理装置14に対して送信し、そうでない場合は、撮像画像PG上で指定された位置を識別画像操作部68に供給する。
識別画像操作部68は、操作入力部66と接続され、撮像画像PGに対する使用者の操作に応じて、情報処理装置14の表示画面18上で識別画像IGを操作する。例えば、識別画像操作部68は、使用者の撮像画像PGの位置を指定する操作に応じて、情報処理装置14の表示画面18の対応する位置に識別画像IGを移動させる指示を情報処理装置14に送信する。
転送処理部70は、通信部52を介して撮像装置12に記憶された記憶画像MGを受け取って、特定部64に特定された情報処理装置14に転送し、これにより記憶画像MGを情報処理装置14の表示画面18に貼り付ける。また、転送処理部70は、記憶画像の転送が可能となった場合に、情報処理装置14にその旨を通知して、情報処理装置14の表示画面18上で識別画像IGを変化させて表示させる。
このように、転送システム10は、識別画像IGを用いることにより、使用者が撮像装置12及び情報処理装置14にまたがった処理を簡便に行うことができる環境を提供する。
図3は、本実施形態の転送システム10において実行される転送処理のフローチャートである。
まず、SC50において、情報処理装置14の識別画像表示部50は、処理部42が実行中のプログラムが生成する画像等を表示画面18上に表示する。ここで識別画像表示部50は、当該情報処理装置14に対応する識別画像IG、又は、当該情報処理装置14を使用中の使用者に対応する識別画像IGを記憶部46から取得し、表示画面18上に併せて表示する。例えば、識別画像表示部50は、識別画像IGとして情報処理装置14又は使用者に対応するアバター画像を表示してよく、使用者のアバターの動作を構成する一連の動画像を表示してよい。
また、処理部42は、識別画像表示部50に、アバターの画像を変化させて記憶画像MGの転送処理の操作方法をユーザに通知させてもよい。例えば、処理部42は、識別画像表示部50に、識別画像IGとして用いるアバター画像のキャラクターが、転送処理の方法(例えば、使用者が記憶画像MGを選択する方法、及び、使用者が記憶画像MGを貼り付ける位置を指定する方法等)を吹き出しでコメントする画像を表示してよい。また、例えば、処理部42は、識別画像表示部50に、ヘルプ画面等が表示されるボタンを指さし等で示すアバター画像を表示させてもよい。
SC50に続き、SA10において、撮像装置12の処理部30は、使用者が入力部38に入力した撮像指示に応じて、撮像部32に情報処理装置14の表示画面18を撮像させ、撮像画像PGを生成する。撮像装置12は、ライブビュー画像を撮像画像PGとしてもよい。
SA12において、処理部30は、通信部40を介して、撮像画像PGを転送装置16へ送信する。
次に、SA12に続き、SB30において、転送装置16の撮像画像取得部62が通信部52を介して、撮像装置12から撮像画像PGを取得し、取得した撮像画像PGを特定部64に供給する。
SB32において、撮像画像取得部62は、撮像装置12が表示画面18を撮像したことを通知する撮像通知を情報処理装置14に送信する。
SB32及びSC50に続き、SC52において、情報処理装置14の処理部42が通信部48を介して撮像通知を受信すると、処理部42は通信部48を介して識別画像IG、情報処理装置14の識別情報(例えば、情報処理装置14のMACアドレス及びIPアドレス等)及び/又は使用者の識別情報(例えば、使用者のID等)、及び、識別画像表示部50が表示画面18に表示する表示画像DGを転送装置16に送信する。
SB32及びSC52に続き、SB34において、転送装置16の識別画像取得部60が、情報処理装置14から識別画像IGを取得し、取得した識別画像IGを情報処理装置14の識別情報及び/又は使用者の識別情報と対応付けて、識別データ記憶部54に格納する。さらに、識別画像操作部68は表示画像DGを取得する。
なお、転送装置16の周囲に複数の情報処理装置14が存在する場合、識別画像取得部60は、複数の情報処理装置14から複数の識別画像IG等を取得する場合もある。また、SC52で情報処理装置14が識別画像IGを送信し、SB34で転送装置16が識別画像IGを取得することに代えて、予め転送装置16の識別データ記憶部54が識別画像IGを格納しておいてもよい。
次に、SB36において、特定部64は、撮像装置12から取得した撮像画像PGと、識別データ記憶部54から取得した識別画像IGとを比較して、撮像画像PG内にいずれかの情報処理装置14又は使用者に対応する識別画像IGが含まれるか否かを判断する。
例えば、特定部64は、識別画像IGと撮像画像PGの少なくとも一部の領域との一致度を算出し、撮像画像PG中に一致度が基準以上である識別画像IGが含まれるか否かを判断する。
ここで一致度は、例えば、識別画像IGと撮像画像PG(又はその一部)の位置の対応付けができなかった個数に対する位置の対応付けができた個数の割合であってよい。また、基準とは予め定められた閾値であってよい。特定部64は、1以上の識別画像IGを取得しても、全ての一致度が基準未満である場合、撮像画像PGに識別画像IGが含まれると判断しなくてよい。
ここで、特定部64が撮像画像PG内の表示画面18に傾きが生じていると判断する場合(例えば、撮像装置12が正面以外の方向から情報処理装置14の表示画面18を撮像した結果、表示画面18の外枠が台形状となる場合等)、特定部64は、ホモグラフィー行列等により撮像画像PGの傾きを補正し、補正された撮像画像PG内に識別画像IGが含まれるかを判断してよい。
次に、SB38において、特定部64は、撮像画像PG内に含まれる識別画像IGに対応する情報処理装置14又は使用者を特定する。例えば、特定部64は、識別データ記憶部54を参照し、撮像画像PGに含まれると判断した識別画像IGに対応する識別情報を有する情報処理装置14又は使用者を特定する。
ここで、転送処理部70は、通信部52を介して、特定した情報処理装置14又は特定した使用者が使用中の情報処理装置14に対して、転送処理が可能な状態となったことを転送可能通知する。
SB38及びSC52に続き、SC54において、情報処理装置14の処理部42が通信部48を介して転送可能通知を受信すると、識別画像表示部50は表示画面18上で識別画像IGを変化させて表示させる。
例えば、識別画像表示部50は、識別画像IGとして用いるアバター画像のキャラクターが、転送可能であることを吹き出しでコメントする画像を表示してよい。また、例えば、識別画像表示部50は、識別画像IGとして用いるアバター画像の色を変えてよい(一例として、アバター画像の色を赤から青に変化させる)。
SA12に続き、SA14において、撮像装置12の入力部38は、使用者から記憶部34に記憶された画像の選択を入力する。これにより、入力部38は、選択された画像を記憶画像MGとして受け付ける。
次にSA16において、処理部30は、通信部40を介して、記憶画像MGを転送装置16に送信する。
SA16に続き、SB40において、転送装置16の制御部56は、通信部52を介して記憶画像MGを取得し、取得した記憶画像MGを識別データ記憶部54に格納する。
SA18において、入力部38は、使用者から撮像画像PG上の位置を指定する操作を受け付ける。例えば、入力部38は、撮像画像PG中の表示画面18において、使用者が記憶画像MGを貼付する位置を指定する操作を入力する。処理部30は、通信部40を介して、指定された撮像画像PG上の位置(例えば、撮像画像PG上の座標)を転送装置16に送信する。
SA18及びSB38に続いて、SB42において、転送装置16の操作入力部66は、撮像画像PG上で指定された位置が撮像画像PG内において識別画像IGが存在する位置と一致又は略一致するか判断する。例えば、操作入力部66は、識別画像取得部60から識別画像IGを取得し、撮像画像取得部62から撮像画像PGを取得し、撮像画像PG内で識別画像IGが存在する位置と、撮像画像PG上で指定された位置との距離を算出し、算出した距離が予め定められた閾値以下となるかを判断する。操作入力部66は、指定された位置と識別画像IGが存在する位置とが一致又は略一致する場合、処理をSB46に進め、そうでない場合は処理をSB44に進める。
SB44において、転送装置16の識別画像操作部68は、撮像画像PGに対する使用者の操作に応じて、情報処理装置14の表示画面18上で識別画像IGを移動させる。例えば、識別画像操作部68は、撮像画像取得部62から撮像画像PGを取得し、表示画像DGおよび撮像画像PGを比較して、撮像画像PG上の位置と表示画像DG上の位置の対応を付ける。
次に、識別画像操作部68は、撮像画像PG上で指定された位置に対応する表示画像DG上の貼付範囲DAを算出する。貼付範囲DAの算出方法の一例として、識別画像操作部68は、表示画像DG及び撮像画像PGのそれぞれに含まれるオブジェクトの辺及び頂点等のエッジを検出して、それぞれを対応付ける。
例えば、特定部64は、同じ傾向を示す撮像画像PG中のエッジと表示画像DG中のエッジとを対応付ける。ここでいう、傾向とは、色の変化、色が変化する間隔等を含む。特定部64は、互いのエッジが同じ傾向を示していると判定した、表示画像DG及び撮像画像PGの数カ所の位置をそれぞれ対応付ける。
識別画像操作部68は、対応付けが完了した複数の位置に基づいて、撮像画像PG上で指定された位置から表示画像DG上の対応する位置を算出する変換式を決定する。識別画像操作部68は、当該変換式に基づいて、撮像画像PG上で指定された位置に対応する貼付範囲DAを算出する。なお、表示画像DGが撮像画像PGに対して傾いていると判断する場合、識別画像操作部68は、ホモグラフィー行列によって表示画像DGの傾きを補正してよい。
識別画像操作部68は、算出した貼付範囲DAを識別画像IGの移動指示とともに、SB38で特定部64に特定された情報処理装置14に供給する。また、転送装置16の制御部56は、撮像装置12に対して、SA18の処理を再度実行するように指示する。
SB44及びSC54に続き、SC56において、情報処理装置14の処理部42は、通信部48を介して、貼付範囲DAと識別画像IGの移動指示とを受け取り、貼付範囲DAに識別画像IGが移動する画像を識別画像表示部50に表示させる。例えば、処理部42は、識別画像IGのアバターが表示画面18上の貼付範囲DAまで歩いて移動する動画像を表示してよい。
SB46において、転送処理部70は、識別データ記憶部54から撮像装置12に記憶された記憶画像MGを読み出し、読み出した記憶画像MGをSB38で特定部64に特定された情報処理装置14に転送し、これにより記憶画像MGを情報処理装置14の表示画面18に貼り付ける。
SB46に続き、SC58において、情報処理装置14の処理部42は、通信部48を介して転送装置16から記憶画像MGを受け取り、受け取った記憶画像MGを表示画面内の識別画像IGに対応する位置に貼り付ける。
このように、図3のフローチャートに示す実施形態においては、情報処理装置14は、識別画像IGの位置を表示画面上で移動して、使用者が指定した記憶画像MGを貼り付ける位置を示した。これに代えて、情報処理装置14は、識別画像IGを表示画面上で固定表示し、識別画像IGを使用者が指定する貼付位置に追従させなくてもよい。
この場合、SA18及びSB40の後に、転送装置16がSB42〜SB46の処理を実行し、情報処理装置14がSC54及びSC56の処理を実行することに代えて、転送装置16の操作入力部66が撮像画像取得部62から撮像画像PGを取得し、表示画像DG及び撮像画像PGを比較して、撮像画像PG上の位置と表示画像DG上の位置の対応を付け、撮像画像PG上で指定された位置に対応する表示画像DG上の貼付範囲DAを算出する。次に、転送処理部70は、操作入力部66から貼付範囲DAを取得し、識別データ記憶部54から記憶画像MGを取得し、貼付範囲DA及び記憶画像MGを情報処理装置14に転送する。続いて、情報処理装置14はSC58の処理を実行する。これにより、転送装置16は、識別画像IGを固定したまま、記憶画像MGを情報処理装置14の表示画面18に貼り付ける。
次に、識別画像IG、撮像画像PG、及び記憶画像MG等の表示形態について説明する。
図4は、表示画面18に表示された識別画像IGの図である。情報処理装置14の識別画像表示部50は、図4に示すような人物のアバター画像を識別画像IGとして表示しているとする。情報処理装置14は、人物のアバター画像に代えて/加えて、カーソル、人物、動植物又は物品等のアバター、アイコン、イラスト、又は写真等を識別画像IGとして表示してよい。また、情報処理装置14は、これらの画像に加えて、情報処理装置14に関する情報を示す文字情報、バーコード、又は、2次元コード等の識別情報を識別画像IGとして表示してよい。
図5は、情報処理装置14の表示画像DGを前方から撮像した撮像画像PGの図である。図示するように、撮像画像PGには、図4に示す識別画像IGを含む表示画像DGを表示画面18に表示する情報処理装置14が含まれる。
図6は、表示画像DGを斜め前方から撮像した撮像画像PGの図である。図6に示すように、撮像装置12が情報処理装置14の斜め前方、例えば、左前方に配置されている場合、撮像画像PG内の表示画像DG及び識別画像IGは、左右に圧縮された画像となる。この場合、特定部64及び識別画像操作部68は、ホモグラフィー行列によって、撮像画像PGを図5に示すような画像に補正してよい。
図7は、使用者による撮像画像PG上の位置の指定を説明する図である。例えば、図7に示すように、情報処理装置14は、撮像画像PGに含まれる表示画像DGは貼付先の候補である貼付範囲DAを複数、表示画面18に表示する。情報処理装置14は、複数の貼付範囲DAのうち1つの貼付範囲DA1内を識別画像IGに表示する。
図7に示す状態で、撮像装置12の入力部38が、撮像画像PG上で識別画像IGを含む貼付範囲DA1の位置を指定する操作(例えば、使用者が指FN等でタッチする操作)を入力すると、転送装置16の転送処理部70は、当該貼付範囲DA1を記憶画像MGの貼付け先として受け入れ、撮像装置12から受信した記憶画像MGを情報処理装置14へ送信する。
図8は、記憶画像MGが貼り付けられた表示画面18を説明する図である。情報処理装置14の処理部42は、記憶画像MGを受信する。これにより、処理部42は、図8に示すように記憶画像MGを表示画面18の識別画像に対応する貼付範囲DA1の位置に貼り付けて表示する。情報処理装置14は、図8に示すように貼付が完了した表示画面18に識別画像IGを表示しなくてもよく、これに代えて、貼付範囲DA1又は他の貼付範囲DAに識別画像IGを引き続き表示してもよい。
図9は、使用者による撮像画像PG上での識別画像IGの操作を説明する図である。ここでは、情報処理装置14は、図7と同様に、撮像画像PGに含まれる表示画像DGは貼付先の候補である複数の貼付範囲DAを表示画面18に表示し、左上の貼付範囲DA1に予め識別画像IGを表示するものとする。
ここで、撮像装置12の入力部38が、撮像画像PG上で識別画像IGを含まない右下の貼付範囲DAの位置を指定する操作(例えば、使用者が指FN等でタッチする操作)を入力すると、転送装置16の識別画像操作部68は、指定された右下の貼付範囲DAを記憶画像MGの貼付け先として受け入れ、撮像画像PG上で指定された位置に対応する表示画像DG上の貼付範囲DAの座標等の情報を情報処理装置14に送信する。
これを受けて、情報処理装置14の処理部42は、識別画像表示部50に受け取った右下の貼付範囲DAの位置に識別画像IGを移動させる。例えば、識別画像表示部50は、識別画像IGであるアバターが、貼付範囲DAに向かって歩いている動作又は走っている動作を表示してよい。ここで、撮像装置12の入力部38が、撮像画像PGにおいて識別画像IGが移動した先の貼付範囲DAの位置を指定する操作を入力すると、転送装置16の転送処理部70は、当該貼付範囲DAに記憶画像MGを貼り付ける。
図10は、撮像装置12に撮像可能となるように移動する識別画像IGを説明する図である。ここでは、撮像装置12は、撮像画像PGとして、情報処理装置14の表示画面18'の左上の一部を撮像し、残りの部分(点線で示す部分)は撮像していない。情報処理装置14は、撮像装置12に撮像されていない部分に識別画像IGを表示しているので、撮像画面PGには識別画像IGが含まれない。このような場合は、撮像装置12は、操作対象となる情報処理装置14を特定することができない。
そこで、撮像画像PG中の表示画面18に識別画像IGが撮像されておらず、図3のSB38の処理において転送装置16が情報処理装置14を特定できない場合、転送装置16の識別画像操作部68は、SB34で識別画像IGを受け取った情報処理装置14に対して、撮像画面PG中に識別画像IGが写るようになるまで表示画面18上で識別画像IGを移動するように指示し、撮像装置12に対して再度情報処理装置14の表示画面18を撮像するように指示してよい。
これを受けて、情報処理装置14の処理部42は、識別画像表示部50に識別画像IGを、表示画面18上の全体領域をカバーするように移動させ、撮像装置12は、SA10の処理を実行し、情報処理装置14の表示画面18を撮像する。情報処理装置14の処理部42は、識別画像IGを、図10に示すように表示画面18上をジグザグに移動させてよく、これに代えて、表示画面18の枠付近を周回するように移動させてもよい。
上述した転送システム10では、転送装置16の特定部64が、識別画像取得部60が取得した識別画像IGと、撮像画像取得部62の取得した撮像画像PGとを比較して、識別画像IGを撮像する情報処理装置14を特定している。これにより、転送システム10では、情報処理装置14を特定する情報が直接使用者から入力されなくても、転送装置16は、転送先の情報処理装置14を特定することができる。従って、転送装置16は、転送先の自由度を向上させることができる。
上述の転送システム10では、転送装置16が撮像装置12から記憶画像MGを取得すると、操作入力部66が特定部64によって転送先として特定された情報処理装置14に貼付指示を送信する。情報処理装置14は、貼付指示を受信すると、記憶画像MGを表示画面18上に貼り付ける。これにより、使用者は、撮像装置12で記憶画像MGの選択等の簡易な操作をすることにより、情報処理装置14に記憶画像MGを貼り付けて表示させることができる。この結果、転送システム10は、使用者が撮像装置12及び情報処理装置14にまたがった処理を簡便に行うことができる環境を提供できる。
上述の転送システム10では、情報処理装置14の表示画面18上の識別画像IGの位置に記憶画像MGを貼り付ける。また、使用者は、撮像装置12の入力部38によって撮像画像PG上の位置を指定することにより、識別画像IGの位置、すなわち記憶画像MGの貼付範囲DAを変更することができる。
上述の転送システム10では、撮像装置12が情報処理装置14の斜め前方から表示画面18を撮像した場合であっても、特定部64は、ホモグラフィー行列等により、撮像画像PGの傾きに応じて、撮像画像PGを補正して識別画像IGが含まれるか判断する。これにより、特定部64は、撮像装置12及び情報処理装置14の位置関係によらず、転送先の情報処理装置14を特定できる。
上述の転送システム10では、転送装置16は、撮像画像PGと識別画像IGとの一致度が基準以上である情報処理装置14を転送先として特定している。これにより、転送装置16は、撮像画像PGと識別画像IGとの一致度が完全に一致する場合に転送先を特定する場合に比べて、精度を保ちつつ、高確率で転送先の情報処理装置14を特定することができる。
上述の転送システム10では、転送装置16は、撮像画像PGに識別画像IGが含まれない場合に、情報処理装置14に表示画面18上で識別画像IGを移動させる。これにより、撮像装置12が表示画面18の一部のみを撮像し、最初の撮像で識別画像IGを撮像できなかった場合でも、転送装置16は操作対象となる情報処理装置14を特定することができる。
ここで、本実施形態の変形例に係る転送システム10の説明をする。
本実施形態の変形例において、転送装置16は、撮像装置12及び情報処理装置14の間でチャレンジ・レスポンス認証を実行することにより、撮像装置12の認証を実行することができる。例えば、転送装置16は、撮像装置12から認証要求を受け取り、受け取った認証要求を情報処理装置14に転送する。
情報処理装置14の処理部42は、識別画像表示部50に、転送装置16を介して撮像装置12から受け取った認証要求に応じて、アバターの画像である識別画像IGを変化させる。例えば、識別画像表示部50は、アバターに右の方向を向かせた画像、及び、アバターがどちらの方向を向いたかを使用者に質問する文章の画像を表示画面18に表示する。
これに対して、撮像装置12の処理部30は、入力部38を介して、使用者の撮像画面PG上の位置に対する操作を入力し、入力した操作を転送装置16に送信する。転送装置16の操作入力部66は、入力した操作を受信し、当該操作が正しい操作であるかを判断する。例えば、操作入力部66は、入力した操作が右を向いたアバターの右側の位置を指定する操作であるか否かを判断する。操作入力部66は、正しい操作であると判断した場合、撮像装置12を認証し、撮像装置12からの記憶画像MGの転送処理の操作を実行してよい。
本実施形態では、使用者が情報処理装置14の表示画面18に表示された識別画像IGを見つつ操作し、識別画像IGが表示画面18上で操作対象となる位置に移動する例を示したが、使用者の操作用の表示は、これに限られない。例えば、情報処理装置14は、識別画像IGの表示される位置を固定し、識別画像IGとは別に、情報処理装置14の表示画面18における操作対象となる位置にマーク画像を表示させてもよい。
マーク画像は、一例として、アイコン、カーソル、アバター等である。この形態では、操作入力部66は、使用者が撮像画像PG上で位置を指定したことに応じて、情報処理装置14の表示画面18上の対応する位置にマーク画像を表示させる。この場合、操作入力部66は、撮像画像PG上の座標を、表示画面18上の座標に変換して、マーク画像を表示させる。また、操作入力部66は、撮像装置12上で撮像画像PG内に撮像されたマーク画像に対する操作を受けたことに応じて、情報処理装置14の表示画面上の対応する位置にマーク画像を移動させてもよい。
さらに、複数の撮像装置12が存在する場合、操作入力部66は、撮像装置12毎に異なるマーク画像を1個の情報処理装置14の表示画面18に表示させてもよい。一方、複数の撮像装置12が存在する場合であっても、操作入力部66は、情報処理装置14の使用者が選択した撮像装置12によるマーク画像を優先して表示してもよい。優先して表示する形態では、一例として、操作入力部66は、当該マーク画像のみを表示画面18に表示させる、または、当該マーク画像を強調して表示画面18に表示させる。
操作入力部66は、情報処理装置14の表示画面18上に複数のマーク画像を表示させた場合、一定の範囲の領域毎に、マーク画像をカウントしてもよい。例えば、転送処理部70が、複数の撮像装置12の複数の記憶画像MGを表示画面18に表示させている状態において、操作入力部66が、各記憶画像MGが表示されている領域上に表示されているマーク画像をカウントすることにより、転送装置16は記憶画像MGの投票を実行することができる。
また、操作入力部66が、使用者によるマーク画像の位置の受け付けを適宜変更してもよい。例えば、操作入力部66は、撮像装置12が表示画面18を動画として表示、即ち、ライブビューの状態で使用者の入力を受け付けてマーク画像を表示画面18に表示させてもよい。また、操作入力部66は、撮像装置12が表示画面18を静止画として表示させている状態で使用者の入力を受け付けてマーク画像を表示させてもよい。
上述の実施形態では、転送処理部70が、画像が表示されていない貼付範囲DAに記憶画像MGを貼り付ける例を示したが、貼り付ける形態はこれに限られない。例えば、転送処理部70は、記憶画像MGが貼り付けられている貼付範囲DAに新たな記憶画像MGを置換して貼り付けてもよい。
この場合、転送処理部70は、先の記憶画像MGの位置及び大きさに一致させて、新たな記憶画像MGを貼り付けてもよい。また、転送処理部70は、撮像装置12から転送された記憶画像MG以外の画像が貼り付けられている領域に記憶画像MGを貼り付けてもよい。転送処理部70は、使用者によって選択された記憶画像MGの位置に新たな記憶画像MGを貼り付けてもよい。さらに、転送処理部70は、新たな記憶画像MGを貼り付ける場合、使用者によって選択された置換対象の先の記憶画像MGを識別データ記憶部54から削除してもよい。
上述した実施形態では、転送処理部70は記憶画像MGを貼り付ける例をあげたが、転送処理部70は、記憶画像MGに代えて貼付情報、または、記憶画像MGに加えて貼付情報を表示画面18に表示させてもよい。例えば、転送処理部70は、記憶画像MGを説明するキャプション情報を貼付情報として表示画面18に表示させてもよい。
また、転送処理部70は、撮像装置12の記憶部34及び情報処理装置14の記憶部46を検索することにより、貼り付ける記憶画像MGに関連する情報を抽出して、貼付情報を生成してもよい。例えば、転送処理部70は、記憶画像MGに含まれる撮像した位置及び日時に基づいて、予定表の情報を検索して予定の名称を含む貼付情報を生成してもよい。
また、転送処理部70は、記憶画像MGに含まれる情報を画像認識によって認識して、認識した対象に関連する貼付情報を生成してもよい。例えば、転送処理部70は、記憶画像MGに含まれる人物を画像認識によって判別して、当該人物の名前、メールアドレス等を貼付情報としてもよい。
さらに、転送処理部70は、記憶画像MGを貼り付ける貼付範囲DAがアプリケーションのアイコンであった場合、当該アプリケーションを起動して、記憶画像MGを貼り付けてもよい。例えば、アプリケーションがメールに関するアプリケーションであった場合、転送処理部70は、メールのアプリケーションを起動させて、送信メールに記憶画像MGを添付してもよい。
上述した実施形態における各構成の接続関係、機能等は適宜変更してよい。また、上述した実施形態を組み合わせてもよい。
例えば、上述した実施形態では、転送装置16が、識別画像取得部60と、撮像画像取得部62と、特定部64と、操作入力部66と、転送処理部70とを有する例を示したが、これに限定されない。転送装置16の構成の一部又は全てを撮像装置12または情報処理装置14に設けてもよい。例えば、識別画像取得部60、撮像画像取得部62、特定部64、操作入力部66、識別画像操作部68、及び、転送処理部70の一部または全てを、撮像装置12または情報処理装置14に設けてもよい。
図11は、本実施形態に係るコンピュータ1900のハードウェア構成の一例を示す。本実施形態に係るコンピュータ1900は、情報処理部の一例である。コンピュータ1900は、ホスト・コントローラ2082により相互に接続されるCPU2000、RAM2020、グラフィック・コントローラ2075、及び表示部2080を有するCPU周辺部と、入出力コントローラ2084によりホスト・コントローラ2082に接続される通信インターフェイス2030、及び、ハードディスクドライブ2040を有する入出力部と、入出力コントローラ2084に接続されるROM2010、メモリドライブ2050及び入出力チップ2070を有するレガシー入出力部とを備える。
ホスト・コントローラ2082は、RAM2020と、高い転送レートでRAM2020をアクセスするCPU2000及びグラフィック・コントローラ2075とを接続する。CPU2000は、ROM2010及びRAM2020に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ2075は、CPU2000等がRAM2020内に設けたフレーム・バッファ上に生成する画像データを取得し、表示部2080上に表示させる。これに代えて、グラフィック・コントローラ2075は、CPU2000等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
入出力コントローラ2084は、ホスト・コントローラ2082と、比較的高速な入出力装置である通信インターフェイス2030、ハードディスクドライブ2040を接続する。通信インターフェイス2030は、ネットワークを介して他の装置と通信する。ハードディスクドライブ2040は、コンピュータ1900内のCPU2000が使用する表示プログラム等のプログラム及びデータを格納する。
また、入出力コントローラ2084には、ROM2010と、メモリドライブ2050、及び入出力チップ2070の比較的低速な入出力装置とが接続される。ROM2010は、コンピュータ1900が起動時に実行するブート・プログラム、及び/又は、コンピュータ1900のハードウェアに依存するプログラム等を格納する。メモリドライブ2050は、メモリカード2090から例えば表示プログラム等のプログラム又はデータを読み取り、RAM2020を介してハードディスクドライブ2040に提供する。入出力チップ2070は、メモリドライブ2050を入出力コントローラ2084へと接続すると共に、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ2084へと接続する。
RAM2020を介してハードディスクドライブ2040に提供されるプログラムは、メモリカード2090、又はICカード等の記録媒体に格納されて利用者によって提供される。表示プログラム等のプログラムは、記録媒体から読み出され、RAM2020を介してコンピュータ1900内のハードディスクドライブ2040にインストールされ、CPU2000において実行される。
コンピュータ1900にインストールされ、コンピュータ1900を撮像装置12、情報処理装置14、及び転送装置16として機能させるプログラムは、処理モジュール、撮像画像取得モジュール、識別画像取得モジュール、特定モジュール、操作入力モジュール、識別画像操作モジュール、及び、転送処理モジュールとを備える。これらのプログラム又はモジュールは、CPU2000等に働きかけて、コンピュータ1900を、撮像装置12の処理部30、情報処理装置14の処理部42、転送装置16の制御部56に含まれる識別画像取得部60、撮像画像取得部62、特定部64、操作入力部66、識別画像操作部68、及び、転送処理部70としてそれぞれ機能させる。
これらのプログラムに記述された情報処理は、コンピュータ1900に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段である撮像装置12の処理部30、情報処理装置14の処理部42、転送装置16の制御部56に含まれる識別画像取得部60、撮像画像取得部62、特定部64、操作入力部66、識別画像操作部68、及び、転送処理部70として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータ1900の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の転送装置16が構築される。
一例として、コンピュータ1900と外部の装置等との間で通信を行う場合には、CPU2000は、RAM2020上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス2030に対して通信処理を指示する。通信インターフェイス2030は、CPU2000の制御を受けて、RAM2020、ハードディスクドライブ2040、又はメモリカード2090等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス2030は、DMA(ダイレクト・メモリ・アクセス)方式により記憶装置との間で送受信データを転送してもよく、これに代えて、CPU2000が転送元の記憶装置又は通信インターフェイス2030からデータを読み出し、転送先の通信インターフェイス2030又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。
また、CPU2000は、ハードディスクドライブ2040、メモリドライブ2050(メモリカード2090)等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をDMA転送等によりRAM2020へと読み込ませ、RAM2020上のデータに対して各種の処理を行う。そして、CPU2000は、処理を終えたデータを、DMA転送等により外部記憶装置へと書き戻す。このような処理において、RAM2020は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはRAM2020および外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、CPU2000は、RAM2020の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはRAM2020の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもRAM2020、メモリ、及び/又は記憶装置に含まれるものとする。
また、CPU2000は、RAM2020から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、RAM2020へと書き戻す。例えば、CPU2000は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすかどうかを判断し、条件が成立した場合(又は不成立であった場合)に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。また、CPU2000は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。
以上に示したプログラム又はモジュールは、外部の記録媒体に格納されてもよい。記録媒体としては、メモリカード2090の他に、DVD又はCD等の光学記録媒体、MO等の光磁気記録媒体、テープ媒体、ICカード等の半導体メモリ等を用いることができる。また、専用通信ネットワーク又はインターネットに接続されたサーバシステムに設けたハードディスク又はRAM等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ1900に提供してもよい。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。そのような変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。