(57)【要約】【課題】画像データから人の顔に相当する領域を検出して画像補正処理を施す画像処理方法および装置において、補正処理をより効率よく行うとともに良好な画像品質を得る。【解決手段】画像データが表す画像内における人の顔に相当する顔領域を特定するための情報として当該画像データに付加された顔情報を取得する顔情報取得工程と、顔情報により特定される顔領域の色に基づいて顔色補正の要否を判断する判断工程と、判断工程の結果に応じて、画像内の顔領域に対して顔色補正を行う補正工程とを備え、判断工程では、顔領域の色が、色空間において肌色に対応する領域として予め設定された第１肌色領域Ｒ1に属し、かつ第１肌色領域内に含まれ第１肌色領域よりも狭い第２肌色領域Ｒ2に属する場合には補正工程を不要と判断する一方、顔領域の色が、色空間において第１肌色領域に属し、かつ第２肌色領域に属さない場合には補正工程を必要と判断する。【選択図】図６
2012175500.tif 000002
【特許請求の範囲】
【請求項１】
画像データが表す画像内における人の顔に相当する顔領域を特定するための情報として当該画像データに付加された顔情報を取得する顔情報取得工程と、
前記顔情報により特定される前記顔領域の色に基づいて顔色補正の要否を判断する判断工程と、
前記判断工程の結果に応じて、前記画像内の顔領域に対して顔色補正を行う補正工程と
を備え、
前記判断工程では、
前記顔領域の色が、色空間において肌色に対応する領域として予め設定された第１肌色領域に属し、かつ、前記第１肌色領域内に含まれ前記第１肌色領域よりも狭い第２肌色領域に属する場合には前記補正工程を不要と判断する一方、
前記顔領域の色が、色空間において前記第１肌色領域に属し、かつ、前記第２肌色領域に属さない場合には前記補正工程を必要と判断する
ことを特徴とする画像処理方法。
【請求項２】
色空間のうち色相が予め定められた肌色範囲内である領域を前記第１肌色領域とする一方、前記第１肌色領域のうち明度が予め定められた適正範囲内にある領域を前記第２肌色領域とする請求項１に記載の画像処理方法。
【請求項３】
前記判断工程において前記顔領域の色が前記第１肌色領域外であったときには、人の顔に対応する所定の適合条件に適合する領域を前記画像内で検索し、該領域を顔領域として認識する顔認識処理工程を実行する請求項１または２に記載の画像処理方法。
【請求項４】
前記画像データに前記顔情報が付加されていないときには、人の顔に対応する所定の適合条件に適合する領域を前記画像内で検索し、該領域を顔領域として認識する顔認識処理工程を実行する請求項１ないし３のいずれかに記載の画像処理方法。
【請求項５】
前記顔認識処理工程において少なくとも一つの顔領域が認識されると、前記補正工程を実行する請求項３または４に記載の画像処理方法。
【請求項６】
前記顔情報により特定される前記顔領域が前記画像内に複数あるとき、該複数の顔領域の色の平均値に基づき前記判断工程を実行する請求項１ないし５のいずれかに記載の画像処理方法。
【請求項７】
画像データが表す画像内における人の顔に相当する顔領域を特定するための情報として当該画像データに付加された顔情報を取得する顔情報取得工程と、
前記顔情報により特定される前記顔領域の色に基づいて顔色補正の要否を判断する判断工程と、
前記判断工程の結果に応じて、前記画像内の顔領域に対して顔色補正を行う補正工程と
をコンピューターに実行させるとともに、
前記判断工程では、
前記顔領域の色が、色空間において肌色に対応する領域として予め設定された第１肌色領域に属し、かつ、前記第１肌色領域内に含まれ前記第１肌色領域よりも狭い第２肌色領域に属する場合には前記補正工程を不要と前記コンピュータに判断させる一方、
前記顔領域の色が、色空間において前記第１肌色領域に属し、かつ、前記第２肌色領域に属さない場合には前記補正工程を必要と前記コンピュータに判断させる
ことを特徴とする制御プログラム。
【請求項８】
画像データが表す画像内における人の顔に相当する顔領域を特定するための情報として当該画像データに付加された顔情報を取得する顔情報取得手段と、
前記顔情報により特定される前記顔領域の色に基づいて顔色補正の要否を判断する判断手段と、
前記判断手段の判断結果に応じて、前記画像内の顔領域に対して顔色補正を行う補正手段と
を備え、
前記判断手段は、
前記顔領域の色が、色空間において肌色に対応する領域として予め設定された第１肌色領域に属し、かつ、前記第１肌色領域内に含まれ前記第１肌色領域よりも狭い第２肌色領域に属する場合には前記補正手段に顔色補正を実行させない一方、
前記顔領域の色が、色空間において前記第１肌色領域に属し、かつ、前記第２肌色領域に属さない場合には前記補正手段に顔色補正を実行させる
ことを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像処理方法および画像処理装置に関するものであり、特に画像から人の顔に相当する領域を検出して画像補正処理を施す技術に関する。
【背景技術】
【０００２】
被写体を撮影して画像データを生成するデジタルカメラや、該画像データを表示または印刷するプリンターなどの出力装置では、画像内に含まれる人の顔に相当する領域を検出し、該領域の画像に適宜の補正処理を行う機能を持つものが実用化されている。例えば、特許文献１に記載の技術においては、デジタルカメラ等の撮像装置側では撮影時に必要に応じて顔検出や赤目補正等の画像処理を実行し、どのような処理が実行されたかを示す情報を画像のＥｘｉｆ（Exchangeable Image File Format）ファイルのタグに記録する。一方、当該画像ファイルを受け取って画像を印刷する印刷装置側では、補正処理が重複するのを避けるために、画像ファイルに付されたタグ情報を読み出して補正処理の要否判断を行い、必要と判断したときのみ画像に対する補正処理を実行するように構成されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２８２２７８号公報（例えば、図１２）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
デジタルカメラのような撮像装置においては、フォーカスや露出等の撮影条件を自動調整するために被撮影画像から顔認識を行う機能は既に広く普及しており、顔認識の結果としての画像内における顔領域を特定するための情報（ここでは「顔情報」と称する）を画像ファイルに付加することは技術的にさほど困難ではない。一方、上記した特許文献１に記載のシステムを構築するためには、画像ファイルに記録されている画像がどのような画像処理を施されたものであるかを明示するタグ情報が付されていなければならない。しかしながら、画像処理の内容としては種々のものがあり、これらをどのようにタグ情報で管理するのか、さらなる検討が必要である。
【０００５】
このように、上記従来技術は、例えば顔認識の結果としての顔情報のみが付された画像ファイルに対しては適用することができず、必要な補正を行えなかったり、補正が重複して実施されるなど、処理が非効率的となったり、所望の画像品質を得ることができなくなるなどの問題が残されている。
【０００６】
この発明にかかるいくつかの態様は、画像データから人の顔に相当する領域を検出して画像補正処理を施す画像処理方法および装置において、上記課題を解決し、補正処理をより効率よく行うとともに良好な画像品質を得ることのできる技術を提供するものである。
【課題を解決するための手段】
【０００７】
この発明の一の態様は、画像データが表す画像内における人の顔に相当する顔領域を特定するための情報として当該画像データに付加された顔情報を取得する顔情報取得工程と、前記顔情報により特定される前記顔領域の色に基づいて顔色補正の要否を判断する判断工程と、前記判断工程の結果に応じて、前記画像内の顔領域に対して顔色補正を行う補正工程とを備え、前記判断工程では、前記顔領域の色が、色空間において肌色に対応する領域として予め設定された第１肌色領域に属し、かつ、前記第１肌色領域内に含まれ前記第１肌色領域よりも狭い第２肌色領域に属する場合には前記補正工程を不要と判断する一方、前記顔領域の色が、色空間において前記第１肌色領域に属し、かつ、前記第２肌色領域に属さない場合には前記補正工程を必要と判断することを特徴とする画像処理方法である。
【０００８】
また、この発明の他の態様は、上記各工程をコンピューターに実行させることを特徴とする制御プログラムである。
【０００９】
これらの発明では、画像データに付加された顔情報により特定される顔領域の色によって顔色補正の要否を判断する。その判断基準は次の通りである。まず、色空間において肌色に対応する領域である第１肌色領域と、該第１肌色領域内に含まれ第１肌色領域よりも狭い第２肌色領域とが設定される。そして、当該顔領域の色が第２肌色領域に属する場合には顔色補正を行わず、当該顔領域の色が第１肌色領域に属し第２肌色領域には属さない場合には顔色補正を行う。その意味するところは以下の通りである。
【００１０】
第１肌色領域は、色空間において「肌色に対応する領域」であり、その意味するところは、該領域内の色であれば「肌色」と呼べる範疇にある、ということである。一方、第２肌色領域は、第１肌色領域内の限られた一部領域であり、この意味において、第１肌色領域に属する色を広義の肌色、そのうち第２肌色領域に属する色を狭義の肌色と考えることができる。
【００１１】
画像データに付加された顔情報から特定される顔領域が「肌色」の範疇にあるとき、当該領域が人の顔に相当するものである蓋然性が高いが、当該領域に対して既に何らかの補正がなされたか否かが不明な場合がある。本発明は、このような場合でも必要な補正処理を行い、かつ無用な補正処理を行うことを回避することができるように、色空間における肌色の範疇を補正が必要な領域と不要な領域とに区分している。
【００１２】
すなわち、この発明では、その色が広義の肌色と言える第１肌色領域に属する顔領域については原則として顔色補正を実行する一方、その中でも狭義の肌色と言える第２肌色領域に属するものについては、上記原則によらず顔色補正を行わない。このように、単に顔領域が肌色であるか否かで補正の要否を判断するのではなく、言わば「補正が必要な肌色」と「補正が不要な肌色」とを区別可能な判断基準を設け、顔領域の色に該判断基準を適用して補正の要否を判断する。そして、第１肌色領域および第２肌色領域を適宜に設定することにより、この発明では、必要な補正処理を漏れなく行い、かつ無用な補正処理が行われることを回避して、補正処理をより効率よく行うとともに良好な画像品質を得ることができる。
【００１３】
ここで、例えば、色空間のうち色相が予め定められた肌色範囲内である領域を第１肌色領域とする一方、第１肌色領域のうち明度が予め定められた適正範囲内にある領域を第２肌色領域とするようにしてもよい。顔色補正が必要となる代表的なケースとしては、逆光や露出不足等の原因により、被写体の顔色が暗く写ってしまったケースが挙げられる。このような場合、肌色であるが明度が十分でない顔領域があれば補正が必要となる一方、顔領域が肌色でしかも十分な明度があれば補正は不要である。色相が所定範囲にある領域を第１肌色領域とし、そのうち明度が適正とみなせる領域を第２肌色領域とすることで、このようなケースに好適に対応することが可能となる。
【００１４】
また、例えば、判断工程において顔領域の色が第１肌色領域外であったときには、人の顔に対応する所定の適合条件に適合する領域を画像内で検索し、該領域を顔領域として認識する顔認識処理工程を実行するようにしてもよい。顔情報で特定される顔領域が肌色でないケースとしては、撮像時の顔認識後に被写体またはカメラ等が動いたケースが考えられる。このような場合、画像データに付加された顔情報の信憑性は低いので、上記のように新たに顔認識処理を行うことが好ましい。また、例えば、画像データに顔情報が付加されていないときも同様であり、このような場合にも、新たに顔認識処理を行うことが好ましい。この場合において、顔認識処理工程において少なくとも一つの顔領域が認識された場合には顔色補正を実行するようにしてもよい。
【００１５】
なお、顔情報により特定される顔領域が画像内に複数あるときには、例えば、該複数の顔領域の色の平均値に基づき判断工程を実行するようにしてもよい。顔色補正が必要となる状況は当該画像に共通して生じるものであるから、個別の顔領域について補正の要否を判断するよりも、複数の顔領域について画像全体として補正を行うか否かを判断する方が良好な結果を得ることができ、処理に要する時間も短縮することができる。
【００１６】
また、この発明の他の態様は、画像データが表す画像内における人の顔に相当する顔領域を特定するための情報として当該画像データに付加された顔情報を取得する顔情報取得手段と、前記顔情報により特定される前記顔領域の色に基づいて顔色補正の要否を判断する判断手段と、前記判断手段の判断結果に応じて、前記画像内の顔領域に対して顔色補正を行う補正手段とを備え、前記判断手段は、前記顔領域の色が、色空間において肌色に対応する領域として予め設定された第１肌色領域に属し、かつ、前記第１肌色領域内に含まれ前記第１肌色領域よりも狭い第２肌色領域に属する場合には前記補正手段に顔色補正を実行させない一方、前記顔領域の色が、色空間において前記第１肌色領域に属し、かつ、前記第２肌色領域に属さない場合には前記補正手段に顔色補正を実行させることを特徴とする画像処理装置である。
【００１７】
このように構成された発明では、上記した画像処理方法の発明と同様に、顔情報から特定される顔領域の色に応じて補正の要否を判断し、必要な顔色補正を行うことができるので、必要な補正処理を漏れなく行い、かつ無用な補正処理が行われることを回避して、補正処理をより効率よく行うとともに良好な画像品質を得ることが可能である。
【図面の簡単な説明】
【００１８】
【図１】本発明にかかる画像処理装置の一実施形態を用いた印刷システムを示す図。
【図２】デジタルカメラで作成される画像ファイルの一例を示す図。
【図３】図２の部分拡大図。
【図４】顔認識処理により認識された顔の一例を示す図。
【図５】この印刷装置で実行される画像処理および印刷動作を示すフローチャート。
【図６】顔領域の色に基づく顔色補正の要否判断の原理を示す図。
【図７】ＨＳＢ色空間による色表現の例を模式的に示す図。
【発明を実施するための形態】
【００１９】
図１は、本発明にかかる画像処理装置の一実施形態を用いた印刷システムを示す図である。この印刷システムは、デジタルカメラ２００の撮影により取得された画像データを、メモリカードＭ、ＵＳＢ（Universal Serial Bus）ケーブルや無線ＬＡＮ（Local Area Network）等によって印刷装置１００に転送し、印刷装置１００で印刷するものである。すなわち、ここではユーザーがデジタルカメラ２００で画像を撮影して画像データを生成し、その画像データをそのまま印刷装置１００で読み込んで印刷する、いわゆるダイレクト印刷を想定しているが、本発明を適用可能な印刷システムはこれに限定されるものではない。つまり、デジタルカメラ２００で生成した画像データをパーソナルコンピューターや携帯電話などに取り込み、パーソナルコンピューターから印刷装置１００に画像データを送信して印刷する印刷システムにも本発明を適用することが可能である。さらに、このような印刷装置１００を備えるシステムに限定されず、画像データに対して種々の処理を施す画像処理装置全般に対して、本発明を適用可能である。
【００２０】
デジタルカメラ２００では、同図に示すように、ＣＰＵ（Central Processing Unit）２０１、ＲＯＭ（Read Only Memory）２０２、ＲＡＭ（Random Access Memory）２０３、ＣＣＤ（Charge Coupled Device）２０４、グラフィックプロセッサー（Graphic Processor；ＧＰ）２０５およびインターフェース（Interface；Ｉ／Ｆ）２０６がバス２０７を介して相互に接続され、これらの間で情報の授受が可能となっている。そして、ＣＰＵ２０１はＲＯＭ２０２に格納されているプログラムに応じて各種演算処理を実行しながらデジタルカメラ２００の制御を行う。このとき一時的に必要となるデータはＲＡＭ２０３に格納される。また、ＣＣＤ２０４は、光学系２０８によって集光された被写体からの光学像を電気信号に変換して出力する。この光学系２０８は、複数のレンズおよびアクチュエータによって構成されており、アクチュエータによってフォーカス等を調整しながら被写体の光学像を複数のレンズによってＣＣＤ２０４の受光面に結像する。さらに、ＧＰ２０５は、ＣＰＵ２０１から供給される表示命令に基づいて表示用の画像処理を実行し、得られた表示用画像データを液晶ディスプレイ（Liquid Crystal Display；ＬＣＤ）２０９に供給して表示させる。
【００２１】
Ｉ／Ｆ２０６はデジタルカメラ２００の入出力機能を提供するものであり、操作ボタン２１０、ジャイロセンサー２１１およびカードＩ／Ｆ回路２１２の間で情報を授受する際に、データの表現形式を適宜変換する装置である。Ｉ／Ｆ２０６に接続される操作ボタン２１０には、電源、モード切替え、シャッターなどのボタンや、各種機能を設定できる入力手段があり、これらによってユーザーはデジタルカメラ２００を任意に制御して動作させることが可能となっている。また、ジャイロセンサー２１１はデジタルカメラ２００によって被写体を撮影した際のカメラ本体の角度（水平面に対する角度）を示す信号を生成して出力する。デジタルカメラ２００は、上記したカメラ本体の角度を含め、撮影時における種々の情報（例えば、露光、被写体等に関する情報）を生成する。
【００２２】
なお、本実施形態では、デジタルカメラ２００は、撮影情報をＥｘｉｆ（Exchangeable Image File Format）情報に記載し、画像データに付加した画像ファイルを生成することができる構造となっている。このＥｘｉｆ画像ファイルの構造は、基本的には通常のＪＰＥＧ（Joint Photographic Experts Group）画像形式そのものであり、その中にサムネイル画像や撮影関連データ等のデータをＪＰＥＧの規約に準拠した形で埋め込んだものである。
【００２３】
また、カードＩ／Ｆ回路２１２はカードスロット２１３に挿入されたメモリカードＭとの間で情報を読み書きするためのインタフェースである。さらに、Ｉ／Ｆ２０６は図示を省略するＵＳＢ、無線ＬＡＮなどの外部機器との接続機能も有しており、有線または無線にて印刷装置１００との間で画像ファイルの授受が可能となっている。なお、デジタルカメラ２００で作成され、印刷装置１００に与えられる画像ファイル（画像データ＋Ｅｘｉｆ情報）については、後で詳述する。
【００２４】
印刷装置１００はデジタルカメラ２００で撮像された画像を印刷する装置であり、次のように構成されている。印刷装置１００では、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、ＥＥＰＲＯＭ（Electrically Erasable and Programmable ROM）１０４、ＧＰ１０５およびＩ／Ｆ１０６がバス１０７を介して相互に接続され、これらの間で情報の授受が可能となっている。ＣＰＵ１０１はＲＯＭ１０２およびＥＥＰＲＯＭ１０４に格納されているプログラムに応じて各種演算処理を実行するとともに印刷装置１００の各部を制御する。また、ＣＰＵ１０１が実行対象とするプログラムやデータについてはＲＡＭ１０３に一時的に格納される一方、印刷装置の電源が切断された後も保持しておくデータ等についてはＥＥＰＲＯＭ１０４に格納される。さらに、ＣＰＵ１０１は必要に応じてＧＰ１０５に対して表示命令を与え、この表示命令に応じてＧＰ１０５が表示用の画像処理を実行し、その処理結果をＬＣＤ１０８に供給して表示させる。
【００２５】
Ｉ／Ｆ１０６は、操作ボタン１０９、カードＩ／Ｆ回路１１０およびプリンターエンジンコントローラー１１１の間で情報を授受する際に、データの表現形式を適宜変換する装置である。印刷装置１００では、操作ボタン１０９は印刷装置１００のメニュー選択等を行う時に押されるように構成されている。また、カードＩ／Ｆ回路１１０は、カードスロット１１２と接続されており、このカードスロット１１２に挿入されたメモリカードＭからデジタルカメラ２００によって生成された画像ファイルを読み出す。なお、Ｉ／Ｆ１０６は、図示を省略するＵＳＢ、無線ＬＡＮなどの外部機器との接続機能も有しており、有線通信または無線通信にてデジタルカメラ２００との間で画像ファイルの授受が可能となっている。
【００２６】
そして、印刷装置１００は、メモリカードＭを介して、あるいはデータ通信により画像データを受け取ると、ＣＰＵ１０１により種々の処理を行うとともにプリンターエンジンコントローラー１１１によりプリンターエンジン１１３を制御し、これによって画像データに対応する画像を印刷する。以下、図２ないし図４に基づき画像ファイルの構成を説明した上で、本実施形態における画像処理動作および印刷動作について詳述する。
【００２７】
図２は上記のように構成されたデジタルカメラで作成される画像ファイルの一例を示す図である。また、図３は図２の部分拡大図、図４は顔認識処理により認識された顔の一例を示す図である。この実施形態では、デジタルカメラ２００はＣＣＤ２０４で撮像された画像データをＲＡＭ２０３に格納する。また、デジタルカメラ２００は、被写体に人物が含まれているときには顔認識処理を行う（なお、顔認識方式については従来より数多く提案されており、それらのうちいずれの方式を採用してもよい）。なお、本実施形態では、顔認識結果は、図４に示すような座標情報が顔位置の情報、つまり顔情報として表現される。すなわち、同図に示すように、画像データは所定の画像幅(Width)と画像高さ(Height)の画素で構成されており、Ｘが横軸、Ｙが縦軸を表しており、左上が原点（０，０）である。そして、画像データから顔が検出されると、その顔領域ＦＲを左上（ＬT）、左下（ＬB）、右上（ＲT）、右下（ＲB）の４点の座標で囲まれる領域で表し、顔領域ＦＲを示す座標、つまり顔座標（顔位置）を、認識した顔の個数（つまり顔個数）ＮｃとともにＲＡＭ２０３に格納する。本明細書では、後で説明するように、印刷装置１００においてもデジタルカメラ２００での顔認識と同様に顔認識を行って顔座標を求めるため、デジタルカメラ２００での顔認識により得られる顔座標を「カメラ顔座標」と称し、左上（ＬTｃ）、左下（ＬBｃ）、右上（ＲBｃ）、右下（ＲBｃ）で示す。また、顔認識処理により複数個の顔が検出される場合もあるため、図３では、第ｎ番目のカメラ顔座標を左上（ＬTｎｃ）、左下（ＬBｎｃ）、右上（ＲTｎｃ）、右下（ＲBｎｃ）で示す。
【００２８】
また、この実施形態では、上記のように画像データ、顔個数および顔座標などをＲＡＭ２０３に格納しているが、その記録方式としてディジタルスチルカメラ用画像ファイルフォーマット規格Ｅｘｉｆ Ver.2.2.1を使用している。このＥｘｉｆ画像ファイルの構造は、基本的には通常のＪＰＥＧ（Joint Photographic Experts Group）画像形式そのものであり、その中にサムネイル画像や撮影関連データ等のデータをＪＰＥＧの規約に準拠した形で埋め込んだものである。
【００２９】
本実施形態で使用する画像ファイルは、図２の左側部分に示すように、最初にＳＯＩ(Start of image)３０１がある。その後に、ＡＰＰ１（アプリケーション・マーカーセグメント）３０２、ＤＱＴ(Define Quantization Table)３０３、ＤＨＴ(Define Huffman Table)３０４の順となっている。さらにその後に、ＳＯＦ(Start of Frame)３０５、ＳＯＳ(Start of Stream)マーカー３０６、圧縮データ(Compress Data)３０７の順となっている。最後にＥＯＩ(End of Image)３０８がある。これらのうちＡＰＰ１はアプリケーションプログラムで使用するためのデータ領域として図２の中央部分に示す構造を有している。ＡＰＰ１の構造は、先頭にＡＰＰ１  Ｍａｒｋｅｒ領域３０２ａがある。そして、その次にＬｅｎｇｔｈ領域３０２ｂがある。
【００３０】
Ｌｅｎｇｔｈ領域３０２ｂに続くデータの最初の６バイトの領域３０２ｃでは、識別子としてASCII文字の“Exif"が、その次に2バイトの0x00が続く。そこからＴＩＦＦ(Tagged Image File Format)形式でデータが格納されている。ＴＩＦＦ形式の最初の８バイトはＴＩＦＦヘッダー(Header)領域３０２ｄである。
【００３１】
また、ＴＩＦＦヘッダー領域３０２ｄの次の０ｔｈ  ＩＦＤ(IFD of main image)領域３０２ｅに、同図の右側部分に示すように、画像幅、画像高さ等の画像関連情報（あるいは、単に画像情報とも呼ぶ）が格納される。そして、０ｔｈ  ＩＦＤの次に０ｔｈ  ＩＦＤ  Ｖａｌｕｅ領域３０２ｆがある。さらに、その次にＥｘｉｆ  ＩＦＤ領域３０２ｇが設けられ、露出時間、Ｆナンバー、撮影シーンタイプなどの撮影関連情報（あるいは、単に撮影情報とも呼ぶ）が格納される。また、Ｅｘｉｆ  ＩＦＤ領域３０２ｇにＥｘｉｆ  ＩＦＤ  Ｖａｌｕｅ領域３０２ｈがある。なお、現在のところ、顔認識処理が実行されたか否かや、それにより検出される顔個数ＮｃとＮｃ個の顔座標をＥｘｉｆタグに書き込む規格は規定されていないが、本実施形態では、デジタルカメラ２００側で顔認識処理が実行されたか否かを示す顔検出実施状況、顔個数ＮｃなどがＥｘｉｆ  ＩＦＤ領域３０２ｇに書き込まれ、Ｎｃ個の顔座標がＥｘｉｆ  ＩＦＤ  Ｖａｌｕｅ領域３０２ｈに書き込まれるとともに該書込位置をポイントする情報がＥｘｉｆ  ＩＦＤ領域３０２ｇに書き込まれると仮定して説明を続ける。もちろん、これらの情報をメーカーに依存する領域に書き込むように構成してもよい。このように、顔位置（顔座標）の情報である顔情報はＥｘｉｆ情報に記載され、画像データに添付されている。
【００３２】
次に、上記のようなデータ構造（図２）を有する画像ファイルがメモリカードＭに保存されており、そのメモリカードＭから画像ファイルを読み出し、印刷装置１００により画像ファイルに含まれる各種情報に基づき所定の画像処理を実行して印刷する動作の２つの実施形態について順に説明する。
【００３３】
図５は図１の印刷装置で実行される画像処理および印刷動作を示すフローチャートである。ユーザーが印刷装置１００のカードスロット１１２にメモリカードＭを挿入し、操作ボタン１０９を操作して印刷指令を与えると、ＣＰＵ１０１がＲＯＭ１０２に格納されているプログラムにしたがって装置各部を制御して以下の画像処理および印刷動作を実行する。
【００３４】
まず、ＣＰＵ１０１は、印刷の対象となる画像ファイルをメモリカードＭから取得し、ハフマン解凍処理を実行し、量子化ＤＣＴ（Discrete Cosine Transform）係数を得る（ステップＳ１０）。より具体的には、ＣＰＵ１０１は、メモリカードＭから取得した画像ファイルからエントロピー符号化テーブルを取得し、圧縮データに含まれているＹ（輝度）成分、Ｃｒ（色差成分）、および、Ｃｂ（色差成分）のそれぞれのブロックのＤＣ係数と、ＡＣ係数とを復号する。なお、この際、最小符号化単位であるＭＣＵ（Minimum Coded Unit）単位で復号を行う。
【００３５】
また、ＣＰＵ１０１は、ステップＳ１０において得られた量子化ＤＣＴ係数を逆量子化する（ステップＳ１１）。具体的には、ＣＰＵ１０１は、画像ファイルから量子化テーブルを取得し、ステップＳ１０において得られた量子化ＤＣＴ係数に乗じることにより（逆量子化することにより）、ＤＣＴ係数を得る。
【００３６】
次に、ＣＰＵ１０１は、画像を回転させるために必要な情報（ローテート情報）を、例えばＲＡＭ１０３にキャッシュする（ステップＳ１２）。具体的には、ＪＰＥＧ方式によって圧縮された画像を回転させる場合、ＭＣＵのＤＣ成分（直流成分）とＡＣ成分（交流成分）のそれぞれを一度ハフマン展開しなければならない。ここで、ＤＣ成分については隣接するＤＣ成分値の差分をハフマン符号化することから、隣接するＭＣＵとの相関関係が問題となる。また、ＡＣ成分ではハフマン符号化処理によりそのデータ長が各ＭＣＵで一定にならず、ＪＰＥＧデータのビットストリーム中のどのデータが求めるＭＣＵのＡＣ成分値であるかが不明となることが問題となる。そこで、ステップＳ１２では、各ＭＣＵのＤＣ成分値とＡＣ成分のアドレスを求めてキャッシュしておくことにより、ローテート処理を可能とする。
【００３７】
そして、ＣＰＵ１０１はステップＳ１１で得られたＤＣＴ係数に対して逆ＤＣＴ演算を施すことによりもとの画素値を得る（ステップＳ１３）。また、ＣＰＵ１０１は、ステップＳ１３の処理によって得られたＹＣＣ空間の画像をＲＧＢ（Red Green Blue）空間の画像と、ＨＳＢ（Hue Saturation Brightness）空間の画像に変換する（ステップＳ１４）。
【００３８】
そして、ＣＰＵ１０１はステップＳ１３およびステップＳ１４の処理において得られたＹＣＣ，ＲＧＢ，ＨＳＢのそれぞれの画像をＲＡＭ１０３に格納して保持する。なお、このとき、データ量を削減するために画素を所定の割合で間引きし画像を縮小した後にＲＡＭ１０３に格納してもよい（ステップＳ１５）。ここでは、元の画像サイズに関わらず、ＱＶＧＡ（Quarter Video Graphics Array）サイズに相当する（３２０×２４０）ピクセルの画像に正規化するものとする。
【００３９】
また、ＣＰＵ１０１は、ステップＳ１５においてＲＡＭ１０３に格納されたＹＣＣ，ＲＧＢ，ＨＳＢそれぞれの画像の成分について、ヒストグラムを計算する（ステップＳ１６）。具体的には、ＲＧＢ画像については、Ｒ，Ｇ，Ｂそれぞれの画像についてヒストグラムを計算する。その結果、画像を構成する各成分の分布を得る。
【００４０】
上記したように、本実施形態では、ステップＳ１０〜１６の処理はＭＣＵ単位で行われており、ＣＰＵ１０１は、全てのＭＣＵについての処理が終了したことを確認するまで、ステップＳ１０に戻って処理を繰り返して実行する。一方、全てのＭＣＵについての処理が終了した場合には、次のステップＳ１７に進み、顔認識処理の主要部に相当する処理を実行する。
【００４１】
ステップＳ１７では、メモリカードＭから取得した画像ファイルのＥｘｉｆタグからカメラ側での顔認識処理に関する情報を読み出す（ステップＳ１７）。具体的には、顔検出状況を読み出してカメラ側で顔認識処理が実施されたかどうかを判断し（ステップＳ１８）、未実施（ステップＳ１８においてＮＯ）の場合は後述する顔認識処理を印刷装置１００側で実施する（ステップＳ３０）。カメラ２００側で顔認識処理が実施済みである場合には（ステップＳ１８においてＹＥＳ）、さらにＥｘｉｆタグから把握されるカメラ側での顔検出個数Ｎｃが０より大きな値であるかどうかを判断する（ステップＳ１９）。顔検出個数Ｎｃが０であるとき（ステップＳ１９においてＮＯ）、カメラ側で顔認識処理は実施されたが顔領域が検出されなかったことを意味する。したがってこの場合も印刷装置１００側で改めて顔認識処理（ステップＳ３０）を実施する。
【００４２】
一方、ステップＳ１９においてＹＥＳ、つまりカメラ側での顔認識処理において少なくとも１つの顔領域（カメラ顔領域）が検出されている場合には、それらの顔領域を表す顔座標をＱＶＧＡサイズに正規化し、３２０×２４０ドットに縮小された画像内での座標に変換する（ステップＳ２０）。そして、該座標で特定されるＱＶＧＡサイズ画像内の各顔領域の色の平均値、すなわち平均顔色を当該領域に対応する画像データに基づいて算出する（ステップＳ２１）。
【００４３】
こうして求めた平均顔色に基づき、この実施形態では、顔色補正処理の要否判定を行う。この顔色補正処理は、例えば撮像時の逆光や露出不足に起因して画像に含まれる人の顔色が不自然に暗く写っている場合などに、これをより自然な顔色に補正するための処理である。このような補正処理はデジタルカメラなどの撮像装置または画像加工装置で実施されることも考えられ、そのような場合に印刷装置側で重複して補正を行ってしまうと却って不自然な結果となってしまう。したがって、カメラ側で補正済みの場合には印刷装置１００側では補正を行わないようにする必要がある。
【００４４】
画像ファイルから取得したＥｘｉｆタグ情報で顔認識処理が実施済みであることが把握された場合にこのことが問題となる。そこで、この実施形態では、カメラ側で顔認識処理が実施され、しかもその結果として顔領域が少なくとも１つ検出されている場合には、当該顔領域の色に応じて顔色補正の要否を判断する。具体的には以下のようにする。
【００４５】
図６は顔領域の色に基づく顔色補正の要否判断の原理を示す図である。図６（ａ）に示すように、カメラ顔座標により四隅を特定される顔領域ＦＲは、肌以外に例えば目や髪、影の部分を含み得るため、その全体が均一な肌色をしているというわけではない。そこで、顔領域ＦＲを多数のブロック、例えば画素単位に細分化し、各ブロックごとにその色を画像データに基づいて算出し、全ブロックのうち「肌色」に属すると言えるブロックが占める比率が所定の閾値以上である場合に、当該顔領域を「肌色」であると言うことができる。そして、前記した平均顔色については、顔領域が１つだけである場合には、当該顔領域内の各ブロックの色を平均した色、または、当該顔領域内の各ブロックのうち肌色に属するブロックの色を平均した色とすることができる。また、顔領域が複数の場合には、各顔領域に含まれる全ブロックの色を平均した色、または、各顔領域内の各ブロックのうち肌色に属するブロックの色のみを抽出して平均した色とすることができる。
【００４６】
次に、こうして求めた平均顔色に基づいて、顔色補正の要否が判断される。図６（ｂ）に示すように、平均顔色の色合いとその明るさとの組み合わせによって、顔色補正が必要か不要かが判断される。より具体的には、平均顔色がその色合いにおいて所定の「肌色」範囲にあり、かつその明るさが所定の「適正明るさ」範囲である、斜線を付した領域Ｒ1に属するとき、顔色補正が不要であると判断する。前記したように、顔色補正処理は、例えば撮像時の逆光や露出不足による不自然な顔色をより自然な顔色に補正するための処理である。したがって、顔領域が肌色でしかも既に適正な明るさであればさらなる補正は不要である。これにより、カメラ側での補正に重複して印刷装置側でも補正がなされることが回避される。
【００４７】
また、顔領域の平均顔色が、その色合いは「肌色」範囲にあるが明るさが「適正明るさ」範囲外である、ドットによるハッチングを付した領域Ｒ2に属するとき、顔色補正が必要であると判断される。さらに、そもそも色合いが「肌色」でない無地の領域Ｒ3に平均顔色が属する場合には、カメラ顔座標が顔の位置を正しく表していない可能性が高い。このような状況が生じるケースとしては、カメラでの顔認識処理が主としてフォーカスや露出調整などの撮影条件の調整に使われることから、該調整から撮影までの間にカメラまたは被写体が動いてしまったケースが考えられる。したがってこのような場合には、顔認識処理自体を印刷装置１００側で改めて実行する。
【００４８】
ここで、色を定量的に表す表現方法としては種々のものが知られており、この実施形態における色判定も任意の色表現の下で行うことができるが、ここでは人間の色覚と関連付けて肌色を指定しやすいＨＳＢ色空間で判定を行う場合について説明する。
【００４９】
図７はＨＳＢ色空間による色表現の例を模式的に示す図である。図７（ａ）に示すように、Ｈ（Hue angle；色相）、Ｓ（Saturation；彩度）、Ｂ（Brightness；明度）の３種のパラメータで表されるＨＳＢ色空間では、Ｈ値において０°が赤色、６０°が黄色に対応している。肌色に対応する色相は赤色と黄色との中間であり、例えば図７（ｂ）に示すように、０°より大きく６０°より小さい２つのＨ値Ｈ1およびＨ2（＞Ｈ1）を予め定めておき、値Ｈ1およびＨ2をそれぞれ下限および上限とする角度範囲ＲH内の色相を「肌色」であるとすることができる。図７（ｂ）の例では、ＨＳＢ色空間においてドットによるハッチングを付した空間領域Ｚ1内に属する色を「肌色」であるとみなす。
【００５０】
さらに、色の明るさを示す明度Ｂ値によって、「適正明るさ範囲」を指定する。すなわち、明るさが顔色として適正とみなせる明度の下限値Ｂ1および上限値Ｂ2（＞Ｂ1）を設定し、前記した肌色に対応する空間領域Ｚ1内で明度Ｂ値がこの範囲にある斜線で示す空間領域Ｚ2内に属する色を、適正な明るさを有する肌色とすることができる。そして、平均顔色がＨＳＢ色空間において空間領域Ｚ2に属する場合には顔色補正不要、空間領域Ｚ1に属するが空間領域Ｚ2に属さない場合には顔色補正不要、空間領域Ｚ1にも属さない場合には顔認識処理が必要であると判断する。
【００５１】
また、図７（ｃ）に斜線で示す領域Ｚ3のように、Ｈ値、Ｓ値、Ｂ値の三者の組み合わせによって「肌色」および「明るさ」を定義してもよい。すなわち、平均顔色のＨ値、Ｓ値、Ｂ値の組み合わせが所定の条件を満たす色空間内の領域Ｚ3に属するとき、平均顔色が補正不要な「適正な肌色」であると判断するようにしてもよい。肌色とみなす範囲および明るさが適正とみなす範囲については適宜定めることができる。他の色表現法を用いた場合においても同様にすることができる。
【００５２】
図５のフローチャートに即して説明すると、ステップＳ２２において平均顔色の色合いが肌色であるか否かが判断され、肌色であるとき、さらにステップＳ２３において適正な明るさを有しているか否かが判断される。これにより、顔色補正の要否が判断される。平均顔色が肌色かつ適正明るさ範囲内であれば（ステップＳ２２、Ｓ２３においてともにＹＥＳ）、顔色補正が不要であるとして、後工程でのエンハンス処理を行わないこととする（ステップＳ２４）。また、平均顔色が肌色であるが適正明るさ範囲内でなかった場合には（ステップＳ２２においてＹＥＳかつステップＳ２３においてＮＯ）、顔色補正が必要であるとして、ステップＳ４２に進む。平均顔色が肌色でなければ（ステップＳ２２においてＮＯ）、次の顔検出工程（ステップＳ３０）に進む。
【００５３】
ステップＳ３０では、ＱＶＧＡサイズに縮小保持した画像データを用いて、当該画像内から所定の条件を満たす顔領域の検出を行う。画像から顔とみなせる領域を検出する技術としては種々のものが公知であり、ここでの顔検出にも任意の技術を適用することができるので、ここでは詳しい説明を省略する。画像内で顔領域が検出されると、当該顔領域の４つの頂点座標を例えばＲＡＭ１０３に設けた顔登録リストに登録する。
【００５４】
こうして、印刷装置１００による顔検出が行われると、次のステップＳ４０では、ＣＰＵ１０１は顔登録リストに顔情報が登録されている否かを判別する。そして、顔情報が登録されている場合（ステップＳ４０で「ＹＥＳ」）には、ＣＰＵ１０１は、顔登録リストに登録された顔情報に基づいて全ての顔位置を計算し、さらに顔の平均顔色を取得した（ステップＳ４１）後、顔色が最適になるようにエンハンスパラメータを計算する（ステップＳ４２）。なお、エンハンスパラメータ計算の詳細については省略するが、ＲＡＭ１０３に記憶したＲＧＢヒストグラムに基づきコントラスト、明度、彩度、シャープネスなどの各画質パラメータの特徴量を抽出し、抽出した特徴量が所定の画質パラメータの特徴量に近づくようエンハンスのパラメータを設定する。
【００５５】
また、ステップＳ２３においてＮＯと判断された場合、つまり、カメラ側で検出された顔領域の平均顔色が肌色であるが適正明るさでない場合にもステップＳ４２を実行する。これは、ステップＳ２１において顔領域の平均顔色が既に算出されており、ステップＳ４１を実行する必要がないからである。
【００５６】
こうしてステップＳ４２が実行されることにより、デジタルカメラ２００で検出された顔領域、もしくは印刷装置１００で検出された顔領域に対して、必要なエンハンスパラメータが算出される。このステップＳ４２は、カメラ側で検出された顔領域が印刷装置１００側で補正不要と判断された場合にはスキップされる。
【００５７】
一方、顔登録リストに顔情報が登録されていない場合（ステップＳ４０で「ＮＯ」）、つまり当該画像内で人の顔が検出されなかった場合には、ＣＰＵ１０１は画像全体が最適になるようにエンハンスパラメータを計算する（ステップＳ４３）。
【００５８】
続いて、ＣＰＵ１０１は、印刷対象となる画像ファイルにおいて、解凍処理の対象となる位置を示すファイルポインタをリセットし（ステップＳ４４）、処理位置を画像ファイルの先頭に復元する。そして、ＣＰＵ１０１は、以下のステップＳ４５〜Ｓ５２を繰り返して画像データに基づいて画像を印刷する。
【００５９】
ＣＰＵ１０１は、ＲＡＭ１０３にキャッシュされた１ＭＣＵライン分の画像データにハフマン解凍処理を施し、量子化ＤＣＴ係数を得る（ステップＳ４５）。ここで、１ＭＣＵラインとは、画像を回転させる場合には、画像を構成する列方向に１列のＭＣＵ群をいい、回転させない場合には、画像を構成する行方向に１列のＭＣＵ群をいう。そして、ＣＰＵ１０１は、ステップＳ４５の処理において得られた量子化ＤＣＴ係数を逆量子化し（ステップＳ４６）、さらにステップＳ４５で得られたＤＣＴ係数に対して逆ＤＣＴ演算を施すことによりもとのデータを得る（ステップＳ４７）。
【００６０】
こうして得られたＹＣＣ空間の画像を、ＣＰＵ１０１はＲＧＢ空間の画像に変換する（ステップＳ４８）。そして、ＣＰＵ１０１は、ＲＧＢ空間の画像を構成する各画素に対してステップＳ４２またはＳ４３において算出したエンハンスパラメータを適用することにより、印刷される画像を最適な色合いに補正し（ステップＳ４９）、次のステップＳ５０に進む。補正不要と判断されている場合にはエンハンスパラメータが設定されておらず当然に補正は行われない。
【００６１】
ＣＰＵ１０１は、こうして必要に応じ補正された画像データに対して、リサイズ、回転などのレイアウト処理を施し（ステップＳ５０）、プリンターエンジンコントローラー１１１の図示せぬバンドバッファに供給する。これを受けたプリンターエンジンコントローラー１１１は、プリンターエンジン１１３の各部を制御して画像データに対応する画像を印刷する（ステップＳ５１）。そして、印刷処理が完了すると、ＣＰＵ１０１はＲＡＭ１０３のキャッシュ状態を更新する（ステップＳ５２）。そして、全ＭＣＵライン分について上記ステップＳ４５〜Ｓ５２が完了すると、一連の処理を終了する。
【００６２】
以上のように、本実施形態によれば、デジタルカメラ２００で顔認識処理が行われた場合には、その旨を示す情報がＥｘｉｆ画像ファイルのタグ情報として記録される。そして、印刷装置１００では、画像ファイルに付されたタグ情報からカメラ側で顔検出が行われたか否かを判断し、顔検出が行われていた場合には、カメラ側で検出された顔領域の色に基づいて顔色補正の要否を判断する。具体的には、顔領域の色が適正な明るさの肌色である場合には顔色補正を行わず、肌色であるが明るさが適正範囲にないときには顔色補正を実行する。こうすることで、カメラ側で顔色補正が実行された画像に対し二重に補正を実行してしまうことが回避され、二重の補正に起因する画像の仕上がりの不自然さや不必要な処理が実行される無駄を解消して、効率よくしかも画像品質の良好な補正処理を行うことができる。
【００６３】
さらに、カメラ側で顔検出が実施されていない、または、顔領域とされた領域が肌色でなかった場合には、印刷装置１００側で顔検出を行い、顔領域が検出された場合には必要な顔色補正処理を実行する。こうすることで、カメラ側で顔検出がなされていない、もしくは顔領域が正しく特定されていなかった場合であっても、画像に対し適切な顔色補正を施すことができる。
【００６４】
以上説明したように、上記実施形態の印刷システムにおいては、印刷装置１００が本発明の「画像処理装置」として機能しており、ＣＰＵ１０１が所定の制御プログラムを実行することにより、本発明の「判断手段」および「補正手段」としての機能を果たしている。また、この実施形態の画像処理動作（図５）においては、ステップＳ１７が本発明の「顔情報取得工程」に相当し、ステップＳ１８〜Ｓ２３が本発明の「判断工程」に相当している。また、ステップＳ４２、Ｓ４３、Ｓ４９が本発明の「補正工程」に相当し、ステップＳ３０が本発明の「顔認識処理工程」に相当している。
【００６５】
また、本実施形態では、図６（ｂ）における領域Ｒ1および図７（ｂ）における空間領域Ｚ1が本発明の「第１肌色領域」に相当している一方、図６（ｂ）における領域Ｒ2、図７（ｂ）における空間領域Ｚ2および図７（ｃ）における空間領域Ｚ3が、本発明の「第２肌色領域」に相当している。
【００６６】
なお、本発明は上記した実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行うことが可能である。例えば、上記実施形態では、画像データに方向座標などを付加した画像ファイルをメモリカードＭに記録し、当該メモリカードＭを介して印刷装置１００に供給して印刷しているが、有線または無線通信により画像ファイルが印刷装置１００に供給される場合も、本発明を適用することで上記した実施形態と同様の作用効果が得られる。
【００６７】
また、上記実施形態では、顔領域の色を定量的に表し肌色か否かを判定するのにＨＳＢ色空間内の座標位置を用いているが、別の色表現法、例えばｘｙ色度図上における座標位置やＬａｂ色空間内の座標位置によって色を表現し、それらの平面または空間において肌色を定義し色判定を行うようにしてもよい。
【００６８】
また、上記実施形態の印刷装置１００では、画像ファイルに含まれたＥｘｉｆタグ情報のうちカメラ側での顔検出実施状況を示す情報に基づいて、印刷装置側での顔色補正や顔検出の要否を判断している。しかしながら、本発明を実施するに際して画像ファイルにカメラ側での顔検出実施状況を示す情報が含まれていることは必須ではなく、このような情報がなくても、例えば画像ファイルに有効なカメラ顔情報があるか否かで顔色補正や顔検出の要否を判断するようにしてもよい。また、画像ファイルはカメラで作成されたものに限定されず、例えばカメラで撮像された画像をパーソナルコンピューター等で編集してなる画像ファイルであってもよい。
【００６９】
また、上記実施形態では、本発明にかかる画像処理装置および方法を印刷装置１００に適用しているが、複数の電子機器から構成される印刷システムにも、また印刷装置以外の１つの電子機器（例えば複合機、ファクシミリ装置など）にも適用可能である。
【００７０】
また、上記実施形態にかかる画像処理方法を実行する制御プログラムを、ＣＤ−ＲＯＭ、光ディスク、光磁気ディスク、不揮発性メモリカードなどの記憶媒体に記憶させ、この記憶媒体からプログラムをコードとして読み出し、コンピューターにおいて実行してもよい。つまり、上記プログラムを記憶した記憶媒体、制御プログラム自体も本発明の一実施形態に含まれる。例えば、デジタルカメラで撮像された画像をパーソナルコンピューターもしくはワークステーション上で編集処理するためのアプリケーションソフトウェアにも、本発明を適用することが可能である。
【符号の説明】
【００７１】
１００…印刷装置（画像処理装置）、  １０１…ＣＰＵ（判断手段、補正手段）、  １０２…ＲＯＭ、  １０３…ＲＡＭ、  １０４…ＥＥＰＲＯＭ、  １０６…インターフェース（顔情報取得手段）、  ２００…デジタルカメラ、  Ｍ…メモリカード
【図１】
2012175500.tif 000003
【図２】
2012175500.tif 000004
【図３】
2012175500.tif 000005
【図４】
2012175500.tif 000006
【図５】
2012175500.tif 000007
【図６】
2012175500.tif 000008
【図７】
2012175500.tif 000009