説明

画像処理方法および画像処理装置

【課題】画像データに付加される情報に基づいて画像データの補正を行う画像処理方法および画像処理装置において、画像データに付加される情報に応じて顔情報の取得を適正化して顔情報に基づく画像データの補正を開始するまでの時間を最適化する。
【解決手段】画像データに顔情報が付加されるときには顔情報に基づいて画像データを補正し、画像データに顔情報が付加されていないとき、画像データに付加されるシーン情報が人物である場合に画像データから人物の顔を認識する顔認識処理を実行して顔情報を取得するとともに該顔情報に基づいて画像データを補正する一方、シーン情報が人物以外である場合に顔認識処理を行わない。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、画像データに付加される情報(顔情報やシーン情報)に基づいて画像データの補正を適切に行う画像処理方法および画像処理装置に関するものである。
【背景技術】
【0002】
画像データに顔情報を付加する技術については、例えば特許文献1に記載されている。この特許文献1に記載のプリントシステムでは、デジタルカメラが顔認識処理を実行して顔オブジェクトの位置情報や色情報などを顔オブジェクト情報として検出し、さらに原撮影画像データに添付し、または埋め込んで顔オブジェクト情報付き撮影画像データを生成する。一方、プリンターなどの印刷装置は、撮影画像に付加される顔オブジェクト情報に基づいて画像データに対して色補正を実行し、色補正済の画像を印刷する。このように、デジタルカメラによる顔認識結果を利用して印刷装置側で独自に補正をかける技術が知られている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2007−213455号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、デジタルカメラの顔認識によって被写体に含まれる人物の顔の全部が完全かつ正確に認識される保証はない。このため、デジタルカメラ側での顔認識の補佐あるいは再確認を行う意味で印刷装置側でも独自に顔認識を行うことは有効である。その一方で、印刷装置側での顔認識処理を一律に行うことには次の問題が含まれている。すなわち、顔認識処理には時間がかかり、かつ印刷開始前に行う必要があることから、印刷装置側での顔認識処理を無条件に実行する場合、印刷ボタン押下から印刷開始までの待ち時間が徒に増えるという問題がある。
【0005】
この発明にかかるいくつかの態様は、画像データに付加される情報に基づいて画像データの補正を行う画像処理方法および画像処理装置において、画像データに付加される情報に応じて顔情報の取得を適正化して顔情報に基づく画像データの補正を開始するまでの時間を最適化することを目的とする。
【課題を解決するための手段】
【0006】
本発明の第1の態様は、上記目的を達成するため、画像データに顔情報が付加されるときには顔情報に基づいて画像データを補正し、画像データに顔情報が付加されていないとき、画像データに付加されるシーン情報が人物である場合に画像データから人物の顔を認識する顔認識処理を実行して顔情報を検出するとともに該顔情報に基づいて画像データを補正する一方、シーン情報が人物以外である場合に顔認識処理を行わないことを特徴としている。
【0007】
また、本発明の第2の態様は、上記目的を達成するため、画像データに付加される顔情報を取得する顔情報取得部と、画像データに付加されるシーン情報を取得するシーン情報取得部と、画像データから人物の顔を認識する顔認識処理を行う顔認識部と、画像データを補正する補正部とを備え、補正部は、顔情報取得部により顔情報が取得されるときには顔情報に基づいて補正する一方、顔情報取得部により顔情報が取得されずしかもシーン情報取得部により取得されるシーン情報が人物であるときには顔認識処理の実行により検出される顔情報に基づいて補正し、顔認識部は、顔情報取得部により顔情報が取得されずしかもシーン情報取得部により取得されるシーン情報が人物以外であるとき、または顔情報取得部により顔情報が取得されるときには顔認識処理を実行しないことを特徴としている。
【0008】
このように構成された発明(画像処理方法および画像処理装置)では、画像データに顔情報が付加されている場合、画像データに人物が含まれている蓋然性が高いため、顔認識処理を実行することなく、付加されている顔情報に基づいて画像データが補正される。一方、画像データに顔情報が付加されていない場合、次のような態様が考えられる。例えば被写体を撮像して画像データを生成するデジタルカメラなどの撮像装置に、顔認識機能が装備されていない場合、被写体に人物を含まれていたとしても、顔情報を画像データに付加することは不可能である。また、顔認識機能を有するものの、撮像装置が顔認識に失敗していることも想定される。そこで、画像データに顔情報が付加されているか否かという判断基準(以下、「顔情報基準」という)のみではなく、本発明ではシーン情報をさらに組み合わせて画像データに対する補正を実行している。すなわち、シーン情報が人物である場合、画像データに人物が含まれている可能性が高いため、顔認識処理が実行されて顔情報が検出され、該顔情報に基づいて画像データが補正される。逆に、シーン情報が人物以外である場合、画像データに人物が含まれている可能性が低いため、顔認識処理の実行が見送られる。このように画像データに付加される情報に応じて顔情報の取得が適正化されている。その結果、顔情報に基づく画像データの補正を開始するまでの時間が最適化される。
【0009】
上記のように、本発明では、顔情報基準と、シーン情報が人物であるか否かという判断基準(以下、「シーン情報基準」という)とを組み合わせているが、顔情報基準を優先させるのが望ましい。というのも、上記したように画像データに付加される顔情報は撮像装置による顔認識により取得されるものであるため、顔情報が付加されているということは被写体に人物が含まれる蓋然性がシーン情報基準よりも高いと考えられるからである。したがって、画像データに顔情報が付加されるときには、シーン情報が人物以外であっても顔情報に基づいて画像データを補正するのが好適である。
【0010】
さらに、画像データに顔情報が付加されず、かつシーン情報が人物以外である場合には、被写体に人物が含まれていない可能性が高いが、シーン情報に基づいて画像データを補正することで画像の色合いを最適化することができ、好適である。
【図面の簡単な説明】
【0011】
【図1】本発明にかかる画像処理装置の一実施形態を用いた印刷システムを示す図。
【図2】デジタルカメラで作成される画像ファイルの一例を示す図。
【図3】図2の部分拡大図。
【図4】顔認識処理により認識された顔の一例を示す図。
【図5】図1の印刷装置で実行される画像処理および印刷動作を示すフローチャート。
【図6】座標リストおよび座標リストへの顔情報の登録例を示す図。
【図7】各撮影シーンでの最適な画質パラメータの特徴量を示す図。
【発明を実施するための形態】
【0012】
図1は、本発明にかかる画像処理装置の一実施形態を用いた印刷システムを示す図である。この印刷システムは、デジタルカメラ200の撮影により取得された画像データを、メモリカードM、USB(Universal Serial Bus)ケーブルや無線LAN(Local Area Network)等によって印刷装置100に転送し、印刷装置100で印刷するものである。すなわち、ここではユーザーがデジタルカメラ200で画像を撮影して画像データを生成し、その画像データをそのまま印刷装置100で読み込んで印刷する、いわゆるダイレクト印刷を想定しているが、本発明を適用可能な印刷システムはこれに限定されるものではない。つまり、デジタルカメラ200で生成した画像データをパーソナルコンピューターや携帯電話などに取り込み、パーソナルコンピューターから印刷装置100に画像データを送信して印刷する印刷システムにも本発明を適用することは可能である。
【0013】
デジタルカメラ200では、同図に示すように、CPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203、CCD(Charge Coupled Device)204、GP(Graphic Processor)205およびI/F(Interface)206がバス207を介して相互に接続され、これらの間で情報の授受が可能となっている。そして、CPU201はROM202に格納されているプログラムに応じて各種演算処理を実行しながらデジタルカメラ200の制御を行う。このとき一時的に必要となるデータはRAM203に格納される。また、CCD204は、光学系208によって集光された被写体からの光学像を電気信号に変換して出力する。この光学系208は、複数のレンズおよびアクチュエータによって構成されており、アクチュエータによってフォーカス等を調整しながら被写体の光学像を複数のレンズによってCCD204の受光面に結像する。さらに、GP205は、CPU201から供給される表示命令に基づいて表示用の画像処理を実行し、得られた表示用画像データをLCD(Liquid Crystal Display)209に供給して表示させる。
【0014】
I/F206はデジタルカメラ200の入出力機能を提供するものであり、操作ボタン210、ジャイロセンサー211およびカードI/F回路212の間で情報を授受する際に、データの表現形式を適宜変換する装置である。I/F206に接続される操作ボタン210には、電源、モード切替え、シャッターなどのボタンや、各種機能を設定できる入力手段があり、これらによってユーザーはデジタルカメラ200を任意に制御して動作させることが可能となっている。また、ジャイロセンサー211はデジタルカメラ200によって被写体を撮影した際のカメラ本体の角度(水平面に対する角度)を示す信号を生成して出力する。デジタルカメラ200は、上記したカメラ本体の角度を含め、撮影時における種々の情報(例えば、露光、被写体等に関する情報)を生成する。それらの情報の一つである撮影情報に後述する顔情報やシーン情報が含まれる。なお、本実施形態では、デジタルカメラ200は、撮影情報をExif(Exchangeable Image File Format)情報に記載し、画像データに付加した画像ファイルを生成することができる構造となっている。
【0015】
また、カードI/F回路212はカードスロット213に挿入されたメモリカードMとの間で情報を読み書きするためのインタフェースである。さらに、I/F206は図示を省略するUSB、無線LANなどの外部機器との接続機能も有しており、有線または無線にて印刷装置100との間で画像ファイルの授受が可能となっている。なお、デジタルカメラ200で作成され、印刷装置100に与えられる画像ファイル(画像データ+Exif情報)については、後で詳述する。
【0016】
印刷装置100はデジタルカメラ200で撮像された画像を印刷する装置であり、次のように構成されている。印刷装置100では、CPU101、ROM102、RAM103、EEPROM(Electrically Erasable and Programmable ROM)104、GP105およびI/F106がバス107を介して相互に接続され、これらの間で情報の授受が可能となっている。CPU101はROM102およびEEPROM104に格納されているプログラムに応じて各種演算処理を実行するとともに印刷装置100の各部を制御し、本発明の「顔情報取得部」、「シーン情報取得部」、「顔認識部」および「補正部」として機能する。また、CPU101が実行対象とするプログラムやデータについてはRAM103に一時的に格納される一方、印刷装置の電源が切断された後も保持しておくデータ等についてはEEPROM104に格納される。さらに、CPU101は必要に応じてGP105に対して表示命令を与え、この表示命令に応じてGP105が表示用の画像処理を実行し、その処理結果をLCD108に供給して表示させる。
【0017】
I/F106は、操作ボタン109、カードI/F回路110およびプリンターエンジンコントローラー111の間で情報を授受する際に、データの表現形式を適宜変換する装置である。印刷装置100では、操作ボタン109は印刷装置100のメニュー選択等を行う時に押されるように構成されている。また、カードI/F回路110は、カードスロット112と接続されており、このカードスロット112に挿入されたメモリカードMからデジタルカメラ200によって生成された画像ファイルを読み出す。なお、I/F106は、図示を省略するUSB、無線LANなどの外部機器との接続機能も有しており、有線通信または無線通信にてデジタルカメラ200との間で画像ファイルの授受が可能となっている。
【0018】
そして、印刷装置100は、メモリカードMを介して、あるいはデータ通信により画像データを受け取ると、CPU101により種々の処理を行うとともにプリンターエンジンコントローラー111によりプリンターエンジン113を制御し、これによって画像データに対応する画像を印刷する。以下、図2ないし図4に基づき画像ファイルの構成を説明した上で、本実施形態における画像処理動作および印刷動作について図5ないし図7を参照しつつ詳述する。
【0019】
図2は上記のように構成されたデジタルカメラで作成される画像ファイルの一例を示す図である。また、図3は図2の部分拡大図である。この実施形態では、デジタルカメラ200はCCD204で撮像された画像データをRAM203に格納する。また、デジタルカメラ200は、被写体に人物が含まれているときには顔認識処理を行う(なお、顔認識方式については従来より数多く提案されており、それらのうちいずれの方式を採用してもよい)。なお、本実施形態では、顔認識結果は、図4に示すような座標情報が顔位置の情報、つまり顔情報として表現される。すなわち、同図に示すように、画像データは所定の画像幅(Width)と画像高さ(Height)の画素で構成されており、Xが横軸、Yが縦軸を表しており、左上が原点(0,0)である。そして、画像データから顔が検出されると、その顔領域FRを左上(LT)、左下(LB)、右上(RT)、右下(RB)の4点の座標で囲まれる領域で表し、顔領域FRを示す座標、つまり顔座標(顔位置)を、認識した顔の個数(つまり顔個数)NcとともにRAM203に格納する。また、本明細書では、後で説明するように、印刷装置100においてもデジタルカメラ200での顔認識と同様に顔認識を行って顔座標を求めるため、デジタルカメラ200での顔認識により得られる顔座標を「カメラ顔座標」と称し、左上(LTc)、左下(LBc)、右上(RTc)、右下(RBc)で示す。また、顔認識処理により複数個の顔が検出される場合もあるため、第n番目のカメラ顔座標を左上(LTnc)、左下(LBnc)、右上(RTnc)、右下(RBnc)で示す。なお、後述するように印刷装置100の顔認識で得られる顔座標については「プリンター顔座標」と称し、第n番目のプリンター顔座標については、左上(LTnp)、左下(LBnp)、右上(RTnp)、右下(RBnp)で示す。
【0020】
また、この実施形態では、上記のように画像データ、顔個数および顔座標などをRAM203に格納しているが、その記録方式としてディジタルスチルカメラ用画像ファイルフォーマット規格Exif Ver.2.2.1を使用している。このExif画像ファイルの構造は、基本的には通常のJPEG(Joint Photographic Experts Group)画像形式そのものであり、その中にサムネイル画像や撮影関連データ等のデータをJPEGの規約に準拠した形で埋め込んだものである。
【0021】
本実施形態で使用する画像ファイルは、図2の左側部分に示すように、最初にSOI(Start of image)301がある。その後に、APP1(アプリケーション・マーカーセグメント)302、DQT(Define Quantization Table)303、DHT(Define Huffman Table)304の順となっている。さらにその後に、SOF(Start of Frame)305、SOS(Start of Stream)マーカー306、圧縮データ(Compress Data)307の順となっている。最後にEOI(End of Image)308がある。これらのうちAPP1はアプリケーションプログラムで使用するためのデータ領域として図2の中央部分に示す構造を有している。APP1の構造は、先頭にAPP1 Marker領域302aがある。そして、その次にLength領域302bがある。
【0022】
Length領域302bに続くデータの最初の6バイトの領域302cでは、識別子としてASCII文字の“Exif”が、その次に2バイトの0x00が続く。そこからTiff(Tagged Image File Format)形式でデータが格納されている。Tiff形式の最初の8バイトはTiffヘッダー(Header)領域302dである。
【0023】
また、Tiffヘッダー領域302dの次の0th IFD(IFD of main image)領域302eに、同図の右側部分に示すように、画像幅、画像高さ等の画像関連情報(あるは、単に画像情報とも呼ぶ)が格納される。そして、0th IFDの次に0th IFD Value領域302fがある。さらに、その次にExif IFD領域302gが設けられ、露出時間、Fナンバー、撮影シーンタイプなどの撮影関連情報(あるいは、単に撮影情報とも呼ぶ)が格納される。また、Exif IFD領域302gにExif IFD Value領域302hがある。なお、現在のところ、顔認識処理により検出される顔個数NcとNc個の顔座標をExifタグに書き込む規格は規定されていないが、本実施形態では顔個数NcがExif IFD領域302gに書き込まれ、Nc個の顔座標がExif IFD Value領域302hに書き込まれるとともに該書込位置をポイントする情報がExif IFD領域302gに書き込まれると仮定して説明を続ける。もちろん、これらの情報をメーカーに依存する領域に書き込むように構成してもよい。このように、顔位置(顔座標)の情報である顔情報はExif情報に記載され、画像データに添付されている。したがって、Exif情報に顔情報が含まれる場合には、顔個数Ncやシーン情報などとともに画像データの補正に利用される。一方、Exif情報に顔情報が含まれていない場合、顔情報がないと判断される。
【0024】
次に、上記のようなデータ構造(図2)を有する画像ファイルがメモリカードMに保存されており、そのメモリカードMから画像ファイルを読み出し、印刷装置100により画像ファイルに含まれる各種情報に基づき所定の画像処理を実行して印刷する動作について、図5を参照しつつ説明する。
【0025】
図5は図1の印刷装置で実行される画像処理および印刷動作を示すフローチャートである。ユーザーが印刷装置100のカードスロット112にメモリカードMを挿入し、操作ボタン109を操作して印刷指令を与えると、CPU101がROM102に格納されているプログラムにしたがって装置各部を制御して以下の画像処理および印刷動作を実行する。
【0026】
まず、CPU101は、印刷の対象となる画像ファイルをメモリカードMから取得し、ハフマン解凍処理を実行し、量子化DCT(Discrete Cosine Transform)係数を得る(ステップS10)。より具体的には、CPU101は、図2に示す画像ファイルからエントロピー符号化テーブルを取得し、圧縮データ307に含まれているY(輝度)成分、Cr(色差成分)、および、Cb(色差成分)のそれぞれのブロックのDC係数と、AC係数とを復号する。なお、この際、最小符号化単位であるMCU(Minimum Coded Unit)単位で復号を行う。
【0027】
また、CPU101は、ステップS10において得られた量子化DCT係数を逆量子化する(ステップS11)。具体的には、CPU101は、図2に示す画像ファイルから量子化テーブルを取得し、ステップS10において得られた量子化DCT係数に乗じることにより(逆量子化することにより)、DCT係数を得る。
【0028】
次に、CPU101は、画像を回転させるために必要な情報を、例えばRAM103にキャッシュする(ステップS12)。具体的には、JPEG方式によって圧縮された画像を回転させる場合、MCUのDC成分(直流成分)とAC成分(交流成分)のそれぞれを一度ハフマン展開しなければならない。ここで、DC成分については隣接するDC成分値の差分をハフマン符号化することから、隣接するMCUとの相関関係が問題となる。また、AC成分ではハフマン符号化処理によりそのデータ長が各MCUで一定にならず、JPEGデータのビットストリーム中のどのデータが求めるMCUのAC成分値であるかが不明となることが問題となる。そこで、ステップS12では、各MCUのDC成分値とAC成分のアドレスを求めてキャッシュしておくことにより、ローテート処理を可能とする。
【0029】
そして、CPU101はステップS11で得られたDCT係数に対して逆DCT演算を施すことによりもとの画素値を得る(ステップS13)。また、CPU101は、ステップS13の処理によって得られたYCC空間の画像をRGB(Red Green Blue)空間の画像と、HSB(Hue Saturation Brightness)空間の画像に変換する(ステップS14)。
【0030】
そして、CPU101はステップS13およびステップS14の処理において得られたYCC,RGB,HSBのそれぞれの画像をRAM103に格納して保持する。なお、このとき、データ量を削減するために画素を所定の割合で間引きした後にRAM103に格納してもよい(ステップS15)。
【0031】
また、CPU101は、ステップS15においてRAM103に格納されたYCC,RGB,HSBそれぞれの画像の成分について、ヒストグラムを計算する(ステップS16)。具体的には、RGB画像については、R,G,Bそれぞれの画像についてヒストグラムを計算する。その結果、画像を構成する各成分の分布を得る。
【0032】
上記したように、本実施形態では、ステップS10〜16の処理はMCU単位で行われており、CPU101は、全てのMCUについての処理が終了したことを確認するまで、ステップS10に戻って処理を繰り返して実行する。一方、全てのMCUについての処理が終了した場合には、次のステップS17に進む。
【0033】
このステップS17では、CPU101は、図2の画像ファイル中のExifタグから顔個数Ncおよび顔座標を読み込み、RAM103に格納する。なお、顔個数Ncはデジタルカメラ200での顔認識処理により得られた顔の個数、つまりカメラ顔個数あり、これを参照することで画像データに顔情報が付加されているか否かを正確に判別することが可能となる。例えば図3に示すようにExif IFD Value領域302hに2つの顔座標(LT1c、LB1c、RT1c、RB1c)、(LT2c、LB2c、RT2c、RB2c)が格納されている場合、つまりデジタルカメラ200での顔認識処理により2人の顔が認識された場合には、顔個数Ncは「2」であり、この段階で顔座標を読み出すまでもなく、顔個数Ncに基づき画像データへの顔情報の付加を判別することができる。そこで、本実施形態では、CPU101は、RAM103から顔個数Ncを読み出し、ゼロであるか否かを判定する(ステップS18)。もちろん、顔座標に基づいて画像データへの顔情報の付加を判別してもよい。
【0034】
そして、ステップS18での判定結果が「NO」である、つまり顔個数Ncがゼロではない(例えば図3に示す場合には、Nc=2)場合、画像データに顔情報、つまり顔座標が付加されていることが判るので、CPU101はデジタルカメラ200で取得した顔座標、つまりカメラ顔座標をQVGAサイズに規格化し、それらをRAM103に格納し(ステップS19)、ステップS20に進む。なお、本実施形態では、例えば図6(a)に示すように予め10個の顔座標を記憶するためのメモリ空間がRAM103に準備されており、このメモリ空間にステップS19で規格化された顔座標が登録顔情報No.1、2、…の順序で記憶される。こうして、10個の登録顔情報を記憶する座標リストが生成される。例えば図3に示すように2個のカメラ顔座標が画像データに付加されている場合には、図6(b)に示すようにQVGAサイズに規格化された顔座標(LT1c、LB1c、RT1c、RB1c)が座標リストの登録顔情報No.1のアドレスに登録される。また、2つ目の顔座標(LT2c、LB2c、RT2c、RB2c)が座標リストの登録顔情報No.2のアドレスに登録される。また、該当する顔座標がない登録顔情報のアドレスにはゼロを登録する。なお、本実施形態では、最大10個の顔座標を登録することが可能となっているが、登録可能個数はこれに限定されるものではなく、任意である。
【0035】
一方、ステップS18での判定結果が「YES」である、つまり顔個数Ncがゼロであり、画像データに顔情報が付加されていない場合、直ちに印刷装置100で顔認定処理を実行することも考えられるが、上記したように撮影シーンによっては被写体に人物が含まれない場合もある。そこで、本実施形態では、CPU101は、図2の画像ファイル中のExifタグから撮影シーンタイプをシーン情報として読み込み(ステップS21)、そのシーン情報に基づき顔認識の実行を制御している。具体的には、CPU101はシーン情報の有無、つまりステップS21でのシーン情報の読み込みに成功したか、画像データにシーン情報が含まれていないなどの理由により失敗したかを判定する(ステップS22)。そして、シーン情報の読み込みに成功した場合、CPU101は、当該シーン情報が人物であるか人物以外であるかを判定し(ステップS23)、人物である場合には、被写体に人物が含まれている蓋然性が高いため、ステップS15でRAM103に格納した画像データを使って顔認識処理を行う(ステップS24)。このように、画像データにカメラ顔座標(顔情報)が付加されていないが、画像データに付加されたシーン情報から被写体に人物が含まれている蓋然性が高い場合には、印刷装置100側で顔認識処理を行って顔情報、つまりプリンター顔座標を取得している。なお、こうして取得されたプリンター顔座標についても、カメラ顔座標の場合と同様にして、座標リストに格納する。例えば印刷装置100側で顔認識処理により2つのプリンター顔座標(LT1p、LB1p、RT1p、RB1p)、(LT2p、LB2p、RT2p、RB2p)が取得された場合には、図6(c)に示すように、それぞれが登録顔情報No.1、No.2として座標リストに登録される。
【0036】
また、CPU101は、ステップS23でシーン情報が人物以外であると判定すると、被写体に人物が含まれている蓋然性が低いため、顔認識処理を行うことなく、ステップS25に進む。このように、本実施形態では、画像データに顔情報が付加されていないという条件のみならず、シーン情報に基づき顔認識処理の要否を判定している。ただし、画像データにシーン情報が付加されていない場合、CPU101はシーン情報がないと判定し(ステップS22)、顔認識処理を実行してプリンター顔座標を座標リストに登録し(ステップS24)、ステップS20に進む。
【0037】
ステップS20では、CPU101は、カメラ顔座標またはプリンター顔座標の登録顔座標が座標リストに登録されているか否かを判定し、登録顔座標がない場合にはステップS25に進み、登録顔座標がある場合にはステップS26に進む。
【0038】
ステップS25では、CPU101は、撮影シーンに応じてエンハンスパラメータを計算する。また、ステップS26では、CPU101は、座標リストに登録された顔座標に基づいて全ての顔位置を計算し、さらに顔の平均顔色を取得する。そして、CPU101は、顔色が最適になるようにエンハンスパラメータを計算する(ステップS27)。エンハンスパラメータ計算の詳細については省略するが、RAM103に記憶したRGBヒストグラムに基づきコントラスト、明度、彩度、シャープネスなどの各画質パラメータの特徴量を抽出し、抽出した特徴量が例えば図7に示す各画質パラメータの特徴量に近づくようエンハンスのパラメータを設定する。
【0039】
上記のようにしてエンハンスパラメータ計算(ステップS25、S27)が終了すると、CPU101は、印刷対象となる画像ファイルにおいて、解凍処理の対象となる位置を示すファイルポインタをリセットし、処理位置を画像ファイルの先頭に復元する(ステップS28)。そして、CPU101は、以下のステップS29〜S36を繰り返して画像データに基づいて画像を印刷する。
【0040】
CPU101は、RAM103にキャッシュされた1MCUライン分の画像データにハフマン解凍処理を施し、量子化DCT係数を得る(ステップS29)。ここで、1MCUラインとは、画像を回転させる場合には、画像を構成する列方向に1列のMCU群をいい、回転させない場合には、画像を構成する行方向に1列のMCU群をいう。そして、CPU101は、ステップS29の処理において得られた量子化DCT係数を逆量子化し(ステップS30)、さらにステップS30で得られたDCT係数に対して逆DCT演算を施すことによりもとのデータを得る(ステップS31)。
【0041】
こうして得られたYCC空間の画像を、CPU101はRGB空間の画像に変換する(ステップS32)。そして、CPU101は、RGB空間の画像を構成する各画素に対してステップS25、S27において算出したエンハンスパラメータを適用することにより、印刷される画像を最適な色合いに補正する(ステップS33)。
【0042】
CPU101は、こうして補正された画像データに対して、リサイズ、回転などのレイアウト処理を施し(ステップS34)、プリンターエンジンコントローラー111の図示せぬバンドバッファに供給する。これを受けたプリンターエンジンコントローラー111は、プリンターエンジン113の各部を制御して画像データに対応する画像を印刷する(ステップS35)。そして、印刷処理が完了すると、CPU101はRAM103のキャッシュ状態を更新する(ステップS36)。そして、全MCUライン分について上記ステップS29〜S36が完了すると、一連の処理を終了する。
【0043】
以上のように、本実施形態によれば、画像データにカメラ顔座標が付加されているか否かという判断基準(顔情報基準)と、シーン情報が人物であるか否かという判断基準(シーン情報基準)とに基づき、印刷装置100での顔認識処理の実行を制御しているので、印刷装置100での顔情報の取得が適正化され、顔情報に基づく画像データの補正を開始するまでの時間を最適化することができる。例えば画像データにカメラ顔座標が付加されている場合、あるいはカメラ顔座標が付加されていない場合であっても撮影シーンが人物以外である場合、印刷装置100で顔認識処理を実行することなく、カメラ顔座標やシーン情報に基づいて画像データを補正しているので、ユーザーが印刷装置100での顔認識処理を待つ必要はなくなる。一方、カメラ顔座標が付加されていない場合であっても、撮影シーンが人物であれば、被写体に人物が含まれている可能性が高いため、印刷装置100で顔認識処理を実行してプリンター顔情報を取得し、そのプリンター顔情報に基づいて画像データを補正している。このように、画像データに付加される情報に応じて画像データの補正を開始するまでの時間を最適化することができる。
【0044】
また、上記実施形態では、顔情報基準と、シーン情報基準とを組み合わせているが、顔情報基準を優先させている。これは、カメラ顔座標はデジタルカメラ200などの撮像装置による顔認識により取得されるものであるため、顔情報が付加されているということは被写体に人物が含まれる蓋然性がシーン情報基準よりも高いと考えられるからである。したがって、顔情報基準の優先によって高い信頼性で、印刷装置100での顔認識処理の省略を行うことができる。この点を考慮すると、画像データにカメラ顔座標が付加されるときには、シーン情報が人物以外であってもカメラ顔座標に基づいて画像データを補正するのが好適である。
【0045】
さらに、本実施形態では、画像データにカメラ顔座標が付加されず、かつシーン情報が人物以外である場合には、被写体に人物が含まれていない可能性が高いため、シーン情報に基づいて画像データを補正することで画像の色合いを最適化している。
【0046】
なお、本発明は上記した実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行うことが可能である。例えば、上記実施形態では、画像データに顔情報およびシーン情報を付加した画像ファイルをメモリカードMに記録し、当該メモリカードMを介して印刷装置100に供給して印刷しているが、有線または無線通信により画像ファイルが印刷装置100に供給される場合も、本発明を適用することで上記した実施形態と同様の作用効果が得られる。
【0047】
また、上記実施形態では、本発明にかかる画像処理装置および方法を印刷装置100に適用しているが、複数の電子機器から構成される印刷システムにも、また印刷装置以外の1つの電子機器(例えば複合機、ファクシミリ装置など)にも適用可能である。
【0048】
また、上記実施形態にかかる画像処理方法を実行するプログラムを、CD−ROM、光ディスク、光磁気ディスク、不揮発性メモリカードなどの記憶媒体に記憶させ、この記憶媒体からプログラムをコードとして読み出し、コンピューターにおいて実行してもよい。つまり、上記プログラムを記憶した記憶媒体、コンピュータープログラム自体も本発明の一実施形態に含まれる。
【符号の説明】
【0049】
100…印刷装置、 101…CPU(顔情報取得部、シーン情報取得部、顔認識部、補正部)、 102…ROM、 103…RAM、 104…EEPROM、 200…デジタルカメラ、 307…圧縮データ(画像データ)

