JP3774201B2 - Image processing device - Google Patents

Image processing device Download PDF

Info

Publication number
JP3774201B2
JP3774201B2 JP2003076278A JP2003076278A JP3774201B2 JP 3774201 B2 JP3774201 B2 JP 3774201B2 JP 2003076278 A JP2003076278 A JP 2003076278A JP 2003076278 A JP2003076278 A JP 2003076278A JP 3774201 B2 JP3774201 B2 JP 3774201B2
Authority
JP
Japan
Prior art keywords
pixel
value
hadamard
sub
pixel block
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
JP2003076278A
Other languages
Japanese (ja)
Other versions
JP2004289290A (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.)
Axell Corp
Original Assignee
Axell Corp
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 Axell Corp filed Critical Axell Corp
Priority to JP2003076278A priority Critical patent/JP3774201B2/en
Publication of JP2004289290A publication Critical patent/JP2004289290A/en
Application granted granted Critical
Publication of JP3774201B2 publication Critical patent/JP3774201B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、画像の圧縮及び伸張を行う前段階の画像データ(画像圧縮を効率よく行うためのデータ構成)を作成する画像処理を行う画像処理装置に関するものである。
【0002】
【従来の技術】
従来の画像圧縮方法として、JPEG(Joint Photograph Expert Group)が良く知られている。
また、JPEGからJPEG2000への移行に見られるように、高性能ハードウェアへの実装を前提として処理系を大規模・複雑化して画品質や符号化効率を向上させている(例えば、特許文献1参照)。
【0003】
【特許文献1】
特開平09−223226号公報
【0004】
【発明が解決しようとする課題】
しかしながら、上述したJPEG等は、携帯ゲーム機等の携帯端末では消費電力の関係上、CPUのクロック周波数に制限があり、かつCPUの処理能力が汎用のパーソナルコンピュータに比較して低いため、高速に圧縮・伸張の処理が行えず、さらに、JPEGの機能を専用回路として構成すると、この専用回路が大規模・複雑化するため、製品コストの観点から実装することが困難である。
【0005】
本発明の目的は、このような背景の下になされたもので、画像の圧縮・伸張を簡易な演算により高速に行い、JPEG以上の圧縮効率及び伸張後の画像品質を得る圧縮・伸張処理を行うことが可能な画像の符号化機能を有する画像処理装置を提供する事にある。
【0006】
【課題を解決するための手段】
本発明の画像処理装置は、4×4の画素の画素ブロックにおける画素値の平均値であるDC値を求め、画素ブロックを4分割したサブ画素ブロックにおける画素の平均画素値を求める演算を行い、このDC値に対して交流成分予測の演算を行い、サブ画素ブロックの第1のDC画素値を求め、各々対応するサブ画素ブロック毎に平均画素値と第1のDC画素値との差分値を求める演算を行い、この差分値のアダマール係数を求め、前記DC値,該アダマール係数を画像圧縮の符号化データとして出力する画像処理装置であり、前記交流成分予測の演算と前記差分値を求める演算とを組み合わせた合成演算により、前記DC値及び平均画素値に基づいてアダマール係数を求めることを特徴とする。
【0007】
本発明の画像処理装置は、前記アダマール係数を求める式が
【数4】

