JP4137458B2 - Fixed-length image encoding device - Google Patents

Fixed-length image encoding device Download PDF

Info

Publication number
JP4137458B2
JP4137458B2 JP2002029827A JP2002029827A JP4137458B2 JP 4137458 B2 JP4137458 B2 JP 4137458B2 JP 2002029827 A JP2002029827 A JP 2002029827A JP 2002029827 A JP2002029827 A JP 2002029827A JP 4137458 B2 JP4137458 B2 JP 4137458B2
Authority
JP
Japan
Prior art keywords
code
image
coefficient
encoding
order
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
JP2002029827A
Other languages
Japanese (ja)
Other versions
JP2003234905A (en
Inventor
泰之 野水
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2002029827A priority Critical patent/JP4137458B2/en
Publication of JP2003234905A publication Critical patent/JP2003234905A/en
Application granted granted Critical
Publication of JP4137458B2 publication Critical patent/JP4137458B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、画像の符号化装置に関し、より詳細には、多値画像の固定長画像符号装置に係り、例えば、ディジタル複写機、ファクシミリ、ファイリング装置等に応用して好適なものである。
【0002】
【従来の技術】
ディジタル機器においては高画質化のために、解像度を高くすることや階調数を多くする等の傾向がある。これらは画像の持つ情報量が多くなることで画質は向上するが、その反面、画像の情報量は多くなるという問題がある。例えば後者の例を挙げると、従来2階調(白または黒)であった画像を白黒256階調の画像にすると、情報量は8倍になってしまう。情報量が8倍になると言うことはその画像を記憶するために必要とされる記憶容量も単純に計算すると8倍になってしまい、機器コストが増大するという問題になる。そこで、通常は記憶容量削減のために画像を符号化する方法が適用される。
【0003】
データ量の多さを解決する方法の1つに多階調画像を効率良く符号化する方法が考えられる。多階調画像(カラー画像も含む)の符号化方式の代表としてはISOとITU−Tとで標準勧告されているJPEG方式が代表的である。JPEG方式は基本であるDCT方式とオプションのDPCMを用いた方式がある。DCT方式は人間の視覚特性を利用して画質を損なわない程度に原画の情報量を一部削減して符号化を行う符号化方式(非可逆符号化方式と呼ばれる)であり、DPCM方式は原画の情報量を損なうこと無く符号化を行う符号化方式(可逆符号化方式と呼ばれる)である。DCT方式は離散コサイン変換を使って画像情報を周波数情報に変換した後に情報の符号化を行う方式である。一方、DPCM方式は注目画素レベルを周囲画素より予測を行い、その予測誤差を符号化する方式である。
【0004】
画質重視により符号化を行うのであれば効率の良いDCT方式を用いるのが良いが、情報の保存性という点ではDCT方式は非可逆であるために可逆であるDPCM方式になる。理想としては可逆で高能率な方式が良いのであるが、現状のDPCMによる可逆方式ではそれほど大きな効率を得られないという問題があり、パソコン等で使用される比較的階調数の多い多値画像の圧縮にはDCT方式を使うことが主流になっている。しかし、DCT方式は圧縮率を高くすると特有のブロック歪みや輪郭部でモスキートノイズが発生し、画質が極端に劣化する。特に文字画像においてはその傾向が顕著であるために画質的に大きな問題となっている。
【0005】
上記JPEGの持つ欠点を解決するために、JPEG2000と称する符号化方式が近年、注目されている。JPEG2000は西暦2000年に勧告化された新しい符号化方式で、JPEGの欠点である低ビットレートでの画質劣化を少なくしたことに加え、実用的な新機能を多数備えている。特に、階層的表示を容易に実現できる点でJPEGに対して大きなメリットとなっている。JPEG2000はウェーブレット変換を用いた変換符号化方式で、今後、カラー画像をはじめとする静止画像の分野において、JPEGに置き換わっていくだろうと予測されている。しかし、このJPEG2000も万能というわけではなく、規模の大きさや処理速度の点からJPEGと比べて劣っている点もあるのが事実である。
【0006】
画像の符号化には符号化後の符号語長から可変長と固定長に大きく分けられる。前者(可変長符号化方式)の特徴は後者(固定長符号化方式)に比べて符号化効率が高い点と可逆も可能である点に対し、後者(固定長符号化方式)の特徴は符号状態で符号化前の画像の位置がわかるために任意の部分の画像のみを再生することが可能である。これらの特徴から前者(可変長符号化方式)はファクシミリのような機器に適しており、後者(固定長符号化方式)は複写機等の画像加工が伴う機器に適している。
【0007】
ここで複写機等に適している固定長符号化方式について考えると、最も簡単な方法は、1画素に割り当てる符号語長を固定してしまう方法がある。例えば、1画素8ビットである画素に対して1画素2ビットの符号語を当てはめるという方法である。しかし、この方法では画像の持つ部分的な特徴を符号に反映することができない、言い換えれば視覚的に重要である画像領域とそうでない画像領域とを区別できないため、画質的には劣ったものになってしまう。画質を向上しようとすると1画素に割り当てるビット数を多くしなければならず、符号化効率が悪くなると言う問題が発生する。
【0008】
【発明が解決しようとする課題】
多階調の画像を効率よく符号化する方法の1つにDCTを用いたJPEG方式があるが、これは前述したように圧縮率を高くするとブロック歪みや輪郭部でのモスキートノイズが発生する可能性があり、画質的に問題がある。これを解決する方法の1つにDCTではなく、ウェーブレット変換を用いる方法がある。ウェーブレット変換を用いた符号化は、サブバンド符号化とも呼ばれ、入力信号を複数の周波数帯域に分割し、帯域毎の偏りを利用して圧縮率を向上させるものである。ウェーブレット変換の最も大きな特徴はDCTと比べて高画質な点である。画像を固定長に符号化する場合、画素毎に平均して情報量を割り当てるよりも、一定の大きさの領域毎に画像を分割し、分割した領域単位で固定長にして、領域内の画素には重み付けをして情報量を割り当てた方が画素毎の持つ重要度を反映できることになり、画質を向上させることできる。
【0009】
本発明は、上記の特徴を生かすため、画像を任意の大きさのブロック単位で符号化処理を行うことを基本として、分割されたブロック単位の画像に対してウェーブレット変換を行い、変換後の係数の状態から高画質になるような符号化する係数順序を決定し、決定された順序でブロック化を行った後に符号化を行い、作成された符号量を予め定められた固定長の符号量に制御を行うようにして、符号量が一定になるようにし、かつ、高画質な符号化を可能としたものである。
【0010】
【課題を解決するための手段】
請求項1の発明は、入力多値画像に対して符号化の処理単位となる任意の大きさのブロックに画像を分割する画像ブロック化手段と、前記ブロック化された画像に対して2次元のウェーブレット変換を施して、画像から係数への変換を行う2次元ウェーブレット変換手段と、前記ウェーブレット変換で得られた係数を符号化する順序を、低解像度の画像成分に対する係数を先に、高解像度の画像成分に対する係数を後にする順序に決定する係数順序制御手段と、前記係数順序制御手段で決定された順に並べられた係数を、符号化処理で符号化する単位にブロック分割する係数ブロック化手段と、前記係数ブロック化手段で分割された各係数ブロックに符号化処理を行って、各係数ブロックの符号を生成する係数符号化手段と、前記係数順序制御手段で決定された係数の順序情報を、前記係数符号化手段で生成された符号の列の先頭に挿入し、前記係数の順序情報が挿入された符号の列を、順にまとめて、予め設定した固定符号長の符号量となるように制御する符号量制御手段とを具備し、前記符号量制御手段は、前記符号を順にまとめて1つの符号量とするときに、該まとめた符号の列が前記固定符号長を越える場合には、最終の符号を削除し、前記固定符号長となるまで意味のない符号を出力するよう制御することを特徴としたものである。
【0016】
【発明の実施の形態】
多値画像の符号化を行う際に用いられる符号化方式として、サブバンド符号化あるいはウェーブレット符号化と呼ばれるものが知られている。サブバンド符号化は入力信号を複数の周波数帯域に分割し、帯域毎の情報量の偏りを利用して符号化効率を向上させるようにしたものである。また、ウェーブレット符号化はサブバンド符号化において低域側の帯域を再帰的に2分割し、階層化されたサブバンド符号化を行い、サブバンド符号化と同様に帯域毎の情報量の偏りを利用して符号化効率を向上させるようにしたものである。
特にウェーブレット符号化は、多階層にわたる縮小画像が復号時に自然に生成されるため、画像データがピラミッド構造を成し、そのためプログレッシブ(段階的に画質が向上していく)再生表示が可能である。
【0017】
まず、本発明における符号化方式を具体的に実施したときについて、ファクシミリを例にとって説明する。
図1は、本発明の符号化装置を具体的に実施したときのファクシミリにおけるブロック構成図を示したもので、まず、送信側で画像読取り部1においてCCDイメージセンサ等を用いて原稿を読み取り、続く画像処理部2で送信データを適切なデータにするために処理を行い、最後に符号化部3において符号化を行って作成された符号を伝送路へ送出する。一方、受信側で画像を再生するときは、符号化データを復号部4により復号し、画像処理部5で出力装置に適した画像処理を行い、プロッタ等の画像出力部6に出力することでハードコピーを得る。
【0018】
なお、画像処理部2,5で行われる処理の例としては、2値画像においては解像度変換、サイズ変換等があり、カラーを含めた多値画像においては色(色成分)変換、解像度変換、サイズ変換等が挙げられる。
また符号化部3、復号部4で使われる符号化方式の例として、2値画像を対象とするものでは従来のファクシミリで使われているMH,MR,MMR方式やJBIG方式があり、多値画像を対象とするものではJPEG方式がある。
【0019】
続いて、本符号化装置に適した符号化方式の一例であるJPEG2000符号化方式について簡単に説明する。
図2は、JPEG2000の機能ブロックを示す。JPEG2000は変換符号化と呼ばれる方式で、データの流れとしては、変換−量子化−符号化というステップが実行される。変換(S1)は離散ウェーブレット変換(DWT : Discrete Wavelet Transform)が用いられる。JPEGの特徴がDCTと言われるように、JPEG2000の特徴はこのDWTと言っても過言ではない。量子化(S2)は変換係数に対してスカラー量子化が行われる。エントロピ符号化(S3)は、DWTの特性を利用した、EBCOT(Embedded Block Coding with Optimized Truncation)と称する方式で実行される。
【0020】
図3は、EBCOTの処理の流れを示す図で、EBCOTの特徴は、各サブバンドを同一サイズにブロック分割して符号化する点と,ポスト処理による符号量制御が可能な点である。処理は大きく、ブロック分割(S11)、係数モデリング(S12)、算術符号化(S13)という処理である。最後に、作成された符号は、符号生成と称する機能ブロック(S4)で画質と符号量が制御される。以上のような処理によってJPEG2000の符号化が実行される。
【0021】
次に、EBCOTで用いられている算術符号化方式の原理について簡単に説明する。
算術符号化方式は、従来のランレングス符号化方式(MH,MR)よりは一般的に符号化効率が良いものである。その符号化方法は、[0,1]の数直線上の対応区間(2進小数で[0.0・・・・0,0.1・・・・1])を各シンボルの生起確率に応じて不等長に分割していき、対象シンボル系列を対応する部分区間に割り当て、再帰的に分割を繰り返していくことにより得られた区間内に含まれる点の座標を、少なくとも他の区間と区別できる2進小数で表現してそのまま符号とするものである。
【0022】
図4は、シンボル系列‘0100’を例に、算術符号化の概念を説明するための図で、まず、第1シンボルの符号化時には全区間が‘0’と‘1’のシンボルの生起確率比に従ってA(0)とA(1)に分割され、‘0’の発生により区間A(0)が選択される。次に、第2シンボルの符号化の際にはその状態における両シンボルの生起確率比によってA(0)がさらに分割され、発生シンボル系列に対応する区間としてA(01)が選択される。このような分割と選択の処理の繰り返しにより符号化が進んでいくものである。一方、復号では符号化と全く逆の処理を行い、符号が示す2進小数をもとにシンボルを再生するものである。ここで重要なのは、シンボルの符号化を行う際の数直線の幅Cであり、この数直線の幅が符号化開始時と復号開始時とで一致しないとシンボルを正確に再現できなくなってしまうということである。普通はこの数直線の幅を符号化側と復号側で1としている。
【0023】
図5は、本発明における符号化装置の一例を説明するためのブロック図で、
構成としては、入力多値画像に対して符号化の処理単位となる任意形状のブロックに画像を分割する画像ブロック化手段11、該ブロック化された画像に対して2次元のウェーブレット変換を行う2次元ウェーブレット変換手段12、該ウェーブレット変換で得られた変換係数の状態から符号化する係数の順序を決定する係数順序制御手段13、該係数順序制御手段で決定された係数順序で符号化処理用に任意の大きさに係数をブロック分割する係数ブロック化手段14、該ブロック化された係数毎に係数の符号化を行う係数符号化手段15、該係数符号化手段で符号化された符号量を制御する符号量制御手段16から成る。
【0024】
動作を簡単に説明すると、まず、符号化するために入力された画像は画像ブロック化手段11に入力され、任意の大きさであるブロック単位の画像に分割される。分割の方法としては様々な方法があるが、回転等の画像処理に適した水平方向の大きさと垂直方向の大きさが同じとなる矩形ブロックにすることが適している。ブロックに分割された画像は符号化処理単位となり、2次元ウェーブレット変換手段12に入力される。2次元ウェーブレット変換手段12では、入力された画像に対して2次元のウェーブレット変換処理を施して、画像から係数への変換を行う。
【0025】
2次元ウェーブレット変換の方法としてはいろいろあるが、一例として、図6に示すようなウェーブレット変換を施すことにより2次元係数を作成するものが挙げられる。なお、1次元のウェーブレット変換を水平方向および垂直方向に対して施すことにより2次元係数を作成するものが一般的であり、図6の例も基本的にはそのようになっている。変換は図7に示すように、低域側の帯域(LL成分)に対して再帰的に変換を施すことで、係数の階層構造化を図っていく。2次元ウェーブレット変換手段で作成された係数は係数順序制御手段13に入力され、係数の符号化順序が決定される。
【0026】
符号化順序の決定方法は、図7に示した階層構造を利用して、低解像度の画像成分に対する係数を先に、高解像度の画像成分に対する係数を後にする方法が一例として挙げられる。具体的には、図7を例にすると、第2階層の係数(2LL,2LH,2HL,2HH)を先に符号化するようにして、続いて第1階層(1LH,1HL,1HH)を符号化するような順序にすることである。
また、各階層の係数の精度を徐々に向上できるような符号化順序方法というのも考えられる。これは、結果的に画質が徐々に向上する。具体的には、前者のように階層構造を利用するのではなく、各係数の上位ビットの相当する係数部分を先に、下位ビットに相当する部分を後になるような順序にすることである。
さらには、係数順序決定を高速化するため、またはユーザーが任意に制御できるために、予め定められた複数の係数順序表を持ち、順序決定の際には該複数の順序表の中から1つを選択することが考えられる。
【0027】
係数順序制御手段13で順序が決定された係数は、決定された順序に基づいて係数ブロック化手段14に入力され、符号器で符号化する単位にブロック分割される。係数をブロック分割して符号器に入力するのは、ブロック内で符号ビットの配分を適応的に変化させることで圧縮効率を向上させること、符号器で必要とする作業領域を少なくすること、等が主な理由である。
ブロック分割された係数は、続いて係数符号化手段15に入力され符号化が行われる。ここで行う符号化の例としては先に挙げた算術符号化方式等が挙げられる。係数符号化手段15で作成された符号は符号量制御手段16に入力され、符号量の制御が行われる。
【0028】
符号量の制御方法として、単位あたりの符号量が予め定められた符号長を越える場合には、図8に示すように、最終ブロックの符号を符号列から削除すると共に、予め定められた固定の符号長になるまで意味のない符号を出力する方法が考えられる。この方法は高速に処理できるメリットがある。また、他の方法として、図9に示すように、単位あたりの符号量が予め定められた符号長を越える場合には、最終ブロックの符号を予め定められた符号長に入るように符号を変更する処理を行う方法が考えられる。この方法によれば、割り当てられた符号長における意味のある情報量を増やすことができ、高速かつ画質を向上させることが可能になる。
【0029】
本発明における符号の構成であるが、復号側で正確に画像を再現するために、符号量制御手段は係数の符号化順序の情報を符号列に挿入し、該情報を含めて予め定められた符号量になるように制御することが考えられる。図示すると、図10に示すようになり、符号列中に係数の符号化順序を表す情報(order)を挿入しておけば、復号側は符号列から符号化順序を把握できるために正確な画像の再現が可能になる。
【0030】
上述のようにして、本発明は、一定の符号量になるようにしながら符号化を行うのが特徴であり、これによれば、符号量が一定になるという利点を持ちつつ、かつ高画質な符号化が可能になる。また、作成された符号列は再生時に容易に階層的な表示が可能になる。
【0031】
次に、復号装置の一例について図11のブロック図を用いて説明する。構成としては、入力される符号列に対して復号処理を行って係数群を再生する係数復号手段21、入力される符号列から符号化されている係数の順序を決定する復号係数順序決定手段22、係数復号手段と復号係数順序決定手段の結果を元に変換係数を再生する変換係数再生手段23、再生された係数に対して符号化時に行われた変換と逆の2次元ウェーブレット変換を施して画像の再生を行う2次元逆ウェーブレット変換手段24、2次元逆ウェーブレット変換手段で再生された画像から全体の画像を作成する画像再生手段25から成る。
【0032】
動作を簡単に説明すると、本発明による符号化装置で作成された符号列が係数復号手段21および復号係数順序決定手段22に入力される。係数復号手段21では符号列から係数の復元が行われる。復号係数順序決定手段22では復元された係数がどの順序で符号化されたものであるかを判断する。これら2つの情報は変換係数再生手段23に入力され、画像を正確に再生するための変換係数の再生が行われる。変換係数再生手段で復元された係数は、2次元逆ウェーブレット変換手段24に入力され、符号化時と逆の変換処理が行われ、画像の再生が行われる。再生された画像はブロック単位の画像となっているため、画像再生手段25により合成されて全体画像の再生が行われる。
以上のようにして、符号化時の係数順序を理解しながら画像再生することが可能なので、正確に画像の再現が可能になる。
【0033】
【発明の効果】
本発明による符号化装置では、画像を任意の大きさのブロック単位で符号化処理を行うことを基本として、分割されたブロック単位の画像に対してウェーブレット変換を行い、変換後の係数の状態から高画質になるような符号化する係数順序を決定し、決定された順序でブロック化を行った後に符号化を行い、作成された符号量を予め定められた固定長の符号量に制御を行うので、符号量が一定になるという利点を持ち、かつ高画質な符号化が可能になる。
【0034】
係数を符号化する順序は任意である方が画質劣化を少なくすることが可能である反面、順序決定の際に処理が複雑になる点や処理速度が低下してしまう恐れがある。そこで、予め代表的な係数の符号化順序を定義しておき、符号化の際にはそれらの中から1つを選択して使用することで高速処理が可能になる。
【0035】
順次生成されるブロック化された係数単位の符号毎に符号長を越えるかどうか判断し、符号長を越える場合には該符号の前の符号までを有効として、残りの符号は意味のない符号とするので、予め定められた符号長にするのに非常に簡単でかつ高速処理が可能になる。
【0036】
しかし、最後の符号(残りの符号)を破棄してしまうために損である。そこで、符号長を越える場合には該符号を符号長内に収まる符号語に変更することで、割り当てられた符号長における意味のある情報量を増やすことができ、画質を向上させることが可能になる。
【0037】
符号列中に係数の符号化順序を表す情報が挿入されているので、復号側は符号列から符号化順序を把握できるために正確な画像の再現が可能になる。
【図面の簡単な説明】
【図1】 本発明の符号化装置を具体的に実施したときのファクシミリにおけるブロック構成図を示したものである。
【図2】 JPEG2000の機能ブロックを示す図である。
【図3】 EBCOTの処理の流れを示す図である。
【図4】 シンボル系列‘0100’を例に、算術符号化の概念を説明するための図である。
【図5】 本発明における符号化装置の一例を説明するためのブロック図である。
【図6】 ウェーブレット変換を施して2次元係数を作成する例を示す図である。
【図7】 低域側の帯域(LL成分)に対して再帰的に変換を施して、係数の階層構造化を図る例を示す図である。
【図8】 単位あたりの符号量が予め定められた符号長を越える場合には、最終ブロックの符号を符号列から削除すると共に、予め定められた固定の符号長になるまで意味のない符号を出力する例を示す図である。
【図9】 単位あたりの符号量が予め定められた符号長を越える場合には、最終ブロックの符号を予め定められた符号長に入るように符号を変更する例を示す図である。
【図10】 符号列中に係数の符号化順序を表す情報(order)を挿入した例を示す図である。
【図11】号化装置の一例を示すブロック図である。
【符号の説明】
1…画像読取り部、2…画像処理部、3…符号化部、4…復号部、5…画像処理部、6…画像出力部、11…画像ブロック化手段、12…2次元ウェーブレット変換手段、13…係数順序制御手段、14…係数ブロック化手段、15…係数符号化手段、16…符号量制御手段、21…係数復号手段、22…復号係数順序決定手段、23…変換係数再生手段、24…2次元逆ウェーブレット変換手段、25…画像再生手段。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a code KaSo location of the image, and more particularly, relates to a fixed-length image coding equipment multivalued image, for example, a digital copying machine, a facsimile, and is suitably applied to a filing apparatus, etc. .
[0002]
[Prior art]
In digital devices, there is a tendency to increase the resolution and increase the number of gradations in order to improve image quality. Although the image quality is improved by increasing the amount of information held by the image, there is a problem that the information amount of the image is increased. For example, in the latter example, when an image having two gradations (white or black) in the past is changed to an image having 256 gradations in black and white, the amount of information becomes eight times. If the amount of information is 8 times, the storage capacity required to store the image is simply 8 times as long as it is calculated, which increases the equipment cost. Therefore, a method of encoding an image is usually applied to reduce the storage capacity.
[0003]
As a method for solving the large amount of data, a method for efficiently encoding a multi-tone image can be considered. A representative example of a multi-tone image (including a color image) encoding method is the JPEG method recommended by ISO and ITU-T as a standard. The JPEG system includes a basic DCT system and an optional DPCM system. The DCT method is a coding method (referred to as an irreversible coding method) in which the amount of information of an original image is partially reduced by using human visual characteristics so as not to impair the image quality, and the DPCM method is an original image. This is an encoding method (referred to as a lossless encoding method) in which encoding is performed without impairing the amount of information. The DCT method is a method for encoding information after converting image information into frequency information using discrete cosine transform. On the other hand, the DPCM method is a method of predicting a target pixel level from surrounding pixels and encoding the prediction error.
[0004]
If coding is performed with emphasis on image quality, it is preferable to use an efficient DCT method. However, in terms of information storage stability, the DCT method is irreversible, so it becomes a reversible DPCM method. Ideally, a reversible and highly efficient method is desirable, but the current reversible method using DPCM has a problem that it cannot obtain such a large efficiency, and a multi-value image with a relatively large number of gradations used in a personal computer or the like. For compression, the DCT method is mainly used. However, in the DCT method, when the compression rate is increased, specific block distortion and mosquito noise are generated in the contour portion, and the image quality is extremely deteriorated. Particularly in the case of character images, the tendency is remarkable, which is a big problem in image quality.
[0005]
In order to solve the above-mentioned drawbacks of JPEG, an encoding method called JPEG2000 has recently attracted attention. JPEG2000 is a new encoding system recommended in the year 2000. In addition to reducing image quality degradation at a low bit rate, which is a disadvantage of JPEG, JPEG2000 has many practical new functions. In particular, it is a great advantage over JPEG in that hierarchical display can be easily realized. JPEG2000 is a transform coding method using wavelet transform, and it is predicted that it will be replaced by JPEG in the field of still images including color images. However, this JPEG2000 is not universal, and it is a fact that it is inferior to JPEG in terms of scale and processing speed.
[0006]
Image encoding is roughly divided into variable length and fixed length from the encoded codeword length. The feature of the former (variable length coding method) is higher in encoding efficiency than the latter (fixed length coding method) and can be reversible, whereas the feature of the latter (fixed length coding method) is code. Since the position of the image before encoding is known in the state, it is possible to reproduce only an arbitrary portion of the image. Because of these characteristics, the former (variable length coding method) is suitable for a device such as a facsimile, and the latter (fixed length coding method) is suitable for a device accompanying image processing such as a copying machine.
[0007]
Here, considering a fixed-length encoding method suitable for a copying machine or the like, the simplest method is a method of fixing the codeword length assigned to one pixel. For example, a code word of 2 bits per pixel is applied to a pixel that is 8 bits per pixel. However, this method cannot reflect the partial characteristics of the image in the code, in other words, it cannot distinguish the image area that is visually important from the image area that is not visually important, so the image quality is inferior. turn into. In order to improve the image quality, the number of bits allocated to one pixel must be increased, resulting in a problem that the encoding efficiency deteriorates.
[0008]
[Problems to be solved by the invention]
One of the methods for efficiently encoding multi-gradation images is the JPEG method using DCT. However, as described above, if the compression ratio is increased, block distortion and mosquito noise at the contour may occur. There is a problem in image quality. One method for solving this is a method using wavelet transform instead of DCT. Coding using wavelet transform is also called subband coding, which divides an input signal into a plurality of frequency bands and improves the compression ratio by using the bias for each band. The biggest feature of the wavelet transform is that it has higher image quality than DCT. When encoding an image to a fixed length, rather than assigning an average amount of information for each pixel, the image is divided into areas of a certain size, and the fixed length is set in units of divided areas. Since the importance assigned to each pixel can be reflected by assigning the information amount by weighting, the image quality can be improved.
[0009]
In order to take advantage of the above features, the present invention performs wavelet transform on an image in units of divided blocks based on performing an encoding process on an image in units of an arbitrary size, and performs coefficients after conversion. The order of coefficients to be encoded is determined so as to obtain high image quality from the state of the above, and after encoding is performed after blocking in the determined order, the generated code amount is changed to a predetermined fixed length code amount. Control is performed so that the code amount is constant, and high-quality encoding is possible.
[0010]
[Means for Solving the Problems]
According to the first aspect of the present invention, there is provided an image blocking means for dividing an image into blocks of an arbitrary size as a processing unit of encoding for an input multilevel image, and a two-dimensional A two-dimensional wavelet transform unit that performs wavelet transform and transforms an image into a coefficient, and a coding order of the coefficient obtained by the wavelet transform. Coefficient order control means for determining the coefficients for the image components in the later order; and coefficient blocking means for dividing the coefficients arranged in the order determined by the coefficient order control means into blocks to be encoded by the encoding process; Coefficient coding means for performing coding processing on each coefficient block divided by the coefficient blocking means to generate a code for each coefficient block; and the coefficient ordering system. The coefficient order information determined by the means is inserted at the head of the code sequence generated by the coefficient encoding means, and the code sequence into which the coefficient order information is inserted is sequentially set in advance. Code amount control means for controlling the code amount so as to have a fixed code length, and the code amount control means is configured such that when the codes are sequentially combined into one code amount, wherein when exceeding the fixed code length, remove the final code, in which characterized a so that control to Turkey outputs meaningless code until the fixed code length.
[0016]
DETAILED DESCRIPTION OF THE INVENTION
As an encoding method used when encoding a multi-valued image, a method called subband encoding or wavelet encoding is known. In subband coding, an input signal is divided into a plurality of frequency bands, and the coding efficiency is improved by utilizing the bias of the information amount for each band. Also, wavelet coding recursively divides the low-frequency band into two in subband coding, performs hierarchical subband coding, and reduces the amount of information per band as in subband coding. This is used to improve the encoding efficiency.
In particular, in wavelet coding, reduced images over multiple layers are naturally generated at the time of decoding, so that the image data has a pyramid structure, and therefore, progressive display (in which the image quality is gradually improved) can be reproduced and displayed.
[0017]
First, a case where the encoding system according to the present invention is specifically implemented will be described by taking a facsimile as an example.
FIG. 1 is a block diagram of a facsimile when the encoding apparatus of the present invention is concretely implemented. First, an original is read using a CCD image sensor or the like in an image reading unit 1 on the transmission side. Subsequently, the image processing unit 2 performs processing to make the transmission data appropriate data, and finally the encoding unit 3 performs encoding and sends the generated code to the transmission path. On the other hand, when the image is reproduced on the receiving side, the encoded data is decoded by the decoding unit 4, the image processing unit 5 performs image processing suitable for the output device, and outputs it to the image output unit 6 such as a plotter. Get a hard copy.
[0018]
Examples of processing performed by the image processing units 2 and 5 include resolution conversion and size conversion in a binary image, and color (color component) conversion and resolution conversion in a multi-value image including color. Size conversion etc. are mentioned.
Examples of encoding methods used in the encoding unit 3 and decoding unit 4 include MH, MR, MMR methods and JBIG methods used in conventional facsimiles for binary images. There is a JPEG system for images.
[0019]
Next, a JPEG2000 encoding method that is an example of an encoding method suitable for the present encoding device will be briefly described.
FIG. 2 shows functional blocks of JPEG2000. JPEG2000 is a method called transform coding, and the steps of transform-quantization-coding are executed as the data flow. For the transformation (S1), a discrete wavelet transformation (DWT: Discrete Wavelet Transform) is used. Just as the feature of JPEG is called DCT, it is no exaggeration to say that the feature of JPEG2000 is this DWT. In the quantization (S2), scalar quantization is performed on the transform coefficient. Entropy coding (S3) is performed by a method called EBCOT (Embedded Block Coding with Optimized Truncation) using the characteristics of DWT.
[0020]
FIG. 3 is a diagram showing the flow of EBCOT processing. The features of EBCOT are that each subband is divided into blocks of the same size and encoded, and the amount of code can be controlled by post processing. The processing is large and includes block division (S11), coefficient modeling (S12), and arithmetic coding (S13). Finally, the image quality and code amount of the generated code are controlled by a function block (S4) called code generation. JPEG2000 encoding is executed by the above processing.
[0021]
Next, the principle of the arithmetic coding method used in EBCOT will be briefly described.
The arithmetic coding scheme generally has better coding efficiency than the conventional run length coding scheme (MH, MR). The encoding method uses the corresponding interval on the number line of [0, 1] ([0.0... 0, 0.1... 1] in binary decimal) as the occurrence probability of each symbol. Accordingly, the coordinates of the points included in the section obtained by dividing the unequal length, assigning the target symbol series to the corresponding partial section, and repeating the division recursively are set as at least other sections. It is expressed as a binary decimal number that can be distinguished and used as it is.
[0022]
FIG. 4 is a diagram for explaining the concept of arithmetic coding, taking the symbol sequence “0100” as an example. First, when the first symbol is encoded, the probability of occurrence of symbols having all intervals of “0” and “1”. According to the ratio, it is divided into A (0) and A (1), and section A (0) is selected by the occurrence of '0'. Next, when the second symbol is encoded, A (0) is further divided by the occurrence probability ratio of both symbols in that state, and A (01) is selected as a section corresponding to the generated symbol sequence. Encoding proceeds by repeating such division and selection processing. On the other hand, in the decoding process, a process completely opposite to the encoding process is performed, and the symbol is reproduced based on the binary decimal number indicated by the code. What is important here is the width C of the number line at the time of encoding the symbol. If the width of the number line does not match at the start of encoding and the start of decoding, the symbol cannot be accurately reproduced. That is. Normally, the width of this number line is set to 1 on the encoding side and the decoding side.
[0023]
FIG. 5 is a block diagram for explaining an example of an encoding apparatus according to the present invention.
As a configuration, an image blocking unit 11 that divides an image into blocks having an arbitrary shape that is a processing unit of encoding for an input multilevel image, and performs two-dimensional wavelet transform on the blocked image 2 Dimensional wavelet transform means 12, coefficient order control means 13 for determining the order of coefficients to be encoded from the state of transform coefficients obtained by the wavelet transform, and coding processing in the coefficient order determined by the coefficient order control means Coefficient blocking means 14 for dividing the coefficient into blocks of arbitrary size, coefficient encoding means 15 for encoding the coefficient for each of the blocked coefficients, and controlling the amount of code encoded by the coefficient encoding means And a code amount control means 16 for performing the processing.
[0024]
The operation will be briefly described. First, an image input for encoding is input to the image blocking unit 11 and divided into blocks of an arbitrary size. There are various methods of division, but it is suitable to form a rectangular block having the same horizontal size and vertical size suitable for image processing such as rotation. The image divided into blocks becomes an encoding processing unit and is input to the two-dimensional wavelet transform means 12. The two-dimensional wavelet transform unit 12 performs a two-dimensional wavelet transform process on the input image to convert the image into a coefficient.
[0025]
There are various two-dimensional wavelet transform methods, and an example is one in which a two-dimensional coefficient is created by performing wavelet transform as shown in FIG. In general, a one-dimensional wavelet transform is applied to the horizontal direction and the vertical direction to create a two-dimensional coefficient, and the example in FIG. 6 is basically the same. As shown in FIG. 7, the conversion is performed recursively on the lower band (LL component) to achieve a hierarchical structure of the coefficients. The coefficients created by the two-dimensional wavelet transform means are input to the coefficient order control means 13 and the coefficient coding order is determined.
[0026]
As an example of the coding order determination method, a method of using the hierarchical structure shown in FIG. 7 and firstly applying the coefficient for the low-resolution image component and after the coefficient for the high-resolution image component. Specifically, taking FIG. 7 as an example, the coefficients of the second layer (2LL, 2LH, 2HL, 2HH) are encoded first, and then the first layer (1LH, 1HL, 1HH) is encoded. The order is to be
In addition, an encoding order method that can gradually improve the accuracy of the coefficients of each layer is also conceivable. As a result, the image quality gradually improves. Specifically, the hierarchical structure is not used as in the former, but the order of the coefficients corresponding to the upper bits of each coefficient is set first and the parts corresponding to the lower bits are set later.
Furthermore, to speed up factor sequence determination or for the user to arbitrarily control has a plurality of coefficients sequence table defined Me pre, during the order determined from the sequence table of said plurality of 1 It is possible to choose one.
[0027]
The coefficients whose order is determined by the coefficient order control means 13 are input to the coefficient blocking means 14 based on the determined order, and are divided into blocks which are encoded by the encoder. Coefficients are divided into blocks and input to the encoder because the compression efficiency is improved by adaptively changing the distribution of code bits within the block, the work area required by the encoder is reduced, etc. Is the main reason.
The block-divided coefficients are subsequently input to the coefficient encoding means 15 for encoding. Examples of the encoding performed here include the arithmetic encoding schemes mentioned above. The code created by the coefficient encoding unit 15 is input to the code amount control unit 16 to control the code amount.
[0028]
As a code amount control method, when the code amount per unit exceeds a predetermined code length, the code of the final block is deleted from the code string as shown in FIG. A method of outputting a meaningless code until the code length is reached can be considered. This method has an advantage that it can be processed at high speed. As another method, as shown in FIG. 9, when the code amount per unit exceeds a predetermined code length, the code is changed so that the code of the final block falls within the predetermined code length. A method of performing the processing to be considered is conceivable. According to this method, the amount of meaningful information in the assigned code length can be increased, and the image quality can be improved at high speed.
[0029]
In the code configuration according to the present invention, in order to accurately reproduce an image on the decoding side, the code amount control means inserts information on the coding order of the coefficients into the code string, and is predetermined including the information. It is conceivable to control the code amount. As shown in FIG. 10, if the information (order) indicating the coding order of the coefficients is inserted into the code string, the decoding side can grasp the coding order from the code string, so that an accurate image can be obtained. Can be reproduced.
[0030]
As described above, the present invention is characterized in that encoding is performed while maintaining a constant code amount. According to this, the advantage is that the code amount is constant and the image quality is high. Encoding is possible. Further, the created code string can be easily displayed hierarchically during reproduction.
[0031]
Next, it will be described with reference to the block diagram of FIG. 11 for an example of a decrypt unit. As a configuration, a coefficient decoding unit 21 that performs a decoding process on an input code string to reproduce a coefficient group, and a decoding coefficient order determination unit 22 that determines an order of coefficients encoded from the input code string. The transform coefficient reproducing means 23 for reproducing the transform coefficients based on the results of the coefficient decoding means and the decoded coefficient order determining means, and performing the two-dimensional wavelet transform opposite to the transform performed at the time of encoding on the reproduced coefficients. It consists of a two-dimensional inverse wavelet transform means 24 for reproducing an image, and an image reproduction means 25 for creating an entire image from the image reproduced by the two-dimensional inverse wavelet transform means.
[0032]
Briefly describing the operation, a code string created by the coding apparatus according to the present invention is input to the coefficient decoding means 21 and the decoded coefficient order determining means 22. The coefficient decoding means 21 restores coefficients from the code string. Decoding coefficient order determination means 22 determines in which order the restored coefficients are encoded. These two pieces of information are input to the conversion coefficient reproduction means 23, and reproduction of the conversion coefficient for accurately reproducing the image is performed. The coefficient restored by the transform coefficient reproducing means is input to the two-dimensional inverse wavelet transform means 24, and a conversion process reverse to that at the time of encoding is performed to reproduce an image. Since the reproduced image is an image in units of blocks, the entire image is reproduced by being synthesized by the image reproducing means 25.
As described above, since it is possible to reproduce an image while understanding the coefficient order at the time of encoding, the image can be accurately reproduced.
[0033]
【The invention's effect】
The encoding apparatus according to the present invention performs wavelet transform on the divided block unit image based on performing the encoding process on the block unit of any size, and from the state of the coefficient after conversion. Decide the order of coefficients to be encoded so as to achieve high image quality, perform coding after blocking in the determined order, and control the generated code amount to a predetermined fixed length code amount Therefore, there is an advantage that the code amount is constant, and high-quality encoding is possible.
[0034]
Although it is possible to reduce the image quality degradation if the order of encoding the coefficients is arbitrary, there is a risk that the processing becomes complicated and the processing speed may be reduced when determining the order. Therefore, a typical coefficient coding order is defined in advance, and at the time of coding, one of them is selected and used, thereby enabling high-speed processing.
[0035]
It is determined whether or not the code length exceeds each code of the sequentially generated coefficient units. If the code length is exceeded, the code preceding the code is valid, and the remaining codes are meaningless codes. Therefore, it is very simple and high-speed processing is possible to obtain a predetermined code length.
[0036]
However, it is a loss because the last code (remaining code) is discarded. Therefore, if the code length is exceeded, the code can be changed to a code word that fits within the code length, so that the amount of meaningful information in the assigned code length can be increased, and the image quality can be improved. Become.
[0037]
Since information indicating the coding order of the coefficients is inserted in the code string, the decoding side can grasp the coding order from the code string, so that an accurate image can be reproduced.
[Brief description of the drawings]
FIG. 1 is a block diagram of a facsimile when the encoding apparatus of the present invention is concretely implemented.
FIG. 2 is a diagram showing functional blocks of JPEG2000.
FIG. 3 is a diagram illustrating a flow of EBCOT processing.
FIG. 4 is a diagram for explaining the concept of arithmetic coding, taking a symbol sequence “0100” as an example;
FIG. 5 is a block diagram for explaining an example of an encoding apparatus according to the present invention.
FIG. 6 is a diagram illustrating an example of creating a two-dimensional coefficient by performing wavelet transform.
FIG. 7 is a diagram illustrating an example in which a low-frequency band (LL component) is recursively converted to achieve a hierarchical structure of coefficients.
FIG. 8 shows that when the code amount per unit exceeds a predetermined code length, the code of the last block is deleted from the code string, and a meaningless code is used until a predetermined fixed code length is reached. It is a figure which shows the example output.
FIG. 9 is a diagram illustrating an example in which the code is changed so that the code of the final block falls within a predetermined code length when the code amount per unit exceeds a predetermined code length.
FIG. 10 is a diagram illustrating an example in which information (order) indicating a coding order of coefficients is inserted into a code string.
11 is a block diagram showing an example of a decrypted device.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Image reading part, 2 ... Image processing part, 3 ... Encoding part, 4 ... Decoding part, 5 ... Image processing part, 6 ... Image output part, 11 ... Image blocking means, 12 ... Two-dimensional wavelet transformation means, 13 ... Coefficient order control means, 14 ... Coefficient blocking means, 15 ... Coefficient coding means, 16 ... Code amount control means, 21 ... Coefficient decoding means, 22 ... Decoding coefficient order determination means, 23 ... Transform coefficient reproduction means, 24 ... two-dimensional inverse wavelet transform means, 25 ... image reproduction means.

Claims (1)

入力多値画像に対して符号化の処理単位となる任意の大きさのブロックに画像を分割する画像ブロック化手段と、前記ブロック化された画像に対して2次元のウェーブレット変換を施して、画像から係数への変換を行う2次元ウェーブレット変換手段と、前記ウェーブレット変換で得られた係数を符号化する順序を、低解像度の画像成分に対する係数を先に、高解像度の画像成分に対する係数を後にする順序に決定する係数順序制御手段と、前記係数順序制御手段で決定された順に並べられた係数を、符号化処理で符号化する単位にブロック分割する係数ブロック化手段と、前記係数ブロック化手段で分割された各係数ブロックに符号化処理を行って、各係数ブロックの符号を生成する係数符号化手段と、前記係数順序制御手段で決定された係数の順序情報を、前記係数符号化手段で生成された符号の列の先頭に挿入し、前記係数の順序情報が挿入された符号の列を、順にまとめて、予め設定した固定符号長の符号量となるように制御する符号量制御手段とを具備し、前記符号量制御手段は、前記符号を順にまとめて1つの符号量とするときに、該まとめた符号の列が前記固定符号長を越える場合には、最終の符号を削除し、前記固定符号長となるまで意味のない符号を出力するよう制御することを特徴とした多値画像の固定長画像符号化装置。An image blocking unit that divides an image into blocks of an arbitrary size that is an encoding processing unit for an input multilevel image, and two-dimensional wavelet transform is performed on the blocked image to generate an image The order of encoding the coefficients obtained by the wavelet transform is preceded by the coefficients for the low-resolution image components and the coefficients for the high-resolution image components. Coefficient order control means for determining the order, coefficient blocking means for dividing the blocks arranged in the order determined by the coefficient order control means into units to be encoded by the encoding process, and the coefficient blocking means Coding processing is performed on each divided coefficient block to generate a code for each coefficient block, and the coefficient order control means determines The sequence information of the number is inserted at the head of the code sequence generated by the coefficient encoding means, and the sequence of codes into which the sequence information of the coefficients is inserted is collected in order, and a code of a fixed code length set in advance Code amount control means for controlling the code to be a quantity, and when the code quantity control means collects the codes in order to form one code quantity, the combined code string indicates the fixed code length. exceeds a case, remove the last of the code, the fixed code length and the benzalkonium be output to so that the control with no code meaningless until fixed length image coding apparatus of the multi-level image, wherein.
JP2002029827A 2002-02-06 2002-02-06 Fixed-length image encoding device Expired - Fee Related JP4137458B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002029827A JP4137458B2 (en) 2002-02-06 2002-02-06 Fixed-length image encoding device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002029827A JP4137458B2 (en) 2002-02-06 2002-02-06 Fixed-length image encoding device

Publications (2)

Publication Number Publication Date
JP2003234905A JP2003234905A (en) 2003-08-22
JP4137458B2 true JP4137458B2 (en) 2008-08-20

Family

ID=27773863

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002029827A Expired - Fee Related JP4137458B2 (en) 2002-02-06 2002-02-06 Fixed-length image encoding device

Country Status (1)

Country Link
JP (1) JP4137458B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2008093698A1 (en) * 2007-01-31 2010-05-20 ソニー株式会社 Information processing apparatus and method

Also Published As

Publication number Publication date
JP2003234905A (en) 2003-08-22

Similar Documents

Publication Publication Date Title
US5881176A (en) Compression and decompression with wavelet style and binary style including quantization by device-dependent parser
US5966465A (en) Compression/decompression using reversible embedded wavelets
US6757437B1 (en) Compression/decompression using reversible embedded wavelets
US7068849B2 (en) Method and apparatus for compression using reversible wavelet transforms and an embedded codestream
US6546143B1 (en) Efficient wavelet-based compression of large images
US6195465B1 (en) Method and apparatus for compression using reversible wavelet transforms and an embedded codestream
US8565298B2 (en) Encoder rate control
US7492955B2 (en) Method and apparatus for compression using reversible wavelet transforms and an embedded codestream
US6229927B1 (en) Reversible embedded wavelet system implementation
US7302105B2 (en) Moving image coding apparatus, moving image decoding apparatus, and methods therefor
JP2007267384A (en) Compression apparatus and compression method
JP2005218124A (en) Data compression system
Zandi et al. CREW lossless/lossy medical image compression
JP4137458B2 (en) Fixed-length image encoding device
JP2006211513A (en) Encoding processor, encoding processing method, program and information recording medium
JP2002290743A (en) Image information coding method, coding apparatus, digital copying machine, digital facsimile machine, and digital filing apparatus
JP4054430B2 (en) Image processing apparatus and method, and storage medium
JP2003244443A (en) Image encoder and image decoder
JP2006086579A (en) Image processing apparatus, program and storage medium
JP2002344323A (en) Image coder
JPH10290462A (en) Image processing unit
JP2004056575A (en) Moving image encoding device, moving image decoding device and their methods
JP2007173940A (en) Image processing apparatus and image processing system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041105

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20041108

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070130

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070330

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080318

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080418

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080604

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110613

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110613

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130613

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees