(57)【特許請求の範囲】
【請求項１】
顔情報に基づいて画像データを処理する画像処理装置において、
前記画像データから人物の顔を認識して顔画像が含まれる第１顔領域を示す第１情報を検出する顔情報検出部と、
顔画像が含まれる第２顔領域を示す第２情報が前記画像データに付加されているか否かを判別する顔情報付加判別部と、
前記第１顔領域に含まれる顔画像が真の顔画像であることの確からしさを表す顔信頼度を算出する顔信頼度算出部と、
前記顔信頼度算出部により算出された顔信頼度を、顔画像が人物の顔であるか否かの判別基準となる閾値と対比して前記第１情報を前記顔情報に加えるか否かを決定する顔情報決定部とを備え、
前記顔情報付加判別部が前記画像データに第２情報が付加されていると判別するとき、前記顔情報決定部は、前記画像データに第２情報が付加されていないと判別されるときよりも高い値を前記閾値として用いることを特徴とする画像処理装置。
【請求項２】
前記顔情報付加判別部が前記画像データに第２情報が付加されていると判別するとき、前記顔情報決定部は前記第２情報を前記顔情報に加える請求項１に記載の画像処理装置。
【請求項３】
前記顔情報付加判別部が前記画像データに第２情報が付加されていると判別するとき、前記顔情報決定部は、前記第１顔領域が前記第２顔領域と重なるときには、顔領域が互いに重なる前記第１情報および前記第２情報のうち前記第１情報のみを前記顔情報に加える請求項１に記載の画像処理装置。
【請求項４】
前記顔情報決定部は、前記第１顔領域と前記第２顔領域との重なり部分の面積が前記第２顔領域の面積の４０％以上であるときに前記第１顔領域が前記第２顔領域に重なっていると判別する請求項３に記載の画像処理装置。
【請求項５】
前記顔情報に基づいて画像データを補正する補正部を備える請求項１ないし４のいずれか一項に記載の画像処理装置。
【請求項６】
顔情報に基づいて画像データを処理する画像処理方法において、
前記画像データから人物の顔を認識して顔画像が含まれる第１顔領域を示す第１情報を検出するとともに前記第１顔領域に含まれる顔画像が真の顔画像であることの確からしさを表す顔信頼度を算出する第１工程と、
顔画像が人物の顔であるか否かの判別基準となる閾値を、顔画像が含まれる第２顔領域を示す第２情報が前記画像データに付加されているときには前記第２情報が前記画像データに付加されていないときよりも高い値とする第２工程と、
前記第１工程で算出された前記顔信頼度を前記閾値と対比して前記第１情報を前記顔情報に加えるか否かを決定する第３工程と
を備えることを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、顔情報に基づいて画像データを処理する画像処理装置および画像処理方法に関するものである。
【背景技術】
【０００２】
画像データに顔情報を付加する技術については、例えば特許文献１に記載されている。この特許文献１に記載のプリントシステムでは、デジタルカメラが顔認識処理を実行して顔オブジェクトの位置情報や色情報などを顔オブジェクト情報として検出し、さらに原撮影画像データに添付し、または埋め込んで顔オブジェクト情報付き撮影画像データを生成する。一方、プリンターなどの印刷装置は、撮影画像に付加される顔オブジェクト情報に基づいて画像データに対して色補正を実行し、色補正済の画像を印刷する。このように、デジタルカメラによる顔認識結果を利用して印刷装置側で独自に補正をかける技術が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２１３４５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、デジタルカメラの顔認識によって被写体に含まれる人物の顔の全部が完全かつ正確に認識される保証はない。このため、デジタルカメラ側での顔認識の補佐あるいは再確認を行う意味で印刷装置側でも独自に顔認識を行って顔情報を検出することは有効である。とは言え、印刷装置側では、被写体を実際に見ているわけではないため、誤検出が発生することもある。
【０００５】
この発明にかかるいくつかの態様は、顔情報に基づいて画像データを処理する画像処理装置および画像処理方法において、画像データから人物の顔を認識した際に誤って検出される情報が上記顔情報として加えられるのを防止することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の第１の態様は、顔情報に基づいて画像データを処理する画像処理装置であって、画像データから人物の顔を認識して顔画像が含まれる第１顔領域を示す第１情報を検出する顔情報検出部と、顔画像が含まれる第２顔領域を示す第２情報が画像データに付加されているか否かを判別する顔情報付加判別部と、第１顔領域に含まれる顔画像が真の顔画像であることの確からしさを表す顔信頼度を算出する顔信頼度算出部と、顔信頼度算出部により算出された顔信頼度を、顔画像が人物の顔であるか否かの判別基準となる閾値と対比して第１情報を顔情報に加えるか否かを決定する顔情報決定部とを備え、顔情報付加判別部が画像データに第２情報が付加されていると判別するとき、顔情報決定部は、画像データに第２情報が付加されていないと判別されるときよりも高い値を閾値として用いることを特徴としている。
【０００７】
本発明の第２の態様は、顔情報に基づいて画像データを処理する画像処理方法であって、画像データから人物の顔を認識して顔画像が含まれる第１顔領域を示す第１情報を検出するとともに第１顔領域に含まれる顔画像が真の顔画像であることの確からしさを表す顔信頼度を算出する第１工程と、顔画像が人物の顔であるか否かの判別基準となる閾値を、顔画像が含まれる第２顔領域を示す第２情報が画像データに付加されているときには第２情報が画像データに付加されていないときよりも高い値とする第２工程と、第１工程で算出された顔信頼度を閾値と対比して第１情報を顔情報に加えるか否かを決定する第３工程とを備えることを特徴としている。
【０００８】
このように構成された発明（画像処理装置および画像処理方法）では、画像データから人物の顔が認識されて顔画像が含まれる第１顔領域を示す第１情報が検出されるが、その第１顔領域に含まれる顔画像が真の顔画像であるか否かを判別するために、真の顔画像であることの確からしさを表す顔信頼度が算出され、閾値と対比される。この閾値は、顔画像が人物の顔であるか否かの判別基準となるものであり、顔信頼度と閾値とが対比されて第１情報を顔情報に加えるか否かの決定がなされる。つまり、顔信頼度が閾値よりも大きい（もしくは高い）ときには第１情報を顔情報に加える一方、同じまたは小さい（もしくは低い）ときには第１情報が誤検出情報であるという可能性が高いと見なして排除する。このように閾値が誤検出精度と大きく関連している。
【０００９】
そこで、本発明では、次の点を考慮し、顔画像の位置を示す第２情報が画像データに付加されているか否かに応じた閾値を用いている。すなわち、第２情報が画像データに付加されているときには、誤検出の発生確率を高めてまで顔画像を検出するのではなく、誤検出の発生確率を低く抑えながら第２情報で特定される顔画像以外の顔画像を検出することが望まれる。そこで、画像データに第２情報が付加されているときには、画像データに第２情報が付加されていないと判別されるときよりも大きい（もしくは高い）値を閾値として用いている。なお、画像データに第２情報が付加されていないときには、画像データに第２情報が付加されているときと同一またはそれよりも小さい（もしくは低い）閾値を用い、これによって誤検出の発生確率が若干高くなるとしても、画像データの処理に必要となる顔情報の積極的な検出を図っている。
【００１０】
ここで、画像データに第２情報が付加されているとき、当該第２情報を顔情報に加えてもよい。また、第１情報で特定される第１顔領域が第２情報で特定される第２顔領域と重なるとき、つまり顔領域が互いに重なり、同一人物の顔について第１情報と第２情報とが併存することがあるが、この場合、第１情報および第２情報のうち第１情報のみを顔情報に加えるのが望ましい。というのも、第１情報の顔画像は上記のように比較的大きく（もしくは高く）設定された閾値よりも高い顔信頼度を有し、しかも第１情報は画像処理装置自体で検出され、実施形態で詳述するように画像データに適したサイズで検出されるなどの処理上の利点を有しているからである。
【００１１】
さらに、第１顔領域と第２顔領域との重なりについては、例えば第１顔領域と第２顔領域との重なり部分の面積が第２顔領域の面積の４０％以上であるときに第１顔領域が第２顔領域に重なっていると判別してもよい。
【図面の簡単な説明】
【００１２】
【図１】本発明にかかる画像処理装置の第１実施形態を用いた印刷システムを示す図。
【図２】デジタルカメラで作成される画像ファイルの一例を示す図。
【図３】図２の部分拡大図。
【図４】顔認識処理により認識された顔の一例を示す図。
【図５】図１の印刷装置で実行される画像処理および印刷動作を示すフローチャート。
【図６】図１の印刷装置で実行される画像処理および印刷動作を示すフローチャート。
【図７】座標リストを示す図。
【図８】顔認識処理により認識された顔の一例を示す図。
【図９】本発明にかかる画像処理装置の第２実施形態を示すフローチャート。
【図１０】本発明にかかる画像処理装置の第２実施形態を示すフローチャート。
【図１１】第２実施形態で用いる登録リストの一例を示す図。
【発明を実施するための形態】
【００１３】
図１は、本発明にかかる画像処理装置の第１実施形態を用いた印刷システムを示す図である。この印刷システムは、デジタルカメラ２００の撮影により取得された画像データを、メモリカードＭ、ＵＳＢ(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）情報に記載し、画像データに付加した画像ファイルを生成することができる構造となっている。
【００１６】
また、カードＩ／Ｆ回路２１２はカードスロット２１３に挿入されたメモリカードＭとの間で情報を読み書きするためのインタフェースである。さらに、Ｉ／Ｆ２０６は図示を省略するＵＳＢ、無線ＬＡＮなどの外部機器との接続機能も有しており、有線または無線にて印刷装置１００との間で画像ファイルの授受が可能となっている。なお、デジタルカメラ２００で作成され、印刷装置１００に与えられる画像ファイル（画像データ＋Ｅｘｉｆ情報）については、後で詳述する。
【００１７】
印刷装置１００はデジタルカメラ２００で撮像された画像を印刷する装置であり、次のように構成されている。印刷装置１００では、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、ＥＥＰＲＯＭ（Electrically Erasable and Programmable ROM）１０４、ＧＰ１０５およびＩ／Ｆ１０６がバス１０７を介して相互に接続され、これらの間で情報の授受が可能となっている。ＣＰＵ１０１はＲＯＭ１０２およびＥＥＰＲＯＭ１０４に格納されているプログラムに応じて各種演算処理を実行するとともに印刷装置１００の各部を制御し、本発明の「顔情報検出部」、「顔情報付加判別部」、「顔信頼度算出部」、「顔情報決定部」および「補正部」として機能する。また、ＣＰＵ１０１が実行対象とするプログラムやデータについてはＲＡＭ１０３に一時的に格納される一方、印刷装置の電源が切断された後も保持しておくデータ等についてはＥＥＰＲＯＭ１０４に格納される。さらに、ＣＰＵ１０１は必要に応じてＧＰ１０５に対して表示命令を与え、この表示命令に応じてＧＰ１０５が表示用の画像処理を実行し、その処理結果をＬＣＤ１０８に供給して表示させる。
【００１８】
Ｉ／Ｆ１０６は、操作ボタン１０９、カードＩ／Ｆ回路１１０およびプリンターエンジンコントローラー１１１の間で情報を授受する際に、データの表現形式を適宜変換する装置である。印刷装置１００では、操作ボタン１０９は印刷装置１００のメニュー選択等を行う時に押されるように構成されている。また、カードＩ／Ｆ回路１１０は、カードスロット１１２と接続されており、このカードスロット１１２に挿入されたメモリカードＭからデジタルカメラ２００によって生成された画像ファイルを読み出す。なお、Ｉ／Ｆ１０６は、図示を省略するＵＳＢ、無線ＬＡＮなどの外部機器との接続機能も有しており、有線通信または無線通信にてデジタルカメラ２００との間で画像ファイルの授受が可能となっている。
【００１９】
そして、印刷装置１００は、メモリカードＭを介して、あるいはデータ通信により画像データを受け取ると、ＣＰＵ１０１により種々の処理を行うとともにプリンターエンジンコントローラー１１１によりプリンターエンジン１１３を制御し、これによって画像データに対応する画像を印刷する。以下、図２ないし図４に基づき画像ファイルの構成を説明した上で、本実施形態における画像処理動作および印刷動作について詳述する。
【００２０】
図２は上記のように構成されたデジタルカメラで作成される画像ファイルの一例を示す図である。また、図３は図２の部分拡大図である。この実施形態では、デジタルカメラ２００はＣＣＤ２０４で撮像された画像データをＲＡＭ２０３に格納する。また、デジタルカメラ２００は、被写体に人物が含まれているときには顔認識処理を行う（なお、顔認識方式については従来より数多く提案されており、それらのうちいずれの方式を採用してもよい）。なお、本実施形態では、顔認識結果は、図４に示すような座標情報が顔位置の情報、つまり顔情報として表現される。すなわち、同図に示すように、画像データは所定の画像幅(Width)と画像高さ(Height)の画素で構成されており、Ｘが横軸、Ｙが縦軸を表しており、左上が原点（０，０）である。そして、画像データから顔が検出されると、その顔画像が含まれる顔領域ＦＲを左上（ＬＴ）、左下（ＬＢ）、右上（ＲＴ）、右下（ＲＢ）の４点の座標で囲まれる領域で表し、顔領域ＦＲを示す座標、つまり顔座標（顔位置）を、認識した顔の個数（つまり顔個数）ＮｃとともにＲＡＭ２０３に格納する。また、本明細書では、後で説明するように、印刷装置１００においてもデジタルカメラ２００での顔認識と同様に顔認識を行って顔座標を求めるため、デジタルカメラ２００での顔認識により得られる顔座標を「カメラ顔座標」と称し、左上（ＬＴｃ）、左下（ＬＢｃ）、右上（ＲＴｃ）、右下（ＲＢｃ）で示す。また、顔認識処理により複数個の顔が検出される場合もあるため、第ｎ番目のカメラ顔座標を左上（ＬＴｎｃ）、左下（ＬＢｎｃ）、右上（ＲＴｎｃ）、右下（ＲＢｎｃ）で示す。なお、後述するように印刷装置１００の顔認識で得られる顔座標については「プリンター顔座標」と称し、第ｎ番目のプリンター顔座標については、左上（ＬＴｎｐ）、左下（ＬＢｎｐ）、右上（ＲＴｎｐ）、右下（ＲＢｎｐ）で示す。
【００２１】
また、この実施形態では、上記のように画像データ、顔個数および顔座標などをＲＡＭ２０３に格納しているが、その記録方式としてディジタルスチルカメラ用画像ファイルフォーマット規格Ｅｘｉｆ 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）サイズに規格化し、それらをＲＡＭ１０３に格納する。そして、ＣＰＵ１０１はカメラ顔座標の有無に応じて閾値Ｔの値を設定する（ステップＳ１８）。本実施形態における「閾値」とは、顔領域に含まれる顔画像が人物の顔であるか否かの判別基準となる値であり、本実施形態では後述する「顔信頼度」との関係でカメラ顔座標が付加されているときには閾値Ｔを「８００」に設定し（ステップＳ１９）、付加されていないときには閾値Ｔを「４００」に設定する（ステップＳ２０）。なお、「顔信頼度」、「８００」、「４００」の物理的意味などについては後で説明する。
【００３５】
ここで、カメラ顔座標がないとき（ステップＳ１８で「ＮＯ」）には、閾値Ｔの設定後、直ちにステップＳ２２に進むのに対し、カメラ顔座標があるとき（ステップＳ１８で「ＹＥＳ」）には、閾値Ｔの設定（ステップＳ１９）に続いて、ＣＰＵ１０１はステップＳ１７で規格化されたカメラ顔座標を座標リストの登録顔情報Ｎｏ．１、２、…の順序で記憶した（ステップＳ２１）後に、ステップＳ２２に進む。なお、本実施形態の座標リストは、例えば図７に示すように予め１０個の顔座標を登録顔情報として記憶するためのメモリ空間であり、ＲＡＭ１０３に設けられている。このメモリ空間にステップＳ１７で規格化された顔座標が登録顔情報Ｎｏ．１、２、…の順序で記憶される。例えば図３に示すように２個のカメラ顔座標が画像データに付加されている場合には、ＱＶＧＡサイズに規格化された顔座標（ＬＴ１ｃ、ＬＢ１ｃ、ＲＴ１ｃ、ＲＢ１ｃ）が座標リストの登録顔情報Ｎｏ．１のアドレスに登録される。また、２つ目の顔座標（ＬＴ２ｃ、ＬＢ２ｃ、ＲＴ２ｃ、ＲＢ２ｃ）が座標リストの登録顔情報Ｎｏ．２のアドレスに登録される。また、該当する顔座標がない登録顔情報のアドレスにはゼロを登録する。また、本実施形態では、最大１０個の顔座標を登録することが可能となっているが、登録可能個数はこれに限定されるものではなく、任意である。なお、この点については、第２実施形態で採用している「カメラ顔登録リスト」、「プリンター顔登録リスト」、「エンハンス顔登録リスト」においても同様である。
【００３６】
次のステップＳ２２〜Ｓ３６で、ＣＰＵ１０１は、テンプレート（検索領域）を用いた顔認識処理を行うとともに、顔認識処理により検出されるプリンター顔座標で特定されるプリンター顔領域に含まれる顔画像について顔信頼度を算出し、その顔信頼度を閾値Ｔと対比して信頼性の高いプリンター顔座標を座標リストに登録する。すなわち、ＣＰＵ１０１は、顔認識に用いるテンプレートの顔サイズＳを有効最大顔サイズ（２４０ピクセル）に設定し（ステップＳ２２）、そのテンプレートを原点（０，０）に位置させる（ステップＳ２３、Ｓ２４）。そして、ＣＰＵ１０１は、テンプレートをΔＸ（この実施形態では、ΔＸ＝Ｓ／２）単位でＸ方向にステップ移動させながら原点位置および各移動位置でステップＳ２５〜Ｓ３０の処理を実行する。すなわち、ＣＰＵ１０１は、画像データに対してテンプレートを適用して顔認識処理を行う（ステップＳ２５）。また、ＣＰＵ１０１は、保持した画像データを９０゜、１８０゜および２７０゜回転させて顔認識処理を行う（ステップＳ２６〜Ｓ２８）。このようなテンプレートを用いた顔認識処理（ステップＳ２５〜Ｓ２８）については、従来より多用されているもので用いることができ、例えば４５゜単位で回転させながら顔認識を行ってもよい。
【００３７】
このような顔認識処理によって人物の顔を検出した場合には、ＣＰＵ１０１は、テンプレート（検索領域）に含まれる顔画像について顔信頼度を算出した後、その顔信頼度をステップＳ１９、Ｓ２０で設定した閾値Ｔと対比する（ステップＳ２９）。この「顔信頼度」とは、顔画像が真の顔画像であることの確からしさを表す指標値であり、例えば特開２００９−２１７６０７号公報や特開２０１０−１９１５９２号公報などに記載されているように、従来から種々の態様が提案されている。本実施形態では、顔画像が真の顔画像であることの確からしさを０〜１０００の範囲で数値化しており、顔信頼度「４００」、「８００」はそれぞれ４０％、８０％の確率で人物の顔であることを示している。なお、顔信頼度はこれに限定されるものではなく、従来より提案されているものを用いることができる。
【００３８】
このステップＳ２９で「ＹＥＳ」、つまり顔認識処理によって検出したプリンター顔座標により特定される顔領域（テンプレート）に含まれる顔画像についての顔信頼度が閾値Ｔを上回っており、人物の顔である可能性が高いと判別したときのみ、ＣＰＵ１０１は当該プリンター顔座標を座標リストに登録する（ステップＳ３０）。一方、閾値Ｔ以下のときには座標リストへの登録を行わず、当該プリンター顔座標を誤検出情報として排除している。
【００３９】
また、Ｘ方向の１ラインについて顔認識処理、顔信頼度算出処理、プリンター顔座標の登録／排除の決定処理（以下「顔情報決定処理」という）が完了する（ステップＳ３２で「ＹＥＳ」）と、ＣＰＵ１０１はテンプレートＴＰをＹ方向にΔＹ（この実施形態では、ΔＹ＝Ｓ／２）だけ移動させる（ステップＳ３３）。そして、テンプレートがＹ方向の端部まで位置するまでの間（ステップＳ３４で「ＮＯ」の間）、上記したステップＳ２４〜Ｓ３３を繰り返して行う。これにより、画像データ全体に対して顔サイズＳのテンプレートを用いた顔認識処理、顔信頼度の算出処理、顔情報決定処理が実行される。
【００４０】
なお、ＣＰＵ１０１は、上記した一連の顔認識処理（ステップＳ２３〜Ｓ３４）が完了する毎にテンプレートの顔サイズＳをΔＳ（この実施形態では１０ピクセルに設定）だけ小さくし（ステップＳ３５）、顔サイズＳが有効最小顔サイズ（２０ピクセル）を下回るまでステップＳ２３に戻って上記した一連の顔認識処理、顔信頼度算出処理および顔情報決定処理（ステップＳ２３〜Ｓ３４）を繰り返して行う。
【００４１】
こうして、印刷装置１００による顔認識処理、顔信頼度算出処理および顔情報決定処理が行われると、次のステップＳ３７で、ＣＰＵ１０１は座標リストにカメラ顔座標および／またはプリンター顔座標が登録されている否かを判別する。そして、カメラ顔座標かプリンター顔座標かを問わず、顔座標が登録されている場合（ステップＳ３７で「ＹＥＳ」）には、ＣＰＵ１０１は、座標リストに登録された顔座標に基づいて全ての顔位置や顔領域を計算し、さらに顔の平均顔色を取得した（ステップＳ３８）後、顔色が最適になるようにエンハンスパラメータを計算する（ステップＳ３９）。なお、エンハンスパラメータ計算の詳細については省略するが、ＲＡＭ１０３に記憶したＲＧＢヒストグラムに基づきコントラスト、明度、彩度、シャープネスなどの各画質パラメータの特徴量を抽出し、抽出した特徴量が所定の画質パラメータの特徴量に近づくようエンハンスのパラメータを設定する。
【００４２】
一方、座標リストにカメラ顔座標もプリンター顔座標も登録されていない場合（ステップＳ３７で「ＮＯ」）、ＣＰＵ１０１は、画像全体が最適になるようにエンハンスパラメータを計算する（ステップＳ４０）。
【００４３】
次のステップＳ４１では、ＣＰＵ１０１は、印刷対象となる画像ファイルにおいて、解凍処理の対象となる位置を示すファイルポインタをリセットし、処理位置を画像ファイルの先頭に復元する。そして、ＣＰＵ１０１は、以下のステップＳ４２〜Ｓ４９を繰り返して画像データに基づいて画像を印刷する。
【００４４】
ＣＰＵ１０１は、ＲＡＭ１０３にキャッシュされた１ＭＣＵライン分の画像データにハフマン解凍処理を施し、量子化ＤＣＴ係数を得る（ステップＳ４２）。ここで、１ＭＣＵラインとは、画像を回転させる場合には、画像を構成する列方向に１列のＭＣＵ群をいい、回転させない場合には、画像を構成する行方向に１列のＭＣＵ群をいう。そして、ＣＰＵ１０１は、ステップＳ２９の処理において得られた量子化ＤＣＴ係数を逆量子化し（ステップＳ４３）、さらにステップＳ４２で得られたＤＣＴ係数に対して逆ＤＣＴ演算を施すことによりもとのデータを得る（ステップＳ４４）。
【００４５】
こうして得られたＹＣＣ空間の画像を、ＣＰＵ１０１はＲＧＢ空間の画像に変換する（ステップＳ４５）。そして、ＣＰＵ１０１は、ＲＧＢ空間の画像を構成する各画素に対してステップＳ３９、Ｓ４０において算出したエンハンスパラメータを適用することにより、印刷される画像を最適な色合いに補正し（ステップＳ４６）、次のステップＳ４７に進む。
【００４６】
ＣＰＵ１０１は、こうして補正された画像データに対して、リサイズ、回転などのレイアウト処理を施し（ステップＳ４７）、プリンターエンジンコントローラー１１１の図示せぬバンドバッファに供給する。これを受けたプリンターエンジンコントローラー１１１は、プリンターエンジン１１３の各部を制御して画像データに対応する画像を印刷する（ステップＳ４８）。そして、印刷処理が完了すると、ＣＰＵ１０１はＲＡＭ１０３のキャッシュ状態を更新する（ステップＳ４９）。そして、全ＭＣＵライン分について上記ステップＳ４２〜Ｓ４９が完了すると、一連の処理を終了する。
【００４７】
以上のように、本実施形態によれば、画像データからプリンター顔座標を検出するとともに同プリンター顔座標で特定される顔領域に含まれる顔画像の顔信頼度を算出し、その顔信頼度を閾値Ｔと対比して同プリンター顔座標を登録顔座標として座標リストに加えるのか、そのまま排除するのかを判別している。このように閾値Ｔは、顔画像が人物の顔であるか否かの判別基準として用いられ、誤検出の発生防止が図られている。また、本実施形態では、単一の閾値Ｔを用いるのではなく、画像データにカメラ顔座標が付加されているか否かに応じて閾値Ｔを変更している。すなわち、画像データにカメラ顔座標が付加されている場合（ステップＳ１８で「ＹＥＳ」）には、カメラ顔座標が付加されていない場合の閾値Ｔよりも大きい（もしくは高い）閾値Ｔを設定している。このため、誤検出の発生確率を低く抑えながらカメラ顔座標以外の顔座標を検出することができ、デジタルカメラ２００側での顔認識の補佐としての機能を果たすことができる。なお、画像データにカメラ顔座標が付加されていない場合（ステップＳ１８で「ＮＯ」）には、比較的小さい（もしくは低い）閾値Ｔが設定される。このため、画像データの処理に必要となる顔情報、つまり座標リストに登録される顔座標を積極的に検出することができる。その結果、顔情報に基づく画像データの処理をより確実なものとする。
【００４８】
また、上記実施形態では、画像データにカメラ顔座標が付加されているとき、当該カメラ顔座標を登録顔座標として座標リストに加えている。したがって、画像データを補正するための顔情報の個数が増え、画像データの補正を高精度に行うことができる。
【００４９】
このように、本実施形態では、プリンター顔座標およびカメラ顔座標がそれぞれ本発明の「第１情報」および「第２情報」に相当し、それらのうち座標リストに登録されたプリンター顔座標やカメラ顔座標が本発明の「顔情報」に相当する。
【００５０】
ところで、上記第１実施形態では、画像データに付加されたカメラ顔座標についてはそのまま座標リストに顔情報として登録するとともに、顔認識処理により検出された顔画像のうち顔信頼度の高いものについては当該顔画像を含む顔領域を示すプリンター顔座標を座標リストに登録している。例えば図８に示すような検出結果が得られる場合には、７つの顔情報が座標リストに登録される。すなわち、同図（ａ）に示すように、デジタルカメラ２００側での顔認識処理の結果、４人の顔画像が検出され、各顔画像の位置を示すカメラ顔座標（ＬＴ１ｃ，ＬＢ１ｃ，ＲＴ１ｃ，ＲＢ１ｃ）、（ＬＴ２ｃ，ＬＢ２ｃ，ＲＴ２ｃ，ＲＢ２ｃ）、（ＬＴ３ｃ，ＬＢ３ｃ，ＲＴ３ｃ，ＲＢ３ｃ）、（ＬＴ４ｃ，ＬＢ４ｃ，ＲＴ４ｃ，ＲＢ４ｃ）が画像データに付加されている。また、同図（ｃ）に示すように、印刷装置１００側での顔認識処理の結果、閾値Ｔ（カメラ顔座標が画像データに付加されているため、Ｔ＝８００）を超える顔信頼度を有する三人の顔画像が検出され、各顔画像の位置を示すプリンター顔座標（ＬＴ１ｐ，ＬＢ１ｐ，ＲＴ１ｐ，ＲＢ１ｐ）、（ＬＴ２ｐ，ＬＢ２ｐ，ＲＴ２ｐ，ＲＢ２ｐ）、（ＬＴ３ｐ，ＬＢ３ｐ，ＲＴ３ｐ，ＲＢ３ｐ）が求められている。この場合、３つの顔画像のうち２つの顔画像については同一であるにもかかわらず、カメラ顔座標およびプリンター顔座標が登録顔情報として座標リストに加わり、画像データの補正に用いられる。
【００５１】
そこで、１つの顔画像に対して１つの顔情報を用いて画像データを補正するように構成し、補正の適正化を図ることが考えられる。特に、本発明では、上記したようにカメラ顔座標が画像データに付加されている場合に閾値Ｔを大きな値に変更した上でプリンター顔座標を求めているため、印刷装置１００側での顔画像の誤検出の可能性は低く、高い信頼度で顔情報を求めることができる。また、デジタルカメラ２００で人物を撮像する際、ピント合わせを行った後で人物が動いてしまうことがあり、同図（ｂ）に示すように撮像された顔画像（顔領域ＦＲｐに含まれる顔）がデジタルカメラ２００でピント合わせした時点での顔画像（顔領域ＦＲｃに含まれる顔）からずれてしまうことがある。さらに、テンプレートのサイズを可変しながら顔画像を検出しているため、プリンター顔座標は印刷装置１００における画像データの補正に適したサイズで検出される。これらの点を考慮すると、同一の顔画像についてカメラ顔座標およびプリンター顔座標が併存する場合には、プリンター顔座標を登録顔情報として座標リストに加える一方、カメラ顔座標については排除するのが望ましい。以下、この技術思想に基づく第２実施形態について、図９ないし図１１を参照しながら説明する。
【００５２】
図９および図１０は本発明にかかる画像処理装置の第２実施形態を示すフローチャートであり、同画像処理装置を装備する印刷装置で実行される画像処理および印刷動作を示すフローチャートである。また、図１１は第２実施形態で用いる登録リストを示す図であり、第２実施形態では、カメラ顔登録リスト、プリンター顔登録リストおよびエンハンス顔登録リスト（第１実施形態での「座標リスト」に相当）が準備されている。この第２実施形態が第１実施形態と大きく相違する点は、カメラ顔とプリンター顔との重複率を算出し、プリンター顔と同一のカメラ顔については、そのカメラ顔を含む顔領域を示すカメラ顔座標を排除している点であり、その他の構成および動作は基本的に同一である。したがって、以下においては、相違点を中心に説明し、同一構成については同一符号を付して説明を省略する。
【００５３】
この第２実施形態では、第１実施形態と同様にして、ＣＰＵ１０１は、カメラ顔座標が画像データに付加されているか否かに応じて閾値Ｔを設定した（ステップＳ１９、Ｓ２０）後、全カメラ顔座標をＲＡＭ１０３のカメラ顔登録リストに登録するとともに、カメラ顔座標の登録個数、つまりカメラ顔個数ＮｃをＲＡＭ１０３に記憶する（ステップＳ２１）。例えば４つのカメラ顔座標（ＬＴ１ｃ，ＬＢ１ｃ，ＲＴ１ｃ，ＲＢ１ｃ）、（ＬＴ２ｃ，ＬＢ２ｃ，ＲＴ２ｃ，ＲＢ２ｃ）、（ＬＴ３ｃ，ＬＢ３ｃ，ＲＴ３ｃ，ＲＢ３ｃ）、（ＬＴ４ｃ，ＬＢ４ｃ，ＲＴ４ｃ，ＲＢ４ｃ）が画像データに付加されている場合、図１１（ａ）に示すように、それらを登録顔情報Ｎｏ．１、２、…の順序で記憶する。また、カメラ顔個数Ｎｃは「４」である。なお、同図中の欄「ＩＬフラグ」とは、顔情報の有効／無効を示すものであり、「０」は有効な顔情報であり、画像データの補正に用いられるものであることを示し、「１」は無効な顔情報であることを示している。また、カメラ顔個数Ｎｃについては画像ファイル中のＥｘｉｆタグから読み出した値を設定してもよいし、登録されたカメラ顔座標をカウントするように構成してもよい。
【００５４】
こうして、全カメラ顔座標のカメラ顔登録リストへの登録が完了すると、ＣＰＵ１０１は、プリンター顔の個数、つまりプリンター顔個数Ｎｐをゼロにリセットする（ステップＳ６０）。そして、第１実施形態と同様に顔認識処理、顔信頼度算出処理および顔情報決定処理を行う（ステップＳ２２〜Ｓ２９、Ｓ３０Ａ、Ｓ３１〜Ｓ３６）。ただし、第２実施形態では検出したプリンター顔の顔信頼度が閾値Ｔを超えるとき（ステップＳ２９で「ＹＥＳ」）、当該プリンター顔を含む顔領域を示すプリンター顔座標をプリンター顔登録リスト（図１１（ｂ））に登録するとともに、プリンター顔個数Ｎｐを「１」だけインクリメントする（ステップＳ３０Ａ）。例えば図１１（ｂ）に示すように３つのプリンター顔座標がプリンター顔登録リストに登録された場合、プリンター顔個数Ｎｐは「３」となる。
【００５５】
カメラ顔登録リストおよびプリンター顔登録リストへの登録処理が完了すると、ＣＰＵ１０１は、ステップＳ６１〜Ｓ６８を実行してプリンター顔座標の全部と、プリンター顔と重複しないカメラ顔のカメラ顔座標とをエンハンス顔登録リストに登録する。すなわち、ＣＰＵ１０１は、エンハンス顔個数Ｎｅをゼロにリセットした（ステップＳ６１）後、カメラ顔登録リストに登録されたカメラ顔座標の各々がプリンター顔登録リストに登録されたプリンター顔座標のいずれかと一致するか否かを判別する（ステップＳ６２〜Ｓ６７）。すなわちステップＳ６２で、ＣＰＵ１０１は、プリンター顔個数Ｎｐがゼロよりも大きいか否かを判別する。ここで、プリンター顔登録リストにプリンター顔座標が登録されていない場合、あるいはステップＳ６３〜Ｓ６７の処理をプリンター顔登録リストに登録された全プリンター顔座標について完了した時点でプリンター顔個数Ｎｐ＝０となるため、これらの場合には、ＣＰＵ１０１はステップＳ６２で「ＮＯ」と判別し、ステップＳ６８に進む。
【００５６】
一方、ステップＳ６２で「ＹＥＳ」のとき、つまりカメラ顔座標で特定されるカメラ顔領域との重なり判別が実施されていないプリンター顔座標が残っている間、ステップＳ６３〜Ｓ６７の処理を繰り返して行う。このステップＳ６３で、ＣＰＵ１０１は、カメラ顔個数Ｎｃがゼロよりも大きいか否かを判別する。そして、ステップＳ６３で「ＹＥＳ」のとき、つまりＮｐ番目のプリンター顔座標で特定されるプリンター顔領域との重なり判別が実施されていないカメラ顔座標が残っているときには、ＣＰＵ１０１は、Ｎｐ番目のプリンター顔座標で特定されるプリンター顔領域ＦＲｐと、各カメラ顔座標で特定されるカメラ顔領域ＦＲｃとの重複率を算出する（ステップＳ６４）。例えば図８（ｂ）に示すように、カメラ顔座標（ＬＴ３ｃ，ＬＢ３ｃ，ＲＴ３ｃ，ＲＢ３ｃ）で特定されるカメラ顔領域ＦＲｃと、プリンター顔座標（ＬＴ２ｐ，ＬＢ２ｐ，ＲＴ２ｐ，ＲＢ２ｐ）で特定されるプリンター顔領域ＦＲｐとの重なっている重複領域（同図（ｂ）中のハッチング領域）ＯＲの面積を求めるとともに、顔領域ＦＲｃ（またはＦＲｐ）に対する重複領域ＯＲの面積率を上記重複率として求める。
【００５７】
また、ＣＰＵ１０１は、その他のカメラ顔領域ＦＲｃについても同様にして求めた後、重複率が４０％以上となるカメラ顔領域ＦＲｃが存在する、つまりカメラ顔登録リスト中のカメラ顔のなかにＮｐ番目のプリンター顔と重なる（あるいは一致する）ものがあるか否かを判別する（ステップＳ６５）。また、Ｎｐ番目のプリンター顔と重なるカメラ顔、つまり重複顔領域が見つかった場合のみ、ＣＰＵ１０１は、当該カメラ顔を特定するカメラ顔座標をカメラ顔登録リストから削除するとともに、カメラ顔個数Ｎｃを「１」だけデクリメントし（ステップＳ６６）、ステップＳ６７に進む。なお、Ｎｐ番目のプリンター顔と重なるカメラ顔がない場合には、ステップＳ６６を実行することなく、ステップＳ６７に進む。
【００５８】
このステップＳ６７で、ＣＰＵ１０１はＮｐ番目のプリンター顔座標をＲＡＭ１０３のエンハンス顔登録リストに登録する。このエンハンス顔登録リストは、例えば図１１（ｃ）に示すように予め１０個の顔座標を記憶するためのＲＡＭ１０３に設定されたメモリ空間であり、上記カメラ顔登録リストおよびプリンター顔登録リストとは別個に設けられたものである。また、ＣＰＵ１０１は、Ｎｐ番目プリンター顔座標のエンハンス顔登録リストへの登録後に、プリンター顔個数Ｎｐを「１」だけデクリメントするとともに、エンハンス顔個数Ｎｅを「１」だけインクリメントし、ステップＳ６２に戻る。
【００５９】
このようにステップＳ６２〜Ｓ６７の実行により、プリンター顔登録リストに登録された全プリンター顔座標はエンハンス顔登録リストに登録されるのに対し、カメラ顔登録リストに登録されていたカメラ顔座標のうちプリンター顔と重なるカメラ顔を特定するカメラ顔座標についてはＲＡＭ１０３から削除される。また、プリンター顔個数Ｎｐがゼロになる（ステップＳ６２で「ＮＯ」）と、ＣＰＵ１０１は、カメラ顔登録リストに残っている全カメラ顔座標をエンハンス顔登録リストに登録するとともに、エンハンス顔個数Ｎｅにカメラ顔個数Ｎｃを加算してエンハンス顔個数Ｎｅを更新する（ステップＳ６８）。
【００６０】
こうしてプリンター顔とカメラ顔との重複に基づいてカメラ顔座標の整理が完了すると、第１実施形態と同様に、ＣＰＵ１０１はエンハンス顔登録リストにカメラ顔座標および／またはプリンター顔座標が登録されている否かを判別する（ステップＳ３７）。そして、カメラ顔座標かプリンター顔座標かを問わず、顔座標が登録されている場合（ステップＳ３７で「ＹＥＳ」）には、ＣＰＵ１０１は、エンハンス顔登録リストに登録された顔座標（顔情報）に基づいて全ての顔位置を計算し、さらに顔の平均顔色を取得した（ステップＳ３８）後、顔色が最適になるようにエンハンスパラメータを計算する（ステップＳ３９）。一方、エンハンス顔登録リストにカメラ顔座標もプリンター顔座標も登録されていない場合（ステップＳ３７で「ＮＯ」）、ＣＰＵ１０１は、画像全体が最適になるようにエンハンスパラメータを計算する（ステップＳ４０）。そして、ＣＰＵ１０１は第１実施形態と同様にして印刷処理を実行する（ステップＳ４１〜Ｓ４９）。
【００６１】
以上のように、第２実施形態によれば、第１実施形態と同様の作用効果が得られるのみならず、１つの顔画像に対して１つの登録顔座標が採用されるように構成しているので、画像データの補正をさらに適正化することができる。このように、第２実施形態では、顔領域ＦＲｐおよびＦＲｃがそれぞれ本発明の「第１顔領域」および「第２顔領域」に相当している。また、エンハンス顔登録リストに登録される登録顔座標が本発明の「顔情報」に相当する。
【００６２】
なお、本発明は上記した実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行うことが可能である。例えば、上記実施形態では、画像データに顔座標などを付加した画像ファイルをメモリカードＭに記録し、当該メモリカードＭを介して印刷装置１００に供給して印刷しているが、有線または無線通信により画像ファイルが印刷装置１００に供給される場合も、本発明を適用することで上記した実施形態と同様の作用効果が得られる。
【００６３】
また、上記実施形態では、顔領域を４点の座標で示しているが、顔領域の表現方式はこれに限定されるものではなく、例えば中心座標に大きさを組み合わせたもの、中心座標に幅および高さを組み合わせたもの等を用いることができ、これらの表現方式でカメラ顔領域やプリンター顔領域を特定した顔座標も本発明の「第１情報」、「第２情報」、「顔情報」に含まれる。
【００６４】
また、上記実施形態では、本発明にかかる画像処理装置および方法を印刷装置１００に適用しているが、複数の電子機器から構成される印刷システムにも、また印刷装置以外の１つの電子機器（例えば複合機、ファクシミリ装置など）にも適用可能である。
【００６５】
また、上記実施形態にかかる画像処理方法を実行するプログラムを、ＣＤ−ＲＯＭ、光ディスク、光磁気ディスク、不揮発性メモリカードなどの記憶媒体に記憶させ、この記憶媒体からプログラムをコードとして読み出し、コンピューターにおいて実行してもよい。つまり、上記プログラムを記憶した記憶媒体、コンピュータープログラム自体も本発明の一実施形態に含まれる。
【符号の説明】
【００６６】
１００…印刷装置、  １０１…ＣＰＵ（顔情報検出部、顔情報付加判別部、顔信頼度算出部、顔情報決定部、補正部）、  １０２…ＲＯＭ、  １０３…ＲＡＭ、  １０４…ＥＥＰＲＯＭ、  ２００…デジタルカメラ、  ３０７…圧縮データ（画像データ）、  ＦＲｃ…（第２）顔領域、  ＦＲｐ…（第１）顔領域
【図１】
0005625832.tif 000002
【図２】
0005625832.tif 000003
【図３】
0005625832.tif 000004
【図４】
0005625832.tif 000005
【図５】
0005625832.tif 000006
【図６】
0005625832.tif 000007
【図７】
0005625832.tif 000008
【図８】
0005625832.tif 000009
【図９】
0005625832.tif 000010
【図１０】
0005625832.tif 000011
【図１１】
0005625832.tif 000012