JP2819174B2 - デジタル・サンプルのコード化装置およびコード化法、およびビデオ信号処理システム - Google Patents

デジタル・サンプルのコード化装置およびコード化法、およびビデオ信号処理システム

Info

Publication number
JP2819174B2
JP2819174B2 JP1504355A JP50435589A JP2819174B2 JP 2819174 B2 JP2819174 B2 JP 2819174B2 JP 1504355 A JP1504355 A JP 1504355A JP 50435589 A JP50435589 A JP 50435589A JP 2819174 B2 JP2819174 B2 JP 2819174B2
Authority
JP
Japan
Prior art keywords
digital
value
data
values
sample
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 - Lifetime
Application number
JP1504355A
Other languages
English (en)
Other versions
JPH03503708A (ja
Inventor
アストル,ブライアン
ジエイ ゴーリン,スチユアート
Original Assignee
インテル コーポレーシヨン
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 インテル コーポレーシヨン filed Critical インテル コーポレーシヨン
Publication of JPH03503708A publication Critical patent/JPH03503708A/ja
Application granted granted Critical
Publication of JP2819174B2 publication Critical patent/JP2819174B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/42Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)

Description

【発明の詳細な説明】 この出願は、1987年6月17日付の米国特許出願第6304
0号「パラメータ可変長コード化法」の一部継続出願で
ある。
この発明は、能率的に伝送または記憶を行ない得るよ
うにデジタル・データを統計的にコード化する回路に関
するものである。
デジタル・データ処理の分野における最近の進歩によ
り、比較的に多量のデジタル・データを転送したり処理
したりできるシステムに対する要求が発生した。しか
し、このデータを、たとえば標準の電話線を介して能率
良く伝送したり或いは比較的小さなメモリに能率的に記
憶させることができるように、圧縮することも必要であ
る。
比較的多量のデータを転送し処理することが必要なデ
ジタル・データ処理システムの一例は、ビデオ信号処理
システムである。たとえば、各線(ライン)が256個の
8ビット・ピクセル値を含んでいる240本の線から成る
画像を生成するシステムでは、各画像フレーム当り6144
0バイトを必要とする。表示速度を毎秒30フレームとす
ると、このシステムのデータ転送速度は毎秒1,843,200
バイトである。
ビデオ信号処理システムにおける1フレーム当りのバ
イト数は、そのデータをコード化することによって減少
できることは周知である。ビデオ・データのコード化シ
ステムは、たとえばここに引用する米国特許第4,125,86
1号「ビデオ信号のコード化法」に開示されている。こ
の米国特許に開示されているシステムでは、先ず差分
(Differential)パルスコード変調(DPCM)技法を利用
して、ビデオ・データを圧縮し、次に、統計的により高
頻度で生じるデータ値には短いコードワードを割当て発
生頻度があまり高くないデータ値により長いコードワー
ドを割当てる形式の可変長コードを使ってコード化して
いる。この出願では、上記の形式のコード化を統計的コ
ード化と呼ぶ。
データを統計的にコード化する一つの方法は、ハフマ
ン・コードの様な適切な可変長コードを使用することで
ある。このコードを使用するには、伝送すべきデータに
発生頻度の最も高いものから最も低いものへと順番をつ
け、たとえばここで引用する図書エイブラムソン(N.Ab
ramson)氏著「情報論理とコード化(Information Theo
ry And Coding)」マグロウヒル社1963年発行の第77〜8
5頁に記載されているアルゴリズムを使用してハフマン
・コードを発生させる。この方法を使用するときには、
データ値とコード値の間の対応を与えるテーブルをコー
ド化されたデータと共に伝送して、データの復号システ
ムがそのコードワードを対応するデータ値に翻訳できる
ようにする。コード化されたデータと共にこの翻訳テー
ブルを伝送または記憶せねばならぬというこの余分な手
間は、比較的小量のデータしか伝送または記憶しない場
合にはこのコード化技法を非実用的なものにしてしま
う。
データを統計的にコード化する第2の方法は、所定の
アルゴリズムに従ってデータを処理して、既知の分布に
大体近似して統計的に値が分布しているデータを得るこ
とである。次いでこのデータは、既知の分布に合わせた
コードを使ってコード化し、伝送し、上記のデータコー
ド化に使用したテーブルとは逆の固定テーブルを使って
復号する。
上記した米国特許第4125861号はこの様な形式のシス
テムに関するものである。この米国特許に記載されてい
るシステムを使って行なわれるDPCM処理によると、0値
にピークを有しこのピークの両側に大体指数的な形で分
布する値を有するデータを生成する。このデータは、次
に、読取り専用メモリ(ROM)に記憶されているプリセ
ット・テーブルを使って統計的にコード化される。続い
てこのデータは受信機に伝送され、そこでROMに記憶さ
れている逆テーブルを使ってデータが復号される。
上述した形式のシステムは、入力データを大きく圧縮
するが、この圧縮されたデータと共に翻訳テーブルを伝
送する必要が無いという利点を有する。しかし、この形
式のシステムには、達成できる圧縮のレベルが、より高
度の統計的コード化法を使用して得られるもの程に望ま
しいものとならないという不利もある。
データのコード化および復号(デコーディング)シス
テムとして、種々の統計的パターンを呈しかつコード化
されたデータと共に広範な翻訳テーブルを供給する必要
のない、能率的なデータコード化を行ない得るようなも
のを実現できれば有利である。
発明の概要 この発明は、デジタル・データを統計的にコード化す
るために適切に編成されたコードを発生するシステム中
で具体化することができる。このシステムは、変換され
たデータ値がある統計的分布とほぼ合致するようにデー
タを変換するプロセッサを含んでいる。このある統計的
分布とは、値零(ゼロ)が最高の発生頻度を有し、零よ
り大きな値の発生頻度が大きさの増加に伴って大体減少
する形の分布である。変換されたこのデータから、上記
のプロセッサは、統計的コードを表わす複数のパラメー
タを発生する。その各パラメータは一組の連続するコー
ド値を表わし、その各コード値はそれぞれ相異なるデー
タ値に対応している。
この発明のまた別の実施形態にあっては、その変換さ
れたデータを上記パラメータから発生させたコードを使
用してコード化し、これらのパラメータはデコーダに伝
送するためにコード化されたデータに連結する。
図面の概略説明 第1図はこの発明を適用したビデオ信号処理システム
のブロック図である。
第2図、第3A図、第3B図および第3C図は第1図に示し
たビデオ信号圧縮器20の動作説明に利用する値のリスト
および図である。
第4A図と第4B図は、第1図に示す圧縮されたビデオ信
号のプロセッサ30の動作説明に利用できるALGOL60コン
ピュータ・プログラム言語で記述したコンピュータ・プ
ログラムである。
第5A図、第5B図、第5C図および第5D図は、第1図に示
す圧縮された信号プロセッサ30の動作説明に有用な値の
リストおよび図である。
第6A図と第6B図は第1図に示す統計的エンコーダ40の
動作説明に有用な、ALGOL60コンピュータ・プログラム
言語で記述したコンピュータ・プログラムである。
第7図は第1図に示す統計的デコーダ50として使用す
るに適した回路のブロック図である。
第8図は第7図に示す統計的デコーダ回路の動作説明
に有用なタイミング図である。
詳細な説明 以下、この発明をデジタル・ビデオ信号処理システム
に関連して説明する。しかし、ここで説明する技術はビ
デオ信号以外の形式のデータにも適用できるものであ
る。
図において、幅の広い矢印は複数ビット並列デジタル
信号を伝送するバスを、また線状矢印はアナログ信号ま
たは単一ビット・デジタル信号を伝送する接続を表わす
ものである。装置の処理速度に応じて信号路のあるもの
では補償用の遅延を必要とする。デジタル信号処理回路
設計の専門家にとっては、与えられたシステムの中でそ
の様な遅延がどこに必要であるかは判っている筈であ
る。
第1図は、この発明の実施例を含んだビデオ信号処理
システムのブロック図である。第1図において、たとえ
ばビデオカメラであるようなビデオ信号源10はビデオ信
号圧縮器20にデジタル化された(以下、デジタル化とい
う)ビデオ信号を供給する。圧縮器20は、印加されたビ
デオ・データを任意のビデオ圧縮技法を用いて処理す
る。この後に、2つの技法すなわち差分パルスコード変
調(DPCM)アルゴリズムと2進トリー・スプリット・フ
ィル・アルゴリズムを説明する。圧縮器20によって生成
された圧縮された(以下、圧縮という)ビデオ信号はプ
ロセッサ30に供給され、プロセッサ30は、この圧縮デー
タを、特に統計的エンコーダ40によりコード化するに適
した形に変形する。
統計的エンコーダ40は、この変形データを処理して、
このデータの効率的なコードを発生させ次いでそれをコ
ード化する。コード化された(コード化という)変形デ
ータは伝送線45を通して統計的デコーダ50に伝送する。
伝送線45は、たとえば、エンコーダ40とデコーダ50間を
結ぶビット直列形接続でよい。
統計的エンコーダ40によって統計的デコーダに伝送さ
れたデータは、そのデータをコード化するのに使用し
た、特定コードを決定する1組のパラメータを含んでい
る。これらのパラメータは、以下説明するように、デー
タの復号を行なうためにデコーダ50が使用するものであ
る。統計的デコーダ50によって生成された、この復号さ
れた(以下、復号という)データはビデオ信号プロセッ
サ60に印加され、表示装置70に印加されたとき信号源10
から供給された原信号によって表わされる画像を再生す
る信号に変換される。
上記の概略説明は、第1図に示されたシステムのより
詳細な説明の背景をなすものである。第1図において、
ビデオ信号圧縮器20、圧縮信号プロセッサ30および統計
的エンコーダ40は、共通のデータ・メモリ35を共用する
個別のプログラムされたマイクロプロセッサとして、或
いはメモリ35をデータ保持用におよび1つのマイクロプ
ロセッサをプロセッサ20、30および40の各一つとして働
くように順番に変えてコード化ビデオ信号を生成させる
プログラムの保持用に使用する単一のマイクロプロセッ
サとして、構成することができる。
第2図は、第1図に示す圧縮器20によって、一連の入
力ピクセル値をDPCMコード化する一例を示している。こ
の発明のこの実施例で使用するDPCMコード化法は、前記
米国特許第4,125,861号で使用している基本的な技法と
同じである。簡単に言えば、各コード値は供給されたピ
クセル値とそれ以前の全コード値の累算値との間の差で
ある。第2図では、信号源10からの16個のピクセル値か
らたとえば4×4の画像210が作られる。これらのピク
セル値は、上記の方法を使ってコード化されて第2図に
示すDPCM圧縮データを生成する。
画像を8ビットの2進値のシーケンスとして表わし得
るようにするため、この実施例におけるDPCMの最大値は
+127であり、最小値は−128である。この様な限定によ
って得られる結果はDPCM圧縮データの最初の2サンプリ
ング値に示されている。最初のピクセル値は127に制限
され、第2のピクセル値は127に加算するとピクセル値1
41になるような増分である。この発明のこの実施例で使
用しているアルゴリズムは8ビットのピクセル値を採用
しているが、より多数または少数のビットを用いてピク
セル値を表わすこともできる。
多数のビデオ画像から生成したDPCMコード化データを
解析した結果、DPCMコード化ビデオ・データは一般にラ
プラスの統計的分布に従っていることを、本発明者は見
出した。この分布形式は、零の点にピークがあり、零よ
りも大および小の値がそれぞれの値の大きさの負の指数
関数に近似した統計的分布になっているものである。
第3A図、第3B図および第3C図は、2進スプリット・フ
ィル(binary split and fill)と名付けられたコード
化法の概要を示している。一般的に下記されたアルゴリ
ズムはビデオ信号圧縮器20によって実行される。第1ス
テップとしては、単一のビデオ・フレームを表わすピク
セル・データがプロセッサ20によってメモリ35中に記憶
される。このデータは、たとえば4行4列の矩形マトリ
クスとして編成されている。この画像マトリクスは第3A
図の矩形310で表わされている。
この単純化した実例におけるビデオ画像310は上述し
た画像210と同じものである。この画像は、それぞれの
領域内では全ピクセルが一様なグレイ・レベルを持つも
のと仮定した(たとえば、とり得る256個のグレイ・レ
ベルの範囲の中の、それぞれ141、112、90および98)4
個の領域(312、314、316および318)で構成されてい
る。この画像のピクセル値の分布は代表的なものではな
い。それは、この分布は、分解された各領域にフィル値
が与えられるような画像の簡単な2進トリー分解と、ど
の様にこの分解を効率的にコード化できるかを例示する
ことを目的としているからである。より一般的なケース
としては、このフィル(すなわち、領域のピクセル値を
表わすコード)は、たとえばAx+By+Cという様な多項
式で表わすことができる。この式で、係数Aは水平
(x)の方向の傾斜すなわち輝度勾配を表わし、Bは垂
直(y)方向の勾配を表わし、またCは定数すなわち領
域全体を通じての一様な輝度を表わしている。第3A図の
例では、フィルの多項式Ax+By+C中の係数AとBはど
ちらも零である。
2進トリー分解は、1つの領域を2分し、次にできれ
ばその各半部を、生成されたサブ領域を充分に表わすフ
ィル(FILL)値が見出されるまで2分することによって
行なわれる。
この例では、第3A図にSPLIT1と付記した最初の水平方
向の分割(スプリット)線で画像310を相等しい2つの
半部ができるように上下に分割する。上半部312は単一
の値141で充分にコード化することができるが、下半部
は更に分解することが必要である。従って画像の下半部
は垂直方向の分割線SPLIT2により、相等しい左右2つの
領域に分割する。その右半部は値112によって充分にコ
ード化することができるので、それ以上分割する必要は
ないが、左半部は更に水平方向の分割線SPLIT3による分
割を行なって、それぞれ値90と98によって充分に表わす
ことが可能な上下2つの領域316と318を作ることが必要
である。
第3B図と第3C図は第3A図に示された画像の2進スプリ
ット・フィル表示のデジタル・コード化を示している。
第3B図に示された倒立トリー状構造は画像310の連続す
る順次分割を示している。この構造は、末端節点でない
各節点が2つの分枝を形成するように分れているので、
2進トリーと呼ぶ。このトリーの頂部節点は全画像310
を表わしている。1つの領域が分割される度に2つの節
点が新たに形成される。トリーの末端節点(すなわち、
分枝を持っていないもの)はその領域のフィル値でコー
ド化されている。
第3C図は、第3B図に示すトリー構造を表わすデータ値
のアレイである。このアレイは、この2進トリーの7個
の節点とストップ・タイプ値を含む1つの節点に対応す
る8行で構成され、各行はその節点を表わす4個のパラ
メータ(列)を持っている。第1のパラメータTYPEは、
その節点が水平分割(1)、垂直分割(−1)、フィル
(0)またはストップ(2)節点であることを表わす。
ストップ節点は画像との対応が無い。これは、このアレ
イを使用するプログラムに対して最後の節点の処理が済
んだことを示す表示記号として供給される。第2のパラ
メータVALUEは、すべてのフィル節点についてはその節
点の値を、分割節点に対しては零を保持する。最後の2
つのパラメータ、LEFTとRIGHTは、アレイ中の各入口に
対する指標で、水平または垂直の分割動作に関係してそ
れぞれ左および右の節点を表わすものである。フィル節
点のパラメータLEFTおよびRIGHTの値は零である。これ
らのパラメータLEFTおよびRIGHTの値は第3C図の最も左
側の列の数字に対応している。
2進トリーは画像を表わすために使用されるものであ
るから、パラメータLEFTおよびRIGHTはどの節点でも必
要としない。それらは、この実例で圧縮信号プロセッサ
30が行なう動作の説明を簡単化するために挙げたもので
ある。この2進トリーは、パラメータLEFTおよびRIGHT
を使用せずにどの節点でも他の全節点に対してその位置
を明確に決定するような一組の規則に従って、構成され
論議される。この例において、その規則は、水平または
垂直の分割によってそれぞれ作られた上側または左側の
領域に対応するすべてのデータを、その分割を表わすデ
ータの直後に置き、次いでその分割によって生じた下側
または右側の領域を表わすデータを入れる、ということ
である。これは、トリーの頂部節点すなわち始点節点か
ら始まってすべての末端節点に達するまで、連続する全
節点に対して一定の順序で行なわれる、固有の繰返し手
順(プロシジャ)である。パラメータLEFTおよびRIGHT
はこのトリー構造を表わすのに必要でないから、これら
に対してはエンコーダ40によるコード化は行なわれな
い。
上述のようにプロセッサ30は、DPCMデータまたは2進
スプリット・フィル・データを統計的エンコーダ40でコ
ード化するに適した形に変換する。第6図を参照して後
述するように、この統計的エンコーダは、コード化すべ
き値の統計的分布が区分的負性指数分布で近似できると
きに効率的なコード化を行なう1組のコードを使用す
る。DPCMコード化ビデオ・データは、一般に、両側に負
の指数分布をもつラプラス分布に近似する統計的分布を
呈する。このデータを統計的エンコーダ40をコード化す
るに適した形に変形するために、圧縮信号プロセッサ30
は負の数を正の数相互間の空隙位置にマップする。この
変形は、すべての正の数の値を2倍にし、かつ負の数の
極性を変え、変えられたものの値を2倍にしてその結果
から1を差引くことによって行なわれる。このアルゴリ
ズムは第4B図の手順SIGN_XFORMに記述されている。第5A
図はこの符号変形操作を受けたDPCMデータの一例であ
る。このデータは第2図に関して説明した圧縮データの
変形されたものである。
2進スプリット・フィル・データを統計的エンコーダ
40で使用に適した形に変形することは、非常に複雑な処
理である。第4A図と第4B図は、たとえば第3C図に示され
た形の2進スプリット・フィル・データをたとえば第5D
図に示された様な形の値のシーケンスに変形するため
の、ALGOL60コンピュータ言語によるコンピュータ・プ
ログラムである。
第4A図と第4B図に示されたコンピュータ・プログラム
はその図の右余白部に記された行(ライン)番号に関連
して記述されている。第4A図、第4B図、第6A図および第
6B図に示したプログラム中で使用されている各アレイの
要素および整数変数は、データの少なくとも9ビットを
保持するものとされ、従って+255と−256の間のデータ
値を表わすことができる。行40で宣言されたアレイTREE
は1つの画像の2進スプリット・フィル記述を含んでい
る。このアレイTREEの中および第4A図、第4B図、第6A
図、第6B図に示されたコンピュータ・プログラムで使用
されている他のアレイ中の要素の数は、一例に過ぎな
い。通常のビデオ・データの処理にはより多数の値が必
要である。
アレイTREEの一例が第3C図に示されている。このアレ
イ中のデータは、それぞれが4個のパラメータを含んで
いる1024個の節点を表わしている。種々のパラメータに
アクセスするのに使用される値の呼び名は行50〜80に規
定されている。パラメータTYPEは、水平分割、垂直分
割、フィルおよびストップに対してそれぞれ1、−1、
0または2である、節点の形式を示す。パラメータVALU
Eはその節点に関する値である。パラメータLEFTおよびR
IGHTは、水平または垂直分割動作によって発生した2つ
の節点を指示する、アレイTREE中へのインディクスであ
る。これらのインディクスは第3C図の最も左側の列の数
に対応している。
行90で宣言されたアレイOUTは、このプログラムによ
って生成された2進スプリット・フィル・データのコン
パクトな変形分である。
この変形用アルゴリズムの説明を簡単にするため、ビ
デオ信号圧縮器20と統計的エンコーダ40はそれぞれ入力
ファイルおよび出力ファイルとしてモデル化されてい
る。このファイルは行110および120に表示されている。
行140から200で宣言された手順BRANCH_AVGは繰返しア
ルゴリズムを使用して始点節点から下方の各分割(スプ
リット)節点および各フィル節点へと続く、トリーを通
してステップする。トリー中の各分割節点に対して、こ
の手順は左右の分枝節点VALUEパラメータの平均を計算
し、この平均値をこの分割節点のVALUEパラメータに与
える。
行320から540で宣言された手順R_MINUS_Lは手順BRANC
H_AVGで使用したアルゴリズムと同じアルゴリズムを使
ってトリーを通して繰返しステップし、各分割節点に対
して左右の分枝節点のVALUEパラメータの差を計算して
その結果をその分割節点VALUEパラメータとして記憶す
る。
行550から620で宣言された手順SIGN_XFORMは前述の符
号変形動作を行なう。それは、そこにパスされたすべて
の正の値を2倍しまた負の値の符号を変更し、この符号
変更された値を2倍し、それから1を差引く。
この2進トリーのコンパクトな変形分を発生する上記
プログラムは、行660にその最初の実行可能ステートメ
ントを持っている。この実効可能ステートメントによっ
て、ビデオ信号圧縮プロセッサ20からアレイTREEが取出
される。上述のように、このアレイは第3C図に示された
アレイと同じ形をしている。
行700に示されたこのプログラム中の次のステップ
は、始点節点(アレイTREEのインディクス0)用の手順
BRANCH_AVGを呼出すことである。この呼出しは、この2
進トリー全体を通じてトレースし、末端節点から上方に
向って始点節点まで動作し、各分割節点の左右の分枝節
点のVALUEパラメータの平均値をその分割節点のVALUEパ
ラメータとする。この変形は、第5B図に例示されてお
り、図中かぎ括弧内に記入した値は、各分割節点のVALU
Eパラメータとされる分枝節点の平均値である。
分枝の平均値を計算した後、このプログラムは行番号
710において、始点節点の分枝平均値を128から差引いて
その結果を変数ZERO_AVGに保管する。行750における、
このプログラムの次のステップで、手順R_MINUS_Lを呼
出して各分割節点における左右の分枝節点のVALUEパラ
メータ間の差を計算する。これらの差値は分割節点の各
々のVALUEパラメータに記憶される。
行790から930の、このプログラムの最終部分は、アレ
イTREE中のデータを、2進スプリット・フィル・データ
を表わす、第5D図に示されているような直列ストリーム
値に変換することである。プログラムのこの部分では、
始点節点のフィル値、すなわちZERO_VALUEは、アレイOU
Tのインディクス零(ゼロ)に置かれる。次に、アレイT
REE中の各節点が順次処理される。各節点に対するTYPE
パラメータはアレイOUTに付加され、またその接点が末
端節点でない場合にはFILL値も付加される。末端節点は
フィル値0を持つようにされる。この直列ストリーム値
中にはパラメータLEFTおよびRIGHTは含まれていない。
このアレイOUTに付加されている各値は符号変更を受け
る。
行925で、ステートメントは、負のストップ値を挿入
することによってアレイOUTにおける有効データの終り
をマークする。すべての節点がアレイOUTに付加される
と、ステートメント930はアレイOUT中のデータが統計的
エンコーダ40に転送されるようにする。
発明者は、上述した動作で、ビデオ画像の2進スプリ
ット・フィル分解を表わすデータを発生し、このデータ
は大体区分的負性指数分布に統計的に適合することを確
認した。
変形DPCMおよび2進スプリット・フィル・データを生
成するのに使用されるこのデータ変形アルゴリズムは、
データが復号された後、容易に反転させて原データを得
ることができる。
第6A図と第6B図に示されたプログラム・リストは、統
計的エンコーダ40が1組のデータ値の可変長コードを発
生するときの、および伝送のためにそのデータ値をコー
ド化するときの、動作を例示するものである。行1010で
宣言されているアレイ1Nは第4A図と第4B図に示すプログ
ラム中で使用されているアレイOUTに相当する。このア
レイは圧縮信号プロセッサ30から与えられた最高2048個
までのデータ値を保持する。また行1010で宣言されたア
レイSTATは、アレイ1N中の種々のデータ値のヒストグラ
ムを表わす値を保持する。行1015で宣言されたファイル
COMP_PROCESSORは圧縮信号プロセッサ30へのチャンネル
であり、行1020で宣言されたファイルXMIT_CHANNELは統
計的デコーダ50への伝送チャンネル45である。
行1025で宣言された列(ストリング)変数DATA_OUT
は、伝送チャンネル45を介して統計的デコーダ50へ送ら
れるコード化データを保持する2進列である。行1030で
宣言された文字列アレイXLATE_TABLEは、アレイIN中の
固定長データワードに対応する可変長コードワードを保
持する翻訳テーブルである。上記以外の宣言された変数
は、次に説明するようなプログラムにおいて使用される
一次記憶である。
統計的エンコーダ40についてのこのプログラムの最初
の実行可能ステートメントは行1070にある。このステー
トメントは圧縮信号プロセッサ30が供給するデータを受
入れる。これは第4B図の行930におけるステートメント
に対応している。圧縮信号プロセッサ30から受入れたこ
のデータはアレイINに記憶される。
行1110から1170までのステートメントはアレイIN中の
種々のデータ値のヒストグラムを表わす値を発生する。
これらのステートメントによって表わされるアルゴリズ
ムは、アレイSTAT中の256個の値−その1つ1つはとり
得る8ビットのピクセル値の各々に対応している−が最
初は0であるものとする。ステートメント1120から1160
に跨るWHILEループでは、アレイINにおける各有効エン
トリイがアレイSTATへのインディクスとして使用され、
そのインディクスにおける値は増分増加される。行1170
が実行されるとき、アレイSTATの個々のエントリイは、
アレイINで0から255の間でとり得るデータ値の各々の
発生回路を含んでいる。アレイINにおける有効な値の全
数は可変TOTAL_COUNTに記憶される。
アレイINにおいてデータのコード化に使用される特定
の可変長コードを表わすパラメータは、第6A図のプログ
ラムの行1210から1380におけるステートメントに記述さ
れているアルゴリズムを使用して、アレイSTATにおける
値から発生される。
それらのステートメントによって構成されるアルゴリ
ズムを理解するためには、先ず、このシステムで使用さ
れる可変長コードの形式を説明することが有効である。
このコード形式は多数のレベルを有するものとして説明
することができる。各レベルは、そのレベルの各コード
ワードの起点で生ずる2進値のシーケンスであるプレフ
ィックスによって、および共通のプレフィックスを持っ
たコード値の数である母集団(ポピュレーション)によ
って規定される。この発明のこの実施例で使用される可
変長コードの形式についていえば、最初のものを除く各
プレフィックスは連続した2進値1のシーケンスを含
み、最後のものを除くすべてのプレフィックスは2進値
0で終っている。従って、5レベルの可変長コードのプ
レフィックスは、たとえば次の表1で規定される。
この実施例で使用される、統計的コードの各レベルの
母集団は常に2の整数乗値である。異なるレベルの母集
団値はそのデータの統計的分布に依存するものである。
この実施例で行なわれているように、レベルは1と128
の間の相異なるコード値を表わすコード値を含んでい
る。与えられたレベルの母集団の個々の項は、そのレベ
ルの母集団が2Nであれば、Nビットの無符号2進数であ
る。個々のコード値は、そのレベルの母集団中のそのイ
ンディクスを、そのレベルのプレフィックスに連結する
ことによって生成できる。たとえば、表2のレベルおよ
び母集団パラメータで表わされるコードは、表3に示さ
れている。
統計的エンコーダ40によって生成されたコードの形式
は、一般に、発生し得る各データ値に対して長さの異な
るコードを使用している前述した米国特許第4125861号
で使用しているコードよりも一層効率的であるが、ハフ
マン・コードのような最適コードよりも効率的でない。
統計的エンコーダ40に印加されるデータが負の指数分布
をしていると、生成されたコードの効率は実質的に最適
コードと同じである。この生成コードは、各レベルで同
じ母集団を有し、また発生可能性のあるすべてのデータ
値を表わす充分な数のレベルを持っている。
上述したアルゴリズムによって生成されたデータは大
体において負の指数分布と一致するものとされている
が、個々の画像を表わすデータに対して最良といわれる
ものは、大体単調に減少する統計的分布に従うものであ
る。統計的エンコーダ40によって生成されるコードは、
比較的良好な効率でこの形式のデータをコード化する。
その理由は、そのコードが実際のデータ分布を区分的指
数分布としてモデル化しているからである。しかし、こ
の実施例では相異なるレベルの母集団は異なっており、
2つの整数乗値である。ハフマン・コードでは相異なる
レベルの母集団が2の整数乗である必要はない。
上述したコードの説明を考慮して、特定のコードを生
成するためのパラメータを選択するアルゴリズムを次に
説明する。行1210において、アレイSTATへのインディク
スとして使用される変数Iと、アレイTABLEへのインデ
ィクスとして使用される変数LEVELを、0にセットす
る。行1243〜1246において、もし与えられた値の確率が
0であればIFステートメントはNに最大値7を与える。
このステートメントは、無効な結果を生成する式LOG2
(0)の数値を求めることを阻止する。行1240のステー
トメントは、アレイSTATのI番目の入力の確率を計算し
て、この確率値を実変数PROB中に記憶させる。この値I
の確率は、値I(すなわち、STAT[I])を有するデー
タ値の数をデータ値の総数(すなわち、TOTAL−COUNT)
で除したものに等しい。行1250において式−LOG2(PRO
B)の整数部を1だけ減らし、その結果は変数Nに指定
される。行1255と1263におけるステートメントは、ステ
ートメント1250によって生成された値が負または7より
大であるときは、それぞれ、0または7の値を変数Nに
指定する。
変数Nに指定された値はアレイINにおける値Iの統計
的重みを表わす。このアレイINで値Iが比較的大きな発
生回数で生ずると、Nの値は比較的小さく、また値Iが
比較的少数回しか発生しないとNの値は比較的大きい。
たとえば、もしIが0に等しくアレイIN中の値の25パー
セントのものが0であれば、0に等しいIに対するNの
値は1である。しかも、もしアレイIN中の値の僅か1パ
ーセントのものが値0を表わしていれば、0に等しいI
に対するNの値5である。
この発明のこの実施例では、この値Nがレベルの母集
団を決定するために使用される。上記のように計算され
た値Nは、その時のレベルの入力数の、ベースを2とす
る対数の初期評価である。すなわち、その時のレベルの
母集団は最初の近似は2Nである。変数Nの値は整数であ
るから、Nを1だけ増加させること、すなわち行1250で
その式を切上げることが望ましいことがある。Nを増加
させるべきかどうかを決定するために、2Nの母集団をベ
ースとするその時のレベルの全入力の確率を加算して、
一定値0.3820と比較する。それらの確率の総和がこの一
定値より小さければ、Nの値を1だけ増加させる。この
動作シーケンスは行1265から1316のステートメントで表
わされている。行1320から1353に亙るIFステートメント
は、その時のレベルのパラメータ値であるNをアレイTA
BLE中に入れる。この値Nで表わされる入力数の2倍が
このテーブルを完全なものとすれば(すなわち、I+2
(N+1)>255であれば)、その時のそのレベルが最終のレ
ベルである。その時のレベルの入力の数が2倍されて変
数Iが256にセットされてループを完結する。行1320に
おけるテストに失敗すれば、ELSEクローズ(行1336〜13
53)が実行される。このクローズは、その時のレベルの
母集団を2Nにセットし、変数Iに保持されている値を増
加させてその時のレベルに含まれている入力の後の最初
の入力を指示するようにする。
行1320から1353のIFステートメントは、統計的コード
に対するパラメータ値またはこの最終レベルとそれに先
行する何れかのレベルとの間の区別をつける。表3に関
連して前記したように、コードの最終レベルのプレフィ
ックスは2進数1で終り、一方他のコード・レベルのプ
レフィックスはすべて2進数0で終る。最終レベルを識
別する2進数1の値のシーケンスには2進数0が後続し
ないから、この最終レベルは、コードワード中で最終レ
ベル以外のレベルに対するものと同じビット数でそれら
の2倍の数の値を表わすことができる。このIFステート
メントは各レベルが計算されるとそれを検査してそれが
最終レベルであるかどうかを決定する。もし最終レベル
であれば、その最終レベルのパラメータ値を計算してア
レイTABLEに割当て、このWHILEループは可変LEVELを増
分増加させることなしに完了する。もし最終レベルでな
いときは、中間レベルに対する母集団値が計算されてそ
のレベルに対するパラメータ値として与えられ、WHILE
ループが次のレベルに対する母集団の計算ができるよう
に可変LEVELが増分増加させられる。
行1370におけるステートメントは、TOTAL−COUNTの値
を、直前に計算されたレベルによって表わされたアレイ
STATからの諸値の総和だけ減少させる。このステップ
は、ステートメント1220〜1380で、以前のレベルの母集
団に関係なく残ったレベルの母集団を計算するようにWH
ILEループを条件付ける。
WHILEループ中のプログラム・ステートメントは、変
数Iが256より大きな値をとるまで統計的コードの種々
のレベルに対する母集団値を計算するよう、継続する。
この発明者は、上記のアルゴリズムは、データ値が任
意の負性指数分布に合致しているときはハフマン・コー
ドのような最適コードのコード化効率によく近似した可
変長コードを生成し、またデータ値が大体単調に減少す
る統計的分布の何れかに合致するときは比較的効率的な
コードを生成することを確認した。上記のように、圧縮
信号プロセッサ30によって行なわれるステップは、少な
くとも大体単調に減少する統計的分布を持ったデータを
生成するように設計されている。
上記した方法に代るものとして、発明者は、Nが0か
ら増分増加するとき2Nデータ値の確率をその累加総和が
0.3820より大となるまで累算することによって、満足で
きる可変長コードを表わすパラメータを発生し得ること
を確かめた。このテストを満足するNの値がその時のレ
ベルに対するパラメータ値である。このアルゴリズム
は、低レベルの値に対する統計的データを無視して、可
能性のある全データ値にコード値が指定されてしまうま
で継続する。
第6A図と第6B図のプログラムで表わされるアルゴリズ
ムにおける次のステップは、統計的コードに対する翻訳
テーブルを作ることである。翻訳テーブルを発生させる
アルゴリズムの一例が約1410乃至1610のプログラム・ス
テートメントに示されている。
ステートメント1410は2進列BASEに1ビットの0値を
与える。行1450から1550までのステートメントを含むFO
Rループは、最終レベルを除く各レベルの翻訳テーブル
を作成する。行1470において、I番目のテーブル入力に
おける値(すなわち、I番目のレベルの母集団のベース
を2とする対数)が、変数Nに与えられる。行1480から
1520までのステートメントに亙るネスト化されたFORル
ープはこの変数Nの値を使って、レベルIの母集団の各
項に対する2進列値を発生させて、この文字列値をアレ
イXLATE_TABLE中の連続した位置に入れる。特定レベル
の特定項に対して生成されるこの文字列値は、レベルI
の母集団における項のインディクスを表わしているNビ
ットの2進値を変数BASE中に保持されているプレフィッ
クス値に連結することによって得られる。この動作によ
って発生されるコード値は、より上位ビット位置におい
て可変BASE中に保持されている値とより低位ビッド位置
におけるインディクスを表わす値とを持っている。
ステートメント1530は、MSB位置で変数BASEによって
保持された値に1ビットの2進数1の値を連結すること
によって、変数BASEに与えられた値を変更する。この値
は次のレベルに対するプレフィックスである。これは次
のレベルのコードワードを発生させるために使用され
る。
行1555乃至1610におけるプログラム・ステートメント
は、コードの最終レベルに対する翻訳テーブル入力を生
成する。ステートメント1550は、変数BASEに対して或る
値を与える。この値はLEVEL−1個の2進数1の値の文
字列である。これは、2LEVEL−1の値に相当する。行15
70から1610に跨るFORループは、最終レベルの母集団の
各入力のインディクスを表わしているNビットの2進値
を文字列変数BASEに保持されているプレフィックス値に
連結することによって、最終レベルに対するコードワー
ドを形成する。
統計的エンコーダ40に対するプログラムの最終部は、
そのプログラムの他の部分によって生成させられた統計
的コードを使って、アレイIN中のデータを翻訳する。行
1650におけるステートメントは、アレイINへのインディ
クスとして使用される変数Iに値0を与える。2進列変
数DATA_OUTには行1660のステートメントによって空白値
が与えられる。行1670乃至1710のステートメントは、こ
の2進列変数DATA_OUTにアレイTABLEの16個の8ビット
入力を付加する。それらの値は、コード・ストリームか
ら固定長データ値を再生するための統計的デコーダ50が
使用するパラメータである。アレイTABLEから得られる
パラメータ値は、2のパラメータ値乗として(すなわ
ち、対応するレベルの母集団として)アレイ中に記憶さ
れる。これらの値は、ビットの桁順を反転させてその値
のLSBを最初に文字列DATA_OUTに入れ、MSBをその文字列
に最後に入れるように働く関数RBSTRINGを用いて、2進
列形に変換される。パラメータ値のこのビット順反転
は、2進列から下記する統計的デコーダ50によってパラ
メータ値を再生するやり方のために、必要である。行17
20乃至1743におけるWHILEループは、アレイIN中の固定
長のデータ値を対応する可変長コードワードに変換し、
かつ各コードワードをそのMSBを最初にして列変数DATA_
OUTに付加する。
このプログラムの最後のステートメント1770はコード
化データを伝送チャンネル45を介して統計的デコーダ50
に送る。上述したように、この伝送チャンネルは、デー
タ伝送の効率を改善するために統計的コード化が使用さ
れる場合にはビット・シリアル・デジタル信号を伝える
導体とし、あるいはより効率的な記憶のためにデータ圧
縮に統計的エンコーダ40が使用される場合にはメモリに
多数ビット信号を伝えるバスとすることができる。第1
図に示したこの発明の実施例では、統計的エンコーダ40
と統計的デコーダ50の間の伝送チャンネルは、ビット・
シリアル・データ路である。
第7図は統計的デコーダ50として使用するに適した回
路を示すブロック図である。第7図に示された回路は、
供給されたデータを、8ビット・データ路を介しての記
憶および処理のために8ビット・バイトに分割する。図
示された回路をそのまま拡張した形として、16、32また
は64ビットのデータを使用する、上記と等価な回路も設
計可能であることも考慮している。一般に、第7図に示
した回路は、伝送チャンネル45から受入れたデータをそ
のまま記憶し、また要求があったときそのデータをその
ままデコーディング(復号)回路に供給するためのバッ
ファメモリ716を持っている。このデコーディング回路
はランダム・アクセス・メモリ(RAM)724を有し、これ
はエンコーディング回路40で生成したコードを表わすパ
ラメータのテーブルを保持する。バッファメモリ716中
のデータは、RAM724から得られるパラメータ値とメモリ
716によって与えられるデータから抽出した値とを、加
算器738中で合成することによって復号される。復号動
作を行なう回路は制御回路720によって制御される。
伝送チャンネル45を介して供給されるビット・シリア
ル信号DATAは、シフトレジスタ710と書込みアドレス発
生回路712とに供給される。この信号DATAは、たとえ
ば、データ再生に必要なクロック信号がデータでコード
化されている非零復帰(NRZ)信号である。この実施例
で使用されている回路712は、信号DATAに応答してこの
クロック信号を再生しそれを信号DCKとしてシフトレジ
スタ710に供給する位相ロック・ループ(PLL、図示省
略)を含んでいる。
この発明のこの実施例で使用されているシフトレジス
タ710は8ビット直列入力並列出力レジスタである。定
常動作状態、すなわち信号DCKが安定化されている時に
は、この書込みアドレス発生回路712は、シフトレジス
タ710を制御して伝送チャンネル45を介して信号DATAの
ビット値がこのシフトレジスタ710に供給されたときそ
れを受入れるようにする。書込みアドレス発生回路712
は、更に、信号WLDを介してレジスタ714を制御して、レ
ジスタ710に8ビットのデータがシフト入力される度に
シフトレジスタ710に保持されていた値をロードするよ
うにする。
レジスタ714中に保持された8ビット値はバッファメ
モリ716のデータ入力ポートに印加される。書込みアド
レス発生器712は、書込みアドレス値WADRを発生し、か
つレジスタ714が保持していた値をバッファメモリ716中
に記憶させるようにバッファメモリ書込み可動化信号BW
Eをパルス的に供給する。この書込みアドレス値WADRは
回路712内蔵のカウンタ(図示なし)で発生させること
ができる。
信号BWEは、また書込みアドレス発生器712によって制
御回路720にも印加されて、データ書込み動作が進行中
であることを表示する。制御回路720はこの信号をモニ
タして、データ書込み動作と干渉し合わないときにデー
タ読出し動作の期間を設定する。制御回路720は、読出
しアドレス発生回路718に印加される信号RREQをパルス
的に供給することによってデータ読出し動作を開始させ
る。この信号は、回路718を制御して、バッファメモリ7
16に読出しアドレス値RADRを供給する内蔵カウンタ(図
示なし)を増分増加させる。この読出しアドレス値に応
じて、バッファメモリ716は8ビットのデータ値を並列
入力並列出力レジスタ722に印加する。
バッファメモリ716は、別々のデータ入力バスとデー
タ出力バスおよび別々の読出しバスと書込みバスを持っ
ているように図示されているが、単一のデータ・バスと
単一のアドレス・バスを有するメモリも使用可能であ
る。その様なメモリを使用した場合には、読出しアドレ
ス発生器718と書込みアドレス発生器712の出力ポートお
よびレジスタ714の出力ポートを、3状態装置によって
メモリの各アドレス・バスとデータ・バスとに結合され
るようにする必要がある。このメモリと共に用いるレジ
スタ714と回路712は、信号BWE12より制御されて、書込
み動作の進行中に各バスにデータまたはアドレス値を印
加しかつその他のバスには高インピーダンスを示す。同
様に、回路718は信号RREQにより制御されて、読出し動
作の進行中にバスにアドレス値を供給し、他のバスには
高インピーダンスを与える。
バッファメモリ716からレジスタ722に供給されるデー
タ値は、制御回路720によってこのレジスタ722に印加さ
れる信号ORLの立下がり(negativ−going)端縁と同期
して、ロードされる。レジスタ722に保持されているデ
ータ値はランダム・アクセス・メモリ(RAM)724と並列
入力直列出力抵抗732に印加される。
この実施例で使用されているRAM724は、上述のよう
に、統計的エンコーダ40が生成する統計的コードで規定
されるパラメータを保持している。これらのパラメータ
値はチャンネル45を通過して来たデータ・ストリーム中
に埋め込まれる。それは、デコーダ50で、下記のように
コード化データを再生するために使用される。バッファ
メモリ716からレジスタ722にパラメータ値が印加される
と、制御回路720が信号WEをパルス的に供給して、カウ
ンタ726が供給するアドレス値によってアドレスされた
メモリセル中にそのパラメータ値を蓄積するように、RA
M724を制御する。RAM724中にこのパラメータ値が書込ま
れると、制御回路720は信号CCKをパルス的に供給してカ
ウンタ726を制御しその値を増分増加させる。
これらのパラメータ値はRAM724から読出されて1対の
レジスタ728と730に印加される。レジスタ728は1ビッ
ト・レジスタであって、RAM724から供給されるパラメー
タ値のMSBを受入れるように構成されている。この1ビ
ット・レジスタに保持されている値は信号ENDとして制
御回路720に印加される。レジスタ730は、7ビット並列
入力、並列または直列出力レジスタで、RAM724が供給す
るパラメータ値の7個のLSBを受入れるように構成され
ている。制御回路720から供給される信号MSLDに応じ
て、新しいパラメータ値がレジスタ278と730中にロード
される。レジスタ730に保持されているデータ値は、制
御回路720によって供給される信号MSHに応じてより低位
のビット位置側にシフトされる。シフトレジスタ730か
ら供給されるシリアル出力信号は信号LBで制御回路720
に印加される。
レジスタ730のこのビット・シフト能力は、データ・
ストリームからコードワードの母集団インディクス部を
抽出するのに使用される。この値が抽出されると、レジ
スタ730中に保持されている2つの整数乗であるパラメ
ータ値が、そのパラメータ値の2進数1がこのレジスタ
のLSB位置をとるまで、連続的により低位のビット位置
に向けてシフトされる。すなわち、その信号LBの値が1
になるまでである。この値がシフトされるにつれて、母
集団インディクス値は、以下説明するように対をなすレ
ジスタ734と735中にロック−ステップ的にシフトされ
る。信号LBの値が1になると、このシフト動作は完了
し、母集団のインディクス値がレジスタ734と735に保持
される。
レジスタ730から供給される7ビット並列出力値はマ
ルチプレクサ736の1つの入力ポートに印加される。信
号源731から供給される値が0の1ビット信号が、マル
チプレクサ736の上記1入力ポートでこの7ビット値のM
SB位置に連結されて8ビット値を形成する。マルチプレ
クサ736の第2の入力ポートにはレジスタ734と735から
データ値が供給される。これらのデータ値は、下記する
ように、バッファメモリ716により供給される統計的コ
ード化データから生成されるものである。
デコーディング・プロセッサ50は統計的なコード化デ
ータを表わす8ビット値を要求するので、これらがバッ
ファメモリ716から供給される。これらの値は、制御回
路720から供給される信号ORLに応じて並列入力、並列出
力レジスタ722中にロードされる。このレジスタ722中に
保持されているこの8ビット値は、制御回路720によっ
て与えられる制御信号OSRLに応じて並列入力シリアル出
力レジスタ732に転送される。レジスタ723中に保持され
ているデータ値は、制御回路720から供給される信号OSH
に応じて、より低位のビット位置に向ってシフトされ
る。
8ビット・データ値の最終ビットがレジスタ732から
シフト出力されると、制御回路720から供給される制御
信号OSRLに応じてレジスタ722からレジスタ732中に新し
い8ビット・データ値がロードされる。回路720は、読
出しアドレス・レジスタ718とレジスタ722を制御して、
レジスタ722からレジスタ732へ1つの値が転送されると
直ちにメモリ716から新しい8ビット値をロードする。
従って、レジスタ732は信号OSHと同期して連続的なビッ
ト値のストリームを供給することになる。
信号OSHは、また1ビット・レジスタ735にも結合さ
れ、続いて直列入力並列出力レジスタ734に結合され
る。レジスタ735は、レジスタ732からビット・シリアル
出力信号を受入れる。このビット・シリアル信号は、レ
ジスタ735の出力端子からレジスタ734のLSB位置へ印加
され、信号OSHに応じてレジスタ734のより上位のビット
位置へ向ってシフトされる。レジスタ735に保持されて
いる1ビット値は信号BTとして制御回路720に供給され
る。レジスタ734と735に保持されている8ビット値は、
上述したようにマルチプレクサ736の第2入力ポートに
供給される。上記に加えて、レジスタ734は、制御回路7
20が供給するリセット信号RSTに応じて、そのレジスタ
に保持されている値の7個のビットの各々を0にセット
する。デコーディング・アルゴリズムにより母集団イン
ディクス値が要求されると、レジスタ734はリセットさ
れ、N−1ビット値がレジスタ732から対をなすレジス
タ734と735にシフトされる。これらのビット値は、信号
MSHによりロック・ステップ的にシフトされる。信号MSH
は、レジスタ730を1からN−1までカウントするカウ
ンタとして働くように、制御する。この場合、Nは、レ
ジスタ730に保持されているパラメータ値によって表わ
されるレベルの母集団の底を2とする対数で、すなわち
パラメータ値中の2進数1のビット位置である。
マルチプレクサ736は、制御回路720から供給される信
号MXCにより制御されて、レジスタ730に保持されている
7ビット値と信号源731から供給される値0のMSBとを、
或いはレジスタ734と735に保持されている8ビット値
を、加算器738の1入力ポートに供給する。加算器738の
出力ポートは、8ビット並列入力並列出力レジスタ740
の入力ポートに結合され、レジスタ740の出力ポートは
加算器738の第2入力ポートに結合されている。加算器7
38とレジスタ740の組合せは累積器を形成している。こ
の累算器レジスタ740に保持された値は、制御回路720か
ら信号ALDが発生供給されたときに変化する。この信号
はレジスタ740を制御して加算器738から供給される出力
値をロードするようにする。レジスタ740は制御回路720
から供給される信号ARによって値0を呈するようにリセ
ットされる。
加算器738からの出力信号は、この統計的デコーダ50
の出力レジスタである8ビット並列入力並列出力レジス
タ742にも印加される。制御回路720によって与えられる
出力ロード信号OLDに応じて新しいデータ値がレジスタ7
42にロードされる。信号OLDはデコーダ50の出力信号
で、第1図に示すようにビデオ信号プロセッサ60に印加
されて、復号データ値をデコーダ50から取出し得ること
をプロセッサ60に示す。
デコーディング(復号)プロセスを要約すると、次の
通りである。エンコーダ40によって新しいコード・スト
リームが供給されると、伝送チャンネル45を介して与え
られるデジタル・ビット・ストリームは8ビット値のシ
リーズに分割されて、それを受入れるバッファメモリ71
6中に記憶される。このビット・ストリーム中の最初の1
6個の8ビット値は、コードを表わしている16個のパラ
メータ値である。上述のように、このパラメータ値はビ
ット・ストリーム中のコードワードに対してビット反転
され、従ってレジスタ710にロードされたパラメータ値
のMSBはそのレジスタのMSB位置に在る。ビット・ストリ
ーム中の残りのビットは可変長コードワードである。上
述のように、ビット・ストリーム中の各コードワードの
ビットは、より上位ビットがビット・ストリーム中で下
位ビットより前に生ずるように配列されている。この8
ビット値は、増分的に増加するアドレス値を有するメモ
リセルに記憶される。こうして記憶された値は、16個の
パラメータ値の後の最初の8ビット値のLSB位置で開始
し増分的に増加するアドレス値を有するメモリセルを通
してバッファ・メモリ716中で継続するビット・ストリ
ームを表わしている。
このデコーディング・プロセスにおける最初のステッ
プは、ビット・ストリームの先頭で生ずる16個のパラメ
ータ値をRAM724にロードすることである。最初のパラメ
ータはアドレス0にロードされ、2番目のものはアドレ
ス1に、以下同様にしてアドレス15までにロードされ
る。RAM724に対するアドレス値を発生するカウンタ726
が、次に0にリセットされて、そのパラメータ値がコー
ド化データを復号するために順次使用されるようにな
る。
パラメータ値が一旦ロードされると、データのデコー
ディングが開始される。バッファメモリ716からコード
化データを表わす8ビット値が順番に読出されてシフト
レジスタ732にロードされる。コードワードの始点で、
シフトレジスタ732から供給される各2進数1の値がデ
コーディング回路を制御して、レジスタ730からその時
のパラメータ値をレジスタ740に保持されている累算値
に加算するようにする。シフトレジスタ732から供給さ
れるビット・ストリーム中の最初の0が出て来るか、ま
たはそのENDビット中に2進数1を有するパラメータが
出て来たとき、その時のパラメータ値で表わされたビッ
ト数が、レジスタ730をビット・シフト・カウンタとし
て使用することによりレジスタ734と735中にシフト入力
され、デコーディング回路は、レジスタ734と735中にシ
フト入力されている値を累算値に加算して復号データ値
を生成するように制御される。カウンタ726、レジスタ7
40およびシフトレジスタ734は次いで、リセットされて
次のコード化データ値を復号する準備をする。レジスタ
734中の値をレジスタ740中の値に加算した後、制御回路
720は信号OLDを発生させて復号された値をレジスタ742
にロードする。
統計的デコーダ50の動作を、時間期間T0からT22まで
入力データ・クロック信号DCKの23周期に亙る時間期間
を示す第8図のタイミング図を参照して説明する。第7
図の回路の説明を簡単にするため、第7図に示された回
路はすべて信号DCKに同期して動作するものとする。し
かし、バッファメモリ716からコード化データを読出す
回路およびデコーディング動作を行なう回路には、別々
の非同期クロック信号を使用し得るものと理解された
い。表3に示されたコードは次の説明通りのものとす
る。
第8図に示された全時間期間に、コード化データの23
ビットが信号DATAとして統計的エンコーダ40から供給さ
れる。これらのビットは、信号DCKの連続する23個の立
下り部(negative−going transition)と同期してレジ
スタ710中にシフト入力される。そのデータ・ビットの
うち16個は、一度に8ビットずつ、時間期間T7とT22
終りに生ずる信号WLDの立下り部と同期してレジスタ714
に転送される。これらのデータ値は、信号BWEとWADRで
示されるように、それぞれ時間期間T8とT16の期間中に
バッファメモリ716に書込まれる。
第8図における信号の残りは、統計的デコーダ50がコ
ードの最終パラメータ値をRAM724中にロードして、次に
ビット・ストリーム11011010100を復号して3個の8ビ
ット2進値00001001と、00000010および00000100(すな
わち、9、2および4)を得るときの、統計的デコーダ
50の動作を示している。
16個のパラメータ値はコード化データで伝送される
が、この列では3個のパラメータ値だけが関係するもの
で、そのパラメータ値はP0=00000100、P1=00000010お
よびP2=10001000である。
時間期間T1の間、制御回路720は信号RREQをパルス的
に供給して、バッファメモリ716から8ビット・データ
値を読出すことを要求する。この信号RREQに応じて、読
出しアドレス発生器718は、期間T1中にバッファメモリ7
16に読出しアドレス値RADRを供給する。期間T1の終り
に、この読出しアドレス発生器718はその内部読出しア
ドレス値を増分増加させて次の読出し動作の準備をす
る。印加された読出しアドレス値に応じてバッファメモ
リ716から供給される値は、期間T1の終りに生じる制御
回路720からの信号ORLの立下り部と一致して、レジスタ
722に記憶される。
第8図の一例タイミング図において、時点T1にバッフ
ァメモリ716から読出されるデータ値は、統計的にデコ
ーダ40が信号DATAを発生させるのに使用したコードを表
わす最後の(16番目の)パラメータ値である。時間期間
T3の間に、時点T0以前に増分増加されていたカウンタ72
6は、RAM724中の最終パラメータ値のアドレス(I.E.1
5)を、RAM724のアドレス入力ポートADに供給する。ま
た時間期間T3の間に、制御回路720は信号WEをパルス的
に供給して、そのパラメータ値をアドレスされたメモリ
位置に記憶するようにRAM724を制御する。
最終パラメータ値をRAM724中に記憶させた後、制御回
路720は時間期間T4中に信号CRを発生してカウンタ726に
保持されていた値を0にリセットする。コード化データ
の最初のビットの準備をするために、制御回路720は、
時間期間T4の後半期間中に最初のパラメータ値P0を対を
なすレジスタ728と730にロードするため、信号MSLDをパ
ルス的に供給する。
時間期間T5の間に、制御回路720は信号RREQをパルス
的に供給して、バッファメモリ716から次の連続する8
ビット値を読出すことを要求する。この値は期間T5の終
りに信号ORLの立下り部と同期してレジスタ722中にロー
ドされる。レジスタ722に保持されている8ビット値
は、期間T6の終りに生ずる信号OSRLの立下り部と同期し
てレジスタ732に転送される。
期間T6の間に、制御回路720は信号ARをパルス的に発
生してレジスタ740中の全ビットをリセットし、累算器
としての動作を始める。
期間T7の間に、制御回路720はバッファメモリ716から
メモリ読出し動作を開始し、読出した値をレジスタ722
に記憶させる。またこの期間T7の間に、制御回路720は
信号OSHをパルス的に供給してレジスタ732のLSB位置に
あるビット値(すなわち、最初のコードワードのMSB)
をレジスタ735に転送する。このビット値は、期間T7
中央で生ずる信号OSHの立下り部と同期して転送され
る。第8図の一例タイミング図で、このビット値は2進
数1である。従って、期間T7の中央では、レジスタ735
が保持している値を表わす信号BTの値は1である。
値1を有するこの信号BTに応じて、制御回路720は信
号MXCの値を2進数1に変化させ、マルチプレクサ736を
制御してレジスタ730からのその時のパラメータ値を、
そのMSB位置にある信号源731からの2進数0と共に加算
器738に供給する。加算器738はこの値をレジスタ740が
保持する0値と加算する。この2つの値の和は、期間T8
の中央で生ずる信号ALDの立下り点と同期してレジスタ7
40中に記憶される。
信号CCKは期間T7中に発生してカウンタ726に保持され
ている値を増分増加させて、RAM724の出力ポートから2
番目のパラメータ値P1が取出せるようにする。期間T8
間に、制御回路720は信号MSLDを発生してこの2番目の
パラメータ値をレジスタ728と730にロードする。更に、
回路720は信号OSHをパルス的に発生してシフトレジスタ
732を制御し、次のコードワードの連続するビットをシ
フトレジスタ735に供給する。この例では、このビット
値は2進数1である。
この値1の信号BTに応じて、制御回路720は、マルチ
プレクサ736、加算器738およびレジスタ740を制御し
て、レジスタ730に保持された2番目のパラメータ値P1
を既にレジスタ740に保持されていた値に加算する。こ
の加算結果は、期間T9の中央で生ずる信号ALDの負向き
の変化部と同期してレジスタ740中に記憶する。
この期間T9の間に、制御路720は信号CCKを発生してカ
ウンタ726を増分増加させ、RAM724にその出力ポートに
3番目のパラメータP2を生成する準備をさせる。
期間T9に、この3番目のパラメータはレジスタ730中
にロードされ、コード化データの次のビットがシフトレ
ジスタ732からレジスタ735に与えられる。この例におい
て、1ビット・レジスタ728に保持されている3番目の
パラメータ値のENDビットは2進数1である。レジスタ7
28から供給された、2進数1の値をもつこの信号ENDに
応じて、制御回路720は信号MXCを論理0に変化させ、マ
ルチプレクサ736を制御してレジスタ734と735に保持さ
れている値を加算器738に供給するようにする。信号END
の値2進数1は、また制御回路720を制御し信号RSTを発
生させて、シフトレジスタ734の7個のビットを0にセ
ットする。
期間T9の後半の間、制御回路720は信号MSHをパルス的
に供給して、レジスタ730に保持されている3番目のパ
ラメータ値の7個のLSBを下位に向って1ビット位置シ
フトさせる。このモードでは、レジスタ730は、シフト
レジスタ732から対をなすレジスタ735と734へシフトさ
れるビットの数をカウントするカウンタとして使用され
る。この例では、制御回路720は、期間T12の始点で2進
数1がレジスタ730のLSB位置へシフトされるまで、期間
T9、T10およびT11の間信号MSHとOSHのパルスをロック−
ステップ的に発生し続ける。この状態になると、レジス
タ730から供給される信号LBは値が1となり、制御回路7
20を制御して信号OSHとMSHを2進数0の値に保持する。
期間T12の開始点で、対をなすレジスタ734と735は最初
の可変長コードワードの母集団インディクス(すなわ
ち、00000011)を保持する。
マルチプレクサ736は、レジスタ対734と735中の8ビ
ット値を加算器738に供給するように制御されているの
で、加算器738の出力値は上記の値とレジスタ740に保持
されている値との和である。この和は復号されたデータ
値である。これは、期間T12の後半期間中に、制御回路7
20から発生する信号OLDによって出力レジスタ742中にロ
ードされる。
制御回路720は、この出力データ値をロードするよう
に出力レジスタ742を制御するとき、信号ARをパルス的
に供給してレジスタ740の内容を0にセットする。
期間T13の間、連続する次のコードワードの最初のビ
ットである2進数0はレジスタ735にシフトされる。レ
ジスタ735から供給される信号BTの2進数0は、信号END
の2進数1の値と同じ作用を持っている。期間T14およ
びT15の期間中、制御回路720は、ビット・ストリームか
ら得られるビットをレジスタ734と735のより上位のビッ
ト位置にシフトし、同時にレジスタ730に保持されてい
るパラメータ0のビットを期間T16中に信号SBが2進数
1の値をとるまで下位ビット位置にシフトする。この状
態になると、レジスタ734と735中の値は加算器738に供
給され、レジスタ740に保持されている0値と加算され
て、期間T16の終りに生ずる信号OLDの立下り部と時間的
に一致して出力レジスタ742中に記憶される。
第7図に示す回路は、残余の期間T17乃至T22において
も上記と同様に動作する。期間T12とT16の終りにデコー
ダから供給される値はそれぞれ9と2である。第8図の
タイミング図は、期間T19の終りにデータ値4を得るた
めにコード化2進値100を復号する作用にも関連してい
る。
統計的デコーダ50によって与えられるデータ値はビデ
オ信号プロセッサ60に供給される。プロセッサ60はこの
データ値をフィールド記憶メモリまたはフレーム記憶メ
モリ(図示なし)に記憶させ、次にこの記憶されたデー
タを処理して表示装置70に表示する。
以上説明したこの発明の実施例においては、ピクセル
値がデコーダ50から供給されるとき、ビデオ信号プロセ
ッサ60はそのピクセル値を処理するに充分な速度で動作
するものと仮定している。しかし、より低速のビデオ信
号プロセッサを用いるシステムにおいては、プロセッサ
60がデコーダから供給されるデータを受入れる用意がで
きていない場合にそのデコーダの動作を一次停止させる
回路(図示なし)をデコーダ中に設けることが必要であ
る。この回路は、制御回路720に内蔵させてプロセッサ6
0から供給されるWAIT信号(図示なし)に応じて信号OS
H、MSH、OSRLおよびMSLDの発生を禁止するものとするこ
とができる。
フロントページの続き (56)参考文献 特開 昭53−90749(JP,A) 特開 昭58−127241(JP,A) 特開 昭61−237520(JP,A) (58)調査した分野(Int.Cl.6,DB名) H03M 7/40

Claims (9)

    (57)【特許請求の範囲】
  1. 【請求項1】デジタル・サンプルの供給源と、 上記デジタル・サンプルの供給源に結合されていて、こ
    のデジタル・サンプルの供給源から供給された該デジタ
    ル・サンプルから、値が大きくなるにつれて統計的発生
    頻度が概して単調に減少するデジタル・サンプルを取出
    す取出し手段と、 上記取出されたデジタル・サンプルを受入れるように結
    合されていて、上記取出されたデジタル・サンプルを適
    応的にコード化してコード化されたデータを生成するコ
    ード化手段と、 を具備し、 上記コード化手段は、上記取出されたデジタル・サンプ
    ルをコード化するのに適した統計的コード化テーブルを
    規定する複数のパラメータ値を発生するようにプログラ
    ムされた計算手段を含んでおり、 上記複数のパラメータ値は連続する1組のコード値を規
    定するものであり、かつこの1組のコード値は上記取出
    されたデジタル・サンプルの発生し得る連続した1組の
    値にそれぞれ対応付けられ、 上記コード化手段は、上記複数のパラメータ値によって
    規定された上記統計的コード化テーブルに従って、上記
    パラメータ値および上記コード値を含んだ上記コード化
    されたデータを生成するものである、 デジタル・サンプルのコード化装置。
  2. 【請求項2】上記計算手段は、さらに、上記複数のパラ
    メータ値を使用して上記取出されたデジタル・サンプル
    を上記コード値にコード化し、このコード値に上記パラ
    メータ値を連結して、上記コード化データを生成するよ
    うにプログラムされているものである、請求項1に記載
    のコード化装置。
  3. 【請求項3】上記デジタル・サンプルの供給源は、第1
    の極性と第2の極性のデジタル・サンプルを供給し、 上記デジタル・サンプルの供給源から供給される上記デ
    ジタル・サンプルはその全てが統計的発生頻度が概して
    単調に減少するものであるとは限らず; 上記取出し手段は上記デジタル・サンプルの供給源から
    供給された上記デジタル・サンプルを変形デジタル・デ
    ータ値に変換する変形手段を含み、 上記変形デジタル・データ値は、上記第2の極性のデジ
    タル・サンプルがその極性と大きさが変更された上記第
    2の極性のデジタル・サンプルを表わすデジタル・デー
    タに変えられており、かつ上記第2の極性のデジタル・
    サンプルを表わすこのデジタル・データと上記第1の極
    性のデジタル・サンプルを表わす別のデジタル・データ
    とが変換テーブルにおいて互いに間挿された形になって
    いる、 請求項2に記載のコード化装置。
  4. 【請求項4】上記デジタル・サンプルの供給源から供給
    される上記デジタル・サンプルはその全てが統計的発生
    頻度が概して単調に減少するものであるとは限らず、 上記取出し手段は、上記デジタル・サンプルの供給源か
    ら供給された該デジタル・サンプルを、値が大きくなる
    につれて統計的発生頻度が概して単調に減少するような
    変形デジタル・データ値に変換する変形手段を含むもの
    である、 請求項1に記載のコード化装置。
  5. 【請求項5】受入れたデジタル・サンプルから、値が大
    きくなるにつれて統計的発生頻度が概して単調に減少す
    るデジタル・サンプルを取出すステップと、 上記取出されたデジタル・サンプルの発生し得る各値の
    相対的発生頻度を表わす値のテーブルを生成するステッ
    プと、 上記値のテーブルを処理して1組のコード値を規定する
    複数のパラメータ値を発生させる処理ステップと、 からなり、 上記コード値の各々は上記取出されたデジタル・サンプ
    ルの発生し得る1つの値に対応し、かつその1つのコー
    ド値の2進ビットの数は、上記取出されたデジタル・サ
    ンプルのその1つのコード値以外の発生し得る全てのコ
    ード値との関係において、ほぼ、その1つのコード値に
    対応する1つのデジタル・サンプルの発生頻度が減少す
    るにつれて増大するような関係にあり、 さらに、上記複数のパラメータ値によって規定された統
    計的コード化テーブルに従って上記取出されたデジタル
    ・サンプルを適応的にコード化して、上記コード値を含
    んだコード化デジタル・サンプルを生成するステップ
    と、 上記パラメータ値を上記コード化デジタル・サンプルに
    連結するステップと、からなる、デジタル・サンプルの
    コード化法。
  6. 【請求項6】上記受入れたデジタル・サンプルが第1お
    よび第2の極性を有し; 上記統計的発生頻度を有する上記デジタル・サンプルを
    取出す上記ステップは、 上記第1の極性を有する上記デジタル・サンプルの各々
    に所定の係数を乗算して第1のスケールされたデジタル
    ・サンプルを生成する乗算ステップと、 上記第2の極性を有する上記デジタル・サンプルの各々
    に上記所定の係数を乗算して第2のスケールされたデジ
    タル・サンプルを生成する乗算ステップと、 上記第2のスケールされたデジタル・サンプルの各々に
    所定の値を加算して変更されたサンプルを得る加算ステ
    ップと、 上記変更されたサンプルのそれぞれの極性を、上記第1
    のスケールされたデジタル・サンプルの極性と同一にな
    るように変更するステップと、 からなるものである、請求項5に記載のコード化法。
  7. 【請求項7】上記受入れたデジタル・サンプルが第1お
    よび第2の極性を有し; 上記統計的発生頻度を有する上記デジタル・サンプルを
    取出すステップは、 上記第1の極性を有する上記デジタル・サンプルの各々
    に所定の係数を乗算して第1のスケールされたデジタル
    ・サンプルを生成する乗算ステップと、 上記第2の極性を有する上記デジタル・サンプルの各々
    に所定の係数を乗算して第2のスケールされたデジタル
    ・サンプルを生成する乗算ステップと、 上記第2のスケールされたデジタル・サンプルのそれぞ
    れの極性を上記第1のスケールされたサンプルの極性と
    同一になるように変更するステップと、 上記極性変更された第2のスケールされたサンプルのそ
    れぞれに所定の値を加える加算ステップと、 からなるものである、請求項5に記載のコード化法。
  8. 【請求項8】ビデオ信号を表わすデジタル・データの供
    給源と、 上記デジタル・データの供給源に結合されていて、この
    デジタル・データの供給源から供給された該デジタル・
    データから、値が大きくなるにつれて統計的発生頻度が
    概して単調に減少するデジタル・データを取出す取出し
    手段と、 上記取出されたデジタル・データを受入れるように結合
    され、上記取出されたデジタル・データを適応的にコー
    ド化してコード化されたデータを生成するコード化手段
    と、 を具え、 上記コード化手段は、上記取出されたデジタル・データ
    のコード化に適した統計的コード化テーブルを規定する
    複数のパラメータ値を発生する計算手段を含んでおり、 上記複数のパラメータ値の各々は、上記取出されたデジ
    タル・データの発生し得る1組の値にそれぞれ対応付け
    られた連続する特定の1組のコード値を規定するもので
    あり、 上記コード化手段は、上記複数のパラメータ値によって
    規定された上記統計的コード化テーブルに従って、上記
    パラメータ値および上記コード値を含んだ上記コード化
    されたデータを生成するものである、 ビデオ信号処理システム。
  9. 【請求項9】上記計算手段は、さらに、上記複数のパラ
    メータ値を使用して上記取出されたデジタル・データを
    上記コード値にコード化し、このコード値に上記パラメ
    ータ値を連結して、上記コード化データを生成するよう
    にプログラムされているものである、請求項8に記載の
    ビデオ信号処理システム。
