(57)【要約】【課題】赤目となっている瞳を含む領域から赤目部分のみを検出する処理において赤目となっている瞳部分以外の部分を検出してしまうという誤検出が少ない赤目補正技術を提供する。【解決手段】赤目補正候補瞳領域の赤み度を算定する赤み度算定部９４ａと、少なくとも赤み度が高い瞳領域のための赤目検出プログラムと赤み度が低い瞳領域のための赤目検出プログラムとを格納するプログラム格納部９４ｂと、算定された赤み度に基づいて適切な赤目検出プログラムを選択するプログラム選択部９４ｃと、赤目補正候補瞳領域に対して選択された赤目検出プログラムの実行結果に基づいて赤目補正候補瞳領域から前記赤目補正対象画素群を決定する赤目検出評価部９４ｅとが備えられている。【選択図】図５
2008059361.tif 000002
【特許請求の範囲】
【請求項１】
入力撮影画像から選択された赤目補正対象領域から赤目補正候補となる瞳領域を抽出し、この赤目補正候補瞳領域から赤目補正対象画素群を決定して、前記赤目補正対象画素群に対して赤目補正を行う赤目補正装置において、
前記赤目補正候補瞳領域の赤み度を算定する赤み度算定部と、
少なくとも赤み度が高い瞳領域のための赤目検出プログラムと赤み度が低い瞳領域のための赤目検出プログラムとを格納するプログラム格納部と、
前記算定された赤み度に基づいて前記プログラム格納部から適切な赤目検出プログラムを選択するプログラム選択部と、
前記赤目補正候補瞳領域に対して前記選択された赤目検出プログラムを実行させるプログラム実行部と、
前記プログラム実行部による赤目検出プログラムの実行結果に基づいて前記赤目補正候補瞳領域から前記赤目補正対象画素群を決定する赤目検出評価部と、
が備えられていることを特徴とする赤目補正装置。
【請求項２】
前記入力撮影画像がＲＧＢ画像データであり、赤み度算定部が前記赤目補正候補瞳領域のＲ値とＧ値からＲ−Ｇ差分値を求めるとともに、所定のＲ−Ｇ差分閾値を用いて前記赤目補正候補瞳領域の赤み度を算定することを特徴とする請求項１に記載の赤目補正装置。
【請求項３】
前記赤目検出プログラムとして、前記Ｒ−Ｇ差分値のヒストグラムにおける平均濃度値からその分散値分だけ高い濃度値レベルを超える濃度値をもつ画素のみが前記赤目補正対象画素の候補として取り扱われる赤目検出プログラムと、前記Ｒ−Ｇ差分値のヒストグラムにおける平均濃度値からその分散値の半分だけ高い濃度値レベルを超える濃度値をもつ画素のみが前記赤目補正対象画素の候補として取り扱われる赤目検出プログラムとが含まれていることを特徴とする請求項２に記載の赤目補正装置。
【請求項４】
前記プログラム格納部には赤目補正候補瞳領域の幾何学的形状を追加的にチェックする形状チェックプログラムが格納されており、前記赤目検出プログラムによって検出された前記赤目補正対象画素群のふるい落としがこの形状チェックプログラムを通じて行われることを特徴とする請求項１から３のいずれか一項に記載の赤目補正装置。
【請求項５】
前記赤目補正対象領域から赤目補正候補となる瞳領域を抽出する際に、前記赤目補正対象領域における肌色類似色を有する画素を除去する肌色除去処理部が備えられていることを特徴とする請求項１から４のいずれか一項に記載の赤目補正装置。
【請求項６】
入力撮影画像から選択された赤目補正対象領域から赤目補正候補となる瞳領域を抽出し、この赤目補正候補瞳領域から赤目補正対象画素群を決定して、前記赤目補正対象画素群に対して赤目補正を行うために、
前記赤目補正候補瞳領域の赤み度を算定する機能と、
少なくとも赤み度が高い瞳領域のための赤目検出プログラムと赤み度が低い瞳領域のための赤目検出プログラムとを格納するプログラム格納部から、前記算定された赤み度に基づいて適切な赤目検出プログラムを選択する機能と、
前記赤目補正候補瞳領域に対して前記選択された赤目検出プログラムを実行させる機能と、
前記プログラム実行部による赤目検出プログラムの実行結果に基づいて前記赤目補正候補瞳領域から前記赤目補正対象画素群を決定する機能と、
をコンピュータに実行させることを特徴とする赤目補正プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力撮影画像から選択された赤目補正対象領域から赤目補正候補となる瞳領域を抽出し、この赤目補正候補瞳領域から赤目補正対象画素群を決定して、前記赤目補正対象画素群に対して赤目補正を行う赤目補正技術に関する。
【背景技術】
【０００２】
人物や動物などを被写体としてストロボ撮影した場合、ストロボ光の一部が眼球内の血管等で反射してカメラ側に戻ってくることで、撮影画像コマにおいて瞳の中央が赤色ないしは実際とは異なる色となる、いわゆる赤目現象を生じることがある。この赤目現象は撮影画像の品質を大きく低下させるので、デジタルカメラの普及や写真フィルムの撮影画像コマをデジタル化するフィルムスキャナの普及により、この赤目問題を画像処理技術で解決することが数多く提案されている。もちろん、赤目部分の画素をモニタを通じて目で確認しながらその画素の色合いを実際の色合いに修正していくという職人的技術によってもこの補正作業が可能であるが、その補正作業に頻雑さや熟練さが要求される等を考慮すると一般的ではない。このため、パターン認識技術等を利用して瞳孔位置を抽出し、あるいは画像内の赤色部分を抽出して、この部分を色変換するといった自動化技術も考えられているが、正確に赤目を認識することは困難であり、それを行ったとしてもその画像処理技術が極めて複雑となり、装置自体も高価なものとなってしまう。
【０００３】
パターン認識といった高コストな技術を用いない赤目補正技術として、色調不良となった目領域を含む領域をまず指定し、その領域において、明度や赤味を組み合わせた特徴量を用いて、赤目部とその隣接する白目及び肌部との間に谷間ができることを利用し、前記特徴量の山毎に領域分割することで赤目部を白目及び肌部と分離する技術がある（例えば、特許文献１参照。）。この技術は、赤目部分は瞳孔部の中心程網膜からの反射が強いため、明度は中央から周辺部に向けて低下する傾向を持つことからキャッチライトも含めて明度が山状に分布すること、及び虹彩部が青目系瞳では赤みの値の大きさについて赤目となった瞳孔部との谷間となることを利用している。つまり、赤味という色に関する目領域の強度分布から赤目、白目及び肌部を区分けしようとしている。このため、瞳部分だけではなく顔全体が赤みを帯びることになる、ストロボ光が不十分で室内照明のタングステン光の影響が強い顔写真に対してこの赤目補正処理を施すと、実際には赤目現象が生じていないか又は程度の低い赤目現象しか生じていない瞳領域が赤目補正され、この赤目補正された瞳の色味が顔全体の色味との違和感を生じ、人物写真としての品質はかえって悪化することとなる。
【０００４】
また、顔面特有の複数の色成分画像を抽出して被写体人物の赤目位置を検出する技術、つまり撮像画像内から低彩度領域及び低照度領域の少なくとも一方の領域と肌色領域とが抽出され、これらの抽出信号を用いて、例えば論理積をとることで、人物の眼を含む領域が抽出され、更に、抽出された赤色部信号を用いて、目を含む領域から、赤目が発生しているときは、当該赤目位置が検出され、このようにして得られた赤目位置データに基づいて赤目位置の赤色が別の色に、例えば一般的な黒目に補正する技術もある（例えば、特許文献２参照。）。この技術では、肌色と赤色で赤目位置を認識しようとしているので、処理対象となる撮影画像の色特性が標準的なものでないと誤認識が生じやすい。
【０００５】
【特許文献１】特開２０００−７６４２７号公報（段落番号０００９−００１１、００５８−００７１、第１０図）
【特許文献２】特開平６−２５８７３２号公報（段落番号０００６−０００９、００１９−００２３、第６図）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上述したように、従来から多くの赤目検出アルゴリズム（赤目検出プログラム）が知られているが、処理対象となる撮影画像がもつＲＧＢヒストグラムなどの画像特性が千差万別であることから、いずれにしても、特に、赤目となっている瞳を含む領域から赤目部分のみを検出する処理において赤目となっている瞳部分以外の部分を検出してしまうという誤検出が少なくなかった。
上記実状に鑑み、本発明の課題は、上記のような誤検出が少ない赤目補正技術を提供することである。
【課題を解決するための手段】
【０００７】
入力撮影画像から選択された赤目補正対象領域から赤目補正候補となる瞳領域を抽出し、この赤目補正候補瞳領域から赤目補正対象画素群を決定して、前記赤目補正対象画素群に対して赤目補正を行う赤目補正装置において、上記課題を解決するため、本発明による装置では、前記赤目補正候補瞳領域の赤み度を算定する赤み度算定部と、少なくとも赤み度が高い瞳領域のための赤目検出プログラムと赤み度が低い瞳領域のための赤目検出プログラムとを格納するプログラム格納部と、前記算定された赤み度に基づいて前記プログラム格納部から適切な赤目検出プログラムを選択するプログラム選択部と、前記赤目補正候補瞳領域に対して前記選択された赤目検出プログラムを実行させるプログラム実行部と、前記プログラム実行部による赤目検出プログラムの実行結果に基づいて前記赤目補正候補瞳領域から前記赤目補正対象画素群を決定する赤目検出評価部とが備えられている。
【０００８】
この構成では、輪郭（エッジ）検出アルゴリズムや幾何学形状判定アルゴリズムなどから比較的安定して抽出することができる瞳領域に基づく赤目補正候補瞳領域に含まれる画素からその色特性値としての赤み度を算定し、この赤み度に応じて適切に選択された赤み検出プログラムを用いて実際に赤目補正を施すことになる画素群（赤目補正画素群）を決定する。赤み度が高い瞳領域ために適した赤目検出プログラムや赤み度が低い瞳領域のために適した赤目検出プログラムが予め用意されているので、種々の色特性をもった撮像画像が入力されても、各色特性に適したアルゴリズムでもって赤目検出を行うことができることから、赤目となっている瞳を含む領域から赤目部分のみを検出する処理において赤目となっている瞳部分以外の部分を検出してしまうという誤検出が抑制される。
【０００９】
複数の赤目検出プログラムから処理対象となっている赤目補正候補瞳領域に適した赤目検出プログラムを選択するための判定条件としての赤み度の算出の好適な具体例は、ＲＧＢ画像データのうちの赤みに関係するＲ成分画素値とＧ成分画素値を用いることであり、前記赤み度算定部が赤目補正候補瞳領域のＲ値とＧ値からＲ−Ｇ差分値を求めるとともに、所定のＲ−Ｇ差分閾値を用いて赤み度を算定するように構成されている。
【００１０】
また、本発明の好適な実施形態の１つでは、前記赤目検出プログラムとして、前記Ｒ−Ｇ差分値のヒストグラムにおける平均濃度値からその分散値分だけ高い濃度値レベルを超える濃度値をもつ画素のみが前記赤目補正対象画素の候補として取り扱われる赤目検出プログラムと、前記Ｒ−Ｇ差分値のヒストグラムにおける平均濃度値からその分散値の半分だけ高い濃度値レベルを超える濃度値をもつ画素のみが前記赤目補正対象画素の候補として取り扱われる赤目検出プログラムとが含まれている。これにより、入力撮影画像によっては同じ赤目でも明るい赤目又は暗い赤目といったようにその色特性がかなり異なったとしても、それぞれの色特性に適したアルゴリズムで赤目検出ができ、赤目検出精度を向上させることができる。
【００１１】
赤目検出は、特定色の検出であるとともに瞳というきわめて特徴的な形状の検出でもあるので、赤目検出精度を向上させるため、本発明の好適な実施形態の１つでは、前記プログラム格納部に赤目補正候補瞳領域の幾何学的形状を追加的にチェックする形状チェックプログラムが格納されており、前記赤目検出プログラムによって検出された前記赤目補正対象画素群のふるい落としがこの形状チェックプログラムを通じて行われる。
【００１２】
赤目補正対象領域から赤目補正候補となる瞳領域を抽出する好適な手段として、本発明では、前記赤目補正対象領域における肌色類似色を有する画素を除去する肌色除去処理部が備えられている。この肌色除去処理部は、入力撮影画像から選択された赤目補正対象領域、例えば額と鼻の間を縦長さとし顔幅を横長さとする目を内在させている領域のうち明らかに肌の部分と推定される境界線を設定し、その境界線に位置する画素の画素値をその入力撮影画像における肌色画素値とみなし、それに類似する範囲の肌色類似色をもつ画素を除去することで、以降の瞳検出の処理対象範囲を大幅に縮小することができる。つまり、肌色画素値を絶対的な値ではなく、入力撮影画像毎に決定される相対的な値とすることで、赤目補正対象領域から正確な肌領域を除去することができる。
【００１３】
また、本出願は入力撮影画像から選択された赤目補正対象領域から赤目補正候補となる瞳領域を抽出し、この赤目補正候補瞳領域から赤目補正対象画素群を決定して、前記赤目補正対象画素群に対して赤目補正を行う赤目補正プログラムも権利範囲としており、そのような赤目補正プログラムの特徴は、前記赤目補正候補瞳領域の赤み度を算定する機能と、少なくとも赤み度が高い瞳領域のための赤目検出プログラムと赤み度が低い瞳領域のための赤目検出プログラムとを格納するプログラム格納部から、前記算定された赤み度に基づいて適切な赤目検出プログラムを選択する機能と、前記赤目補正候補瞳領域に対して前記選択された赤目検出プログラムを実行させる機能と、前記プログラム実行部による赤目検出プログラムの実行結果に基づいて前記赤目補正候補瞳領域から前記赤目補正対象画素群を決定する機能とをコンピュータに実行させることである。このように構成された赤目補正プログラムも当然前述した本発明による赤目補正装置と同様な作用効果をもたらすものであり、さらに同様な好適実施形態を適用させることも可能である。
本発明によるその他の特徴及び利点は、以下図面を用いた実施形態の説明により明らかになるだろう。
【発明を実施するための最良の形態】
【００１４】
本発明による赤目補正装置は、入力撮影画像から選択された赤目補正対象領域から赤目補正候補となる瞳領域を抽出し、この赤目補正候補瞳領域から赤目補正対象画素群を決定して、前記赤目補正対象画素群に対して赤目補正を行うための種々の機能を有する。その中で本発明を特徴付けている重要な機能は、赤目補正候補瞳領域から赤目補正対象画素群を決定する機能であり、その基本原理が図１に示されている。
【００１５】
まず、撮影画像から抽出された赤目補正候補瞳領域の赤み度を算定し、処理対象となっている瞳領域が明るくて明確な赤目を有している、あるいは暗くて不明瞭な赤目を有しているかどうかを判定する（Ａ）。この判定に基づいて赤目検出のための最適なプログラムを選択する。例えば、処理対象の瞳領域の赤み度が低い場合、赤み度が低い瞳領域のために用意されている赤目検出プログラムを選択して、赤目検出処理を実行する（Ｂ）。また、処理対象の瞳領域の赤み度が高い場合、赤み度が高い瞳領域のために用意されている赤目検出プログラムを選択して、赤目検出処理を実行する（Ｃ）。いずれの赤目検出プログラムを選択しようとも、その赤目検出処理時に検出された赤目領域（赤目補正対象画素群）がメモリに記録される（Ｄ）。赤目検出処理が完了すると、メモリに記録された赤目領域に属する画素が彩度低減などの赤目補正処理を受けることにより赤目補正される（Ｅ）。
【００１６】
上記の赤目補正候補瞳領域の赤み判定に用いられる判定条件には、撮影画像のＲＧＢ画像データから得られるＲ−Ｇ値が用いられる。つまり、瞳領域に含まれる全画素の画素値に対して、Ｒ値からＧ値を引くという減算を行って、Ｒ−Ｇ値を用意する。このＲ−Ｇ値に対して、予め実験的に求められたＲ−Ｇ差分閾値（以下、単に閾値と称する）を設定する。例えば、第１閾値：Ｔｈ1と第２閾値：Ｔｈ2（Ｔｈ1＜Ｔｈ2）を設定して、第１閾値：Ｔｈ1以上のＲ−Ｇ値をもつ画素を含まない瞳領域は赤目現象が発生していないとみなしてこの赤目補正候補瞳領域に対する赤目検出処理を中止する。また、第２閾値：Ｔｈ2以上のＲ−Ｇ値をもつ画素が１つでもあれば、強い赤目現象が生じていると判定し、第２閾値：Ｔｈ2以上のＲ−Ｇ値をもつ画素がなければ、強い赤目現象が生じていると判定する。以下に述べる本発明の好適な実施形態では、８ビットデータとして、第１閾値：Ｔｈ1＝４８、第２閾値：Ｔｈ2＝９２と設定されている。
【００１７】
本発明による赤目補正技術を組み込んだ写真プリント装置の外観図が図２に示されている。この写真プリント装置は、印画紙Ｐに対して露光処理と現像処理とを行う写真プリンタとしてのプリントステーション１Ｂと、現像済み写真フィルム２ａやデジタルカメラ用メモリカード２ｂなどの画像入力メディアから取り込んだ撮影画像（ここでは、特別に区別する必要がある場合を除いて、デジタルデータとしての撮影画像データやこの撮影画像データに基づくプリント撮影画像やモニタ表示撮影画像を単に撮影画像という語句で総称している。）を処理してプリントステーション１Ｂで使用されるプリントデータの生成・転送などを行う操作ステーション１Ａとから構成されている。
【００１８】
この写真プリント装置はデジタルミニラボとも称せられるものであり、図３からよく理解できるように、プリントステーション１Ｂは２つの印画紙マガジン１１に納めたロール状の印画紙Ｐを引き出してシートカッター１２でプリントサイズに切断すると共に、このように切断された印画紙Ｐに対し、バックプリント部１３で色補正情報やコマ番号などのプリント処理情報を印画紙Ｐの裏面に印字するとともに、プリント露光部１４で印画紙Ｐの表面に撮影画像の露光を行い、この露光後の印画紙Ｐを複数の現像処理槽を有した処理槽ユニット１５に送り込んで現像処理する。乾燥の後に装置上部の横送りコンベア１６からソータ１７に送られた印画紙Ｐ、つまり写真プリントＰは、このソータ１７の複数のトレイにオーダ単位で仕分けられた状態で集積される（図２参照）。
【００１９】
上述した印画紙Ｐに対する各種処理に合わせた搬送速度で印画紙Ｐを搬送するために印画紙搬送機構１８が敷設されている。印画紙搬送機構１８は、印画紙搬送方向に関してプリント露光部１４の前後に配置されたチャッカー式印画紙搬送ユニット１８ａを含む複数の挟持搬送ローラ対から構成されている。
【００２０】
プリント露光部１４には、副走査方向に搬送される印画紙Ｐに対して、主走査方向に沿って操作ステーション１Ａからのプリントデータに基づいてＲ（赤）、Ｇ（緑）、Ｂ（青）の３原色のレーザ光線の照射を行うライン露光ヘッドが設けられている。処理槽ユニット１５は、発色現像処理液を貯留する発色現像槽１５ａと、漂白定着処理液を貯留する漂白定着槽１５ｂと、安定処理液を貯留する安定槽１５ｃとを備えている。
【００２１】
前記操作ステーション１Ａのデスク状コンソールの上部位置には、写真フィルム２ａの撮影画像コマから撮影画像データを取得するフィルムスキャナ２０が配置されており、デジタルカメラ等に装着される撮影画像記録媒体２ｂとして用いられている各種メモリカードやＣＤ−Ｒなどから撮影画像を取得するメディアリーダ２１は、この写真プリント装置のコントローラ３として機能する汎用パソコンに組み込まれている。この汎用パソコンには、さらに各種情報を表示するモニタ２３、各種設定や調整を行う際に用いる操作入力部として利用される操作入力デバイスとしてのキーボード２４やマウス２５も接続されている。
【００２２】
この写真プリント装置のコントローラ３は、ＣＰＵを中核部材として、写真プリント装置の種々の動作を行うための機能部をハードウエア又はソフトウエアあるいはその両方で構築しているが、図４に示されているように、本発明に特に関係する機能部としては、スキャナ２０やメディアリーダ２１によって読み取られた撮影画像を取り込んで次の処理のために必要な前処理を行う画像入力部３１と、各種操作ウインドウや各種操作ボタンなどを含むグラフィック操作画面の作成やそのようなグラフィック操作画面を通じてのユーザ操作入力（キーボード２４やマウス２５などによる）から制御コマンドを生成するグラフィックユーザインターフェース（以下ＧＵＩと略称する）を構築するＧＵＩ部３３と、ＧＵＩ部３３から送られてきた制御コマンドや直接キーボード２４等から入力された操作命令に基づいて所望のプリントデータを生成するために画像入力部３１からメモリ３０に転送された撮影画像に対する画像処理等を行うプリント管理部３２と、プリント管理部３２で管理されるプリント枚数設定や色補正等のプレジャッジプリント作業時にプリントソース画像や予想仕上がりプリント画像としてのシミュレート画像やＧＵＩ部３３から送られてきたグラフィックデータをモニタ２３に表示させるためのビデオ信号を生成するビデオ制御部３５と、画像処理が完了した処理済み撮影画像に基づいてプリントステーション１Ｂに装備されているプリント露光部１４に適したプリントデータを生成するプリントデータ生成部３６と、顧客の要望に応じて生の撮影画像データや画像処理が完了した処理済み撮影画像データなどをＣＤ−Ｒに書き込むための形式にフォーマットするフォーマッタ部３７などが挙げられる。
【００２３】
画像入力部３１は、撮影画像記録媒体がフィルム２ａの場合プレスキャンモードと本スキャンモードによってそれぞれの適切なタイミングで生成された低解像度と高解像度のスキャンデータを別々にメモリ３０に送り込み、それぞれの目的に合わせた前処理を行う。また、撮影画像記録媒体がメモリカード２ｂの場合、取り込んだ撮影画像にサムネイル画像（低解像度データ）が含まれている場合はモニタ２３での一覧表示などの目的で使用するため撮影画像の本データ（高解像度データ）とは別にメモリ３０に送り込むが、もしサムネイル画像データが含まれていない場合は本データから縮小画像を作り出してサムネイル画像データとしてメモリ３０に送り込む。また、この画像入力部３１には、写真プリント受付装置と呼ばれているセルフサービスで写真プリントを受け付ける装置も接続されており、この写真プリント受付装置から、プリントサイズやプリント枚数を記録しているプリント注文データと撮影条件などを記録している画像属性データとともに撮影画像を受け取ると、撮影画像をメモリ３０に転送し、プリント注文データや画像属性データをプリント管理部３２に転送する。
【００２４】
プリント管理部３２は、プリントサイズやプリント枚数、さらには個別の色補正などを管理するプリント注文処理ユニット６０、メモリ３０に展開された撮影画像に対して色補正やフィルタリング（ぼかしやシャープネスなど）などのフォトレタッチ処理を施す画像処理ユニット７０、及びメモリ３０に展開された撮影画像から顔領域を検出して、その座標位置や向きなどの顔検出情報及びこの顔検出情報から顔の造作配分を考慮して目を含む領域である赤目補正対象領域情報を与える顔検出モジュール８０も備えられている。
この顔検出モジュール８０は汎用的なものを使用することが可能であるが、ここでは、顔検出アルゴリズムに基づいて撮影画像中の顔と見なされる領域を検出してその顔位置とサイズ（顔位置を基点とした矩形画素領域の縦横サイズ）からなる顔領域データ、及び顔の正立・倒立といった構図姿勢を顔角度として表している顔姿勢データが顔検出情報として出力されるものが使われている。
【００２５】
プリント注文処理ユニット６０には、プリント枚数設定や色補正等をオペレータがマニュアルで行うプレジャッジプリント作業を管理するプレジャッジプリント管理部６１が組み込まれており、チェックないしは入力設定の対象となる撮影画像を数枚単位で表示するプレジャッジ画面や単一の撮影画像を拡大して表示する編集画面を生成する機能を有し、ＧＵＩ部３３と協働してこれらの画面をオペレータとの間での双方向コミュニケーションを可能とする形でモニタ２３に表示する。
【００２６】
画像処理ユニット７０には、上述した機能以外に、本発明よる赤目補正処理を実行する赤目補正モジュール９０が備えられており、この赤目補正モジュール９０には、図５に示すように、顔検出モジュール８０から送られてきた顔検出情報を用いて、さらに顔領域から額と鼻の間を縦長さとするとともに顔幅を横長さとする目を内在させている領域を赤目補正対象領域として選択する赤目補正対象領域選択部９１と、選択された赤目補正対象領域における肌色類似色をもつ画素を除去する肌色除去処理部として機能する境界色除去処理部９２と、肌色除去された領域をラベリングするとともにラベリング結果に対する幅高さチェックや面積比チェックなどの幾何学的チェックを通じて赤目補正対象領域を赤目補正すべき瞳領域に絞り込む赤目補正候補瞳領域絞り込み処理部９３と、前記赤目補正候補瞳領域から赤目補正対象画素群を決定する赤目補正候補領域評価手段９４と、赤目補正候補領域評価手段９４による評価を通じて赤目補正すべき画素として赤目補正マップに記録された画素群に対して彩度低減などを施して赤目補正を行う赤目補正部９５と、この赤目補正モジュール９０における各機能の動作を管理する赤目補正管理部９６とが構築されている。
【００２７】
なお、この実施形態では、赤目補正対象領域選択部９１は顔検出モジュール８０から送られてきた顔検出情報を用いてさらに限定された目を内在させている領域を赤目補正対象領域として自動的に選択するように構成されていたが、このような赤目補正対象領域をモニタ２３に表示された撮影画像を通じてマウス２５などを使ってオペレータが人為的に選択するような構成に変更しても良い。その場合、顔検出モジュール８０は省略され、赤目補正対象領域選択部９１はＧＵＩ部３３から送られてくる赤目補正対象領域データを受け取ることになる。
【００２８】
境界色除去処理部９２における処理手順が、図６に模式的に示されている。まず、目を内在させている正方形の赤目補正対象領域（図６（ａ）参照）を作り出し、この正方形領域に内接する円領域を設定する（図６（ｂ）参照）。この円領域の境界部分は、目の周りの肌の領域であると考えられるので、この境界部分の色をこの撮影画像における肌色とみなし、この肌色を含む肌色類似色を有する画素を赤目補正対象外領域（画素）として除去する。このように境界色つまり肌色類似色を有する画素を除去することにより、瞳領域ないしはそれに類する領域だけが以後の処理対象領域となる（図６（ｃ）参照）。
【００２９】
赤目補正候補領域評価手段９４は、赤目補正候補領域絞り込み部９３によって絞り込まれた赤目補正候補瞳領域の赤み度を算定する赤み度算定部９４ａと、赤み度が高い瞳領域のための赤目検出プログラムや赤み度が低い瞳領域のための赤目検出プログラムや高い瞳形状特性を有する瞳領域のための赤目検出プログラムなどを格納するプログラム格納部９４ｂと、赤み度算定部９４ａで算定された赤み度に基づいてプログラム格納部９４ｂから適切な赤目検出プログラムを選択するプログラム選択部９４ｃと、前記赤目補正候補瞳領域に対して前記選択された赤目検出プログラムを実行させるプログラム実行部９４ｄと、プログラム実行部９４ｄによる赤目検出プログラムの実行結果に基づいて前記赤目補正候補瞳領域から赤目補正対象画素群を決定する赤目検出評価部９４ｅとを備えている。
【００３０】
つまり、赤み度算定部９４ａは図１における処理（Ａ）を行うもので、Ｒ−Ｇ値に対して、第１閾値：Ｔｈ1と第２閾値：Ｔｈ2を用いて赤目補正候補瞳領域の赤み度を算定する。プログラム選択部９４ｃとプログラム実行部９４ｄとは、処理（Ａ）による赤みチェックに基づき、処理対象の瞳領域の赤み度が低い場合には赤み度が低い瞳領域のために用意されている赤目検出プログラムによる赤目検出処理を実行する処理（Ｂ）を行い、また、処理対象の瞳領域の赤み度が高い場合には赤み度が高い瞳領域のために用意されている赤目検出プログラムによる赤目検出処理を実行する処理（Ｃ）を行う。赤目検出評価部９４ｅは、選択実行された赤目検出プログラムによる赤目検出処理時に検出された赤目補正対象画素群の位置データが赤目補正マップとしてのメモリに記録する処理（Ｄ）を行う。
【００３１】
プログラム格納部９４ｂには、Ｒ−Ｇ差分値のヒストグラムにおける平均濃度値からその分散値分だけ高い濃度値レベルを超える濃度値をもつ画素のみが赤目補正対象画素の候補として取り扱われる赤目検出プログラムや、Ｒ−Ｇ差分値のヒストグラムにおける平均濃度値からその分散値の半分だけ高い濃度値レベルを超える濃度値をもつ画素のみが前記赤目補正対象画素の候補として取り扱われる赤目検出プログラムなどが格納されている。これらの赤目検出プログラムを最適に選択又は組み合わせて実行することにより、入力撮影画像によっては同じ赤目でも明るい赤目又は暗い赤目といったようにその色特性がかなり異なったとしても、それぞれの色特性に適したアルゴリズムで赤目検出ができる。
【００３２】
次に、上述した赤目補正モジュール９０における赤目補正処理の流れを図７のフローチャートを用いて説明する。
まず、顔検出モジュール８０と赤目補正対象領域選択部９１の働きで、撮影画像から赤目補正の対象となる顔領域内の目を内在させている部分領域（赤目補正対象領域）が選択される（＃０１）。さらに、境界色除去処理部（肌色除去処理部）９２によって、赤目補正対象領域から肌色類似色を有する画素が除去され、赤目補正のための処理対象領域が瞳領域に近づく（＃０２）。さらに、赤目補正候補瞳領域絞り込み処理部９３によって、赤目補正のための処理対象領域がほぼ瞳領域と推定される領域に絞り込まれる（＃０３）。赤目補正候補瞳領域絞り込み処理部９３によって設定された赤目補正候補瞳領域が赤目補正候補瞳領域評価手段９４によって、後で詳しく説明される手順で評価され、赤目補正の対象となる画素群の位置データが赤目補正マップ（メモリ）に記録される（＃０４）。赤目補正部９５により赤目補正マップを参照しながら赤目補正対象画素群が赤目補正される（＃０５）。
【００３３】
次に、図８のフローチャートを用いて、赤目補正候補瞳領域に対する評価処理を説明する。
まず、前処理の１つとして、赤目補正候補瞳領域のＲＧＢ画像データ（各色８ビット）から算出される前述したＲ−Ｇ値、第１閾値：Ｔｈ1、第２閾値：Ｔｈ2、そして第３閾値：Ｔｈ3（Ｔｈ1＜Ｔｈ3＜Ｔｈ2）を設定して、第１閾値：Ｔｈ1以上のＲ−Ｇ値をもつ画素の計数値であるＴｈ1計数値、第２閾値：Ｔｈ2以上のＲ−Ｇ値をもつ画素の計数値であるＴｈ2計数値、第３閾値：Ｔｈ3以上のＲ−Ｇ値をもつ画素の計数値であるＴｈ3計数値を求めておく（＃１０）。なお、ここでは、第１閾値：Ｔｈ1＝４８、第２閾値：Ｔｈ2＝９２、第３閾値：Ｔｈ3＝７０である。まず、Ｔｈ1計数値が「０」であるかどうかをチェックし（＃１２）、「０」なら赤目未検出としてこの処理を終了する。
【００３４】
次に、Ｔｈ2計数値が「０」であるかどうかをチェックする（＃１４）。Ｔｈ2計数値が「０」でない場合、つまり第２閾値：Ｔｈ2以上のＲ−Ｇ値をもつ画素が１つでもあれば、強い赤目現象が生じていると判定し、以下のステップで強く良好な赤目を検出する赤目検出処理を行う。また、Ｔｈ2計数値が「０」の場合、つまり第２閾値：Ｔｈ2以上のＲ−Ｇ値をもつ画素がなければ、弱い赤目現象が生じていると判定し、以下のステップで弱いが良好な赤目を検出する赤目検出処理を行う。
【００３５】
Ｔｈ2計数値が「０」でない場合、強く良好な赤目を検出する赤目検出処理が開始され、まず図９で示される第１赤目検出ルーチンが行われる（＃３０）。この第１赤目検出ルーチンでは、まず処理対象となる赤目補正候補瞳領域からＲ−Ｇ差分値のヒストグラムに基づく高赤み度領域が抽出される（＃１００）。処理対象である瞳領域に含まれる画素からＲ−Ｇ差分値のヒストグラムを作成し、その平均濃度値：Ｄaと分散値：σを求め、平均濃度値からその分散値分だけ高い濃度値レベル、つまりＤa＋σ以上の濃度値を有する画素を高赤み度領域として抽出する。抽出された高赤み度領域に対してラベリング処理を行う（＃１０１）。続いてラベリング結果の判定を行い、ラベリングされたものがなければ、赤目未検出フラグを立ててこのルーチンを終了する（＃１０２）。次に、ラベリングされた領域に孔が空いている場合はその孔を埋める処理を行い、孔が空いていない場合は赤目未検出フラグを立ててこのルーチンを終了する（＃１０３）。さらに、残ったラベリング結果に対して幾何学的形状に関するチェックを行い、赤目瞳としてふさわしくない場合赤目未検出フラグを立てるとともにそれ以外では赤目検出フラグを立ててこのルーチンを終了する（＃１０３）。第１赤目検出ルーチンから戻ると、赤目検出・未検出フラグをチェックし（＃３２）、赤目検出フラグが立っていると、その赤目検出と認定された領域に含まれる画素群の位置を赤目補正マップ（メモリ）に記録し（＃３４）、この赤目補正候補瞳領域に対する評価処理を終了する。赤目検出・未検出フラグのチェック（＃３２）で、赤目未検出フラグが立っている場合、この第１赤目検出ルーチンでの赤目検出が不能であったとして、次の赤目検出段階に入る。
【００３６】
この赤目検出段階では、まず図１０で示される第２赤目検出ルーチンが行われる（＃４０）。この第２赤目検出ルーチンでは、まず処理対象となる赤目補正候補瞳領域からＲ−Ｇ差分値のヒストグラムに基づく準赤み度領域が抽出される（＃２００）。前述した第１赤目検出ルーチンにおいて求められたＲ−Ｇ差分値の平均濃度値：Ｄaと分散値：σを用いて、平均濃度値からその分散値の半分だけ高い濃度値レベル、つまりＤa＋0.5×σ以上の濃度値を有する画素を準赤み度領域として抽出する。これにより前記高赤み度領域より拡張された準赤み度領域が抽出され、第１赤目検出ルーチンで検出されなかった赤目を探索することになる。まず、抽出された準赤み度領域に対して水平及び垂直方向における凹み部を埋め込む埋め込み処理を行い（＃２０１）、それから第１赤目検出ルーチンに準じた赤目検出判定を行い、赤目検出・未検出フラグを立てる（＃２０２）。第２赤目検出ルーチンから戻ると、赤目検出・未検出フラグをチェックし（＃４２）、赤目未検出フラグが立っている場合、この第２赤目検出ルーチンでの赤目検出が不能であったとして、この赤目補正候補瞳領域に対する評価処理を終了する。赤目検出・未検出フラグをチェックし（＃４２）、赤目検出フラグが立っていると、さらに赤目検出認定のための追加のチェックルーチン１による処理を受ける（＃４４）。この追加チェックルーチン１は図１１に示されているが、まず処理対象となっている領域に平滑化処理が施される（＃４４ａ）。続いて、幾何学的な形状判定として、サイズ判定（＃４４ｂ）、面積比判定（＃４４ｃ）、縦横比判定（＃４４ｄ）、横長目判定（＃４４ｅ）を順次受けて、赤目領域として認定すべきかどうかがチェックされる。各判定において判定条件に適合しなかった場合は、その時点でこの追加チェックルーチン１から出るとともに赤目補正候補瞳領域に対する評価処理を終了する。最後まで判定条件をクリアした場合、赤目検出に成功したとして、その赤目検出と認定された領域に含まれる画素群の位置を赤目補正マップ（メモリ）に記録し（＃４６）、この赤目補正候補瞳領域に対する評価処理を終了する。
【００３７】
先ほどのステップ＃１４におけるＴｈ2計数値が「０」であるかどうかのチェックにおいて、Ｔｈ2計数値が「０」の場合、弱いが良好な赤目を検出する赤目検出処理が開始され、まず図９で示される前述した第１赤目検出ルーチンが行われる（＃５０）。この第１赤目検出ルーチンから戻ると、赤目検出・未検出フラグをチェックし（＃５２）、赤目検出フラグが立っていると、さらなる赤目検出チェックとして図１２に示された追加チェック２が行われる（＃５４）。この追加チェックルーチン１は図１２に示されているが、まず処理対象となっている領域に平滑化処理が施される（＃５４ａ）。続いて、幾何学的な形状判定として、処理すべき赤目としてふさわしくない規定外のサイズのものを赤目検出から外すサイズ判定（＃５４ｂ）及び目尻や目頭に発生する赤みは赤目検出から外すための重心位置判定（＃５４ｃ）を順次受けて、赤目領域として認定すべきかどうかがチェックされる。各判定において判定条件に適合しなかった場合は、その時点でこの追加チェックルーチン２から出るとともに赤目補正候補瞳領域に対する評価処理も終了する。最後まで判定条件をクリアした場合、赤目検出に成功したとして、その赤目検出と認定された領域に含まれる画素群の位置を赤目補正マップ（メモリ）に記録し（＃５６）、この赤目補正候補瞳領域に対する評価処理を終了する。ステップ＃５２における赤目検出・未検出フラグのチェックにおいて、赤目未検出フラグが立っていると、さらに、Ｔｈ3計数値が「０」であるかどうかをチェックする（＃５８）。Ｔｈ3計数値が「０」でない場合、つまり第２閾値：Ｔｈ2以上のＲ−Ｇ値をもつ画素は存在していないにしても第３閾値：Ｔｈ3以上のＲ−Ｇ値をもつ画素が１つでもあれば、弱い赤目現象ではあるがさらに赤目検出を行う必要があるとみなして、以下のステップでさらに別な弱い赤目を検出する赤目検出段階に入る。また、Ｔｈ3計数値が「０」の場合、つまり第３閾値：Ｔｈ3以上のＲ−Ｇ値をもつ画素がなければ、もはや赤目検出を行う必要がないとして、この赤目補正候補瞳領域に対する評価処理を終了する。
【００３８】
弱い赤目現象に対するさらなる赤目検出段階に入ると、まず、先に説明した、図１０で示される第２赤目検出ルーチンが行われる（＃６０）。この第２赤目検出ルーチンから戻ると、赤目検出・未検出フラグをチェックし（＃６２）、赤目検出フラグが立っていると、さらに赤目検出認定のための追加のチェックルーチン３による処理を受ける（＃６４）。この追加チェックルーチン３は図１３に示されているが、まず処理対象となっている領域に平滑化処理が施される（＃６４ａ）。続いて、幾何学的な形状判定として、サイズ判定（＃６４ｂ）、面積比判定（＃６４ｃ）、縦横比判定（＃６４ｄ）、重心位置判定（＃６４ｅ）、横長目判定（＃６４ｆ）を順次受けて、赤目領域として認定すべきかどうかがチェックされる。つまり、この追加のチェックルーチン３は図１１に示された追加チェックルーチン１に較べて、重心位置判定が付加されていることで異なっている。各判定において判定条件に適合しなかった場合は、その時点でこの追加チェックルーチン３から出るとともに赤目補正候補瞳領域に対する評価処理を終了する。最後まで判定条件をクリアした場合、赤目検出に成功したとして、その赤目検出と認定された領域に含まれる画素群の位置を赤目補正マップ（メモリ）に記録し（＃６６）、この赤目補正候補瞳領域に対する評価処理を終了する。
【００３９】
上述したように、この赤目補正候補領域に対する評価処理では、処理対象領域に含まれる画素のＲ−Ｇ差分値（濃度値）の分布状態を所定の閾値を用いて赤み度を判定し、赤み度が高い場合には赤み度が高い瞳領域のために適した赤目検出アルゴリズム（ステップ＃３０〜＃３２を適用し、そこで赤目未検出の場合さらに別な赤目検出アルゴリズム（ステップ＃４０〜＃４４を適用する。赤み度が低い場合には赤み度が低い瞳領域のために適した赤目検出アルゴリズム（ステップ＃５０〜＃５６を適用し、そこで赤目未検出の場合さらに別な赤目検出アルゴリズム（ステップ＃６０〜＃６４）を適用する。
【００４０】
上述した実施の形態では、本発明による赤目補正技術は、印画紙Ｐに対し、露光エンジンを備えたプリント露光部１４で撮影画像の露光を行い、この露光後の印画紙Ｐを現像処理する、いわゆる銀塩写真プリント方式の写真プリント装置に採用されていたが、もちろん、例えば、フィルムや紙にインクを吐出して画像を形成するインクジェットプリント方式や感熱転写シートを用いた熱転写方式など、種々の写真プリント装置にも採用することができる。
【図面の簡単な説明】
【００４１】
【図１】本発明による赤目補正技術の基本原理を説明する説明図
【図２】本発明による赤目補正技術を採用した写真プリント装置の外観図
【図３】写真プリント装置のプリントステーションの構成を模式的に示す模式図
【図４】写真プリント装置のコントローラ内に構築される機能要素を説明する機能ブロック図
【図５】赤目補正モジュールの機能構成を示す機能ブロック図
【図６】境界色除去処理を説明する説明図
【図７】赤目補正モジュールにおける赤目補正処理のフローチャート
【図８】赤目補正候補瞳領域に対する評価処理のフローチャート
【図９】第１赤目検出処理のフローチャート
【図１０】第２赤目検出処理のフローチャート
【図１１】追加チェック処理１のフローチャート
【図１２】追加チェック処理２のフローチャート
【図１３】追加チェック処理３のフローチャート
【符号の説明】
【００４２】
７０：画像処理ユニット
８０：顔検出モジュール
９０：赤目補正モジュール
９１：赤目補正対象領域選択部
９２：境界色除去処理部（肌色除去処理部）
９３：赤目補正候補瞳領域絞り込み処理部
９４：赤目補正候補領域評価手段
９４ａ：赤み度算定部
９４ｂ：プログラム格納部
９４ｃ：プログラム選択部
９４ｄ：赤目検出実行部
９４ｅ：赤目検出評価部
９５：赤目補正部
９６：赤目補正管理部
【図１】
2008059361.tif 000003
【図２】
2008059361.tif 000004
【図３】
2008059361.tif 000005
【図４】
2008059361.tif 000006
【図５】
2008059361.tif 000007
【図６】
2008059361.tif 000008
【図７】
2008059361.tif 000009
【図８】
2008059361.tif 000010
【図９】
2008059361.tif 000011
【図１０】
2008059361.tif 000012
【図１１】
2008059361.tif 000013
【図１２】
2008059361.tif 000014
【図１３】
2008059361.tif 000015