Figure 0003774201
であることを特徴とする。
【0008】
本発明の画像処理装置は、4×4の画素から構成される画素ブロックにおいて、各画素の画素値を平均化して、DC値を生成して出力するDC画像生成部と、前記画素ブロックを、2×2のサブ画素ブロックに分割し、各サブ画素ブロック毎の平均画素値を求め、処理対象の画素ブロックと、この画素ブロックに対して上下左右に隣接した他の画素ブロックとのDC値から、2×2の各サブ画素ブロック毎の第1のDC画素値を求める交流成分予測の演算と、この平均画素値と第1のDC画素値との第1の差分値の前記合成演算を行い、この第1の差分値に対して4×4の画素単位におけるアダマール変換を行い第1のアダマール係数を出力するとともに、逆アダマール変換を行い第1の差分値を復号し、この復号された第1の差分値に基づき、サブ画素ブロックの平均画素値を再生して出力する第1段階アダマール符号化部と、この平均画素値から4×4の画素毎の第2のDC画素値を求める交流成分予測の演算と、この第2のDC画素値と前記画素ブロックとの4×4の画素毎の第2の差分値を求める演算を合成演算とし、前記平均画素値と各画素の画素値とから第2の差分値に対するアダマール変換を行い第2のアダマール係数を出力する第2段階アダマール符号化部とを具備することを特徴とする。
【0009】
本発明の画像処理装置は、前記第2段階アダマール符号化部における合成演算の式が
【数5】
Figure 0003774201
であることを特徴とする。
【0010】
本発明の画像処理装置は、4×4の画素の画素ブロックにおける画素値の平均値であるDC値から、このDC値に基づき、画素ブロックを4分割したサブ画素ブロックごとの予測画素値を求める交流成分予測の演算と、元画像のサブ画素ブロックにおける画素の平均画素値及びこの予測画素値の差分値に基づくアダマール係数を逆アダマール変換する演算とを合成演算とし、前記DC値とアダマール係数とから各サブ画素ブロックにおける画素の平均画素値を求めることを特徴とする。
【0011】
本発明の画像処理装置は、前記合成演算の式が
【数6】
Figure 0003774201
であることを特徴とする。
【0012】
本発明の画像処理装置は、符号化された4×4の画素ブロックにおける画素のDC画像を復号するDC画像復号部と、処理対象の画素ブロックと、この画素ブロックに対して上下左右に隣接した他の画素ブロックのDC値から2×2の各サブ画素ブロック毎の第1のDC画素値を求める交流成分予測の演算と、元画像のサブ画素ブロックにおける画素の平均画素値及びこの予測画素値の差分値に基づく第1のアダマール係数を逆アダマール変換する演算とを合成演算とし、前記DC値と第1のアダマール係数とから各サブ画素ブロックにおける画素の平均画素値を求める第1段階アダマール復号化部と、この平均画素値から4×4の画素毎の第2のDC画素値を求める交流成分予測の演算と、元画像のサブ画素ブロックにおける画素の画素値及びこの平均画素値の差分値に基づく第2のアダマール係数を逆アダマール変換する演算とを合成演算とし、前記平均画素値と第2のアダマール係数とから各サブ画素ブロックにおける画素の画素値を求める第2段階アダマール復号化部とを具備することを特徴とする。
【0013】
【発明の実施の形態】
本発明による画像処理装置は、元画像を複数の画素(n×n画素)からなる画素ブロックに分割し、例えば4×4の画素からなる画素ブロックに分割し、この画素ブロック毎に各画素の画素値の平均値を計算し、この画素ブロックにおいて、各画素の平均化された画素値として各DC画像のDC値を求める。
そして、本発明による画像処理装置は、このDC値に基づいて、第1段階目のACP(交流成分予測)法に基づく演算から、サブ画素ブロック(2×2画素のブロック)毎の第1のDC画素値を求め、サブ画素ブロックにおける元画像の画素の画素値の平均値からこの第1のDC画素値を減算して第1の差分値を求めて、この第1の差分値に対してアダマール変換を行い、アダマール係数の一部を求めて量子化して出力する。
【0014】
次に、本発明による画像処理装置は、この第1アダマール係数を逆量子化して、逆アダマール変換を行い、上記第1の差分値を再生する(量子化により再生された情報は劣化している)。
そして、本発明による画像処理装置は、この第1の差分値を対応するサブ画素ロックの画素値(すなわち第1のDC画素値)に加算して、上記サブDC画像の新たな第1のDC画素値として出力する。
次に、本発明による画像処理装置は、DC画像の上記新たな第1のDC画素値に基づいて、第2段階目のACP法に基づく演算を行い、各画素毎の第2のDC画素値を求める。
【0015】
そして、本発明による画像処理装置は、元画像の各画素の画素値と上記第2のDC画素値との第2の差分値を求め(画素の画素値から第2のDC画素値を減算)、この第2の差分値に対応する第2のアダマール変換を行い、上記第1のアダマール係数を除いた残りのアダマール係数を第2のアダマール係数として求める。
上述したように、上記画像処理装置は、上記2段階におけるACP法により求めた画素値と元画像の画素値との差分値を、同様に対応する2段階に分けてアダマール係数を求める演算を行っている。
【0016】
このようにすることで、画像処理装置は、16個の画素から求められる16個のアダマール係数(内1つはDC値)のうち、第1段階のアダマール変換において、DC画像処理を行った時点でDC値を生成し、低周波数成分の3個を第1のアダマール係数として求め、第2段階のアダマール変換において、残りの12個のアダマール係数として求めている。
そして、画像処理装置は、求めた15個のアダマール係数及びDC値とを、量子化した後にエントロピー符号化(例えば、ハフマン等)を行いて、データ圧縮を行い出力する。
【0017】
これにより、画像処理装置は、第1のアダマール変換において、サブ画素ブロック範囲内における元画像の画素値の平均値と、第1のDC画素値との第1の差分値をアダマール変換して、差分値としての情報量の多い低周波成分を抽出し、アダマール変換により符号化し、さらに量子化によりデータ圧縮して符号化した後に、この第1の差分値を逆量子化して伸張し、さらに逆アダマール変換することで復号し、第1のDC値に加えて新たな第1のDC値とし、この新たな第1のDC値から第2のDC値を求めた後に、第2のアダマール変換により符号化し残りの高周波側のアダマール係数を求めている。
【0018】
一方、本願発明の画像処理装置は、矩形関数を基底関数とするアダマール変換により画像データの符号化を行うため、正弦関数を基底関数とするDCTと比較して符号量は減少するが、それはつまり復号時には方形波近似となるためDCTのような(隣接する画素の画素値が滑らかに変化する画像を前提とした)精度の高い符号化が行えない。
このため、本願発明の画像処理装置は、その後圧縮の観点から量子化が必要であり、画像復号時において逆量子化の後に逆アダマール変換を行った際、DCTがなめらかに近似して(存在しない中間値を曲線的に生成して)復元できるのに対し、アダマール変換では方形波ゆえにエッジが鋭く画素間の画素値の差が開きやすく、DCTの同じ符号量のものよりブロックノイズが目立つことになる。
【0019】
しかしながら、本願発明の画像処理装置は、第1段階アダマール変換により低周波成分に関するアダマール係数を抽出後、その係数値を第1のDC値に加えて新たな第1のDC値として符号化に反映させ、この第1のDC値に対してACPで周辺ブロックとの差異を補い、元画像の画素値との差を求め、その第2の差分値に対して第2段階のアダマール変換を施すことにより、DCTと同等以上(JPEGとの比較を後に示す)の画質で画像を復元するとともに、元画像の画素値との差分値を取っているため、第2段階の処理(第2段階ACP及び第2段階アダマール変換)において精度の高い符号化が可能となる。
【0020】
また、本発明の画像処理装置は、第1段階の処理(第1段階ACP及び第1段階アダマール変換)アダマール変換の結果を反映しているため、第2段階の処理(第2段階ACP及び第2段階アダマール変換)で符号化する情報量を抑えることができ、DCTのように高圧縮時の高周波成分復元時に現れるモスキートノイズを、ACP処理により大幅に軽減できる。
さらに、DCTにおいて、必ず実数値に対する乗算が必要となるが、本発明の画像処理装置の符号化処理は、ACPとアダマール変換との併用方式であり、整数値に対する加減算ビットシフトにより、符号化に必要な演算が実現できるため、DCTに比較して高速に圧縮伸張を行うことができる。
すなわち、本発明は、ACPとアダマール変換の段階的併用画像符号化アルゴリズムに基づく画像処理装置に関するものである。
【0021】
また、本発明による画像処理装置は、ACP処理を行うためのDC値と、このDC値に対してACP処理を行った後の第1及び第2のDC値及び元画像の差分値が符号化された情報のアダマール係数と、を出力するので、上述したように画像の再生処理に必要な情報量を少なくし、なにより、元画像との差分値をアダマール係数として出力するため、符号化データの精度(復号時の画質、すなわち再生の精度)を高めることができ、かつJPEG等のDCT処理に比較して少ない情報量で元画像に対して高い再現性を持たせることが可能である。
【0022】
さらに、本発明による画像処理装置は、アダマール変換だけでなくACP法による周辺の画素ブロックまたはサブ画素ブロックからの成分予測処理も加わっているため、モスキートノイズだけでなく、アダマール変換をブロック単位で行うために現れやすいブロックノイズをも削減することができる。
また、さらに、本発明による画像処理装置は、加減算とビットシフトとの演算のみにより、上述した処理を行うことが可能なため、コンパクトな処理構成で実現でき、加えて、画素値の大きさの違いに伴う分岐処理もなく、所定の周期で連続して処理を行うことが可能なため、高速な符号化及び復号化(符号化の逆の操作)の処理が行える。
【0023】
以下、図面を参照して本発明の実施形態について詳細に説明する。図1は本発明の一実施形態による画像処理装置の構成を示すブロック図である。
この図において、本発明の画像処理装置は、元画像から求めたDC画像に基づきACP(交流成分予測)法及びアダマール変換を用いて画像の符号化を行う符号化部1と、符号化部1により生成されたDC画像とアダマール係数とに基づき復号化を行う復号化部2とから構成されている。
【0024】
符号化部1は、少なくとも、元画像からDC画像を生成するDC画像作成部3と、このDC画像に基づき第1段階のACP処理を行い、サブ画素ブロック毎の第1のDC画素値を求め、この第1のDC画素値と、サブ画素ブロック範囲内における元画像の画素値の平均値との第1の差分値を求め、この第1の差分値に対して第1段階のアダマール変換を行い、第1のアダマール係数(AC符号)を求めて出力し、かつ第1のDC画素値と第1の差分値とを加算し、新たな第1のDC画素値を生成して出力する第1段階アダマール符号化部5と、この新たな第1のDC画素値に基づいて第2段階のACP処理を行い、元画像の各画素に対応した第2のDC画素値を演算し、元画像の各画素の画素値と第2のDC画素値との第2の差分値を求め、この第2の差分値に対して第2段階のアダマール変換を行い、第2のアダマール係数(AC符号)を求める第2段階アダマール符号化部7から構成されている。
【0025】
復号化部2は、符号化されたDC値(DC符号)を復号してDC画像を復号(再生)するDC画像復号部8と、このDC画像に基づき第1段階のACP処理を行い、サブ画素ブロック毎の第1のDC画素値を求め、入力される第1のアダマール係数に対して逆アダマール変換を行い、第1の差分値を求め、この第1の差分値と第1のDC画素値とを加算し、新たな第1のDC画素値を生成する第1段階アダマール復号化部10と、この新たな第1のDC画素値に基づき、第2のACP処理を行い、元画像の各画素に対応した第2のDC画素値を演算し、入力される第2のアダマール係数に対して第2段階の逆アダマール変換を行い、第2の差分値を演算し、この第2の差分値と第2のDC画素値とを加算し、元画像の各画素を復号する第2段階アダマール復号化部12から構成されている。
【0026】
次に、図1を参照し、一実施形態による画像処理装置の動作例を説明する。
符号化部1の動作を詳細に説明する。
DC画像作成部3は、元画像(図1の2a)を複数の画素(n×n画素、例えば4×4画素)から構成される画素ブロックに分割して、この画素ブロック内の画素の平均値をDC値として求め、量子化及びエントロピー符号化してDC符号として出力する。
【0027】
このDC値で画素値が示される画素ブロックはDC画像として定義される。
すなわち、図2(a)に示すように、4×4画素を画素ブロックとし、図2(b)に示すように、DC値を求めることで各画素ブロックはDC画像となる。
ここで、画素ブロックSは、画素d(0,0)〜画素d(3,3)(これらの画素は各々、図2(d)において画素値pn(x,y);n∈[0,3]、x,y∈[0,1]に対応している)の16の各画素からなるDC画像であり(図1の2b)、この16の各画素の画素値の平均値であるDC値を画素値としている。
【0028】
第1段階交流成分予測部4は、交流成分予測法に基づいて、DC画像からサブ画素ブロックを生成する。
ここで、第1のアダマール係数α01,α10,α11を求めるため、交流成分予測法に基づき、画素ブロックのDC値から第1のDC値が求められる。
すなわち、図3(a)において、画素ブロックSからサブ画素ブロックS1,S2,S3,S4(第1段階ACP適用後画像2c)のDC値(サブ画素ブロックとしての画素値、すなわち第1のDC値)を、以下の交流成分予測の演算により、予測する(生成する)場合、これら各サブ画素ブロックのDC値として第1のDC値を、画素ブロックSのDC値とともに、画素ブロックSに対して、上下左右に隣接する画素ブロック(DC画像)U(上部),L(左側部),R(右側部),B(下部)のDC値を用いて以下の式により表される。(ここで、各画素ブロックのDC値は各画素ブロック名と同様な文字を使用する。)
SP0,0=S+(U+L−B−R)/8 …サブ画素ブロックS1の第1のDC値
SP0,1=S+(U+R−B−L)/8 …サブ画素ブロックS2の第1のDC値
SP1,0=S+(B+L−U−R)/8 …サブ画素ブロックS3の第1のDC値
SP1,1=S+(B+R−U−L)/8 …サブ画素ブロックS4の第1のDC値
【0029】
第1段階アダマール符号化部5は、サブ画素ブロックS1,S2,S3,S4の各々に各々対応させて、元画像の画素d(0,0),(0,1),(1,0),(1,1)と、画素d(0,2),(0,3),(1,2),(1,3)と、画素d(2,0),(2,1),(3,0),(3,1)と、画素d(2,2),(2,3),(3,2),(3,3)との、各4つの画素の画素値の平均値を演算して、平均画素値として出力する。
また、第1段階アダマール符号化部5は、サブ画素ブロックS1,S2,S3,S4の各第1のDC値(SP0,0、SP0,1、SP1,0、SP1,1)から、対応する画素の上記平均画素値を減算して、各サブ画素ブロック各々における第1の差分値を演算し、この第1の差分値に対して第1段階のアダマール変換を行う。
【0030】
第1段階アダマール符号化部5は、以下の(1)式に示すようにサブ画素ブロックの構成を2×2画素と見なして、2×2サブ画素ブロックに対応する第1の差分値のアダマール変換を行う。
【数7】
Figure 0003774201
この(1)式において、Hはアダマール変換に用いるアダマール変換係数行列であり、以下に示す(2)式の構造となっている。
【数8】
Figure 0003774201
また、Hは、Hに対する転置行列であり、(2)式の構造と同様である。
【0031】
そして、αは求められるアダマール係数の行列を示し、fは2×2画素に対応する以下に説明する各画素の差分値(すなわち、各サブ画素ブロックの第1の差分値)に対応している。
αの行列の各要素αu,vは、以下の(3)式により求められる。
【数9】
Figure 0003774201
ここで、s(x,y)は、サブ画素ブロックに対応した各々の第1の差分値の値であり、変換係数hu,v(x,y)もサブ画素ブロックに対応して設けられている。
【0032】
そして、2×2サブ画素ブロックにおけるアダマール変換における変換係数hu,v(x,y)は、図4(a)に示す左上部分の4つの変換係数に対応している(白が「−1」であり、黒が「+1」である)。ここで、サブ画素ブロックS1,S2,S3,S4各々に対応する変換係数hu,v(x,y)の位置関係(図4(a)に示す左上部分の4つの変換係数における)は、図2(c)に示しているs(x,y)のx,yの示す位置関係に対応している(ここでは、変換係数hu,v(x,y)の位置関係のみを示している)。
【0033】
また、fの行列は、以下の(4)式の構造をしている。
【数10】
Figure 0003774201
この第1段階のACP後においては、画素d(0,0)〜d(3,3)の画素値は、帰属するサブ画素ブロック,すなわち対応するサブ画素ブロックS1,S2,S3,S4の第1のDC値に対応している。
【0034】
このとき、第1段階アダマール符号化部5は、DC値及び第2段階アダマール変換で生成する第2のアダマール係数を除く、画素ブロックSに対応するアダマール係数α1,α2,α3を求めるため、サブ画素ブロックS1,S2,S3,S4各々に対応する第1の差分値(s(0,0),s(0,1),s(1,0),s(1,1))を、それぞれ、元画像の画素d(0,0),(0,1),(1,0),(1,1)の平均画素値(SH0,0)からサブ画素ブロックS1の第1のDC値(SP0,0)を減算し、元画像の画素d(0,2),(0,3),(1,2),(1,3)の平均画素値(SH0,1)からサブ画素ブロックS2の第1のDC値(SP0,1)を減算し、元画像の画素d(2,0),(2,1),(3,0),(3,1)の平均画素値(SH1,0)からサブ画素ブロックS3の第1のDC値(SP1,0)を減算し、元画像の画素d(2,2),(2,3),(3,2),(3,3)の平均画素値(SH1,1)からサブ画素ブロックS4の第1のDC値(SP1,1)を減算して求める。
【0035】
すなわち,この第1のアダマール変換では,4×4画素のアダマール変換における画素ブロックSに対応する(低周波側)のアダマール係数α1,α2,α3を,2×2の平均画素(SH0,0、SH0,1、 SH1,0、SH1,1)と2×2の第1のDC値(SP0,0、SP0,1、SP1,0、SP1,1)の差分値より求めている。
【0036】
(3)式で求められるアダマール係数α01,α10,α11は、第1段階アダマール符号化部5において量子化され、第1のアダマール係数として出力される。
【0037】
しかしながら、第1のアダマール係数を演算するために、第1の差分値を求めるとき、各サブ画素ブロックS1,S2,S3,S4の各々の平均画素値(SH0,0、SH0,1、 SH1,0、SH1,1)と、各画素ブロックに対応する第1のDC値(SP0,0、SP0,1、SP1,0、SP1,1)との各々の差分値(S(0,0),S(0,1),S(1,0),S(1,1))は、
S(0,0)=SH0,0−SP0,0
S(0,1)=SH0,1−SP0,1
S(1,0)=SH1,0−SP1,0
S(1,1)=SH1,1−SP1,1
と表される。
【0038】
ここで、(3)式のアダマール変換の結果は、
α01=(S(0,0)−S(0,1)+S(1,0)−S(1,1))/2
α10=(S(0,0)+S(0,1)−S(1,0)−S(1,1))/2
α11=(S(0,0)−S(0,1)−S(1,0)+S(1,1))/2
としてアダマール係数が表される。
【0039】
そして、上記α01の式に、平均画素値と第1のDC値との差分値を求める式を代入すると、各々のアダマール係数を求める式は、以下に示すように
Figure 0003774201
と、論理圧縮することが可能であり、同様に
α10={(SH0,0−SH0,1+SH1,0−SH1,1)*2−(U−B)}/4
α11=(SH0,0−SH0,1+SH1,0−SH1,1)/2
と論理圧縮され、予測符号化の計算に関する項目が相殺されて、α01,α10については2項のDC値の減算となり、α11については予測符号化の計算に関する項目(予測符号化の結果)が全てなくなっていることが判る。
【0040】
このように、アダマール係数を求める式に、第1の差分値を求める式を代入して、すなわち、(3)式を以下に示す(5)式に変形することにより、差分値の計算と第1段階のACP処理の演算とを組み合わせて合成演算することが可能となり、予測符号化(ACP処理)及びアダマール変換の演算部分での演算誤差の発生を防止でき、出力するアダマール係数の演算精度を向上させることが可能となる。
【0041】
このとき、合成演算を2倍した式を用いて計算し、その後の量子化で一括してビットシフトする演算方法を採用することにより、出力するアダマール係数の演算精度をさらに向上させることが可能となる。
また、第1段階アダマール符号化部5は、すでに述べた予測符号化の演算を行わないため、処理速度を向上させて、高速にアダマール係数を演算して得ることができる。
【数11】
Figure 0003774201
【0042】
そして、上述したように、(5)式により論理圧縮したアダマール係数α01,10,11を求める式を第1段階アダマール符号化部5に設定しておくことにより、各アダマール係数に対応した式に、サブ画素ブロックにおける各画素の画素値の平均値と、各アダマール係数の所定の画素ブロックのDC値とを代入することにより、各画素の第1の差分値のアダマール係数を求めることができる。
【0043】
さらに、第1段階アダマール符号化部5は、量子化された第1のアダマール係数の逆量子化を行い、さらに逆アダマール変換を行い第1の差分値を再生し、再生した第1の差分値(S(0,0),S(0,1),S(1,0),S(1,1))に基づき、各サブ画素ブロックにおける画素値の平均値、すなわち第1段階Hdm(アダマール変換)適用後画像(図1の2d)を再生する。
この第1のアダマール係数からの第1段階Hdm(アダマール変換)適用後画像の再生についての説明は、復号化部2における説明で行う。
ここで再生される上記第1の差分値は、量子化されたときに情報が劣化している。
【0044】
次に、各サブ画素ブロックに対応する12個のアダマール係数βn(u,v),n∈[0,3],u,v∈[0,1](第2の差分値のアダマール係数)の演算について、上述した画素ブロックに対応するアダマール係数α01,α10,α11の場合と同様に検討してみる。
第2の差分値のアダマール係数を求めるため、各画素値から減算するための第2のDC値を求める必要がある。
【0045】
そして、第1段階アダマール符号化部5において、すでに求められている第1段階Hdm適用後画像のサブ画素ブロックS1、S2,S3,S4の各々の新たな第1のDC値(すなわち、画素の平均値SG0,0、SG0,1、SG1,0、SG1,1)と、各サブ画素ブロックと上下左右において隣接するサブ画素ブロックの第1のDC画素値(これらも第1段階Hdm適用後画像のサブ画素ブロックS1、S2,S3,S4の各々の新たな第1のDC画素値)とに基づき、交流成分予測の演算を行い、各画素d(0,0),…,(3,3)各々の第2のDC画素値dn(x,y)〜dn(x,y)、x,y∈[0,1]、n∈[0,3]を求める。
【0046】
以下、上記SG0,0、SG0,1、SG1,0、SG1,1を、説明を簡単にするため、各々新たな1のDC値としてSP0,0、SP0,1、SP1,0、SP1,1(各々サブ画素ブロックS1,S2,S3,S4の平均画素値)として表す(他のサブ画素ブロックの第1のDC値についても同様な処理を行っている)。
ここで、第2段階交流成分の演算において、例えば、図3(b)に示すサブ画素ブロックS1における画素d(0,0)〜d(1,1)各々の第2のDC値d0(0,0),d0(0,1),d0(1,0),d0(1,1)が、以下に示す第1のDC値に基づく式により表される。
d0(0,0) = SP0,0+(UP1,0+LP0,1−SP1,0−SP0,1)/8
d0(0,1) = SP0,0+(UP1,0+SP0,1−SP1,0−LP0,1)/8
d0(1,0) = SP0,0+(SP1,0+LP0,1−UP1,0−SP0,1)/8
d0(1,1) = SP0,0+(SP1,0+SP0,1−UP1,0−LP0,1)/8
【0047】
同様に、第2段階交流成分の演算において、他の残りのサブ画素ブロックS2〜S4における各画素の第2のDC画素値を演算し、サブ画素ブロックS1〜S4までの各画素の第2のDC画素値が表される。
・サブ画素ブロックS2の各画素
d1(0,0) = SP0,1 +(UP1,1+SP0,0−SP1,1−RP0,0)/8
d1(0,1) = SP0,1 +(UP1,1+RP0,0−SP1,1−SP0,0)/8
d1(1,0) = SP0,1 +(SP1,1+SP0,0−UP1,1−RP0,0)/8
d1(1,1) = SP0,1 +(SP1,1+RP0,0−UP1,1−SP0,0)/8
・サブ画素ブロックS3の各画素
d2(0,0) = SP1,0+(SP0,0+LP1,1−SB0,0−SP1,1)/8
d2(0,1) = SP1,0+(SP0,0+SP1,1−SB0,0−LP1,1)/8
d2(1,0) = SP1,0+(SB0,0+LP1,1−SP0,0−SP1,1)/8
d2(1,1) = SP1,0+(SB0,0+SP1,1−SP0,0−LP1,1)/8
・サブ画素ブロックS4の各画素
d3(0,0) = SP1,1+(SP0,1+SP1,0−SB0,1−RP1,0)/8
d3(0,1) = SP1,1+(SP0,1+RP1,0−SB0,1−SP1,0)/8
d3(1,0) = SP1,1+(SB0,1+SP1,0−SP0,1−RP1,0)/8
d3(1,1) = SP1,1+(SB0,1+RP1,0−SP0,1−SP1,0)/8
【0048】
第2段階アダマール符号化部7は、サブ画素ブロックS1,S2,S3,S4の各画素の第2のDC値から、対応する画素の画素値を減算して、各画素毎に対応した第2の差分値を演算し、この第2の差分値に対して第2段階のアダマール変換を行う。
【0049】
第2段階アダマール符号化部7は、以下に示す(6)式において、各サブ画素ブロック内の2×2画素毎の第2の差分値に対してアダマール変換を行う。
【数12】
Figure 0003774201
この(6)式において、Knはアダマール変換に用いるアダマール変換係数行列であり、以下に示す(7)式の構造となっている。
【数13】
Figure 0003774201
【0050】
そして、βnは求められるアダマール係数の行列を示し、下記の(8)式に示すように、gnは2×2画素に対応する以下に説明する、サブ画素ブロック毎の各画素の差分値(すなわち、各サブ画素ブロック内の画素毎の第2の差分値)の行列に対応している。
【数14】
Figure 0003774201
【0051】
ここで、各画素とこの画素に対応する差分値との対応関係は、図2(e)と図3(b)とにより示されている。
また、以下の説明において、画素d(0,0)〜d(3,3)の画素値を、対応する部分の符号に対応させて、図2(d)に示すように画素値pn(x,y);n∈[0,3]、x,y∈[0,1](対応関係は図3(b))で表している。
すなわち、画素d(0,0)〜d(3,3)の画素値は、以下に示すように、対応するサブ画素ブロックS1,S2,S3,S4における各画素値の第2のDC値に対応している。
【0052】
このとき、第2段階アダマール符号化部7は、サブ画素ブロックS1,S2,S3,S4それぞれにおいて、各画素d(0,0),(0,1),(1,0),(1,1)、画素d(0,2),(0,3),(1,2),(1,3)、画素d(2,0),(2,1),(3,0),(3,1)、画素d(2,2),(2,3),(3,2),(3,3)の各第2のDC値と、元画像の画素d(0,0),(0,1),(1,0),(1,1)、画素d(0,2),(0,3),(1,2),(1,3)、画素d(2,0),(2,1),(3,0),(3,1)、画素d(2,2),(2,3),(3,2),(3,3)の各々の画素値との差分を演算(元画像の画素値から各画素の第2のDC値を減算、例えば、画素d(0,0)において元画像の画素値p0(0,0)から第2のDC値d0(0,0)を減算、これをd(0,0)〜d(3,3)までの画素に対して行う)し、演算結果を第2の差分値として、図2(e)における様に、それぞれサブ画素ブロック(S1〜S4)毎に対して、各画素毎に差分値en(0,0),…,en(1,1),n∈[0,3]として求め、この第2の差分値を用いて、以下に示す(9)式により第2段階目のアダマール変換を行う。
【0053】
ここで、kn,βn,gn,en(x,y)各々の添え字「n」は、各サブ画素ブロックの位置に対応している。例えば、図2(e)を例として示すと、「n=0」がサブ画素ブロックS1に対応し、「n=1」がサブ画素ブロックS2に対応し、「n=2」がサブ画素ブロックS3に対応し、「n=3」がサブ画素ブロックS4に対応している。
【0054】
そして、βnの行列の各要素βn(u,v)は、以下の(9)式により求められる。
【数15】
Figure 0003774201
ここで、2×2画素におけるアダマール変換係数hn(u,v)(x,y)は、図4(a)に示す各画素に対応した構成となっている(白が「−1」であり、黒が「+1」である)。ここで、図4(a)におけるアダマール変換係数hn(u,v)(x,y)の位置関係は、図4(b)に示している。
この(9)式におけるknの添え字「n」は、図2(e)と同様に、各サブ画素ブロック(S1〜S4)の位置に対応している。
【0055】
また、図4(a)に示す本発明のアダマール変換係数において、すでに述べた第1段階目のアダマール変換に対応した変換係数部分は従来の構成と同様なものの、第2段階目のアダマール変換に対応した部分はサブ画素ブロック(S1,S2,S3,S4)毎に対応するように構成されている。
すなわち、4×4画素からなる画素ブロックにおいて、図4(a)におけるグループAの4つ(A1〜A4において、A1がh0,0(x,y)、A2がh0,1(x,y),A3がh1,0(x,y)、A4がh1,1(x,y))である。
【0056】
ここで、アダマール変換係数h0,0(x,y)は、図4(a)に示すように全て黒であり、変換係数として全て「1」であり、全てのサブ画素ブロック差分値を加算したもの、すなわち元画像ブロックの各画素の画素値の平均値と、DC値との差分値に対応したものである。
この全てのサブ画素ブロック差分値を加算したものは、誤差を除いて「0」に等しいため、数値自身が符号化部1内部に保存されていない。
【0057】
また、図4(b)に示すn=0〜3の各図は、グループBにおける各々のサブ画素ブロック(2×2画素)に対応した、アダマール変換係数の組み合わせとなっている。
例えば、図2(b)の画素ブロックSにおいて、各画素に対する(8)式における変換係数の対応関係を確認すると、n=0(サブ画素ブロックS1)においてk0(u,v)(x,y),u,v,x,y∈[0,1]となり、n=1(サブ画素ブロックS2)においてk1(u,v)(x,y),u,v,x,y∈[0,1]となり、n=2(サブ画素ブロックS3)においてk2(u,v)(x,y),u,v,x,y∈[0,1]となり、n=3(サブ画素ブロックS4)においてk3(u,v)(x,y)、ここでu,v,x,y∈[0,1]となり、添え字「n」を除くと、各サブ画素ブロックにおいて、図4(a)におけるA1〜A4の対応と同様となる。
【0058】
ここで、アダマール変換係数k0(0,0)(x,y),k1(0,0)(x,y),k2(0,0)(x,y),k3(0,0)(x,y)、x,y∈[0,1]各々は、図4(b)で示されているように、全て黒であり、変換係数として全て「1」であり、全ての画素の差分値を加算したもの、すなわち、各サブ画素ブロックにおける画素値の平均値と、新たな第1のDC値との差分値に対応したものである。
この全ての画素の差分値を加算したものは、誤差を除いて「0」に等しいため、数値自身が符号化部1内部に保存されていない。
最終的に、第2段階アダマール符号化部7は、アダマール係数として、(9)式により、第2のアダマール係数βn(u,v)、n∈[0,3]、u,v∈[0,1]として演算し、量子化処理を行って出力する。
【0059】
しかしながら、例えば、サブ画素ブロックSn,n∈[0,3]における画素(n=0のときd(0,0),d(0,1),d(1,0),d(1,1)、n=1のときd(0,2),d(0,3),d(1,2),d(1,3)、n=2のときd(2,0),d(2,1),d(3,0),d(3,1)、n=3のときd(2,2),d(2,3),d(3,0),d(3,1))において、画素各々の画素値(n=0のときp0(0,0),p0(0,1),p0(1,0),p0(1,1)、n=1のときp1(0,0),p1(0,1),p1(1,0),p1(1,1)、n=2のときp2(0,0),p2(0,1),p2(1,0),p2(1,1)、n=3のときp3(0,0),p3(0,1),p3(1,0),p3(1,1)、すなわち元画像の画素値がpn(0,0),pn(0,1),pn(1,0),pn(1,1)、n∈[0,3]となる)と、各画素ブロックに対応する第2のDC値(n=0のときd0(0,0),d0(0,1),d0(1,0),d0(1,1)、n=1のときd1(0,0),d1(0,1),d1(1,0),d1(1,1)、n=2のときd2(0,0),d2(0,1),d2(1,0),d2(1,1)、n=3のときd3(0,0),d3(0,1),d3(1,0),d3(1,1)、すなわち画素単位の予測値がdn(0,0),dn(0,1),dn(1,0),dn(1,1)、n∈[0,3]となる)との各々の差分値(en(0,0),en(0,1),en(1,0),en(1,1),n∈[0,3])は、
n∈[0,3]として、
en(0,0)=pn(0,0)−dn(0,0)
en(0,1)=pn(0,1)−dn(0,1)
en(1,0)=pn(1,0)−dn(1,0)
en(1,1)=pn(1,1)−dn(1,1)
と求められる。
【0060】
そして、第1段階アダマール符号化部5と同様に、アダマール係数を求める式に、差分値を求める式を代入して、すなわち、(9)式を以下に示す(10)式として、第2段階アダマール符号化部7に設定することにより、差分の演算を組み合わせて合成演算とすることが可能となる。
また、第2段階アダマール符号化部7は、すでに述べた予測符号化の演算を行わないため、処理速度を向上させることができ、高速にアダマール係数を演算して得ることが可能となる。
【数16】
Figure 0003774201
【0061】
ここで、(10)式のアダマール変換の結果として、サブ画素グループS1における各画素毎の第2の差分値に対応する第2のアダマール係数β0(u,v)、u,v∈[0,1]を代表で検討してみる。
図4(a)のアダマール変換の基底に基づき行う。
β0(0,1)=(e0(0,0)−e0(0,1)+e0(1,0)−e0(1,1))/2
β0(1,0)=(e0(0,0)+e0(0,1)−e0(1,0)−e0(1,1))/2
β0(1,1)=(e0(0,0)−e0(0,1)−e0(1,0)+e0(1,1))/2
【0062】
そして、(10)式に各々差分値を求める式を代入させて、(9)式に対応させて、上記β0(0,1),β0(1,0),β0(1,1)を各々求めると、
Figure 0003774201
と、論理圧縮して、サブ画素ブロックS1の各画素(d(0,0),d(0,1),d(1,0),d(1,1))に対応する上記第2のアダマール係数β0(0,1),β0(1,0),β0(1,1)を、各々演算することが可能であることが判る。
【0063】
同様に、第2段階アダマール符号化部7は、他のサブ画素ブロックS2,S3,S4のアダマール係数βn(0,1),βn(1,0),βn(1,1),n∈[1,3]も論理圧縮して計算を行う。
このとき、第2段階アダマール符号化部7は、(10)式における元画像の画素値と、予測画素値とにおいて、pn(x,y)及びdn(x,y)の次数「x,y」は、図2(e)及び(8)式におけるen(x,y)のx及びyの位置に対応させて計算する。
【0064】
上述してきたように、サブ画素ブロックS1,S2,S3,S4各々に対応して、3つずつの変換のための基底が対応付けられており、各サブ画素ブロッ単位において独立してアダマール係数の演算が行えるため、画素ブロックにおける第1のアダマール係数の演算と同様に、サブ画素ブロック毎に4つの第2の差分値(en(0,0),en(0,1),en(1,0),en(1,1),n∈[0,3])を用い、3つの第2のアダマール係数βn(0,1),βn(1,0),βn(1,1),n∈[0,3]のみを生成することになる。
【0065】
この結果、本発明においては、第2のアダマール係数の演算において、第1のアダマール係数の演算と同様に、各サブ画素ブロック内の各画素に対応する第2の差分値のみ、すなわち4つの第2の差分値を用いての演算となるので、通常のアダマール変換における基底を使用する場合と異なり、大幅に演算量を削減することができる。
【0066】
このように、アダマール係数を求める式に、差分値を求める式を代入して、すなわち、(9)式を(10)式に変形して、第2段階アダマール符号化部7に設定しておくことにより、第2の差分値を求める演算と第2段階ACPの処理とを合成演算することができ、元画像の各サブ画素ブロックの画素値と、隣接するサブ画素ブロックにおける画素の画素値の平均値とのみで第2のアダマール係数を演算することが可能となる。
【0067】
このため、本願発明の画像処理装置においては、実質的に第2段階のACPの演算を省略することが可能となり、第2のアダマール係数の演算速度を向上させるとともに、ACP処理における除算に基づく誤差の発生を防止して符号の演算精度を向上、すなわち符号化する画像の再生時の再現性が向上する。
そして、最終的に(10)式により論理圧縮したアダマール係数α及びβn(n∈[0,3])を求める式を第2段階アダマール符号化部7に設定しておくことにより、各アダマール係数に対応した式に、サブ画素ブロックにおける各画素の画素値と、この画素ブロックにおける画素の画素値の平均値とを代入することにより、各画素の第2の差分値のアダマール係数を求めることができる。
【0068】
また、第2段階アダマール符号化部7は、量子化された第2のアダマール係数の逆量子化を行い、第2の差分値を再生し、再生した第2の差分値を、各部分に対応する第2のDC画素値に加算して、第2段階Hdm(アダマール変換)適用後画像(図1の2f)として、復号部2で復号されて出力される画像と同一な画像を再生して出力することもできる。
この第2のアダマール係数からの第2段階Hdm(アダマール変換)適用後画像の再生についての説明は、復号化部2における説明で行う。
【0069】
次に、復号化部2の動作を詳細に説明する。
DC画像復号部8は、入力されるDC符号に対して、逆量子化及びエントロピー復号化を行い、画素ブロック各々のDC値を求め、DC画像(図1の4b)を再生する。
第1段階アダマール復号化部10は、入力される符号化された第1のアダマール係数に対して、逆量子化及びエントロピー復号化を行い、第1のアダマール係数の復号(再生)を行う。
【0070】
ここで、この第1のアダマール係数に対して、以下に示す(11)式を用いて、逆アダマール変換を行うことにより、第1の差分値を復号(再生)する。
【数17】
Figure 0003774201
【0071】
すなわち、以下の(13)式のf'の示す再生されるサブ画素ブロックの各部分に対応する第1の差分値を、以下に示す(12)式を用いて演算して求める。
【数18】
Figure 0003774201
【数19】
Figure 0003774201
そして、サブ画素ブロックS1,S2,S3,S4に対応する差分値(S'(0,0),S'(0,1),S'(1,0),S'(1,1))は、符号化部1から入力される第1のアダマール係数α10,01,11に基づき、
S'(0,0)=(α10+α01+α11)/2
S'(0,1)=(−α10+α01−α11)/2
S'(1,0)=(α10−α01−α11)/2
S'(1,1)=(−α10−α01+α11)/2
の各式により求められる。
ここで、α00は、符号化部1の説明で述べたように、誤差を除いて「0」に等しいため、復号化部2に入力されない。
【0072】
これにより、第1段階ACP処理により求まる第1のDC値(SP0,0、SP0,1、SP1,0、SP1,1)に対して、以下に示す式のように第1の差分値を加算することで、各サブ画素ブロックの復号画素値(SC0,0、SC0,1、SC1,0、SC1,1)を求めることができる。
SC0,0=SP0,0+S'(0,0)
SC0,1=SP0,1+S'(0,1)
SC1,0=SP1,0+S'(1,0)
SC1,1=SP1,1+S'(1,1)
【0073】
しかしながら、復号化部2も符号化部1と同様に、ACPによる処理を削減するため、(12)式から直接各サブ画素ブロックの画素値を求めるようにするため、
以下に示す、第1のアダマール係数に逆ACP処理の項を加えた(14)式を検討する。
【数20】
Figure 0003774201
【0074】
この(14)式は、(5)式の第1のDC値(SPxy)の項(第1の差分値における第1のDC値)を左辺に移項した構成であり、すなわち、符号化部1から入力される第1のアダマール係数α01,10,11を示す各式
α01={(SH0,0−SH0,1+SH1,0−SH1,1)*2−(L−R)}/4
α10={(SH0,0−SH0,1+SH1,0−SH1,1)*2−(U−B)}/4
α11=(SH0,0−SH0,1+SH1,0−SH1,1)/2
を移項することにより、
α'01=α01+(L−R)/4=(SH0,0−SH0,1+SH1,0−SH1,1)*2
α'10=α10+(U−B)/4=(SH0,0−SH0,1+SH1,0−SH1,1)*2
α'11=α11=(SH0,0−SH0,1+SH1,0−SH1,1)*2
と表すことができる。
【0075】
また、復号されたサブ画素ブロックの画素値(SC0,0,SC0,1,SC1,0,SC1,1)と、第1の差分値S'(0,0),S'(0,1),S'(1,0),S'(1,1))と、第1のDC値(SP0,0、SP0,1、SP1,0、SP1,1)との関係は、
Figure 0003774201
の関係がある。
【0076】
この上記関係に基づき、元画像の各サブ画素ブロック(S1,S2,S3,S4)における画素の平均値(SH0,0,SH0,1,SH1,0,SH1,1)と、上記復号されたサブ画素ブロックの画素値(SC0,0,SC0,1,SC1,0,SC1,1)との関係は、(12)式より、
SC0,0=(α'01+α'10+α'11)/2=(3SH0,0−SH0,1−SH1,0−SH1,1)/4=SH0,0−S
SC0,1=(−α'01+α'10−α'11)/2=(3SH0,1−SH0,0−SH1,0−SH1,1)/4=SH0,1−S
SC1,0=(α'01−α'10−α'11)/2=(3SH1,0−SH0,0−SH0,1−SH1,1)/4=SH1,0−S
SC1,1=(−α'01−α'10+α'11)/2=(3SH1,1−SH0,0−SH0,1−SH1,0)/4=SH1,1−S
【0077】
したがって、求める元画像の各サブ画素ブロックの平均値(SH0,0,SH0,1,SH1,0,SH1,1)は以下に示す構成となる。
SH0,0=SC0,0+S
SH0,1=SC0,1+S
SH1,0=SC1,0+S
SH1,1=SC1,1+S
ここで、各復号されるサブ画素ブロックの画素値は、
Figure 0003774201
と求められる。
【0078】
結果的に、求める元画像の各サブ画素ブロックにおける画素の画素値の平均値(SH0,0,SH0,1,SH1,0,SH1,1)は以下に示す、アダマール係数及び交流予測成分の項を有する構成となる。
SH0,0=(α01+α10+α11)/2+(U−B+L−R)/8+S
SH0,1=(-α01+α10-α11)/2+(U−B−L+R)/8+S
SH1,0=(α01-α10-α11)/2+(−U+B+L−R)/8+S
SH1,1=(-α01-α10+α11)/2+(−U+B−L+R)/8+S
【0079】
この(12)式に対応したサブ画素ブロックにおける画素の画素値の平均値(SH0,0,SH0,1,SH1,0,SH1,1)を求める上述した式を第1段階アダマール復号化部10に設定しておくことにより、符号化部1からの各画素ブロックのDC値と、第1のアダマール係数とのみにより、元画像の各サブ画素ブロックの画素値の平均値を演算することが可能となる。
したがって、本発明の画像処理装置における復号化部1は、各画素ブロックのDC値から第1のDC値を再生するACP処理の演算と、この第1のDC値及び第1の差分値の加算処理の演算とを、合成演算とすることにより、実質的にACP処理の演算を省略することができ、ACP処理の演算による誤差の発生を防止するとともに、元画像の各サブ画素ブロックの画素値の平均値(第1段階Hdm適用後画像(図1の4d))を求める演算速度を向上させることができる。
【0080】
そして、各サブ画素ブロックにおける各画素の画素値の復号処理において、入力される第1段階Hdm適用後画像における各サブ画素ブロックに基づき、符号化部1と同様な式を用いた交流予測法(ACP処理)の演算により、サブ画素ブロックの各画素の第2のDC画素値を求める。
次に、符号化部1から入力される第2のアダマール係数により、以下に示す(15)式により第2の差分値を演算する。
【数21】
Figure 0003774201
ここで、第2の差分値の行列g'nは、以下の(16)式に表すものである。
【数22】
Figure 0003774201
そして、各画素値に対応する差分値e'n(x,y)、n∈[0,3]、x,y∈[0,1]は、下記に示す(17)式により求められる。このe'n(x,y)は、各々en(x,y)の位置に対応している。
【数23】
Figure 0003774201
さらに、サブ画素ブロックにおける各画素単位で得られた第2の差分値を、対応する部分の第2のDC画素値に加算して、第2段階Hdm適用後画像(図1の4f)として、すなわち再生画像として出力する。
【0081】
このとき、第2段階アダマール復号化部12は、第1段階アダマール復号化部10と同様に、入力される符号化された第2のアダマール係数を逆量子化及びエントロピー復号化を行い第2のアダマール係数β'n(u,v)、n∈[0,3]、u,v∈[0,1]の復号(再生)を行う。
ここで、この第2のアダマール係数に対して、上述した(15)式を用いて、逆アダマール変換を行うことにより、第2の差分値を復号(再生)する。
【0082】
そして、サブ画素ブロックにおける画素値、例えば、サブ画素ブロックS1に対応する第2の差分値(e'0(0,0),e'0(0,1),e'0(1,0),e'0(1,1))は、符号化部1から入力される第2のアダマール係数β'0(0,1),β'0(1,0),β'0(1,1)に基づき、
e'0(0,0)=(β'0(1,0)+β'0(0,1)+β'0(1,1))/2
e'0(0,1)=(−β'0(1,0)+β'0(0,1)−β'0(1,1))/2
e'0(1,0)=(β'0(1,0)−β'0(0,1)−β'0(1,1))/2
e'0(1,1)=(−β'0(1,0)−β'0(0,1)+β'0(1,1))/2
の各式により求められる。
【0083】
これにより、第2段階ACP処理により求まる第2のDC値(d0(0,0),d0(0,1),d0(1,0),d0(1,1))に対して、以下に示す式のように加算することで、各サブ画素ブロックの復号画素値(p0(0、0)、p0(0、1)、p0(1、0)、p0(1、1))を求めることができる。
p0(0、0)=d0(0,0)+e'0(0,0)
p0(0、1)=d0(0,1)+e'0(0,1)
p0(1、0)=d0(1,0)+e'0(1,0)
p0(1、1)=d0(1,1)+e'0(1,1)
【0084】
しかしながら、復号化部2も復号化部1と同様に、ACPによる処理を削減するため、(15)式を直接各サブ画素ブロックの画素値を求めるようにするため、第2段階アダマール復号化部12において、第1段階アダマール復号化部10と同様な構成として、以下に示す(18)式を用いることを検討する。
【数24】
Figure 0003774201
【0085】
第2段階アダマール復号化部12において、上記(18)式は、(10)式の第2のDC値(dn(x,y))の項(第2の差分値における第2のDC値)を左辺に移項した構成であり、すなわち、符号化部1から入力されるアダマール係数β0(0,1),β0(1,0),β0(1,1)を示す各式
β0(0,1)=(p0(0,0)−p0(0,1)+p0(1,0)−p0(1,1)/2 −(SP0,1−RP0,0)/4
β0(1,0)=(p0(0,0)+p0(0,1)−p0(1,0)−p0(1,1))/2 −(SP1,1−UP1,1)/4
β0(1,1)=(p0(0,0)−p0(0,1)−p0(1,0)+p0(1,1))/2
を移項することにより、
Figure 0003774201
と表すことができる。
【0086】
また、復号されたサブ画素ブロックにおける各画素の画素値(p0(0、0)、p0(0、1)、p0(1、0)、p0(1、1))と、第2の差分値(e'0(0,0),e'0(0,1),e'0(1,0),e'0(1,1))と、第2のDC値(d0(0,0),d0(0,1),d0(1,0),d0(1,1))との関係は、
Figure 0003774201
の関係がある。
【0087】
ここで、上記関係に基づき、第2のアダマール係数β'0(x,y)に対して、逆アダマール変換を施すことにより、サブ画素ブロックS1における画素の画素値の平均値(SH0,0)と、上記復号されたサブ画素ブロックS1における各画素の画素値(p0(0,0)、p0(0,1)、p0(1,0)、p0(1,1))との関係は、(12)式より、
Figure 0003774201
と表すことができる。
【0088】
したがって、求める元画像のサブ画素ブロックS1の各画素の画素値(p'0(0、0)、p'0(0、1)、p'0(1、0)、p'0(1、1))は以下に示す構成となる。
p0(0、0)=p'0(0、0)+SH0,0
p0(0、1)=p'0(0、1)+SH0,0
p0(1、0)=p'0(1、0)+SH0,0
p0(1、1)=p'0(1、1)+SH0,0
ここで、復号されるサブ画素ブロックS1における第2のアダマール係数β'0(x,y)に対する逆アダマール変換は、
Figure 0003774201
と展開できる。
【0089】
結果的に、求める元画像のサブ画素ブロックS1における画素の各画素値(p0(0、0)、p0(0、1)、p0(1、0)、p0(1、1))は以下に示す構成となる。
Figure 0003774201
ここでは、サブ画素ブロックにおける画素の画素値の再生(復号)に、代表としてサブ画素ブロックS1を用いて行った。
また、説明上、分かり易くするため、画素の画素値をpn(x,y)、n∈[0,3]、x,y∈[1,0]として、復号化前と復号化後とで同様な符号を用いている。
【0090】
すなわち、すでに述べたように、本発明におけるアダマール変換の基底、すなわち、図4(a)に示すアダマール変換の基底が、画素ブロック内のサブ画素ブロック各々で独立に行える構成としてある。
このため、各サブ画素ブロックのみに対応するアダマール係数αを演算することができ、各基底の組み合わせにおいて、各サブ画素ブロックで同様な構成の基底の組み合わせとなっているため、他のサブ画素ブロックS2,S3,S4においても、サブ画素ブロックS1と同様の処理により、各サブ画素ブロックにおける画素の画素値を演算することが可能である。
このとき、第2段階アダマール符号化部7は、(17)式及び(18)式において、n∈[0,3]のとき、アダマール係数β'n(x,y)及びアダマール変換係数kn(u,v)(x,y)を、各画素値の次数「x,y」各々において、図2(e)及び(8)式におけるen(x,y)のx及びyの位置に対応させて計算する。
【0091】
この(18)式に対応したサブ画素ブロックS1における各画素の画素値(SC00,SC01,SC10,SC11)を求める上述した式を第2段階アダマール復号化部12に設定しておくことにより、第1段階アダマール復号化部10からの各サブ画素ブロックの平均画素値と、第2のアダマール係数とのみにより、元画像のサブ画素ブロックにおける各画素の画素値を演算することが可能となる。
したがって、本発明の画像処理装置における復号化部1は、各サブ画素ブロックの第1のDC値から第2のDC値を再生するACP処理の演算と、この第2のDC値及び第2の差分値の加算処理の演算とを、合成演算とすることにより、実質的にACP処理の演算を省略することができ、ACP処理の演算による誤差の発生を防止するとともに、元画像のサブ画素ブロックの各画素の画素値(第2段階Hdm適用後画像(図1の4f))を求める演算速度を向上させることができる。
【0092】
上述したように、本発明による画像処理装置は、画素ブロックにおけるサブ画素ブロックの第1のDC値に対応する差分値S(x,y),x,y∈[0,1]より求める第1のアダマール変換において、元画像の画素値とサブ画素ブロック第1のDC画素値との第1の差分値をアダマール変換して、差分値としての情報量の多い低周波成分の低周波側の3個の第1のアダマール係数を抽出した後に、この第1の差分値を復号し第1のDC値に加えて、サブ画素ブロックの各画素の第2のDC値を求めた後に、第2のアダマール変換により各サブ画素ブロックの画素毎に第2の差分値を求め、この第2の差分値から第2のアダマール係数を求めるので、12個の第2のアダマール係数の情報量を削減することが出来る、ACP処理及びアダマール変換を1回ずつ行う1段階処理に比較して、第2の差分値のデータ量を減少させることが可能なため、1段階処理の差分値から全てのアダマール係数を求める場合に比較して、アダマール係数のデータ量を少なくすることができる。
【0093】
また、本発明による画像処理装置は、ACP処理を行うためのDC値と、このDC値に対してACP処理を行った後の第1及び第2のDC値及び元画像の差分値をアダマール係数として圧縮情報として出力するので、画像の再生処理に必要な情報量を少なくし、なにより、元画像との差分値をアダマール係数として出力するため、元画像に対して高い再現性を持たせることが可能である。
【0094】
また、本発明による画像処理装置は、上述したアダマール変換だけでなく、第1段階交流成分予測部4及び第2段階交流成分予測部6において、ACP法による画像処理も加わっているため、画素ブロックまたはサブ画素ブロックに対するアダマール変換による符号化に起因するブロックノイズを削減することができる。
さらに、本発明による画像処理装置は、第1段階交流成分予測部4,9,第2段階交流成分予測部6,11,第1段階アダマール符号化部5,第2段階アダマール符号化部7,第1段階アダマール復号化部9,第2段階アダマール復号化部12により、各々、加減算とビットシフトとの演算のみにより、上述した処理を行うことが可能なため、コンパクトな回路構成で実現でき、加えて、画素値の大きさに伴う圧縮または伸張における分岐処理もなく、所定の一定の周期で連続して処理を行うことが可能なため、高速な符号化及び復号化の処理が行える。
【0095】
また、さらに、本発明による画像処理装置は、符号化部1及び復号化部2の双方において、第1の差分値に関する演算及び第1段階ACP処理を合成演算し、かつ、第2の差分値に関する演算及び及び第2段階ACP処理を合成演算する構成としているため、ACP処理の効果を得ながら、実質的なACP処理の演算を行うことがなく、画質を向上及び演算処理速度の向上を合わせて実現している。加えて、本発明による画像処理装置は、符号化部1及び復号化部2を同一機器内に搭載する場合、第1段階アダマール符号化部5と第1段階アダマール復号化部9と、及び第2段階アダマール符号化部10と第2段階アダマール復号化部12とが、各々で行う演算が同様なため、この演算を同様の回路で処理することができ、回路のかなりの部分を共通化することができるので、処理構成のコンパクト化をさらに向上させることが可能である。
【0096】
ここで、アダマール変換係数が「1」または「−1」であるので、(5),(10),(14),(18)式における画素値やアダマール係数に対してのアダマール変換係数の積は、乗算ではなく符号の付加として計算する。
その他の演算において、基本となる演算は式から判るように加算であり、また量子化に対してはビットシフトにより演算を行う。
【0097】
次に、本発明の圧縮及び復号方法を用いた場合と、JPEGを用いた場合との比較を行った結果を説明する。
図5は、横軸が圧縮後のファイルサイズ(byte数)を示し、縦軸がPNSR(ピーク値対誤差比)を示しており、圧縮されたファイルサイズに対する画質の程度を示すグラフである。
実線が本発明の画像処理装置を使用した場合のファイルサイズとPNSRとの関係を示すものであり、波線がJPEGを使用した場合のファイルサイズとPNSRとの関係を示すものである。
【0098】
上述の画像データとしては、本発明及びJPEG双方において、画素の処理数が「Y:U:V=4:1:1」の割合で処理されている。
また、サンプルとして使用した画像は、図6に示す320×240の画素数の自然画であり、1画素あたり24ビットのカラー情報を有し、全データ量が230,456byteである。
この図5から判るように、同一のファイルサイズの場合で比較すると、本発明の画像処理装置により圧縮及び復号された画像の画質のほうが、JPEGの処理により圧縮及び復号された画像の画質より高い。
【0099】
次に、図7は、横軸が圧縮後のファイルサイズ(byte数)を示し、縦軸が時間を示しており、圧縮されたファイルサイズ対応して、復号処理にかかる時間を示すグラフである。
実線が本発明の画像処理装置を使用した場合のファイルサイズと復号処理にかかる時間との関係を示すものであり、波線がJPEGを使用した場合のファイルサイズと復号処理にかかる時間との関係を示すものである。
双方の復号処理に使用したハードウェアは、ゲームボーイアドバンス(登録商標)である。
そして、本発明の復号処理方法及びJPEGの復号処理のソフトウェアを、ゲームボーイアドバンス(登録商標)にそれぞれ移植して行い、ファイルサイズ毎に復号処理にかかる時間の測定を行った。
【0100】
上述の図7の画像データとしては、図5の場合と同様に、本発明及びJPEG双方において、画素の処理数が「Y:U:V=4:1:1」の割合で処理されている。
また、サンプルとして使用した画像は、図8に示す240×160の画素数の自然画であり、1画素あたり24ビットのカラー情報を有し、全データ量が115,256byteである。
この図7から判るように、同一のファイルサイズの場合で比較すると、本発明の画像処理装置による復号及び伸張の処理速度のほうが、JPEGにおける復号及び伸張の処理速度に対してより高速である。
【0101】
以上、本発明の一実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等があっても本発明に含まれる。
例えば、図1において、符号化部1及び復号化部2が同一の装置内に構成されて示されているが、符号化部1のみ、または、復号化部2のみで装置に組み込んで用いても良い。
【0102】
上述してきた画像の圧縮及び復号の処理は、デジタル動画に用いられるY,U,V(輝度=Y、赤の色差=U、青の色差=V)の画像データにより行うものである。RGB(Red=赤、Green=緑、Blue=青の階調を用いて画像を表現)形式の画像データに対しては、YUV形式の画像データに変換する必要がある。
また、本発明の画像処理装置は、 Y,U,Vに対して同様の処理を行い、画像の圧縮及び復号を行う。
【0103】
また、本発明の画像処理装置は、アダマール変換を複数段にわたって行うことを当然含んでおり、例えば、元画像を8×8画素から構成される画素ブロックに分割して、この画素ブロックに対応して、上述したよう2段階のアダマール変換と同様に、3段階のアダマール変換による画像処理を行っても良い。
例えば、8×8画素からなる画素ブロックの64画素に対して、計64個のアダマール係数が最終的に算出されるが、この内訳は、8×8画素単位でのDC値を1個、4×4画素単位のアダマール係数としてαu,v;u,v∈[0,1]により3個、2×2画素単位のアダマール係数としてβn(u,v);n∈[0,3],u,v∈[0,1]により12個、各画素単位のアダマール係数としてγ(m,n)(u,v);m,n∈[0,3]、u,v∈[0,1]により48個となる。
【0104】
他の処理については、符号化部1及び復号化部2に、新たに第3段階の交流成分予測部、アダマール符号化部、アダマール復号化部が加わり、第3のアダマール係数に対応した処理を行うのみで、他の処理は上述した2段階のアダマール係数に対する処理と同様である。
この3段階でアダマール変換を行うとき、第1段階及び第2段階では、2段階でアダマール変換を行う場合の1段階と同様な処理を各々行い、第3段階では2段階でアダマール変換を行う場合の1段階と同様な処理を行う。
【0105】
本発明の画像処理装置は、2段階で述べたように、画素ブロックに含まれる画素の数に対応するアダマール係数を求める段階を増やす毎に、各画素のDC値と元画像の画素値との差分を一回でアダマール変換する場合に比較して、アダマール係数全体の画像圧縮に必要な情報量を減少させることが可能となり、かつ、アダマール係数の変動量が減少する(アダマール係数を示すビット量が減少するこ)ことでエントロピー符号化における圧縮効率が向上する。
【0106】
次に、本発明の実施の形態によるコンピュータが実行するためのプログラムについて説明する。
図1における画像処理装置(画像処理システム)の動作におけるコンピュータシステムのCPUが実行するためのプログラムは、本発明によるプログラムを構成する。
このプログラムを格納するための記録媒体としては、光磁気ディスク、光ディスク、半導体メモリ、磁気記録媒体等を用いることができ、これらをROM、RAM、CD−ROM、フレキシブルディスク、メモリカード等に構成して用いてよい。
【0107】
また上記記録媒体は、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部のRAM等の揮発性メモリのように、一定時間プログラムを保持するものも含まれる。
また上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから伝送媒体を介して、あるいは伝送媒体中の伝送波により他のコンピュータシステムに伝送されるものであってもよい。上記伝送媒体とは、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体をいうものとする。
【0108】
また、上記プログラムは、前述した機能の一部を実現するためであってもよい。さらに、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【0109】
従って、このプログラムを図1のシステム又は装置とは異なるシステム又は装置において用い、そのシステム又は装置のコンピュータがこのプログラムを実行することによっても、上記実施の形態で説明した機能及び効果と同等の機能及び効果を得ることができ、本発明の目的を達成することができる。
【0110】
【発明の効果】
本発明による画像処理装置によれば、元画像の画素値とサブ画素ブロック第1のDC画素値との第1の差分値をアダマール変換して、差分値としての情報量の多い低周波成分を抽出した後に、この第1の差分値を復号し第1のDC値に加えて、サブ画素ブロックの各画素の第2のDC値を求めた後に、第2のアダマール変換により残り高周波側のアダマール係数を求めるので、残りの第2のアダマール係数の情報量を削減することが出来るため、ACP処理及びアダマール変換を1回ずつ行う1段階処理に比較して、第2の差分値のデータ量を減少させることが可能となり、1段階の差分値から全てのアダマール係数を求める場合に比較して、アダマール係数のデータ量を少なくし、JPEGと同等以上の画像品質により、画像の圧縮及び復号を行うことができる。
【0111】
また、本発明による画像処理装置によれば、アダマール変換だけでなくACP法による圧縮処理も加わっているため、アダマール変換をブロック単位で行うために現れやすいブロックノイズを削減することができる。
さらに、本発明による画像処理装置によれば、ACP法とアダマール変換処理のみを用いるため、加減算とビットシフトとの演算のみにより、上述した処理を行うことが可能なため、コンパクトな回路構成で実現でき、携帯端末等に搭載することが可能となり、加えて、画素値の大きさに伴う分岐処理もなく、所定の周期で連続して処理を行うことが可能なため、JPEGによる画像の圧縮及び復号に対して高速な圧縮及び復号の処理が行える。
【図面の簡単な説明】
【図1】 本発明の一実施形態による画像処理装置の構成例を示すブロック図である。
【図2】 図1に示す画像処理装置の動作例を説明するための概念図である。
【図3】 第1段階及び第2段階のACP法による画像処理を説明する概念図である。
【図4】 アダマール変換において使用するアダマール変換係数の一例を示す概念図である。
【図5】 本発明の画像処理装置及びJPEGによる圧縮及び復号の処理におけるファイルサイズとPNSRとの関係を示すグラフである。
【図6】 図5の処理に用いたサンプル画像。
【図7】 本発明の画像処理装置及びJPEGによる復号処理におけるファイルサイズと復号処理にかかる時間との関係を示すグラフである。
【図8】 図7の処理に用いたサンプル画像。
【符号の説明】
1 符号化部
2 復号化部
3 DC画像作成部
5 第1段階アダマール符号化部
7 第2段階アダマール符号化部
8 DC画像復号部
10 第1段階アダマール復号化部
12 第2段階アダマール復号化部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image processing apparatus that performs image processing to create image data (data structure for efficiently performing image compression) at a previous stage for image compression and expansion.
[0002]
[Prior art]
As a conventional image compression method, JPEG (Joint Photograph Expert Group) is well known.
Further, as seen in the transition from JPEG to JPEG2000, the processing system is made large-scale and complicated on the premise of mounting on high-performance hardware to improve image quality and encoding efficiency (for example, Patent Document 1). reference).
[0003]
[Patent Document 1]
JP 09-223226 A
[0004]
[Problems to be solved by the invention]
However, the above-described JPEG or the like has a limitation on the CPU clock frequency due to power consumption in a portable terminal such as a portable game machine, and the processing capacity of the CPU is lower than that of a general-purpose personal computer. If compression / decompression processing cannot be performed and the JPEG function is configured as a dedicated circuit, the dedicated circuit becomes large and complicated, and it is difficult to implement from the viewpoint of product cost.
[0005]
The object of the present invention is made under such a background, and performs compression / decompression processing that performs compression / decompression of images at high speed by simple calculation and obtains compression efficiency higher than JPEG and image quality after decompression. An object of the present invention is to provide an image processing apparatus having an image encoding function that can be performed.
[0006]
[Means for Solving the Problems]
The image processing apparatus of the present invention obtains a DC value that is an average value of pixel values in a pixel block of 4 × 4 pixels, performs an operation for obtaining an average pixel value of pixels in a sub-pixel block obtained by dividing the pixel block into four, An AC component prediction calculation is performed on the DC value to obtain a first DC pixel value of the sub pixel block, and a difference value between the average pixel value and the first DC pixel value is calculated for each corresponding sub pixel block. An image processing apparatus that performs an operation to obtain, obtains a Hadamard coefficient of the difference value, and outputs the DC value and the Hadamard coefficient as encoded data for image compression, and calculates the AC component prediction and the operation to obtain the difference value And a Hadamard coefficient is obtained based on the DC value and the average pixel value by a combining operation.
[0007]
In the image processing apparatus of the present invention, an equation for obtaining the Hadamard coefficient is
[Expression 4]
Figure 0003774201
It is characterized by being.
[0008]
The image processing apparatus of the present invention includes a DC image generation unit that averages pixel values of each pixel and generates and outputs a DC value in a pixel block composed of 4 × 4 pixels, and the pixel block. It is divided into 2 × 2 sub-pixel blocks, and an average pixel value for each sub-pixel block is obtained. From the DC values of the pixel block to be processed and other pixel blocks adjacent to the pixel block in the vertical and horizontal directions The calculation of the AC component prediction for obtaining the first DC pixel value for each 2 × 2 sub-pixel block, and the combination calculation of the first difference value between the average pixel value and the first DC pixel value are performed. The first difference value is subjected to 4 × 4 pixel Hadamard transformation to output a first Hadamard coefficient, and the inverse Hadamard transformation is performed to decode the first difference value. Based on the difference value of 1 A first-stage Hadamard encoding unit that reproduces and outputs an average pixel value of a sub-pixel block; an AC component prediction calculation that calculates a second DC pixel value for each 4 × 4 pixel from the average pixel value; An operation for obtaining a second difference value for each 4 × 4 pixel between the second DC pixel value and the pixel block is a synthesis operation, and the second difference value is calculated from the average pixel value and the pixel value of each pixel. And a second-stage Hadamard encoding unit that performs Hadamard transform and outputs a second Hadamard coefficient.
[0009]
In the image processing apparatus of the present invention, the expression of the synthesis operation in the second stage Hadamard encoding unit is
[Equation 5]
Figure 0003774201
It is characterized by being.
[0010]
The image processing apparatus according to the present invention obtains a predicted pixel value for each sub-pixel block obtained by dividing a pixel block into four based on the DC value based on a DC value that is an average value of pixel values in a pixel block of 4 × 4 pixels. The calculation of the AC component prediction and the calculation of inverse Hadamard transform of the Hadamard coefficient based on the average pixel value of the pixel in the sub-pixel block of the original image and the difference value of the predicted pixel value are combined, and the DC value and the Hadamard coefficient Thus, an average pixel value of pixels in each sub-pixel block is obtained.
[0011]
In the image processing apparatus of the present invention, the composition calculation formula is
[Formula 6]
Figure 0003774201
It is characterized by being.
[0012]
An image processing apparatus according to the present invention includes a DC image decoding unit that decodes a DC image of a pixel in an encoded 4 × 4 pixel block, a pixel block to be processed, and a pixel block adjacent to the pixel block vertically and horizontally Calculation of AC component prediction for obtaining a first DC pixel value for each 2 × 2 sub-pixel block from DC values of other pixel blocks, an average pixel value of pixels in the sub-pixel block of the original image, and the predicted pixel value A first-stage Hadamard decoding for calculating an average pixel value of pixels in each sub-pixel block from the DC value and the first Hadamard coefficient using a synthesis operation as an operation for performing inverse Hadamard transform on the first Hadamard coefficient based on the difference value of And an AC component prediction calculation for obtaining a second DC pixel value for each 4 × 4 pixel from the average pixel value, and a pixel value of the pixel in the sub-pixel block of the original image An operation for inverse Hadamard transform of the second Hadamard coefficient based on the difference value of the average pixel value is a synthesis operation, and a pixel value of a pixel in each sub-pixel block is obtained from the average pixel value and the second Hadamard coefficient. And a two-stage Hadamard decoding unit.
[0013]
DETAILED DESCRIPTION OF THE INVENTION
The image processing apparatus according to the present invention divides an original image into pixel blocks composed of a plurality of pixels (n × n pixels) and divides the original image into pixel blocks composed of 4 × 4 pixels, for example. An average value of the pixel values is calculated, and in this pixel block, a DC value of each DC image is obtained as an averaged pixel value of each pixel.
Then, the image processing apparatus according to the present invention uses the first value for each sub-pixel block (block of 2 × 2 pixels) from the calculation based on the first-stage ACP (AC component prediction) method based on the DC value. A DC pixel value is obtained, and a first difference value is obtained by subtracting the first DC pixel value from an average value of pixel values of pixels of the original image in the sub-pixel block. A Hadamard transform is performed, a part of the Hadamard coefficient is obtained, quantized, and output.
[0014]
Next, the image processing apparatus according to the present invention inverse quantizes the first Hadamard coefficient, performs inverse Hadamard transform, and reproduces the first difference value (information reproduced by the quantization is deteriorated). ).
Then, the image processing apparatus according to the present invention adds the first difference value to the corresponding pixel value of the sub-pixel lock (that is, the first DC pixel value), and the new first DC of the sub-DC image is added. Output as pixel value.
Next, the image processing apparatus according to the present invention performs a calculation based on the second-stage ACP method based on the new first DC pixel value of the DC image, and performs a second DC pixel value for each pixel. Ask for.
[0015]
The image processing apparatus according to the present invention obtains a second difference value between the pixel value of each pixel of the original image and the second DC pixel value (subtracts the second DC pixel value from the pixel value of the pixel). Then, the second Hadamard transform corresponding to the second difference value is performed, and the remaining Hadamard coefficients excluding the first Hadamard coefficient are obtained as the second Hadamard coefficients.
As described above, the image processing apparatus performs an operation for obtaining the Hadamard coefficient by dividing the difference value between the pixel value obtained by the ACP method in the two stages and the pixel value of the original image into two corresponding stages. ing.
[0016]
By doing in this way, the image processing apparatus performs the DC image processing in the first-stage Hadamard transform among the 16 Hadamard coefficients (one is a DC value) obtained from the 16 pixels. The DC value is generated by the above, three low frequency components are obtained as the first Hadamard coefficients, and the remaining 12 Hadamard coefficients are obtained in the second-stage Hadamard transform.
Then, the image processing apparatus performs entropy coding (for example, Huffman) after quantizing the obtained 15 Hadamard coefficients and DC values, and performs data compression and output.
[0017]
Thereby, in the first Hadamard transform, the image processing device Hadamard transforms the first difference value between the average value of the pixel values of the original image in the sub-pixel block range and the first DC pixel value, After extracting a low-frequency component with a large amount of information as a difference value, encoding by Hadamard transform, and further compressing and encoding data by quantization, the first difference value is dequantized and expanded, and then further inverted. Decoding by Hadamard transform to obtain a new first DC value in addition to the first DC value, obtaining a second DC value from the new first DC value, and then performing a second Hadamard transform The remaining high frequency side Hadamard coefficients are obtained by encoding.
[0018]
On the other hand, since the image processing apparatus of the present invention encodes image data by Hadamard transform using a rectangular function as a basis function, the code amount is reduced as compared with DCT using a sine function as a basis function. Since a square wave approximation is used at the time of decoding, high-accuracy encoding such as DCT (assuming an image in which the pixel values of adjacent pixels change smoothly) cannot be performed.
For this reason, the image processing apparatus of the present invention needs to be quantized from the viewpoint of compression thereafter, and when inverse Hadamard transform is performed after inverse quantization at the time of image decoding, DCT approximates smoothly (does not exist) The Hadamard transform has a sharp edge and easily opens a pixel value difference between pixels because block waves are more conspicuous than those with the same DCT code amount. Become.
[0019]
However, the image processing apparatus of the present invention extracts the Hadamard coefficient related to the low-frequency component by the first-stage Hadamard transform, and then adds the coefficient value to the first DC value and reflects it in the encoding as a new first DC value. The first DC value is compensated for the difference from the neighboring blocks by ACP, the difference from the pixel value of the original image is obtained, and the second-stage Hadamard transform is performed on the second difference value. Thus, since the image is restored with an image quality equal to or higher than that of DCT (comparison with JPEG will be described later) and the difference value from the pixel value of the original image is taken, the second stage processing (second stage ACP and In the second stage Hadamard transform), highly accurate encoding is possible.
[0020]
In addition, since the image processing apparatus of the present invention reflects the result of the first-stage process (first-stage ACP and first-stage Hadamard transform) Hadamard transform, the second-stage process (second-stage ACP and first-stage Hadamard transform). The amount of information to be encoded by the two-stage Hadamard transform) can be suppressed, and mosquito noise that appears at the time of high-frequency component restoration at high compression, such as DCT, can be greatly reduced by ACP processing.
Furthermore, in DCT, multiplication of real values is always required, but the encoding processing of the image processing apparatus according to the present invention is a combined method of ACP and Hadamard transform, and encoding is performed by adding / subtracting bit shifts to integer values. Since necessary operations can be realized, compression / decompression can be performed at a higher speed than DCT.
That is, the present invention relates to an image processing apparatus based on a stepwise combined image encoding algorithm of ACP and Hadamard transform.
[0021]
In addition, the image processing apparatus according to the present invention encodes the DC value for performing the ACP process, the first and second DC values after the ACP process is performed on the DC value, and the difference value between the original images. Since the Hadamard coefficient of the generated information is output, the amount of information necessary for image reproduction processing is reduced as described above, and the difference value from the original image is output as the Hadamard coefficient. (The image quality at the time of decoding, that is, the accuracy of reproduction) can be increased, and the original image can be highly reproducible with a small amount of information compared to DCT processing such as JPEG.
[0022]
Furthermore, since the image processing apparatus according to the present invention includes not only Hadamard transform but also component prediction processing from surrounding pixel blocks or sub-pixel blocks by ACP method, not only mosquito noise but also Hadamard transform is performed on a block basis. Therefore, block noise that tends to appear can be reduced.
Furthermore, since the image processing apparatus according to the present invention can perform the above-described processing only by addition / subtraction and bit shift operations, the image processing device can be realized with a compact processing configuration. Since there is no branch processing associated with the difference and processing can be performed continuously at a predetermined cycle, high-speed encoding and decoding (inverse operation of encoding) can be performed.
[0023]
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. FIG. 1 is a block diagram showing a configuration of an image processing apparatus according to an embodiment of the present invention.
In this figure, an image processing apparatus according to the present invention includes an encoding unit 1 that encodes an image using an ACP (alternating current component prediction) method and Hadamard transform based on a DC image obtained from an original image, and an encoding unit 1. The decoding unit 2 is configured to perform decoding on the basis of the DC image generated by the above and Hadamard coefficients.
[0024]
The encoding unit 1 performs at least a DC image creation unit 3 that generates a DC image from an original image, and performs a first-stage ACP process based on the DC image to obtain a first DC pixel value for each sub-pixel block. A first difference value between the first DC pixel value and the average value of the pixel values of the original image within the sub-pixel block range is obtained, and a first-stage Hadamard transform is performed on the first difference value. A first Hadamard coefficient (AC code) is obtained and output, and the first DC pixel value and the first difference value are added to generate and output a new first DC pixel value. The first-stage Hadamard encoding unit 5 performs a second-stage ACP process based on the new first DC pixel value, calculates a second DC pixel value corresponding to each pixel of the original image, and generates the original image. A second difference value between the pixel value of each pixel and the second DC pixel value is obtained, The second performs a Hadamard transformation in the second stage with respect to the difference value, and a second Hadamard coefficient second stage Hadamard encoding unit 7 for obtaining the (AC code) of.
[0025]
The decoding unit 2 decodes the encoded DC value (DC code) and decodes (reproduces) the DC image, and performs a first-stage ACP process based on the DC image. A first DC pixel value for each pixel block is obtained, an inverse Hadamard transform is performed on the input first Hadamard coefficient, a first difference value is obtained, and the first difference value and the first DC pixel are obtained. The first stage Hadamard decoding unit 10 that adds a value and generates a new first DC pixel value, and performs a second ACP process based on the new first DC pixel value, A second DC pixel value corresponding to each pixel is calculated, a second-stage inverse Hadamard transform is performed on the input second Hadamard coefficient, a second difference value is calculated, and this second difference is calculated. A second stage for adding the value and the second DC pixel value and decoding each pixel of the original image And a Hadamard decoding section 12.
[0026]
Next, an operation example of the image processing apparatus according to the embodiment will be described with reference to FIG.
The operation of the encoding unit 1 will be described in detail.
The DC image creation unit 3 divides the original image (2a in FIG. 1) into pixel blocks composed of a plurality of pixels (n × n pixels, for example, 4 × 4 pixels), and averages the pixels in this pixel block The value is obtained as a DC value, quantized and entropy encoded, and output as a DC code.
[0027]
A pixel block whose pixel value is indicated by this DC value is defined as a DC image.
That is, as shown in FIG. 2A, 4 × 4 pixels are used as pixel blocks, and as shown in FIG. 2B, each pixel block becomes a DC image by obtaining a DC value.
Here, the pixel block S includes pixels d (0,0) to pixels d (3,3) (these pixels are represented by pixel values pn (x, y); n∈ [0, 3] (corresponding to x, y ∈ [0, 1]), which is a DC image composed of 16 pixels (2b in FIG. 1), and is the average value of the pixel values of the 16 pixels. The value is a pixel value.
[0028]
The first stage AC component prediction unit 4 generates a sub-pixel block from the DC image based on the AC component prediction method.
Here, in order to obtain the first Hadamard coefficients α01, α10, α11, the first DC value is obtained from the DC value of the pixel block based on the AC component prediction method.
That is, in FIG. 3A, the DC value (pixel value as the sub-pixel block, that is, the first DC value) from the pixel block S to the sub-pixel blocks S1, S2, S3, and S4 (first-stage ACP applied image 2c). Value) is predicted (generated) by the following AC component prediction calculation, the first DC value as the DC value of each of the sub-pixel blocks, together with the DC value of the pixel block S, for the pixel block S The pixel block (DC image) U (upper part), L (left part), R (right part), and B (lower part) adjacent to each other in the vertical and horizontal directions are expressed by the following equations. (Here, the DC value of each pixel block uses the same character as the name of each pixel block.)
SP0,0 = S + (U + L−B−R) / 8... First DC value of the sub-pixel block S1
SP0,1 = S + (U + R−B−L) / 8... First DC value of sub-pixel block S2
SP1,0 = S + (B + L−U−R) / 8... First DC value of the sub-pixel block S3
SP1,1 = S + (B + R−UL) / 8... First DC value of the sub-pixel block S4
[0029]
The first-stage Hadamard encoding unit 5 corresponds to each of the sub-pixel blocks S1, S2, S3, and S4, and the original image pixels d (0,0), (0,1), (1,0). , (1,1), pixels d (0,2), (0,3), (1,2), (1,3) and pixels d (2,0), (2,1), ( 3,0), (3,1) and the average value of the pixel values of each of the four pixels of pixel d (2,2), (2,3), (3,2), (3,3) Is output as an average pixel value.
The first-stage Hadamard encoding unit 5 responds from the first DC values (SP0,0, SP0,1, SP1,0, SP1,1) of the sub-pixel blocks S1, S2, S3, S4. The average pixel value of the pixels is subtracted to calculate a first difference value in each sub-pixel block, and a first-stage Hadamard transform is performed on the first difference value.
[0030]
The first-stage Hadamard encoding unit 5 regards the configuration of the sub-pixel block as 2 × 2 pixels as shown in the following equation (1), and the Hadamard of the first difference value corresponding to the 2 × 2 sub-pixel block: Perform conversion.
[Expression 7]
Figure 0003774201
In this equation (1), H is a Hadamard transform coefficient matrix used for Hadamard transform, and has the structure of the following equation (2).
[Equation 8]
Figure 0003774201
H T Is a transposed matrix for H, which is the same as the structure of equation (2).
[0031]
Α indicates a matrix of calculated Hadamard coefficients, and f corresponds to a difference value of each pixel described below corresponding to 2 × 2 pixels (that is, a first difference value of each sub-pixel block). .
Each element αu, v of the matrix of α is obtained by the following equation (3).
[Equation 9]
Figure 0003774201
Here, s (x, y) is the value of each first difference value corresponding to the sub-pixel block, and the conversion coefficient hu, v (x, y) is also provided corresponding to the sub-pixel block. Yes.
[0032]
The transform coefficient hu, v (x, y) in the Hadamard transform in the 2 × 2 sub-pixel block corresponds to the four transform coefficients in the upper left part shown in FIG. 4A (white is “−1”). And black is “+1”). Here, the positional relationship of the transform coefficients hu, v (x, y) corresponding to each of the sub-pixel blocks S1, S2, S3, S4 (in the four transform coefficients in the upper left part shown in FIG. 4A) is shown in FIG. This corresponds to the positional relationship indicated by x, y of s (x, y) shown in 2 (c) (here, only the positional relationship of the conversion coefficients hu, v (x, y) is shown). .
[0033]
Moreover, the matrix of f has the structure of the following (4) Formula.
[Expression 10]
Figure 0003774201
After the first-stage ACP, the pixel values of the pixels d (0,0) to d (3,3) are assigned to the subpixel blocks to which they belong, that is, the corresponding subpixel blocks S1, S2, S3, S4. Corresponds to a DC value of 1.
[0034]
At this time, the first-stage Hadamard encoding unit 5 obtains the Hadamard coefficients α1, α2, α3 corresponding to the pixel block S excluding the DC value and the second Hadamard coefficient generated by the second-stage Hadamard transform. First difference values (s (0,0), s (0,1), s (1,0), s (1,1)) corresponding to the pixel blocks S1, S2, S3, and S4, respectively. , From the average pixel value (SH0,0) of the pixels d (0,0), (0,1), (1,0), (1,1) of the original image, the first DC value ( SP0,0) is subtracted from the average pixel value (SH0,1) of pixels d (0,2), (0,3), (1,2), (1,3) of the original image, and the sub-pixel block S2 The first DC value (SP0,1) is subtracted, and the average pixel values (SH1,1) of the pixels d (2,0), (2,1), (3,0), (3,1) of the original image are subtracted. 0) is subtracted from the first DC value (SP1,0) of the sub-pixel block S3, and pixels d (2,2), (2,3), (3,2), (3,3) of the original image From the average pixel value (SH1,1) of the first sub-pixel block S4 Obtained by subtracting the DC value (SP1,1).
[0035]
That is, in this first Hadamard transform, Hadamard coefficients α1, α2, α3 corresponding to the pixel block S in the 4 × 4 pixel Hadamard transform (low frequency side) are converted into 2 × 2 average pixels (SH0,0, (SH0,1, SH1,0, SH1,1) and a difference value between the 2 × 2 first DC values (SP0,0, SP0,1, SP1,0, SP1,1).
[0036]
The Hadamard coefficients α01, α10, and α11 obtained by the equation (3) are quantized by the first-stage Hadamard encoding unit 5 and output as the first Hadamard coefficients.
[0037]
However, when the first difference value is obtained in order to calculate the first Hadamard coefficient, the average pixel values (SH0,0, SH0,1, SH1, each of the sub-pixel blocks S1, S2, S3, S4) are calculated. 0, SH1,1) and the first DC value (SP0,0, SP0,1, SP1,0, SP1,1) corresponding to each pixel block, each difference value (S (0,0), S (0,1), S (1,0), S (1,1))
S (0,0) = SH0,0−SP0,0
S (0,1) = SH0,1−SP0,1
S (1,0) = SH1,0−SP1,0
S (1,1) = SH1,1-SP1,1
It is expressed.
[0038]
Here, the result of the Hadamard transform of equation (3) is
α01 = (S (0,0) −S (0,1) + S (1,0) −S (1,1)) / 2
α10 = (S (0,0) + S (0,1) −S (1,0) −S (1,1)) / 2
α11 = (S (0,0) −S (0,1) −S (1,0) + S (1,1)) / 2
As a Hadamard coefficient.
[0039]
Then, by substituting the equation for obtaining the difference value between the average pixel value and the first DC value into the equation of α01, the equations for obtaining the respective Hadamard coefficients are as follows:
Figure 0003774201
And can be logically compressed, as well
α10 = {(SH0,0−SH0,1 + SH1,0−SH1,1) * 2− (U−B)} / 4
α11 = (SH0,0−SH0,1 + SH1,0−SH1,1) / 2
And the items related to the prediction encoding calculation are canceled out, and the DC value of the two terms is subtracted for α01 and α10, and the items related to the prediction encoding calculation (result of the prediction encoding) are all about α11 You can see that it is gone.
[0040]
Thus, by substituting the equation for obtaining the first difference value into the equation for obtaining the Hadamard coefficient, that is, by transforming equation (3) into equation (5) shown below, It is possible to perform a composite operation in combination with the one-step ACP processing operation, prevent occurrence of calculation errors in the calculation portion of predictive coding (ACP processing) and Hadamard transform, and improve the calculation accuracy of the Hadamard coefficient to be output. It becomes possible to improve.
[0041]
At this time, it is possible to further improve the calculation accuracy of the Hadamard coefficient to be output by adopting a calculation method in which the calculation is performed using a formula obtained by doubling the synthesis operation and then bit-shifting at a time by subsequent quantization. Become.
Further, since the first-stage Hadamard encoding unit 5 does not perform the above-described prediction encoding calculation, the first-stage Hadamard encoding unit 5 can improve the processing speed and calculate the Hadamard coefficients at high speed.
[Expression 11]
Figure 0003774201
[0042]
Then, as described above, by setting the equations for obtaining the Hadamard coefficients α01, 10, 11 logically compressed by the equation (5) in the first-stage Hadamard encoding unit 5, the equations corresponding to the Hadamard coefficients are obtained. The Hadamard coefficient of the first difference value of each pixel can be obtained by substituting the average value of the pixel values of each pixel in the sub-pixel block and the DC value of the predetermined pixel block of each Hadamard coefficient.
[0043]
Further, the first-stage Hadamard encoding unit 5 performs inverse quantization of the quantized first Hadamard coefficient, further performs inverse Hadamard transform, reproduces the first difference value, and reproduces the reproduced first difference value. Based on (S (0,0), S (0,1), S (1,0), S (1,1)), the average value of the pixel values in each sub-pixel block, that is, the first stage Hdm (Hadamard Conversion) The image after application (2d in FIG. 1) is reproduced.
The reproduction of the image after application of the first stage Hdm (Hadamard transform) from the first Hadamard coefficient will be described in the description of the decoding unit 2.
The information of the first difference value reproduced here is degraded when quantized.
[0044]
Next, twelve Hadamard coefficients βn (u, v), n∈ [0,3], u, v∈ [0,1] corresponding to each sub-pixel block (Hadamard coefficients of the second difference value) The calculation will be examined in the same manner as in the case of the Hadamard coefficients α01, α10, α11 corresponding to the pixel block described above.
In order to obtain the Hadamard coefficient of the second difference value, it is necessary to obtain a second DC value for subtraction from each pixel value.
[0045]
Then, in the first-stage Hadamard encoding unit 5, new first DC values (that is, pixel values) of the sub-pixel blocks S1, S2, S3, and S4 of the already obtained first-stage Hdm applied image are obtained. Average values SG0,0, SG0,1, SG1,0, SG1,1) and first DC pixel values of subpixel blocks adjacent to each subpixel block in the vertical and horizontal directions (these are also images after applying the first stage Hdm) Of the sub-pixel blocks S1, S2, S3, and S4), an AC component prediction calculation is performed, and each pixel d (0,0),..., (3,3 ) Find each second DC pixel value dn (x, y) to dn (x, y), x, yε [0,1], nε [0,3].
[0046]
Hereinafter, SG0,0, SG0,1, SG1,0, SG1,1 will be referred to as SP0,0, SP0,1, SP1,0, SP1,1 as new DC values for the sake of simplicity. (Average pixel values of sub-pixel blocks S1, S2, S3, and S4) (the same processing is performed for the first DC values of other sub-pixel blocks).
Here, in the calculation of the second-stage AC component, for example, the second DC value d0 (0) of each of the pixels d (0,0) to d (1,1) in the sub-pixel block S1 shown in FIG. , 0), d0 (0,1), d0 (1,0), d0 (1,1) are expressed by the following formula based on the first DC value.
d0 (0,0) = SP0,0 + (UP1,0 + LP0,1−SP1,0−SP0,1) / 8
d0 (0,1) = SP0,0 + (UP1,0 + SP0,1−SP1,0−LP0,1) / 8
d0 (1,0) = SP0,0 + (SP1,0 + LP0,1−UP1,0−SP0,1) / 8
d0 (1,1) = SP0,0 + (SP1,0 + SP0,1−UP1,0−LP0,1) / 8
[0047]
Similarly, in the calculation of the second-stage AC component, the second DC pixel value of each pixel in the other remaining subpixel blocks S2 to S4 is calculated, and the second value of each pixel in the subpixel blocks S1 to S4 is calculated. DC pixel values are represented.
・ Each pixel of sub-pixel block S2
d1 (0,0) = SP0,1 + (UP1,1 + SP0,0−SP1,1−RP0,0) / 8
d1 (0,1) = SP0,1 + (UP1,1 + RP0,0−SP1,1−SP0,0) / 8
d1 (1,0) = SP0,1 + (SP1,1 + SP0,0−UP1,1−RP0,0) / 8
d1 (1,1) = SP0,1 + (SP1,1 + RP0,0−UP1,1−SP0,0) / 8
・ Each pixel of sub-pixel block S3
d2 (0,0) = SP1,0 + (SP0,0 + LP1,1−SB0,0−SP1,1) / 8
d2 (0,1) = SP1,0 + (SP0,0 + SP1,1−SB0,0−LP1,1) / 8
d2 (1,0) = SP1,0 + (SB0,0 + LP1,1-SP0,0-SP1,1) / 8
d2 (1,1) = SP1,0 + (SB0,0 + SP1,1-SP0,0-LP1,1) / 8
・ Each pixel of sub-pixel block S4
d3 (0,0) = SP1,1 + (SP0,1 + SP1,0−SB0,1−RP1,0) / 8
d3 (0,1) = SP1,1 + (SP0,1 + RP1,0−SB0,1−SP1,0) / 8
d3 (1,0) = SP1,1 + (SB0,1 + SP1,0−SP0,1−RP1,0) / 8
d3 (1,1) = SP1,1 + (SB0,1 + RP1,0−SP0,1−SP1,0) / 8
[0048]
The second-stage Hadamard encoding unit 7 subtracts the pixel value of the corresponding pixel from the second DC value of each pixel of the sub-pixel blocks S1, S2, S3, and S4, and outputs the second corresponding to each pixel. The second difference Hadamard transform is performed on the second difference value.
[0049]
The second-stage Hadamard encoding unit 7 performs Hadamard transform on the second difference value for every 2 × 2 pixels in each sub-pixel block in the following equation (6).
[Expression 12]
Figure 0003774201
In this equation (6), Kn is a Hadamard transform coefficient matrix used for Hadamard transform and has the structure of the following equation (7).
[Formula 13]
Figure 0003774201
[0050]
Βn represents a matrix of Hadamard coefficients to be obtained. As shown in the following equation (8), gn corresponds to 2 × 2 pixels, which will be described below. , Corresponding to a matrix of second difference values for each pixel in each sub-pixel block).
[Expression 14]
Figure 0003774201
[0051]
Here, the correspondence between each pixel and the difference value corresponding to this pixel is shown in FIG. 2 (e) and FIG. 3 (b).
In the following description, the pixel values of the pixels d (0,0) to d (3,3) are made to correspond to the codes of the corresponding portions, and the pixel value pn (x , y); nε [0,3], x, yε [0,1] (corresponding relationship is shown in FIG. 3B).
That is, the pixel values of the pixels d (0,0) to d (3,3) are set to the second DC values of the pixel values in the corresponding sub-pixel blocks S1, S2, S3, and S4 as shown below. It corresponds.
[0052]
At this time, the second-stage Hadamard encoding unit 7 in each of the sub-pixel blocks S1, S2, S3, and S4, each pixel d (0,0), (0,1), (1,0), (1, 1), pixel d (0,2), (0,3), (1,2), (1,3), pixel d (2,0), (2,1), (3,0), ( 3,1), pixels d (2,2), (2,3), (3,2), (3,3), and the original image pixel d (0,0), (0,1), (1,0), (1,1), pixel d (0,2), (0,3), (1,2), (1,3), pixel d (2,0 ), (2,1), (3,0), (3,1), each pixel value of pixel d (2,2), (2,3), (3,2), (3,3) (Subtract the second DC value of each pixel from the pixel value of the original image, for example, the second DC value from the pixel value p0 (0,0) of the original image at the pixel d (0,0)) d0 (0,0) is subtracted and this is performed for the pixels from d (0,0) to d (3,3)), and the result of the operation is used as the second difference value in FIG. Similarly, for each sub-pixel block (S1 to S4), the difference value en (0,0),. n (1, 1), determined as n? [0, 3], using the second difference value, performs Hadamard transform of the second stage by shown below Formula (9).
[0053]
Here, the subscript “n” of kn, βn, gn, en (x, y) corresponds to the position of each sub-pixel block. For example, referring to FIG. 2E, “n = 0” corresponds to the sub-pixel block S1, “n = 1” corresponds to the sub-pixel block S2, and “n = 2” corresponds to the sub-pixel block. Corresponding to S3, “n = 3” corresponds to the sub-pixel block S4.
[0054]
Then, each element βn (u, v) of the matrix of βn is obtained by the following equation (9).
[Expression 15]
Figure 0003774201
Here, the Hadamard transform coefficient hn (u, v) (x, y) in 2 × 2 pixels has a configuration corresponding to each pixel shown in FIG. 4A (white is “−1”). Black is “+1”). Here, the positional relationship of the Hadamard transform coefficients hn (u, v) (x, y) in FIG. 4 (a) is shown in FIG. 4 (b).
The subscript “n” of kn in the equation (9) corresponds to the position of each sub-pixel block (S1 to S4), as in FIG.
[0055]
Further, in the Hadamard transform coefficient of the present invention shown in FIG. 4A, the transform coefficient portion corresponding to the first-stage Hadamard transform described above is the same as the conventional configuration, but the second-stage Hadamard transform is used. The corresponding part is configured to correspond to each sub-pixel block (S1, S2, S3, S4).
That is, in a pixel block composed of 4 × 4 pixels, four groups A in FIG. 4A (in A1 to A4, A1 is h0,0 (x, y) and A2 is h0,1 (x, y). , A3 is h1,0 (x, y), and A4 is h1,1 (x, y)).
[0056]
Here, the Hadamard transform coefficients h0,0 (x, y) are all black as shown in FIG. 4A, and are all “1” as transform coefficients, and all sub-pixel block difference values are added. Corresponding to the difference value between the average value of the pixel values of each pixel of the original image block and the DC value.
Since the sum of all the sub-pixel block difference values is equal to “0” except for errors, the numerical value itself is not stored in the encoding unit 1.
[0057]
Each diagram of n = 0 to 3 shown in FIG. 4B is a combination of Hadamard transform coefficients corresponding to each sub-pixel block (2 × 2 pixels) in the group B.
For example, in the pixel block S of FIG. 2B, when the correspondence relationship of the conversion coefficient in the equation (8) for each pixel is confirmed, k0 (u, v) (x, y) at n = 0 (sub-pixel block S1). ), U, v, x, y ∈ [0, 1], and when n = 1 (sub-pixel block S2), k 1 (u, v) (x, y), u, v, x, y ∈ [0, 1], and n = 2 (subpixel block S3), k2 (u, v) (x, y), u, v, x, y∈ [0,1], and n = 3 (subpixel block S4) K3 (u, v) (x, y), where u, v, x, y∈ [0,1], and when subscript “n” is removed, in each sub-pixel block, FIG. This is the same as the correspondence of A1 to A4.
[0058]
Here, Hadamard transform coefficients k0 (0,0) (x, y), k1 (0,0) (x, y), k2 (0,0) (x, y), k3 (0,0) (x , y), x, y∈ [0, 1], as shown in FIG. 4B, all are black, all are “1” as conversion coefficients, and the difference values of all pixels In other words, corresponding to the difference value between the average value of the pixel values in each sub-pixel block and the new first DC value.
Since the sum of the difference values of all the pixels is equal to “0” except for the error, the numerical value itself is not stored in the encoding unit 1.
Finally, the second-stage Hadamard encoding unit 7 uses the second Hadamard coefficient βn (u, v), n∈ [0,3], u, v∈ [0 as the Hadamard coefficient according to the equation (9). , 1], quantize, and output.
[0059]
However, for example, pixels in the sub-pixel block Sn, nε [0,3] (when n = 0, d (0,0), d (0,1), d (1,0), d (1,1 ), When n = 1, d (0,2), d (0,3), d (1,2), d (1,3), when n = 2, d (2,0), d (2 , 1), d (3,0), d (3,1), when n = 3, d (2,2), d (2,3), d (3,0), d (3,1) ), The pixel value of each pixel (p0 (0,0), p0 (0,1), p0 (1,0), p0 (1,1) when n = 0, p1 (0 , 0), p1 (0,1), p1 (1,0), p1 (1,1), when n = 2, p2 (0,0), p2 (0,1), p2 (1,0) , P2 (1,1), when n = 3, p3 (0,0), p3 (0,1), p3 (1,0), p3 (1,1), that is, the pixel value of the original image is pn ( 0,0), pn (0,1), pn (1,0), pn (1,1), n∈ [0,3]) and the second DC value corresponding to each pixel block ( d0 (0,0), d0 (0,1), d0 (1,0), d0 (1,1) when n = 0, d1 (0,0), d1 (0,1) when n = 1 ), D1 (1,0), d1 (1,1), and when n = 2, d2 (0,0), d2 (0,1), d2 (1 , 0), d2 (1,1), when n = 3, d3 (0,0), d3 (0,1), d3 (1,0), d3 (1,1), that is, a predicted value in pixel units Are dn (0,0), dn (0,1), dn (1,0), dn (1,1), n∈ [0,3]) (en (0, 0), en (0,1), en (1,0), en (1,1), n∈ [0,3])
As n∈ [0,3],
en (0,0) = pn (0,0) −dn (0,0)
en (0,1) = pn (0,1) −dn (0,1)
en (1,0) = pn (1,0) −dn (1,0)
en (1,1) = pn (1,1) −dn (1,1)
Is required.
[0060]
Then, similarly to the first-stage Hadamard encoding unit 5, the expression for obtaining the difference value is substituted into the expression for obtaining the Hadamard coefficient, that is, the expression (9) is expressed as the following expression (10), By setting the Hadamard encoding unit 7, it is possible to combine the difference operations into a composite operation.
Further, since the second-stage Hadamard encoding unit 7 does not perform the above-described prediction encoding calculation, the processing speed can be improved, and the Hadamard coefficient can be calculated and obtained at high speed.
[Expression 16]
Figure 0003774201
[0061]
Here, as a result of the Hadamard transform of Equation (10), the second Hadamard coefficients β0 (u, v), u, v∈ [0, corresponding to the second difference value for each pixel in the sub-pixel group S1. Let's consider 1] as a representative.
This is performed based on the basis of the Hadamard transform in FIG.
β0 (0,1) = (e0 (0,0) −e0 (0,1) + e0 (1,0) −e0 (1,1)) / 2
β0 (1,0) = (e0 (0,0) + e0 (0,1) −e0 (1,0) −e0 (1,1)) / 2
β0 (1,1) = (e0 (0,0) −e0 (0,1) −e0 (1,0) + e0 (1,1)) / 2
[0062]
Then, by substituting the respective equations for obtaining the difference values into the equation (10) and corresponding to the equation (9), the above β0 (0,1), β0 (1,0), β0 (1,1) When asked
Figure 0003774201
And the second compression unit corresponding to each pixel (d (0,0), d (0,1), d (1,0), d (1,1)) of the sub-pixel block S1. It can be seen that the Hadamard coefficients β0 (0,1), β0 (1,0), β0 (1,1) can be respectively calculated.
[0063]
Similarly, the second stage Hadamard encoding unit 7 performs Hadamard coefficients βn (0,1), βn (1,0), βn (1,1), n∈ [of other subpixel blocks S2, S3, S4. 1,3] is also logically compressed and calculated.
At this time, the second-stage Hadamard encoding unit 7 uses the order “x, y” of pn (x, y) and dn (x, y) in the pixel value of the original image and the predicted pixel value in the equation (10). "Is calculated in correspondence with the x and y positions of en (x, y) in the equations (e) and (8) of FIG.
[0064]
As described above, three transform bases are associated with each of the sub-pixel blocks S1, S2, S3, and S4, and the Hadamard coefficient is independently determined in each sub-pixel block unit. Since the calculation can be performed, as in the calculation of the first Hadamard coefficient in the pixel block, four second difference values (en (0,0), en (0,1), en (1, 0), en (1,1), n∈ [0,3]), and three second Hadamard coefficients βn (0,1), βn (1,0), βn (1,1), n Only ∈ [0,3] will be generated.
[0065]
As a result, in the present invention, in the calculation of the second Hadamard coefficient, as in the calculation of the first Hadamard coefficient, only the second difference value corresponding to each pixel in each sub-pixel block, that is, the four first Since the calculation is performed using the difference value of 2, unlike the case of using the basis in the normal Hadamard transform, the calculation amount can be greatly reduced.
[0066]
In this way, the formula for obtaining the difference value is substituted into the formula for obtaining the Hadamard coefficient, that is, the formula (9) is transformed into the formula (10) and set in the second-stage Hadamard encoding unit 7. Thus, the calculation for obtaining the second difference value and the second-stage ACP process can be combined to calculate the pixel value of each sub-pixel block of the original image and the pixel value of the pixel in the adjacent sub-pixel block. It is possible to calculate the second Hadamard coefficient only with the average value.
[0067]
For this reason, in the image processing apparatus of the present invention, it is possible to substantially omit the second-stage ACP calculation, improve the calculation speed of the second Hadamard coefficient, and increase the error due to the division in the ACP process. Is prevented and the calculation accuracy of the code is improved, that is, the reproducibility of the image to be encoded is improved.
And finally, the Hadamard coefficients α and βn (n∈ [0,3]) logically compressed by the expression (10) are set in the second-stage Hadamard encoding unit 7 so that each Hadamard coefficient By substituting the pixel value of each pixel in the sub-pixel block and the average value of the pixel values of this pixel block into the formula corresponding to, the Hadamard coefficient of the second difference value of each pixel can be obtained. it can.
[0068]
The second-stage Hadamard encoding unit 7 performs inverse quantization on the quantized second Hadamard coefficient, reproduces the second difference value, and corresponds the reproduced second difference value to each part. In addition to the second DC pixel value, the second stage Hdm (Hadamard transform) applied image (2f in FIG. 1) is reproduced as the same image as the image decoded and output by the decoding unit 2. It can also be output.
The description of the reproduction of the image after application of the second stage Hdm (Hadamard transform) from the second Hadamard coefficient will be given in the description of the decoding unit 2.
[0069]
Next, the operation of the decoding unit 2 will be described in detail.
The DC image decoding unit 8 performs inverse quantization and entropy decoding on the input DC code, obtains the DC value of each pixel block, and reproduces the DC image (4b in FIG. 1).
The first-stage Hadamard decoding unit 10 performs inverse quantization and entropy decoding on the input encoded first Hadamard coefficient, and decodes (reproduces) the first Hadamard coefficient.
[0070]
Here, the first difference value is decoded (reproduced) by performing inverse Hadamard transform on the first Hadamard coefficient using the following equation (11).
[Expression 17]
Figure 0003774201
[0071]
That is, the first difference value corresponding to each part of the sub-pixel block to be reproduced indicated by f ′ in the following equation (13) is calculated using the following equation (12).
[Formula 18]
Figure 0003774201
[Equation 19]
Figure 0003774201
The difference values (S ′ (0,0), S ′ (0,1), S ′ (1,0), S ′ (1,1)) corresponding to the sub-pixel blocks S1, S2, S3, S4) Is based on the first Hadamard coefficients α10, 01, 11 input from the encoding unit 1,
S ′ (0,0) = (α10 + α01 + α11) / 2
S ′ (0,1) = (− α10 + α01−α11) / 2
S ′ (1,0) = (α10−α01−α11) / 2
S ′ (1,1) = (− α10−α01 + α11) / 2
It is calculated | required by each formula of.
Here, α00 is not input to the decoding unit 2 because it is equal to “0” except for errors, as described in the description of the encoding unit 1.
[0072]
As a result, the first difference value is added to the first DC value (SP0,0, SP0,1, SP1,0, SP1,1) obtained by the first-stage ACP processing as shown in the following expression. Thus, the decoded pixel value (SC0,0, SC0,1, SC1,0, SC1,1) of each sub-pixel block can be obtained.
SC0,0 = SP0,0 + S '(0,0)
SC0,1 = SP0,1 + S '(0,1)
SC1,0 = SP1,0 + S '(1,0)
SC1,1 = SP1,1 + S '(1,1)
[0073]
However, like the encoding unit 1, the decoding unit 2 also obtains the pixel value of each sub-pixel block directly from the equation (12) in order to reduce the processing by ACP.
Consider the following equation (14) in which a term of inverse ACP processing is added to the first Hadamard coefficient.
[Expression 20]
Figure 0003774201
[0074]
This equation (14) is a configuration in which the term of the first DC value (SPxy) of equation (5) (the first DC value in the first difference value) is moved to the left side, that is, the encoding unit 1 Equations indicating the first Hadamard coefficients α01,10,11 input from
α01 = {(SH0,0−SH0,1 + SH1,0−SH1,1) * 2− (LR)} / 4
α10 = {(SH0,0−SH0,1 + SH1,0−SH1,1) * 2− (U−B)} / 4
α11 = (SH0,0−SH0,1 + SH1,0−SH1,1) / 2
By transposing
α'01 = α01 + (LR) / 4 = (SH0,0−SH0,1 + SH1,0−SH1,1) * 2
α'10 = α10 + (UB) / 4 = (SH0,0−SH0,1 + SH1,0−SH1,1) * 2
α'11 = α11 = (SH0,0−SH0,1 + SH1,0−SH1,1) * 2
It can be expressed as.
[0075]
Further, the pixel values (SC0,0, SC0,1, SC1,0, SC1,1) of the decoded sub-pixel block and the first difference values S ′ (0,0), S ′ (0,1) , S ′ (1,0), S ′ (1,1)) and the first DC value (SP0,0, SP0,1, SP1,0, SP1,1) is
Figure 0003774201
There is a relationship.
[0076]
Based on this relationship, the average value (SH0,0, SH0,1, SH1,0, SH1,1) of the pixels in each sub-pixel block (S1, S2, S3, S4) of the original image and the above-described decoding are performed. The relationship with the pixel values (SC0,0, SC0,1, SC1,0, SC1,1) of the sub-pixel block is as follows:
SC0,0 = (α′01 + α′10 + α′11) / 2 = (3SH0,0−SH0,1−SH1,0−SH1,1) / 4 = SH0,0−S
SC0,1 = (− α′01 + α′10−α′11) / 2 = (3SH0,1−SH0,0−SH1,0−SH1,1) / 4 = SH0,1−S
SC1,0 = (α'01−α′10−α′11) / 2 = (3SH1,0−SH0,0−SH0,1−SH1,1) / 4 = SH1,0−S
SC1,1 = (− α′01−α′10 + α′11) / 2 = (3SH1,1−SH0,0−SH0,1−SH1,0) / 4 = SH1,1−S
[0077]
Accordingly, the average value (SH0,0, SH0,1, SH1,0, SH1,1) of each sub-pixel block of the original image to be obtained is configured as follows.
SH0,0 = SC0,0 + S
SH0,1 = SC0,1 + S
SH1,0 = SC1,0 + S
SH1,1 = SC1,1 + S
Here, the pixel value of each decoded sub-pixel block is:
Figure 0003774201
Is required.
[0078]
As a result, the average values (SH0,0, SH0,1, SH1,0, SH1,1) of the pixels in each sub-pixel block of the original image to be obtained are the following Hadamard coefficients and AC prediction component terms It becomes the composition which has.
SH0,0 = (α01 + α10 + α11) / 2 + (U−B + LR) / 8 + S
SH0,1 = (− α01 + α10−α11) / 2 + (U−B−L + R) / 8 + S
SH1,0 = (α01−α10−α11) / 2 + (− U + B + LR) / 8 + S
SH1,1 = (− α01−α10 + α11) / 2 + (− U + B−L + R) / 8 + S
[0079]
The above-described equation for obtaining the average value (SH0,0, SH0,1, SH1,0, SH1,1) of the pixels in the sub-pixel block corresponding to the equation (12) is expressed by the first-stage Hadamard decoding unit 10. By setting to, it is possible to calculate the average value of the pixel values of each sub-pixel block of the original image only by using the DC value of each pixel block from the encoding unit 1 and the first Hadamard coefficient. It becomes.
Therefore, the decoding unit 1 in the image processing apparatus of the present invention calculates the ACP process for reproducing the first DC value from the DC value of each pixel block, and adds the first DC value and the first difference value. By making the calculation of the process a composite calculation, the calculation of the ACP process can be substantially omitted, the occurrence of an error due to the calculation of the ACP process is prevented, and the pixel value of each sub-pixel block of the original image The calculation speed for obtaining the average value (image after applying the first stage Hdm (4d in FIG. 1)) can be improved.
[0080]
Then, in the decoding process of the pixel value of each pixel in each sub-pixel block, an AC prediction method using an expression similar to that of the encoding unit 1 based on each sub-pixel block in the input first-stage Hdm applied image ( A second DC pixel value of each pixel of the sub-pixel block is obtained by calculation of (ACP processing).
Next, based on the second Hadamard coefficient input from the encoding unit 1, the second difference value is calculated according to the following equation (15).
[Expression 21]
Figure 0003774201
Here, the second difference value matrix g′n is expressed by the following equation (16).
[Expression 22]
Figure 0003774201
Then, the difference values e′n (x, y), n∈ [0, 3], x, y∈ [0, 1] corresponding to each pixel value are obtained by the following equation (17). Each e′n (x, y) corresponds to the position of en (x, y).
[Expression 23]
Figure 0003774201
Furthermore, the second difference value obtained for each pixel in the sub-pixel block is added to the second DC pixel value of the corresponding part, and as an image after applying the second stage Hdm (4f in FIG. 1), That is, it is output as a reproduced image.
[0081]
At this time, similarly to the first stage Hadamard decoding unit 10, the second stage Hadamard decoding unit 12 performs inverse quantization and entropy decoding on the input second Hadamard coefficient that is input. Decode (reproduce) Hadamard coefficients β′n (u, v), n∈ [0,3], u, v∈ [0,1].
Here, the second difference value is decoded (reproduced) by performing inverse Hadamard transform on the second Hadamard coefficient using the above-described equation (15).
[0082]
Then, the pixel value in the sub-pixel block, for example, the second difference value (e′0 (0,0), e′0 (0,1), e′0 (1,0)) corresponding to the sub-pixel block S1. , e′0 (1,1)) are the second Hadamard coefficients β′0 (0,1), β′0 (1,0), β′0 (1,1) input from the encoder 1. )
e'0 (0,0) = (β'0 (1,0) + β'0 (0,1) + β'0 (1,1)) / 2
e′0 (0,1) = (− β′0 (1,0) + β′0 (0,1) −β′0 (1,1)) / 2
e′0 (1,0) = (β′0 (1,0) −β′0 (0,1) −β′0 (1,1)) / 2
e′0 (1,1) = (− β′0 (1,0) −β′0 (0,1) + β′0 (1,1)) / 2
It is calculated | required by each formula of.
[0083]
As a result, the second DC value (d0 (0,0), d0 (0,1), d0 (1,0), d0 (1,1)) obtained by the second stage ACP process is as follows. The decoded pixel values (p0 (0, 0), p0 (0, 1), p0 (1, 0), p0 (1, 1))) of each sub-pixel block are obtained by adding as shown in the expression. Can do.
p0 (0,0) = d0 (0,0) + e'0 (0,0)
p0 (0,1) = d0 (0,1) + e'0 (0,1)
p0 (1, 0) = d0 (1,0) + e'0 (1,0)
p0 (1,1) = d0 (1,1) + e'0 (1,1)
[0084]
However, in the same way as the decoding unit 1, the decoding unit 2 also uses the second-stage Hadamard decoding unit in order to directly obtain the pixel value of each sub-pixel block from the equation (15) in order to reduce the processing by ACP. 12, it is considered to use the following equation (18) as the same configuration as the first-stage Hadamard decoding unit 10.
[Expression 24]
Figure 0003774201
[0085]
In the second-stage Hadamard decoding unit 12, the equation (18) is expressed by the term of the second DC value (dn (x, y)) of the equation (10) (the second DC value in the second difference value). , I.e., each expression indicating the Hadamard coefficients β0 (0,1), β0 (1,0), β0 (1,1) input from the encoding unit 1.
β0 (0,1) = (p0 (0,0) −p0 (0,1) + p0 (1,0) −p0 (1,1) / 2 − (SP0,1−RP0,0) / 4
β0 (1,0) = (p0 (0,0) + p0 (0,1) −p0 (1,0) −p0 (1,1)) / 2 − (SP1,1−UP1,1) / 4
β0 (1,1) = (p0 (0,0) −p0 (0,1) −p0 (1,0) + p0 (1,1)) / 2
By transposing
Figure 0003774201
It can be expressed as.
[0086]
In addition, the pixel value (p0 (0,0), p0 (0,1), p0 (1,0), p0 (1,1)) of each pixel in the decoded sub-pixel block) and the second difference value (E'0 (0,0), e'0 (0,1), e'0 (1,0), e'0 (1,1)) and the second DC value (d0 (0,0) ), d0 (0,1), d0 (1,0), d0 (1,1))
Figure 0003774201
There is a relationship.
[0087]
Here, based on the above relationship, the inverse Hadamard transform is performed on the second Hadamard coefficient β′0 (x, y), thereby obtaining the average value (SH0,0) of the pixel values of the pixels in the sub-pixel block S1. And the pixel value (p0 (0,0), p0 (0,1), p0 (1,0), p0 (1,1)) of each pixel in the decoded sub-pixel block S1 is From equation (12)
Figure 0003774201
It can be expressed as.
[0088]
Therefore, the pixel values (p′0 (0,0), p′0 (0,1), p′0 (1,0), p′0 (1, 1)) has the following configuration.
p0 (0,0) = p'0 (0,0) + SH0,0
p0 (0,1) = p'0 (0,1) + SH0,0
p0 (1, 0) = p'0 (1, 0) + SH0,0
p0 (1,1) = p'0 (1,1) + SH0,0
Here, the inverse Hadamard transform for the second Hadamard coefficient β′0 (x, y) in the sub-pixel block S1 to be decoded is
Figure 0003774201
And can be expanded.
[0089]
As a result, each pixel value (p0 (0,0), p0 (0,1), p0 (1,0), p0 (1,1)) of the sub-pixel block S1 of the original image to be obtained is as follows: It becomes the composition shown.
Figure 0003774201
Here, the pixel value of the pixel in the sub-pixel block is reproduced (decoded) using the sub-pixel block S1 as a representative.
For the sake of simplicity, the pixel values of the pixels are pn (x, y), n∈ [0,3], x, y∈ [1,0] before and after decoding. Similar symbols are used.
[0090]
That is, as already described, the basis of the Hadamard transform in the present invention, that is, the basis of the Hadamard transform shown in FIG. 4A can be performed independently in each sub-pixel block in the pixel block.
For this reason, the Hadamard coefficient α corresponding only to each sub-pixel block can be calculated, and in each combination of bases, each sub-pixel block has a combination of bases having the same configuration. Also in S2, S3, and S4, it is possible to calculate the pixel value of the pixel in each sub-pixel block by the same processing as in the sub-pixel block S1.
At this time, the second-stage Hadamard encoding unit 7 uses the Hadamard coefficient β′n (x, y) and the Hadamard transform coefficient kn () when n∈ [0,3] in Expressions (17) and (18). u, v) (x, y) is made to correspond to the positions of x and y in en (x, y) in FIGS. 2 (e) and (8) in each of the order “x, y” of each pixel value. To calculate.
[0091]
By setting the above-described equation for obtaining the pixel values (SC00, SC01, SC10, SC11) of each pixel in the sub-pixel block S1 corresponding to the equation (18) in the second-stage Hadamard decoding unit 12, The pixel value of each pixel in the sub-pixel block of the original image can be calculated only from the average pixel value of each sub-pixel block from the one-stage Hadamard decoding unit 10 and the second Hadamard coefficient.
Therefore, the decoding unit 1 in the image processing apparatus according to the present invention calculates the ACP processing for reproducing the second DC value from the first DC value of each sub-pixel block, the second DC value, and the second DC value. By calculating the difference value addition process as a synthesis operation, the calculation of the ACP process can be substantially omitted, and the occurrence of an error due to the calculation of the ACP process is prevented, and the sub-pixel block of the original image The calculation speed for obtaining the pixel value of each pixel (image after applying the second stage Hdm (4f in FIG. 1)) can be improved.
[0092]
As described above, the image processing apparatus according to the present invention obtains the first value obtained from the difference value S (x, y), x, y∈ [0, 1] corresponding to the first DC value of the sub-pixel block in the pixel block. In the Hadamard transform, the first difference value between the pixel value of the original image and the first DC pixel value of the sub-pixel block is subjected to Hadamard transform, and the low frequency component of the low frequency component having a large amount of information as the difference value After extracting the first Hadamard coefficients, the first difference value is decoded and added to the first DC value to obtain the second DC value of each pixel of the sub-pixel block. Since the second difference value is obtained for each pixel of each sub-pixel block by the Hadamard transform and the second Hadamard coefficient is obtained from the second difference value, the information amount of the 12 second Hadamard coefficients is reduced. Can perform ACP processing and Hadamard transformation once Since the data amount of the second difference value can be reduced compared to the one-step process, the data amount of the Hadamard coefficient is compared with the case where all Hadamard coefficients are obtained from the difference value of the one-step process. Can be reduced.
[0093]
In addition, the image processing apparatus according to the present invention uses a Hadamard coefficient as a DC value for performing ACP processing, and first and second DC values after the ACP processing is performed on the DC value and a difference value between the original images. Output as compressed information, so that the amount of information required for image reproduction processing is reduced, and above all, the difference value from the original image is output as a Hadamard coefficient, so that the original image has high reproducibility. Is possible.
[0094]
The image processing apparatus according to the present invention includes not only the Hadamard transform described above but also the image processing by the ACP method in the first-stage AC component prediction unit 4 and the second-stage AC component prediction unit 6, so that the pixel block Alternatively, it is possible to reduce block noise resulting from encoding by Hadamard transform for sub-pixel blocks.
Furthermore, the image processing apparatus according to the present invention includes first-stage AC component prediction units 4 and 9, second-stage AC component prediction units 6 and 11, first-stage Hadamard coding unit 5, second-stage Hadamard coding unit 7, Since the first stage Hadamard decoding unit 9 and the second stage Hadamard decoding unit 12 can perform the above-described processing only by addition and subtraction and bit shift, respectively, it can be realized with a compact circuit configuration. In addition, since there is no branch processing in compression or expansion accompanying the size of the pixel value, it is possible to perform processing continuously at a predetermined constant cycle, so that high-speed encoding and decoding processing can be performed.
[0095]
Furthermore, the image processing apparatus according to the present invention combines the calculation relating to the first difference value and the first-stage ACP process in both the encoding unit 1 and the decoding unit 2, and the second difference value. The calculation and the second-stage ACP process are combined and calculated, so that the effect of the ACP process is obtained, the substantial ACP process is not performed, and the image quality is improved and the calculation processing speed is improved. Has been realized. In addition, when the encoding unit 1 and the decoding unit 2 are mounted in the same device, the image processing apparatus according to the present invention includes a first stage Hadamard encoding unit 5, a first stage Hadamard decoding unit 9, and Since the two-stage Hadamard encoding unit 10 and the second-stage Hadamard decoding unit 12 perform the same operations, these operations can be processed by the same circuit, and a considerable part of the circuit is shared. Therefore, it is possible to further improve the compactness of the processing configuration.
[0096]
Here, since the Hadamard transform coefficient is “1” or “−1”, the product of the Hadamard transform coefficient with respect to the pixel value and the Hadamard coefficient in the expressions (5), (10), (14), and (18). Is calculated as a sign addition rather than a multiplication.
In other operations, the basic operation is addition as can be seen from the equation, and the quantization is performed by bit shift.
[0097]
Next, the results of comparison between the case of using the compression and decoding method of the present invention and the case of using JPEG will be described.
FIG. 5 is a graph showing the degree of image quality with respect to the compressed file size, with the horizontal axis indicating the file size (number of bytes) after compression and the vertical axis indicating PNSR (peak value to error ratio).
The solid line indicates the relationship between the file size and PNSR when the image processing apparatus of the present invention is used, and the wavy line indicates the relationship between the file size and PNSR when JPEG is used.
[0098]
As the above-described image data, the number of processed pixels is processed at a ratio of “Y: U: V = 4: 1: 1” in both the present invention and JPEG.
Further, the image used as a sample is a natural image of 320 × 240 pixels shown in FIG. 6, has 24-bit color information per pixel, and the total data amount is 230,456 bytes.
As can be seen from FIG. 5, when compared with the case of the same file size, the image quality of the image compressed and decoded by the image processing apparatus of the present invention is higher than the image quality of the image compressed and decoded by the JPEG processing. .
[0099]
Next, FIG. 7 is a graph showing the time taken for the decoding process corresponding to the compressed file size, with the horizontal axis showing the file size (number of bytes) after compression and the vertical axis showing time. .
The solid line shows the relationship between the file size when the image processing apparatus of the present invention is used and the time required for the decoding process, and the relationship between the file size when the wavy line uses JPEG and the time required for the decoding process. It is shown.
The hardware used for both decoding processes is Gameboy Advance (registered trademark).
Then, the decoding processing method of the present invention and JPEG decoding processing software were respectively ported to Game Boy Advance (registered trademark), and the time required for the decoding processing was measured for each file size.
[0100]
As in the case of FIG. 5, the image data shown in FIG. 7 is processed at a ratio of “Y: U: V = 4: 1: 1” in both the present invention and JPEG. .
Further, the image used as a sample is a natural image of 240 × 160 pixels shown in FIG. 8, has 24-bit color information per pixel, and the total data amount is 115,256 bytes.
As can be seen from FIG. 7, when compared with the case of the same file size, the decoding and decompression processing speed by the image processing apparatus of the present invention is faster than the decoding and decompression processing speed in JPEG.
[0101]
As mentioned above, although one embodiment of the present invention has been described in detail with reference to the drawings, the specific configuration is not limited to this embodiment, and there are design changes and the like without departing from the gist of the present invention. Are also included in the present invention.
For example, in FIG. 1, the encoding unit 1 and the decoding unit 2 are shown configured in the same apparatus, but only the encoding unit 1 or only the decoding unit 2 is incorporated into the apparatus and used. Also good.
[0102]
The above-described image compression and decoding processes are performed using image data of Y, U, and V (luminance = Y, red color difference = U, blue color difference = V) used for digital moving images. For RGB (Red = red, Green = green, Blue = blue) image data, it is necessary to convert the image data into YUV format image data.
The image processing apparatus of the present invention performs similar processing on Y, U, and V, and compresses and decodes images.
[0103]
In addition, the image processing apparatus of the present invention naturally includes performing Hadamard transform over a plurality of stages. For example, the image processing apparatus divides the original image into pixel blocks composed of 8 × 8 pixels, and corresponds to the pixel blocks. As described above, image processing by three-stage Hadamard transformation may be performed in the same manner as the two-stage Hadamard transformation.
For example, a total of 64 Hadamard coefficients are finally calculated for 64 pixels of a pixel block made up of 8 × 8 pixels. This breakdown consists of one DC value in units of 8 × 8 pixels, 4 × 3 Hadamard coefficients in units of 4 pixels by αu, v; u, v∈ [0,1], βn (u, v); n∈ [0,3], u as Hadamard coefficients in units of 2 × 2 pixels , v∈ [0,1], 12 γ (m, n) (u, v); m, n∈ [0,3], u, v∈ [0,1] 48.
[0104]
For other processing, a third stage AC component prediction unit, Hadamard encoding unit, and Hadamard decoding unit are newly added to the encoding unit 1 and decoding unit 2, and processing corresponding to the third Hadamard coefficient is performed. Other processing is the same as the processing for the two-stage Hadamard coefficient described above.
When performing the Hadamard transform in these three stages, the first stage and the second stage perform the same processing as the one stage in the case of performing the Hadamard transform in the two stages, respectively, and the third stage performs the Hadamard transform in the two stages. The same process as in step 1 is performed.
[0105]
As described in the second step, the image processing apparatus of the present invention increases the step of obtaining the Hadamard coefficient corresponding to the number of pixels included in the pixel block every time the DC value of each pixel and the pixel value of the original image are increased. Compared to the case where the Hadamard transform is performed once, the amount of information necessary for image compression of the entire Hadamard coefficient can be reduced, and the amount of fluctuation of the Hadamard coefficient is reduced (the bit amount indicating the Hadamard coefficient). The compression efficiency in entropy coding is improved.
[0106]
Next, a program executed by the computer according to the embodiment of the present invention will be described.
The program executed by the CPU of the computer system in the operation of the image processing apparatus (image processing system) in FIG. 1 constitutes a program according to the present invention.
As a recording medium for storing this program, a magneto-optical disk, an optical disk, a semiconductor memory, a magnetic recording medium, and the like can be used, and these are configured as a ROM, a RAM, a CD-ROM, a flexible disk, a memory card, and the like. May be used.
[0107]
In addition, the recording medium can store a program for a certain period of time, such as a volatile memory such as a RAM in a computer system serving as a server or a client when the program is transmitted via a network such as the Internet or a communication line such as a telephone line. The thing to hold is also included.
The program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. The transmission medium refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line.
[0108]
The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, what is called a difference file (difference program) may be sufficient.
[0109]
Therefore, even if this program is used in a system or apparatus different from the system or apparatus of FIG. 1 and the computer of the system or apparatus executes this program, the functions equivalent to the functions and effects described in the above embodiments are also provided. And the effect of the present invention can be achieved.
[0110]
【The invention's effect】
According to the image processing device of the present invention, the first difference value between the pixel value of the original image and the first DC pixel value of the sub-pixel block is subjected to Hadamard transform, and a low frequency component having a large amount of information as the difference value is obtained. After extraction, the first difference value is decoded and added to the first DC value to obtain the second DC value of each pixel of the sub-pixel block, and then the remaining high frequency side Hadamard is obtained by the second Hadamard transform. Since the coefficient is obtained, the information amount of the remaining second Hadamard coefficient can be reduced. Therefore, the data amount of the second difference value can be reduced as compared with the one-step process in which the ACP process and the Hadamard transform are performed once. Compared to the case where all Hadamard coefficients are obtained from one-stage difference values, the data amount of Hadamard coefficients is reduced, and image compression and decompression is performed with an image quality equivalent to or better than JPEG. It can be carried out.
[0111]
Further, according to the image processing apparatus of the present invention, not only the Hadamard transform but also the compression processing by the ACP method is added, so that the block noise that easily appears because the Hadamard transform is performed in units of blocks can be reduced.
Furthermore, according to the image processing apparatus of the present invention, since only the ACP method and Hadamard transform processing are used, the above-described processing can be performed only by addition / subtraction and bit shift operations. In addition, it can be mounted on a portable terminal or the like, and in addition, there is no branching process associated with the size of the pixel value, and processing can be performed continuously at a predetermined cycle. High-speed compression and decoding processing can be performed for decoding.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration example of an image processing apparatus according to an embodiment of the present invention.
FIG. 2 is a conceptual diagram for explaining an operation example of the image processing apparatus shown in FIG. 1;
FIG. 3 is a conceptual diagram illustrating image processing by the ACP method in the first stage and the second stage.
FIG. 4 is a conceptual diagram illustrating an example of Hadamard transform coefficients used in Hadamard transform.
FIG. 5 is a graph showing the relationship between the file size and the PNSR in the image processing apparatus of the present invention and JPEG compression and decoding processing.
6 is a sample image used in the process of FIG.
FIG. 7 is a graph showing the relationship between the file size and the time required for decoding processing in the image processing apparatus of the present invention and JPEG decoding processing.
8 is a sample image used in the process of FIG.
[Explanation of symbols]
1 Encoding unit
2 Decryption unit
3 DC image generator
5 First-stage Hadamard encoding unit
7 Second stage Hadamard encoding unit
8 DC image decoding unit
10 First-stage Hadamard decoding unit
12 Second-stage Hadamard decoding unit

