JP3994280B2 - 赤目修正装置、赤目修正方法および赤目修正プログラム - Google Patents
赤目修正装置、赤目修正方法および赤目修正プログラム Download PDFInfo
- Publication number
- JP3994280B2 JP3994280B2 JP2002329253A JP2002329253A JP3994280B2 JP 3994280 B2 JP3994280 B2 JP 3994280B2 JP 2002329253 A JP2002329253 A JP 2002329253A JP 2002329253 A JP2002329253 A JP 2002329253A JP 3994280 B2 JP3994280 B2 JP 3994280B2
- Authority
- JP
- Japan
- Prior art keywords
- eye
- image data
- red
- color
- correction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
- Image Processing (AREA)
- Processing Of Color Television Signals (AREA)
- Facsimile Image Signal Circuits (AREA)
- Color Image Communication Systems (AREA)
- Image Analysis (AREA)
Description
【発明の属する技術分野】
本発明は、画素別に多階調とされた画像データで表現されるカラーの画像に生じた赤目を修正する赤目修正装置、赤目修正方法および赤目修正プログラムに関する。
【0002】
【従来の技術】
従来より、夜間等暗い環境でストロボを発光させて人をデジタルカメラ等で撮影すると、人の目の部分に赤目が生じることがある。赤目は、いわゆる黒目の部分が赤色や金色になった現象をいう。このような赤目を修正する装置として、赤目修正を行う矩形領域を指定し、同矩形領域から色相が所定範囲で彩度が所定値以上となる部分を赤目領域として自動抽出し、黒、青、等の所定の色に変換する装置が知られている(例えば、特許文献1参照)。同装置は、赤目領域を自動抽出できなかった場合に、手動で赤目領域を指定することができるようにしてあり、赤目を修正する操作効率を向上させるようにしている。
また、目を含む領域から目の領域を自動的に抽出する技術も知られている(例えば、特許文献2参照)。
【0003】
【特許文献1】
特開2001−148780号公報(段落0019−0052、第1−7図)
【特許文献2】
特開平10−75374号公報(段落0015−0049、第1−3図)
【0004】
【発明が解決しようとする課題】
上述した従来の技術においては、赤目領域を所定の色に置き換えた画像を見ると違和感が感じられるという問題があった。特に、赤目でない領域も一律に所定の色に置き換えられるため、赤目修正を行った領域の内外間で色が急変する箇所が生じると違和感の大きな画像となってしまうことになる。そこで、赤目が生じた画像に対して違和感を感じさせないように赤目を修正したいという希望があった。
本発明は、上記課題にかんがみてなされたもので、目の部分に赤目が生じた画像に対して、より確実に違和感を感じさせないように赤目を修正することが可能な赤目修正装置、赤目修正方法および赤目修正プログラムの提供を目的とする。
【0005】
【課題を解決するための手段】
上記目的を達成するため、請求項1にかかる発明は、画素別に多階調とされた画像データで表現されるカラーの画像のうち赤目を修正する赤目修正装置であって、上記カラーの画像のうち赤目を修正する修正領域を表す修正領域情報に対応する修正領域の上記画素について上記画像データが当該画像データの色空間内において赤目の色とする範囲を表す範囲情報に対応する範囲内であるとき、元の画像データから目の色を表す画像データに置換するとともに同画素が同修正領域の境界部分である場合には同画像データの置換割合を同画素が同修正領域に含まれる割合とする色置換手段を具備する構成としてある。
【0006】
本赤目修正装置は、画素別に多階調とされた画像データで表現されるカラーの画像に生じた赤目を修正する。ここで、上記カラーの画像のうち赤目を修正する修正領域を表す修正領域情報に対応する修正領域の画素について、画像データが当該画像データの色空間内において赤目の色とする範囲を表す範囲情報に対応する範囲内であるとき、以下のようにして画像データが置換される。
すなわち、元の画像データから目の色を表す画像データに置換されるが、置換対象の画素が修正領域の境界部分である場合には、画像データの置換割合は同画素が同修正領域に含まれる割合とされる。
従って、赤目を修正する領域の境界部分が赤目の色とする範囲内であるときに画像データは完全には目の色を表すデータに置き換えられないので、赤目を修正する領域の内外で色は急変せず、スムーズに変化する。その結果、目の部分に赤目が生じた画像に対して、より確実に違和感を感じさせないように赤目を修正することが可能となる。
【0007】
上記目の色は、黒、茶、青、等、様々な色が考えられる。また、置き換える目の色は、一様であってもよいし、模様があってもよいし、より高画質となるように虹彩部分と瞳孔部分とが別の色にされていてもよい。
【0008】
上述した手段により赤目修正装置を構成する場合、請求項2にかかる発明のように構成してもよい。本赤目修正装置は、画素別に複数の要素色のそれぞれについて多階調とされた画像データで表現されるカラーの画像に生じた赤目を修正する。ここで、取得された修正領域情報に対応する修正領域の画素について、各画素の画像データが置換対象として順次対象画素が移動させられる。そして、対象画素の画像データが上記取得された範囲情報に対応する範囲内であるとき、以下のようにして画像データが置換される。
すなわち、対象画素が全て修正領域に含まれる場合には、対象画素について元の画像データから目の色を表す画像データに置換される。一方、対象画素が修正領域の境界部分である場合には、対象画素について元の画像データから目の色を表す画像データに置換されるにあたり、画像データの置換割合は同画素が同修正領域に含まれる割合とされる。従って、上記と同様の作用により、赤目を修正する領域の内外で色が急変せず、スムーズに変化する。
【0009】
上記複数の要素色は様々考えられ、例えば、レッド(R)とグリーン(G)とブルー(B)の3色から構成されてもよいし、輝度データとブルーの色差データとレッドの色差データから構成されてもよい。シアン(C)とマゼンタ(M)とイエロー(Y)の3色から構成されてもよいし、さらにブラック(K)を加えた4色から構成されてもよい。また、デバイスに依存しないLab空間の各成分のように明度データと二種類の色度データから構成されてもよい。
【0010】
ここで、上記色置換手段は、上記画素が上記修正領域の境界部分である場合には同画素について元の画像データから上記目の色を表す画像データに置換するにあたり同画像データの置換割合を同画素が同修正領域に含まれる割合とする。すなわち、境界部分の画素において元の画像データから目の色を表す画像データに置換する割合は、同画素が修正領域に含まれる割合とされるので、簡易な構成ながら修正領域の境界部分を自然な感じにさせるように境界部分の画素の画像データを置換することができる。
【0011】
また、境界部分の画素の画像データを置換する一例として、上記色置換手段は、上記画素を所定数の区分領域に略等分割し、中心が上記修正領域の内部となる区分領域の同区分領域全ての数に対する割合を上記画像データの置換割合とする構成としてもよい。すなわち、画素を所定数の区分領域に略等分割し、境界部分の画素において元の画像データから目の色を表す画像データに置換する割合を中心が修正領域の内部となる区分領域の数の割合とすることにより、簡易に求めることができる。
【0012】
置換後の画像データの明るさを表す明るさ情報を取得する明るさ情報取得手段が設けられると、色置換手段は、取得された明るさ情報に対応した明るさを表す画像データに置換する構成としてもよい。すなわち、置換後の画像データは、明るさ情報に対応した明るさを表す画像データとなる。
ここで、上記明るさ情報取得手段は、上記色置換手段にて置換された後の画像データの輝度を設定する操作入力を受け付けて同輝度を表す情報とされた上記明るさ情報を取得し、上記色置換手段は、上記目の色を表す画像データに置換するにあたり、上記取得された明るさ情報に対応した輝度の画像にさせる画像データに置換する構成としてもよい。すなわち、置換後の画像データは、明るさ情報に対応した輝度の画像にさせる画像データとなる。従って、明るさ情報に応じて置換後の画像データの輝度を調整することができるので利便性が向上するとともに、さらに違和感なく赤目を修正することが可能となる。
【0013】
ところで、上記修正領域の一例として、修正領域を略円形の領域とし、修正領域情報を、略円形とされた修正領域の径を表す情報と、画像における修正領域の中心座標を表す情報とから構成してもよい。ここで、径を表す情報は、直径を表す情報であってもよいし、半径を表す情報であってもよい。
上記のような修正領域情報を取得する構成の一例として、修正領域取得手段は、上記略円形とされた修正領域の半径を設定する操作入力を受け付けて上記径を表す情報を取得するとともに、上記画像を表示して表示された画像の赤目の中心位置を指定する操作入力を受け付けて上記中心座標を表す情報を取得してもよい。すると、ユーザは簡易な構成で修正領域を設定することが可能となる。
むろん、修正領域は、上記のように円領域とする以外にも様々な形状が考えられ、例えば、楕円状の領域、矩形領域、多角形状の領域等であってもよい。
【0014】
赤目の色とする範囲を表す範囲情報も、様々な構成が考えられる。その一例として、上記範囲情報は、上記画像データの色空間内において赤目の色とする範囲が所定の赤目目標色からの距離として表された情報とされ、上記色置換手段は、上記色空間内における上記赤目目標色の座標と上記修正領域の画素の画像データとから同赤目目標色と同画素の色との距離を算出し、当該距離が上記取得された範囲情報に対応する距離内であるとき、上記画像データの置換を行う構成としてもよい。すなわち、赤目目標色と画素の色との距離が算出され、同距離が範囲情報に対応する距離内であるときに画像データの置換が行われる。
【0015】
画像データがRGBのそれぞれについて多階調とされたデータであるときの赤目目標色と画素の色との距離Distanceを算出するための好適な演算式の一例として、請求項7にかかる発明のように構成してもよい。ここで、NをN+1やN−1に変更したり、N+1をNに変更したり等、演算式の各係数の僅かな違いは距離Distanceの値にほとんど影響しないので、請求項7に記載した発明に含まれる。また、上記演算式の右辺に所定係数が乗じられた式であっても、赤目目標色と画素の色との距離を表すことになるので、請求項7に記載した発明に含まれる。
【0016】
上記演算式を使用して修正領域の画素の画像データが範囲情報に対応する距離内であるか否かを判断するための好適な構成の一例として、請求項8にかかる発明のように構成してもよい。画像データの色空間内で赤目目標色から最も長くなる距離に対する距離Distanceの比を基準として画像データが範囲情報に対応する範囲内であるか否かを判断すればよいので、範囲情報を0〜1の範囲とすることができる。
【0017】
なお、画像データを置換する目の色が複数設けられる場合、上記色置換手段は、上記複数の目の色からいずれかの色を選択する入力を受け付けて置換後の色を表す情報を取得し、当該情報に対応した色となるように上記画像データを置換する構成としてもよい。すると、赤目部分をより希望に沿った目の色に置換することができる。
また、どこの国または地域の人か等の選択入力を受け付け、入力された人に対応する目の色の画像データに置換するようにしてもよい。すると、その人に最適な目の色に修正することが可能となる。
【0018】
ところで、上記修正領域取得手段は、各画素の画像データに基づいて上記画像から目の領域を決定し、当該領域を表す情報を上記修正領域情報として取得する構成としてもよい。すなわち、各画素の画像データに基づいて画像から目の領域が修正領域として決定されるので、自動的に赤目を修正する領域が抽出されることになる。決定される目の領域は、白目を含めた領域であってもよいし、虹彩の領域であってもよい。
【0019】
また、上記色置換手段は、赤目が生じていない別の画像の画像データを取得し、当該画像データに基づいて同別の画像から虹彩の領域を決定し、当該領域の画像データに基づいて上記目の色を表す情報を取得するとともに、上記修正領域の画素について上記画像データが上記取得された範囲情報に対応する範囲内であるとき、元の画像データから同目の色を表す情報に対応した画像データに置換するとともに同画素が同修正領域の境界部分である場合には同画像データの置換割合を同画素が同修正領域に含まれる割合とする構成としてもよい。赤目が生じていない別の画像から目の色を表す情報が取得され、赤目部分がこの目の色に修正される。
ここで、赤目を修正しようとする画像と別の画像との人が同一人物であるか否かを判定し、同一人物であるときに画像データを置換するようにしてもよい。
【0020】
このように、他の画像から目の色を表す情報を取得して赤目を修正すると、より確実に違和感を感じさせないようになるので、画素別に多階調とされた画像データで表現されるカラーの第一の画像とは別の第二の画像の画像データを取得し、当該画像データに基づいて同第二の画像から虹彩の領域を決定し、当該領域の画像データに基づいて目の色を表す情報を取得するとともに、同第一の画像のうち赤目を修正する修正領域を表す修正領域情報に対応する修正領域の画素について同第一の画像の画像データが当該画像データの色空間内において赤目の色とする範囲を表す範囲情報に対応する範囲内であるとき、当該第一の画像の画像データを同目の色を表す情報に対応した画像データに置換する色置換手段を具備する構成としてもよい。すなわち、画素別に多階調とされた画像データで表現されるカラーの第一の画像とは別の第二の画像の画像データが取得され、当該画像データに基づいて同第二の画像から虹彩の領域が決定され、当該領域の画像データに基づいて目の色を表す情報が取得されるとともに、同第一の画像のうち赤目を修正する修正領域を表す修正領域情報に対応する修正領域の画素について同第一の画像の画像データが当該画像データの色空間内において赤目の色とする範囲を表す範囲情報に対応する範囲内であるとき、当該第一の画像の画像データを同目の色を表す情報に対応した画像データに置換される。
また、上記第一の画像とは別の第二の画像の画像データが取得され、取得された画像データに基づいて同第二の画像から虹彩の領域が決定され、決定された領域の画像データに基づいて目の色を表す情報が取得されてもよい。取得された修正領域情報に対応する修正領域の画素について、上記第一の画像の画像データが上記取得された範囲情報に対応する範囲内であるとき、当該第一の画像の画像データから第二の画像からの目の色を表す情報に対応した画像データに置換されてもよい。言い換えると、赤目が生じていない別の画像から目の色を表す情報が取得され、赤目部分がこの目の色に修正される。
【0021】
また、上記明るさ情報取得手段が設けられていると、置換後の画像データは明るさ情報に対応した明るさを表す画像データとなり、さらに違和感なく赤目を修正することが可能となる。すなわち、取得された修正領域情報に対応する修正領域の画素について、画像データが上記取得された範囲情報に対応する範囲内であるとき、元の画像データから、目の色を表す画像データであって上記取得された明るさ情報に対応した明るさを表す画像データに置換される。
さらに、画素別に多階調とされた画像データで表現されるカラーの画像のうち赤目を修正する赤目修正装置であって、複数の地域からいずれかの地域を選択する入力を受け付け、地域を表す情報とその地域の人の目の色を表す画像データとを対応させた地域別目の色テーブルを参照して同受け付けた地域の人に対応する目の色を表す画像データを取得するとともに、上記赤目を修正するカラーの画像うち赤目を修正する修正領域を表す修正領域情報に対応する修正領域の上記画素について同カラーの画像の画像データが当該画像データの色空間内において赤目の色とする範囲を表す範囲情報に対応する範囲内であるとき、当該カラーの画像の画像データから同取得した目の色を表す画像データに置換する色置換手段を具備する構成としてもよい。
すなわち、複数の地域からいずれかの地域を選択する入力が受け付けられ、地域を表す情報とその地域の人の目の色を表す画像データとを対応させた地域別目の色テーブルを参照して同受け付けた地域の人に対応する目の色を表す画像データが取得されるとともに、上記赤目を修正するカラーの画像うち赤目を修正する修正領域を表す修正領域情報に対応する修正領域の上記画素について同カラーの画像の画像データが当該画像データの色空間内において赤目の色とする範囲を表す範囲情報に対応する範囲内であるとき、当該カラーの画像の画像データから同取得した目の色を表す画像データに置換される。これにより、入力された地域の人に対応する目の色に修正可能となるので、便利である。従って、赤目部分をより希望に沿った目の色に置換することができ、より確実に違和感を感じさせないように赤目を修正することが可能となる。
【0022】
ところで、上述した赤目修正装置は、単独で実施される場合もあるし、ある機器に組み込まれた状態で他の方法とともに実施されることもあるなど、発明の思想としては各種の態様を含むものであって、適宜、変更可能である。
また、上述した赤目を修正する際の手法は、所定の手順に従って処理を進めていくうえで、その根底にはその手順に発明が存在するということは当然である。従って、本発明は方法としても適用可能であり、請求項12にかかる発明においても、基本的には同様の作用となる。
【0023】
本発明を実施しようとする際に、赤目修正装置にて所定のプログラムを実行させる場合もある。そこで、そのプログラムとしても適用可能であり、請求項13にかかる発明においても、基本的には同様の作用となる。さらに、同プログラムを記録した媒体が流通し、同記録媒体からプログラムを適宜コンピュータに読み込むことが考えられる。すなわち、そのプログラムを記録したコンピュータ読み取り可能な記録媒体としても適用可能であり、基本的には同様の作用となる。
むろん、請求項2〜請求項11に記載された構成を上記方法やプログラムやプログラムを記録した媒体に対応させることも可能であることは言うまでもない。
ここで、上記記録媒体は、磁気記録媒体や光磁気記録媒体の他、今後開発されるいかなる記録媒体であってもよい。一次複製品、二次複製品などの複製段階も問わない。一部がハードウェアで実現される場合や、一部を記録媒体上に記録しておいて必要に応じて適宜読み込む場合も本発明の思想に含まれる。
【0024】
【発明の効果】
以上説明したように、請求項1、請求項2、請求項12、請求項13にかかる発明によれば、目の部分に赤目が生じた画像に対して、より確実に違和感を感じさせないように赤目を修正することが可能となり、修正領域の境界部分を自然な感じにさせることができる。
請求項3にかかる発明によれば、境界部分の画素の画像データを置換する処理の簡易な一例を提供することができる。
請求項4にかかる発明によれば、明るさ情報に応じて修正後の画像の明るさを調整することができるので利便性が向上するとともに、さらに違和感なく赤目を修正することが可能となる。
【0025】
請求項5にかかる発明によれば、簡易な構成にて修正領域を容易に特定することができる。
請求項6にかかる発明によれば、画素の色が赤目目標色から範囲情報に対応する距離内であるときに画像データが置換されるので、より確実に修正すべき赤目部分を目の色に修正することができる。
請求項7にかかる発明によれば、赤目目標色と画素の色との距離を算出するための好適な演算式を提供することができ、より確実に修正すべき赤目部分を目の色に修正して、良好な画質の修正画像を得ることが可能となる。
請求項8にかかる発明によれば、赤目とする範囲を0〜1の範囲で表現することができるので、構成を簡易にさせることができる。
【0026】
請求項9にかかる発明によれば、赤目部分をより希望に沿った目の色に置換することができ、利便性が向上するとともに、より確実に違和感を感じさせないように赤目を修正することが可能となる。
請求項10にかかる発明によれば、自動的に赤目を修正する領域が抽出されるので、赤目を修正する作業が軽減され、利便性が向上する。
請求項11にかかる発明によれば、赤目部分は赤目が生じていない別の画像の目の色に修正されるので、より確実に違和感を感じさせないように赤目を修正することが可能となる。
【0027】
【発明の実施の形態】
以下、下記の順序に従って本発明の実施形態を説明する。
(1)赤目修正装置を含むシステム構成:
(2)赤目修正装置の構成:
(3)赤目修正装置の動作:
(4)まとめ:
【0028】
(1)赤目修正装置を含むシステム構成:
図1は、本発明の一実施形態にかかる赤目修正装置と周辺装置とからなるシステムの概略構成を示している。本システムは、本発明にいう赤目修正装置となるパーソナルコンピュータ(PC)10、画像出力機器であるカラー印刷可能なインクジェットプリンタ20、デジタルカメラ30等から構成されている。本赤目修正装置は、デジタルカメラ等で人を撮影したときに目の部分に生じる赤目を目の色に修正する装置であり、ユーザが簡単に赤目を修正できるように構成されたものである。なお、本赤目修正装置のユーザは、コンピュータ画像修正についての素人であることを前提としており、プロの写真家等も含まれる。むろん、コンピュータ画像修正について熟知した人であっても、本装置により容易に赤目を修正することができる。
PC10は演算処理の中枢をなすCPU11を備えており、このCPU11はシステムバス10aを介してPC10全体の制御を行う。同バス10aには、ROM12、RAM13、CD−ROMドライブ15、フレキシブルディスク(FD)ドライブ16、各種インターフェイス(I/F)17a〜e等が接続されている。また、ハードディスクドライブを介してハードディスク(HD)14も接続されている。本実施形態のコンピュータにはいわゆるデスクトップ型PCを採用しているが、コンピュータとしては一般的な構成を有するものを採用可能である。
【0029】
HD14には、ソフトウェアとしてオペレーティングシステム(OS)やアプリケーションプログラム(APL)等が格納されている。実行時には、CPU11がこれらのソフトウェアを適宜RAM13に転送し、RAM13を一時的なワークエリアとして適宜アクセスしながらプログラムを実行する。なお、本実施形態の赤目修正プログラムはAPLとOSとが協同して各種機能を実現させるが、APL単体であってもよいし、OSに組み込まれていてもよい。
周辺機器I/F(PIF)17aには、デジタルカメラ30や、図示しないカラースキャナ等が接続されるようになっている。CRTI/F17bには画像データに基づく画像を表示する表示手段であるディスプレイ18aが接続され、入力I/F17cにはキーボード18bやマウス18cが操作用入力機器として接続されている。また、プリンタI/F17eには、例えばパラレルI/Fケーブルを介してプリンタ20が接続されている。
なお、HD14は本発明にいう赤目修正プログラムを記録した媒体となるが、同媒体は、例えば、CD−ROM、FD16a、光磁気ディスク、不揮発性メモリ、等であってもよい。むろん、モデム等の通信I/F17dをインターネット網に接続し、所定のサーバにアクセスして本赤目修正プログラムをダウンロードして実行させることも可能である。
【0030】
赤目修正が行われた画像を印刷するプリンタ20は、シアン(C)、マゼンタ(M)、イエロー(Y)、ブラック(K)のインクを使用して、メディアに対して印刷を行う。むろん、4色以外のインクを使用するプリンタや、インク通路内に泡を発生させてインクを吐出するバブル方式のプリンタや、レーザープリンタ等、種々の画像出力機器を採用可能である。
図2に示すように、プリンタ20では、CPU21、ROM22、RAM23、通信I/O24、コントロールIC25、ASIC26、I/F27、等がバス20aを介して接続されている。通信I/O24はPC10のプリンタI/F17eと接続されており、プリンタ20は通信I/O24を介してPC10から送信されるCMYKに変換されたデータやページ記述言語等からなる印刷ジョブを受信する。ASIC26は、CPU21と所定の信号を送受信しつつヘッド駆動部26aに対してCMYKデータに基づく印加電圧データを出力する。すると、ヘッド駆動部26aは、印刷ヘッドに内蔵されたピエゾ素子への印加電圧パターンを生成し、印刷ヘッドにインクを吐出させる。I/F27に接続されたキャリッジ機構27aや紙送り機構27bは、印刷ヘッドを主走査させたり、メディアを順次送り出して副走査を行ったりする。そして、CPU21が、ROM22に書き込まれたプログラムに従って各部を制御する。
【0031】
PC10では、以上のハードウェアを基礎としてバイオスが実行され、その上層にてOSとAPLとが実行される。OSには、プリンタI/F17eを制御するプリンタドライバ等の各種のドライバ類が組み込まれ、ハードウェアの制御を実行する。プリンタドライバは、プリンタI/F17eを介してプリンタ20と双方向の通信を行うことが可能であり、APLから印刷データを受け取って印刷ジョブを作成し、プリンタ20に送出する。
【0032】
(2)赤目修正装置の構成:
図3は、上記赤目修正プログラムの機能により実現される赤目修正装置の構成を模式的に示している。赤目修正プログラムは複数のモジュールから構成されており、各モジュールに対応して本発明にいう各種手段U1〜U4が構成されている。基本的には、手段U1〜U3が取得する情報に基づいて、色置換手段U4が画像データに対して赤目部分を目の色に置き換える処理を行う。
本実施形態では、sRGB色空間で定義されるRGBから構成された画像データに対して上記処理を行うことにしている。同画像データは、横m0×縦n0画素(m0,n0は2以上の整数)とされたドットマトリクス状の多数の画素別に複数の要素色RGBのそれぞれについて多階調(例えば、階調値0〜255の256階調)とされ、カラーの画像を表現するデータとされている。むろん、YUV表色系における輝度(Y成分)、Bの色差(U成分)、Rの色差(V成分)から構成された画像データ等に対して上記処理を行うことも可能である。また、画像データの各成分も様々な階調数とすることが可能であり、256階調以外にも、例えば1024階調等としてもよい。
【0033】
修正領域取得手段U1は、上記画像データで表現される画像のうち、目の部分に生じる赤目を修正する修正領域を表す修正領域情報を取得する。本実施形態では、修正領域を略円形の領域として、修正領域の半径Radius(径を表す情報)と、修正領域の中心座標を表す情報とを修正領域情報としている。これらの情報は、PC10への操作入力により取得されるようになっている。
また、各画素の画像データに基づいて画像から目の領域を決定し、当該目の領域を表す情報を修正領域情報として取得することも可能である。目の領域を決定する手法は様々考えられる。例えば、特開平10−75374号公報の段落0030に開示されているように、明度の低い画素の連結性等に基づいて目の領域の画像データだけを抽出することにより、画像から目の領域を決定することができる。また、目の色は肌色ではないことから、肌色の領域(例えば、画像データの各RGB値が所定範囲内に入る画素の領域)を抽出し、抽出した肌色の領域に囲まれた領域が所定の目の形状と略一致するときに、その囲まれた領域を目の領域と決定し、当該目の領域を表す情報を修正領域情報として取得してもよい。
【0034】
赤目範囲取得手段U2は、3要素色RGBのそれぞれを座標軸とする画像データの色空間内において、赤目の色とする範囲を表す範囲情報を取得する。本実施形態では、同色空間内において赤目の色とする範囲が所定の赤目目標色からの距離として表されている。そして、同距離の相対的な値が操作入力により受け付けられ、入力された値が赤目の色とする許容度Tolerance(範囲情報)として取得されるようになっている。
【0035】
明るさ情報取得手段U3は、色置換手段にて置換された後の画像データの明るさを表す明るさ情報を取得する。本実施形態では、明るさ情報を強度Intensityとして数値表現するとともに、同強度を輝度を表す情報としているが、他にも明度を表す情報を明るさ情報とすることも可能である。同強度は、数値として操作入力により受け付けられるようになっている。
【0036】
図4は、上記手段U1〜U3が各種情報の入力を受け付けるための設定入力画面の表示例を示している。同画面には、画像表示欄91a、十字ポインタ91b、目の色選択欄91c、半径入力欄91d、許容度入力欄91e、強度入力欄91f、各種ボタン91g〜jが設けられている。
画像表示欄91aでは、入力した画像データが表示されるようになっている。同表示欄91a中に十字ポインタ91bが表示されるようになっており、同ポインタ91bをマウスにて移動させることにより、修正領域の中心座標を設定入力することが可能となっている。
【0037】
目の色選択欄91cでは、修正後の目の色を選択可能となっている。目の色の選択肢としては、黒、茶、青等の他に、ユーザ設定や、日本人等の地域別の人や、別の画像等がある。ユーザ設定が選択入力された場合には、色パレットが表示され、所望の目の色を作成することが可能である。地域別の人が選択入力された場合には、入力された地域の人に対応する目の色が選択されるようになっている。別の画像が選択入力された場合には、別の画像から目の色を表す情報が取得されるようになっている。
半径入力欄91dでは、左右方向にスライド動可能なつまみが表示されるようになっている。同つまみをマウスにて移動させることにより、修正領域の半径の大きさを調節可能となっている。本実施形態では、つまみを左側に移動させると半径が小さくなり、右側に移動させると半径が大きくなるようになっている。
【0038】
許容度入力欄91eでも、左右方向にスライド動可能なつまみが表示されるようになっている。同つまみをマウスにて移動させることにより、赤目とする範囲を表す許容度Toleranceを調節可能となっている。本実施形態では、許容度は0〜1の値とされ、つまみを左側に移動させると許容度が小さくなり(左端が0)、右側に移動させると許容度が大きくなるようになっている(右端が1)。
強度入力欄91fでも、左右方向にスライド動可能なつまみが表示されるようになっている。同つまみをマウスにて移動させることにより、明るさを表す強度Intensityを調節可能となっている。本実施形態では、強度は0〜1の値とされ、つまみを左側に移動させると強度が小さくなり(左端が0)、右側に移動させると強度が大きくなるようになっている(右端が1)。
【0039】
領域抽出ボタン91gがマウスにてクリック操作されると、画像から目の領域が自動的に抽出されるようになっている。画像参照ボタン91hがクリック操作されると、赤目が生じていない別の画像から目の色を表す情報が自動的に取得されるようになっている。修正実行ボタン91iがクリック操作されると、設定された条件に応じて赤目部分が目の色に修正されるようになっている。
【0040】
図3に戻って、説明を続ける。色置換手段U4は、取得された修正領域情報に対応する修正領域の画素について、各画素の画像データを置換対象として順次対象画素を移動させながら、赤目部分すなわち対象画素の画像データが範囲情報に対応する範囲内であるときに同赤目部分の画像データから目の色を表す画像データに置換する。ディスプレイに表示する画像を表現する画像データの場合、ガンマ補正が行われているので、逆ガンマ補正を行った後、RGB色空間内における赤目目標色と修正領域の画素の色との距離を算出し、この距離が範囲情報に対応する範囲内であるか否かを判断する。例えば、γ=2.2のガンマ補正された画像データである場合、同画像データの各RGB値をR0,G0,B0(いずれも、0〜255の値)とすると、逆ガンマ補正後の画像データの各RGB値C2r,C2g,C2b(いずれも、0〜255の値)は、以下の演算式により算出することができる。
C2r=255×(R0/255)0.45 ・・・(1)
C2g=255×(G0/255)0.45 ・・・(2)
C2b=255×(B0/255)0.45 ・・・(3)
【0041】
上述した逆ガンマ補正の後に、赤目目標色と修正領域の画素の色との距離Distanceを算出する。ここで、算出式を変更しながら試験を繰り返し行った結果、Nを正の整数として、赤目目標色の座標値をRGBの順にC1r(0≦C1r≦N)、C1g(0≦C1g≦N)、C1b(0≦C1b≦N)、Ravg=(C1r+C2r)/2とするとき、距離Distanceを以下の演算式により算出すると、修正すべき赤目部分を確実に目の色に修正することができ、良好な画質の修正画像を得ることができた。
Distance=[{2+Ravg/(N+1)}×(C1r−C2r)2+4×(C1g−C2g)2+{2+(N−Ravg)/(N+1)}×(C1b−C2b)2]1/2
・・・(4)
本実施形態では、N=255としているので、以下の演算式により算出することになる。
Distance=[(2+Ravg/256)×(C1r−C2r)2+4×(C1g−C2g)2+{2+(255−Ravg)/256}×(C1b−C2b)2]1/2
・・・(5)
【0042】
ここで、NをN+1やN−1に変更したり、N+1をNに変更したり等、演算式の各係数の僅かな違いは距離Distanceの値にほとんど影響しない。従って、例えば以下の演算式により距離Distanceを算出してもよい。
Distance=[(2+Ravg/255)×(C1r−C2r)2+4×(C1g−C2g)2+{2+(255−Ravg)/255}×(C1b−C2b)2]1/2 ・・・(5')
また、演算式(4),(5)の右辺に所定係数が乗じられた式であってもよい。この場合であっても、赤目目標色と画素の色との距離を表すことに変わりはない。
【0043】
上記演算式(4),(5)は、良好な修正画像を得ることができる点で良好であるものの、演算処理を簡素化させるために、以下の演算式により距離Distanceを算出してもよい。
Distance={(C1r−C2r)2+(C1g−C2g)2+(C1b−C2b)2}1/2
・・・(6)
【0044】
距離Distanceが赤目の色とする範囲内であるか否かを判断するにあたり、距離Distanceを0〜1の値に変換している。RGB色空間内におけるRGBの座標を(R,G,B)で表すとき(0≦R≦N、0≦G≦N、0≦B≦N)、図5に示すように、8箇所の各座標(0,0,0)、(0,0,N)、(0,N,0)、(0,N,N)、(N,0,0)、(N,0,N)、(N,N,0)、(N,N,N)と赤目目標色の座標(C1r,C1g,C1b)との距離を上記式(5)によりそれぞれ求め、求めた距離の最大値MaxDistanceを算出し、最大値MaxDistanceに対する距離Distanceの比に基づいて赤目の色とする範囲内であるか否かを判断している。図の例では、N=255であり、座標(255,255,0)と赤目目標色の座標との距離が最も大きくなっている。すなわち、距離の最大値MaxDistanceは、以下の式により算出される値となる。
MaxDistance=[(2+C1r/256)×C1r2+4×(C1g−255)2+{2+(255−C1r)/256}×(C1b−255)2]1/2
・・・(7)
【0045】
すると、距離の最大値MaxDistanceに対する距離Distanceの比は常に1以下となる。図4で示した設定入力画面から操作入力を受け付けることにより取得される許容度Toleranceは0〜1の値とされるので、Distance/MaxDistance≦Toleranceであるときに赤目の色とする範囲内であると判断し、画像データの置換を行う。このように、距離Distanceの比を基準として画像データが範囲情報に対応する範囲内であるか否かを判断すればよいので、範囲情報を0〜1の範囲で表現することができ、構成を簡易にさせることができる。
【0046】
再び図3に戻って、説明を続ける。距離Distanceの比が許容度Tolerance以下であるとき、対象画素が全て修正領域に含まれる場合には、同対象画素について元の画像データから目の色を表す画像データであって明るさ情報に対応した明るさを表す画像データに置換する。例えば、目の色として黒が選択されている場合、0〜1の値とされた強度Intensityを用いると、置換後の画像データの各RGB値C3r,C3g,C3b(いずれも、0〜255の値)は、置換前のRGB値C2r,C2g,C2bの最小値に強度Intensityを乗じることにより算出することができる。
C3r=C3g=C3b=Minimum(C2r,C2g,C2b)×Intensity ・・・(8)
すると、目の部分に赤目が生じた画像に対して赤目部分の彩度が小さくされ、赤目が目の色に修正されることになる。
【0047】
上記式(8)を用いて画像データを置換することにより、置換前の画像データの値が置換後の画像データの値に反映されるので、赤目修正後の画像の画質を高画質にさせることができる。むろん、画像データを置換する演算を簡素化させるために、以下の演算式のように、所定値に強度Intensityを乗じて置換後の画像データの値を求めてもよい。
C3r=C3g=C3b=255×Intensity ・・・(9)
ここで、強度Intensityは、概略輝度を表すことになり、上記式(8)を用いる場合には間接的に輝度を表すことになる。むろん、輝度を表す際にRGB各成分値に異なる重み付けをすることもあるため、C3r,C3g,C3b別に式(8),(9)の右辺に異なる所定係数を乗じることにより、C3r,C3g,C3bを異なる値にするようにしてもよい。
【0048】
一般的には、目の色の各RGB値をEr,Eg,Ebで表すと、以下の演算式により置換後の画像データのRGB値を算出することができる。
C3r=Er×{Minimum(C2r,C2g,C2b)/255}×Intensity ・・・(10)
C3g=Eg×{Minimum(C2r,C2g,C2b)/255}×Intensity ・・・(11)
C3b=Eg×{Minimum(C2r,C2g,C2b)/255}×Intensity ・・・(12)
または
C3r=Er×Intensity ・・・(13)
C3g=Eg×Intensity ・・・(14)
C3b=Eb×Intensity ・・・(15)
上記式(10)〜(12)では、元の画像データの値が置換後の画像データの値に反映されるので、赤目修正後の画像の画質を高画質にさせることができる。
このように、色置換手段U4は、目の色を表す画像データに置換するにあたり、取得された明るさ情報に対応した明るさを表す画像データに置換する。
【0049】
また、色置換手段U4は、対象画素が修正領域の境界部分である場合には、同対象画素について元の画像データから同目の色を表す画像データに置換するにあたり同画像データの置換量を同対象画素が同修正領域に含まれる度合に応じた量とする。
【0050】
図6は、修正領域の境界部分における画像データの置換処理を説明する図である。ここで、修正領域50は、中心座標51を中心とした略円形の領域とされている。修正領域内の画素52は、全ての部分が修正領域50に含まれる画素である。すなわち、画素52の画像データは、上述した演算式(8)〜(15)により求められる。一方、図中点線で示した修正領域外の画素54は、全ての部分が修正領域50から外れた画素である。従って、画素54の画像データは、置換されない。
境界部分の画素53は、内部が修正領域50の境界部分となる画素である。画素53については、画像データを置換するにあたり、画像データの置換割合を同画素53が修正領域50に含まれる割合とする。具体的には、以下のようにして置換割合を決定して画像データを置換する。
【0051】
まず、画素53を、横m1×縦n1(m1,n1は2以上の整数)の所定数の区分領域55に略等分割する。本実施形態では、m1=n1=4とし、画素53を16の区分領域55に等分割している。次に、画素53別に、区分領域55の中心が修正領域50の内部となる区分領域の数n2を求める。そして、画素53の全区分領域の数16に対する求めた区分領域の数n2の割合、すなわち、n2/16を画像データの置換割合Pとする。例えば、図に示す画素53a,bの場合、それぞれ中心が修正領域50の内部となる区分領域の数n2は8,13であるので、画像データの置換割合Pは8/16、13/16となる。
【0052】
ここで、一旦上記式(8)〜(15)により各RGB値C3r,C3g,C3bを算出するとともに、RGB色空間内の画像データとなるRGB値C3r,C3g,C3bをHIS色空間内の画像データの各成分値H3,I3,S3に変換し、元の画像データのRGB値C2r,C2g,C2bをHIS色空間内の画像データの各成分値H2,I2,S2に変換する。なお、H2,H3は色相(Hue)の成分値であり、I2,I3は輝度(Intensity)の成分値であり、S2,S3は彩度(Saturation)の成分値である。具体的には、A1を3×3の所定の行列として、以下の演算式により、H2,H3,I2,I3,S2,S3を算出することができる。
【数1】
【0053】
そして、算出したH2,H3,I2,I3,S2,S3と、置換割合Pとを用いて、HIS色空間における置換後の画像データの各成分値H4,I4,S4を算出する。
H4=H2 ・・・(18)
I4=I2−(I2−I3)×P ・・・(19)
S4=S2−(S2−S3)×P ・・・(20)
その後、HIS色空間内の画像データの各成分値H4,I4,S4をRGB色空間内の画像データの各成分値C4r,C4g,C4bに戻す。
【数2】
【0054】
このように、修正領域の境界部分である画素について元の画像データから目の色を表す画像データに置換するにあたり、画像データの置換割合は同画素が修正領域に含まれる割合とされる。
これにより、修正領域の境界部分が赤目の色とする範囲内であるときに画像データは完全には目の色に置き換えられないので、修正領域の内外で色は急変せず、スムーズに変化する。その結果、より確実に違和感を感じさせないように赤目を修正することが可能となる。
【0055】
さらに、色置換手段U4は、赤目が生じていない別の画像の画像データを取得し、取得した画像データに基づいて同別の画像から虹彩の領域を決定し、決定した領域の画像データに基づいて目の色を表す情報を取得することも可能である。これにより、赤目が生じていない別の画像から目の色を表す情報が取得され、修正領域のうち赤目部分がこの目の色に修正され、より確実に違和感を感じさせないように赤目を修正することが可能となる。
【0056】
なお、逆ガンマ補正を行った画像データに対して赤目部分を目の色を表す画像データに置換した場合、ガンマ補正が行われた画像データに戻す処理を行う。ガンマ補正後の画像データの各RGB値R1,G1,B1(いずれも、0〜255の値)は、以下の演算式により算出することができる。
R1=255×(C4r/255)2.2 ・・・(22)
G1=255×(C4g/255)2.2 ・・・(23)
B1=255×(C4b/255)2.2 ・・・(24)
【0057】
(3)赤目修正装置の動作:
図7は、各種手段U1〜U4が行う赤目修正処理をフローチャートにより示している。以下、同フローチャートに従って赤目修正装置が行う処理の詳細を説明する。
本実施形態にかかる赤目修正プログラムを起動させると、まず、修正前のカラーの画像を表現する画像データを入力し、図4で示した設定入力画面をディスプレイに表示する(ステップS105。以下、「ステップ」の記載を省略)。なお、十字ポインタ91bの位置、目の色選択欄91c、各種入力欄91d〜fについては、デフォルトの条件または前回入力された条件にて表示する。また、目の色選択欄91cで「別の画像」が選択入力された場合のみ、領域抽出ボタン91gをクリック操作可能とする。
【0058】
入力した画像データは、画像表示欄91aに表示される。入力する画像データは、デジタルカメラ30や図示しないスキャナやビデオカメラ等にて取り込まれた画像のデータであってもよいし、FD16a等に記録した画像データであってもよい。また、デジタルカメラ等から画像データを入力する場合、データ全体を一括して読み込む必要はなく、部分的に読み込むようにしてもよいし、他のAPLから呼び出されるような場合にはデータの受け渡しに利用されるバッファ領域を表すポインタの受け渡しだけであってもよい。
【0059】
設定入力画面を表示すると、目の色選択欄91cに目の色の選択入力が行われたか否かを判断する(S110)。目の色を選択する入力を受け付けていないときにはS130に進み、目の色を選択する入力を受け付けたときにはS115に進む。S115では、同選択欄91cから「別の画像」が選択入力されたか否かを判断する。「別の画像」を選択する入力を受け付けた場合には、目の色決定処理を行い(S120)、S130に進む。
【0060】
図8は目の色決定処理をフローチャートにより示しており、図9は目の色が決定される様子を模式的に示している。まず、画像参照ボタン91hがクリック操作されると、図示しない画像ファイル選択画面を表示し、赤目が生じていない画像の画素別とされた画像データを記憶した画像ファイルの選択入力を受け付けることにより画像ファイルの画像データをRAMに読み出し、赤目が生じていない別の画像61の画像データを取得する(S205)。次に、別の画像61の画像データに基づいて、白目を含む目の領域62を決定する(S210)。例えば、肌色の領域を抽出し、抽出した肌色の領域に囲まれた領域が所定の目の形状と略一致するときに、その囲まれた領域を白目を含む目の領域と決定する。
さらに、白目を含む目の領域62の画素の画像データに基づいて、別の画像61から虹彩の領域63を決定する(S215)。例えば、白目の領域(例えば、画像データの各RGB値が所定値以上となる画素の領域)を抽出し、抽出した白目の領域を除いた目の領域を虹彩の領域と決定する。
【0061】
そして、虹彩の領域63の画像データに基づいて、目の色を表す情報を取得し(S220)、本フローを終了する。ここで、目の色を表す情報は、様々考えられ、例えば、虹彩の領域の全画素について画像データの各RGB値をそれぞれ平均して一様にしたデータとしてもよいし、虹彩の模様を残すように虹彩の領域における画素別の画像データとしてもよい。
このように、各画素の画像データに基づいて画像から目の領域が修正領域として決定されるので、自動的に赤目を修正する領域が抽出され、赤目を修正する作業が軽減されて、便利である。また、赤目が生じていない別の画像から目の色を表す情報が取得され、赤目部分は赤目が生じていない別の画像の目の色に修正されるので、より確実に違和感を感じさせないように赤目を修正することが可能となる。
【0062】
S115にて、「別の画像」以外を選択する入力を受け付けた場合、S125に進んで目の色を表す情報を取得する。ここで、黒、茶、青等の複数の目の色からいずれかを選択する入力を受け付けた場合には、対応する目の色の各RGB値Er,Eg,Eb(置換後の色を表す情報)を取得する。ユーザ設定が選択入力された場合には、色パレットを表示し、色パレットへの操作入力を受け付けて対応する目の色のRGB値Er,Eg,Ebを取得する。地域別の人が選択入力された場合には、地域を表す情報とその地域の人の目の色を表すRGB値とを対応させた図示しない地域別目の色テーブルを参照して、選択入力された地域の人に対応する目の色を表すRGB値Er,Eg,Ebを取得する。
このように、目の色を選択することができるし、入力された地域の人に対応する目の色にも修正可能となるので、便利である。従って、赤目部分をより希望に沿った目の色に置換することができ、より確実に違和感を感じさせないように赤目を修正することが可能となる。
【0063】
その後、S130に進み、さらに各種パラメータを順次取得し、各種ボタン91g〜jへの操作に応じた処理を行っていく。S130では、十字ポインタ91bを移動させることにより赤目の中心位置を指定する操作入力を受け付けたとき、十字ポインタ91bを対応する位置に移動させて表示するとともに、画像表示欄91aに表示された画像における十字ポインタ91bの位置に対応する情報を赤目の中心座標を表す情報として取得する。
S135では、半径入力欄91dにて修正領域の半径を設定する操作入力を受け付けたとき、つまみの位置に対応する数値の半径Radiusを取得する。そして、十字ポインタ91bを同半径Radiusに略比例した大きさとして表示する。
赤目の中心座標を表す情報と半径Radiusとは、赤目を修正する修正領域を表す修正領域情報となる。すなわち、PC10が行うS105,S130〜S135の処理は、修正領域取得手段を構成する。
【0064】
S140では、許容度入力欄91eにて赤目とする範囲を設定する操作入力を受け付けたとき、つまみの位置に対応する数値の許容度Toleranceを取得する。許容度Toleranceは、RGB色空間内において赤目の色とする範囲が所定の赤目目標色からの距離として表された範囲情報である。すなわち、PC10が行うS105,S140の処理は、赤目範囲取得手段を構成する。
【0065】
S145では、強度入力欄91fにて画像データの明るさを設定する操作入力を受け付けたとき、つまみの位置に対応する数値の強度Intensityを取得する。強度Intensityは、置換後の画像データの明るさを表す明るさ情報である。すなわち、PC10が行うS105,S145の処理は、明るさ情報取得手段を構成する。
【0066】
目の色選択欄91cで「別の画像」が選択入力された場合、領域抽出ボタン91gをクリック操作可能とする。そして、S150にて、領域抽出ボタン91gがクリック操作されたか否かを判断する。同ボタン91gがクリック操作された場合には、S155の目の領域決定処理を行った後、S160に進む。同ボタン91gがクリック操作されていない場合は、S155の処理を行わずにS160に進む。
S155の目の領域決定処理では、各画素の画像データに基づいて画像から目の領域を決定し、当該領域を表す情報を修正領域情報として取得する。例えば、図9で示したように、肌色の領域を抽出し、抽出した肌色の領域に囲まれた領域が所定の目の形状と略一致するときに、その囲まれた領域を目の領域(白目を含む)と決定し、当該目の領域を表す情報を修正領域情報として取得する。すなわち、PCが行うS150,S155の処理は、別の意味での修正領域取得手段を構成する。
【0067】
S160では、修正実行ボタン91iがクリック操作されたか否かを判断する。同ボタン91iがクリック操作された場合には、S165の色置換処理を行った後、S170に進む。同ボタン91gがクリック操作されていない場合は、S165の処理を行わずにS170に進む。
図10は、S165で行う色置換処理をフローチャートにより示している。
まず、上記式(7)を用いて、各座標(0,0,0)、(0,0,255)、(0,255,0)、(0,255,255)、(255,0,0)、(255,0,255)、(255,255,0)、(255,255,255)と赤目目標色の座標(C1r,C1g,C1b)との距離を上記式(5)によりそれぞれ求め、求めた距離の最大値MaxDistanceを算出する(S305)。ここで、座標(C1r,C1g,C1b)は逆ガンマ補正を基準とする座標であるので、算出される最大値MaxDistanceは逆ガンマ補正が行われた画像データを基準とした値となる。
【0068】
次に、取得された修正領域情報に対応する修正領域内で、画像データの置換対象とする対象画素を設定する(S310)。修正領域情報が修正領域の半径を表す情報と修正領域の中心座標を表す情報とから構成されている場合、これらの情報に対応した円形の領域に少しでも含まれる画素を抽出して修正領域とし、同修正領域の中から対象画素を設定する。そして、順次対象画素を移動させながら、対象画素の画像データを置換する処理を行う。本実施形態では、多数の画素が上下左右方向に整然と並んでおり、画像データの置換処理の順序は、最も上の左端の画素から開始して順番に右端の画素までとし、その後一つずつ下の左端の画素から順番に右端の画素までとして、最後に最も下の右端の画素としている。むろん、置換処理の順序は、適宜変更可能である。
【0069】
入力される画像データ(RGB値R0,G0,B0)はガンマ補正が行われているので、対象画素を設定した後は、上記式(1)〜(3)を用いて逆ガンマ補正を行い、各RGB値C2r,C2g,C2bを算出する(S315)。その後、上記式(5)を用いて、赤目目標色(RGB値C1r,C1g,C1b)と修正領域の画素の色(RGB値C2r,C2g,C2b)との距離Distanceを算出する(S320)。そして、距離Distanceが範囲情報に対応する距離内であるか否か、すなわち最大値MaxDistanceに対する距離Distanceの比が許容度Tolerance以下であるかを判断する(S325)。同比が許容度Toleranceより大きければ、赤目部分ではないと判断して画像データの置換を行わず、S350に進む。一方、同比が許容度Tolerance以下であれば、赤目部分であると判断してS330に進み、画像データの置換を行う。このように、対象画素の色が赤目目標色から範囲情報に対応する距離内であるときに画像データが置換されるので、確実に修正すべき赤目部分を目の色に修正することが可能である。
【0070】
S330では、対象画素が修正領域の境界部分であるか否かを判断する。境界部分でなければS335に進み、境界部分であればS340に進んで境界色置換処理を行う。
対象画素が全て同修正領域に含まれる場合に行われるS335では、上記式(10)〜(12)を用いて、元の画像データ(RGB値C2r,C2g,C2b)を、強度Intensityに対応した明るさの目の色を表す画像データ(RGB値C3r,C3g,C3b)に置換し、S345に進む。すると、対象画素が全て修正領域に含まれる場合に対象画素について赤目部分であれば目の色に修正されることになる。また、強度Intensityの設定に応じて置換後の画像データに基づく画像の明るさを調整することができるので便利であるとともに、さらに違和感なく赤目を修正することが可能となる。さらに、選択入力を受け付けることにより置換後の色を表す情報を取得した場合には、置換後の色を表す情報に対応した色となるように画像データを置換するので、赤目部分を希望に沿った目の色に置換することができ、便利であるとともに、より確実に違和感を感じさせないように赤目を修正することが可能となる。
【0071】
一方、対象画素が修正領域の境界部分である場合、図11に示す境界色置換処理を行い(S340)、S345に進む。
まず、対象画素を4×4の区分領域に等分割し、中心が修正領域の内部となる区分領域の数n2を算出する(S405)。次に、区分領域全ての数である16に対する算出した数n2の割合を算出して画像データの置換割合Pとする(S410)。
さらに、上記式(10)〜(12)を用いて、元の画像データ(RGB値C2r,C2g,C2b)を、強度Intensityに対応した明るさの目の色を表す画像データ(RGB値C3r,C3g,C3b)に仮に置換する(S415)。
その後、置換前後のRGB色空間の画像データを、HIS色空間の画像データに変換する(S420)。すなわち、上記式(16),(17)を用いて、RGB値C2r,C2g,C2bをHIS色空間の画像データの各成分値H2,I2,S2に変換し、RGB値C3r,C3g,C3bをHIS色空間の画像データの各成分値H3,I3,S3に変換する。
【0072】
そして、上記式(18)〜(20)を用いて、画像データの置換割合を対象画素が修正領域に含まれる割合とするように置換後の画像データの各成分値H4,I4,S4を算出する(S425)。
その後、上記式(21)を用いて、HIS色空間の画像データの各成分値H4,I4,S4を各RGB値C4r,C4g,C4bに変換し、RGB色空間の画像データに戻して(S430)、本フローを終了する。
すると、対象画素が修正領域の境界部分である場合には、画像データの置換量は対象画素が修正領域に含まれる割合とされる。すなわち、簡易な構成ながら修正領域の境界部分を自然な感じにさせるように境界部分の画素の画像データを置換することができる。言い換えると、画像データは完全には目の色を表すデータに置き換えられないので、赤目を修正する領域の内外で色は急変せず、スムーズに変化することになる。
【0073】
図10に戻って、説明を続ける。置換後の画像データ(RGB値C3r,C3g,C3bまたはC4r,C4g,C4b)は、ガンマ補正が行われていないデータであるので、S345では、上記式(22)〜(24)を用いて、同画像データに対してガンマ補正を行い、ガンマ補正後の画像データ(RGB値R1,G1,B1)を算出する。
その後、修正領域内の画素全てについて、S310〜S345の処理を行ったか否かを判断する(S350)。同処理を修正領域内の全画素について行ったときには本フローを終了し、全画素について行っていないときには繰り返しS310〜S350の処理を行う。
このように、PC10が行う図7のS105〜S125,S165処理は、色置換手段を構成する。
【0074】
例えば図12に示すように、赤目の色とする範囲が修正領域50の内外にわたって存在するとき、全て修正領域50に含まれる画素52については元の画像データから目の色を表す画像データに置換され、赤目部分が目の色に修正される。一方、修正領域50から完全に外れた画素54については元の画像データのままとされ、目の色には修正されない。ここで、修正領域50の境界部分の画素53については、同画素53が修正領域50に含まれる割合で画像データが置換されるので、画像データは完全には目の色を表すデータに置き換えられない。従って、赤目を修正する領域の内外で色は急変せず、スムーズに変化する。その結果、目の部分に赤目が生じた画像に対して、より確実に違和感を感じさせないように赤目を修正することが可能となる。
【0075】
図7のS160またはS165終了後、保存ボタン91jがクリック操作されたか否かを判断する(S170)。同ボタン91jがクリック操作された場合には、S175に進み、HD14に画像データを記憶し、本フローを終了する。一方、同ボタン91jがクリック操作されていない場合は、S110に戻る。
【0076】
(4)まとめ:
以上説明したように、本赤目修正装置のユーザは、十字ポインタにより赤目の位置を指定するとともに半径、許容度、強度等を設定する入力を行うことにより、容易に赤目を修正することが可能である。そして、赤目を修正する領域の境界部分が赤目の色とする範囲内であるときに画像データは完全には目の色を表すデータに置き換えられないので色はスムーズに変化するし、置換後の画像データは明るさ情報に対応した明るさを表す画像データとなる。また、赤目部分を赤目が生じていない別の画像の目の色に修正することもできる。従って、確実に違和感を感じさせないように赤目を修正することができ、本赤目修正装置は利便性の大きな装置となっている。
【0077】
なお、本発明の赤目修正プログラムを実行可能な赤目修正装置と周辺装置は、様々な構成が可能である。
例えば、プリンタは、コンピュータと一体化されたものであってもよいし、単色画像のみを印刷する専用品であってもよい。上述したフローについては、PC内で実行する以外にも、一部または全部をプリンタあるいは専用の画像出力機器で実行するようにしてもよい。
本発明によると、赤目を修正するために有用な赤目修正装置および赤目修正プログラムを提供することができる。また、赤目修正方法としても適用可能である。
【図面の簡単な説明】
【図1】 赤目修正装置と周辺装置とからなるシステムの概略構成を示すブロック図。
【図2】 プリンタのブロック構成をPCとともに示す図。
【図3】 赤目修正装置を構成する各種手段を模式的に示す図。
【図4】 設定入力画面の表示例を示す図。
【図5】 距離の最大値MaxDistanceを示す模式図。
【図6】 修正領域の境界部分における画像データの置換処理を説明する図。
【図7】 赤目修正処理を示すフローチャート。
【図8】 目の色決定処理を示すフローチャート。
【図9】 目の色が決定される様子を模式的に示す図。
【図10】 色置換処理を示すフローチャート。
【図11】 境界色置換処理を示すフローチャート。
【図12】 赤目の色とする範囲が修正領域の内外にわたって存在する場合において、修正後の画像の様子を模式的に示す図。
【符号の説明】
10…パーソナルコンピュータ、11…CPU、12…ROM、13…RAM、14…ハードディスク、17a〜e…インターフェイス、18a…ディスプレイ、18b…キーボード、18c…マウス、20…インクジェットプリンタ、30…デジタルカメラ、50…修正領域、51…中心座標、52…修正領域内の画素、53…境界部分の画素、54…修正領域外の画素、55…区分領域、61…別の画像、62…白目を含む目の領域、63…虹彩の領域、U1…修正領域取得手段、U2…赤目範囲取得手段、U3…明るさ情報取得手段、U4…色置換手段
Claims (13)
- 画素別に多階調とされた画像データで表現されるカラーの画像のうち赤目を修正する赤目修正装置であって、
上記カラーの画像のうち赤目を修正する修正領域を表す修正領域情報に対応する修正領域の上記画素について上記画像データが当該画像データの色空間内において赤目の色とする範囲を表す範囲情報に対応する範囲内であるとき、元の画像データから目の色を表す画像データに置換するとともに同画素が同修正領域の境界部分である場合には同画像データの置換割合を同画素が同修正領域に含まれる割合とする色置換手段を具備することを特徴とする赤目修正装置。 - 画素別に複数の要素色のそれぞれについて多階調とされた画像データで表現されるカラーの画像のうち、目の部分に生じる赤目を修正する修正領域を表す修正領域情報を取得する修正領域取得手段と、
上記複数の要素色のそれぞれを座標軸とする上記画像データの色空間内において赤目の色とする範囲を表す範囲情報を取得する赤目範囲取得手段と、
上記取得された修正領域情報に対応する修正領域の上記画素について各画素の画像データを置換対象として順次対象画素を移動させながら、同対象画素の画像データが上記取得された範囲情報に対応する範囲内であるとき、同対象画素が全て同修正領域に含まれる場合には同対象画素について元の画像データから目の色を表す画像データに置換するとともに同対象画素が同修正領域の境界部分である場合には同対象画素について元の画像データから同目の色を表す画像データに置換するにあたり同画像データの置換割合を同画素が同修正領域に含まれる割合とする色置換手段とを具備することを特徴とする赤目修正装置。 - 上記色置換手段は、上記画素を所定数の区分領域に略等分割し、中心が上記修正領域の内部となる区分領域の同区分領域全ての数に対する割合を上記画像データの置換割合とすることを特徴とする請求項1または請求項2に記載の赤目修正装置。
- 上記色置換手段にて置換された後の画像データの明るさを表す明るさ情報を取得する明るさ情報取得手段が設けられ、
上記色置換手段は、上記目の色を表す画像データに置換するにあたり、上記取得された明るさ情報に対応した明るさを表す画像データに置換することを特徴とする請求項1〜請求項3のいずれかに記載の赤目修正装置。 - 上記修正領域は、略円形の領域であり、
上記修正領域情報は、上記略円形とされた修正領域の径を表す情報と、上記画像における同修正領域の中心座標を表す情報とから構成されていることを特徴とする請求項1〜請求項4のいずれかに記載の赤目修正装置。 - 上記範囲情報は、上記画像データの色空間内において赤目の色とする範囲が所定の赤目目標色からの距離として表された情報とされ、
上記色置換手段は、上記色空間内における上記赤目目標色の座標と上記修正領域の画素の画像データとから同赤目目標色と同画素の色との距離を算出し、当該距離が上記範囲情報に対応する距離内であるとき、上記画像データの置換を行うことを特徴とする請求項1〜請求項5のいずれかに記載の赤目修正装置。 - 上記画像データは、レッド、グリーン、ブルーのそれぞれについて多階調とされたデータとされ、
上記色置換手段は、Nを正の整数として、上記赤目目標色の座標値をレッド、グリーン、ブルーの順にC1r(0≦C1r≦N)、C1g(0≦C1g≦N)、C1b(0≦C1b≦N)、上記画素の画像データをレッド、グリーン、ブルーの順にC2r(0≦C2r≦N)、C2g(0≦C2g≦N)、C2b(0≦C2b≦N)、Ravg=(C1r+C2r)/2とするとき、上記所定の赤目目標色の座標と同画素の画像データとの距離Distanceを概略Distance=[{2+Ravg/(N+1)}×(C1r−C2r)2+4×(C1g−C2g)2+{2+(N−Ravg)/(N+1)}×(C1b−C2b)2]1/2なる演算式により算出することを特徴とする請求項6に記載の赤目修正装置。 - 上記色置換手段は、上記画像データの色空間内における上記レッドの座標値をR(0≦R≦N)、グリーンの座標値をG(0≦G≦N)、ブルーの座標値をB(0≦B≦N)とし、同色空間内の座標を(R,G,B)で表すとき、各座標(0,0,0)、(0,0,N)、(0,N,0)、(0,N,N)、(N,0,0)、(N,0,N)、(N,N,0)、(N,N,N)と上記赤目目標色の座標との距離の最大値を算出し、当該最大値に対する上記距離Distanceの比が上記範囲情報に対応する範囲内であるときに上記画像データの置換を行うことを特徴とする請求項7に記載の赤目修正装置。
- 上記画像データを置換する上記目の色は、複数設けられ、
上記色置換手段は、上記複数の目の色からいずれかの色を選択する入力を受け付けて置換後の色を表す情報を取得し、当該情報に対応した色となるように上記画像データを置換することを特徴とする請求項1〜請求項8のいずれかに記載の赤目修正装置。 - 上記修正領域取得手段は、各画素の画像データに基づいて上記画像から目の領域を決定し、当該領域を表す情報を上記修正領域情報として取得することを特徴とする請求項2に記載の赤目修正装置。
- 上記色置換手段は、赤目が生じていない別の画像の画像データを取得し、当該画像データに基づいて同別の画像から虹彩の領域を決定し、当該領域の画像データに基づいて上記目の色を表す情報を取得するとともに、上記修正領域の画素について上記画像データが上記範囲情報に対応する範囲内であるとき、元の画像データから同目の色を表す情報に対応した画像データに置換するとともに同画素が同修正領域の境界部分である場合には同画像データの置換割合を同画素が同修正領域に含まれる割合とすることを特徴とする請求項10に記載の赤目修正装置。
- 画素別に多階調とされた画像データで表現されるカラーの画像のうち赤目を修正する赤目修正方法であって、
上記カラーの画像のうち赤目を修正する修正領域を表す修正領域情報に対応する修正領域の上記画素について上記画像データが当該画像データの色空間内において赤目の色とする範囲を表す範囲情報に対応する範囲内であるとき、元の画像データから目の色を表す画像データに置換するとともに同画素が同修正領域の境界部分である場合には同画像データの置換割合を同画素が同修正領域に含まれる割合とする色置換工程を具備することを特徴とする赤目修正方法。 - 画素別に多階調とされた画像データで表現されるカラーの画像のうち赤目を修正する機能をコンピュータに実現させる赤目修正プログラムであって、
上記カラーの画像のうち赤目を修正する修正領域を表す修正領域情報に対応する修正領域の上記画素について上記画像データが当該画像データの色空間内において赤目の色とする範囲を表す範囲情報に対応する範囲内であるとき、元の画像データから目の色を表す画像データに置換するとともに同画素が同修正領域の境界部分である場合には同画像データの置換割合を同画素が同修正領域に含まれる割合とする色置換機能をコンピュータに実現させることを特徴とする赤目修正プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002329253A JP3994280B2 (ja) | 2002-11-13 | 2002-11-13 | 赤目修正装置、赤目修正方法および赤目修正プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002329253A JP3994280B2 (ja) | 2002-11-13 | 2002-11-13 | 赤目修正装置、赤目修正方法および赤目修正プログラム |
Related Child Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007146710A Division JP4492642B2 (ja) | 2007-06-01 | 2007-06-01 | 赤目修正装置、赤目修正方法および赤目修正プログラム |
JP2007146712A Division JP4492644B2 (ja) | 2007-06-01 | 2007-06-01 | 赤目修正装置、赤目修正方法および赤目修正プログラム |
JP2007146711A Division JP4492643B2 (ja) | 2007-06-01 | 2007-06-01 | 赤目修正装置、赤目修正方法および赤目修正プログラム |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2004164276A JP2004164276A (ja) | 2004-06-10 |
JP2004164276A5 JP2004164276A5 (ja) | 2005-07-07 |
JP3994280B2 true JP3994280B2 (ja) | 2007-10-17 |
Family
ID=32807299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002329253A Expired - Fee Related JP3994280B2 (ja) | 2002-11-13 | 2002-11-13 | 赤目修正装置、赤目修正方法および赤目修正プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3994280B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4078334B2 (ja) * | 2004-06-14 | 2008-04-23 | キヤノン株式会社 | 画像処理装置および画像処理方法 |
JP4574249B2 (ja) * | 2004-06-29 | 2010-11-04 | キヤノン株式会社 | 画像処理装置及びその方法、プログラム、撮像装置 |
US7450756B2 (en) * | 2005-04-28 | 2008-11-11 | Hewlett-Packard Development Company, L.P. | Method and apparatus for incorporating iris color in red-eye correction |
US8306320B2 (en) | 2008-03-07 | 2012-11-06 | Samsung Electro-Mechanics Co., Ltd. | 2D image segmentation apparatus and method, and apparatus and method for removing red-eye in the image |
-
2002
- 2002-11-13 JP JP2002329253A patent/JP3994280B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004164276A (ja) | 2004-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4924264B2 (ja) | 画像処理装置、画像処理方法、および、コンピュータプログラム | |
US5717838A (en) | Computer calibration of a color print image using successive refinement | |
JP4345757B2 (ja) | 画像データの色の補正 | |
EP0357385B1 (en) | Image processing method and apparatus | |
JP2011018354A (ja) | 画像修整プログラムを記録した媒体、画像修整装置および画像修整方法 | |
CN108347548A (zh) | 图像处理装置及其控制方法 | |
JP2004320624A (ja) | 対応関係定義データ作成用格子点決定方法、対応関係定義データ作成用格子点決定装置、対応関係定義データ作成用格子点決定プログラム、印刷制御装置、印刷制御方法および印刷制御プログラム | |
US7268919B2 (en) | Image data processing apparatus, method, and program that diffuses gradiation error for each pixel in target block | |
JP3689607B2 (ja) | 画像処理方法、装置および記憶媒体 | |
JP2008282204A (ja) | 画像処理装置、および、画像処理方法 | |
JP3994280B2 (ja) | 赤目修正装置、赤目修正方法および赤目修正プログラム | |
JP4492642B2 (ja) | 赤目修正装置、赤目修正方法および赤目修正プログラム | |
JP4492643B2 (ja) | 赤目修正装置、赤目修正方法および赤目修正プログラム | |
US6850341B1 (en) | Method, system and recording medium for image processing | |
JP4492644B2 (ja) | 赤目修正装置、赤目修正方法および赤目修正プログラム | |
JP4539778B2 (ja) | 画像データの色の補正 | |
US7817303B2 (en) | Image processing and image forming with modification of a particular class of colors | |
JP4085265B2 (ja) | 印刷制御装置および印刷制御方法 | |
JPH10208038A (ja) | 画像処理方法および画像処理装置 | |
JP3833170B2 (ja) | グレイライン設定方法、画像処理装置及び画像処理方法 | |
JP2000285232A (ja) | 画像鮮鋭化プログラムを記録した媒体、画像鮮鋭化装置および画像鮮鋭化方法 | |
JP2009031855A (ja) | 画像処理装置、画像処理方法、および、コンピュータプログラム | |
JP2009081631A (ja) | 画像処理装置、方法、および、プログラム | |
JP4375223B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
JP4150925B2 (ja) | 画像処理方法及び装置並びにプリンタ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041105 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041105 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070404 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070601 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070704 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070717 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100810 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100810 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110810 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120810 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |