JPS6367080A - デ−タ符号化方法 - Google Patents

デ−タ符号化方法

Info

Publication number
JPS6367080A
JPS6367080A JP61210625A JP21062586A JPS6367080A JP S6367080 A JPS6367080 A JP S6367080A JP 61210625 A JP61210625 A JP 61210625A JP 21062586 A JP21062586 A JP 21062586A JP S6367080 A JPS6367080 A JP S6367080A
Authority
JP
Japan
Prior art keywords
data
block
encoding
bits
code
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.)
Pending
Application number
JP61210625A
Other languages
English (en)
Inventor
Yasuo Kubota
靖夫 久保田
Yuji Kobayashi
雄二 小林
Tsutomu Wakabayashi
若林 勉
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.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing 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 Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP61210625A priority Critical patent/JPS6367080A/ja
Publication of JPS6367080A publication Critical patent/JPS6367080A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、データ圧縮のための符号化方法に係り、特に
画像データの圧縮に好適なデータ符号化方法に関する。
〔従来の技術〕
例えば、カラー階調画像データなどでは、一般のそのデ
ータ量が膨大なものとなり、このため、その伝送や蓄積
などの処理に種々の問題が生じる。
そこで、このようなデータの処理には、従来から種々の
データ圧縮のための符号化方法が用いられており、その
−例として、例えば、東京工業大学 工学部 画像情報
工学研究施設 中部 正之外2名により、印刷学会 昭
和61年春期研究発表金において発表された、“各種直
交変換を用いた印刷用画像のデータ圧縮 第一報”と題
する論文による、いわゆるブロック符号化方式がある。
第19図は、このようなブロック符号化による従来のデ
ータ符号化方法の一例を示したもので、この第19図に
おいて、(a)は送信側を、そして(b)は受信側をそ
れぞれ表しており、以下、この第19図により従来例に
ついて説明する。
まず、(alの送信側では、 1)伝送すべき画像データを複数の画素からなるブロッ
ク、例えば、8×8画素、又は16×16画素からなる
ブロックに分割し、こうしてブロックに分けたデータX
1を直交変換器1に入力する。
2)直交変換器1はブロックごとのデータXIを直交変
換してデータX2とし、このデータX2を量子化器2に
入力する。
3)量子化器2は入力されたデータX2を線形に量子化
してデータX3を得、それを符号化器3に供給する。
4)符号化器3は、2次元配列からなるブロック内での
各データの位置ごとに、それぞれ独立に、予め所定値と
して設定しである符号化ビット数によりデータX3の符
号化を行ってデータX4を得、このデータX4を伝送路
に出力する。
次に、(b)の受信側では、 1)伝送路を介して送られてきた符号化データX4を復
号器4に入力し、復号したデータX’sを逆量子化器5
に入力する。
2)逆量子化器5はデータX’3を線形に逆量子化し、
逆量子化されたデータX’tを直交逆変換器6に入力し
、逆変換して再生画像データX“、を得、それを外部に
出力する。
ここで、符号化器3の出力である符号化データX4は、
元のブロック化データX+に比してデータ圧縮されてお
り、この結果、伝送時間が短くて済むなど、データ圧縮
による効果を得ることができる。
〔発明が解決しようとする手段〕
ところで、このような直交変換を用いたデータ圧縮法で
圧縮率をさらに向上させようとした場合、2次元直交変
換によって得られた2次元配列内データのうち、高次の
データを全て零とするか、又は量子化を粗くするかの方
法が、従来から採用されていた。
しかしながら、これらの方法のうち、前者の方法では2
次元直交変換の結果を低次のデータだけで代表させて表
現したことになり、この結果、特有の粒状ノイズが再生
画像に表れ、他方、後者の方法では、画像を複数のブロ
ックに分けて2次元直交変換し、圧縮、再生した場合に
、原画像にはなかったこのブロックの境界が現れるとい
った、それぞれ視覚的に目立つ画像劣化が生ずるという
問題がある。
本発明の目的は、上記した従来技術の問題点に充分に対
処でき、画質の劣化を伴わずに充分なデータ圧縮が得ら
れるようにしたデータ符号化方法を提供することにある
〔問題点を解決するための手段〕
上記目的は、本発明によれば、2次元直交変換して得た
2次元配列データに対して重み付けを行うことにより達
成される。
ここで、上記した従来技術のうち、前者の方法について
さらに説明すると、このようなデータ圧縮法では、直交
変換後、量子化して得られる2次元配列データの高次の
項に零データが集中して表れるようなデータに対しては
、この零データにランレングス符号化を適用することで
大幅な圧縮率の向上が得られる。
しかしながら、一般的なデータの場合、事は簡単には運
ばない。
第20図に、2次元直交変換後の2次元配列内データの
絶対値分布の例を示す。
この第20図において、(alは高次の項に情報量が少
ないデータの例で、(ト))は同じく多いデータの例で
ある。
上記したように、直交変換後、量子化された2次元配列
内の高次に零データが集中すれば、これらに対してラン
レングス符号を用いて表現することで圧縮率は向上され
る。ところが、第20図(5)に示した配列内データに
関しては、A、B、C点のように、零に近いが零ではな
い点が存在する為、“0の連続数”が大きくならず、圧
縮率を向」二できない。
しかして、このようなデータに対しては、第21図に破
線で示すような重みを乗じた後、量子化することで、第
22図(a)に示すデータに変換でき、“0の連続数”
が増加し、圧縮率を向上できる。
なお、このとき、A、B、Cの点は、零に近い値であっ
た為、再生画像の劣化は目だだない。
ところが、第20図Ta1に示した配列内データに対し
ても同様に、第21図の破線で示す重みを乗じた場合に
は、図中にH,Iで示しである大きな値のデータ(画像
の重要な周波数成分)までも零にしてしまう為に再生画
像に目ざわすな粒状ノイズが表れ、圧縮率の向上は得ら
れるものの、大きな画質劣化を伴ってしまう。
そこで、本発明では、例えば第21図の実線に示すよう
に、データの配列内での次数に応じて所定の関数として
与えられる重み付け係数を用いるようにしている。
〔作用〕
重み付け係数がデータの次数の関数となっているため、
例えば第20図Ta1. (b)のデータに対して、そ
れぞれ第22図(al、 (b)に示すような処理を与
え、この結果、図中のA〜Gの点で表す零に近い値をも
ったデータはA′〜G′で示すように零とすることがで
き、他方、H,Iで表すデータについては、それらはH
’、I’ で示すように充分に残すことができ、従って
、再生画像に若干ボケが現れるものの、目ざわりな粒状
ノイズがな(、画像劣化を抑えながら充分に圧縮率を向
上できる。
〔実施例〕
以下、本発明によるデータ符号化方法について、図示の
実施例により詳細に説明する。
第1図及び第2図は本発明の一実施例で、第1図はデー
タ圧縮部(送信側)を、そして第2図はデータ伸長部(
受信側)をそれぞれ示したものである。
この実施例は、イメージスキャナなどの画像データ源か
ら供給されてくる画像データを、ダブルバッファによっ
て所定の大きさのブロックにまとめ、それを一方のダブ
ルバッファから他方のダブルバッファに順次転送させる
ようにし、この転送時にそれぞれ所定のデータ処理やデ
ータ操作が実行されていくように構成したもので、まず
、第1図のデータ圧縮部について説明すると、外部から
入力されてくる画像データはダブルバッファ1゜の一方
のバッファ10aと他方のバッファ1obに交互に、1
6X16画素からなる2次元配列のブロック毎に書き込
まれ、以後、このブロック毎に交互に、各バッファ10
a、10bがら読み出されていく。このとき、各バッフ
ァ10a、10bに書き込まれるデータa−1は第3図
に示すように、16X16画素を1ブロツクとし、各画
素が8ビツトからなるデータとなる。
ダブルバッファ10に格納された画像データa−1は、
次にダブルバッファ12に1ブロツク毎に区切って転送
されるが、このときコサイン変換器11によってコサイ
ン変換が施こされた上でダブルバッファ12の各バッフ
ァ12a、12bに交互に、順次格納されてゆく。
コサイン変換器11は、画像情報を周波数成分として表
すことにより、配列内での低次の項に情報成分を集中さ
せ、これにより効率的な符号化が得られるようにするた
めのもので、ブロック符号化によるデータ圧縮の中心と
なるものであり、画像データa−1をXl  (t、j
)で、そしてコサイン変換後の画像データ、すなわち、
変換データa−2をXt  (u、v)でそれぞれ表し
たとき、コサイン変換は次のようになる。
ここで、Mニブロック配列の行数=列数f + J +
 II I V :データX、のブロック配列内での座
標値、従って、 =0.1,2.−・・・−(M−1) :1     (u、v≠0) なお、この実施例では、ブロック符号化のための直交変
換としてコサイン変換を用いているが、本発明では、コ
サイン変換に限らず、フーリエ変換、アダマール変換な
どの直交変換を用いて実施してもよいことは言うまでも
ない。
第4図に、ダブルバッファ12のいずれかのバッファ1
2a又は12bに書き込まれたコサイン変換データa−
2の一例を示す。
こうしてダブルバッファ12のいずれかのバッファ12
a又は12bに対する変換データa−2の書き込みが終
了するごとに、今度はその読み出しが行われるが、この
実施例では、このときでの変換データa−2のバッファ
12a又は12bがらの読み出しの順序により、1ブロ
ック分のデータ内での複数の所定の形状の単位ブロック
への区分が行われる。すなわち、この実施例では、2次
元配列された1ブロック分のデータを、さらにその配列
の中で複数の所定の形状の単位ブロックに分割し、この
単位ブロックごとに独立して符号化のためのビット数を
割り当てるようにした点を特徴としたものであるが、こ
の単位ブロックへのデータの区分をバッファ12a又は
12bからの読み出しの順序で行うようになっているの
である。
第5図はこの実施例における単位ブロックの区分状態を
示したもので、1ブロック分の配列の中での変換データ
の次数の低い部分から高い部分に向かってほぼ対称的に
、かつ順次、その大きさが大きくなってゆくようにして
11の単位ブロックに分割したものである。なお、以下
、この単位ブロックを小ブロックという。
以上のような、小ブロツク分割のためのダブルバッファ
12からの変換データa−2の読み出しを制御するのが
読出アドレス制御器13であり、そこでこのアドレス制
御器13はダブルバッファ12に対して第6図に示す順
序で、各バッファ12a又は12bからの変換データa
−2の読み出しが行われるように、各ブロックごとの続
出アドレスを順次発生する。
従って、第5図と第6図とを比較すれば明らかなように
、ダブルバッファ12から各ブロック毎の変換データa
−2の読み出しが開始して第1番目から第256番目ま
での1ブロック分のデータの読み出しが終わるまでの間
で、まず第1番目に読み出されるデータが小ブロック■
のデータであり、以下、第2番目から第6番目までが小
ブロック■のデータ、第7番目から第16番目までが小
ブロック■のデータ、−・・−・−・−1第193番目
から第256番目までが小ブロック0のデータというよ
うになり、結局、第7図に示すように、データの順番に
より小ブロックに対する区分が定まることになり、以後
、このデータの順番によって小ブロツク毎の異なった処
理を実行することができるようになるのである。
なお、この読出アドレス制御器13により、第6図に示
す順序でのデータの読み出しを行わせるためには、続出
アドレス制御器13に、例えばカウント機能と、テーブ
ルを設け、画像データa−1の入力に同期して供給され
るクロック信号のカウント結果によりテーブル検索を行
い、所定のアドレスデータを逐次発生させてゆくように
すればよい。このとき、第5図及び第6図に示した小ブ
ロックの分割態様と小ブロツク内でのデータの続出順序
とは一実施例にすぎず、従って、これら以外のやり方で
も本発明の実施が可能なことは言うまでもない。例えば
、上記実施例では、第5図から明らかなように、各小ブ
ロックの大きさくその中に含まれるデータ数の大小)が
、2次元配列の1ブロック分のデータ内で高次のデータ
を含むもの程、大きくなってゆくように構成しているが
、これに代えて、各小ブロックの大きさを同じに揃えて
もよく、分割数も11に限らないことは言うまでもない
以上のようにして、ダブルバッファ12から順次、読み
出された変換データa−2は、まず重み付け器14の乗
算器14aに入力され、重み係数発生器14bから与え
られる重み係数a−3による重み付け処理を受ける。
この重み付け器14での処理は、直交変換したデータの
それぞれごとに、その重要性に応じた重み付けを行い、
必要とする情報はなるべく損なわれないようにしながら
、伝送すべき情@量の削減が充分に得られるようにする
ためのもので経験的に決めるが、具体的には、次式で示
すように、2次元配列ブロック内の個々のデータの配列
内での位置によって決まる重み係数a−3を重み係数発
生器14bから発生させ、この係数a−3を乗算器14
aに供給し、ダブルバッファ12から順次読み出されて
(る変換データa−2に乗算することにより遂行される
a−3(i、j)=1/f「「で−フj)’−iここで
、r−fP下「戸 なお、k、sは定数で、これらの値によってデータの圧
縮率を変化させることができるもので、典形例としては
、k=4.s=8を挙げることができる。この重み係数
の例は重要な画像情報である2次元配列ブロック内の低
次のデータに対応した部分ではほぼ1″に近い係数であ
り情報を保存し、削減可能な2次元配列ブロック内デー
タの多い高次の部分に対応する係数は高次になるに従っ
てφに近くなり情報を削減する効果を持たせたものであ
る。
この重み係数発生器14bによる重み係数a−3の発生
は、1ブロツク分のデータに対応して、16X16の2
次元配列データからなるテーブルを用い、このテーブル
を続出アドレス制御器13から与えられるアドレスデー
タにより検索して行うようになっている。
第8図に、k=4.s=8としたときのテーブルを示す
。従って、この第8図のテーブルの各数値が1ブロツク
の2次元配列内での対応する変換データa−2の個々に
対する重み係数a−3となる。
こうして重み付けされたデータは次に整数化器15に入
力され、ここで数値の小数部を削除するという単純な処
理で整数化されてデータa−4となる。
この整数化器15を設けている理由は、必要な情報の伝
達にあまり寄与しない部分を切捨てることにより、伝送
に必要なビット数の削除が、より多く得られるようにす
るためであり、第9図に、このデータa−4の一例を示
す。この第9図は第4図の変換データa−2に対して重
み付け処理と整数化処理を施こしたもので、図中でアン
ダーパーを付したゼロ(1)が、重み付けと整数化によ
ってゼロにされてしまったデータを表している。
このデータa−4は、次に再量子化器16に入力され、
小ブロックごとに異なったステップによる量子化を再び
行う。この実施例における再量子化器16による具体的
な処理は次のようになっている。すなわち、2次元配列
内での低次のデータを含む小ブロック■、■、■のデー
タに対してはステップ1で量子化を行い、残りの小ブロ
ック■〜0のデータに対してはステップ2で量子化を行
うのである。この結果、精度の必要な低次のデータにつ
いての劣化を充分に抑えながら圧縮可能な高次のデータ
については充分なデータ圧縮を得ることができる。なお
、この実施例における再量子化層16の処理について、
さらに具体的にいえば、この再量子化器16では続出ア
ドレス制御器13からのアドレスデータにより、入力さ
れてくるデータが小ブロックのいずれに属するものかを
識別し、まず、そのデータが小ブロック■〜■のいずれ
かに属するものであったときには、このデータをそのま
ま出力に送り出してデータa−5とする。
つまり、このときには、そのデータが整数化器15を介
して入力されていることにより、ステップ1で量子化し
たのと同じ結果になるのである。次に、入力されてきた
データが小ブロック■〜■のいずれかに属するものであ
ったときには、このデータの数値によりテーブル検索を
行い、このテーブルから読み出されてくるデータを出力
する。このテーブルは、その検索入力の数値を2で除算
し、その結果を四捨五入した形で出力に与えるように作
られており、この結果、小ブロック■〜■のデータに対
してはステップ2で量子化が行われたことになるのであ
る。
第10図にこの量子化データa−5の一例を示す。この
第10図の量子化データa−5は第9図のデータを量子
化したもので、図中、括弧内の数字は、その小ブロツク
内での処理順序を表したものである。
こうして量子化したデータa−5は次の符号化に備えて
、一方ではそのままダブルバッファ17に供給されるが
、これと並行して最大絶対値検出器18にも入力され、
ここで各小ブロックごとに、その中でのデータの最大絶
対値の検出を行い、次に、この検出結果をビット配分器
19に供給し、各小ブロックごとに、その中でのデータ
の符号化に使用するビット数を決定する(このビット数
の決定をビット配分という)。
第11図はビット配分の一実施例を示したもので、この
図から明らかなように、変換次数が低く、従って情報の
重要な部分を担っているデータが主として含まれる確率
の高い、小ブロック■、■。
■のデータに対しては、その中に現れるデータの最大絶
対値とは無関係に、充分に多いビット配分(■には9ビ
ツト、■には8ビツト、■には7ビツト)を与え、これ
により画情報の劣化が充分に抑えられるようにすると共
に、高次のデータを含む■〜■の小ブロックのデータに
対しては、その小ブロツク内に現れるデータの最大絶対
値に応じて、その都度、適切なビット配分が与えられ、
これにより、常に高い圧縮率と低いデータ損失との両立
を確保できるようにしている。
なお、この第11図のビット配分は一実施例にすぎず、
これ以外のビット数の割り当てや組合わせによって実施
してもよいことは言うまでもなく、このときに設定すべ
きビット数に対する考え方としては、そのビット数がデ
ータの符号化に際して選択される可能性が高く、かつ、
選択の対象となるビット数のうちの最大ビット数を用い
ることにより、その小ブロツク内のデータの符号化が、
はぼ完全に行えるようなものとすればよい。
こうしてビット配分器19で決定され出力されたビット
配分データa−6は、まず一方では、ダブルバッファ1
7に格納されている変換データa−5の符号化に備えて
ダブルバッファ2oに供給されると共に、このビット配
分データa−6それ自身をも受信側に伝送するためにビ
ット配分符号化器21に入され、ここでテーブル検索に
よる符号化を受けてビット配分符号a−7に変換される
なお、ここで、ビット配分データa−6を受信側に伝送
するのは、受信側での変換データの復号化のためであり
、また、このときビット配分符号化器21でビット配分
符号a−7に変換しているのは、伝送すべきデータ量が
少なくて済むようにするためである。しかして、このと
き、小ブロック■、■、■のデータに対するビット配分
は、上記したように、それぞれ(■=9)、(■=8)
、(■=7)と固定されているため、これらの小ブロッ
ク■〜■についてのビット配分データの受信側への伝送
は不要であり、従って、この実施例では、これら小ブロ
ック■〜■のビット配分データの伝送は行わず、勿論、
ビット配分符号化器21でも符号化は行わないように構
成されている。
第12図にビット配分符号化器21における符号化用の
テーブルの一実施例を示す。
この第12図から明らかなように、ビット配分符号とし
ては2ビツトを用いており、上記したように、小ブロッ
ク■〜■については符号化しない。
第13図は、−例として、第10図に示した変換データ
a−5の場合におけるビット配分a−5とビット配分符
号a−7を示したもので、この図から明らかなように、
ビット配分符号化器21を用い、第11図に示すテーブ
ルを用いて符号化しているため、この実施例によれば、
ビット配分の伝送を16ビツト(a−7の合計)で行う
ことができる。
一方、ダブルバッファ17に格納されている1ブロック
分の量子化データa−5に対して、そのブロックに対応
したビット配分a−6がダブルバッファ20に用意され
たことにより、ここでデータ符号化器22による量子化
データa−5の、各小ブロックごとに選択されているビ
ット数(ビット配分a−6)による符号化が開始し、ダ
ブルバッファ17のバッファ17a又は17bのいずれ
かから順次1データづつ読出されてくる量子化デ−タを
、ダブルバッファ20のバッファ20a又は20bのい
ずれかから各小ブロックごとに定められたビ・ント配分
によって決まるビット数で符号化した符号化データa−
3が出力されてゆく。
このデータ符号化器22による符号化は、ビット配分a
−6で与えられるビット数で、量子化データa−5を2
の補数として表現する方法によって行われる。ただし、
このとき、′−0″符号については、そのときのビット
数で表現可能な2の補数のうちで最小値を示すデータ(
例えば、このときのビット配分が3だったとすれば、こ
のときの最小の数は−4であり、これは2進数で“10
0″となる)とする。
ところで、このダブルバッファ17に格納した量子化デ
ータa−5については、それを全部、そのまま符号化器
22で符号化し、符号化データa−8として伝送するよ
うにしてもよいが、この実施例では、さらに圧縮率を上
げるため、量子化データa−5中の0″の伝送について
は、ランレングス符号化法を併用するようになっている
。すなわち、例えば第10図を見ると明らかなように、
1ブロック分の量子化データa−5の中で、特に高次の
データからなる小ブロックにおいては、データが“0″
になっている場合が多く、従って、伝送のために順次読
み出していったとき、小ブロツク内で連続してデータ“
O″が現れる場合がかなり多くなっており、このため、
このデータwO″の伝送にランレングス符号化法を適用
すれば、さらに高いデータ圧縮が得られるからである。
このため、ダブルバッファ17から量子化データa−5
を順次読み出してデータ符号化器22に入力してい(と
き、これと並行して、この量子化データa−5を零検出
器23にも供給し、データ“0”が検出されるごとに、
その連続数を零計数器24によってカウントさせ、この
結果をフィル符号化器25によってランレングス符号化
し、その結果も符号化データa−8として出力させるよ
うにしている。
ところで、この実施例では、上記のように、データ符号
化器22による符号化に、データを2の補数として表現
する方法を用いており、この結果、例えば3ビツトで表
現できる数は−4〜+3であり、負のデータだけ常に正
のデータより1種類多くなってしまい、本実施例のよう
に小ブロツク内の最大絶対値を用いてビット配分を決定
した場合、例えば3ビツトで符号化する際の入力される
a−5のデータの範囲は−3〜+3となり、”−4”す
なわち、ビット配分で表現できる数のうちの最小値は使
用されずムダとなる。そこで、この数を“−0”符号す
ることでデータ″0”のランレングス符号化に際して、
以下のようにしている。
j データ″0″が単独に存在していたときには、符号
化データとして“+0″を出力する。
ii  データ“0″が2以上連続して存在していたと
きには、−0”に引き続いて0の連続数を符号化したデ
ータを出力する。
従って、この実施例において第10図の量子化データに
よる符号化データa−8は第14図のようになり、これ
が多重化器26に供給されることになる。
なお、このときのデータ″0″の連続数の符号化には、
フィル符号化器25を用いているが、この符号化にはフ
ィル符号化に限らず、ハフマン符号化などの他の可変長
符号化を用いてもよいことは言うまでもない。
また、このとき、各小ブロツク内でのデータの読み出し
順序は、データ“0”の連続数がなるべく多く得られる
ように、各小ブロツク内で低次の項のデータから順次高
い次数のものに移っていくように選ぶのが望ましく、こ
のため、上記実施例では第6図に示すような順序を採用
しているのである。
さらに、このときのデータ“0”が連続する範囲は、1
つの小ブロツク内に限定して扱う必要はなく、複数の小
ブロツク間にまたがって連続する場合について適用して
もよい。そして、成る小ブロツク内のデータが全てOと
なっていたときには、この小ブロックに関するビット配
分情報は、その小ブロック内データの復号には必要ない
ので、このときには符号化を行わないようにする方式と
してもよい。
他方、このデータ″0”の符号化としては、例えば、1
個の独立した0に対しては“十〇”の符号を、そして予
め定めておいたn個の連続した0に対しては“−〇”の
符号をそれぞれ割り当てる方法も利用可能である。
さらに、小ブロツク毎の符号化のためのビット数、つま
りビット配分に0を含ませておき、その小ブロツク内の
データが全て“0”になっていたときには、このビット
配分を0にすることにより小ブロツク内のデータを一括
して符号化する方法などの利用も可能である。
こうして、符号化データa−8が多重化器2Gに供給さ
れると、このデータa−8はビット配分符号化器21か
らのビット配分符号a−7と第15図に示すように時分
割的に多重化されて伝送データa−9となり、この伝送
データa−9がバッファ27に書き込まれることにより
伝送路を介して受信側に伝送される。なお、このバッフ
ァ27はいわゆるファーストイン・ファーストアウト(
FIFO>バッファである。また、第15図に示しであ
る伝送データa−9のビット数のうち、ビット配分符号
a−7のビット数は常に16ビツトと一定であるが、そ
の後に続く符号化データa−8のビット数は各ブロック
毎のデータの内容によって変化するものであり、図示の
300ビツトという数字は第10図に示したデータの場
合のものであることは言うまでもない。
次に、第2図のデータ伸長部について説明する。
伝送路を介してFIFOバッファ30に書き込まれた伝
送データa−9は、このバッファ30から順次読み出さ
れ、データb−1として切換器31に1ビツトづつ入力
されていく。
切換器31は入力されてくるデータのビット数をカウン
トし、リセット人力Rにリセット信号が入力されてから
カウント数が16に達するまでの期間中だけ、入力デー
タb−1を出力データb−2として出力させ、それ以外
の期間は、入力データb−1を出力データb−3として
出力する働きをする。
第15図で説明したように、送信側からの伝送データa
−9(=b−1)は、1ブロック分のデーVの最初の部
分に16ビツトのビット配分符号a−7をもっている。
従って、■ブロック分のデータの受信が終了するごとに
切換器31にリセット信号を入力してやれば、この切換
器31の出力データb−2としてはビット配分符号a−
7だけが分離して得られることになる。なお、このとき
のリセット信号の発生については後述する。
こうして出力データb−2として分離されたビット配分
符号a−7(以下、これをb−2という)は、ビット配
分復号器32に入力され、ここでテーブル検索によりビ
ット配分b−4(=a−6)となり、バッファ33に格
納される。なお、このビット配分復号器32で使用され
るテーブルは第12図で説明した符号化テーブルの逆に
なっている。
次に、切換器31がリセットされてから入力されている
データb−iが17ビツト以降になると、今度は出力デ
ータb−3に切換えられ、これによリデータ復号器34
.零検出器35.それにワイル符号復号器36に、入力
データb−1のうちのビット配分符号b−2を除いた符
号化データa −8(以下、これをb−3という)が入
力されていくようになる。
この結果、まず、データ符号器34では、入力されてく
る符号化データb−3のビット順序により、そのデータ
が所属する小ブロツク番号を知り、これによりバッファ
33から与えられているビット配分b−4の選択を行い
、選択したビット配分(ビット数)に基づいて復号を行
っていく。このとき、第11図で説明したように、小ブ
ロック■。
■、■に属するデータの復号に使用するビット数につい
ては、それらが固定されており、かつ、ビット配分とし
て伝送されてこないようになっていることから、バッフ
ァ33から取り込んで選択するのではなく、予めテーブ
ルとして与えられているものを使用するようになってい
る。
また、これと並行して、零検出器35は符号化データb
−3の中での符号“−0″の存在を調べ、符号“−0”
が現れるごとにワイル符号復号器36を動作させ、デー
タ“0”の連続数の復号を行わせ、その結果を零データ
出力器37に与え、この零データ出力器37によりデー
タ“0“を出力させる。
従って、この結果、データ復号器34と零データ出力器
37の出力を合成したデータb−5として、第10図で
説明した量子化データa−5と同じデータが得られるこ
とになり、この量子化データb−5が順次、ダブルバッ
ファ39の一方のバッファ39a又は他方のバッファ3
9bに、lブロックごとに交互に格納されていくことに
なる。
ここで、書込アドレス制御器38について説明する。
この書込アドレス制御器38は、データ復号器34と零
データ出力器37の出力データb−5をクロック信号と
して動作し、そのとき現れているデータが小ブロックの
いずれに属するものかを識別し、バッファ33.ダブル
バッファ39.41に対して小ブロツク番号や書込アド
レスなどのデータを供給すると共に、1ブロツク分のデ
ータの終了を検出して切換器31にリセット信号を供給
する働きをする。
なお、小ブロックの識別や1ブロツク分のデータの終了
識別は、第6図及び第7図で説明したように、データの
順番や数により容易に行うことができる。
以上のようにして、符号化データb−3の復号化が開始
し、ダブルバッファ39に1ブロツク分の量子化データ
b−5の格納が終わるごとに、以後は、このダブルバッ
ファ39を含めてダブルバッファ41.43の3個のダ
ブルバッファの間で順次、1ブロツクごとのデータの転
送を行い、送信側で施されているデータ処理に対応して
逆量子化と逆コサイン変化を行うことにより画像データ
を得るようになっている。
まず、ダブルバッファ39のバッファ39aと39bの
一方からデータを読み出し、これをダブルバッファ41
のバッファ41aと41bのいずれかに書き込みを行い
、このとき逆量子化器40を介してデータの転送を行う
ことにより逆量子化を行う。
この逆量子化は、送信側での再量子化器16による処理
に対応したもので、このため逆量子化器40では、その
ときのデータが小ブロックのいずれのデータであるかを
書込アドレス制御器38からの信号で識別し、そのデー
タが小ブロック■。
■、■のいずれかに属するものであったときには、その
データはそのまま通過させ、小ブロック■〜■のいずれ
かのデータであったときには、その値を2倍にして出力
させるように動作する。
従って、この逆量子化器40の出力データ(逆量子化デ
ータ)b−6の一例を示すと第16図のようになる。な
お、この第16図のデータは第9図のデータに対応した
もので、これらの図を比較してみれば明らかなように、
このような処理で不可避的に現れる量子化誤差のため、
両者は必ずしも一致せず、第16図でアンダーラインを
付したデータが量子化誤差を生じたものである。
次に、ダブルバッファ41と43の間では、逆コサイン
変換が施され、逆量子化データb−6から画像データb
−7が再生される。すなわち、ダブルバッファ41の各
バッファ41aと41bから1ブロツク分づつ交互にデ
ータの読み出しを行い、それをダブルバッファ43の各
バッファ43a、43bに交互に書き込み、その間でデ
ータを逆コサイン変換器42で処理して逆コサイン変換
を行うのである。
逆コサイン変換器42による処理内容は、データb−6
をx’t  (ilj)%データ復号器をX′1(u、
v)としたとき、以下のようになっている。
従って、第3図に示すような、データ量が、16X16
X8ビット−2048ビツトの画像データの伝送が、そ
の画像データの内容にもよるが、例えば第15図に示す
ように、僅が314ビツトのデータに圧縮できることに
なる。
ここで、以上の実施例によって得られる効果について説
明する。
データの伝送を効率良く行うためには、第17図fal
に示すように、直交変換後の2次元配列内の各データご
とに、各々符号化する際のビット数を決定し、この符号
化する際のビット配分表記列内データの2つの符号を使
って、配列内のデータの1つを符号化すればよいが、こ
れでは全データにビット配分を表す符号を付加しなけれ
ばならず、効率的な符号化はできない。
しかしながら、上記実施例によれば、2次元配列内のデ
ータを複数の小ブロックに分割し、各小ブロツク内のデ
ータについては全て同じビット数で符号化するようにし
ているので、第17図(blに示すように、個々の配列
内データのそれぞれについては必ずしも符号化ビット数
が適切なものとはならないが、ビット配分情報の符号化
に必要なビット数の伝送が小ブロツク単位に1つで済む
ため、全体としては効率的なデータ伝送を得ることがで
きる。これを第17図の例で比較すると、同図[alで
は全ビット数が79ビツトになるが、同図(ト))の本
発明の実施例ではビット数は全部で68ビツトで済み、
効率的であることが判る。
次に、上記実施例では、各小ブロツク内でのデータの最
大値に応じて、その小ブロック内データの符号化に使用
するビット数(ビット配分)を決めるようになっている
従って、この実施例によれば、常に適切なビット数によ
る符号化が行われ、符号化ビット数の不足による再生画
像の劣化の虞れをなくすことができ、又、余分なビット
配分を行うこともなくなる。
又、2次元配列ブロック内データの符号化方法として、
これらのデータの発生頻度分布にもとづいてあらかじめ
設定された可変長符号を用いる方法も考えられるが、こ
の2次元配列内データの発生頻度は、この配列内の位置
により大きく変化するため、この方法では2次元配列内
の各位置ごとにデータの発生頻度分布を求め、各々可変
長符号を設定しなければ圧縮効率は向上できなく、又、
各位置ごとに可変長符号を設定した場合には、装置が複
雑になることはいうまでもない。
さらに、本実施例のように2次元配列ブロック内データ
を、小ブロックに分割しビット配分を行う方法と、連続
する“0”データをランレングス符号化法を用いて符号
化する方法を併用することで、ビット配分を決定する際
の選択可能なビット数(例えば、0.2,4.6ビツト
)の中から“0ビツト”を除いても効率的に“0”デー
タを符号化できるためにビット配分″0ビット”に対応
したビット配分符号に他のビット数を割り当てることが
でき、ビット配分をより細かく設定できる(例えば、2
,3.4.6)。これにより、例えばビット配分として
3ビツト必要とする小ブロックがあった場合、“0”デ
ータのランレングス符号化法を併用しなければ、ビット
配分に4ビツトを選択しなければならなく、ビット配分
にムダが出る。
ところが本実施例では3ビツトを選択することができる
このように小ブロックごとにビット配分を行うだけの符
号化法よりも、本実施例のようにさらに“O”データの
ランレングス符号化法も併用した方法の方が、圧縮効率
が向上する。
ところで、第18図は、直交変換によって得られた2次
元配列内データの符号化に必要となる平均的なビット数
を表す曲線と各小ブロックの分割方法を表す長方形とを
示したもので、2次元配列の(1,1)と(n、n)点
を結ぶ直線で切った断面を表したものである。
特に、この長方形の面積は、その小ブロツク内の全ての
データを符号化する為に必要となる情報量を表す。
そして、この第18図において、(a)は小ブロックの
大きさを全て等しい大きさに区分した場合を示し、同図
(ト))は上記実施例において、第5図で説明したよう
に、データの次数に応じて高次のもの程小ブロックを大
きくした場合のものである。
これら第18図(al、 (blにおいて、ハツチング
を施して示した部分が無駄なビット数であり、従って、
これらの図から明らかなように、本発明の実施例によれ
ば、符号化用のビットの利用率が高く、効率的なデータ
圧縮を得ることができる。
次に、小ブロックの符号化ビット数は、小ブロックの2
次元配列内の位置によりほぼ一定している為、使用され
る確率が非常に低い符号化ビット数にも符号を割り当て
ることは符号化ビット数を符号化する時のビット数が余
分に必要となり、効率的ではない。しかるに、上記実施
例では、第11図及び第12図で説明したように、各小
ブロックごとのビット配分符号として、それぞれの対応
する小ブロツク内で使用される頻度の高いものに限定し
て符号が割り当てである。つまり、例えば第18図(b
lで、最高次の小ブロックでのビット符号化には(2,
3,4,5)を用意し、その次に高次の小ブロックのビ
ット符号化には(3,4,5゜7)を割り当てるという
ようになっているのである。
そして、この結果、上記実施例によれば、上記の場合、
各小ブロックのビット配分符号が2ビツトで済む。なお
、この方法を用いなければ、3ビツト必要であり、小ブ
ロック1つに付き、■ビットむだにすることになる。
次に、例えば、絶対値が3以下の全ての整数に符号を割
り当てる場合、−3,−2,−1,0゜+1.  +2
.+3の7種類の符号が必要となり、2進数で表現した
場合、3ビツト必要とする。
ところが、3ビツトで表現できる符号は8種類あり、1
種類の符号がむだになる。
これは、絶対値が1以下の整数や7以下の整数の場合で
も同様である。そこで、上記実施例で付随的に述べたよ
うに零符号には“±θ″の2種類の符号があると考え、
“−〇′符号に上記のあまった符号を割り当て、“−〇
′符号には“O″データ、例えば2個連続して存在して
いるという意味を持たせるようにしており、この結果、
“0″が連続する場合には、約1/2のビット数で符号
化が可能となる。
ここで、上記実施例のように、画像を複数のブロックに
分割した後、このブロックごとに直交交換し、量子化、
符号化する方法を採っていると、量子化による誤差が、
直交変換後の2次元配列の低次の部分に発生した場合、
°ブロックの境界が目立つという画像劣化が発生する。
例えば、配列内の最低次のデータに量子化誤差が発生し
た場合、これは、再生画像のそのブロックの全てのデー
タに一様に一定値を加算、又は減算することと、同じ結
果となる。そして、この様な画像劣化に対して人間の目
は敏感である。
これに対して、高次のデータに量子化誤差が兇生じた場
合には、再生画像のブロック内の全体をと細かな凹凸を
加えたのと同じ結果となる。しかして、この様な画像劣
化に対しては人間の目は鈍感である。
そこで、上記実施例では、データの量子化に際して、そ
の量子化のレベルを小ブロツク単位で変え、低次のデー
タでは量子化レベルを小さく、そして高次のデータでは
大きくしており、この結果、データ圧縮効率の低下を抑
えながら、充分に画像劣化をなくすことができる。
なお、以上の実施例では、重み付番」゛係数として第8
図に示す数値を用いているが、第20図ないし第22図
で説明した効果が得られるなら、どのような重み係数を
用いて本発明を実施してもよいことは言うまでもない。
〔発明の効果〕
以上説明したように、本発明によれば、2次元直交変換
により得た2次元配列内でのデータに、その配列内での
位置に応じて所定の重み付けを行うようにしたから、画
情報の損失を最少限に抑えなから零データの連続数が充
分に多く得られ、少ない画像劣化で大きなデータ圧縮率
の向上が図れるデータ符号化方法を容易に提供すること
ができる。
【図面の簡単な説明】
第1図は本発明によるデータ符号化方法を適用したデー
タ圧縮部の一実施例を示すブロック図、第2図は同じく
データ伸張部の一実施例を示すブロック図、第3図はデ
ータブロックの説明図、第4図はコサイン変換データの
一例を示す説明図、第5図は本発明における単位ブロッ
ク分割の一実施例を示す説明図、第6図は単位ブロック
内でのデータ読出順序の一実施例を示す説明図、第7図
は単位ブロックとデータとの対応の一実施例を示す説明
図、第8図は本発明における重み係数の一実施例を示す
説明図、第9図は本発明の一実施例における重み付けデ
ータの一例を示す説明図、第10図は同じく量子化デー
タの一例を示す説明図、第11図は本発明におけるビッ
ト配分の一実施例を示す説明図、第12図は同じくビッ
ト配分符号の一実施例を示す説明図、第13図は同じく
データ符号化の一実施例を示す説明図、第14図は符号
化データの一例を示す説明図、第15図は伝送符号の一
例を示す説明図、第16図は本発明の一実施例における
逆量子化データの一例を示す説明図、第17図は本発明
によるピッl少効果の説明図、第18図は同じくビット
の利用効果の説明図、第19図はブロック符号化方式に
よる従来例を示すブロック図、第20図は2次元配列内
でのデータの次数と絶対値との関係を示す説明図、第2
1図は重み係数の一例を示す説明図、第22図は重み付
けによる効果を示す説明図である。 10.12.17.20・・・ダブルバッファ、11・
・・コサイン変換器、13・・・続出アドレス制御器、
14・・・重み付け器、15・・・整数化器、16・・
・再量子化器、18・・・最大絶対値算出器、19・・
・ビット配分器、21・・・ビット配分符号化器、22
・・・データ符号化器、23・・・零検出器、24・・
・零計数器、25・・・ワイル符号化器、26・・・多
重化器、27゜30・・・バッファ、31・・・切換器
、32・・・ビット配分復号器、33・・・バッファ、
34・・・データ復号器、35・・・零検出器、36・
・・ワイル符号復号器、37・・・零データ出力器、3
8・・・書込アドレス制御器、39.41.43・・・
ダブルバッファ、40・・・逆量子化器、42・・・逆
コサイン変換器。 第5図 第6図 第7図 第1I図 第12図 第17図 (a) 第17図 (b) 第18図 回どシリρq泊ブ置 第装9図 (a) (b) 第20図 rσノ 第22図 (a) 舷   配+’1円イ立置    高か舷  蛎、義1
  馳 手続補正書(帥) 昭和61年10月230

Claims (3)

    【特許請求の範囲】
  1. (1)画像データを所定の画素数ごとにブロック化し、
    これらブロック化した画像データごとに直交変換して得
    た2次元配列データを用い、ブロック符号化によりデー
    タ圧縮を行うようにしたデータ符号化方法において、上
    記2次元配列データの配列内にある各データに対応して
    それぞれ独立に設定した重み付け係数を保持する手段を
    設け、これら重み付け係数により個々に重み付けされた
    データに対して量子化と符号化が行われるように構成し
    たことを特徴とするデータ符号化方法。
  2. (2)特許請求の範囲第1項において、上記重み付け後
    、量子化されたデータのうちで零を示すデータについて
    は、その連続数を符号で表現する符号化が適用されるよ
    うに構成したことを特徴とするデータ符号化方法。
  3. (3)特許請求の範囲第1項において、上記零を示すデ
    ータを“+0”符号と“−0”符号で符号化する手段を
    設け、独立した1個の零データに上記“+0”符号を、
    そして予め任意に定められている所定数n個の連続する
    零データに上記“−0”符号をそれぞれ割り当てたこと
    を特徴とするデータ符号化方法。
JP61210625A 1986-09-09 1986-09-09 デ−タ符号化方法 Pending JPS6367080A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61210625A JPS6367080A (ja) 1986-09-09 1986-09-09 デ−タ符号化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61210625A JPS6367080A (ja) 1986-09-09 1986-09-09 デ−タ符号化方法

Publications (1)

Publication Number Publication Date
JPS6367080A true JPS6367080A (ja) 1988-03-25

Family

ID=16592424

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61210625A Pending JPS6367080A (ja) 1986-09-09 1986-09-09 デ−タ符号化方法

Country Status (1)

Country Link
JP (1) JPS6367080A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0420550A2 (en) * 1989-09-25 1991-04-03 Canon Kabushiki Kaisha Image reproducing apparatus
JPH08214300A (ja) * 1994-11-30 1996-08-20 Sanyo Electric Co Ltd デコーダおよびmpegビデオデコーダ

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0420550A2 (en) * 1989-09-25 1991-04-03 Canon Kabushiki Kaisha Image reproducing apparatus
JPH08214300A (ja) * 1994-11-30 1996-08-20 Sanyo Electric Co Ltd デコーダおよびmpegビデオデコーダ

Similar Documents

Publication Publication Date Title
US6301392B1 (en) Efficient methodology to select the quantization threshold parameters in a DWT-based image compression scheme in order to score a predefined minimum number of images into a fixed size secondary storage
EP0663762B1 (en) Quantizing and dequantizing circuit with reduced size
US6049330A (en) Method and apparatus for optimizing storage of compressed images in memory
US5463699A (en) Data compression
JPS6248437B2 (ja)
JPH08116447A (ja) 画像信号の符号化装置
US8027546B2 (en) Method, apparatus, and computer program for image data processing
CN101778278A (zh) 图像编码器和图像编码方法
JP2011103665A (ja) デ−タ圧縮符号化システム
US8600181B2 (en) Method for compressing images and a format for compressed images
JPH05183443A (ja) 符号変換方法
JPS6367080A (ja) デ−タ符号化方法
JPS6367081A (ja) デ−タ符号化方法
US20020001414A1 (en) System for building a data compression encoder
JP2915922B2 (ja) 画像信号圧縮符号化装置
JPS6367965A (ja) デ−タ符号化方法
US7733249B2 (en) Method and system of compressing and decompressing data
JPS61123280A (ja) 画像デ−タ圧縮装置
JP2627927B2 (ja) 画像データの圧縮率変換方法
JPS61135286A (ja) 画像デ−タ圧縮装置
US6522270B1 (en) Method of coding frequently occurring values
JP3222967B2 (ja) ディジタル信号処理装置
US6583736B1 (en) Bitcode sequence coding of frequently occurring values
JPH04258084A (ja) 符号則変換装置
JPH04274674A (ja) データ変換装置