(57)【要約】【課題】ユーザの手を煩わせることなく文字や数字、記号からなる付帯情報を最適な向きに配置して写真画像に形成する。【解決手段】画像に含まれる人物の顔の領域を検出し（Ｓ１５０）、検出した顔部の上下方向に基づいて画像の向きを判定し（Ｓ１７０）、判定した画像の向きと日付の上下方向とが略一致するように画像の向きに応じて日付を回転させる（Ｓ１８０）。そして、回転させた日付の向きに適したレイアウトを設定して（Ｓ１９０）、印刷を実行する（Ｓ２４０）。したがって、ユーザの手を煩わせることなく日付を最適な向きにレイアウトしてから画像を印刷することができる。【選択図】図３
2009164871.tif 000002
【特許請求の範囲】
【請求項１】
被写体として人物が含まれる写真画像に文字や数字，記号からなる付帯情報をレイアウトしてターゲットに形成する画像形成装置であって、
前記被写体としての人物の顔部を認識する顔部認識手段と、
該認識された顔部の上下方向と前記付帯情報の上下方向とが略一致するよう前記写真画像に前記付帯情報をレイアウトするレイアウト処理手段と、
を備える画像形成装置。
【請求項２】
請求項１記載の画像形成装置であって、
画像を表示する表示手段と、
前記写真画像と共に前記レイアウト処理手段によりレイアウトされた前記付帯情報がプレビュー表示されるよう前記表示手段を制御する表示制御手段と、
を備える画像形成装置。
【請求項３】
請求項２記載の画像形成装置であって、
前記レイアウト処理手段は、前記認識された顔部の上下方向に略一致する上下方向となる前記付帯情報のレイアウトを複数設定する手段であり、
前記表示制御手段は、該設定された複数のレイアウトを選択肢として表示するよう前記表示手段を制御する手段であり、
前記複数のレイアウトが前記表示手段に表示されている状態でユーザが所望のレイアウトを選択する選択手段を備える
画像形成装置。
【請求項４】
請求項２記載の画像形成装置であって、
前記顔部の上下方向に対する前記付帯情報の相対的な上下方向をユーザが設定する設定手段を備え、
前記レイアウト処理手段は、前記認識された顔部の上下方向に拘わらず前記設定手段によりユーザによって設定された上下方向に基づいて前記写真画像に前記付帯情報をレイアウトする手段である
画像形成装置。
【請求項５】
前記付帯情報は、前記写真画像の撮影日を含む情報である請求項１ないし４いずれか１項に記載の画像形成装置。
【請求項６】
被写体として人物が含まれる写真画像に文字や数字，記号からなる付帯情報をレイアウトしてターゲットに形成する画像形成装置のコンピュータのソフトウェアによる制御方法であって、
（ａ）前記被写体としての人物の顔部を認識するステップと、
（ｂ）前記ステップ（ａ）で認識された顔部の上下方向と前記付帯情報の上下方向とが略一致するよう前記写真画像に前記付帯情報をレイアウトするステップと、
を含む画像形成装置の制御方法。
【請求項７】
請求項６記載の制御方法の各ステップをコンピュータで実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被写体として人物が含まれる写真画像に文字や数字，記号からなる付帯情報をレイアウトしてターゲットに形成する画像形成装置およびその制御方法並びに制御方法の各ステップをコンピュータで実現させるためのプログラムに関する。
【背景技術】
【０００２】
従来より、写真の一部領域に撮影日付等の文字を重ねて印画紙に形成する画像形成装置が知られている（例えば、特許文献１参照）。この装置では、印画紙を縦長としたときの右下部に文字を形成する領域が設定され文字の上下方向が印画紙の長辺方向に合わせて形成される。また、ユーザが文字を形成する領域や文字の上下方向を任意の位置や方向に指定することもできる。
【特許文献１】特開２００１−３４６０２９
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上述した画像形成装置では、横撮りされた写真は印画紙を横長とするように形成されるので、ユーザが何らの指定を行わずに文字を形成すると、横撮りされた写真は印画紙の短辺を上下方向とするのに対し文字は印画紙の長辺を上下方向とするので写真と文字の上下方向が一致せず文字が見づらくなることがある。写真の向きに合わせてユーザが文字の方向を指定してもよいが、縦撮りの写真や横撮りの写真が混在するときには写真の向きを確認しながら指定する必要があり手間がかかってしまう。
【０００４】
本発明の画像形成装置およびその制御方法並びにプログラムは、ユーザの手を煩わせることなく文字や数字、記号からなる付帯情報を最適な向きに配置して写真画像に形成することを主目的とする。
【課題を解決するための手段】
【０００５】
本発明の画像形成装置およびその制御方法並びにプログラムは、上述の主目的を達成するために以下の手段を採った。
【０００６】
本発明の画像形成装置は、
被写体として人物が含まれる写真画像に文字や数字，記号からなる付帯情報をレイアウトしてターゲットに形成する画像形成装置であって、
前記被写体としての人物の顔部を認識する顔部認識手段と、
該認識された顔部の上下方向と前記付帯情報の上下方向とが略一致するよう前記写真画像に前記付帯情報をレイアウトするレイアウト処理手段と
を備えることを要旨とする。
【０００７】
この本発明の画像形成装置では、被写体としての人物の顔部を認識し、認識された顔部の上下方向と付帯情報の上下方向とが略一致するよう写真画像に付帯情報をレイアウトする。したがって、ユーザの手を煩わせることなく付帯情報を最適な向きに配置して写真画像に形成することができる。
【０００８】
こうした本発明の画像形成装置において、画像を表示する表示手段と、前記写真画像と共に前記レイアウト処理手段によりレイアウトされた前記付帯情報をプレビュー表示するよう前記表示手段を制御する表示制御手段とを備えるものとすることもできる。こうすれば、画像形成前にユーザが付帯情報のレイアウトを確認することができる。この態様の本発明の画像形成装置において、前記レイアウト処理手段は、前記認識された顔部の上下方向に略一致する上下方向となる前記付帯情報のレイアウトを複数設定する手段であり、前記表示制御手段は、該設定された複数のレイアウトを選択肢として表示するよう前記表示手段を制御する手段であり、前記複数のレイアウトが前記表示手段に表示されている状態でユーザが所望のレイアウトを選択する選択手段を備えるものとしてもよい。こうすれば、写真画像の方向に適した付帯情報のレイアウトをユーザに選択可能に提供することができる。あるいは、この態様の本発明の画像形成装置において、前記顔部の上下方向に対する前記付帯情報の相対的な上下方向をユーザが設定する設定手段を備え、前記レイアウト処理手段は、前記認識された顔部の上下方向に拘わらず前記設定手段によりユーザによって設定された上下方向に基づいて前記写真画像に前記付帯情報をレイアウトする手段であるものとしてもよい。こうすれば、写真画像の方向に拘わらずユーザの設定を優先させることができる。
【０００９】
また、本発明の画像形成装置において、前記付帯情報は、前記写真画像の撮影日を含む情報であるものとしてもよい。こうすれば、写真画像に形成されることの多い撮影日が最適な方向に設定されるので本発明を適用する意義が大きい。
【００１０】
本発明の画像形成装置の制御方法は、被写体として人物が含まれる写真画像に文字や数字，記号からなる付帯情報をレイアウトしてターゲットに形成する画像形成装置のコンピュータのソフトウェアによる制御方法であって、
（ａ）前記被写体としての人物の顔部を認識するステップと、
（ｂ）前記ステップ（ａ）で認識された顔部の上下方向と前記付帯情報の上下方向とが略一致するよう前記写真画像に前記付帯情報をレイアウトするステップと、
を含むものである。
【００１１】
本発明の画像形成装置のコンピュータのソフトウェアによる制御方法は、被写体としての人物の顔部を認識し、認識された顔部の上下方向と付帯情報の上下方向とが略一致するよう写真画像に付帯情報をレイアウトする。したがって、ユーザの手を煩わせることなく付帯情報を最適な方向にして写真画像に形成することができる。なお、本発明の画像形成装置の制御方法に、上述した画像形成装置のいずれかの機能を実現するステップを追加してもよい。
【００１２】
本発明のプログラムは、上述した制御方法の各ステップを１又は複数のコンピュータに実現させるためのものである。このプログラムは、コンピュータが読み取り可能な記録媒体（例えばハードディスク、ＲＯＭ、ＦＤ、ＣＤ、ＤＶＤなど）に記録されていてもよいし、伝送媒体（インターネットやＬＡＮなどの通信網）を介してあるコンピュータから別のコンピュータへ配信されてもよいし、その他どのような形で授受されてもよい。このプログラムを一つのコンピュータに実行させるか又は複数のコンピュータに各ステップを分担して実行させれば、上述した制御方法の各ステップが実行されるため、該制御方法と同様の作用効果が得られる。
【発明を実施するための最良の形態】
【００１３】
次に、本発明の実施の形態を図面に基づいて説明する。図１は、本発明の一実施形態であるフォトプリンタ１０の外観図であり、図２は、フォトプリンタ１０の構成の概略を示す構成図である。
【００１４】
本実施形態のフォトプリンタ１０は、図１に示すように、プリンタ本体１２の前面を開閉可能な前面扉１４と、プリンタ本体１２の上面に設けられた操作パネル２０と、プリンタ本体１２に内蔵された印刷機構３０（図２参照）と、メモリカードスロット１６に挿入されたメモリカード１８のデータの入出力を司るメモリカードコントローラ５０と、フォトプリンタ１０の全体の制御を司るコントローラ６０（図２参照）とを備えている。
【００１５】
前面扉１４は、プリンタ本体１２の前面を開閉するための蓋であり、図１に示すように、開状態のときには、プリンタ本体１２の前面から排紙される記録紙Ｓを受けるための排紙トレイとして機能すると共に、プリンタ本体１２の前面に設けられた各種のメモリカードスロット１６をユーザが利用可能な状態となる。
【００１６】
操作パネル２０は、文字や図形、記号などを表示するディスプレイ２２と、このディスプレイ２２の周囲に配置されたボタン群２４とを備えている。ボタン群２４は、図２に示すように、電源のオンオフを行うための電源ボタン２４ａ、ディスプレイ２２に表示されている画像等の表示サイズを４分割表示・１５分割表示・全画面表示等に切り替えるための表示切替ボタン２４ｂ、印刷機能に関する複数の選択肢が並んだメインメニュー画面を呼び出すためのメニューボタン２４ｃ、操作を途中でキャンセルしたり記録紙Ｓへの印刷を途中で中断したりするためのキャンセルボタン２４ｄ、記録紙Ｓへの印刷実行を指示するための印刷ボタン２４ｅ、メモリカードスロット１６に挿入されたメモリカード１８に編集画像等を保存するための保存ボタン２４ｆ、ディスプレイ２２に表示された複数の選択肢の中から所望の選択肢を選択したりカーソルを移動したりするときに操作される上下左右ボタン２４ｇ、この上下左右ボタン２４ｇの中央に配置され上下左右ボタン２４ｇによって選択されている選択肢に決定したことを指示するためのＯＫボタン２４ｈなどで構成されている。また、図１に示すように、操作パネル２０の奥には、印刷機構３０の給紙口２８が設けられ、この給紙口２８には、ガイド幅が記録紙Ｓの幅に合うように左右方向にスライド操作される一対の用紙ガイド２９ａ，２９ｂが設けられている。
【００１７】
印刷機構３０は、プリンタ本体１２に内蔵され、図２に示すように、記録紙Ｓをプラテン３１の上に搬送する紙送りローラ３２やその他の図示しない搬送ローラを駆動可能な紙送りモータ３４と、キャリッジモータ３６ａと従動ローラ３６ｂとに架け渡されたベルト３８により紙送りローラ３２に平行に配置されたガイドレール４０に沿って主走査方向に往復動するキャリッジ４２と、キャリッジ４２に搭載され溶媒としての水に着色剤としての染料または顔料を含有したブラック（Ｋ），シアン（Ｃ），マゼンタ（Ｍ），イエロー（Ｙ）の各色のインクを個別に収容するインクカートリッジ４４と、キャリッジ４２に搭載されインクカートリッジ４４からインクの供給を受けてインク滴を吐出する印刷ヘッド４６と、キャリッジ４２の背面側に設けられキャリッジ４２の位置を検出するリニア式エンコーダ４８とを備えている。印刷ヘッド４６は、ここでは圧電素子に電圧をかけることによりこの圧電素子を変形させてインクを加圧する方式を採用しているが、発熱抵抗体（例えばヒータなど）に電圧をかけインクを加熱して発生した気泡によりインクを加圧する方式を採用してもよい。
【００１８】
メモリカードコントローラ５０は、メモリカードスロット１６に挿入されたメモリカード１８との間でデータの入出力を行うものである。このメモリカードコントローラ５０は、メモリカードスロット１６にメモリカード１８が接続されているとき、メモリカード１８に保存されているファイルを読み出してコントローラ６０に送信したりコントローラ６０からの命令を入力し該命令に基づいてメモリカード１８にデータを書き込んだりする。
【００１９】
コントローラ６０は、図２に示すように、ＣＰＵ６１を中心としたマイクロプロセッサとして構成されており、ＣＰＵ６１の他に、各種処理プログラムや各種データ，各種テーブルなどを記憶するＲＯＭ６２と、データを一時的に記憶するＲＡＭ６３と、メモリカードスロット１６に挿入されたメモリカード１８や印刷機構３０、操作パネル２０と通信を可能とする入出力（Ｉ／Ｏ）ポート６５とを備えており、これらはバス６７を介して電気的に接続されている。このコントローラ６０には、メモリカード１８の画像ファイルやリニア式エンコーダ４８からの位置信号，操作パネル２０のボタン群２４からの操作信号などが入力ポート６５を介して入力されており、コントローラ６０からは、印刷ヘッド４６への制御信号やメモリカードコントローラ５０への制御指令，キャリッジモータ３６ａへの駆動信号，紙送りモータ３４への駆動信号，ディスプレイ２２への表示信号などが出力ポート６５を介して出力されている。
【００２０】
次に、こうして構成された本実施形態のマルチファンクションプリンタ１０の動作、特に、メモリカード１８に保存された画像をディスプレイ２２で確認した上で印刷する際の動作について説明する。図３は、マルチファンクションプリンタ１０のＣＰＵ６１により実行される印刷処理ルーチンの一例を示すフローチャートである。このルーチンは、ＲＯＭ６２に記憶され、メモリカード１８がメモリカードスロット１６に挿入されたことがメモリカードコントローラ５０によって検出されたときにＣＰＵ６１により実行される。
【００２１】
図３の印刷処理ルーチンが開始されると、ＣＰＵ６１は、まず、メモリカード１８に記憶されている画像ファイルを入力する（ステップＳ１００）。この画像ファイルの一例を図４に示す。図示するように、画像ファイルには、画像データ本体の他に、露出や絞りなどの撮影データや撮影日時，画像データのサイズ，サムネイル画像のサイズ等を含むヘッダ情報や、サムネイル画像等が含まれている。画像ファイルを入力すると、ユーザが印刷する画像を選ぶためサムネイル画像を表示した画像選択画面７０をディスプレイ２２に表示し（ステップＳ１１０）、画像の選択を待つ（ステップＳ１２０）。この画像選択画面７０の一例を図５に示す。ここで、画像の選択は、画像選択画面７０上で上下左右ボタン２４ｇを操作してカーソル７０ａを印刷したい画像のサムネイル画像に合わせてＯＫボタン２４ｈを押下することにより行われる。
【００２２】
画像が選択されると、ＣＰＵ６１は、日付設定がオンになっているか否か（ステップＳ１３０）を判定する。ここで、日付設定は、メニューボタン２４ｃにより図示しない日付設定画面を呼び出して、ユーザが「日付設定あり」または「日付設定なし」を上下左右ボタン２４ｇを操作して選択しＯＫボタン２４ｈを押下することにより行われる。なお、デフォルト値は「日付設定なし」に設定されている。ステップＳ１３０で日付設定がオンされていないと判定したときには、選択された画像をプレビュー表示し（ステップＳ２２０）、ユーザからの印刷指示を待つ（ステップＳ２３０）。ユーザが印刷ボタン２４ｅを押下して印刷指示が入力されたときに日付を入れることなく印刷を実行し（ステップＳ２４０）、本ルーチンを終了する。
【００２３】
一方、ステップＳ１３０で日付設定がオンされていると判定したときには、画像ファイル中に撮影日のデータが含まれているか否かを判定する（ステップＳ１４０）。画像ファイル中に撮影日のデータが含まれていないと判定したときには、次に選択した画像があるか否かを判定し（ステップＳ２１０）、次の画像が存在すると判定したときにはステップＳ１４０に戻って処理を繰り返し、次の画像が存在しないと判定したときにはステップＳ２１０以降の処理を実行して、本ルーチンを終了する。
【００２４】
一方、ステップＳ１４０で画像ファイル中に撮影日のデータが含まれていると判定したときには、画像データの本体に含まれる人物の顔の領域を検出する（ステップＳ１５０）。ここで、顔領域の検出方法は公知技術なので詳細については省略するが、例えば、画像から肌色に指定した色と近い色を持つ画素を肌色画素の集合として抽出する方法があげられる。この方法は、例えば、肌色を他の色と区別するための色空間上で、予め色空間上の肌色の範囲を定め、各画素の色が定められた範囲に入っているか否かを判定することにより行われる。このとき、画像データを色相、彩度及び輝度の色空間に変換し、カラー画像の平均輝度を算出し、算出した平均輝度の所定の範囲毎に、予め肌色画素値に適切な範囲を設定して、範囲内の肌色画素値の領域を肌色画素の集合として抽出してもよい。このように、画像の平均輝度を複数の範囲に区分し、各範囲に対して肌色画素値の範囲を設定するようにすれば、画像全体が明るいか暗いかに応じて、適切な肌色画素の範囲を設定することができる。この結果、肌色画素の検出をより正確に行うことが可能となり、肌色画素の集合を抽出することができる。このとき、ある程度の数（例えば１０画素、または、画像全体の画素数の１％以上）以上の肌色画素が接した状態で集合している画像領域のみをして抽出してもよい。肌色画素の集合を抽出した後、ＣＰＵ６１は、肌色画素の集合から目の抽出を行う。ここで、目を抽出する方法は公知技術なので詳細については省略するが、例えば、抽出した肌色画素の集合領域から、肌色画素の集合領域の中で、より輝度値の低い領域が２つ並んでいる領域を目として抽出する。このとき、ニューラルネットワークによる処理などの種々の処理によって抽出してもよい。このように肌色画素の集合領域の中から目を抽出できたときに顔領域を検出できたとする。
【００２５】
次に、ＣＰＵ６１は、顔領域を検出できたか否かを判定する（ステップＳ１６０）。ここで、肌色画素の集合を抽出できなかったときや肌色画素の集合を抽出した後に目を抽出できなかったときなどは、ステップＳ１６０で顔領域を検出できなかったと判定し、後述する画像方向判定処理を行わずにデフォルトで設定されている日付レイアウトを維持する。ここで、日付のレイアウトにデフォルト値が設定された画像の一例を図６に示す。図示するように、記録紙Ｓを横向きとしたときの右下の位置に日付の上下の向きが記録紙Ｓの短辺方向となるように設定されている。このため、画像が縦撮りの写真のときには、画像の向きと日付の向きとが一致せず日付が見づらくなることがある。ステップＳ１６０で顔領域を検出できたと判定したときには、画像の向きを判定する（ステップＳ１７０）。画像の向きの判定は、図７に示す画像方向判定処理により行われる。ここで、印刷処理ルーチンの説明を中断して、画像方向判定処理について説明する。
【００２６】
画像方向判定処理では、まず、検出した顔領域を矩形で囲む（ステップＳ３００）。顔領域が矩形で囲まれた様子を図８に示す。図示するように、顔領域が点線で示す矩形で囲まれる。なお、図中の基準方向は、画像の方向を判定する際に用いられ、画像を横向きとしたときの短辺方向、即ち、日付レイアウトのデフォルト設定の日付の上方向と同じ向きに設定されている。次に、矩形で囲んだ領域の中心を原点（０，０）としてｘｙ座標系を作成する（ステップＳ３１０）。図示するように、画像の基準方向と一致する方向の縦軸をｙ軸とし、ｙ軸に直交する横軸をｘ軸と定める。続いて、顔領域中の両目同士を線分ｌｅｙｅで結び（ステップＳ３２０）、線分ｌｅｙｅがｘ軸と略直交するか否かを判定する（ステップＳ３３０）。ここで、画像中の顔の向きは通常は画像の縦方向または横方向を上下方向とするので、ｘ軸と略直交するときにはｘ軸に沿った方向が顔の上下方向になると考えることができ、ｘ軸と略直交しないとき即ちｙ軸と略直交するときにはｙ軸に沿った方向が顔の上下方向になると考えることができる。ステップＳ３３０で線分ｌｅｙｅがｘ軸と略直交すると判定されたときには、交点のｘ座標の値が正か否かを判定する（ステップＳ３４０）。ｘ座標の値が正と判定されたときには、両目が顔の中心よりもｘ軸の正側に位置しているので顔の上方向はｘ軸の正の向きと判定し（ステップＳ３５０）、顔の上方向に基づく画像方向は基準方向に対し右に９０度回転した方向であると判定して（ステップＳ３６０）、この処理を終了する。一方、ステップＳ３４０で交点のｘ座標の値が正ではないと判定されたときには、両目が顔の中心よりもｘ軸の負側に位置しているので顔の上方向はｘ軸の負の向きと判定し（ステップＳ３７０）、画像方向は基準方向に対し右に２７０度回転した方向であると判定して（ステップＳ３８０）、この処理を終了する。一方、ステップＳ３２０で、線分ｌｅｙｅがｘ軸と略直交しないと判定されたときには、ｙ軸との交点のｙ座標の値が正か否かを判定する（ステップＳ３９０）。ｙ座標の値が正と判定されたときには、両目が顔の中心よりもｙ軸の正側に位置しているので顔の上方向はｙ軸の正の向きと判定し（ステップＳ４００）、画像方向は基準方向と同じ向きであると判定して（ステップＳ４１０）、この処理を終了する。一方、ステップＳ３９０で交点のｙ座標の値が正ではないと判定されたときには、両目が顔の中心よりもｙ軸の負側に位置しているので顔の上方向はｙ軸の負の向きと判定し（ステップＳ４２０）、画像方向は基準方向に対し右に１８０度回転した方向であると判定して（ステップＳ４３０）、この処理を終了する。このように、画像の向きの判定は、検出した顔領域中の目の位置に基づいて顔の向きを判定し、判定した顔の向きに基づいて画像の基準方向と一致する方向かあるいは画像の基準方向から右に９０度，１８０度，２７０度回転した方向のいずれであるかを判定することにより行われる。なお、図８に示す画像では、ステップＳ３３０で線分ｌｅｙｅがｘ軸と略直交すると判定され、ステップＳ３４０で交点のｘ座標の値が正ではないと判定されるので、ステップＳ３７０で顔の上方向はｘ軸の負の向きと判定され、ステップＳ３８０で画像方向は基準方向よりも右に２７０度回転した方向であると判定される。
【００２７】
図３の印刷処理ルーチンに戻って、こうして画像の向きを判定すると、判定した画像の向きに応じて日付を回転させる（ステップＳ１８０）。具体的には、画像の向きが基準方向と一致するときには回転を行わず、画像の向きが画像の基準方向から右に９０度，１８０度，２７０度回転した方向であるときには、日付をデフォルトの設定方向からそれぞれ右に９０度，１８０度，２７０度回転させる処理を行う。次に、日付のレイアウトの設定を行う（ステップＳ１９０）。日付のレイアウトの設定は、図９に示す日付レイアウト設定処理により行われる。ここで、印刷処理ルーチンの説明を中断して、日付レイアウト設定処理について説明する。
【００２８】
日付レイアウト設定処理では、まず、ユーザによる日付のレイアウトの手動選択がオンになっているか否かを判定する（ステップＳ５００）。ここで、日付のレイアウトの手動選択は、前述した日付設定画面においてユーザが「日付設定あり」を選択しＯＫボタン２４ｈを押下した後に、ユーザが「手動選択」または「自動設定」を上下左右ボタン２４ｇを操作して選択しＯＫボタン２４ｈを押下することにより行われる。なお、デフォルト値は「自動設定」に設定されている。ステップＳ５００で、レイアウトの手動選択がオンになっていないと判定されたときには、画像の向きに対して右下に日付のレイアウトを設定し（ステップＳ５７０）、この処理を終了する。日付のレイアウトが自動設定された画像の一例を図１０に示す。図示するように、日付の向きはステップＳ１８０で回転された向きになっている。なお、ステップＳ１６０で顔領域を検出できていないと判定しているときには、デフォルト値の設定で日付をレイアウトする。一方、ステップＳ５００で、レイアウトの手動選択がオンになっていると判定されたときには、ユーザが所望のレイアウト位置を選択できるように、レイアウト候補を画像の四隅に設定し（ステップＳ５１０）、レイアウト選択画面７２をディスプレイ２２に表示する（ステップＳ５２０）。このレイアウト選択画面７２の一例を図１１に示す。図示するように、日付の向きはステップＳ１８０で回転された向きになっている。なお、ステップＳ１６０で顔領域を検出できていないと判定しているときには、デフォルト値の設定の日付の向きでレイアウト候補を表示する。次に、いずれかのレイアウト候補が選択されたか否かを判定する（ステップＳ５３０）。ここで、レイアウトの選択は、レイアウト選択画面７２上で上下左右ボタン２４ｇを操作してカーソル７２ａを選択したいレイアウト候補に合わせてＯＫボタン２４ｈを押下することにより行われる。レイアウト候補が選択されると、日付の方向を変更するか否かをユーザに問い合わせるメッセージを表示する（ステップＳ５４０）。表示されるメッセージの一例を図１２に示す。メッセージを表示すると、ユーザによる変更操作がされたか否かを判定し（ステップＳ５５０）、変更操作がされていれば、ユーザの変更操作に基づいて日付を回転させて（ステップＳ５６０）、本処理を終了する。ここで、変更操作は、メッセージ表示中にＯＫボタン２４ｈを押して日付の変更を選択してから上下左右ボタン２４ｇを操作し日付が所望の方向になったときに再度ＯＫボタン２４ｈを押下することにより行われる。日付の向きは、例えば、上ボタンが押されたときには基準方向を向くように回転され、右ボタンが押されたときには基準方向から右に９０度回転した方向を向くように回転される。また、メッセージ表示中にユーザがキャンセルボタン２４ｄを押下すると、ステップＳ５５０で変更操作はされないと判定して、本処理を終了する。
【００２９】
図３の印刷処理ルーチンに戻って、こうして、日付をレイアウトする位置や向きを設定すると、ステップＳ２１０で次に選択した画像があるか否かを判定し、次の画像が存在すると判定したときにはステップＳ１４０に戻って処理を繰り返し、次の画像が存在しないと判定したときにはステップＳ２２０以降の処理を実行して、本ルーチンを終了する。ステップＳ２２０でディスプレイ２２に表示されるプレビュー画面７４の一例を図１３に示す。図１３では、図１１のレイアウト選択画面７２において画像方向に対して右上（図中左上）の日付が選択された場合を例示している。このように、検出した顔部の方向から画像の向きを判定し、判定した画像の向きと日付の向きとが略一致するよう日付を回転させてレイアウトしてから印刷を実行することができる。
【００３０】
ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態の図３の印刷処理ルーチンのステップＳ１５０の処理を実行するコントローラ６０が顔認識手段に相当し、図３の印刷処理ルーチンのステップＳ１７０〜Ｓ１９０の処理を実行するコントローラ６０がレイアウト処理手段に相当する。また、ディスプレイ２２が表示手段に相当し、コントローラ６０が表示制御手段に相当し、ボタン群２４の上下左右ボタン２４ｇやＯＫボタン２４ｈが選択手段に相当し、ボタン群２４の上下左右ボタン２４ｇやＯＫボタン２４ｈが設定手段に相当する。なお、本実施形態ではフォトプリンタ１０の動作の説明をすることにより本発明の画像形成装置のコンピュータのソフトウェアによる制御方法の一例も明らかにしている。
【００３１】
以上詳述した本実施形態のフォトプリンタ１０によれば、画像に含まれる人物の顔の領域を検出し、検出した顔部の上下方向に基づいて画像の向きを判定し、判定した画像の向きと日付の上下方向とが略一致するように画像の向きに応じて日付を回転させて、回転させた日付のレイアウトを設定してから、印刷を実行する。したがって、ユーザの手を煩わせることなく日付を最適な向きにレイアウトしてから画像を印刷することができる。
【００３２】
また、ディスプレイ２２にレイアウトされた日付をプレビュー表示するので、ユーザがレイアウトを確認することができる。更に、判定された顔部の上下方向に略一致する上下方向となる日付の複数のレイアウトを選択肢としてディスプレイ２２に表示するので、画像の方向に適した日付のレイアウトをユーザに選択可能に提供することができる。更にまた、判定された顔部の上下方向に拘わらずユーザによって選択された上下方向に基づいて日付をレイアウトするので、画像の方向に拘わらずユーザの設定を優先させることができる。
【００３３】
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
【００３４】
例えば、上述した実施形態では、日付を印刷するものとしたが、日付に限られず、写真に関するコメントや露出や絞りなどの撮影データなど、文字や数字，記号からなるものであれば如何なるものでもよい。写真に関するコメントは、例えば、メニューボタン２４ｃにより図示しないコメント設定画面を呼び出して、ユーザが定型のコメント一覧の中から上下左右ボタン２４ｇを操作して「誕生日おめでとう」や「祝！卒業」などの定型コメントを選択しＯＫボタン２４ｈを押下することにより設定してもよいし、文字等を入力する入力系を備えユーザがコメントを入力して設定してもよい。
【００３５】
上述した実施形態では、日付レイアウト設定処理において、日付のレイアウトを手動選択できるものとしたが、自動設定のみとしてもよい。この場合、図９のステップＳ５００〜Ｓ５６０の処理を省略するものとすればよい。
【００３６】
上述した実施形態では、日付レイアウト設定処理において、自動設定のときの日付レイアウトは画像方向に対して右下の位置としたが、右下の位置に限られるものではなく、ユーザが所望の位置を設定できるものとしてもよい。また、自動設定のときに顔領域を検出できていないときには、デフォルト値の設定で日付をレイアウトするものとしたが、レイアウト選択画面を表示してユーザに日付のレイアウトを選択させるものとしてもよい。
【００３７】
上述した実施形態では、日付のレイアウトを設定した後にプレビュー表示をするものとしたが、プレビュー表示を行わず直接印刷を実行するものとしてもよい。
【００３８】
上述した実施形態では、顔領域を検出する際に目を抽出するものとしたが、目ではなく口などの他の部位を検出するものとしてもよい。また、目の方向に基づいて顔の上方向を判定したが、これに限られるものはなく、例えば、目と口とを抽出し口から目に向かう方向を顔の上方向と判定するものとしてもよい。
【００３９】
上述した実施形態では、フォトプリンタ１０は、インクジェット方式の印刷機構としたが、電子写真方式やドットインパクト方式などのプリンタに本発明を適用してもよいし、プリンタのほかにスキャナなどの機能を併せ持つ複合機に本発明を適用してもよい。
【図面の簡単な説明】
【００４０】
【図１】フォトプリンタ１０の外観図。
【図２】フォトプリンタ１０の構成の概略を示す構成図。
【図３】印刷処理ルーチンの一例を示すフローチャート。
【図４】画像ファイルの一例を示す説明図。
【図５】画像選択画面７０の一例を示す説明図。
【図６】日付のレイアウトにデフォルト値が設定された画像の一例を示す説明図。
【図７】画像方向判定処理の一例を示すフローチャート。
【図８】画像の向きを判定する様子を示す説明図。
【図９】日付レイアウト設定処理の一例を示すフローチャート。
【図１０】日付のレイアウトが自動設定された画像の一例を示す説明図。
【図１１】レイアウト選択画面７２の一例を示す説明図。
【図１２】日付方向の変更問い合わせメッセージの一例を示す説明図。
【図１３】プレビュー画面７４の一例を示す説明図。
【符号の説明】
【００４１】
１０  フォトプリンタ、１２  プリンタ本体、１４  前面扉、１６  メモリーカードスロット、１８  メモリカード、２０  操作パネル、２２  ディスプレイ、２４  ボタン群、２４ａ  電源ボタン、２４ｂ  表示切替ボタン、２４ｃ  メニューボタン、２４ｄ  キャンセルボタン、２４ｅ  印刷ボタン、２４ｆ  保存ボタン、２４ｇ  上下左右ボタン、２４ｈ  ＯＫボタン、３０  印刷機構、３１  プラテン、３２  紙送りローラ、３４  紙送りモータ、３６ａ  キャリッジモータ、３６ｂ  従動ローラ、３８  ベルト、４０  ガイドレール、４２  キャリッジ、４４  インクカートリッジ、４６  印刷ヘッド、４８  リニア式エンコーダ、５０  メモリカードコントローラ、６０  コントローラ、６１  ＣＰＵ、６２  ＲＯＭ、６３  ＲＡＭ、６５  （Ｉ／Ｏ）ポート、６７  バス、７０  画像選択画面  ７０ａ  カーソル、７２  日付レイアウト選択画面、７２ａ  カーソル、７４  印刷プレビュー画面、Ｓ  記録紙。
【図１】
2009164871.tif 000003
【図２】
2009164871.tif 000004
【図３】
2009164871.tif 000005
【図４】
2009164871.tif 000006
【図５】
2009164871.tif 000007
【図６】
2009164871.tif 000008
【図７】
2009164871.tif 000009
【図８】
2009164871.tif 000010
【図９】
2009164871.tif 000011
【図１０】
2009164871.tif 000012
【図１１】
2009164871.tif 000013
【図１２】
2009164871.tif 000014
【図１３】
2009164871.tif 000015