以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、本実施形態に係る画像転送システム10の構成を示す。画像転送システム10は、撮像装置100内の画像を情報処理装置200の表示画面18へと貼り付け、表示画面18に貼り付けられた画像を同一又は他の撮像装置100へと転送することを可能とする。これにより、画像転送システム10は、複数の撮像装置100の間で情報処理装置200を介して画像を簡単、便利に授受できる環境を提供する。画像転送システム10は、1又は複数の撮像装置100及び少なくとも1又は複数の情報処理装置200を備える。
図1において、画像転送システム10は、2個の撮像装置100a、100bを含む。なお、後述の説明において、いずれかの撮像装置100a、100bを個別に特定する必要がない場合、符号「12」と表す。複数の撮像装置100のそれぞれは、異なる使用者の所有物であってもよい。
撮像装置100は、デジタルカメラ、携帯電話、携帯情報端末、又は、カメラ付きコンピュータ等であってよく、被写体を撮像した画像又は使用者から予め供給された画像を情報処理装置200の表示画面18に貼り付ける対象となる貼付画像HGの候補として保持する。また、撮像装置100は、使用者によって情報処理装置200の方向に向けられると情報処理装置200の表示画面18を撮像した撮像画像PGを生成して表示画面20に表示する。
情報処理装置200は、無線通信等により撮像装置100と接続された、各種のアプリケーションプログラムを実行するディスプレイ付コンピュータ(例えば、プロジェクタ装置、又は、テレビジョン装置等)であってよく、アプリケーションプログラムが生成する画像等を表示画像DGとして表示画面18上に表示する。
画像転送システム10は、使用者による表示画面20上の操作により撮像装置100から情報処理装置200に貼付画像HGを転送させて、当該情報処理装置200の表示画面18に貼付画像HGを貼り付け、また、使用者による表示画面20上の操作により表示画面18に貼り付けられた貼付画像HGを情報処理装置200から撮像装置100に転送する。
図1に示す例では、撮像装置100a及び100bは情報処理装置200の表示画面18を撮像してそれぞれの表示画面20上に表示する。また、撮像装置100aは、貼付画像HG(太陽のアイコン画像)をウインドウ22上に表示する。撮像装置100aは、表示画面20上の当該貼付画像HGを指定する使用者の操作に応じて、貼付画像HG(太陽のアイコン画像)を情報処理装置200に転送して表示画面18に貼り付ける。
撮像装置100bは、撮像により表示画面20上に表示された表示画面18の上で、撮像装置100bへと取り込むべき貼付画像HG(月のアイコン画像)の位置を指定する使用者の操作を入力し、これに応じて情報処理装置200に当該貼付画像HGを要求する。これにより、撮像装置100bは、情報処理装置200から当該貼付画像HGを取得して格納し、ウインドウ22に貼り付ける。
図2は、本実施形態に係る画像転送システム10のブロック図である。撮像装置100は、情報処理装置200が表示する表示画面18を撮像する。撮像装置100は、撮像部110と、記憶部120と、表示部130と、入力部140と、通信部142と、処理部150とを有する。
撮像部110は、使用者の操作に応じて被写体を撮像し、撮像により生成した画像を記憶部120に記憶する。また、撮像部110は、情報処理装置200の表示画面18を撮像して撮像画像PGを生成することにより、情報処理装置200の撮像画像PGを介して使用者が情報処理装置200と貼付画像HGを授受できるようにする。
記憶部120は、貼付画像HG及び処理部150の実行するプログラム等を記憶し、これらを処理部150に供給する。
表示部130は、撮像装置100の背面に設けられた液晶表示装置又は有機EL装置等を含み、使用者による操作に応じて、撮像画像PG及び/又は記憶部120に記憶された貼付画像HG等を表示画面20に表示する。
入力部140は、撮像装置100に設けられたボタン及び/又は表示部130の全面に設けられたタッチパネル等を含み、使用者の撮像部110に対する撮像操作、貼付画像HGを情報処理装置200の表示画面18に貼り付けする操作、及び、貼付画像HGを情報処理装置200の表示画面18から取得する操作等を入力する。
また、入力部140は、表示部130の撮像画像PG上で情報処理装置200の表示画面18内における貼付画像HGの貼付位置を指定する位置指定操作を入力する。例えば、入力部140は、撮像画面PG中の表示画面18に貼付画像HGを貼り付けする操作を位置指定操作と共に入力する。入力部140は、入力した使用者の操作を、処理部150に供給する。
通信部142は、情報処理装置200と無線通信等によってデータを送受信する。例えば、通信部142は、貼付画像HG、撮像画像PG、及び、使用者の操作等を処理部150から受け取り情報処理装置200に送信する。
処理部150は、例えば、CPU(Central Processing Unit)等を含む演算及び制御回路を含む。処理部150は、記憶部120に記憶されているプログラムを実行する。処理部150は、撮像部110、記憶部120、表示部130、入力部140、及び、通信部142と接続され、それぞれを制御する。処理部150は、画像貼付部152、転送許可部154、画像取得部156、及び、画像削除部158を含む。
画像貼付部152は、情報処理装置200の表示画面18に貼付画像HGを貼り付けさせる。例えば、画像貼付部152は、記憶部120から貼付画像HGを読み出し、撮像部110から撮像画像PGを取得する。そして、画像貼付部152は、通信部142を介して情報処理装置200に、撮像画像PG、貼付画像HG、及び、撮像画像PG上での位置指定操作に係る位置を転送し、情報処理装置200に貼付画像HGを表示させる。
転送許可部154は、貼付画像HG毎に、情報処理装置200の表示画面18に貼り付けられる貼付画像HGを他の撮像装置100に転送することの可否を設定する。
画像取得部156は、情報処理装置200の表示画面18に貼り付けられた貼付画像HGを当該情報処理装置200から取得する。例えば、画像取得部156は、撮像部110から撮像画像PGを取得して、通信部142を介して情報処理装置200に、撮像画像PG、貼付画像HGの転送を情報処理装置200に要求する画像取得要求、及び、入力部140が入力した位置指定操作に係る位置を送信する。これにより、画像取得部156は、表示部130に、情報処理装置200から取得した貼付画像HGを表示させる。
画像削除部158は、情報処理装置200の表示画面18に貼り付けられた貼付画像HGを当該情報処理装置200の表示画面18から削除する。例えば、画像削除部158は、撮像部110から撮像画像PGを取得して、通信部142を介して情報処理装置200に、撮像画像PG、貼付画像HGの削除を情報処理装置200に要求する画像削除要求、及び、入力部140が入力した位置指定操作に係る位置を送信する。これにより、画像削除部158は、使用者が撮像画像PG上で情報処理装置200の表示画面18内の貼付画像PGの削除を指示したことに応じて、情報処理装置200に対して、表示画面18から当該貼付画像PGを削除することを指示する。
情報処理装置200は、記憶部210と、通信部220と、表示部230と、制御部240とを有し、撮像装置100からの貼付画像HGを表示画面18内に貼り付けて表示する。
記憶部210は、情報処理装置200が実行するプログラム及び貼付画像HG等を記憶し、これらを制御部240に供給する。
通信部220は、撮像装置100と無線通信等によりデータの送受信をする。例えば、通信部220は、撮像装置100から撮像画像PG、貼付画像HG、貼付画像HGに対する操作、及び位置指定操作等を受信し、これらを制御部240に供給する。また、通信部220は、貼付画像HGを制御部240から受け取り、撮像装置100に送信する。
表示部230は、液晶表示装置又は有機EL装置等を有してよく、制御部240の制御に従って表示画面18上に表示画像DGを表示する。また、表示部230は、制御部240から記憶部210に記憶された貼付画像HGを取得して表示する。また、表示部230は、撮像装置100から転送された貼付画像HG等の画像を制御部240から受け取り、表示画面18に貼付画像HGを貼り付けて表示する。
制御部240は、例えば、CPU等を含む演算及び制御回路を含む。制御部240は、記憶部210に記憶されているプログラムを実行する。制御部240は、記憶部210、通信部220、及び、表示部230に接続され、それぞれを制御する。制御部240は、撮像画像取得部242、位置取得部244、貼付処理部246、及び、転送部248を含む。
撮像画像取得部242は、通信部220を介して、撮像装置100から情報処理装置200の表示画面18を撮像した撮像画像PGを取得する。撮像画像取得部242は、表示部230が表示する表示画像DGを取得し、表示画像DGと撮像画像PGとを比較することにより、撮像画像PGを撮像する撮像装置100を特定する。撮像画像取得部242は、取得した撮像画像PGを位置取得部244及び転送部248に送信する。
位置取得部244は、通信部220を介して、撮像装置100から撮像画像PG上で使用者が指定した情報処理装置200の表示画面18内の指定位置を取得する。位置取得部244は、撮像画像PG上の指定位置に対応する表示画面DG上の位置を算出し、算出した位置を貼付処理部246及び転送部248に供給する。
貼付処理部246は、通信部220を介して、撮像装置100から指示を受信し、当該受信した指示に応じて、撮像画像PG上で使用者が指定した指定位置に対応する位置に、撮像装置100から受け取った貼付画像HGを貼り付ける。これにより、貼付処理部246は、表示部230に、表示画像DG上に貼付画像HGを貼り付けて表示させる。
転送部248は、通信部220を介して、撮像装置100からの指示を受信し、当該受信した指示に応じて、表示画面18に貼り付けられた1つ以上の貼付画像HGを、当該撮像装置100に対して転送する。ここで、転送部248は、表示画面18に貼付画像PGを貼り付けた撮像装置100又は他の撮像装置100からの指示を受信してよい。
このように、本実施形態の画像転送システム10は、使用者は、撮像装置100及び情報処理装置200にまたがった画像等の転送処理を簡便に行うことができる環境を提供する。
図3は、本実施形態の画像転送システム10において実行される処理のフローチャートの一例である。本実施形態の画像転送システム10は、まず、S100において、1以上の撮像装置100と1以上の情報処理装置200の対応付けを実行する。これにより、撮像装置100及び情報処理装置200は、画像の転送先及び転送元を予め特定する。
次に、S200において、本実施形態の画像転送システム10は、S100で特定された転送元の撮像装置100から転送先の情報処理装置200へ貼付画像HGを転送し、情報処理装置200の表示画面18に貼付画像HGを貼り付ける。
次に、S300において、本実施形態の画像転送システム10は、S100で特定された転送元の情報処理装置200から転送先の撮像装置100へ貼付画像HGを転送する。これにより、撮像装置100は、情報処理装置200の表示画面18に貼り付けられた貼付画像HGを取得する。
なお、本実施形態の説明では、S100、S200、及びS300の処理が順番に1回ずつ実行される例を説明するが、画像転送システム10は、S200及び/又はS300の処理を複数回連続して繰り返してもよく、S200の前にS300を実行してもよい。また、画像転送システム10は、S200又はS300の処理ごとに、これらの処理に先立ってS100の処理を毎回実行してもよい。
図4は、図3のS100の具体的な処理のフローチャートである。まず、SB118において、情報処理装置200の表示部230は、制御部240が実行中のプログラムが生成する画像等を表示画像DGとして表示画面18上に表示する。この際、表示部230は、既に記憶部210に記憶されている貼付画像PGを有する場合、これらの貼付画像PGを指定されて位置に表示してもよい。
SA110において、撮像装置100の処理部150は、使用者が入力部140に入力した撮像指示に応じて、撮像部110により情報処理装置200の表示画面18を撮像させて、撮像画像PGを生成する。例えば、処理部150は、撮像部110により表示画面18を撮像させて生成したライブビュー画像又はプレビュー画像を撮像画像PGとしてよい。
SA112において、撮像装置100の処理部150は、通信部142を介して、撮像画像PGを、撮像装置100の識別情報(例えば、撮像装置100のMACアドレス及び/又はIPアドレス等)と併せて情報処理装置200へ送信する。処理部150は、撮像画像PG等を転送相手の候補となる複数の情報処理装置200へ送信してもよい。
SB120において、情報処理装置200の撮像画像取得部242は、通信部220を介して撮像装置100から撮像画像PG及び識別情報を取得する。
SB122において、情報処理装置200の撮像画像取得部242は、表示部230が表示する表示画像DGをスクリーンキャプチャ等により取得する。
SB124において、情報処理装置200の撮像画像取得部242は、撮像装置100から取得した撮像画像PGと、表示部230から取得した表示画像DGとを比較して、撮像画像PG上の位置と、表示画像DG上の位置とを対応付ける。撮像画像取得部242は、表示画像DG及び撮像画像PGの間で傾きを検出した場合、ホモグラフィー行列等を用いて撮像画像PGの傾きを補正してよい。
SB126において、情報処理装置200の撮像画像取得部242は、表示画像DGに対して位置の対応付けができた撮像画像PGを送信した撮像装置100を貼付画像HGの転送先及び/又は転送元(本明細書において単に「転送相手」とも言う)として特定する。
ここで、撮像画像取得部242が複数の撮像画像PGを取得した場合、撮像画像取得部242は、表示画像DGと撮像画像PGのそれぞれを比較して、表示画像DGがいずれの撮像装置100からの撮像画像PGに対応するかを特定する。例えば、撮像画像取得部242は、表示画像DGと複数の撮像画像PGのそれぞれとの一致度を算出し、一致度が基準以上である撮像画像PGを送信した撮像装置100を、転送相手として特定してよい。
ここでいう一致度は、例えば、表示画像DG及び撮像画像PGを複数の領域に分割し、表示画像DGの各領域と撮像画像PGの各領域とを対応付け可能か判断し、対応付けができなかった領域の個数に対する対応付けができた領域の個数の割合を算出することで得られる。また、基準とは予め定められた閾値である。従って、撮像画像取得部242は、複数の撮像画像PGを取得しても、全ての一致度が基準未満である場合、いずれの撮像装置100も転送相手として特定しなくてよい。撮像画像取得部242は、特定した撮像装置100の識別情報を記憶部210へ記憶させる。
SB128において、情報処理装置200の制御部240は、通信部220を介して、情報処理装置200の識別情報(例えば、情報処理装置200のMACアドレス及び/又はIPアドレス等)を撮像装置100に送信する。
SA114において、撮像装置100の処理部150は、通信部142を介して情報処理装置200の識別情報を受信する。
SA116において、撮像装置100の処理部150は、受信した識別情報から転送相手の情報処理装置200を特定する。処理部150は、特定した情報処理装置200の識別情報を記憶部120に記憶してよい。
図5は、図3のS200の具体的な処理のフローチャートである。SA210において、撮像装置100の処理部150は、使用者が撮像装置100を情報処理装置200の方向に向けたことに応じて、表示部130に、情報処理装置200の表示画面18を撮像した撮像画像PG及び1又は複数の画像を表示させる。例えば、処理部150は、記憶部120から1又は複数の画像を読み出し、撮像部110から表示画面18を撮像した静止画像又はライブビュー画像を取得し、貼付画像HGの候補となる1又は複数の画像を含むウインドウを、ライブビュー画像に重ねて表示部130に表示させてよい。ここで、処理部150は、ライブビュー画像に代えて、使用者の撮像指示により取得される静止画像に1又は複数の画像を含むウインドウを重ねて表示部130に表示させてもよい。
SA212において、入力部140は、表示部130が表示する1又は複数の画像から使用者により貼付画像HGとする画像の選択を受ける。これにより、入力部140は、選択された貼付画像HGを転送対象の貼付画像HGとする。
SA214において、入力部140は、転送対象の貼付画像HGに対する転送の可否を使用者から入力し、入力した情報を転送許可部154に供給する。転送許可部154は、使用者から入力した情報に基づき、貼付画像HGに対して情報処理装置200から他の撮像装置100に転送することの可否を、貼付画像HGごと又は撮像装置100ごとに設定する。
例えば、転送許可部154は、貼付画像HGを情報処理装置200から他の撮像装置100へ転送してもよいかについての情報を、当該貼付画像HGと対応づけて記憶部120に記憶させる。これにより、転送許可部154は、使用者が他の撮像装置100に転送したくない貼付画像HGが情報処理装置200から更に他の撮像装置100に転送されることを防ぐことができる。また、例えば、転送許可部154は、貼付画像HGを情報処理装置200から他の撮像装置100へ転送してもよいかについての転送設定を、他の撮像装置100の識別情報等と対応づけて記憶部120に記憶させてよい。これにより、転送許可部154は、使用者が貼付画像HGを転送したくない他の撮像装置100に貼付画像HGが転送されることを防ぐことができる。
SA216において、入力部140は、表示部130が表示する撮像画像PG中における表示画面18内の貼付画像HGの貼付位置に対応する、撮像画像PG上の指定位置(例えば、撮像画像PG上の座標)を指定する位置指定操作を入力し、処理部150に供給する。また、処理部150は、撮像部110から情報処理装置200の表示画面18を撮像した撮像画像PGを取得する。
SA218において、画像貼付部152は、記憶部120から貼付画像HG及び貼付画像HGの転送設定を読み出し、通信部142を介して情報処理装置200に、撮像画像PG、情報処理装置200に貼付画像HG、及び位置指定操作で指定された撮像画像PG上の指定位置を送信する。これにより、画像貼付部152は、撮像画像PG上の指定位置に対応する情報処理装置200の表示画面18上の位置に貼付画像HGを貼り付けさせる。
SB230において、情報処理装置200の撮像画像取得部242は、撮像画像PGを受信し、受信した撮像画像PGを位置取得部244に供給する。情報処理装置200の位置取得部244は、撮像装置100から撮像画像PG上で使用者が指定した位置指定操作に係る指定位置を取得し、撮像画像PG上の指定位置に対応する表示画面DG上の貼付位置を算出する。
例えば、位置取得部244は、表示画像DG及び撮像画像PGを比較して、撮像画像PG上の位置と表示画像DG上の位置の対応を付け、撮像画像PG上で指定された指定位置に対応する表示画像DG上の貼付位置を算出する。貼付位置の算出方法の一例として、位置取得部244は、表示画像DG及び撮像画像PGのそれぞれに含まれるオブジェクトの辺及び頂点等のエッジを検出して、それぞれを対応付ける。
例えば、位置取得部244は、同じ傾向を示す撮像画像PG中のエッジと表示画像DG中のエッジとを対応付ける。ここでいう、傾向とは、色の変化、色が変化する間隔等を含む。位置取得部244は、互いのエッジが同じ傾向を示していると判定した、表示画像DG及び撮像画像PGの数カ所の位置をそれぞれ対応付ける。
位置取得部244は、対応付けが完了した複数の位置に基づいて、撮像画像PG上で指定された位置から表示画像DG上の対応する位置を算出する変換式を決定する。位置取得部244は、当該変換式に基づいて、撮像画像PG上で指定された指定位置に対応する貼付位置を算出する。
なお、撮像画像PGが表示画像DGに対して傾いていると判断する場合、位置取得部244は、ホモグラフィー行列によって撮像画像PG又は表示画像DGの傾きを補正して、貼付位置を算出してよい。位置取得部244は、算出した貼付位置を貼付処理部246に供給する。また、貼付処理部246は、通信部220を介して撮像装置100から、貼付画像HG及び貼付画像HGの転送設定を取得し、これらを記憶部210に記憶する。
SB232において、貼付処理部246は、位置取得部244から供給された貼付位置に、撮像装置100から受け取った貼付画像HGを貼り付ける。即ち、貼付処理部246は、表示部230に表示画像DG上で貼付画像HGを貼り付けて表示させる。
SB234において、貼付処理部246は、通信部220を介して、貼付画像HGの貼付処理が終了したこと示す貼付通知を撮像装置100に送信する。
SA220において、撮像装置100の処理部150は、通信部142を介して情報処理装置200から貼付通知を受信し、これに応じて表示部130に貼付画像HGを表示画面20から削除させる。これにより、本実施形態の画像転送システム10は、撮像装置100の表示画面20及び情報処理装置200の表示画面18上で、貼付画像HGのカット&ペーストを実行した操作感を使用者に与えることができる。
これに代えて、撮像装置100は、SA220の処理を省略し、貼付画像HGを撮像装置100内に保持し続けてよい。この場合、本実施形態の画像転送システム10は、撮像装置100の表示画面20及び情報処理装置200の表示画面18上で、貼付画像HGのコピー&ペーストを実行した操作感を使用者に与えることができる。
図6は、図3のS300の具体的な処理のフローチャートである。SB320において、情報処理装置200の表示部230は、貼付画像HGを制御部240が実行中のプログラムが生成する表示画像DGに貼り付けて表示する。ここで、表示部230は、貼付画像HGに併せて、貼付画像HGの転送設定を表示させてよい。
SA310において、撮像装置100は使用者から位置を指定する位置指定操作を入力する。例えば、まず、撮像装置100の処理部150は、使用者によって撮像装置100が情報処理装置200の方向に向けられたことに応じて、撮像部110から情報処理装置200の表示画面18を撮像した撮像画像PG(例えば、ライブビュー画像又は使用者の指示により撮像される静止画像)を取得し、表示部130に撮像画像PGを表示させる。
次に、入力部140は、撮像画像PG中において、情報処理装置200の表示画面18内の貼付画像HGに対応する位置を指定する位置指定操作を入力する。入力部140は、入力した位置指定操作を処理部150に供給する。
SA312において、画像取得部156は、通信部142を介して、撮像画像PG、貼付画像HGの送信を情報処理装置200に要求する画像取得要求、及び、入力部140が入力した位置指定操作に係る指定位置(例えば、撮像画像PG上の座標)を送信する。
SB322において、情報処理装置200の位置取得部244は、撮像画像PG及び撮像装置100から撮像画像PG上で使用者が指定した位置指定操作に係る指定位置を取得し、撮像画像PG上の指定位置に対応する表示画面DG上の対応位置を算出する。位置取得部244は、SB230の処理と同様の方法により対応位置を算出してよい。位置取得部244は、算出した対応位置及び撮像画像PGを転送部248に供給する。
SB324において、転送部248は、表示画像DG上に貼り付けられた1又は複数の貼付画像HGから、位置取得部244から取得した対応位置に位置する貼付画像HGを、撮像装置100による取得対象の貼付画像HGとして特定する。
例えば、転送部248は、表示画像DG上における対応位置から予め定められた距離(例えば、ピクセル数)内に位置する貼付画像を撮像装置100による取得対象の貼付画像HGとして特定する。
SB326において、転送部248は、画像取得要求を送信した撮像装置100に対して特定した貼付画像HGを転送する。これにより、転送部248は、表示画面18に貼り付けられた貼付画像HGのうち、特定された貼付画像HGを、撮像装置100に対して転送する。
なお、転送部248は、記憶部210から特定した貼付画像HGに係る転送設定を取得し、取得した転送設定に応じて撮像装置100に対する転送の可否を決定してもよい。例えば、特定された貼付画像HGに他の撮像装置100に対する転送が不可と設定されていた場合、又は、特定された貼付画像HGに画像取得要求を送信した撮像装置100に対する転送が不可と設定されていた場合、転送部248は貼付画像HGを撮像装置100に転送せず処理を終了してよい。
SA314において、撮像装置100の画像取得部156は、通信部142を介して、特定された貼付画像HGを情報処理装置200から取得する。これにより、画像取得部156は、1以上の貼付画像HGの中から表示画面18内の指定位置において表示画面18に貼り付けられた画像を取得する。
画像取得部156は、取得した貼付画像HGを表示部130に表示させる。例えば、画像取得部156は、表示部130に、表示画面18を撮像した撮像画像PGに、貼付画像HGを内包するウインドウを重ねて表示させる。また、画像取得部156は、貼付画像HGを記憶部120に記憶する。
SA316において、画像取得部156は、通信部142を介して、情報処理装置200に貼付画像HGの貼付が完了した旨の貼付通知を送信する。
SB328において、情報処理装置200の制御部240は、通信部220を介して貼付通知を撮像装置100から受信し、これに応じて、表示部230に撮像装置100に転送した貼付画像HGを表示画面18から削除させる。これにより、本実施形態の画像転送システム10は、撮像装置100の表示画面20及び情報処理装置200の表示画面18上で、貼付画像HGのカット&ペーストを実行した操作感を使用者に与えることができる。
これに代えて、情報処理装置200は、SB328の処理を省略し、貼付画像HGを表示画面18に表示させ続けてよい。この場合、本実施形態の画像転送システム10は、撮像装置100の表示画面20及び情報処理装置200の表示画面18上で、貼付画像HGのコピー&ペーストを実行した操作感を使用者に与えることができる。
このように、本実施形態の画像転送システム10によれば、情報処理装置200の撮像画像取得部242が、表示画像DGと撮像画像PGとを比較して、位置の対応付けをする。これにより、情報処理装置200は、転送相手の撮像装置100を特定することができる。
また、本実施形態の画像転送システム10によれば、使用者は、撮像装置100で貼付画像HGの選択及び貼付位置の指定等の簡易な操作をすることにより、情報処理装置200に貼付画像HGを貼り付けて表示させることができる。この結果、画像転送システム10は、使用者が撮像装置100及び情報処理装置200にまたがった処理を簡便に行うことができる環境を提供できる。
画像転送システム10によれば、情報処理装置200の表示画面18を、複数の撮像装置100間で画像を転送するための共有クリップボードとして用いることができる。これにより、画像転送システム10は、例えば、パーティー等において、多数の参加者に各々の撮像装置100で画像を撮像させ、撮像した画像を情報処理装置200の表示画面18を介して表示し、また参加者間で簡便に共有させることができる。
また、本実施形態の画像転送システム10によれば、画像毎に又は撮像装置100毎に転送の可否の設定をすることができるので、使用者が他の撮像装置100に転送を許可した画像のみを転送させることができる。
なお、SB326において、情報処理装置200の転送部248が指定位置により特定される貼付画像HGを撮像装置100に転送することに代え、転送部248は撮像装置100により撮像された撮像画像PGに含まれる全ての貼付画像HGを特定し、特定した貼付画像HGを撮像装置100に転送してもよい。
図7〜11は、S200に係る撮像装置100から情報処理装置200への貼付画像HGの転送処理の一例を示す。
図7は、SA210における情報処理装置200の表示画面18及び撮像装置100の表示画面20の一例を示す。本例において、情報処理装置200は、表示画面18に貼付画像a(太陽の画像)及び貼付画像b(山の画像)を表示する。情報処理装置200は、貼付画像aと共に貼付画像aが他の撮像装置100に転送可能であることを示す転送設定を表示し、貼付画像bと共に貼付画像bが他の撮像装置100に転送不可であることを示す転送設定を表示する。
また、図示するように、撮像装置100は、使用者によって情報処理装置200の方向に向けられたことに応じて、情報処理装置200の表示画面18を撮像した撮像画像PGを表示画面20に表示する。さらに撮像装置100は、表示画面20に、貼付の候補となる貼付画像c(雲の画像)、貼付画像d(雷の画像)、及び、貼付画像e(月の画像)を含むウインドウ22を表示する。
図8は、SA212における情報処理装置200の表示画面18及び撮像装置100の表示画面20の一例を示す。図示するように、撮像装置100の入力部140は、複数の貼付画像c〜eの中から、使用者がタッチパネルにタッチして選択した貼付画像eを入力する。
図9及び図10は、SA214における情報処理装置200の表示画面18及び撮像装置100の表示画面20の一例を示す。図9に示すように、撮像装置100の表示部130は、貼付画像eの転送可否を使用者に設定させるメッセージ「転送可能設定 [可][不可]」を表示し、使用者に貼付画像eの転送可否を設定させる。
図10に示すように、撮像装置100の入力部140は、使用者がタッチパネルにタッチして選択した設定(例えば、転送可)を入力する。これに応じて、表示部130は、貼付画像eに併せて選択された貼付画像eの転送設定を表示する。
図11は、SA216及びSA218における情報処理装置200の表示画面18及び撮像装置100の表示画面20の一例を示す。SA216において、図示するように、撮像装置100の画像貼付部152は、入力部140に、タッチパネルにおいて使用者がウインドウ22の貼付画像eをタッチし、そのまま貼付画像eを撮像画像PGの表示画面18を映した領域に移動してドロップする操作を入力させる。ここで、入力部140は、貼付画像eが撮像画像PG内でドロップされた位置を位置指定操作として入力する。
これに応じて、情報処理装置200は貼付画像eを撮像装置100から取得し、表示部230は、撮像画像PG上で貼付画像eがドロップされた位置に対応する表示画面18上の位置に、貼付画像eを表示する。表示部230は、貼付画像eに併せて貼付画像eの転送設定を表示する。
なお、情報処理装置200は、撮像装置100において貼付画像eがドロップされた後に貼付画像eを受け取って表示することに代えて、表示画面20において貼付画像eがドラッグされた状態で撮像画像PGの表示画面18の領域内に入った後に、貼付画像eを受け取って表示してもよい。
この場合、SA218において、撮像装置100の画像貼付部152は、表示画面20において撮像画像PGの表示画面18の領域内に貼付画像HGがドラッグされたまま入ったことに応じて、通信部142を介して撮像画像PG、貼付画像HG、及び、指定位置を情報処理装置200に送信し、その後、貼付画像HGがドロップされるまで、予め定められた時間間隔で撮像画像PG、及び、指定位置を情報処理装置200に送信し続けてよい。これにより、情報処理装置200は、撮像装置100におけるドラッグ&ドロップ操作を表示画面18に表示することができる。
図12及び図13は、S300に係る情報処理装置200から撮像装置100への貼付画像HGの転送処理の一例を示す。
図12は、SA310及びSB320における情報処理装置200の表示画面18及び撮像装置100の表示画面20の一例を示す。図示するように、情報処理装置200は、表示画面18に貼付画像a、貼付画像b、及び、撮像装置100に貼り付けられた貼付画像cをそれぞれの転送設定と共に表示する。なお、貼付画像cを貼り付けた撮像装置100は、図12に係る撮像装置100と同一であってもよく異なっていてもよい。
図示するように、撮像装置100は、情報処理装置200の表示画面18を撮像した撮像画像PGを表示画面20に表示する。また、撮像装置100は、表示画面20に、貼付画像d、及び、貼付画像eを含むウインドウ22を表示する。SA310において、図示するように、撮像装置100の入力部140は、タッチパネルにより使用者が撮像画像PGの貼付画像aに対応する位置をタッチする操作を入力する。
図13は、SA312における情報処理装置200の表示画面18及び撮像装置100の表示画面20の一例を示す。太線で図示するように、SA312において、撮像装置100の画像取得部156は、タッチパネルにおいて使用者が指等で撮像画像PG上の位置をタッチし、タッチ(ドラッグ)したまま貼付画像HG用のウインドウ22に移動し、ウインドウ22内でタッチを解除する操作を入力部140に入力させる。ウインドウ22内でタッチが解除されたことに応じて、画像取得部156は、入力部140に、使用者が最初のタッチした撮像画像PG上の位置を位置指定操作として入力させる。
これに応じて、撮像装置100は、使用者がタッチした位置に対応する貼付画像aを情報処理装置200から取得し、表示部130は表示画面20上のウインドウ22内に、貼付画像aを表示する。表示部130は、貼付画像aに併せて貼付画像aの転送設定を表示してもよい。
なお、情報処理装置200は、使用者が表示画面20上で貼付画像aをウインドウ22内に移動するまでの間、使用者が撮像画面PG上でタッチする位置に対応する表示画面18上の位置に貼付画像aを移動してもよい。
この場合、SA312において、撮像装置100の画像取得部156は、表示画面20において撮像画像PG内の位置を使用者がタッチしてからウインドウ22内でタッチを解除するまでの間、通信部142を介して撮像画像PG、及び、使用者がタッチした指定位置を予め定められた時間間隔で情報処理装置200に送信し続けてよい。画像取得部156は、タッチが解除された時点で画像取得要求を情報処理装置200に送信する。
情報処理装置200は、予め定められた時間間隔で撮像画像PG上の指定位置を受信し、撮像装置100から画像取得要求を受信するまでの間、当該指定位置に応じた表示画面18上の位置に貼付画像HGを移動し続けてよい。これにより、情報処理装置200は、撮像装置100におけるドラッグ&ドロップ操作を表示画面18に表示することができる。
また、情報処理装置200は、使用者からの指示に応じて貼付画像HGを表示画面18から削除してもよい。例えば、点線で図示するように、SA312において、撮像装置100の画像削除部158は、貼付画像HGを削除する指示として、タッチパネルにおいて使用者が指等で撮像画像PG上の位置をタッチし、タッチ(ドラッグ)したまま表示画面20に表示されるゴミ箱のアイコンfに移動し、アイコンf内でタッチを解除する操作を、入力部140に入力させる。
アイコンf内でタッチが解除されたことに応じて、入力部140は、使用者が最初のタッチした撮像画像PG上の位置を位置指定操作として入力し、画像削除部158は、当該位置指定操作に係る指定位置及び画像削除指示を情報処理装置200に送信する。これに応じて、情報処理装置200の転送部248は、SB322及びSB324の処理を実行して表示画面18内における指定位置に貼り付けられた貼付画像HGを特定し、SB326において特定した貼付画像HGを撮像装置100に送信する代わりに当該貼付画像HGを削除する。これにより、情報処理装置200は、撮像装置100における削除操作を表示画面18に表示することができる。
ここで、画像転送システム10の他の実施形態の例について説明する。
上述の実施形態では、S100の処理において、情報処理装置200が、撮像画像PGと表示画像DGとを比較することで撮像装置100を特定している。これに代えて、情報処理装置200は、撮像装置100が発信する発光パターン等により撮像装置100の識別情報を取得し、撮像装置100を特定してもよい。
上述の実施形態では、撮像装置100及び情報処理装置200が、別の画像が表示されていない位置に貼付画像HGを貼り付ける例を示したが、貼り付ける形態はこれに限られない。例えば、撮像装置100の処理部150及び情報処理装置200の制御部240は、貼付画像HGが既に貼り付けられている位置に新たな貼付画像HGを置換して又は重ねて貼り付けてもよい。
この場合、撮像装置100及び情報処理装置200は、先の貼付画像HGの位置及び大きさに一致させて、新たな貼付画像HGを貼り付けてもよい。また、撮像装置100及び情報処理装置200は、転送相手から転送された貼付画像HG以外の画像が貼り付けられている領域に貼付画像HGを貼り付けてもよい。撮像装置100及び情報処理装置200は、使用者によって選択された貼付画像HGの位置に新たな貼付画像HGを貼り付けてもよい。さらに、撮像装置100及び情報処理装置200は、新たな貼付画像HGを貼り付ける場合、使用者によって選択された置換対象の先の貼付画像HGを記憶部120又は記憶部210から削除してもよい。
上述した実施形態では、撮像装置100及び情報処理装置200が貼付画像HGを貼り付けて表示する例をあげたが、撮像装置100及び情報処理装置200は、貼付画像HGに代えて貼付情報、または、貼付画像HGに加えて貼付情報を転送し、表示画面18に表示させてもよい。例えば、撮像装置100の処理部150及び情報処理装置200の制御部240は、貼付画像HGを説明するキャプション情報を貼付情報として表示画面18に表示させてもよい。
また、撮像装置100及び情報処理装置200は、撮像装置100の記憶部120及び情報処理装置200の記憶部210を検索することにより、貼り付ける貼付画像HGに関連する情報を抽出して、貼付情報を生成してもよい。例えば、処理部150及び制御部240は、貼付画像HGに含まれる撮像した位置及び日時に基づいて、予定表の情報を検索して予定の名称を含む貼付情報を生成してもよい。
また、処理部150及び制御部240は、貼付画像HGに含まれる情報を画像認識によって認識して、認識した対象に関連する貼付情報を生成してもよい。例えば、処理部150及び制御部240は、貼付画像HGに含まれる人物を画像認識によって判別して、当該人物の名前、メールアドレス等を貼付情報としてもよい。
さらに、処理部150及び制御部240は、貼付画像HGが貼り付けられた位置が表示部130又は表示部230により表示されるアプリケーションのアイコンであった場合、当該アプリケーションを起動して、貼付画像HGを貼り付けてもよい。例えば、アプリケーションがメールに関するアプリケーションであった場合、処理部150及び制御部240は、メールのアプリケーションを起動させて、送信メールに貼付画像HGを添付してもよい。
上述した実施形態では、撮像装置100及び情報処理装置200が貼付画像HGを貼り付ける例をあげたが、撮像装置100及び情報処理装置200は、貼付画像HGに代えて、貼付画像HGに関連付けられたデータを転送してもよい。
例えば、撮像装置100の処理部150及び情報処理装置200の制御部240は、表示部130及び表示部230に、撮像装置100及び情報処理装置200で実行されるアプリケーション等のプログラムのアイコンを貼付画像HGとして表示し、貼付画像HGの転送に併せて転送される貼付画像HGに対応するプログラムのデータを転送してよい。これにより、撮像装置100及び情報処理装置200は簡便にプログラムを共有することができる。
上述した実施形態における各構成の接続関係、機能等は適宜変更してよい。また、上述した実施形態を組み合わせてもよい。
例えば、上述した実施形態では、撮像装置100と情報処理装置200が直接貼付画像HGの送受信をする例を示したが、これに限られない。例えば、画像転送システム10は、撮像装置100と情報処理装置200との間で貼付画像HGの転送を制御する転送装置を備えてもよい。
この場合、転送装置は、撮像装置100から撮像画像PG、貼付画像HG、及び、使用者に指定された貼付画像HGを貼り付ける指定位置等を受け取り、情報処理装置200に貼付画像HGと貼付画像HGを貼り付ける表示画面18上の位置を送信する。
また、転送装置は、撮像装置100から撮像画像PG、及び、使用者に指定された表示画面18上で貼付画像HGが存在する指定位置等を受け取り、情報処理装置200に貼付画像HGが存在する表示画面18上の位置等を送信する。その後、転送装置は、情報処理装置200から貼付画像HG等を受信して、撮像装置100に転送する。
図14は、本実施形態に係るコンピュータ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を撮像装置100及び情報処理装置200として機能させるプログラムは、処理モジュール、画像貼付モジュール、転送許可モジュール、画像取得モジュール、画像削除モジュール、制御モジュール、撮像画像取得モジュール、位置取得モジュール、貼付処理モジュール、及び、転送モジュールとを備える。これらのプログラム又はモジュールは、CPU2000等に働きかけて、コンピュータ1900を、撮像装置100の処理部150の画像貼付部152等及び情報処理装置200の制御部240の撮像画像取得部242等としてそれぞれ機能させる。
これらのプログラムに記述された情報処理は、コンピュータ1900に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段である撮像装置100の処理部150及び情報処理装置200の制御部240として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータ1900の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の撮像装置100及び情報処理装置200が構築される。
一例として、コンピュータ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に提供してもよい。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。そのような変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。