(57)【要約】  【課題】  画質劣化を抑制しつつ、高い圧縮率を実現する符号化装置を提供する。  【解決手段】  画像処理装置２は、入力された画像データ（ＲＧＢ）を、ＹＣｂＣｒ色空間の画像データに変換し、このＹＣｂＣｒ色空間において、予測データと実際の画像データとの比較を行って、画像データの変更を許可するか否かを判定する。画像処理装置２は、画像データの変更が許可された場合に、後段の予測符号化処理において予測の的中率が向上するように、画像データを変更する。その際に、Ｙ成分のデータ変化量を、Ｃｂ成分及びＣｒ成分のデータ変化量よりも小さく抑えることにより、画像データの変更に伴う画質劣化を抑えることができる。【選択図】図７
2006270326.tif 000002
【特許請求の範囲】
【請求項１】
入力された画像データを、既定の色空間で表現された画像データに変換する色空間変換手段と、
前記色空間変換手段により変換された画像データに基づいて、入力された画像データの階調値を変更する階調変更手段と、
前記階調変更手段により階調値が変更された画像データに対して、予測符号化処理を施す予測符号化手段と
を有する符号化装置。
【請求項２】
前記階調変更手段は、前記色空間変換手段により変換された画像データに基づいて、入力された画像データの階調値を変更するか否かを判定する
請求項１に記載の符号化装置。
【請求項３】
前記階調変更手段は、前記色空間変換手段により変換された画像データの階調値を変更する
請求項１又は２に記載の符号化装置。
【請求項４】
前記色空間変換手段は、入力された画像データを、輝度成分または明度成分と、他の色成分とで構成される色空間の画像データに変換する
請求項１〜３のいずれかに記載の符号化装置。
【請求項５】
前記階調変更手段により階調値が変更された画像データを、入力された画像データと同一の色空間で表現された画像データに変換する再色空間変換手段
をさらに有し、
前記予測符号化手段は、前記再色空間変換手段により変換された画像データに対して、予測符号化処理を施す
請求項１に記載の符号化装置。
【請求項６】
前記入力された画像データは、ＲＧＢ色空間で表現されており、
前記色空間変換手段は、ＲＧＢ色空間で表現された画像データを、前記既定の色空間で表現された画像データに変換し、
前記再色空間変換手段は、前記階調変更手段により階調値が変更された画像データを、ＲＧＢ色空間で表現された画像データに変換する
請求項５に記載の符号化装置。
【請求項７】
前記階調変更手段は、前記既定の色空間の色成分のうち、少なくとも１つの色成分に関して、階調幅を変更する
請求項１又は３に記載の符号化装置。
【請求項８】
入力された画像データを、既定の色空間で表現された画像データに変換し、
前記既定の色空間に変換された画像データに基づいて、入力された画像データの階調値を変更し、
階調値が変更された画像データに対して、予測符号化処理を施す
符号化方法。
【請求項９】
入力された画像データを、既定の色空間で表現された画像データに変換するステップと、
前記既定の色空間に変換された画像データに基づいて、入力された画像データの階調値を変更するステップと、
階調値が変更された画像データに対して、予測符号化処理を施すステップと
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、予測符号化方式を適用した符号化装置に関する。
【背景技術】
【０００２】
データの自己相関関係に着目して符号化する方法としては、例えば、ランレングス符号化、ＪＰＥＧ−ＬＳ及びＬＺ符号化（Ziv-Lempel符号化）などがある。特に、画像データの場合には、近傍の画素同士が高い相関関係を有するので、この点に着目して画像データを高い圧縮率で符号化することができる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
本発明は、上述した背景からなされたものであり、画質劣化を抑制しつつ、高い圧縮率を実現する符号化装置を提供することを目的とする。
【課題を解決するための手段】
【０００４】
［符号化装置］
上記目的を達成するために、本発明にかかる符号化装置は、入力された画像データを、既定の色空間で表現された画像データに変換する色空間変換手段と、前記色空間変換手段により変換された画像データに基づいて、入力された画像データの階調値を変更する階調変更手段と、前記階調変更手段により階調値が変更された画像データに対して、予測符号化処理を施す予測符号化手段とを有する。
【０００５】
好適には、前記階調変更手段は、前記色空間変換手段により変換された画像データに基づいて、入力された画像データの階調値を変更するか否かを判定する。
【０００６】
好適には、前記階調変更手段は、前記色空間変換手段により変換された画像データの階調値を変更する。
【０００７】
好適には、前記色空間変換手段は、入力された画像データを、輝度成分または明度成分と、他の色成分とで構成される色空間の画像データに変換する。
【０００８】
好適には、前記階調変更手段により階調値が変更された画像データを、入力された画像データと同一の色空間で表現された画像データに変換する再色空間変換手段をさらに有し、前記予測符号化手段は、前記再色空間変換手段により変換された画像データに対して、予測符号化処理を施す。
【０００９】
好適には、前記入力された画像データは、ＲＧＢ色空間で表現されており、前記色空間変換手段は、ＲＧＢ色空間で表現された画像データを、前記既定の色空間で表現された画像データに変換し、前記再色空間変換手段は、前記階調変更手段により階調値が変更された画像データを、ＲＧＢ色空間で表現された画像データに変換する。
【００１０】
好適には、前記階調変更手段は、前記既定の色空間の色成分のうち、少なくとも１つの色成分に関して、階調幅を変更する。
【００１１】
［符号化方法］
また、本発明にかかる符号化方法は、入力された画像データを、既定の色空間で表現された画像データに変換し、前記既定の色空間に変換された画像データに基づいて、入力された画像データの階調値を変更し、階調値が変更された画像データに対して、予測符号化処理を施す。
【００１２】
［プログラム］
また、本発明にかかるプログラムは、入力された画像データを、既定の色空間で表現された画像データに変換するステップと、前記既定の色空間に変換された画像データに基づいて、入力された画像データの階調値を変更するステップと、階調値が変更された画像データに対して、予測符号化処理を施すステップとをコンピュータに実行させる。
【発明の効果】
【００１３】
本発明の符号化装置によれば、画質劣化を抑制しつつ、入力された画像データを符号化することができる。
【発明を実施するための最良の形態】
【００１４】
［背景と概略］
まず、本発明の理解を助けるために、その背景及び概略を説明する。
例えば、ＬＺ符号化方式などの予測符号化方式では、既定の参照位置の画素値を参照して予測データを生成し、生成された予測データと注目画素の画像データとが一致する場合に、一致した予測データの参照位置など（以下、参照情報）が注目画素の符号データとして符号化される。そのため、予測データの一致頻度（的中率）が高いほど、高い圧縮率が期待できる。
従って、より高い圧縮率を実現したい場合には、予測データの的中率を高めるべく注目画素の画素値が変更される。
【００１５】
しかしながら、このような画素値の変更が行われると、画質劣化として顕在化してくる場合もある。そのため、画素値の変更を行うか否かを適切に評価する必要がある。
画素値変更に伴う画質劣化を適切に評価するには、スキャン画像の表現に用いられるＲＧＢ色空間や、印刷等に用いられるＣＭＹＫ色空間は適当ではない。
【００１６】
そこで、本実施形態における画像処理装置２は、入力された画像データを、画質劣化の評価に適した色空間（例えば、ＹＣｂＣｒ色空間、Ｌａｂ色空間など）の画像データに変換し、変換された画像データに基づいて、画素値の変更を行うか否かを判断する。
【００１７】
［ハードウェア構成］
次に、第１の実施形態における画像処理装置２のハードウェア構成を説明する。
図１は、本発明にかかる符号化方法が適応される画像処理装置２のハードウェア構成を、制御装置２１を中心に例示する図である。
図１に例示するように、画像処理装置２は、ＣＰＵ２１２及びメモリ２１４などを含む制御装置２１、通信装置２２、ＨＤＤ・ＣＤ装置などの記録装置２４、並びに、ＬＣＤ表示装置あるいはＣＲＴ表示装置およびキーボード・タッチパネルなどを含むユーザインターフェース装置（ＵＩ装置）２５から構成される。
画像処理装置２は、例えば、本発明にかかる符号化プログラム５（後述）がプリンタドライバの一部としてインストールされた汎用コンピュータであり、通信装置２２又は記録装置２４などを介して画像データを取得し、取得された画像データを符号化してプリンタ装置３に送信する。
【００１８】
［符号化プログラム］
図２は、制御装置２１（図１）により実行され、本発明にかかる符号化方法を実現する第１の符号化プログラム５の機能構成を例示する図である。
図２に例示するように、第１の符号化プログラム５は、第１色変換部５００、フィルタ処理部５１０、第２色変換部５２０及び予測符号化部５３０を有する。
【００１９】
符号化プログラム５において、第１色変換部５００は、入力された画像データ（第１の色空間で表現された画像データ）を、第２の色空間で表現された画像データに変換する。
第１色変換部５００（色空間変換手段）は、画像読取りまたは画像出力に用いられる色空間（例えば、ＲＧＢ色空間、ＣＭＹＫ色空間など）の画像データを、輝度成分（または明度成分）と他の色成分（例えば、色差成分）とが分離された色空間（ＹＣｂＣｒ色空間、Ｌａｂ色空間、Ｌｕｖ色空間、マンセル色空間など）の画像データに変換することが望ましい。
本例の第１色変換部５００は、ＲＧＢ色空間で表現された画像データを、ＹＣｂＣｒ色空間の画像データに変換する。
【００２０】
フィルタ処理部５１０（階調変更手段）は、第１色変換部５００から出力された画像データ（本例では、ＹＣｂＣｒ色空間の画像データ）に対して、各色成分の階調値の幅を変更する階調値変換処理を施す。この場合の階調値変換処理は、複数の色成分間で独立して実施される。
より具体的には、フィルタ処理部５１０は、画像データのデータ量がより小さくなるように、画像データに含まれる複数の階調値を、１つの階調値に縮退させる。フィルタ処理部５１０は、各色成分の階調の幅をそれぞれ略均一に広げてもよい。
なお、階調値変換処理は、画像全体にわたって均一である必要はなく、最終的に生成される符号量が小さくなるように、局所的に画像データの階調幅を変更してもよい。
【００２１】
第２色変換部５２０（再色空間変換手段）は、フィルタ処理部５１０により階調幅が変更された画像データ（本例では、ＹＣｂＣｒ色空間の画像データ）を、第１の色空間の画像データ、または、第３の色空間の画像データに変換する。第３の色空間は、復号化処理時に対応可能な色空間であることが望ましい。
本例の第２色変換部５２０は、ＹＣｂＣｒ色空間で階調幅が変更された画像データを、ＲＧＢ色空間の画像データに変換する。換言すると、第２色変換部５２０は、入力された画像データと同一の色空間の画像データに戻す。
【００２２】
予測符号化部５３０は、第２色変換部５２０により色空間が変換された画像データ（本例では、ＲＧＢ色空間の画像データ）に対して、予測符号化処理を行い、この画像データの符号データを生成する。予測符号化処理とは、注目領域の画像データを符号化する場合に、この注目領域の画像データと、他の参照領域の画像データとの相関関係を利用する符号化方式である。したがって、予測符号化処理は、例えば、画素毎に順次符号化（点順符号化）することが可能であり、各色成分の画像毎に符号化（面順符号化）するＪＰＥＧ等とは異なる。
【００２３】
図３は、フィルタ処理部５１０（図２）の構成をより詳細に説明する図である。
図３に例示するように、フィルタ処理部５１０は、予測値提供部５１２、誤差判定部５１４及び画素値変更処理部５１６を含む。
予測値提供部５１２は、第１色変換部５００（図２）から入力された画像データに基づいて、注目領域の予測データを生成し、誤差判定部５１４に提供する。
本例の予測値提供部５１２は、予測符号化部５３０に設けられた複数の予測部５３２（図５を参照して後述）と同じ手法によって、注目画素の予測値を生成する。
このように、フィルタ処理部５１０は、後段の予測符号化部５３０によりなされる予測符号化処理に対応し、この予測符号化部５３０と協働して符号量を低減させる。
【００２４】
誤差判定部５１４は、第１色変換部５００（図２）から入力された画像データの注目領域と、予測値提供部５１２により生成されたこの注目領域の予測データとを比較して、この注目領域の階調値を変更するか否かを判定する。
より具体的には、誤差判定部５１４は、注目領域の画素値（階調値）と、この注目領域の予測値（予測データ）との差分を算出し、算出された差分が既定の許容範囲内であるか否かを判定し、許容範囲内である場合に、階調値を変更できると判定し、許容範囲を超える場合に、階調値の変更を禁止する。
本例の誤差判定部５１４は、注目画素の画素値と、この注目画素に対する複数の予測値との差分値をそれぞれ算出し、算出された差分値のいずれかが許容範囲内である場合に、この注目画素の画素値の変更を許可し、この注目画素について算出された差分値の全てが許容範囲外である場合に、この注目画素の画素値の変更を禁止する。
【００２５】
また、誤差判定部５１４は、色成分（本例では、Ｙ成分、Ｃｂ成分、及びＣｒ成分）毎に、注目領域の階調値を変更するか否かを独立して判定する。
例えば、輝度成分（または明度成分）の許容範囲は、その他の成分（例えば、色差成分など）の許容範囲よりも狭く設定される。
この場合、本例の誤差判定部５１４は、各色成分毎に、注目画素の画素値と予測値との差分値を算出し、算出された各色成分の差分値と、各色成分毎に設定された許容範囲とを比較し、全ての色成分について差分値が許容範囲内である場合に、注目画素の画素値の変更を許可し、いずれかの色成分について差分値が許容範囲外である場合に、注目画素の画素値の変更を禁止する。
なお、誤差判定部５１４は、各色成分に対して設定された許容範囲に基づいて、色成分毎に画素値の変更を許可するか禁止するかを判定してもよい。
【００２６】
画素値変更処理部５１６は、誤差判定部５１４による判定結果に応じて、注目領域の階調値を変更する。
より具体的には、画素値変更処理部５１６は、誤差判定部５１４により階調値の変更が許可された場合に、予測符号化部５３０（図２）による予測が的中するように注目領域の階調値を変更し、誤差判定部５１４により階調値の変更が禁止された場合に、入力された注目領域の階調値をそのまま出力する。
本例の画素値変更処理部５１６は、誤差判定部５１４により全ての色成分について画素値の変更が許可された場合に、注目画素の画素値（全ての色成分）を、差分の最も小さい予測値で置換し、誤差判定部５１４によりいずれかの色成分について画素値の変更が禁止された場合に、注目画素の画素値をそのまま出力する。
なお、誤差判定部５１４が色成分毎に画素値の変更を許可するか禁止するかを判定する場合には、画素値変更処理部５１６は、各色成分に対する誤差判定部５１４の判定結果に応じて、色成分毎に、各色成分の画素値を変更してもよい。
【００２７】
図４は、誤差判定部５１４（図３）による誤差判定処理を説明する図であり、図４（Ａ）は、各色成分に対して設定された許容誤差（許容範囲）を例示し、図４（Ｂ）は、誤差判定部５１４による予測誤差の評価例を示す。
図４（Ａ）に例示するように、本例の誤差判定部５１４は、Ｙ成分、Ｃｂ成分及びＣｒ成分それぞれについて、画素値の変更が許容される範囲を示す許容誤差を独立に設定する。Ｙ成分の許容誤差は、Ｃｂ成分及びＣｒ成分の許容誤差よりも小さい（すなわち、許容される範囲が狭い）ことが望ましい。
図４（Ｂ）に示すように、本例の誤差判定部５１４は、注目画素の画素値と、この注目画素に対する各予測値（図６を参照して後述する参照画素Ａ〜Ｄの画素値）との差分値（誤差）を色成分毎に算出する。算出される差分値（誤差）は、Ｙ成分、Ｃｂ成分、及びＣｒ成分に関する値である。
誤差判定部５１４は、このように算出された各色成分の差分値（誤差）を、それぞれの色成分について設定された許容誤差（図４（Ａ））と比較して、全ての色成分について差分値が許容誤差以下である場合に、この参照画素（予測値）について画素値の変更を許可し、いずれかの色成分について差分値が許容誤差より大きい場合に、この色成分について画素値の変更を禁止する。
【００２８】
誤差判定部５１４は、以上のように、各参照画素（予測値）について、画素値の変更を許可するか禁止するかを判定する。
また、本例の誤差判定部５１４は、複数の参照画素（予測値）について、画素値の変更を許可できると判定した場合に、予め定められた優先順に応じて、いずれか１つの参照画素（予測値）を選択し、選択された参照画素（予測値）を画素値変更処理部５１６に通知する。この場合、画素値変更処理部５１６は、注目画素の画素値を、誤差判定部５１４により通知された参照画素の画素値（予測値）で置換する。
なお、誤差判定部５１４は、複数の参照画素（予測値）について、画素値の変更を許可できると判定した場合に、各色成分の誤差と、各色成分に設定された許容誤差とに基づいて、いずれか１つの参照画素（予測値）を選択してもよい。例えば、誤差判定部５１４は、Ｙ成分について、（誤差）／（許容誤差）を算出し、この（誤差）／（許容誤差）が最も小さい参照画素（予測値）を選択することができる。
【００２９】
図５は、予測符号化部５３０（図２）の構成をより詳細に説明する図である。
図５に例示するように、予測符号化部５３０は、複数の予測部５３２（第１予測部５３２ａ、第２予測部５３２ｂ、第３予測部５３２ｃ、第４予測部５３２ｄ）、予測誤差算出部５３４、ラン計数部５３６、選択部５３８、及び符号生成部５４０を含む。
【００３０】
予測部５３２は、予測提供部５１２（図３）と同じ予測データを、注目領域について生成し、生成された予測データと、注目領域の画像データとを比較して、比較結果をラン計数部５３６に出力する。
本例の予測部５３２は、注目画素とは異なる画素（参照画素）の画素値を参照して、この画素値を予測値とし、この予測値と注目画素の画素値との比較結果をラン計数部５３６に対して出力する。より具体的には、第１予測部５３２ａ〜第４予測部５３２ｄは、それぞれ参照画素Ａ〜Ｄ（図５を参照して後述）の画素値と、注目画素Ｘ（図５を参照して後述）の画素値とを比較して、画素値が一致した場合（すなわち、予測が的中した場合）に、自己を識別する予測部ＩＤをラン計数部５３６に対して出力し、これ以外の場合に、一致しなかった旨をラン計数部５３６に対して出力する。なお、予測部５３２は、１種類以上であればよく、例えば、参照位置Ａを参照する第１予測部５３２ａのみを設けてもよい。
【００３１】
予測誤差算出部５３４は、予め定められた予測方法で注目領域の予測データを生成し、生成された予測データと、この注目領域の画像データとの差分を算出し、算出された差分を予測誤差として選択部５３８に出力する。
より具体的には、予測誤差算出部５３４は、既定の参照位置の画素値に基づいて、注目画素の画素値を予測し、その予測値を注目画素の実際の画素値から減算し、予測誤差値として選択部５３８に対して出力する。予測誤差算出部５３４の予測方法は、符号データの復号化処理における予測方法と対応していればよい。
本例の予測誤差算出部５３４は、第１予測部５３２ａと同じ参照位置（参照画素Ａ）の画素値を予測値とし、この予測値と実際の画素値（注目画素Ｘの画素値）との差分を算出する。
【００３２】
ラン計数部５３６は、同一の予測部ＩＤが連続する数をカウントし、予測部ＩＤ及びその連続数を選択部５３８に対して出力する。
本例のラン計数部５３８は、全ての予測部５３２において予測値が注目画素の画素値と一致しなかった場合に、内部カウンタでカウントされている予測部ＩＤ及びその連続数を出力する。
【００３３】
選択部５３８は、ラン計数部５３６から入力された予測部ＩＤ及び連続数、並びに、予測誤差算出部５３４から入力された予測誤差値に基づいて、最も長く連続した予測部ＩＤを選択し、この予測部ＩＤ及びその連続数並びに予測誤差値を予測データとして符号生成部５４０に対して出力する。
【００３４】
符号生成部５４０は、選択部５３８から入力された予測部ＩＤ、連続数及び予測誤差値を符号化し、通信装置２２（図１）又は記録装置２４（図１）などに出力する。
【００３５】
図６は、予測符号化部５３０（図５）によりなされる符号化処理を説明する図であり、図６（Ａ）は、予測部５３２により参照される画素の位置を例示し、図６（Ｂ）は、それぞれの参照画素に対応付けられた符号を例示し、図６（Ｃ）は、符号生成部５４０により生成される符号データを例示する。
図６（Ａ）に例示するように、複数の予測部５３２それぞれの参照位置は、注目画素Ｘとの相対位置として設定されている。具体的には、第１予測部５３２ａの参照画素Ａは、注目画素Ｘの主走査方向上流に設定され、第２予測部５３２ｂから第４予測部５３２ｄの参照画素Ｂ〜Ｄは、注目画素Ｘの上方（副走査方向上流）の主走査ライン上に設定されている。
なお、フィルタ処理部５１０に設けられた予測値提供部５１２（図３）も、予測部５３２と同様に、参照画素Ａ〜Ｄの各画素値を注目画素Ｘの予測値として誤差判定部５１４に提供する。
【００３６】
また、図６（Ｂ）に例示するように、それぞれの参照画素Ａ〜Ｅには符号が対応付けられている。
いずれかの予測部５３２（参照画素）で予測が的中した場合には、ラン計数部５３６（図５）は、予測が的中した予測部５３２（参照画素）について、予測部ＩＤの連続数を増加させ、全ての予測部５３２（参照画素）で予測が的中しなかった場合に、カウントしていた予測部ＩＤの連続数を選択部５３８に出力する。
符号生成部５４０は、図６（Ｂ）に例示するように、各予測部５３２（参照位置）と符号とを互いに対応付けており、注目画素Ｘと画素値が一致した参照位置に対応する符号を出力する。なお、それぞれの参照位置に対応付けられている符号は、例えば、各参照位置の的中率に応じて設定されたエントロピー符号であり、的中率に応じた符号長となる。
【００３７】
また、符号生成部５４０は、同一の参照位置で連続して画素値が一致する場合には、ラン計数部５３６によりカウントされたその連続数を符号化する。これにより、符号量が少なくなる。このように、符号化プログラム５は、図６（Ｃ）に例示するように、いずれかの参照位置で画素値が一致した場合には、その参照位置に対応する符号と、この参照位置で画素値が一致する連続数とを符号化し、いずれの参照位置でも画素値が一致しなかった場合には、既定の参照位置の画素値と注目画素Ｘの画素値との差分（予測誤差値）を符号化する。
【００３８】
図７は、符号化プログラム５（図２）による符号化処理（Ｓ１０）のフローチャートである。
図７に示すように、ステップ１００（Ｓ１００）において、第１色変換部５００（図２）は、入力された画像データ（ＲＧＢ色空間の画像データ）を、ＹＣｂＣｒ色空間の画像データに変換し、変換された画像データ（ＹＣｂＣｒ色空間の画像データ）をフィルタ処理部５１０に出力する。
【００３９】
ステップ１０２（Ｓ１０２）において、フィルタ処理部５１０（図２）は、第１色変換部５００から入力された画像データの中から、読込み順に注目画素Ｘを設定する。注目画素Ｘの画素値には、Ｙ成分の画素値、Ｃｂ成分の画素値、及びＣｒ成分の画素値が含まれる。
また、フィルタ処理部５１０の誤差判定部５１４（図３）は、Ｙ成分、Ｃｂ成分、及びＣｒ成分に対する許容誤差を、予め設けられたテーブルから読み出す。
なお、誤差判定部５１４は、入力された画像の属性に応じて、各色成分（Ｙ成分、Ｃｂ成分、及びＣｒ成分）の許容誤差を設定してもよい。
【００４０】
ステップ１０４（Ｓ１０４）において、予測値提供部５１２は、注目画素に対応する複数の参照画素Ａ〜Ｄを参照して、複数の予測データを生成し、生成された予測データを誤差判定部５１４に出力する。生成される予測データには、各色成分の予測値が含まれている。
【００４１】
ステップ１０６（Ｓ１０６）において、誤差判定部５１４（図３）は、予測値提供部５１２から入力された予測値と、注目画素の画素値との差分（誤差）を参照画素毎及び色成分毎に算出する。
次に、誤差判定部５１４は、参照画素毎に、複数の色成分それぞれについて算出された差分（誤差）と、これらの色成分に対して設定された許容誤差とを比較し、全ての色成分について差分が許容誤差以内である場合に、この参照画素に基づく画素値の変更を許可し、いずれかの色成分について差分が許容誤差の範囲外である場合に、この参照画素に基づく画素値の変更を禁止する。
誤差判定部５１４は、少なくとも１つの参照画素について、画素値の変更が許可された場合に、１つの参照画素を選択し、選択された参照画素を画素値変更処理部５１６に通知して、Ｓ１０８の処理に移行し、いずれの参照画素についても画素値の変更が禁止された場合に、注目画素の画素値をそのまま第２色変換部５２０（図２）に出力し、Ｓ１１２の処理に移行する。
【００４２】
ステップ１０８（Ｓ１０８）において、画素値変更処理部５１６（図３）は、誤差判定部５１４から通知された参照画素の画素値（Ｙ成分、Ｃｂ成分及びＣｒ成分を含む）で、注目画素の画素値（Ｙ成分、Ｃｂ成分及びＣｒ成分を含む）を置換して、第２色変換部５２０に出力する。
【００４３】
ステップ１１０（Ｓ１１０）において、画素値変更処理部５１６は、画素値の置換により生じる誤差（すなわち、誤差判定部５１４により選択された参照画素の画素値と、注目画素の画素値との差分）を、注目画素の周囲に分配する。
これにより、画素値の変更による画像全体のトーンのずれを抑制する。
【００４４】
ステップ１１２（Ｓ１１２）において、第２色変換部５２０（図２）は、フィルタ処理部５１０から入力された注目画素の画素値（Ｙ成分、Ｃｂ成分、及びＣｒ成分）を、ＲＧＢ色空間の画素値に変更し、変更された注目画素の画素値（ＲＧＢ色空間の画像データ）を予測符号化部５３０に出力する。
【００４５】
ステップ１１４（Ｓ１１４）において、予測符号化部５３０に設けられた複数の予測部５３２（図５）は、第２色変換部５２０から入力されたＲＧＢ色空間の画素値（すなわち、注目画素の画素値、及び、既に処理した画像領域の画素値）に基づいて、注目画素の予測データ（Ｒ成分、Ｇ成分及びＢ成分）を生成する。
また、予測誤差算出部５３４（図５）は、注目画素の画素値と、参照画素Ａの画素値との差分（Ｒ成分、Ｇ成分及びＢ成分）を算出し、算出された差分を予測誤差として選択部５３８に出力する。
【００４６】
ステップ１１６（Ｓ１１６）において、各予測部５３２（図５）は、生成された予測データ（Ｒ成分、Ｇ成分及びＢ成分）と、注目画素の画素値（Ｒ成分、Ｇ成分及びＢ成分）とを比較し、一致するか否かを判定し、判定結果（一致した予測部の予測部ＩＤ、又は、一致しなかった旨）をラン計数部５３６に出力する。
符号化プログラム５は、いずれかの予測部５３２において注目画素の画素値と予測データとが一致した場合に、Ｓ１１８の処理に移行し、いずれの予測部５３２においても注目画素の画素値と予測データとが一致しなかった場合に、Ｓ１２０の処理に移行する。
【００４７】
ステップ１１８（Ｓ１１８）において、ラン計数部５３６（図５）は、いずれかの予測部５３２から入力された予測部ＩＤに基づいて、この予測部ＩＤに対応するカウント値を１つ増加させる。
なお、符号化プログラム５は、次の注目画素に対する処理を行うべくＳ１０２に戻る。
【００４８】
ステップ１２０（Ｓ１２０）において、ラン計数部５３６は、予測部５３２から入力された判定結果に基づいて、いずれの予測部５３２においても予測が的中しなかった旨を検知すると、各予測部ＩＤに対応するカウント値を選択部５３８に出力する。
選択部５３８は、ラン計数部５３６から各予測部ＩＤのカウント値が入力されると、入力されたカウント値に基づいて、予測部ＩＤの最長連続数を算出し、算出された最長連続数及び予測部ＩＤを符号生成部５４０に出力する。
その後に、選択部５３８は、予測誤差算出部５３４から入力された予測誤差（全ての予測部５３２において予測が的中しなかった注目画素に関する予測誤差）を符号生成部５４０に出力する。
【００４９】
ステップ１２２（Ｓ１２２）において、符号生成部５４０（図５）は、選択部５３８から順に入力される予測部ＩＤ、連続数、及び予測誤差を符号化し、符号データを通信装置２２（図１）又は記録装置２４（図１）に出力する。
【００５０】
ステップ１２４（Ｓ１２４）において、符号化プログラム５は、入力された画像データの全ての画素について符号化処理が終了したか否かを判定し、未処理の画素が存在する場合に、Ｓ１０２の処理に戻って、次の注目画素に対する処理を行い、これ以外の場合に、符号化処理（Ｓ１０）を終了する。
【００５１】
以上説明したように、本実施形態の画像処理装置２は、入力された画像データを、輝度成分（又は明度成分）が分離された色空間の画像データに変換し、各色成分毎に予測データと実際の画像データとの比較を行って、画像データ（階調値）の変更を行うか否かを判定する。
輝度成分（明度成分）と他の色成分とでは、画素値が変更された場合の画質劣化の度合いが異なるが、本実施形態の画像処理装置２は、これらの色成分に対して独立して画素値の変更を行うか否かを評価することができるため、画質劣化を抑えつつ、高い圧縮率を実現することができる。
【００５２】
また、本実施形態の画像処理装置２は、フィルタ処理部５１０において画素値の変更（量子化）を行った後で、復号化処理で処理可能な色空間（本例では、ＲＧＢ色空間）の画像データに変換する。
これにより、従来の符号化処理及び復号化処理と互換性を保つことができる。
【００５３】
［第１変形例］
次に、上記実施形態の第１の変形例を説明する。
上記実施形態では、ＹＣｂＣｒ色空間で、誤差判定部５１４による誤差判定処理だけでなく、画素値変更処理部５１６による画素値変更処理も実施していたが、これに限定されるものではない。
そこで、第１の変形例では、誤差判定部５１４による誤差判定処理をＹＣｂＣｒ色空間で実施し、画素値変更処理部５１６による画素値変更処理をＲＧＢ色空間（入力された画像データの色空間）で実施する。
【００５４】
図８は、第２の符号化プログラム５２の構成を例示する図である。なお、本図に示された各構成のうち、図２又は図３に示された構成と実質的に同一のものには同一の符号が付されている。
図８に示すように、第２の符号化プログラム５２は、第１色変換部５００、予測値提供部５１２、誤差判定部５１４、画素値変換処理部５１６、及び、予測符号化部５３０を有する。
本変形例における誤差判定部５１４は、ＹＣｂＣｒ色空間の画像データに基づいて、画素値の変更を許可するか禁止するかを判定し、判定結果（画素値変更の許可又は禁止）を画素値変更処理部５１６に出力する。
また、本変形例の画素値変更処理部５１６は、誤差判定部５１４から入力される判定結果に応じて、入力された画像データ（ＲＧＢ色空間）の画素値を変更する。
従って、本変形例では、第２色変換部５２０を設ける必要がない。
【００５５】
このように、第１の変家例の符号化プログラム５２は、ＹＣｂＣｒ色空間では、階調値（画素値）の変更を行うか否かを判定するだけであり、階調値（画素値）の変更、及び、予測符号化処理を、入力された画像データの色空間で行うため、ＹＣｂＣｒ色空間の画像データを他の色空間（ＲＧＢ色空間など）に再度変更する必要がない。
【００５６】
［第２変形例］
次に、第２の変形例を説明する。
上記実施形態では、ＲＧＢ色空間で、予測誤差算出部５３４による予測誤差算出処理だけでなく、予測部５３２による予測一致判定処理もＲＧＢ色空間で行っていたが、これに限定されるものではない。
そこで、第２の変形例では、予測誤差算出部５３４による予測誤差算出処理をＲＧＢ色空間で実施し、予測部５３２による予測一致判定処理をＹＣｂＣｒ色空間で実施する。
換言すると、第２の変形例における画像処理装置２は、予測誤差算出部５３４により予測誤差が算出される場合にのみ、ＹＣｂＣｒ色空間の画像データを、ＲＧＢ色空間の画像データに変換する。
【００５７】
図９は、第３の符号化プログラム５４の構成を例示する図である。なお、本図に示された各構成のうち、図２又は図５に示された構成と実質的に同一のものには同一の符号が付されている。
図９に例示するように、第３の符号化プログラム５４は、第１の符号化プログラム５（図２）の第１のフィルタ処理部５１０を、第２のフィルタ処理部５５０に置換した構成をとる。
第２のフィルタ処理部５５０は、誤差判定部５１４による判定結果に応じて、第１色変換部５００から入力された画像データ（ＹＣｂＣｒ色空間）を、第２色変換部５２０、又は、予測符号化部５３０の予測部５３２に出力する。より具体的には、本フィルタ処理部５５０は、注目画素の画素値と予測値との差分が許容範囲内である場合（すなわち、予測部ＩＤ又は連続数を符号化する場合）に、入力された画像データ（ＹＣｂＣｒ色空間）を予測部５３２に出力し、注目画素の画素値と予測値との差分が許容範囲外である場合（すなわち、予測誤差を符号化する場合）に、入力された画像データ（ＹＣｂＣｒ色空間）を第２色変換部５２０に出力する。
【００５８】
図１０は、第２のフィルタ処理部５５０の構成をより詳細に説明する図である。なお、本図に示された各構成のうち、図３に示された構成と実質的に同一のものには同一の符号が付されている。
図１０に示すように、第２のフィルタ処理部５５０は、第１のフィルタ処理部５１０（図３）の第１の誤差判定部５１４を、第２の誤差判定部５５４に置換した構成をとる。
【００５９】
第２の誤差判定部５５４は、注目画素の画素値と、この注目画素に対する複数の予測値との差分値をそれぞれ算出し、算出された差分値のいずれかが許容範囲内である場合に、この注目画素の画素値の変更を許可して、この注目画素の画素値を画素値変更処理部５１６に出力する。
この場合に、注目画素の画素値（ＹＣｂＣｒ）は、許容範囲内にある予測値（ＹＣｂＣｒ）と置換されることになり、この予測値は、後段の予測部５３２により生成されるものと同一であるから、この注目画素については、必ずいずれかの予測部５３２において予測が的中することになる。
従って、この注目画素について符号化されるのは、実際の画素値ではなく、予測部ＩＤ又はその連続数であり、画像データの色空間がＹＣｂＣｒ色空間であってもＲＧＢ色空間であっても同一の符号となる。
【００６０】
一方、フィルタ処理部５５０は、この注目画素について算出された差分値の全てが許容範囲外である場合に、この注目画素の画素値の変更を禁止して、この注目画素の画素値を第２色変換部５２０（図９）に出力する。
この場合に、注目画素の画素値（ＹＣｂＣｒ）は、第２色変換部５２０によりＲＧＢ色空間に変換されるため、予測誤差算出部５３４により算出される予測誤差は、ＲＧＢ色空間の画素値となり、ＲＧＢ色空間を基準とした符号データが生成される。
【００６１】
図１１は、第３の符号化プログラム５４（図９）による符号化処理（Ｓ２０）のフローチャートである。なお、本図に示された各処理のうち、図７に示された処理と実質的に同一のものには同一の符号が付されている。
図１１に示すように、Ｓ１００において、第１色変換部５００（図９）は、入力された画像データ（ＲＧＢ色空間）を、ＹＣｂＣｒ色空間の画像データに変換し、変換された画像データ（ＹＣｂＣｒ色空間）をフィルタ処理部５５０に出力する。
Ｓ１０２において、フィルタ処理部５５０（図９、図１０）は、第１色変換部５００から入力された画像データの中から、読込み順に注目画素Ｘを設定する。
また、フィルタ処理部５５０の誤差判定部５５４（図１０）は、Ｙ成分、Ｃｂ成分、及びＣｒ成分に対する許容誤差を、予め設けられたテーブルから読み出す。
Ｓ１０４において、予測値提供部５１２（図１０）は、注目画素に対応する複数の参照画素Ａ〜Ｄを参照して、複数の予測データを生成し、生成された予測データを誤差判定部５５４に出力する。生成される予測データには、各色成分の予測値が含まれている。
【００６２】
ステップ２００（Ｓ２００）において、誤差判定部５５４（図１０）は、予測値提供部５１２から入力された予測値と、注目画素の画素値との差分（誤差）を参照画素毎及び色成分毎に算出する。
次に、誤差判定部５５４は、参照画素毎に、複数の色成分それぞれについて算出された差分（誤差）と、これらの色成分に対して設定された予測誤差とを比較し、全ての色成分について差分が予測誤差以下である場合に、この参照画素に基づく画素値の変更を許可し、いずれかの色成分について差分が予測誤差より大きい場合に、この参照画素に基づく画素値の変更を禁止する。
誤差判定部５５４は、少なくとも１つの参照画素について、画素値の変更が許可された場合に、１つの参照画素を選択して、選択された参照画素を画素値変更処理部５１６に通知し、かつ、この注目画素の画素値（ＹＣｂＣｒ）を画素値変更処理部５１６に出力して、Ｓ１０８の処理に移行する。
また、誤差判定部５５４は、いずれの参照画素についても画素値の変更が禁止された場合に、注目画素の画素値（ＹＣｂＣｒ）をそのまま第２色変換部５２０（図９）に出力し、Ｓ２０４の処理に移行する。
【００６３】
ステップ２０２（Ｓ２０２）において、画素値変更処理部５１６（図１０）は、誤差判定部５５４から通知された参照画素の画素値（ＹＣｂＣｒ）で、注目画素の画素値（ＹＣｂＣｒ）を置換して、予測部５３２（図９）に出力する。
【００６４】
ステップ２０４（Ｓ２０４）において、画素値変更処理部５１６（図１０）は、画素値の置換により生じる誤差（ＹＣｂＣｒ）を、注目画素の周囲に分配する。
【００６５】
ステップ２０６（Ｓ２０６）において、予測符号化部５３０に設けられた複数の予測部５３２（図９）は、フィルタ処理部５５０から入力されたＹＣｂＣｒ色空間の画素値に基づいて、注目画素の予測データ（ＹＣｂＣｒ）を生成する。
また、各予測部５３２（図９）は、生成された予測データ（ＹＣｂＣｒ）と、注目画素の画素値（ＹＣｂＣｒ）とを比較し、一致するか否かを判定し、判定結果（一致した予測部の予測部ＩＤ、又は、一致しなかった旨）をラン計数部５３６に出力する。
なお、本変形例では、必ず、いずれかの予測部５３２において予測が的中する。
【００６６】
ステップ２０８（Ｓ２０８）において、ラン計数部５３６（図９）は、いずれかの予測部５３２から入力された予測部ＩＤに基づいて、この予測部ＩＤに対応するカウント値を１つ増加させる。
なお、符号化プログラム５４は、次の注目画素に対する処理を行うべくＳ１０２に戻る。
【００６７】
ステップ２１０（Ｓ２１０）において、第２色変換部５２０（図９）は、フィルタ処理部５５０（誤差判定部５５４（図１０））から入力された注目画素の画素値（ＹＣｂＣｒ）と、予測誤差の参照に用いる参照画素の画素値（ＹＣｂＣｒ）とを、ＲＧＢ色空間の画素値に変換し、変換された画素値（ＲＧＢ）を予測誤差算出部５３４（図９）に出力する。
【００６８】
ステップ２１２（Ｓ２１２）において、予測誤差算出部５３４は、第２色変換部５２０から入力された画素値（ＲＧＢ）に基づいて、予測誤差（ＲＧＢ）を算出し、算出された予測誤差を選択部５３８に出力する。
なお、本例の符号化プログラム５４は、画像データ（ＹＣｂＣｒ）をＲＧＢ色空間の画像データに変換し、変換された画像データ（ＲＧＢ）に基づいて予測誤差を算出しているが、これに限定されるものではなく、例えば、ＹＣｂＣｒ色空間の画像データに基づいて予測誤差を算出し、算出された予測誤差（ＹＣｂＣｒ）を、ＲＧＢ色空間の値（予測誤差）に変換してもよい。
【００６９】
ステップ２１４（Ｓ２１４）において、選択部５３８（図９）は、予測誤差算出部５３４から予測誤差が入力されると、ラン計数部５３６から、各予測部ＩＤに対応するカウント値を読み出す。
次に、選択部５３８は、ラン計数部５３６から読み出されたカウント値に基づいて、予測部ＩＤの最長連続数を算出し、算出された最長連続数及び予測部ＩＤを符号生成部５４０に出力し、その後に、予測誤差算出部５３４から入力された予測誤差（ＲＧＢ）を符号生成部５４０に出力する。
符号生成部５４０（図９）は、選択部５３８から順に入力される予測部ＩＤ、連続数、及び予測誤差を符号化し、符号データを通信装置２２（図１）又は記録装置２４（図１）に出力する。
【００７０】
Ｓ１２４において、符号化プログラム５４は、入力された画像データの全ての画素について符号化処理が終了したか否かを判定し、未処理の画素が存在する場合に、Ｓ１０２の処理に戻って、次の注目画素に対する処理を行い、これ以外の場合に、符号化処理（Ｓ２０）を終了する。
【００７１】
このように、第２の変形例における画像処理装置２は、予測誤差を算出する場合（すなわち、注目画素の画素値と予測値との差分が許容範囲外である場合）にのみ、第２色変換部５２０に画像データの変換処理を行わせるため、ソフトウェア処理においては、上記実施形態よりも高速に符号化することができる。
【００７２】
［その他の変形例］
上記実施形態のフィルタ処理部５１０（図２）は、色成分毎に注目画素の画素値と予測値との差分が許容範囲内であるか否かを判定し、判定結果に応じて、注目画素の画素値を変更しているが、これに限定されるものではなく、例えば、注目画素の画素値と予測値との差分が許容範囲内であるか否かを判定することなく、注目画素の画素値を変更してもよい。
例えば、フィルタ処理部５１０は、第１色変換部５００により変換された画像データに対して、丸め処理（例えば、画素値の整数化）を行うだけでもよい。
通常の画像データでは、輝度成分（明度成分）における数値が色差成分における数値よりも広く分散している場合が多い。換言すると、色相成分の数値は、より狭い範囲に密集して存在する。
従って、例えば、ＲＧＢ色空間の画像データがＹＣｂＣｒ色空間の画像データに変換された場合に、変換後のＹ成分、及び、Ｃｂ成分又はＣｒ成分に対して、同一の丸め処理（特定の位の値を切り捨て、切り上げ、又は、四捨五入すること）を行ったとしても、その影響が異なる。すなわち、Ｃｂ成分又はＣｒ成分に対する丸め処理の影響は、Ｙ成分に対する影響よりも大きい。換言すると、Ｙ成分、Ｃｂ成分及びＣｒ成分に対する均一な丸め処理は、Ｃｂ成分又はＣｒ成分に対してＹ成分よりも効果の大きな量子化を行ったのと同様の効果を有する。
【図面の簡単な説明】
【００７３】
【図１】本発明にかかる符号化方法が適応される画像処理装置２のハードウェア構成を、制御装置２１を中心に例示する図である。
【図２】制御装置２１（図１）により実行され、本発明にかかる符号化方法を実現する第１の符号化プログラム５の機能構成を例示する図である。
【図３】フィルタ処理部５１０（図２）の構成をより詳細に説明する図である。
【図４】誤差判定部５１４（図３）による誤差判定処理を説明する図である。
【図５】予測符号化部５３０（図２）の構成をより詳細に説明する図である。
【図６】予測符号化部５３０（図５）によりなされる符号化処理を説明する図である。
【図７】符号化プログラム５（図２）による符号化処理（Ｓ１０）のフローチャートである。
【図８】第２の符号化プログラム５２の構成を例示する図である。
【図９】第３の符号化プログラム５４の構成を例示する図である。
【図１０】第２のフィルタ処理部５５０の構成をより詳細に説明する図である。
【図１１】第３の符号化プログラム５４（図９）による符号化処理（Ｓ２０）のフローチャートである。
【符号の説明】
【００７４】
２・・・画像処理装置
５，５２，５４・・・符号化プログラム
５００・・・第１色変換部
５１０，５５０・・・フィルタ処理部
５１２・・・予測値提供部
５１４，５５４・・・誤差判定部
５１６・・・画素値変更処理部
５２０・・・第２色変換部
５３０・・・予測符号化部
５３２・・・予測部（第１予測部〜第４予測部）
５３４・・・予測誤差算出部
５３６・・・ラン計数部
５３８・・・選択部
５４０・・・符号生成部
【図１】
2006270326.tif 000003
【図２】
2006270326.tif 000004
【図３】
2006270326.tif 000005
【図４】
2006270326.tif 000006
【図５】
2006270326.tif 000007
【図６】
2006270326.tif 000008
【図７】
2006270326.tif 000009
【図８】
2006270326.tif 000010
【図９】
2006270326.tif 000011
【図１０】
2006270326.tif 000012
【図１１】
2006270326.tif 000013