画像処理装置及び画像処理プログラム
【課題】色境界の影響による劣化を補正することができる画像処理装置を提供する。
【解決手段】色境界抽出部11は、画像の色境界を抽出する。影響値算出部12は、色境界が画素に及ぼす影響の大きさを示す影響値を算出する。係数設定部13は、演算部14で畳み込み演算の対象とする画素を注目画素とし、その注目画素を含む色境界で分離された領域の画素に対応する畳み込み演算のための係数を、影響値が大きいほど係数を小さく、影響値が小さいほど係数を大きく設定する。演算部14は、係数設定部13により設定された係数を係数の総和で除算して正規化し、正規化された係数を用いて畳み込み演算を行う。
【解決手段】色境界抽出部11は、画像の色境界を抽出する。影響値算出部12は、色境界が画素に及ぼす影響の大きさを示す影響値を算出する。係数設定部13は、演算部14で畳み込み演算の対象とする画素を注目画素とし、その注目画素を含む色境界で分離された領域の画素に対応する畳み込み演算のための係数を、影響値が大きいほど係数を小さく、影響値が小さいほど係数を大きく設定する。演算部14は、係数設定部13により設定された係数を係数の総和で除算して正規化し、正規化された係数を用いて畳み込み演算を行う。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置及び画像処理プログラムに関するものである。
【背景技術】
【0002】
画像中には、色境界に起因する劣化が生じている場合がある。例えば、画像読取装置で読み取った画像では、読取誤差によって色境界には原画像に存在しない色が生じている場合がある。また、離散コサイン変換や離散フーリエ変換などのブロック毎に周波数変換して量子化する方法を用いた符号化方式や圧縮方式を用いて符号化または圧縮された画像を元に戻すと、例えばモスキートノイズなどと呼ばれるブロックノイズが生じる場合がある。さらに、例えば強調フィルタ処理では色境界に意図して色や濃度の変化を施すが、この処理によって補正しすぎている画像では、参照者が色境界部分に劣化が生じていると感じる場合がある。
【0003】
一方、雑音成分や色の相違を除去する技術として平滑化処理がある。平滑化処理では、基本的には予め決められた大きさの画素範囲での色の平均値を算出することにより行われる。例えば特許文献1に記載されている技術では、N×N画素の範囲内で、注目画素を中心に外側に向かって注目画素との輝度の差分である輝度差分値を求め、この輝度差分値が予め決められた条件で最小となる画素を特定画素とする。そして、特定画素に対して重み付けを加えたフィルタ係数を用いるとともに、特定画素以外の画素に対しては輝度差分値と注目画素からの距離に応じた重み付けを加えたフィルタ係数を用い、フィルタ処理を行っている。また、特許文献2には、エッジ度が最小の方向に、他の方向に比べて高い重みを付けてフィルタ処理を行うことが記載されている。さらに、特許文献3では色境界の形状を抽出し、その形状に基づいて補間信号位置を移動してフィルタ処理を行うことが記載されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2009−157647号公報
【特許文献2】特開2007−312304号公報
【特許文献3】特開2002−009590号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明は、色境界の影響による劣化を補正することができる画像処理装置及び画像処理プログラムを提供することを目的とするものである。
【課題を解決するための手段】
【0006】
本願請求項1に記載の発明は、画像の色境界を抽出する抽出手段と、色境界が画素に及ぼす影響の大きさを示す影響値を算出する影響値算出手段と、前記抽出手段で抽出した色境界及び前記影響力算出手段で算出した前記影響値に従って畳み込み演算の係数を設定する設定手段と、前記設定手段により設定された前記係数を用いて畳み込み演算を行う演算手段を有することを特徴とする画像処理装置である。
【0007】
本願請求項2に記載の発明は、本願請求項1に記載の発明の構成に、さらに、前記抽出手段で抽出した色境界からの距離を算出する距離算出手段を有し、前記設定手段は、前記影響値とともに前記距離算出手段で算出した距離を用いて前記係数を設定することを特徴とする画像処理装置である。
【0008】
本願請求項3に記載の発明は、本願請求項2に記載の発明における前記設定手段及び前記演算手段は、前記距離算出手段で算出された距離が予め決められた値の範囲の場合に前記係数の設定及び畳み込み演算を行うことを特徴とする画像処理装置である。
【0009】
本願請求項4に記載の発明は、本願請求項1から請求項3のいずれか1項に記載の発明の構成に、さらに、前記画像から代表色を選定して前記画像の色を代表色のいずれかに変換する変換手段を有し、前記演算手段は、前記変換手段により変換された画像に対して畳み込み演算を行うことを特徴とする画像処理装置である。
【0010】
本願請求項5に記載の発明は、本願請求項4に記載の発明の構成に、さらに、前記演算手段により畳み込み演算が施された画像から代表色を再選定する再選定手段を有することを特徴とする画像処理装置である。
【0011】
本願請求項6に記載の発明は、本願請求項1から請求項5のいずれか1項に記載の発明における前記設定手段及び前記演算手段は、前記影響値が予め決められた値の範囲の場合に前記係数の設定及び畳み込み演算を行うことを特徴とする画像処理装置である。
【0012】
本願請求項7に記載の発明は、コンピュータに、請求項1から請求項6のいずれか1項に記載の画像処理装置の機能を実行させるものであることを特徴とする画像処理プログラムである。
【発明の効果】
【0013】
本願請求項1に記載の発明によれば、色境界の影響による劣化を補正することができる。
【0014】
本願請求項2に記載の発明によれば、色境界の方向とは異なる方向に存在する劣化の補正を安定して行うことができる。
【0015】
本願請求項3に記載の発明によれば、処理を高速化することができる。
【0016】
本願請求項4に記載の発明によれば、雑音成分の影響を抑えた劣化の補正を行うことができる。
【0017】
本願請求項5に記載の発明によれば、色境界の影響を低減した代表色の選定を行うことができる。
【0018】
本願請求項6に記載の発明によれば、処理を高速化することができる。
【0019】
本願請求項7に記載の発明によれば、本願請求項1ないし請求項6のいずれか1項に記載の発明の効果を得ることができる。
【図面の簡単な説明】
【0020】
【図1】本発明の第1の実施の形態を示す構成図である。
【図2】本発明の第1の実施の形態における動作の一例を示す流れ図である。
【図3】本発明の第1の実施の形態の動作の一例における具体例の説明図である。
【図4】影響値の算出の具体例の説明図である。
【図5】影響値と係数の関係の一例の説明図である。
【図6】本発明の第1の実施の形態による処理前後の画像の一例の説明図である。
【図7】本発明の第2の実施の形態を示す構成図である。
【図8】本発明の第2の実施の形態における動作の一例を示す流れ図である。
【図9】本発明の第2の実施の形態の動作の一例における具体例の説明図である。
【図10】本発明の第3の実施の形態を示す構成図である。
【図11】本発明の第3の実施の形態における動作の一例を示す流れ図である。
【図12】本発明の第3の実施の形態の動作の一例における具体例の説明図である。
【図13】本発明の実施の一形態で説明した機能をコンピュータプログラムで実現した場合におけるコンピュータプログラム及びそのコンピュータプログラムを格納した記憶媒体とコンピュータの一例の説明図である。
【発明を実施するための形態】
【0021】
図1は、本発明の第1の実施の形態を示す構成図である。図中、11は色境界抽出部、12は影響値算出部、13は係数設定部、14は演算部である。色境界抽出部11は、画像の色境界を抽出する。抽出方法としては、従来から用いられている方法を使用すればよい。例えば、移動平均値を閾値とした二値化処理や、エッジ検出フィルタを用いる方法など、種々の方法がある。また、明度成分を含めた色成分ごとに境界を抽出してもよいし、複数の色成分の抽出結果を用いて色境界を抽出してもよい。
【0022】
影響値算出部12は、色境界が画素に及ぼす影響の大きさを示す影響値を算出する。例えば上述した画像読取装置で読み取った画像の場合や強調フィルタ処理で過強調されている場合などでは、色境界に近いほど、また色境界での色差が大きいほど影響を強く受け、色境界から遠いほど、また色差が小さいほどその影響は小さくなる。このような色境界から受ける影響の大きさを影響値として算出している。例えば、局所領域の平均色値との差の絶対値、微分値、局所領域内の色差などを用いて影響値を算出するとよい。もちろん、色境界から受ける影響が数値化されれば、このほかの種々の値を用い、種々の方法を用いて算出してもよい。具体例については後述する。
【0023】
係数設定部13は、色境界抽出部11で抽出した色境界及び影響値算出部12で算出した影響値に従って、畳み込み演算の係数を設定する。より具体的には、演算部14で畳み込み演算の対象とする画素を注目画素とし、その注目画素を含む色境界で分離された領域の画素に対応する畳み込み演算のための係数を、影響値に従って算出する。影響値は色境界から受ける影響の大きさを示しているが、畳み込み演算の際に色境界からの影響を他の画素よりも受けていない画素を優先して利用するように係数を設定する。そのため、影響値が大きいほど係数を小さく、影響値が小さいほど係数を大きく設定する。例えば影響値の増加に伴って係数が減少する種々の関数などを用いて影響値から係数を設定すればよい。
【0024】
演算部14は、係数設定部13により設定された係数を用いて畳み込み演算を行う。畳み込み演算の際には、それぞれの係数を使用する係数の総和で除算し、正規化してから演算する。ある画素(注目画素)において畳み込み演算を行う際には、当該注目画素を含む色境界で分離された領域の画素に対応する係数を使用し、領域外の画素については利用しないか、係数を0として演算する。
【0025】
なお、影響値算出部12で算出した影響値が予め決められた値の範囲の場合に係数設定部13による係数の設定及び演算部14による畳み込み演算を行うこととし、それ以外の場合には演算部14による畳み込み演算あるいはさらに係数設定部13による係数の設定を行わないこととしてもよい。すべての画素において係数の設定及び畳み込み演算を行う場合に比べて処理量が減る。
【0026】
以下、本発明の第1の実施の形態における動作の一例について、具体例を用いながら説明する。なお、以下の説明においては具体例として畳み込み演算の対象とする画素を注目画素とし、注目画素を含む予め決められた大きさの領域を処理対象とする領域として説明してゆく。
【0027】
図2は、本発明の第1の実施の形態における動作の一例を示す流れ図、図3は、本発明の第1の実施の形態の動作の一例における具体例の説明図である。図3(A)には与えられた画像における処理対象の領域の具体例を示している。図3においては1つのマス目が1または複数の画素に対応する。図示の都合上、色の違いを斜線の違いにより示している。処理対象の領域は、演算部14で畳み込み演算を行って値を得る対象とする画素を注目画素とし、この注目画素を含む予め決められた大きさの領域としている。
【0028】
S21において、色境界抽出部11は、画像の色境界を抽出する。図3(A)に示した画像から色境界を抽出すると、図3(B)において太線で示した位置が色境界として抽出される。
【0029】
S22において、影響値算出部12は、色境界が画素に及ぼす影響の大きさを示す影響値を算出する。図4は、影響値の算出の具体例の説明図である。図4に示す例では、局所領域の平均色値と画素の色値との差の絶対値、微分値の絶対値、局所領域内の色差の絶対値を用い、各値の線形和を影響値とする例を示している。図4(A)には画像のある方向における色値の変化を実線により示している。なお、a部は読取誤差により色境界がぼけた状態を示しており、b部はフィルタ処理により過強調された状態を示しており、c部は圧縮処理などで生じた雑音成分を示している。
【0030】
局所領域の平均色値と画素の色値との差の絶対値は、ある画素を対象画素とし、その対象画素を含む図3に示す処理対象の領域よりも小さい予め定められた大きさの領域を局所領域とし、局所領域における平均色値と対象画素の色値との差の絶対値を求める。対象画素を順に変更して求めてゆくと、例えば図4(C)に示す変化となる。また、平均色値を図4(A)に破線で示している。
【0031】
微分値の絶対値についても、上述の局所領域における微分フィルタの値を対象画素における微分値とし、その絶対値を求める。対象画素を順に変更して求めてゆくと、例えば図4(D)に示す変化となる。局所領域の大きさにもよるが、この例ではb、c、d部などの凹凸は平均化されて微分値が算出されており、図4(A)に示した色値の変化に比べて微分値の変化は小さくなっている。
【0032】
局所領域内の色差の絶対値は、上述の局所領域内の画素同士について、色差の総和または最大値の絶対値を求める。対象画素を順に変更して求めてゆくと、例えば図4(E)に示す変化となる。画素同士の色差の総和を求める際に、注目画素との距離(色差を求めた2つの画素と注目画素との距離のうち短い方)を重みとして用い、色差と距離を乗算して、その総和(総積和)あるいは最大値を求めてもよい。さらに、画素同士の色差を求める際には、局所領域の画素を色境界部と非境界部に分け、色境界部の画素と非境界部の画素との色差を求めてもよい。あるいは、局所領域の画素を二値化し、一方の値の画素と他方の値の画素との色差を求めてもよい。図4(F)には斜線を付した画素と斜線を付していない画素に分けられた場合を示しており、斜線を付した画素と斜線を付していない画素の組み合わせで色差を求めればよい。図4(F)ではいくつかの組み合わせを矢線で示している。局所領域のすべての画素の組み合わせで色差を求めるよりも画素の組み合わせが減る。
【0033】
これらの局所領域の平均色値と画素の色値との差の絶対値、微分値の絶対値、局所領域内の色差の絶対値の線形和を算出し、影響値とする。算出された影響値の変化を図4(B)に示している。この影響値は、色境界に近いほど大きく、色境界から遠くなるほど小さくなっている。また、色境界での色差が大きいほど大きな値となり、影響の大きさを示している。
【0034】
なお、局所領域の平均色値と画素の色値との差の絶対値、微分値の絶対値、局所領域内の色差の絶対値を求める際の局所領域の大きさは、異なっていてもよい。また、このほかの値を用いてもよく、上述した値を含めて取捨選択してもよい。
【0035】
図3(C)には、図3(A)に示した画像から影響値算出部12で算出した影響値の一例を示している。影響値は、色境界に近いほど大きく、色境界から遠くなるほど小さい値となっている。
【0036】
図2においては、S21とS22の処理を順に示しているが、S21とS22の処理を並行して行ってもよい。
【0037】
S23において、係数設定部13は演算部14で畳み込み演算の対象とする注目画素を含む、色境界で分離された領域を特定し、S24において、S23で特定した領域内の各画素における畳み込み演算のための係数を、影響値に従って算出する。図3(D)では、斜線を交差させて示している画素を注目画素とし、S23で特定した領域に斜線を付して示している。また、算出した係数の例を図3(E)に示している。S23で特定した領域以外の画素については係数を作成せずに演算部14における畳み込み演算の対象外とするか、あるいは係数を0とする。図3(E)に示した例では係数を0としている。S23で特定した領域については、影響値が大きいほど係数を小さく、影響値が小さいほど係数を大きく設定する。図5は、影響値と係数の関係の一例の説明図である。影響値から係数を算出する際には、例えば図5(A)に示すグラフ形状の関数や図5(B)に示すグラフ形状の関数など、影響値の増加に伴って係数が減少する種々の関数を用いて算出すればよい。
【0038】
S25において、S24で算出した係数を用い、その係数の総和で各係数を除算して正規化し、正規化した係数と各画素値との積和を求めることにより畳み込み演算を行い、注目画素における処理後の色値を算出する。すなわち、S24で算出した係数をPi、係数の総和をS、各画素値をCiとすると、
Σi (Pi/S)・Ci
を計算すればよい。
【0039】
この演算は、注目画素を含む、色境界で分離された領域内の画素の値が使用される(領域外の画素は使用されないか、係数が0であるため総和には反映されない)ため、異なる色が使用されている画素の影響は受けない。また、色境界から離れるに従って大きな係数が与えられていることから、色境界から離れた色ほど使用されることになる。そのため、色境界で生じる不具合の影響を受けている画素でも、その部分で使用されていたであろう、位置的に色境界から離れた色により色値が修正されることになる。
【0040】
なお、上述の処理では注目画素を含む処理対象の領域を設定し、畳み込み演算により注目画素の色値を求めている。このような処理を、与えられた画像の各画素を順に注目画素とし、各注目画素について上述の処理を行えばよい。あるいは、色境界の抽出や影響値の算出は予め画像全体について行っておき、それぞれの注目画素の処理の際には係数の設定及び畳み込み演算の処理を行うように構成してもよい。
【0041】
図6は、本発明の第1の実施の形態による処理前後の画像の一例の説明図である。図6(A)に示した例では、黒の枠の内部を着色した画像を画像読取装置で読み取った場合について示している。着色した色を斜線で示しているが、黒枠と着色部とが接する部分では、読取誤差により着色した色が黒みがかった状態になる。上述の処理を行うことによって、黒みがかった色の画素は着色部分の色に修正され、図6(B)に示す処理後の画像が得られる。なお、画像読取装置で読み取った画像では、黒の枠の色も色境界で着色部分の影響により色が変化するが、こちらの画素についても黒の枠の色に修正されることになる。
【0042】
図6(C)に示した例では、黒の枠の内部を着色した画像に対して強調フィルタを施し、過強調された場合について示している。着色した色を斜線で示しているが、黒枠と着色部とが接する部分では、強調フィルタ処理によって着色部の色が他の着色部分の色よりも薄くなり(斜線の間隔を広げて示している)、この部分が黒枠と着色部の間に縁取りした状態に観察者には見える。このような画像に対して上述の処理を行うことによって、色が薄くなった部分は着色部分の色に修正され、図6(D)に示す処理後の画像が得られる。
【0043】
図6(E)に示した例では、黒の枠の内部を着色した画像をJPEG方式により圧縮して伸張した例を示している。JPEG方式は非可逆の圧縮方式であり、離散コサイン変換及び変換係数の量子化などにより、伸張した画像には色が変わった雑音成分が生じる。この雑音成分は、一般にモスキートノイズと呼ばれており、色境界における色の段差により高周波成分が発生することによる。このような画像に対して上述の処理を行うことによって、雑音成分は他の着色部分の色に修正され、図6(F)に示す処理後の画像が得られる。雑音成分は必ずしも色境界の延在方向に生じるわけではないが、上述の処理によって雑音成分が修正されることになる。
【0044】
このようにして畳み込み演算により色値が修正された画像は、色境界での影響が抑えられて色変化が処理前に比べて減り、色境界の影響を受ける前の画像が再現される。また、例えば画像を圧縮する際には、処理前の画像を圧縮する場合に比べて処理後の画像を圧縮したデータ量は減少する。さらに、例えば代表色を抽出し、さらに限定色化の処理を行う場合には、代表色が色境界の影響を受けずに抽出され、色の置換の際にも色境界の影響による予期しない代表色への置換がなくなる。
【0045】
図7は、本発明の第2の実施の形態を示す構成図である。図中、15は距離算出部である。上述の本発明の第1の実施の形態と異なる部分について主に説明してゆく。この第2の実施の形態では、第1の実施の形態の構成に加えて距離算出部15を有している。
【0046】
距離算出部15は、各画素における色境界抽出部11で抽出した色境界からの距離を算出する。距離の算出方法は従来から用いられている方法を使用すればよく、例えば、各画素から最も近い色境界までの画像平面上でのユークリッド距離を求めてもよいし、距離画像を生成するフィルタ処理を行ってもよし、他の方法を用いてもよい。
【0047】
係数設定部13では、影響値算出部12で算出した影響値とともに、距離算出部15で算出した色境界からの距離を用いて、畳み込み演算のための係数を設定する。係数は、色境界からの距離が大きいほど大きく設定する。例えば、影響値をもとに求めた係数の値に、色境界からの距離、あるいは距離に応じた割合を乗算し、畳み込み演算のための係数として設定すればよい。もちろん、このほかの方法を用いて、影響値と色境界からの距離に応じた畳み込み演算のための係数を設定してもよい。なお、第1の実施の形態でも説明したが、係数の設定は演算部14で畳み込み演算の対象とする画素を注目画素とし、その注目画素を含む色境界で分離された領域の画素について行う。この領域外の画素については、係数を設定せずに畳み込み演算の対象から外すか、係数を0とする。
【0048】
演算部14では、係数設定部13により設定された係数を用いて畳み込み演算を行うが、係数設定部13で係数を設定する際に色境界からの距離が大きいほど係数が大きくなるように設定しているので、色境界から離れている画素の値ほど畳み込み演算の結果に反映されることになる。もちろん、影響値により色境界から離れている画素ほど畳み込み演算の結果に反映されることは上述の第1の実施の形態で説明したとおりである。なお、畳み込み演算の際には、それぞれの係数を使用する係数の総和で除算し、正規化してから演算する。また、畳み込み演算を行う際には、演算対象の注目画素を含む色境界で分離された領域の画素に対応する係数を使用し、領域外の画素については利用しないか、係数を0として演算することも、上述の第1の実施の形態で説明したとおりである。
【0049】
なお、距離算出部15で算出した距離が予め決められた値の範囲の場合に係数設定部13による係数の設定及び演算部14による畳み込み演算を行うこととし、それ以外の場合には演算部14による畳み込み演算あるいはさらに係数設定部13による係数の設定を行わないこととしてもよい。すべての画素において係数の設定及び畳み込み演算を行う場合に比べて処理量が減る。もちろん、第1の実施の形態で説明した影響値算出部12で算出した影響値が予め決められた値の範囲か否かと組み合わせて用い、少なくとも一方が範囲内であれば係数の設定及び畳み込み演算を行い、あるいはいずれか一方でも範囲外となる場合には係数の設定及び畳み込み演算を行わない、などとしてもよい。
【0050】
図8は、本発明の第2の実施の形態における動作の一例を示す流れ図、図9は、本発明の第2の実施の形態の動作の一例における具体例の説明図である。図8に示した処理の流れでは、図2に示した第1の実施の形態における処理の流れに、S26の処理が追加され、図2のS24の係数を設定する処理がS27の距離を考慮した係数の設定の処理に変更されている。また、図3(A)に示した画像は図9の(A)に、図3(B)に示した色境界の例は図9(B)に、図3(C)に示した影響値の例は図9(C)に、図3(D)に示した影響値に対する注目画素を含む分離された領域の例を図9(D)に、それぞれ再掲している。図2及び図3を用いて説明した第1の実施の形態と異なる処理について主に説明する。
【0051】
S21で色境界抽出部11が画像の色境界を抽出した後、S26において、距離算出部15は各画素における色境界抽出部11で抽出した色境界からの距離を算出する。この例では、最も近い色境界までの画素数により色境界からの距離としている。図9(B)の色境界の抽出結果から算出した距離の一例を図9(E)に示している。
【0052】
一方、S22では影響値算出部12で影響値が算出されるが、この処理は第1の実施の形態で述べたのでここでは説明を省略する。算出された影響値の一例を図9(C)に示している。なお、図8におけるS21及びS26の処理とS22の処理は、いずれを先に行ってもよいし、並行して行ってもよい。
【0053】
係数設定部13は、S23で演算部14で畳み込み演算の対象とする注目画素を含む、色境界で分離された領域を特定した後、S27において、S23で特定した領域内の各画素における畳み込み演算のための係数を、S22で算出した影響値とS26で算出した色境界からの距離に従って算出する。図9(D)及び図9(F)では、斜線を交差させて示している画素を注目画素とし、S23で特定した領域に斜線を付して示している。また、算出した係数の例を図9(G)に示している。係数は、影響値が小さいほど、また距離が大きいほど大きな値を取り、影響値が大きいほど、また距離が小さいほど小さい値を取る。例えば第1の実施の形態で説明した方法により影響値から得た係数と距離との線形和などで、設定する係数の値を求めればよい。
【0054】
このようにしてS27で設定した係数を用いて、演算部14はS25で畳み込み演算を行い、注目画素における処理後の色値を算出すればよい。その際に、S27で算出した係数を、その係数の総和で除算して正規化して用いる。なお、S27及びS25の処理で、S23で特定した領域以外の画素については第1の実施の形態で説明したとおりである。
【0055】
なお、この第2の実施の形態における動作の一例においても、注目画素を含む処理対象の領域を設定し、畳み込み演算により注目画素の色値を求める処理を、与えられた画像の各画素を順に注目画素として行うほか、色境界の抽出や影響値の算出、距離の算出は予め画像全体について行っておき、それぞれの注目画素の処理の際には係数の設定及び畳み込み演算の処理を行うように構成してもよい。
【0056】
この第2の実施の形態では、影響値とともに色境界からの距離を用いていることから、色境界からの距離を用いない場合に比べ、色境界から離れている画素の値を重視する傾向が強くなり、処理後の画素の値から色境界による影響がより低減される。
【0057】
図10は、本発明の第3の実施の形態を示す構成図である。図中、16は代表色変換部、17は代表色再選定部である。上述の本発明の第2の実施の形態と異なる部分について主に説明してゆく。この第3の実施の形態では、第2の実施の形態の構成に加えて代表色色変換部16及び代表色再選定部17を有している。
【0058】
代表色変換部16は、画像から代表色を選定し、画像の色を代表色のいずれかに変換して、使用されている色が代表色に限定された限定色画像を生成する。代表色の選定及び代表色への変換手法については、従来から知られている方法を使用すればよい。
【0059】
演算部14では、上述の第1及び第2の実施の形態が与えられた画像に対して畳み込み演算を行っていたのとは異なり、代表色変換部16で代表色へ色変換した限定色画像に対して畳み込み演算を行う。
【0060】
代表色再選定部17は、演算部14により畳み込み演算が施された限定色画像から代表色を再選定する。再選定した代表色はどのような用途に使用してもよいが、ここでは、例えば演算部14で畳み込み演算を行った後の限定色画像について、再選定した代表色への色変換を行って、改めて限定色画像を得ている。もちろん、再選定した代表色を処理結果として出力してもよい。なお、演算部14の処理結果を出力するものとし、この代表色再選定部17を設けずに構成してもよい。
【0061】
図11は、本発明の第3の実施の形態における動作の一例を示す流れ図、図12は、本発明の第3の実施の形態の動作の一例における具体例の説明図である。図11に示した処理の流れでは、図8に示した第2の実施の形態における処理の流れに、S28、S29、S31の処理が追加され、図8のS25の畳み込み演算の処理がS30の限定色画像を用いた畳み込み演算の処理に変更されている。また、図12においては、図9の例に図12(H)、(I)が追加されている。図8及び図9を用いて説明した第2の実施の形態及び図2、図3を用いて説明した第1の実施の形態と異なる処理について主に説明する。
【0062】
S21で色境界抽出部11が画像の色境界を抽出した後、S26で距離算出部15が各画素における色境界抽出部11で抽出した色境界からの距離を算出し、また、S22で影響値算出部12が影響値を算出して、係数設定部13が、S23で注目画素を含む色境界で分離された領域を特定した後、S27で畳み込み演算のための係数を算出するまでの処理は、第2の実施の形態(及び第1の実施の形態)で説明した通りである。ここまでの処理で、例えば図12(G)に示した係数が得られたものとする。
【0063】
一方、代表色変換部16は、S28において画像から代表色を抽出し、S29において画像の色を代表色のいずれかに変換して、使用されている色が代表色に限定された限定色画像を生成する。図12(A)に示す処理対象の領域について、代表色のいずれかに変換された限定色画像の一例を図12(H)に示している。図12(B)に示した色境界により、処理対象の領域は2つの領域に分けられるが、図12(H)に示した例では、色境界の影響を受けている画素については別の代表色が抽出されてその代表色に変換され(白く示した画素)、3色の画像になっている。
【0064】
S30において、S27で算出した係数を用い、その係数の総和で各係数を除算して正規化し、正規化した係数とS29で生成した限定色画像の各画素値との積和を求めることにより畳み込み演算を行い、注目画素における処理後の色値を算出する。なお、限定色画像の注目画素は、もとの画像における注目画素と位置的に対応する画素である。また、そのほかの画素についても、それぞれ対応する限定色画像の画素に対して係数を乗算してゆくことになる。係数を正規化しておくこと、及びS23で特定した領域以外の画素の取り扱いについては第1,第2の実施の形態で説明したとおりである。
【0065】
図12(H)に示した限定色画像に対してS30における畳み込み演算を行うことによって、図12(I)に示す画像が得られる。図12(H)に示した限定色画像において色境界の影響により別の代表色に変換されていた部分(白く示した画素)について、色境界から離れた位置の画素の色(代表色)が畳み込み演算において重視されて色が変更される。
【0066】
この例ではS20で畳み込み演算を行った後、S31において、代表色再選定部17で代表色の再選定を行い、さらに、S30で得た限定色画像あるいは与えられた画像について、使用する色を再選定された代表色に限定した限定色画像への色変換を行う。これにより、S29で生成された限定色画像で色境界の影響を受けて内部とは異なる色に変換されていた画素についても、色境界の影響が排除された限定色画像が得られる。もちろん、代表色の再選定により処理を終了してもよい。
【0067】
なお、この第3の実施の形態における動作の一例においても、注目画素を含む処理対象の領域を設定し、畳み込み演算により注目画素の色値を求める処理を、与えられた画像の各画素を順に注目画素として行うほか、色境界の抽出や影響値の算出、距離の算出は予め画像全体について行っておき、それぞれの注目画素の処理の際には係数の設定及び畳み込み演算の処理を行うように構成してもよい。もちろん、代表色の抽出及び限定色画像の生成についても、予め行っておいてもよい。また、代表色の再抽出と再抽出された代表色を用いた限定色画像の生成については、画素毎の畳み込み演算の処理が終了した後に行ってもよい。
【0068】
この第3の実施の形態では、予め代表色変換した限定色画像を用いて畳み込み演算を行うため、もとの画像を用いる場合に比べて色の変化が少ない画像を対象として演算が行われ、演算結果も色境界による影響は低減される。なお、第1の実施の形態の構成に、代表色変換部16、あるいはさらに代表色再選定部17を設けてもよい。この場合も、演算部14では代表色変換部16で変換した限定色画像を用いて畳み込み演算を行えばよい。
【0069】
図13は、本発明の実施の一形態で説明した機能をコンピュータプログラムで実現した場合におけるコンピュータプログラム及びそのコンピュータプログラムを格納した記憶媒体とコンピュータの一例の説明図である。図中、41はプログラム、42はコンピュータ、51は光磁気ディスク、52は光ディスク、53は磁気ディスク、54はメモリ、61はCPU、62は内部メモリ、63は読取部、64はハードディスク、65はインタフェース、66は通信部である。
【0070】
上述の本発明の各実施の形態で説明した各部の機能を全部あるいは部分的に、コンピュータに実行させるプログラム41によって実現してもよい。その場合、そのプログラム41およびそのプログラムが用いるデータなどは、コンピュータが読み取る記憶媒体に記憶させておけばよい。記憶媒体とは、コンピュータのハードウェア資源に備えられている読取部63に対して、プログラムの記述内容に応じて、磁気、光、電気等のエネルギーの変化状態を引き起こして、それに対応する信号の形式で、読取部63にプログラムの記述内容を伝達するものである。例えば、光磁気ディスク51,光ディスク52(CD、DVDなどを含む)、磁気ディスク53,メモリ54(ICカード、メモリカード、フラッシュメモリなどを含む)等である。もちろんこれらの記憶媒体は、可搬型に限られるものではない。
【0071】
これらの記憶媒体にプログラム41を格納しておき、例えばコンピュータ42の読取部63あるいはインタフェース65にこれらの記憶媒体を装着することによって、コンピュータからプログラム41を読み出し、内部メモリ62またはハードディスク64(磁気ディスクやシリコンディスクなどを含む)に記憶して、CPU61がプログラム41を実行し、上述の本発明の各実施の形態で説明した機能が全部あるいは部分的に実現される。あるいは、通信路を介してプログラム41をコンピュータ42に転送し、コンピュータ42では通信部66でプログラム41を受信して内部メモリ62またはハードディスク64に記憶して、CPU61がプログラム41を実行して実現してもよい。
【0072】
コンピュータ42には、このほかインタフェース65を介して様々な装置と接続してもよい。もちろん、部分的にハードウェアによって構成してもよいし、全部をハードウェアで構成してもよい。あるいは、他の構成とともに本発明の各実施の形態で説明した機能の全部あるいは部分的に含めたプログラムとして構成してもよい。他の用途に適用する場合には、その用途におけるプログラムと一体化してもよい。
【符号の説明】
【0073】
11…色境界抽出部、12…影響値算出部、13…係数設定部、14…演算部、15…距離算出部、16…代表色変換部、17…代表色再選定部、41…プログラム、42…コンピュータ、51…光磁気ディスク、52…光ディスク、53…磁気ディスク、54…メモリ、61…CPU、62…内部メモリ、63…読取部、64…ハードディスク、65…インタフェース、66…通信部。
【技術分野】
【0001】
本発明は、画像処理装置及び画像処理プログラムに関するものである。
【背景技術】
【0002】
画像中には、色境界に起因する劣化が生じている場合がある。例えば、画像読取装置で読み取った画像では、読取誤差によって色境界には原画像に存在しない色が生じている場合がある。また、離散コサイン変換や離散フーリエ変換などのブロック毎に周波数変換して量子化する方法を用いた符号化方式や圧縮方式を用いて符号化または圧縮された画像を元に戻すと、例えばモスキートノイズなどと呼ばれるブロックノイズが生じる場合がある。さらに、例えば強調フィルタ処理では色境界に意図して色や濃度の変化を施すが、この処理によって補正しすぎている画像では、参照者が色境界部分に劣化が生じていると感じる場合がある。
【0003】
一方、雑音成分や色の相違を除去する技術として平滑化処理がある。平滑化処理では、基本的には予め決められた大きさの画素範囲での色の平均値を算出することにより行われる。例えば特許文献1に記載されている技術では、N×N画素の範囲内で、注目画素を中心に外側に向かって注目画素との輝度の差分である輝度差分値を求め、この輝度差分値が予め決められた条件で最小となる画素を特定画素とする。そして、特定画素に対して重み付けを加えたフィルタ係数を用いるとともに、特定画素以外の画素に対しては輝度差分値と注目画素からの距離に応じた重み付けを加えたフィルタ係数を用い、フィルタ処理を行っている。また、特許文献2には、エッジ度が最小の方向に、他の方向に比べて高い重みを付けてフィルタ処理を行うことが記載されている。さらに、特許文献3では色境界の形状を抽出し、その形状に基づいて補間信号位置を移動してフィルタ処理を行うことが記載されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2009−157647号公報
【特許文献2】特開2007−312304号公報
【特許文献3】特開2002−009590号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明は、色境界の影響による劣化を補正することができる画像処理装置及び画像処理プログラムを提供することを目的とするものである。
【課題を解決するための手段】
【0006】
本願請求項1に記載の発明は、画像の色境界を抽出する抽出手段と、色境界が画素に及ぼす影響の大きさを示す影響値を算出する影響値算出手段と、前記抽出手段で抽出した色境界及び前記影響力算出手段で算出した前記影響値に従って畳み込み演算の係数を設定する設定手段と、前記設定手段により設定された前記係数を用いて畳み込み演算を行う演算手段を有することを特徴とする画像処理装置である。
【0007】
本願請求項2に記載の発明は、本願請求項1に記載の発明の構成に、さらに、前記抽出手段で抽出した色境界からの距離を算出する距離算出手段を有し、前記設定手段は、前記影響値とともに前記距離算出手段で算出した距離を用いて前記係数を設定することを特徴とする画像処理装置である。
【0008】
本願請求項3に記載の発明は、本願請求項2に記載の発明における前記設定手段及び前記演算手段は、前記距離算出手段で算出された距離が予め決められた値の範囲の場合に前記係数の設定及び畳み込み演算を行うことを特徴とする画像処理装置である。
【0009】
本願請求項4に記載の発明は、本願請求項1から請求項3のいずれか1項に記載の発明の構成に、さらに、前記画像から代表色を選定して前記画像の色を代表色のいずれかに変換する変換手段を有し、前記演算手段は、前記変換手段により変換された画像に対して畳み込み演算を行うことを特徴とする画像処理装置である。
【0010】
本願請求項5に記載の発明は、本願請求項4に記載の発明の構成に、さらに、前記演算手段により畳み込み演算が施された画像から代表色を再選定する再選定手段を有することを特徴とする画像処理装置である。
【0011】
本願請求項6に記載の発明は、本願請求項1から請求項5のいずれか1項に記載の発明における前記設定手段及び前記演算手段は、前記影響値が予め決められた値の範囲の場合に前記係数の設定及び畳み込み演算を行うことを特徴とする画像処理装置である。
【0012】
本願請求項7に記載の発明は、コンピュータに、請求項1から請求項6のいずれか1項に記載の画像処理装置の機能を実行させるものであることを特徴とする画像処理プログラムである。
【発明の効果】
【0013】
本願請求項1に記載の発明によれば、色境界の影響による劣化を補正することができる。
【0014】
本願請求項2に記載の発明によれば、色境界の方向とは異なる方向に存在する劣化の補正を安定して行うことができる。
【0015】
本願請求項3に記載の発明によれば、処理を高速化することができる。
【0016】
本願請求項4に記載の発明によれば、雑音成分の影響を抑えた劣化の補正を行うことができる。
【0017】
本願請求項5に記載の発明によれば、色境界の影響を低減した代表色の選定を行うことができる。
【0018】
本願請求項6に記載の発明によれば、処理を高速化することができる。
【0019】
本願請求項7に記載の発明によれば、本願請求項1ないし請求項6のいずれか1項に記載の発明の効果を得ることができる。
【図面の簡単な説明】
【0020】
【図1】本発明の第1の実施の形態を示す構成図である。
【図2】本発明の第1の実施の形態における動作の一例を示す流れ図である。
【図3】本発明の第1の実施の形態の動作の一例における具体例の説明図である。
【図4】影響値の算出の具体例の説明図である。
【図5】影響値と係数の関係の一例の説明図である。
【図6】本発明の第1の実施の形態による処理前後の画像の一例の説明図である。
【図7】本発明の第2の実施の形態を示す構成図である。
【図8】本発明の第2の実施の形態における動作の一例を示す流れ図である。
【図9】本発明の第2の実施の形態の動作の一例における具体例の説明図である。
【図10】本発明の第3の実施の形態を示す構成図である。
【図11】本発明の第3の実施の形態における動作の一例を示す流れ図である。
【図12】本発明の第3の実施の形態の動作の一例における具体例の説明図である。
【図13】本発明の実施の一形態で説明した機能をコンピュータプログラムで実現した場合におけるコンピュータプログラム及びそのコンピュータプログラムを格納した記憶媒体とコンピュータの一例の説明図である。
【発明を実施するための形態】
【0021】
図1は、本発明の第1の実施の形態を示す構成図である。図中、11は色境界抽出部、12は影響値算出部、13は係数設定部、14は演算部である。色境界抽出部11は、画像の色境界を抽出する。抽出方法としては、従来から用いられている方法を使用すればよい。例えば、移動平均値を閾値とした二値化処理や、エッジ検出フィルタを用いる方法など、種々の方法がある。また、明度成分を含めた色成分ごとに境界を抽出してもよいし、複数の色成分の抽出結果を用いて色境界を抽出してもよい。
【0022】
影響値算出部12は、色境界が画素に及ぼす影響の大きさを示す影響値を算出する。例えば上述した画像読取装置で読み取った画像の場合や強調フィルタ処理で過強調されている場合などでは、色境界に近いほど、また色境界での色差が大きいほど影響を強く受け、色境界から遠いほど、また色差が小さいほどその影響は小さくなる。このような色境界から受ける影響の大きさを影響値として算出している。例えば、局所領域の平均色値との差の絶対値、微分値、局所領域内の色差などを用いて影響値を算出するとよい。もちろん、色境界から受ける影響が数値化されれば、このほかの種々の値を用い、種々の方法を用いて算出してもよい。具体例については後述する。
【0023】
係数設定部13は、色境界抽出部11で抽出した色境界及び影響値算出部12で算出した影響値に従って、畳み込み演算の係数を設定する。より具体的には、演算部14で畳み込み演算の対象とする画素を注目画素とし、その注目画素を含む色境界で分離された領域の画素に対応する畳み込み演算のための係数を、影響値に従って算出する。影響値は色境界から受ける影響の大きさを示しているが、畳み込み演算の際に色境界からの影響を他の画素よりも受けていない画素を優先して利用するように係数を設定する。そのため、影響値が大きいほど係数を小さく、影響値が小さいほど係数を大きく設定する。例えば影響値の増加に伴って係数が減少する種々の関数などを用いて影響値から係数を設定すればよい。
【0024】
演算部14は、係数設定部13により設定された係数を用いて畳み込み演算を行う。畳み込み演算の際には、それぞれの係数を使用する係数の総和で除算し、正規化してから演算する。ある画素(注目画素)において畳み込み演算を行う際には、当該注目画素を含む色境界で分離された領域の画素に対応する係数を使用し、領域外の画素については利用しないか、係数を0として演算する。
【0025】
なお、影響値算出部12で算出した影響値が予め決められた値の範囲の場合に係数設定部13による係数の設定及び演算部14による畳み込み演算を行うこととし、それ以外の場合には演算部14による畳み込み演算あるいはさらに係数設定部13による係数の設定を行わないこととしてもよい。すべての画素において係数の設定及び畳み込み演算を行う場合に比べて処理量が減る。
【0026】
以下、本発明の第1の実施の形態における動作の一例について、具体例を用いながら説明する。なお、以下の説明においては具体例として畳み込み演算の対象とする画素を注目画素とし、注目画素を含む予め決められた大きさの領域を処理対象とする領域として説明してゆく。
【0027】
図2は、本発明の第1の実施の形態における動作の一例を示す流れ図、図3は、本発明の第1の実施の形態の動作の一例における具体例の説明図である。図3(A)には与えられた画像における処理対象の領域の具体例を示している。図3においては1つのマス目が1または複数の画素に対応する。図示の都合上、色の違いを斜線の違いにより示している。処理対象の領域は、演算部14で畳み込み演算を行って値を得る対象とする画素を注目画素とし、この注目画素を含む予め決められた大きさの領域としている。
【0028】
S21において、色境界抽出部11は、画像の色境界を抽出する。図3(A)に示した画像から色境界を抽出すると、図3(B)において太線で示した位置が色境界として抽出される。
【0029】
S22において、影響値算出部12は、色境界が画素に及ぼす影響の大きさを示す影響値を算出する。図4は、影響値の算出の具体例の説明図である。図4に示す例では、局所領域の平均色値と画素の色値との差の絶対値、微分値の絶対値、局所領域内の色差の絶対値を用い、各値の線形和を影響値とする例を示している。図4(A)には画像のある方向における色値の変化を実線により示している。なお、a部は読取誤差により色境界がぼけた状態を示しており、b部はフィルタ処理により過強調された状態を示しており、c部は圧縮処理などで生じた雑音成分を示している。
【0030】
局所領域の平均色値と画素の色値との差の絶対値は、ある画素を対象画素とし、その対象画素を含む図3に示す処理対象の領域よりも小さい予め定められた大きさの領域を局所領域とし、局所領域における平均色値と対象画素の色値との差の絶対値を求める。対象画素を順に変更して求めてゆくと、例えば図4(C)に示す変化となる。また、平均色値を図4(A)に破線で示している。
【0031】
微分値の絶対値についても、上述の局所領域における微分フィルタの値を対象画素における微分値とし、その絶対値を求める。対象画素を順に変更して求めてゆくと、例えば図4(D)に示す変化となる。局所領域の大きさにもよるが、この例ではb、c、d部などの凹凸は平均化されて微分値が算出されており、図4(A)に示した色値の変化に比べて微分値の変化は小さくなっている。
【0032】
局所領域内の色差の絶対値は、上述の局所領域内の画素同士について、色差の総和または最大値の絶対値を求める。対象画素を順に変更して求めてゆくと、例えば図4(E)に示す変化となる。画素同士の色差の総和を求める際に、注目画素との距離(色差を求めた2つの画素と注目画素との距離のうち短い方)を重みとして用い、色差と距離を乗算して、その総和(総積和)あるいは最大値を求めてもよい。さらに、画素同士の色差を求める際には、局所領域の画素を色境界部と非境界部に分け、色境界部の画素と非境界部の画素との色差を求めてもよい。あるいは、局所領域の画素を二値化し、一方の値の画素と他方の値の画素との色差を求めてもよい。図4(F)には斜線を付した画素と斜線を付していない画素に分けられた場合を示しており、斜線を付した画素と斜線を付していない画素の組み合わせで色差を求めればよい。図4(F)ではいくつかの組み合わせを矢線で示している。局所領域のすべての画素の組み合わせで色差を求めるよりも画素の組み合わせが減る。
【0033】
これらの局所領域の平均色値と画素の色値との差の絶対値、微分値の絶対値、局所領域内の色差の絶対値の線形和を算出し、影響値とする。算出された影響値の変化を図4(B)に示している。この影響値は、色境界に近いほど大きく、色境界から遠くなるほど小さくなっている。また、色境界での色差が大きいほど大きな値となり、影響の大きさを示している。
【0034】
なお、局所領域の平均色値と画素の色値との差の絶対値、微分値の絶対値、局所領域内の色差の絶対値を求める際の局所領域の大きさは、異なっていてもよい。また、このほかの値を用いてもよく、上述した値を含めて取捨選択してもよい。
【0035】
図3(C)には、図3(A)に示した画像から影響値算出部12で算出した影響値の一例を示している。影響値は、色境界に近いほど大きく、色境界から遠くなるほど小さい値となっている。
【0036】
図2においては、S21とS22の処理を順に示しているが、S21とS22の処理を並行して行ってもよい。
【0037】
S23において、係数設定部13は演算部14で畳み込み演算の対象とする注目画素を含む、色境界で分離された領域を特定し、S24において、S23で特定した領域内の各画素における畳み込み演算のための係数を、影響値に従って算出する。図3(D)では、斜線を交差させて示している画素を注目画素とし、S23で特定した領域に斜線を付して示している。また、算出した係数の例を図3(E)に示している。S23で特定した領域以外の画素については係数を作成せずに演算部14における畳み込み演算の対象外とするか、あるいは係数を0とする。図3(E)に示した例では係数を0としている。S23で特定した領域については、影響値が大きいほど係数を小さく、影響値が小さいほど係数を大きく設定する。図5は、影響値と係数の関係の一例の説明図である。影響値から係数を算出する際には、例えば図5(A)に示すグラフ形状の関数や図5(B)に示すグラフ形状の関数など、影響値の増加に伴って係数が減少する種々の関数を用いて算出すればよい。
【0038】
S25において、S24で算出した係数を用い、その係数の総和で各係数を除算して正規化し、正規化した係数と各画素値との積和を求めることにより畳み込み演算を行い、注目画素における処理後の色値を算出する。すなわち、S24で算出した係数をPi、係数の総和をS、各画素値をCiとすると、
Σi (Pi/S)・Ci
を計算すればよい。
【0039】
この演算は、注目画素を含む、色境界で分離された領域内の画素の値が使用される(領域外の画素は使用されないか、係数が0であるため総和には反映されない)ため、異なる色が使用されている画素の影響は受けない。また、色境界から離れるに従って大きな係数が与えられていることから、色境界から離れた色ほど使用されることになる。そのため、色境界で生じる不具合の影響を受けている画素でも、その部分で使用されていたであろう、位置的に色境界から離れた色により色値が修正されることになる。
【0040】
なお、上述の処理では注目画素を含む処理対象の領域を設定し、畳み込み演算により注目画素の色値を求めている。このような処理を、与えられた画像の各画素を順に注目画素とし、各注目画素について上述の処理を行えばよい。あるいは、色境界の抽出や影響値の算出は予め画像全体について行っておき、それぞれの注目画素の処理の際には係数の設定及び畳み込み演算の処理を行うように構成してもよい。
【0041】
図6は、本発明の第1の実施の形態による処理前後の画像の一例の説明図である。図6(A)に示した例では、黒の枠の内部を着色した画像を画像読取装置で読み取った場合について示している。着色した色を斜線で示しているが、黒枠と着色部とが接する部分では、読取誤差により着色した色が黒みがかった状態になる。上述の処理を行うことによって、黒みがかった色の画素は着色部分の色に修正され、図6(B)に示す処理後の画像が得られる。なお、画像読取装置で読み取った画像では、黒の枠の色も色境界で着色部分の影響により色が変化するが、こちらの画素についても黒の枠の色に修正されることになる。
【0042】
図6(C)に示した例では、黒の枠の内部を着色した画像に対して強調フィルタを施し、過強調された場合について示している。着色した色を斜線で示しているが、黒枠と着色部とが接する部分では、強調フィルタ処理によって着色部の色が他の着色部分の色よりも薄くなり(斜線の間隔を広げて示している)、この部分が黒枠と着色部の間に縁取りした状態に観察者には見える。このような画像に対して上述の処理を行うことによって、色が薄くなった部分は着色部分の色に修正され、図6(D)に示す処理後の画像が得られる。
【0043】
図6(E)に示した例では、黒の枠の内部を着色した画像をJPEG方式により圧縮して伸張した例を示している。JPEG方式は非可逆の圧縮方式であり、離散コサイン変換及び変換係数の量子化などにより、伸張した画像には色が変わった雑音成分が生じる。この雑音成分は、一般にモスキートノイズと呼ばれており、色境界における色の段差により高周波成分が発生することによる。このような画像に対して上述の処理を行うことによって、雑音成分は他の着色部分の色に修正され、図6(F)に示す処理後の画像が得られる。雑音成分は必ずしも色境界の延在方向に生じるわけではないが、上述の処理によって雑音成分が修正されることになる。
【0044】
このようにして畳み込み演算により色値が修正された画像は、色境界での影響が抑えられて色変化が処理前に比べて減り、色境界の影響を受ける前の画像が再現される。また、例えば画像を圧縮する際には、処理前の画像を圧縮する場合に比べて処理後の画像を圧縮したデータ量は減少する。さらに、例えば代表色を抽出し、さらに限定色化の処理を行う場合には、代表色が色境界の影響を受けずに抽出され、色の置換の際にも色境界の影響による予期しない代表色への置換がなくなる。
【0045】
図7は、本発明の第2の実施の形態を示す構成図である。図中、15は距離算出部である。上述の本発明の第1の実施の形態と異なる部分について主に説明してゆく。この第2の実施の形態では、第1の実施の形態の構成に加えて距離算出部15を有している。
【0046】
距離算出部15は、各画素における色境界抽出部11で抽出した色境界からの距離を算出する。距離の算出方法は従来から用いられている方法を使用すればよく、例えば、各画素から最も近い色境界までの画像平面上でのユークリッド距離を求めてもよいし、距離画像を生成するフィルタ処理を行ってもよし、他の方法を用いてもよい。
【0047】
係数設定部13では、影響値算出部12で算出した影響値とともに、距離算出部15で算出した色境界からの距離を用いて、畳み込み演算のための係数を設定する。係数は、色境界からの距離が大きいほど大きく設定する。例えば、影響値をもとに求めた係数の値に、色境界からの距離、あるいは距離に応じた割合を乗算し、畳み込み演算のための係数として設定すればよい。もちろん、このほかの方法を用いて、影響値と色境界からの距離に応じた畳み込み演算のための係数を設定してもよい。なお、第1の実施の形態でも説明したが、係数の設定は演算部14で畳み込み演算の対象とする画素を注目画素とし、その注目画素を含む色境界で分離された領域の画素について行う。この領域外の画素については、係数を設定せずに畳み込み演算の対象から外すか、係数を0とする。
【0048】
演算部14では、係数設定部13により設定された係数を用いて畳み込み演算を行うが、係数設定部13で係数を設定する際に色境界からの距離が大きいほど係数が大きくなるように設定しているので、色境界から離れている画素の値ほど畳み込み演算の結果に反映されることになる。もちろん、影響値により色境界から離れている画素ほど畳み込み演算の結果に反映されることは上述の第1の実施の形態で説明したとおりである。なお、畳み込み演算の際には、それぞれの係数を使用する係数の総和で除算し、正規化してから演算する。また、畳み込み演算を行う際には、演算対象の注目画素を含む色境界で分離された領域の画素に対応する係数を使用し、領域外の画素については利用しないか、係数を0として演算することも、上述の第1の実施の形態で説明したとおりである。
【0049】
なお、距離算出部15で算出した距離が予め決められた値の範囲の場合に係数設定部13による係数の設定及び演算部14による畳み込み演算を行うこととし、それ以外の場合には演算部14による畳み込み演算あるいはさらに係数設定部13による係数の設定を行わないこととしてもよい。すべての画素において係数の設定及び畳み込み演算を行う場合に比べて処理量が減る。もちろん、第1の実施の形態で説明した影響値算出部12で算出した影響値が予め決められた値の範囲か否かと組み合わせて用い、少なくとも一方が範囲内であれば係数の設定及び畳み込み演算を行い、あるいはいずれか一方でも範囲外となる場合には係数の設定及び畳み込み演算を行わない、などとしてもよい。
【0050】
図8は、本発明の第2の実施の形態における動作の一例を示す流れ図、図9は、本発明の第2の実施の形態の動作の一例における具体例の説明図である。図8に示した処理の流れでは、図2に示した第1の実施の形態における処理の流れに、S26の処理が追加され、図2のS24の係数を設定する処理がS27の距離を考慮した係数の設定の処理に変更されている。また、図3(A)に示した画像は図9の(A)に、図3(B)に示した色境界の例は図9(B)に、図3(C)に示した影響値の例は図9(C)に、図3(D)に示した影響値に対する注目画素を含む分離された領域の例を図9(D)に、それぞれ再掲している。図2及び図3を用いて説明した第1の実施の形態と異なる処理について主に説明する。
【0051】
S21で色境界抽出部11が画像の色境界を抽出した後、S26において、距離算出部15は各画素における色境界抽出部11で抽出した色境界からの距離を算出する。この例では、最も近い色境界までの画素数により色境界からの距離としている。図9(B)の色境界の抽出結果から算出した距離の一例を図9(E)に示している。
【0052】
一方、S22では影響値算出部12で影響値が算出されるが、この処理は第1の実施の形態で述べたのでここでは説明を省略する。算出された影響値の一例を図9(C)に示している。なお、図8におけるS21及びS26の処理とS22の処理は、いずれを先に行ってもよいし、並行して行ってもよい。
【0053】
係数設定部13は、S23で演算部14で畳み込み演算の対象とする注目画素を含む、色境界で分離された領域を特定した後、S27において、S23で特定した領域内の各画素における畳み込み演算のための係数を、S22で算出した影響値とS26で算出した色境界からの距離に従って算出する。図9(D)及び図9(F)では、斜線を交差させて示している画素を注目画素とし、S23で特定した領域に斜線を付して示している。また、算出した係数の例を図9(G)に示している。係数は、影響値が小さいほど、また距離が大きいほど大きな値を取り、影響値が大きいほど、また距離が小さいほど小さい値を取る。例えば第1の実施の形態で説明した方法により影響値から得た係数と距離との線形和などで、設定する係数の値を求めればよい。
【0054】
このようにしてS27で設定した係数を用いて、演算部14はS25で畳み込み演算を行い、注目画素における処理後の色値を算出すればよい。その際に、S27で算出した係数を、その係数の総和で除算して正規化して用いる。なお、S27及びS25の処理で、S23で特定した領域以外の画素については第1の実施の形態で説明したとおりである。
【0055】
なお、この第2の実施の形態における動作の一例においても、注目画素を含む処理対象の領域を設定し、畳み込み演算により注目画素の色値を求める処理を、与えられた画像の各画素を順に注目画素として行うほか、色境界の抽出や影響値の算出、距離の算出は予め画像全体について行っておき、それぞれの注目画素の処理の際には係数の設定及び畳み込み演算の処理を行うように構成してもよい。
【0056】
この第2の実施の形態では、影響値とともに色境界からの距離を用いていることから、色境界からの距離を用いない場合に比べ、色境界から離れている画素の値を重視する傾向が強くなり、処理後の画素の値から色境界による影響がより低減される。
【0057】
図10は、本発明の第3の実施の形態を示す構成図である。図中、16は代表色変換部、17は代表色再選定部である。上述の本発明の第2の実施の形態と異なる部分について主に説明してゆく。この第3の実施の形態では、第2の実施の形態の構成に加えて代表色色変換部16及び代表色再選定部17を有している。
【0058】
代表色変換部16は、画像から代表色を選定し、画像の色を代表色のいずれかに変換して、使用されている色が代表色に限定された限定色画像を生成する。代表色の選定及び代表色への変換手法については、従来から知られている方法を使用すればよい。
【0059】
演算部14では、上述の第1及び第2の実施の形態が与えられた画像に対して畳み込み演算を行っていたのとは異なり、代表色変換部16で代表色へ色変換した限定色画像に対して畳み込み演算を行う。
【0060】
代表色再選定部17は、演算部14により畳み込み演算が施された限定色画像から代表色を再選定する。再選定した代表色はどのような用途に使用してもよいが、ここでは、例えば演算部14で畳み込み演算を行った後の限定色画像について、再選定した代表色への色変換を行って、改めて限定色画像を得ている。もちろん、再選定した代表色を処理結果として出力してもよい。なお、演算部14の処理結果を出力するものとし、この代表色再選定部17を設けずに構成してもよい。
【0061】
図11は、本発明の第3の実施の形態における動作の一例を示す流れ図、図12は、本発明の第3の実施の形態の動作の一例における具体例の説明図である。図11に示した処理の流れでは、図8に示した第2の実施の形態における処理の流れに、S28、S29、S31の処理が追加され、図8のS25の畳み込み演算の処理がS30の限定色画像を用いた畳み込み演算の処理に変更されている。また、図12においては、図9の例に図12(H)、(I)が追加されている。図8及び図9を用いて説明した第2の実施の形態及び図2、図3を用いて説明した第1の実施の形態と異なる処理について主に説明する。
【0062】
S21で色境界抽出部11が画像の色境界を抽出した後、S26で距離算出部15が各画素における色境界抽出部11で抽出した色境界からの距離を算出し、また、S22で影響値算出部12が影響値を算出して、係数設定部13が、S23で注目画素を含む色境界で分離された領域を特定した後、S27で畳み込み演算のための係数を算出するまでの処理は、第2の実施の形態(及び第1の実施の形態)で説明した通りである。ここまでの処理で、例えば図12(G)に示した係数が得られたものとする。
【0063】
一方、代表色変換部16は、S28において画像から代表色を抽出し、S29において画像の色を代表色のいずれかに変換して、使用されている色が代表色に限定された限定色画像を生成する。図12(A)に示す処理対象の領域について、代表色のいずれかに変換された限定色画像の一例を図12(H)に示している。図12(B)に示した色境界により、処理対象の領域は2つの領域に分けられるが、図12(H)に示した例では、色境界の影響を受けている画素については別の代表色が抽出されてその代表色に変換され(白く示した画素)、3色の画像になっている。
【0064】
S30において、S27で算出した係数を用い、その係数の総和で各係数を除算して正規化し、正規化した係数とS29で生成した限定色画像の各画素値との積和を求めることにより畳み込み演算を行い、注目画素における処理後の色値を算出する。なお、限定色画像の注目画素は、もとの画像における注目画素と位置的に対応する画素である。また、そのほかの画素についても、それぞれ対応する限定色画像の画素に対して係数を乗算してゆくことになる。係数を正規化しておくこと、及びS23で特定した領域以外の画素の取り扱いについては第1,第2の実施の形態で説明したとおりである。
【0065】
図12(H)に示した限定色画像に対してS30における畳み込み演算を行うことによって、図12(I)に示す画像が得られる。図12(H)に示した限定色画像において色境界の影響により別の代表色に変換されていた部分(白く示した画素)について、色境界から離れた位置の画素の色(代表色)が畳み込み演算において重視されて色が変更される。
【0066】
この例ではS20で畳み込み演算を行った後、S31において、代表色再選定部17で代表色の再選定を行い、さらに、S30で得た限定色画像あるいは与えられた画像について、使用する色を再選定された代表色に限定した限定色画像への色変換を行う。これにより、S29で生成された限定色画像で色境界の影響を受けて内部とは異なる色に変換されていた画素についても、色境界の影響が排除された限定色画像が得られる。もちろん、代表色の再選定により処理を終了してもよい。
【0067】
なお、この第3の実施の形態における動作の一例においても、注目画素を含む処理対象の領域を設定し、畳み込み演算により注目画素の色値を求める処理を、与えられた画像の各画素を順に注目画素として行うほか、色境界の抽出や影響値の算出、距離の算出は予め画像全体について行っておき、それぞれの注目画素の処理の際には係数の設定及び畳み込み演算の処理を行うように構成してもよい。もちろん、代表色の抽出及び限定色画像の生成についても、予め行っておいてもよい。また、代表色の再抽出と再抽出された代表色を用いた限定色画像の生成については、画素毎の畳み込み演算の処理が終了した後に行ってもよい。
【0068】
この第3の実施の形態では、予め代表色変換した限定色画像を用いて畳み込み演算を行うため、もとの画像を用いる場合に比べて色の変化が少ない画像を対象として演算が行われ、演算結果も色境界による影響は低減される。なお、第1の実施の形態の構成に、代表色変換部16、あるいはさらに代表色再選定部17を設けてもよい。この場合も、演算部14では代表色変換部16で変換した限定色画像を用いて畳み込み演算を行えばよい。
【0069】
図13は、本発明の実施の一形態で説明した機能をコンピュータプログラムで実現した場合におけるコンピュータプログラム及びそのコンピュータプログラムを格納した記憶媒体とコンピュータの一例の説明図である。図中、41はプログラム、42はコンピュータ、51は光磁気ディスク、52は光ディスク、53は磁気ディスク、54はメモリ、61はCPU、62は内部メモリ、63は読取部、64はハードディスク、65はインタフェース、66は通信部である。
【0070】
上述の本発明の各実施の形態で説明した各部の機能を全部あるいは部分的に、コンピュータに実行させるプログラム41によって実現してもよい。その場合、そのプログラム41およびそのプログラムが用いるデータなどは、コンピュータが読み取る記憶媒体に記憶させておけばよい。記憶媒体とは、コンピュータのハードウェア資源に備えられている読取部63に対して、プログラムの記述内容に応じて、磁気、光、電気等のエネルギーの変化状態を引き起こして、それに対応する信号の形式で、読取部63にプログラムの記述内容を伝達するものである。例えば、光磁気ディスク51,光ディスク52(CD、DVDなどを含む)、磁気ディスク53,メモリ54(ICカード、メモリカード、フラッシュメモリなどを含む)等である。もちろんこれらの記憶媒体は、可搬型に限られるものではない。
【0071】
これらの記憶媒体にプログラム41を格納しておき、例えばコンピュータ42の読取部63あるいはインタフェース65にこれらの記憶媒体を装着することによって、コンピュータからプログラム41を読み出し、内部メモリ62またはハードディスク64(磁気ディスクやシリコンディスクなどを含む)に記憶して、CPU61がプログラム41を実行し、上述の本発明の各実施の形態で説明した機能が全部あるいは部分的に実現される。あるいは、通信路を介してプログラム41をコンピュータ42に転送し、コンピュータ42では通信部66でプログラム41を受信して内部メモリ62またはハードディスク64に記憶して、CPU61がプログラム41を実行して実現してもよい。
【0072】
コンピュータ42には、このほかインタフェース65を介して様々な装置と接続してもよい。もちろん、部分的にハードウェアによって構成してもよいし、全部をハードウェアで構成してもよい。あるいは、他の構成とともに本発明の各実施の形態で説明した機能の全部あるいは部分的に含めたプログラムとして構成してもよい。他の用途に適用する場合には、その用途におけるプログラムと一体化してもよい。
【符号の説明】
【0073】
11…色境界抽出部、12…影響値算出部、13…係数設定部、14…演算部、15…距離算出部、16…代表色変換部、17…代表色再選定部、41…プログラム、42…コンピュータ、51…光磁気ディスク、52…光ディスク、53…磁気ディスク、54…メモリ、61…CPU、62…内部メモリ、63…読取部、64…ハードディスク、65…インタフェース、66…通信部。
【特許請求の範囲】
【請求項1】
画像の色境界を抽出する抽出手段と、色境界が画素に及ぼす影響の大きさを示す影響値を算出する影響値算出手段と、前記抽出手段で抽出した色境界及び前記影響力算出手段で算出した前記影響値に従って畳み込み演算の係数を設定する設定手段と、前記設定手段により設定された前記係数を用いて畳み込み演算を行う演算手段を有することを特徴とする画像処理装置。
【請求項2】
さらに、前記抽出手段で抽出した色境界からの距離を算出する距離算出手段を有し、前記設定手段は、前記影響値とともに前記距離算出手段で算出した距離を用いて前記係数を設定することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記設定手段及び前記演算手段は、前記距離算出手段で算出された距離が予め決められた値の範囲の場合に前記係数の設定及び畳み込み演算を行うことを特徴とする請求項2に記載の画像処理装置。
【請求項4】
さらに、前記画像から代表色を選定して前記画像の色を代表色のいずれかに変換する変換手段を有し、前記演算手段は、前記変換手段により変換された画像に対して畳み込み演算を行うことを特徴とする請求項1から請求項3のいずれか1項に記載の画像処理装置。
【請求項5】
さらに、前記演算手段により畳み込み演算が施された画像から代表色を再選定する再選定手段を有することを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記設定手段及び前記演算手段は、前記影響値が予め決められた値の範囲の場合に前記係数の設定及び畳み込み演算を行うことを特徴とする請求項1から請求項5のいずれか1項に記載の画像処理装置。
【請求項7】
コンピュータに、請求項1から請求項6のいずれか1項に記載の画像処理装置の機能を実行させるものであることを特徴とする画像処理プログラム。
【請求項1】
画像の色境界を抽出する抽出手段と、色境界が画素に及ぼす影響の大きさを示す影響値を算出する影響値算出手段と、前記抽出手段で抽出した色境界及び前記影響力算出手段で算出した前記影響値に従って畳み込み演算の係数を設定する設定手段と、前記設定手段により設定された前記係数を用いて畳み込み演算を行う演算手段を有することを特徴とする画像処理装置。
【請求項2】
さらに、前記抽出手段で抽出した色境界からの距離を算出する距離算出手段を有し、前記設定手段は、前記影響値とともに前記距離算出手段で算出した距離を用いて前記係数を設定することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記設定手段及び前記演算手段は、前記距離算出手段で算出された距離が予め決められた値の範囲の場合に前記係数の設定及び畳み込み演算を行うことを特徴とする請求項2に記載の画像処理装置。
【請求項4】
さらに、前記画像から代表色を選定して前記画像の色を代表色のいずれかに変換する変換手段を有し、前記演算手段は、前記変換手段により変換された画像に対して畳み込み演算を行うことを特徴とする請求項1から請求項3のいずれか1項に記載の画像処理装置。
【請求項5】
さらに、前記演算手段により畳み込み演算が施された画像から代表色を再選定する再選定手段を有することを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記設定手段及び前記演算手段は、前記影響値が予め決められた値の範囲の場合に前記係数の設定及び畳み込み演算を行うことを特徴とする請求項1から請求項5のいずれか1項に記載の画像処理装置。
【請求項7】
コンピュータに、請求項1から請求項6のいずれか1項に記載の画像処理装置の機能を実行させるものであることを特徴とする画像処理プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2013−42328(P2013−42328A)
【公開日】平成25年2月28日(2013.2.28)
【国際特許分類】
【出願番号】特願2011−177530(P2011−177530)
【出願日】平成23年8月15日(2011.8.15)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】
【公開日】平成25年2月28日(2013.2.28)
【国際特許分類】
【出願日】平成23年8月15日(2011.8.15)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】
[ Back to top ]