JP1504355A 1988-03-31 1989-03-29 デジタル・サンプルのコード化装置およびコード化法、およびビデオ信号処理システム Expired - Lifetime JP2819174B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US175,915 1988-03-31
US07/175,915 US5045853A (en) 1987-06-17 1988-03-31 Method and apparatus for statistically encoding digital data

Publications (2)

Publication Number Publication Date
JPH03503708A JPH03503708A (ja) 1991-08-15
JP2819174B2 true JP2819174B2 (ja) 1998-10-30

Family

ID=22642193

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1504355A Expired - Lifetime JP2819174B2 (ja) 1988-03-31 1989-03-29 デジタル・サンプルのコード化装置およびコード化法、およびビデオ信号処理システム

Country Status (8)

Country Link
US (1) US5045853A (ja)
EP (1) EP0425496B1 (ja)
JP (1) JP2819174B2 (ja)
KR (1) KR0167092B1 (ja)
AU (1) AU622663B2 (ja)
CA (1) CA1321012C (ja)
DE (1) DE68926676T2 (ja)
WO (1) WO1989009517A1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1991005439A1 (en) * 1989-09-29 1991-04-18 Alcatel N.V. Adaptive transform coding system
JP3085465B2 (ja) * 1989-10-31 2000-09-11 オリンパス光学工業株式会社 画像データの符号化装置および符号化方法
JP3012698B2 (ja) * 1991-01-29 2000-02-28 オリンパス光学工業株式会社 画像データの符号化装置および符号化方法
US5857088A (en) * 1991-10-24 1999-01-05 Intel Corporation System for configuring memory space for storing single decoder table, reconfiguring same space for storing plurality of decoder tables, and selecting one configuration based on encoding scheme
JPH07502632A (ja) * 1991-12-23 1995-03-16 インテル コーポレイシヨン ハフマンコードの復号化のための回路
US5734784A (en) * 1992-03-25 1998-03-31 Kabushiki Kaisha Toshiba High data rate system and method for video recording and playback
US5351047A (en) * 1992-09-21 1994-09-27 Laboratory Automation, Inc. Data decoding method and apparatus
US5615020A (en) * 1993-05-13 1997-03-25 Keith; Michael System and method for fast huffman decoding
JPH08147479A (ja) * 1994-11-17 1996-06-07 Hitachi Ltd 画像出力装置並びに画像復号化装置
US5793896A (en) * 1995-03-23 1998-08-11 Intel Corporation Ordering corrector for variable length codes
US5748790A (en) * 1995-04-05 1998-05-05 Intel Corporation Table-driven statistical decoder
US5646618A (en) * 1995-11-13 1997-07-08 Intel Corporation Decoding one or more variable-length encoded signals using a single table lookup
US5848195A (en) * 1995-12-06 1998-12-08 Intel Corporation Selection of huffman tables for signal encoding
KR100319919B1 (ko) * 1996-07-06 2002-06-20 윤종용 가변 확률모형을 사용한 개선된 산술 부호화기 및/또는 복호화기
US5821887A (en) * 1996-11-12 1998-10-13 Intel Corporation Method and apparatus for decoding variable length codes
US6253165B1 (en) * 1998-06-30 2001-06-26 Microsoft Corporation System and method for modeling probability distribution functions of transform coefficients of encoded signal
US7024409B2 (en) * 2002-04-16 2006-04-04 International Business Machines Corporation System and method for transforming data to preserve privacy where the data transform module suppresses the subset of the collection of data according to the privacy constraint
US8112388B2 (en) * 2007-08-03 2012-02-07 Sap Ag Dependency processing of computer files
US8077063B2 (en) * 2010-01-18 2011-12-13 Freescale Semiconductor, Inc. Method and system for determining bit stream zone statistics
US8866645B2 (en) * 2012-10-02 2014-10-21 The Boeing Company Method and apparatus for compression of generalized sensor data
CN113987556B (zh) * 2021-12-24 2022-05-10 杭州趣链科技有限公司 数据处理方法和装置、电子设备、存储介质

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3883847A (en) * 1974-03-28 1975-05-13 Bell Telephone Labor Inc Uniform decoding of minimum-redundancy codes
JPS5255313A (en) * 1975-10-30 1977-05-06 Kokusai Denshin Denwa Co Ltd Facsimile signal coding system
JPS5390749A (en) * 1977-01-19 1978-08-09 Nec Corp Huffman decoder circuit
US4125861A (en) * 1977-08-18 1978-11-14 Bell Telephone Laboratories, Incorporated Video signal encoding
US4386416A (en) * 1980-06-02 1983-05-31 Mostek Corporation Data compression, encryption, and in-line transmission system
US4396906A (en) * 1980-10-31 1983-08-02 Sri International Method and apparatus for digital Huffman encoding
US4369463A (en) * 1981-06-04 1983-01-18 International Business Machines Corporation Gray scale image data compression with code words a function of image history
AU555476B2 (en) * 1981-10-15 1986-09-25 Motorola, Inc. Binary encoding
CA1211219A (en) * 1982-06-30 1986-09-09 Hideo Kuroda Digital data code conversion circuit for variable- word-length data code
JPS5992688A (ja) * 1982-11-19 1984-05-28 Fuji Photo Film Co Ltd 適応形画像圧縮方式
US4563671A (en) * 1983-05-18 1986-01-07 At&T Bell Laboratories Coding technique
US4574382A (en) * 1983-10-05 1986-03-04 International Business Machines Corporation Variable length character code system
US4725815A (en) * 1984-01-16 1988-02-16 International Business Machines Corporation Method for encoding and decoding a digital image
US4631521A (en) * 1984-12-31 1986-12-23 Wang Laboratories, Inc. Method and apparatus for differential run-length coding
GB8502924D0 (en) * 1985-02-05 1985-03-06 British Telecomm Image encoding
US4646061A (en) * 1985-03-13 1987-02-24 Racal Data Communications Inc. Data communication with modified Huffman coding
JPH0821863B2 (ja) * 1985-04-13 1996-03-04 キヤノン株式会社 データ処理方法
US4754492A (en) * 1985-06-03 1988-06-28 Picturetel Corporation Method and system for adapting a digitized signal processing system for block processing with minimal blocking artifacts
JPS62152225A (ja) * 1985-12-26 1987-07-07 Canon Inc 予測符号化装置

