以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
図1及び図2は、本実施の形態における画像出力装置の外観を示す斜視図である。そして、図3は、本実施の形態における画像出力装置の内部の撮影部のカメラ側を示す斜視図であり、図4は、撮影部の背面側を示す斜視図である。図1から図4の4つの図面を参照して、以下画像出力装置の構造について説明する。
画像出力装置は全体として略直方体形状のボックス型の装置であり、鉛直方向に略半分に分けるように仕切りが設けられている。画像出力装置は、この仕切りによって撮影空間R1及び編集空間R2に分けられている。図1は主に画像出力装置の撮影空間R1側から観た外観斜視図を示しており、図2は主に編集空間R2側から観た画像出力装置の外観斜視図を示している。
図1の斜視図に示すように、撮影空間R1は略直方体をなすフレームに囲まれた空間である。撮影空間R1は、ユーザからの料金の投入を受け付け、ユーザの写真撮影を実行するための撮影ブースを含む空間である。撮影空間R1には、所定料金を受け付ける受付部1が内側の下部に設けられている。また、編集空間R2との仕切りに相当する内部壁面にはユーザを撮影するためのカメラ21、ディスプレイ22等の機器を含む撮影部2が設けられている。
撮影ブースの外周は遮光性を有するシート材(図示せず)によって覆われている。このシート材によって外部からの光が遮断され、且つ外部からの覗き見を防止することができ、さらにユーザが撮影ブース内で自由にポーズをとることができるプライベート空間が実現される。
受付部1は、硬貨の投入を受け付け、後述する制御基盤7を介して制御部6と制御信号、コインの判定信号などを送受信する。ユーザが受付部1のコイン投入口から所定料金に相当する硬貨を投入した場合、画像出力装置によるサービスを受けることができる。
撮影空間R1の撮影ブース内部には、撮影部2を構成する各機器が設置されている。図1及び図3に示すように、撮影ブース内部の編集空間R2との空間を仕切る壁面の、ユーザが立った状態のときに略目線の高さの位置に、カメラ21が設置されている。カメラ21の下方には、カメラ21から出力される映像信号に基づきプレビュー画面を表示し、且つユーザの操作を受け付けるタッチパネル式のディスプレイ22が設定されている。カメラ21及びディスプレイ22は、撮影ブース内の被写人物であるユーザへ光を照射する複数のストロボ・ランプ23fの1つに嵌めこまれている。
ストロボ・ランプ23fは、撮影ブース内部の編集空間R2との空間を仕切る壁面に設置され、撮影ブース内のユーザを正面上方から照射するランプ、上左右方向から夫々照射するランプ、ユーザを正面から照射するランプ、ユーザを左右から夫々照射するランプ、正面下方から照射するランプ、足元を明るくするランプにて構成され、夫々、異なる角度からユーザへ光を照射するように設置されている。正面から照射するランプに、カメラ21及びディスプレイ22が嵌めこまれている。
撮影ブース内部の編集空間R2との空間を仕切る壁面の下部には、ユーザの荷物を置く棚24,24が左右に設けられている。また、撮影ブースの側面の編集空間R2寄りの上部には、図1乃至図3に示すように、外側に向けてサービスパネル25が設置されている。サービスパネル25にはLEDが用いられ、現在写真撮影が行なわれているか、空いているかのお知らせ、又は画像出力装置自体の機能の内容などが出力される。
そして、図2及び図4に示すように、撮影ブース内部の編集空間R2との空間を仕切る壁面と対向し、ユーザが写真撮影をするときに背面側となる面の、左右の支柱及び天井のフレームには、ユーザへ背面上方から光を照射するストロボ・ランプ23bが設置されている。ストロボ・ランプ23bは、天井のフレームに後正面上方から光を照射するランプ、ユーザへ背面上左右方向から光を照射するランプ、及び、ユーザへ後方側部の左右方向から光を照射するランプにて構成される。これらのストロボ・ランプ23bは、いずれもカメラ21側へ向けて設置される。これらからの光は、ユーザの背後へ、斜め上から撮影ブースの反対側へ、外側へ向かう角度で入射される。ユーザの髪の後側のみに光を斜め方向に当てることで、ユーザを正面から見たときに髪の外側が光って見え、ふんわり感を出す効果を奏する。
また、撮影ブース内部の背面側には、天井部分に室内の照明である天井灯26、天井灯26の両端部に、音楽、案内音声を出力するスピーカ28,28が設置されている。更に、撮影ブース内部の背面側には、クロマキー処理を行なうための背面パネル27が設置されている。撮影ブース内側から背面パネル27は均等な色調及び明度となるようにしてある。カメラ21から観た場合にユーザの後方が均等な色調及び明度となるので、後述にて説明するようにユーザが写っている領域以外を透明化するクロマキー処理が可能になる。なお、背面パネル27は、シート材でも代替できる。
撮影部2を構成するカメラ21、ディスプレイ22、前方のストロボ・ランプ23f、後方のストロボ・ランプ23b、サービスパネル25、天井灯26、及びスピーカ28,28は夫々、カメラ21の下方、ストロボ・ランプ23fの裏側に設置される制御部6及び制御基盤7に夫々接続されており、制御部6により動作が制御される(図1乃至図4には図示せず)。
カメラ21は、ユーザを撮影するため、内部にレンズ群、絞り、シャッター、CCD(Charge Coupled Device)等の撮像素子を含むデジタルカメラである。カメラ21は、制御部6によって設定されるタイマ機能によりシャッターが動作して撮像素子から静止画像を取得し記憶することにより写真撮影を実行する。また、カメラ21は起動している間、撮像素子から出力されるデジタル化された映像信号をモニタ用に出力する。制御部6は基本的に、この映像信号に基づくプレビュー画面を作成し、ディスプレイ22に出力する。
ディスプレイ22は撮影中の操作を案内する操作画面とプレビュー画面とを表示するための液晶パネルを有し、カメラ21からリアルタイムに出力される映像信号に基づき制御部6から出力される画像を受け付けて表示する。また、ディスプレイ22はタッチパネル式であり、ユーザによってタッチされた箇所の画面上の位置の情報を含む信号が制御部6へ出力される。
ストロボ・ランプ23f,23bは、撮影ブース内の照明機器であると共に、写真撮影時にはフラッシュとして機能する。なお、本実施の形態ではストロボ・ランプ23fは上述したように、正面上部、上部左、同右、正面左、同右、正面、正面下方、下部の8つのランプからなる。ただし、上部左右及び正面左右は夫々1組で制御され、全部で6組夫々に発光の有無及び光量が設定され、制御部6により制御基盤7を介して、写真撮影(シャッターの動作)に同期して発光するように制御される。ストロボ・ランプ23bも、上述したように、後正面上方、背面上方左、同右、背面側部左、同右の5つのランプからなる。ただし、背面上方左右及び背面側部左右は夫々1組で制御され、全部で3組夫々に発光の有無及び光量が設定され、制御部6により制御基盤7を介し、写真撮影に同期して発光するように制御される。
ユーザは撮影ブース内に入り、ディスプレイ22に表示される案内及びスピーカ28,28から出力される案内音声に従い操作画面を操作し、ストロボ・ランプ23f,23bからの照明を受けてポーズを決め、カメラ21による写真撮影を実行することができる。まず、ユーザはタッチパネル式のディスプレイ22に表示される操作画面から、画像を装飾する前景画像及び/又は背景画像を選択することができる。ユーザが前景画像及び/又は背景画像を選択した場合、ディスプレイ22には、カメラ21からリアルタイムに出力されているモニタ用の映像信号に基づく画像、即ちカメラ21から出力されている撮影画像、選択された前景画像及び/又は背景画像に基づく印刷結果のプレビュー画面が表示される。ユーザはプレビュー画面を確認しながらポーズを決め、写真撮影を実行することができる。
写真撮影が実行された場合、制御部6はカメラ21で記憶された静止画像を取得し、後にユーザによる編集操作を受け付けるための画像、及び、後に印刷出力するための画像として夫々複製する。
次に図2の斜視図に示す編集空間R2に設置されている各構成部について説明する。編集空間R2は、上述の撮影空間R1の内部のカメラ21、ディスプレイ22、ストロボ・ランプ23fが設置されていた壁面の裏側の空間であり、ユーザが写真撮影を実行した後に画像の編集をすることができる空間である。図2に示す編集空間R2は撮影空間R1の上面から延設されているバーに取り付けられたカーテン状のシート材(図示せず)によって他の空間から仕切られる。そして編集空間R2には、以下に示す各構成部を内外に備える略直方体の筐体30が設置されている。
筐体30の一方の側面は撮影空間R1との仕切りである壁面に接しており、他の三側面の内の対向する面には夫々、写真撮影された画像及びその他の画像を編集するためのインタフェースを備える第1編集部4a及び第2編集部4bが設けられている。他の側面には編集された画像を所定の写真シール用紙に印刷出力する印刷部5が設けられている。また、筐体30の内部には、第1編集部4a、第2編集部4b及び印刷部5の各構成部を制御する制御部6及び制御基盤7が設置されている。
なお、撮影空間R1との仕切りである壁面は、筐体30が接している面の下部に開口部を有し、撮影部2のカメラ21及びディスプレイ22の下方のストロボ・ランプ23fの裏側と、筐体30内部とが連通している。筐体30内部に設置される制御部6又は制御基盤7と撮影部2の各構成部とは、複数のケーブル類によって筐体30内部で接続されている。また、撮影部2の後方のストロボ・ランプ23b等、背面側に設置されている一部の構成部は、天井フレーム内から筐体30内部へ導かられるケーブル類によって制御部6及び制御基盤7と接続されている。第1編集部4a、第2編集部4b及び印刷部5の各構成部は、筐体30内部で複数のケーブル類によって同様に、制御部6又は制御基盤7に接続されている。
第1編集部4aには夫々、写真撮影された画像及び他の画像を編集(画像に落書き)するための操作画面を表示するタブレットディスプレイ40aと、2つのタッチペン41a,42aと、スピーカ43aとが含まれる。なお後述の第2編集部4bにもタブレットディスプレイ40bと、2つのタッチペン41b,42bと、スピーカ43bとが含まれている。第1編集部4a及び第2編集部4b夫々のタブレットディスプレイ40a,40b、2つのタッチペン41a,42a,41b,42b、及びスピーカ43a,43bは夫々、筐体30の対向する面に向かい合うように設置されている。また、タブレットディスプレイ40a,40b、タッチペン41a,42a,41b,42b及びスピーカ43a,43bは筐体30の内部の制御機構に接続されている。
印刷部5には、筐体30の側面下部に印刷されたシール用紙が吐き出されるシール吐出口54が含まれるのみならず、側面上部に、タブレットディスプレイ50と、2つのタッチペン52,53と、スピーカ51とが含まれる。タブレットディスプレイ50、タッチペン52,53及びスピーカ51では、後述するように携帯電話機へ画像を送信するためのアドレス入力、及び送信する画像の選択をユーザから受け付け、更に後述する景品の情報を画面表示及び音声出力する。シール吐出口54の上部には、更にもう1つの吐出口である景品吐出口55が設けられている。本実施の形態の画像出力装置を利用したユーザには、景品として「つけまつげ」が提供される。図5は、本実施の形態における画像出力装置により提供される景品例の外観を示す斜視図である。本実施の形態では、画像出力装置から図5に示すような景品9が景品吐出口55から提供される。
ユーザは、撮影ブース内で撮影部2により撮影を完了した後、第1編集部4a又は第2編集部4bにより印刷する画像の選択、選択した画像に対する落書き等の作業が可能である。第1編集部4a又は第2編集部4b夫々のタブレットディスプレイ40a,40bには、写真撮影が実行されたことによって取得された画像と、選択された前景画像及び/又は背景画像とが共に表示される。タブレットディスプレイ40a,40bは、共に設置されているタッチペン41a,42a,41b,42bによる操作を受け付けるようにしてあり、ユーザはタッチペン41a,42a,41b,42bにより印刷する画像の選択及び選択した画像への文字、スタンプ状の絵柄の挿入などの操作が可能である。
制御部6により、写真撮影された画像に対する編集が完了した場合、出力用の画像に選択された前景画像及び/又は背景画像、更に編集結果に基づく文字、絵柄等などが合成される。合成された後の画像が筐体30内部に設置されているプリンタ56によって所定のシール用紙に印刷される。印刷された所定の用紙は写真シールとしてシール吐出口54に吐き出される。ユーザは、シール吐出口51から完成した写真シールを取得し、景品払出口55から景品である「つけまつげ」を取得することができ、これにより本実施の形態の画像出力装置による写真シールの撮影提供サービスが実現する。
次に、上述のような撮影提供サービスを実現するための制御部6による制御について説明する。図6は、本実施の形態に係る画像出力装置の構成を模式的に示すブロック図である。画像出力装置は、各構成部を制御する制御部6と、制御部6からのデジタル信号を各構成部へ入出力する制御基盤7と、AC電源から電力を供給する電源部8と、受付部1と、カメラ21、ディスプレイ22、ストロボ・ランプ23f,23b、サービスパネル25、天井灯26、スピーカ28、及びストロボ制御部29を含む撮影部2と、タブレットディスプレイ40a、2つのタッチペン41a,42a及びスピーカ43aを含む第1編集部4aと、タブレットディスプレイ40b、2つのタッチペン41b,42b及びスピーカ43bを含む第2編集部4bと、タブレットディスプレイ50、2つのタッチペン52,53、スピーカ51、プリンタ56、シール吐出口54、景品吐出制御部57、景品吐出ユニット58及び景品吐出口55を含む印刷部5とにより構成される。
受付部1、撮影部2、第1編集部4a、第2編集部4b及び印刷部5を夫々構成する各ハードウェアは夫々、上述のように、画像出力装置のユーザによる操作が可能なように撮影空間R1、編集空間R2に設置されている。そして各ハードウェアの内、制御部6と直接的にデジタル制御信号を送受信して動作するカメラ21、ディスプレイ22、スピーカ28、タブレットディスプレイ40a,40b,50、スピーカ43a,43b,51は、制御部60のUSBなどのインタフェースに直接接続される。一方、各ハードウェアの内、アナログ制御信号を送受信して動作する受付部1、サービスパネル25、天井灯26、ストロボ制御部29、及び景品吐出制御部57は、制御部6に制御基盤7を介して接続される。
制御部6は、パーソナルコンピュータ(以下、PC:Personal Computerという)を用い、CPU60と、外部記憶装置61と、メモリ62と、通信部63と、キャプチャ・クロマキーボード64とを含む。なお以下の説明では、制御部6は仮想的に1つの装置で構成されるように記述するが、夫々制御対象によって機能が分割された複数のPCから構成される。つまり、撮影部2の各構成部を制御して写真撮影及びプレビュー画面の表示を制御するPCと、撮影部2により撮影された画像に対する第1編集部4a及び第2編集部4bの動作を制御するPCと、編集後の画像に対する印刷部5による印刷処理を制御するPCとで夫々、連動して処理を行なう。
CPU60は、外部記憶装置61に記憶してあるコンピュータプログラム6Pに基づき、各構成部のハードウェアを制御する。外部記憶装置61には、HDD(Hard Disk Drive)、SSD(Solid State Drive)などが用いられ、後述する設定ファイル65、及び上述のコンピュータプログラム6Pを記憶している。メモリ62は、DRAM(Dynamic Random Access Memory)等が用いられ、CPU60の動作により発生する情報、例えば画像データなどを一時的に記憶する。CPU60が外部記憶装置61から制御プログラム6Pをメモリ62に読み出して実行することにより、各ハードウェアの制御及び種々のソフトウェア機能が実現される。画像処理プログラム6Pは、図示しないCD−ROM、DVD等の記録媒体に記録された画像処理プログラムを外部記憶装置61に複製したものでもよいし、通信部63を介して取得したものでもよい。通信部63は、インターネット等の外部ネットワークに接続してデータの送受信を実現する。キャプチャ・クロマキーボード64は、カメラ21から出力された映像信号から静止画像をキャプチャする。
CPU60は、外部記憶装置61に記憶されている制御プログラム6Pを読み出して実行することにより、本実施の形態の画像出力装置として動作する。外部記憶装置61には、制御プログラム6P、後述する設定ファイル65の他に、写真撮影された印刷出力用の画像と合成するための前景/背景画像、撮影部2のディスプレイ22に撮影画像と共に表示するための前景/背景画像が記憶されている。外部記憶装置61には更に、撮影部2のディスプレイ22に表示される操作画面に用いられる各画像、第1及び第2編集部4a,4bのタブレットディスプレイ40a,40bに表示される編集画面に用いられる画像、印刷部5のタブレットディスプレイ50に表示される入力受付画面に用いられる画像、テキストファイル、スピーカ28,43a,43b,51に出力する案内音声などの音声データ等のデータが記憶されている。また、外部記憶装置61には、ユーザが写真撮影を実行したことでCPU60によりカメラ21から取得された印刷出力用の画像、前景画像及び/又は背景画像と合成処理が実行されることで得られる合成画像及び編集処理によって得られる編集画像が記憶される。その他、制御時に参照する各種データが記憶されてもよい。
通信部63は、外部ネットワーク上の他の装置と通信してデータの送受信、例えばメールの送受信機能等を実現する。本実施の形態における画像出力装置では、CPU60は、印刷部5のタブレットディスプレイ50、及びタッチペン52,53により入力されたユーザの名前、メールアドレス等の識別情報又は送信先のURLに基づき、撮影して編集した後の画像をユーザが使用する携帯電話機へメールに添付して送信する機能、外部ネットワークに接続している他のサーバ装置へ送信する機能を有する。この機能により、ユーザは、自身が撮影して編集した画像を、携帯電話機で受信、PCで受信又はダウンロードすることができるサービス、携帯電話機又は自宅のPCにより閲覧することができるサービスを実現することが可能である。
キャプチャ・クロマキーボード64は、受け付けた映像信号から例えば毎秒30枚の静止画像を取得して出力するキャプチャ機能と、キャプチャされた各静止画像から所定の色調及び明度の画素を認識し、一定の範囲内で同一の色調及び明度の画素に対してα値(透明度)を設定することにより透明化し出力するクロマキー機能とを有するハードウェアである。キャプチャ・クロマキーボード64は、カメラ21から出力されるモニタ用の映像信号を受け付けるように接続されている。また、キャプチャ及びクロマキー処理された後の静止画像は、キャプチャ・クロマキーボード64に内蔵される図示しないメモリに書き込まれる。CPU60は当該メモリから静止画像をプレビュー用の撮影画像として読み出し、クロマキー処理を行なわせ、ディスプレイ22のプレビュー画面に他の画像と共に表示する処理を実行する。
また、キャプチャ・クロマキーボード64は、ドライバソフトにより毎秒取得する静止画像の枚数、及び透明化する所定の色調及び明度、例えばRGB値の設定が可能である。CPU60は、カメラ21によって撮影される画像の内のユーザの後方に位置するシート材が写っている領域の色調及び明度を透明化するように指示する。これにより、CPU60は、キャプチャ・クロマキーボード64にて、クロマキー処理された人物のみの人物画像を得ることができ、前景画像及び/又は背景画像と重ねてプレビュー画面を表示させることができる。
CPU60は、受付部1からのコイン種別などの判定信号を受け付け、受け付けた判定信号に応じて所定料金の受け付けを実現する。またCPU60は、制御プログラム6Pを読み出して実行することにより、撮影部2のカメラ21による撮影と、ストロボ・ランプ23f,23bとの動作を同期させる制御を行ない、カメラ21によって写真撮影されて記憶された印刷出力用の画像を取得する処理、更に、カメラ21から出力される映像信号からプレビュー画面を作成する処理、及び、映像信号から後述する髪色判定に用いる画像を取り出す処理、プレビュー画面をディスプレイ22に表示する処理、第1編集部4a及び第2編集部4bによる編集を受け付ける処理、タブレットディスプレイ50からの操作入力を受け付ける等の各種処理を実行する。
また、CPU60は、写真撮影によってカメラ21にて撮影された画像を加工する画像処理の機能を実現する。詳細には、CPU60は、タイマに基づいてカメラ21にて写真撮影された画像を取得してメモリ62に書き込み、画像処理を実行することによって、画像の色合い、明暗、又はコントラストを調整する画像処理を行なう機能を有する。
更に、CPU60は、ユーザがディスプレイ22に表示されるプレビュー画面、操作画面に応じて写真撮影の準備をする間に、カメラ21からストリーミング出力される映像信号から画像を取り出し、取り出した画像に基づきユーザの髪色を判定し、判定結果に応じてストロボ・ランプ23f,23b夫々について点灯させるか否か、又は光量を決定する処理を行なう。当該処理については、後述にて詳細を説明する。
電源部8は、制御部6のみならず各構成部へのAC電源からの電力の供給を実現する。画像出力装置には、電源を投入する電源スイッチ(図示せず)が設けられており、電源部8に接続されている。電源部8は電源スイッチのオン/オフを検知し、画像出力装置の稼動/動作を切り替える。なお、電源部8はUPS(Uninterruptible Power Supply:無停電電源装置)ユニット80を含んで構成される。UPSユニット80により、AC電源からの電力が突然遮断された場合でも、各構成部へのダメージを減らすことができる。電源スイッチがオフに切り替えられた場合、UPSユニット80は停電信号をCPU60へ出力し、CPU60は停電信号を検知したときの所定の終了処理を行ない画像出力装置全体の電源をオフにする。
このように構成される画像出力装置で、ユーザが写真プリントの提供サービスを受ける場合に、制御部6での処理に基づき画像出力装置にて実行される全体的処理について説明する。上述にて説明したように、画像出力装置にて実行される処理は、撮影部2による写真撮影の処理、第1編集部4a又は第2編集部4bによる編集受け付け処理、並びに、印刷部5による印刷、出力処理に段階として分けられる。
図7は、本実施の形態における画像出力装置の制御部6により撮影部2で実行される処理手順の一例を示すフローチャートである。
CPU60は、撮影部2のディスプレイ22に、タイトル画面を表示する(ステップS101)。このときCPU60は、制御基盤7を介してサービスパネル25に、撮影空間R1へ誘導するようなメッセージを表示させるようにしてもよい。
CPU60は、受付部1にて所定料金を満たす硬貨が投入されるか、又は、サービススタートスイッチが押下されたか否かを判断する(ステップS102)。CPU60は、所定料金を満たす硬貨が投入されておらず、サービススタートスイッチも押下されていないと判断した場合(S102:NO)、処理をステップS102へ戻して所定料金を満たす硬貨が投入され、サービススタートスイッチが押下されたと判断するまで待機する。なお、この間CPU60は、ディスプレイ22に投入済みの硬貨の総額を表示させるように制御信号を出力し、ディスプレイ22内のサービススタートスイッチを押下するようにディスプレイ22に表示、又はスピーカ28,28により音声出力してもよい。
CPU60は、ステップS102において所定料金を満たす硬貨が投入されたか、又は、サービススタートスイッチが押下されたと判断した場合(S102:YES)、ディスプレイ22に操作画面を表示させ、更にスピーカ28,28から案内音声を出力し(ステップS103)、ユーザに撮影のために操作を開始するように促す。これにより、写真プリントサービスの提供が開始される。
CPU60は、ステップS103にて画面表示及び音声出力を行なっている間、受付部1で硬貨の投入を受け付けたことをきっかけに、カメラ21を起動させ、カメラ21から出力されるモニタ用のライブ映像信号の入力を開始する(ステップS104)。
そしてCPU60は、プレビュー画面を表示しつつ、撮影される画像に合成させる前景画像及び/又は背景画像の選択、仕上がりの雰囲気(ふんわり/くっきり、パステル/ビビットなど)の設定を選択させる設定選択画面を表示し(ステップS105)、ユーザによる設定選択操作を受け付ける。
ユーザによって設定選択操作、ポーズ決定などが行なわれている間にCPU60は別途、ステップS104にて起動されているカメラ21から出力されるライブ映像信号を用いて髪色判定処理を行なう(ステップS106)。CPU60は、判定処理を行なって結果を得た場合、判定結果を出力する(ステップS107)。
そしてCPU60は、設定が完了し、且つ髪色の判定結果が出力されており、取得できたか否かを判断する(ステップS108)。CPU60は、ユーザの設定選択操作による設定が完了していない、又は判定結果が出力されており、取得できていないと判断した場合(S108:NO)、処理をステップS105へ戻し、設定選択画面を引き続き表示し、待機する。CPU60は、ステップS105とステップS108:NOの処理が続いている間に、ステップS106の髪色判定処理を実行しておく。
CPU60は、ステップS108にてユーザの設定選択操作により設定が完了し、且つ、判定結果も出力されており、取得できていると判断した場合(S108:YES)、モニタ用のライブ映像信号の入力を停止する(ステップS109)。
次にCPU60は、ユーザの設定選択操作によって完了した設定、及び判定結果に基づき、ストロボ・ランプ23f,23bの各組のランプについて発光の有無、及び光量を決定する処理を行ない(ステップS110)、撮影処理を実行する(ステップS111)。このとき、撮影処理は間隔を置いて複数回、例えば3回実行するようにカメラ21のタイマが設定される。具体的には、設定が完了したと判断されると、CPU60は、シャッターを動作させるためのカウントを開始させ、選択された前景画像及び/又は背景画像と合成されたプレビュー画面をディスプレイ22に表示させる。そして、カウントアップされたと判断したときに、CPU60は写真撮影に同期させてストロボ制御部29を介し、ストロボ・ランプ23f,22bを決定に基づき発光させる。ユーザがプレビュー画面を見て撮影された画像で決定する旨のボタン等を操作するか、例えば3回などの所定回数の写真撮影が終了するかにより撮影が完了する。なお、ストロボ・ランプ23f,22bの発光の有無、及び光量をどのように決定するかは後述にて説明する(図9参照)。
CPU60は、撮影処理が完了したか否か判断し(ステップS112)、完了していないと判断した場合(S112:NO)、処理をステップS111へ戻して撮影処理を続行する。CPU60は、撮影処理が完了したと判断した場合(S112:YES)、カメラ21から、写真撮影されてカメラ21の内蔵メモリに記録された画像を取得し、取得した画像を、印刷出力用の画像、及び第1編集部4a又は第2編集部4bの操作画面表示用の画像などに複製し、ステップS106による判定結果、及び選択された前景画像及び/又は背景画像と関連付けてメモリ62に保存する(ステップS113)。
そしてCPU60は、ディスプレイ22に、編集空間R2への移動を促す案内情報の画面を表示、スピーカ28,28によって案内音声を出力し(ステップS114)、撮影部2における処理を終了する。
なお、ステップS108については、判定結果を取得したか否かについての判断は必須ではない。後述する髪色判定処理の内の画像を取り出す処理を繰り返す所定の時間を、設定が選択されるまでに要する時間の最短時間よりも短く設定しておく。この場合、判定結果は必ず出力されており取得できているはずであるから判定結果を取得したか否かの判断は不要となる。
次に、編集空間R2の第1編集部4a又は第2編集部4b、並びに印刷部5にて行なわれる処理について説明する。図8は、本実施の形態における画像出力装置の制御部6により第1編集部4a又は第2編集部4b、並びに印刷部5で実行される処理手順の一例を示すフローチャートである。
CPU60は、写真撮影された画像(複製)をメモリ62から取得できるか否かにより、撮影部2での撮影処理が終了したか否かを判断する(ステップS201)。CPU60は、写真撮影された画像を取得できないと判断した場合(S201:NO)、処理をステップS201へ戻し、写真撮影された画像を取得できるまで待機する。
CPU60は、写真撮影された画像を取得できたと判断した場合(S201:YES)、空いている第1編集部4a又は第2編集部4bのタブレットディスプレイ40a又は40bに、操作画面表示用の画像を含む操作画面を表示させ、編集を受け付ける(ステップS202)。CPU60は、操作画面表示用の画像に対し、受け付けた編集に基づく画像処理を実行する(ステップS203)。このとき、画像処理実行後の画像を操作画面にプレビューとして表示する。
次にCPU60は、ユーザによる編集及び編集に基づく画像処理は完了したか否かを判断する(ステップS204)。CPU60は、編集及び画像処理が完了していないと判断した場合(S204:NO)、処理をステップS202へ戻し、引き続きユーザからの編集操作を受け付ける。
CPU60は、編集及び画像処理が完了したと判断した場合(S204:YES)、写真撮影された印刷出力用の画像と、関連付けられて保存されている前景画像及び/又は背景画像と、編集結果とを合成して画像を生成する(ステップS205)。ステップS205における合成画像の生成では、写真撮影された画像の色合い、明暗又はコントラストを調整する加工処理を行なっておいてもよい。具体的には、写真撮影によって得られた画像に、後述する髪色判定処理を実行し、髪色の判定結果に応じて調整を行なう。黒髪であれば明るくし、茶髪であれば明るくしすぎないように調整するなどの処理をしておくことが望ましい。
次にCPU60は、ステップS205により得られる合成後の画像をプリンタ56へ出力して印刷出力を開始する(ステップS206)。このとき、CPU60は、合成前の印刷出力用の画像に関連付けられている髪色の判定結果を判別できるように、写真シール用紙の端部に色分けして印刷されるように出力する。これにより、精度よく髪色が判定されているかを事後的に確認でき、判定結果が思わしくないときには設定ファイル65の内容を書き換えるなどして精度を高めることが可能となる。
印刷出力には時間を要するので、この間にCPU60は、印刷部5のタブレットディスプレイ50に、景品9の情報を表示させると共に、タブレットディスプレイ50及びタッチペン52,53にて、アドレス、名前入力などを受け付け(ステップS207)、景品9を提供すべく景品吐出制御部57へ制御信号を出力し、景品吐出ユニット58により、景品9を景品吐出口55から吐き出させる(ステップS208)。更に、CPU60は、受け付けたアドレスに基づいて生成した画像を携帯電話機用に補正して通信部63により送信し(ステップS209)、印刷が完了したか否かを判断する(ステップS210)。
CPU60は、印刷が完了していないと判断した場合(S210:NO)、処理をステップS210へ戻して印刷が完了したと判断するまで待機する。CPU60は、プリンタ50における印刷が完了したと判断した場合(S210:YES)、印刷が完了した旨を示す案内表示を印刷部5のタブレットディスプレイ50に表示し、スピーカ51から案内音声を出力し(ステップS211)、処理を終了する。
このとき、印刷された写真シールがシール吐出口54に吐き出されており、景品9も景品吐出口55から吐き出されているので、ユーザは自身が撮影された写真シールと景品9とを取得することができる。このように、写真プリントサービスの提供が実現される。
なお、図7に示したフローチャートの内のステップS110におけるストロボ・ランプ23f,23bの発光の有無及び光量の決定処理について、髪色判定結果に基づきどのように決定するのかを説明する。図9は、制御部60により実行される髪色判定結果に基づくストロボ・ランプ23f,23bの発光の有無及び光量の決定処理手順の一例を示すフローチャートである。
CPU60は、判定結果から髪色を取得する(ステップS1001)。CPU60は、髪色が黒髪色であるか否かを判断する(ステップS1002)。CPU60は、黒髪色であると判断した場合(S1002:YES)、前方のストロボ・ランプ23fの光量を予め設定されている標準値よりも多く設定し(ステップS1003)、更に、後方のストロボ・ランプ23bの内、背面上左右方向から光を照射するランプ、及び背面側部の左右方向から光を照射するランプについては発光無しとして設定し(ステップS1004)、図7のフローチャートに示したステップS111へ処理を戻す。ステップS1004においては、全てのストロボ・ランプ23bを発光無しとして設定してもよいし、全てのストロボ・ランプ23bを発光有りとするが、光量を微弱に設定してもよい。つまり、黒髪色以外と判定された場合よりもストロボ・ランプ23b全体の光量が少なくなるように、適宜設定すればよい。
CPU90は、ステップS1002において黒髪色でないと判断した場合(S1002:NO)、後方のストロボ・ランプ23bを全て発光有り且つ光量を標準値以上に設定し(ステップS1005)、図7のフローチャートに示したステップS111へ処理を戻す。なおこのとき、黒髪色でないと判断した場合は、その他の髪色又は判定不可であるという判定結果の場合である。
このように、黒髪色であると判定されたときには被写体の前方からの光を強くして、髪の光沢感を出した写真を撮影することができる。そして黒髪色でない(茶髪である)と判定されたときには、後方から髪をかすめるように斜めに入射される光量を強くして、髪のふんわり感、外側の艶間を増加させた写真を撮影することができる。
次に、どのように髪色を判定するかを説明する。図10は、制御部6のCPU60により実行される髪色判定処理の一例を示すフローチャートである。図10乃至図12のフローチャートに示す処理は、図7のフローチャートに示したステップS106の処理の詳細に対応する。
CPU60は、以下の処理で用いる「画像」の数など計数を初期化(全てゼロ)する(ステップS301)。CPU60は、制御部6が撮影部2のカメラ21からモニタ用の映像信号をキャプチャ・クロマキーボード64にて入力し、例えば1秒おきなど、異なる時点で画像を取り出す(ステップS302)。
CPU60は、ステップS302にて取り出した画像に対し、顔検出処理を実行し、顔の領域を抽出する(ステップS303)。顔検出処理は、肌色検出、テンプレートマッチングなどの種々の既存技術を利用して行なわれる。ステップS303の顔検出処理によってCPU60は具体的に、画像中の顔が写っている領域(顔領域)の画像内における座標情報を得る。顔領域は具体的には、眉及び口の領域の外接矩形である。顔領域は楕円形等でもよい。このとき、顔の傾きも検出され、画像に写る人物の顔が傾いている場合には、顔検出により得られる顔領域の横軸方向及び縦軸方向は、画像の水平方向及び垂直方向に対して傾いている。
CPU60は、顔検出結果を用いて、画像毎に髪色判定処理を行ない(ステップS304)、予め設定されている時間(例えば5秒)が経過したか否かを判断し(ステップS305)、設定されている時間が経過していないと判断した場合(S305:NO)、処理をステップS302へ戻し、次の画像を取り出してステップS303〜S305の処理を繰り返す。
CPU60は、ステップS305にて設定されている時間(例えば5秒)が経過したと判断した場合(S305:YES)、設定されている時間が経過するまでの間に取り出した各画像に対して実行した髪色判定結果に基づき、最終的な判定結果を集計する。
具体的には、CPU60は、ステップS302により設定されている時間が経過するまでに取り出した「画像」の数と、ステップS304の判定結果が判定不可であった「画像」の数とが等しいか否かを判断する(ステップS306)。CPU60は、等しいと判断した場合(S306:YES)、最終的な判定結果を“不可(判定不可能)”であると判定し(ステップS307)、図7のフローチャートのステップS107へ処理を戻す。
CPU60は、ステップS306で等しくないと判断した場合(S306:NO)、ステップS304によって黒髪色と判定された「画像」の数が、他の髪色と判定された「画像」の数よりも少ないか否かを判断する(ステップS308)。CPU60は、黒髪色と判定された「画像」の数が、他の髪色と判定された「画像」の数よりも少ないと判断した場合(S308:YES)、最終的な判定結果を“他の髪色”であると判定し(ステップS309)、図7のフローチャートのステップS107へ処理を戻す。
CPU60は、ステップS308において、黒髪色であると判定された「画像」の数が、他の髪色であると判定された「画像」の数以上であると判断した場合(S308:NO)、最終的な判定結果を“黒髪色”であると判定し(ステップS310)、図7のフローチャートのステップS107へ処理を戻す。
このとき、黒髪色であると判定された「画像」の数が、他の髪色と判定された「画像」の数が等しい場合は、「黒髪色」と判定して「黒髪色」を優先的とする。これにより、黒髪色である被写体には効果が少ない背後からの照射を不要に多くして、満足度の低い画像が出力される可能性を低減することができる。
上述の処理の内、ステップS306における処理、つまり、取り出した「画像」の数と、ステップS304の判定結果が判定不可であった「画像」の数とが等しいか否かの判断については、判定不可か否かを判定するための処理である。したがって、ステップS306の処理については他に例えば、判定不可であった「画像」の数が、取り出した「画像」の数の80%以上であるか否か、取り出した「画像」の数よりも3小さい数以上であるか否かなどの判断によって判定してもよい。
次に、ステップS304の画像毎の髪色判定処理について説明する。図11は、制御部6のCPU60により実行される画像毎の髪色判定処理の一例を示すフローチャートである。CPU60は、取り出された1つの画像について以下の処理を行なう。
CPU60はまず、画像毎の計数、以下の処理に用いる「顔」の数を初期化する(ステップS41)。
CPU60は、検出されている1つの顔の領域を選択し(ステップS42)、選択した顔について顔毎の髪色判定処理を行ない(ステップS43)、検出された全ての顔の領域について処理を行なったか否かを判断する(ステップS44)。CPU60は、全ての顔の領域について処理を行なっていないと判断した場合(S44:NO)、処理をステップS42へ戻して他の1つの顔の領域を選択して処理を行なう。
CPU60は、ステップS44で全ての顔の領域について処理を行なったと判断した場合(S44:YES)、検出されている「顔」の数と、ステップS43にて判定不可とされた「顔」の数とは等しいか否かを判断する(ステップS45)。CPU60は、ステップS45にて等しいと判断した場合(S45:YES)、判定不可である「画像」の数を1つ増加させ(ステップS46)、図10のフローチャートのステップS305へ処理を戻す。当該「画像」では、髪色が判定できなかったものとして扱われる。
CPU60は、ステップS45にて等しくないと判断した場合(S45:NO)、ステップS43によって黒髪色と判定された「顔」の数が、他の髪色と判定された「顔」の数よりも少ないか否かを判断する(ステップS47)。CPU60は、黒髪色と判定された「顔」の数が、他の髪色と判定された「顔」の数よりも少ないと判断した場合(S47:YES)、他の髪色と判定した「画像」の数を1つ増加させ(ステップS48)、図10のフローチャートのステップS305へ処理を戻す。当該「画像」は、「他の髪色」と判定されたものとして扱われる。
CPU60は、ステップS47において、黒髪色と判定された「顔」の数が、他の髪色と判定された「顔」の数以上であると判断した場合(S47:NO)、黒髪色と判定した「画像」の数を1つ増加させ(ステップS49)、図10のフローチャートのステップS305へ処理を戻す。当該「画像」は「黒髪色」と判定されたものとして扱われる。
図11のフローチャートの処理を、複数の画像に対して画像毎に実行することにより、各画像での全体での髪色が判定され、髪色毎に画像数が計数される。
上述の処理の内、ステップS45における処理、つまり、検出されている「顔」の数と、ステップS43の判定結果が判定不可であった「顔」の数とが等しいか否かの判断については、判定不可か否かを判定するための処理である。したがって、ステップS45の処理については他に例えば、判定不可であった「顔」の数が、検出されている「顔」の数の80%以上であるか否か、検出されている「顔」の数から3減算した数以上であるか否かなどの判断によって判定してもよい。
次に、上述のステップS43の顔毎の髪色判定処理について説明する。図12は、制御部6のCPU60により実行される顔毎の髪色判定処理の一例を示すフローチャートである。CPU60は、検出された顔毎に、以下の処理を行なう。
CPU60はまず、顔毎の計数、即ち以下の処理に用いる「画素」の数を初期化する(ステップS501)。
CPU60は、処理対象の顔の検出結果である顔領域を含む矩形を取得し(ステップS502)、取得した矩形の大きさをN倍(例えば1.3倍など)に拡大し(ステップS503)、拡大後の矩形の上辺のラインをスキャンする。
具体的に、CPU60は、拡大後の矩形の上辺のラインの画素について始点及び終点を、矩形の頂点よりも内側に設定し、始点から終点までの間に対応する画素から1つずつ、又は1つおき若しくは任意の数おきに抽出する(ステップS504)。
CPU60は、ステップS504で抽出した画素から1つの画素を選択し(ステップS505)、選択した画素の色成分(R,G,B)をHSV空間に変換する(ステップS506)。このとき、Lab空間に変換してもよい。
CPU60は、変換後のHSV成分に基づき、髪色以外である色範囲に含まれるか否かを判断する(ステップS507)。髪色以外であると定義される色範囲、及び後述の黒髪であると定義される色範囲の具体的な値は、CPU60が参照できるように、外部記憶装置61の設定ファイル65内に記述されて記憶される。
CPU60は、選択した画素のHSV成分が、髪色以外である色範囲に含まれると判断した場合(S507:YES)、判定不可の「画素」の数を1つ増加させ(ステップS508)、抽出された画素全てについて処理を行なったか否か、つまり上辺のラインの画素のスキャンが終了したか否かを判断する(ステップS509)。
CPU60は、ステップS507にて髪色以外である色範囲に含まれないと判断した場合(S507:NO)、黒髪色に対応する色範囲に含まれるか否かを判断する(ステップS510)。このとき、黒髪色に対応する色範囲の例としては例えば「0<H<80、50<S<60、0<V<20」などが考えられる。この色範囲の定義は、設定ファイル65を書き換えることにより、任意に設定可能であり、事後的に変更でき精度を高めることができる。
CPU60は、ステップS510で黒髪色に対応する色範囲に含まれないと判断した場合(S510:NO)、他の髪色の「画素」の数を1つ増加させ(ステップS511)、処理を次のステップS509へ進める。
CPU60は、ステップS510で黒髪色に対応する色範囲に含まれると判断した場合(S510:YES)、黒髪色の「画素」の数を1つ増加させ(ステップS512)、処理を次のステップS509へ進める。
CPU60は、ステップS509にてスキャンが終了していないと判断した場合(S509:NO)、処理をステップS505へ戻し、他の画素を選択して処理を続行する。CPU60は、ステップS509にてスキャンが終了したと判断した場合(S509:YES)、スキャンにより計数された「画素」の数に基づき髪色を判定する。
具体的には、CPU60は、ステップS504で抽出された「画素」の数と、計数された判定不可の「画素」の数とが等しいか否かを判断する(ステップS513)。CPU60は、ステップS513にて等しいと判断した場合(S513:YES)、判定不可の「顔」の数を1つ増加させ(ステップS514)、図11のフローチャートのステップS44へ処理を戻す。当該「顔」は髪色が判定できなかったものとして扱われる。
CPU60は、ステップS513にて等しくないと判断した場合(S513:NO)、黒髪色と判断された「画素」の数が、他の髪色と判断された「画素」の数よりも少ないか否かを判断する(ステップS515)。CPU60は、黒髪色と判断された「画素」の数が、他の髪色と判断された「画素」の数よりも少ないと判断した場合(S515:YES)、他の髪色と判定した「顔」の数を1つ増加させ(ステップS516)、図11のフローチャートのステップS44へ処理を戻す。当該「顔」は他の髪色と判定されたとして扱われる。
CPU60は、ステップS515において、黒髪色と判断された「画素」の数が、他の髪色と判断された「画素」の数以上であると判断した場合(S515:NO)、黒髪色と判定した「顔」の数を1つ増加させ(ステップS517)、図11のフローチャートのステップS44へ処理を戻す。このときの「顔」は、黒髪色と判定されたとして扱われる。
図12のフローチャートの処理を、各画像にて検出された顔毎に実行することにより、顔毎の髪色が計数される。そして、顔毎の髪色判定結果を、図11のフローチャートに示す処理にて画像毎に計数し、画像毎の髪色判定結果を、図10のフローチャートに示す処理にて計数して最終的な判定結果を得る。
上述の処理の内、ステップS513における処理、つまり、抽出された「画素」の数と、判定不可の「画素」の数とが等しいか否かの判断については、判定不可か否かを判定するための処理である。したがって、ステップS513の処理については他に例えば、判定不可の「画素」の数が、抽出された「画素」の数の80%以上であるか否か、抽出された「画素」の数から3減算した数以上であるか否かなどの判断によって判定してもよい。
図10乃至図12のフローチャートに示した処理手順により、ユーザが設定操作を行なっている間に、ユーザの髪色を判定し、写真撮影時のストロボ・ランプ23f,23bの発光の有無及び光量を、髪の艶、光沢を出すために適切に決定することができる。
次に、図10乃至図12のフローチャートに示したCPU60によって実行される各処理手順を、具体例を示す図面を参照して説明する。
図13は、制御部6のCPU60がライブ映像信号から取り出した画像の内容例を示す説明図である。つまり、図10のフローチャートのステップS302の処理によって得られる画像の例である。図13の説明図に示す内容例では、画像に3人の人物が写っていることが判る。
図14は、制御部6のCPU60により顔検出処理が実行されて得られる情報の内容例を示す説明図である。つまり、図10のフローチャートのステップS303の処理の結果の内容例を示す。顔検出処理により、図13に示した画像に対して3つの矩形が、検出された顔領域として得られていることが示されている。左側に写る人物及び中央に写る人物については、矩形である顔領域の横軸方向及び縦軸方向は、画像の水平方向及び垂直方向に対して傾いていることが示されている。
図15は、制御部6のCPU60による顔検出で得られた顔領域の矩形を拡大した後の内容例を示す説明図である。つまり、図12のフローチャートのステップS503の処理の結果の内容例を示す。図15に示すように、拡大後の矩形の上辺は髪の部分を横断している。拡大によって、より確実に髪色の判定の精度を高めることが可能である。
図16は、制御部6のCPU60により色範囲の判定のために抽出される画素の例を示す説明図である。つまり、図12のフローチャートのステップS504からステップS509までの処理によりスキャンされる画素の例を示す。
図16に示すように、拡大された矩形の上辺の頂点から略内側が、始点及び終点に設定され、始点から終点までの間に対応する画素が1つずつ又は1つおき、若しくは任意の数おきに抽出される。これにより、前髪のあたりの画素の色成分を判定することができている。このように、顔検出の技術を利用してより精度よく髪色を判定し、結果的にユーザの満足度の高い画像を得ることができる。
なお、本実施の形態において、図10乃至図12のフローチャートに示した処理では、一旦画像毎に、黒髪色か、他の髪色か、判定不可かの判定が行われた。そして、最終的に、判定不可の「画像」の数と、黒髪色と判定された「画像」の数と、他の髪色と判定された「画像」の数との比較により、ステップS306からステップS310までの処理を行なうとした。しかしながら、「画像」毎に一旦判定することを省略してもよい。つまり、複数の画像について述べ人数の顔分の判定結果を集計してもよい。具体的にはまず、図10乃至図12のフローチャートに示した処理の内、図12のステップS501を省略し、「顔」の数が累計されるようにする。そして、図11のステップS45からステップS49までの処理を省略し、画像毎の各顔の対する髪色の判定を行なう。そしてCPU60は、設定されている時間中の全ての画像について判定を行なった後(S305:YES)、ステップS306の判断の代わりに、検出した延べの「顔」の数と判定不可とされた「顔」の数とは等しいか否かを判断し(S45)、等しいと判断した場合(S45:YES)、最終的な判定結果を“不可”とし(S307)、また、ステップS308の代わりに、黒髪色と判定された「顔」の数が、他の髪色と判定された「顔」の数よりも少ないか否かを判断し(S47)、少ないと判断した場合(S47:YES)、最終的な判定結果を“他の髪色”と判定し(S309)、黒髪色と判定された「顔」の数が、他の髪色と判定された「顔」の数以上であると判断した場合(S47:NO)、最終的な判定結果を“黒髪色”と判定してもよい。
なお、本実施の形態では、画素毎の髪色の判定処理は、顔検出により得られる矩形を拡大した後の上辺に対応する画素を抽出して判定する構成とした。しかしながら、本発明ではこれに限らず、拡大した後の矩形の側辺のどちらか、又は両方に対応する画素を抽出して判定する構成としてもよい。判定不可の場合には他の辺で判定する構成としてもよい。上辺を用いることによって前髪の領域にて髪色を判定できるが、髪は顔の周辺の上側のみならず、横側にも垂れている可能性があるから側辺でも判定が可能であるはずである。
また、本実施の形態における髪色の判定の処理は、ユーザが仕上がりの設定選択の操作を行なっている間にカメラ21から出力されるモニタ用のライブ映像信号から取り出された画像に基づいて行われる構成とした。しかしながら、本発明では更に、写真撮影によって取得された画像についても髪色判定処理を改めて行ない、写真撮影時までの判定処理では黒髪色であると判定されたにも拘わらず、他の髪色などに判定された場合に、色合い、明暗、コントラストなどを調整する画像処理を施して、髪色に適した仕上がりとなるようにしてもよい。本実施の形態のような画像出力装置では、ユーザが複数人であることが多く、また、撮影空間R1から出入りする可能性も高いので、写真撮影時に人物が変わっていることも考慮し、画像処理によって適切な効果を得ることも可能である。
上述のように、本発明の範囲は本実施の形態に限定されるものではないことは勿論である。