(57)【要約】【課題】  すでに赤目補正された画像データに対して再び赤目補正を行う場合に、効果的且つ効率的に赤目補正処理を行えるようにすること。【解決手段】  画像データを入力する入力手段（１０２、１０７）と、異なる赤目検出方法により赤目検出を行う複数の赤目検出手段（１２０〜１２２）と、前記入力手段により入力した画像データが赤目補正処理済みである場合に、当該赤目補正処理に用いられた赤目検出方法を判定する既赤目補正方法判定部（１２３）と、前記複数の赤目検出手段の内、前記既赤目補正方法判定部により判定された赤目検出方法と異なる赤目検出方法により赤目検出を行う赤目検出手段を選択する赤目検出方法選択部（１２４）と、前記赤目検出方法選択部により選択された赤目検出手段の赤目検出結果を用いて、前記画像データに対して赤目補正を行う赤目補正部（１２５）とを有する。【選択図】  図１
2008293135.tif 000002
【特許請求の範囲】
【請求項１】
画像データを入力する入力手段と、
異なる赤目検出方法により赤目検出を行う複数の赤目検出手段と、
前記入力手段により入力した画像データが赤目補正処理済みである場合に、当該赤目補正処理に用いられた赤目検出方法を判定する判定手段と、
前記複数の赤目検出手段の内、前記判定手段により判定された赤目検出方法と異なる赤目検出方法により赤目検出を行う赤目検出手段を選択する選択手段と、
前記選択手段により選択された赤目検出手段の赤目検出結果を用いて、前記画像データに対して赤目補正を行う赤目補正手段と
を有することを特徴とする画像処理装置。
【請求項２】
前記複数の赤目検出手段は、第１の赤目検出方法により赤目検出を行う第１の赤目検出手段と、前記第１の赤目検出方法と異なる第２の赤目検出方法により赤目検出を行う第２の赤目検出手段とを少なくとも有し、
前記判定手段が前記画像データの赤目補正処理に前記第１の赤目検出方法が用いられたと判断した場合に、前記選択手段は前記第２の赤目検出手段を選択し、前記判定手段が前記第２の赤目検出方法が用いられたと判断した場合に、前記選択手段は前記第１の赤目検出手段を選択する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第１の赤目検出方法は、前記画像データから顔検出を行って検出された顔領域内で赤目検出を行う方法であり、前記第２の赤目検出方法は、前記画像データの全領域から赤目検出を行う方法であることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
異なる赤目検出方法により赤目検出を行う複数の赤目検出手段を有する画像処理装置における画像処理方法であって、
画像データを入力する入力工程と、
前記入力工程で入力した画像データが赤目補正処理済みである場合に、当該赤目補正処理に用いられた赤目検出方法を判定する判定工程と、
前記複数の赤目検出手段の内、前記判定工程により判定された赤目検出方法と異なる赤目検出方法により赤目検出を行う赤目検出手段を選択する選択工程と、
前記選択工程で選択された赤目検出手段により前記画像データに対して赤目検出を行う赤目検出工程と、
前記赤目検出工程における赤目検出結果を用いて、前記画像データに対して赤目補正を行う赤目補正工程と
を有することを特徴とする画像処理方法。
【請求項５】
コンピュータに、請求項４に記載の画像処理方法の各工程を実行させるためのプログラム。
【請求項６】
請求項５に記載のプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置及び方法に関し、更に詳しくは、赤目補正を行う画像処理装置及び方法に関する。
【背景技術】
【０００２】
従来、画像処理装置における赤目補正方法は、撮影時に同時に赤目補正を行う方法と、画像再生時または印刷時に赤目補正を行う方法の２種類に大別される。通常、前者はカメラ等に搭載され、後者はプリンタやＰＣにおいて実行されるアプリケーション等で多く見られる。
【０００３】
撮像時に行われる赤目補正は、シャッタータイムラグや画像記録時間の高速性が要求されるため、高速であることと、後で再度赤目補正処理が可能であるために、補正効果の高さよりも誤補正の少なさが望まれる。一方、画像再生時に行われる赤目補正は、赤目となってしまった画像をより確実に補正できることが望まれる。
【０００４】
従来の赤目補正方法としては、一例として、肌色領域などから顔領域を推定し、推定した顔領域の中から赤色成分を検出して赤目であるかどうかを判定し、赤目であると判定された場合に、輝度や彩度を補正するという方法が知られている。このような赤目検出方法として、例えば特許文献１には、低彩度領域および肌色領域を抽出して、さらに赤色領域を抽出し、肌色領域の中に赤色領域のものがあった場合に赤目であると判断するものが開示されている。また、特許文献２には、顔検出結果の信頼度に応じて、顔領域内の赤目補正の補正強度を決定する方法が提案されている。なお、顔検出方法に関しては、例えば、特許文献３及び４等に開示されている。
【０００５】
上述したように顔検出を行った上で赤目を検出する手法は、画像内の限られた領域のみ赤目領域を探索するため、カメラ等の高速性が必要とされるものの処理に向いている。さらに最近のデジタルカメラでは顔検出結果を用いてオートフォーカス（ＡＦ）を行ったり自動露出（ＡＥ）を行ったりする機種が増えてきているため、その顔検出結果を流用することで容易に赤目補正機能を実装することが可能である。そういう点においてもカメラ向きの手法であるといえる。
【０００６】
別の赤目検出方法として、画像内から直接赤目を検出する手法も提案されている。画像内から直接赤目を検出をする手法は、画像全体の赤目部分を直接探索するために赤目領域を確実に検出することができるため、プリンタ等の再生装置における補正処理の方に向いている。
【０００７】
また、赤目補正の精度向上のために、最近のデジタルカメラにおいては、撮影情報を画像データにＥｘｉｆ情報として添付し、画像再生時や画像補正を行う際に、Ｅｘｉｆ情報を基にして赤目補正を行う方法も提案されている。例えば、特許文献５に示す方法では、光学的に撮影した画像に撮影情報を付加しておき、この撮影情報を用いて赤目が発生している可能性を判定し、赤目が発生している可能性がある場合のみ、この画像に対して赤目補正を行う。このような撮影情報を用いた方法は、赤目であると判定する際の精度の向上には非常に有効である。
【０００８】
【特許文献１】特開平６−２５８７３２号公報
【特許文献２】特開２００５−２８６８３０号公報
【特許文献３】特開平１０−２３２９３４号公報
【特許文献４】特開２０００−４８１８４号公報
【特許文献５】特開２００４−１４５２８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１の方法では、顔領域内にある赤色領域を指定しているだけであり、たとえば赤い口紅を塗った唇領域を赤目として誤検出するなどの理由により、赤目補正の補正精度が十分に高くないという問題点がある。
【００１０】
また特許文献２の方法においては、顔検出時に顔領域に髪の毛がかかっていたり、横向きの顔だったりした場合など、顔と判定されなかった場合には赤目も検出されないため、赤目補正をすることができない。
【００１１】
また、顔検出の手法として、瞳領域をまず検出してから顔検出を行うものである場合には、赤目画像では通常の目の色ではないために瞳領域の検出が難しく、そのために顔検出も難しくなり、結果として赤目補正の精度が十分に高くないという問題点がある。
【００１２】
また、特許文献５においては、赤目を起こしている確率を推定することは可能ではあるものの、上記述べたような根本的な問題を解決するに至っていない。
【００１３】
また、上述したいずれかの赤目検出方法で得た検出結果を用いて赤目補正がすでに行われた画像に対して、同様の方法により赤目検出を行って赤目補正したとしても、補正精度は大きく変化しない。例えば、顔検出を行って赤目補正をするものであれば、顔検出の精度が変わらなければ、再び赤目補正を行っても精度の向上は望めない。同様に、画像全体から直接赤目検出する方法においても、赤目の検出精度が変わらなければ、再び赤目補正を行っても精度の向上は望めない。
【００１４】
このように、どちらの手法を採用したとしてもそれぞれに長所と短所があり、ユーザが満足できる補正結果を得ることができないことがあった。
【００１５】
本発明は上記問題点を鑑みてなされたものであり、すでに赤目補正された画像データに対して再び赤目補正を行う場合に、効果的且つ効率的に赤目補正処理を行えるようにすることを目的とする。
【課題を解決するための手段】
【００１６】
上記目的を達成するために、本発明の画像処理装置は、画像データを入力する入力手段と、異なる赤目検出方法により赤目検出を行う複数の赤目検出手段と、前記入力手段により入力した画像データが赤目補正処理済みである場合に、当該赤目補正処理に用いられた赤目検出方法を判定する判定手段と、前記複数の赤目検出手段の内、前記判定手段により判定された赤目検出方法と異なる赤目検出方法により赤目検出を行う赤目検出手段を選択する選択手段と、前記選択手段により選択された赤目検出手段の赤目検出結果を用いて、前記画像データに対して赤目補正を行う赤目補正手段とを有する。
【００１７】
また、異なる赤目検出方法により赤目検出を行う複数の赤目検出手段を有する画像処理装置における本発明の画像処理方法は、画像データを入力する入力工程と、前記入力工程で入力した画像データが赤目補正処理済みである場合に、当該赤目補正処理に用いられた赤目検出方法を判定する判定工程と、前記複数の赤目検出手段の内、前記判定工程により判定された赤目検出方法と異なる赤目検出方法により赤目検出を行う赤目検出手段を選択する選択工程と、前記選択工程で選択された赤目検出手段により前記画像データに対して赤目検出を行う赤目検出工程と、前記赤目検出工程における赤目検出結果を用いて、前記画像データに対して赤目補正を行う赤目補正工程とを有する。
【発明の効果】
【００１８】
すでに赤目補正された画像データに対して再び赤目補正を行う場合に、効果的且つ効率的に赤目補正処理を行うことが可能になる。
【発明を実施するための最良の形態】
【００１９】
以下、添付図面を参照して本発明を実施するための最良の形態を詳細に説明する。
【００２０】
本実施の形態では、赤目補正が可能なカメラダイレクトまたはカードダイレクト印刷を行う印刷装置を一例として説明を行う。なお、本実施の形態では、赤目検出方法の内、画像データに顔検出処理を行い、顔検出結果に基づいて赤目を検出する方法を「第１の赤目検出方法」と呼ぶものとする。また、顔検出処理を行わずに画像データの全領域から直接赤目を検出する補正する方法を「第２の赤目検出方法」と呼ぶものとする。
【００２１】
図１は本実施の形態における印刷装置１００の構成を示すブロック図である。図１において、１１１はユーザインタフェースであり、ユーザはこのユーザインタフェース１１１を介して印刷指示をすることができる。取り外し可能な記憶媒体１０８に保存されている画像を印刷する場合、ユーザによりユーザインタフェース１１１を介して印刷指示されると、まず、入力手段の一例である記録・読み出し部１０７により記憶媒体１０８に格納されている画像データを読み出す。そして読み出された画像データは、圧縮伸長部１０６により伸長され、得られたＹＵＶ画像データとヘッダ情報がバッファメモリ１０３に蓄えられる。
【００２２】
また、不図示のデジタルカメラなどから印刷指定されるピクトブリッジ接続印刷では、不図示の画像転送装置のユーザインターフェースにより印刷指定されると、画像転送装置より通信回線１０５を介して通信部１０２へ画像データが転送される。ここで、通信部１０２は入力手段の別の一例を構成している。転送された画像データは圧縮伸長部１０６により伸長され、得られたＹＵＶ画像データとヘッダ情報がバッファメモリ１０３に蓄えられる。
【００２３】
また、１０１は画像データに基づいて印刷を行う印刷部、１０４は印刷部１０１により印刷を行うための画像データに処理する信号処理部である。１２０は上述したようにしてバッファメモリ１０３に蓄えられた印刷対象のＹＵＶ画像データから顔領域及びその位置（以下、「顔情報」と呼ぶ。）を検出する顔検出部である。１２１は顔検出部１２０からの顔情報に基づいて、赤目領域及びその位置（以下、「赤目情報」と呼ぶ。）を検出する第１赤目検出部である。即ち、顔検出部１２０と第１赤目検出部１２１とにより第１の赤目検出方法が実行される。また、１２２は印刷対象のＹＵＶ画像データから直接赤目領域及びその位置を検出し、赤目情報を出力する第２赤目検出部である。即ち、第２赤目検出部１２２により第２の赤目検出方法が実行される。１２５は、第１赤目検出部１２１または第２赤目検出部１２２により得られた赤目情報（つまり、赤目検出結果）に基づいて、バッファメモリ１０３からＹＵＶ画像データを読み出して赤目補正を行う赤目補正部である。
【００２４】
１２３は、ＹＵＶ画像データのヘッダ情報を調べ、そのＹＵＶ画像データが赤目補正処理済みであるか、また、赤目補正処理済みの場合にはどの赤目検出方法により得られた赤目情報に基づいて赤目補正を行ったかを判別する既赤目補正方法判定部である。なお、本実施の形態では、既赤目補正方法判定部１２３は、第１の赤目検出方法による赤目情報に基づいて補正が行われたか、または第２の赤目検出方法による赤目情報に基づいて補正が行われたかを判定する。１２４は、既赤目補正方法判定部１２３の判定結果に応じて、印刷装置１００内で第１の赤目検出方法と第２の赤目検出方法のどちらを実行するかを選択する赤目検出方法選択部である。
【００２５】
１１２は印刷装置１００全体を制御するシステムコントローラ１１２であって、赤目検出方法選択部１２４は選択した赤目検出方法をシステムコントローラ１１２に送信する。システムコントローラ１１２は赤目検出方法選択部１２４から送信された赤目検出方法に応じて、顔検出部１２０及び第１赤目検出部１２１、または、第２赤目検出部１２２を動作させて、赤目検出を実施する。
【００２６】
次に、上記構成を有する印刷装置１００における本実施の形態の赤目補正動作について、図２のフローチャートを参照しながら詳細に説明する。なお、ここでは、圧縮伸長部１０６によりバッファメモリ１０３に印刷対象画像のＹＵＶ画像データとそのヘッダ情報が記憶されているものとし、これらのデータに対して処理を行うものとする。
【００２７】
●既赤目補正方法の判定
先ず、ステップＳ１１において、既赤目補正方法判定部１２３は、ＹＵＶ画像データのヘッダ情報を調べる。そして、そのＹＵＶ画像データにすでに赤目補正がなれているか、また、赤目補正がなされていた場合にはどの赤目検出方法により得られた赤目情報を用いて赤目補正されたかを判別する。
【００２８】
図３は、ヘッダ情報の赤目補正結果を示す例である。図３に示すように、ヘッダ情報の記載内容としては、前回赤目補正した、補正日時、補正方法、補正バージョン情報、補正機器、瞳座標情報、赤目レベル、赤目補正した赤目補正レベルを含む。
【００２９】
上記ヘッダ情報の内、「補正方法」は、顔検出方式（第１の赤目検出方法）、全探索方式（第２の赤目検出方法）、ハイブリッドの何れにより得られた赤目情報を用いて赤目補正を行ったかを示す。「補正バージョン情報」は、補正方法のVersion番号を示し、赤目補正を行った機器が同一メーカである場合などで赤目補正方法が予めわかっている場合には、印刷装置１００においてこの情報を利用することができる。「補正機器」は、赤目補正した機器の種類を示し、「赤目検出レベル」は赤目を検出した際の検出レベルを記載している。
【００３０】
また、「赤目候補」は、赤目として検出された赤目領域を示し、各赤目候補について、瞳情報が記憶される。瞳情報としては、各赤目領域の中心座標及び周辺の座標、赤目レベル、赤目補正レベルを含む。「赤目レベル」は、補正前における瞳領域の赤色の彩度値、色相などからあらかじめ設定されてある赤目判定基準に照らし合わせて決められる赤目の程度を表す数値である。「赤目補正レベル」は、瞳領域における輝度・彩度を低下させたゲイン量のうち最大量や平均値であり、赤目補正のレベルが記載される。
【００３１】
これらの情報はＪＰＥＧファイル等のＥｘｉｆに書かれていても良いし、画像データフォルダ等に設定しても良い。画像データのヘッダと別データである場合には画像番号等の識別情報が追加される。
【００３２】
既赤目補正方法判定部１２３はこれらの情報をＹＵＶ画像データのヘッダ情報や別に保存されているファイルから読み取ることで、既赤目補正方法を判定することができる。
【００３３】
●赤目検出方法の選択
そして、赤目検出方法選択部１２４は、上述した既赤目補正方法判定部１２３による判定結果に応じて赤目検出方法を決定する。既赤目補正方法判定部１２３により判定された方法が、全探索方式、即ち、第２の赤目検出方法による赤目情報を用いたものであった場合には、ステップＳ１２に進んで第１の赤目検出方法を選択する。また、顔検出方式、即ち、第１の赤目検出方法による赤目情報を用いたものであった場合には、ステップＳ１５に進んで、第２の赤目検出方法（全探索方法）を選択する。また、その他の場合（例えば、ハイブリッド型である場合や、赤目補正が行われていないと判断された場合、及び、第１及び第２の赤目検出方法以外の方法であった場合）にも、第２の赤目検出方法を選択する。
【００３４】
なお、ここではその他の場合に第２の赤目検出方法を選択するものとしたが、顔検出の精度が十分に取れる場合には、第１の赤目検出方法を選択するようにしても勿論構わない。ただし、赤目検出精度の高い赤目検出方法を選択することが好ましい。
【００３５】
●第１の赤目検出方法
赤目検出方法選択部１２４が第１の赤目検出方法を選択すると、ステップＳ１２において、その情報はシステムコントローラ１１２に送られる。そして、ステップＳ１３においてシステムコントローラ１１２は、先ず、顔検出部１２０を制御して、顔検出を行わせる。
【００３６】
顔検出方法としては、例えば、ニュートラルネットワークに代表される学習を用いた方法や、目や鼻と言った物理的形状に特徴のある部位を画像領域からテンプレートマッチングで抽出する手法が知られている。他にも、肌の色や目の形といった画像特徴量を検出し、統計的手法を用いて解析する手法が挙げられる（例えば、特許文献３及び４を参照）。また、現在製品として提案されているものとしては、ウェーブレット変換と画像特徴量を利用して顔を検出する方法等や、テンプレートマッチング等を組み合わせた方法などがある。他にも多数の顔検出方法が提案されている。
【００３７】
ここで、色情報と目の物理的な形状の特徴のある部位を画像領域からテンプレートマッチングを用いた顔検出処理の一例について、図４乃至図７を参照して説明する。なお、図５（ａ）は顔検出を行う対象画像を示している。
【００３８】
ステップＳ１０１では顔検出の対象画像から肌色の領域を抽出する。図６はＣＩＥＬＡＢのLa*b*色空間における代表色を示した色度図であり、図中、楕円２００は肌色である可能性が高い領域（以下、「肌色領域」と呼ぶ。）を示している。図５（ｂ）は、図５（ａ）に示す顔検出の対象画像から、肌色領域２００内の画素値を有する画像領域を抽出したものを示した図である。ステップＳ１０２で、抽出した画像に対してハイパスフィルタをかける。図７は２次元ハイパスフィルタの一例を示す係数であり、図５（ｃ）は抽出された図５（ｂ）の画像にハイパスフィルタ処理を施した概念を示す画像である。
【００３９】
ステップＳ１０３では、テンプレートマッチングを行って画像中における目の検出を行い、ステップＳ１０４では、検出した目の領域の位置関係から顔認識を行い、方向・大きさ等の特徴量の抽出を行う。図５（ｄ）は上述したようにして行われた顔検出結果として、顔検出枠を表示した場合を示す図である。
【００４０】
顔検出部１２０により顔検出処理が終了すると、図２のステップＳ１４に進み、システムコントローラ１１２は、第１赤目検出部１２１を制御して赤目検出を行わせる。
【００４１】
顔検出部１２０の出力として、顔領域の座標および瞳領域の座標値を取得することができるため、第１赤目検出部１２１は、バッファメモリ１０３上のＹＵＶ画像データに対して顔検出部１２０の顔検出結果を用いて、瞳領域を特定する。そして、特定した瞳領域の平均的色相・彩度をとり、赤色色相で一定以上の彩度を持つ場合に赤目であるとして判定する。このようにして第１赤目検出部１２１により検出された赤目情報は、赤目補正部１２５に送られ、ステップＳ１７で赤目補正処理に用いられる。
【００４２】
また、本実施例において、バッファメモリ１０３の画像に対して同時に顔位置の検出を行ったが、あらかじめ顔位置を検出及びその情報を保存し、再生時に前記顔位置情報を基に赤目検出しても良い。その場合、顔検出部１２０は画像解析をして顔検出を行う代わりに記載されている顔検出位置情報を読み取ることで実現可能である。もちろんこれらの顔情報は画像と共にＥｘｉｆ情報として記載されていても良いし、別途、記憶媒体等に記録保存されていてもよく、また、撮像装置内に記憶されていてもよい。図８は顔検出された結果が画像のＥｘｉｆ情報として記載される内容を示した図である。この図における「顔信頼度」とは、顔検出モジュールがどの程度、顔である信頼性が高いかを数値化されたものである。
【００４３】
●第２の赤目検出方法
一方、赤目検出方法選択部１２４が第２の赤目検出方法を選択すると、ステップＳ１５において、その情報はシステムコントローラ１１２に送られる。そして、ステップＳ１６においてシステムコントローラ１１２は、第２赤目検出部１２２を制御して、赤目検出を行わせる。第２の赤目検出方法としては、例えば、特許文献１や特登録２６３４５１１号に記載されている方法を利用することができるが、ここでは、本実施の形態における第２の赤目検出方法について簡単に説明を行う。
【００４４】
第２赤目検出部１２２はバッファメモリ１０３からＹＵＶ画像データを取得して赤目位置の検出を行う。
【００４５】
図９はステップＳ１６において第２赤目検出部１２２で行う赤目検出方法のおおまかな流れを示したフローチャートである。まず、ステップＳ１１０においてバッファメモリ１０３に蓄積されたＹＵＶ画像データから赤色領域を抽出する。そして、ステップＳ１２０で、抽出された領域の形状を判定し、判定した形状から、赤目でない赤色領域を除外する。次に、ステップＳ１３０では、ステップＳ１２０で除外されなかった赤色領域の周辺の画像特徴量から赤目では無いものを除外して、残ったものを赤目として判定する。
【００４６】
図１０は図９のステップＳ１１０で行われる赤色領域抽出処理の詳細を示すフローチャートである。
【００４７】
先ず、対象画素を設定し（ステップＳ１１１）、対象画素周辺のＹＵＶデータから、例えば100×100画素のＶ値の平均値AveVを求める（ステップＳ１１２）。そして、求めた平均値AveVと対象画素のＶ値との差分値DiffVを算出する（ステップＳ１１３）。次に、DiffVと予め設定された閾値Th_Vとを比較し、閾値Th_V以上である場合には（ステップＳ１１４でＹＥＳ）、赤色として判定し、対象画素を赤色としてマーキングしてから（ステップＳ１１５）、ステップＳ１１６に進む。DiffVが閾値Th_Vより小さければ（ステップＳ１１４でＮＯ）、直接ステップＳ１１６に進む。ステップＳ１１６では、ＹＵＶ画像データ全てに対して処理を実行したかを判断し、未処理の画素があればステップＳ１１１に戻って上記処理を繰り返す。全ての画素の処理が終了すると、図９の処理に戻る。
【００４８】
なお、閾値Th_Vを大きくすると赤色が強く発色している画素のみが検出され、逆に閾値Th_Vを小さくすることで弱い赤色の画素も検出することが可能となるが、その反面誤検出の可能性も高くなる。
【００４９】
図１１は図９のステップＳ１２０における赤色領域形状判定処理の詳細を示すフローチャートである。
【００５０】
ステップＳ１２１では、図１０のステップＳ１１５でマーキングされた赤色画素を探索して、赤色画素の塊（赤色領域）を特定する。赤色画素の塊を特定する手法としては、二値化画像における形状検出方法として、例えば画像を左上から順次探索し、マーキング箇所が見つかったところからマーキング領域の外側を順次探索を行うような手法などが一般的に知られている。
【００５１】
ステップＳ１２２では、ステップＳ１２１で探索された形状から、赤色領域が赤目であるか否かの判定を行う。例えば、赤色領域の周囲長さをＬ、面積をＳとして、円形度Ｆ＝４πＳ／（Ｌ×Ｌ）とする。円形度とはどの程度円に近いかを示すもので、Ｆが１近いほど、より円に近くなる。赤色領域が赤目である場合、円形である可能性が高く、Ｆが閾値F_th以下の場合は、赤目候補から除外する。なお、この閾値F_thによっても赤目検索強度を調節することができ、高くするとより確実に赤目であるもののみが検索され、低くすると赤目でないものも検出されるようになる。なお、本発明はこれに限るものではなく、円形度以外に、赤色領域の画像に対する大きさや長辺短辺の長さなどで判定してもよい。形状判定処理が終了すると、図９の処理に戻る。
【００５２】
ステップＳ１３０における周辺領域探索では、ステップＳ１２０において図１１を参照して上述したようにして赤目と判断された赤色領域の周辺を探索する。例えば、赤目である場合は、赤目の近傍には白目があり、その外側には肌色領域が広がり、更にや髪の毛があると想定される。従って、ステップＳ１２０で赤目と判断された赤色領域の内、周囲の彩度・色相・明度をみて、そのようなものが近傍にあるものを赤目であると判定する。これらの判定において設定されたパラメータを可変することで、検出強度を可変することが可能である。
【００５３】
上述したようにして、第２赤目検出部１２２が赤目であると検出した領域の座標値等の赤目情報は、赤目補正部１２５に送られる。
【００５４】
●赤目補正方法
ステップＳ１７では、システムコントローラ１１２により選択された第１赤目検出部１２１または第２赤目検出部１２２のいずれかにより得られた赤目情報に基づいて、赤目補正部１２５により赤目補正処理を行う。赤目補正方法も多くの方法が提案されているため、ここでは一例として、簡単な手法のみ説明する。
【００５５】
図１２は、ステップＳ１７で行われる本実施の形態における赤目補正処理の流れを示したフローチャートである。本実施の形態における赤目補正は、赤目領域の彩度のゲインダウンと輝度値を下げることで実現する。
【００５６】
先ず、ステップＳ１４１で、上述したようにして第１赤目検出部１２１又は第２赤目検出部１２２から取得した赤目情報を基に、赤目領域の彩度Satを算出する。例えばＹＵＶ画像データの内、ＵとＶの絶対値和や二乗和が彩度に相当する。
Sat=｜U｜+｜V｜
【００５７】
次にステップＳ１４２では、彩度Satに合わせて彩度ゲインダウン量を決定する。図１３は彩度Satに対するゲインダウン量Ａの関係の一例を示した図である。
【００５８】
ステップＳ１４３では、ステップＳ１４２で求められたゲインダウン量を用いて次の式により彩度のゲインダウンを行う。
U’＝A×U
V’＝A×V
【００５９】
上記式において、Ａを１以下の値にすれば、彩度を低下させることができる。
また同様にして、ステップＳ１４４ではステップＳ１４１で算出された彩度を見て、輝度値のゲインダウン量を決定する。これもステップＳ１４２と同様にあらかじめパラメータを設定しておきゲインダウン量を決定しておけばよい。図１４は彩度と輝度ゲインダウン量Ｂの関係の例を示した図である。ステップＳ１４５では、ステップＳ１４４で決定されたゲインダウン量Ｂを用いてゲインダウンを行う。
Y’＝B×Y
【００６０】
上記式によって、彩度が高いところほどゲインダウンすることで自然な赤目補正が可能となる。
なお、上記のように彩度に基づいて彩度ゲインダウン量及び輝度ゲインダウン量を決定する他に、円形の中心からの距離や輝度値に応じて、彩度ゲインダウン量及び輝度のゲインダウン量を決定してもよい。また、彩度・輝度のゲインダウンさせる量が大きいほど補正効果が強く、少ないほど補正効果が弱くなる。
【００６１】
なお、彩度ゲインダウンと輝度ゲインダウンは、図１２に示す順番に行う必要はなく、平行して行っても、逆の順番で行っても構わない。
【００６２】
赤目補正を終えると図２のステップＳ１８に進んで、赤目補正部１２５は、赤目補正したＹＵＶ画像データと、そのヘッダ情報を上述した赤目補正処理の情報で更新し、赤目補正処理が終了する。
【００６３】
上述したようにして赤目補正された画像データは、信号処理部１０４により印刷に適した画像データとなるように信号処理された後、印刷部１０１によって印刷される。
【００６４】
また、モニタ表示する場合には、赤目補正されたＹＵＶ画像データを不図示のＤ／Ａ変換部により信号を変換し、表示装置１０９に表示する。
【００６５】
また、赤目補正画像を記憶媒体１０８に記録することも可能である。その場合、赤目補正された画像データは、圧縮伸長部１０６に送られて、例えばＪＰＥＧフォーマット等の記録に適したフォーマットに圧縮されて、記録・読み出し部１０７によってヘッダ情報と共に記憶媒体１０８に記録される。
【００６６】
上記の通り、本実施の形態によれば、すでに実施された赤目補正方法で用いられた赤目検出方法を判定し、異なる赤目検出方法により得られた赤目情報を基にして再度赤目補正を行うため、効果的且つ効率的に赤目補正することが可能になる。
【００６７】
なお、上記実施の形態では、赤目検出方法が顔検出を行ってから顔領域に対してのみ赤目検出を行う方法と、顔領域を求めずに画像データから直接赤目検出を行う方法の２種類である場合について説明したが、本発明はこれらに限られるものではない。本発明は、上記以外であっても、２種類以上の複数の方法により赤目検出を行うことができる場合に適用することが可能であり、２度目以降の赤目補正処理において異なる赤目検出方法を用いることにより、赤目補正の精度を高めることが可能になる。
【００６８】
なお、図３に示す「補正機器」情報から、先に赤目補正を行った機器と、今回赤目補正を行おうとしている機器とが同一機器であった場合には、赤目候補の内、赤目補正レベルが低いものを選択して赤目補正レベルを上げて補正するようにしても良い。このようにすることで、より好みに合った補正が可能となる。また、赤目検出レベルを強くして再検出を行い、前記赤目補正情報と比較して、新たに検出されたものに対して補正を行っても良い。
【００６９】
また、図３では、画像毎に補正方法、補正機器、赤目検出レベル、瞳座標情報、赤目レベル、赤目補正レベルを記憶する場合について示したが、図１５に示すように、これらを赤目候補毎に行ってもよい。
【００７０】
図１５のように、各赤目候補毎に補正方法が記憶されている場合には、各赤目補正候補毎に、図２を参照して説明したように、既赤目補正処理に応じて赤目検出方法を変更するようにしてもよい。
【００７１】
または、図１５のように各赤目候補毎に情報が記憶されている場合に、複数の赤目候補の補正方法として顔検出方式がひとつも記載されていない場合には、顔検出を行っていないと判断して、顔検出を使用した赤目検出を実施するように制御する。同様に、一方赤目候補の中に全探索検出方式がひとつも記載されていない場合には、全探索方式を用いて赤目補正を実施るように制御する。
【００７２】
また、顔検出方式と全探索方式の両方記述がある場合（ハイブリッド）には、全探索方式で赤目検出を行うことで、新たに赤目候補の追加を行うことが可能になる。
【００７３】
なお、本実施の形態では、印刷装置において赤目補正処理を実行する場合について説明したが、本発明はこれに限るものではない。例えば、撮像装置やパーソナルコンピュータなど、画像データを処理可能な様々な画像処理装置に適用可能であることは言うまでもない。
【００７４】
＜他の実施形態＞
本発明の目的は、以下の様にして達成することも可能である。まず、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行する。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００７５】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、以下のようにして達成することも可能である。即ち、読み出したプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合である。ここでプログラムコードを記憶する記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、ＲＯＭ、ＲＡＭ、磁気テープ、不揮発性のメモリカード、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ、光ディスク、光磁気ディスク、ＭＯなどが考えられる。また、ＬＡＮ（ローカル・エリア・ネットワーク）やＷＡＮ（ワイド・エリア・ネットワーク）などのコンピュータネットワークを、プログラムコードを供給するために用いることができる。
【図面の簡単な説明】
【００７６】
【図１】本発明の実施の形態における印刷装置の構成を示すブロック図である。
【図２】本発明の実施の形態における赤目補正動作を示すフローチャートである。
【図３】本発明の実施の形態におけるヘッダ情報の一例を示す図である。
【図４】本発明の実施の形態における顔検出方法を説明するためのフローチャートである。
【図５】本発明の実施の形態における顔認識方法を説明する図である。
【図６】CIELab色空間における代表的な色度図である。
【図７】本発明の実施の形態における顔検出で用いられるハイパスフィルタの例を示す図である。
【図８】本発明の実施の形態におけるヘッダ情報に記憶された顔情報の一例を示す図である。
【図９】本発明の実施の形態における第２の赤目検出方法の大まかな流れを示すフローチャートである。
【図１０】図９の赤目領域抽出処理の詳細をフローチャートである。
【図１１】図９の赤色領域形状判定処理の詳細を示すフローチャートである。
【図１２】本発明の実施の形態における赤目補正処理の一例を示すフローチャートである。
【図１３】本発明の実施の形態における彩度と彩度ゲインダウンの関係の一例を示す図である。
【図１４】本発明の実施の形態における彩度と輝度ゲインダウンの関係の一例を示す図である。
【図１５】本発明の実施の形態におけるヘッダ情報の別の一例を示す図である。
【符号の説明】
【００７７】
１００  印刷装置
１０１  印刷部
１０２  通信部
１０３  バッファメモリ
１０４  信号処理部
１０５  通信回線
１０６  圧縮伸長手段
１０７  記録・読み出し部
１０８  記憶媒体
１０９  表示装置
１１１  ユーザインタフェース
１１２  システムコントローラ
１２０  顔検出部
１２１  第１赤目検出部
１２２  第２赤目検出部
１２３  既赤目補正方法判定部
１２４  赤目検出方法選択部
１２５  赤目補正部
【図１】
2008293135.tif 000003
【図２】
2008293135.tif 000004
【図３】
2008293135.tif 000005
【図４】
2008293135.tif 000006
【図５】
2008293135.tif 000007
【図６】
2008293135.tif 000008
【図７】
2008293135.tif 000009
【図８】
2008293135.tif 000010
【図９】
2008293135.tif 000011
【図１０】
2008293135.tif 000012
【図１１】
2008293135.tif 000013
【図１２】
2008293135.tif 000014
【図１３】
2008293135.tif 000015
【図１４】
2008293135.tif 000016
【図１５】
2008293135.tif 000017