画像処理装置及び画像処理プログラム
【課題】入力画像における配色を的確に判別し、限定色化することができる画像処理装置を提供する。
【解決手段】入力画像から色空間上における3次元ヒストグラムをヒストグラム作成部11で作成し、その3次元ヒストグラムから頻度が極大となるピーク色をピーク色抽出部12で抽出する。代表色選択部13では、紙色と黒色とを結ぶ線分と各ピーク色との最短距離を示すベクトルを求め、そのベクトルの方向及び明度差等を用いて複数のピーク色の統合を行い、また統合される複数のピーク色から残すピーク色を選択して代表色とする。このような方法によって入力画像における配色を的確に代表色として抽出することができる。画素値置換部14では、入力画像の各画素の色を、代表色のいずれかに置換し、これによって入力画像を限定色化する。
【解決手段】入力画像から色空間上における3次元ヒストグラムをヒストグラム作成部11で作成し、その3次元ヒストグラムから頻度が極大となるピーク色をピーク色抽出部12で抽出する。代表色選択部13では、紙色と黒色とを結ぶ線分と各ピーク色との最短距離を示すベクトルを求め、そのベクトルの方向及び明度差等を用いて複数のピーク色の統合を行い、また統合される複数のピーク色から残すピーク色を選択して代表色とする。このような方法によって入力画像における配色を的確に代表色として抽出することができる。画素値置換部14では、入力画像の各画素の色を、代表色のいずれかに置換し、これによって入力画像を限定色化する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置及び画像処理プログラムに関するものである。
【背景技術】
【0002】
従来より、画像中に使用されている色数を低減する限定色化の処理が行われている。この限定色化の処理によって、画像中に含まれる各種のノイズやムラ、例えば画像が画像読取装置で原稿画像を読み取ったものである場合には、原稿の印刷ムラや読み取り時のスキャンノイズ、手書き部分がある場合には手書きムラなどを低減することができる。また画像を圧縮する場合には、圧縮ノイズを低減し、また圧縮率を向上させることができる。
【0003】
限定色化の処理は、画像中で使用されている色からいくつかの代表色を選択し、その代表色に画像中の色を置き換えてゆくことにより実現される。この代表色を選択するための従来の技術として、例えば特許文献1に記載されている方法がある。この方法は、まず画像中で使用されている色のヒストグラムを作成して極大点を抽出し、ある基準点から極大点へのベクトルを用いて極大点をクラスタリングし、それぞれのクラスタに分類された極大点のうち色の値が最小となる(最も黒に近い)極大点を代表値として選択するものである。
【0004】
【特許文献1】特開平5−61974号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
本発明は、入力画像における配色を的確に判別し、限定色化することができる画像処理装置及び画像処理プログラムを提供することを目的とするものである。
【課題を解決するための手段】
【0006】
本願請求項1に記載の発明は、入力画像から色空間上におけるヒストグラムを作成するヒストグラム作成手段と、前記ヒストグラム作成手段で作成されたヒストグラムから頻度が極大となるピーク色を抽出するピーク色抽出手段と、前記ピーク色の特徴量から複数のピーク色を統合するか否かを判断するとともに統合する複数のピーク色から代表色として残すピーク色の選択を行う代表色選択手段と、前記代表色選択手段で選択した前記代表色に前記入力画像の各画素の色を置換する置換手段を有し、前記代表色選択手段は、紙色と黒色とを結ぶ線分と各ピーク色との最短距離を示すベクトルを求め、該ベクトルの方向及び明度差を少なくとも前記特徴量として用いて複数のピーク色の統合を行うことを特徴とする画像処理装置である。
【0007】
本願請求項2に記載の発明は、請求項1に記載の構成における代表色選択手段が、ピーク色の彩度、頻度、頻度の微分値の少なくとも1つを用いて、前記代表色として残すピーク色を選択することを特徴とする画像処理装置である。
【0008】
本願請求項3に記載の発明は、請求項1または請求項2に記載の構成における代表色選択手段が、紙色と黒色、あるいは前記代表色の紙色と黒色とを結ぶ線分への射影点と該代表色とを結ぶ線分の近傍に存在するピーク色について、代表色の追加抽出を行うことを特徴とする画像処理装置である。
【0009】
本願請求項4に記載の発明は、請求項1ないし請求項3のいずれか1項に記載の画像処理装置に加えて、さらに、前記ヒストグラム作成手段で作成されたヒストグラムに対して分布の重心に近いほど係数を大きくした3次元形状フィルタ処理を行うフィルタ処理手段を有し、前記ピーク色抽出手段は、前記フィルタ処理手段による3次元形状フィルタ処理が施されたヒストグラムから前記ピーク色を抽出することを特徴とする画像処理装置である。
【0010】
本願請求項5に記載の発明は、請求項1ないし請求項4のいずれか1項に記載の構成における代表色選択手段が、前記ピーク色のうち最も明度が低いピーク色が黒色とみなせるか否かを判断し、黒色とみなせる場合には当該ピーク色を前記紙色と線分で結ぶ黒色として設定し、黒色とみなせない場合には所定の黒色を設定することを特徴とする画像処理装置である。
【0011】
本願請求項6に記載の発明は、コンピュータに、請求項1ないし請求項5のいずれか1項に記載の画像処理装置の機能を実行させることを特徴とする画像処理プログラムである。
【発明の効果】
【0012】
本願請求項1に記載の発明によれば、本発明の構成を有していない場合に比較して、入力画像における配色を的確に判別して代表色を選択することができ、その代表色を用いて限定色化することができる。また、入力画像の下地色が白でない場合であっても対応することができる。
【0013】
本願請求項2に記載の発明によれば、本願請求項1に記載の発明の効果に加え、本願請求項1に記載の発明よりも的確に代表色の選択を行うことができる。
【0014】
本願請求項3に記載の発明によれば、本願請求項1または請求項2に記載の発明の効果に加え、本願請求項1、2に記載の発明で代表色として抽出されなかった主要な色を改めて代表色として再抽出することができる。
【0015】
本願請求項4に記載の発明によれば、本願請求項1ないし請求項3のいずれか1項に記載の発明の効果に加え、本願請求項1、2に記載の発明よりも的確にピーク色の抽出を行うことができ、これによって、本願請求項1、2に記載の発明よりも的確な代表色の選択を行うことができる。
【0016】
本願請求項5に記載の発明によれば、請求項1ないし請求項4のいずれか1項に記載の発明の効果に加え、ピーク色の統合を行う際の基準となる線分の端点となる黒色を確実に設定することができ、これによりピーク色の統合及び代表色の選択、さらに代表色を用いた限定色化を請求項1ないし請求項3のいずれか1項に記載の発明よりも的確に行うことができる。
【0017】
本願請求項6に記載の発明によれば、本願請求項1ないし請求項5のいずれか1項に記載の発明の効果を得ることができる。
【発明を実施するための最良の形態】
【0018】
図1は、本発明の第1の実施の形態を示すブロック図である。図中、11はヒストグラム作成部、12はピーク色抽出部、13は代表色選択部、14は画素値置換部である。ヒストグラム作成部11は、入力画像の各画素の色値を計数して、色空間上におけるヒストグラムを作成する。
【0019】
ピーク色抽出部12は、ヒストグラム作成部11で作成されたヒストグラムから、頻度が極大となるピーク色を抽出する。なお、ピーク色の抽出の際に紙色となるピーク色についても特定しておく。
【0020】
代表色選択部13は、ピーク色抽出部12で抽出されたピーク色の特徴量から、複数のピーク色を統合するか否かを判断するとともに、統合する複数のピーク色から代表色として残すピーク色の選択を行う。ピーク色を統合するか否かの判断は、紙色と黒色とを結ぶ線分と各ピーク色との最短距離を示すベクトルを求め、そのベクトルの方向及び明度差を少なくとも特徴量として用いて行うことができる。また、統合する場合にいずれのピーク色を残すかは、各ピーク色の彩度、頻度、頻度の微分値の少なくとも1つを用いて判断することができる。
【0021】
なお、ベクトルを求める際の線分の端点となる紙色はピーク色抽出部12で特定したピーク色を用いることができる。また黒色については、ピーク色のうち最も明度が低いピーク色が黒色とみなせるか否かを判断し、黒色とみなせる場合には当該ピーク色を、黒色とみなせない場合には所定の黒色を設定すればよい。
【0022】
画素値置換部14は、代表色選択部13で選択した代表色に、入力画像の各画素の色を置換する。これにより、入力画像は使用されている色が代表色に限定されることとなり、限定色化の処理が行われる。
【0023】
上述の構成について、さらに説明してゆく。図2は、ヒストグラム作成部11の一例の説明図である。図中、21は画素値量子化部、22はヒストグラム算出部である。色空間におけるヒストグラムは、色値ごとに画素数を計数して求めてもよいが、膨大なデータ量となるため、ここでは色値を量子化して、ある程度の範囲で色値をまとめて画素数の計数を行う例を示している。
【0024】
図2(A)に示した構成例では、ヒストグラム作成部11は画素値量子化部21及びヒストグラム算出部22を有している。画素値量子化部21は、各画素の色値について量子化する。例えば各色成分について下位の数ビットを切り捨てることにより、色値を量子化することができる。図2(B)に示す例では、RGB色空間についてそれぞれの色成分(R、G、B)について3分割し、RGB色空間全体として3×3×3個のブロックについて画素数を計数する例を示している。もちろん、この例では図示の都合上、分割数を少なくして荒いブロックで計数する例を示しているが、実際の量子化の精度は任意に設定することができる。例えばスキャナなどで読み取った画像では、原稿上で一様な色の領域でも微妙な色の違いが発生している場合がある。このような場合でも、この画素値量子化部21によって画素値を量子化することによって、微妙な色の違いを同じ色値にまとめて計数することができるという利点もある。
【0025】
ヒストグラム算出部22は、量子化された色値を計数して、色空間における3次元のヒストグラムを作成する。図2(C)には、RGB色空間におけるヒストグラム分布の一例を示している。各画素の量子化された色値を計数することによって、計数値(0以外)は例えばハッチングを施して示したように、多くの場合は色空間中の一部に分布することになる。以降の説明では、この0以外の計数値が分布する部分空間のみを示す。
【0026】
図3は、ピーク色抽出部12の一例の説明図である。図中、31は二次微分フィルタ、32は紙色抽出部である。上述のように、ピーク色抽出部12はヒストグラム作成部11で作成された3次元のヒストグラムから、頻度が極大となるピーク色を抽出する。そのための構成として、ここでは二次微分フィルタ31を設けている。この二次微分フィルタ31によって3次元ヒストグラムに対して3次元の二次微分フィルタ処理を施すことにより、3次元ヒストグラム中の極大値(ピーク色)を抽出することができる。この二次微分フィルタ31は、公知の技術を適用可能である。もちろん、例えば一次微分フィルタ処理など、二次微分フィルタ処理以外の処理によってピーク色を抽出してもよく、また複数のピーク色の抽出処理を組み合わせて用いてもよい。
【0027】
二次微分フィルタ31によって抽出されたピーク色を、図3(B)に黒丸で示している。入力画像中で使用されている主な色や、特に他とは異なる色彩の色などがピーク色として抽出される。
【0028】
この例ではピーク色抽出部12において紙色を抽出するための紙色抽出部32を設けている。この紙色抽出部32は、例えば新聞紙や色紙などを原稿として読み取った画像などのように、背景色が白でない場合にも対応するためのものである。紙色抽出部32は、二次微分フィルタ31で得られた二次微分値と明度をパラメータとする関数により、紙色を特定することができる。多くの場合には、画像の背景色は頻度が高くなっており、二次微分フィルタ31で得られたピーク色の一つが紙色として抽出される。もちろん、背景色の抽出処理を別途行ってもよい。また、所定の色を紙色として、この紙色抽出部32を設けずに構成することも可能である。紙色として抽出された色を図3(C)において白丸で示している。
【0029】
図4は、代表色選択部13の一例を示すブロック図である。図中、41は黒色判定部、42は代表色抽出部、43は低彩度色排除部である。上述のように、代表色選択部13では、ピーク色抽出部12で抽出されたピーク色の中から、入力画像の各画素を置き換えるべき代表色を選択する。そのための構成として、図4に示す例では黒色判定部41、代表色抽出部42、低彩度色排除部43を有している。
【0030】
黒色判定部41は、代表色抽出部42で紙色と線分で結ぶ黒色の設定を行う。まず、ピーク色抽出部12で抽出されたピーク色のうち、最も明度が低いピーク色について、そのピーク色が黒色とみなせるか否かを判断する。例えば明度が所定値以下であるなどの条件により判断することができる。黒色とみなせる場合には、そのピーク色を黒色として設定する。また、黒色とみなせない場合には、所定の黒色を設定する。例えば黒を用いていない画像などでは、所定の黒色を設定すればよい。
【0031】
代表色抽出部42は、ピーク色抽出部12で抽出した紙色と、黒色判定部41で設定した黒色を用いて、ピーク色抽出部12で抽出したピーク色の中から代表色を抽出する。代表色の抽出は、紙色と黒色とを結ぶ線分を考え、この線分と各ピーク色との最短距離を示すベクトルを求める。そして、このベクトルの方向及び明度差などを用いて、類似する色をまとめるとともに、まとめるピーク色のうちいずれを代表色として残すかを判定する。具体的な処理については後述する。
【0032】
低彩度色排除部43は、抽出された代表色のうち、低彩度色を排除して代表色を決定する。低彩度色はほとんどグレーとなり、代表色として黒色に置き換えることが可能である。また、低彩度色は明度軸または擬似明度軸付近に存在しており、この領域は色相値の変化が大きいので、代表色抽出部42にて誤抽出する可能性がある。そのため、ここでは低彩度の代表色は削除している。もちろん、この処理を行わなくてもよい。
【0033】
上述の代表色抽出部42についてさらに説明する。図5は、代表色抽出部42の動作の一例を示すフローチャートである。S51において、ピーク色抽出部12で抽出されたピーク色の中から処理していない2個のピーク色の組み合わせを選択する。
【0034】
S52において、2つのピーク色を統合するか否かを判断する。このピーク色を統合するか否かの判断は、例えば以下のようにして行うことができる。図6は、代表色抽出部42におけるピーク色の統合処理の一例の説明図である。まず、色空間において紙色と黒色とを結ぶ線分を考える。この線分は、紙色が白色とは限らないため明度軸と一致するとは限らないが、擬似的な明度軸と考えることができる。この線分と、処理対象の2つのピーク色との最短距離を示すベクトルを求める。図6においては、ベクトルV1,V2として示している。
【0035】
このベクトルV1とベクトルV2との関係として、まず、ベクトルV1とベクトルV2のなす角度Δθを求める。この角度Δθは、擬似明度軸に対する色相の変化量を示している。この変化量が小さい場合には、類似した色である可能性が高いので、統合の対象となる。
【0036】
また、2つのピーク色の明度差ΔL*を求める。明度差が小さい場合には、類似した色である可能性が高いので、統合の対象となる。
【0037】
このようにして得られた角度Δθと明度差ΔL*とから、2つのピーク色を統合するか否かを総合的に判断する。すなわち、色相の変化量を示す角度Δθが小さくても、大きく明度が異なると違う色と認識される場合が多くなる。また、明度差ΔL*が小さくても、色相差が大きい場合には、当然ながら違う色として認識される。そのため、両者がともに小さい場合に、2つのピーク色は統合の対象であると判断することができる。具体的には、例えば評価関数H1として
H1=a×Δθ+b×ΔL* (a,bは定数)
とし、算出されたH1の値が所定の閾値より小さい場合に、統合すると判断することができる。
【0038】
S52における判断で、統合しないと判断された場合にはS54へ進み、統合すると判断された場合には、S53において、統合する2つのピーク色のうち、一方を削除して他方を残し、残したピーク色に実質的に統合する。何れを残すかを判定する方法としては、統合するピーク色の彩度や頻度、頻度の微分値などを用いることができる。具体的には、彩度としては先に求めたベクトルV1、V2の長さ|V1|、|V2|を用いることができ、ピーク色の頻度(ヒストグラムにおける計数値)をfreq(V1)、freq(V2)、頻度の微分値を(freq(V1))’、(freq(V2))’とするとき、評価関数Giとして
Gi=c×|Vi|+d×freq(Vi)+e×(freq(Vi))’
としてG1、G2を算出する。ここで、c,d,eは定数、i=1,2である。算出されたG1とG2を比較し、G1>G2であればG1に対応するピーク色を残すものと判断し、G1≦G2であればG2に対応するピーク色を残すものと判断すればよい。残すと判断された以外のピーク色については削除する。
【0039】
S54において、未処理の2個のピーク色の組み合わせが残っているか否かを判断し、残っている場合にはS51へ戻って未処理の組み合わせについて処理を繰り返す。すべての組み合わせについて処理を行ったら、代表色抽出部42における処理を終了する。
【0040】
図7は、代表色抽出部42における統合処理後のピーク色の一例の説明図である。図6に示した紙色及び黒色以外のピーク色について、類似したピーク色は図7において◎で示したピーク色に統合される。削除されたピーク色は破線の○により示している。
【0041】
このような統合処理で残ったピーク色を代表色として抽出し、代表色抽出部42の出力とする。抽出された代表色のうち、低彩度の代表色については低彩度色排除部43で排除され、残った代表色が代表色選択部13において選択された代表色となる。なお、紙色および黒色については代表色として残しておく。このようにして、入力画像中の配色を的確に判別して代表色とすることができる。
【0042】
上述の代表色の抽出方法では、擬似明度軸と、各処理対象のピーク色との最短距離を示すベクトルの向きが異なり、あるいは位置が離れているピーク色を代表色として抽出した。そのため、代表色に対応するベクトルの途中に存在するピーク色は統合され、抽出されない。また、擬似明度軸に近い色も低彩度色排除部43で排除しているので抽出されない。これらの抽出されずに統合されたピーク色の中にも、代表色として抽出した方がよい色が含まれている場合がある。このような場合に対応して、追加して代表色を抽出する方法について説明する。
【0043】
図8は、代表色の追加抽出の処理の一例を示すフローチャート、図9は、代表色の追加抽出の処理の一例の説明図である。まず図8のS101において、再抽出を行う領域を設定する。この領域の設定は、色C1と色C2を設定することにより行い、色C1と色C2を結ぶ線分付近に存在するピーク色の中から、代表色とすべき色があれば、その色を抽出する。色C1,C2は、擬似明度軸に近い代表色を追加する場合には、紙色と黒色とする。また、擬似明度軸と代表色との最短距離を示す線分の途中の色を代表色に追加する場合には、代表色の擬似明度軸への射影点と代表色を色C1,C2とする。
【0044】
S102において、色C1,C2を結ぶ線分付近のピーク色を注目色Ckとする。例えば色C1,C2を結ぶ線分から所定の距離の範囲内に存在するピーク色を注目色Ckとすればよい。色C1,C2を結ぶ線分付近に複数のピーク色が存在していることもあるが、その場合には、それぞれを注目色Ckとして以下に説明するS103〜S106の処理をそれぞれ行う。
【0045】
S103において、ベクトルV(C1,Ck)とベクトルV(Ck,C2)のなす角度αを求める。図9(A)には、色C1,C2,Ckおよび各ベクトルと角度αの関係を示している。注目色Ckは、色C1と色C2を結ぶ線分に近い色である。このとき、ベクトルV(C1,Ck)とベクトルV(Ck,C2)のなす角度αを求めると、図示した角度αが求まる。この角度αは、注目色Ckが線分C1C2に近いときに小さくなる。線分から同じだけ離れていても、色C1と色C2の中間では角度αは小さくなるが、例えば色C1の脇に存在するとベクトルV(C1,Ck)の線分との角度が大きくなり、角度αは大きくなる。同様に色Ckが色C2の脇に存在するとベクトルV(Ck,C2)と線分との角度が大きくなり、角度αは大きくなる。
【0046】
S104において、注目色Ckについて、線分の方向(ベクトルV(C1,C2)の方向)の頻度の2次微分値F2を求める。頻度分布はヒストグラム作成部11で作成された3次元のヒストグラムを利用すればよい。また2次微分値は、例えば図9(B)に示すようなフィルタを用いて算出すればよい。なお、実際には3次元のフィルタとなるが、ここでは図示の都合上、2次元で示している。また、図9(B)に示した例では図9(A)に示した線分C1C2に対応した45度の角度の2次元微分フィルタの係数マトリクスの一例を示したものである。各係数は線分の方向によって変化する。また、フィルタの大きさは任意である。この2次微分値F2は、ピーク色である注目色Ckが周囲の色に比べてどの程度突出して使用されているかを示すものである。
【0047】
S105において、S103で求めた角度αと、S104で求めた2次微分値F2とから評価値H2を求める。評価値H2は、例えば角度αが小さいほど、また2次微分値F2が大きいほど、大きな値を出力する評価関数により算出することができる。なお、評価値H2は、注目色Ckの頻度値で正規化しておくとよい。
【0048】
S106において、S105で算出した評価値H2と所定の閾値とを比較し、評価値H2が閾値よりも大きければ、注目色Ckを代表色として仮抽出する。なお、上述のようにS103からS106までの処理は、線分C1C2に近いピーク色が複数存在している場合にはそれぞれのピーク色を代表色Ckとして実施する。これによって、代表色として仮抽出される注目色Ckも1つとは限らず、複数抽出される場合がある。もちろん、評価値H2によっては1つも抽出されない場合もある。
【0049】
S107において、S106で代表色として仮抽出された注目色Ckが複数存在している場合に、それらのうち色空間における距離が近い(例えば所定の閾値以内の)ものをグループ化し、そのグループに属する注目色Ckのうち評価値H2が最も大きいものを代表色として追加抽出する。あるいは、グループに属する注目色Ckから任意の2個を選び、色空間において一定距離内にある場合には評価値H2が大きいピーク色を代表色候補として残し、他方のピーク色は代表色候補から外すようにする。この手順を繰り返し、残った代表色候補を代表色として抽出してもよい。このようにして、線分C1C2の間に存在していた代表色として抽出すべきであった色が追加抽出されることになる。
【0050】
なお、図8に示した代表色の追加抽出処理は、S101で選択する色C1,C2を変更して複数回行ってもよい。例えば上述のように、色C1,C2として紙色と黒色を選択してグレーの代表色を抽出し、また代表色抽出部42で抽出したそれぞれの代表色とその代表色の擬似明度軸への射影点とから、それぞれ代表色の追加抽出を行うとよい。このときの代表色の追加抽出処理は、代表色抽出部42で抽出した全ての代表色に対して行ってもよい。これにより、同色相の複数色が存在する場合であって、代表色抽出部42にて代表色を抽出しきれない場合でも、代表色が追加抽出されることになる。また、グレーの代表色の追加抽出は、代表色抽出部42で誤検出を含めて抽出し、低彩度色排除部43で排除した低彩度の代表色について、精度よく再抽出するものである。
【0051】
図10は、追加抽出される代表色の一例の説明図である。図10(A)には色C1,C2として紙色と黒色を選択した場合について示しており、線分の近くにピーク色Ck1〜Ck4が存在している例を示している。この例の場合、ピーク色Ck1〜Ck4をそれぞれ注目色とし、S103〜S106の処理を行う。各ピーク色Ck1〜Ck4に対応する評価値H2が所定の閾値より大きいものを代表色として仮抽出する。例えば4つとも代表色として仮抽出されたとする。この4つのピーク色は色空間において一定距離内にあるような互いに近い色であることから、これら4つのピーク色をグループ化し、評価値H2が最も大きいものを代表色として抽出する。例えばピーク色Ck1の評価値H2が最も大きいとすれば、ピーク色Ck1を代表色として抽出し、他のピーク色Ck2〜Ck4は代表色とはしない。あるいは、ピーク色Ck1〜Ck4から任意の2個を選び、色空間において一定距離内にある場合には評価値H2が大きいピーク色を代表色候補として残し、他方のピーク色は代表色候補から外すようにする。この手順を繰り返し、残った代表色候補(ここではピーク色Ck1)を代表色として抽出する。このようにして、色C1,C2として紙色と黒色を選択した場合について、代表色としてピーク色Ck1を追加して抽出できた。
【0052】
図10(B)には、色C2として代表色抽出部42で抽出した代表色を、色C1としてその代表色の擬似明度軸への射影点を選択した場合について示している。また、線分C1C2の近くにピーク色Ck5〜Ck7が存在している例を示している。これらのピーク色Ck5〜Ck7は、擬似明度軸との最短距離を示すベクトルの方向が、代表色C2と擬似明度軸との最短距離を示すベクトルの方向を向いているため、代表色抽出部42における処理では統合対象となったものである。
【0053】
この例の場合も、ピーク色Ck5〜Ck7をそれぞれ注目色とし、S103〜S106の処理を行う。例えば各ピーク色Ck1〜Ck4に対応する評価値H2が所定の閾値より大きく、3つとも代表色として仮抽出されたとする。この3つのピーク色は互いに近い色であることから、これら3つのピーク色をグループ化し、評価値H2が最も大きいものを代表色として抽出する。例えばピーク色Ck6の評価値H2が最も大きいとすれば、ピーク色Ck6を代表色として抽出し、他のピーク色Ck5、Ck7は代表色とはしない。あるいはピーク色Ck5〜Ck7から任意の2個を選び、色空間において一定距離内にある場合には評価値H2が大きいピーク色を代表色候補として残し、他方のピーク色は代表色候補から外すようにする。この手順を繰り返し、残った代表色候補(ここではピーク色Ck6)を代表色として抽出する。このようにして、代表色抽出部42で抽出した代表色をもとに、ピーク色Ck6を代表色として追加して抽出できた。
【0054】
図11は、代表色抽出部42におけるピーク色の統合処理の別の例の説明図である。この例では、各ピーク色と紙色とを通る直線を考え、この直線が近い位置に存在する場合に、対応するピーク色を統合する。このとき、統合するピーク色のうち、なるべく紙色から離れる色を選択する。このようにしてピーク色を統合してゆき、残ったピーク色を代表色として一旦抽出する。このようにして抽出された代表色を図11(A)において黒丸で示している。
【0055】
このような方法による代表色の抽出は従来から行われているが、代表色として抽出された色と紙色との間に存在している代表的な色については抽出されない。そこで、図8で説明した方法により、色C1,C2として紙色と抽出された代表色を選択し、代表色の追加抽出を行う。
【0056】
例えば図11(B)に示した例では、点線の丸印および二重丸で示したピーク色が紙色と代表色(黒丸)との間にいくつか固まって存在している。このような場合、点線の丸印および二重丸で示したピーク色が黒丸で示した代表色に統合されてしまうと、色の違いが大きくなる。図8に示した方法により各代表色と紙色との間に存在するピーク色から代表色の追加抽出を行うことによって、例えば二重丸で示したピーク色が代表色として追加抽出される。これによって、紙色からなるべく遠い色だけでなく、その中間に存在する色についても、利用頻度が高く他の色と識別できる色が代表色として抽出されることになる。
【0057】
図12は、画素値置換部14の一例の説明図である。図中、61は射影直線算出部、62は置換部である。上述のように、画素値置換部14では、入力画像の各画素の色を、代表色選択部13で選択した代表色のうちのいずれかに置換する。この処理を行うために、入力画像の各画素の色から、置換すべき代表色を選択する必要がある。この代表色を選択するための一つの方法について示しておく。なお、図12(B)、(C)において、白丸は紙色を、黒丸は代表色を、○に+が入力画像のある画素の色を、それぞれ示している。
【0058】
射影直線算出部61は、紙色とその他の各代表色とを通る直線を算出する。この直線を射影直線とする。図12(B)においては、白丸で示した紙色と、それ以外の3つの代表色のそれぞれを通る直線を示している。
【0059】
置換部62は、射影直線算出部61で算出した各射影直線と、置換対象の入力画像の画素の色との距離を求める。図12(C)においては、置換対象の画素の色から各射影直線への垂線を示している。この垂線の長さが置換対象の画素の色から各射影直線への距離となる。その距離が最も短い射影直線に対応する紙色以外の代表色を選択し、その選択した代表色に置換対象の画素の色を置換する。なお、紙色からの距離が所定範囲内の色については、紙色に置換する。このようにして、入力画像の各画素の色は、それぞれ、紙色を含む代表色のいずれかに置換され、これによって使用されている色が代表色に限定された出力画像が得られる。
【0060】
なお、代表色を選択する方法は、上述の方法に限られるものではない。例えば、入力画像上で置換対象の画素の周囲の色の平均色を求め、色空間上でその平均色と置換対象の画素の色との差分ベクトルを含む線分に距離が最も近い代表色を選択し、差分ベクトルの長さが所定の長さ以下の場合には置換対象の画素の色に最も近い代表色を選択するという方法を用いてもよい。もちろん、そのほかの種々の公知の方法を用いることもできる。
【0061】
図13は、本発明の第2の実施の形態を示すブロック図、図14は、フィルタ処理部15のフィルタ係数の概念図である。図中、図1と同様の部分には同じ符号を付して重複する説明を省略する。15はフィルタ処理部である。この第2の実施の形態では、ヒストグラム作成部11とピーク色抽出部12との間にフィルタ処理部15を設けた構成を示している。
【0062】
フィルタ処理部15は、ヒストグラム作成手段で作成されたヒストグラムに対して、例えば図14に示すように分布の重心に近いほど係数を大きくした3次元形状フィルタ処理を行う。例えば図14(A)における分布の重心が対象画素(この例ではフィルタ領域の中心の画素)の右下45度に存在する場合、図14(B)に具体例を示したような係数マトリクスを用いてフィルタ処理を行えばよい。ここでは図示の関係上、2次元でしか示していないが、実際には分布の重心と対象画素の3次元の位置関係に応じた3次元の係数マトリクスを用いてフィルタ処理を行うことになる。
【0063】
この3次元形状フィルタ処理によって、色空間上における分布の端部で且つ分布の重心から離れる方向に頻度が減少していくような部分がピークとして残りやすくなる。これにより、次のピーク色抽出部12でピーク色を抽出する際には、本来原稿に存在していた可能性の高い分布端部のピーク色を抽出されやすくすることができる。そのため、入力画像中で特徴のある色をピーク色として抽出でき、代表色として選択されるようになる。
【0064】
このフィルタ処理部15で3次元形状フィルタ処理を行った後の3次元ヒストグラムがピーク色抽出部12に渡され、3次元ヒストグラムの中からピーク色が抽出されることになる。そのほかの構成については、上述の第1の実施の形態と同様であるので、ここでは説明を省略する。
【0065】
図15は、本発明の画像処理装置の機能をコンピュータプログラムで実現した場合におけるコンピュータプログラム及びそのコンピュータプログラムを格納した記憶媒体とコンピュータの一例の説明図である。図中、71はプログラム、72はコンピュータ、81は光磁気ディスク、82は光ディスク、83は磁気ディスク、84はメモリ、91はCPU、92は内部メモリ、93は読取部、94はハードディスク、95,96はインタフェース、97は通信部である。
【0066】
上述の各実施の形態やその変形例として説明した本発明の画像処理装置の各部の機能の一部または全部を、コンピュータにより実行可能なプログラム71によって実現することが可能である。その場合、そのプログラム71およびそのプログラムが用いるデータなどは、コンピュータが読み取り可能な記憶媒体に記憶することも可能である。記憶媒体とは、コンピュータのハードウェア資源に備えられている読取部93に対して、プログラムの記述内容に応じて、磁気、光、電気等のエネルギーの変化状態を引き起こして、それに対応する信号の形式で、読取部93にプログラムの記述内容を伝達できるものである。例えば、光磁気ディスク81,光ディスク82(CDやDVDなどを含む)、磁気ディスク83,メモリ84(ICカード、メモリカードなどを含む)等である。もちろんこれらの記憶媒体は、可搬型に限られるものではない。
【0067】
これらの記憶媒体にプログラム71を格納しておき、例えばコンピュータ72の読取部93あるいはインタフェース95にこれらの記憶媒体を装着することによって、コンピュータからプログラム71を読み出し、内部メモリ92またはハードディスク94に記憶し、CPU91によってプログラム71を実行することによって、本発明の画像処理装置の機能を実現することができる。あるいは、ネットワークなどを介してプログラム71をコンピュータ72に転送し、コンピュータ72では通信部97でプログラム71を受信して内部メモリ92またはハードディスク94に記憶し、CPU91によってプログラム71を実行することによって、本発明の画像処理装置の機能を実現してもよい。なお、コンピュータ72には、このほかインタフェース96を介して様々な装置と接続することができ、例えば情報を表示する表示装置やユーザが情報を入力する入力装置等も接続されている。
【0068】
もちろん、一部の機能についてハードウェアによって構成することもできるし、すべてをハードウェアで構成してもよい。あるいは、他の構成とともに本発明も含めたプログラムとして構成することも可能である。例えば複写機などの画像読取装置や画像形成装置を含む装置において制御プログラムとともに1つのプログラムとして構成し、画像読取装置で読み取られた画像に対して限定色化の処理を行うように構成することもできる。もちろん、他の用途に適用する場合には、その用途におけるプログラムとの一体化も可能である。なお、コンピュータ72が画像読取装置または画像形成装置のいずれかあるいは双方を有する構成、あるいは他の構成を有していてよいことは言うまでもない。
【図面の簡単な説明】
【0069】
【図1】本発明の第1の実施の形態を示すブロック図である。
【図2】ヒストグラム作成部11の一例の説明図である。
【図3】ピーク色抽出部12の一例の説明図である。
【図4】代表色選択部13の一例を示すブロック図である。
【図5】代表色抽出部42の動作の一例を示すフローチャートである。
【図6】代表色抽出部42におけるピーク色の統合処理の一例の説明図である。
【図7】代表色抽出部42における統合処理後のピーク色の一例の説明図である。
【図8】代表色の追加抽出の処理の一例を示すフローチャートである。
【図9】代表色の追加抽出の処理の一例の説明図である。
【図10】追加抽出される代表色の一例の説明図である。
【図11】代表色抽出部42におけるピーク色の統合処理の別の例の説明図である。
【図12】画素値置換部14の一例の説明図である。
【図13】本発明の第2の実施の形態を示すブロック図である。
【図14】フィルタ処理部15のフィルタ係数の概念図である。
【図15】本発明の画像処理装置の機能をコンピュータプログラムで実現した場合におけるコンピュータプログラム及びそのコンピュータプログラムを格納した記憶媒体とコンピュータの一例の説明図である。
【符号の説明】
【0070】
11…ヒストグラム作成部、12…ピーク色抽出部、13…代表色選択部、14…画素値置換部、15…フィルタ処理部、21…画素値量子化部、22…ヒストグラム算出部、31…二次微分フィルタ、32…紙色抽出部、41…黒色判定部、42…代表色抽出部、43…低彩度色排除部、61…射影直線算出部、62…置換部、71…プログラム、72…コンピュータ、81…光磁気ディスク、82…光ディスク、83…磁気ディスク、84…メモリ、91…CPU、92…内部メモリ、93…読取部、94…ハードディスク、95,96…インタフェース、97…通信部。
【技術分野】
【0001】
本発明は、画像処理装置及び画像処理プログラムに関するものである。
【背景技術】
【0002】
従来より、画像中に使用されている色数を低減する限定色化の処理が行われている。この限定色化の処理によって、画像中に含まれる各種のノイズやムラ、例えば画像が画像読取装置で原稿画像を読み取ったものである場合には、原稿の印刷ムラや読み取り時のスキャンノイズ、手書き部分がある場合には手書きムラなどを低減することができる。また画像を圧縮する場合には、圧縮ノイズを低減し、また圧縮率を向上させることができる。
【0003】
限定色化の処理は、画像中で使用されている色からいくつかの代表色を選択し、その代表色に画像中の色を置き換えてゆくことにより実現される。この代表色を選択するための従来の技術として、例えば特許文献1に記載されている方法がある。この方法は、まず画像中で使用されている色のヒストグラムを作成して極大点を抽出し、ある基準点から極大点へのベクトルを用いて極大点をクラスタリングし、それぞれのクラスタに分類された極大点のうち色の値が最小となる(最も黒に近い)極大点を代表値として選択するものである。
【0004】
【特許文献1】特開平5−61974号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
本発明は、入力画像における配色を的確に判別し、限定色化することができる画像処理装置及び画像処理プログラムを提供することを目的とするものである。
【課題を解決するための手段】
【0006】
本願請求項1に記載の発明は、入力画像から色空間上におけるヒストグラムを作成するヒストグラム作成手段と、前記ヒストグラム作成手段で作成されたヒストグラムから頻度が極大となるピーク色を抽出するピーク色抽出手段と、前記ピーク色の特徴量から複数のピーク色を統合するか否かを判断するとともに統合する複数のピーク色から代表色として残すピーク色の選択を行う代表色選択手段と、前記代表色選択手段で選択した前記代表色に前記入力画像の各画素の色を置換する置換手段を有し、前記代表色選択手段は、紙色と黒色とを結ぶ線分と各ピーク色との最短距離を示すベクトルを求め、該ベクトルの方向及び明度差を少なくとも前記特徴量として用いて複数のピーク色の統合を行うことを特徴とする画像処理装置である。
【0007】
本願請求項2に記載の発明は、請求項1に記載の構成における代表色選択手段が、ピーク色の彩度、頻度、頻度の微分値の少なくとも1つを用いて、前記代表色として残すピーク色を選択することを特徴とする画像処理装置である。
【0008】
本願請求項3に記載の発明は、請求項1または請求項2に記載の構成における代表色選択手段が、紙色と黒色、あるいは前記代表色の紙色と黒色とを結ぶ線分への射影点と該代表色とを結ぶ線分の近傍に存在するピーク色について、代表色の追加抽出を行うことを特徴とする画像処理装置である。
【0009】
本願請求項4に記載の発明は、請求項1ないし請求項3のいずれか1項に記載の画像処理装置に加えて、さらに、前記ヒストグラム作成手段で作成されたヒストグラムに対して分布の重心に近いほど係数を大きくした3次元形状フィルタ処理を行うフィルタ処理手段を有し、前記ピーク色抽出手段は、前記フィルタ処理手段による3次元形状フィルタ処理が施されたヒストグラムから前記ピーク色を抽出することを特徴とする画像処理装置である。
【0010】
本願請求項5に記載の発明は、請求項1ないし請求項4のいずれか1項に記載の構成における代表色選択手段が、前記ピーク色のうち最も明度が低いピーク色が黒色とみなせるか否かを判断し、黒色とみなせる場合には当該ピーク色を前記紙色と線分で結ぶ黒色として設定し、黒色とみなせない場合には所定の黒色を設定することを特徴とする画像処理装置である。
【0011】
本願請求項6に記載の発明は、コンピュータに、請求項1ないし請求項5のいずれか1項に記載の画像処理装置の機能を実行させることを特徴とする画像処理プログラムである。
【発明の効果】
【0012】
本願請求項1に記載の発明によれば、本発明の構成を有していない場合に比較して、入力画像における配色を的確に判別して代表色を選択することができ、その代表色を用いて限定色化することができる。また、入力画像の下地色が白でない場合であっても対応することができる。
【0013】
本願請求項2に記載の発明によれば、本願請求項1に記載の発明の効果に加え、本願請求項1に記載の発明よりも的確に代表色の選択を行うことができる。
【0014】
本願請求項3に記載の発明によれば、本願請求項1または請求項2に記載の発明の効果に加え、本願請求項1、2に記載の発明で代表色として抽出されなかった主要な色を改めて代表色として再抽出することができる。
【0015】
本願請求項4に記載の発明によれば、本願請求項1ないし請求項3のいずれか1項に記載の発明の効果に加え、本願請求項1、2に記載の発明よりも的確にピーク色の抽出を行うことができ、これによって、本願請求項1、2に記載の発明よりも的確な代表色の選択を行うことができる。
【0016】
本願請求項5に記載の発明によれば、請求項1ないし請求項4のいずれか1項に記載の発明の効果に加え、ピーク色の統合を行う際の基準となる線分の端点となる黒色を確実に設定することができ、これによりピーク色の統合及び代表色の選択、さらに代表色を用いた限定色化を請求項1ないし請求項3のいずれか1項に記載の発明よりも的確に行うことができる。
【0017】
本願請求項6に記載の発明によれば、本願請求項1ないし請求項5のいずれか1項に記載の発明の効果を得ることができる。
【発明を実施するための最良の形態】
【0018】
図1は、本発明の第1の実施の形態を示すブロック図である。図中、11はヒストグラム作成部、12はピーク色抽出部、13は代表色選択部、14は画素値置換部である。ヒストグラム作成部11は、入力画像の各画素の色値を計数して、色空間上におけるヒストグラムを作成する。
【0019】
ピーク色抽出部12は、ヒストグラム作成部11で作成されたヒストグラムから、頻度が極大となるピーク色を抽出する。なお、ピーク色の抽出の際に紙色となるピーク色についても特定しておく。
【0020】
代表色選択部13は、ピーク色抽出部12で抽出されたピーク色の特徴量から、複数のピーク色を統合するか否かを判断するとともに、統合する複数のピーク色から代表色として残すピーク色の選択を行う。ピーク色を統合するか否かの判断は、紙色と黒色とを結ぶ線分と各ピーク色との最短距離を示すベクトルを求め、そのベクトルの方向及び明度差を少なくとも特徴量として用いて行うことができる。また、統合する場合にいずれのピーク色を残すかは、各ピーク色の彩度、頻度、頻度の微分値の少なくとも1つを用いて判断することができる。
【0021】
なお、ベクトルを求める際の線分の端点となる紙色はピーク色抽出部12で特定したピーク色を用いることができる。また黒色については、ピーク色のうち最も明度が低いピーク色が黒色とみなせるか否かを判断し、黒色とみなせる場合には当該ピーク色を、黒色とみなせない場合には所定の黒色を設定すればよい。
【0022】
画素値置換部14は、代表色選択部13で選択した代表色に、入力画像の各画素の色を置換する。これにより、入力画像は使用されている色が代表色に限定されることとなり、限定色化の処理が行われる。
【0023】
上述の構成について、さらに説明してゆく。図2は、ヒストグラム作成部11の一例の説明図である。図中、21は画素値量子化部、22はヒストグラム算出部である。色空間におけるヒストグラムは、色値ごとに画素数を計数して求めてもよいが、膨大なデータ量となるため、ここでは色値を量子化して、ある程度の範囲で色値をまとめて画素数の計数を行う例を示している。
【0024】
図2(A)に示した構成例では、ヒストグラム作成部11は画素値量子化部21及びヒストグラム算出部22を有している。画素値量子化部21は、各画素の色値について量子化する。例えば各色成分について下位の数ビットを切り捨てることにより、色値を量子化することができる。図2(B)に示す例では、RGB色空間についてそれぞれの色成分(R、G、B)について3分割し、RGB色空間全体として3×3×3個のブロックについて画素数を計数する例を示している。もちろん、この例では図示の都合上、分割数を少なくして荒いブロックで計数する例を示しているが、実際の量子化の精度は任意に設定することができる。例えばスキャナなどで読み取った画像では、原稿上で一様な色の領域でも微妙な色の違いが発生している場合がある。このような場合でも、この画素値量子化部21によって画素値を量子化することによって、微妙な色の違いを同じ色値にまとめて計数することができるという利点もある。
【0025】
ヒストグラム算出部22は、量子化された色値を計数して、色空間における3次元のヒストグラムを作成する。図2(C)には、RGB色空間におけるヒストグラム分布の一例を示している。各画素の量子化された色値を計数することによって、計数値(0以外)は例えばハッチングを施して示したように、多くの場合は色空間中の一部に分布することになる。以降の説明では、この0以外の計数値が分布する部分空間のみを示す。
【0026】
図3は、ピーク色抽出部12の一例の説明図である。図中、31は二次微分フィルタ、32は紙色抽出部である。上述のように、ピーク色抽出部12はヒストグラム作成部11で作成された3次元のヒストグラムから、頻度が極大となるピーク色を抽出する。そのための構成として、ここでは二次微分フィルタ31を設けている。この二次微分フィルタ31によって3次元ヒストグラムに対して3次元の二次微分フィルタ処理を施すことにより、3次元ヒストグラム中の極大値(ピーク色)を抽出することができる。この二次微分フィルタ31は、公知の技術を適用可能である。もちろん、例えば一次微分フィルタ処理など、二次微分フィルタ処理以外の処理によってピーク色を抽出してもよく、また複数のピーク色の抽出処理を組み合わせて用いてもよい。
【0027】
二次微分フィルタ31によって抽出されたピーク色を、図3(B)に黒丸で示している。入力画像中で使用されている主な色や、特に他とは異なる色彩の色などがピーク色として抽出される。
【0028】
この例ではピーク色抽出部12において紙色を抽出するための紙色抽出部32を設けている。この紙色抽出部32は、例えば新聞紙や色紙などを原稿として読み取った画像などのように、背景色が白でない場合にも対応するためのものである。紙色抽出部32は、二次微分フィルタ31で得られた二次微分値と明度をパラメータとする関数により、紙色を特定することができる。多くの場合には、画像の背景色は頻度が高くなっており、二次微分フィルタ31で得られたピーク色の一つが紙色として抽出される。もちろん、背景色の抽出処理を別途行ってもよい。また、所定の色を紙色として、この紙色抽出部32を設けずに構成することも可能である。紙色として抽出された色を図3(C)において白丸で示している。
【0029】
図4は、代表色選択部13の一例を示すブロック図である。図中、41は黒色判定部、42は代表色抽出部、43は低彩度色排除部である。上述のように、代表色選択部13では、ピーク色抽出部12で抽出されたピーク色の中から、入力画像の各画素を置き換えるべき代表色を選択する。そのための構成として、図4に示す例では黒色判定部41、代表色抽出部42、低彩度色排除部43を有している。
【0030】
黒色判定部41は、代表色抽出部42で紙色と線分で結ぶ黒色の設定を行う。まず、ピーク色抽出部12で抽出されたピーク色のうち、最も明度が低いピーク色について、そのピーク色が黒色とみなせるか否かを判断する。例えば明度が所定値以下であるなどの条件により判断することができる。黒色とみなせる場合には、そのピーク色を黒色として設定する。また、黒色とみなせない場合には、所定の黒色を設定する。例えば黒を用いていない画像などでは、所定の黒色を設定すればよい。
【0031】
代表色抽出部42は、ピーク色抽出部12で抽出した紙色と、黒色判定部41で設定した黒色を用いて、ピーク色抽出部12で抽出したピーク色の中から代表色を抽出する。代表色の抽出は、紙色と黒色とを結ぶ線分を考え、この線分と各ピーク色との最短距離を示すベクトルを求める。そして、このベクトルの方向及び明度差などを用いて、類似する色をまとめるとともに、まとめるピーク色のうちいずれを代表色として残すかを判定する。具体的な処理については後述する。
【0032】
低彩度色排除部43は、抽出された代表色のうち、低彩度色を排除して代表色を決定する。低彩度色はほとんどグレーとなり、代表色として黒色に置き換えることが可能である。また、低彩度色は明度軸または擬似明度軸付近に存在しており、この領域は色相値の変化が大きいので、代表色抽出部42にて誤抽出する可能性がある。そのため、ここでは低彩度の代表色は削除している。もちろん、この処理を行わなくてもよい。
【0033】
上述の代表色抽出部42についてさらに説明する。図5は、代表色抽出部42の動作の一例を示すフローチャートである。S51において、ピーク色抽出部12で抽出されたピーク色の中から処理していない2個のピーク色の組み合わせを選択する。
【0034】
S52において、2つのピーク色を統合するか否かを判断する。このピーク色を統合するか否かの判断は、例えば以下のようにして行うことができる。図6は、代表色抽出部42におけるピーク色の統合処理の一例の説明図である。まず、色空間において紙色と黒色とを結ぶ線分を考える。この線分は、紙色が白色とは限らないため明度軸と一致するとは限らないが、擬似的な明度軸と考えることができる。この線分と、処理対象の2つのピーク色との最短距離を示すベクトルを求める。図6においては、ベクトルV1,V2として示している。
【0035】
このベクトルV1とベクトルV2との関係として、まず、ベクトルV1とベクトルV2のなす角度Δθを求める。この角度Δθは、擬似明度軸に対する色相の変化量を示している。この変化量が小さい場合には、類似した色である可能性が高いので、統合の対象となる。
【0036】
また、2つのピーク色の明度差ΔL*を求める。明度差が小さい場合には、類似した色である可能性が高いので、統合の対象となる。
【0037】
このようにして得られた角度Δθと明度差ΔL*とから、2つのピーク色を統合するか否かを総合的に判断する。すなわち、色相の変化量を示す角度Δθが小さくても、大きく明度が異なると違う色と認識される場合が多くなる。また、明度差ΔL*が小さくても、色相差が大きい場合には、当然ながら違う色として認識される。そのため、両者がともに小さい場合に、2つのピーク色は統合の対象であると判断することができる。具体的には、例えば評価関数H1として
H1=a×Δθ+b×ΔL* (a,bは定数)
とし、算出されたH1の値が所定の閾値より小さい場合に、統合すると判断することができる。
【0038】
S52における判断で、統合しないと判断された場合にはS54へ進み、統合すると判断された場合には、S53において、統合する2つのピーク色のうち、一方を削除して他方を残し、残したピーク色に実質的に統合する。何れを残すかを判定する方法としては、統合するピーク色の彩度や頻度、頻度の微分値などを用いることができる。具体的には、彩度としては先に求めたベクトルV1、V2の長さ|V1|、|V2|を用いることができ、ピーク色の頻度(ヒストグラムにおける計数値)をfreq(V1)、freq(V2)、頻度の微分値を(freq(V1))’、(freq(V2))’とするとき、評価関数Giとして
Gi=c×|Vi|+d×freq(Vi)+e×(freq(Vi))’
としてG1、G2を算出する。ここで、c,d,eは定数、i=1,2である。算出されたG1とG2を比較し、G1>G2であればG1に対応するピーク色を残すものと判断し、G1≦G2であればG2に対応するピーク色を残すものと判断すればよい。残すと判断された以外のピーク色については削除する。
【0039】
S54において、未処理の2個のピーク色の組み合わせが残っているか否かを判断し、残っている場合にはS51へ戻って未処理の組み合わせについて処理を繰り返す。すべての組み合わせについて処理を行ったら、代表色抽出部42における処理を終了する。
【0040】
図7は、代表色抽出部42における統合処理後のピーク色の一例の説明図である。図6に示した紙色及び黒色以外のピーク色について、類似したピーク色は図7において◎で示したピーク色に統合される。削除されたピーク色は破線の○により示している。
【0041】
このような統合処理で残ったピーク色を代表色として抽出し、代表色抽出部42の出力とする。抽出された代表色のうち、低彩度の代表色については低彩度色排除部43で排除され、残った代表色が代表色選択部13において選択された代表色となる。なお、紙色および黒色については代表色として残しておく。このようにして、入力画像中の配色を的確に判別して代表色とすることができる。
【0042】
上述の代表色の抽出方法では、擬似明度軸と、各処理対象のピーク色との最短距離を示すベクトルの向きが異なり、あるいは位置が離れているピーク色を代表色として抽出した。そのため、代表色に対応するベクトルの途中に存在するピーク色は統合され、抽出されない。また、擬似明度軸に近い色も低彩度色排除部43で排除しているので抽出されない。これらの抽出されずに統合されたピーク色の中にも、代表色として抽出した方がよい色が含まれている場合がある。このような場合に対応して、追加して代表色を抽出する方法について説明する。
【0043】
図8は、代表色の追加抽出の処理の一例を示すフローチャート、図9は、代表色の追加抽出の処理の一例の説明図である。まず図8のS101において、再抽出を行う領域を設定する。この領域の設定は、色C1と色C2を設定することにより行い、色C1と色C2を結ぶ線分付近に存在するピーク色の中から、代表色とすべき色があれば、その色を抽出する。色C1,C2は、擬似明度軸に近い代表色を追加する場合には、紙色と黒色とする。また、擬似明度軸と代表色との最短距離を示す線分の途中の色を代表色に追加する場合には、代表色の擬似明度軸への射影点と代表色を色C1,C2とする。
【0044】
S102において、色C1,C2を結ぶ線分付近のピーク色を注目色Ckとする。例えば色C1,C2を結ぶ線分から所定の距離の範囲内に存在するピーク色を注目色Ckとすればよい。色C1,C2を結ぶ線分付近に複数のピーク色が存在していることもあるが、その場合には、それぞれを注目色Ckとして以下に説明するS103〜S106の処理をそれぞれ行う。
【0045】
S103において、ベクトルV(C1,Ck)とベクトルV(Ck,C2)のなす角度αを求める。図9(A)には、色C1,C2,Ckおよび各ベクトルと角度αの関係を示している。注目色Ckは、色C1と色C2を結ぶ線分に近い色である。このとき、ベクトルV(C1,Ck)とベクトルV(Ck,C2)のなす角度αを求めると、図示した角度αが求まる。この角度αは、注目色Ckが線分C1C2に近いときに小さくなる。線分から同じだけ離れていても、色C1と色C2の中間では角度αは小さくなるが、例えば色C1の脇に存在するとベクトルV(C1,Ck)の線分との角度が大きくなり、角度αは大きくなる。同様に色Ckが色C2の脇に存在するとベクトルV(Ck,C2)と線分との角度が大きくなり、角度αは大きくなる。
【0046】
S104において、注目色Ckについて、線分の方向(ベクトルV(C1,C2)の方向)の頻度の2次微分値F2を求める。頻度分布はヒストグラム作成部11で作成された3次元のヒストグラムを利用すればよい。また2次微分値は、例えば図9(B)に示すようなフィルタを用いて算出すればよい。なお、実際には3次元のフィルタとなるが、ここでは図示の都合上、2次元で示している。また、図9(B)に示した例では図9(A)に示した線分C1C2に対応した45度の角度の2次元微分フィルタの係数マトリクスの一例を示したものである。各係数は線分の方向によって変化する。また、フィルタの大きさは任意である。この2次微分値F2は、ピーク色である注目色Ckが周囲の色に比べてどの程度突出して使用されているかを示すものである。
【0047】
S105において、S103で求めた角度αと、S104で求めた2次微分値F2とから評価値H2を求める。評価値H2は、例えば角度αが小さいほど、また2次微分値F2が大きいほど、大きな値を出力する評価関数により算出することができる。なお、評価値H2は、注目色Ckの頻度値で正規化しておくとよい。
【0048】
S106において、S105で算出した評価値H2と所定の閾値とを比較し、評価値H2が閾値よりも大きければ、注目色Ckを代表色として仮抽出する。なお、上述のようにS103からS106までの処理は、線分C1C2に近いピーク色が複数存在している場合にはそれぞれのピーク色を代表色Ckとして実施する。これによって、代表色として仮抽出される注目色Ckも1つとは限らず、複数抽出される場合がある。もちろん、評価値H2によっては1つも抽出されない場合もある。
【0049】
S107において、S106で代表色として仮抽出された注目色Ckが複数存在している場合に、それらのうち色空間における距離が近い(例えば所定の閾値以内の)ものをグループ化し、そのグループに属する注目色Ckのうち評価値H2が最も大きいものを代表色として追加抽出する。あるいは、グループに属する注目色Ckから任意の2個を選び、色空間において一定距離内にある場合には評価値H2が大きいピーク色を代表色候補として残し、他方のピーク色は代表色候補から外すようにする。この手順を繰り返し、残った代表色候補を代表色として抽出してもよい。このようにして、線分C1C2の間に存在していた代表色として抽出すべきであった色が追加抽出されることになる。
【0050】
なお、図8に示した代表色の追加抽出処理は、S101で選択する色C1,C2を変更して複数回行ってもよい。例えば上述のように、色C1,C2として紙色と黒色を選択してグレーの代表色を抽出し、また代表色抽出部42で抽出したそれぞれの代表色とその代表色の擬似明度軸への射影点とから、それぞれ代表色の追加抽出を行うとよい。このときの代表色の追加抽出処理は、代表色抽出部42で抽出した全ての代表色に対して行ってもよい。これにより、同色相の複数色が存在する場合であって、代表色抽出部42にて代表色を抽出しきれない場合でも、代表色が追加抽出されることになる。また、グレーの代表色の追加抽出は、代表色抽出部42で誤検出を含めて抽出し、低彩度色排除部43で排除した低彩度の代表色について、精度よく再抽出するものである。
【0051】
図10は、追加抽出される代表色の一例の説明図である。図10(A)には色C1,C2として紙色と黒色を選択した場合について示しており、線分の近くにピーク色Ck1〜Ck4が存在している例を示している。この例の場合、ピーク色Ck1〜Ck4をそれぞれ注目色とし、S103〜S106の処理を行う。各ピーク色Ck1〜Ck4に対応する評価値H2が所定の閾値より大きいものを代表色として仮抽出する。例えば4つとも代表色として仮抽出されたとする。この4つのピーク色は色空間において一定距離内にあるような互いに近い色であることから、これら4つのピーク色をグループ化し、評価値H2が最も大きいものを代表色として抽出する。例えばピーク色Ck1の評価値H2が最も大きいとすれば、ピーク色Ck1を代表色として抽出し、他のピーク色Ck2〜Ck4は代表色とはしない。あるいは、ピーク色Ck1〜Ck4から任意の2個を選び、色空間において一定距離内にある場合には評価値H2が大きいピーク色を代表色候補として残し、他方のピーク色は代表色候補から外すようにする。この手順を繰り返し、残った代表色候補(ここではピーク色Ck1)を代表色として抽出する。このようにして、色C1,C2として紙色と黒色を選択した場合について、代表色としてピーク色Ck1を追加して抽出できた。
【0052】
図10(B)には、色C2として代表色抽出部42で抽出した代表色を、色C1としてその代表色の擬似明度軸への射影点を選択した場合について示している。また、線分C1C2の近くにピーク色Ck5〜Ck7が存在している例を示している。これらのピーク色Ck5〜Ck7は、擬似明度軸との最短距離を示すベクトルの方向が、代表色C2と擬似明度軸との最短距離を示すベクトルの方向を向いているため、代表色抽出部42における処理では統合対象となったものである。
【0053】
この例の場合も、ピーク色Ck5〜Ck7をそれぞれ注目色とし、S103〜S106の処理を行う。例えば各ピーク色Ck1〜Ck4に対応する評価値H2が所定の閾値より大きく、3つとも代表色として仮抽出されたとする。この3つのピーク色は互いに近い色であることから、これら3つのピーク色をグループ化し、評価値H2が最も大きいものを代表色として抽出する。例えばピーク色Ck6の評価値H2が最も大きいとすれば、ピーク色Ck6を代表色として抽出し、他のピーク色Ck5、Ck7は代表色とはしない。あるいはピーク色Ck5〜Ck7から任意の2個を選び、色空間において一定距離内にある場合には評価値H2が大きいピーク色を代表色候補として残し、他方のピーク色は代表色候補から外すようにする。この手順を繰り返し、残った代表色候補(ここではピーク色Ck6)を代表色として抽出する。このようにして、代表色抽出部42で抽出した代表色をもとに、ピーク色Ck6を代表色として追加して抽出できた。
【0054】
図11は、代表色抽出部42におけるピーク色の統合処理の別の例の説明図である。この例では、各ピーク色と紙色とを通る直線を考え、この直線が近い位置に存在する場合に、対応するピーク色を統合する。このとき、統合するピーク色のうち、なるべく紙色から離れる色を選択する。このようにしてピーク色を統合してゆき、残ったピーク色を代表色として一旦抽出する。このようにして抽出された代表色を図11(A)において黒丸で示している。
【0055】
このような方法による代表色の抽出は従来から行われているが、代表色として抽出された色と紙色との間に存在している代表的な色については抽出されない。そこで、図8で説明した方法により、色C1,C2として紙色と抽出された代表色を選択し、代表色の追加抽出を行う。
【0056】
例えば図11(B)に示した例では、点線の丸印および二重丸で示したピーク色が紙色と代表色(黒丸)との間にいくつか固まって存在している。このような場合、点線の丸印および二重丸で示したピーク色が黒丸で示した代表色に統合されてしまうと、色の違いが大きくなる。図8に示した方法により各代表色と紙色との間に存在するピーク色から代表色の追加抽出を行うことによって、例えば二重丸で示したピーク色が代表色として追加抽出される。これによって、紙色からなるべく遠い色だけでなく、その中間に存在する色についても、利用頻度が高く他の色と識別できる色が代表色として抽出されることになる。
【0057】
図12は、画素値置換部14の一例の説明図である。図中、61は射影直線算出部、62は置換部である。上述のように、画素値置換部14では、入力画像の各画素の色を、代表色選択部13で選択した代表色のうちのいずれかに置換する。この処理を行うために、入力画像の各画素の色から、置換すべき代表色を選択する必要がある。この代表色を選択するための一つの方法について示しておく。なお、図12(B)、(C)において、白丸は紙色を、黒丸は代表色を、○に+が入力画像のある画素の色を、それぞれ示している。
【0058】
射影直線算出部61は、紙色とその他の各代表色とを通る直線を算出する。この直線を射影直線とする。図12(B)においては、白丸で示した紙色と、それ以外の3つの代表色のそれぞれを通る直線を示している。
【0059】
置換部62は、射影直線算出部61で算出した各射影直線と、置換対象の入力画像の画素の色との距離を求める。図12(C)においては、置換対象の画素の色から各射影直線への垂線を示している。この垂線の長さが置換対象の画素の色から各射影直線への距離となる。その距離が最も短い射影直線に対応する紙色以外の代表色を選択し、その選択した代表色に置換対象の画素の色を置換する。なお、紙色からの距離が所定範囲内の色については、紙色に置換する。このようにして、入力画像の各画素の色は、それぞれ、紙色を含む代表色のいずれかに置換され、これによって使用されている色が代表色に限定された出力画像が得られる。
【0060】
なお、代表色を選択する方法は、上述の方法に限られるものではない。例えば、入力画像上で置換対象の画素の周囲の色の平均色を求め、色空間上でその平均色と置換対象の画素の色との差分ベクトルを含む線分に距離が最も近い代表色を選択し、差分ベクトルの長さが所定の長さ以下の場合には置換対象の画素の色に最も近い代表色を選択するという方法を用いてもよい。もちろん、そのほかの種々の公知の方法を用いることもできる。
【0061】
図13は、本発明の第2の実施の形態を示すブロック図、図14は、フィルタ処理部15のフィルタ係数の概念図である。図中、図1と同様の部分には同じ符号を付して重複する説明を省略する。15はフィルタ処理部である。この第2の実施の形態では、ヒストグラム作成部11とピーク色抽出部12との間にフィルタ処理部15を設けた構成を示している。
【0062】
フィルタ処理部15は、ヒストグラム作成手段で作成されたヒストグラムに対して、例えば図14に示すように分布の重心に近いほど係数を大きくした3次元形状フィルタ処理を行う。例えば図14(A)における分布の重心が対象画素(この例ではフィルタ領域の中心の画素)の右下45度に存在する場合、図14(B)に具体例を示したような係数マトリクスを用いてフィルタ処理を行えばよい。ここでは図示の関係上、2次元でしか示していないが、実際には分布の重心と対象画素の3次元の位置関係に応じた3次元の係数マトリクスを用いてフィルタ処理を行うことになる。
【0063】
この3次元形状フィルタ処理によって、色空間上における分布の端部で且つ分布の重心から離れる方向に頻度が減少していくような部分がピークとして残りやすくなる。これにより、次のピーク色抽出部12でピーク色を抽出する際には、本来原稿に存在していた可能性の高い分布端部のピーク色を抽出されやすくすることができる。そのため、入力画像中で特徴のある色をピーク色として抽出でき、代表色として選択されるようになる。
【0064】
このフィルタ処理部15で3次元形状フィルタ処理を行った後の3次元ヒストグラムがピーク色抽出部12に渡され、3次元ヒストグラムの中からピーク色が抽出されることになる。そのほかの構成については、上述の第1の実施の形態と同様であるので、ここでは説明を省略する。
【0065】
図15は、本発明の画像処理装置の機能をコンピュータプログラムで実現した場合におけるコンピュータプログラム及びそのコンピュータプログラムを格納した記憶媒体とコンピュータの一例の説明図である。図中、71はプログラム、72はコンピュータ、81は光磁気ディスク、82は光ディスク、83は磁気ディスク、84はメモリ、91はCPU、92は内部メモリ、93は読取部、94はハードディスク、95,96はインタフェース、97は通信部である。
【0066】
上述の各実施の形態やその変形例として説明した本発明の画像処理装置の各部の機能の一部または全部を、コンピュータにより実行可能なプログラム71によって実現することが可能である。その場合、そのプログラム71およびそのプログラムが用いるデータなどは、コンピュータが読み取り可能な記憶媒体に記憶することも可能である。記憶媒体とは、コンピュータのハードウェア資源に備えられている読取部93に対して、プログラムの記述内容に応じて、磁気、光、電気等のエネルギーの変化状態を引き起こして、それに対応する信号の形式で、読取部93にプログラムの記述内容を伝達できるものである。例えば、光磁気ディスク81,光ディスク82(CDやDVDなどを含む)、磁気ディスク83,メモリ84(ICカード、メモリカードなどを含む)等である。もちろんこれらの記憶媒体は、可搬型に限られるものではない。
【0067】
これらの記憶媒体にプログラム71を格納しておき、例えばコンピュータ72の読取部93あるいはインタフェース95にこれらの記憶媒体を装着することによって、コンピュータからプログラム71を読み出し、内部メモリ92またはハードディスク94に記憶し、CPU91によってプログラム71を実行することによって、本発明の画像処理装置の機能を実現することができる。あるいは、ネットワークなどを介してプログラム71をコンピュータ72に転送し、コンピュータ72では通信部97でプログラム71を受信して内部メモリ92またはハードディスク94に記憶し、CPU91によってプログラム71を実行することによって、本発明の画像処理装置の機能を実現してもよい。なお、コンピュータ72には、このほかインタフェース96を介して様々な装置と接続することができ、例えば情報を表示する表示装置やユーザが情報を入力する入力装置等も接続されている。
【0068】
もちろん、一部の機能についてハードウェアによって構成することもできるし、すべてをハードウェアで構成してもよい。あるいは、他の構成とともに本発明も含めたプログラムとして構成することも可能である。例えば複写機などの画像読取装置や画像形成装置を含む装置において制御プログラムとともに1つのプログラムとして構成し、画像読取装置で読み取られた画像に対して限定色化の処理を行うように構成することもできる。もちろん、他の用途に適用する場合には、その用途におけるプログラムとの一体化も可能である。なお、コンピュータ72が画像読取装置または画像形成装置のいずれかあるいは双方を有する構成、あるいは他の構成を有していてよいことは言うまでもない。
【図面の簡単な説明】
【0069】
【図1】本発明の第1の実施の形態を示すブロック図である。
【図2】ヒストグラム作成部11の一例の説明図である。
【図3】ピーク色抽出部12の一例の説明図である。
【図4】代表色選択部13の一例を示すブロック図である。
【図5】代表色抽出部42の動作の一例を示すフローチャートである。
【図6】代表色抽出部42におけるピーク色の統合処理の一例の説明図である。
【図7】代表色抽出部42における統合処理後のピーク色の一例の説明図である。
【図8】代表色の追加抽出の処理の一例を示すフローチャートである。
【図9】代表色の追加抽出の処理の一例の説明図である。
【図10】追加抽出される代表色の一例の説明図である。
【図11】代表色抽出部42におけるピーク色の統合処理の別の例の説明図である。
【図12】画素値置換部14の一例の説明図である。
【図13】本発明の第2の実施の形態を示すブロック図である。
【図14】フィルタ処理部15のフィルタ係数の概念図である。
【図15】本発明の画像処理装置の機能をコンピュータプログラムで実現した場合におけるコンピュータプログラム及びそのコンピュータプログラムを格納した記憶媒体とコンピュータの一例の説明図である。
【符号の説明】
【0070】
11…ヒストグラム作成部、12…ピーク色抽出部、13…代表色選択部、14…画素値置換部、15…フィルタ処理部、21…画素値量子化部、22…ヒストグラム算出部、31…二次微分フィルタ、32…紙色抽出部、41…黒色判定部、42…代表色抽出部、43…低彩度色排除部、61…射影直線算出部、62…置換部、71…プログラム、72…コンピュータ、81…光磁気ディスク、82…光ディスク、83…磁気ディスク、84…メモリ、91…CPU、92…内部メモリ、93…読取部、94…ハードディスク、95,96…インタフェース、97…通信部。
【特許請求の範囲】
【請求項1】
入力画像から色空間上におけるヒストグラムを作成するヒストグラム作成手段と、前記ヒストグラム作成手段で作成されたヒストグラムから頻度が極大となるピーク色を抽出するピーク色抽出手段と、前記ピーク色の特徴量から複数のピーク色を統合するか否かを判断するとともに統合する複数のピーク色から代表色として残すピーク色の選択を行う代表色選択手段と、前記代表色選択手段で選択した前記代表色に前記入力画像の各画素の色を置換する置換手段を有し、前記代表色選択手段は、紙色と黒色とを結ぶ線分と各ピーク色との最短距離を示すベクトルを求め、該ベクトルの方向及び明度差を少なくとも前記特徴量として用いて複数のピーク色の統合を行うことを特徴とする画像処理装置。
【請求項2】
前記代表色選択手段は、ピーク色の彩度、色相、明度、頻度、頻度の微分値の少なくとも1つを用いて、前記代表色として残すピーク色を選択することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記代表色選択手段は、紙色と黒色、あるいは前記代表色の紙色と黒色とを結ぶ線分への射影点と該代表色とを結ぶ線分の近傍に存在するピーク色について、代表色の追加抽出を行うことを特徴とする請求項1または請求項2に記載の画像処理装置。
【請求項4】
さらに、前記ヒストグラム作成手段で作成されたヒストグラムに対して分布の重心に近いほど係数を大きくした3次元形状フィルタ処理を行うフィルタ処理手段を有し、前記ピーク色抽出手段は、前記フィルタ処理手段による3次元形状フィルタ処理が施されたヒストグラムから前記ピーク色を抽出することを特徴とする請求項1ないし請求項3のいずれか1項に記載の画像処理装置。
【請求項5】
前記代表色選択手段は、前記ピーク色のうち最も明度が低いピーク色が黒色とみなせるか否かを判断し、黒色とみなせる場合には当該ピーク色を前記紙色と線分で結ぶ黒色として設定し、黒色とみなせない場合には所定の黒色を設定することを特徴とする請求項1ないし請求項4のいずれか1項に記載の画像処理装置。
【請求項6】
コンピュータに、請求項1ないし請求項5のいずれか1項に記載の画像処理装置の機能を実行させることを特徴とする画像処理プログラム。
【請求項1】
入力画像から色空間上におけるヒストグラムを作成するヒストグラム作成手段と、前記ヒストグラム作成手段で作成されたヒストグラムから頻度が極大となるピーク色を抽出するピーク色抽出手段と、前記ピーク色の特徴量から複数のピーク色を統合するか否かを判断するとともに統合する複数のピーク色から代表色として残すピーク色の選択を行う代表色選択手段と、前記代表色選択手段で選択した前記代表色に前記入力画像の各画素の色を置換する置換手段を有し、前記代表色選択手段は、紙色と黒色とを結ぶ線分と各ピーク色との最短距離を示すベクトルを求め、該ベクトルの方向及び明度差を少なくとも前記特徴量として用いて複数のピーク色の統合を行うことを特徴とする画像処理装置。
【請求項2】
前記代表色選択手段は、ピーク色の彩度、色相、明度、頻度、頻度の微分値の少なくとも1つを用いて、前記代表色として残すピーク色を選択することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記代表色選択手段は、紙色と黒色、あるいは前記代表色の紙色と黒色とを結ぶ線分への射影点と該代表色とを結ぶ線分の近傍に存在するピーク色について、代表色の追加抽出を行うことを特徴とする請求項1または請求項2に記載の画像処理装置。
【請求項4】
さらに、前記ヒストグラム作成手段で作成されたヒストグラムに対して分布の重心に近いほど係数を大きくした3次元形状フィルタ処理を行うフィルタ処理手段を有し、前記ピーク色抽出手段は、前記フィルタ処理手段による3次元形状フィルタ処理が施されたヒストグラムから前記ピーク色を抽出することを特徴とする請求項1ないし請求項3のいずれか1項に記載の画像処理装置。
【請求項5】
前記代表色選択手段は、前記ピーク色のうち最も明度が低いピーク色が黒色とみなせるか否かを判断し、黒色とみなせる場合には当該ピーク色を前記紙色と線分で結ぶ黒色として設定し、黒色とみなせない場合には所定の黒色を設定することを特徴とする請求項1ないし請求項4のいずれか1項に記載の画像処理装置。
【請求項6】
コンピュータに、請求項1ないし請求項5のいずれか1項に記載の画像処理装置の機能を実行させることを特徴とする画像処理プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2008−65803(P2008−65803A)
【公開日】平成20年3月21日(2008.3.21)
【国際特許分類】
【出願番号】特願2007−99880(P2007−99880)
【出願日】平成19年4月5日(2007.4.5)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】
【公開日】平成20年3月21日(2008.3.21)
【国際特許分類】
【出願日】平成19年4月5日(2007.4.5)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】
[ Back to top ]