Claims (2)

元画像を複数の画素(n×n画素)からなる複数の画素ブロックに分割し、前記画素ブロック毎にデータ圧縮を行う画像処理装置において、
処理対象となる画素ブロックの平均画素値である第1のDC値Sと、当該処理対象となる画素ブロックに対して上下左右に隣接した複数の画素ブロックのそれぞれの平均画素値である第1のDC値(L,R,U,B)とを求め、当該第1のDC値(S,L,R,U,B)に量子化及びエントロピー符号化を施した上で符号化データとして出力するDC画像作成部と、
前記第1のDC値(L,R,U,B)と、前記処理対象となる画素ブロックを分割することによって得られる複数のサブ画素ブロックのそれぞれの平均画素値である第2のDC値(SH0,0,SH0,1,SH1,0,SH1,1)とを、第1のアダマール係数を求める第1の式に代入することにより、第1のアダマール係数(α01,α10,α11)を求め、当該第1のアダマール係数(α01,α10,α11)に量子化を施した上で符号化データとして出力するとともに、前記符号化データとなる第1のアダマール係数に逆量子化及び逆アダマール変換を施して、複数の第1の差分値を再生し、前記複数の第1の差分値に基づいて、前記複数のサブ画素ブロックのそれぞれの第3のDC値を再生する第1のアダマール符号化部と、
前記複数のサブ画素ブロックのそれぞれを処理対象として、前記第3のDC値(LP2,SP2,SP3,UP3)と、当該処理対象となるサブ画素ブロック内の画素値(p0(0,0),p0(0,1),p0(1,0),p0(1,1))とを、第2のアダマール係数を求める第2の式に代入することにより、第2のアダマール係数(β0(0,1),β0(1,0),β0(1,1))を求め、当該第2のアダマール係数(β0(0,1),β0(1,0),β0(1,1))に量子化を施した上で符号化データとして出力する第2のアダマール符号化部とを有し、
前記アダマール係数を求める第1の式は、
α01={(SH0,0−SH0,1+SH1,0−SH1,1)*2−(L−R)}/4
α10={(SH0,0−SH0,1+SH1,0−SH1,1)*2−(U−B)}/4
α11=(SH0,0−SH0,1+SH1,0−SH1,1)*2
であり、
前記アダマール係数を求める第2の式は、
β0(0,1)=(p0(0,0)−p0(0,1)+p0(1,0)−p0(1,1))/2−(LP2−SP2)/4
β0(1,0)=(p0(0,0)+p0(0,1)−p0(1,0)−p0(1,1))/2−(LP3−SP3)/4
β0(1,1)=(p0(0,0)−p0(0,1)−p0(1,0)+p0(1,1))/2
であることを特徴とする画像処理装置。
In an image processing apparatus that divides an original image into a plurality of pixel blocks including a plurality of pixels (n × n pixels) and performs data compression for each pixel block,
A first DC value S that is an average pixel value of a pixel block to be processed, and a first pixel value that is an average pixel value of each of a plurality of pixel blocks that are vertically and horizontally adjacent to the pixel block to be processed A DC value (L, R, U, B) is obtained, and the first DC value (S, L, R, U, B) is subjected to quantization and entropy coding and output as encoded data. A DC image creation unit;
The first DC value (L, R, U, B) and a second DC value that is an average pixel value of each of a plurality of sub-pixel blocks obtained by dividing the pixel block to be processed ( The first Hadamard coefficient (α01, α10, α11) is obtained by substituting SH0,0, SH0,1, SH1,0, SH1,1) into the first equation for obtaining the first Hadamard coefficient. The first Hadamard coefficients (α01, α10, α11) are quantized and output as encoded data, and inverse quantization and inverse Hadamard transformation are applied to the first Hadamard coefficient that is the encoded data. And a first Hadamard encoding unit that reproduces a plurality of first difference values and reproduces a third DC value of each of the plurality of sub-pixel blocks based on the plurality of first difference values. When,
Using each of the plurality of sub-pixel blocks as a processing target, the third DC value (LP2, SP2, SP3, UP3) and the pixel value (p0 (0,0), By substituting p0 (0,1), p0 (1,0), p0 (1,1)) into the second expression for obtaining the second Hadamard coefficient, the second Hadamard coefficient (β0 (0 , 1), β0 (1,0), β0 (1,1)) and determine the second Hadamard coefficient (β0 (0,1), β0 (1,0), β0 (1,1)) A second Hadamard encoding unit that performs quantization and outputs the encoded data.
The first equation for obtaining the Hadamard coefficient is:
α01 = {(SH0,0−SH0,1 + SH1,0−SH1,1) * 2− (LR)} / 4
α10 = {(SH0,0−SH0,1 + SH1,0−SH1,1) * 2− (U−B)} / 4
α11 = (SH0,0−SH0,1 + SH1,0−SH1,1) * 2
And
The second equation for obtaining the Hadamard coefficient is:
β0 (0,1) = (p0 (0,0) −p0 (0,1) + p0 (1,0) −p0 (1,1)) / 2− (LP2−SP2) / 4
β0 (1,0) = (p0 (0,0) + p0 (0,1) −p0 (1,0) −p0 (1,1)) / 2− (LP3−SP3) / 4
β0 (1,1) = (p0 (0,0) −p0 (0,1) −p0 (1,0) + p0 (1,1)) / 2
An image processing apparatus characterized by the above.
元画像を複数の画素(n×n画素)からなる複数の画素ブロックに分割し、請求項1に記載された前記画像処理装置より出力された前記符号化データを用いて、前記画素ブロック毎に復号化を行う画像処理装置において、
前記符号化データにエントロピー復号化及び逆量子化を施すことで求められた前記複数の画素ブロックの第1のDC値(S,L,R,U,B)と、前記符号化データに逆量子化を施すことで求められた第1のアダマール係数(α01,α10,α11)とを、処理対象となる画素ブロックを分割することによって得られる複数のサブ画素ブロックの平均画素値である第2のDC値を求める第1の式に代入することにより、前記複数のサブ画素ブロックのそれぞれの第2のDC値(SH0,0,SH0,1,SH1,0,SH1,1)を出力する第1のアダマール復号化部と、
処理対象となるサブ画素ブロックの第1のDC値SH0,0と、当該処理対象となるサブ画素ブロックに対して上下左右に隣接した複数のサブ画素ブロックのそれぞれの前記第2のDC値(SP0,0,RP0,0,SP1,1,UP1,1)と、前記符号化データに逆量子化を施すことで求められた第2のアダマール係数(β0(0,1),β0(1,0),β0(1,1))とを、元画像の複数の画素値である第3のDC値を求める第2の式に代入することにより、第3のDC値(p0(0,0),p0(0,1),p0(1,0),p0(1,1))を求める第2のアダマール復号化部とを有し、
前記第2のDC値を求める第1の式は、請求項1に記載された前記第1のアダマール係数(α01,α10,α11)を求める式を移項して
α’01=α01+(L−R)/4
α’10=α10+(U−B)/4
α’11=α11
であるα’01,α’10,α’11を求めた
SH0,0=(α’01+α’10+α’11)/2+S
SH0,1=(−α'01+α'10−α'11)/2+S
SH1,0=(α'01−α'10−α'11)/2+S
SH1,1=(−α'01−α'10+α'11)/2+S
であり、
前記第3のDC値を求める第2の式は、請求項1に記載された前記第2のアダマール係数(β0(0,1),β0(1,0),β0(1,1))を求める式を移項して、
β’0(0,1)=β0(0,1)+(SP0,0−RP0,0)/4
β’0(1,0)=β0(1,0)+(SP1,1−UP1,1)/4
β’0(1,1)=β0(1,1)
であるβ’0(0,1),β’0(1,0),β’0(1,1)を求めた
p0(0,0)=(β0’(1,0)+β’0(0,1)+β’0(1,1))/2+SH0,0
p0(0,1)=(−β’0(1,0)+β’0(0,1)−β’0(1,1))/2+SH0,0
p0(1,0)=(β’0(1,0)−β’0(0,1)−β’0(1,1))/2+SH0,0
p0(1,1)=(−β’0(1,0)−β’0(0,1)+β’0(1,1))/2+SH0,0
であることを特徴とする画像処理装置。
The original image is divided into a plurality of pixel blocks composed of a plurality of pixels (n × n pixels), and the encoded data output from the image processing device according to claim 1 is used for each pixel block. In an image processing apparatus that performs decoding,
First DC values (S, L, R, U, B) of the plurality of pixel blocks obtained by performing entropy decoding and inverse quantization on the encoded data, and inverse quantization on the encoded data The first Hadamard coefficient (α01, α10, α11) obtained by performing the conversion is a second pixel value that is an average pixel value of a plurality of sub-pixel blocks obtained by dividing the pixel block to be processed A first DC value (SH0,0, SH0,1, SH1,0, SH1,1) of each of the plurality of sub-pixel blocks is output by substituting it into a first expression for obtaining a DC value. Hadamard decoder of
The first DC value SH0,0 of the sub-pixel block to be processed and the second DC value (SP0) of each of the plurality of sub-pixel blocks adjacent to the sub-pixel block to be processed vertically and horizontally. , 0, RP0,0, SP1,1, UP1,1) and second Hadamard coefficients (β0 (0,1), β0 (1,0) obtained by performing inverse quantization on the encoded data. ), Β0 (1,1)) is substituted into the second equation for obtaining the third DC value, which is a plurality of pixel values of the original image, thereby obtaining the third DC value (p0 (0,0)). , P0 (0,1), p0 (1,0), p0 (1,1)), and a second Hadamard decoding unit,
The first equation for obtaining the second DC value is transferred from the equation for obtaining the first Hadamard coefficient (α01, α10, α11) according to claim 1 to α′01 = α01 + (LR ) / 4
α'10 = α10 + (UB) / 4
α'11 = α11
Α'01, α'10 and α'11 were obtained
SH0,0 = (α'01 + α'10 + α'11) / 2 + S
SH0,1 = (− α′01 + α′10−α′11) / 2 + S
SH1,0 = (α'01-α'10-α'11) / 2 + S
SH1,1 = (− α′01−α′10 + α′11) / 2 + S
And
The second equation for obtaining the third DC value is the second Hadamard coefficient (β0 (0,1), β0 (1,0), β0 (1,1)) described in claim 1. Move the equation to find
β′0 (0,1) = β0 (0,1) + (SP0,0−RP0,0) / 4
β'0 (1,0) = β0 (1,0) + (SP1,1-UP1,1) / 4
β'0 (1,1) = β0 (1,1)
Β'0 (0,1), β'0 (1,0), and β'0 (1,1) are calculated as p0 (0,0) = (β0 '(1,0) + β'0 ( 0,1) + β'0 (1,1)) / 2 + SH0,0
p0 (0,1) = (− β′0 (1,0) + β′0 (0,1) −β′0 (1,1)) / 2 + SH0,0
p0 (1,0) = (β′0 (1,0) −β′0 (0,1) −β′0 (1,1)) / 2 + SH0,0
p0 (1,1) = (− β′0 (1,0) −β′0 (0,1) + β′0 (1,1)) / 2 + SH0,0
An image processing apparatus characterized by the above.
JP2003076278A 2003-03-19 2003-03-19 Image processing device Expired - Fee Related JP3774201B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003076278A JP3774201B2 (en) 2003-03-19 2003-03-19 Image processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003076278A JP3774201B2 (en) 2003-03-19 2003-03-19 Image processing device

Publications (2)

Publication Number Publication Date
JP2004289290A JP2004289290A (en) 2004-10-14
JP3774201B2 true JP3774201B2 (en) 2006-05-10

Family

ID=33291373

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003076278A Expired - Fee Related JP3774201B2 (en) 2003-03-19 2003-03-19 Image processing device

Country Status (1)

Country Link
JP (1) JP3774201B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011239191A (en) * 2010-05-11 2011-11-24 Axell Corp Ac component prediction system and ac component prediction program
JP5007432B2 (en) * 2009-10-05 2012-08-22 株式会社アクセル Image processing system and image processing program

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7953152B1 (en) 2004-06-28 2011-05-31 Google Inc. Video compression and encoding method
TWI462057B (en) * 2009-12-01 2014-11-21 Mstar Semiconductor Inc Hadamard transform-based image compression circuit and method
JP7393819B2 (en) 2021-11-19 2023-12-07 株式会社アクセル Image processing system, encoding device, decoding device, image processing method, image processing program, encoding method, encoding program, decoding method, and decoding program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5007432B2 (en) * 2009-10-05 2012-08-22 株式会社アクセル Image processing system and image processing program
JP2011239191A (en) * 2010-05-11 2011-11-24 Axell Corp Ac component prediction system and ac component prediction program

Also Published As

Publication number Publication date
JP2004289290A (en) 2004-10-14

Similar Documents

Publication Publication Date Title
KR100880305B1 (en) Apparatus for decoding image data
JP4924904B2 (en) Efficient encoding / decoding of sequences of data frames
JPH1175186A (en) Scaled forward and backward discrete cosine transform and video compression and expansion system using the conversion
JP2010505154A (en) Error reduction in inverse discrete cosine transform calculation
JP2006025465A (en) Data processor and method
JPH09247673A (en) Coded dynamic image reproducing device
RU2419855C2 (en) Reducing errors when calculating inverse discrete cosine transform
KR100510756B1 (en) Image decoding apparatus and method and image reproducing apparatus
JP3774201B2 (en) Image processing device
KR20010072420A (en) Circuit and method for performing a two-dimensional transform during the processing of an image
JP3469438B2 (en) Image signal processing method and apparatus, recording medium
JP3700976B2 (en) Image processing apparatus and image processing method
JPH0951504A (en) Image encoding device and image decoding device
JPH1188701A (en) Image compression device and image expansion device
JP4241517B2 (en) Image encoding apparatus and image decoding apparatus
JP2005184525A (en) Image processor
JP2000013797A (en) Image compressing device and image expanding device
JP3845208B2 (en) Image compression apparatus and image expansion apparatus
JP3781012B2 (en) Image data compression method, image data expansion method, and image data expansion circuit
JP3845206B2 (en) Image compression apparatus and image expansion apparatus
JP2003348356A (en) Image processing apparatus
JP2698641B2 (en) Color image data encoding method and decoding method
JPH0937250A (en) Image data decoder and image data decoding method
JPH06315143A (en) Image processor
JPH08307865A (en) Image processing method

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050802

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050815

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051004

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051114

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060113

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: 20060206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060216

R150 Certificate of patent or registration of utility model

Ref document number: 3774201

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20090224

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120224

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20120224

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130224

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20130224

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130224

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140224

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees