以下、添付図面を参照しつつ本発明の各実施形態について説明する。
<1.第1の実施形態>
<1.1 全体構成>
図1は、本発明の第1の実施形態に係る自動写真作成装置である遊戯用写真作成装置の外観を示す図である。より詳細には、図1(a)は、この遊戯用写真作成装置を横から見た外観側面図であり、図1(b)は、上から見た外観平面図である。この遊戯用写真作成装置は、利用者が入る撮影室2と、利用者を撮影して撮影画像を取得する撮影ユニット3と、撮影画像に対する利用者による落書き(描画操作)を含む編集操作を受け付け、当該撮影画像に合成した合成画像を生成する編集ユニット4と、合成画像を出力する出力ユニット5とを備えている。図2は、撮影ユニット3の正面図であり、図3は、編集ユニット4の正面図であり、図4は、出力ユニット5の正面図である。以下、図1から図4を参照しつつ、本実施形態に係る遊戯用写真作成装置の全体構成について説明する。
撮影室2は、略直方体形状であって、撮影ユニット3は、内部に入る利用者から見て前の面である撮影室2の前面に沿って配置されている。なお、撮影室2の左右両側面の一部には、それぞれ利用者が出入りするための開口部と、当該開口部の一部または全部を覆う遮光カーテンとが設けられている。また、撮影室2の内部に入る利用者から見て後ろの面である背面にはクロマキー合成処理のための単一の色(ここでは青色または緑色)が付されている。なお、これらの色は、例えば、撮影ユニット3の撮影範囲に含まれる床面等にも付されていてもよい。
撮影ユニット3は、利用者を撮影する撮像手段としてのカメラ10と、当該カメラ10の上下左右の位置に配置され閃光を発するストロボ11,12,13L,13R,14と、当該カメラ10の下方に配置され利用者からの操作の受け付けや撮影画像の表示等を行う撮影操作用タッチパネル20とを備えている。
カメラ10は、典型的には、CCD(電荷結合素子)を利用してデジタル画像信号を生成するデジタルカメラであって、利用者を撮影し、その撮影画像を表す画像信号を出力する。ストロボ11〜14は、撮影のための充分な光を得るために利用者に向かって閃光を発する。撮影操作用タッチパネル20は、撮影の際に利用者による各種操作を受け付けるための操作画面を提供するとともに、上記画像信号に基づく画像をリアルタイムで表示するように構成されている。
図5は、撮影操作用タッチパネル20の表示構成を示す模式図である。図5に示すように、撮影時点において、撮影操作用タッチパネル20には、リアルタイムで撮影画像を表示するためのリアルタイムプレビュー領域201と、ポーズの見本を表示するためのポーズ見本表示領域202と、撮影によって得られる落書き対象画像を表示するための落書き対象画像表示領域203とが表示されている。なお、リアルタイムプレビュー領域201には、詳しくは後述するように、利用者の位置に応じて変形された背景画像が撮影画像に対してクロマキー合成表示される。
また撮影ユニット3は、コンピュータを中心に構成され各部の制御等を行う制御装置、I/O制御装置、および編集ユニット4と通信を行うためのネットワークアダプタ等を内蔵している。また、撮影ユニット3は、前面下方にコイン投入口26を備えている。
編集ユニット4は、撮影ユニット3と同様のコンピュータを中心に構成され各部の制御等を行う制御装置、および撮影ユニット3等と通信を行うためのネットワークアダプタ等を内蔵している。また、編集ユニット4は、図1(b)に示すように、2組の利用者がプレイ可能なように2つのユニット4a、4bに分かれている。そのうちの一方のユニット4aには、落書き領域や落書きのためのメニュー、ツール等を表示する領域を含みGUI(Graphical User Interface)表示手段として機能する編集操作用タッチパネル400と、当該編集操作用タッチパネル400に対する操作に使用されるポインティングデバイスとしてのタッチペン49L、49Rとが設けられている。なお、他方のユニット4bについても同様の構成となっている。ここで図1(a)において手前に見えるユニット4aを「落書きブースA」と呼び、その反対側(図では裏側)のユニット4bを「落書きブースB」と呼ぶ。
本実施形態における編集操作用タッチパネル400は、各ユニット4a、4bにおいてそれぞれ2人または3人の利用者が同時に落書きを行えるような表示構成となっている。なお、本説明においては、左側の利用者が使用する構成要素には「L」を含む参照符号を付し、右側の利用者が使用する構成要素には「R」を含む参照符号を付している。また、3人の利用者が使用する場合には、これに加えて、中央の使用者が使用する構成要素に「C」を含む参照符号を付している。
また、本実施形態における編集操作用タッチパネル400は、複数のタッチペン49L、49Rによる操作位置を同時に検出可能に構成されており、かつ、検出される各操作位置が、タッチペン49L、49Rのうちのいずれの操作に対応するのかも検出可能となっている。例えば、編集操作用タッチパネル400として静電容量方式のタッチパネルを使用した場合には、このような複数の操作位置の同時検出と操作されたタッチペンの識別とが可能である。
出力ユニット5は、図4に示すように、典型的には前面下方に、編集ユニット4で編集操作が行われた合成画像を印刷した写真シールや写真カード等を取り出す取出口33を備えている。また、出力ユニット5は、例えば携帯電話端末に内蔵される赤外線ポートにより、例えばデコメール(登録商標)画像等の素材画像や撮影画像に落書きをした合成画像などを利用者の携帯電話端末に転送する際に利用者によって操作される出力操作用タッチパネル30と、出力操作用タッチパネル30の下方に配置され上記素材画像等を赤外線信号として携帯電話端末に向けて直接送信するための赤外線ポート(非接触通信ポート)31と、上記通信の際に必要な操作方法や効果音などを音声によって利用者に知らせるスピーカ32とを備えている場合もある。
出力操作用タッチパネル30は、利用者が合成画像を印刷された写真シール等だけでなく携帯電話端末でも見たい場合に、上記素材画像等を上記非接触通信機能を備えた携帯電話端末に送信するのに必要な各種操作を受け付けるための操作画面を提供するように構成されていている。なお、当該操作は主に合成画像の写真シール等が印刷されるまでの時間を利用して行われるので、利用者は写真シール等が印刷されるまでの時間を持て余すことなく有効に利用することができる。また、出力ユニット5に出力操作用タッチパネル30を設けずに、当該操作を編集ユニット4の編集操作用タッチパネル400で行うようにすることもできる。
このような出力ユニット5も、撮影ユニット3と同様のコンピュータを中心に構成され各部の制御等を行う制御装置および編集ユニット4等と通信を行うためのネットワークアダプタ等を内蔵しているほか、合成画像を写真シール等として印刷するネットワークプリンタ35を備えている。
以上のような構成において、利用者は、撮影室2において撮影を行った後、編集ユニット4の落書きブースAまたは落書きブースBの編集操作用タッチパネル400を使用することにより、撮影画像に基づいて生成された落書き対象画像に対して落書きを行う。そして、利用者は、落書きによって生成された合成画像をネットワークプリンタによって印刷したり、赤外線通信機能を有する携帯電話端末に画像を送信し、携帯電話端末で受信した画像を端末画面に表示させたりする。
<1.2 機能的構成>
図6は、本実施形態に係る遊戯用写真作成装置の要部を機能面から見た構成を示すブロック図である。この図6に示す遊戯用写真作成装置は、機能的には、主として利用者を撮影する処理(撮影処理)を行うための撮影処理部7と、主として落書き対象画像に対する利用者の落書き操作に応じて当該落書き対象画像の編集処理を行うための編集処理部8と、編集処理が行われた落書き対象画像を写真シール等として出力したり、作成された素材画像等を非接触通信を利用して携帯電話端末に出力したりする処理(出力処理)を行う出力処理部9とから構成されている。
撮影処理部7は、第1の制御部70と、撮像部71と、第1の表示・操作部72と、I/O制御部73と、照明部74と、第1の通信部75とによって構成されている。編集処理部8は、第2の制御部80と、第2の表示・操作部81,82と、第2の通信部83とによって構成されている。出力処理部9は、第3の制御部90と、第3の表示・操作部91と、印刷出力部92と、音声出力部93と、非接触通信部94と、第3の通信部95と、無線通信部96とによって構成されている。ネットワークアダプタである第1、第2および第3の通信部75,83,95は、LAN(Local Area Network)であるネットワーク6を介してそれぞれ相互に通信可能となっている。
撮像部71は、CCD等の撮像素子を用いて構成されるカメラ10に相当し、リアルタイムに画像を取り込んで当該画像(撮影画像)を表す画像信号を出力する。この画像信号は第1の制御部70に入力されて、その内部のメモリに撮影画像データとして一時的に記憶される。また、この撮影画像データは撮影画像信号として第1の制御部70から第1の表示・操作部72に供給され、当該撮影画像信号に基づく撮影画像がリアルタイムに表示される。なお実際には、撮影画像として保存される撮影画像データは高解像度の静止画データであり、リアルタイム表示を行うための撮影画像データ(「スルー画像データ」とも呼ばれる)は低解像度の動画データであるが、撮影対象は同一であるので、以下では原則としてこれらを特に区別しないで説明する。
第1の表示・操作部72は、撮影操作用タッチパネル20に相当し、撮影画像に付加されるべき背景画像(および前景画像)を選択する操作やシャッター操作等を受け付ける。これらの操作を示す信号は、操作信号として第1の制御部70に入力される。ここで、利用者を撮影するための(選択された撮影メニューに対応する)所定の処理が開始されると、第1の表示・操作部72に利用者のための案内が表示され、その後の第1の制御部70からの指示に基づき、数秒程度の予め決められた時間の経過後にカメラ10の撮影方向にストロボ11〜14から閃光が放たれる。そのとき、利用者の撮影画像を表す信号として撮像部71から出力される画像信号が第1の制御部70に入力され、第1の制御部70内のメモリまたは補助記憶装置としてのハードディスク装置等に撮影画像データとして格納される。
照明部74は、カメラ10の上下左右の位置に配置されたストロボ11,12,13L,13R,14に相当し、第1の制御部70からの指示に基づきI/O制御部73によって点灯/消灯および調光が制御される。I/O制御部73は、撮影ユニット3に内蔵されるI/O制御装置に相当し、第1の制御部70からの指示に基づき、照明部74を制御する。また、後述のコイン検出部(不図示)からの検出信号等の入力信号を第1の制御部70へ転送する。第1の通信部75は、撮影ユニット3に内蔵されるネットワークアダプタに相当し、ネットワーク6を介したデータ送受信の際のインタフェースとして機能する。
第1の制御部70は、撮影ユニット3に内蔵され、CPU、メモリ、フレームバッファ、タイマー、補助記憶装置等を含むコンピュータを中心に構成される制御装置に相当し、内部メモリに格納された所定プログラムをCPUが実行することにより、上述のようにして入力される操作信号等に基づき各部を制御するために、上述のように各部に指示を出す。また撮影された画像に基づいて落書き対象画像を生成する。生成された落書き対象画像はフレームバッファに書き込まれることにより、第1の表示・操作部72に表示される。さらに、第1の制御部70は、落書き対象画像に所定の背景画像や前景画像を描画した画像である合成画像を生成する。この落書き対象画像には、詳しくは後述するようにマスクの作成に使用されるキー色となる背景色が付されており、周知のクロマキー合成処理の手法に基づき、利用者の像のみを含む撮影画像部分を抽出し、当該撮影画像部分が背景画像中に嵌め込まれるように合成する。このように生成された合成画像はフレームバッファに書き込まれることにより第1の表示・操作部72に表示される。
また、第1の制御部70は、撮影画像に対して周知の顔認識処理(顔検出処理)を行うことにより、当該撮影画像に含まれる利用者の顔の位置を検出し、当該位置に応じて変形させた上記背景画像(さらに場合によって前景画像)を第1の表示・操作部72に連続的に合成表示させるとともに、合成画像に含まれるべき撮影画像が取得される時点で同様に変形された上記背景画像と撮影画像とを合成した合成画像を生成する。この点についても詳しく後述する。こうして撮影および合成画像の生成が終了すると、生成された合成画像は利用者の入力操作に応じて適宜選択された後、第1の通信部75を介して、編集ユニット4に対応する第2の制御部80へ送られる。なお、上記顔認識処理は、利用者の位置が検出可能なものであればよく、利用者を個体識別する必要はないが、識別してもよい。また後述するように、顔の向きを検出してもよい。さらに利用者の位置が検出可能であれば、顔認識処理を使用しない周知の様々な位置検出手法を採用可能であり、例えば利用者の立つ位置を検出するため床に(典型的にはマトリクス状に)配置される圧力センサや、複数の光センサ、超音波センサなどを設ける構成であってもよい。もっとも、これらのセンサを新たに設けるにはコストがかかるため、典型的にはソフトウェアのみの処理で位置検出することができる顔認識処理を使用することが好適である。
上記の構成要素の他、撮影ユニット3におけるコイン投入口26に投入されたコインを検出するためのコイン検出部(不図示)が更に撮影ユニット3に設けられており、第1の制御部70は、コイン検出部での検出結果に基づき、利用者に所定時間だけ撮影や背景画像および前景画像の選択や落書き等、本遊戯用写真作成装置によるプレイを許容するように各部を制御する。このコイン検出部による検出動作やその検出結果に基づく第1の制御部70による制御動作は、従来の遊戯用写真作成装置と同様であって周知であるので、その詳しい説明を省略する。
第2の制御部80は、編集ユニット4に内蔵され、CPU、メモリ、フレームバッファ、および補助記憶装置等を含むコンピュータを中心に構成される制御装置に相当し、内部メモリに格納された所定プログラムをCPUが実行することにより、編集処理に関する全体の制御を行う。すなわち第2の制御部80は、第2の表示・操作部を制御するGUI制御手段として機能する。また、第2の制御部80は、第1の制御部70から送られてきた落書き対象画像(撮影画像を含む画像)に対する落書き処理を行うための操作信号に基づき、その落書き対象画像に所定画像を描画した画像である合成画像を生成する。このような合成画像の生成が終了すると、利用者による分割レイアウトの選択指示を受け付けられ、選択された分割レイアウトを示す情報および生成された合成画像は出力ユニット5に送られる。なお、印刷出力部92が別の合成画像を出力中である場合には、その旨が表示されるとともに終了を待って送られる。
第2の表示・操作部81、82は、落書きのためのGUI表示手段として機能する編集操作用タッチパネル400に相当し、タッチペンを用いた利用者の操作を受け付ける。第2の通信部83は、編集ユニット4に内蔵されるネットワークアダプタに相当し、ネットワーク6を介したデータ送受信の際のインタフェースとして機能する。
第3の制御部90は、出力ユニット5に内蔵され、CPU、メモリ、フレームバッファ、タイマー、および補助記憶装置等を含むコンピュータを中心に構成される制御装置に相当し、内部メモリに格納された所定プログラムをCPUが実行することにより、出力処理に関する全体の制御を行う。第3の制御部90は、第2の制御部80から送られてきた合成画像を合成画像データとしてメモリに格納する。印刷出力部92は出力ユニットに内蔵されるネットワークプリンタ35に相当し、メモリに格納された合成画像データを(適宜にレイアウトした)写真シール(または写真カード)として印刷する。印刷された写真シール等は、出力ユニット5の正面下方に設けられた取出口33から取り出される。
また、第3の制御部90は、第2の制御部80から送られてきた分割レイアウト情報および合成画像に基づいて写真シール等の印刷処理を開始すると同時に、利用者の入力操作を受け付けるための後述する操作画面を第3の表示・操作部91に表示する。この第3の表示・操作部91は出力操作用タッチパネル30に相当し、入力手段として機能する。出力操作用タッチパネル30は、液晶ディスプレイまたはCRT(Cathode Ray Tube)等の表示手段として機能するモニタと、その上面に積層され、入力座標を認識することができる1人用のタッチパネルから構成される。モニタは複数の画面に分割された操作画面を表示することができ、タッチパネルは分割された複数の画面ごとに利用者のタッチペンを用いた入力操作を受け付け、受け付けた入力操作を操作信号として第3の制御部90に入力する。
第3の通信部95は、出力ユニット5に内蔵されるネットワークアダプタに相当し、ネットワーク6を介したデータ送受信の際のインタフェースとして機能する。
ここで、第3の制御部90は、落書きを終えてから操作を始めるまでの間、補助記憶装置に予め記憶されているデモ画像(デモンストレーション用の画像)をフレームバッファに書き込むことにより第3の表示・操作部91に表示する。また音声出力部93は、スピーカ32に相当する。音声出力部93は、第3の表示・操作部91に表示される操作画面と連動して入力操作方法を利用者に説明し、また第3の表示・操作部91にデモ画像が表示されているときにデモ画像に応じた楽曲等を流す。なお、入力操作方法の説明や楽曲等は補助記憶装置としてのハードディス装置等に予め格納されている。
その後、第3の制御部90は、第3の表示・操作部91の表示や音声出力部93による音声や効果音等により合成画像の印刷が完了するまで後述するミニゲームを利用者に提供し続ける。このミニゲームの内容も同様にハードディスク装置等に予め格納されている。
ここで、各制御装置において実行される上記所定プログラムは、例えば、そのプログラムを記録した記録媒体であるDVD−ROMによって提供される。すなわち、上記所定プログラムの記録媒体としてのDVD−ROMが補助記憶装置として制御装置内に内蔵されたDVD−ROM駆動装置に装着され、そのDVD−ROMから所定プログラムが読み出されて補助記憶装置としてのハードディスク装置にインストールされる。また、上記所定プログラムは、DVD−ROM以外の記録媒体(CD−ROM等)や通信回線を介して提供されてもよい。そして、本遊戯用写真作成装置の起動のための操作がなされると、ハードディスク装置にインストールされた所定プログラムは、制御装置内のメモリに転送されてそこに一時的に格納され、制御装置内のCPUによって実行される。これにより、制御装置による上記各部の制御処理が実現される。
なお、上記第1から第3までの制御部70,80,90は、異なるユニットに内蔵される異なるコンピュータを含む装置に相当するものとして説明したが、このような構成は一例であって、上記第1から第3までの制御部70,80,90は、2つ以下または4つ以上の装置により実現されてもよい。この場合には各装置において、それぞれ実現されるべき機能に応じたプログラムが実行される。また、撮影ユニット3、編集ユニット4、および出力ユニット5についても、2つ以下または4つ以上のユニットにより構成されてもよい。
<1.3 遊戯用写真作成装置における処理手順>
上述したように、この遊戯用写真作成装置には、撮影ユニット3と編集ユニット4と出力ユニット5とが含まれている。撮影ユニット3では撮影処理が行われ、編集ユニット4では後述する落書き編集処理が行われ、出力ユニット5では出力処理が行われる。なお、或る利用者が撮影ユニット3でプレイしている時に他の利用者は編集ユニット4でプレイし、さらに他の利用者は出力ユニット5で合成画像を出力することができるように構成されている。すなわち、この遊戯用写真作成装置は、撮影処理と落書き編集処理と出力処理とを並行して行うことができる。以下に、撮影処理を中心に、落書き編集処理、および出力処理の手順の概要についても最後に説明する。
<1.3.1 撮影処理>
図7は、本実施形態における撮影処理の手順を示すフローチャートである。この遊戯用写真作成装置が使用されていない時(プレイが行われていない時)には、撮影操作用タッチパネル20にはデモ画像が表示されている。デモ画像の表示中に利用者がコイン投入口26にコインを投入すると、プレイが開始される(ステップS100)。
プレイが開始されると、第1の制御部70は、利用者による撮影モードの選択を受け付ける(ステップS105)。ステップS110では、例えば画質(具体的にはコントラストが高いくっきりとした画質、柔らかなふんわりとした画質、または透明感のあるクールな画質のうちのいずれか)を選択し、明るさを選択し、自動で撮影するか手動で撮影するかを選択し、自動で撮影する場合には撮影用テーマの選択が行われる。この場合、第1の制御部70は、予め用意された複数の撮影用テーマの中から1つ以上の撮影用テーマを利用者に選択させるための画面を撮影操作用タッチパネル20に表示し、利用者による選択操作を受け付ける。そして、第1の制御部70は、利用者の選択操作に基づいて選択情報を取得し、選択された撮影用テーマに基づいて、撮影の際に使用するフレームと背景との組み合わせを決定する。また手動で撮影する場合は、上記フレームと背景とを利用者が自由に決定する。
続いてステップS110において、第1の制御部70は、利用者の位置に応じてフレーム画像に含まれる背景を変形する処理を行う(背景画像変形処理)。この背景画像変形処理は、特徴的な構成であるため、詳しく後述する。また、背景画像を変形させるのではなく、利用者の位置に応じて新しい背景画像を部分的に追加し表示されていた背景画像を部分的に消去するような背景の変化処理については、第2の実施形態において詳しく説明する。なお以下では、便宜上、フレーム画像には背景画像のみが含まれているものとして説明する。
次にステップS120において、第1の制御部70は、落書き対象となる画像およびフレーム画像(ここでは背景画像)のクロマキー合成表示処理を行う。このクロマキー合成表示処理は、一般的にはクロマキーマスクを作成する処理と、背景画像を合成する処理とを含む。クロマキーマスクとは、例えば周知の合成マスク(アルファチャネル)であって、対象となる撮影画像のうちのキー色(ここでは青色または緑色)を有する領域、すなわち撮影室2の背面の像が占める領域を透明とし、それ以外の領域を非透明とするためのデータである。この合成マスクは一般的には対象となる画像の画素毎に0(完全透明)または255(完全非透明)の透過度を示す値αが設定される。このようなクロマキーマスクを使用することにより、撮影画像の非透明領域(α=255)に相当する背景画像の領域は隠され(マスクされ)、その透明領域(α=0)に相当する背景画像の領域は見えるように合成される。そのため、あたかも対象となる撮影画像の非透明領域の部分が切り取られ、切り取られた当該部分が上記背景画像に対して貼り付けられたような合成画像が得られる。このようにして得られる合成画像は、撮影操作用タッチパネル20に表示される。なお、ここでの撮影画像は実際には撮影画像として保存される(高解像度の)静止画データではなく、リアルタイム表示を行うためのスルー画像データである。このスルー画像データは、撮影処理全体の開始時点から終了時点まで(S100〜S170)、カメラ10から(広義の撮影画像として)連続的に取得される。このようなクロマキー処理によって遊戯性の高い写真作成を行うことができる。なお、この背景画像は撮影開始前あるいは撮影中に利用者によって適宜選択される。
その後、ステップS125に進み、1セット3回の撮影が行われるべき撮影タイミングであるか否かが判定され、撮影タイミングでない場合(ステップS125においてNoの場合)には撮影タイミングとなるまで上記背景画像変形処理およびクロマキー合成表示処理が繰り返され(S125→S110→S120→S125)、撮影タイミングである場合(ステップS125においてYesの場合)には、ステップS130における撮影処理に進む。
ステップS130における撮影処理では、前述したように数秒程度の予め決められた時間の経過後にカメラ10の撮影方向に閃光が放たれ、カメラ10によって取得された撮影画像データが第1の制御部70のメモリに格納される。
次に、ステップS140において、ステップS130において得られた撮影画像に対して、ステップS110において得られる背景画像をクロマキー合成した合成画像、すなわちステップS120においてなされる処理と同様の(厳密には低解像度のスルー画像を上記背景画像に合成するのではなく、高解像度の静止画像である撮影画像を上記背景画像に合成する)クロマキー合成処理により生成される合成画像が、落書き対象画像として撮影操作用タッチパネル20に表示される。なお、このステップS140の処理においても、上記ステップS110における背景画像変形処理と同一の背景画像変形処理が行われるが、ここでの背景画像変形処理の内容は、後述するステップS110における詳細な処理の説明に代えて、ここでは説明を省略する。
続いて、ステップS150において、第1の制御部70は、予め定められた枚数(セット数)の撮影が終了したか否かを判定する。判定の結果、当該枚数の撮影が終了していればステップS160に進み、当該枚数の撮影が終了していなければステップS110に戻る。なお、実際には撮影のための制限時間(例えば3分)が設けられる。
ステップS160では、複数の落書き対象画像の中から実際の落書き対象となる画像の(利用者による)選択が行われる。具体的には、第1の制御部70は、落書きおよび印刷に使用する画像を利用者に選択させるために、落書き対象画像の一覧を撮影操作用タッチパネル20に表示し、利用者による選択操作を受け付ける。そして、第1の制御部70は、利用者によって選択された画像を実際の落書き対象画像として第2の制御部80に送る。ステップS160における処理が終了すると、ステップS170の処理に進む。ステップS170では、案内画面の表示が行われる。具体的には、第1の制御部70は、利用者を編集ユニット4のいずれか(4aまたは4b)に導くための画面を撮影操作用タッチパネル20に表示する。これにより、撮影処理が終了する。なお、本実施形態では、上記ステップS110における背景画像変形処理の内容に特徴を有するが、この点については図9を参照して後述するものとし、次に落書き編集処理の内容について説明する。
<1.3.2 落書き編集処理>
図8は、本実施形態における落書き編集処理の手順を示すフローチャートである。第2の制御部80が所定のプログラムに基づき図8に示すように動作することで、この落書き編集処理が実現される。この処理では、上述した撮影処理の終了後、第2の制御部80は、ネットワーク(LAN)6を介して第1の制御部70から送られる落書き対象画像を取得する(ステップS210)。
次に、第2の制御部80は、第1の制御部70によって行われた撮影処理により取得され、利用者によって選択された複数の落書き対象画像を第1の制御部70から受け取り(ステップ210)、続いてタイマー46が所定の時間(具体的には、落書きを許可する時間)に設定され、カウントダウンが開始される(ステップS220)。
タイマー46のカウントダウン開始後、編集ユニット4を構成するユニット4a,4bのそれぞれの編集操作用タッチパネル400において、落書き編集操作画面が表示され、利用者による落書き操作(描画操作)が受け付けられる(ステップS230〜S250)。なおこの落書き編集処理時において、編集ユニット4では、撮影画像に基づく落書き対象画像に対する編集操作の他に、デコメール画像等の素材画像を作成するための編集操作が受け付けられてもよい。
上記処理は、具体的には編集操作画面内のボタンやツールなどの1つをタッチペンでタッチすると、その座標値が入力され(S230)、対応する落書き画面処理(S240)が行われる。その後ステップS250においてタイマー46の残り時間が0になる(または利用者が終了させる操作を行う)ことにより落書きが終了したかが判定され、終了していない場合(ステップS250においてNoの場合)にはステップS230に戻り、落書きが終了するまで処理が繰り返され、落書きが終了した場合(ステップS250においてYesの場合)には、処理はステップS260に進む。
ステップS260では、出力される写真の分割パターンの選択が行われる。具体的には、第2の制御部80は、予め用意された複数の分割パターンの中からいずれかの分割パターンを利用者に選択させるための操作画面を編集操作用タッチパネル400に表示し、利用者による選択操作を受け付ける。そして、第2の制御部80は、利用者の選択操作に基づいて、選択情報を取得する。ステップS260の処理が終了した後、ステップS270の処理に進む。
ステップS270では、案内画面の表示が行われる。具体的には、第2の制御部80は、利用者を出力ユニット5に導くための画面を編集操作用タッチパネル400に表示する。これにより、落書き編集処理が終了する。落書き編集処理が終了すると、出力ユニット5において、編集ユニット4から送られてきた合成画像に基づいて写真シール等の印刷処理が開始されることなどについては前述した通りである。次に、上記ステップS110における背景画像変形処理の詳しい内容について図9を参照して説明する。
<1.3.3 背景画像変形処理>
図9は、本実施形態における背景画像変形処理の手順を示すフローチャートである。図9に示すステップS400において、第1の制御部70は、撮影画像(厳密にはスルー画像)に含まれる利用者の顔の像が占める画像領域である顔領域の認識処理が行われる(ステップS400)。
図10は、撮影画像を簡易に示す図である。この図10に付されている斜線部分には、クロマキー合成のための単一色(典型的には青色または緑色)が付された撮影室2の背面の像が占める領域(以下、この領域を「背景領域」という)を表し、この領域内に後述する背景画像がクロマキー合成される。また、この撮影画像のうちの背景領域以外の領域は、図10に示されているように利用者の像が占める領域(以下、この領域を「利用者領域」という)である。上記ステップS400では、この図10に示されている2人の利用者の顔の像が占める2つの領域(以下、この領域を「顔領域」という)を認識する処理が行われる。
ここでこの顔領域の認識処理は、周知の手法を採用すればよく、例えば予め記憶されたモデル画像を拡大・縮小、回転することによりテンプレート画像を生成し、このテンプレート画像を基準として顔としての特徴を有する画像が撮影画像内に含まれている場合に当該領域を顔領域として認識する手法や、テンプレートを使用しない周知の認識手法、例えば肌色領域の形状に基づき顔領域を認識したり、各種のパターン認識手法を使用した認識手法等を採用可能である。これらの周知の手法についての詳しい説明は省略する。このように顔領域を認識するプログラムを実行することにより、簡単にかつセンサなどを設けることなく安価に利用者の位置を計測することができる。なお、周知の顔検出用LSIチップなどのハードウェアを使用すれば、ソフトウェア処理の場合よりも顔領域の認識を高速化することができる。このように、顔領域の認識処理は、上述したクロマキー合成処理(S120)とは無関係に行うことができるが、クロマキー処理のうちのクロマキーマスク作成処理を行うことにより得られる利用者領域(の形状等)を利用して、顔領域の認識処理を行ってもよい。
次に、ステップS410では、2つの顔領域におけるそれぞれの重心を結ぶ線分の中点である中心座標が算出される。図11は、この中心座標計算を説明するための図である。図11に示される2つの顔領域F1,F2は、それぞれ重心点Pc1,Pc2を有している。この重心点Pc1,Pc2の撮影画像における座標は、周知の重心算出手法に基づき簡単に計算することができるので、これらの重心点Pc1,Pc2を結ぶ線分の中点である中心座標Pmの座標も簡単に計算することができる。
このように中心座標を算出するのは、利用者領域の撮影画像における位置関係を決定するためである。すなわち、上記中心座標が撮影画像の左右方向における中心付近に存在すれば概ね利用者は撮影画像の中心付近に写っていることが分かり、当該中心より左側方向または右側方向に上記中心座標があれば、利用者は撮影画像の左側または右側に偏って写っていることが分かる。したがって、利用者の撮影画像における位置関係を決定することができればどのような計算を行ってもよく、例えば顔認識処理を行うことなく、利用者領域の重心位置を上記中心座標としてもよい。また、顔認識処理を行う場合であっても、必ずしも顔領域の重心を算出する必要はなく、例えば目や口などの顔の特徴部分を認識し、当該部分の座標を算出してもよいし、例えば顔領域外周のうち最も上の部分(頭頂部)や最も下の部分(顎先部)などの座標を算出してもよい。また、2つの顔領域のうちの一方の顔領域のみに基づき中心座標またはこれに相当する基準座標等を算出してもよい。例えば、顔認識処理により利用者を特定し、特定された(ここでは)2人の顔のうちの一方を基準の顔と定め、当該顔領域における中心座標等の基準座標を算出してもよい。なお、この基準の顔は撮影毎にまたは所定のタイミングで変更されてもよい。また、この基準の顔を例えば顔の大きい方または小さい方といった顔の大きさで定めてもよい。この顔の大きさは、後述するように利用者がカメラに対して前後方向(遠近方向)に移動する場合、顔領域の面積を(画像変形のための)変形量の算出に使用するため、この構成において特に好適である。
もっとも複数の利用者の顔領域を認識する処理に基づき、複数の利用者の位置(典型的には上記中心位置)を算出する構成では、センサなどで複数の利用者それぞれの位置を検出する構成よりも正確に位置を検出することができる。なぜなら、複数の利用者は、それぞれが写真に確実に写るよう、その顔が隠れないように自らの位置を設定するため、複数の利用者の顔領域のそれぞれは、撮影画像において重複することがなく、または少なくとも大きく重複することがない。そのため、顔領域の誤検出によって、利用者の位置が誤って算出されることがない(または少ない)からである。
なお、上記の例では2人の利用者の顔領域の中心座標を算出したが、3人以上であっても各利用者の顔領域の重心点を求めることにより、同様に計算することができる。また、利用者が一人である場合には、典型的には当該利用者の顔領域F1の重心点Pc1が中心座標Pmとして算出される。さらに、上記中心座標Pmに代えて、重心点Pc1,Pc2を結ぶ線分上の中点以外の点(例えば所定の比率で線分を分ける分割点など)を使用してもよいし、線分外であって重心点Pc1,Pc2と所定の位置関係にある点を使用してもよい。このことは利用者が3人以上であっても同様であり、また上記重心点以外の点を使用する場合であっても同様である。
続いてステップS420では、上記ステップS410において算出された中心座標に基づき、利用者の撮影画像における位置関係に応じた(後述するステップS420において使用される)背景画像の変形量を算出する。この変形量は、利用者が撮影画像の中心付近に写っている場合にはゼロであり、利用者の写る位置が撮影画像の中心より右側方向に偏っているほど(符号が正の方向に)大きくなり、利用者の写る位置が撮影画像の中心より左側方向に偏っているほど負の方向に小さくなるように定められる。このように構成すれば、利用者がその位置を(左右方向へ)移動するだけで、その移動量に応じた変形量で簡単に背景画像を変形させることができる。
具体的には、変形されていない(元の)背景画像に対応付けられた中央位置に立つ利用者の顔領域の中心座標を基準位置として、顔認識処理により認識された顔領域に基づき算出された中心座標の基準位置に対するずれ量に基づき上記変形量を算出する。なお具体的な上記変形量(の絶対値)は、利用者の位置に応じて背景画像をどれだけ変形させるのが利用者に立体感ないし臨場感を与えるために好適であるかを考慮して予め適宜に定められる。
続いてステップS430では、上記ステップS420において算出された変形量に応じて、予め定められた背景画像を変形させる画像変形処理が行われる。この処理により変形された背景画像は、前述したステップS120におけるクロマキー合成表示処理により利用者画像をクロマキー合成されて表示される。以下では図12から図23までを参照してこの画像変形処理について具体的な画面構成例を示して説明する。
<1.4 画面構成例>
図12は、予め用意された背景画像を例示する図である。図12に示されるように、この背景画像は、表示面に対して垂直方向へ奥行きが感じられるように描かれており、例えばこの背景画像の前に人が立つと、その人が(直方体の)部屋の中にいるように感じられる。もっとも、図12では、直方体の辺の一部のみが描かれているため、当該直方体の(見えている)内面には何も描かれていない。しかし、部屋の壁紙を示すような模様や、窓を示す図形、(立体的に描かれた)家具などを示す図形などが当該面に描かれていてもよい。以下では、上記のように部屋の中にいるかのような背景を構成するための直方体の一部を示す図形を単に「直方体」と称する。なお、背景画像は直方体形状に限られず、異なる多面体や球体(半球)などの形状であってもよいし、表示面に対して垂直方向に異なる奥行きが感じられるように描かれた複数の平面などであってもよい。このような図12に示す背景画像が背景になるよう、前述した図10に示す利用者の像(利用者領域)をクロマキー合成すると、図13に示す合成画像が得られる。
図13は、図12に示す背景画像を変形することなく合成した合成画像を示す図である。このように、図13に示す背景画像は、上記ステップS430における画像変形処理による変形が行われていない。これは、上記ステップS420において算出された変形量がゼロであるためである。すなわち、図11に示す中心座標Pmの位置は、画像の左右方向における中心線である中央線Lmよりもやや右側に位置するが、中央右端線Lmrよりも左側に位置している。この中央右端線Lmrおよび中央左端線Lmlは、中央線Lmから所定の短い距離だけ左右に離れた位置に設けられており、中央右端線Lmrおよび中央左端線Lmlの間に中心座標Pmが存在すれば、上記ステップS420において変形量はゼロに設定される。このように構成すれば、利用者が画像変形を行いたくない場合、中心座標Pmを調整する(立つ位置を調整する)ことにより、容易に画像変形をキャンセルすることができる。もちろん、中心座標Pmが中央線Lm上にない限り、そのずれ量に応じた画像変形を行う構成であってもよい。また、上記変形量を上記ずれ量と一意に対応させるのではなく、ずれ量が所定量だけ変化する毎に変形量を段階的に変更する構成であってもよい。このように構成すれば、連続的に画像変形が行われないため、変化の滑らかさに欠くが、画像変形に伴う計算負荷を小さくすることができる。次に、利用者が画像の左方向へ移動することにより画像変形が行われる場合について、図14から図19までを参照して説明する。
図14は、利用者が画像の左方向へ移動した場合の撮影画像を簡易に示す図である。図14において、点線で示される部分は、図10に示す利用者の像(利用者領域)の外縁を表しており、画像の左方向(向かって左方向)へ距離ML1だけ利用者が移動していることが分かる。このときの中心座標Pmは図15に示す位置となる。
図15は、利用者が画像の左方向へ移動した場合の中心座標計算を説明するための図である。図15に示す中心座標Pmの計算方法は、図11を参照してステップS400およびステップS410の処理内容として前述したとおりであるので、ここでは説明を省略する。この図15に示す中心座標Pmは、中央左端線Lmlよりもさらに左側にあるため、変形量はゼロでなく、中央線Lmからの距離に応じてステップS420における処理により適宜の値が算出される。
図16は、図12に示す背景画像を画像変形することにより得られる背景画像を示す図である。図12に示す背景画像(の各辺)は、図16において点線で示されており、画像を見て奥側の面が右側方向に移動したような変形態様となっている。このように変形すれば、当該直方体の背景画像に対する仮想的な視点位置が右側方向へ移動したかのように感じられる。したがって、実際の視点位置であるカメラ10の位置を移動させることなく、あたかもカメラ10を右側方向へ移動させたかのような立体感ないし臨場感を有する合成画像を生成することができる。
図17は、図16に示す背景画像と図14に示す利用者の像とを合成した合成画像を示す図である。この図17に示されるように、立体的な背景を仮想的な視点が移動したかのように変形して利用者の像と合成することにより、利用者は自らの移動により変化する背景画像を見ながらその嗜好に応じた合成画像をインタラクティブに生成することが可能となる。よって、より多彩な遊戯性が得られる。このような画像変形について、図18および図19を参照して説明する。
図18は、背景を構成する直方体の上面における画像変形を説明するための図であり、図19は、背景を構成する直方体の左側面における画像変形を説明するための図である。図18に示される背景画像の上面(天面)は、四辺形AECDからなり、画像変形前の上面(天面)を示す四辺形ABCDと比較すれば、その頂点Eは頂点Bから距離Mr1だけ右に移動し、頂点Fは頂点Cから同じく距離Mr1だけ右に移動し、頂点A,Dは移動していないことが分かる。
また、同様に図19に示される背景画像の左側面は、四辺形AGJEからなり、画像変形前の左側面を示す四辺形AGHBと比較すれば、その頂点Eは頂点Bから距離Mr1だけ右に移動し、頂点Jは頂点Hから同じく距離Mr1だけ右に移動し、頂点A,Gは移動していないことが分かる。
このようにして背景を構成する直方体の各頂点の位置を変更すれば簡単な計算で、上記のような立体感ないし臨場感を有する背景画像を生成することができる。また、この直方体の各面(各内面)に模様や図形等が描かれている場合であっても簡単に変形することができる。すなわち、図18および図19を参照すれば分かるように、移動する頂点間を結ぶ線分(例えば線分EFや線分EJ)に含まれる各点の移動量は上記距離Mr1であって同一であり(かつ移動方向も同一であり)、この線分に平行であって移動しない頂点を結ぶ線分(例えば線分ADや線分AG)までの間の、これらの線分に平行な(図示されない無数の)線分に含まれる各点の移動量は、例えば上記移動しない頂点を結ぶ線分から垂直方向に離れる距離に比例して増加するため、各面内に存在する全ての点の移動後の座標は簡単に計算することができる。このように簡単に計算できるため、上記変形を高速に行うことが可能になり、上記合成画像をより高速に(滑らかに)表示することが可能となる。
また、ここでは利用者の移動方向(画面の左方向)と逆方向に沿って背景画像を変形させる構成について説明したが、上記移動方向と同一方向に変形させてもよい。この構成では、画像の移動量にもよるが、カメラ10の撮影方向が変化するように見せることができ、より遊戯性を高めることができる。
なお、上記計算手法は比較的単純化された一例であって、背景を構成する直方体の奥側の面は、実際に視点を左右に移動する場合には左右に平行移動するように見えるのではなく、視点位置に対する面の傾きが変化することになる。よって、より計算が複雑になるが、このような計算を行うことにより、さらに現実感または臨場感のある背景画像を生成することができる。また、レイトレーシングなど周知の様々な立体表現手法を使用することにより、より現実感または臨場感のある背景画像を生成することができる。
また、ここでは画像を変形することにより、立体感を有する合成画像を生成する構成であるが、実際の視点位置が変化すると、今まで見えていなかった面の一部などが見えるようになる。したがって単に画像を変形するだけではなく、見えていなかった面を示す図形を追加するように背景画像を変化させてもよい。次に、利用者が画像の下方向へ移動することにより画像変形が行われる場合について、図20および図21を参照して説明する。
図20は、利用者が画像の下方向へ移動した場合の撮影画像を簡易に示す図である。図20において、点線で示される部分は、図10に示す利用者の像(利用者領域)の外縁を表しており、画像の下方向へ距離MD1だけ利用者が移動していることが分かる。このような移動態様であっても、中心座標Pmや画像の変形量の算出方法は、利用者が画像の左方向へ移動する場合と同様に計算することができる。
図21は、利用者が図20に示すように下方向へ移動した場合の合成画像を示す図である。この図21に示されるように、立体的な背景を仮想的な視点が移動したかのように変形して利用者の像と合成することにより、その嗜好に応じた合成画像をインタラクティブに生成することが可能となる。
また、利用者が画像の右方向または上方向へ移動する場合も同様に合成画像を生成することができる。さらに、利用者が画像の左下方向などの斜め方向へ移動する場合も、上記の計算手法を組み合わせることにより、容易に合成画像を生成することができる。次に、利用者が画像の手前方向(カメラへ近づく方向)へ移動することにより背景画像の画像変形が行われる場合について、図22および図23を参照して説明する。
図22は、利用者が画像の手前方向へ移動した場合の撮影画像を簡易に示す図である。図20において、点線で示される部分は、図10に示す利用者の顔の像(顔領域)の外縁を表しており、画像の手間方向へ利用者が移動する、すなわちカメラ10に近づくように移動していることが分かる。このような移動態様の場合には、中心座標Pmの変化によって、利用者の移動量を算出することはできない。しかし、人の顔の大きさは個体差はあってもそれほど極端な差はないため、平均的な顔の大きさに基づき、図9に示すステップS400の顔認識処理により認識される利用者の顔領域の面積と、利用者の立つ位置とを予め対応付けておくことは可能である。そこで、図9に示すステップS410において、中心座標の計算に代えて、利用者の顔領域の面積を計算し、ステップS420において、算出された顔領域の面積から対応する変形量を計算することができる。
具体的には、変形されていない(元の)背景画像に対応付けられた位置に立つ利用者の顔領域の(一般的な)面積を基準値として、算出された顔領域の面積の基準値に対するずれ量に基づき上記変形量を算出する。なお複数の利用者が存在する場合には、利用者の顔領域の面積の平均値を求めたり、撮影画像の中央近傍にいる利用者の顔領域の面積のみを使用するなど、様々な方法が考えられる。
ここでの背景画像の変形態様としては、例えば利用者がカメラに近づけば、背景画像が遠くに配置されているように変形され、カメラから遠ざかれば背景画像が近くに配置されているように変形する態様が考えられる。このように背景画像を変形すれば、カメラの近くに利用者がいる場合には、当該利用者を広角レンズで撮影しているように見せることができ、またカメラから遠くに利用者がいる場合には、当該利用者を望遠レンズで撮影しているように見せることができる。また、顔領域の大きさに対応させて上記のように背景画像を変形する構成により、利用者はカメラに顔を近づけたり遠ざけたりするだけで簡単に背景画像を変形させることができる。
図23は、カメラが遠くに配置されているように画像変形された背景画像と、図22に示す利用者の像とを合成した合成画像を示す図である。この図23に示されるように、立体的な背景を仮想的な視点から広角で撮影したかのように(または望遠で撮影したかのように)変形して利用者の像と合成することにより、その嗜好に応じた合成画像をインタラクティブに生成することが可能となる。なお、遠くに配置されているように背景画像を見せるためには、背景画像である直方体の奥の面を縮小するように画像変形し、また近くに配置されているように背景画像を見せるためには、背景画像である直方体の奥の面を拡大するように画像変形すればよい。
以上のような背景画像変形処理は、前述したように落書き対象となる合成画像に含まれるべき背景画像に対しても同様になされるが、上記の説明に代えてこの処理内容の説明は省略する。
また、以上のような背景画像変形処理は、簡単な計算により立体感ないし臨場感を有する背景画像を生成することができるが、例えばカメラの位置を中心として、仮想的な視線方向を回転させたり、利用者の位置を中心として仮想的な視点位置が回転するよう移動させたりする場合、単純な画像変形では画像の変化態様に違和感が生じる。すなわち、画像変形では、変形前の画像に対して新たな画像を追加することはないが、上記のように視線方向や視点位置が回転する場合、変化前には見えなかった新たな画像を追加するような変化態様でなければ違和感を生じる。このことは、上記実施形態のように、仮想的な視点位置が上下左右または前後方向に移動する場合にも、程度の差はあっても同様の違和感を生じることがある。そこで、以下に示す第2の実施形態では、仮想的な視線方向が(カメラの位置を中心として)回転する場合に、違和感のない立体感ないし臨場感を有する背景画像を生成することができる例を説明する。
<2.第2の実施形態>
本実施形態における自動写真作成装置の基本的な構成および動作は、前述した背景画像変形処理を除き、第1の実施形態の場合と同一であるので、同一の符号を付してその説明を省略する。以下では、第1の実施形態と異なる本実施形態における背景画像の変更処理の内容を説明する。
本実施形態の背景画像変更処理は、背景画像を変形するのではなく、新たな背景画像を追加することにより背景画像を変化させる構成であって、図9に示す背景画像変形処理における顔認識処理(S400)および中心座標計算(S410)と同一の処理を行い、変形量計算(S420)と同様の計算により変形量に相当する変化量を算出する。したがって、第2の実施形態では、第1の実施形態における画像変形処理(S430)に代えて、以下のような画像変更処理を行う。
この画像変更処理では、予め定められた背景画像を変形させるのではなく、仮想的な視線方向(または視点位置)が回転することにより、変化前には見えなかった新たな画像を追加するように(また変化前には見えていた画像を部分的に消去するように)背景画像を変更する。以下、図24から図27までを参照して詳しく説明する。
図24は、背景画像を上記のように変更することなく合成した合成画像を示す図である。この図24に示される背景画像は、3次元データ(立体モデルデータ)に基づき生成される背景画像であって、基準となる位置に利用者が立つ場合、すなわち上述した変形量に相当する変化量がゼロとなる中央位置に利用者が立つ場合に生成されるべき背景画像である。図24に示されるように、この背景画像も、第1の実施形態における図12に示す背景画像と同様に、利用者が(直方体の)部屋の中にいるように感じられるものとなっている。なお、図12の場合と同様、当該直方体の(見えている)内面に部屋の壁紙を示すような模様や、立体的に描かれた家具などを示す図形などが当該面に描かれていてもよい。もっともここでは、図12の場合とは異なり、頂点W1,W2,W3,W4を有する窓を表す四辺形(以下「四辺形W」という)が描かれている。この図24に示す背景画像は、具体的には直方体を表す3次元データと、当該直方体における利用者の仮想的な位置と、仮想的な視点位置とに基づき生成される。この生成手法について、図25を参照して詳しく説明する。
図25は、3次元データに基づき図24に示す背景画像を生成する手法を簡易に示す図である。この図25に示されるように、利用者は頂点C1,C2,C3,C4,B1,B2,B3,B4を有する直方体であって上記のように仮想的な立体背景となる直方体の中央付近に立っているような仮想的な位置を与えられている。そして、図中に示される仮想的な視点位置Vpから所定の画角で利用者が立つ方向を見た時に、背景となるべき直方体のうち、頂点P1,P2,P3,P4からなる矩形により示される可視範囲内(撮影範囲内)に見えるべき、背景となる直方体の内面(具体的には頂点P1,P2,B2,B1を有する左側面、頂点B4,B3,P3,P4を有する右側面、頂点B2,P2,P3,B3を有する床面、頂点P1,B1,B4,P4を有する天面、および頂点B1,B2,B3,B4を有する背面)や、右側面に描かれた上記四辺形Wなどが背景画像として生成される。ここで、上記仮想的な視点位置Vpは、図25に示す直方体の一面である頂点C1,C2,C3,C4からなる矩形により示される面上(ここでは説明の便宜によって面の中心)に位置するよう定められている。この視点位置Vpは、カメラ10の実際の配置位置に対応するよう定められており、上記画角はこのカメラ10の画角と一致するように定められている。そうすれば、実際の撮影画像である利用者の像と合成することにより、あたかも実際に背景として存在するかのような臨場感が得られる。
なお、図24では、説明の便宜のため、利用者が仮想的に立つ位置は、画角により定まる上記可視範囲の境界位置上にあるように示されているが、実際には十分な立体感および臨場感が得られるよう適宜に定められる。また、図25では、直方体の形状をわかりやすく示すため、当該直方体を右上前方から見下ろすように示し、非透明の壁(面)により構成される直方体において、背景画像として表示される部分であって、かつ上記のように右上前方から見下ろした時に隠れていない辺を実線で示している。
次に、利用者が図の右方向(利用者から見て左方向)へ移動する場合、その移動量に応じて背景画像が変化し、以下の図26に示されるように、図の右側の今まで見えていなかった背景画像の一部(ここでは直方体の右側面の一部)が新たに現れるように変化する。以下、このような場合における背景画像の生成手法について、図26および図27を参照して説明する。
図26は、背景画像を上記のように変更し合成した合成画像を示す図である。この図26に示される背景画像は、図24に示される利用者の像の位置近傍である基準となる位置から、図の右方向へ所定距離だけ移動した位置に利用者が立つ場合に生成されるべき画像である。この図26に示される背景画像を、図24に示される背景画像と比較すればわかるように、図24に示される背景画像の左端部近傍に位置する直方体の左側面を表す頂点P1,P2,B2,B1を有する四辺形は、図26に示す背景画像では可視範囲内からは見えないものとして消去されており、図24には表示されていなかった背景画像の右端部近傍に位置する直方体の右側面の一部が図26においては新たに表示されている。
このように背景画像が変化する場合、利用者の移動量に応じた変化量を適宜設定することにより、仮想的な視点位置Vpを中心として、視線方向が右方向(時計回り方向)へ回転したかのように見せることができる。すなわち、カメラ10は、実際には利用者しか撮影していない(なお厳密には利用者と背景画像をクロマキー合成するためのクロマキー色を付された背景を撮影している)にもかかわらず、あたかも直方体の部屋の内部に利用者が立っており、利用者が右方向に移動することに応じてカメラ10の撮影方向が変化したかのように感じされる背景画像を生成することができる。このような背景画像を生成するための手法について、図27を参照して詳しく説明する。
図27は、3次元データに基づき図26に示す背景画像を生成する手法を簡易に示す図である。この図27に示されるように、利用者は仮想的な立体背景である直方体の中央付近から右方向へ移動した位置に立っているような仮想的な位置を与えられ、仮想的な視点位置Vpから所定の画角で利用者が立つ方向を見た時に、背景となるべき直方体のうち、頂点P1,P2,P3,P4からなる矩形により示される可視範囲内に、背景となる直方体の内面(具体的には頂点B4,B3,P3,P4を有する右側面、頂点B2,P2,P3,B3を有する床面、頂点P1,B1,B4,P4を有する天面、および頂点B1,B2,B3,B4を有する背面)や、右側面に描かれた上記四辺形Wなどが背景画像として生成される。
ここで、図27に示される上記仮想的な視点位置Vpは、図25を示して前述したようにカメラ10の実際の配置位置に対応するよう定められており、上記画角はこのカメラ10の画角と一致するように定められているが、図27に示す視線方向(撮影方向)は、図25に示す視線方向から所定角度だけ時計回りに回転している。このため、可視範囲内に見えるべき背景画像が変化する。このように仮想的な視点位置Vpから所定の画角で可視範囲内に見えるべき背景画像は、回転後の視線方向から3次元データに基づき周知の計算手法によって生成することができる。そうすれば、生成された背景画像と実際の撮影画像である利用者の像と合成することにより、利用者の移動に応じてカメラ10の撮影方向が変化(回転)し背景が変化するように見えるので、あたかも実際に背景として存在するかのような臨場感が得られる。
ここで、立体背景である直方体の内面には、前述したように壁紙を模した模様や家具の絵などの画像が(例えばテクスチャマッピングの手法を用いて)貼り付けられているが、図26および図27に示される窓を表す四辺形Wは、直方体の右側面の一部ではなく、その開口部として取り扱われ、窓の外に景色が見えるかのように所定の風景を示す画像が貼り付けられる構成となっている。すなわち、(仮想的に)遠くに存在する風景の画像を予め用意しておき、仮想的な視点位置Vpから所定の視線方向で窓を示す四辺形W内に見えるべき風景の画像部分を計算により算出し、当該画像部分を視線方向の変化に応じて再計算しながら表示すれば、あたかも窓から風景が見えるかのような背景が実際に存在するかのような臨場感が得られる。
なお、本実施形態では、視線方向が図の左方向へ時計回りに回転する例で説明したが、右方向や、上下方向、前後方向など視線方向はどのように回転しても同様であり、回転位置も仮想的な視点位置Vpを中心軸にする必要はなく、利用者が立つ位置として仮想的に定められる位置など、適宜の位置を中心として回転させることにより視線方向を変化させる構成であってもよい。このように回転軸を変更することにより、見え方を変化させることができる。さらに前述したように、視線方向が回転するのではなく、第1の実施形態のように視点位置が左右方向、上下方向、および前後方向に移動するような態様であっても、周知の立体表示手法により同様に表示することができる。
次に、本実施形態の変形例について説明する。なお、以下では、説明の便宜上、第1の実施形態の変形例として説明するが、第2の実施形態の変形例としても同様の構成を適用することができる。
<3.変形例>
<3.1 第1の変形例>
上記各実施形態では、撮影画像における利用者の顔領域の位置を顔認識処理によって認識することにより、認識された利用者の顔の位置に応じた変形量および変形方向に背景画像を変形させる構成であるが、背景画像の変形を利用者の顔領域の位置ではなく、向きに応じて行ってもよい。以下、図28および図29を参照して説明する。
図28は、利用者の顔の向きが前を向いている場合の合成画像を示す図であり、図29は、利用者の顔の向きが右方向を向いている場合の合成画像を示す図である。この図28に示されるように、この合成画像に含まれる利用者の顔は前を向いているため、図13に示される合成画像と同様に、背景画像は変形されていない。このような利用者の顔の向きは、周知の顔認識処理、例えば顔に対する目の配置位置がいずれに偏っているかなどを検出することにより判定することができる。ここで、利用者が右方向(図の左方向)へ顔を向けると、顔認識処理に基づき利用者の顔の向きが右向きになったと判定され、背景画像は図16と同じく画像を見て奥側の面が右側方向に移動したような変形態様となる。このようにして得られる合成画像は、図29に示されるとおりである。このように変形すれば、当該直方体の背景画像に対する仮想的な視点位置が右側方向へ移動したかのように感じられる。したがって、実際の視点位置であるカメラ10の位置を移動させることなく、あたかもカメラ10を右側方向へ移動させたかのような立体感ないし臨場感を有する合成画像を生成することができる。
なお、このときの変形量は、顔の(左右へ)向く角度に応じて決定されてもよいが、例えば利用者が左方向へ顔を向けた状態を維持すると、予め定められた一定の変形量で背景画像が変形する状態が継続し、利用者が顔を前方向に戻すと変形が停止する様な構成であってもよい。そうすれば、利用者は顔を前に向けて撮影が可能となり、かつ背景画像を所望の方向へ所望の変形量だけ簡単に変形させることができる。
また、この場合には、背景画像を変形させるのではなく、背景画像を所定方向へ移動する(スクロールする)ように変化させてもよい。すなわち、予め用意された背景画像の一部を表示するとともに、利用者の顔の向きに応じた方向へ表示されるべき背景画像の部分が変更されるように、背景画像を変化させてもよい。このような変化態様は、上記各実施形態においても適用可能である。
また、この第1の変形例を上述した第2の実施形態に適用することにより、例えば、利用者の顔の回転を検出した場合には、視線方向を視点位置Vpを中心に回転させ(図27参照)、顔の上下左右あるいは前後方向への移動を検出した場合には、視線方向を変えずに当該移動方向に応じた方向に視点位置Vpを移動させる、といった様々な構成が考えられ、各実施形態および各変形例はこのように適宜に組み合わせることができる。
<3.2 第2の変形例>
上記第1の実施形態では、利用者の位置に応じて背景画像を変形させる構成であるが、さらに前景画像を変化させる(ここではその位置を移動させる)構成であってもよい。以下、図30および図31を参照して説明する。
図30は、背景画像を変形することなくかつ前景画像を移動することなく合成した合成画像を示す図であり、図31は、背景画像を変形し、かつ前景画像を移動して合成した合成画像を示す図である。図31に示される部屋の一部を示す直方体形状の背景画像は、図30と比較すれば分かるように、上記第1の実施形態と同様に利用者の移動方向と反対方向に変形している。また、図31に示される柵を示す形状の前景画像は、図30と比較すれば分かるように、利用者の移動方向と同一方向に移動している。
このように前景画像を移動させると、背景画像の変形と相まって、当該背景画像および前景画像に対する仮想的な視点位置が右側方向へ移動したかのように感じられる。したがって、実際の視点位置であるカメラ10の位置を移動させることなく、あたかもカメラ10を右側方向へ移動させたかのような立体感ないし臨場感を有する合成画像を生成することができる。なお、前景画像は、上記のような立体感ないし臨場感を与えられるような動き方であればよく、また背景画像と同様に同一方向または逆方向に変形される構成であってもよい。また、前景画像は、背景画像と同様に、奥行きが感じられるような形状であってもよく、また、表示面に対して垂直方向に異なる奥行きが感じられるように描かれた複数の平面などであってもよい。さらに、背景画像と前景画像とを共に変化させる構成でなく、前景画像のみを変形させる構成であってもよい。
また、上記前景画像は、利用者が前後方向(すなわちカメラに接近しまたは離隔する方向)へ移動すると、利用者の位置に応じて拡大または縮小される構成であってもよいが、このときの仮想的な視点位置から見て、利用者の仮想的な位置が前景画像の仮想的な位置よりも前になることも考えられる。この場合には、前景画像を背景画像として(利用者の像に隠されるように)取り扱う構成であってもよい。
<3.3 第3の変形例>
上記第1の実施形態では、利用者の位置に応じて背景画像を変形させる構成であり、上記第1の変形例では利用者の(顔の)向きに応じて背景画像を変形させる構成であるが、カメラの配置位置または向き(撮影方向)に応じて背景画像を変形させる構成との組み合わせであってもよい。
すなわち、上記第1(または第2)の実施形態におけるカメラ10は、撮影ユニット3の所定位置に固定されているが、このカメラ10に代えて、配置位置および向きの少なくとも一方を変更可能なカメラと、その配置位置または向きを検出するセンサとが設けられる構成であってもよい。具体的には、撮影ユニット3の内面に可動アームなどの取り付け器具により取り付けられたカメラや、利用者が把持できる大きさおよび形状を有するカメラ(およびその把持部)を設け、その取り付け器具におけるジョイント部分の角度や、撮影ユニット3の内壁との距離を計測するセンサなどを設ける構成などが考えられる。
また、それぞれ異なる位置に取り付けられた複数のカメラ、例えば、利用者の全身を撮影するための全身用カメラと、一部を拡大して撮影するためのアップ撮影用カメラとが設けられ、これらの少なくとも一方の撮影方向や配置位置の変化に応じて背景画像を変形させる構成などであってもよい。
さらに、カメラの位置(または向き)が変化する時に、利用者がカメラの撮影範囲の中央に位置するものとして、当該利用者の位置を中心としてカメラの位置(または向き)の変化方向と反対の方向に背景画像をスクロールさせると、背景画像の変化に立体感ないし臨場感を感じることができる。
このように変化するカメラの位置および向きの一方に応じて、背景画像を上記第1の実施形態のように変形させ、または(スクロールのような形などで)背景画像を変化させることにより、利用者が立体感や臨場感などの遊戯性を十分に得ることができる。
<3.4 その他の変形例>
上記各実施形態および上記第1および第2の変形例では、直方体の背景画像を例に説明したが、奥行きが感じられるような背景画像であればどのような形状や模様、色彩等を有するものであってもよく、また複数の背景画像を組み合わせることにより奥行きが感じられるものであってもよい。例えば、遠くの山を描いた平面画像を第1の背景画像として含み、さらに描かれた山の絵と利用者との間に(仮想的に)配置される木や建物を描いた平面画像を第2の背景画像として含む構成では、上記第1の背景画像は利用者の位置(に対応する仮想的な視点)が変化してもその配置位置(合成位置)を変化させず、第2の背景画像は利用者の位置に応じてその配置位置を変化させるようにすれば、第2の背景画像が第1の背景画像よりも手前に感じられるため、背景画像全体として奥行きが感じられるものとなる。また、上記平面画像に代えて、第2の実施形態のような直方体に類似の立体構造や、その他の3次元構造を記述するデータに基づき、(仮想的な)視点の変化に応じて形状が変化するように描かれる立体的な画像が背景画像として使用されてもよい。
<4.効果>
以上のように上記第1または第2の実施形態もしくはそれらの各変形例(以下、単に「「本実施形態」という)の自動写真作成装置は、利用者の位置または向き(さらには上記変形例に示すようにカメラの位置または向き)を検出し、予め定められた背景画像を検出される位置または向きに基づき変化させ、利用者の像とともに表示するよう制御するとともに、合成画像に含まれるべき撮影画像が取得される時点において検出される位置または向きに基づき、同じく変化させた背景画像を撮影画像に合成した合成画像を写真シールとして出力するので、表示される合成画像や、出力される写真シールにおいて、利用者が立体感や臨場感などの遊戯性を十分に得ることができる。
また本実施形態によれば、撮影画像に含まれる利用者の顔領域を認識することにより、利用者の位置または向きを検出するので、簡単にかつセンサなどを設けることなく安価に利用者の位置を計測することができる。
さらに、本実施形態によれば、利用者が複数である場合、撮影画像に含まれる利用者の顔領域をそれぞれ認識することにより、複数の利用者に対応する1つの位置を検出するので、センサなどで複数の利用者それぞれの位置を検出する構成よりも正確に位置を検出することができる。すなわち、複数の利用者は、写真に確実に写るよう、その顔が隠れないように自らの位置を設定するため、複数の利用者の顔領域が重ならず、顔領域の誤検出によって、利用者の位置が誤って算出されることがないため、正確に検出することができる。
また、本実施形態によれば、基準位置に対する、撮影画像内における顔領域の位置(中心位置)のずれ量およびずれ方向に基づき、利用者の位置が検出されるので、利用者がその位置を(例えば左右方向へ)移動し顔領域の位置を移動させるだけで、その移動量に応じた変形量で、簡単に背景画像を変形させることができる。
さらに、本実施形態によれば、基準となる大きさに対する、撮影画像内における顔領域の大きさのずれ量に基づき、利用者の位置が検出されるので、利用者がその位置を(ここでは前後方向へ)移動し顔領域の位置を移動させるだけで、その移動量に応じた変形量で、簡単に背景画像を変形させることができる。
また、本実施形態によれば、利用者の位置の変化方向と略同一方向または略反対方向に背景画像を変化させるので、カメラの位置が固定されている場合にも仮想的な視点が変化することにより、あたかもカメラを移動させたかのような立体感ないし臨場感を有する合成画像を生成することができる。
さらに本実施形態によれば、奥行きが感じられるよう予め形成されている直方体などの形状を有する背景画像の少なくとも一部を、利用者の位置の変化方向と略同一方向または略反対方向に変形させるので、図形の簡単な変形処理だけで立体感ないし臨場感を有する合成画像を生成することができる。
本実施形態の第3の変形例によれば、カメラは移動可能に構成され、この位置または向きが検出され、その位置または向きに基づき、背景画像が変化するので、カメラの移動に応じて利用者が立体感や臨場感などの遊戯性を十分に得ることができる。