以下に添付図面を参照して、画像管理装置、画像管理方法、画像管理プログラムおよび表示システムの実施形態を詳細に説明する。
(第1の実施形態に係る構成の概略)
図1は、第1の実施形態に係る表示システムの一例の構成を示す。図1において、表示システム1aは、コンピュータ(PC)10aと、プロジェクタ(PJ)11と、データベース(DB)12aと、センサ13と、画像取得装置20と、識別画像読取装置21とを含む。PC10aは、第1の実施形態に係る画像管理プログラムが搭載され、この画像管理プログラムに従い表示システム1aの動作を制御する。PJ11は、PC10aから出力された画像信号に従い、被投射媒体14に画像100を投射する。
センサ13は、物体の位置を検知する。例えば、センサ13は、カメラが内蔵され、カメラで取得した撮像画像に含まれる対象物体の画像に基づき、対象物体までの距離や、対象物体の位置を検知することができる。センサ13は、被投射媒体14の被投写面側に設置される。センサ13は、被投射媒体14の被投写面側であれば、被投射媒体14の上部および下部の何れに設置してもよいし、上下左右の何れかに設置してもよい。センサ13の検知結果は、PC10aに供給される。
センサ13としては、例えば、米国マイクロソフト社によるKinect(登録商標)を用いることができる。センサ13は、この例に限定されず、対象となる動体の位置を、撮像ユニットと画像処理部とを組み合わせ、撮像画像を画像処理部により解析して検知してもよいし、赤外線や超音波などを利用して検知してもよい。
DB12aは、複数のデータベースを含み、例えば、PC10aがPJ11により被投射媒体14に投射するための画像(画像データ)が格納される。
画像取得装置20は、例えばカメラを含み、所定にセットされる用紙50をカメラにより撮像し、当該用紙50の画像を取得する。より具体的な例として、画像取得装置20は、カメラと、用紙50を載置する撮像台と、撮像台に対してカメラを所定の距離および位置に固定するための治具とを含む。例えば、撮像台に用紙50を載置して、画像取得装置20に対して所定の操作を行うことで、カメラにより用紙50の画像が撮像され、撮像された画像がカメラから出力される。画像取得装置20は、取得した画像をPC10aに供給する。画像取得装置20は、カメラに限られず、イメージセンサにより画像を走査して画像を取得するスキャナ装置でもよい。
識別画像読取装置21は、媒体40の画像を取得し、取得した画像から、媒体40に表示される識別画像41を読み取ってPC10aに供給する。
ここで、媒体40は、紙や樹脂フィルムといった印刷可能な印刷媒体を用いることができる。例えば、表示システム1aを用いたサービスを提供するサービス提供者が、PC30により、所定のフォーマットに従い設定した識別情報に基づき識別画像を生成し、生成した識別画像をプリンタ31により媒体40に印刷する。この場合、それぞれ異なる識別画像41が印刷された複数の媒体40、40、…を作成することができる。
なお、媒体40は、印刷媒体に限定されない。例えば、CPU(Central Processing Unit)やデータ通信機能を備え、筐体と一体的に構成された薄型のディスプレイに画像を表示可能な、所謂タブレット装置を媒体40として用いることができる。この場合、例えば外部から送信された識別画像をデータ通信機能により受信して、受信した識別画像に従い識別画像をディスプレイに表示させる。
識別画像41は、例えば文字列からなる識別情報を画像に符号化したものを利用できる。例えば、識別画像41として、QRコード(登録商標)といった2次元コードを用いることができる。これに限らず、識別情報を示す文字列をそのまま印刷して識別画像41として用いてもよいし、識別情報をQRコード(登録商標)とは異なる方式で画像化したコードを用いることもできる。
識別画像41に用いる識別情報は、例えば下記の式(1)により生成することができる。なお、式(1)において、加算記号「+」は、文字列の結合を示す。
識別情報=固定コード+識別情報を生成した時間を示す時間情報 …(1)
これらのうち、固定コードは、例えばサービス提供者毎に定められたコードとする。これに限らず、固定コードを、第1の固定コードと第2の固定コードとを組み合わせて構成することもできる。この場合、例えば、第1の固定コードを、表示システム1aの提供者を示すコードとし、第2の固定コードを、サービス提供者毎に定められたコードとすることが考えられる。この場合、第2の固定コードは、PC30からPC10aに対して予め通知しておくことが考えられる。
また、時間情報は、識別画像41を生成する環境における時間(例えばPC30で計測された時間)を用いることができる。一例として、識別画像41が媒体40に印刷されて形成される場合、PC30が、媒体40に識別画像41を印刷する処理毎に、その時間を示す時間情報を取得することが考えられる。この場合、時間情報は、少なくとも時、分、秒を含む6桁の情報として取得される。時間情報は、さらに細かい単位を含んでもよいし、日、月などの単位を含んでもよい。
なお、識別情報は、式(1)の例に限定されない。例えば、識別情報を生成した時間を示す時間情報のみを用いて、識別情報を構成してもよい。
用紙50は、この例では、ユーザ2が絵を手描きするための手描き領域43と、手描き領域43に描画された絵に対する属性を設定するための属性設定領域42とが表示される。また、用紙50は、これら属性設定領域42および手描き領域43と重なること無く媒体40を載置可能な領域が設けられる。
図2は、第1の実施形態に適用可能な用紙50の例を示す。図2に示される用紙50において、絵を手書き描画する描画領域43と、描画領域43に描画された絵に対する属性を設定するための属性設定領域42と、媒体40を載置するための載置領域44とが配される。図2の例では、載置領域44は、ユーザによる認識が容易なように、枠線が表示されている。また、図2の例では、属性設定領域42は、「あるく」、「すすむ」、「とぶ」、「しょくぶつ」、「たてもの」および「およぐ」の6つの属性を設定可能とされている。
また、用紙50の四隅のうち3の隅に、マーカ511、512および513が配される。用紙50の画像を画像取得装置20で取得した原稿画像から、これらマーカ511、512および513を検出することで、用紙50の向きおよび大きさを知ることができる。
図3は、第1の実施形態に係る媒体40の表示例を示す。このように、媒体40に対して識別画像41が表示される。図3の例では、識別画像41が媒体40の略中央に表示されているが、これはこの例に限定されず、識別画像41は、媒体40上の任意の位置に表示させることができる。また、第1の実施形態においては、媒体40には、識別画像41のみが表示されていればよいが、媒体40に対して識別画像41と共に他の情報(ロゴ画像など)を表示させてもよい。
(第1の実施形態に係る表示システムによる動作の概略)
次に、第1の実施形態に係る表示システム1aの動作について、図1を参照しながら概略的に説明する。ここでは、説明のため、表示システム1aは、サービス提供者が主催するイベントの会場に設置されるものとする。サービス提供者は、予め、あるいは、会場にて、PC30およびプリンタ31を用いて、互いに異なる識別情報に基づく識別画像41が印刷された媒体40、40、…を用意する。また、サービス提供者は、用紙50、50、…も用意する。
会場に来場したユーザ2は、サービス提供者から媒体40および用紙50を受け取る。ユーザ2は、用紙50の手描き領域43に絵を描画し、属性設定領域42において描画した絵に対する属性を設定する。そして、用紙50を画像取得装置20にセットし、媒体40を、識別画像41が表面側に表示されるように、用紙50の載置領域44に載置する。
図4は、画像取得装置20にセットされる用紙50の例を示す。図4において、用紙50の手描き領域43は、絵45が描画されている。なお、絵45は、用紙50に直接手描をするのに限らず、予め絵45が描画されたシールなどを貼付または載置してもよいし、他のPCなどで作成された画像を用紙50の手描き領域43に印刷してもよい。
また、図4の例では、属性設定領域42において上段2番目の属性「すすむ」の枠が塗り潰され、絵45に対して当該属性「すすむ」が設定されていることが分かる。さらに、載置領域44に媒体40が載置される。
このように、画像取得装置20に対して用紙50がセットされた状態で、例えばユーザ2が画像取得装置20に対して用紙50の画像の取得を指示する操作を行う。画像取得装置20は、この操作に応じて用紙50を撮像し、撮像により取得した用紙50の画像を出力する。画像取得装置20から出力された画像は、PC10aに供給される。
PC10aは、画像取得装置20から供給された画像を解析して、画像に含まれる識別画像41、属性設定領域42の画像および手描き領域43の画像をそれぞれ取得する。PC10aは、取得した識別画像41を解析して、識別画像41から識別情報を抽出する。また、PC10aは、属性設定領域42の画像を解析して、設定された属性を取得する。さらに、PC10aは、手描き領域43から絵45の画像を抽出する。以下、絵45の画像を、ユーザ画像と呼ぶ。
PC10aは、用紙50の画像から取得したユーザ画像と属性とを、当該用紙50の画像から抽出した識別情報に関連付けて、DB12aに格納する。それと共に、PC10aは、ユーザ画像をプロジェクタ11に送信し、被投射媒体14に投射させる。このとき、PC10aは、ユーザ画像に対して、属性に基づき動きや座標のパラメータを与える。また、PC10aは、ユーザ画像そのものに基づき、ユーザ画像に対してさらに動きや座標のパラメータを与える。
複数の用紙50に対してそれぞれ異なる絵45を描画して、各用紙50に対して上述した画像取得装置20による用紙50の画像取得以下の処理を繰り返すことで、ユーザ2は、被投射媒体14に対して複数のユーザ画像を表示させることができる。このとき、識別画像41は、用紙50上に載置された媒体40から取得されるため、異なる各用紙50で共通の識別画像41を取得することができる。したがって、複数のユーザ画像に、共通の識別情報を関連付けることが可能である。
(ユーザ画像の表示例)
次に、各実施形態に共通して適用可能なユーザ画像の表示の例について説明する。図5は、第1の実施形態に係る、被投射媒体14に投射される画像の例を示す。図5において、画像100が被投射媒体14に投射される。この例では、画像100は、背景画像110および固定オブジェクトによる画像(固定オブジェクト)111とを含む。
また、図5の例では、背景画像110は、空領域110aと、陸領域110bとを含み、陸領域110bは、画像100の下端から陸領域110bおよび空領域110aの境界に向けて奥行きを持つ画像となっている。すなわち、画像100は、水平方向および垂直方向の位置をそれぞれ示す座標軸(x軸,y軸)と、奥行方向の位置を示す座標軸であるz軸とを有する。したがって、画像100内に表示される各画像の位置は、これら3つの座標軸(x軸,y軸,z軸)による座標(x,y,z)により表される。
なお、図5において、画像100の左上隅に表示されるアイコン画像112は、この画像100のスクリーンショットを取得するために配されている。
画像100は、さらに、ユーザ画像に基づく画像1201〜1204を表示することができる。以下では、画像100内に表示された、ユーザ画像に基づく画像を、ユーザオブジェクトと呼ぶ。この例では、これらユーザオブジェクト1201〜1204は、共通の識別情報に関連付けられているものとする。また、ユーザオブジェクト1202および1203は、属性設定領域42から取得された属性に基づき位置が固定的とされて画像100内に表示されている。一方、ユーザオブジェクト1201および1204は、属性に基づき陸領域110bを所定の速度で移動しながら、画像100内に表示されている。
上述のように画像100にユーザオブジェクト1201〜1204が表示されている状態に対し、図6で示されるように、さらにユーザオブジェクトを追加させることができる。図6において、画像100は、図5の画像100に対してユーザオブジェクト12010〜12013が追加されている。
例えば、上述のユーザオブジェクト1201〜1204を表示させたユーザ(第1のユーザとする)とは異なるユーザ(第2のユーザとする)が、第1のユーザが持つ媒体40に表示される識別情報41とは異なる識別情報41が表示される媒体40を用いて、それぞれ絵45が描画された用紙50、50、…の画像を画像取得装置20により取得させる。これにより、各ユーザ画像に基づくユーザオブジェクト12010〜12013が画像100内に表示されると共に、各ユーザ画像と、属性とが、識別情報41に関連付けられてDB12aに追加して格納される。
図6の例では、ユーザオブジェクト12010は、用紙50の属性設定領域42から取得された属性に基づき、空領域110aを所定の速度で移動しながら画像100内に表示されている。また、ユーザオブジェクト12012および12013は、属性に基づき陸領域110bを所定の速度で移動しながら、画像100内に表示されている。さらに、ユーザオブジェクト12011は、属性に基づき位置を固定的とされて、画像100内に表示されている。また、図6において、ユーザオブジェクト1201および1204は、図5の状態に対して位置が移動して画像100内に表示されている。
なお、上述では、画像取得装置20により用紙50の画像を取得することで、用紙50に含まれるユーザ画像に基づく画像を画像100内に表示している。第1の実施形態では、さらに、DB12aに格納された、ユーザ画像に基づく画像を、画像100内に表示させることができる。
一例として、上述の第2のユーザにより、識別情報と、ユーザオブジェクト12010〜12013に対応する各ユーザ画像および各属性とが関連付けられて、予めDB12aに格納されているものとする。また、図5に例示されるように、第1のユーザによるユーザオブジェクト1201〜1204が既に画像100内に表示されているものとする。
この状態において、第2のユーザが、ユーザオブジェクト12010〜12013に対応する各画像を用紙50から取得した際に用いた媒体40を識別画像読取装置21に載置して、識別画像読取装置21に対して識別画像41の読み取りを指示する。識別画像読取装置21は、この指示に従い媒体40上の識別画像41を読み取って、PC10aに送信する。
PC10aは、識別画像読取装置21から送信された識別画像41を解析して識別情報を取得する。PC10aは、取得した識別情報に基づきDB12aを検索し、取得した識別情報に関連付けられたユーザ画像および属性を取得する。PC10aは、このようにしてDB12aから取得したユーザ画像を、属性に従い画像100内に表示させる。これにより、画像100は、図6と同様に、第1のユーザによるユーザオブジェクト1201〜1204に対して、第2のユーザによるユーザオブジェクト12010〜12013が追加される。
このように、第2のユーザは、ユーザ画像をDB12aに格納した際に用いた識別画像41を保持しておくことで、過去に作成したユーザ画像をDB12aから読み出して画像100内に表示させることができる。
すなわち、第1の実施形態に係る表示システム1aによれば、識別画像41が表示された媒体40の画像を用紙50上に載置して、媒体40を含む用紙50の画像を取得することで、ユーザが提供する絵に基づくユーザ画像を、識別画像41が示す識別情報に関連付けて管理することができる。また、識別画像41は、用紙50とは別体である媒体40上に表示されるため、ユーザは、この媒体40を複数枚の用紙50に順次適用して、何枚もの絵を、ユーザ画像として、識別情報を用いてグループ管理することが可能となる。
(ユーザのモーションに応じた動作例)
次に、各実施形態に共通して適用可能な、ユーザのモーションに応じた表示の変化について説明する。第1の実施形態では、画像100の表示中に、ユーザが何らかのモーションをセンサ13に検知させることで、画像100および画像100内の各ユーザオブジェクトの状態に変化を与えることができる。
例えば、ユーザが画像100を表示中の被投射媒体14の前で腕を前に突き出す、腕を振る、などの、物体の位置をセンサ13の検知範囲内で移動させる動作を行う。この動作をモーションと呼ぶ。センサ13は、このモーションを検知し、すなわち、検知範囲内の物体を検知し、モーションを検知した位置を示す位置情報を出力する。位置情報は、PC10aに供給される。PC10aは、センサ13から供給された位置情報に基づき、画像100における座標を生成する。以下では、この座標をモーション座標と呼ぶ。なお、PC10aは、センサ13の検知結果に基づき、モーションを複数種類のアクションに分類することができる。
一方、DB12aには、ユーザのモーションに応じて画像100に表示させるための画像が予め格納される。以下、特に記載の無い限り、この画像をアイコン画像と呼ぶ。アイコン画像は、例えば、画像100における各領域に関連付けられて、DB12aに格納される。画像100における各領域は、例えば、図5を用いて説明した空領域110aおよび陸領域110bを適用することができる。領域は、空領域110aおよび陸領域110bに限られず、水辺に対応する水領域など他の領域をさらに加えてもよい。アイコン画像は、複数の領域に関連付けることができる。
PC10aは、生成したモーション座標が、画像100における各領域のうち何れの領域に含まれるかを判定する。PC10aは、判定結果に基づき、DB12aから、モーション座標が含まれる領域に関連付けられたアイコン画像を読み出す。そして、PC10aは、DB12aから読み出したアイコン画像を、画像100内のモーション座標が示す位置に表示する。
図7は、このようにしてアイコン画像が表示された画像100の例を示す。図7の例では、画像100の左上隅および中央付近にそれぞれアイコン画像1301および1302が表示されている。すなわち、ユーザの画像100の左上隅におけるモーションに応じて、空領域110aに関連付けられたアイコン画像1301が表示される。同様に、ユーザの画像100の中央付近におけるモーションに応じて、陸領域110bに関連付けられたアイコン画像1302が表示される。
なお、アイコン画像1301および1302は、背景画像110、固定オブジェクト111、ならびに、各ユーザオブジェクト1201〜1204および12010〜12013に対して優先して表示される。
また、モーション座標が含まれる領域に複数のアイコン画像が関連付けられている場合、PC10aは、ユーザの所定のモーションに応じて、この複数のアイコン画像からランダムに1つのアイコン画像を選択して、画像100に表示する。ユーザは、表示されたアイコン画像を別のアイコン画像に切り替えたい場合には、同じ位置で再びモーションを行う。PC10aは、領域に関連付けられたアイコン画像からランダムに1つのアイコン画像を選択し、現在表示されているアイコン画像を消去して選択したアイコン画像を表示する。ここで、同じ位置で所定のモーションを行った回数を計測し、所定回毎にアイコンを消去する動作のみを行ってもよい。また、モーションが一定時間以上継続して行われた場合に、アイコン画像を移動させるようにもできる。
画像100に対するアイコン画像の表示に応じて、画像100に既に表示されているユーザオブジェクトの状態を変化させることができる。アイコン画像の表示に応じたユーザオブジェクトの状態の変化について、図8と、上述した図6とを用いて説明する。
図6の状態の画像100に対して、ユーザが、画像100の所望の位置に対してアイコン画像を表示させるようなモーションを行ったものとする。このモーションは、センサ13に検知される。PC10aは、センサ13の検知結果に基づきモーション座標を生成し、生成したモーション座標の位置に、当該モーション座標が含まれる領域に応じたアイコン画像を表示させる。
ここで、PC10aは、モーション座標の近傍にユーザオブジェクトが存在する場合、アイコン画像の表示に応じて、当該ユーザオブジェクトがモーション座標に向けて移動するように、当該ユーザオブジェクトの表示を制御する。図6の状態で、画像100の中央左寄りの位置に対してアイコン画像を表示させるモーションを行った場合の例を、図8に示す。図8の例では、アイコン画像1303が画像100の中央左寄りの位置に表示され、図6の状態で当該アイコン画像1303の位置の近傍に表示されるユーザオブジェクト1201、1204および12013が、アイコン画像1303の位置に向けて移動しているのが分かる。
モーションに応じたユーザオブジェクトの状態の変化は、ユーザオブジェクトの表示位置の移動に限られない。例えば、PC10aは、モーション座標がユーザオブジェクトの画像範囲に含まれる場合に、当該ユーザオブジェクトを強調表示することができる。ユーザオブジェクトの画像範囲は、例えば、ユーザオブジェクトの上下端のy座標と、左右端のx座標とで定義することができる。例えば、PC10aは、モーション座標に基づき、モーションのユーザオブジェクトに対する当たり判定を行い、モーションがユーザオブジェクトに当たったと判定した場合に、当該ユーザオブジェクトの強調表示を行う。ユーザオブジェクトの強調表示としては、当該ユーザオブジェクトを拡大表示させたり、振動させることが考えられる。
また、強調表示の別の例として、図9に例示されるように、PC10aは、例えばユーザオブジェクト1201の画像範囲がモーション座標を含む場合に、当該モーション座標の位置にアイコン画像1304を表示させると共に、当該アイコン画像1304の近傍に、効果画像1321を表示させることができる。図9の例では、効果画像1321は、アイコン画像1304の周囲に星画像が飛散する様子を表現した画像が用いられている。この効果画像1321は、例えば、DB12aに予め格納される。
PC10aは、ユーザのモーションに応じて、画像100のスクリーンショットを記憶することができる。例えば、PC10aは、ユーザのモーションに応じたモーション座標が、画像100の左上隅の位置に表示される、スクリーンショット用のアイコン画像112の画像範囲に含まれか否かを判定する。PC10aは、モーション座標が当該アイコン画像112の画像範囲に含まれると判定した場合、図10に例示されるように、モーション座標の位置にスクリーンショットを示すアイコン画像131を表示させる。そして、PC10aは、モーション座標がアイコン画像112の画像範囲に含まれると判定した時点での各ユーザオブジェクトやアイコン画像を反映した画像100を、スクリーンショット画像としてメモリなどに記憶する。
上述したように、PC10aは、被投射媒体14に投射する画像100の情報を、奥行方向のz軸に関する座標情報として持つ。すなわち、画像100は、x軸、y軸およびz軸で表現される3次元空間の情報を、x軸およびy軸で表される2次元空間(平面)に対して投影した画像である。
図11Aおよび図11Bを用いて、PC10aにおける画像100の構成の例について説明する。例えば、被投射媒体14に対して、図11Aに示されるように画像100が表示されているものとする。図11Aの例では、画像100は、空領域110aおよび陸領域110bを含む背景画像110と、固定オブジェクト111と、各ユーザオブジェクト12020、12021、12022、12023、12024、12025、12026、12027、…と、アイコン画像1305と、効果画像1322とを含んでいる。
ここで、図11A示される画像100は、x軸、y軸およびz軸のうちx軸およびy軸のみを用いて表され、z軸が無視されている。
図11Aにおいて、陸領域110bに含まれる、例えばユーザオブジェクト12020、12021および12022は、それぞれの重なり具合から、ユーザオブジェクト12020が最も手前に表示され、ユーザオブジェクト12022が最も奥に表示されているように見える。同様に、陸領域110bに含まれる、ユーザオブジェクト12023および12024は、ユーザオブジェクト12023が手前に、ユーザオブジェクト12024が奥に表示されているように見える。
また、ユーザオブジェクト12020、12021および12022による第1の組と、ユーザオブジェクト12023および12024による第2の組については、陸領域110b内での位置に基づき、第2の組が第1の組に対して奥側に表示されているように見える。
一方、空領域110aに含まれる、ユーザオブジェクト12026およびユーザオブジェクト12027と、陸領域110bに含まれるユーザオブジェクト12025とについては、図11Aの状態では、互いに重なり合う部分が無いため、画像100の表示から遠近を判定することが難しい。
図11Bは、図11Aの画像100に対してz軸の情報を加えた3次元空間を、画像100の右上手前の仮想的な視点から俯瞰して示す。図11Bにおいて、垂直方向がy軸、左上から右下に向かう方向がx軸、左から右にやや右上がりに向かう方向がz軸にそれぞれ対応する。ここで、空領域110aは、座標z=0のxy平面として表され、陸領域110bは、座標y=0のxz平面として表されている。また、図11Bにおいて空領域110aと陸領域110bとの交線の左端が座標x=0とする。
さらに、図11Aの画像100は、図中の矢印Aで示されるように、z軸に沿った方向に視線を定めてこの3次元空間を眺めた画像に相当する。さらに、PC10aは、このx軸、y軸およびz軸で表される3次元空間に対して、表示可能な領域を予め定めている。この表現可能な領域として定められた領域を、定義領域と呼ぶ。
なお、陸領域110bに含まれる各ユーザオブジェクト12020〜12025は、例えば、画像範囲の下端の座標zの値が0に固定される。一方、空領域110aに含まれる各ユーザオブジェクト12026および12027は、xyzの各座標値を、定義領域内で任意とすることができる。
ここで、図11Bにおいて、座標zは、図の左から右に向けて大きくなるものとする。図11Bに示されるように、ユーザオブジェクト12020、12021および12022において、座標zの値は、ユーザオブジェクト12020が最も小さく、ユーザオブジェクト12022が最も大きい。したがって、これらユーザオブジェクト12020、12021および12022が、xy平面において一部が重なり合っている場合には、画像100に対して、ユーザオブジェクト12022、ユーザオブジェクト12021、ユーザオブジェクト12020の順に重ねて表示されることになる。
また、ユーザオブジェクト12023および12024の組(第2の組)は、ユーザオブジェクト12020〜12022の組(第1の組)と比較して座標zの値が大きく、xz平面においてより奥に表示されている。そのため、この3次元空間を、定義領域におけるxz平面に対して矢印Aで示される方向に眺めた場合に、画像100においてより上側(空領域110aと陸領域110bとの境界側)に表示される。
さらに、ユーザオブジェクト12025〜12027については、座標zの値は、ユーザオブジェクト12026が最も小さく手前側に表示され、ユーザオブジェクト12027が最も大きく奥側に表示される。また、同じ大きさのユーザオブジェクトであれば、座標zの値が小さいほど、大きく表示される(例えばユーザオブジェクト12023および12024)。
なお、陸領域110bに含まれる各ユーザオブジェクト12020〜12025は、xz平面上を、定義領域内で任意に移動することができる。一方、空領域110aに含まれる各ユーザオブジェクト12026および12027は、xyz空間内を、定義領域内で任意に移動することができる。このとき、空領域110aに含まれる各ユーザオブジェクト12026および12027に対して、座標yの値を一定値以上の値に制限することができる。
(第1の実施形態に適用可能な構成)
図12は、第1の実施形態に適用可能なPC10aの一例の構成を示す。図12のPC10aにおいて、バス1000に対してCPU(Central Processing Unit)1001、ROM(Read Only Memory)1002、RAM(Random Access Memory)1003および表示信号生成部1004が接続される。PC10aにおいて、さらに、バス1000に対してストレージ1006、データI/F1007および通信I/F1008が接続される。
CPU1001は、ROM1002およびストレージ1006に予め記憶されるプログラムに従い、RAM1003をワークメモリとして用いて、このPC10aの全体を制御する。表示信号生成部1004は、モニタ1005が接続され、CPU1001により生成された表示制御信号を、モニタ1005が表示可能な信号に変換して出力する。また、表示信号生成部1004は、表示制御信号を、プロジェクタ装置(PJ)11が表示可能な信号に変換してそれぞれ出力することができる。
ストレージ1006は、データを不揮発に記憶することが可能な記憶媒体であって、例えばハードディスクドライブが用いられる。これに限らず、ストレージ1006として、例えばフラッシュメモリなどの不揮発性の半導体メモリを用いてもよい。ストレージ1006は、上述のCPU1001が実行するためのプログラムや各種のデータが格納される。
データI/F1007は、外部の機器との間でのデータの入出力を制御する。例えば、データI/F1007は、画像取得装置20に対するインタフェースとして用いられる。また、データI/F1007は、マウスなどのポインティングデバイスや図示されないキーボード(KBD)からの信号が入力される。さらに、CPU1001で生成された表示制御信号を、このデータI/F1007から出力して、例えばプロジェクタ11に供給してもよい。このようなデータI/F1007としては、USB(Universal Serial Bus)やBluetooth(登録商標)といったインタフェースを適用することができる。
通信I/F1008は、インターネットやLAN(Local Area Network)といったネットワークを介した通信を制御する。
図13は、第1の実施形態に適用可能なPC10aの機能を示す一例の機能ブロック図である。図13において、PC10aは、画像解析部200aと、登録部201と、表示制御部210aと、モーション解析部220とを含む。これら画像解析部200a、登録部201、表示制御部210aおよびモーション解析部220は、CPU1001上で動作するプログラムにより実現される。これに限らず、これら画像解析部200a、登録部201、表示制御部210aおよびモーション解析部220の一部または全部を、互いに独立したハードウェアにて構成してもよい。
また、PC10aに対して、ユーザ画像DB230と、表示画像DB231とが接続される。これらユーザ画像DB230および表示画像DB231は、上述したDB12aに含まれる。ユーザ画像DB230および表示画像DB231は、PC10aに外部接続される記憶媒体や、PC10a内のストレージ1006の所定領域を用いて構成される。
画像解析部200aは、画像取得装置20で取得された画像が供給される。画像解析部200aは、画像取得装置20から供給された画像を解析し、当該画像から識別情報と、ユーザ画像と、属性を示す情報とを取得する。登録部201は、画像解析部200aで取得された識別情報、ユーザ画像および属性情報とを、互いに関連付けてユーザ画像DB230に格納する。なお、ユーザ画像DB230は、例えば、ユーザ画像の他に、アイコン画像や効果画像を格納することができる。
モーション解析部220は、センサ13から出力された検知結果が供給される。モーション解析部220は、供給された検知結果に基づきモーション情報を出力する。モーション情報は、例えばセンサ13の検知結果に基づく座標情報を含む。モーション解析部220は、モーション情報に対して、座標情報が検知されたタイミングに対応する時間を示す時間情報をさらに含めてもよい。
表示制御部210aは、識別画像読取装置21から識別画像41が供給される。表示制御部210aは、供給された識別画像41から識別情報を取得する。また、表示制御部210aは、ユーザ画像DB230からユーザ画像を取得して背景画像110と合成し、画像100を生成して出力する。表示制御部210aから出力された画像100は、例えばプロジェクタ(PJ)11に供給され、被投射媒体14に投射される。
このとき、表示制御部210aは、登録部201によりユーザ画像DB230に格納されたユーザ画像を順次、取得する。また、表示制御部210aは、識別画像読取装置21から供給された識別画像41に基づく識別情報に関連付けられたユーザ画像を、ユーザ画像DB230から取得する。表示制御部210aは、取得したユーザ画像を、識別情報と関連付けて表示画像DB231に格納する。表示制御部210aは、表示画像DB231に格納される各ユーザ画像を、背景画像110と合成して出力する。
表示制御部210aは、モーション解析部220から供給されたモーション情報に基づき、画像100に所定のアイコン画像や効果画像をさらに合成することができる。また、表示制御部210aは、モーション解析部220から供給されたモーション情報に基づき、画像100に含まれる各ユーザ画像を変化させることができる。
なお、上述したPC10aに含まれる画像解析部200a、登録部201、表示制御部210aおよびモーション解析部220は、例えばストレージ1006に記憶され、CPU1001上で動作するプログラムによって実現される。このプログラムは、インストール可能な形式また実行可能な形式のファイルでCD(Compact Disk)、フレキシブルディスク(FD)、DVD(Digital Versatile Disk)などのコンピュータで読み取り可能な記録媒体に記録されて提供される。
また、第1の実施形態のPC10aで実行されるプログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、当該ネットワークを介してダウンロードさせることにより提供するように構成してもよい。また、第1の実施形態のPC10aで実行されるプログラムをインターネットなどのネットワークを経由して提供または配布するように構成してもよい。さらに、第1の実施形態のプログラムを、ROM1002などに予め組み込んで提供するように構成してもよい。
第1の実施形態のPC10aで実行されるプログラムは、上述した各部(画像解析部200a、登録部201、表示制御部210aおよびモーション解析部220)を含むモジュール構成となっている。実際のハードウェアとしては、CPU1001がストレージ1006やROM1002などの記憶媒体からプログラムを読み出して実行することにより、上述した各部がRAM1003などの主記憶装置上にロードされ、画像解析部200a、登録部201、表示制御部210aおよびモーション解析部220が主記憶装置上に生成されるようになっている。
図14は、第1の実施形態に係る画像解析部200aの機能を示す一例の機能ブロック図である。図14において、画像解析部200aは、画像取得部2001と、ユーザ画像抽出部2002と、識別情報取得部2003と、属性情報取得部2004とを含む。
画像取得部2001は、画像取得装置20から供給された画像を取得する。ユーザ画像抽出部2002は、画像取得部2001に取得された画像から手描き領域43を検出し、検出した手描き領域43の画像からユーザ画像を抽出する。識別情報取得部2003は、画像取得部2001に取得された画像から識別画像41を抽出し、抽出した識別画像41を復号して識別情報を取得する。また、属性情報取得部2004は、画像取得部2001に取得された画像から属性設定領域42を検出し、検出した属性設定領域42から属性情報を取得する。
図15は、第1の実施形態に係る表示制御部210aの機能を示す一例の機能ブロック図である。図15において、表示制御部210aは、画像管理部2101と、識別情報取得部2102と、画像制御部2103aと、モーション情報取得部2104と、3D空間生成部2105と、領域設定部2106と、合成部2107と、表示画像取得部2120とを含む。
識別情報取得部2102は、識別画像読取装置21から供給された識別画像41を復号して識別情報を取得する。画像管理部2101は、ユーザ画像DB230から、識別情報に関連付けられたユーザ画像と属性情報とを取得して、識別情報、ユーザ画像および属性情報を画像制御部2103aに供給すると共に、表示画像DB231に格納する。また、画像管理部2101は、登録部201によるユーザ画像DB230に対するユーザ画像の格納に応じて、ユーザ画像DB230から、当該ユーザ画像と、当該ユーザ画像に関連付けられた識別情報と属性情報とを取得し、画像制御部2103aに供給する。
モーション情報取得部2104は、モーション解析部220から出力されたモーション情報を取得して画像制御部2103aに供給する。
画像制御部2103aは、画像管理部2101により取得されたユーザ画像、属性情報および識別情報が供給される。画像制御部2103aは、例えば、ユーザ画像および属性情報に基づき、当該ユーザ画像の表示を制御するためのパラメータを生成し、生成したパラメータを当該ユーザ画像に適用する。パラメータが適用されたユーザ画像は、合成部2107に供給される。
画像制御部2103aは、例えばモーション情報取得部2104からモーション情報が供給されると、このモーション情報に応じてユーザ画像に適用されるパラメータを変更する。また、画像制御部2103aは、モーション情報取得部2104からモーション情報が供給されると、例えばユーザ画像DB230からアイコン画像を取得して、取得したアイコン画像を当該モーション情報に含まれる座標情報と関連付けて、合成部2107に供給する。
3D空間生成部2105は、図11Aおよび図11Bを用いて説明した、x軸、y軸およびz軸で表される3次元による画像データ空間を生成する。3D空間生成部2105は、例えば、RAM1003上のアドレス空間としてこの3次元の画像データ空間を生成する。領域設定部2106は、この3次元の画像データ空間に対して、x軸、y軸およびz軸それぞれに対して予め定められた値に従い、定義領域を設定する。この定義領域内の画像が、画像100として表示される。ユーザ画像やアイコン画像は、座標がこの定義領域内にある場合に、画像100内に表示されることになる。領域設定部2106は、定義領域を示す情報を合成部2107に供給する。
合成部2107は、定義領域に基づき、予め用意された背景画像110および固定オブジェクト111と、画像制御部2103aから供給されたユーザ画像やアイコン画像とを、z軸に沿った方向を視線として定義領域を眺めた場合の2次元画像に合成して、画像100として出力する(図11Aおよび図11B参照)。
なお、背景画像110および固定オブジェクト111は、DB12aの所定の領域に予め格納しておくことができる。また、ストレージ1006の所定の領域に格納しておいてもよい。
表示画像取得部2120は、画像制御部2103aの制御に従い、合成部2107から出力される画像100を取得する。例えば、画像制御部2103aは、所定のモーション情報に応じて表示画像取得部2120に対して画像100の取得を指示する。表示画像取得部2120は、この指示に応じて画像100を取得し、例えばストレージ1006に格納する。
図16は、第1の実施形態に係る、画像取得装置20により取得した画像を表示させる場合の処理を概略的に示す一例のフローチャートである。図16のフローチャートによる処理に先立って、ユーザは、識別画像41が表示される媒体40と、用紙50とを用意する。そして、ユーザは、用紙50に対して手描き領域43への絵45の描画と、属性設定領域42への所望の属性のチェックとを行って画像取得装置20にセットし、媒体40を載置領域44に載置して、画像取得装置20による画像の取得処理を開始させる。画像取得装置20は、取得した画像をPC10aに送信する。
画像取得装置20からPC10aに送信された画像は、PC10aに受信されて画像解析部200aに供給される。画像解析部200aは、供給された画像を取得する(ステップS10)。次のステップS11で、画像解析部200aは、供給された画像から手描き領域43および属性設定領域42をそれぞれ検出し、検出された各領域からユーザ画像および属性情報を抽出する。また、画像解析部200aは、供給された画像から識別画像を抽出し、抽出した識別画像を復号して識別情報を取得する。
次のステップS12で、登録部201は、ステップS11で抽出されたユーサ画像および属性情報を、識別情報に関連付けてユーザ画像DB230に格納し、ユーザ画像の登録を行う。処理はステップS13に移行され、ステップS13で、表示制御部210aは、ユーザ画像に対して、表示を制御するためのパラメータpを設定する。
ここで、第1の実施形態に適用可能なパラメータpについて説明する。表示制御部210aは、ユーザ画像毎すなわちユーザオブジェクト毎に、例えば下記の8種類のパラメータp0〜p7を決定する。
(1)p0:進行方向の最大速度vmax
(2)p1:進行方向の加速度a
(3)p2:水平方向の角加速度の最大値αhmax
(4)p3:垂直方向の角加速度の最大値αvmax
(5)p4:上方向角度の乱数幅の最大値(最大乱数幅)dRumax
(6)p5:下方向角度の最大乱数幅dRdmax
(7)p6:右方向角度の最大乱数幅dRrmax
(8)p7:左方向角度の最大乱数幅dRlmax
これらのうち、パラメータp0およびp1の進行方向の最大速度vmaxおよび進行方向の加速度aは、ユーザオブジェクトの定義空間内における進行方向の速度を制御するためのパラメータである。また、パラメータp2、p3の水平方向の角加速度の最大値αhmaxおよび垂直方向の角加速度の最大値αvmaxは、ユーザオブジェクトに対して水平方向および垂直方向の回転を与えるためのパラメータである。
パタメータp4およびp5の、上下方向の最大乱数幅dRumaxおよびdRdmaxは、ユーザオブジェクトの垂直方向すなわち進行方向に対して上下方向の回転動作に対する角加速度の範囲を与えるためのパラメータである。パタメータp4およびp5で与えられる角加速度は、パラメータp3の、垂直方向の角加速度の最大値αvmaxにより制限される。
パタメータp6およびp7の、右方向および左方向の最大乱数幅dRrmaxおよびdRlmaxは、ユーザオブジェクトの水平方向すなわち進行方向に対して左右方向の回転動作に対する角加速度の範囲を与えるためのパラメータである。
例えば、表示制御部210aは、ユーザ画像と属性情報とに基づき、当該ユーザ画像によるユーザオブジェクトの動きに関する性能を決めるパラメータp0〜p7を生成する。例えば、表示制御部210aは、ユーザ画像に対応する属性情報に従い各パラメータp0〜p7の値を決定し、さらに、ユーザ画像に用いられている色、ユーザ画像の形状や大きさなどに基づき、決定された各パラメータp0〜p7に対して変化可能な範囲を設定する。
次のステップS14で、表示制御部210aは、パラメータpが設定されたユーザ画像に対して定義領域内の座標を設定し、背景画像110と合成して画像100を生成する。これにより、ユーザ画像が、定義領域として定義される3D空間内に、ユーザオブジェクトとして表示されることになる。なお、ユーザオブジェクトの初期位置の座標は、固定的としてもよいし、属性情報に基づきランダムに決定してもよい。
図17は、第1の実施形態に係る、識別画像読取装置21により識別画像41を取得した場合の処理を概略的に示す一例のフローチャートである。図17のフローチャートによる処理に先立って、ユーザは、例えば上述の図16のフローチャートに従い、ユーザ画像を識別情報に関連付けてユーザ画像DB230に登録しておく。
ユーザが識別画像41が表示された媒体40を識別画像読取装置21にセットし、識別画像読取装置21に対するユーザ操作などにより識別画像41の読み取りを指示する。識別画像読取装置21は、この指示に応じて、識別画像41を読み取ってPC10aに送信する。なお、識別画像読取装置21は、識別画像41を自動的に認識し読み取るようにすることも可能である。
識別画像読取装置21からPC10aに送信された識別画像41は、PC10aに受信されて表示制御部210aに供給される。表示制御部210aは、供給された識別画像41を取得する(ステップS20)。次のステップS21で、表示制御部210aは、識別画像41を復号して識別情報を取得し、取得した識別情報に関連付けられたユーザ画像をユーザ画像DB230から検索する。
次のステップS22で、表示制御部210aは、ユーザ画像DB230から検索された各ユーザ画像に基づき、上述のステップS13の処理と同様にして各パラメータp0〜p7を決定し、各ユーザ画像に設定する。
次のステップS23で、表示制御部210aは、パラメータpが設定されたユーザ画像に対して定義領域内の座標を設定し、背景画像110と合成して画像100を生成する。これにより、ユーザ画像DB230に、識別画像41に基づく識別情報に関連付けられた各ユーザ画像が、定義領域として定義される3D空間内に、ユーザオブジェクトとして表示されることになる。
図18は、第1の実施形態に係る、モーション検知に応じたアイコン画像の表示処理を示す一例のフローチャートである。なお、図18のフローチャートによる処理に先立って、上述の図16や図17のフローチャートに従い、画像100内にユーザオブジェクトが既に表示されているものとする。
表示制御部210aは、センサ13からの検知結果に応じてモーション解析部220から出力されたモーション情報に基づき、物体を検知したか否かを判定する(ステップS30)。表示制御部210aは、物体を検知していないと判定した場合、処理をステップS30に戻す。一方、表示制御部210aは、物体を検知したと判定した場合、処理をステップS31に移行させる。
ステップS31で、表示制御部210aは、モーション情報に基づき、検知された物体の位置に対応する、画像100内での座標を取得する。次のステップS32で、表示制御部210aは、ステップS31で取得された座標に基づき物体の所定の動きを検知したか否かを判定する。表示制御部210aは、物体の所定の動きを検知してないと判定した場合、処理をステップS30に戻す。一方、表示制御部210aは、物体の所定の動きを検知したと判定した場合、処理をステップS33に移行させる。
例えば、表示制御部210aは、ステップS31で取得した座標を記憶しておき、ステップS30〜ステップS32のループが繰り返される毎に、新規に取得した座標と記憶した座標とを比較する。そして、表示制御部210aは、比較の結果、座標に一定以上の差分が検出された場合に、所定の動きを検知したと判定することができる。
ステップS33で、表示制御部210aは、ステップS32で所定の動きが検知された際の座標情報に基づき、動きが検出された座標が含まれる画像100内の領域を判定する。例えば、図5の例を参照し、表示制御部210aは、動きが検出された座標が、空領域110aおよび陸領域110bの何れに含まれるかを判定する。
次のステップS34で、表示制御部210aは、ステップS33で判定された領域に応じたアイコン画像を、例えばDB12aから取得する。このとき、ステップS33で判定された領域に複数種類のアイコン画像が関連付けられている場合、表示制御部210aは、これら複数種類のアイコン画像をランダムあるいは所定の順序で選択して取得することができる。表示制御部210aは、取得したアイコン画像を、動きが検出された座標に従い、画像100内に表示させる(ステップS35)。
次のステップS36で、表示制御部210aは、ステップS35で表示されたアイコン画像について、画像100内に表示される各ユーザオブジェクトに対する当たり判定を行う。
表示制御部210aは、例えば、ステップS35で表示されたアイコン画像の座標および大きさに基づき、当該アイコン画像の画像100内での範囲を示す座標を取得する。また、表示制御部210aは、画像100内に既に表示されている各ユーザオブジェクトの位置および大きさに基づき、各ユーザオブジェクトの画像100内での範囲を示す各座標を取得する。
そして、表示制御部210aは、取得したアイコン画像およびユーザオブジェクトの範囲を示す座標に基づき、アイコン画像の範囲がユーザオブジェクトの範囲に掛かるか否かを判定する。表示制御部210aは、この判定結果がアイコン画像の範囲がユーザオブジェクトの範囲に掛かると判定した場合に、当該アイコン画像が当該ユーザオブジェクトに当っている(当たり有り)と判定する。表示制御部210aは、当たり無しと判定した場合、処理をステップS38に移行させる。
一方、表示制御部210aは、ステップS36で当たり有りと判定した場合、処理をステップS37に移行させる。ステップS37で、表示制御部210aは、例えばDB12aから効果画像を取得して、当たり有りと判定されたアイコン画像の座標に基づき、取得した効果画像(エフェクト)を画像100内に表示させる。表示制御部210aは、エフェクト表示を行うと、処理をステップS38に移行させる。
ステップS38で、表示制御部210aは、アイコン画像の座標と、当該アイコン画像とに基づき、画像100内に表示されるユーザオブジェクトの動きを制御する。例えば、表示制御部210aは、ステップS36で当たり無しと判定した場合、画像100内で当該アイコン画像の近傍に表示されるユーザオブジェクトを、当該アイコン画像に向けて所定の速度で移動させることができる。また例えば、表示制御部210aは、ステップS36で当たり有りと判定した場合、当該アイコン画像に当たっているユーザオブジェクトを強調表示することができる。
図19および図20を用いて、用紙50からユーザ画像および各情報を取得する処理について、より詳細に説明する。図19は、第1の実施形態に係る画像解析部200aの動作を示す一例のフローチャートである。また、図20は、第1の実施形態に係る、用紙50から各画像を抽出する処理を説明するための図である。なお、図20において、上述した図2および図4と共通する部分には同一の符号を付して、詳細な説明を省略する。
図19のフローチャートにおいて、ステップS40で、画像解析部200aは、画像取得装置20から供給された、用紙50の画像を画像取得部2001により取得する。画像取得部2001は、取得した画像をユーザ画像抽出部2002、識別情報取得部2003および属性情報取得部2004にそれぞれ供給する。なお、このとき、画像取得部2001は、用紙50の3隅に配置されるマーカ511〜513(図20の左図参照)を認識することで、取得した用紙50の画像の向きなどを修正することができる。
ステップS41で、識別情報取得部2003は、用紙50の画像に識別画像41が含まれるか否かを判定する。識別情報取得部2003は、当該画像に識別画像41が含まれると判定した場合、処理をステップS42に移行させて当該画像から識別画像41を抽出し、次のステップS43で、抽出した識別画像41を復号して識別情報を取得する。そして、処理がステップS45に移行される。
一方、識別情報取得部2003は、ステップS41で識別画像41が含まれないと判定した場合、処理をステップS44に移行させる。ステップS44で、識別情報取得部2003は、例えば予め定められたデフォルトの識別情報を、取得した識別情報とする。そして、処理がステップS45に移行される。
ステップS45で、属性情報取得部2004は、用紙50の画像から属性設定領域42の画像を抽出し、抽出した属性設定領域42の画像に基づき属性が指定されているか否かを判定する。
例えば、図20の左図に示されるように、属性設定領域42に、6個の属性設定部421〜426が配置されているものとする。これら属性設定部421〜426は、内部を塗り潰すなどによりチェックして、所望の属性を指定する。図20の例では、属性設定部421〜426は、それぞれ属性「あるく」、属性「すすむ」、属性「とぶ」、属性「しょくぶつ」、属性「たてもの」および属性「およぐ」を設定する。なお、これら属性設定部421〜426に設定される各属性を、それぞれ属性Type#1、属性Type#2、属性Type#3、属性Type#4、属性Type#5および属性Type#6とする。
属性情報取得部2004は、これら属性設定部421〜426を、所定の順序で1つずつ、チェックがなされているか否かを確認する。そして、チェックされている属性設定部が確認されると、その属性設定部に対応する属性を示す属性情報を取得する(ステップS46)。図20の例では、属性設定部422にチェックがなされ、属性Type#2を示す属性情報が取得されている。属性情報が取得されると、処理がステップS48に移行される。
一方、属性情報取得部2004は、各属性設定部421〜426の全てにチェックがなされていないことが確認された場合、処理をステップS47に移行させ、属性情報を例えば予め定められたデフォルト値に設定する。そして、処理がステップS48に移行される。
なお、属性情報取得部2004は、各属性設定部421〜426から最初にチェックが確認された時点で、属性設定部のチェックの有無の確認を中止する。そのため、各属性設定部421〜426に対して複数の属性設定部がチェックされている場合であっても、取得される属性情報は、1つのみとなる。
ステップS48で、ユーザ画像抽出部2002は、用紙50の画像から手描き領域43を検出し、手描き領域43内のユーザ画像を抽出する。ここで、ユーザ画像抽出部2002は、手描き領域43の画像に対して、ユーザオブジェクトの抽出処理を行う。例えば、ユーザ画像抽出部2002は、手描き領域43の画像に対して、画素毎に白色(用紙50の地の色)か、白色以外かの2値判定を行い、ユーザオブジェクトとして絵45の部分を抽出する。ユーザ画像抽出部2002は、抽出した絵45の部分を含み、底辺の方向が手描き領域43の底辺の方向と平行な最小の矩形領域46の画像を、ユーザ画像とする。
ステップS48でユーザ画像が抽出されると、画像解析部200aは、ステップS40〜ステップS48の処理で取得または抽出された識別情報、属性情報およびユーザ画像のユーザ画像DB230への登録を、登録部201に依頼する(ステップS49)。
なお、上述では、ユーザ画像抽出部2002、識別情報取得部2003および属性情報取得部2004の処理を、直列的に実行するように説明したが、これはこの例に限定されない。すなわち、ユーザ画像抽出部2002、識別情報取得部2003および属性情報取得部2004は、並列的に実行してもよい。
図21は、第1の実施形態に係る、登録部201による識別情報、属性情報およびユーザ画像のユーザ画像DB230への登録処理を示す一例のフローチャートである。ステップS60で、登録部201は、画像解析部200aから、識別情報、属性情報およびユーザ画像のユーザ画像DB230への登録指示の有無を判定する。登録部201は、登録依頼が無いと判定した場合、処理をステップS60に戻す。
一方、登録部201は、識別情報、属性情報およびユーザ画像のユーザ画像DB230への登録依頼が有ったと判定した場合、処理をステップS61に移行する。ステップS61で、登録部201は、画像解析部200aから、登録を依頼された識別情報、属性情報およびユーザ画像を受け取る。
次のステップS62で、登録部201は、ステップS61で受け取った識別情報、属性情報およびユーザ画像を管理するための管理情報を生成する。登録部201は、例えば識別情報に基づき管理情報を生成する。ここで、登録部201は、図22に例示されるように、属性情報およびユーザ画像を識別情報に関連付けて管理情報を生成する。図22に例示されるように、ユーザ画像と属性情報とは、1対1の関係で関連付けられる。これに対して、識別情報は、ユーザ画像および属性情報の組に対して1対多の関係となる。すなわち、1つの識別情報は、複数のユーサ画像および属性情報の組と関連付けることが可能である。
次のステップS63で、登録部201は、ユーザ画像DB230に対して、ステップS61で受け取った識別情報、属性情報およびユーザ画像を格納するための管理領域を生成する。登録部201は、上述のステップS62で生成した管理情報に基づき管理領域を生成する。
この例では、登録部201は、コンピュータのファイルシステムにおける階層構造を用いて管理領域を生成している。図23を用いて、登録部201により生成される、ファイルシステムにおけるフォルダ構造を用いて管理領域を生成する例について説明する。図23は、第1の実施形態に係る、ユーザ画像DB230のフォルダ構造を表示した表示画面の例を示す。図23において、表示画面300は、表示領域301および302を含む。表示領域301は、フォルダ構造を表示し、表示領域302は、表示領域301で指定されたフォルダの内容を示している。
フォルダ構造では、ある階層のフォルダは1つ下の階層のフォルダを含むことができ、上位の階層のフォルダから下位の階層のフォルダに向けて、フォルダによる階層が順次構成される。図23の表示領域301において、第1階層のフォルダ320(フォルダ「DataBase」)は、複数の第2階層のフォルダ3211、3212、3213、…、321m、321m+1、321m+2、…を含む(第1の領域)。ここで、第2階層の各フォルダ3211、3212、…は、それぞれ識別情報に対応し、フォルダ名として識別情報の文字列が用いられている。
第2階層のフォルダは、さらに第3階層のフォルダを含む(第2の領域)。例えば、図23において、第2階層のフォルダ321mは、複数の第3階層のフォルダ3221〜3225を含んでいる。これら第3階層のフォルダ3221〜3225は、ユーザ画像および属性情報の組が格納される。また、第3階層のフォルダは、当該フォルダに格納されるユーザ画像および属性情報が画像解析部200aにより取得された時間を示す時間情報が、フォルダ名として用いられている。
このように、第3階層のフォルダ名を時間情報に基づき決めることで、同一の識別情報に関連付けられる複数のユーザ画像および属性情報の組の一意性が保証される。また、第2階層のフォルダのフォルダ名を、識別情報を用いて決めているため、ある第2階層のフォルダと同一の識別情報が関連付けられたユーザ画像および属性情報の組は、当該フォルダに追加して格納される。
管理領域をこのような構成とすることで、PC10aに搭載されるOS(Operating System)のファイルシステムを用いて識別情報、ユーザ画像および属性情報の管理が可能であり、指定した識別画像に関連付けられた複数のユーザ画像および属性情報の組を容易に取得することができる。
図23において、表示領域302は、第3階層のフォルダ3221の内容が表示されている。この例では、表示領域302は、第3階層のフォルダ3221に対して、ユーザ画像が格納されるファイル310と、属性情報が格納されるファイル311とが格納されていることを表示している。
図24は、第1の実施形態に係る、属性情報が格納されるファイル311の構成の例を示す。この例では、ファイル311は、属性情報312と、当該属性情報312に関連付けられた識別情報313とが格納される。
説明は図21に戻り、登録部201は、ステップS63でユーザ画像DB230内に上述のようにして管理領域を生成すると、次のステップS64で、生成した管理領域に、ステップS61で画像解析部200aから受け取ったユーザ画像、属性情報および識別情報を格納する。
ここで、ステップS64で管理領域に格納されたユーザ画像、属性情報および識別情報は、表示のために表示制御部210aに読み出される。表示制御部210aは、ユーザ画像DB230から、新規に登録されたユーザ画像、属性情報および識別情報を読み出す。また、表示制御部210aは、表示画像DB231に表示キュー領域を生成する(ステップS65)。なお、表示キュー領域は、ステップS63で生成される管理領域と同一の構成を適用できるので、ここでの説明を省略する。
表示制御部210aは、ユーザ画像DB230から読み出したユーザ画像、属性情報および識別情報を、生成した表示キュー領域231に格納する(ステップS66)。表示制御部210aは、この表示キュー領域に格納されたユーザ画像を用いて、ユーザオブジェクトを画像100内に表示させる。
次のステップS67で、表示制御部210aは、表示キュー領域に格納されるユーザ画像数を計数する。例えば、表示制御部210aは、表示キュー領域において、ユーザ画像および属性情報の組が格納される第3階層のフォルダの数を、それぞれ識別情報に対応する第2階層の各フォルダについて合計した値を、表示キュー領域に格納されるユーザ画像数として計数する。次にステップS68で、表示制御部210aは、ステップS67で計数したユーザ画像数が所定数を超えたか否かを判定する。表示制御部210aは、超えていないと判定した場合、処理をステップS60に戻す。
一方、表示制御部210aは、計数したユーザ画像数が所定数を超えたと判定した場合、処理をステップS69に移行させ、表示キュー領域内のユーザ画像を1つ削除する。例えば、表示制御部210aは、表示キュー領域内の第3階層のフォルダのうち、最も古い時間に生成されたフォルダを削除する。これにより、画像100内に表示されるユーザオブジェクトの数を一定数に制限できる。なお、ステップS69で削除するユーザ画像の数は、1つに限られず、2以上を削除してもよい。
また、表示キュー領域に格納されるユーザ画像のうち、指定したユーザ画像の削除を禁止することができる。例えば、表示キュー領域において、予め定められたフォルダ名の第2階層のフォルダを作成し、そのフォルダ内に作成する第3階層のフォルダに、削除を禁止したいユーザ画像と、そのユーザ画像に対応する属性情報とを格納する。例えば、このフォルダに、サービス提供者のロゴマーク画像などをユーザ画像として格納しておくことで、表示キュー領域に次々にユーザ画像が格納される場合でも、ロゴマーク画像は削除されずに、画像100内に表示され続ける。
次に、ログの記録について説明する。第1の実施形態に係る表示システム1aは、システムの利用情報をログ情報に記憶させることができる。より具体的には、PC10aは、画像解析部200aおよび表示制御部210aにおいて識別画像41を取得した際に、少なくとも識別画像41を取得した時間と、当該識別画像41を復号した識別情報とを関連付けた利用情報を、ログ情報として記憶する。
図25は、第1の実施形態に係るログ情報の一例を示す。なお、図25において、説明のため、各行の先頭に、ログ情報の本体とコロン(:)で区切って行番号を付している。図25において、ログ情報330は、例えば第1行目および第10行目に、第1の実施形態に係るプログラムの開始および終了時間がそれぞれ記憶される。この開始間および終了時間の間に、ユーザ画像毎に利用情報が記憶される(例えば第2行目〜第9行目)。
図25の例では、利用情報は、「利用日時」(Date)と、「イベント」(Event)と、第3階層すなわちユーザ画像および属性情報が格納される「フォルダ名」(DaseName)と、「識別情報」(ID)と、「属性種類」(Type)の各項目を含む。なお、項目「イベント」は、例えば「追加」および「検索」の何れかの値を取るものとする。この場合、項目「イベント」の値が値「追加」であれば、その利用情報が、新規追加したユーザ画像に関する利用情報であることを示し、値「検索」であれば、その利用情報がユーザ画像DB230から検索して取得したユーザ画像に関するものであることを示す。また、利用情報に含まれる項目「フォルダ名」の情報と項目「識別情報」の情報とを用いることで、ユーザ画像DB230または表示画像DB231におけるフォルダを特定することができる。
このログ情報330の各利用情報を集計することで、システムの利用率などを分析することができる。なお、ログ情報330は、例えばストレージ1006に記憶される。これに限らず、ログ情報330は、ユーザ画像DB230または表示画像DB231の所定の領域に記憶しておいてもよい。
第1の実施形態では、ログ情報330をユーザ画像の検索に利用することができる。図26は、第1の実施形態に係るログ情報330を用いたユーザ画像の検索処理を示す一例のフローチャートである。ステップS80で、表示制御部210aにおいて、識別情報取得部2102は、識別画像読取装置21から供給された識別画像41を復号して識別情報を取得する。次のステップS81で、表示制御部210aにおいて、画像管理部2101は、ログ情報330から、項目「識別情報」の値が取得した識別情報と一致する利用情報を検索する。
次のステップS82で、画像管理部2101は、ステップS81で検索された各利用情報に対して、例えば当日の日付で絞り込みを行う。そして、次のステップS83で、画像管理部2101は、絞り込んだ利用情報の数を取得する。一例として、画像管理部2101は、利用情報の項目「イベント」を参照し、項目「イベント」の値が「検索」である利用情報を抽出し、項目「利用日時」の値に基づき、抽出した利用情報のうち当日の日付で時間が異なる利用情報の数を取得する。
次のステップS84で、画像管理部2101は、取得した利用情報の数が閾値を超えたか否かを判定する。画像管理部2101は、利用情報の数が閾値を超えたと判定した場合、エラーであるとして処理をステップS86に移行させ、エラーを示す表示を行うよう、例えば画像制御部2103aに依頼する。
一方、画像管理部2101は、ステップS84で利用情報の数が閾値以下であると判定した場合、処理をステップS85に移行させる。ステップS85で、画像管理部2101は、ステップS82で絞り込んだ各利用情報の項目「識別情報」および項目「フォルダ名」の情報に基づきユーザ画像DB230を検索し、次のステップS87で、検索結果のユーザ画像を特定する。
次のステップS88で、画像管理部2101は、特定されたユーザ画像のうち表示キュー領域に含まれるユーザ画像が存在するか否かを判定する。例えば、画像管理部2101は、ステップS82で絞り込んだ各利用情報の項目「識別情報」および項目「フォルダ名」に基づき表示画像DB231を検索して、これらの項目に一致するフォルダが存在するか否かを確認する。
画像管理部2101は、特定されたユーザ画像が表示キュー領域に含まれないと判定した場合、処理をステップS89に移行させる。ステップS89で、画像管理部2101は、ステップS87で特定されたユーザ画像をユーザ画像DB230から取得して、取得した各ユーザ画像を画像100内に表示させるように、画像制御部2103aに指示する。画像管理部2101は、ステップS89でユーザ画像の画像100内への表示を指示すると、処理をステップS92に移行させる。
一方、画像管理部2101は、ステップS88で、特定されたユーザ画像に表示キュー領域に含まれるユーザ画像が存在すると判定した場合、処理をステップS90に移行させる。ステップS90で、画像管理部2101は、特定されたユーザ画像のうち、表示キュー領域に含まれる、すなわち、既に画像100内にユーザオブジェクトとして表示されているユーザ画像を抽出する。そして、画像管理部2101は、画像制御部2103aに対して、抽出した各ユーザ画像によるユーザオブジェクトを強調表示させるように指示する。
次にステップS91で、画像管理部2101は、ステップS87で特定されたユーザ画像のうち、表示キュー領域に含まれるユーザ画像に対する差分のユーザ画像、すなわち、ステップS87で特定されたユーザ画像であって、且つ、表示キュー領域に含まれないユーザ画像を特定する。そして、画像管理部2101は、特定したユーザ画像をユーザ画像DB230から取得して、取得したユーザ画像を画像100内に表示させるように、画像制御部2103aに指示する。
処理はステップS92に移行され、画像管理部2101は、ステップS91またはステップS89で画像100内に表示されたユーザ画像を、識別情報および属性情報と関連付けて表示キュー領域に格納する。このとき、画像管理部2101は、上述のステップS90で表示キュー領域に含まれると判定したユーザ画像についても、改めて、表示キュー領域に格納する。これは、画像100内に既に表示されているユーザオブジェクトが、表示数制限のために削除されないようにするためである。
そして、次のステップS93で、画像管理部2101は、項目「イベント」が値「検索」である利用情報、すなわち、識別情報によるユーザ画像の検索が行われたことを示す利用情報を、ログ情報330に記憶する。
なお、上述では、ステップS84で、取得した利用情報の数が閾値が超えたと判定した場合に、エラーであるとして処理しているが、これはこの例に限定されない。例えば、この利用情報数の閾値判定を行わなくてもよい。また、利用情報数の閾値判定の判定結果は、検索の利用回数の制限を用途とするのに限られず、例えば、所定の効果画像の表示など、利用回数が多いことに関して、ユーザに対して何らかのメッセージを提示することも考えられる。
また、ステップS84の利用情報数の閾値判定を行わない場合、ステップS82の検索により絞り込まれた利用情報の数が多くなり過ぎ、画像100内に表示されるユーザオブジェクトが、この検索により取得されたユーザ画像によるユーザオブジェクトで独占状態になってしまう可能性がある。そのため、この図26のフローチャートの処理においても、上述の図21のフローチャートの処理と同様に、表示キュー領域内のユーザ画像数を制限することが考えられる。
(第1の実施形態の第1の変形例)
次に、第1の実施形態の第1の変形例について説明する。第1の実施形態の第1の変形例は、上述した第1の実施形態によるユーザオブジェクトの表示処理に対して付加処理を追加可能としたものである。付加処理は、例えば、用紙50にユーザが描画した絵45に基づくユーザ画像に対して、メーカのロゴ画像やマスコットキャラクタの画像を付加して表示させる処理が考えられる。
第1の実施形態の第1の変形例では、付加処理の追加を実現するために、例えば、付加処理を示す情報を識別情報に含ませた付加処理用識別情報を生成し、この付加処理用識別情報を画像に符号化して識別画像41を生成し、媒体40上に表示させる。
第1の実施形態の第1の変形例では、上述した式(1)で示した識別情報を、管理用識別情報として、下記の式(2)のように変更する。また、第1の実施形態の第1の変形例に係る、付加処理用識別情報は、例えば下記の式(3)のような構成を適用できる。
管理用識別情報=固定コード+管理用コード+時間情報 …(2)
付加処理用識別情報=固定コード+処理用コード+所定の値 …(3)
式(2)において、「管理用コード」は、この識別情報が、ユーザ画像DB230内に格納されるユーザ画像毎の識別に用いる管理用識別情報であることを示す。「固定コード」および「時間情報」は、上述の式(1)と同様である。
一方、式(3)において、「処理用コード」は、この識別情報が、ユーザオブジェクトの表示処理に対して付加処理を追加するための付加処理用識別情報であることを示す。また、「所定の値」は、例えば追加する付加処理を選択または指定するために利用可能である。
管理用識別情報は、識別画像41を生成した時間を示す時間情報が含まれているため、ユーザ画像毎に異なる値となる。すなわち、管理用識別情報を用いた場合、媒体40毎にユニークな識別画像41が表示される。これに対して、付加処理用識別情報は、例えば同一の付加処理に対して共通の値が用いられる。この場合、複数の媒体40に同一の識別画像41が表示されることになる。
図27は、第1の実施形態の第1の変形例に係る表示システムの動作を制御するためのPCの機能を示す一例の機能ブロック図である。なお、図27において、上述した図13と共通する部分には同一の符号を付して、詳細な説明を省略する。また、表示システムは、図1で示した第1の実施形態に係る表示システム1aの構成をそのまま適用できるので、ここでの説明を省略する。
図27において、PC10bは、図13で示したPC10aに対して付加処理用DB232が追加して接続される。付加処理用DB232は、例えば図1のDB12aに含むことができる。付加処理用DB232は、付加処理として追加するための情報が、例えば付加処理用識別情報に含まれる「所定の値」に関連付けられて格納される。付加処理として追加するための情報(付加処理情報)は、特に限定されないが、例えば所定の画像(付加画像)を適用することができる。
また、PC10bに含まれる画像解析部200bおよび表示制御部210bは、図13の画像解析部200aおよび表示制御部210aに対して、付加処理を実行するための機能が追加されている。
図28は、第1の実施形態の第1の変形例に係る、画像取得装置20により取得した画像を表示させる場合の処理を概略的に示す一例のフローチャートである。なお、図28において、上述した図16と共通する処理には同一の符号を付して、詳細な説明を省略する。図28の処理に先立って、ユーザは、処理用識別情報に基づく識別画像41が表示された媒体40と用紙50とを用意し、用紙50に所定に描画などを行って画像読取装置20にセットし、当該媒体40を用紙50上の載置領域44に載置して、画像取得装置20による画像の取得処理を開始させる。画像取得装置20は、取得した画像をPC10bに送信する。
PC10bは、画像取得装置20から送信された画像を受信して画像解析部200bに供給する。画像解析部200bは、供給された画像を取得し(ステップS10)。次のステップS11で、画像解析部200bは、供給された画像から手描き領域43および属性設定領域42をそれぞれ検出し、検出された各領域からユーザ画像および属性情報を抽出する。また、画像解析部200bは、供給された画像から識別画像を抽出し、抽出した識別画像を復号して識別情報を取得する。
次のステップS12で、登録部201は、ステップS11で抽出されたユーサ画像および属性情報を、識別情報に関連付けてユーザ画像DB230に格納し、ユーザ画像の登録を行う。次のステップS13で、表示制御部210bは、ユーザ画像に対して、既に説明したようにして、表示を制御するためのパラメータp0〜p7を設定する。
次のステップS100で、表示制御部210bは、識別情報が付加処理用か否かを判定する。すなわち、表示制御部210bは、識別情報に付加処理用コードが含まれている場合、当該識別情報が付加処理用識別情報であると判定する。表示制御部210bは、当該識別情報が付加処理用識別情報ではないと判定すると、処理をステップS12に移行させ、ステップS11で抽出されたユーサ画像および属性情報を、識別情報に関連付けてユーザ画像DB230に格納し、ユーザ画像の登録を行う。そして、処理がステップS14に移行される。
一方、表示制御部210bは、当該識別情報が付加処理用識別情報であると判定した場合、処理をステップS101に移行させる。ステップS101で、表示制御部210bは、付加処理用識別情報に基づき付加処理用DB232から付加情報を検索し、検索された付加処理情報に従った処理を実行する。一例として、付加処理情報が付加画像である場合、表示制御部210bは、ユーザ画像と付加画像とを合成したユーザオブジェクトを画像100内に表示させる。そして、処理がステップS14に移行される。
ステップS14で、表示制御部210bは、パラメータpが設定されたユーザ画像に対して定義領域内の座標を設定し、背景画像110と合成して画像100を生成する。これにより、ユーザ画像が、定義領域として定義される3D空間内に、ユーザオブジェクトとして表示されることになる。
このように、第1の実施形態の第1の変形例では、付加処理用の付加処理情報を含む識別情報に基づく識別画像41を、複数の媒体40に共通に表示させているため、複数の媒体40に共通の付加処理を実行することができる。そのため、例えば、サービス提供者は、サービス提供者独自の付加処理を複数のユーザに共通して提供することができる。これにより、例えば、サービス提供者は、自身のブランドなどを活用したイベントを容易に展開することができる。
(第1の実施形態に第2の変形例)
次に、第1の実施形態の第2の変形例について説明する。上述した第1の実施形態の第1の変形例では、識別情報が複数の媒体40間で共通とされているので、付加処理を複数の媒体40間で共通可能である一方、ユーザ画像を識別情報に基づき管理する用途には適していない。これに対して、第1の実施形態の第2の変形例では、付加処理を複数の媒体40で共通して提供可能とすると共に、ユーザ画像の識別情報に基づく管理も可能とする。
より具体的には、第1の実施形態の第2の変形例では、識別情報として、上述の式(1)または式(2)に示される、媒体40毎に異なる値を用いる。そして、媒体40に対して、識別画像41と共に、例えばサービス提供者が指定する画像(ロゴ画像とする)を表示させる。このとき、複数の媒体40に対して共通のロゴ画像を表示させる。また、ロゴ画像は、付加処理情報と関連付けてデータベースなどに予め格納しておく。媒体40から識別画像41を取得すると共に、ロゴ画像を取得し、取得したロゴ画像に基づき、当該ロゴ画像に関連付けられた付加処理情報を検索する。これにより、サービス提供者独自の付加処理を複数のユーザに共通して提供可能であると共に、ユーザ画像を識別情報に基づき管理することが可能となる。
図29は、第1の実施形態の第2の変形例に係る、識別画像と共にロゴ画像が表示された媒体40’の例を示す。媒体40’において、識別画像41と共にロゴ画像60が表示されている。識別画像41とロゴ画像60の位置関係および大きさは、特に限定されない。
図30は、第1の実施形態の第2の変形例に係る表示システムの動作を制御するためのPCの機能を示す一例の機能ブロック図である。なお、図30において、上述した図27と共通する部分には同一の符号を付して、詳細な説明を省略する。また、表示システムは、図1で示した第1の実施形態に係る表示システム1aの構成をそのまま適用できるので、ここでの説明を省略する。
図30において、PC10cは、図27で示したPC10bに対してロゴ画像DB233が追加して接続される。ロゴ画像DB233は、例えば図1のDB12aに含むことができる。ロゴ画像DB233は、ロゴ画像60を示す情報(例えばロゴ画像60の特徴を示す特徴情報)と付加処理情報とが関連付けられて格納される。ロゴ画像60そのものを付加処理情報と関連付けてロゴ画像DB233に格納してもよい。
また、PC10cに含まれる画像解析部200cおよび表示制御部210cは、図27の画像解析部200bおよび表示制御部210bに対して、ロゴ画像に対する処理を実行するための機能が追加されている。例えば、画像解析部200cは、画像取得装置20から供給された画像の、媒体40の領域から、識別画像41を取得すると共に、ロゴ画像60をさらに取得する機能を有する。
また、第1の実施形態の第2の変形例では、識別画像読取装置21は、媒体40の画像そのものをPC10cに送信するものとする。表示制御部210cは、識別画像読取装置21から供給された画像から識別画像41およびロゴ画像60を取得することができる。さらに、表示制御部210cは、取得したロゴ画像60に基づきロゴ画像DB233を検索し、対応する付加処理情報を取得することができる。例えば、表示制御部210cは、取得したロゴ画像60を解析して特徴情報を抽出し、ロゴ画像233に、抽出した特徴情報と対応する特徴情報を検索する。そして、表示制御部210cは、検索の結果得られた特徴情報に関連付けられた付加処理情報を、ロゴ画像DB233から取得する。
図31は、第1の実施形態の第2の変形例に係る、画像取得装置20により取得した画像を表示させる場合の処理を概略的に示す一例のフローチャートである。なお、図31において、上述した図28と共通する処理には同一の符号を付して、詳細な説明を省略する。
図31の処理に先立って、ユーザは、管理用識別情報に基づく識別画像41が表示された媒体40と用紙50とを用意し、用紙50に所定に描画などを行って画像読取装置20にセットし、当該媒体40を用紙50上の載置領域44に載置して、画像取得装置20による画像の取得処理を開始させる。画像取得装置20は、取得した画像をPC10cに送信する。
PC10cは、画像取得装置20から送信された画像を受信して画像解析部200cに供給する。画像解析部200cは、供給された画像を取得し(ステップS10)。次のステップS11で、画像解析部200bは、供給された画像から手描き領域43および属性設定領域42をそれぞれ検出し、検出された各領域からユーザ画像および属性情報を抽出する。また、画像解析部200cは、供給された画像から識別画像を抽出し、抽出した識別画像を復号して識別情報を取得する。
次のステップS12で、登録部201は、ステップS11で抽出されたユーサ画像および属性情報を、識別情報に関連付けてユーザ画像DB230に格納し、ユーザ画像の登録を行う。次のステップS13で、表示制御部210cは、ユーザ画像に対して、既に説明したようにして、表示を制御するためのパラメータp0〜p7を設定する。
次のステップS120で、表示制御部210cは、ステップS11の処理結果に基づき、画像取得装置20から送信された画像の媒体40の領域から、識別画像41以外の画像が検出されたか否かを判定する。表示制御部210cは、検出されないと判定した場合、処理をステップS14に移行させる。
一方、表示制御部210cは、ステップS120で、媒体40の領域から、識別画像41以外の画像が検出されたと判定した場合、処理をステップS121に移行させ、当該画像を取得する。次のステップS122で、表示制御部210cは、当該画像に基づきロゴ画像DB233を検索する。
次のステップS123で、表示制御部210cは、ステップS122の検索結果に基づき、ステップS121で取得された画像と一致するロゴ画像がロゴ画像DB233に登録されているか否かを判定する。表示制御部210cは、登録されていないと判定した場合、処理をステップS14に移行させる。
一方、表示制御部210cは、ステップS123で、ステップS121で取得された画像と一致するロゴ画像がロゴ画像DB233に登録されていると判定した場合、処理をステップS124に移行させる。ステップS124で、表示制御部210cは、ロゴ画像DB233から、検索されたロゴ画像に関連付けられた付加処理情報を取得する。そして、次のステップS125で、表示制御部210cは、取得した付加処理情報に従った処理を実行する。そして、処理をステップS14に移行させる。
ステップS14で、表示制御部210cは、パラメータpが設定されたユーザ画像に対して定義領域内の座標を設定し、背景画像110と合成して画像100を生成する。これにより、ユーザ画像が、定義領域として定義される3D空間内に、ユーザオブジェクトとして表示される。
図32は、第1の実施形態の第2の変形例に係る、識別画像読取装置21により媒体40’の画像を取得した場合の処理を概略的に示す一例のフローチャートである。なお、図32において、上述した図17および図31と共通する処理には同一の符号を付して、詳細な説明を省略する。図32のフローチャートによる処理に先立って、ユーザは、例えば上述の図16のフローチャートに従い、ユーザ画像を識別情報に関連付けてユーザ画像DB230に登録しておく。
ユーザが識別画像41およびロゴ画像60が表示された媒体40’を識別画像読取装置21にセットし、識別画像読取装置21に対するユーザ操作などにより、媒体40’の画像の読み取りを指示する。識別画像読取装置21は、この指示に応じて、媒体40’の画像を読み取ってPC10cに送信する。
PC10cは、識別画像読取装置21から送信された画像を受信して、表示制御部210cに供給する。表示制御部210cは、供給された画像から識別画像41を取得する(ステップS20)。次のステップS21で、表示制御部210aは、識別画像41を復号して識別情報を取得し、取得した識別情報に関連付けられたユーザ画像をユーザ画像DB230から検索する。次のステップS22で、表示制御部210cは、ユーザ画像DB230から検索された各ユーザ画像に基づき、図16のステップS13の処理と同様にして各パラメータp0〜p7を決定し、各ユーザ画像に設定する。
以下、ステップS120〜ステップS125の処理は、図31と同様である。すなわち、ステップS120で、表示制御部210cは、ステップS21の処理結果に基づき、識別画像読取装置21から送信された画像の媒体40’の領域から、識別画像41以外の画像が検出されたか否かを判定する。表示制御部210cは、検出されないと判定した場合、処理をステップS23に移行させる。
一方、表示制御部210cは、ステップS120で、媒体40’の領域から、識別画像41以外の画像が検出されたと判定した場合、処理をステップS121に移行させ、当該画像を取得し、取得した画像に基づきロゴ画像DB233を検索する(ステップS122)。次のステップS123で、表示制御部210cは、ステップS122の検索結果に基づき、ステップS121で取得された画像と一致するロゴ画像がロゴ画像DB233に登録されているか否かを判定する。表示制御部210cは、登録されていないと判定した場合、処理をステップS23に移行させる。
一方、表示制御部210cは、ステップS123で、ステップS121で取得された画像と一致するロゴ画像がロゴ画像DB233に登録されていると判定した場合、処理をステップS124に移行させる。ステップS124で、表示制御部210cは、ロゴ画像DB233から、検索されたロゴ画像に関連付けられた付加処理情報を取得し、次のステップS125で、表示制御部210cは、取得した付加処理情報に従った処理を実行する。そして、処理をステップS23に移行させる。
次のステップS23で、表示制御部210cは、パラメータpが設定されたユーザ画像に対して定義領域内の座標を設定し、背景画像110と合成して画像100を生成する。これにより、ユーザ画像DB230において識別画像41に基づく識別情報に関連付けられた各ユーザ画像が、定義領域として定義される3D空間内に、ユーザオブジェクトとして表示される。
(第2の実施形態)
次に、第2の実施形態について説明する。第2の実施形態は、音情報を取得し、取得した音情報に基づき画像100内に表示されるユーザオブジェクトに変化を与える。図33は、第2の実施形態に係る表示システムの一例の構成を示す。なお、図33において、上述した図1と共通する部分には同一の符号を付して、詳細な説明を省略する。
また、図33において、図1に示した画像取得装置20および識別画像読取装置21は、省略されている。さらに、図33に示されるPC10dは、図12を用いて説明した構成をそのまま適用できる。
図33において、表示システム1dは、被投射媒体14の近傍に、収音を行うためのマイクロホン15が設置され、マイクロホン15から出力された音信号がPC10dに供給される。なお、マイクロホン15からアナログ形式で出力された音信号は、A/D変換器によりディジタル形式の音信号に変換されてPC10dに供給される。このディジタル形式の音信号は、例えば、PC10dが有するデータI/F1007に入力される。
DB12dは、上述したDB12aに対し、さらに、音に関する情報が格納される。例えば、DB12dは、音パターンとユーザ画像とを関連付けて格納することができる。
このような構成において、ユーザは、ユーザ画像および属性情報を、識別情報と関連付けてDB12dに格納しておく。また、ユーザは、音パターンを指定し、指定した音パーンを当該識別情報と関連付けてDB12dに格納しておく。この状態で、ユーザは、登録した音パターンに従った音を、例えばマイクロホン15による収音が可能な位置で発生させる。音パターンは、例えば一定のリズムパターンであり、手拍子などにより表現することができる。
音パターンに従った音は、マイクロホン15で収音され音信号に変換されてPC10dに供給される。PC10dは、供給された音信号を解析して音パターンを抽出し、抽出した音パターンと一致する音パターンをDB12dから検索する。PC10dは、この結果、抽出した音パターンに一致する音パターンがDB12dから検索されると、検索された音パターンに関連付けられた識別情報を取得する。
取得した識別情報に関連付けられたユーザ画像によるユーザオブジェクトが既に画像100内に表示されている場合は、音が発生した位置、すなわち、マイクロホン15の位置に向けて、各ユーザオブジェクトが移動する。このとき、例えば図34に例示されるように、マイクロホン15の位置に対応する画像100の位置16に対して、画像100内において所定の範囲17内に存在するユーザオブジェクトが選択的に、位置18に向けて移動するように制御される。
また、取得した識別情報に関連付けられたユーザ画像によるユーザオブジェクトが画像100内に表示されていない場合は、PC10dは、DB12dから当該識別情報に関連付けられたユーザ画像を取得して、画像100内にユーザオブジェクトとして表示させる。このとき、ユーザオブジェクトの出現位置を予め決めておくことができる。例えば、この出現位置を、画像100内の左右何れかの端部とすることが考えられる。
図35は、第2の実施形態に係るPC10dの機能を示す一例の機能ブロック図である。なお、図35において、上述した図13と共通する部分には同一の符号を付して、詳細な説明を省略する。図35において、PC10dは、図13に示したPC10aの構成に対して音声処理部240が追加されている。画像解析部200d、登録部201dおよび表示制御部210dは、図13に示す画像解析部200、登録部201および表示制御部210aに対して、音情報の処理に関する機能が追加されている。また、ユーザ画像DB230は、識別情報またはユーザ画像に対して、音情報をさらに関連付けて格納することができる。
図36は、第2の実施形態に係る表示制御部210dの機能を示す一例の機能ブロック図である。なお、図36において、上述した図15と共通する部分には同一の符号を付して、詳細な説明を省略する。図36において、表示制御部210dは、図15に示した表示制御部210aに対して音パターン検出部2108が追加されている。また、画像管理部2101dおよび画像制御部2103cは、上述の画像管理部2101および画像制御部2103aに対して、それぞれ音情報に基づく処理を行う機能が追加されている。
マイクロホン15から出力されディジタル方式の信号に変換された音信号は、音声処理部240に供給される。音声処理部240は、供給された音信号に対して所定の信号処理を施して、音情報として表示制御部210dに供給する。この音情報は、表示制御部210dにおいて音パターン検出部2108に供給される。音パターン検出部2108は、供給された音情報に基づき音パターン検出する。検出された音パターンは、画像管理部2101dに供給される。画像管理部2101dは、供給された音パターンに基づきユーザ画像DB230を検索し、検索の結果得られた識別情報、あるいは、ユーザ画像を示す情報を画像制御部2103dに供給する。
図37は、第2の実施形態に係る、ユーザが音パターンを指定するための一例のフォーマットを示す。図37(a)に示されるように、音パターン指定領域420に対して、音パターンを指定するためのパターン指定部421が設けられる。この例では、パターン指定部421は、8個のチェックボックスが並べられて形成される。これら8個のチェックボックスは、8拍の拍子に対応付けることでき、空白のチェックボックスが休符、塗り潰されてチェックされたチェックボックスが音符と考えることができる。図37(b)は、一部のチェックボックスが塗り潰されたパターン指定部421’の例を示す。例えば、このパターン指定部421’に示される音符および休符に従い一定の速度で音を発生させることで、パターン指定部421’に指定される音パターンを発生させることができる。
この図37(a)に例示される音パターン指定領域420は、例えば用紙50に対して、属性設定領域42、手描き領域43および載置領域44に対して追加して配置される。この場合、音パターン指定領域420に指定される音パターンは、ユーザ画像に関連付けられることになる。これに限らず、音パターン指定領域420を、属性設定領域42、手描き領域43および載置領域44が配置される用紙50とは別の用紙に配置してもよい。この場合は、音パターン指定領域420に指定される音パターンを、例えば識別情報に関連付けることができる。
以下では、説明のため、音パターン指定領域420が、属性設定領域42、手描き領域43および載置領域44と共に用紙50に配置されるものとする。すなわち、音パターンは、ユーザ画像と関連付けられる。
なお、この場合であっても、例えば音パターン指定領域420を含む用紙を用紙50とは別途用意して、媒体40と同様に用紙50上に載置することで、複数のユーザ画像に対して同一の音パターンを関連付けることが可能となる。
また、上述では、音パターン指定領域420により音パターンを直接的に指定するように説明したが、これはこの例に限定されない。例えば、予め用意された複数の音パターンから所望の音パターンを選択するようにもできる。
さらに、上述では、音パターン指定領域420にチェックすることで、音パターンを登録したが、これはこの例に限定されない。例えば、ユーザが実際に発生させた音パターンに基づき音パターンの登録を行うこともできる。例えば、ユーザが例えば手拍子などにより発生された音パターンを、マイクロホン15により収音し、音信号としてPC10dに供給する。PC10dは、供給された音信号を解析して音パターンを検出し、媒体40に表示された識別画像41から取得した識別情報に関連付けて、ユーザ画像DB230に登録する。
この場合、PC10dなどにより、音パターン登録を促すメッセージと、登録開始(録音開始)を指示するユーザインタフェースを表示させるとよい。さらに、一定間隔で発音するクリック音などを発生させると、音パターンの登録をより容易に実行することができる。
図38は、第2の実施形態に係る、画像取得装置20により取得した画像を表示させる場合の処理を概略的に示す一例のフローチャートである。なお、図38において、上述した図16と共通する処理には同一の符号を付して、詳細な説明を省略する。
図38の処理に先立って、ユーザは、処理用識別情報に基づく識別画像41が表示された媒体40と用紙50とを用意し、用紙50に所定に描画などを行い、また、用紙50に配置される音パターン指定領域420に対して音パターンの指定を行う。その後、用紙50を画像読取装置20にセットし、当該媒体40を用紙50上の載置領域44に載置して、画像取得装置20による画像の取得処理を開始させる。画像取得装置20は、取得した画像をPC10dに送信する。
PC10dは、画像取得装置20から送信された画像を受信して画像解析部200bに供給する。画像解析部200bは、供給された画像を取得し(ステップS10)。次のステップS210で、画像解析部200bは、供給された画像から手描き領域43、属性設定領域42および音パターン指定領域420をそれぞれ検出し、検出された各領域からユーザ画像、属性情報および音パターン情報を抽出する。また、画像解析部200は、供給された画像から識別画像を抽出し、抽出した識別画像を復号して識別情報を取得する。
次のステップS12で、登録部201は、ステップS210で抽出されたユーサ画像、属性情報および音パターン情報を、識別情報に関連付けてユーザ画像DB230に格納し、ユーザ画像の登録を行う。例えば、登録部201は、図23を用いて説明した、第3階層のフォルダに、ユーザ画像および属性情報と共に、音パターン情報を格納する。なお、音パターン情報を、第2階層のフォルダに直接的に格納することで、第3階層の各フォルダに格納される各ユーザ画像に対して共通の音パターン情報を関連付けることが可能である。
次のステップS13で、表示制御部210dは、ユーザ画像に対して、既に説明したようにして、表示を制御するためのパラメータp0〜p7を設定する。そして、ステップS14で、表示制御部210dは、パラメータpが設定されたユーザ画像に対して定義領域内の座標を設定し、背景画像110と合成して画像100を生成する。これにより、ユーザ画像が、定義領域として定義される3D空間内に、ユーザオブジェクトとして表示される。
図39は、第2の実施形態に係る、音パターンに基づくユーザ画像の表示処理を概略的に示す一例のフローチャートである。図39のフローチャートによる処理に先立って、ユーザは、例えば上述の図38のフローチャートに従い、ユーザ画像、属性情報および音パターン情報を識別情報に関連付けてユーザ画像DB230に登録しておく。
ユーザがマイクロホン15に向かって、例えば手拍子などにより、用紙50の音パターン指定領域420に指定した音パターンを発生させる。マイクロホン15から出力された音信号は、PC10dに入力されて音声処理部240を介して音情報として表示制御部210dに供給される。表示制御部210dは、音パターン検出部2108により、供給された音情報に基づき音パターンを解析する。例えば、音パターン検出部2108は、音情報に基づき音信号のレベルを正規化し、正規化されたレベルに対して閾値判定を行い、音パターンを検出することが考えられる。
次のステップS201で、表示制御部210dは、検出された音パターン基づきユーザ画像DB230を検索し、当該音パターンに関連付けられたユーザ画像をユーザ画像DB230から取得する。次のステップS202で、表示制御部210dは、ステップS201で取得したユーザ画像に対して、図16のステップS13の処理と同様にして各パラメータp0〜p7を決定し、各ユーザ画像に設定する。
そして、次のステップS203で、表示制御部210dは、パラメータpが設定されたユーザ画像に対して定義領域内の座標を設定し、背景画像110と合成して画像100を生成する。これにより、音パターンに関連付けられた各ユーザ画像が、定義領域として定義される3D空間内に、ユーザオブジェクトとして表示される。
なお、ステップS203において、各ユーザオブジェクトは、画像100内に新規に出現して表示されることになる。このとき、ユーザオブジェクトの出現位置を予め決めておくことができる。例えば、この出現位置を、画像100内の左右何れかの端部とすることが考えられる。
図40は、第2の実施形態に係る、音パターンが関連付けられたユーザ画像によるユーザオブジェクトが既に画像100内に表示されている場合の表示処理を示す一例のフローチャートである。PC10dにおいて、表示制御部210dは、マイクロホン15による収音を開始する(ステップS220)。
次のステップS221で、表示制御部210dは、一定時間の間、音が検出されなかったか否かを判定する。例えば、表示制御部210dは、RAM1003をバッファメモリとして用い、想定される音パターンに応じた長さの音信号を記憶し、記憶された音信号に基づき音の有無を判定する。表示制御部210dは、一定時間の間、音が検出されなかったと判定した場合、処理をステップS221に戻す。
なお、このステップS221の処理は、少しずつ時間をずらしながら繰り返し実行される。また、バッファメモリには、収音が終了されるまで、少しずつ時間をずらしながら、常に一定時間分の音信号が記憶される。
表示制御部210dは、一定時間内に音が検出されたと判定した場合、処理をステップS222に移行させる。ステップS222では、音が検出された位置に対応する画像100内の座標を取得する。
上述の図33の例では、1本のマイクロホン15が配置されているのみであるので、音が検出された位置は、このマイクロホン15の位置に対応する。これに限らず、被投射媒体14の両端にそれぞれ1本ずつマイクロホンを設置し、ステレオで収音を行ってもよい。ステレオで収音を行った場合は、被投射媒体14の水平方向の任意の位置が音検出位置となり得る。
次のステップS223で。表示制御部210dは、バッファメモリに記憶された音信号に基づき音パターンの解析を行う。次のステップS224で、表示制御部210dは、ステップS223で解析され取得された音パターンと、ユーザ画像DB230に登録されている音パターンとを比較する。そして、次のステップS225で、表示制御部210dは、ユーザ画像DB230内に、ステップS223で取得された音パターンと一致する音バターンが存在するか否かを判定する。表示制御部210dは、一致する音パターンが存在しないと判定した場合、処理をステップS221に戻す。
一方、表示制御部210dは、一致する音パターンが存在すると判定した場合、処理をステップS226に移行させる。ステップS226で、表示制御部210dは、この一致する音パターンに関連付けられたユーザ画像を、表示キュー領域から取得する。次のステップS227で、表示制御部210dは、表示キュー領域から取得したユーザ画像に対応するユーザオブジェクトを、ステップS222で取得された、音が検出された座標に向けて移動させる。そして、表示制御部210dは、処理をステップS221に戻す。
このように、音の検出に応じてユーザオブジェクトの動きを制御することで、ユーザオブジェクトの動きに対してインタラクティブ性を持たせることができる。
なお、上述では、音パターンの検出をマイクロホン15で収音された音に基づき行っているが、これはこの例に限られない。例えば、楽器様の器具を用いて音パターンの検出を行ってもよい。一例として、カスタネットのような打楽器にスイッチを設け、叩かれた際に信号を出力するようにした器具を用いることが考えられる。この器具の信号出力をPC10dに供給する。PC10dは、器具から供給された信号を解析して、音パターンを検出する。このとき、器具の出力信号に、器具の位置情報を含めることで、ステップS227による座標に応じた制御が可能となる。器具の位置情報は、器具に予め設定することが考えられる。器具の位置情報をセンサ13で検出することも可能である。
(第2の実施形態の第1の変形例)
次に、第2の実施形態の第1の変形例について説明する。この第2の実施形態の第1の変形例は、第2の実施形態の音によるユーザオブジェクトの制御に加えて、上述した第1の実施形態における、識別画像41によるユーザ画像の取得を組み合わせている。
図41は、第2の実施形態の第1の変形例による表示システムの一例の構成を示す。なお、図41において、上述した図1および図33と共通する部分には同一の符号を付して、詳細な説明を省略する。また、図41において、図1に示した画像取得装置20および識別画像読取装置21は、省略されている。
図41において、表示システム1eは、被投射媒体14の近傍、望ましくはマイクロホン15の近傍に、識別画像読取装置16が設けられる。識別画像読取装置16は、上述した識別画像読取装置21と同等の機能を有し、媒体40の画像を取得し、取得した画像から、媒体40に表示される識別画像41を読み取ってPC10eに供給する。
識別画像読取装置16は、識別画像読取装置21と別個の装置として設けてもよいし、識別画像読取装置21と共通としてもよい。また、PC10eは、構成は、図12を用いて説明したPC10aの構成を、機能は、図35を用いて説明した機能を、それぞれそのまま適用できるので、ここでの説明を省略する。例えば、識別画像読取装置16の出力は、PC10e内の表示制御部(図35の表示制御部210dに対応)に供給される。
さらに、DB12eは、上述の第2の実施形態のDB12dと同様に、音パターンとユーザ画像とを関連付けて格納することができる。より具体的には、DB12eは、ユーザ画像DB230と、表示画像DB231とを含み、ユーザ画像DB230は、ユーザ画像、属性情報および音パターン情報を、識別情報に関連付けて格納する。
図42は、第2の実施形態の第1の変形例による処理を概略的に示す一例のフローチャートである。図42のフローチャートによる処理に先立って、ユーザは、例えば上述の図38のフローチャートに従い、ユーザ画像、属性情報および音パターン情報を識別情報に関連付けてユーザ画像DB230に登録しておく。
ステップS240で、PC10eは、識別画像読取装置16により読み取られた媒体40の画像から取得された識別情報に基づきDB12eを検索し、当該識別情報に関連付けられたユーザ画像を特定する。
例えば、ユーザは、識別画像41が表示される媒体40を識別画像読取装置16にセットする。識別画像読取装置16は、ユーザ操作などによる指示に応じて、媒体40の画像を読み取り、読み取った画像をPC10eに送信する。PC10eは、識別画像読取装置16から送信された画像に含まれる識別画像41を復号して識別情報を取得する。そして、PC10eは、取得した識別情報に基づきDB12eに含まれるユーザ画像DB230を検索し、当該識別情報に関連付けられたユーザ画像を特定する。
次に、ステップS241で、PC10eは、マイクロホン15から供給された音信号に基づき音パターンを取得し、取得した音パターンに基づきDB12eを検索し、当該音パターンに関連付けられたユーザ画像を特定する。
例えば、ユーザは、予めユーザ画像に関連付けて登録しておいた音パターンを、マイクロホン15に向かって、例えば手拍子などにより発生させる。マイクロホン15から出力された音信号は、PC10eに入力される。PC10eは、図39のステップS201にて説明したようにして、入力された音信号から音パターンを検出する。そして、PC10eは、検出された音パターンに基づきDB12eに含まれるユーザ画像DB230を検索し、当該音パターンに関連付けられたユーザ画像を特定する。
次のステップS242で、PC10eは、ステップS240およびステップS241の処理結果に基づき、識別情報および音パターンに共通して特定されるユーザ画像を、3D空間内のオブジェクトとして画像100に表示させる。
例えば、PC10eは、識別情報および音パターンに共通して特定されるユーザ画像を、対応する属性情報と共に、DB12eに含まれるユーザ画像DB230から取得する。PC10eは、取得したユーザ画像に対して、属性情報に基づき図16のステップS13の処理と同様にして各パラメータp0〜p7を決定する。そして、PC10eは、各パラメータpが設定されたユーザ画像に対して定義領域内の座標を設定し、背景画像110と合成して画像100を生成する。これにより、識別情報および音パターンに共通して関連付けられた各ユーザ画像が、定義領域として定義される3D空間内に、ユーザオブジェクトとして表示される。
第2の実施形態の第1の変形例の適用例について、概略的に説明する。第2の実施形態の第1の変形例に係る表示システム1eを利用するユーザとして、例えば、親子連れのユーザ(親をユーザA、子をユーザBとする)を想定する。ユーザAは、識別画像41が表示される媒体40を識別画像読取装置16にセットして、媒体40の画像を識別画像読取装置16に読み取らせる。ここで、識別画像読取装置16は、媒体40がセットされたことを検知し、自動的に画像の読み取りを開始するように構成すると、好ましい。
ユーザBは、マイクロホン15の近傍で、予め登録しておいた音パターンを、例えば手拍子にて発生させる。これにより、識別画像41に基づく識別情報と、音パターンとに共通して特定されるユーザ画像によるユーザオブジェクトが、画像100に出現する。
この構成によれば、親であるユーザAは、子であるユーザBを見守ることができ、且つ、表示システム1eは、媒体40上の識別画像41に基づく識別情報に関連付けられたユーザ画像を特定することができる。これにより、例えばマイクロホン15の前で手拍子などによりリズムを取ると、そのリズムに関連付けられ、且つ、識別情報に関連付けられたユーザ画像を特定し、ユーザオブジェクトとして画像100内に表示させることができる。
例えば、画像100の一部(左右端の何れかが好ましい)を、ユーザオブジェクトの再入場領域として予め設定しておく。そして、画像100から退場した、例えば画像100外に移動してしまったユーザオブジェクトを再度画像100内に登場させるために、ユーザAが識別画像41が表示される媒体40を識別画像読取装置16にセットし、ユーザBが予め登録しておいたリズムで手拍子を鳴らす、といった動作を要求することで、ゲーム性を持たせながら、ユーザBのリズム感を養成することが可能である。
(第2の実施形態の第2の変形例)
図41で示した第2の実施形態の第1の変形例による表示システム1eに対し、識別画像読取装置16の近傍に、操作のガイドを提示するPCを設けると、より好ましい。図43は、第2の実施形態の第2の変形例に係る、操作ガイドのPCが設けられた表示システムの一例の構成を示す。なお、図43において、上述した図1および図41と共通する部分には同一の符号を付して、詳細な説明を省略する。また、図43において、図1に示した画像取得装置20および識別画像読取装置21は、省略されている。
図43において、表示システム1e’は、図41の表示システム1eに対してPC70が追加されている。PC70は、PC10eと同様にして、識別画像読取装置16から出力された画像に基づき識別情報を取得することができる。それと共に、PC70は、識別情報に関連付けられたユーザ画像、属性情報および音パターン情報の組を、DB12eに含まれるユーザ画像DB230から取得することができる。
なお、PC70は、図12を用いて説明したPC10aの構成をそのまま適用できるので、ここでの説明を省略する。
PC70は、識別画像読取装置16から出力された画像に基づく識別情報に関連付けられたユーザ画像をDB12eから取得し、取得したユーザ画像をPC70が備えるモニタに表示させることができる。このとき、PC70は、取得したユーザ画像のサイズを縮小してサムネイル画像を生成し、このサムネイル画像の一覧をモニタに表示させてもよい。
また、用紙50に例えば手描き領域43の画像に対する名前を記入する名前記入領域が設けられている場合、この名前記入領域に記入された名前情報を、モニタに表示させてもよい。例えば、PC10eは、画像取得装置20で取得された用紙50の画像から、名前記入領域の画像をさらに抽出し、抽出された画像を名前情報として、ユーザ画像、属性情報および音パターン情報と共に識別情報に関連付けてDB12e内のユーザ画像DB230に格納する。PC10eは、名前記入領域の画像に対して文字認識を行い得られた文字列を、名前情報として用いてもよい。PC70は、識別画像読取装置16から出力された画像に基づく識別情報に関連付けられた名前情報をDB12eから取得して、名前情報の一覧をモニタに表示させる。
さらに、PC70は、上述したサムネイル画像や名前情報の一覧からユーザ操作により指定されたサムネイル画像または名前情報に対応する音パターン情報をDB12eから取得し、取得した音パターン情報を発生させるべき音パターンのガイドとしてユーザに提示することができる。音パターンのガイドは、音譜など視覚情報としてモニタに表示させてユーザに提示してもよいし、音パターンに従い音を発生させて、聴覚情報としてユーザに提示してもよい。
さらに例えば、センサ13によりユーザBの位置を検知して、検知された位置に応じて画像100内の、識別情報に関連付けられたユーザ画像によるユーザオブジェクトを移動させることもできる。一例として、ユーザBが画像100(被投射媒体14)の前を左右に移動すると、この移動に従い、識別情報に関連付けられたユーザ画像によるユーザオブジェクトが列になって移動するようになる。
なお、上述の各実施形態は、本発明の好適な実施の例ではあるがこれに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変形による実施が可能である。