Also Published As

Publication number Publication date
EP0425496B1 (en) 1996-06-12
CA1321012C (en) 1993-08-03
EP0425496A1 (en) 1991-05-08
JPH03503708A (ja) 1991-08-15
US5045853A (en) 1991-09-03
DE68926676T2 (de) 1997-02-20
DE68926676D1 (de) 1996-07-18
KR900701102A (ko) 1990-08-17
AU3410689A (en) 1989-10-16
AU622663B2 (en) 1992-04-16
WO1989009517A1 (en) 1989-10-05
KR0167092B1 (ko) 1999-03-20

Similar Documents

Publication Publication Date Title
JP2819174B2 (ja) デジタル・サンプルのコード化装置およびコード化法、およびビデオ信号処理システム
JP2808156B2 (ja) 統計的にコード化されたデジタル・データを復号するシステム
JP3332619B2 (ja) 復号装置およびその方法
JP3484310B2 (ja) 可変長符号器
KR100246878B1 (ko) 역이산 코사인변환 프로세서, 이산 코사인 변환계수의 매트릭스를 역변환하기 위한 방법 및 그 장치
JP3227292B2 (ja) 符号化装置、符号化方法、復号化装置、復号化方法、符号化復号化装置及び符号化復号化方法
JPH0799812B2 (ja) 信号符号化装置および信号復号化装置、並びに信号符号化復号化装置
JPS6148298B2 (ja)
AU1375295A (en) Method and apparatus for performing a fast hadamard transform
US5832037A (en) Method of compressing and expanding data
KR100434207B1 (ko) 인코딩장치와방법및디코딩장치와방법
US6121905A (en) Method and apparatus for decoding JPEG symbols
US6313767B1 (en) Decoding apparatus and method
JPS6352812B2 (ja)
JP3691261B2 (ja) 可変長復号器のデータ可変装置
JPH0669146B2 (ja) ラン長符号化データ復号装置
JP3389389B2 (ja) 可変長コード復号化装置
JP3229690B2 (ja) 可変長符号復号器
JP2934603B2 (ja) 可変長さコードの復号化方法及びその装置
JPH08167855A (ja) ハフマン復号化回路
JP3095558B2 (ja) 可変長符号化データの復号化回路装置及び復号化方法
JP2838964B2 (ja) 可変長符号化回路
JP3093451B2 (ja) 冗長性低減符号化装置
JPH07312557A (ja) 可変長データ連結回路
JP2599375B2 (ja) ベクトル量子化方法

Legal Events

Date Code Title Description
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

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

Free format text: PAYMENT UNTIL: 20080828

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20090828

Year of fee payment: 11

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090828

Year of fee payment: 11