(57)【要約】【課題】対象画像中に互いに類似する複数の色の領域が複数存在する場合でも、それら各色を検出できるようにする。【解決手段】画像分割部１２は入力画像データを所定の区分規則に従って複数の領域に区分する。有彩色・無彩色判定部１４は、入力画像データ内の各画素が有彩色であるか無彩色かを判定する。ヒストグラム作成部１６は、領域ごとにその領域内の有彩色と判定された各画素の色相値を求め、それら各画素の色相値から色相ヒストグラムを生成する。各領域の色相ヒストグラムに基づき、色検出処理部２０は、各領域に存在する色を検出する。検出色総合部３０は、色検出処理部２０が求めた各領域に存在する色を総合することで、入力画像データに存在する色をすべて求める。【選択図】図４
2009230604.tif 000002
【特許請求の範囲】
【請求項１】
入力画像を複数の領域に区分する区分手段と、
前記区分手段により区分された前記領域ごとに、当該領域における各画素の色値から当該領域における色値の頻度分布を算出する分布算出手段と、
前記領域ごとに、前記分布算出手段が算出した前記頻度分布から山を求め、求めた各山に対応する色をそれぞれ当該領域に存在する色と判定する領域色判定手段と、
前記領域色判定手段が前記各領域に存在すると判定した色を前記複数の領域にわたって集計することで、前記入力画像に存在する色を求める全体色判定手段と、
を備える色抽出装置。
【請求項２】
前記分布算出手段が算出した第１の領域の前記頻度分布の各山の色値方向についての分布範囲と、前記分布算出手段が算出した第２の領域の前記頻度分布の各山の色値方向についての分布範囲との間の差分を求め、求められた差分に対応する色を前記入力画像に存在する色として追加する追加手段、
を更に備える請求項１記載の色抽出装置。
【請求項３】
コンピュータを、
入力画像を複数の領域に区分する区分手段、
前記区分手段により区分された前記領域ごとに、当該領域における各画素の色値から当該領域における色値の頻度分布を算出する分布算出手段、
前記領域ごとに、前記分布算出手段が算出した前記頻度分布から山を求め、求めた各山に対応する色をそれぞれ当該領域に存在する色と判定する領域色判定手段、
前記領域色判定手段が前記各領域に存在すると判定した色を前記複数の領域にわたって集計することで、前記入力画像に存在する色を求める全体色判定手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、色抽出装置及びプログラムに関する。
【背景技術】
【０００２】
カラー画像に対する画像処理の一つに色抽出がある。カラー画像中にある１以上の色（その色を代表する画素値や、その色の範囲など）を検出する処理である。
【０００３】
このような処理は、例えば、紙文書をスキャンして電子的にファイリングするシステムに利用されている。このシステムでは、ユーザが紙文書中のキーワードをラインマーカーで塗る（マーキング）と、その装置がその紙文書のスキャン結果の画像からラインマーカーで塗られた領域を抽出し、その領域内に属する画像が示す文字列を認識し、認識結果をキーワードとしてスキャン結果の画像と対応づけてファイリング（データベースに保存）する。異なる複数の色のマーカーを用い、それぞれの色により領域を区別することも行われている。例えば文書中の複数のキーワードをそれぞれ別の色のマーカーでマーキングしたり、文書中の日付と著者名を別々の色でマーキングしたりするような使い分けである。なお、マーカーを利用した電子ファイリングは一例に過ぎず、色領域識別の応用分野はこれ以外にもいろいろある。
【０００４】
さて、このような色領域識別では、古くは識別対象の各色をあらかじめ登録しておき、それら各色に近い画素をそれぞれ各色の画素として抽出することが行われていた。しかし、この手法では識別すべき色が登録した色からある程度ずれると正しい識別ができない。例えばマーカーの色みはマーカーのメーカーによって多少異なるので、あるメーカーの黄色と青のマーカーの色を装置に登録した場合、その装置では別のメーカーのマーカーを用いてマーキングしたものは適切に識別できないことがある。また、同一のマーカーであっても、時間の経過により色が変化することもあるし、用紙の地色が異なればマーカーで引いた線の色も異なってくるので、このような場合にも、固定的に登録した色に基づき識別する方式では正しい識別ができない場合がある。
【０００５】
そこで、従来、識別処理の対象となる画像を解析して画素値のヒストグラムを作成し、そのヒストグラムが示す画素値の分布から、各色の範囲を分けるしきい値を適応的に算出する技術が用いられている。
【０００６】
例えば、特許文献１の手法では、入力画像の色相ヒストグラムを作成し、高さ閾値と比較して有効なピークか判定する。有効である場合、波形の立ち上がり/立ち下がり位置を検索する。立ち上がり/立ち下がり位置を色識別の閾値とし、この中点を代表色として抽出する。
【０００７】
また、特許文献２の手法では、極座標を使用して色抽出を行う。色相ヒストグラムを作成し、そのヒストグラムを平滑化する。そして、平滑化された色相ヒストグラムを閾値で二値化し、注目色相位置の両端がＯＮとＯＦＦである範囲を代表色とした色変換テーブルを作成する。
【０００８】
また、特許文献３の手法では、ＲＧＢ（赤緑青）の各色成分についての濃度ヒストグラムを作成し、これを微分して極大値を求め、最も明るい極大値を用紙の地色とする。用紙地色の極大点から他の各極大点へのベクトルを計算し、それらベクトルをクラスタ分析し、分析の結果得られたクラスタごとに、そのクラスタ内の極大点の最小値をそのクラスタの色とする。
【０００９】
【特許文献１】特開平２−２０４８７９号公報
【特許文献２】特開平４−３２６２５１号公報
【特許文献３】特開平５−６１９７４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
画素値のヒストグラムを用いて色抽出を行う手法では、対象画像中に互いに類似する複数の色の領域が複数存在する場合、ヒストグラム中ではそれら各色の山が重なることで１つの大きなピークが形成されるため、それら各色を弁別して抽出することが困難であった。
【課題を解決するための手段】
【００１１】
本発明の１つの側面では、入力画像を複数の領域に区分する区分手段と、前記区分手段により区分された前記領域ごとに、当該領域における各画素の色値から当該領域における色値の頻度分布を算出する分布算出手段と、前記領域ごとに、前記分布算出手段が算出した前記頻度分布から山を求め、求めた各山に対応する色をそれぞれ当該領域に存在する色と判定する領域色判定手段と、前記領域色判定手段が前記各領域に存在すると判定した色を前記複数の領域にわたって集計することで、前記入力画像に存在する色を求める全体色判定手段と、を備える色抽出装置を提供する。
【００１２】
１つの態様では、色抽出装置は、前記分布算出手段が算出した第１の領域の前記頻度分布の各山の色値方向についての分布範囲と、前記分布算出手段が算出した第２の領域の前記頻度分布の各山の色値方向についての分布範囲との間の差分を求め、求められた差分に対応する色を前記入力画像に存在する色として追加する追加手段、を更に備える。
【００１３】
本発明の別の態様では、コンピュータを、入力画像を複数の領域に区分する区分手段、前記区分手段により区分された前記領域ごとに、当該領域における各画素の色値から当該領域における色値の頻度分布を算出する分布算出手段、前記領域ごとに、前記分布算出手段が算出した前記頻度分布から山を求め、求めた各山に対応する色をそれぞれ当該領域に存在する色と判定する領域色判定手段、前記領域色判定手段が前記各領域に存在すると判定した色を前記複数の領域にわたって集計することで、前記入力画像に存在する色を求める全体色判定手段、として機能させるためのプログラムを提供する。
【発明を実施するための最良の形態】
【００１４】
まず図１及び図２を参照して、原稿全体についてのヒストグラムを作成する従来手法の問題点を説明する。
【００１５】
図１は異なる複数の色の色領域Ｏ，Ｂ，Ｙを含んだ原稿１００を示している。色領域Ｏはオレンジ色、色領域Ｂは青色、色領域Ｙは黄色、でそれぞれ塗られた領域である。色領域Ｏに比して色領域Ｙは非常に小さい。
【００１６】
従来技術では、この原稿１００をスキャナ等の画像読取装置で読み取って得たフルカラーのデジタル画像の各画素の色値を求め、色値ごとにその色値を持つ画素数を集計することで、色値を横軸とし画素数を縦軸とするヒストグラムを生成する。このヒストグラムは、原稿１００における各色値の頻度分布を示している。
【００１７】
ここで着目する色値は典型的には色相である。ただしこれに限られるものではなく、色相と明度のペア、ＲＧＢ（赤緑青）の各成分値の組、Ｌ*ａ*ｂ*の各成分値の組などを、「色値」としてもよい。以下では、簡単のために、色値は色相であるとする。
【００１８】
図１の原稿１００を読み取って得たカラーデジタル画像の全画素にわたって求めた、有彩色画素の色相ヒストグラム（を平滑化したもの）を図２に模式的に示す。この例から分かるように、ヒストグラムでは面積の大きい色領域Ｏ（オレンジ色）に対応する山Ｏが最も高く、その次に大きい色領域Ｂ（青色）に対応する山Ｂが２番目に高い山となっている。オレンジ色及び青色に対応するヒストグラムが単位色相幅の細い柱ではなく、幾分幅の広い山になっているのは、色領域Ｏ及びＢにおける色むらや読取誤差などの影響である。図２のヒストグラムでは、面積が小さい黄色の色領域Ｙに対応する山Ｙは、黄色と色相が近いオレンジ色の大きな山Ｏの中に埋もれてしまっている。
【００１９】
例えば、図２のヒストグラムのピーク（極大値）に基づき原稿１００内に存在する色を検出すると、山Ｏのピークに対応する色相値（オレンジ色）と、山Ｂのピークに対応する色相値（青色）が求められるだけであり、黄色が存在することは検出されない。
【００２０】
ピークに基づき色を検出する場合だけでなく、ヒストグラムにおける山の範囲（色相軸方向についての山の存在範囲）に基づき、色ごとの色相範囲を判定する場合でも、同様に、ヒストグラムからは黄色の山の存在が検出できないので、オレンジ色の範囲と黄色の範囲が共に同じオレンジ色の範囲と認識されてしまう。なお、色ごとの色相範囲を判定するケースには、例えばラインマーカーのマーキングを抽出するアプリケーションにおいて、青色、黄色などの各色の色相範囲を求める場合などがある。
【００２１】
これに対し、本実施形態の手法では、図３に例示するように、原稿１００の画像を複数の区分領域（１）〜（４）に区分し、それぞれに対して、有彩色画素の画素値の色相ヒストグラムを生成する。区分の仕方は特に限定されるものではないが、例えば、画素の各配列方向（一般には縦と横）に沿ってメッシュ状に区分する方法が好ましい。図３の例では、縦２×横２の４つのメッシュに区切っている。ただしこれは一例に過ぎない。
【００２２】
各区分領域（１）〜（４）の画像について求められる色相ヒストグラム（を平滑化したもの）は、図３の分布グラフ１１０−１〜１１０−４のようになる（原稿１００上の画像は、図１の場合と同様とする）。図示のように、区分領域（１）にはオレンジ色の色領域Ｏと青色の色領域Ｂがほぼ同程度の面積で存在するので、分布グラフ１１０−１にはほぼ同じ高さの山Ｏと山Ｂが現れる。区分領域（２）にはオレンジ色の色領域Ｏと、それよりかなり狭い青色の色領域Ｂが存在するので、分布グラフ１１０−２には高い山Ｏとそれより低い山Ｂが現れる。区分領域（３）は白紙なので、分布グラフ１１０−３には山は現れない。そして、区分領域（４）には、黄色の小さい色領域Ｙが存在するので、分布グラフ１１０−４には、黄色の色相範囲に該当する部分に低い山Ｙが現れる。
【００２３】
したがって、分布グラフ１１０−１の各山Ｏ及びＹのピーク（極大値）又は色相範囲から、従来公知の手法により、区分領域（１）にはオレンジ色と青色が存在すると判定できる（すなわち、オレンジ色と青色を抽出できる）。同様に、区分領域（２）にはオレンジ色と青色が存在し、区分領域（３）には色が存在せず（白紙）、区分領域（４）には黄色が存在することが判定できる。
【００２４】
本実施形態では、それら各区分領域（１）〜（４）についての色の抽出結果を総合したものを、原稿１００に存在する色の抽出結果とするのである。この「総合」処理は、例えば、各区分領域（１）〜（４）で見つかった色をＯＲ（論理和）演算のようにすべて採用する処理でよい。このような処理により、原稿１００からオレンジ色、青色、及び黄色を抽出することができる。原稿１００全体の色相ヒストグラムからは抽出できなかった黄色を抽出することができる。
【００２５】
以上、一実施形態の処理の原理を説明した。次に、そのような処理を実行する色抽出装置の機能的な構成の一例を、図４を参照して説明する。
【００２６】
まず、画像入力部１０が処理対象となる入力画像データの入力を受け付ける。画像分割部１２は、その入力画像データを、あらかじめ設定された区分規則（例えば縦横等間隔に３×３の９領域に区分するなど）に従って、複数の領域に区分する。有彩色・無彩色判定部１４は、入力画像データ内の各画素が有彩色であるか無彩色かを判定する。この判定は周知技術であるので説明は省略する。
【００２７】
ヒストグラム作成部１６は、区分された領域ごとに、その領域内の有彩色と判定された各画素の画素値（例えばＲＧＢ）から周知の手法で色相値を求め、それら各画素の色相値から従来周知の処理により、横軸が色相値で縦軸が画素数（その色相値の頻度）を示す色相ヒストグラムを生成する。
【００２８】
生成された領域ごとの色相ヒストグラムに基づき、色検出処理部２０は、領域ごとに、その領域に存在する色を検出する。より具体的には、領域ごとに以下のような処理を行う。すなわち、まずヒストグラム平滑部２２が、当該領域の色相ヒストグラムに対して、従来装置でも行われていたのと同様の周知の平滑化処理を施す。これにより、滑らかな分布グラフ（例えばグラフ１１０−１）が得られる。次に、極大値算出部２４が、その滑らかな分布グラフから画素頻度が極大値（ピーク）となる点を求める。そして、色判定部２６が、極大値算出部２４が算出した各極大値に対応する色を、当該領域に存在する色と判定する。例えば、極大値に対応する色相値を、当該領域に存在する色を表す値と判定すればよい。なお、以上の例はあくまで一例に過ぎない。この代わりに、例えば分布グラフにおける山の存在範囲（色相軸についてのもの）を求め、その存在範囲を示す色相値の下限と上限の組を、当該領域に存在する色を表す情報としてもよい。
【００２９】
以上説明した色検出処理部２０の処理は、区分された領域ごとに行われる点では従来装置と異なるが、個々の領域に対して行われる処理の内容自体は従来装置で用いられているものと同様でよい。
【００３０】
検出色総合部３０は、色検出処理部２０が求めた各領域に存在する色を総合することで、入力画像データに存在する色をすべて求める。
【００３１】
以上のような装置構成により、従来装置では見つからなかった色を抽出できるケースを増やすことができる。
【００３２】
次に、変形例を説明する。
【００３３】
図５に例示する原稿２００の画像には、図１に例示した原稿１００と同様、オレンジ色の色領域Ｏ，青色の色領域Ｂ及び黄色の色領域Ｙが存在するが、色領域Ｙの位置が原稿１００の場合と異なる。原稿２００の画像を図３の例と同様に縦２×横２の４つの区分領域（１）〜（４）に分割すると、黄色の色領域Ｙは区分領域（２）に含まれることになる。
【００３４】
ところが、区分領域（２）には黄色と色相が近いオレンジ色の大きな色領域Ｏが存在しており、この区分領域（２）内の画素について色相ヒストグラム（分布グラフ２１０−２）を作成すると、それは原稿２００全体の色相ヒストグラムと同様、黄色に対応する山がオレンジ色の山Ｏに埋没したものとなる。したがって、区分領域（２）の色相ヒストグラム単体では黄色の存在を検出することはできない。
【００３５】
そこで、この変形例では、区分領域（２）の色相ヒストグラムと他の区分領域の色相ヒストグラムとを組み合わせることで、黄色の存在を検出できるようにする。すなわち、例えば、区分領域（１）と（２）の間で、色相ヒストグラム（分布グラフ２１０−１及び２１０−２）同士を比較すると、青色の山Ｂの色相範囲は１７０〜２００度（色相環上の色相値を純粋な赤を始点に０〜３６０度で表している）で共通であるのに対し、オレンジ色に相当する山Ｏの色相範囲は前者が４０〜７０度、後者が４０〜１００度となっており、相違が見られる。両者の色相範囲の差を求めると、７０〜１００度の色相範囲の画素が原稿２００（の区分領域（２））内に存在することが分かる。そこで、求めた差の色相範囲に対応する色相の色（この場合は黄色）を、個々の区分領域から求められるオレンジ及び青色以外に、原稿２００内に存在する色として追加判定する。
【００３６】
なお、区分領域（３）及び（４）には色が存在しないので分布グラフ２１０−３及び２１０−４は画素頻度が全色相にわたって実質的に０である。分布グラフの山同士の色相範囲の差を求める処理は、そのような色が存在しない領域の分布グラフは対象としなくてよい。
【００３７】
以上では、区分領域の色相の分布グラフ同士の色相範囲の差を求めたが、原稿２００全体の分布グラフを求め、これと各区分領域の分布グラフとの色相範囲同士の差を求め、この差から上述と同様の色抽出を行ってもよい。
【００３８】
この変形例の処理を実行する色抽出装置の機能的な構成の一例を、図６を参照して説明する。図６において、図４に例示した実施形態の装置の要素と同じ要素には、同一符号を付して説明を省略する。
【００３９】
図６の例では、色相ヒストグラム作成部１６は、各区分領域の色相ヒストグラムと、原稿２００全体の色相ヒストグラムを作成する。色検出処理部２０は、図４の色検出処理部２０と同様の内部要素を持っており、それら内部要素より各ヒストグラムを平滑化して分布グラフを求め、求めた各分布グラフのピークや山の範囲に基づき、原稿２００全体及び各区分領域に存在する色をそれぞれ判定する。
【００４０】
色相範囲合致判定部４０は、色検出処理部２０が求めた各区分領域及び原稿２００それぞれの分布グラフから各山の色相範囲を求め、それら分布グラフ同士の間で色相範囲が実質的に一致する山と、一致しない部分を持つ山とをそれぞれ見つけ出す。色相範囲同士の間の差が所定幅（例えば１０度）以下であれば、それら両者が実質的に一致すると判定すればよい。山のない（すなわち有彩色部分を持たない）領域の分布グラフはこの処理の対象とはしない。また、ある分布グラフに存在する山が別の分布グラフに存在しない場合（すなわちある分布グラフに存在する山Ｘの色相範囲について、別の分布グラフでは画素頻度が実質的に０である）は、その山の色相範囲との一致判定では後者の分布グラフは考慮しない。
【００４１】
例えば、図５の例では、考慮すべきすべての分布グラフ２１０−１及び２１０−２の間で、山Ｂの色相範囲同士は実質的に一致しているが、山Ｏの色相範囲同士には有意な差がある。
【００４２】
色相範囲差分算出部４２は、分布グラフ間で実質的に一致していないと判定された山の色相範囲同士の差範囲を求める。例えば図５の例では分布グラフ２１０−１及び２１０−２の間で山Ｏの色相範囲同士の差範囲を求めることで、７０〜１００度という差範囲に該当する色が存在することが分かる。
【００４３】
検出色登録部４４は、色相範囲合致判定部４０で色相範囲が合致すると判定された各山が表す色（例えば山のピークの色相値又は山の色相範囲自体）と、色相範囲差分算出部４２が求めた差範囲に対応する色（例えば差範囲の中央値、又は差範囲自体）とを、原稿２００から抽出された色として登録する。
【００４４】
以上の変形例では、分布グラフ間で対応する山同士の色相範囲の差（差範囲）が見つかった場合に、その差に対応する色を、直ちに、原稿内に存在する色として採用したが、これは一例である。この他に、そのような差範囲が見つかった場合、差範囲を含んだ山を持つ区分領域（図５の例では差範囲７０〜１００度を含んだ山Ｏを持つ分布グラフに対応する区分領域（２））を更に細かく区分し、それら細かい区分領域を対象に、色相ヒストグラム作成部１６〜色相範囲差分算出部４２の処理を繰り返す。そして、その処理の結果、前段階で求められた差範囲に該当する色相範囲を持つ山がいずれかの細区分領域から見つかれば、その山に対応する色を原稿内の色の集合に追加する。見つからなければ、更に細かく領域を区分して同様の処理を繰り返す。見つかるまでそのような再帰的処理を行う。
【００４５】
以上に説明した実施形態及び変形例の色抽出装置が抽出した各色の情報は、例えば、原稿の画像上に存在するそれら各色の色領域（例えば図１の色領域Ｏ，Ｂ，Ｙ）を抽出するのに用いることができる。
【００４６】
以上に説明した色抽出装置は、例えば、汎用のコンピュータに上述の各機能モジュールの処理を表すプログラムを実行させることにより実現することもできる。ここで、コンピュータは、例えば、ハードウエアとして、図７に示すように、ＣＰＵ１０００等のマイクロプロセッサ、ランダムアクセスメモリ（ＲＡＭ）１００２およびリードオンリメモリ（ＲＯＭ）１００４等のメモリ（一次記憶）、ＨＤＤ（ハードディスクドライブ）１００６を制御するＨＤＤコントローラ１００８、各種Ｉ／Ｏ（入出力）インタフェース１０１０、ローカルエリアネットワークなどのネットワークとの接続のための制御を行うネットワークインタフェース１０１２等が、たとえばバス１０１４を介して接続された回路構成を有する。また、そのバス１０１４に対し、例えばＩ／Ｏインタフェース１０１０経由で、ＣＤやＤＶＤなどの可搬型ディスク記録媒体に対する読み取り及び／又は書き込みのためのディスクドライブ１０１６、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体に対する読み取り及び／又は書き込みのためのメモリリーダライタ１０１８、などが接続されてもよい。上に例示した各機能モジュールの処理内容が記述されたプログラムがＣＤやＤＶＤ等の記録媒体を経由して、又はネットワーク等の通信手段経由で、ハードディスクドライブ等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがＲＡＭ１００２に読み出されＣＰＵ１０００等のマイクロプロセッサにより実行されることにより、上に例示した機能モジュール群が実現される。なお、それら機能モジュール群のうちの一部又は全部を、専用ＬＳＩ(Large Scale Integration)、ＡＳＩＣ（Application Specific Integrated Circuit、特定用途向け集積回路）又はＦＰＧＡ（Field Programmable Gate Array）等のハードウエア回路として構成してもよい。
【図面の簡単な説明】
【００４７】
【図１】異なる複数の色の領域を含んだ原稿の例を示す図である。
【図２】図１の例の原稿全体についての色相ヒストグラムの例を示す図である。
【図３】実施形態の手法を説明するための図である。
【図４】実施形態の手法を実行するための装置構成の一例を示す機能ブロック図である。
【図５】変形例の手法を説明するための図である。
【図６】変形例の手法を実行するための装置構成の一例を示す機能ブロック図である。
【図７】コンピュータのハードウエア構成の一例を示す図である。
【符号の説明】
【００４８】
１０  画像入力部、１２  画像分割部、１４  有彩色・無彩色判定部、１６  ヒストグラム作成部、２０  色検出処理部、２２  ヒストグラム平滑部、２４  極大値算出部、２６  色判定部、３０  検出色総合部。
【図１】
2009230604.tif 000003
【図２】
2009230604.tif 000004
【図３】
2009230604.tif 000005
【図４】
2009230604.tif 000006
【図５】
2009230604.tif 000007
【図６】
2009230604.tif 000008
【図７】
2009230604.tif 000009