以下において、本発明の実施の形態を図面を参照して詳しく説明する。なお、図中同一符号は同一又は相当部分を示す。
まず一例として、RCTを施した後に得られた色信号U,Vについて、色信号U,Vの特性を考慮することなく線形かつ正負対称に量子化を施す場合を考える。
なお、以下に説明する量子化方法は、より具体的には、画像信号から抽出される色成分(色信号)をウェーブレット変換等で周波数毎に分解した場合、画素毎における色成分を単純平均することにより得られる低周波成分に適用することができる。
また、RGB成分が各々0〜255までの値を取るとき、色信号U,Vは共に−255から+255(9ビット)までの値を取るが、色信号U,Vを各々8ビット(256レベル)に量子化する場合には、例えば以下の表1に示されるような線形量子化を図ることができる。
ここで、量子化後の色信号U,Vに逆RCTを施せば、復号されたR’G’B’成分が得られるが、当然ながら元のRGB成分とR’G’B’成分との間には誤差が生じる。そして、かかる誤差は人の目によって色の誤差(例えば公知のLab空間における色差、以下「Lab色差」と呼ぶ。)として知覚される。
このとき、表1に示されるように、量子化の度合い(圧縮率)が小さい場合には該色の誤差も小さいため人の目により知覚できないことが多いが、圧縮率を大きくすると上記色の誤差が人の目により知覚可能なレベルに達してしまうという問題がある。
以下においては、色信号を高い圧縮率で量子化した場合であっても、原画像の色に忠実な色が再現された復元画像を得ることのできる画像処理装置と画像処理方法について具体的に説明する。
[実施の形態1]
図1は、本発明の実施の形態1に係る画像処理装置の構成及び動作を示す図である。図1に示されるように、本実施の形態1に係る画像処理装置は、ハードディスク1と、データバスBSと、パーソナルコンピュータPCと、プリンタ13とを備える。そして、ハードディスク1は第一記憶領域3を含み、パーソナルコンピュータPCは第一及び第二記憶領域7,9を有するランダムアクセスメモリ(RAM)5と、中央演算処理装置(CPU)11とを含む。また、プリンタ13は中央演算処理装置(CPU)15と、第一及び第二記憶領域19,21を有するランダムアクセスメモリ(RAM)17とを含む。
ここで、ハードディスク1とRAM5、CPU11、及びプリンタ13はそれぞれデータバスBSに接続される。また、RAM17に含まれた第一及び第二記憶領域19,21は共にCPU15に接続される。
上記のような構成を有する画像処理装置においては、ハードディスク1の第一記憶領域3に格納されたオリジナル画像は、CPU11によりRAM5内の第一記憶領域7に読み込まれる((1))。そして、CPU11は第一記憶領域7に読み込まれた画像を部分的に読み込み、以下に説明する量子化方法によって該画像信号を量子化し、圧縮する((2))。さらに、CPU11は圧縮した画像信号をRAM5の第二記憶領域9に書き込む((3))。
その後、CPU11は、RAM5の第二記憶領域9に書き込まれた画像信号をプリンタ13の第一記憶領域19に記録する((4))。これにより、プリンタ13に含まれたCPU15は、第一記憶領域19に記録された被圧縮画像信号を読み込み上記量子化方法を逆に辿って復号値を得ることにより、画像の伸長を行う((5))。そして、CPU15は該伸長後の画像信号をRAM17の第二記憶領域21に書き込む((6))。
これにより、プリンタ13は、RAM17の第二記憶領域21に書き込まれた画像信号に応じて、所定の手順に従って該画像をプリントアウトする。以上のような動作によって、プリンタ13へ送信するデータ量が低減されるため、該送信時間が短縮され、該圧縮や伸長に要する時間を考慮しても高速なプリントが可能となる。
次に、図1に示された画像処理装置の他の動作を、図2を参照しつつ説明する。ハードディスク1の第一記憶領域3に格納されたオリジナル画像は、CPU11によりRAM5内の第一記憶領域7に読み込まれる((1))。そして、CPU11は、第一記憶領域7に格納された画像信号を部分的に読み込み、以下に説明する量子化方法により画像信号を量子化し圧縮する((2))。その後、CPU11は、圧縮後の画像信号をRAM5内の第二記憶領域9に書き込む((3))。
そして、以上のような動作によりオリジナル画像の全てが圧縮されると、CPU11は圧縮後のデータをハードディスク1内の第二記憶領域4に記録する((4))。
以下において、本実施の形態に係る上記量子化方法について具体的に説明する。ここで、上記信号変換は、上記のようにRGB信号間の相関を低減するために行われるものであるから、信号の圧縮にあたってはRCTの結果において各成分に生じる特性について考慮することが望ましい。特に、色信号成分の特性は、圧縮率が低い場合には上記のように考慮せずに済む場合もあるが、圧縮率を上げたい場合や伸長後高い画質を得たい場合には、該特性を考慮することが必要である。
そこで、本実施の形態に係る量子化方法においては、例えば所定の距離を隔てた観察によっては色の差異を知覚することが困難となるように、すなわち視覚的な色差、換言すれば色彩工学的な色差(例えば公知のLab色差や公知のLUV色差)が所定値以下となるように、色信号U,Vを量子化する。そして、例えばRCTの場合には、色信号U,Vの単位量子化誤差当りに生じるLab色差を求め、該Lab色差が所定値以下となるように、色信号U,Vに必要な量子化レベル数が決定される。なお、「量子化誤差」とは、量子化することにより生じる色信号の誤差、すなわち、量子化された色信号の値を復号(伸長)したときに得られた値が量子化前の値(元の値)に対して持つ誤差をいう。
ここで、上記色信号Uまたは色信号Vの単位量子化誤差当りに生じるLab色差(Lab色差/ΔU、又はLab色差/ΔV)は、画像信号のG成分の値に応じて変化する。従って、例えば図3に示されるように、各G成分の値に応じた色信号Vを変数としたときの最大値を結ぶことにより得られる包絡線23を、以下に説明する量子化において用いることとしても良い。
また、該量子化においては、全てのG成分の値において得られる該Lab色差の平均値を用いても良いし、図4に示されるように、G成分が0や50、100といった主要な値を取るときの該Lab色差を平均化することにより得られた曲線25を用いても良い。
図5は、色信号Vの量子化誤差で生じる色差を示す図である。そして、図5(a)は、主要なG成分の値について求めた色信号Vの単位誤差当りに生じるLab色差の平均値を、色信号U,V平面上に示した等高図であり、図5(b)に示された曲線32は、図5(a)に示された等高図の一断面を示す。
以下、RCTを例にとり、図5の求め方について説明する。RCTにおいては、色信号VはB成分からG成分を引いた差として求められるが、ここでまずG成分を固定し、色信号VをΔVだけ変化させることを考える。すなわち、量子化誤差によりRGB成分のうちでB成分が復号後にΔVだけ増加したとする。
このとき、上記RGB信号の色空間(いわゆる入力プロファイル)を、例えば標準RGB信号空間等であると適宜設定した上で、RGB信号を公知の方法により変換することによって、Lab空間での座標値を得ることができる。そして、同様にB成分がΔVだけ増加した該RGB成分をL’a’b’空間の座標値に変換することにより、元の値と復号後の値の間で生じるLab色差を求めることができる。
ここで、G成分を固定したままR成分とB成分を変化させれば、UV平面において色信号Vの量子化誤差ΔV当りに生じるLab色差の値を求めることができる。
以上より、該色差はG成分の値をパラメータとして変化することは明らかであり、また、RCT以外の変換においても同様な手法によってG成分をパラメータとしたLab色差の変化を求められることは明らかである。また、R成分からG成分を引いた差として求められる色信号Uの量子化誤差により生じるLab色差も、上記と同様な方法により求めることができる。
ここで、図5(a)に示されるように、領域27は該(Lab色差/ΔV)の平均値が最も小さく、以下領域28から領域31まで順次(Lab色差/ΔV)の平均値が大きくなる。なお、領域26には、色信号U,Vが存在しない。
また、図5(b)に示されたグラフにおいては、面積がLab色差を表すことになる。従って、本実施の形態に係る量子化方法においては、図5(b)に示されるように、色信号Vの値が−255から+255までを取る範囲において、曲線32下の面積がそれぞれ所定値以下となるように、色信号Vの値を複数の範囲(区間Aから区間E)に区分けする。そして、区分けされた区分の数が量子化レベル数とされ、色信号Vの量子化しきい値が決定される。なお例えば、各区間における色信号Vの復号値は、該区間における中間値とされる。
また、図5に示されるように、Lab色差は色信号Vの正負に関して非対称性を有するが、以上のような方法により色信号を量子化すれば、該非対称性を考慮して的確な量子化を行うことができ、人の目で見たときにおける色の違いを低減することができる。
ここで例えば、上記のような量子化において、必要とされる量子化レベル数が23である場合には、−255から+255までの色信号Vの区間は5ビットの符号長を有するデータにより量子化されることになるが、上記のように色信号U,Vの特性を考慮した上で色信号の変域を分割し、分割することにより得られた区間に対応して量子化しきい値を設定すれば、Lab色差を所定値以下にした状態で上記データを5ビット以下に縮減することもできる。
すなわち、例えば図5に示されるように、絶対値の等しい色信号Vの正負におけるLab色差が、色信号Uの値によらず約2対1の比を有する場合には、色信号Vの0以上における範囲は16分割され、0未満の負の範囲は8分割される。そして、該負の範囲は、正負を識別する符号としての1ビットを含めた合計4ビットのデータにより量子化され、該0以上の範囲は正負を識別する符号としての1ビットを含めた合計5ビットのデータにより量子化される。
従って、この場合には、Lab色差を所定値以下にしたままの状態で、色信号を平均4.5ビットのデータにより量子化することができる。すなわち、Lab色差の特性を考慮して、色信号Vの単位量子化誤差当りに生じるLab色差が最大となる色信号Vの値(上記例においては、0)の前後において量子化レベル数を変えることにより、量子化効率を向上させることができる。
なお、上記単位量子化誤差当りのLab色差は、概ね色信号の極性(正負)が変化する点において最大となる場合があるため、量子化レベル数を変化させる際のしきい値を、色信号の極性変化点とすることができる。
また、上記のように−255から+255までの色信号Vの区間は、一般的には量子化しきい値を格納したテーブルを使用することにより、非線形な量子化を行うこととなるが、Lab色差の特性を考慮して色信号Vが負の範囲においては、正負を識別する符号を含めて4ビットのデータにより非線形量子化し、色信号Vが0以上の範囲においては、正負を識別する符号を含めて5ビットのデータにより線形量子化することもできる。すなわち、このような方法により量子化する場合には、0以上の色信号Vについては、テーブルを参照せずに量子化することが可能となる。ここで、該テーブルは一般的にメモリ内に格納されるため、0以上の色信号Vを線形量子化すれば、該量子化時に必要とされるメモリ量を削減することができる。
なお、上記のような線形量子化は、色信号の単位量子化誤差当りのLab色差が一定値と見なせる該区間において採用されることにより、Lab色差を所定値以下とした量子化が容易に実現される。
また、上記Lab色差においては、色信号Uに対する特性と色信号Vに対する特性とが相違する。図6は、色信号Uの量子化誤差で生じる色差のレベルを示す図5(a)に対応した等高図である。なお図6は、図5(a)と同様に、主要なG成分の値に対して求められた単位量子化誤差当りのLab色差の平均値を、UV平面上に表した等高図であり、該等高図の一断面が図7のグラフにより示される。
ここで、図7に示される単位量子化誤差当りのLab色差は、色信号Vの値に依存するが、−255から+255までの色信号Uの区間を、負の範囲においては正負を識別する符号としての1ビットを含めた合計4ビットのデータにより量子化し、該0以上の範囲は正負を識別する符号としての1ビットを含めた合計5ビットのデータにより量子化することによって、量子化効率を向上させる。
またここで、色信号Uにおいても、上記色信号Vと同様に、負の範囲においては正負を識別する符号を含めて4ビットのデータにより非線形量子化し、0以上の範囲においては正負を識別する符号を含めて5ビットのデータにより線形量子化することもできる。
すなわち、本実施の形態に係る量子化方法は、色信号U及び色信号Vの量子化について有効であり、RCTへの適用において特に適した方法であるということができる。
また、図5(a)及び図6に示された等高図(両図における縦軸は同じスケールとする)を比較すると、色信号Vの量子化誤差により生じるLab色差は、色信号Uの量子化誤差により生じるLab色差よりも全体的に大きな値を取ることが分かる。ここで、上記のように両グラフにおいては、該グラフ上の面積がLab色差を意味することから、色信号Uの量子化と色信号Vの量子化との間においては、該面積を一定とするために量子化レベル数を変えることが有効である。
すなわち、色信号Vの量子化においては、色信号Vの変域を短い多数の区間に区分けして量子化レベル数を大きくすると共に、色信号Uの量子化においては、色信号Uの変域をより広く少ない数の区間に区分けして上記色信号Vの量子化レベル数よりも量子化レベル数が小さくされる。そして、このような方法を採用することによって、色信号の量子化により生ずる色の誤差を均一にし、色信号の復号後(伸長後)に得られる画像の質を均質にすることができる。
なお、上記の説明において、Lab色差はCIE Lab空間での色差とすることができる。また一般的にLab色差は、人の目により知覚された色の違いを定量的に示すと共に、色の差に対する人間の心理量を比較的よく反映した指標であり、簡易な計算により算出される。このことから、上記のような本実施の形態に係る量子化によれば、人間の知覚特性を比較的よく反映した量子化とすることができる。
ここで、上記Lab色差は簡易かつ一般的に利用できる指標であることに特徴を有するが、色の差異に対する人間の心理量をより正確に反映するためには、上記Lab色差を補正した量である修正CIELAB色差(Modified CIELAB色差)を用いることが好ましい。
以下において、上記量子化方法による画像処理の一例をより具体的に説明する。図8は、本発明の実施の形態1に係る画像処理方法を説明するブロック図である。図8に示されるように、図1及び図2に示されたCPU11は、2×2画素切り出し部33と、RCT部35と、Y直行変換部37と、U平均化部39と、V平均化部41と、Y量子化部43と、U量子化部45と、V量子化部47とを含む。
ここで、2×2画素切り出し部33には0〜255(8ビット)の値をとるRGB成分を有する画像信号が供給され、R成分とG成分、及びB成分がそれぞれ4画素毎に切り出され、RCT部35へ供給される。そして、RCT部35は4画素単位で該RGB成分に対してRCTを施し、4画素単位で、変換後の信号YをY直交変換部37へ、色信号UをU平均化部39へ、色信号VをV平均化部41へそれぞれ供給する。
さらに、Y直交変換部37は、供給された信号を離散コサイン変換やハール変換により直交変換してY量子化部43へ供給する。また、U平均化部39は供給された信号の平均値Uaを求め、U量子化部45へ供給する。また、V平均化部41は供給された信号の平均値Vaを求め、V量子化部47へ供給する。ここで、上記においては、該色信号U,Vにおいて平均値を求める代わりに信号Yと同様な直交変換を施すこととしてもよい。なお、この場合には該直交変換後の低周波成分に対して、本発明に係る量子化方法を適用することができる。
また、直交変換された信号YはY量子化部43により量子化(符号化)され、4画素単位で求められた平均値UaはU量子化部45により量子化(符号化)され、同じく4画素単位で求められた平均値VaはV量子化部47により量子化(符号化)される。
ここで、図8に示された各部による色信号Vの量子化動作を、図9に示されたフローチャートを参照しつつ説明する。まず、ステップS1において、8ビットの色信号Vを縦横が2×2の4画素分入力する。次に、ステップS2において、該4画素分の色信号Vの平均値Vaを計算する。
そして、ステップS3において、算出された平均値Vaが0以上であるか否かを判断し、0以上である場合にはステップS4へ進み、0未満である場合にはステップS10へ進む。次に、ステップS4においては8ビットで示された平均値Vaを、2で除することにより7ビットのデータに線形量子化し、ステップS10においては0から255までの値をとる8ビットの平均値−Va(|Va|)を、以下の表2に示された量子化しきい値を規定するテーブルを参照して、7ビットの半分の量子化レベル数を有する6ビットのデータに非線形量子化する。
ここで、平均値Vaの単位量子化誤差当りに生じるLab色差は、概ね原点0付近で最大となるため、上記のように平均値Vaの極性(正負)に応じて量子化レベル数が変えられる。
そして、ステップS5においては、ステップS4又はステップS10において量子化された平均値|Va|に対して、色信号Vの復号時に極性を判別するために1ビットの符号を接頭ビットとして付加し、量子化動作を終了する。
次に、図8に示された各部による色信号Uの量子化動作を、図10に示されたフローチャートを参照しつつ説明する。まず、ステップS1において、8ビットの色信号Uを縦横が2×2の4画素分入力する。次に、ステップS2において、該4画素分の色信号Uの平均値Uaを計算する。
そして、ステップS3において、算出された平均値Uaが0以上であるか否かを判断し、0以上である場合にはステップS4へ進み、0未満である場合にはステップS10へ進む。次に、ステップS4においては8ビットで示された平均値Uaを、4で除することにより6ビットのデータに線形量子化し、ステップS10においては0から255までの値をとる8ビットの平均値−Ua(|Ua|)を、量子化しきい値を規定するテーブルを参照して、5ビットのデータに非線形量子化する。
ここで、平均値Uaの単位量子化誤差当りに生じるLab色差は、概ね原点0付近で最大となるため、上記のように平均値Uaの極性(正負)に応じて量子化レベル数が変えられる。また上記のように、平均値Uaの量子化レベル数は、平均値Uaの正負によらず、平均値Vaの量子化レベル数より小さくされる。
そして、ステップS5においては、ステップS4又はステップS10において量子化された平均値|Ua|に対して、色信号Uの復号時に極性を判別するために1ビットの符号を接頭ビットとして付加し、量子化動作を終了する。
次に、上記Lab色差の計算方法の一例をより具体的に説明する。図11は、本発明の実施の形態1に係るLab色差の計算方法を説明するブロック図である。図11に示されるように、図1及び図2に示されたCPU11は、Lab変換部51,53と、入力プロファイル部49と、Lab色差計算部55とを含む。
ここで、Lab変換部51,53には入力プロファイル部49から該変換を規定する情報が供給される。なお、「入力プロファイル」とは、画像信号のRGB成分をLab成分に変換するためのテーブルを意味する。そして、Lab変換部51,53は、該テーブルを利用することにより、供給されたRGB成分をLab成分へ変換する。
一例として、Lab変換部51へR成分とG成分、及びB成分からなるデータD1が供給され、Lab変換部53へR’成分とG成分、及びB成分からなるデータD2が供給されるときには、図11に示されるように、データD1はL成分とa成分、及びb成分に変換され、データD2はL’成分とa’成分、及びb’成分に変換される。そして、該L成分とa成分、b成分、L’成分、a’成分、及びb’成分は、共にLab色差計算部55に供給される。
このときLab色差計算部55は、次式によって該Lab空間における色差ΔE*を計算する。
ΔE*={(L−L’)2+(a−a’)2+(b−b’)2}1/2なお、上記Lab色差は簡易に得ることができるが、人間の心理量との対応により正確を期すためには、修正(Modified)Lab色差ΔEmを用いることが好ましい。ここで、修正Lab色差ΔEmは、hを0.75とし、lを1.00とし、cを0.50としたとき、次式により算出される。
ΔEm={(hΔH*)2+(lΔL*)2+(cΔC*)2}1/2上記においては、それぞれΔH*={ΔE*2−ΔL*2−ΔC*2}1/2ΔL*=L−L’ΔC*={a2+b2}1/2−{a’2+b’2}1/2とされる。
以上より、本発明の実施の形態1に係る画像処理装置と画像処理方法によれば、色信号の単位量子化誤差当りの色差が最大となる点、あるいは色信号の極性変化点の前後で該色信号の量子化レベル数を変えることとするため、色差の該色信号に対する非対称性を考慮した量子化を実現して量子化(符号化)効率を向上させると共に、原画像に対する色の誤差が小さい画像を生成することができる。
[実施の形態2]
図6に示されるように、Lab色差は色信号Vの値に依存しているため、実際的には色信号Uの量子化レベル数を正確に決めにくい。そこで、図6に示されたUV平面において、色信号Uと色信号Vとの大小関係によって分けられる二つの領域において、色信号の量子化方法を変えることが考えられる。
すなわち、本実施の形態2においては、量子化対象としない色信号に応じて、量子化対象とする色信号の量子化方法(量子化レベル数や量子化しきい値等)を変えることにより、Lab色差が抑制される。そして、より具体的には、量子化対象とされない色信号と量子化対象とされる色信号とにより構成される平面上の領域を、量子化対象とする色信号の単位量子化誤差当りにおける色差が極大となる点の軌跡(図6に示された例においては、直線V=U)により分割し、分割された各領域においてそれぞれ量子化方法を変えることとする。
また、色信号Vが色信号Uより大きいときは、量子化しきい値を格納したテーブルを参照しつつ色信号Uを非線形量子化し、色信号Vが色信号U以下の大きさであるときは色信号Uを線形量子化することができる。そして、このような方法により量子化すれば、色信号Vが色信号U以下の大きさを有する場合には、上記のようなテーブルを使用することなく量子化することができるため、量子化時に必要なメモリ量を削減することができる。
なお、上記線形量子化は、色信号の単位量子化誤差当りの色差が一定値となる範囲において適用されることが好ましいことは、上記実施の形態1と同様である。
また、本実施の形態2においても、上記実施の形態1と同様に色信号Vの量子化レベル数を色信号Uの量子化レベル数よりも多くすれば、該量子化誤差により生じる色差を均一にして、ひいては復号後(伸長後)の画質を均質にすることができる。
本実施の形態2に係る画像処理装置は、図1に示された上記実施の形態1に係る画像処理装置と同様な構成を有し、CPU11には図8に示された各部が含まれる。以下においては、該CPU11による本実施の形態2に係る色信号Uの量子化方法について、図7のフローチャートを参照しつつ説明する。
まず、ステップS1において、8ビットの色信号Uを縦横が2×2の4画素分入力する。次に、ステップS2において、U平均化部39は該4画素分の色信号Uの平均値Uaを計算する。
そして、ステップS3において、算出された平均値UaがV平均化部41により算出された平均値Va以上であるか否かを判断し、平均値Uaが平均値Va以上である場合にはステップS4へ進み、平均値Uaが平均値Va未満である場合にはステップS10へ進む。次に、ステップS4においては、色信号Uの量子化において生じるLab色差が大きくかつ概ね一定であるため、正負を示す1ビットを含む9ビットのデータにより示された平均値Uaを、正負の符号を保持したままで、絶対値を示す8ビットのデータを4で除することによって6ビットのデータに線形量子化する。
一方、ステップS10においては、色信号Uの量子化において生じるLab色差が小さくかつ非線形であるため、該9ビットのデータにより示された平均値Uaに対し正負の符号を保持したまま、量子化しきい値を規定するテーブルを参照しつつ、絶対値を示す8ビットのデータを5ビットのデータに非線形量子化する。
そして、ステップS5においては、ステップS4又はステップS10において量子化された平均値Uaに対して、復号時に色信号Uと色信号Vの大小を判別するために1ビットの符号を接頭ビットとして付加し、量子化動作を終了する。
なお、信号Yや平均値Vaの量子化、及びLab色差の算出など他の動作に関しては、上記実施の形態1に係る画像処理装置と同様に動作する。
以上より、本発明の実施の形態2に係る画像処理装置及び画像処理方法によれば、量子化対象としない色信号に応じて量子化対象とする色信号の量子化方法を変えるため、量子化された色信号同士の特性を考慮した量子化を行うことによって量子化効率を高めると共に、該量子化により生じる色差を抑制することができる。
[実施の形態3]
上記実施の形態においては、色信号U及び色信号Vを量子化(符号化)する方法について説明したが、色信号U及び色信号Vの量子化において生じるLab色差の特性を考慮すれば、UV平面上における直線V=Uからの符号付き距離Lと、色信号Vとを量子化することも考えられる。
すなわち、図13に示されるように、色信号Uの量子化誤差により生じる色差は、概ね直線V=Uからの距離に依存し、色信号U,Vの値そのものに依存していない。従って、該直線V=Uからの距離を正負の符号付きで量子化すれば、Lab色差の特性を考慮しながら量子化レベル数や量子化しきい値を決定することができる。
なお、量子化された直線V=Uからの符号付き距離Lと色信号Vとを復号すれば、色信号U,V自体を復号することができ、ひいてはRGB成分を復号することができる。また、このような量子化方法はRCTに適用することが好適であるが、他の色変換に適用することもできる。
上記のように、直線V=Uからの符号付き距離Lを量子化する場合には、該距離そのものを求めてそれを符号化することは煩雑であり、実装上は該距離と等価な別の量を量子化する方が好ましい。そこで例えば、図13に示されるように、UV平面上の点P(u,v)について考えると、該点Pを通る傾き1の直線V=U−u+vのU切片は点Q(u−v,0)となるが、この点QのU座標である(u−v)の値は符号付き距離Lの21/2倍となることが分かる。従って、本実施の形態においては、色信号Uと色信号Vの差を量子化する。
なお、本実施の形態に係る量子化方法においても、上記実施の形態に係る量子化方法と同様に色信号Uと色信号Vの差が0未満であるときは、量子化しきい値を格納したテーブルを参照しつつ色信号Uを非線形量子化し、色信号Uと色信号Vの差が0以上であるときは色信号Uを線形量子化することができる。
また、色信号Uの量子化誤差により生じるLab色差よりも色信号Vの量子化誤差により生じるLab色差の方が全体として大きな値をとっているため、上記実施の形態に係る量子化方法と同様に、色信号Vの量子化レベル数は、上記色信号Uと色信号Vとの差に対する量子化レベル数よりも多くすることが好ましい。
本実施の形態3に係る画像処理装置は、図1に示された上記実施の形態1に係る画像処理装置と同様な構成を有し、CPU11に対応する本実施の形態に係るCPUには、図14に示された各部が含まれる。すなわち、図14に示されるように、本実施の形態に係るCPUは、2×2画素切り出し部33と、RCT部35と、Y直行変換部37と、(U−V)平均化部57と、V平均化部41と、Y量子化部43と、(U−V)量子化部59と、V量子化部47とを含む。
上記のような構成を有するCPUは、上記実施の形態に係るCPU11と同様に動作するが、RCT部35はRGB成分に対し4画素単位でRCTを施して、4画素単位で、変換後の信号YをY直交変換部37へ、色信号U及び色信号Vを(U−V)平均化部57へ、色信号VをV平均化部41へそれぞれ供給する。
そして、(U−V)平均化部57は供給された色信号U及び色信号Vに応じて、色信号Uと色信号Vの差の平均値(U−V)aを4画素単位で求め、(U−V)量子化部59へ供給する。そして、該平均値(U−V)aは(U−V)量子化部59により量子化(符号化)される。なお、該量子化によって、平均値(U−V)aの値は、正負を示す1ビットの符号と絶対値を示す8ビットのデータを合わせた9ビットのデータにより表現される。
以下において、図14に示された各部による信号(U−V)の量子化動作を、図15のフローチャートを参照しつつ説明する。まず、ステップS1において、8ビットの色信号Uを縦横が2×2の4画素分入力する。次に、ステップS2において、該4画素分の信号(U−V)の平均値(U−V)aを計算する。
そして、ステップS3において、算出された平均値(U−V)aが0以上であるか否かを判断し、0以上である場合にはステップS4へ進み、0未満である場合にはステップS10へ進む。次に、ステップS4においては、平均値(U−V)aの正負を示す符号を保持したまま、絶対値が8ビットで示された平均値(U−V)aを4で除することにより6ビットのデータに線形量子化する。
一方、ステップS10においては、平均値(U−V)aの正負を示す符号を保持したまま、0から255までの値をとる8ビットの絶対値を、量子化しきい値を規定するテーブルを参照して、5ビットのデータに非線形量子化する。
ここで、平均値(U−V)aの単位量子化誤差当りに生じるLab色差は、概ね原点0付近で最大となるため、上記のように平均値(U−V)aの極性(正負)に応じて量子化レベル数が変えられる。また上記のように、平均値(U−V)aの量子化レベル数は、平均値(U−V)aの正負によらず、平均値Vaの量子化レベル数より小さくされる。
そして、ステップS5においては、ステップS4又はステップS10において量子化された平均値(U−V)aに対して、色信号Uの復号時に正負(極性)を判別するために1ビットの符号を接頭ビットとして付加し、量子化動作を終了する。
なお、信号Yや平均値Vaの量子化、及びLab色差の算出など他の動作に関しては、上記実施の形態に係る画像処理装置と同様に動作する。
以上より、本発明の実施の形態3に係る画像処理装置及び画像処理方法によれば、色信号U,Vについて、UV平面における直線V=Uからの符号付き距離と色信号Vとを量子化するため、量子化後の色信号同士の特性を考慮した量子化を簡易な方法により実現し、量子化効率を高め、かつ該量子化により生じる色差を抑制することができる。
なお、上記において説明された本発明の実施の形態に係る画像処理方法は、コンピュータプログラムにより記述できる。従って、上記の画像処理方法を記述した該プログラムをCD−ROMやフロッピー(登録商標)ディスク等の記録媒体に記録した上で、該記録媒体をコンピュータに装着し該プログラムを実行させることによって、上記方法を容易に実現することができる。
このことから、本実施の形態に係る画像処理方法は、様々なアプリケーションプログラムや、プリンタドライバ等のデバイスドライバを含め、カラー画像を扱う機器に広く適用することができる。