JP3865595B2 - Image data processing apparatus, image data processing method, program, and recording medium - Google Patents

Image data processing apparatus, image data processing method, program, and recording medium Download PDF

Info

Publication number
JP3865595B2
JP3865595B2 JP2001053721A JP2001053721A JP3865595B2 JP 3865595 B2 JP3865595 B2 JP 3865595B2 JP 2001053721 A JP2001053721 A JP 2001053721A JP 2001053721 A JP2001053721 A JP 2001053721A JP 3865595 B2 JP3865595 B2 JP 3865595B2
Authority
JP
Japan
Prior art keywords
image data
pixel
value
range
data processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001053721A
Other languages
Japanese (ja)
Other versions
JP2002262091A (en
Inventor
宏幸 作山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2001053721A priority Critical patent/JP3865595B2/en
Priority to US10/082,308 priority patent/US7013049B2/en
Publication of JP2002262091A publication Critical patent/JP2002262091A/en
Application granted granted Critical
Publication of JP3865595B2 publication Critical patent/JP3865595B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、画像データ処理装置、画像データ処理方法、プログラム、及び記録媒体に関し、より詳細には、アプリケーションプログラム,プリンタドライバ等のデバイスドライバ,その他画像を扱う機器に応用可能な、カラー画像情報を復号化するための画像データ処理装置、画像データ処理方法、それらのプログラム、及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【0002】
【従来の技術】
カラー画像の伝送・蓄積の際には、データ量を削減するため、原画像の圧縮を行うのが一般的である。かかる圧縮を行う際には、画像を構成する成分に対し直交変換を施して情報量を偏らせ、変換後の成分に対して量子化を行い、情報量を削減するのが代表的な手法である。また、量子化を極端に行う場合には、画像を構成する特定成分を、全て破棄してしまう(0として扱う)といったことがよく行われる。
【0003】
特公平7−63177号公報に記載の技術は上記の代表例であり、カラー画像データをブロック単位毎に輝度(明度)信号と色差信号に変換し、さらに明度信号を直交変換して低周波直流成分を表す係数及び高周波交流成分を表す係数を得、その後、低周波の係数,高周波成分の係数に量子化を施している。他方、色差信号は、直交変換はされずに、ブロック内の代表色のみが量子化・符号化される。
【0004】
さて、上記のような量子化によって圧縮された画像が伸張される場合には、逆量子化が施され、原画像と伸張後の画像との間には量子化誤差が生じる。かかる量子化誤差が大きい場合には、伸張後の画素の値が、本来の所定範囲を越えることがある。
【0005】
例えば、一般的なフルカラー画像は、RGBが各8bit、すなわち0〜255の値をとる。しかし量子化誤差により、伸張後のRGBの値が負になったり、255を越えたりするのである(以下、本出願明細書中ではこの現象をレンジオーバと呼ぶ)。
【0006】
かかるレンジオーバが生じた場合は、負の値を0に置換し、255を越えた値を255に置換するという、いわゆる丸め処理(クリッピング処理)が従来から行われている。しかし、量子化が極端な場合等は、レンジオーバ分の値(所定範囲を逸脱した分の値)が大きくなり、単純な丸め処理では局所的に色味が変わってしまい、画質劣化を生じることがある。
【0007】
以上の現象は、米国特許第5,757,975号明細書「Artifact reduction for large dynamic range input data in JPEG compression」にも記載のあるところであり、かかる問題に対し上記明細書では、「レンジオーバした画素の近隣(例えば3×3画素の範囲)において、その値が所定範囲内である近隣画素を探し、レンジオーバ値を該近隣画素に再配分する」ことによって局所的な平均値を保存し、色味の変化を抑えることを提案している。
【0008】
【発明が解決しようとする課題】
上記「局所的な平均値を保存」する処理は、画質劣化を抑える上で非常に有効であるが、「周囲3×3画素の範囲において、レンジオーバしておらず、かつその値が所定範囲内である近隣画素を探す」という処理は、オーバした1画素のために多くの(例えば周囲の8画素の)画素値を調べなければならず、計算量が多く煩雑である。
【0009】
本発明は、上述のごとき実情に鑑みてなされたものであり、圧縮に使用する直交変換をS変換に限定し、S変換係数毎の量子化率や圧縮の主たる対象(例えば自然画像)を考慮することで、上記「周囲3×3画素の範囲において、近隣画素を探す」処理のような煩雑な処理を行わずに画像データ成分の量子化誤差を修正し、逆S変換後の色味の変化を抑えて高画質な処理を行うことが可能な画像データ処理装置、画像データ処理方法、プログラム、及び記録媒体を提供することをその目的とする。
【0010】
【課題を解決するための手段】
請求項1の発明は、LL、LH、HL、及びHHでなるS変換係数を量子化した量子化係数に対して逆S変換を行い、逆S変換後の画像データの成分値を処理する画像データ処理装置であって、前記成分値のうちレンジオーバとなる成分値を有する画素を探すレンジオーバ画素チェック手段と、該レンジオーバ画素チェック手段によって探した画素の成分値をレンジ内に入るように修正する修正手段と、前記修正手段で修正した修正量を、該修正対象となった画素と同じS変換単位に含まれる画素の成分値に配分する配分手段とを有し、前記修正対象の画素と前記配分手段での配分先の画素との位置関係は、前記LHの量子化誤差、HLの量子化誤差、及びHHの1/2の量子化誤差の大小関係に基づいて、予め決定されていることを特徴としたものである。
【0011】
請求項2の発明は、請求項1の発明において、前記大小関係は、量子化対象の画像データの種類及び/又は前記S変換係数それぞれの量子化率の差によって、予め決定されている関係であることを特徴としたものである。
【0012】
請求項3の発明は、請求項1又は2の発明において、前記位置関係は、前記大小関係に基づき、どの量子化誤差が最小又は最大となるかによって、予め決定されていることを特徴としたものである。
【0013】
請求項4の発明は、請求項1又は2の発明において、前記大小関係が、LHの量子化誤差又はHLの量子化誤差が最大であることを示す場合、前記修正対象の画素と前記配分先の画素との前記位置関係は、対角位置に予め決定されていることを特徴としたものである。
【0014】
請求項5の発明は、請求項1乃至4のいずれか1の発明において、前記配分手段によって画素の成分値を配分した結果、さらに該成分値がレンジオーバとなる場合に、該成分値をレンジの限界値とする丸め修正手段を有することを特徴としたものである。
【0015】
請求項6の発明は、請求項1乃至3のいずれか1の発明において、前記配分手段によって画素の成分値を配分した結果、さらに配分先の画素の成分値がレンジオーバとなった場合に、該成分値をレンジ内に入るように修正する第2修正手段を備え、前記配分手段は、前記第2修正手段で修正した修正量を、該修正対象となった画素と同じS変換単位に含まれる画素の成分値に配分する処理も実行することを特徴としたものである。
【0016】
請求項7の発明は、請求項の発明において、前記配分手段によって前記第2修正手段で修正した修正量を画素の成分値に配分した結果、さらに配分先の画素の成分値がレンジオーバとなる場合に、該成分値をレンジの限界値とする丸め修正手段を有することを特徴としたものである。
【0017】
請求項8の発明は、請求項1又は2の発明において、前記大小関係が、LHの量子化誤差又はHLの量子化誤差が最大であることを示す場合、前記修正対象の画素と前記配分先の画素との前記位置関係は、対角位置に予め決定されており、当該画像データ処理装置は、前記配分手段によって画素の成分値を配分した結果、さらに配分先である対角画素の成分値がレンジオーバとなった場合に、該成分値をレンジ内に入るように修正する第2修正手段を備え、前記配分手段は、前記第2修正手段で修正した修正量を、該修正対象となった対角画素と同じS変換単位に含まれる画素の成分値に配分する処理も実行し、前記修正対象の対角画素と該対角画素に対する配分先の画素との前記位置関係は、水平位置又は垂直位置に予め決定されていることを特徴としたものである。
【0018】
請求項9の発明は、請求項の発明において、前記配分手段によって前記第2修正手段で修正した修正量を画素の成分値に配分した結果、さらに配分先の画素の成分値がレンジオーバとなる場合に、該成分値をレンジの限界値とする丸め修正手段を有することを特徴としたものである。
【0025】
請求項10の発明は、請求項1乃至のいずれか1の発明において、前記逆S変換が画像データの色差成分に対してなされ、前記成分値がR値又はG値又はB値であることを特徴としたものである。
【0026】
請求項11の発明は、請求項1乃至のいずれか1の発明において、前記逆S変換が画像データの輝度成分に対してなされ、前記成分値がG値であることを特徴としたものである。
【0027】
請求項12の発明は、請求項1乃至のいずれか1の発明において、前記レンジオーバとなる成分値がG値である場合に、前記配分手段による配分を実行せずに、前記修正手段でGの値を丸め処理のみ行うことを特徴としたものである。
【0028】
請求項13の発明は、請求項1乃至11のいずれか1の発明において、前記S変換係数の量子化率によって、前記配分手段による配分を実行するか、或いは前記配分手段による配分を実行せずに前記修正手段で丸め処理のみ行うかを切り替える手段を有することを特徴としたものである。
【0029】
請求項14の発明は、請求項1乃至11のいずれか1の発明において、前記レンジオーバとなる成分値がG値である場合に、前記S変換係数の量子化率によって、前記配分手段による配分を実行するか、或いは前記配分手段による配分を実行せずに前記修正手段で丸め処理のみ行うかを切り替える手段を有することを特徴としたものである。
【0030】
請求項15の発明は、LL、LH、HL、及びHHでなるS変換係数を量子化した量子化係数に対して逆S変換を行い、逆S変換後の画像データ成分を処理する画像データ処理方法であって、前記成分値のうちレンジオーバとなる成分値を有する画素を探すレンジオーバ画素チェックステップと、該レンジオーバ画素チェックステップによって探した画素の成分値をレンジ内に入るように修正する修正ステップと、前記修正ステップで修正した修正量を、該修正対象となった画素と同じS変換単位に含まれる画素の成分値に配分する配分ステップとを含んでなり、前記修正対象の画素と前記配分ステップでの配分先の画素との位置関係は、前記LHの量子化誤差、HLの量子化誤差、及びHHの1/2の量子化誤差の大小関係に基づいて、予め決定されていることを特徴としたものである。
【0031】
請求項16の発明は、請求項15の発明において、前記大小関係は、量子化対象の画像データの種類及び/又は前記S変換係数それぞれの量子化率の差によって、予め決定されている関係であることを特徴としたものである。
【0032】
請求項17の発明は、請求項15又は16の発明において、前記位置関係は、前記大小関係に基づき、どの量子化誤差が最小又は最大となるかによって、予め決定されていることを特徴としたものである。
【0033】
請求項18の発明は、請求項15又は16の発明において、前記大小関係が、LHの量子化誤差又はHLの量子化誤差が最大であることを示す場合、前記修正対象の画素と前記配分先の画素との前記位置関係は、対角位置に予め決定されていることを特徴としたものである。
【0034】
請求項19の発明は、請求項1乃至14のいずれか1記載の画像データ処理装置の機能を実現させるための、又は、請求項15乃至18のいずれか1記載の画像データ処理方法を実行させるためのプログラムである。
【0035】
請求項20の発明は、請求項19記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【0036】
【発明の実施の形態】
米国特許第5,757,975号明細書には、レンジオーバした画素の近隣(例えば3×3画素の範囲)において、その値が所定範囲内である近隣画素を探し、レンジオーバ値を該近隣画素に再配分することによって局所的な平均値を保存し、色味の変化を抑えることが可能な擬似信号削減方法が記載されている。ここでの「局所的な平均値を保存」する処理は、画質劣化を抑える上で非常に有効であるが、「周囲3×3画素の範囲において、レンジオーバしておらず、かつその値が所定範囲内である近隣画素を探す」という処理は、オーバした1画素のために多くの(例えば周囲の8画素の)画素値を調べなければならず、計算量が多く煩雑である。
【0037】
しかしながら、圧縮に使用する直交変換をS変換に限定し、S変換係数毎の量子化率や圧縮の主たる対象(例えば、主に自然画像)を考慮することで、上記「周囲3×3画素の範囲において、近隣画素を探す」ような煩雑な処理を省略することが可能である。
以下、この省略が可能な理由について説明する。
【0038】
図1は、S変換を説明するための図で、図1(A)はS変換を行う画素を示す図、図1(B)は図1(A)の画素値をS変換するためのS変換式及びS変換式が示す各方向のエッジを示す図、図1(C)は図1(B)でS変換された各成分を逆S変換するための逆S変換式を示す図である。
まず、S変換とは、例えば図1に示すような2×2画素単位で、画素の値a,b,c,dを4つの係数LL,HL,HL,HHに変換する処理である。LLが低周波成分であり、その他が高周波成分であるが、図1(A),(B)から明らかなように、HL,LH,HHは順に縦方向,横方向,斜め方向のエッジに対して大きな値を示するものである。なお、a,b,c,dは、例えばRGBのRの値であったり、Gの値であったり、輝度の値や色差の値であったりする。
【0039】
そして、4つの係数から、もとのa〜dの値を求める逆S変換は以下の通りである(図1(C)参照)。
a=LL+(HL+LH)/2+HH/4 … (1)
b=LL−(HL−LH)/2−HH/4 … (2)
c=LL+(HL−LH)/2−HH/4 … (3)
d=LL−(HL+LH)/2+HH/4 … (4)
【0040】
通常、量子化を行う際には、画質への影響が大きい低周波成分、すなわちLL成分の量子化率を最小にし、画質への影響が小さい高周波成分、すなわちLH,HL,HH成分の量子化率を最大にする。なお、本出願明細書でいう量子化率とは、「原データに対する量子化後のデータの、情報量の削減の度合い」を意味し、8bitのデータを1bit削減して7bitにする場合には、量子化率は2であり、8bitのデータを3bit削減して5bitにする場合には、量子化率は23=8である。
【0041】
その結果、量子化誤差も、LL成分について最小になり、LH,HL,HH成分については大きくなる。すなわち、通常の圧縮方式においては、圧縮・伸張の過程で式(1)〜(4)の右辺に生じる誤差は、LH,HL,HH成分の量子化誤差とみなすことができる。
【0042】
今、HLの量子化誤差がΔEであるとする。式(1)〜(4)から明らかなように、ΔEによって生じる誤差の極性(正負)は、「a,cには同一方向で、b,dではa,cとは反対方向」である。すなわち、量子化誤差でa,cの値がΔE/2増えれば、b,dの値はΔE/2減るのである。そしてa,b,c,dの圧縮前の(オリジナルの)値のうち、レンジの上限・下限に近いものがあった場合、ΔE/2の値が十分大きい場合には、レンジオーバが生じるというわけである。
【0043】
ここで、前述の「局所的な処理平均値を保存する処理」、例えば、a,b,c,dの総和を保存するような処理を行うことを考える。
例えば、aがレンジ上限である255を越えて260として復号(伸張)されたとし、aの値をレンジ上限の255に修正することを考える。この場合、修正の前後でa,b,c,dの総和を保存するためには、260から減じたオーバ分の値5を、いずれかの画素、或いはいずれかの複数の画素に加える必要がある(以下、この処理をレンジオーバ補正とよぶ)。
【0044】
前述の誤差の方向から明らかなように、オーバ分をcに加えたのではcの誤差がさらに増加してしまう。よってaのオーバ分は、「b又はd(又はその両方)」に加えるべきである。つまり、オーバ分を吸収すべき画素を予め決めておくことができるのである。また、aがレンジ下限を下回った場合にも、また、量子化誤差がLH,HHに生じた場合に関しても同様な議論が成立する。
【0045】
図2は、S変換を行う画素間の方向の凡例を示す図である。図2のように、aから見たb,c,dを順に水平方向,垂直方向,対角方向とよぶ場合、上述の議論によって、量子化誤差が生じる係数と、オーバ分を配分すべき画素の位置の関係は以下の表1のようになる。
【0046】
【表1】

Figure 0003865595
【0047】
しかし、実際の個々の場面においては、どの係数の量子化誤差によってレンジオーバが生じているかを判断することはできない。通常、どの係数に量子化誤差が生じているかさえ判断できない。このため、どの係数に起因してもいいように対処するか、どの係数の量子化誤差に起因するレンジオーバなのかを確率的に考えて対処する必要がある。これが本発明の基本をなす考え方である。
【0048】
例えば、レンジオーバ分を1画素で吸収しようとする場合、表1から明らかなように、HL,LHいずれかの量子化誤差に起因する場合には、両者で共通な(=どちらに起因してもよい)「対角画素」を選択すればよいことがわかる。
【0049】
また表1は、HHに起因するレンジオーバの場合には、対角画素への配分は得策ではないことを示している。しかし、HH起因のレンジオーバが、HL,LH起因のレンジオーバよりも確率的に起こりにくいのであれば、HL,LHへの対処を優先して、例えば対角画素を選択するのが簡易かつ有効なのである。
【0050】
ここで一般的な圧縮方式では、HH起因のレンジオーバが、HL,LH起因のレンジオーバよりも確率的に起こりにくい場合が多い。具体的には以下のような場合である。
【0051】
(ケース1)
HL,LH,HHを同じ量子化ステップ数で線形に量子化する場合:
量子化ステップ数が等しい場合、HL,LH,HHに生じる量子化誤差は確率的には等しくできるが、式(1)〜(4)より明らかなように、レンジオーバの原因となる誤差は「HL,LHの量子化誤差の1/2、HHの量子化誤差の1/4」である。よって、HH起因のレンジオーバは、HL,LH起因のものよりも単純に少なくなる。
【0052】
(ケース2)
圧縮対象が自然画像で、HL,LH,HHを非線形に量子化する場合:
自然画像においては、縦横のエッジに比べ、斜めのエッジが弱いことがよく知られており(重力の影響であろうと言われている)、これはHL,LHの値に比べHHの値が小さいことが多いことを意味している(図1の式のように、HHはHL,LHと違い2で除算されないが、それでも小さいのである)。
【0053】
図3は、自然画像におけるHL,LH,HHの値のヒストグラムを示す図である。HL,LHの値に比べHHの値が小さいことが多いので、自然画像におけるHL,LH,HHの値のヒストグラムは図3のようになり、HHはより小さい値が頻出する形状をとる。こうしたヒストグラムの係数を非線形に量子化する場合には、出現頻度を考慮して、値が小さい範囲を密に(=量子化区間を小さく)、大きい範囲を粗に(=量子化区間を大きく)量子化するのが通常である。量子化区間が大きいほど、量子化誤差は大きくなるため、非線形な量子化の結果、HHよりも大きな値をとるLH,HLの量子化誤差の方が大きくなるのである。よって、HH起因のレンジオーバは、HL,LH起因のものよりも遙かに少なくなる。
【0054】
以上のように、レンジオーバ分をどの位置に配分すべきかは、「LH,HL,HH/2の量子化誤差の確率的な大小関係」でまず決定され、さらに「どの(いずれの)係数に起因してもいいように対処するか」否かで決定される。ここで「HH/2の量子化誤差」とは「HHの量子化誤差の1/2」の意である。量子化ステップ数や量子化区間が、量子化器の設計時点で予め決定されることを考えれば、「HL,LH,HH/2の量子化誤差の確率的な大小関係」は設計時点で決定され、オーバ分の配分先も、設計時点で決定可能なのである。確率的な処理(ほとんどの場合に有効に働く処理)でかまわないのであれば、配分先を探す必要はないのである。
よって、この「確率的な大小関係」、特に量子化誤差が確率的に最大となる係数を主体に考慮した場合、予め決定される配分位置の例は、以下の表2のようになる。なお、「配分」の意味は後述する。
【0055】
【表2】
Figure 0003865595
【0056】
また、この「確率的な大小関係(量子化誤差が確率的に最小となる係数以外の2つの係数)」と「いずれの係数に起因してもいいように」の両方を考慮した場合、予め決定される配分位置の例は、以下の表3のようになる。
【0057】
【表3】
Figure 0003865595
【0058】
また以上の例は、逆S変換される量(例えばRの値)とレンジオーバ補正される量が同じ場合(例えば、S変換だけで、輝度・色差への色変換をしない場合)で説明したが、逆S変換される量が輝度や色差で、レンジオーバ補正される量がRGB値であるような場合でも適用が可能である。
【0059】
例えば、特公平7−63177号公報に記載の技術の場合、RGBから成るカラー画像データをブロック単位毎に輝度信号と色差信号に変換し、さらに明度信号を直交変換して係数を得、その後、該係数に量子化を施している。他方、色差信号は、直交変換はされずに、ブロック内の代表値のみが量子化・符号化(圧縮)される。一方、伸張時には、逆直交変換の後、逆色変換が施され、RGBの値が復号される。
【0060】
今、この直交変換がS変換であり、代表値として色差の平均値を用いる場合を考える。平均値とは、S変換で言うLL成分に相当するため、実はこれは、輝度・色差の全てをS変換し、色差に関しては、HL,LH,HH成分を全て破棄する(=無限大の量子化ステップ数で量子化する)ことに他ならない。そして圧縮の主たる対象が自然画像である場合には、輝度,色差ともHH成分が最小である。
【0061】
色差に生じた量子化誤差は、逆色変換の際に結局RGBの誤差へと伝搬されるため、色差成分のS変換係数の、確率的な量子化誤差の大小関係に基づいて、R値やB値に生じたレンジオーバ分の配分先を決定しておくことが可能である。
【0062】
例えば、色変換がRCTと呼ばれる下式で表される場合、
輝度Y=(R+2G+B)/4
色差U=R−G
色差V=B−G
その逆変換は、下式(5)〜(7)になる。
R=G+U … (5)
G=Y−(U+V)/4 … (6)
B=V+G … (7)
【0063】
上述の色変換は、4での除算部をフロア関数を使って切り捨てた場合、或いはシーリング関数を使用して切り上げた場合には可逆な変換となるため、該2つの場合にRCT(Reversible Component Transform)と呼ばれている。本出願明細書においては簡単のため、可逆か否かに関わらずRCTと略称することにする。
【0064】
伸張時においては、輝度,色差のいずれについても逆S変換がなされるため、U成分を例にとった場合、図1でaと表記した画素位置のUをUa、U成分をS変換したときの係数をULL,UHL等と表記すれば、
Ua=ULL+(UHL+ULH)/2+UHH/4
Ub=ULL−(UHL−ULH)/2−UHH/4
Uc=ULL+(UHL−ULH)/2−UHH/4
Ud=ULL−(UHL+ULH)/2+UHH/4
となる。今、Uの高周波は一律に破棄するため、これまでの議論同様、Ua〜Udのいずれにおいても、HH成分の量子化誤差が最小になる。
【0065】
そして各Ua〜Udは、式(5)によってRa〜Rdへと逆RCTされ、
Figure 0003865595
なる計算がなされるが、通常の圧縮方式では、Yaに生じている誤差は、UaやVaに生じている誤差に比べて小さい。伸張後の画質を上げるためには、輝度の量子化率を低くし、色差の量子化率を上げるのが常套手段であるからである。
【0066】
その結果、式(8)を通じてRaに生じる誤差は、Ua,Vaの量子化誤差が支配的となる。Ua,Vaの確率的な量子化誤差が等しく設計されているならば、係数3/4が掛かったUaに起因する誤差が最大となることになるが、係数毎に見れば、やはりUHH起因の量子化誤差が最小となるのである。以上の議論はV成分とB値の関係にも当てはまる。
したがって、色差成分のS変換係数の、確率的な量子化誤差の大小関係に基づいて、R値やB値に生じたレンジオーバ分の配分先を決定しておくことが可能なのである。
【0067】
またG成分への支配的な寄与は、輝度Yと色差U,Vの量子化率の違い(=設計方針)によっていずれの場合もありえる。輝度のHH成分又は色差のHH成分からの量子化誤差が最小となるのは同様である。よって、輝度成分又は色差成分のS変換係数の確率的な量子化誤差の大小関係に基づいて、G値に生じたレンジオーバ分の配分先を決定しておくことが可能なのである。
【0068】
また、以上ではRCTを例にとったが、JPEG等で使用される公知のYCbCr変換等でも同様な議論が成立するのは明らかである。また、圧縮後の伸張時を例にとって説明したが、S変換係数の量子化後に、逆S変換がなされる処理であれば、伸張・復号に関わらず適用可能なことも明らかである。
【0069】
以上をもとに、本発明の実施形態を説明する。
図4は、本発明に係る画像データ処理装置を説明するためのブロック図である。
本発明の一実施形態に係る画像データ処理装置は、逆S変換後の画像データ成分(例えば前述のR値やB値、後述するが輝度や色差でもよい)を処理する装置であって、レンジの上限を越える成分値を有する画素を探すレンジオーバ画素チェック手段1と、その画素の成分値をレンジ内に入るように減らす成分値修正手段2と、S変換係数LH,HL,HH/2の量子化誤差の確率的な大小関係に基づいて予め決定された画素の、その成分値を増やす成分値配分手段3とを有するものとする。本実施形態によれば、レンジ上限オーバ時に、簡易な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことが可能となる。
なお、後述する各実施形態においては図1を参照して各手段を、本実施形態での各手段と同じものとして説明してあるが、当然同一手段である必要はなく、さらに、各手段が各実施形態での機能のみを備えていても、他の実施形態での機能を兼ね備えていてもよい。
【0070】
また、本発明の他の実施形態に係る画像データ処理装置は、逆S変換後の画像データ成分を処理する装置であって、レンジの下限を下回る成分値を有する画素を探すレンジオーバ画素チェック手段1と、その画素の成分値をレンジ内に入るように増やす成分値修正手段2と、S変換係数LH,HL,HH/2の量子化誤差の確率的な大小関係に基づいて予め決定された画素の、その成分値を減らす成分値配分手段3を有するものとする。本実施形態によれば、レンジ下限を下回ったときに、簡易な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことが可能となる。
【0071】
また、本発明の他の実施形態に係る画像データ処理装置は、逆S変換後の画像データ成分を処理する装置であって、レンジの上限を越える成分値を有する画素を探すレンジオーバ画素チェック手段1と、その画素の成分値をレンジ内に入るように減らす成分値修正手段2と、S変換係数LH,HL,HH/2のどの量子化誤差が確率的に最小となるかに基づいて予め決定された画素の、その成分値を増やす成分値配分手段3を有するものとする。本実施形態によれば、レンジ上限オーバ時に、簡易かつ柔軟な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことが可能となる。
【0072】
また、本発明の他の実施形態に係る画像データ処理装置は、逆S変換後の画像データを処理する装置であって、レンジの下限を下回る成分値を有する画素を探すレンジオーバ画素チェック手段1と、その画素の成分値をレンジ内に入るように増やす成分値修正手段2と、S変換係数LH,HL,HH/2のどの量子化誤差が確率的に最小となるかに基づいて予め決定された画素の、その成分値を減らす成分値配分手段3を有するものとする。本実施形態によれば、レンジ下限を下回ったときに、簡易なかつ柔軟な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことが可能となる。
【0073】
以上のように、レンジオーバ分を予め規定した所定の画素に配分する場合、配分後の所定画素の値もレンジ内に収まるのが通常である。しかし、係数間の誤差の累積等により、配分後の所定画素の値が、レンジを越えたり、下回ったりすることがある。かかる場合には、再配分か、丸め処理が必要である。表2,表3のところで述べた「次に配分」とは、この再配分のことである。
【0074】
そこで、本発明の他の実施形態に係る画像データ処理装置においては、成分値修正手段2により、値を増やした画素の成分値がさらにレンジの上限を越えた場合に該画素の成分値をレンジ内に入るように減らし、成分値配分手段3により、S変換係数LH,HL,HH/2のうち、どの量子化誤差が確率的に最大となるかに基づいて予め決定された第2の画素の、その成分値を増やす。本実施形態によれば、上限オーバが繰り返されたときに、簡易な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことが可能となる。
【0075】
また、本発明の他の実施形態に係る画像データ処理装置においては、成分値修正手段2により、値を減らした画素の成分値がさらにレンジの下限を下回った場合に該画素の成分値をレンジ内に入るように増やし、成分値配分手段3により、S変換係数LH,HL,HH/2のうち、どの量子化誤差が確率的に最大となるかに基づいて予め決定された第2の画素の、その成分値を減らす。本実施形態によれば、レンジ下限アンダーが繰り返されたときに、簡易な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことが可能となる。
【0076】
また、本発明の他の実施形態に係る画像データ処理装置は、値を増やした画素又は第2の画素の成分値がさらにレンジの上限を越えた場合に該画素の成分値をレンジ上限の値とする(以下これを「丸め処理」という)。また、値を減らした画素又は第2の画素の成分値がさらにレンジの下限を下回った場合に該画素の成分値をレンジ下限の値とする(以下これも「丸め処理」という)。本実施形態によれば、レンジオーバが繰り返されたときの対処を、簡易に行うことが可能となる。
【0077】
また、本発明の他の実施形態に係る画像データ処理装置は、HH/2の量子化誤差が確率的に最小である場合に、レンジの上限を越える成分値を有する画素を探し、その画素の成分値をレンジ内に入るように減らす成分値修正手段2と、その画素の対角画素の値を増やす成分値配分手段3を有するものとする。本実施形態によれば、HH/2の量子化誤差が最小という典型的な場合において、レンジ上限オーバ時に、簡易かつ柔軟な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことが可能となる。
【0078】
また、本発明の他の実施形態に係る画像データ処理装置は、HH/2の量子化誤差が確率的に最小である場合に、レンジの下限を下回る成分値を有する画素を探し、その画素の成分値をレンジ内に入るように増やす成分値修正手段2と、その画素の対角画素の値を減らす成分値配分手段3を有するものとする。本実施形態によれば、HH/2の量子化誤差が最小という典型的な場合において、レンジ下限アンダー時に、簡易かつ柔軟な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことが可能となる。
【0079】
また、本発明の他の実施形態に係る画像データ処理装置においては、成分値修正手段2により、増やした画素の成分値がさらにレンジの上限を越えた場合にその画素の成分値をレンジ内に入るように減らし、成分値配分手段3により、その画素の水平又は垂直画素の成分値を増やす。本実施形態によれば、HH/2の量子化誤差が最小という典型的な場合において、レンジ上限オーバが繰り返されたときに、簡易な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことが可能となる。
【0080】
また、本発明の他の実施形態に係る画像データ処理装置においては、成分値修正手段2により、減らした画素の成分値がさらにレンジの下限を下回った場合にその画素の成分値をレンジ内に入るように増やし、成分値配分手段3により、その画素の水平又は垂直画素の成分値を減らす。本実施形態によれば、HH/2の量子化誤差が最小という典型的な場合において、レンジ下限アンダーが繰り返されたときに、簡易な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことが可能となる。
【0081】
また、本発明の他の実施形態に係る画像データ処理装置は、減らす値の大きさと増やす値の大きさを一致させるようにしたものである。本実施形態によれば、HH/2の量子化誤差が最小という典型的な場合も含め、成分値の総和(平均値)を保持することで、色味の変化を精密に抑え、高画質な処理(伸張・復号処理)を行うことが可能となる。
【0082】
また、本発明の他の実施形態に係る画像データ処理装置においては、値を増やした画素の成分値がさらにレンジの上限を越えた場合にその画素の成分値をレンジ上限の値とする。また、値を減らした画素の成分値がさらにレンジの下限を下回った場合にその画素の成分値をレンジ下限の値とする。本実施形態によれば、HH/2の量子化誤差が最小という典型的な場合において、レンジオーバが繰り返されたときの対処を、簡易に行うことが可能となる。
【0083】
また、本発明の他の実施形態に係る画像データ処理装置は、前述の逆S変換が画像データの色差成分に対してなされ、前述の成分値がR値又はG値又はB値であるようにしたものである。本実施形態によれば、逆S変換後に逆色変換がなされる典型的な復号化経路において、RGB値のレンジオーバへの対処を、色差成分のS変換係数の誤差に基づいて簡易に行うことが可能となる。
【0084】
また、本発明の他の実施形態に係る画像データ処理装置は、前述の逆S変換が画像データの輝度成分に対してなされ、前述の成分値がG値であるようにしたものである。本実施形態によれば、逆S変換後に逆色変換がなされる典型的な復号化経路において、Gの値のレンジオーバへの対処を、輝度成分のS変換係数の誤差に基づいて簡易に行うことが可能となる。
【0085】
また、復号後(伸張後)の画質を維持するためには、輝度の量子化率を色差の量子化率よりも低くするのが通常であるが、かかる場合は、前述のRCTの式(5)〜(7)の例からも明らかなように、Gに生じる誤差は、R,Bに生じる誤差よりも小さくなる。その結果Gの場合、レンジオーバが生じたとしても、オーバ分の値は小さい。
よって、本発明の他の実施形態に係る画像データ処理装置は、前述のレンジ上限を越える成分値又はレンジ下限を下回る成分値がGである場合に、Gの値を丸め処理する手段を有するものとする。本実施形態によれば、オーバ分の値が小さいと想定される成分値の場合には丸め処理にすることにより、レンジオーバへの対処を簡易化することが可能となる。
【0086】
また、画像データの圧縮率を可変にするために符号化時の量子化率が可変であるのも一般的だが、量子化率が低い場合には、レンジオーバ自体も少なくなり、オーバ分の値も小さくなる。
よって、本発明の他の実施形態に係る画像データ処理装置は、S変換係数の量子化率によって、前述の予め決定された画素の成分値を増減するか、丸め処理とするかを切り替える手段を有するものとする。本実施形態によれば、オーバ分の値が小さいと想定される場合には丸め処理にすることにより、レンジオーバへの対処を簡易化することが可能となる。
【0087】
また、本発明の他の実施形態に係る画像データ処理装置は、前述のレンジ上限を越える成分値又はレンジ加減を下回る成分値がGである場合に、S変換係数の量子化率によって、前述の予め決定された画素のG値を増減するか、丸め処理とするかを切り替える手段を有するものとする。本実施形態によれば、オーバ分の値が小さいと想定される場合及び成分値の場合に丸め処理にすることにより、レンジオーバへの対処を簡易化することが可能となる。
【0088】
本発明の一実施形態に係る画像データ処理方法は、逆S変換後の画像データ成分を処理する方法であって、レンジの上限を越える成分値を有する画素を探すステップと、その画素の成分値をレンジ内に入るように減らすステップと、S変換係数LH,HL,HH/2の量子化誤差の確率的な大小関係に基づいて予め決定された画素の、その成分値を増やすステップを有するものとする。本実施形態によれば、レンジ上限オーバ時に、簡易な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことが可能となる。
【0089】
また、本発明の他の実施形態に係る画像データ処理方法は、逆S変換後の画像データ成分を処理する方法であって、レンジの下限を下回る成分値を有する画素を探すステップと、その画素の成分値をレンジ内に入るように増やすステップと、S変換係数LH,HL,HH/2の量子化誤差の確率的な大小関係に基づいて予め決定された画素の、その成分値を減らすステップを有するものとする。本実施形態によれば、レンジ下限を下回ったときに、簡易な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことが可能となる。
【0090】
また、本発明の他の実施形態に係る画像データ処理方法は、逆S変換後の画像データ成分を処理する方法であって、レンジの上限を越える成分値を有する画素を探すステップと、その画素の成分値をレンジ内に入るように減らすステップと、S変換係数LH,HL,HH/2のどの量子化誤差が確率的に最小となるかに基づいて予め決定された画素の、その成分値を増やすステップを有するものとする。本実施形態によれば、レンジ上限オーバ時に、簡易かつ柔軟な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことが可能となる。
【0091】
また、本発明の他の実施形態に係る画像データ処理方法は、逆S変換後の画像データを処理する方法であって、レンジの下限を下回る成分値を有する画素を探すステップと、その画素の成分値をレンジ内に入るように増やすステップと、S変換係数LH,HL,HH/2のどの量子化誤差が確率的に最小となるかに基づいて予め決定された画素の、その成分値を減らすステップを有するものとする。本実施形態によれば、レンジ下限を下回ったときに、簡易なかつ柔軟な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことが可能となる。
【0092】
本発明は、上述の各実施形態の画像データ処理装置の機能を実現するための、又は、上述の各実施形態の画像データ処理方法を実行させるためのプログラム、及びそのプログラムを記録したコンピュータが読み取り可能な情報記録媒体としての形態がとり得、これにより、上述の各実施形態に対応した処理によって、速度と画質のバランスをとることが可能なシステムを提供することが可能となる。
【0093】
以下、本発明の実施形態をより具体的に説明する。
図5は、本発明の一実施形態に係る画像データ処理装置の構成例を示す図である。
ここで説明する画像データ処理装置は、データバス13を介して、RAM11,CPU12,HDD14が接続された構成となっており、以下の流れで、オリジナル画像(原画像)の圧縮処理(符号化処理)を行う。
【0094】
HDD14上に記録されたオリジナル画像は、CPU12からの命令によってRAM11上に読み込まれる(i)。次に、圧縮ステップとして、CPU12はRAM11上の画像を部分的に読み込み(ii)、後述する一般的な符号化方法を適用して圧縮を行う。CPU12は、圧縮後のデータをRAM11上の別の領域に書き込む(iii)。全てのオリジナル画像が圧縮されると、CPU12からの命令によって、圧縮後のデータがHDD14上に記録される(iv)。
【0095】
また、同一の装置構成において、以下の流れで、圧縮された画像の伸張処理(復号化処理)がなされる。HDD14上に記録された圧縮された画像は、CPU12からの命令によってRAM11上に読み込まれる(ivの逆)。次に、伸張ステップとして、CPU12はRAM11上の圧縮された画像を部分的に読み込み(iiiの逆)、本発明に係る復号(伸張)処理を適用して伸張を行う。CPU12は、伸張後のデータをRAM11上の別の領域に書き込む(iiの逆)。全ての圧縮された画像が伸張されると、CPU12からの命令によって、伸張後のデータがHDD14上に記録される(iの逆)。
【0096】
図6は、本発明の一実施形態に係る画像データ処理装置の他の構成例を示す図である。
ここで説明する画像データ処理装置は、データバス23を介して、PC内のRAM21,PC内のCPU22,HDD24,プリンタ25が接続された構成となっている。オリジナル画像のプリントアウトに際し、画像の圧縮がなされ、圧縮後のデータがプリンタ25に送信される。プリンタ25への送信データ量が低減されるため、送信時間が短縮され、圧縮・伸張に要する時間を加味しても、高速なプリントが可能になる。
【0097】
HDD24上に記録されたオリジナル画像は、CPU22からの命令によってRAM21上に読み込まれる(i)。次に、圧縮ステップとして、CPU22は、RAM21上の画像を部分的に読み込み(ii)、後述する一般的な符号化方法を適用して圧縮を行う。CPU22は、圧縮後のデータをRAM21上の別の領域に書き込む(iii)。CPU22からの命令によって、圧縮後のデータがプリンタ25内のRAM27上に記録される(iv)。伸張ステップとして、プリンタ25内のCPU26は、圧縮後のデータを読み込み(v)、本発明に係る伸張(復号)処理を適用して画像の伸張を行う。CPU26は、伸張後のデータをRAM27上に書き込む(vi)。プリンタ25は、全てのデータが伸張された後、その伸張後のデータを所定の手順でプリントアウトする。
【0098】
図7は、本発明の一実施例の画像データ処理装置における符号化部(圧縮部)を示すブロック図、図8は、図7の符号化部で生成される固定長の符号の構成例を示す図、なお、図9は、図7の符号化部での処理の流れを説明するためのフロー図である。図5或いは図6で例示したような装置構成のもと、図7乃至図9に基づいて本実施例が想定する符号化部(圧縮部)の処理の流れを説明する。
【0099】
本実施例における符号化処理は、画像データを低周波成分と高周波成分とに分離する手段として、S変換(Harr Wavelet変換)を前提とする。S変換では、図1のように2×2画素単位での変換が行われ、4画素の有する値を図1のようにa,b,c,dとした場合、2×2画素ブロックの画像情報はLL,HL,LH,HHの4係数に変換される。このうちLL係数は低周波成分であり、HL,LH,HH係数は高周波成分である。ここでa〜dが、各画素の有するRの値である場合は、Rll,Rhl,Rhh,Rhhが得られ、同様に各画素の有するGの値である場合は、Gll〜Ghhが得られ、Bについても同様である。
【0100】
0〜255(8bit)の値をとるRGBデータとして与えられた画像データは、2×2画素切り出し部31によって、4画素単位でS変換部32に入力される(ステップS1)。S変換部32では、図1に示した式による変換が行われ、Rll,Rhl,Rlh,Rhh,Gll,Ghl,Glh,Ghh,Bll,Bhl,Blh,Bhhの12個の係数が計算され、保持される(ステップS2)。ここでRll,Gll,Bllの3つの直流成分は、量子化されることなくRCT(Reversible Component変換)部34に入力され、その他の交流成分は量子化部33を経た後、RCT部34に入力される。
【0101】
そして本実施例においては、量子化部33において、Rhl,Rlh,Rhh,Bhl,Blh,Bhh,Ghl,Glh,Ghhは全て2bit分の線形量子化がなされ、Rhl′,Rlh′,Rhh′,Bhl′,Blh′,Bhh′,Ghl′,Glh′,Ghh′となり、保持される(ステップS3)。これは、RGBのS変換係数における量子化誤差の大小関係としては、ちょうど前述のケース1に相当する。
【0102】
本実施例のRCT部34では、Rll,Gll,BllにRCTを適用してYll,Ull,Vllが計算され保持される(ステップS4)。さらに、ステップS3の量子化により生成されたRhl′,Rlh′,Rhh′,Bhl′,Blh′,Bhh′,Ghl′,Glh′,Ghh′から、Yhl,Ylh,Yhhが計算され保持される(ステップS5)。ここでは、輝度Yに関してはLL〜HHまでを生成するが、圧縮率を上げるため、色差U,Vに関してはLLのみしか生成しない。これは、色差のS変換係数における量子化誤差の大小関係としても、ちょうど前述のケース1に相当する(前述の特公平7−63177号公報と同様)。また、輝度のS変換係数における量子化誤差の大小関係としても、ちょうど前述のケース1に相当する。
【0103】
そしてYUV各々の係数は、符号生成部35へ入力され、連結されて4画素分の符号である図8に示す固定長の符号40が生成される(ステップS6)。この固定長符号40は、Yll,Yhl,Ylh,Yhh,Ull,Vllがそれぞれ8,7,7,8,9,9bitの固定長をもつ構成となっている。全画素について符号の生成がなされるまで処理は続行される(ステップS7)。
なお、以上の例では、前述の特公平7−63177号公報の発明に対し、S変換と色変換(RCT)の順番が逆であり、量子化部の位置も異なるが、本発明の適用上はいずれの順番・位置でもよいことは明らかである。
【0104】
図10は、本発明の一実施例の画像データ処理装置における復号化部(伸張部)を示すブロック、図11は、図10の復号化部での処理の流れを説明するためのフロー図である。図7乃至図9で説明した符号化のもと、図10及び図11に基づいて本実施例の復号化部(伸張部)の処理の流れを説明する。
【0105】
前述の符号化がなされた画像データは、符号分割部41において、図8の固定長符号40から、4画素分のYll,Yhl,Ylh,Yhh,Ull,Vllが切り出され(ステップS11)、逆RCT部42によって、Rll,Ull,Vll,Rhl′,Rlh′,Rhh′,Bhl′,Blh′,Bhh′,Ghl′,Glh′,Ghh′が生成され保持される(ステップS12)。そしてLL以外の係数は、それぞれの逆量子化部43において2bit逆量子化されてRhl,Rlh,Rhh,Ghl,Glh,Ghh,Bhl,Blh,Bhhとなる(ステップS13)。その後、各係数は逆S変換部44において逆S変換がなされ、4画素分のR,G,B、すなわちRa,Rb,Rc,Rd,Ga,Gb,Gc,Gd,Ba,Bb,Bc,Bdが計算され(ステップS14)、レンジオーバ補正部45に入力され、レンジオーバ補正処理が行われる(ステップS15)。この処理を前画素の復号が終了するまで続行する。レンジオーバ補正部45は、本発明の中心をなすものであり、図4で説明したレンジオーバ画素チェック手段1、成分値修正手段2、成分値配分手段3等を含むものとする。
【0106】
図12は、本発明の一実施例の画像データ処理装置におけるレンジオーバ補正処理の流れを説明するためのフロー図であり、図13乃至図16は、図12の処理を詳細に説明するためのフロー図である。
本実施例においては、ステップS21において、RGB全てについて、図13に記載した各画素の補正量を計算、保持する。ここで図13のように、補正量=レンジオーバ分の値としている。そして前述のように、量子化誤差に関しケース1を想定しており、HHの誤差が最小と考え、かつLH,HL両方の誤差への対応を考慮して、レンジオーバ分の値(図13でいう補正量)を、対角位置の画素へ加算する(ステップS22)。これはちょうど、表3の中央の列で規定した位置を予め決めておいたことになる。
【0107】
そして今度は、Gのみを丸め処理とするため、ステップS23でR,Bについてのみ補正量を求め、ステップS24で前記補正量を水平位置画素に加算する。これは、表3の中央の列の規定に加え、「再配分は(HLの量子化誤差を優先して)水平方向」と規定したことになる。そして最後に、ステップS25で丸め処理を行う。
【0108】
図13を参照して丸め・補正量保持処理の流れを説明する。
まず、全ての位置a,b,c,dの補正量を0にセットする(ステップS31)。ステップS32にて成分値xが0未満であればx=0とし、位置a〜dと補正量x−0を保持し(ステップS33)、ステップS34にて成分値xが255を越えていればx=255とし、位置a〜dと補正量x−255を保持する(ステップS35)。この処理を4画素分のxについて繰り返す(ステップS36)。
【0109】
図14を参照して対角位置補正処理の流れを説明する。
まず、ステップS41にて補正量が0であるか否かを判定する。補正量が0でなければステップS42へ進み、対角位置画素の成分値に補正量を加算する。この処理を4画素分の補正量について繰り返す(ステップS43)。
【0110】
図15を参照して水平位置補正処理の流れを説明する。
まず、ステップS51にて補正量が0であるか否かを判定する。補正量が0でなければステップS52へ進み、水平位置画素の成分値に補正量を加算する。この処理を4画素分の補正量について繰り返す(ステップS53)。
【0111】
図16を参照して丸め処理の流れを説明する。
まず、ステップS61にて成分値xが0未満であればx=0とし(ステップS62)、ステップS63にて成分値xが255を越えていればx=255とする(ステップS64)。この処理を4画素分のxについて繰り返す(ステップS65)。
【0112】
図17は、本発明の他の実施例の画像データ処理装置におけるレンジオーバ補正処理の流れを説明するためのフロー図、図18は、図17の処理で生成される固定長の符号の構成例を示す図である。
本実施例においては、ステップS71において、係数全体の量子化率が閾値Th1より大きい場合には、RGB全てについて図13に記載した各画素の補正量を計算、保持し(ステップS72)、さらにRGB全てについてレンジオーバ分の値(図13でいう補正量)を対角位置の画素へ加算し(ステップS73)、RGB全てについて丸め処理を行う(ステップS77)。また、ステップS71において係数全体の量子化率が閾値Th1以下の場合にはステップS74へ進む。ステップS74では、係数全体の量子化率が閾値Th2(Th1>Th2)より大きい場合には、RB全てについて図13に記載した各画素の補正量を計算、保持し(ステップS75)、さらにRB全てについてレンジオーバ分の値(図13でいう補正量)を対角位置の画素へ加算し(ステップS76)、RGB全てについて丸め処理を行う(ステップS77)。そして係数全体の量子化率が閾値Th2以下の場合には、ステップS75,S76を飛ばし、ステップS77へ進む。なお、ここでの処理の詳細は図13乃至図16を参照して説明済みであり、省略する。
【0113】
なお、本実施例においては、図18中の固定長符号50のように各符号のヘッダに、閾値Th1,Th2との大小関係を示す2bitの固定長の値(“11”なら量子化率>Th1、“10”ならTh1≧量子化率>Th2、“01”なら量子化率<Th2)が入力されており、これにより閾値との大小関係を判断することができる。
【0114】
【発明の効果】
請求項1,2,15,16の発明によれば、レンジ上限オーバ時に、又はレンジ下限を下回ったときに、簡易な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことができる。
【0115】
また、成分値の総和(平均値)を保持することで、色味の変化を精密に抑え、高画質な処理(伸張・復号処理)を行うことができる。
【0116】
請求項3,17の発明によれば、レンジ上限オーバ時に、又はレンジ下限を下回ったときに、簡易かつ柔軟な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことができる。
【0117】
請求項4,18の発明によれば、HH/2の量子化誤差が最小という典型的な場合において、レンジ上限オーバ時に、又はレンジ下限アンダ時に、簡易かつ柔軟な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことができる。
【0118】
請求項の発明によれば、レンジ上限オーバ又はレンジ下限アンダが繰り返されたときに、簡易な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことができる。
【0120】
請求項5,7の発明によれば、レンジオーバが繰り返されたときの対処を、簡易に行うことができる。
【0123】
請求項8,9の発明によれば、HH/2の量子化誤差が最小という典型的な場合において、レンジ上限オーバ又はレンジ下限アンダが繰り返されたときに、簡易な手法で逆S変換後(伸張・復号時)の色味の変化を抑え、高画質な処理(伸張・復号処理)を行うことができる。
【0127】
請求項10の発明によれば、逆S変換後に逆色変換がなされる典型的な復号化経路において、RGB値のレンジオーバへの対処を、色差成分のS変換係数の誤差に基づいて簡易に行うができる。
【0128】
請求項11の発明によれば、Gの値のレンジオーバへの対処を、輝度成分のS変換係数の誤差に基づいて簡易に行うことができる。
【0129】
請求項12の発明によれば、オーバ分の値が小さいと想定される成分値の場合には丸め処理にすることにより、レンジオーバへの対処を簡易化することができる。
【0130】
請求項13の発明によれば、オーバ分の値が小さいと想定される場合には丸め処理にすることにより、レンジオーバへの対処を簡易化することができる。
【0131】
請求項14の発明によれば、オーバ分の値が小さいと想定される場合及び成分値の場合に丸め処理にすることにより、レンジオーバへの対処を簡易化することができる。
【0132】
請求項1920の発明によれば、画像データ処理方法が記録されているので、各請求項に対応した処理によって速度と画質のバランスのとれたシステムを提供することができる。
【図面の簡単な説明】
【図1】 S変換を説明するための図である。
【図2】 S変換を行う画素間の方向の凡例を示す図である。
【図3】 自然画像におけるHL,LH,HHの値のヒストグラムを示す図である。
【図4】 本発明に係る画像データ処理装置を説明するためのブロック図である。
【図5】 本発明の一実施形態に係る画像データ処理装置の構成例を示す図である。
【図6】 本発明の一実施形態に係る画像データ処理装置の他の構成例を示す図である。
【図7】 本発明の一実施例の画像データ処理装置における符号化部(圧縮部)を示すブロック図である。
【図8】 図7の符号化部で生成される固定長の符号の構成例を示す図である。
【図9】 図7の符号化部での処理の流れを説明するためのフロー図である。
【図10】 本発明の一実施例の画像データ処理装置における復号化部(伸張部)を示すブロック図である。
【図11】 図10の復号化部での処理の流れを説明するためのフロー図である。
【図12】 本発明の一実施例の画像データ処理装置におけるレンジオーバ補正処理の流れを説明するためのフロー図である。
【図13】 図12の処理を詳細に説明するためのフロー図である。
【図14】 図12の処理を詳細に説明するためのフロー図である。
【図15】 図12の処理を詳細に説明するためのフロー図である。
【図16】 図12の処理を詳細に説明するためのフロー図である。
【図17】 本発明の他の実施例の画像データ処理装置におけるレンジオーバ補正処理の流れを説明するためのフロー図である。
【図18】 図17の処理で生成される固定長の符号の構成例を示す図である。
【符号の説明】
1…レンジオーバ画素チェック手段、2…成分値修正手段、3…成分値配分手段、11,21,27…RAM、12,22,26…CPU、13,23…データバス、14,24…HDD、25…プリンタ、31…2×2画素切り出し部、32…S変換部、33…量子化部、34…RCT部、35…符号生成部、41…符号分割部、42…逆RCT部、43…逆量子化部、44…逆S変換部、45…レンジオーバ補正処理部。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image data processing apparatus, an image data processing method, a program, and a recording medium. More specifically, the present invention relates to color image information applicable to an application program, a device driver such as a printer driver, and other devices that handle images. The present invention relates to an image data processing device for decoding, an image data processing method, a program thereof, and a computer-readable recording medium on which the program is recorded.
[0002]
[Prior art]
When transmitting and storing a color image, it is common to compress the original image in order to reduce the amount of data. When performing such compression, it is a typical technique to reduce the amount of information by performing orthogonal transformation on the components constituting the image to bias the amount of information and quantizing the converted component. is there. Further, when the quantization is extremely performed, it is often performed that all specific components constituting the image are discarded (handled as 0).
[0003]
The technique described in Japanese Examined Patent Publication No. 7-63177 is a representative example of the above, and converts color image data into a luminance (brightness) signal and a color difference signal for each block unit, and further orthogonally converts the brightness signal to generate a low frequency DC A coefficient representing the component and a coefficient representing the high-frequency AC component are obtained, and then the low-frequency coefficient and the high-frequency component coefficient are quantized. On the other hand, the chrominance signal is not orthogonally transformed, and only the representative colors in the block are quantized and encoded.
[0004]
When an image compressed by quantization as described above is expanded, inverse quantization is performed, and a quantization error occurs between the original image and the expanded image. When the quantization error is large, the pixel value after expansion may exceed the original predetermined range.
[0005]
For example, in a general full-color image, RGB takes 8 bits each, that is, a value from 0 to 255. However, due to quantization error, the RGB value after expansion becomes negative or exceeds 255 (hereinafter, this phenomenon is referred to as range over in the present application specification).
[0006]
When such a range over occurs, a so-called rounding process (clipping process) in which a negative value is replaced with 0 and a value exceeding 255 is replaced with 255 has been conventionally performed. However, when the quantization is extreme, the value for the overrange (the value that deviates from the predetermined range) becomes large, and simple rounding processing changes the color locally, resulting in image quality degradation. There is.
[0007]
The above phenomenon is also described in US Pat. No. 5,757,975 “Artifact reduction for large dynamic range input data in JPEG compression”. In the neighborhood of a pixel (for example, a 3 × 3 pixel range), find a neighboring pixel whose value is within a predetermined range and redistribute the range over value to the neighboring pixel to preserve the local average value, Proposes to suppress changes in color.
[0008]
[Problems to be solved by the invention]
The above-mentioned “preserving local average value” is very effective in suppressing image quality degradation, but “the range is not over in the surrounding 3 × 3 pixel range, and the value is within a predetermined range. The process of “searching for a neighboring pixel within” must check many pixel values (for example, the surrounding eight pixels) for one pixel that has exceeded, and is complicated and cumbersome.
[0009]
The present invention has been made in view of the above-described circumstances. The orthogonal transform used for compression is limited to the S transform, and the quantization rate for each S transform coefficient and the main object of compression (for example, a natural image) are considered. As a result, the quantization error of the image data component is corrected without performing a complicated process such as the “search for neighboring pixels in the range of the surrounding 3 × 3 pixels”, and the color after the inverse S conversion is corrected. An object of the present invention is to provide an image data processing device, an image data processing method, a program, and a recording medium that can perform high-quality processing while suppressing changes.
[0010]
[Means for Solving the Problems]
The invention of claim 1 is based on L For the quantized coefficient obtained by quantizing the S transform coefficient consisting of L, LH, HL, and HH Inverse S transformation And after the inverse S transformation An image data processing apparatus for processing component values of image data, Of the component values range Over Find pixels with component values Range over pixel check Means and the Looked for by range over pixel check means Pixel The success of Make the minute value fall within the range Correction to correct Means, A distribution unit that distributes the correction amount corrected by the correction unit to the component values of the pixels included in the same S conversion unit as the correction target pixel, and the correction target pixel and the distribution unit The positional relationship with the allocation destination pixel is determined in advance based on the magnitude relationship between the LH quantization error, the HL quantization error, and the HH 1/2 quantization error. It is characterized by that.
[0011]
The invention of claim 2 In the first aspect of the present invention, the magnitude relationship is a relationship determined in advance depending on the type of image data to be quantized and / or the difference in the quantization rate of each of the S transform coefficients. It is characterized by that.
[0012]
The invention of claim 3 In the invention of claim 1 or 2, the positional relationship is determined in advance depending on which quantization error is minimum or maximum based on the magnitude relationship. It is characterized by that.
[0013]
The invention of claim 4 3. The positional relationship between the correction target pixel and the distribution destination pixel when the magnitude relationship indicates that the LH quantization error or the HL quantization error is maximum. Is predetermined in diagonal position It is characterized by that.
[0014]
The invention of claim 5 is the invention of claim 1. Any one of 4 In the invention of By distribution means The component value of the pixel Distribution As a result, further The component value Is Nji Over Case And the Range component values Rounding correction to the limit value of It is characterized by having a means.
[0015]
The invention of claim 6 claims Any one of 1 to 3 In the invention of By distribution means The component value of the pixel Distribution As a result, Furthermore, the distribution destination pixels Component value Is Nji Became over Case And the Make component values within the range A second correcting unit that corrects, and the distributing unit distributes the correction amount corrected by the second correcting unit to the component values of the pixels included in the same S conversion unit as the correction target pixel. Execute It is characterized by that.
[0016]
The invention of claim 7 is claimed in claim 6 In the invention of The correction amount corrected by the second correcting means by the distributing means Pixel component value Distributed to As a result, Furthermore, the distribution destination pixels Component value Is Nji Over Case And the Range component values Rounding correction to the limit value of It is characterized by having a means.
[0017]
The invention of claim 8 claims 1 or 2 In the invention of When the magnitude relationship indicates that the LH quantization error or the HL quantization error is maximum, the positional relationship between the correction target pixel and the distribution destination pixel is determined in advance as a diagonal position. In the image data processing apparatus, if the component value of the diagonal pixel that is the allocation destination further exceeds the range as a result of distributing the component value of the pixel by the distribution unit, the component value is within the range. A second correction unit that corrects the correction amount so that the correction value is corrected by the second correction unit, and the distribution unit includes a component value of a pixel included in the same S conversion unit as the diagonal pixel that is the correction target. The positional relationship between the diagonal pixel to be corrected and the pixel to which the diagonal pixel is allocated is determined in advance as a horizontal position or a vertical position. It is characterized by that.
[0018]
The invention of claim 9 is claimed in claim 8 In the invention of As a result of allocating the correction amount corrected by the second correcting unit to the component value of the pixel by the distributing unit, if the component value of the distribution destination pixel is over the range, the component value is set as the range limit value. Has rounding correction means It is characterized by that.
[0025]
Claim 10 The invention of claim 1 to claim 1 9 In any one of the inventions, the inverse S conversion is performed on the color difference component of the image data, and the component value is an R value, a G value, or a B value.
[0026]
Claim 11 The invention of claim 1 to claim 1 9 In any one of the inventions, the inverse S-transform is performed on the luminance component of the image data, and the component value is a G value.
[0027]
Claim 12 The invention of claim 1 to claim 1 9 In any one of the inventions, Over Component value is a G value, Without executing the distribution by the distribution means, the correction means Round the value of G Only do It is characterized by that.
[0028]
Claim 13 The invention of claim 1 to claim 1 11 In any one of the inventions, depending on the quantization rate of the S-transform coefficient, The distribution by the distribution unit is executed, or the correction unit does not execute the distribution by the distribution unit. Rounding Only do It is characterized by having means for switching between.
[0029]
Claim 14 The invention of claim 1 to claim 1 11 In any one of the inventions, Over When the component value is a G value, the quantization rate of the S transform coefficient The distribution by the distribution unit is executed, or the correction unit does not execute the distribution by the distribution unit. Rounding Only do It is characterized by having means for switching between.
[0030]
Claim 15 The invention of For the quantized coefficient obtained by quantizing the S transform coefficient consisting of LL, LH, HL, and HH Inverse S transformation And after the inverse S transformation image data of component value An image data processing method for processing Of the component values range Over Find pixels with component values Range over pixel check Steps and the Looked for by over-range pixel check step Pixel The success of Make the minute value fall within the range Correction to correct Steps, A distribution step of distributing the correction amount corrected in the correction step to the component values of the pixels included in the same S conversion unit as the correction target pixel, and the correction target pixel and the distribution step The positional relationship with the allocation destination pixels is determined in advance based on the magnitude relationship between the LH quantization error, the HL quantization error, and the HH 1/2 quantization error. It is characterized by that.
[0031]
Claim 16 The invention of In the invention of claim 15, the magnitude relationship is a relationship that is determined in advance depending on a type of image data to be quantized and / or a difference in quantization rate of each of the S transform coefficients. It is characterized by that.
[0032]
Claim 17 The invention of In the invention of claim 15 or 16, the positional relationship is predetermined based on which quantization error is minimum or maximum based on the magnitude relationship. It is characterized by that.
[0033]
Claim 18 The invention of In the invention of claim 15 or 16, when the magnitude relationship indicates that the LH quantization error or the HL quantization error is the maximum, the positional relationship between the correction target pixel and the allocation destination pixel Is predetermined in diagonal position It is characterized by that.
[0034]
Claim 19 The invention of claim 1 to claim 1 14 A function for realizing the function of the image data processing apparatus according to claim 1 or claim 15 Thru 18 A program for executing the image data processing method according to any one of the above.
[0035]
Claim 20 The invention of claim 19 A computer-readable recording medium on which the described program is recorded.
[0036]
DETAILED DESCRIPTION OF THE INVENTION
In US Pat. No. 5,757,975, in the vicinity of a pixel whose range is over (for example, a range of 3 × 3 pixels), a neighboring pixel whose value is within a predetermined range is searched for, and the range over value is determined as the neighborhood. There is described a pseudo signal reduction method capable of preserving a local average value by redistributing to pixels and suppressing a change in color. The process of “storing the local average value” here is very effective in suppressing image quality degradation, but “the range is not over in the surrounding 3 × 3 pixels range, and the value is The process of “finding neighboring pixels within a predetermined range” requires many pixel values (for example, surrounding eight pixels) to be checked for one pixel that has exceeded, and is complicated and complicated.
[0037]
However, the orthogonal transformation used for compression is limited to S transformation, and by considering the quantization rate for each S transformation coefficient and the main object of compression (for example, mainly natural images), the above-mentioned “around 3 × 3 pixels” It is possible to omit a complicated process such as “search for neighboring pixels in the range”.
The reason why this omission is possible will be described below.
[0038]
FIG. 1 is a diagram for explaining S conversion. FIG. 1A is a diagram illustrating a pixel that performs S conversion, and FIG. 1B is an S diagram for converting the pixel value of FIG. FIG. 1C is a diagram illustrating an inverse S conversion formula for performing an inverse S conversion on each component that has been S converted in FIG. 1B. .
First, S conversion is a process of converting pixel values a, b, c, and d into four coefficients LL, HL, HL, and HH, for example, in units of 2 × 2 pixels as shown in FIG. LL is a low-frequency component and the others are high-frequency components. As is clear from FIGS. 1A and 1B, HL, LH, and HH are in sequence with respect to edges in the vertical, horizontal, and diagonal directions, respectively. Large value. Note that a, b, c, and d are, for example, RGB R values, G values, luminance values, and color difference values.
[0039]
Then, the inverse S transformation for obtaining the original values of a to d from the four coefficients is as follows (see FIG. 1C).
a = LL + (HL + LH) / 2 + HH / 4 (1)
b = LL− (HL−LH) / 2−HH / 4 (2)
c = LL + (HL−LH) / 2−HH / 4 (3)
d = LL− (HL + LH) / 2 + HH / 4 (4)
[0040]
Usually, when quantization is performed, the quantization rate of the low frequency component that has a large influence on the image quality, that is, the LL component is minimized, and the high frequency component that has a small influence on the image quality, that is, the quantization of the LH, HL, and HH components. Maximize the rate. Note that the quantization rate in the specification of the present application means “degree of reduction in the amount of information of the data after quantization with respect to the original data”, and when 8-bit data is reduced by 1 bit to 7 bits. The quantization rate is 2, and when the 8-bit data is reduced by 3 bits to 5 bits, the quantization rate is 2 Three = 8.
[0041]
As a result, the quantization error is also minimized for the LL component and increased for the LH, HL, and HH components. That is, in a normal compression method, an error that occurs on the right side of equations (1) to (4) during the compression / expansion process can be regarded as a quantization error of LH, HL, and HH components.
[0042]
Assume that the quantization error of HL is ΔE. As is clear from the equations (1) to (4), the polarity (positive / negative) of the error caused by ΔE is “the same direction for a and c, and the opposite direction for a and c for b and d”. That is, if the values of a and c increase by ΔE / 2 due to quantization error, the values of b and d decrease by ΔE / 2. If there are (original) values before compression of a, b, c, and d that are close to the upper and lower limits of the range, if the value of ΔE / 2 is sufficiently large, the range is over. That is why.
[0043]
Here, it is assumed that the above-described “processing for storing the local processing average value”, for example, processing for storing the sum of a, b, c, and d is performed.
For example, suppose that a is decoded (expanded) as 260 beyond 255 which is the upper limit of the range, and the value of a is corrected to 255 which is the upper limit of the range. In this case, in order to save the sum of a, b, c, and d before and after the correction, it is necessary to add the over-value 5 subtracted from 260 to any pixel or any one of a plurality of pixels. Yes (hereinafter this process is called range over correction).
[0044]
As is apparent from the direction of the error described above, if the over amount is added to c, the error of c further increases. Therefore, the excess of a should be added to “b or d (or both)”. That is, it is possible to determine in advance the pixels that should absorb the excess. The same argument holds when a falls below the lower limit of the range and when quantization errors occur in LH and HH.
[0045]
FIG. 2 is a diagram illustrating a legend of directions between pixels that perform S conversion. As shown in FIG. 2, when b, c, and d viewed from a are called the horizontal direction, the vertical direction, and the diagonal direction in order, the coefficient that causes the quantization error and the pixel to which the excess is to be allocated according to the above discussion. The relationship of the positions is as shown in Table 1 below.
[0046]
[Table 1]
Figure 0003865595
[0047]
However, in an actual individual scene, it cannot be determined which coefficient quantization error causes a range over. Usually, it cannot be determined which coefficient has a quantization error. For this reason, it is necessary to probabilistically consider which coefficient is to be dealt with so that it can be attributed, and which coefficient is caused to exceed the range due to the quantization error. This is the idea that forms the basis of the present invention.
[0048]
For example, when it is intended to absorb the range over by one pixel, as is clear from Table 1, when it is caused by a quantization error of either HL or LH, both are common (= It is understood that “diagonal pixels” may be selected.
[0049]
Table 1 also shows that allocation to diagonal pixels is not a good idea in the case of range over caused by HH. However, if the HH-induced range over is less likely to occur than the HL / LH-based range over, it is simple and effective to select, for example, a diagonal pixel with priority given to dealing with HL and LH. That's it.
[0050]
Here, in a general compression method, a range over caused by HH is often less likely to occur stochastically than a range over caused by HL or LH. Specifically, this is the case as follows.
[0051]
(Case 1)
When linearly quantizing HL, LH, and HH with the same number of quantization steps:
When the number of quantization steps is the same, the quantization error occurring in HL, LH, and HH can be stochastically equal, but as is clear from equations (1) to (4), the error that causes the range over is “ ½ of HL and LH quantization error and ¼ of HH quantization error ”. Therefore, the range overhaul caused by HH is simply less than that caused by HL and LH.
[0052]
(Case 2)
When the compression target is a natural image and HL, LH, and HH are quantized nonlinearly:
In natural images, it is well known that diagonal edges are weaker than vertical and horizontal edges (it is said to be the effect of gravity), which is smaller in HH values than HL and LH values. This means that HH is not divided by 2 unlike HL and LH, but is still small as in the equation of FIG.
[0053]
FIG. 3 is a diagram showing a histogram of HL, LH, and HH values in a natural image. Since the HH value is often smaller than the HL and LH values, the histogram of the HL, LH, and HH values in the natural image is as shown in FIG. 3, and the HH takes a shape in which smaller values frequently appear. When nonlinearly quantizing the coefficients of such a histogram, considering the frequency of appearance, the range with a small value is densely (= the quantization interval is small), and the large range is coarse (= the quantization interval is large) It is usual to quantize. As the quantization interval is larger, the quantization error becomes larger. As a result of nonlinear quantization, the LH and HL quantization errors having values larger than HH become larger. Therefore, the range overhaul caused by HH is much less than that caused by HL and LH.
[0054]
As described above, the position where the range-over is to be allocated is first determined by the “probabilistic magnitude relationship of quantization errors of LH, HL, and HH / 2”, and further, to which (any) coefficient It is determined by whether or not to deal with it so that it can be caused. Here, “HH / 2 quantization error” means “½ of HH quantization error”. Considering that the number of quantization steps and the quantization interval are determined in advance at the design time of the quantizer, the “probabilistic magnitude relationship of quantization errors of HL, LH, and HH / 2” is determined at the design time. In addition, the allocation destination of the excess can be determined at the design time. If probabilistic processing (processing that works effectively in most cases) is acceptable, there is no need to search for an allocation destination.
Therefore, when the “probabilistic magnitude relationship”, in particular, the coefficient that the quantization error is stochastically maximized is mainly considered, an example of a predetermined allocation position is as shown in Table 2 below. The meaning of “distribution” will be described later.
[0055]
[Table 2]
Figure 0003865595
[0056]
Also this `` Sure Predetermined distribution when considering both the magnitude relationship (two coefficients other than the coefficient with which the quantization error is stochastically minimum) and “As may be attributed to any coefficient” Examples of positions are shown in Table 3 below.
[0057]
[Table 3]
Figure 0003865595
[0058]
Further, the above example has been described in the case where the amount subjected to inverse S conversion (for example, the value of R) is the same as the amount subjected to range overcorrection (for example, when only S conversion is performed and color conversion to luminance / color difference is not performed). However, the present invention can be applied even when the amount of inverse S conversion is luminance or color difference and the amount of over-range correction is an RGB value.
[0059]
For example, in the case of the technique described in Japanese Examined Patent Publication No. 7-63177, color image data composed of RGB is converted into a luminance signal and a color difference signal for each block unit, and further a lightness signal is orthogonally transformed to obtain a coefficient. The coefficients are quantized. On the other hand, the chrominance signal is not orthogonally transformed, and only representative values in the block are quantized and encoded (compressed). On the other hand, at the time of decompression, inverse color transformation is performed after inverse orthogonal transformation, and RGB values are decoded.
[0060]
Now, consider a case where this orthogonal transform is an S transform and an average value of color differences is used as a representative value. Since the average value corresponds to the LL component referred to in the S conversion, in fact, this means that all luminance / color differences are S-converted, and all the HL, LH, and HH components are discarded (= infinite quantum). Quantize with the number of quantization steps). When the main object of compression is a natural image, the HH component is minimum for both luminance and color difference.
[0061]
Since the quantization error generated in the color difference is eventually propagated to the RGB error in the inverse color conversion, the R value and the S value of the S conversion coefficient of the color difference component are calculated based on the magnitude relationship of the stochastic quantization error. It is possible to determine the allocation destination for the range over that has occurred in the B value.
[0062]
For example, when color conversion is expressed by the following equation called RCT:
Luminance Y = (R + 2G + B) / 4
Color difference U = RG
Color difference V = BG
The inverse transformation is represented by the following equations (5) to (7).
R = G + U (5)
G = Y− (U + V) / 4 (6)
B = V + G (7)
[0063]
The color conversion described above is reversible when the division unit at 4 is rounded down using a floor function or rounded up using a ceiling function. Therefore, in the two cases, RCT (Reversible Component Transform) )is called. In the present application specification, for the sake of simplicity, it will be abbreviated as RCT regardless of whether it is reversible or not.
[0064]
At the time of expansion, inverse S conversion is performed for both luminance and color difference. Therefore, when U component is taken as an example, U at the pixel position indicated as a in FIG. If the coefficients are expressed as UL, UHL, etc.,
Ua = ULL + (UHL + ULH) / 2 + UHH / 4
Ub = ULL- (UHL-ULH) / 2-UHH / 4
Uc = ULL + (UHL-ULH) / 2-UHH / 4
Ud = ULL- (UHL + ULH) / 2 + UHH / 4
It becomes. Now, since the high frequency of U is uniformly discarded, the quantization error of the HH component is minimized in any of Ua to Ud as in the previous discussion.
[0065]
And each Ua-Ud is inversely RCTed to Ra-Rd by equation (5),
Figure 0003865595
However, in a normal compression method, an error occurring in Ya is smaller than an error occurring in Ua and Va. This is because, in order to improve the image quality after expansion, it is a conventional means to lower the luminance quantization rate and raise the color difference quantization rate.
[0066]
As a result, Ua and Va quantization errors are dominant in the error that occurs in Ra through equation (8). If the stochastic quantization errors of Ua and Va are designed to be equal, the error due to Ua multiplied by the coefficient 3/4 is maximized. This is because the quantization error is minimized. The above discussion also applies to the relationship between the V component and the B value.
Therefore, it is possible to determine the allocation destination of the range over which has occurred in the R value and B value based on the magnitude relationship of the stochastic quantization error of the S conversion coefficient of the color difference component.
[0067]
Further, the dominant contribution to the G component can be in any case depending on the difference in the quantization rate between the luminance Y and the color differences U and V (= design policy). Similarly, the quantization error from the HH component of luminance or the HH component of color difference is minimized. Therefore, it is possible to determine the allocation destination of the range over generated in the G value based on the magnitude relationship of the stochastic quantization error of the S conversion coefficient of the luminance component or the color difference component.
[0068]
In the above description, RCT is taken as an example, but it is clear that the same argument holds for the known YCbCr conversion used in JPEG or the like. Further, although the description has been made taking the decompression after compression as an example, it is apparent that any process that performs inverse S transform after quantization of the S transform coefficient can be applied regardless of decompression / decoding.
[0069]
Based on the above, an embodiment of the present invention will be described.
FIG. 4 is a block diagram for explaining an image data processing apparatus according to the present invention.
An image data processing apparatus according to an embodiment of the present invention is an apparatus that processes image data components after inverse S conversion (for example, the above-described R value or B value, which may be luminance or color difference, which will be described later). Range over pixel check means 1 for searching for a pixel having a component value exceeding the upper limit, component value correction means 2 for reducing the component value of the pixel so as to fall within the range, and S conversion coefficients LH, HL, HH / 2 Assume that it has component value distribution means 3 for increasing the component value of a pixel determined in advance based on the stochastic magnitude relationship of the quantization error. According to this embodiment, when the upper limit of the range is exceeded, it is possible to perform a high-quality process (expansion / decoding process) by suppressing a change in color after inverse S conversion (during expansion / decoding) by a simple method. Become.
In each embodiment to be described later, each means is described as being the same as each means in the present embodiment with reference to FIG. 1, but naturally it is not necessary to be the same means. Even if it has only the function in each embodiment, it may have the function in other embodiments.
[0070]
An image data processing apparatus according to another embodiment of the present invention is an apparatus for processing an image data component after inverse S conversion, and is a range over pixel check unit that searches for a pixel having a component value below the lower limit of the range. 1 and the component value correcting means 2 that increases the component value of the pixel so as to fall within the range, and a probability magnitude relationship between the quantization errors of the S conversion coefficients LH, HL, and HH / 2. It is assumed that the pixel has component value distribution means 3 for reducing its component value. According to this embodiment, when the value falls below the lower limit of the range, the color change after inverse S conversion (during expansion / decoding) is suppressed by a simple method, and high-quality processing (expansion / decoding processing) is performed. Is possible.
[0071]
An image data processing apparatus according to another embodiment of the present invention is an apparatus for processing an image data component after inverse S conversion, and is a range over pixel check means for searching for a pixel having a component value exceeding the upper limit of the range. 1 and the component value correcting means 2 for reducing the component value of the pixel so as to fall within the range, and the quantization error of the S conversion coefficients LH, HL, and HH / 2 is probabilistically minimized in advance. Assume that it has component value distribution means 3 for increasing the component value of the determined pixel. According to the present embodiment, when the upper limit of the range is exceeded, a change in color after inverse S conversion (during expansion / decoding) is suppressed by a simple and flexible method, and high-quality processing (decompression / decoding processing) can be performed. It becomes possible.
[0072]
An image data processing apparatus according to another embodiment of the present invention is an apparatus for processing image data after inverse S conversion, and is a range over pixel check means 1 for searching for a pixel having a component value below the lower limit of the range. And a component value correcting means 2 for increasing the component value of the pixel so as to fall within the range, and which quantization error of the S conversion coefficients LH, HL, and HH / 2 is probabilistically determined in advance. It is assumed that there is component value distribution means 3 for reducing the component value of the selected pixel. According to the present embodiment, when the value falls below the lower limit of the range, a simple and flexible technique is used to suppress a change in color after inverse S conversion (during expansion / decoding) and to perform high-quality processing (decompression / decoding processing) Can be done.
[0073]
As described above, when the range-over amount is distributed to predetermined pixels, the value of the predetermined pixel after distribution is usually within the range. However, the value of the predetermined pixel after distribution may exceed or fall below the range due to accumulation of errors between coefficients. In such a case, redistribution or rounding is necessary. “Next allocation” described in Tables 2 and 3 refers to this redistribution.
[0074]
Therefore, in the image data processing apparatus according to another embodiment of the present invention, when the component value of the pixel whose value has been increased by the component value correcting unit 2 further exceeds the upper limit of the range, the component value of the pixel is converted into the range. The second pixel determined in advance by the component value distribution unit 3 based on which quantization error among the S conversion coefficients LH, HL, and HH / 2 is probabilistically maximized. Increase its component value. According to the present embodiment, when the upper limit is repeated, a change in color after inverse S conversion (during expansion / decoding) is suppressed by a simple method, and high-quality processing (decompression / decoding processing) is performed. It becomes possible.
[0075]
In the image data processing apparatus according to another embodiment of the present invention, when the component value of the pixel whose value has been reduced by the component value correcting means 2 further falls below the lower limit of the range, the component value of the pixel is changed to the range. The second pixel determined in advance by the component value distribution unit 3 based on which quantization error among the S conversion coefficients LH, HL, and HH / 2 is probabilistically maximized. Reduce its component value. According to the present embodiment, when under-range lower limit is repeated, the color change after inverse S conversion (during expansion / decoding) is suppressed by a simple method, and high-quality processing (expansion / decoding processing) is performed. Can be done.
[0076]
In addition, the image data processing apparatus according to another embodiment of the present invention may determine the component value of the pixel when the component value of the pixel whose value has been increased or the second pixel further exceeds the upper limit of the range. (This is hereinafter referred to as “rounding processing”). In addition, when the component value of the pixel whose value is reduced or the second pixel is further below the lower limit of the range, the component value of the pixel is set as the lower limit value of the range (hereinafter also referred to as “rounding process”). According to the present embodiment, it is possible to easily cope with a case where range over is repeated.
[0077]
An image data processing apparatus according to another embodiment of the present invention searches for a pixel having a component value exceeding the upper limit of the range when the quantization error of HH / 2 is probabilistically minimum, It is assumed that there are component value correcting means 2 for reducing the component value so as to fall within the range, and component value distribution means 3 for increasing the value of the diagonal pixel of the pixel. According to the present embodiment, in a typical case where the quantization error of HH / 2 is the minimum, when the upper limit of the range is exceeded, the color change after inverse S conversion (during expansion / decoding) is performed with a simple and flexible method. It is possible to perform processing with high image quality (decompression / decoding processing).
[0078]
An image data processing apparatus according to another embodiment of the present invention searches for a pixel having a component value below the lower limit of the range when the quantization error of HH / 2 is probabilistically minimum, Assume that the apparatus has component value correcting means 2 for increasing the component value so as to fall within the range and component value distributing means 3 for reducing the value of the diagonal pixel of the pixel. According to the present embodiment, in a typical case where the quantization error of HH / 2 is minimum, the color change after inverse S conversion (during expansion / decoding) is performed by a simple and flexible method when the range is below the lower limit. It is possible to perform processing with high image quality (decompression / decoding processing).
[0079]
In the image data processing apparatus according to another embodiment of the present invention, when the component value of the increased pixel further exceeds the upper limit of the range by the component value correcting unit 2, the component value of the pixel is within the range. The component value distribution means 3 increases the component value of the horizontal or vertical pixel of the pixel. According to the present embodiment, in a typical case where the quantization error of HH / 2 is the minimum, when the range upper limit over is repeated, the color after inverse S conversion (during expansion / decoding) by a simple method This makes it possible to perform high-quality processing (decompression / decoding processing).
[0080]
In the image data processing apparatus according to another embodiment of the present invention, when the component value of the reduced pixel is further below the lower limit of the range by the component value correcting unit 2, the component value of the pixel is within the range. The component value distribution means 3 reduces the component value of the horizontal or vertical pixel of the pixel. According to this embodiment, in a typical case where the quantization error of HH / 2 is the minimum, when the lower limit of the range is repeated, the color after inverse S conversion (during extension / decoding) by a simple method This makes it possible to perform high-quality processing (decompression / decoding processing).
[0081]
An image data processing apparatus according to another embodiment of the present invention is configured such that the magnitude of the value to be reduced matches the magnitude of the value to be increased. According to this embodiment, including the typical case where the quantization error of HH / 2 is minimum, the sum (average value) of the component values is maintained, so that the change in color can be accurately suppressed, and the image quality can be improved. Processing (decompression / decoding processing) can be performed.
[0082]
In the image data processing apparatus according to another embodiment of the present invention, when the component value of a pixel whose value is increased further exceeds the upper limit of the range, the component value of the pixel is set as the upper limit value of the range. Further, when the component value of a pixel whose value has been reduced further falls below the lower limit of the range, the component value of the pixel is set as the range lower limit value. According to the present embodiment, in a typical case where the quantization error of HH / 2 is the minimum, it is possible to easily cope with a case where range over is repeated.
[0083]
In the image data processing apparatus according to another embodiment of the present invention, the inverse S conversion is performed on the color difference component of the image data, and the component value is an R value, a G value, or a B value. It is a thing. According to this embodiment, in a typical decoding path in which reverse color conversion is performed after reverse S conversion, handling of RGB value range over is easily performed based on the error of the S conversion coefficient of the color difference component. Is possible.
[0084]
An image data processing apparatus according to another embodiment of the present invention is configured such that the above-described inverse S conversion is performed on the luminance component of the image data, and the above-described component value is a G value. According to the present embodiment, in a typical decoding path in which reverse color conversion is performed after reverse S conversion, handling of the G value over-range is simply performed based on the error of the S conversion coefficient of the luminance component. It becomes possible.
[0085]
In order to maintain the image quality after decoding (after decompression), the luminance quantization rate is usually lower than the color difference quantization rate. In such a case, the RCT equation (5) described above is used. As is clear from the examples of () to (7), the error generated in G is smaller than the error generated in R and B. As a result, in the case of G, even if a range over occurs, the over value is small.
Therefore, an image data processing apparatus according to another embodiment of the present invention includes means for rounding the value of G when the component value exceeding the upper limit of the range or the component value falling below the lower limit of the range is G. And According to the present embodiment, in the case of a component value that is assumed to have a small over value, rounding processing can be used to simplify the handling of a range over.
[0086]
In addition, it is common that the quantization rate at the time of encoding is variable in order to make the compression rate of the image data variable, but when the quantization rate is low, the range over itself also decreases, and the value for the excess Becomes smaller.
Therefore, the image data processing apparatus according to another embodiment of the present invention has means for switching whether to increase or decrease the predetermined pixel component value or to perform rounding processing according to the quantization rate of the S-transform coefficient. Shall have. According to the present embodiment, when the over value is assumed to be small, rounding processing can be used to simplify the handling of range over.
[0087]
In addition, the image data processing apparatus according to another embodiment of the present invention is configured so that when the component value exceeding the above-described range upper limit or the component value exceeding the range adjustment is G, the above-described range is determined according to the quantization rate of the S-transform coefficient. It is assumed that there is means for switching between increasing / decreasing the G value of a predetermined pixel or rounding processing. According to the present embodiment, it is possible to simplify the handling of the range over by performing rounding when the over value is assumed to be small and when the value is a component value.
[0088]
An image data processing method according to an embodiment of the present invention is a method for processing an image data component after inverse S conversion, the step of searching for a pixel having a component value exceeding the upper limit of the range, and the component value of the pixel And a step of increasing a component value of a pixel determined in advance based on a probabilistic magnitude relationship of quantization errors of S conversion coefficients LH, HL, and HH / 2. And According to this embodiment, when the upper limit of the range is exceeded, it is possible to perform a high-quality process (expansion / decoding process) by suppressing a change in color after inverse S conversion (during expansion / decoding) by a simple method. Become.
[0089]
An image data processing method according to another embodiment of the present invention is a method for processing an image data component after inverse S conversion, the step of searching for a pixel having a component value below the lower limit of the range, and the pixel A step of increasing the component value of the pixel so as to fall within the range, and a step of reducing the component value of a pixel determined in advance based on the stochastic magnitude relationship of the quantization error of the S conversion coefficients LH, HL, and HH / 2 It shall have. According to this embodiment, when the value falls below the lower limit of the range, the color change after inverse S conversion (during expansion / decoding) is suppressed by a simple method, and high-quality processing (expansion / decoding processing) is performed. Is possible.
[0090]
An image data processing method according to another embodiment of the present invention is a method of processing an image data component after inverse S conversion, the step of searching for a pixel having a component value exceeding the upper limit of the range, and the pixel The component value of the pixel determined in advance based on the step of reducing the component value of the pixel to fall within the range and the quantization error of the S conversion coefficients LH, HL, and HH / 2 is probabilistically minimized. It is assumed to have a step of increasing. According to the present embodiment, when the upper limit of the range is exceeded, a change in color after inverse S conversion (during expansion / decoding) is suppressed by a simple and flexible method, and high-quality processing (decompression / decoding processing) can be performed. It becomes possible.
[0091]
Further, an image data processing method according to another embodiment of the present invention is a method of processing image data after inverse S conversion, the step of searching for a pixel having a component value below the lower limit of the range, The step of increasing the component value so as to fall within the range, and the component value of a pixel determined in advance based on which quantization error of the S conversion coefficients LH, HL, and HH / 2 is probabilistically minimized It is assumed that there are steps to reduce. According to the present embodiment, when the value falls below the lower limit of the range, a simple and flexible technique is used to suppress a change in color after inverse S conversion (during expansion / decoding), and to perform high-quality processing (expansion / decoding processing). Can be done.
[0092]
The present invention provides a program for realizing the functions of the image data processing apparatus according to each of the above-described embodiments or for executing the image data processing method according to each of the above-described embodiments, and a computer that records the program. As a possible information recording medium, it is possible to provide a system capable of balancing speed and image quality by processing corresponding to the above-described embodiments.
[0093]
Hereinafter, embodiments of the present invention will be described more specifically.
FIG. 5 is a diagram illustrating a configuration example of an image data processing apparatus according to an embodiment of the present invention.
The image data processing apparatus described here has a configuration in which a RAM 11, a CPU 12, and an HDD 14 are connected via a data bus 13, and an original image (original image) compression process (encoding process) in the following flow. )I do.
[0094]
The original image recorded on the HDD 14 is read into the RAM 11 by a command from the CPU 12 (i). Next, as a compression step, the CPU 12 partially reads an image on the RAM 11 (ii) and performs compression by applying a general encoding method to be described later. The CPU 12 writes the compressed data in another area on the RAM 11 (iii). When all the original images are compressed, the compressed data is recorded on the HDD 14 in accordance with a command from the CPU 12 (iv).
[0095]
In the same apparatus configuration, the compressed image is decompressed (decoded) in the following flow. The compressed image recorded on the HDD 14 is read onto the RAM 11 in accordance with a command from the CPU 12 (the reverse of iv). Next, as a decompression step, the CPU 12 partially reads the compressed image on the RAM 11 (the reverse of iii), and decompresses by applying the decoding (decompression) process according to the present invention. The CPU 12 writes the decompressed data in another area on the RAM 11 (the reverse of ii). When all the compressed images are decompressed, the decompressed data is recorded on the HDD 14 (reverse of i) according to a command from the CPU 12.
[0096]
FIG. 6 is a diagram showing another configuration example of the image data processing apparatus according to the embodiment of the present invention.
The image data processing apparatus described here has a configuration in which a RAM 21 in the PC, a CPU 22 in the PC, an HDD 24, and a printer 25 are connected via a data bus 23. When the original image is printed out, the image is compressed, and the compressed data is transmitted to the printer 25. Since the amount of data transmitted to the printer 25 is reduced, the transmission time is shortened, and high-speed printing is possible even when the time required for compression / expansion is taken into account.
[0097]
The original image recorded on the HDD 24 is read onto the RAM 21 by a command from the CPU 22 (i). Next, as a compression step, the CPU 22 partially reads an image on the RAM 21 (ii), and performs compression by applying a general encoding method to be described later. The CPU 22 writes the compressed data in another area on the RAM 21 (iii). In accordance with a command from the CPU 22, the compressed data is recorded on the RAM 27 in the printer 25 (iv). As the decompression step, the CPU 26 in the printer 25 reads the compressed data (v), and decompresses the image by applying the decompression (decoding) process according to the present invention. The CPU 26 writes the decompressed data on the RAM 27 (vi). After all the data is expanded, the printer 25 prints out the expanded data according to a predetermined procedure.
[0098]
FIG. 7 is a block diagram showing an encoding unit (compression unit) in the image data processing apparatus of one embodiment of the present invention, and FIG. 8 is a configuration example of a fixed-length code generated by the encoding unit of FIG. FIG. 9 is a flowchart for explaining the flow of processing in the encoding unit of FIG. Based on the apparatus configuration illustrated in FIG. 5 or FIG. 6, the processing flow of the encoding unit (compression unit) assumed in the present embodiment will be described based on FIGS. 7 to 9.
[0099]
The encoding process in the present embodiment is premised on S conversion (Harr Wavelet conversion) as means for separating image data into low frequency components and high frequency components. In the S conversion, conversion in units of 2 × 2 pixels is performed as shown in FIG. 1, and when the values of 4 pixels are a, b, c, and d as shown in FIG. 1, an image of a 2 × 2 pixel block Information is converted into four coefficients LL, HL, LH, and HH. Of these, the LL coefficient is a low frequency component, and the HL, LH, and HH coefficients are high frequency components. Here, when a to d are R values of each pixel, Rll, Rhl, Rhh, and Rhh are obtained. Similarly, when G is a G value of each pixel, Gll to Ghh are obtained. , B is the same.
[0100]
Image data given as RGB data having a value of 0 to 255 (8 bits) is input to the S conversion unit 32 in units of 4 pixels by the 2 × 2 pixel cutout unit 31 (step S1). In the S conversion unit 32, conversion according to the equation shown in FIG. 1 is performed, and twelve coefficients Rll, Rhl, Rlh, Rhh, Gll, Ghl, Glh, Ghh, Bll, Bhl, Bhl, Bhh are calculated. It is held (step S2). Here, the three DC components Rll, Gll, and Bll are input to the RCT (Reversible Component Conversion) unit 34 without being quantized, and the other AC components are input to the RCT unit 34 after passing through the quantization unit 33. Is done.
[0101]
In the present embodiment, in the quantizing unit 33, Rhl, Rlh, Rhh, Bhl, Blh, Bhh, Ghl, Glh, and Ghh are all linearly quantized for 2 bits, and Rhl ′, Rlh ′, Rhh ′, Bhl ′, Blh ′, Bhh ′, Ghl ′, Glh ′, and Ghh ′ are held and retained (step S3). This corresponds to the case 1 described above as the magnitude relationship between the quantization errors in the RGB S-transform coefficients.
[0102]
In the RCT unit 34 of this embodiment, Yll, Ull, and Vll are calculated and held by applying RCT to Rll, Gll, and Bll (step S4). Further, Yhl, Ylh, Yhh are calculated and held from Rhl ′, Rlh ′, Rhh ′, Bhl ′, Bhlh, Bhh ′, Ghl ′, Glh ′, Ghh ′ generated by the quantization in step S3. (Step S5). Here, although LL to HH are generated for the luminance Y, only LL is generated for the color differences U and V in order to increase the compression rate. This corresponds to the case 1 just as the magnitude relationship of the quantization error in the S conversion coefficient of the color difference (similar to the above-mentioned Japanese Patent Publication No. 7-63177). Also, the magnitude relationship of the quantization error in the luminance S conversion coefficient corresponds to the case 1 described above.
[0103]
The coefficients of each YUV are input to the code generation unit 35 and connected to generate a fixed-length code 40 shown in FIG. 8, which is a code for four pixels (step S6). In the fixed length code 40, Yll, Yhl, Ylh, Yhh, Ull, Vll have a fixed length of 8, 7, 7, 8, 9, 9 bits, respectively. The process is continued until codes are generated for all pixels (step S7).
In the above example, the order of S conversion and color conversion (RCT) is reversed and the position of the quantization unit is different from that of the above-mentioned Japanese Patent Publication No. 7-63177, but for the application of the present invention. It is clear that can be in any order / position.
[0104]
FIG. 10 is a block diagram showing a decoding unit (decompression unit) in the image data processing apparatus according to the embodiment of the present invention, and FIG. 11 is a flowchart for explaining the flow of processing in the decoding unit of FIG. is there. The processing flow of the decoding unit (decompression unit) of this embodiment will be described with reference to FIGS. 10 and 11 based on the encoding described in FIGS.
[0105]
In the image data subjected to the above-described encoding, Yll, Yhl, Ylh, Yhh, Ull, Vll for four pixels are cut out from the fixed-length code 40 in FIG. 8 in the code dividing unit 41 (step S11), and vice versa. The RCT unit 42 generates and holds Rll, Ull, Vll, Rhl ′, Rlh ′, Rhh ′, Bhl ′, Blh ′, Bhh ′, Ghl ′, Glh ′, and Ghh ′ (step S12). The coefficients other than LL are 2-bit dequantized in the respective dequantization units 43 to become Rhl, Rlh, Rhh, Ghl, Glh, Ghh, Bhl, Blh, Bhh (step S13). Thereafter, each coefficient is subjected to inverse S conversion in the inverse S conversion unit 44, and R, G, B for four pixels, that is, Ra, Rb, Rc, Rd, Ga, Gb, Gc, Gd, Ba, Bb, Bc, Bd is calculated (step S14) and input to the overrange correction unit 45 to perform overrange correction processing (step S15). This process is continued until the decoding of the previous pixel is completed. The range over correction unit 45 forms the center of the present invention, and includes the range over pixel check unit 1, the component value correction unit 2, the component value distribution unit 3 and the like described with reference to FIG.
[0106]
FIG. 12 is a flowchart for explaining the flow of range over correction processing in the image data processing apparatus according to the embodiment of the present invention. FIGS. 13 to 16 are for explaining the processing of FIG. 12 in detail. FIG.
In this embodiment, in step S21, the correction amount of each pixel described in FIG. 13 is calculated and held for all RGB. Here, as shown in FIG. 13, the correction amount = the value for the range over. As described above, Case 1 is assumed for the quantization error, and the value for the overrange (in FIG. 13) is considered in consideration of the minimum HH error and the correspondence to both LH and HL errors. The correction amount) is added to the pixel at the diagonal position (step S22). This is exactly the same as the position defined in the middle row of Table 3.
[0107]
This time, since only G is rounded, correction amounts are obtained only for R and B in step S23, and the correction amounts are added to the horizontal position pixels in step S24. This means that in addition to the definition of the center column in Table 3, “redistribution is horizontal (prior to HL quantization error)”. Finally, a rounding process is performed in step S25.
[0108]
The flow of the rounding / correction amount holding process will be described with reference to FIG.
First, the correction amounts for all positions a, b, c, and d are set to 0 (step S31). If the component value x is less than 0 in step S32, x = 0 is set, the positions a to d and the correction amount x-0 are held (step S33), and if the component value x exceeds 255 in step S34. x = 255, and the positions a to d and the correction amount x-255 are held (step S35). This process is repeated for x for four pixels (step S36).
[0109]
The flow of the diagonal position correction process will be described with reference to FIG.
First, in step S41, it is determined whether or not the correction amount is zero. If the correction amount is not 0, the process proceeds to step S42, and the correction amount is added to the component value of the diagonal position pixel. This process is repeated for the correction amount for four pixels (step S43).
[0110]
The flow of the horizontal position correction process will be described with reference to FIG.
First, in step S51, it is determined whether or not the correction amount is zero. If the correction amount is not 0, the process proceeds to step S52, and the correction amount is added to the component value of the horizontal position pixel. This process is repeated for the correction amount for four pixels (step S53).
[0111]
The flow of the rounding process will be described with reference to FIG.
First, if the component value x is less than 0 in step S61, x = 0 is set (step S62), and if the component value x exceeds 255 in step S63, x = 255 is set (step S64). This process is repeated for x for four pixels (step S65).
[0112]
FIG. 17 is a flowchart for explaining the flow of range overcorrection processing in an image data processing apparatus according to another embodiment of the present invention, and FIG. 18 is a configuration example of a fixed-length code generated by the processing of FIG. FIG.
In this embodiment, when the quantization rate of the entire coefficient is larger than the threshold Th1 in step S71, the correction amount of each pixel shown in FIG. 13 is calculated and held for all RGB (step S72), and further RGB The value for the range over (correction amount in FIG. 13) is added to the pixels at the diagonal positions for all (step S73), and the rounding process is performed for all RGB (step S77). If the quantization rate of the entire coefficient is equal to or smaller than the threshold Th1 in step S71, the process proceeds to step S74. In step S74, when the quantization rate of the entire coefficient is larger than the threshold Th2 (Th1> Th2), the correction amount of each pixel shown in FIG. 13 is calculated and held for all RBs (step S75). Is added to the pixel at the diagonal position (step S76), and rounding processing is performed for all RGB (step S77). If the quantization rate of the entire coefficient is equal to or less than the threshold value Th2, steps S75 and S76 are skipped and the process proceeds to step S77. The details of the processing here have already been described with reference to FIGS.
[0113]
In the present embodiment, a fixed length value of 2 bits indicating the magnitude relationship with the threshold values Th1 and Th2 (in the case of “11”, the quantization rate>), as in the fixed length code 50 in FIG. If Th1 is “10”, Th1 ≧ quantization rate> Th2 and if “01”, quantization rate <Th2) is input, so that the magnitude relationship with the threshold value can be determined.
[0114]
【The invention's effect】
Claim 1 , 2, 15, 16 According to the invention, when the upper limit of the range is exceeded, Or when it falls below the lower range limit, It is possible to perform high-quality processing (decompression / decoding processing) by suppressing a change in color after inverse S conversion (decompression / decoding) by a simple method.
[0115]
In addition, by holding the sum (average value) of the component values, Change color Precisely Therefore, high-quality processing (decompression / decoding processing) can be performed.
[0116]
Claim 3, 17 According to the invention, when the upper limit of the range is exceeded, Or when it falls below the lower range limit, A simple and flexible technique can suppress color change after inverse S conversion (during expansion / decoding) and perform high-quality processing (expansion / decoding processing).
[0117]
Claim 4,18 According to the invention of In the typical case where the quantization error of HH / 2 is minimal, when the upper limit of the range is exceeded, or when the lower limit of the range is under, A simple and flexible technique can suppress color change after inverse S conversion (during expansion / decoding) and perform high-quality processing (expansion / decoding processing).
[0118]
Claim 6 According to the invention, the upper limit of the range is exceeded. Or range lower limit under Is repeated, it is possible to perform high-quality processing (decompression / decoding processing) by suppressing a change in color after inverse S conversion (during expansion / decoding) by a simple method.
[0120]
Claim 5,7 According to this invention, it is possible to easily cope with the case where the range over is repeated. Toga it can.
[0123]
Claim 8,9 In the typical case where the quantization error of HH / 2 is minimum, the upper limit of the range is exceeded. Or range lower limit under Is repeated, it is possible to perform high-quality processing (decompression / decoding processing) by suppressing a change in color after inverse S conversion (during expansion / decoding) by a simple method.
[0127]
Claim 10 According to this invention, in a typical decoding path in which reverse color conversion is performed after reverse S conversion, it is possible to easily deal with the RGB value range over based on the error of the S conversion coefficient of the color difference component. .
[0128]
Claim 11 According to the present invention, it is possible to easily cope with the over-range of the G value based on the error of the S conversion coefficient of the luminance component.
[0129]
Claim 12 According to this invention, in the case of a component value that is assumed to have a small over value, rounding processing can be used to simplify the handling of range over.
[0130]
Claim 13 According to this invention, when the over value is assumed to be small, rounding is performed to simplify the handling of the range over.
[0131]
Claim 14 According to this invention, it is possible to simplify the handling of the range over by performing rounding when it is assumed that the over value is small and when the value is a component value.
[0132]
Claim 19 , 20 According to the invention, since the image data processing method is recorded, it is possible to provide a system in which the speed and the image quality are balanced by the processing corresponding to each claim.
[Brief description of the drawings]
FIG. 1 is a diagram for explaining S conversion;
FIG. 2 is a diagram illustrating a legend of directions between pixels that perform S conversion.
FIG. 3 is a diagram illustrating a histogram of values of HL, LH, and HH in a natural image.
FIG. 4 is a block diagram for explaining an image data processing apparatus according to the present invention.
FIG. 5 is a diagram illustrating a configuration example of an image data processing apparatus according to an embodiment of the present invention.
FIG. 6 is a diagram illustrating another configuration example of an image data processing apparatus according to an embodiment of the present invention.
FIG. 7 is a block diagram illustrating an encoding unit (compression unit) in an image data processing apparatus according to an embodiment of the present invention.
8 is a diagram illustrating a configuration example of a fixed-length code generated by the encoding unit in FIG.
FIG. 9 is a flowchart for explaining a process flow in an encoding unit in FIG. 7;
FIG. 10 is a block diagram illustrating a decoding unit (decompression unit) in the image data processing apparatus according to the embodiment of the present invention.
FIG. 11 is a flowchart for explaining the flow of processing in the decoding unit in FIG. 10;
FIG. 12 is a flowchart for explaining the flow of range over correction processing in the image data processing apparatus according to the embodiment of the present invention;
13 is a flowchart for explaining the processing of FIG. 12 in detail.
14 is a flowchart for explaining the processing of FIG. 12 in detail.
FIG. 15 is a flowchart for explaining the processing of FIG. 12 in detail;
FIG. 16 is a flowchart for explaining the process of FIG. 12 in detail;
FIG. 17 is a flowchart for explaining the flow of range over correction processing in an image data processing apparatus according to another embodiment of the present invention;
18 is a diagram illustrating a configuration example of a fixed-length code generated by the process of FIG.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Range over pixel check means, 2 ... Component value correction means, 3 ... Component value distribution means 11, 21, 27 ... RAM, 12, 22, 26 ... CPU, 13, 23 ... Data bus, 14, 24 ... HDD , 25... Printer, 31... 2 × 2 pixel cutout section, 32... S conversion section, 33... Quantization section, 34... RCT section, 35 ... code generation section, 41. ... Inverse quantization unit 44. Inverse S conversion unit 45. Range overcorrection processing unit