【特許請求の範囲】
【請求項1】
画像データに顔情報が付加されるときには前記顔情報に基づいて前記画像データを補正し、
前記画像データに顔情報が付加されていないとき、前記画像データに付加されるシーン情報が人物である場合に前記画像データから人物の顔を認識する顔認識処理を実行して顔情報を検出するとともに該顔情報に基づいて前記画像データを補正する一方、前記シーン情報が人物以外である場合に前記顔認識処理を行わない
ことを特徴とする画像処理方法。
【請求項2】
前記画像データに前記顔情報が付加されるときには、前記シーン情報が人物以外であっても前記顔情報に基づいて前記画像データを補正する請求項1に記載の画像処理方法。
【請求項3】
前記画像データに顔情報が付加されず、かつ前記シーン情報が人物以外である場合には、前記シーン情報に基づいて前記画像データを補正する請求項1に記載の画像処理方法。
【請求項4】
画像データに付加される顔情報を取得する顔情報取得部と、
前記画像データに付加されるシーン情報を取得するシーン情報取得部と、
前記画像データから人物の顔を認識する顔認識処理を行う顔認識部と、
前記画像データを補正する補正部とを備え、
前記補正部は、前記顔情報取得部により顔情報が取得されるときには前記顔情報に基づいて補正する一方、前記顔情報取得部により顔情報が取得されずしかも前記シーン情報取得部により取得されるシーン情報が人物であるときには前記顔認識処理の実行により検出される顔情報に基づいて補正し、
前記顔認識部は、前記顔情報取得部により顔情報が取得されずしかも前記シーン情報取得部により取得されるシーン情報が人物以外であるとき、または前記顔情報取得部により顔情報が取得されるときには前記顔認識処理を実行しないことを特徴とする画像処理装置。
【請求項5】
前記補正部は、前記顔情報取得部により顔情報が取得されるときには前記シーン情報取得部により取得されるシーン情報が人物以外であっても前記顔情報取得部により取得された前記顔情報に基づいて前記画像データを補正する請求項4に記載の画像処理装置。
【請求項6】
前記補正部は、前記顔情報取得部により顔情報が取得されずしかも前記シーン情報取得部により取得されるシーン情報が人物以外であるとき、前記シーン情報に基づいて前記画像データを補正する請求項4に記載の画像処理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2012−99897(P2012−99897A)
【公開日】平成24年5月24日(2012.5.24)
【国際特許分類】
【出願番号】特願2010−243480(P2010−243480)
【出願日】平成22年10月29日(2010.10.29)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】