(58)【調査した分野】(Int.Cl.,DB名)
前記画像選択手段は、前記ユーザの複数の画像から、前記素材画像に対応する顔向き情報にて特定される顔の向きに対するユーザの顔の向きのずれが相対的に小さい顔の画像を前記合成対象画像として選択する請求項1に記載の画像合成装置。
前記合成手段は、前記画像選択手段が選択した合成対象画像における顔の向きと前記素材画像に対応する顔向き情報にて特定される前記人物モデルの顔の向きとのずれが減少するように前記画像選択手段が選択した顔の画像の向きを補正する画像補正手段と、
補正された顔の画像を前記素材画像の顔の部分に合成する合成実行手段と、
をさらに備えている請求項1又は2に記載の画像合成装置。
前記画像補正手段は、前記合成対象画像におけるユーザの顔の向きが前記素材画像に対応する顔向き情報にて特定される前記人物モデルの顔の向きと合うように前記合成対象画像におけるユーザの顔の向きを補正する請求項3に記載の画像合成装置。
前記画像補正手段は、前記合成対象画像におけるユーザの顔の画像に応じたメッシュモデルを生成し、該メッシュモデルを構成する多数の小領域の座標を前記合成対象画像における顔の向きと前記人物モデルの顔の向きとのずれに応じて補正することにより、前記ユーザの顔の向きを補正する請求項4に記載の画像合成装置。
撮影手段によって撮影されたユーザの顔の画像と、人物モデルが記録された素材画像とを、前記素材画像に対応付けられた、前記人物モデルの顔の向きを特定する顔向き情報を参照しつつ合成する画像合成方法であって、
前記ユーザの少なくとも顔を含む画像が繰り返し撮影されるように前記撮影手段を制御する手順と、
前記撮影手段にて撮影されたときのユーザの顔の向きを判別する手順と、
前記撮影手段を制御する手順にて繰り返し撮影された画像のそれぞれを、前記顔の向きを判別する手順にて判別された顔の向きを特定する情報と対応付けてユーザ画像記憶手段に記録する手順と、
前記記録する手順にて記録された画像に対応する顔の向きを特定する情報と前記素材画像に対応する顔向き情報とに基づいて、前記素材画像との合成に適したユーザの顔の画像を、前記ユーザ画像記憶手段に記録されているユーザの複数の画像から合成対象画像として選択する手順と、
前記合成対象画像と前記素材画像とに基づいて、前記素材画像の顔部分にユーザの顔の画像を合成した合成画像を生成する手順と、
を備えた画像合成方法。
撮影手段によって撮影されたユーザの顔の画像と、人物モデルが記録された素材画像とを、前記素材画像と対応付けられた、前記人物モデルの顔の向きを特定する顔向き情報を参照しつつコンピュータにより合成するためのコンピュータプログラムであって、前記コンピュータを、
前記ユーザの少なくとも顔を含む画像が繰り返し撮影されるように前記撮影手段を制御する撮影制御手段、
前記撮影手段にて撮影されたときのユーザの顔の向きを判別する顔向き判別手段、
前記撮影手段にて繰り返し撮影された画像のそれぞれを、前記顔向き判別手段が判別した顔の向きを特定する情報と対応付けてユーザ画像記憶手段に記録するユーザ画像記録手段、
前記ユーザ画像記憶手段に記録されている画像に対応する顔の向きを特定する情報と前記素材画像に対応する顔向き情報とに基づいて、前記素材画像との合成に適したユーザの顔の画像を、前記ユーザ画像記憶手段に記録されているユーザの複数の画像から合成対象画像として選択する画像選択手段、及び
前記合成対象画像と前記素材画像とに基づいて、前記素材画像の顔の部分にユーザの顔の画像を合成した合成画像を生成する合成手段、として機能させるように構成されたコンピュータプログラム。
【発明を実施するための形態】
【0010】
以下、本発明の一形態に係る画像合成装置が組み込まれた試着疑似体験システムを説明する。まず、
図1を参照して、試着疑似体験システムの全体構成を説明する。試着疑似体験システム1は、センターサーバ2と、センターサーバ2に所定のネットワーク5を介して接続可能なクライアントとしてのアーケード機3及びユーザ端末装置4とを含む。センターサーバ2は、複数のコンピュータ装置としてのサーバユニット2A、2B…が組み合わされることにより一台の論理的なサーバとして構成されている。ただし、単一のサーバユニットによりセンターサーバ2が構成されてもよい。あるいは、クラウドコンピューティングを利用して論理的にセンターサーバ2が構成されてもよい。
【0011】
アーケード機3は、所定の利用料金の支払いと引き換えに、ユーザに所定のサービス(所定のプレイ)を提供する業務用端末装置として構成されている。アーケード機3は、多数のユーザに利用させて収益を上げることを主目的としてアミューズメント店舗(アーケード施設と呼ばれることがある。)6等の所定の施設に設置される。なお、店舗6には一以上の適宜数のアーケード機3が設置される。アーケード機3の具体的構成は後に説明する。
【0012】
一方、ユーザ端末装置4は、ネットワーク接続が可能でかつユーザの個人的用途に供されるコンピュータ装置である。例えば、据置型又はブック型のパーソナルコンピュータ(以下、PCと表記する。)4a、あるいは携帯電話(スマートフォンを含む。)のようなモバイル端末装置4bがユーザ端末装置4として利用される。その他にも、据置型の家庭用ゲーム機、携帯型ゲーム機、携帯型タブレット端末装置といった、ネットワーク接続が可能でかつユーザの個人的用途に供される各種のコンピュータ装置がユーザ端末装置4として利用されてよい。ユーザ端末装置4は、各種のコンピュータソフトウエアを実装することにより、センターサーバ2が提供する種々のサービスをユーザに享受させることが可能である。
【0013】
ネットワーク5は、センターサーバ2に対してアーケード機3及びユーザ端末装置4をそれぞれ接続させることができる限り、適宜に構成されてよい。一例として、ネットワーク5は、TCP/IPプロトコルを利用してネットワーク通信を実現するように構成される。典型的には、WANとしてのインターネット5Aと、センターサーバ2及びアーケード機3のそれぞれとインターネット5Aとを接続するLAN5B、5Cとがルータ5Dを介して接続されることにより構築される。ユーザ端末装置4も適宜の構成によりインターネット5Aに接続される。なお、アーケード機3と店舗6のルータ5Dとの間にローカルサーバが設置され、そのローカルサーバを介してアーケード機3がセンターサーバ2と通信可能に接続されてもよい。センターサーバ2のサーバユニット2A、2B…はLAN5Cに代えて、又は加えてWAN5Aにより、相互に接続される場合もある。
【0014】
次に、
図2を参照して、試着疑似体験システム1で提供される各種のサービスの概要を説明する。まず、アーケード機3では、ユーザ(ここでは一例としてユーザAを取り上げる。)の画像P1が撮影され、そのユーザAの顔部分を含む所定領域の画像Pfと素材画像P2とが合成されて試着画像P3が生成される。素材画像P2は、任意の服装の人物モデルが記録された画像である。素材画像P2の人物モデルは適宜のポーズを取っている。ただし、素材画像P2は、人物モデルの顔の構成要素(眉、目、鼻、口といった器官)を含まない。人物モデルは実在の人物でもよいし、CG技術等を利用して作成された仮想的な人物でもよい。素材画像P2は、センターサーバ2にて管理される素材データベースDB1に予め保存されている。素材データベースDB1には、服装及びポーズが様々に異なる多数の素材画像P2が予め保存されている。素材データベースDB1の素材画像P2は、適宜の時期にセンターサーバ2からアーケード機3に配信され、アーケード機3の不図示の記憶装置に保存される。
【0015】
生成された試着画像P3はセンターサーバ2にユーザAの識別情報と対応付けて適時に保存される。なお、アーケード機3では、1人のユーザの一回のプレイに対して所定単位の料金が課金される。一回のプレイにおいて、ユーザはコーディネイトが相違する複数の素材画像P2との合成、つまり擬似的な試着体験を楽しむことができるが、
図2では一の素材画像P2との合成のみを例示している。また、一回のプレイでは、複数のユーザが順次試着体験を楽しむこともできる。その場合には、一回のプレイでプレイ人数分の料金が課金されてもよいし、一又は複数のユーザを一つのグループとしてグループ単位でプレイ料金が課金されてもよい。
【0016】
アーケード機3においては、ユーザAに対して自己の試着画像P3等にアクセスするためのアクセス情報が提供される。例えば、センターサーバ2の試着画像P3等にアクセスするためのURLがアクセス情報として埋め込まれたアクセス用の2次元コードCD1がユーザAに対して発行される。また、アーケード機3では、ユーザAが希望した場合、試着画像P3等がプリンタ7を介して印刷出力される。さらに、試着画像P3を生成するために撮影されたユーザA自身の画像P1も、ユーザコーディネイト画像P1aとしてユーザAの識別情報と対応付けて保存される。ただし、アーケード機3においてユーザAの画像P1が多数枚撮影されるため、センターサーバ2にはそれらの画像から選ばれた所定枚数(例えば一回のプレイで一枚)の画像P1がユーザコーディネイト画像P1aとしてセンターサーバ2に保存される。なお、本形態では、アーケード機3にて撮影されたユーザの画像P1と、センターサーバ2に保存されるユーザコーディネイト画像P1aとは、画像としては同じものであるが、特にアーケード機3にて撮影されたユーザの画像P1のうち、センターサーバ2に保存されたものをユーザコーディネイト画像P1aと呼んで区別することがある。センターサーバ2に保存されるユーザコーディネイト画像P1aは、アーケード機3にて撮影されたユーザの複数の画像P1からユーザに選択させてもよいし、アーケード機3又はセンターサーバ2がランダムに、又は所定の基準に従って自動的に選択してもよい。
【0017】
ユーザAはユーザ端末装置4を用いて2次元コードCD1のアクセス情報を読み取り、そのアクセス情報に従ってセンターサーバ2にアクセスすることにより、自らのコーディネイト画像P1a及び試着画像P3を閲覧することができる。なお、ユーザコーディネイト画像P1a及び試着画像P3には付帯情報が対応付けて記録される。付帯情報には、撮影条件等を記述した撮影情報の他に、コーディネイトの分類等に用いられるべきタグ情報も含まれる。ユーザAは、ユーザ端末装置4からセンターサーバ2にアクセスすることにより、自己のコーディネイト画像P1aに対するタグ情報の追加、変更、あるいは修正といった操作を行うことができる。タグ情報の具体例は後述する。
【0018】
さらに、ユーザAは、自らの服装のコーディネイトを他のユーザに評価させるため、コーディネイト画像P1aに基づく評価対象画像P4を投稿することができる。評価対象画像P4は、ユーザコーディネイト画像P1aをユーザの特定が困難となるように加工した画像に相当する。例えば、ユーザコーディネイト画像P1aに対してユーザの顔面上の構成要素(目、鼻、口等)を消去した画像である。そのような評価対象画像P4を得るためには、例えば、アーケード機3からセンターサーバ2にユーザの画像P1が送信される際、アーケード機3にて、ユーザの画像Pから目、鼻、口等を消去した修正画像P1bが生成され、その修正画像P1bがユーザの画像P1とともにセンターサーバ2に送信される。その修正画像P1bは、ユーザコーディネイト画像P1aと相互に対応付けてセンターサーバ2に記録される。そして、ユーザがユーザコーディネイト画像P1aの投稿を指示すると、そのユーザコーディネイト画像P1aと対応付けられた修正画像P1bが評価対象画像P4として他のユーザに公開される。他のユーザB、C、…はそれぞれのユーザ端末装置4からセンターサーバ2にアクセスし、ユーザAの評価対象画像P4を閲覧し、そのコーディネイトを評価することができる。ユーザAは、自らが投稿した評価対象画像P4に対する他人の評価を閲覧することができる。ユーザAが投稿した評価対象画像P4が一定の評価を得た場合、その評価対象画像P4、言い換えれば、センターサーバ2に保存されているユーザコーディネイト画像P1aのうち、ユーザにより投稿されかつ一定の評価を得たユーザコーディネイト画像P1aに対応する修正画像P1bが素材候補画像P5として選択される。したがって、素材候補画像P5も、ユーザコーディネイト画像P1aの顔をユーザの特定が困難となるように加工した画像に相当する。選択された素材候補画像P5はその付帯情報とともに素材データベースDB1に追加される。それにより、アーケード機3では、ユーザコーディネイト画像P1を原画像とする素材画像P2を利用して試着画像P3を生成することも可能である。なお、評価対象画像P4を生成するプロセスは、上記に限らない。例えば、センターサーバ2がユーザの画像P1を受け取った後、その画像P1をユーザコーディネイト画像P1aとして保存する際に修正画像P1bが生成されてもよいし、ユーザが投稿を指示した際にユーザコーディネイト画像P1aから修正画像P1bが生成されてもよい。また、ユーザが投稿する際に、ユーザコーディネイト画像P1aに加えて、又は代えて、修正画像P1bをユーザに選択、あるいは確認させてもよい。
【0019】
次に、
図3〜
図9を参照して、試着疑似体験システム1の各部の詳細を説明する。まず、アーケード機3の物理的構成を説明する。
図1から明らかなように、アーケード機3は、概ね直方体形状の筐体を有し、ユーザがその筐体の内部に立ち入ってプレイするタイプのアミューズメント装置である。このタイプのアミューズメント装置としては、写真シール印刷機が周知であるが、
図1のアーケード機3もそれと同様の基本的構成を備えている。
図3はアーケード機3の内部でかつユーザが向い合う側(内部正面側)の構成を示し、
図4はユーザの背面側の構成を示している。
図3から明らかなように、アーケード機3の内部正面側にはフロントユニット10が設置されている。フロントユニット10には表示装置11が配置されている。表示装置11には液晶ディスプレイ等のフラットパネルディスプレイが用いられている。表示装置11は、ユーザがフロアマットFMに立ってフロントユニット10と向き合ったとき、左右方向中央でかつ上下方向には幾らか見下ろすように配置されている。そのため、表示装置11はその表示面11aが幾らか上方を向くように斜めに傾けて設置されている。
【0020】
表示装置11のフレーム11bの上方には、ユーザを撮影するためのカメラ12がアーケード機3内を見通せるようにして取り付けられている。カメラ12の撮影方向は概ね水平である。カメラ12の撮影範囲(撮影画角)はカメラ12と向い合うユーザのほぼ全身を撮影できるように設定されている。カメラ12の上方には、ユーザの動作を検出するための動作検出装置13がその検出部を装置3内に向けるようにして配置されている。動作検出装置13は、ユーザを撮影するカメラ、ユーザの各部までの距離を検出する測距センサ等を組み合わせることにより、ユーザの位置、動作、顔等を識別し、ユーザがどのような動作をしているか、換言すればユーザがどのような姿勢をとっているかを記述した動作情報を出力するセンサデバイスである。この種の動作検出装置としては、例えばマイクロソフトコーポレーション(Microsoft Corporation)がキネクトの商標を用いて提供するセンサデバイスを用いることができる。さらに、フロントユニット10の上下左右には照明灯14、15、16が配置されている。上部の照明灯16の左右にはスピーカ17が配置されている。下部の照明灯17の右方には、プレイ料金としての硬貨の投入及び返却を行うためのコイン投入返却部18が、照明灯17の左方には、試着画像P3等の印刷物を排出するためのプリントアウト部19が設けられている。
【0021】
一方、
図4に示すように、アーケード機3の背面側にはリアユニット20が設置されている。リアユニット20には、カメラ12が撮影したユーザの画像に対してクロマキー処理を施すための単一色(一例としてグリーン又はブルー)の背景パネル21と、その背景パネル21の上方に配置された照明灯22とを備えている。なお、アーケード機3には、各ユニット10、20の他にも、ユーザの出入口を適度に遮光するカーテン、ユーザがプレイ中であるか否かを外部に示す入室サインといった各種の備品も装備されるが、それらの詳細は省略する。
【0022】
次に、
図5を参照してアーケード機3の制御系の構成を説明する。アーケード機3には制御ユニット30及び記憶装置31が設けられている。制御ユニット30は、CPU及びその動作に必要な内部記憶装置を含んだコンピュータユニットとして構成されている。記憶装置31は、制御ユニット30に対する外部記憶装置として機能する。記憶装置31には、一例としてハードディスク記憶装置、フラッシュメモリ等の半導体記憶素子を用いた半導体記憶装置のような不揮発性の記憶装置である。記憶装置31は、アーケード用プログラムPG1を記憶する。アーケード用プログラムPG1は、制御ユニット30と不図示のオペレーティングシステムとの組み合わせによって提供される機能を利用して、ユーザに試着を擬似的に体験させるために必要な処理、例えば、ユーザの画像P1の撮影や試着画像P3の生成といった処理を制御ユニット30に実行させるためのアプリケーションプログラムである。
【0023】
制御ユニット30には、ユーザによるプレイの進行を制御するためのプレイ制御部32が設けられている。プレイ制御部32は、制御ユニット30のハードウエアとアーケード用プログラムPG1との組み合わせによって実現される論理的装置である。プレイ制御部32には、上述したカメラ12及び動作検出装置13が不図示のインターフェース部を介して接続される。プレイ制御部32はカメラ12を制御してユーザの画像P1を撮影し、かつ動作検出装置13を制御してユーザの動作を検出する。また、プレイ制御部32には、出力装置として、表示装置11及びスピーカ17が接続される。プレイ制御部32は、表示装置11による画像の表示及びスピーカ17からの音楽や効果音の出力を制御する。さらに、プレイ制御部32には、タッチパネル入力装置35及びコインセレクタ36が入力装置として接続される。タッチパネル入力装置35は、表示装置11の表示面11aに重ねて配置され、ユーザのタッチ操作に応じた信号をプレイ制御部32に出力する。コインセレクタ36は、ユーザが投入したコイン8の真偽を判定し、真正であればその投入枚数に応じた信号をプレイ制御部32に出力し、不正であればそのコイン8を返却する。なお、タッチパネル入力装置35は、表示装置11と一体となっていてもよい。
【0024】
プレイ制御部32には、さらなる論理的装置として、顔画像抽出部37、顔向き補正部38及び画像合成部39が設けられている。顔画像抽出部37は、カメラ12にて撮影されたユーザの画像P1からユーザの顔部分の画像を抽出する。顔向き補正部38は、顔画像抽出部37にて抽出された顔画像の向きを補正する。画像合成部39は、補正された顔画像と素材画像P2とを合成する。これらの処理については後に詳しく説明する。
【0025】
記憶装置31には、上述したアーケード用プログラムPG1に加えて、アーケード用データD1及びユーザデータD2も記録される。アーケード用データD1は、アーケード機3にてユーザに試着を体験させる際にアーケード用プログラムPG1にて適宜参照されるべきデータである。例えば、アーケード用データD1は、素材データD11及び演出用データD12を含む。素材データD11は、上述した素材画像P2の画像データ及びこれと対応する付帯情報を含む。演出用データD12は、プレイ中にスピーカ17から再生されるべき音楽の曲、効果音のデータ、及び表示装置11の表示面11aに表示されるべき背景、模様、スタンプ等の装飾効果をもたらす画像素材である装飾画像、あるいはオブジェクト画像(一例として
図17、
図19に示すカメラアイコン150)といった画像データを含む。ユーザデータD2は、ユーザのプレイに伴って生成されるデータである。例えば、ユーザデータD2には、カメラ12にて撮影されたユーザの画像P1を含むユーザ自身の撮影結果に関連するデータ(以下、マイデータと呼ぶことがある。)D21、ユーザの試着画像P3を含む試着データD22が記録されている。さらに、ユーザデータD2にはユーザの画像P1から抽出されたユーザの顔画像Pfを含む顔画像データD23も一時的に記録される。なお、
図2に示した修正画像P1bがアーケード機3にて作成される場合、その修正画像P1bもユーザデータD2の一部として含まれてよい。記憶装置31には、図示したデータ以外にも各種のデータが記録されてよい。
【0026】
次に、
図6を参照してセンターサーバ2及びユーザ端末装置4の制御系の構成を説明する。センターサーバ2には、アーケードサービス管理部40、ユーザサービス管理部41及び記憶部42が設けられている。アーケードサービス管理部40及びユーザサービス管理部41は、センターサーバ2のコンピュータハードウエア資源と記憶部42に記憶されたサーバ用プログラムPG2との組み合わせによって実現される論理的装置である。アーケードサービス管理部40は、アーケード機3のプレイ制御部32に対して各種のサービスを提供し、ユーザサービス管理部41はユーザ端末装置4に対して各種のサービスを提供する。記憶部42には、アーケード用データD1及びユーザデータD2が記録される。アーケード用データD1は、各アーケード機3の記憶装置31に保存されたデータD1の原データと同じであり、アーケードサービス管理部40によりアーケード機3に適時に配信される。ユーザデータD2は、アーケード機3の記憶装置31に保存されたユーザデータD2のうち、試着データD22と、少なくとも一部のマイデータD21とを含む。これらのデータは、アーケード機3から適当な時期、例えばプレイの終了時に送信されて記憶部42に保存される。
【0027】
また、記憶部42には、投稿データD3、評価データD4、分析データD5及び集計データD6も記録される。投稿データD3は、ユーザが投稿した評価対象画像P4とその付帯情報とを含むデータであり、ユーザ識別情報と対応付けられている。評価データD4は評価対象画像P4に対して、評価者としてのユーザが与えた評価が記録されたデータである。評価データD4は評価が行われる毎に生成される。分析データD5は、評価データD4に記述された評価を分析したデータであり、評価対象画像P4毎にユーザ識別情報と対応付けて記録される。集計データD6は、分析データD5に記録された評価内容を横断的に集計した結果を示すデータである。なお、記憶部42には、図示した以外にも各種のデータが記録されてよい。
【0028】
ユーザ端末装置4は制御ユニット50と記憶装置51とを備えている。制御ユニット50には、そのハードウエア資源と記憶装置51に記録された所定のユーザ端末用プログラムPG3との組み合わせによって実現される論理的装置として、2次元コード読取部52と、2次元コード表示部53と、閲覧制御部54とが設けられる。ユーザ端末用プログラムPG3は、ユーザ端末装置4のオペレーティングシステムによって提供される機能を利用してユーザ端末装置4に特有の演算処理を実行させるためのいわゆるアプリケーションソフトウエアである。
【0029】
2次元コード読取部52は、アーケード機3にてユーザがプレイした際に発行されるアクセス情報としての2次元コードCD1をユーザ端末装置4のカメラ(不図示)を介して読み取り、その読み取ったアクセス情報を閲覧制御部54に提供する。2次元コード表示部53は、記憶装置51に保存されているユーザ識別情報が埋め込まれた認証用の2次元コードを生成し、その認証用の2次元コードをユーザ端末装置4の表示面上に表示させる。認証用の2次元コードは、
図2に示したアクセス用の2次元コードCD1とは異なる。ただし、認証用の2次元コードを一旦生成した後は、その2次元コードそのものを画像データとして記憶装置51に保存し、以降はその画像データを2次元コード表示部53が表示させるようにしてもよい。
【0030】
閲覧制御部54は、ユーザ端末装置4に実装されたWebブラウザ機能等を利用してセンターサーバ2へのアクセス、情報の取得、あるいは情報の送信を制御する。この閲覧制御部54が2次元コードCD1に埋め込まれたアクセス情報や記憶装置51に保存されたユーザ識別情報を利用してセンターサーバ2にアクセスすることにより、ユーザは自己のユーザ端末装置4を利用して自らのユーザコーディネイト画像P1a、試着画像P3を閲覧し、あるいは評価対象画像P4を投稿し、その評価対象画像P4に対する評価を閲覧することができる。
【0031】
次に、
図7〜
図9を参照して各種のデータをより詳しく説明する。まず、
図7を参照してデータ相互の関係を説明する。アーケード機3においては、マイデータD21及び試着データD22が生成される。マイデータD21には、ユーザ自身の服装を含むように撮影されたユーザの画像P1と、ポーズ情報IPとが相互に対応付けて記録される。ポーズ情報IPは、ユーザの画像P1に記録されたユーザの顔、肩、腕、手等の位置を特定する情報(ベクトル情報)であって、動作検出装置13によって特定される。ポーズ情報IPは、ユーザの顔の向きを特定する情報(顔向き情報と呼ぶ。)を含む。顔向き情報は、ユーザが適当な基準方向、一例としてカメラ12の撮影方向(光軸方向)に対してどのような方向に顔を向けているかを特定する第1の角度情報と、ユーザの頭部が鉛直方向に対してどのように傾いているかを特定する第2の角度情報の両者を含む。一方、試着データD22は、素材データD11に含まれる素材画像P2と、ユーザの顔画像Pfと、装飾画像DPとを合成することによって生成される試着画像P3を、素材データD11の付帯情報と対応付けて記録したデータである。装飾画像PDは、演出用データD12に記録されている背景や模様の画像群から適宜に選ばれた画像である。ただし、一定の場合、ユーザの画像P1に対応するポーズ情報IPには、動作検出装置13によって特定されるベクトル情報に代えて、又は加えて、試着画像P3の元となった素材画像P2の人物モデルのポーズを特定するポーズ情報(以下、これを基本ポーズ情報と呼ぶことがある。)が記録されることがある。この点は後述する。
【0032】
アーケード機3にて作成されたマイデータD21及び試着データD22はセンターサーバ2に送信されて記憶部42に保存される。なお、マイデータD21に保存されているユーザの画像P1は、記憶部42に保存されることによりユーザコーディネイト画像P1aとして位置付けられる。記憶部42に保存されたデータD21、D22のユーザコーディネイト画像P1a及び試着画像P3は、それらの画像P1a、P3に対応するユーザがユーザ端末装置4から閲覧することができる。マイデータD21に記録されたユーザコーディネイト画像P1aをユーザが評価対象画像P4として投稿するように指示すると、そのユーザコーディネイト画像P1aに対応付けられた修正画像P1bを評価対象画像P4として投稿データD3が生成される。投稿データD3はその元となったユーザコーディネイト画像P1aの付帯情報を引き継ぐ。また、ユーザは自らが投稿した評価対象画像P4に対して、ユーザ端末装置4からタグ情報を追加することができる。投稿データD3に含まれる評価対象画像P4は、他のユーザの閲覧対象となる。他のユーザがユーザ端末装置4にて評価を与えると、その評価毎に評価データD4が生成される。評価データD4は、評価対象画像P4を特定する情報及びその評価対象画像P4に対する評価内容を特定する情報を含む。評価データD4は、評価対象画像P4毎に区別して適時に集計され、それにより評価対象画像P4毎の分析データD5が生成される。さらに、分析データD5が横断的に集計されて集計データD6が生成される。例えば、特定の評価要素に関する評価数等が集計され、評価対象画像P4のランキング等が作成されて集計データD6に記録される。分析データD5は、評価対象画像P4に記録されているユーザがユーザ端末装置4を用いて閲覧可能である。また、集計データD6は各ユーザがユーザ端末装置4を用いて閲覧可能である。
【0033】
投稿データD3及び集計データD6は、素材候補データD7の作成にも利用される。すなわち、集計データD6にて一定の評価が得られている投稿データD3が抽出され、その投稿データD3に対応する修正画像P1bと、当該投稿データD3に記録されているタグ情報やポーズ情報等の付帯情報とを含めるようにして素材候補データD7が生成される。生成された素材候補データD7は、素材データD11の群(
図2の素材データベースDB1に相当する。)に追加され、アーケード機3に素材データD11として適宜に配信される。
【0034】
次に、
図8及び
図9を参照してデータ構造を説明する。なお、以下では投稿データD3を例に挙げる。
図8に示すように、投稿データD3は、一例として、データ番号、登録日時、画像指定情報、ポーズ情報、複数セットのタグ情報1、2、…Nを含む。データ番号はデータ毎にユニークに設定される。登録日時は当該データがセンターサーバ2に登録された日時であり、画像指定情報は投稿データD3に含まれるべき評価対象画像P4を指定する情報である。例えば、ユーザコーディネイト画像P1aが画像毎にユニークなファイル名、あるいは画像IDを付して管理される場合、画像指定情報としては、評価対象画像P4の元となったユーザコーディネイト画像P1aに対応するファイル名、あるいは画像IDを指定することができる。ただし、ユーザコーディネイト画像P1aのファイル名等に代えて、対応する修正画像P1bのファイル名等が指定されてもよい。ポーズ情報は、評価対象画像P4におけるユーザの顔、肩、腕、手等の位置を特定する情報(ベクトル情報)であって、
図7のポーズ情報IPに相当する。タグ情報は、評価対象画像P4を分類するための情報であって、複数の項目に区分されている。
図8の例において、1セットのタグ情報は、コーディネイトのカテゴリ、コーディネイトのアイテム、シーン、スタイル、ポージング、体型、身長、髪型・髪色、音楽、エフェクト、背景といった項目に区分されている。
【0035】
タグ情報に関しては、項目毎に予め複数の選択肢が用意されている。それらの選択肢から適切な選択肢が指定されることによりタグ情報の各項目が入力される。選択肢の一例を
図9に示す。例えば、カテゴリの項目については、評価対象画像P4のコーディネイトのカテゴリとして、「ガーリー」、「ギャル」、「ナチュラル」、「ストリートカジュアル」、「キレイめ」といった選択肢が用意されている。カラー、アイテム、シーン等の項目も評価対象画像P4におけるコーディネイトの特徴を分類するための項目である。なお、「シーン」は、その評価対象画像P4が、デートや旅行等といった如何なる状況に合うと思うかを評価する項目である。また、スタイル、体型、身長の項目は、評価対象画像P4に記録されているユーザのスタイル、体型及び身長を分類するための項目である。なお、ポージングの項目は、ユーザが評価対象画像P4にて取っているポーズを表現する項目である。さらに、髪型・髪色の項目は、髪型と髪色に分けて選択肢が用意される。例えば、髪型について「ショート」、「ミディアム」、「ロング」といった選択肢が用意される。髪色については、「ベージュ」、「イエロー」といった大きな分類の選択肢に加えて、例えば「ベージュ」をさらに「ベビーベージュ」、「ミルクベージュ」といったように細分した分類とが用意されている。つまり、髪色の項目については、階層構造的に選択肢が用意されている。
【0036】
上述したタグ情報の各項目には、評価対象画像P4を投稿した被評価者としてのユーザが指定する項目と、評価者としてのユーザが指定する項目と、センターサーバ2の管理者(あるいは、運営者等。以下、管理者等という。)が指定する項目とが存在する。例えば、「カラー」、「アイテム」、「体型」、「身長」といった項目は被評価者のユーザにより指定される。例えば、ユーザが自己のユーザコーディネイト画像P1aの投稿を指示する際に、そのユーザがこれらの項目を指定することができる。また、「シーン」は評価者としてのユーザにより指定される。その指定は、ユーザが他人の評価対象画像P4を評価する際に指定することができる。したがって、投稿データD3の段階では、評価者としてのユーザが指定する項目については値が存在しない。「音楽」、「エフェクト」、「背景」等の項目はセンターサーバ2の運営者等によって指定される。これらの項目は、投稿された評価対象画像P4が、他人のプレイ時に素材画像P2として利用される際に参照される情報であるために、一定の基準に従って値を設定すべく管理者等にその指定が委ねられる。ただし、タグ情報の構成は一例であり、それらの各項目をどのような者に指定させるか、は適宜に変更されてよい。
【0037】
図9では投稿データD3を例示したが、評価データD4も同様のデータ構造を有する。つまり、ユーザが評価を行う際には、評価対象の投稿データD3の複製が生成され、評価者としてのユーザの指定に従ってタグ情報が追加されることにより評価データD4が生成される。投稿データD3に基づいて生成される素材候補データD7、素材データD11及び試着データD22も同様のデータ構造を有するデータとして生成される。
【0038】
次に、
図10〜
図30を参照して、試着疑似体験システム1にて行われる各種の処理を説明する。
図10〜
図22はアーケード機3における処理に関連する図である。まず、これらの図を参照して、アーケード機3における処理を説明する。
図10は、アーケード機3のプレイ制御部32がユーザに複数のコーディネイトを擬似的に試着させるための処理手順の概要を示す。また、
図11及び
図12は
図10の処理が行われる際に表示装置11に表示される画面の遷移の一例を示す。以下、これらの図に従ってアーケード機3にて行われるプレイの手順の概略を説明する。アーケード機3のプレイ制御部32は、動作検出装置13がユーザを検出したか否かを監視し、ユーザが検出されると
図10の処理を開始する。ただし、ユーザからの指示に基づいて
図10の処理が開始されてもよい。
図10の処理において、まずプレイ制御部32は、プレイ人数を確認するためにユーザに人数を指定させ(ステップS1)、次に各ユーザの顔を動作検出装置13が検出できるか否かを確認する(ステップS2)。この段階では、表示装置11により、例えば
図11の確認画面100が表示される。その確認画面100には、ユーザの人数分のサムネイル画像が並べられたサムネイル表示部101と、撮影中のユーザの画像を示すメイン表示部102とが表示され、さらにはユーザに対して順番に撮影すること、及び顔を真正面に向けるべきこと等を通知するメッセージが表示される。
【0039】
図10のステップS2の処理時において、例えば、ユーザがサングラスやマスクを装着し、あるいはマフラーを巻いているような場合には、ユーザの目や口等の器官、あるいは顔の輪郭を識別することが困難となり、顔の検出が不可能となることがある。そのため、顔が検出できない場合には、顔の検出を成功させるためのアドバイスをユーザに提示する。その後も一定期間顔が検出できないときは、そのユーザに関してはエラーとし、プレイ人数から除外する。これらの処理の具体例は後述する。
【0040】
ユーザの顔の検出を確認した後、プレイ制御部32は、2次元コード認証を実施する(ステップS3)。この処理は、ユーザ端末装置4に保存されているユーザ識別情報に対応する認証用の2次元コードをユーザ端末装置4の画面に表示させ、その2次元コードをアーケード機3のカメラ12にて読み取って、そこに埋め込まれたユーザ識別情報を取得する処理である。この処理により、アーケード機3はリピータとしてのユーザの識別情報を取得することができる。なお、ユーザ端末装置4における認証用の2次元コードの表示は、上述したように
図6の2次元コード表示部53により実行される。ユーザ識別情報を取得していないユーザに関しては、認証用2次元コードの表示ができないため、ステップS3の処理がスキップされる。ここでは2次元コードを用いてユーザを認証するものとしたが、ユーザ毎にユニークな識別情報を用いる限り、認証用2次元コードを介したユーザの認証とは異なる手法でユーザを認証してもよい。例えば、複数種類のゲーム機で共用されるユーザID、カードIDといった識別情報を用いてユーザが認証されてもよい。
【0041】
2次元コード認証が終了すると、プレイ制御部32はユーザからプレイ人数分の料金を徴収する(ステップS4)。次に、プレイ制御部32は、記念撮影を行う(ステップS5)。この処理は、
図11に一例としての記念撮影画面110を示したように、プレイ対象の全てのユーザ(
図11の例では4人)を一緒に撮影してその画像を記憶装置31に記録する処理である。ただし、ユーザが1人の場合にはステップS5の処理がスキップされてもよい。
【0042】
記念撮影が終わると、プレイ制御部32は最初のユーザをプレイ対象として選択し(ステップS6)、次に、そのユーザに所定枚数の素材画像P2を選択させる(ステップS7)。例えば、
図11の選択画面120に示したように、記憶装置31に保存されている多数の素材画像P2を選択候補として並べた候補表示部121が表示され、ユーザのスクロール操作に応じて素材画像P2を入れ替えつつ、ユーザに試着希望の所定数(一例として6画像)の素材画像P2を選択させる処理が行われる。素材画像P2は、記憶装置31に記録された素材データD11から読み出される。この場合、選択画面120には、素材画像P2をあと何枚選べるかを示すユーザ毎の残り選択画像表示部122と、選択した素材画像P2を確認するための確認ボタン123と、「おまかせ」と表記されたボタン124とが表示される。「おまかせ」のボタン124をユーザがタッチすると、所定枚数のユーザを一枚ずつ選ぶことなく、プレイ制御部32が自動的に所定枚数の素材画像P2を選択する。
【0043】
図10に戻って、素材画像P2の選択が終了すると、プレイ制御部32は試着プレイの処理を実行する(ステップS8)。この段階では、曲の再生や装飾画像の表示といった演出要素が出力され、その出力に合わせて、
図12に例示した試着画面130が表示装置11に表示される。試着画面130では、
図12に破線で示したように、ユーザが選択した素材画像P2の人物モデルのポーズに対応するポーズ画像PPが適度な時間間隔を空けて切り替わるようにして順次表示される。ポーズ画像PPは、素材データD11に記録されている素材画像P2のポーズ情報IPにて特定される人物モデルのポーズを所定の態様で示した画像である。複数のポーズ画像PPは、例えば、演出要素として出力される曲のリズムやテンポに合わせた所定のタイミングで画像が切り替わるようにして順次表示される。このとき、ポーズ画像PPには、背景やパターンといった装飾画像PDが重畳して表示される。また、試着プレイが行われている間、カメラ12によりユーザが繰り返し撮影され、それらの撮影で得られたユーザの画像P1が動画的に表示される。ポーズ画像PPとユーザの画像P1とは、両画像がいずれもユーザにより視認できる態様で重ね合わせて表示される。例えば、カメラ12で撮影されたユーザの画像P1は撮影された通りの状態で表示される一方、ポーズ画像PPは、素材画像P2に対応するポーズ情報IPに基づいて特定されるポーズを線図的に表現し、かつ線以外の部分は透過させた画像として表示される。あるいは、素材画像P2を半透明化したポーズ画像PPをユーザの画像P1と重ね合わせてもよいし、素材画像P2それ自体をポーズ画像PPとして表示し、これにユーザの画像P1を半透明化した状態で重ね合せることにより、両画像P1、PPが視認できるようにしてもよい。ユーザには、素材画像P2のポーズ情報にて特定されるポーズと同じポーズを取ることが要求される。ユーザの画像P1が一定の条件を満たすと、プレイ中に撮影された多数枚の顔画像から合成に適した顔画像が選択され、その顔画像が素材画像P2における人物モデルの顔部分に貼り合われるように合成されて試着画像P3が生成される。試着画像P3を生成する手順は後に詳細に説明する。画像130には、ユーザの画像P1及びポーズ画像PPが表示されるメイン表示部131の他に、既に生成された試着画像P3を縮小表示する試着結果表示部132、及び試着が済んでいない素材画像P2の枚数を表示する残数表示部133も表示される。
【0044】
図10のステップS8にて1人のユーザに関する試着プレイが終わると、プレイ制御部32は、最後のユーザまで試着プレイを終えたか否かを判断し(ステップS9)、未だプレイしていないユーザがいればステップS10で次のユーザを選択してステップS7に戻る。一方、ステップS9にて最後のユーザまでプレイしたと判断された場合、プレイ制御部32は、全てのユーザのプレイ結果を表示装置11に表示させるとともに、生成された試着画像P3を閲覧するためのアクセス情報を埋め込んだ2次元コードを表示装置11上に表示させる(ステップS11)。例えば、
図12の結果表示面140に示したように、試着画像P3を並べた試着結果表示部141により試着結果が表示され、その下方にアクセス用の2次元コードCD1が表示される。なお、結果表示面140には、ユーザがプレイ終了を指示する終了ボタン142及び試着画像P3の印刷出力を指示するプリントアウトボタン143も表示される。プリントアウトは追加料金の支払いが必要であり、プリントアウトボタン143にはその追加料金の額も表示される。なお、複数のユーザがプレイした場合には、各ユーザの試着プレイによって生成された試着画像P3が一括して一枚の印刷台紙に印刷されてもよいし、ユーザ毎に印刷台紙を代えて試着画像P3が印刷出力されてもよい。
【0045】
図10に戻って、試着画像P3等の表示が終了すると、プレイ制御部32はユーザがプリントアウトボタン143をタッチして印刷出力を指示したか否か判別し(ステップS12)、指示されていれば追加料金を徴収し(ステップS13)、その後、試着画像P3を印刷出力する(ステップS14)。ただし、この段階では記念撮影(ステップS5)にて撮影された画像も印刷対象に加えられてもよい。その後、なお、ステップS12にてユーザが印刷出力を指示しなかった場合、プレイ制御部32はステップS13及びステップS14をスキップしてステップS15に進み、今回の処理で生成された各ユーザのユーザデータD2(マイデータD21及び試着データD22)をセンターサーバ2に送信する。その後、プレイ制御部32は
図10の処理を終える。なお、ステップS5の記念撮影で得られた画像のデータもユーザデータD2の一部としてセンターサーバ2に送信されてもよい。
【0046】
送信されたデータD2は、センターサーバ2のアーケードサービス管理部40により記憶部42に記録される。この場合、ステップS3で2次元コードを認証させたユーザに対しては、その2次元コードに埋め込まれたユーザ識別情報がセンターサーバ2に提供されることにより、そのユーザ識別情報と対応付けてユーザデータD2が記録される。ステップS3で2次元コード認証を受けなかったユーザに関しては、ユーザ識別情報が存在しないか、あってもアーケード機3にて特定できない。このようなユーザのデータD2に関して、センターサーバ2は、ユーザ識別情報と対応付けることなく試着画像P3等を含んだユーザデータD2を保存する。
【0047】
次に、
図13〜
図20を参照して、プレイ制御部32が実行する処理のさらに詳細な手順を説明する。
図13は、
図10のステップS2においてユーザの顔の検出を確認する際にプレイ制御部32が実行する顔検出確認処理の具体的手順を示している。顔検出確認時において、プレイ制御部32はまずカメラ12によるユーザの撮影及び得られたユーザの顔画像Pfの記憶装置31への記録を開始する(ステップS21)。次に、プレイ制御部32は、動作検出装置13の出力を参照して、動作検出装置13がユーザの顔を検出しているか否か、言い換えれば動作検出装置13がユーザの顔を認識できているか否かを判別する(ステップS22)。顔の検出に成功していれば、プレイ制御部32はステップS23に進み、確認結果が成功(OK)であったことを記録する。一方、ステップS22で顔の検出に成功していないと判断された場合、プレイ制御部32はタイムアウトか否か、つまり確認の開始後、一定時間が経過したか否かを判別する(ステップS24)。タイムアウトでなければ、プレイ制御部32はユーザに対して顔の検出を成功させるためのアドバイスを通知し(ステップS25)、ステップS22に戻る。ステップS24でタイムアウトと判断された場合、プレイ制御部32はその時点でカメラ12の撮影対象となっているユーザに関してプレイが不可能であると判断し、その旨をユーザに通知するといったエラー処理を実行する(ステップS26)。ステップS23又はS26の処理後、プレイ制御部32は
図13の処理を終える。この後、プレイ制御部32は
図10のステップS3の処理に進む。
【0048】
図14は、プレイ制御部32が、
図13のステップS21をトリガとして実行する顔画像蓄積処理の手順を示している。
図14の処理は、他の処理と併行して所定の周期(例えば、表示装置11のフレームレート又はその整数倍。)で繰り返し実行されるルーチン処理である。プレイ制御部32は、
図14の処理を開始すると、まずカメラ12によりユーザを撮影してその画像P1を取得する(ステップS31)。次に、プレイ制御部32は動作検出装置13が検出したユーザの動作を示す情報、つまりはポーズ情報IPを取得し(ステップS32)、その検出結果から、ユーザの画像P1が撮影された際のユーザの顔の向きを判別する(ステップS33)。この場合、顔の向きは、上述したポーズ情報IP(
図7)における顔向き情報と同様に、ユーザが所定の基準方向に対してどのような方向に顔を向けているかを特定する第1の角度情報と、鉛直方向に対してユーザの顔がどのように傾いているかを特定する第2の角度情報の両者を含む。
【0049】
次に、プレイ制御部32は、ステップS34に進み、ステップS33で判別した顔の向きに基づいて、ユーザの顔画像Pfに対応するメッシュモデルMM(
図21参照)を生成する。メッシュモデルMMについては後述する。次いで、プレイ制御部32は、ステップS33で特定した顔の向きと一致する顔の向きを持つユーザの顔画像Pfが同一ユーザに関する顔画像データD23に既に記録されているか否かを判別する(ステップS35)。顔画像データD23には、ユーザの顔画像Pfがポーズ情報IPにて特定される顔向き情報(第1の角度情報及び第2の角度情報)と対応付けて記録されるので、ステップS33で判別した顔向き情報と同一情報を持つ顔画像Pfが顔画像データD23に既に存在するか否かを判別すればよい。そして、顔の向きが一致するユーザの顔画像Pfが存在しなければ、プレイ制御部32は、ステップS31で取得したユーザの画像P1から抽出される顔画像PfとステップS32で取得したポーズ情報IPに基づく顔向き情報とメッシュモデルMMとを対応付けて顔画像データD23に新規に保存する(ステップS36)。一方、ステップS35にて顔の向きが一致するユーザの顔画像Pfが存在する場合、つまり、顔向き情報が一致する顔画像Pfが存在する場合、プレイ制御部32はその顔画像Pf及びこれに対応するメッシュモデルMMを、今回のユーザの画像P1から抽出される顔画像Pf及びこれに対応するメッシュモデルMMで上書きするようにして顔画像データPf等を保存する(ステップS37)。ステップS36又はS37の処理が終わると、プレイ制御部32は今回の
図14のルーチンを終える。
図14の処理により、ユーザがアーケード機3にてプレイしている間、その画像P1が繰り返し撮影され、顔の向き毎に最新の顔画像Pfが記憶装置31に蓄積されることになる。なお、
図10のステップS5にて記念撮影をする際には複数のユーザが同時にカメラ12の前に位置するため、
図14の処理が一時的に中断されてもよい。あるいは、
図14の処理は、
図10のステップS2に代えて、ステップS7の処理開始をトリガとして開始されてもよい。なお、
図14に示す顔画像蓄積処理は、1人プレイの場合はプレイ終了のタイミングで、複数人プレイの場合はユーザが交代したタイミングや全員のプレイが終了したタイミングで、蓄積した顔画像を消去することとしても良い。
【0050】
図15は、
図10のステップS7にてユーザが素材画像P2を選択する際にプレイ制御部32が実行する素材画像選択処理の具体的手順を示している。素材画像P2の選択時において、プレイ制御部32は、まず選択画面120(
図11)を表示装置11に表示させることにより、ユーザが選択可能な素材画像P2を選択候補としてユーザに提示する(ステップS41)。記憶装置31に多数の素材画像P2の素材データD11が保存されている場合には、素材データD11のタグ情報に記録されている項目をユーザに指定させることにより、ユーザに提示する選択候補を絞り込むようにしてもよい。
【0051】
素材画像P2の提示後、プレイ制御部32は、選択候補を変更する操作をユーザが行ったか否かを判別し(ステップS42)、操作があればステップS41に戻って、ユーザの操作に応じた新たな素材画像P2をユーザに提示する。変更操作がなければ、プレイ制御部32はステップS43に進み、ユーザがボタン124にタッチして「おまかせ」を選択したか否かを判別する。「おまかせ」が選択されていない場合、プレイ制御部32はさらにユーザがいずれかの素材画像P2をタッチして選択したか否かを判別する(ステップS44)。選択がなされた場合、プレイ制御部32はユーザが選択した素材画像P2を記録し(ステップS45)、その後、選択数が所定数に達したか否かを判別する(ステップS46)。所定数に達していれば、プレイ制御部32は選択された全ての素材画像P2を表示装置11に表示させ(ステップS47)、ユーザに確認を求める(ステップS48)。なお、ステップS43で「おまかせ」が選択された場合、プレイ制御部32は所定数の素材画像P2を自動的に選択し(ステップS49)、その後、ステップS47へと進む。
【0052】
ステップS48でユーザが再選択を希望する等して、確認を拒んだ場合、プレイ制御部32はステップS43へと戻る。なお、ステップS46が否定判断された場合もプレイ制御部32はステップS44へ戻る。ステップS48にてユーザが素材画像P2の選択を確認した場合、プレイ制御部32は選択された素材画像P2に対応付けられているタグ情報を解析し(ステップS50)、その解析結果に従って、
図10のステップS8における試着プレイの際に出力すべき演出要素(曲や背景等)を決定する(ステップS51)。
【0053】
例えば、
図8に示したように、タグ情報における「音楽」、「エフェクト」、「背景」の項目を参照して、試着プレイにおける演出要素、すなわち、演出用データD12(
図5参照)に記録された曲や装飾画像PD(
図7)から、プレイ中に再生されるべき曲、試着画面130に表示されるべき背景、パターン、エフェクトといった装飾画像PDが決定される。ただし、音楽や背景等を直接指定するタグ情報が存在しない場合でも、コーディネイトの特徴を記述した「カテゴリ」、「カラー」、「シーン」といった項目のタグ情報を参照することにより、素材画像P2のコーディネイトに適した曲や装飾画像PDを決定してもよい。その場合には、各項目の選択肢(
図9参照)と曲や背景等の演出要素とを関連付けるデータを予め用意し、そのデータを手掛かりにタグ情報に対応する曲等を選択すればよい。また、ユーザに複数の素材画像P2を選択させる場合には、素材画像P2毎にタグ情報が相違する可能性がある。この場合、曲及び装飾画像PDも素材画像P2毎に順次切替えて出力するものとしてもよい。選択された全ての素材画像P2を通して一の曲や同一の装飾画像PDを使用する場合には、例えば各素材画像P2のタグ情報を解析して、最も多くの素材画像P2に適用できる曲や装飾画像PDを選択してもよいし、選択された素材画像P2に対応するタグ情報から抽出される曲や装飾画像PDの中から、ランダムで選択するようにしてもよい。
【0054】
図15のステップS51で演出要素を決定した後、プレイ制御部32は
図15の素材画像選択処理を終える。この後、プレイ制御部32は、
図10のステップS8の試着プレイの処理に進む。
図16は、そのステップS8にてプレイ制御部32が実行する試着プレイ処理の具体的手順を示している。試着プレイ処理が開始されると、プレイ制御部32は、まず
図15のステップS51にて決定した曲のデータを記憶装置31から読み出してその曲の再生を開始し(ステップS61)、次いで、ステップS51にて決定した装飾画像PDのデータを記憶装置31から読み出してその表示を開始する(ステップS62)。続いて、プレイ制御部32は、ユーザが選択した素材画像P2から最初に試着させるべき素材画像P2を選択し(ステップS63)、その素材画像P2の人物モデルのポーズに対応するポーズ画像PPを装飾画像PDとともに表示装置11に表示させることにより、ポーズ画像PPをユーザに提示する(ステップS64)。この場合、
図12の試着画面130にて例示したように、カメラ12にて繰り返し撮影されているユーザの画像P1がポーズ画像PPと重ね合わせて連続的に表示される。しかも、両画像P1、PPが視認できるように、ポーズ画像PP又はユーザの画像P1のいずれか一方が半透明化され、あるいはいずれか一方が線図として表示されるといったように表示態様が制御される。
【0055】
ポーズ画像PP等の提示後、プレイ制御部32は、表示装置11を利用して、ユーザにシャッタタイミングを案内する処理を開始する(ステップS65)。シャッタタイミングは、
図10のステップS8の処理を開始してからの経過時間と関連付けて予め素材画像P2毎に定められている。ただし、
図14の説明から明らかなように、カメラ12によるユーザの撮影はシャッタタイミングに限って行われるものではない。カメラ12によるユーザの撮影は試着プレイの間において繰り返し行われており、シャッタタイミングはユーザに対して撮影を意識させるために定められるものである。ただし、シャッタタイミングで撮影されたユーザの画像P1をマイデータD21に記録するものとしてもよい。また、シャッタタイミングの案内は、ユーザの目線を、表示面外の所定の目標位置(一例としてカメラ12による撮影位置)に誘導するために行われる。案内の詳細は後述する。
【0056】
シャッタタイミングの案内を開始した後、プレイ制御部32はユーザの顔画像Pfと素材画像P2との合成を試みる(ステップS66)。その処理は顔向き補正部38と画像合成部39とを利用して行われるが、詳細は後述する。次に、プレイ制御部32は、画像の合成に成功したか否かを判別し(ステップS67)、成功していれば、その合成された試着画像P3を、表示装置11を介してユーザに表示するとともに、試着画像P3を記憶装置31に記録する(ステップS68)。この場合、試着画像P3は、合成元となった素材画像P2の付帯情報(タグ情報やポーズ情報を含む。)と対応付けられた試着データD22として記憶装置31に保存される。試着画像P3の記録後、プレイ制御部32は、試着プレイ中に設定された素材画像P2毎の素材画像切替時期か否かを判別する(ステップS69)。素材画像切替時期は、例えば演出の一部として出力される曲中のリズムやテンポにおいて区切りがよい時期に設定される。ただし、素材画像切替時期同士の間には、合成に十分な時間が確保されるように適度な時間間隔が割り当てられる。
【0057】
素材画像切替時期が到来していない場合、プレイ制御部32はステップS68に戻って結果表示を続ける。素材画像切替時期が到来すると、プレイ制御部32はステップS70に進み、現在のプレイ対象のユーザが選択した全ての素材画像P2に関して試着が終わったか否かを判別する。まだ試着していない素材画像P2が存在する場合、プレイ制御部32は次の素材画像P2を選択し(ステップS71)、その後、ステップS64の処理に戻る。
【0058】
ステップS67にて合成が失敗したと判断された場合、プレイ制御部32は所定の代替処理を実行し(ステップS72)、その後、ステップS69の処理に進む。合成が失敗する場合としては、例えば、素材画像P2に対応する顔向き情報にて特定されるユーザの顔の向き(第1の角度情報及び第2の角度情報)と一致する顔の向きをもった顔画像Pfが記憶装置31に記録されていない場合が挙げられる。詳しくは後述する。また、代替処理としては、例えば、合成ができなかったことをユーザに通知するとともに、その処理の時点で撮影されているユーザ自身の画像、つまりユーザコーディネイト画像P1を試着画像P3に代えてユーザに表示する処理を行うことができる。あるいは、顔画像データD23に記録されている顔画像Pfから適当な一枚の顔画像Pfを選び、その顔画像Pfにおける顔の向きと一致する顔の向きを持った素材画像P2を素材データD11から抽出し、その素材画像P2を顔画像Pfと合成する処理が行われてもよい。
【0059】
ステップS69にて、全ての素材画像P2について処理が完了したと判断された場合、プレイ制御部32は、カメラ12によるユーザの撮影及び顔画像Pfの記録を終了させる(ステップS73)。つまり、
図14の顔画像蓄積処理を終了させる。したがって、カメラ12は、
図10のステップS2の処理開始後、
図16のステップS72の処理までの間を画像取得期間として、その間にユーザを繰り返し撮影するよう制御される。ユーザの撮影を終了させた後、プレイ制御部32は、記憶装置31にマイデータD21の一部として記録された多数枚のユーザの画像P1から、センターサーバ2に送信すべき所定枚数(一例として一枚)の画像P1を選択する(ステップS74)。画像P1の選択はユーザに委ねてもよいし、プレイ制御部32が所定の条件に従って自動的に選択してもよい。この場合の条件としては、素材画像P2における人物モデルのポーズとの一致率が相対的に高い画像P1が優先的に選択され、あるいはランダムに選択されるといった設定が可能である。ポーズの一致率は、一例として素材画像P2に対応付けられているポーズ情報IPとユーザの撮影時に動作検出装置13が検出したユーザのポーズとの近さにより判断することができる。ステップS73の終了後、プレイ制御部32は
図16の処理を終える。この後、プレイ制御部32は
図10のステップS9に進む。
【0060】
図17〜
図19は、シャッタタイミングの案内手法を説明するための図である。
図17は、試着画面130(
図11参照)上でシャッタタイミングを案内する際の画面遷移を試着プレイの経過時間と関連付けて示している。まず、
図17を参照してシャッタタイミングの案内手法の概要を説明する、なお、
図17では試着画面130を、時間の経過に従って参照符号130に枝番号−1、−2…を付して区別している。また、以下の説明では、シャッタタインミグにおけるユーザの目線の目標位置がカメラ12の撮影位置に設定されている場合の例である。
【0061】
シャッタタイミングの案内が開始されると、まず、試着画面130−1の初期位置に、シャッタタイミング案内用の標識としてのカメラアイコン150が出現する。その出現時期は、試着プレイ中に設定されたシャッタタイミングに対して一定時間先行する時期に設定される。初期位置は、例えば、最初の試着画面130−2に示すように、素材画像P2(ただし、
図17では省略。)が表示されるべきメイン表示部131のほぼ中央に設定される。その後、カメラアイコン150は、2番目の試着画面130−2に矢印M1で示すように、カメラ12による撮影位置SPに向けて試着画面130内を真っ直ぐ上昇する。試着画面130−2にて示されているように、カメラアイコン150が試着画面130の上端の直前まで上昇すると、左から3番目の試着画面130−3にて矢印M2で示すように、カメラアイコン150が画面130の枠に当って弾む様子が表現されるようにカメラアイコン150の表示態様が漸次変更される。その後、4番目の試着画面130−4に矢印M3で示すように、カメラアイコン150が、試着画面130の外(つまり、表示装置11における表示面11aの外)に飛び出して画面130から消え去る様子が表現されるように、カメラアイコン150の表示態様が変更される。カメラアイコン150が消える時期は、シャッタタイミングよりも早い時期に設定される。
【0062】
カメラアイコン150が試着画面130から上方に消え去った後、
図17の右端の試着画面130−5にて矢印M4で示したように、カメラアイコン150がそれ以前と同様に撮影位置SPに向けて上昇を続けたと仮定した場合、カメラアイコン150はシャッタタイミングにて撮影位置SPに仮想的に到達する。つまり、カメラアイコン150が撮影位置SPに仮想的に到達する時期とシャッタタイミングとが一致する。このような関係が成立するように、カメラアイコン150の初期位置への出現時期及びカメラアイコン150の移動速度が制御される。
【0063】
以上の通りシャッタタイミングが案内されることにより、ユーザの目線をカメラアイコン150に惹き付け、カメラアイコン150を追うようにユーザの目線を撮影位置SPへと誘導することができる。そして、シャッタタイミングにおいてユーザの目線を撮影位置SPにほぼ一致させることができる。なお、到達時期とシャッタタイミングが一致するとみなせる範囲としては、カメラアイコン150の一部が撮影位置SPと仮想的に重なっている間にシャッタタイミングが到来すれば十分であるが、ユーザの目線を撮影位置SPに向ける目的が達成できる限りおいて、カメラアイコン150が概ね撮影位置に達すると想定される時期にシャッタタイミングが到来すれば、両者が一致するとみなしてよい。また、シャッタタイミングにおいて、ユーザの目線を表示面11a外の目標位置へと向けるためには、目標位置に向けてカメラアイコン150が移動し、かつシャッタタイミングよりも早い時期にカメラアイコン150が表示面11aから消えるようにカメラアイコン150の表示が制御されていればよい。つまり、カメラアイコン150の動きに釣られてユーザが目線を表示面外まで移動させるように表示態様が制御されていれば、カメラアイコン150がシャッタタイミングにて表示面11a内に留まる場合と比較して、ユーザの目線を表示面11a外の目標位置に近付ける効果が期待できる。目標位置は撮影位置に限らない。例えば、撮影位置よりも幾らか上に目標位置を設定すれば、ユーザが目線を幾らか上に向けた画像をシャッタタイミングにて撮影することができる。反対に目標位置を撮影位置よりも下に設定すれば、ユーザが幾らか目線を落とした画像をシャッタタイミングにて撮影することができる。なお、シャッタタイミングにおいては、ユーザに撮影の実感を与えるためシャッタ音が出力される。
【0064】
図18は、上述したシャッタタイミングの案内を実現するためにプレイ制御部32が実行するシャッタタイミング案内処理の具体的手順を示している。
図18の処理が開始されると、プレイ制御部32は、その時点で合成対象になっている素材画像P2(つまり、ス
図16のステップS63又はS71で選択されている素材画像P2)ついてのシャッタタイミングを取得する(ステップS81)。上述したように、シャッタタイミングは、試着プレイの処理(
図10のステップS8の処理)を開始してからの経過時間と関連付けて予め素材画像P2毎に定められている。例えば、試着プレイの間に再生される曲のリズムやテンポに合わせて素材画像P2毎(あるいは画面130内のポーズ画像PP毎)に撮影が行われる感覚をユーザに与えるようにシャッタタイミングが曲中の位置と合わせて設定される。ただし、各素材画像P2に対応する素材画像切替時期(
図16のステップS69参照)よりもシャッタタイミングは早い時期に設定される必要がある。シャッタタイミングの設定値は、一例として演出用データD12に曲と対応付けて記録すればよい。一回の試着プレイで1人のユーザに対して6枚の素材画像P2が表示される場合には、曲中の6箇所の位置にシャッタタイミングが設定される。
【0065】
シャッタタイミングを取得した後、プレイ制御部32はカメラアイコン150を試着画面130の初期位置に出現させる(ステップS82)。次に、プレイ制御部32は、シャッタタイミングを案内する際に出力されるべき効果音等の演出要素のデータを演出用データD12から取得し、その演出要素の出力を開始する(ステップS83)。その後、プレイ制御部32は、試着プレイ開始後の経過時間に基づいて、次のフレームで描画されるべき試着画面130上におけるカメラアイコン150の位置を演算する(ステップS84)。この位置演算においては、カメラアイコン150がシャッタタイミングにおいて撮影位置SPに仮想的に到達するような移動速度が実現されるように、カメラアイコン150の位置が演算される。なお、カメラアイコン150の移動速度は一定でもよいし、可変であってもよい。例えば、カメラアイコン150が徐々に加速し、又は減速するように移動速度が設定されてもよい。
【0066】
続くステップS85においては、先に演算されたカメラアイコン150の位置が試着画面130の上端部まで達したか否かを判別する。つまり、
図17の試着画面130−2の状態までカメラアイコン150が移動したか否かが判別される。上端部に達していなければ、プレイ制御部32はカメラアイコン150が次フレームの試着画面130において、ステップS84で演算された位置に通常の状態(つまり、試着画面130−3のように弾む前の状態)で描画されるように、次フレームの試着画面130の描画を制御する(ステップS86)。その後、プレイ制御部32はステップS84に戻る。
【0067】
一方、ステップS85にて肯定判断された場合、プレイ制御部32は、カメラアイコン150が弾んだ上で上方に消え去る様子を表現したアニメーションが次フレーム以降の試着画面130にて表示されるようにカメラアイコン130の描画を制御する(ステップS87)。したがって、カメラアイコン150を出現させるタイミングは、初期位置に出現してからステップS85が肯定判断されるまでに要する時間、つまりはカメラアイコン150が通常状態で描画される時間と、ステップS87で開始されるアニメーションの表示に要する時間と、カメラアイコン150が表示面11aの外の領域を継続的に上昇したと仮定した場合に撮影位置SPまで到達するに要する時間との和を移動所要時間として求め、シャッタタイミングからその移動所要時間だけ先行した時期に設定すればよい。なお、表示面11a外におけるカメラアイコン150の移動時間は、一例として、通常状態で表示されている間のカメラアイコン150の運動がそのまま継続されるものと仮定して求めることができる。例えば、カメラアイコン150が等速度運動している場合にはその速度を維持して移動すると仮定し、カメラアイコン150が加速度運動をしている場合にはその加速度を維持して移動すると仮定すればよい。
【0068】
ステップS87の処理後、プレイ制御部32はステップS81で取得したシャッタタイミングが到来したか否かを判別する(ステップS88)。シャッタタイミングが到来していなければプレイ制御部32はステップS88の判断を繰り返す。シャッタタイミングが到来すると、プレイ制御部32はステップS89に進み、シャッタ音をスピーカ17から出力させる。その後、プレイ制御部32は、
図18の処理を終える。なお、カメラアイコン150は
図17の態様で表示される例に限らない。例えば、
図19に示したように、シャッタタイミングまでの残り時間をカウントダウンする数値表示を伴うようにカメラアイコン150が表示されてもよい。カウントダウンの表示を添えることにより、ユーザにはシャッタタイミングまでの残り時間をよりリアルに感じさせることができる。なお、
図19では、カメラアイコン150の出現時期における試着画面130は図示が省略され、カウントダウン開始時期以降の画面遷移が示されている。また、ユーザの画像P1(連続的に表示されている点で映像でもある。)及びポーズ画像PPの図示も省略されている。
【0069】
図20は、
図16のステップS66にて行われる画像合成のより詳しい処理手順を示している。以下、
図21及び
図22も参照しつつ、
図20の処理を説明する。まず、画像の合成処理において、プレイ制御部32は、合成対象の素材画像P2、つまり現時点で試着画面130に表示されているポーズ画像PPに対応する素材画像P2のポーズ情報IPを取得し(ステップS101)、続いて動作検出装置13からの出力に基づいて現時点でのユーザのポーズ情報を取得する(ステップS102)。次に、プレイ制御部32は、動作検出装置13によりユーザの顔が現在検出されているか否かを判別する(ステップS103)。ユーザの顔が検出されている場合、プレイ制御部32は、動作検出装置13から取得したユーザのポーズ情報に基づいて、ユーザのポーズが素材画像P2のポーズ情報(ステップS101で取得された情報)に記録されているポーズと所定レベル以上一致しているか否かを判別する(ステップS104)。
【0070】
ポーズが所定レベル以上一致している場合、プレイ制御部32は、適切な顔画像が記憶装置31の顔画像データD23に記録されているか否かを判別する(ステップS105)。この段階では、合成対象の素材画像P2に対応するポーズ情報にて特定される素材画像P2の人物モデルの顔の向きを基準として、顔の向きが最も近いユーザの顔画像Pfが顔画像データD23から選択され、その顔画像Pfにおける顔の向きと素材画像P2の顔の向きとのずれが許容範囲内か否かが判別される。そして、許容範囲にある場合、その顔画像Pfが適切な画像として判別される。この場合、選択の対象となる顔画像Pfは
図14の処理で記憶装置31に蓄積された顔画像Pfである。また、許容範囲は、ユーザの顔向きを補正する際に不自然さが生じない限度として設定される。
【0071】
ステップS105において適切な顔画像Pfがあると判別された場合、プレイ制御部32は、その顔画像Pfを顔画像データD23から取得する(ステップS106)。続いて、プレイ制御部32は、合成対象画像としての顔画像Pfの向きが素材画像P2における顔の向きと一致するように顔画像Pfを補正するため、
図14のステップS36又はS37で保存されたメッシュモデルMMのうち、顔画像Pfの向きに対応したメッシュモデルMMを取得する(ステップS107)。
図21に多数の顔画像Pfの例を示したように、メッシュモデルMMは、ユーザの顔画像Pfをその口等を基点として多数の多角形状の小領域SAに分割して生成されるモデルである。続いて、プレイ制御部32は、顔画像補正部38を利用して、合成対象の顔画像Pfにおける顔の向きと素材画像P2における顔の向きとのずれ量がゼロとなるようにメッシュモデルMMを回転させて顔画像Pfの向きを補正する(ステップS108)。この処理は、顔向きのずれ量に従って、小領域SAの各頂点座標を変換することにより実現される。つまり、小領域SAをずれ量に応じて変形させることにより、メッシュモデルMMを仮想的に回転させて顔画像Pfの向きを変化させる。この際、ずれ量が所定のレベルを超えて拡大すると、小領域SAの変形の程度が大きくなり、補正後の顔画像Pfに看過できないレベルの不自然さが生じることがある。このような観点から、
図20のステップS105におけるずれ量の許容範囲を不自然さが生じないずれ量の範囲に設定すればよい。なお、
図21は様々な向きの顔画像を便宜的に同一図面内に並べて示したものである。合成対象画像は、一の顔画像Pfであって、
図21のような多数の顔画像が同時に合成対象画像として選択されるものではない。
【0072】
図20に戻って、ステップS108にて顔向きを補正した画像が生成されると、プレイ制御部32は、画像合成部39を利用して、補正後の顔画像Pfを素材画像P2の顔部分に貼り合わせるようにして両画像を結合する(ステップS109)。その後、プレイ制御部32は、画像合成部39を利用して、ユーザの顔画像Pfと素材画像P2との境界部分に対して所定のブレンド処理を施す(ステップS110)。例えば、
図22に示したように、ユーザの顔の輪郭と素材画像の人物モデルの顔の輪郭とを違和感のないように滑らかにブレンド処理を施し(
図22のA部)、あるいは、ユーザの顔画像に含まれている前髪と、素材画像の人物モデルの髪とをそれらの境界部分が目立たないようにブレンド処理を施し(
図22のB部)、あるいはユーザの顔画像と素材画像の人物モデルの肌との境界部分で両者の肌色の相違が目立たないようにブレンド処理を施す。ここでいうブレンド処理は、画像処理において一組の画像を合成する際に用いられる公知の手法で行われてよい。なお、動作検出装置13を利用してユーザの身長T及び横幅W(
図22参照)を検出し、素材画像P2の人物モデルをそれらの測定結果に応じて上下左右に伸縮させてユーザの顔画像Pfと素材画像P2の人物モデルとの身長及び体型の相違による合成後の違和感を低減し、あるいは解消する処理をさらに施してもよい。ただし、動作検出装置13の検出結果を用いることなく、プレイ開始時といった適宜の時期に、素材画像P2又はこれに対応するポーズ画像PPとユーザの画像P1とを表示面11a上に両画像が視認できる態様で重ね合わせて表示させ、タッチパネル35に対するユーザのスライド操作等に応じてユーザの画像P1を縦横に伸縮させることにより、身長や横幅を合せるようにしてもよい。
【0073】
ステップS110にてブレンド処理が完了すると、プレイ制御部32は
図20の処理を終える。これにより、試着画像P3の生成が完了する。この場合、
図16のステップS67では合成成功と判断される。なお、
図20の処理では、画像を合成する前提として、ユーザのポーズと素材画像P2の人物モデルのポーズ(つまり、ポーズ画像PPのポーズ)とが所定レベル以上で一致することを要件としているため、
図20の処理により試着画像P3が生成できた場合には、所定のエフェクトを試着画面130に表示してユーザに合成の成功を通知してもよい。エフェクトは、例えば
図16のステップS68にて結果を表示する際に、所定のアニメーションを経て試着画像P3が出現するといった態様で出力することができる。あるいは、
図12の試着画面130に例示したように、合成成功であることを示すマーク134を表示してもよい。これらのエフェクトは表示装置11上で重ね合わされるのみであって、試着画像P3には記録されない。なお、
図12の画面130は、ポーズが所定レベル以上に一致した状態を示すものではない。
【0074】
図20のステップS103にて顔が検出されていないと判断された場合、あるいは、ステップS104にてポーズが一致していないと判断された場合、プレイ制御部32はタイムアウトか否か、つまり
図20の処理の開始後、所定の待ち時間が経過したか否かを判別する(ステップS111)。この場合、
図16のステップS16にて判断される素材画像切替時期よりも早い時期でかつその素材画像切替時期の直前にタイムアウトとなるように、待ち時間を設定することが望ましい。ステップS111にてタイムアウトでなければ、プレイ制御部32は、ユーザに対してアドバイスを与え(ステップS112)、その後にステップS102に戻る。なお、ステップS112のアドバイスは、ポーズ画像PPのポーズに対してユーザがポーズを合わせるための指示を含む。すなわち、ポーズ画像PPを表示するためのポーズ情報IPが格納された素材データD11のタグ情報には、
図8の投稿データD3と同様に画像P2内の人物モデルのポーズの特徴を表現したポージングの項目が含まれているため、そのポージングの項目に記述されたフレーズを表示装置11の画面上に表示し、あるいはスピーカ17から出力させることにより、ユーザにポーズを合わせることを意識させる。例えば、
図12の試着画面130では、素材画像P2のタグ情報のポージング項目に指定されている「脚クロスだよ〜」のフレーズを示す画像PMが表示されることにより、ユーザにポーズを合わせるよう指示がなされている。ステップS111にてタイムアウトの場合、プレイ制御部32は所定のエラー処理を実行し(ステップS113)、その後、
図20の処理を終える。
【0075】
次に、
図23〜
図29を参照して、ユーザ端末装置4に対するサービスに関連した処理を説明する。
図23及び
図24は、ユーザ端末装置4にてユーザ端末用プログラムPG3が実行された際にその表示装置によって表示される各種の画面の遷移を示している。まずは、これらの図を参照して、ユーザ端末用プログラムPG3によってユーザ端末装置4に実装される各種の機能の概要を説明する。なお、以下の説明は、ユーザ端末装置4としてスマートフォンのようなモバイル端末装置4bが用いられることを想定したものである。
【0076】
ユーザ端末装置4にてプログラムPG3が起動されると、
図23に示すタイトル画面200が表示され、その後、スタート画面として、マイページ画面210が表示される。なお、ユーザ端末用プログラムPG3が初めて起動された際には、機能説明やチュートリアルといった初回専用の画面が表示されてもよい。
【0077】
マイページ画面210には、ユーザプロフィール表示部211と、試着画像閲覧部212と、メニュー部213とが含まれている。ユーザプロフィール表示部211には、ユーザの画像と、ユーザが入力した名前等のプロフィール情報とが表示される。ユーザの画像は、センターサーバ2に保存されているユーザ自身のコーディネイト画像P1aの少なくとも一部であってもよいし、ユーザ端末装置4上でユーザが記録した画像であってもよい。試着画像閲覧部212には、アーケード機3にて生成されてセンターサーバ2の記憶部41に保存されたユーザの試着画像P3が一覧形式で表示される。ユーザ端末装置4からユーザ識別情報を指定してセンターサーバ2にアクセスし、あるいはアーケード機3にて表示された2次元コードCD1を読み取ってその指定場所にアクセスすることにより、センターサーバ2からユーザ端末装置4にマイページ画面210の表示に必要なデータが提供される。メニュー部213には、ユーザ端末装置4に表示させるページを切り替えるために選択操作される部分である。メニュー部213から「マイページ」が選択操作されると、マイページ画面210が表示される。「マイコーデ」が選択操作されると、マイコーディネイト画面220が表示される。なお、メニュー部213は各画面に共通して表示される。ただし、メニュー表示部213に用意された項目以外にも、所定の操作を行うことによりプログラムPG3による各種の機能を呼び出すことが可能である。例えば、アクセス用の2次元コードCD1の読み取り、あるいは2次元コード認証用の2次元コードCD2の表示といった機能は所定の操作によって呼び出される。
【0078】
マイコーディネイト画面220には、センターサーバ2に保存されたユーザ自身のコーディネイト画像P1aが表示されるマイ画像表示部221と、その画像P1aに対応するタグ情報の内容が表示されるタグ情報表示部222とが含まれている。ユーザは、タグ追加ボタン223を選択操作することにより、タグ情報表示部222にさらなるタグ情報を追加することができる。ここで追加された情報は、ユーザ端末装置4からセンターサーバ2に送信され、ユーザのユーザコーディネイト画像P1aに対応付けられた付帯情報の一部として保存される。マイコーディネイト画面220にはさらに投稿ボタン224が表示される。ユーザが投稿ボタン224を選択操作すると、マイ画像表示部221に表示されているユーザコーディネイト画像P1aの投稿が指示されたものとされ、そのユーザコーディネイト画像P1aに対応する修正画像P1bが評価対象画像P4としてセンターサーバ2に投稿される。
【0079】
図24に移って、ユーザが自身のユーザコーディネイト画像P1aを投稿した場合、マイコーディネイト画面220には、タグ情報表示部222と評価結果表示部225とがユーザの選択操作に応じて択一的に表示される。評価結果表示部225には、ユーザが投稿した評価対象画像P4(つまり、ユーザが投稿を指示したユーザコーディネイト画像P1aに対応する修正画像P1bに相当する。)に対応する評価データD4(
図7参照)と関連付けられた分析データD5に従って評価結果が表示される。また、評価結果表示部225が表示される場合、マイ画像表示部221には、ユーザのコーディネイト画像P1に添えて集計データD6にて集計された順位などの情報が表示される。例えば、ユーザによる評価対象画像P4の評価時に、コーディネイトのカテゴリを対象として選択肢毎に人気投票を行えるようにし、そのランキングを集計データD6に記録しておくことにより、ユーザのコーディネイト画像P1が、そのカテゴリ内で何位にランクされたか、をマイ画像表示部221に表示させることができる。
【0080】
メニュー部213から「みんなのコーデ」が選択操作されると、みんなのコーディネイト画面230が表示される。みんなのコーディネイト画面230には、各ユーザが投稿した評価対象画像P4が一覧形式で表示される。ユーザが評価したい画像P4を選択操作すると、ユーザはその選択した画像P4に対する評価を入力することができる。ここでは、上述したように、評価者としてのユーザに開放されたタグ情報の項目に関してユーザが適切と思われる選択肢を指定するといった方式により評価が入力される。あるいは、評価者としてのユーザに、その評価対象画像P4のコーディネイトを自分も試着してみたいか否かを問い掛ける設問をユーザ端末装置4上に表示させ、その回答を評価の少なくとも一部として取得してもよい。ユーザが他人の評価対象画像P4に対して評価を入力すると、その評価内容がセンターサーバ2に送信されて評価データD4として記録される。上述したランキングは、「試着したい」と回答したユーザの総数等により決定されてもよい。評価された数あるいは評価したユーザの人数の大小によりランキングが決定されてもよい。
【0081】
次に、
図25〜
図30を参照して、ユーザ端末装置4の上述した機能を実現するためにユーザ端末装置4及びセンターサーバ2にて実行される各種の処理を説明する。
図25は、ユーザが2次元コードCD1をユーザ端末装置4に読み取らせて試着画像P3を閲覧する際にユーザ端末装置4にて実行されるマイページ閲覧処理の手順を示し、
図26はその処理に対応して、センターサーバ2のユーザサービス管理部41がユーザ端末装置4からのアクセスを処理するために実行するマイページアクセス制御処理の手順を示している。なお、ここでは、ユーザ端末装置4に予めユーザ端末用プログラムPG3がダウンロードされ、そのプログラムPG3の機能が利用されるものとして説明する。
【0082】
図25のマイページ閲覧処理が開始されると、ユーザ端末装置4の閲覧制御部54は、まず、2次元コード読取部52を利用して、アーケード機3に表示されている2次元コードCD1の読み取りを実施する(ステップS201)。次に、閲覧制御部54は、ステップS201で読み取った2次元コードCD1に埋め込まれているアクセス情報、すなわち試着画像P3等を含んだユーザデータD2の保存場所を指定してセンターサーバ2にアクセスを要求する(ステップS202)。
【0083】
一方、センターサーバ2のユーザサービス管理部41は、ステップS202によるアクセス要求を受け取ると
図26のマイページアクセス制御処理を開始し、まずユーザ端末装置4からのアクセス内容を判別する(ステップS401)。次いで、ユーザサービス管理部41は、ユーザ端末装置4から指定された場所に保存されているユーザデータD2がユーザ識別情報と対応付けられているか否かを判別する(ステップS402)。ユーザ識別情報との対応付けが存在しない場合、ユーザサービス管理部41は、新規にユーザ識別情報を発行する(ステップS403)。この場合、ユーザ識別情報の発行に必要なユーザの個人情報の提供をユーザ端末装置4に対して要求し、その情報が得られたことを条件として識別情報が発行されるものとしてもよい。次に、ユーザサービス管理部41は、新たに発行された識別情報とアクセス要求で指定された場所に保存されているユーザデータD2とを対応付ける(ステップS404)。その後、ユーザサービス管理部41は、新規に発行した識別情報をユーザ端末装置4に送信する(ステップS405)。その後、ユーザサービス管理部41は、ステップS202で要求されたユーザデータD2をユーザ端末装置4に対して閲覧用データとして送信する(ステップS406)。ステップS402にて対応付けがなされていると判断された場合、ユーザサービス管理部41はステップS403〜S405の処理をスキップしてステップS406に進む。ステップS406の処理後、ユーザサービス管理部41は
図26の処理を終える。
【0084】
一方、閲覧制御部54は、
図25のステップS202でアクセスを要求した後、記憶装置51にユーザ識別情報が保存されているか否か、言い換えれば既にユーザ識別情報が取得されているか否かを判別する(ステップS203)。識別情報が取得済であれば、閲覧制御部54はステップS204に進み、センターサーバ2から2次元コードCD1に対応する試着画像P3等のデータを取得し、これをマイページ画面212に表示させる(ステップS204)。一方、ステップS203にて、識別情報がまだ取得されていないと判断された場合、閲覧制御部54はセンターサーバ2からの識別情報の通知を待ち、通知後は識別情報を取得して記憶装置51に保存する(ステップS205)。その後、閲覧制御部54はステップS204に進む。ステップS204の処理後、閲覧制御部54は
図25の処理を終える。
【0085】
図27は、ユーザが自己のユーザコーディネイト画像P1aを投稿する際の処理の手順を示している。
図23のマイコーディネイト画面220が表示された状態でユーザが投稿ボタン224を操作すると、閲覧制御部54は
図27の投稿処理を開始し、まず画面220上に表示されているユーザコーディネイト画像P1a(実際は修正画像P1bである。)が他人に対する素材画像P2の原画像として利用されることの許諾を求め、あるいはセンターサーバ2の管理者等の免責事項をユーザ端末装置4の表示装置を介してユーザに通知する(ステップS211)。この場合、ユーザに同意を求め、同意を拒む場合には以降の処理をスキップして評価対象画像P4の投稿を不可能としてもよい。
【0086】
次に、閲覧制御部54は、投稿対象となるべきカテゴリをユーザに選択させる(ステップS212)。例えば、タグ情報に含まれている「カテゴリ」の項目に対する選択肢から投稿先のカテゴリをユーザに選択させる。次に、閲覧制御部54は、投稿対象となるユーザコーディネイト画像P1aによって追加されたタグ情報を取得する(ステップS213)。例えば、マイコーディネイト画面220のタグ追加ボタン223を選択操作することにより、ユーザはタグ情報を追加することができるため、ステップS213の処理時点までにユーザ端末装置4上で追加されたタグ情報を取得する。あるいは、ステップS213の時点でタグ情報の追加をユーザに要求してもよい。
【0087】
続くステップS214において、閲覧制御部54は、ステップS212、S213で取得された情報に基づいて投稿データD3を生成する。
図8及び
図9に例示して説明したように、タグ情報に含まれる項目の幾つかはユーザが自ら指定するものとされているため、ここでは投稿対象となるべきユーザコーディネイト画像P1aに対応するマイデータD21に対して、ユーザが指定したカテゴリ等をタグ情報として追加することにより、投稿データD3を生成すればよい。投稿データD3の生成後、閲覧制御部54は投稿データD3をセンターサーバ2に送信し(ステップS215)、その後、
図27の処理を終える。
【0088】
ユーザ端末装置4から投稿データD3が送信されると、センターサーバ2のユーザサービス管理部41は
図27の投稿受付処理を開始し、まず受け取った投稿データD3の内容を確認し(ステップS411)、その投稿データD3を記憶部42に保存する(ステップS412)。ここで保存された投稿データD3は各ユーザに公開され、評価対象となる。
なお、投稿データD3がセンターサーバ2に送信された後、センターサーバ2の管理者等が必要なタグ情報を追加するまで公開を保留してもよい。
【0089】
図28は、評価対象画像P4をユーザが閲覧して評価する際の処理の手順を示している。ユーザがユーザ端末装置4に表示されているメニュー部213から「みんなのコーデ」を選択すると、閲覧制御部54は
図28のコーディネイト評価処理を開始し、まず、センターサーバ2に対して、評価対象画像P4の閲覧に必要なデータを要求する(ステップS221)。これを受けて、センターサーバ2のユーザサービス管理部41は
図28の評価記録処理を開始し、ユーザ端末装置4に対して、投稿データD3を閲覧用データとして提供する(ステップS421)。ユーザ端末装置4の閲覧制御部54は、センターサーバ2から提供される閲覧用データを取得し(ステップS222)、その閲覧用データに含まれている評価対象画像P4をみんなのコーディネイト画面230に表示する(ステップS223)。一度に全ての画像P4を表示できないときは、ユーザのスクロール操作等に応じて画像P4を切り替えればよい。あるいは、コーディネイトのカテゴリ等を用いて、評価対象画像P4を絞り込んでから表示してもよい。
【0090】
次に、閲覧制御部54は、ユーザに評価したい画像P4を選択させ(ステップS224)、選択された画像P4に対する評価をユーザから取得する(ステップS225)。この場合の評価は、一例として、上述したように、評価者としてのユーザに開放された項目に関してタグ情報を追加させ、あるいは、評価者としてのユーザが画像P4のコーディネイトを試着してみたいか否かを回答させるといった手法で行われてよい。次に、閲覧制御部54は、評価した画像P4を指定して、その評価結果をセンターサーバ2に送信する(ステップS226)。その後、閲覧制御部54は
図28の処理を終える。
【0091】
一方、センターサーバ2のユーザサービス管理部41は、ユーザ端末装置4から評価結果を受け取ると、新たな評価データD4を生成してそのデータD4に評価結果を記録する(ステップS422)。上述したように、評価データD4の構造は
図8に例示した投稿データD3と同様でよいが、記録すべき評価内容に応じて適宜にデータ構造が変更されてもよい。次いで、ユーザサービス管理部41は、新たに生成された評価データD4の内容が、評価された画像P4に対応する分析データD5に反映されるように分析データD5を更新する(ステップS423)。例えば、タグ情報の「シーン」の項目に関して、評価者のユーザが「仕事」向きのコーディネイトであると指定した場合、分析データD5に記録されている「仕事」の評価回数に1を加算することにより、評価結果を分析データD5に反映させる。あるいは、評価者のユーザが「試着したい」と回答した場合、分析データD5に記録されている「試着したい」の回答数に1を加算することにより、評価結果を分析データD5に反映させる。ユーザサービス管理部41は、ステップS423の処理を終えると、
図28の評価記録処理を終える。
【0092】
なお、評価データD4に記録された評価結果の分析データD5への反映は、上記のように評価データD4が作成される都度に行われてもよいが、一定の期間が経過する毎にバッチ処理として行われてもよい。この場合には、前回の処理時から今回の処理時までに作成された評価データD4を取得し、その評価データD4に記録された内容に従って分析データD5を更新すればよい。また、分析データD5から集計データD6への処理も同様にしてユーザサービス管理部41により一定期間毎のバッチ処理として実行すればよい。
【0093】
図29は、評価対象画像P4に対する評価を被評価者のユーザに閲覧させるための処理の手順を示している。ユーザ端末装置4に対してユーザが評価結果の表示を指示すると、閲覧制御部54は
図29の評価情報閲覧処理を開始し、まずセンターサーバ2に対して自己が投稿した評価対象画像P4に対する評価情報の送信を要求する(ステップS231)。これを受けて、センターサーバ2のユーザサービス管理部41は
図29の評価情報提供処理を開始し、ユーザ端末装置4から要求された評価情報を取得する(ステップS431)。評価情報としては、例えば、ユーザが投稿した評価対象画像P4に対応する分析データ5の情報、及び集計データD6における評価対象画像P4と関連する情報(一例として評価対象画像P4の順位等)である。評価情報を取得する場合、評価対象画像P4の原画像とされているユーザコーディネイト画像P1a(又は修正画像P1b)の画像ID等を手掛かりとして評価情報が特定されてもよいし、被評価者のユーザ識別情報を利用して評価情報が特定されてもよい。
【0094】
ユーザサービス管理部41は、要求された評価情報を取得すると、その評価情報をユーザ端末装置4に提供し(ステップS432)、その後、評価情報提供処理を終える。一方、ユーザ端末装置4の閲覧制御部54は、センターサーバ2から提供された評価情報を取得し(ステップS232)、得られた情報をユーザに対して表示する(ステップS233)。例えば、閲覧制御部54は、
図24のマイコーディネイト画面220における評価結果表示部225に分析データD5の内容に応じた評価結果を表示させ、マイ画像表示部221には集計データD6にて集計された順位などの情報を表示させることにより、評価情報をユーザに表示する。被評価者のユーザに対して評価結果が提示されることにより、被評価者としてのユーザは自己のコーディネイトが他人からどのように評価されているかを客観的に把握し、自己のコーディネイトの参考として利用することができる。
【0095】
次に、
図30を参照して、評価対象画像P4から素材候補画像P5を選択して素材データD11を追加するためにセンターサーバ2のユーザサービス管理部41が実行する素材データ追加処理の手順を説明する。
図30の素材データ追加処理は、一定期間毎に繰り返し実行される処理である。ユーザサービス管理部41は、
図30の処理を開始すると、まず、集計データD6を参照して、素材データD11の候補となるべき評価対象画像P4を選択するために必要な評価情報を取得する(ステップS501)。例えば、ユーザが「試着してみたい」と回答した数が画像P4毎に集計され、そのランキングが集計データD6に保存されてユーザに集計結果が公開されている場合において、ランキングで上位に位置付けられている評価対象画像P4を候補として選択したいときには、集計データD6に記録されているランキング情報が評価情報として取得される。
【0096】
評価情報の取得後、ユーザサービス管理部41は、所定の条件を満たす評価対象画像P4を選択する(ステップS502)。この場合の条件は、相対的に高い評価が得られている評価対象画像P4が選択されるように設定される。例えば、ランキングにて一定以上の順位を獲得している画像P4が選択されるように条件が設定される。条件は、投稿データD3にタグ情報の一部として記録されたカテゴリ毎に設定されてもよい。その他にも、タグ情報のシーンの項目に用意された各選択肢(
図9参照)に関して、評価数が多い順に所定数の画像P4が選択されるように条件が設定されてもよい。この場合には、評価データD4に基づいて、各評価対象画像P4のシーンの項目に関する選択肢別の評価数を集計して分析データD5に記録し、その分析データD5を参照してシーンの項目の選択肢毎の評価数を大小比較して選択別の評価数ランキングを集計データD6に記録しておくことにより、集計データD6から適切な画像P4を選び出すことができる。
【0097】
続いて、ユーザサービス管理部41は、ステップS502で選択された画像P4に対応する素材候補データD7を生成する(ステップS503)。この場合、評価対象画像P4は修正画像P1bに対応するため、素材候補画像P5もユーザの顔部分に対して個人の特定が困難となる加工が施されたものとなる(
図2参照)。その素材候補画像P5とタグ情報等とが対応付けて記録されることにより素材候補データD7が生成される。なお、素材候補画像P5と対応付けられるポーズ情報IPとしては、評価対象画像P4の元となるユーザの画像P1がアーケード機3にて撮影されたときに動作検出装置13が検出したポーズ情報が記録されてもよいが、これに代えて、又は加えて試着画像P3を合成する際の素材画像P2に対応付けられたポーズ情報(基本ポーズ情報)が記録されてもよい。例えば、
図20のステップS104でポーズが一定レベル以上合致すると判断された際に撮影されたユーザの画像P1から評価対象画像P4が生成される場合、その画像P1の撮影時点で動作検出装置13により検出されるユーザのポーズは、合成されるべき素材画像P2の人物モデルのポーズと近似するものの必ずしも同一ではない。この場合、ユーザ自身のポーズ情報を素材候補画像P5に対応するポーズ情報IPとして記録すると、その素材候補画像P5を素材画像P2として利用する際のポーズ情報IPは、合成の元となった素材画像P2の人物モデルのポーズ情報と幾らか相違することになる。このような相違が累積されると、
図30の処理で作成される素材データD11のポーズが、当初の素材データD11における人物モデルのポーズ情報から徐々に離れるおそれがある。このような変化を防止するためには、合成対象であった素材画像P2に対応するポーズ情報IPを素材候補画像P5に対応するポーズ情報IPとして記録すればよい。その場合、
図16のステップS64で表示されるポーズ画像PPは、試着画像P3の合成で用いられた素材画像P2に対応するポーズ情報IPに基づいて表示され、かつ
図20のステップS104でも、試着画像P3の合成で用いられた素材画像P2に対応するポーズ情報IPに基づいてユーザのポーズの適否が判断されることになる。また、ステップS503の段階では、分析データD5等に従ってタグ情報の追加、修正等が行われてもよい。例えば、分析データD5に従って画像P4がユーザからどのような評価を得ているかを判別し、より多くのユーザが指定した内容へとタグ情報の各項目が変更されてもよい。素材候補データD7の生成後、ユーザサービス管理部41は、得られた素材候補データD7を素材データD11として素材データベースDB1(
図2)に追加する(ステップS504)。この後、ユーザサービス管理部41はあ
図30の処理を終える。素材データベースDB1に追加された素材データD11は、センターサーバ2の管理者等によって予め用意された素材データD11と同様にアーケード機3に提供され、ユーザの利用に供される。
【0098】
図30の処理によれば、ユーザにより相対的に高い評価を得た評価対象画像P4に関して、その原画像として撮影されたユーザの画像P1に基づいて素材画像P2を生成し、これを他のユーザに利用させることができる。服装のコーディネイトは実質的に無数に存在するため、素材データD11の全てをセンターサーバ2の管理者等が予め用意し、あるいは管理者等が素材データD11を漸次追加するだけでは、多種多様なユーザの要求に対応することは困難であり、管理者等に多大な作業負担を強いる。これに対して、
図30の処理を行うことにより、ユーザから相対的に高い評価を得たコーディネイトの画像P1に基づいて素材データD11を漸次増加させることができる。これにより、管理者等の負担を軽減しつつ、多種多様なユーザの好みや要望に広く適合するようにシステム1を漸次改善させることができる。
【0099】
以上に説明したように、本形態の試着疑似体験システム1によれば、ユーザに対して複数の素材画像P2のそれぞれにおける人物モデルのポーズに対応するポーズ画像PPが演出要素としての曲の再生や装飾画像PDの表示と同期させつつ、所定の時間間隔を空けて順次画像が切り替わるように表示され、それらのポーズ画像PPに合わせてユーザがポーズを取りながら撮影が繰り返される。したがって、ユーザに対して、演出に乗りながら複数のコーディネイトを順次着替えつつ撮影に臨むような感覚を与えることができる。そして、表示装置11によって表示出力され、あるいはプリンタ7によって印刷出力され、さらにはセンターサーバ2に送信出力された各種の試着画像P3をユーザが視認することにより、ユーザは様々なコーディネイトを試した感覚を味わうことができる。これにより、服装のコーディネイトに関するユーザのニーズを大いに満たすことが可能である。試着プレイ中の演出とポーズ画像PPの順次的な切替表示との相乗効果により試着プレイをリズミカルに、あるいはテンポよく進めることができ、娯楽的作用も高い。しかも、短時間で複数の試着画像P3を順次生成するので、業務用端末装置であるアーケード機3を特定のユーザに長時間占有させることがなく、アーケード機3の利益率を損なうおそれもない。
【0100】
ユーザの画像P1をポーズ画像PPとともに表示することにより、演出効果との相乗により、素材画像P2の人物モデルを真似てポーズを取るような所作をユーザが行う雰囲気を作り出し、それにより試着プレイの興趣を高めることが可能である。しかも、顔画像の合成にあたっては、顔向きが異なる顔画像を逐次記録し、素材画像P2の顔向きに最も近い画像を合成対象画像として選び出しているので、合成による不自然さの発生も抑えることができる。それにより、質の高い試着画像P3をユーザに提供し、それによりシステム1の興趣をさらに高めることができる。合成対象画像として選択された顔画像Pfの向きを素材画像P2の顔向きに合わせるように補正した上で合成を行うことにより、さらに自然に近い試着画像P3を合成することができ、顔輪郭等のブレンド処理によってさらにその効果を高めることができる。ユーザがポーズを合わせようとしている間にユーザを繰り返し撮影して顔画像Pfを顔向き毎に記録しているので、様々な向きの顔画像を記録することが可能であり、それにより試着画像P3の不自然さを抑える効果をさらに高めることが可能である。ポーズが合っていない場合には、
図12の画面130に例示したようにユーザに指示が与えられ、それにより、ユーザの動作を誘って顔向きが異なる画像の蓄積をさらに容易かつ確実に行い、ひいては試着画像P3の合成の品質を高められる。
【0101】
一方で、シャッタタイミングを素材画像毎に設定し、これを
図17〜
図19に例示した手法でユーザに案内しているので、カメラ12の撮影位置といった表示面外の目標位置に目線を向けた画像を取得できる可能性を高めることができる。これにより、目線が目標位置からずれた試着画像P3が生成されるおそれを低減し、試着画像P3に対するユーザの満足感を高めることができる。
【0102】
さらに、合成用の顔画像の取得と併行してユーザ自身の画像P1を取得してこれをサーバ側にユーザコーディネイト画像P1aとして保存し、ユーザの投稿を経て多くのユーザにコーディネイトを評価させ、その評価をユーザにフィードバックすることができる。それにより、コーディネイトを楽しむことだけでなく、自己のコーディネイトに対する他人の評価をユーザに把握させ、それにより、コーディネイトに関するユーザのセンスを磨き、あるいは知識を深める機会をユーザに提供することもできる。さらに、ユーザ間で相対的に評価が高いコーディネイトの画像P1aに対応する素材画像P2を生成し、これを他のユーザの利用に供することを可能としているため、素材画像P2を効率的に追加補充し、コーディネイトに関するユーザの様々な趣向に応えられるようにシステム1を漸次改善することができる。
【0103】
本発明は上述した形態に限定されることなく、種々の変形が可能である。以下、順に説明する。まず、上記の形態では、ユーザの顔の画像を素材画像における人物モデルの顔の向きと合せるように補正し、補正後の顔の画像を素材画像と合成するという2段階の処理を採用したが、顔画像の補正は必ずしも必要ではない。許容される不自然さのレベルによっては、顔向きのずれが最も小さい顔の画像を合成対象画像として選択し、これを顔向きの補正なしで合成するだけでも、十分な品質の合成画像が得られる場合がある。そのような場合は、補正処理が省略されてもよい。ブレンド処理も必要な限度で実施すれば足り、ユーザの顔の画像と素材画像との状況によってはブレンド処理が省略されてもよい。
【0104】
上記の形態では、ユーザの撮影をカメラ12にて実施する一方で、ユーザの顔向きの検出を動作検出装置13を用いて行なっているが、カメラ12が撮影した画像から顔向きを検出することが可能であれば、動作検出装置13が省略されてもよい。あるいは、動作検出装置13それ自体がカメラを含んでいる場合には、そのカメラが撮影手段として兼用されてもよい。
【0105】
上記の形態では、試着画像P3を生成するためのアーケード機3を本発明における画像合成装置の一例として取り上げたが、本発明はそのような例に限らず、ユーザを撮影して得られる顔の画像を素材画像の人物モデルの顔部分に合成する限り、合成画像を得る目的を問わず広く適用できるものである。本発明に係る画像合成装置は、業務用端末装置の少なくとも一部として構成される例に限らない。例えば、ユーザ端末装置4を利用して本発明に係る画像合成装置が構成されてもよい。一方、本発明の画像合成装置は、サーバクライアント型のシステムとして構成されてもよい。例えば、ユーザの撮影手段及び表示手段といったクライアント側に必須のハードウエアのみをクライアントに設け、それらの制御をサーバ側で実施することにより、いわゆるシンクライアント型システムとして本発明に係る画像合成装置が構成されてもよい。あるいは、業務用端末装置を含めることなく、サーバとユーザ端末装置とによって画像合成装置システムが構築されてもよい。例えば、カメラ12および動作検出装置13の有する機能(以下、本段落においてこれらを「カメラ機能」と称す)を備えたユーザ端末装置あるいはカメラ機能と接続してカメラ機能から撮像画像等の情報を取得できるようにしたユーザ端末装置を、アーケード機3の代わりに用いることで、例えば自宅等のアーケード機3が設置しにくい場所であっても、画像合成装置を構築することができるようになる。
【0106】
上述した実施の形態及び変形例のそれぞれから導き出される本発明の各種の態様を以下に記載する。なお、以下の説明では、本発明の各態様の理解を容易にするために添付図面の参照符号を括弧書にて付記するが、それにより本発明が図示の形態に限定されるものではない。
【0107】
本発明の一態様に係る画像合成装置(3)は、人物モデルが記録された素材画像(P2)を、前記人物モデルの顔の向きを特定する顔向き情報と対応付けて記憶する記憶手段(31)と、ユーザを撮影する撮影手段(12)と、前記ユーザの少なくとも顔を含む画像(P1)が繰り返し撮影されるように前記撮影手段を制御する撮影制御手段(32、S21、S31、S73)と、前記撮影手段にて撮影されたときのユーザの顔の向きを判別する顔向き判別手段(32、S33)と、前記顔向き判別手段の判別結果と前記素材画像に対応する顔向き情報とに基づいて、前記素材画像との合成に適したユーザの顔の画像(Pf)を、前記撮影手段が撮影したユーザの複数の画像から合成対象画像として選択する画像選択手段(32、S105、S106)と、前記合成対象画像と前記素材画像とに基づいて、前記素材画像の顔の部分にユーザの顔の画像を合成した合成画像(P3)を生成する合成手段(32、S107〜S110)と、を備えたものである。
【0108】
本発明の一態様に係る画像合成方法は、撮影手段(12)によって撮影されたユーザの顔の画像(Pf)と、人物モデルが記録された素材画像(P2)とを、前記素材画像に対応付けられた、前記人物モデルの顔の向きを特定する顔向き情報を参照しつつ合成する画像合成方法であって、前記ユーザの少なくとも顔を含む画像が繰り返し撮影されるように前記撮影手段を制御する手順(S21、S31、S73)と、前記撮影手段にて撮影されたときのユーザの顔の向きを判別する手順(S33)と、前記顔の向きを判別する手順における判別結果と前記素材画像に対応する顔向き情報とに基づいて、前記素材画像との合成に適したユーザの顔の画像を、前記撮影手段が撮影したユーザの複数の画像から合成対象画像として選択する手順(S105、S106)と、前記合成対象画像と前記素材画像とに基づいて、前記素材画像の顔の部分にユーザの顔の画像を合成した合成画像(P3)を生成する手順(S107〜S110)と、を備えたものである。
【0109】
本発明の一態様に係るコンピュータプログラム(PG1)は、撮影手段(12)によって撮影されたユーザの顔の画像(Pf)と、人物モデルが記録された素材画像(P2)とを、前記素材画像と対応付けられた、前記人物モデルの顔の向きを特定する顔向き情報を参照しつつコンピュータ(30)により合成するためのコンピュータプログラムであって、前記コンピュータを、前記ユーザの少なくとも顔を含む画像(P1)が繰り返し撮影されるように前記撮影手段を制御する撮影制御手段(32、S21、S31、S73)、前記撮影手段にて撮影されたときのユーザの顔の向きを判別する顔向き判別手段(32、S33)、前記顔向き判別手段の判別結果と前記素材画像に対応する顔向き情報とに基づいて、前記素材画像との合成に適したユーザの顔の画像を、前記撮影手段が撮影したユーザの複数の画像から合成対象画像として選択する画像選択手段(S32、S105、S106)、及び前記合成対象画像と前記素材画像とに基づいて、前記素材画像の顔の部分にユーザの顔の画像を合成した合成画像(P3)を生成する合成手段(32、S107〜S110)、として機能させるように構成されたものである。
【0110】
本発明の各態様によれば、ユーザが繰り返し撮影される間にユーザの顔が動くため、顔向きが異なる多数の顔の画像を取得することができる。ユーザが撮影されたときの顔の向きが判別されるため、ユーザの顔の画像と顔の向きとを対応付けることもできる。さらに、ユーザの顔の向きと素材画像における人物モデルの顔の向きとを対比することにより、合成に適した顔の向きを有する顔の画像、例えば、素材画像における人物モデルの顔の向きとのずれが相対的に小さい顔の向きを有するユーザの顔の画像、あるいは顔の向きのずれが最も小さくなる顔の画像を合成対象画像として選択することができる。したがって、選択された合成対象画像と素材画像とに基づいて素材画像の顔の部分に顔の画像を合成すれば、合成時に発生し得る不自然さを抑え、なるべく自然な合成画像を得ることができる。
【0111】
なお、本発明の一態様に係るコンピュータプログラムは、記憶媒体に記憶された状態で提供されてもよい。この記憶媒体を用いれば、例えばコンピュータに本発明に係るコンピュータプログラムをインストールして実行することにより、そのコンピュータを利用して本発明のゲームシステムを実現することができる。コンピュータプログラムを記憶した記憶媒体は、CDROM等の非一過性の記憶媒体であってもよい。
【0112】
本発明の一態様において、前記画像選択手段は、前記ユーザの複数の画像から、前記素材画像に対応する顔向き情報にて特定される顔の向きに対するユーザの顔の向きのずれが相対的に小さい顔の画像を前記合成対象画像として選択してもよい。これにより、顔の向きのずれに起因する合成画像の不自然さを抑える上で有利な顔の画像を選択することができる。
【0113】
本発明の一態様において、前記合成手段は、前記画像選択手段が選択した合成対象画像における顔の向きと前記素材画像に対応する顔向き情報にて特定される前記人物モデルの顔の向きとのずれが減少するように前記選択手段が選択した顔の画像の向きを補正する画像補正手段(32、S34、S108)と、補正された顔の画像を前記素材画像の顔の部分に合成する合成実行手段(32、S109、S110)と、をさらに備えていてもよい。これによれば、合成に適した画像として選択された顔の画像を、顔の向きがずれが減少するように補正してから素材画像と合成するため、合成画像の不自然さをより抑えることができる。
【0114】
さらに、前記画像補正手段は、前記合成対象画像におけるユーザの顔の向きが前記素材画像に対応する顔向き情報にて特定される前記人物モデルの顔の向きと合うように前記合成対象画像におけるユーザの顔の向きを補正してもよい。これによれば、画像選択手段が、顔の向きが一致するように向きが補正されるので、合成画像の不自然さをさらに抑えることができる。
【0115】
また、前記画像補正手段は、前記合成対象画像におけるユーザの顔の画像に応じたメッシュモデル(MM)を生成し(S34)、該メッシュモデルを構成する多数の小領域(SA)の座標を前記合成対象画像における顔の向きと前記人物モデルの顔の向きとのずれに応じて補正することにより、前記ユーザの顔の向きを補正してもよい。これにより、ユーザの顔の画像が仮想的に回転して顔の向きが一致するように補正を施すことができる。それにより、なるべく自然な合成画像をより確実に生成することができる。
【0116】
本発明の一態様において、前記合成実行手段は、前記ユーザの顔の画像と前記素材画像との境界部分にて、顔の輪郭、前髪及び肌色の少なくとも一つの要素を対象としてブレンド処理を施すようにしてもよい(S110)。顔の輪郭、前髪、肌色の要素については、ユーザと人物モデルとの間で差が生じ易いため、これらの少なくとも一つに関してブレンド処理を施すことにより、境界部分での差を目立たなく処理し、より自然に近い合成画像を生成することが可能である。
【0117】
本発明の一態様において、前記記憶手段が記憶する素材画像は、前記人物モデルの顔部分が消去された画像であってもよい。これによれば、人物モデルの目や鼻等を合成時に処理する必要がなく、画像合成の手間を軽減することができる。