Claims (20)

LL、LH、HL、及びHHでなるS変換係数を量子化した量子化係数に対して逆S変換を行い、逆S変換後の画像データ成分を処理する画像データ処理装置であって、前記成分値のうちレンジオーバとなる成分値を有する画素を探すレンジオーバ画素チェック手段と、該レンジオーバ画素チェック手段によって探した画素の成分値をレンジ内に入るように修正する修正手段と、前記修正手段で修正した修正量を、該修正対象となった画素と同じS変換単位に含まれる画素の成分値に配分する配分手段とを有し、前記修正対象の画素と前記配分手段での配分先の画素との位置関係は、前記LHの量子化誤差、HLの量子化誤差、及びHHの1/2の量子化誤差の大小関係に基づいて、予め決定されていることを特徴とする画像データ処理装置。 LL, LH, HL, and the S transform coefficients comprising at HH perform inverse S transform on the quantized quantization coefficients, an image data processing apparatus for processing the component values of the image data after the inverse S conversion, and over range pixel check means finding a pixel having a component value as a range over of the component values, and correction means for correcting the ingredient values of pixels looking by the over range pixel check means to fall within the range, A distribution unit that distributes the correction amount corrected by the correction unit to the component values of the pixels included in the same S conversion unit as the correction target pixel, and the correction target pixel and the distribution unit The positional relationship with the allocation destination pixel is determined in advance based on the magnitude relationship of the LH quantization error, the HL quantization error, and the HH 1/2 quantization error. Image data processing Location. 前記大小関係は、量子化対象の画像データの種類及び/又は前記S変換係数それぞれの量子化率の差によって、予め決定されている関係であることを特徴とする請求項1記載の画像データ処理装置。 2. The image data processing according to claim 1 , wherein the magnitude relationship is a relationship determined in advance depending on a type of image data to be quantized and / or a difference in quantization rate of each of the S transform coefficients. apparatus. 前記位置関係は、前記大小関係に基づき、どの量子化誤差が最小又は最大となるかによって、予め決定されていることを特徴とする請求項1又は2記載の画像データ処理装置。 3. The image data processing apparatus according to claim 1 , wherein the positional relationship is determined in advance according to which quantization error is minimum or maximum based on the magnitude relationship . 前記大小関係が、LHの量子化誤差又はHLの量子化誤差が最大であることを示す場合、前記修正対象の画素と前記配分先の画素との前記位置関係は、対角位置に予め決定されていることを特徴とする請求項1又は2記載の画像データ処理装置。 When the magnitude relationship indicates that the LH quantization error or the HL quantization error is maximum, the positional relationship between the correction target pixel and the distribution destination pixel is determined in advance as a diagonal position. it is the image data processing apparatus according to claim 1 or 2 wherein. 前記配分手段によって画素の成分値を配分した結果、さらに該成分値がレンジオーバとなる場合に、該成分値をレンジの限界値とする丸め修正手段を有することを特徴とする請求項1乃至4のいずれか1記載の画像データ処理装置。It said allocation means a result of allocating the component values of the pixels by, if further the ingredients value Galle Nji over, to claim 1 characterized in that it has a correction means rounding the component value a limit value of the range 5. The image data processing apparatus according to any one of 4 . 前記配分手段によって画素の成分値を配分した結果、さらに分先の画素の成分値がレンジオーバとなった場合に、該成分値をレンジ内に入るように修正する第2修正手段を備え、前記配分手段は、前記第2修正手段で修正した修正量を、該修正対象となった画素と同じS変換単位に含まれる画素の成分値に配分する処理も実行することを特徴とする請求項1乃至3のいずれか1記載の画像データ処理装置。As a result of allocating the component values of the pixel by said allocation means, in the case where further a component value Galle Nji over the allocation destination pixel, a second correction means for correcting to enter the component values within range The distribution unit also executes a process of distributing the correction amount corrected by the second correction unit to the component values of the pixels included in the same S conversion unit as the correction target pixel. Item 4. The image data processing device according to any one of Items 1 to 3 . 前記配分手段によって前記第2修正手段で修正した修正量を画素の成分値に配分した結果、さらに配分先の画素の成分値がレンジオーバとなる場合に、該成分値をレンジの限界値とする丸め修正手段を有することを特徴とする請求項記載の画像データ処理装置。As a result of allocating a correction amount that is fixed in said second correction means by said allocation means to component values of the pixel, when the further the component values Galle Nji over the allocation destination pixel, and the limit value of the range of the component values The image data processing apparatus according to claim 6, further comprising a rounding correction unit configured to perform rounding correction . 前記大小関係が、LHの量子化誤差又はHLの量子化誤差が最大であることを示す場合、前記修正対象の画素と前記配分先の画素との前記位置関係は、対角位置に予め決定されており、当該画像データ処理装置は、前記配分手段によって画素の成分値を配分した結果、さらに配分先である対角画素の成分値がレンジオーバとなった場合に、該成分値をレンジ内に入るように修正する第2修正手段を備え、前記配分手段は、前記第2修正手段で修正した修正量を、該修正対象となった対角画素と同じS変換単位に含まれる画素の成分値に配分する処理も実行し、前記修正対象の対角画素と該対角画素に対する配分先の画素との前記位置関係は、水平位置又は垂直位置に予め決定されていることを特徴とする請求項1又は2記載の画像データ処理装置。 When the magnitude relationship indicates that the LH quantization error or the HL quantization error is maximum, the positional relationship between the correction target pixel and the distribution destination pixel is determined in advance as a diagonal position. In the image data processing apparatus, if the component value of the diagonal pixel that is the allocation destination further exceeds the range as a result of distributing the component value of the pixel by the distribution unit, the component value is within the range. A second correction unit that corrects the correction amount so that the correction value is corrected by the second correction unit, and the distribution unit includes a component value of a pixel included in the same S conversion unit as the diagonal pixel that is the correction target. The process of allocating to a diagonal pixel is also executed, and the positional relationship between the diagonal pixel to be corrected and the pixel to which the diagonal pixel is allocated is predetermined as a horizontal position or a vertical position. 1 or 2 image data processing according Location. 前記配分手段によって前記第2修正手段で修正した修正量を画素の成分値に配分した結果、さらに配分先の画素の成分値がレンジオーバとなる場合に、該成分値をレンジの限界値とする丸め修正手段を有することを特徴とする請求項記載の画像データ処理装置。 As a result of allocating the correction amount corrected by the second correcting unit to the component value of the pixel by the distributing unit, if the component value of the distribution destination pixel is over the range, the component value is set as the range limit value. 9. The image data processing apparatus according to claim 8, further comprising rounding correction means . 前記逆S変換が画像データの色差成分に対してなされ、前記成分値がR値又はG値又はB値であることを特徴とする請求項1乃至のいずれか1記載の画像データ処理装置。The inverse S conversion is made to the color difference component of the image data, the image data processing apparatus according to any one of claims 1 to 9 wherein the component value is equal to or is R value or G values and B values. 前記逆S変換が画像データの輝度成分に対してなされ、前記成分値がG値であることを特徴とする請求項1乃至のいずれか1記載の画像データ処理装置。The inverse S conversion is performed on the luminance component of the image data, the image data processing apparatus according to any one of claims 1 to 9 wherein the component value is equal to or is a G value. 前記レンジオーバとなる成分値がG値である場合に、前記配分手段 による配分を実行せずに、前記修正手段でGの値を丸め処理のみ行うことを特徴とする請求項1乃至のいずれか1記載の画像データ処理装置。If the range over the component value ing is G value, without performing the allocation by the allocation unit, according to claim 1 to 9, characterized in that only rounding the value of G at the correction means Any one of the image data processing apparatuses. 前記S変換係数の量子化率によって、前記配分手段による配分を実行するか、或いは前記配分手段による配分を実行せずに前記修正手段で丸め処理のみ行うかを切り替える手段を有することを特徴とする請求項1乃至11のいずれか1記載の画像データ処理装置。According to a quantization rate of the S transform coefficient, there is provided means for switching whether to perform distribution by the distribution unit or to perform only rounding processing by the correction unit without performing distribution by the distribution unit. image data processing apparatus according to any one of claims 1 to 11. 前記レンジオーバとなる成分値がG値である場合に、前記S変換係数の量子化率によって、前記配分手段による配分を実行するか、或いは前記配分手段による配分を実行せずに前記修正手段で丸め処理のみ行うかを切り替える手段を有することを特徴とする請求項1乃至11のいずれか1記載の画像データ処理装置。If the range over the component value ing is G value, said by the quantization index of the S transform coefficients, run allocation by said allocation means, or the correction means without performing the allocation by said allocation means image data processing apparatus according to any one of claims 1 to 11, comprising means for switching whether to perform rounding only in. LL、LH、HL、及びHHでなるS変換係数を量子化した量子化係数に対して逆S変換を行い、逆S変換後の画像データ成分を処理する画像データ処理方法であって、前記成分値のうちレンジオーバとなる成分値を有する画素を探すレンジオーバ画素チェックステップと、該レンジオーバ画素チェックステップによって探した画素の成分値をレンジ内に入るように修正する修正ステップと、前記修正ステップで修正した修正量を、該修正対象となった画素と同じS変換単位に含まれる画素の成分値に配分する配分ステップとを含んでなり、前記修正対象の画素と前記配分ステップでの配分先の画素との位置関係は、前記LHの量子化誤差、HLの量子化誤差、及びHHの1/2の量子化誤差の大小関係に基づいて、予め決定されていることを特徴とする画像データ処理方法。 LL, LH, HL, and the S transform coefficients comprising at HH perform inverse S transform on the quantized quantization coefficients, an image data processing method for processing a component value of the image data after the inverse S conversion, and over range pixel checking step find the pixels having a component value as a range over of the component values, a correction step for correcting the ingredient values of pixels looking by the over range pixel check step to fall within the range, A distribution step of distributing the correction amount corrected in the correction step to the component values of the pixels included in the same S conversion unit as the correction target pixel, and the correction target pixel and the distribution step positional relationship between the allocation destination of the pixels of the quantization error of the LH, based on the quantization error, and 1/2 of the magnitude of the quantization error of the HH of HL, is predetermined Image data processing method comprising and. 前記大小関係は、量子化対象の画像データの種類及び/又は前記S変換係数それぞれの量子化率の差によって、予め決定されている関係であることを特徴とする請求項15記載の画像データ処理方法。 16. The image data processing according to claim 15 , wherein the magnitude relationship is a relationship determined in advance according to a type of image data to be quantized and / or a difference in quantization rate of each of the S transform coefficients. Method. 前記位置関係は、前記大小関係に基づき、どの量子化誤差が最小又は最大となるかによって、予め決定されていることを特徴とする請求項15又は16記載の画像データ処理方法。 17. The image data processing method according to claim 15 , wherein the positional relationship is determined in advance depending on which quantization error is minimum or maximum based on the magnitude relationship . 前記大小関係が、LHの量子化誤差又はHLの量子化誤差が最大であることを示す場合、前記修正対象の画素と前記配分先の画素との前記位置関係は、対角位置に予め決定されていることを特徴とする請求項15又は16記載の画像データ処理装置。 When the magnitude relationship indicates that the LH quantization error or the HL quantization error is maximum, the positional relationship between the correction target pixel and the distribution destination pixel is determined in advance as a diagonal position. it is the image data processing apparatus according to claim 15 or 16 wherein. 請求項1乃至14のいずれか1記載の画像データ処理装置の機能を実現させるための、又は、請求項15乃至18のいずれか1記載の画像データ処理方法を実行させるためのプログラム。A program for realizing the function of the image data processing apparatus according to any one of claims 1 to 14 , or for executing the image data processing method according to any one of claims 15 to 18 . 請求項19記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。A computer-readable recording medium on which the program according to claim 19 is recorded.
JP2001053721A 2001-02-28 2001-02-28 Image data processing apparatus, image data processing method, program, and recording medium Expired - Fee Related JP3865595B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001053721A JP3865595B2 (en) 2001-02-28 2001-02-28 Image data processing apparatus, image data processing method, program, and recording medium
US10/082,308 US7013049B2 (en) 2001-02-28 2002-02-26 Image processing scheme

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001053721A JP3865595B2 (en) 2001-02-28 2001-02-28 Image data processing apparatus, image data processing method, program, and recording medium

