(57)【特許請求の範囲】
【請求項１】
画像全体が暗い調子の画像の階調が適切か否かを判別する画像判別装置において、
画像が表示される領域である画像矩形に外接する画素の内、階調レベルが所定の第１の閾値より小さい画素の数を計数する計数手段と、
該計数した結果の画素数が所定の第２の閾値以上の場合に、該画像が暗い調子でも階調は適切な画像であると判別し、該計数した結果の画素数が該所定の第２の閾値より少ない場合に、該画像が暗い調子で階調が不適切である画像と判別する判別手段と、
を備えることを特徴とする画像判別装置。
【請求項２】
前記計数手段が計数した画素数と前記画像矩形に外接する全画素の数との比を計算する比計算手段を更に備え、
前記判別手段は、該比が所定の第３の閾値以上の場合に、前記画像が暗い調子でも階調は適切な画像であると判別することを特徴とする請求項１に記載の画像判別装置。
【請求項３】
前記階調レベルが所定の第１の閾値より小さい画素と階調レベルが似かよった画像矩形に外接する画素を抽出する周囲画素抽出手段と、
得られた画像矩形の領域の内部について画素間の階調変化を計算する階調変化計算手段とを更に備え、
前記判別手段は、該階調変化が所定の第４の閾値以下の場合に、前記画像が暗い調子でも階調は適切な画像であると判別することを特徴とする請求項２に記載の画像判別装置。
【請求項４】
前記階調レベルが所定値より大きい画素領域と該階調レベルが所定値より大きい画素領域の画像矩形に外接する画素領域の階調レベルの変化勾配を計算する階調レベル変化勾配計算手段を更に備え、
該階調レベルの変化勾配が所定の第５の閾値以上の場合に、前記画像が暗い調子でも階調は適切な夜景画像であると判別することを特徴とする請求項３に記載の画像判別装置。
【請求項５】
前記階調レベルが所定値より大きい画素領域内部の平均の明度、彩度、色相のうちの少なくとも一つを、典型的な夕焼け画像の明度、彩度、色相のうちの、対応する少なくとも一つと比較する比較手段を更に備え、
該比較の結果、両者が似ていると判断された場合に、前記画像が暗い調子でも階調は適切な夕焼け画像であると判別することを特徴とする請求項４に記載の画像判別装置。
【請求項６】
前記階調レベルは、明度の階調レベルであることを特徴とする請求項１に記載の画像判別装置。
【請求項７】
前記階調レベルは、明度、彩度、色相のそれぞれの階調レベルであることを特徴とする請求項１に記載の画像判別装置。
【請求項８】
前記階調レベルは、画素値がＲＧＢ値で表されている場合、Ｒ値、Ｇ値、Ｂ値のそれぞれの階調レベルであることを特徴とする請求項１に記載の画像判別装置。
【請求項９】
画像全体が暗い調子の画像の階調が適切か否かを判別する画像判別方法において、
画像が表示される領域である画像矩形に外接する画素の内、階調レベルが所定の第１の閾値より小さい画素の数を計数し、
該計数した結果の画素数が所定の第２の閾値以上の場合に、該画像が暗い調子でも階調は適切な画像であると判別し、該計数した結果の画素数が該所定の第２の閾値より少ない場合に、該画像が暗い調子で階調が不適切である画像と判別する、
ことを特徴とする画像判別方法。
【請求項１０】
画像全体が暗い調子の画像の階調が適切か否かを判別する画像判別方法をコンピュータに実現させるプログラムにおいて、
画像が表示される領域である画像矩形に外接する画素の内、階調レベルが所定の第１の閾値より小さい画素の数を計数し、
該計数した結果の画素数が所定の第２の閾値以上の場合に、該画像が暗い調子でも階調は適切な画像であると判別し、該計数した結果の画素数が該所定の第２の閾値より少ない場合に、該画像が暗い調子で階調が不適切である画像と判別する、
処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザが画像補正指示することなしに自動的に画質改善処理を行う画像処理装置に関し、特に、画像の明るさを自動判別する、画像判別装置に関する。
【背景技術】
【０００２】
近年、デジタルカメラやスキャナなどの画像入力機器が普及し、画像をコンピュータディスプレイに表示したり、プリンタで印刷するなど、画像処理装置を利用する機会が増えてきた。【０００３】
入力される画像には、明るさがちょうどよい画像、暗すぎの画像、明るすぎの画像など、状態の異なる様々な画像が存在し、これら入力画像の明るさを解析して、画像をちょうどよい適切な明るさに補正する、明るさ補正技術が考案されている。【０００４】
図１は、暗い画像の種類を説明する図である。
ここで処理対象の画像について総じて暗い画像に関しては、階調が暗い調子であって暗すぎと判断される画像と、暗い調子であるが暗すぎではないと判断される画像とに区別される。前者は、主要被写体が暗くつぶれてしまったが背景部分は明るい状態である逆光画像や、デジタルカメラの撮影条件によって画像全体が明らかに露出不足となった画像が該当し、これらを総じてアンダー画像として分類する。図１（ｄ）は露出不足となったアンダー画像の例である。また後者は、夜間に遊技場や都会の町並みを撮影した夜景画像や、薄暮の風景を撮影した夕景画像が該当し、これらを総じてローキー画像として分類する。図１（ａ）や図１（ｂ）は暗闇に浮かぶ夜景の画像、図１（ｃ）は薄暮の夕景画像の、ローキー画像例であり、図１（ｄ）は町並みの夜景画像のアンダー画像例である。【０００５】
従来の明るさ補正技術においては、暗い画像について、階調が暗い調子であって暗すぎと判断されるアンダー画像か、暗い調子であるが暗すぎではないとローキー画像かを判別して、明るさを適切に補正する方法が考案されている。【０００６】
特許文献１によれば、画像を中央付近と周辺部の２領域に分割し、画像全体に暗いレベルの画素が多く分布しているかを判定し、多く分布していると判定された場合は、つづいて、暗いレベルの画素は中央付近よりも周辺部に多く存在しているかを判定し、多く存在していると判定した場合は、画像を夜景などのローキー画像として判定する技術が開示されている。【０００７】
しかしながら、特許文献１の技術では、画像周辺部に暗い画像が多く存在する場合はローキーとして判別されるが、周辺部に暗い画素が多く存在しない場合はローキーとして判別困難となってしまう問題点があった。また中央付近と周辺部の画素をすべて探索して判定に必要な画素統計情報を算出するため、画素ピクセル数の大きなサイズのデータに対しては、コンピュータの計算コストがかかり、処理速度が遅くなる問題点もあった。【０００８】
また、特許文献２、特許文献３、特許文献３においても、画像を、中央付近と周辺部の２つの領域にあらかじめ決定して、中央付近と周辺部の画素情報を比較して、夜景や逆光などの画像判定を行う方法を採用しており、特許文献１の技術と同様の問題点があった。
【特許文献１】特開２００２−２４７３６１号公報
【特許文献２】特開２００４−３４１９０１号公報
【特許文献３】特開２００３−１６９２３１号公報
【特許文献４】特開２００３−３３７９４４号公報
【発明の開示】
【０００９】
本発明の課題は、画像の周辺部に暗い画素が多く存在しない画像でも、精度よくローキー画像とアンダー画像の判別することができ、かつ、計算コストを大きく低減して、より高速に処理を行うことを可能にする画像判別装置を提供することである。
【００１０】
本発明の画像判別装置は、画像全体が暗い調子の画像の階調が適切か否かを判別する画像判別装置において、画像の周辺に位置する画素の内、階調レベルが所定の第１の閾値より小さい画素の数を計数する計数手段と、該計数した結果の画素数が所定の第２の閾値以上の場合に、該画像が暗い調子でも階調は適切な画像であると判別する判別手段とを備えることを特徴とする。
【図面の簡単な説明】
【００１１】
【図１】暗い画像の種類を説明する図である。
【図２】実施形態の処理ステップについて説明する図である。
【図３】階調変化を利用した画像判別方法を説明する図である。
【図４】明るい画素とその周囲の画素の階調変化と階調の勾配から夜景画像か否かを判断する方法を説明する図である。
【図５】夕焼け画像を判断する方法を説明する図である。
【図６】本発明の実施形態の画像判別装置のブロック図である。
【図７】領域拡張処理を説明する図である。
【図８】ウィンドウ探索処理を説明する図である。
【図９】本発明の実施形態に従った処理のフローチャート（その１）である。
【図１０】本発明の実施形態に従った処理のフローチャート（その２）である。
【図１１】本発明の実施形態に従った処理のフローチャート（その３）である。
【図１２】本発明の実施形態に従った処理のフローチャート（その４）である。
【図１３】本発明の実施形態に従った処理のフローチャート（その５）である。
【図１４】本発明の実施形態に従った処理のフローチャート（その６）である。
【図１５】本発明の実施形態に従った処理のフローチャート（その７）である。
【図１６】本発明の実施形態に従った処理のフローチャート（その８）である。
【図１７】本発明の実施形態に従った処理のフローチャート（その９）である。
【発明を実施するための最良の形態】
【００１２】
ローキー画像は、画像全体が暗い調子であり、画像中には、ある程度の大きさをもった暗い画素領域が存在している。こうした暗い領域画素は、ほとんどの場合で画像矩形に外接しているが、その位置は不定であって、画像周辺部に多く分布するのみでなく、画像周辺部分から中央付近にかけて分布することもあるという特徴を持っている。【００１３】
アンダー画像では、画像全体が暗い調子であるが、明るく変換すれば適正な明るさとなって豊富な階調性をもった適正な画像になることから、画像矩形（画像が表示される領域）内の画素には暗い画素のみでなくやや明るい画素など、様々な明るさの画素が混在して分布している。ここで、画像矩形は、デジタルカメラ、スキャナなどで入力される画像データの形状を指している。矩形は、横方向に主走査、縦方向に副走査される、データ画像全面を示している。データ画像は、通常、長方形や正方形となり、矩形をしている。【００１４】
そして、本発明の実施形態では、画像全体が暗い調子の画像について、階調が適切か適切でないかを判別する場合、画像矩形の外周に接する、レベルの低い画素の量に基づいて、画素の量が多い場合を、画像が暗い調子で階調は適切である画像と判別し、画素の量が少ない場合を、画像が暗い調子で階調が不適切である画像と判別するステップを行う。【００１５】
図２は、上記実施形態の処理ステップについて説明する図である。
図２（ａ）〜図２（ｄ）は、さまざまな種類の暗い画像を示している。図２（ａ）及び図２（ｂ）は、夜景、図２（ｃ）は、夕景の、ローキー画像であり、図２（ｄ）は、露出不足のアンダー画像である。これらの画像に上記処理を施し、外接画素の明度、彩度、色相のすべて、あるいは、明度のみのレベルを調べ、このレベルが所定値以下の外接画素がどのくらいあるかを調べる。そして、レベルが所定値以下の外接画素の量が、絶対的に所定値より多い、あるいは、画像矩形の外接画素の総数に比べ比較的多いときは、ローキー画像と判断し、そのような外接画素が絶対的に所定値より少ない、あるいは、全外接画素数に比べて比較的少ない場合には、アンダー画像と判断する。たとえば、図２（ｅ）は、図２（ａ）の外接画素のうち、当該レベルが所定値以下の画素を太線で示したものである。図２（ｅ）の場合、当該レベルが所定値以下の画素の数が外接画素全体の数に比べ比較的多いので、ローキー画像と判断する。図２（ｆ）は、図２（ｂ）の、図２（ｇ）は、図２（ｃ）の、図２（ｈ）は、図２（ｄ）の外接画素の分布の様子を示した図であり、太線が、当該レベルが所定値より小さい画素を示している。図２（ｆ）、図２（ｇ）の場合には、当該レベルが所定値以下の外接画素の数が比較的多いので、図２（ｂ）、図２（ｃ）をローキー画像と判断する。一方、図２（ｈ）においては、当該レベルが所定値以下の外接画素の数が比較的少ないので、図２（ｄ）は、アンダー画像であると判断する。【００１６】
以上によれば、精度よく画像が暗い調子で階調は適切であるローキー画像と、画像が暗い調子で階調は適切でないアンダー画像を判別することができる。また、入力画像の矩形外周のみの画素の数量をカウントするため、従来技術にくらべて計算コストを大きく低減して、より高速に処理を行うことができる。【００１７】
また、画像矩形（画像が表示される領域）に外接する画素の情報で判定を行う場合、画像矩形の外接画素のすぐ内側に、明るい画像が多数分布するような場合では、誤った判定を行う場合が考えられる。こうした場合においても精度よく判定を行うために、本発明の実施形態では更に、画像全体画素に対する低レベル画素の割合に基づき、割合が大きい場合を、画像が暗い調子で階調は適切である画像と判別し、割合が小さい場合を、画像が暗い調子で階調は適切である画像と判別する過程を実施する。【００１８】
以上によれば、画像外接のすぐ内側に明るい画素が存在するような画像の場合で、誤判断となりやすい画像であっても、精度よく判別を行うことができる。
また、画像矩形に外接する暗い画素領域は、画像周辺部分にとどまらず、画像中央付近まで、連続した背景画像として配置することがある。そこで、画像矩形の外周に接するレベルの低い画素について、これらと画像の階調が連続する周囲画素領域を抽出する過程と、得られた画素領域の内部について画素間の階調変化を採取する過程とを設け、階調変化が少ない場合は、画像が暗い調子で階調は適切である画像と判別し、階調変化が多い場合は、画像が暗い調子で階調は適切でない画像と判別する過程を実施する。【００１９】
図３は、階調変化を利用した画像判別方法を説明する図である。
図３（ａ）では画像矩形の外周に接する暗い領域の階調変化を調べた結果、階調変化が小さいと判断された場合であり、この場合は、ローキー画像と判断する。図３（ｂ）では、画像矩形の外周に接する暗い領域の階調変化が大きい場合で、この場合には、アンダー画像であると判断する。【００２０】
以上によれば、低レベル画素領域から画像背景と推測される部分を検出して、ローキー画像とアンダー画像の特徴の違いを認識し、精度良く判別することが可能にしている。
また、ローキー画像のひとつである夜景画像では、画像全体は暗い調子であるが、画像内部には、電灯やネオンサインなどによる明るい画素領域が複数配置されている。これら明るい画素領域の周囲は、背景画像の暗い画素領域と隣接しており、明るい画素領域から暗い画素領域へかけての明るさの変化は急激である。これは暗闇の背景画像上に、発光体の光源が配置されているためである。したがって、画素値レベルの高い画素領域を抽出する過程と、得られた画素領域の周囲画素の画素値レベルの空間分布を採取して、画素領域とその周囲画素領域との階調変化勾配を算出する過程とを設け、階調勾配が大きい場合は、画像が暗い調子で階調は適切である夜景画像と判別し、階調勾配が小さい場合は、画像が暗い調子で階調は適切である夜景画像ではない、と判別する。【００２１】
図４は、明るい画素とその周囲の画素の階調変化と階調の勾配から夜景画像か否かを判断する方法を説明する図である。
図４（ａ）は、明るい画素とその周囲の画素との階調の勾配が大きく、夜景画像であり、画像が暗くてもよいローキー画像であると判断する。図４（ｂ）は、明るい画素とその周囲の画素との階調の勾配が小さく、夜景画像ではない、本来明るい画像であるべきアンダー画像であると判断する。【００２２】
また、ローキーのひとつである夕景画像は、画像全体が暗い調子であるが、画像中の明るい画素領域には、平均的な夕焼けの色相や明度や彩度に似た値を持つ画素が分布している。そこで、画素値レベルの高い画素領域を抽出する過程と、得られた画素領域内部の平均レベル値を算出して、平均的な夕焼けの色相、平均的な夕焼けの彩度、明度のうちひとつ、もしくは、全てと比較して、これらが一致する場合は、画像が暗い調子で階調は適切である夕焼け画像と判別し、一致しない場合は、画像が暗い調子で階調は適切である夕焼け画像ではない、と判別する。【００２３】
図５は、夕焼け画像を判断する方法を説明する図である。
図５（ａ）では、夕日が写っているが、夕焼け画像か否かを判断する場合には、画像内の明るい領域を抽出し、当該領域の画素値レベルを明度、彩度、色相のいずれか、あるいは、すべてについて、平均的な夕景の画素値レベルと比較する。そして、これらが類似している場合には、当該画像を夕景画像であるとする。夕景画像は、画像自体が暗くても良い、ローキー画像である。【００２４】
以上によれば、ローキー画像について、さらに夜景画像、夕焼け画像を判別することができるため、より精度の高い判別が可能となる。
こうして、ローキー画像、アンダー画像を精度よく判別し、さらには、夜景や夕景の画像を特定判別することで、明るさ補正を実施する際、画像が暗い調子で階調は適切であるローキー画像を誤って明るく補正したり、また画像が暗い調子で階調は適切でないアンダー画像を誤って暗い状態のままにしたりすることなく、また夜景であれば、よりコントラストを強調して夜景をより好ましい画質に変換したり、夕景であれば夕景特有の色合いの彩度を強調して、より好ましい画質に変換するなど、より精度の高い自動画質改善技術を実現できる。【００２５】
図６は、本発明の実施形態の画像判別装置のブロック図である。
外接画素採取部１０は、入力画像から外接画素を採取する。低レベル画素採取部１１は、外接画素の中から、画素階調レベルが低い画素を採取する。外接画素領域拡張部１２は、外接画素が含まれる領域と同じ画素領域を得る処理を行う。たとえば、外接画素が山の部分に当たる場合には、画像中の山が写っている領域を抽出する。ローキー画像判定部１３は、図２、図３の方法で、画像がローキー画像かアンダー画像かを判断する。夜景画像判定部１４は、図４の方法で、ローキー画像であって夜景画像である画像を判別する。夕景画像判定部１５は、図５の方法で、ローキー画像であって夕景画像である画像を判別する。夕景画像判定部１５で、夕景画像と判定されなかった画像がローキー画像である。【００２６】
以下、各部について説明する。
まず、画像を外接画素採取部１０に入力する。外接画素採取部１０では、入力画像矩形の端部に接する外接画素の階調レベル値Ｐｏｕｔを探索して、あらかじめ決めておいた、閾値ＴＨｄａｒｋ１と比較する。階調レベル値ＰｏｕｔがＴＨｄａｒｋ１未満であれば、暗い画素として判別し、ＴＨｄａｒｋ１以上であれば明るい画素として判別を行い、暗い画素をして判別された画素数をカウントし、これをＣｏｕｔとする。ここで、階調レベル値は、画素の明るさを調べるために用いるので、明度値であるが、彩度と色相についても同様の処理をしても良い。また、画素がＲＧＢ値で表されている場合には、Ｒ値、Ｇ値、Ｂ値それぞれが所定の閾値以上となっているか否かを判断するようにしても良い。階調レベルについては、以下同様である。【００２７】
ここで、あらかじめ決めておいた閾値ＴＨｄａｒｋ１は、十分暗いレベル値と判別される画素値を固定値として採用すればよい。あるいは、入力画像ごとに階調レンジが異なる場合は、入力画像各々について、階調レベル値の累積度数分布を採取して、あらかじめ決めておいた割合Ｒｄａｒｋ１を用いて、画像の全画素数に対して、割合Ｒｄａｒｋ１の画素数分の画素を下位レベル値側から探索して、下位レベルから採取した画素の数が全画素数の割合Ｒｄａｒｋ１分となった階調レベル値を算出して閾値ＴＨｄａｒｋ１として採用してもよい。【００２８】
たとえば、２５６階調の画素について、閾値ＴＨｄａｒｋ１について固定値とする場合は、ＴＨｄａｒｋ１＝１０を採用し、画像ごとに異なる階調レンジに対して、ダイナミックに決定する場合は、割合Ｒｄａｒｋ１＝０．０１（１％）として、画像の下位レベルから１％分の画素を採取して、採取された画素の最大階調レベル値をＴＨｄａｒｋ１＝２０などとして採取するようにする。以上から、暗い画素として判別された画素数Ｃｏｕｔが算出決定される。【００２９】
つづいて、画像を低レベル画素採取部１１に入力する。低レベル画素採取部１１では、入力画像の全画素を探索して、あらかじめ決めておいた、閾値ＴＨｄａｒｋ２を用いて、階調レベル値がＴＨｄａｒｋ２未満であれば、暗い画素として判別し、ＴＨｄａｒｋ２以上であれば明るい画素として判別を行い、暗い画素をして判別された画素数をカウントし、これをＣｄａｒｋとする。【００３０】
ここで、あらかじめ決めておいた閾値ＴＨｄａｒｋ２は、十分暗いレベル値と判別される画素値を固定値として採用してよい。あるいは、入力画像ごとに階調レンジが異なる場合は、入力画像各々について、階調レベル値の累積度数分布を採取して、あらかじめ決めておいた割合Ｒｄａｒｋ２を用いて、画像の全画素数に対して、割合Ｒｄａｒｋ２の画素数分の画素を下位レベル値側から探索し、画素の数が全体の画素数の割合Ｒｄａｒｋ２となる画素まで下位レベルから採取したときの、採取された最大の階調レベル値を閾値ＴＨｄａｒｋ２として採用してもよい。【００３１】
たとえば、２５６階調の画素について（ここでは、１つの階調値のみがあるとして説明するが、実際には、Ｒ値、Ｇ値、Ｂ値が存在し、それぞれについて処理を行う。あるいは、ＲＧＢ値を明度値に変換してから処理を行ってもよい。）、閾値ＴＨ２について固定値とする場合は、ＴＨｄａｒｋ２＝６０を採用し、画像ごとに異なる階調レンジに対して、ダイナミックに決定する場合は、割合Ｒｄａｒｋ２＝０．３（３０％）として、全画像の画素値の下位レベルから３０％分の数の画素を採取して、採取された画素のうちの最大の階調レベル値をＴＨｄａｒｋ２＝４０などとして採取するようにする。【００３２】
ここで、得られた画素数Ｃｄａｒｋと、入力画像の全画素数Ｃａｌｌを用いて、全体画素数に対するＣｄａｒｋの割合Ｒｄａｒｋ（＝Ｃｄａｒｋ／Ｃａｌｌ）が算出決定される。【００３３】
つづいて、画像を外接画素領域拡張部１２に入力する。前段の外接画素採取部１０で探索された、外接画素Ｐｏｕｔに基づいて、領域拡張を行う。領域拡張とは、一般的なラベリング処理をさす。ラベリング処理においては、注目画素をスタート画素としてエリア番号のラベルをつけ、この画像の周囲画素を探索して、スタート画素との色差が、あらかじめ決めておいた色差ＤＩＦＦｒｅｇ以内であれば、スタート画素と現在注目している周囲画素は、同一エリアとみなし、スタート画素と同じエリア番号のラベルを与える動作を行う。新たにラベルを与えた周囲画素を再びスタート画素にして、探索を繰り返し、ラベリングする画素がなくなるまで、処理を繰り返す。【００３４】
図７は、領域拡張処理を説明する図である。
まず、図７の（１）にあるように、外接画素から領域拡張をするための元になる画素を選ぶ。図７の（１）においては、「１」、「２」、「３」とラベリングされた画素が領域拡張を行うための元になる画素である。次に、図７の（２）に示されるように、「１」、「２」、「３」とラベリングされた画素に隣り合う画素の階調値とラベリングされた画素の階調値との差を計算し、計算値が閾値以下であれば、両者は同じ領域に属する画素であるとして、ラベリングされた画素と、これに隣接する画素に同じラベルを付与する。たとえば、図７の（３）に示されるように、「１」の画素の階調値とこの隣接画素の階調値の差が閾値以下であれば、この隣接画素にはラベル「１」を与える。同様に、階調値の差が閾値以下であれば、「２」の画素の隣接画素には、ラベル「２」を、「３」の画素の隣接画素には、ラベル「３」を付与する。こうして、画像矩形の外接画素をスタート画素にして、領域拡張を行い、外接画素と連続するとみなされる画素領域を採取し、得られた拡張領域の画素をＳｒｅｇとする。そして、拡張領域に含まれる画素をスタート画素に再設定し、同様の処理を行い、拡張処理がこれ以上進まない状態になるまで、処理を繰り返す。【００３５】
さらに、得られたＳｒｅｇについて、Ｓｒｅｇ領域に該当する画素を探索してＳｒｅｇ内画素の標準偏差ＳＴＤＥＶｒｅｇを採取する。ＳＴＤＥＶｒｅｇは、領域拡張された中の画素階調値の変化量を示し、階調が大きく変動する場合は大きな値を示し、階調値の変化量が小さい場合は小さな値を示すものである。こうして画像矩形の外接画素の連続した画素領域の階調変化量ＳＴＤＥＶｒｅｇが算出決定される。【００３６】
つづいて、ローキー画像判定部１３に、前述の外接画素採取部１０で得られたＣｏｕｔ、および、低レベル画素採取部１１で得られたＲｄａｒｋ、および、外接画素領域拡張部１２で得られたＳＴＤＥＶｒｅｇの３つの情報を入力する。【００３７】
ＣｏｕｔがＴＨｊｕｄｇｅ１以上であり、かつＲｄａｒｋがＴＨｊｕｄｇｅ２以上であり、かつＳＴＤＥＶｒｅｇがＴＨｊｕｄｇｅ３未満である場合を、ローキー画像としで判別し、それ以外はアンダー画像として判別する。【００３８】
Ｃｏｕｔは、値が大きくなるにつれて画像矩形に外接する画素が増えるか、ローキー特有の暗闇領域に該当する画素が増えることを意味し、ローキーの可能性が高いことを示す。【００３９】
また、Ｒｄａｒｋは値が大きくなるにつれて、入力画像が暗い画像であることを示すが、画像の外接部分のすぐ内側に明るい画素が多数存在するような画像の場合は、本値が小さくなり、ローキー画像やアンダー画像である可能性は低くなる。【００４０】
またＳＴＤＥＶｒｅｇは、値が高くなるほど、矩形外接の画素と連続する暗闇領域について階調変化があるため、元来階調があり画像がアンダーである可能性が高いことを示し、値が低い場合は、階調変化が少なく、たとえば、元来階調の少ない夜景背景の暗闇の領域であり、画像はローキーである可能性が高いことを示す。【００４１】
つづいて、ローキー画像と判定された画像を、夜景画像判定部１４に入力する。夜景画像判定部１４では、入力画像の画素Ｐｎｉｇｈｔを探索して、あらかじめ決めておいた、閾値ＴＨｂｒｉｇｈｔを用いて、階調レベル値がＴＨｂｒｉｇｈｔ以上であれば、明るい画素として判別し、ＴＨｂｒｉｇｈｔ未満であれば暗い画素として判別を行い、明るい画素をして判別された画素領域を探索して、これをＳｂｒｉｇｈｔとする。【００４２】
ここで、あらかじめ決めておいた閾値ＴＨｂｒｉｇｈｔは、十分明るいレベル値と判別される画素値を固定値として採用してよい。あるいは、入力画像ごとに階調レンジが異なる場合は、入力画像各々について、階調レベル値の累積度数分布を採取して、あらかじめ決めておいた割合Ｒｂｒｉｇｈｔを用いて、画像の全画素数に対して、割合Ｒｂｒｉｇｈｔの画素数分の画素を上位レベル値側から探索・採取して、上位レベルから採取した画素の数が全画素数の割合Ｒｂｒｉｇｈｔとなった場合に、採取された画素のうちの最低の階調レベル値を閾値ＴＨｂｒｉｇｈｔとして採用してもよい。【００４３】
たとえば、２５６階調の画素について、閾値ＴＨｂｒｉｇｈｔについて固定値とする場合は、ＴＨｂｒｉｇｈｔ＝２４５を採用し、画像ごとに異なる階調レンジに対して、ダイナミックに決定する場合は、割合Ｒｂｒｉｇｈｔ＝０．０１（１％）として、画像の上位レベル側から１％の画素を採取して、採取された画素内の最低の階調レベル値をＴＨｂｒｉｇｈｔ＝２５０などとして採取するようにする。以上から、明るい画素として判別された画素領域Ｓｂｒｉｇｈｔが算出決定される。【００４４】
つづいて、得られたＳｂｒｉｇｈｔの画素領域の周囲画素を探索して、これら周囲画素領域Ｓｒｏｕｎｄを決定する。
Ｓｒｏｕｎｄは、Ｓｂｒｉｇｈｔをあらかじめ決めておいた画素数Ｗを用いて膨張処理を行って生成すればよい。または、画像上であらかじめ決めておいたサイズＷ×Ｗピクセルによるウィンドウ探索処理を行って決定してもよい。【００４５】
図８は、ウィンドウ探索処理を説明する図である。
図８では、３×３のウィンドウを使っている。図８の（１）から（２）のように、ウィンドウを画素領域上で移動し、ウィンドウの中心に、明るい画素Ｓｂｒｉｇｈｔがあるか否かを判断する。図８の（１）、（２）では、Ｓｂｒｉｇｈｔは、ラベル「１」の画素として表されている。そして、Ｓｂｒｉｇｈｔが、図８の（３）に示されるように、ウィンドウの中心にきたら、ウィンドウに含まれる他の画素は、Ｓｂｒｉｇｈｔの周囲画素領域Ｓｒｏｕｎｄであるので、Ｓｂｒｉｇｈｔと同じラベル「１」を付けて、Ｓｒｏｕｎｄとして登録する。これにより、画素領域内のどの画素が、どのＳｂｒｉｇｈｔの周囲画素であるかが分かるようになる。【００４６】
Ｗは１以上の整数値である。画像の画素を探索して、注目画素がＳｂｒｉｇｈｔ上であったなら、Ｗ×Ｗサイズのウィンドウ内にある画素で、Ｓｂｒｉｇｈｔの対象画素でないものは、Ｓｒｏｕｎｄとして採用する。こうしてウィンドウ処理を全ての画素上で行い、Ｓｂｒｉｇｈｔ領域を決定する。【００４７】
たとえば、膨張処理による場合や、ウィンドウ処理による場合において、Ｗ＝３といった数値を採用する。以上から、明るい画素領域の周囲画素領域Ｓｒｏｕｎｄが算出決定される。【００４８】
なお、図８では、Ｓｂｒｉｇｈｔは、単一の画素として示しているが、実際には、画素領域内の明るい部分は、複数の画素で構成されているのが通常であるので、Ｓｂｒｉｇｈｔは、明るい複数の画素で構成された領域となる。【００４９】
つぎに、Ｓｂｒｉｇｈｔ画素領域と、Ｓｒｏｕｎｄ画素領域の階調変化を探索して、階調の勾配ＳＬを算出する。
階調の勾配ＳＬは、Ｓｂｒｉｇｈｔ領域の画素平均レベル値ＡＶＥｂｒｉｇｈｔを算出し、またＳｒｏｕｎｄの画素平均レベル値ＡＶＥｒｏｕｎｄを算出して、以下の数式によって算出する。【００５０】
ＳＬ＝｜ＡＶＥｂｒｉｇｈｔ  −  ＡＶＥｒｏｕｎｄ｜／Ｗ
ここで、ＡＶＥｒｏｕｎｄについて、Ｓｒｏｕｎｄの画素平均レベルとしたが、ＳｒｏｕｎｄにはＳｂｒｉｇｈｔが隣接している。ＳｒｏｕｎｄとＳｂｒｉｇｈｔをあわせたＳｒｏｕｎｄ＋ｂｒｉｇｈｔによって、画素平均レベル値ＡＶＥｒｏｕｎｄ＋ｂｒｉｇｈｔを算出し、勾配ＳＬを求めてもよい。この場合、計算式は、以下のようになる。【００５１】
Ｓｒｏｕｎｄ＋ｂｒｉｇｈｔ  ＝  Ｓｒｏｕｎｄ  ＋  Ｓｂｒｉｇｈｔ
ＳＬ＝｜ＡＶＥｂｒｉｇｈｔ  −  ＡＶＥｒｏｕｎｄ＋ｂｒｉｇｈｔ｜／Ｗ
つぎに、あらかじめ決めておいた、閾値ＴＨｓｌｏｐｅを用いて、階調の勾配ＳＬが
ＴＨｓｌｏｐｅ以上であれば、入力画像は夜景画像であると判定し、ＴＨｓｌｏｐｅ未満であれば、夜景画像ではないと判定する。【００５２】
ＴＨｓｌｏｐｅは、値が大きくなると、明るい画像領域Ｓｂｒｉｇｈｔから周囲画素のＳｒｏｕｎｄにかけて急激に明るさが変わり、夜景に特有の街灯やネオンサインなどの発光体や光源の周囲に、暗闇背景画像が分布している様子を示す。一方、ＴＨｓｌｏｐｅの値が小さくなると、明るさの変化が急激でなくなり、なだらかに階調が変化して、街灯やネオンサインが存在しない画像状態する階調分布を示している。【００５３】
前述の勾配ＳＬの算出における、Ｓｒｏｕｎｄを用いる場合と、Ｓｒｏｕｎｄ＋ｂｒｉｇｈｔを用いる場合では、Ｓｒｏｕｎｄ＋ｂｒｉｇｈｔを用いる場合は明るいＳｂｒｉｇｈｔの領域の影響を受けてしまうが、夜景画像における勾配が大きくなる特徴と、夜景意外の画像における勾配が小さくなる特徴は、ＳｒｏｕｎｄおよびＳｒｏｕｎｄ＋ｂｒｉｇｈｔの両者の場合で成立する。よって、勾配ＳＬの算出においては、Ｓｒｏｕｎｄを用いてもＳｒｏｕｎｄ＋ｂｒｉｇｈｔを用いてもよい。【００５４】
たとえば、２５６階調の画像において、閾値ＴＨｓｌｏｐｅ＝２００といった値を採用する。こうして、入力画像がローキーで、かつ、夜景であるか、もしくは、ローキーであるが夜景ではないか、を判別決定する。【００５５】
つづいて、ローキー画像であるが夜景画像でないと判別された画像を、夕景画像判定部１５に入力する。夕景画像判定部１５では、入力画像の画素Ｐｓｕｎｓｅｔを探索して、あらかじめ決めておいた、閾値ＴＨｓｕｎｓｅｔを用いて、階調レベル値がＴＨｓｕｎｓｅｔ以上であれば、明るい画素として判別し、ＴＨｓｕｎｓｅｔ未満であれば暗い画素として判別を行い、明るい画素と判別された画素領域を探索・採取して、これをＳｓｕｎｓｅｔとする。【００５６】
ここで、あらかじめ決めておいた閾値ＴＨｓｕｎｓｅｔは、十分明るいレベル値と判別される画素値を固定値として採用してよい。あるいは、入力画像ごとに階調レンジが異なる場合は、入力画像各々について、階調レベル値の累積度数分布を採取して、あらかじめ決めておいた割合Ｒｓｕｎｓｅｔを用いて、画像の全画素数に対して、画素の数が割合Ｒｓｕｎｓｅｔの画素数分の画素を上位レベル値側から探索・採取して、採取された画素の数が全画素数に対して割合Ｒｓｕｎｓｅｔとなった場合に、採取された画素の内の最低の階調レベル値を閾値ＴＨｓｕｎｓｅｔとして採用してもよい。【００５７】
たとえば、２５６階調の画素について、閾値ＴＨｓｕｎｓｅｔについて固定値とする場合は、ＴＨｓｕｎｓｅｔ＝２００を採用し、画像ごとに異なる階調レンジに対して、ダイナミックに決定する場合は、割合Ｒｓｕｎｓｅｔ＝０．３（３０％）として、画像の上位レベル側から３０％の画素を採取して、採取された画素の内の最低の階調レベル値をＴＨｓｕｎｓｅｔ＝２１０などとして採取するようにする。以上から、明るい画素として判別された画素領域Ｓｓｕｎｓｅｔが算出決定される。【００５８】
次に、Ｓｓｕｎｓｅｔの領域画素について、平均明度Ｌｓｕｎｓｅｔ、平均彩度Ｃｓｕｎｓｅｔ、平均色相角度Ｈｓｕｎｓｅｔを算出する。
ここで、あらかじめ決めておいた、平均的・一般的な夕焼けの明度Ｌｒｅｆ、彩度Ｃｒｅｆ、色相角度Ｈｒｅｆと、比較して、平均明度Ｌｓｕｎｓｅｔ、平均彩度Ｃｓｕｎｓｅｔ、平均色相角度Ｈｓｕｎｓｅｔを比較して、色差ＤＩＦＦｓｕｎｓｅｔを求める。たとえば、色差ＤＩＦＦｓｕｎｓｅｔは以下の算式を使用する。【００５９】
ＤＩＦＦｓｕｎｓｅｔ＝ａ｜Ｌｓｕｎｓｅｔ  −  Ｌｒｅｆ｜＋
ｂ｜Ｃｓｕｎｓｅｔ  −  Ｃｒｅｆ｜＋
ｃ｜Ｈｓｕｎｓｅｔ  −  Ｈｒｅｆ｜
ここで、ａ、ｂ、ｃは、明度、彩度、色相角度の内いずれを重視するかを決める重み係数である。【００６０】
たとえば、ａ＝ｂ＝ｃ＝１、平均的、一般的な夕景の明るい画素領域の参照値として、Ｌｒｅｆ＝２２０、Ｃｒｅｆ＝３０、Ｈｒｅｆ＝６０°（橙色を中心とし、赤〜黄色の色相部分）を採用する。【００６１】
つぎに、色差ＤＩＦＦｓｕｎｓｅｔについて、あらかじめ決めておいた、閾値ＴＨｄｉｆｆｓｕｎｓｅｔを用いて、色差がＴＨｄｉｆｆｓｕｎｓｅｔ未満であれば、ローキー画像で、かつ、夕景画像である、として判別し、色差がＴＨｄｉｆｆｓｕｎｓｅｔ以上であれば、ローキー画像だが夕景でない画像、として判別する。【００６２】
たとえば、入力画像が夕景画像の特徴に近いかどうかを判定する閾値をＴＨｄｉｆｆｓｕｎｓｅｔ＝２４などとして採用する。
こうして、入力画像がローキーでかつ夕景であるか、もしくはローキーであるが夕景ではないか、を判別決定する。【００６３】
以上説明したように、本説明によれば、入力画像をローキー画像であるかアンダー画像であるかを判別し、ローキー画像である場合は、さらに夜景画像であるか夕景画像であるかを精度良く高速に判別することができる。【００６４】
なお，本実施形態の手順のうち、外接画像採取部１０のみ実施してローキー画像とアンダー画像を判定して処理を終了する場合や、外接画像採取部１０と低レベル画素採取部１１のみ実施してローキー画像とアンダー画像を判定して処理を終了する場合や、外接画像採取部１０と低レベル画素採取部１１とローキー画像判定部１３のみを実施してローキー画像とアンダー画像を判定して処理を終了する場合、外接画像採取部１０と低レベル画素採取部１１とローキー画像判定部１３と夜景画像判定部１４のみを実施してローキー画像とアンダー画像を判定して処理を終了する場合などでも処理を実施することができ、そのような実装では、より高い精度でのローキー画像の判別や夜景・夕景等の判別まではできないが、処理速度を高めることができる。【００６５】
図９〜図１７は、本発明の実施形態に従った処理のフローチャートである。
図９は、外接画素処理部の処理フローである。
まず、ステップＳ１０において、閾値より小さな階調レベルを有する外接画素の数を計数する変数Ｃｏｕｔを０に初期化する。ステップＳ１１において、外接画素Ｐｏｕｔの階調レベルを採取する。ステップＳ１２において、Ｐｏｕｔの階調レベルが所定の閾値ＴＨｄａｒｋ１より小さいか否かを判断する。ステップＳ１２の判断がＮｏの場合には、ステップＳ１４に進む。ステップＳ１２の判断がＹｅｓの場合には、ステップＳ１３において、Ｃｏｕｔを１だけ増加し、ステップＳ１４に進む。ステップＳ１４においては、全外接画素Ｐｏｕｔについて、階調レベルを採取したか否かを判断する。ステップＳ１４の判断がＮｏの場合には、ステップＳ１１に戻り、他の外接画素Ｐｏｕｔの階調レベルを取得して、以下の処理を行う。ステップＳ１４の判断がＹｅｓの場合には、ステップＳ１５において、Ｃｏｕｔを出力して処理を終了する。【００６６】
図１０は、ＴＨｄａｒｋ１の決定方法示す処理フローである。
図１０（ｂ）のフローチャートでは、閾値ＴＨｄａｒｋ１を画像ごとにダイナミックに設定するための処理を示している。閾値ＴＨｄａｒｋ１の決め方は、図１０（ａ）のような画素の階調レベルの発生累積度数を表すヒストグラムを生成し、このヒストグラムに基づいて閾値ＴＨｄａｒｋ１を決定するというものである。【００６７】
まず、ステップＳ２０において、ヒストグラムを形成するための配列Ｃｎｔ［２５６］を０に初期化する。ステップＳ２１において、画像中の画素の階調レベル値Ｐｉｘを採取する。ステップＳ２２において、階調レベルＰｉｘの累積度数Ｃｎｔ［ｐｉｘ］を１だけ増加する。ステップＳ２３において、すべての画素の画素値Ｐｉｘについてカウントをしたか否かを判断する。ステップＳ２３の判断がＮｏの場合には、ステップＳ２１に戻る。ステップＳ２３の判断がＹｅｓの場合には、ステップＳ２４に進む。【００６８】
ステップＳ２４においては、閾値ＴＨｄａｒｋ１を０に初期化し、ステップＳ２５において、Ｍに、階調レベルｉの累積度数を加算する。ステップＳ２６において、ステップＳ２５で演算された画素の累積度数が全画素数の所定の割合（Ｒｄａｒｋ１：予め決めておく）以上になったか否かを判断する。ステップＳ２６の判断がＮｏの場合には、階調レベルｉを１だけ増加し、ステップＳ２５に戻って、次の階調レベルまでの累積度数を計算する。ステップＳ２６の判断がＹｅｓの場合には、ステップＳ２８において、ｉの値を閾値ＴＨｄａｒｋ１に設定して、出力する。【００６９】
図１１は、低レベル画素採取部の処理フローである。
ステップＳ３０において、低階調レベルの画素数をカウントする変数であるＣｄａｒｋを０に初期化する。ステップＳ３１において、画像画素の階調レベル値Ｐｉｘを採取する。ステップＳ３２において、採取された階調レベル値Ｐｉｘが、閾値ＴＨｄａｒｋ２より小さいか否かを判断する。この閾値ＴＨｄａｒｋ２は、予め決めておくか、図１０と同じ方法で決定しておく。ステップＳ３２の判断がＮｏの場合には、ステップＳ３４に進む。ステップＳ３２の判断がＹｅｓの場合には、ステップＳ３３において、Ｃｄａｒｋを１だけ増加する。そして、ステップＳ３４において、全画素のＰｉｘについて採取・処理したか否かを判断する。ステップＳ３４の判断がＮｏの場合には、ステップＳ３１に戻る。ステップＳ３４の判断がＹｅｓの場合には、ステップＳ３５において、画像の全画素数Ｃａｌｌを用いて、Ｃｄａｒｋ／Ｃａｌｌを計算し、Ｒｄａｒｋとする。ステップＳ３６において、Ｒｄａｒｋを出力し、処理を終了する。【００７０】
図１２は、外接画素領域拡張部の処理フローである。
まず、ステップＳ４０において、外接画素をラベリングする配列Ｓｒｅｇを初期化し、外接画素Ｐｏｕｔをスタート画素Ｐｎｅｘｔに設定する。Ｓｒｅｇは外接画素の数だけ設ける。ステップＳ４１において、スタート画素Ｐｎｅｘｔとスタート画素Ｐｎｅｘｔに接する隣接画素Ｐｃｌｏｓｅを採取する。ステップＳ４２において、Ｐｎｅｘｔの階調レベルとＰｃｌｏｓｅの階調レベルの差の絶対値が予め決められた閾値ＤＩＦＦｅｇより小さいか否かを判断する。ステップＳ４２の判断がＹｅｓの場合には、ＰｃｌｏｓｅとＰｎｅｘｔは同一領域に属すると判断し、ＰｃｌｏｓｅをＳｒｅｇ［Ｐｎｅｘｔ］に登録する。ステップＳ４４では、同一エリアとして判断されたＰｃｌｏｓｅを新たにスタート画素Ｐｎｅｘｔとして設定して、ステップＳ４１に戻る。ステップＳ４２の判断がＮｏの場合には、ステップＳ４５において、すべての外接画素Ｐｏｕｔについて領域拡張処理を施したか否かを判断する。ステップＳ４５の判断がＮｏの場合には、ステップＳ４１に戻って、処理を繰り返す。ステップＳ４５の判断がＹｅｓの場合には、ステップＳ４６において、各スタート画素について、Ｓｒｅｇ内の階調レベルの標準偏差ＳＴＤＥＶｒｅｇを計算し、ステップＳ４７で、これを出力して、処理を終了する。【００７１】
図１３は、ローキー画像判定部の処理フローである。
ステップＳ５０において、上記で計算されたＣｏｕｔ、Ｒｄａｒｋ、ＳＴＤＥＶｒｅｇを入力し、ステップＳ５１において、ＣｏｕｔがＴＨｊｕｄｇｅ１以上であり、かつ、ＲｄａｒｋがＴＨｊｕｄｇｅ２以上であり、かつ、ＳＴＤＥＶｒｅｇがＴＨｊｕｄｇｅ３以下であるか否かを判断する。ここで、閾値ＴＨｊｕｄｇｅ１、ＴＨｊｕｄｇｅ２、ＴＨｊｕｄｇｅ３は、予め決めておく。ステップＳ５１の判断がＹｅｓの場合には、ステップＳ５２において、画像はローキー画像であると判定し、結果を出力する。ステップＳ５１の判断がＮｏの場合には、画像はアンダー画像であると判定し、結果を出力する。【００７２】
図１４及び図１５は、夜景画像判定部の処理フローである。
ステップＳ５５において、画像内の明るい画素を登録する配列Ｓｂｒｉｇｈｔを全画素数分用意し、０に初期化する。ステップＳ５６において、画素Ｐｎｉｇｈｔの階調レベルを採取する。ステップＳ５７において、画素Ｐｎｉｇｈｔの階調レベルがＴＨｂｒｉｇｈｔより大きいか否かを判断する。ＴＨｂｒｉｇｈｔは、予め決めておいても良いし、図１０と同じ方法によって画像ごとに決定しても良い。ステップＳ５７の判断がＮｏの場合には、ステップＳ５９に進む。ステップＳ５７の判断がＹｅｓの場合には、ステップＳ５８において、Ｐｎｉｇｈｔは、明るい画素であると判別し、Ｓｂｒｉｇｈｔに登録する。ステップＳ５９において、全画素について階調レベルを採取し、処理したか否かを判断する。ステップＳ５９の判断がＮｏの場合には、ステップＳ５６に戻って処理を繰り返す。ステップＳ５９の判断がＹｅｓの場合には、ステップＳ６０に進む。【００７３】
ステップＳ６０においては、明るい画素Ｓｂｒｉｇｈｔの近傍画素を採取して、Ｓｒｏｕｎｄとする。ステップＳ６１について、すべてのＳｂｒｉｇｈｔについて近傍画素の取得処理を行ったか否かを判断する。ステップＳ６１の判断がＮｏの場合には、ステップＳ６０に戻って、近傍画素の採取を行う。ステップＳ６１の判断がＹｅｓの場合には、ステップＳ６２において、Ｓｂｒｉｇｈｔに属する画素の平均階調レベルを算出する。ステップＳ６３では、Ｓｒｏｕｎｄに属する画素の平均階調レベルを算出する。ステップＳ６４においては、明るい画素とその近傍画素の階調レベルの勾配を以下の式に基づいて算出する。
勾配ＳＬ＝｜ＡＶＥｂｒｉｇｈｔ−ＡＶＥｒｏｕｎｄ｜／Ｗ
ここで、Ｗは、近傍画素を採取する際に用いたウィンドウの幅である。近傍画素を採取する際に、ウィンドウを使った方法ではなく、領域拡張処理を使った場合には、Ｗは１である。【００７４】
ステップＳ６５においては、ＳＬが、予め設定される閾値ＴＨｓｌｏｐｅ以上か否かを判断する。ステップＳ６５の判断がＹｅｓの場合には、ステップＳ６６において、画像は夜景画像であると判定し、結果を出力する。ステップＳ６５の判断がＮｏの場合には、画像は夜景画像ではないと判定し、結果を出力する。【００７５】
図１６及び図１７は、夕景画像判定部の処理フローである。
ステップＳ７０において、夕景画像の判定に使う画素の登録に使う配列Ｓｓｕｎｓｅｔを全画素数分用意し、０に初期化する。ステップＳ７１において、画像の画素をＰｓｕｎｓｅｔとして採取し、ステップＳ７２において、画素Ｐｓｕｎｓｅｔの階調レベルが予め定められるＴＨｓｕｎｓｅｔより大きいか否かを判断する。ステップＳ７２の判断がＮｏの場合には、ステップＳ７４に進む。ステップＳ７２の判断がＹｅｓの場合には、ステップＳ７３において、当該画素Ｐｓｕｎｓｅｔは、明るい画素であると判断し、Ｓｓｕｎｓｅｔに登録する。ステップＳ７４においては、画像の全画素を採取し、処理したか否かを判断する。ステップＳ７４の判断がＮｏの場合には、ステップＳ７１に戻る。ステップＳ７４の判断がＹｅｓの場合には、ステップＳ７５において、Ｓｓｕｎｓｅｔに登録されている明るい画素すべてについて平均明度Ｌｓｕｎｓｅｔを算出する。ステップＳ７６において、Ｓｓｕｎｓｅｔの明るい画素について、平均彩度Ｃｓｕｎｓｅｔを算出する。ステップＳ７７において、Ｓｓｕｎｓｅｔの明るい画素について、平均色相Ｈｓｕｎｓｅｔを算出する。ステップＳ７８において、以下の式により、色差ＤＩＦＦｓｕｎｓｅｔを計算する。
ＤＩＦＦｓｕｎｓｅｔ＝ａ｜Ｌｓｕｎｓｅｔ−Ｌｒｅｆ｜＋ｂ｜Ｃｓｕｎｓｅｔ−Ｃｒｅｆ｜＋ｃ｜Ｈｓｕｎｓｅｔ−Ｈｒｅｆ｜
ここで、ａ、ｂ、ｃは、上記式の内、その項を重視するかを決定する重み係数であり、Ｌｒｅｆは、平均明度の基準値、Ｃｒｅｆは、平均彩度の基準値、Ｈｒｅｆは、平均色相の基準値である。各基準値は、典型的な夕景画像を用いて予め算出し、設定しておくべきものである。【００７６】
ステップＳ７９において、ＤＩＦＦｓｕｎｓｅｔが、予め設定される閾値ＴＨｄｉｆｆｓｕｎｓｅｔより小さいか否かを判断する。ステップＳ７９の判断がＹｅｓの場合には、ステップＳ８０において、画像がローキー画像であり、かつ、夕景画像であると判定し、結果を出力する。ステップＳ７９の判断がＮｏの場合には、画像はローキー画像であるが、夜景でも夕景でもない画像であると判定し、結果を出力する。【００７７】
以上の本発明の実施形態の画像判別方法は、デジタルカメラ、イメージスキャナ、プリンタ、新聞やＤＴＰの画像システムなど、画像を扱う装置やアプリケーションプログラムに適用が可能である。
【図６】
0004750801.tif 000002
【図７】
0004750801.tif 000003
【図８】
0004750801.tif 000004
【図９】
0004750801.tif 000005
【図１０】
0004750801.tif 000006
【図１１】
0004750801.tif 000007
【図１２】
0004750801.tif 000008
【図１３】
0004750801.tif 000009
【図１４】
0004750801.tif 000010
【図１５】
0004750801.tif 000011
【図１６】
0004750801.tif 000012
【図１７】
0004750801.tif 000013
【図１】
0004750801.tif 000014
【図２】
0004750801.tif 000015
【図３】
0004750801.tif 000016
【図４】
0004750801.tif 000017
【図５】
0004750801.tif 000018