Publications (2)

Publication Number Publication Date
JP2002262091A JP2002262091A (en) 2002-09-13
JP3865595B2 true JP3865595B2 (en) 2007-01-10

Family

ID=18914152

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001053721A Expired - Fee Related JP3865595B2 (en) 2001-02-28 2001-02-28 Image data processing apparatus, image data processing method, program, and recording medium

Country Status (1)

Country Link
JP (1) JP3865595B2 (en)

Also Published As

Publication number Publication date
JP2002262091A (en) 2002-09-13

Similar Documents

Publication Publication Date Title
US11647195B2 (en) Image encoding device, image decoding device, and the programs thereof
US7013049B2 (en) Image processing scheme
EP0495490B1 (en) Video signal encoding apparatus
JP4687216B2 (en) Image signal processing apparatus, camera system, and image signal processing method
US9183643B2 (en) Apparatus and method for generating typical colors for image coding
JP4365957B2 (en) Image processing method and apparatus and storage medium
US8606007B2 (en) Image processing apparatus and method
JP4687215B2 (en) Image signal processing apparatus, camera system, and image signal processing method
JP3105335B2 (en) Compression / expansion method by orthogonal transform coding of image
WO2012160626A1 (en) Image compression device, image restoration device, and program
JP3865595B2 (en) Image data processing apparatus, image data processing method, program, and recording medium
JP6722651B2 (en) How to choose a compression algorithm depending on the type of image
JP2008017472A (en) Compression method of ultrasonic imaging
JP4137416B2 (en) Image data processing apparatus, image data processing method, program, and recording medium
US20030215152A1 (en) Data compression
US9571844B2 (en) Image processor
KR100601944B1 (en) Method and apparatus for color transformation
US8630487B2 (en) Image processing apparatus and method
WO2023210594A1 (en) Image encoding device and image encoding method
US9560364B2 (en) Encoding image data with quantizing and inverse-quantizing pixel values
JP4911052B2 (en) Image processing apparatus, image processing method, and image processing program
JPH05176175A (en) Picture data compression method
JP2007019878A (en) Image coding apparatus and image coding method
JP6265705B2 (en) Image coding apparatus and image coding method
JP2002369009A (en) Image data processing unit, image data processing method, program, and recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060620

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060821

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20061003

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061003

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101013

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111013

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121013

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131013

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees