JPH11177985A - 高速の画像圧縮のための方法および装置 - Google Patents

高速の画像圧縮のための方法および装置

Info

Publication number
JPH11177985A
JPH11177985A JP10280395A JP28039598A JPH11177985A JP H11177985 A JPH11177985 A JP H11177985A JP 10280395 A JP10280395 A JP 10280395A JP 28039598 A JP28039598 A JP 28039598A JP H11177985 A JPH11177985 A JP H11177985A
Authority
JP
Japan
Prior art keywords
coefficients
transform
image
images
hartley
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.)
Granted
Application number
JP10280395A
Other languages
English (en)
Other versions
JP4860017B2 (ja
Inventor
Steven P Pigeon
ピー. ピジョン スチーヴン
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.)
AT&T Corp
Original Assignee
AT&T Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by AT&T Corp filed Critical AT&T Corp
Publication of JPH11177985A publication Critical patent/JPH11177985A/ja
Application granted granted Critical
Publication of JP4860017B2 publication Critical patent/JP4860017B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • H03M7/425Conversion 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 for the decoding process only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Discrete Mathematics (AREA)
  • Signal Processing (AREA)
  • Algebra (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

(57)【要約】 【課題】本発明は、画像またはビデオ・データの記憶に
おいて、画像または画像データを圧縮および伸張する効
率的で高速の方法を提供することを目的とする。 【解決手段】 ディスクリート・ハートレー変換などの
可逆変換を使った画像圧縮方式において、ディジタルの
フォーマットで画像の記憶および呼出しを行うために画
像データを効率良く圧縮および伸張する。前記画像デー
タは1つまたはそれ以上の画像の組に分割され、各画像
の組は前記画像からのピクセル・データの方形配列を表
している。各画像の組はハートレー変換などの可逆変換
を使って、一組の係数に変換され、そして次に量子化さ
れて、エントロピー・コーダを使って符号化される。圧
縮された画像の組のそれぞれに対する結果の符号化され
たデータの組が、次にそれ以降での伸張のために格納さ
れる。該格納されたデータを拡張して前記画像に戻すた
めの方式は、本質的に圧縮方式の逆である。

Description

【発明の詳細な説明】
【0001】
【発明の分野】本発明は、概して、画像またはビデオ・
データの記憶に関し、特に画像または画像データを記憶
および呼出しのために圧縮および伸張する、効率的で高
速の方法を提供する。
【0002】
【発明の背景】ディスクリート・コサイン変換(Discr
ete Cosine Transform:DCT)およびリアル・フー
リエ変換(Real Fourie Transform:RFT)などの
変換に基づいた画像圧縮の技法はよく知られている。ハ
ートレー変換はディスクリート・コサイン変換およびリ
アル・フーリエ変換と同じクラスに属する変換のうち、
時間領域から周波数領域への変換であり、そのカーネル
として直交基本関数を使う。そのプロトタイプの変換は
1940年代の初期においてハートレーによって紹介さ
れたが、その現在の名前および形式が与えられたのは最
近のことである(Bracewell及びRonald.Nの「高速ハー
トレー変換(A The Fast Hartley Transform)」、Procee
dings of the IEEE、第72巻、第8号、1984年8月、
第1010頁乃至第1018頁参照)。
【0003】A.連続ハートレー変換 時間関数X(t)の周波数fに関するハートレー変換H
f(X)は次の式で与えられる。
【数1】 ここで、Tdは時間領域(有効な時間値の集合)であ
り、関数Cas(2πft)が直交基本関数として使わ
れている。Cas(x)はコサイン・アンド・サイン(c
osine and sine)(ハートレーが使った略号)を意味し、
次のように定義されている。
【数2】 同様に、時刻tにおける周波数関数F(f)の逆ハート
レー変換Ht -1(F)は次の式で与えられる。
【数3】 ここで、Fdは周波数領域(有効な周波数の集合)であ
る。
【0004】ハートレー変換は任意の数の次元にかなり
簡単に一般化される。二次元の場合、ハートレー変換は
次の式で与えられる。
【数4】 ハートレー変換は任意の数の次元に対して一般化される
が、この積分は分離不可能である。すなわち、そのカー
ネルを、1つはf11だけに依存し、そしてもう1つは
22だけに依存する2つの関数の積に分離することは
できない。変換の分離可能性は実装および最適化を容易
にするために非常に重要である。ベースとしてcas
(2πft)関数を使って分離可能性を実現するため
に、ダイレクション・ベクトルとしてt1およびt2を使
う平面上での方向付けられた波のきれいな物理的解釈は
捨てられ、直観性は劣るが、その軸に対して直角である
波の積で置き換えられなければならない。したがって、
二次元におけるハートレー変換の分離可能な変形版は次
の式のようになる。
【数5】
【0005】B.ディスクリート・ハートレー変換 ほとんどの変換の場合のように、ハートレー変換のディ
スクリート・バージョンはいくつかの論文においてブレ
ースウェルによって説明されている(たとえば、Bracew
ell及びRonald N.の「高速ハートレー変換(A The Fast
Hartley Transform)」、Proceedings of the IEEE、第
72巻8号、1984年8月、第1010頁乃至第1018
頁)、および、Bracewell、Ronald.N.、O.Buneman、H.H
aoおよびJ.Villasenorの「高速二次元ハートレー変換(A
Fast Two-Demensional Hartley Transform)」(Proceed
ings of the IEEE)、第74巻9号、1986年9月、
第1282頁乃至第1283頁参照)。ディスクリート・バージ
ョンはコンピュータの実装に対して特によく適してい
る。N個の点において定義される周波数fに関連しての
ベクトルXのディスクリート・ハートレー変換(Discr
ete Hartley Transform:DHT)HN,f(X)は次の
式によって与えられる。
【数6】 ここで、f0{0,...,N−1}である。N個の点
において定義される時刻tにおけるベクトルFの逆DH
T HN,t -1(F)は次の式で与えられる。
【数7】 ここで、t0{0,...,N−1}である。単純化の
ため、そして一般性を失わないために、すべての次元に
おける点の数は等しいことを仮定して、二次元(2‐
D)のDHTは次の式で与えられる。
【数8】 これは分離可能である。言い換えれば、2DのDHTは
2Dの行列Xの行について計算され、そして次にその列
について計算される一次元の(1D)変換H
N,f(Xt,t)だけを使って計算することができる。
【0006】ハートレー変換は各種のコンテキストにお
いて使われてきた。ハートレー変換は画像圧縮について
考慮されてきたが、ハートレー変換を使った圧縮アルゴ
リズムの開発は、あったとしてもごく少なかった。いく
つかの論文においてはディスクリート・ハートレー変換
は候補のリストの中に含まれており、そしてDCTに対
して比較されたが、ほぼ等価であるとして直ぐに捨てら
れるだけであった。Bracewellはハートレー変換につい
ていくつかの論文および本を書いたが、圧縮の目的でそ
れを考慮することはなかった。William Prattによる
「ディジタル画像処理(Digital Image Processing)」(J
ohn Wiley & Sons、第2版、1991年)において、
ハートレー変換は、変換のかなり優れた網羅的なリスト
の一部として提示されているだけである。Bracewellに
よる論文の中で、高速ハートレー変換のための技法が提
示されているが、すべてかなり一般的な場合を考慮して
いる。以前の論文は与えられたサイズに対する変換行列
の実際の数値の使用は探索せず、そして画像圧縮に対し
て有用な、より効率的なアルゴリズムを得るためにこれ
らの値をどのように利用することができるかについては
探索しなかった。
【0007】ディジタル画像を効果的に圧縮および伸張
するために、ディスクリート・ハートレー変換などの変
換の利点を利用する実際的な方法が望まれている。
【0008】
【発明の概要】本発明は、ディジタル形式での画像の記
憶および呼出しのために画像データを効率的に圧縮し、
そして伸張するための、ディスクリート・ハートレー変
換などの可逆変換の使用に向けられている。本発明の画
像圧縮方式は、画像データを1つまたはそれ以上の画像
の組に分割し、各画像の組はその画像からのピクセル・
データの方形行列を表している。各画像の組はハートレ
ー変換などの可逆変換を使って1組の係数に変換され、
その係数は量子化され、エントロピー・コーダを使って
符号化される。圧縮された画像の各組に対する結果の符
号化されたデータの組が、それ以降での伸張のために記
憶される。記憶されたデータの画像への伸張方式は、本
質的にはその圧縮方式の逆である。
【0009】
【発明の詳細な記述】ディスクリート・ハートレー変換
の利点の1つは、その変換行列の挙動が特に良いことで
ある。たとえば、カーネルのサイズがN=8として選定
されている特殊ケースにおいて、計算時間およびハード
ウェアが大幅に節約されるように、非常に重要ないくつ
かの最適化を行うことができる。本発明によると、カー
ネルのサイズがN=8である2DのDHTに基づいたア
ルゴリズムが、高速画像圧縮および伸張システムの一部
として利用される。Nの他の値(DHTに対する他のカ
ーネルのサイズを表している)も、本発明の内容に関連
して利用することができる。
【0010】A. 行列HNの性質および画像圧縮 高速変換を選択する際、興味深い多くの特性がある。デ
ータを圧縮および伸張するために変換の使用を考慮する
場合、それらの特性のうちの1つは、可逆性、すなわ
ち、伸張のために使われる逆変換が、圧縮のために使わ
れる順方向の変換と同じである(一定の範囲内で)こと
である。もう1つは、単純性である。さらに、変換が対
称的に行われる場合、すなわち、順方向および逆方向の
変換が同じである場合、実装における利点が存在する。
1つのハードウェア装置、またはアルゴリズムを使っ
て、順方向の変換およびその逆の変換の両方を計算する
ことができる。高速変換の構築のために興味深いさらに
もう1つの性質は、変換行列の中にある異なる値の実際
の個数である。
【0011】上記の式(1)および(2)から、ディス
クリート変換のペアを対称的に表現できることが分か
る。順方向の変換はkHNT=Fとして表される。ここ
で、ユニタリ変換行列HNはt、f 0{0,...,N
−1}に対して、hft=cas(2πft/N)、であ
り、定数k=1/N、そしてXTはベクトルXの転置ベ
クトルである。逆変換はHNT=Xによって表される。
したがって、HN(kHNT)T=Xであり、それはD
HTが可逆変換であることを証明している。これによっ
て、HN -1=kHNであることが結論付けられる。これは
最も便利である。というのは、逆変換は単純にHNF=
Xを計算することによって求めることができ、順方向の
変換はkHNX=Fを計算することによって求めること
ができるからである。
【0012】この対称性の特徴は、ハードウェア以外に
ソフトウェアにおいても利用することができる。すなわ
ち、単独の装置または単独のアルゴリズムを使って、順
方向の変換およびその逆の変換の両方を計算することが
できる。
【0013】行列HNには、それ自身の逆であるという
性質(定数kをとりあえず除外して)があるだけでな
く、Nの選定された値に対して、行列HNは異なる値を
ほとんど含まないことも分かる。たとえば、N=8の場
合、異なる値は2個だけ(符号をカウントしないで)で
ある。これと比較して、たとえば、DCTでは、N=8
の場合、異なる値が6個(符号をカウントせずに)あ
る。DHTの他のケース、たとえばN=16の場合、異
なる値は5個である(ここでも符号をカウントせず
に)。または、N=32の場合でも8個だけしかない。
DHTの場合、異なる値の個数はNと共にゆっくりと増
加する。
【0014】画像圧縮に関連して、DHTのカーネルの
サイズの選定、たとえば、8点のDHTにするか16点
のDHTにするかは、いくつかの相互関連の観察を考慮
しながら行われる必要がある。まず第1に、DHTに対
する点の数Nは画像のサイズによって制限されない。画
像の組として(すなわち、画像のパッチとして)それぞ
れ2‐Dの部分の画像データ要素を含んでいる組(画像
データ要素は画素、またはピクセルとしても知られてい
る)を選択することができる。ここで、その組またはパ
ッチのサイズは各次元におけるDHTのサイズにマッチ
する。第2に、画像の組が小さければ小さいほど、DH
Tは与えられたパッチに対して速く計算することができ
る。パッチが大きくなるにつれて、たとえば、16×1
6または32×32の場合、変換は下の方の周波数の係
数の量子化に対してより敏感になる。その結果、その組
が再アセンブリされて画像に戻されるときにブロックの
不連続性の(煩わしい)視覚的影響を有する歪みが生じ
る可能性がある。第3に、カーネルのサイズがより小さ
く設定された場合、たとえば、4×4の場合、そのデー
タの逆相関を効率的に計算することができず、どの係数
も0にはならない。
【0015】したがって、再構築された画像の品質以外
に、計算効率が程良い結果を与える、1つの「妥協」の
選定は、8×8ピクセルのパッチ・サイズの場合であ
る。8×8ピクセルのサイズで、ブロッキングの効果が
気にならずに、比較的大きな量子化を適用することがで
き、また、平均して多くの係数が0となり、あるいは少
なくとも非常に少数となる。
【0016】したがって、パッチ・サイズが8×8、す
なわち、H8の場合、ハートレー変換を効率的に計算す
るアルゴリズムが本発明に従って得られる。N=8の場
合のDHTカーネルが図1に示されている。実際に、D
HTの対称的な性質およびHN(H8だけではない)のカ
ーネルの中の異なる値の数が少ないという性質によっ
て、1‐Dの高速ハートレー変換を使った計算が可能と
なる。すなわち、O(Nlog N)のオーダでのアル
ゴリズムによって計算される変換が得られ、それは分離
できない2‐Dのアルゴリズムの場合に必要なO
(N2)のオーダよりずっと効率的である。
【0017】N=8の場合(すなわち、H8の場合)、
カーネルの値hftは∀1、0、または∀/2(図1に示
されているように)である。0の項を計算から平凡に取
り除くことができる。hft=∀1のときは常に、乗算は
不要であり、整数の加算または減算だけで済む。∀/2
の項はほんの少しだけ計算的に複雑であるが、その必要
な2つの乗算を一連のビット・シフトと加算によってハ
ードウェアで近似することができる。ベクトルXの中の
値の精度(必要な正確なビット数の意味での)が与えら
れて、いくつかの整数aに対して∀/2の妥当な近似値
を計算するために必要な項の数は非常に少ない。実際
に、実験によると、∀/2を∀1.5で置き換えること
によっていくつかの場合に満足な結果が提供されること
が分かっている。
【0018】N=8のケースに対して、DHTのための
「バタフライ」計算が図2に示されている。高速フーリ
エ変換の場合と同様に、これはより一般的な意味でのハ
ートレー変換の特殊ケースである高速ハートレー変換
(FHT)として示される。Nが他の値の場合、FHT
のアルゴリズムを、DHTカーネルの中の点の数Nが2
のべき乗である場合に最適化することができる。Nが2
のべき乗の値である場合、最後に必要な定数k=1/N
による除算は、固定のビット・シフトに帰せられ、それ
はハードウェアで簡単に計算することができ(バレル・
シフタでさえも不要なので)、そしてソフトウェアでは
最小限の時間で計算することができる。
【0019】二次元の場合、分離できない2‐D行列H
N,N(次元が4つである)に行列X(次元が2である)
を乗算して行列F(やはり次元が2である)を得る必要
がある。しかし、ここでは変換の分離可能なバージョン
を使っているので、行列HN,Nは不要であり、HNだけで
済む。一般に、この分離可能な行列を使うアルゴリズム
はO(mNm log N)のオーダでの計算を必要とする。
ここで、mは次元の数である(そして各次元においてN
個の点だけを仮定している)。したがって、分離可能な
2‐DのFHTの場合、計算の回数は直接的な変換(平
凡な行列の乗算を使っている)の場合のO(N3)の代
わりに、O(N2logN)のオーダである。
【0020】図1および図2から分かるように、N=8
での高速DHTの場合、8点のFHTを計算するために
2回の乗算と29回の加算だけが必要である。これに比
べて、たとえば、高速DCT(FDCT)では、22回
の加算と11回の乗算が必要である。しかし、他の人に
よって指摘されているように、FDCTの場合に必要な
多くの乗算は同じ係数の倍数を使用する。したがって、
速度を改善するために、いくつかの応用においては、そ
れらの乗算はFDCTから取り出され、それに続く量子
化方式の中に組み込まれる。したがって、FDCTのア
ルゴリズムでの正確な結果を仮定するには、その量子化
まで進まなければならない。これによって乗算の回数が
(完全でない)FDCTにおいて5まで減らされ、一
方、量子化のステップに対して実際には追加するものは
何もない。
【0021】同様な削減をFHTに関して採用すること
ができ、N=8の場合のFHTの計算は乗算が全く不要
で、加算のみとなる。この技法は常に最適の結果を提供
するわけではないが、このアルゴリズムの計算をスピー
ドアップするための良好なメカニズムを提供する。
【0022】B. FHTを使用する画像圧縮 本発明の画像圧縮システムに関連して、ここでFHTを
使うための技法について説明する。ここでは提案の方法
およびその各種のサブプロセスについて説明する。
【0023】他の変換ベースの圧縮方式の場合と同様
に、本発明の圧縮方式は量子化および、記憶されるべき
情報の実際の量を減らすための方法として間引き(decim
ation)を含む。これは認知されるように重要な情報が破
壊されないことを保証しながら行われる。データの圧縮
は量子化および間引きのプロセスにおいて捨てられたビ
ットの量によって得られる。しかし、得られる実際の圧
縮の量はその画像に必要な品質によって制約される。
【0024】本発明の1つの実施形態によると、与えら
れたサイズ(たとえば、上記のようにN=8)の場合の
変換行列の実際の数値的な値を、画像圧縮プロセスの一
部として、そのFHTが加算および減算だけを使って
(乗算なしで)計算するか、あるいは加算、減算および
ビット・シフトだけを使って計算できるように利用する
ことができる。本発明のさらに詳しい側面について以下
に説明される。
【0025】1. 精度の制御 FHTの興味深い性質はアルゴリズムの複雑性に関する
ものだけでなく、実際の数値的な出力にも関連がある。
まず最初に、8点のFHTに対する係数の出力の半分が
正確な整数値である。というのは、それらは整数の演算
だけで計算されるからである。他の4つは量∀a/2の
十分に正確な近似を使うことによって程良い精度を保つ
ようにすることができる。したがって、本発明に従っ
て、FHT変換は変換の段階の間でのその変換による係
数の出力の量子化と組み合わせて使うことができる。す
なわち、圧縮を強めるため、あるいは必要なハードウェ
アの量を最小化するために、いくつかのビットを捨てる
ことができる。これは以下に説明されるように、変換ア
ルゴリズムの精度を制御することによって実現される。
【0026】本発明によるFHTアルゴリズムの最適精
度制御が図3に示されている。精度コントローラがその
FHT変換によって操作されるビットの数を支配する。
ソフトウェアの実装においては、精度パラメータ制御の
結果、量子化が小さいときにはより正確な計算が得ら
れ、そして量子化が高いときは低い精度となる。ソフト
ウェアにおいては整数のビット数は固定であるので、ス
ピードの面での計算的な利点はない。しかし、ハードウ
ェア実装においては、低い精度において高い量子化が得
られるだけでなく、FHT変換器に対する設計の複雑度
を少なくすることができる。
【0027】実験において、精度は或る個数のビットだ
けを保持することによって制御された。その数は小数点
の後のビットの数が実験によって変更された(すなわ
ち、実験は小数点の後の6個のビットが保持されるか、
小数点の後の3つのビットが保持されるか、あるいは何
も保持されないかのいずれかでの精度制御を使って行わ
れた)。丸めの誤差の制御はなく、数値は単純に切り詰
められた。
【0028】図3を参照して、本発明による精度コント
ローラが8×8のFHTを参照して説明される。8×8
の配列のピクセルを含んでいる一組の画像データ301
が、画像パッチの行(「行のFHT」)について演算す
る1‐DのFHT302によって処理される。次に、行
のFHTの出力(データの8×8の配列)は量子化手段
R303によって量子化され、画像パッチ301上の
行FHT301の演算からの出力において含まれるビッ
トの数が減らされる。次に、それ自身が8×8のデータ
である量子化手段QR303の出力304は、8×8の
配列のデータの列(「列のFHT」)について演算する
1‐DのFHT305によって処理される。その列のF
HTの出力は次に量子化手段QC306によって量子化
され、データ・パッチ304上の列のFHT305につ
いての演算からの出力に含まれるビット数が削減され
る。
【0029】この分野の技術に熟達した人であれば、上
記の精度制御のオプションはN=8以外のサイズのNの
FHTに対しても適用できること、そして精度制御は、
たとえば、切り詰め以外の丸めによって、本発明の利点
から逸脱することなしに、各種の同様な方法で実現でき
ることを理解されたい。
【0030】2. 出力の係数の量子化について FHTステップが実行されると(オプションの精度制御
を含めて)、そのFHTプロセスから得られる係数が1
つの組として、圧縮の度合いを増加させるために量子化
される。係数を量子化する戦略は、保持される係数を量
子化しながら重要度の低い係数を捨てることである。ど
の係数が最も重要であるかが分かっていると仮定して、
あるいはそれらの順序について少なくともいくつかのア
イデアがあるとして、重要度が最高の係数が最初に来
て、重要度が最低の係数が最後に来るようにソートする
関数f(i,j)が必要である。これを行うための1つ
の方法は、当て推量による方法であり、既知の変換の性
質を使って、そして本発明の内容に従って圧縮されるべ
き画像における何らかの頻度分布を仮定する。
【0031】代わりに、係数のソーティング関数f
(i,j)は、どの係数がより多くのエネルギーを含む
かを、多種多様な長いテスト・セットにわたって統計的
に決定することによって学習し、その係数をそれに従っ
てソートすることができる。係数の関数f(i,j)ま
たはそのランクは、215個の画像からのほぼ1,00
0,000パッチのサンプルを使って実験的に学習され
た。係数のランキングを学習するために、各i,j 0
{0,...,7}に対して係数の絶対平均エネルギ
ー、E[|Fij|]が計算された(ここで、Fは変換さ
れた行列である)、そして次に、その係数が大きさの降
順にソートされた。関数f(i,j)は部分的な順序を
設定し、F’f(i,j)=Fijとなるように、そして一般
に、E[|F’0|]∃ E[|F’1|]∃...∃
E[|F’m-2|] ∃ E[|F’m-1|]となるよう
にする。ここで、m=N2である。この順序付けの関数
が得られると、量子化を適用することができる。本発明
に対して実験に関連して使われた量子化関数は次の形式
のものである。
【数9】 ここで、g(c,f(i,j))は、パラメータc ∃
1、の「品質」ファクタでのf(i,j)における或
る単調増加関数である。関数g(c,f(i,j))は
関数f(i,j)の何らかの順序付けの間違いを最小化
するか、あるいは訂正するために十分に緩やかな傾斜で
単調に増加する必要がある。実験によると、関数g
(c,f(i,j))=c1.025f(i,j)が満足でき
ることが分かった。この量子化関数を適用する効果は
(損失のある)圧縮の手段としてビットを捨てることで
ある。
【0032】3. モノクロ画像の圧縮 図4を参照して、本発明の画像圧縮方式が以下に説明さ
れる。次の説明において画像はモノクロ画像の表示であ
ること(すなわち、その画像の各データ点はグレイ・ス
ケールの視覚的情報を表している単独の値から構成され
る)が仮定され、カラー画像についての本発明の圧縮方
式の適用については、モノクロのセクションに続くセク
ションにおいて説明される。例を示す目的で、8点のF
TH(すなわち、N=8)がハートレー変換(あるい
は、より一般的には、可逆の)に対して使われている。
この分野の技術に熟達した人であれば、本発明の圧縮方
式はN=8以外のFHTサイズに対しても適用できるこ
とが分かる。
【0033】元の2‐Dのモノクロ画像401から1つ
またはそれ以上の画像の組が抽出され、そのような各画
像の組は、使用されるFHT変換のサイズに等しい次元
を有するピクセルの配列から構成されている。例を示す
目的のために、8点のFHTが使われることが仮定され
ているので、各画像の組は8×8の配列である。FHT
は任意のサイズが可能であり、ここで使用されるFHT
変換のサイズは画像そのもののディメンジョンに等し
く、処理される必要があるのは単独の画像の組、すなわ
ち、画像そのものだけであることは指摘されるべきであ
る。したがって、たとえば、その画像が512×512
ピクセルの配列である場合、512点のFHTを使って
その画像を圧縮することができる。画像の組の数は使用
される画像パッチのサイズに対するその画像サイズの比
から求められる。したがって、たとえば、その画像が5
12×512ピクセルの配列であって、画像パッチの組
が8×8(すなわち、8点のFHTで使われる)であっ
た場合、抽出されて処理される画像の組の数は64×6
4、すなわち、4,096組となる。各画像の組(単独
の画像の組がその画像全体を含んでいる場合を含めて)
は、選択された画像の組402に関して以下に説明され
るステップに従って処理される。
【0034】画像の組402は8点のFHT変換手段4
03によって処理され、ここでFHT変換の手段は図3
に関して上で説明されたのと同じ機能を含む。したがっ
て、そのFHTは2パスの1‐DのFHTを使うことに
よって計算される。すなわち、行のFHTおよび列のF
HTについて計算され、ここで行のFHTおよび列のF
HTは任意の順序で適用することができる。オプション
の精度コントローラを使って、FHTの精度を制御する
ことができる。FHT変換手段に続いて、出力の係数が
量子化手段404によって量子化される。それは上記の
学習した量子化を使うか、あるいは圧縮中の画像データ
のタイプに適している可能性のある別の量子化方式を使
って行われる。次に、量子化された係数がエントロピー
・コーダ405へ出力され、エントロピー・コーダ40
5は各係数を符号化し(すなわち、係数の各値をその値
に対してあらかじめ割り当てられているコードで置き換
え)、それによってディジタル・メモリの中に記憶する
ことができるデータの符号化されたビットストリームを
発生する。
【0035】本発明の画像圧縮方式は各種のエントロピ
ー符号化技法で使えるように設計されているが、最適の
コーダはFHTによって出力される係数値の確率分布に
マッチするものとなる。本発明に従って、正準ハフマン
符号化ツリーを使って1つのコーダが得られた。それは
FHTによって出力される係数の限界値および確率分布
を使って0の回りの整数の特別の表現を作ることによっ
て得られた。0の文字列は特殊ケースとして扱われた。
この例に対する符号化テーブルが図5Aに示されてお
り、そしてそれは実験において成功裡に使われた。
【0036】本発明に従って、より一般化された符号化
方式が図5Bおよび図5Cを参照しながら以下に説明さ
れる。それはFHT演算からの結果の0を中心とした単
峰形の係数の組について演算する(これによって、図5
Aの符号化テーブルの中に示されているような、対称的
なコードが可能である)。図5Bのステップ501に示
されているように、完全な正準ハフマン符号化ツリーが
その変換からの係数値の期待される分布に対して計算さ
れ、頻繁に現われる符号はすべてそのツリーの同じ側に
あるように計算される(正準ハフマン符号化ツリーを計
算するための技法は、この分野の技術に熟達した人にと
ってよく知られている)。非正準ハフマン符号化ツリー
(図5Cのスケッチ(a)に示されている)と対照的
に、正準ハフマン符号化ツリーは図5Cのスケッチ
(b)に示されているように、長さが同じであるすべて
の符号が昇順になっている。したがって、シンボルA〜
Fに対する符号(すなわち、符号化されている「値」)
は、図5C(a)および(b)に示されている非正準お
よび正準ハフマン符号化ツリーに対して次のように与え
られる。
【外1】 同様に、図5Aの符号化テーブルの中の値も昇順に示さ
れている。
【0037】次に、図5Bの中のステップ502におい
て、長さが等しいすべてのコードは共通のグループの中
に組み合わせされ、あるいは融合される。このプロセス
は「リーフ・フュージョン」としても知られており、図
5C(b)の正準ハフマン符号化ツリーに対して図5C
のスケッチ(c)に示されている。シンボルAおよびB
に対するコード(それぞれ長さ2ビット)が1つのグル
ープに組み合わせされ、そしてシンボルC〜F(それぞ
れ長3ビット)が第2のグループに組み合わされる。図
5C(b)および(c)の例において、これらの2つの
集合が第1ビットによってユニークに識別されることに
注意すべきである。すなわち、第1ビットが>0’であ
った場合、そのシンボルは第1のグループからのAまた
はBのいずれかとなることが分かる。しかし、第1ビッ
トが>1’の場合、そのシンボルは第2グループのC〜
Fのうちの1つとなることが分かる。シンボルまたは値
のグループをユニークに識別する、コードのこの部分
は、プリフィックスとして知られている。
【0038】シンボルまたは値の各グループをそのコー
ドのプリフィックス部分によって識別することができる
ので、各コード・グループには図5Bの中のステップ5
03において、正準ハフマン符号化ツリーの構造に基づ
いたプリフィックスが割り当てられる。
【0039】各グループの内部で、符号化されている値
またはシンボルはそのサフィックス、すなわち、プリフ
ィックスの後の残りのビットによってユニークに識別さ
れる。図5C(b)の中で示されているグループにおい
て、プリフィックスが>0’である第1のグループ
{A,B}は、第2の(サフィックス)ビットによって
識別される。サフィックス・ビットが>0’の場合、そ
のシンボルはAであり、サフィックス・ビットが>1’
の場合、そのシンボルはBである。同様に、第2のグル
ープの場合、4つのシンボルC〜Fはプリフィックス・
ビット(>1’)によって1つのグループとして識別さ
れ、そしてそのグループの内部では第2の2個の(サフ
ィックス)ビットによって識別される(たとえば、その
サフィックス・ビットが>11’であった場合、そのシ
ンボルはFである)。したがって、図5Bの中のステッ
プ504において、各グループの中でそのシンボルには
正準ハフマン符号化ツリーの構造に従って1つのサフィ
ックスが割り当てられる。
【0040】このように、図5Aに示されているコード
を調べることによって、そのようなコードはプリフィッ
クス(第1の部分、すなわち、「1」および「0」が示
されている)およびサフィックス(プリフィックスの後
のコードの部分を表すために使われる「1」および
「0」の後に示されているビット数に対する数値)を有
していることが分かる。プリフィックスはコード長が同
じである値の範囲またはグループを識別するために使わ
れ、そしてサフィックスはその値の範囲またはグループ
の内部での個々の値を識別するために使われる。
【0041】本発明の正準ハフマン符号化ツリー・プロ
セスを使って、そのデコード・プロセスは次の通りであ
る。まず最初に、そのコードの先頭の部分が既知のプリ
フィックスに対してマッチされ、そのグループが識別さ
れる。グループが識別されると、そのサフィックスがそ
のグループに対する既知のサフィックスに対してマッチ
され、そのグループの内部での特定のシンボルまたは値
が識別される。
【0042】図5A乃至図5Cに示されているような、
本発明のエントロピー・コーダを使うことは、ハフマン
またはソロモン‐ゴロム(Solomon-Golomb)符号化方式な
どの他のエントロピー符号化技法に比べて利点がある。
たとえば、本発明のエントロピー・コーダは、変換され
る画像データの中に普通に見られるような、比較的広い
範囲の頻度分布の係数を処理することにおいて優れてい
る。というのは、コーダのための決定ツリーが、ハフマ
ンまたはソロモン‐ゴロムのコーダに対する決定ツリー
より複雑でないからである。本発明のエンコードおよび
デコードのプロセスは他の方式よりも高速である。とい
うのは、その決定ツリーの深さが短いからである。この
分野の技術に熟達した人であれば、DHT以外の変換
(たとえば、DCT)が使われる場合に、本発明のエン
トロピー・コーダの利点を享受できることが分かる。
【0043】ここで画像圧縮方式に戻って、一組の画像
に対する上記の圧縮技法が、すべての画像データが処理
されるまで残りの画像の組に対して繰り返される。その
画像の組が水平方向または垂直方向の順序で抽出されて
処理されたかどうかは、伸張の手段によってその画像を
再構築するために使われるのと同じ順序である限り、重
要ではない。次々の画像パッチの間の画像データのオー
バラップは不要である。圧縮された各画像の組に対し
て、結果の符号化されたヒストグラムがそれ以降の伸張
のために格納される。
【0044】圧縮された画像の復元(すなわち、格納さ
れたデータを伸張して画像データに戻すこと)は圧縮プ
ロセスの正確に逆である「伸張」のプロセスである。し
たがって、エントロピー符号化ビットストリームから出
発して、そのビットストリームは係数にデコードされ、
その係数は逆量子化され、次にハートレーの逆変換が行
われ、そして最後にパッチごとに最終画像に再アセンブ
ルされる。「逆量子化」は量子化の逆である。すなわ
ち、その係数に対する潜在的な値の範囲を拡張するため
に、ビットまたはディジットを追加することである。例
を示すために、値Xについて操作している量子化手段は
普通は[X/z]の整数部分を保持しており、ここでz
は量子化係数である。
【数10】 逆量子化手段は量子化係数zによってその量子化された
値を乗算することによってそのプロセスの逆を実行す
る。
【数11】
【0045】したがって、たとえば、X=2141、そ
して量子化係数z=10で開始する場合、量子化手段は
Y=Integer[2141/10]=214を結果
として得る。逆量子化はX=214×10=2140を
与える(量子化プロセスから予期される精度損失が結果
として生じる)。代わりに、係数の量子化がそれぞれの
相対的な重要度に従って実行された場合、逆量子化はそ
の係数の相対的な重要度に従ってビットの数を同等に拡
張、すなわち、復元することによって同様に行うことが
できる。
【0046】オプションとして、変換プロセスの間に採
用された任意の精度制御の量子化に対して補正するため
に、逆変換プロセスの間またはその後において第2レベ
ルの逆量子化を採用することができる。
【0047】4. カラー画像の圧縮 本発明の他の実施形態がここでカラー画像に関して説明
される。カラー画像は一連のデータ点として表すことが
でき、各データ点は3つの成分、普通は、加算的な成分
の赤、緑および青を有している。しかし、そのRGBの
カラー空間は人間がその精神視覚的内容を認識するのに
必要な情報以上の情報を含んでいる。したがって、カラ
ー画像は別のカラー空間、たとえば、YCrbカラー空
間(JPEGで使われているような)へ、既知の変換式
を使って変換されるのが普通である。この例において
は、カラー成分Yはカラー空間の「輝度」(またはグレ
イ・ケース)の部分を表し、そしてカラー成分Crおよ
びCbは「色度」(すなわち、カラー情報)を表す。Y
rbの選定は純粋に任意の決定ではない。というの
は、この変換を使うカラー画像の表現は、実験による
と、YIQ,L*U*V*,UVWなどの他の既知のカ
ラー変換モデルより、量子化に対して許容度が高いよう
に現われるからである。しかし、画像圧縮としての本発
明の利点は特定のカラー変換(YCrbなど)には限定
されない。この分野の技術に熟達した人であれば、本発
明の技法は他のカラー変換にも同様に適用できることが
分かる。
【0048】人間の視覚が輝度および色度の情報に対す
る認知度が等しくないことはよく知られている。たとえ
ば、人間の視覚は高い周波数の色度情報に対しては輝度
情報の場合より感度が小さいことが知られている。カラ
ー画像が輝度情報と色度情報の組合せとして表されると
き、色度情報は再構築されたカラー画像における品質の
認知される損失なしに、効率的にサブサンプルされる
(高周波の成分を減らして)ことができる。通常、色度
の部分はそれに対応している輝度データの部分に比較し
て4:1のファクタによってサブサンプルすることがで
きる。サブサンプリングはよく知られている多くの技法
のうちの任意の1つを使って実行することができる。た
とえば、サブサンプリングはピクセルの小さい領域から
1つのピクセルを選定し、残りのピクセルを捨てること
によって、あるいは或る領域の中の単独のピクセルにそ
の領域内のピクセルの平均値に等しい値を割り当てるこ
とによって行うことができる。また、サブサンプリング
は1つの領域に対して低域通過フィルタを適用し、その
フィルタされた結果から1つのピクセルを抽出すること
によっても実現することができる。
【0049】本発明の他の実施形態である図6を参照し
て、本発明の画像圧縮方式がカラー画像(すなわち、入
力画像の各データ点がカラーの視覚情報を表している3
つの成分の値から構成されている)に対して以下に説明
される。ふたたび、例を示す目的のために、8点のFH
T(すなわち、N=8)が使われると仮定される。そし
てこの分野の技術に熟達した人であれば、この実施形態
の圧縮方式はN=8以外のFHTサイズに対しても適用
できることが分かる。
【0050】元のカラー画像601(RGBのカラー画
像または異なる3成分のカラー方式を表している画像で
あってよい)から、8×8のパッチ602が選択され、
603において既知の変換式を使って、別のカラー空間
(たとえば、JPEG)へ変換され、結果として変換さ
れた画像パッチ604が得られる。この分野の技術に熟
達した人であれば、そのカラー変換は任意の画像の組が
その画像から抽出される前に、等価的に実行されること
が分かる。
【0051】画像パッチ604の各要素は3つの成分の
値、すなわち、C1、C2およびC3から構成され、した
がって、画像パッチ604は3つの成分の画像の組とし
て等価的に考えることができ、その成分画像の各要素
が、変換されたカラー成分Ciの1つに対応している。
605に示されているように、カラーの組はサブサンプ
ルされることも可能であり、この場合、上記のように、
異なるカラー成分に対するサブサンプリングのレート
は、その成分の相対的な物理的認知度によって変わる可
能性がある。その結果は3組の変換されてサブサンプル
された成分画像606である。
【0052】607において、FHTが適用される前
に、オプションのベクトル量子化がその変換された画像
の3成分606に対して適用される。この量子化は異な
るパラメータ、すなわち、Q1,Q2およびQ3によって
制御される。これらの成分の量子化は[QP(x)]で
与えられる。ここで、[x]はxに最も近い整数であ
る。その成分に関連付けられている空間分解能はそれぞ
れに異なるので、各種のサブサンプリング(または間引
き)およびフィルタリングの段階を量子化と組み合わせ
て、目にとって必要なだけの情報、あるいは特殊目的が
あれば、それを含むものだけを保存するようにすること
ができる。
【0053】カラー画像圧縮方式の残りのプロセスは、
図4に関連して上で説明されたようなモノクロ画像の場
合と同様に進行し、量子化されてサブサンプルされた成
分画像の各パッチが、図4のモノクロ画像のパッチと同
様に処理される。したがって、各画像成分は8点の二次
元FHTによって608において処理される(すなわ
ち、2‐DのFHTがオプションの精度制御と一緒に、
1‐DのFHTの2回のパスを使うことによって計算さ
れる)。各成分に対するそのFHTプロセスの出力は、
さらに609において出力量子化プロセスによって量子
化され、610においてエントロピー・コーダによって
他の画像成分と組み合わされる。
【0054】上記のモノクロの方式と同様に、カラー画
像の復元(すなわち、格納されたデータを伸張してカラ
ー画像データに戻すこと)は圧縮プロセスの正確に逆の
圧縮解除のプロセスである。符号化されたビットストリ
ームは成分の係数にデコードされ、その係数は各成分ご
とに逆量子化され、次に各成分が逆ハートレー変換さ
れ、ふたたび逆量子化され、そしてスーパーサンプル
(拡張)される。その拡張に続いて、カラー成分はカラ
ーの逆変換が行われ(カラー変換が使われていた場
合)、最終画像に再アセンブリされる。等価的にカラー
の逆変換プロセスを、画像の組の再アセンブリの前では
なく、その画像の組の再アセンブリの後において行うこ
とができる。
【0055】C. 実験結果 前記の説明に従って実施される方法を使って、画像圧縮
における実験結果が得られた。その方法は入力のRGB
画像をYCrbのカラー空間に変換した後、各パッチに
ついてFHTを適用する。この実験のために、3つのプ
リFHT量子化要素Q1、Q2およびQ3が1.0に設定
された。すなわち、量子化は行われず、そして異なるカ
ラー成分に対するサブサンプリング・レートはYに対し
ては1:1に、CrおよびCbに対しては1:4NI(J
PEGの場合と同様に)設定された。
【0056】このFHT変換による係数の出力が量子化
され、図5に関して上で説明された可変長整数コーディ
ングの変形版を使って符号化された。3つの異なるハー
ドウェア実装に対応している3つの精度制御設定が選定
された。その画像を圧縮アルゴリズムに通した後、圧縮
解除された各画像が通常のように次の操作によって与え
られるSNRを使ってその元の画像に対して比較され
た。
【数12】 ここで、Yは元の信号であり、∫は再構築された信号で
ある。3つの精度制御設定の場合の圧縮比に対するSN
Rのプロットが図7に示されている。テスト画像に対す
るSNRの評価は、テスト・セットの中のいくつかの画
像(たとえば、ピエ・モンドリアン(Piet Mondrian)の
絵画、他の単純な地理的アブストラクト・アートおよび
田園風景)は程良い程度の信号対ノイズ比をキープしな
がら非常に高い比率で圧縮できることを示している。こ
れらの非常に少数の例外画像は、SNR曲線を思いがけ
ず上昇させる結果となり、このアルゴリズムが、20:
1〜40:1の間の圧縮比での結果が、P=0での1
0:1の付近の圧縮比の場合より良い結果が得られたと
いう間違った印象を与えている。これらの例外の画像は
間違った結論に導くので、図7からは取り除かれてい
る。
【0057】高速ハートレー変換とDCTとの比較は、
FHTがDCTとは異なる性質を示すことを表してい
る。DCTに比べて、FHTは非常に多くの高周波成分
を有する。したがって、ハートレー変換はその画像の高
周波成分に関してより多くの情報を抽出する。重い量子
化の場合(たとえば、c=150およびp=0)、ブロ
ックの開始点が整列していないように見えるが、高周波
成分、すなわち、画像データの中のより細かい詳細)は
依然として明瞭であることが観察されている。
【0058】デブロッキングのアルゴリズム(JPEG
に関して使われているようなもの)はまだない。しか
し、実験において、画像の詳細度の高い領域におけるリ
ンギングは本発明のFHTベースの圧縮方式に比較し
て、FHTではあまりひどくないことが観察されてい
る。DCTまたはJPEGの圧縮方式を同じ圧縮比使っ
た場合に示される、画像の高詳細度領域におけるリンギ
ングはずっと多くなる。
【0059】D. 実装 本発明の画像圧縮方式は任意の数の各種のディジタル処
理プラットホームにおいて実装することができる。それ
らは、たとえば高速ディジタル信号プロセッサなどのデ
ィジタル信号プロセッサ、たとえば、パソコン(PC)
またはSiliconGraphicsまたはSun Microsystems製のハ
イエンド・ワークステーションなどのプログラム可能な
コンピュータ、あるいは、たとえばフィールド・プログ
ラム可能なゲート・アレイなどのプログラム可能なロジ
ック・デバイスなどである。画像圧縮方式を実装するこ
とができるディジタル信号プロセッサ、コンピュータま
たはプログラム可能なロジック・デバイスなどは1つの
サービス・プラットホームの一部として実装することが
できる。サービス・プラットホームとしては、アーカイ
ブ画像(たとえば、写真、医学的画像)、ドキュメント
または地震のデータに対する記憶および検索のプラット
ホーム、ビデオ・ゲーム・プレイヤー(たとえば、ソニ
ー、または任天堂またはセガによって作られているゲー
ム・ステーション)またはビデオ応用装置(たとえば、
ビデオ・ディスク・プレイヤー、フォトCDプレイヤ
ー)などがある。また、この画像圧縮方式はウェブ・ブ
ラウザに対するプラグイン・ソフトウェア・モジュール
として、JPEGアルゴリズムがウェブ・ブラウザの中
に実装されているのと同様な方法で実装することもでき
る。
【0060】E. その他の改善事項 本発明の技法に対する更なる改善の1つとして、0およ
び他の値の係数の連続しているものを処理するために、
より高度な符号化方式を採用することができる。DC項
に対するビット数を減らすために、それらは現在差動的
に符号化されている(JPEGの場合のように)すべて
の係数に対して算術的コーディングを使うことによっ
て、さらに改善される。デブロッキングのアルゴリズム
を使うことによって、別の良好な改善が得られる。その
ようなアルゴリズムは圧縮比が高い場合のブロックの不
整合を補正し、ブロッキングの効果が消えるか、あるい
は比較的目立たなくなるようにする。
【0061】本発明の利点を使って達成することができ
る計算速度および圧縮比は、画像、音声、およびビデオ
圧縮およびビデオ電話などの応用において適用すること
ができる。たとえば、ビデオ電話は普通はISDN回線
によって制限される。この回線は64kビット/秒また
は128kビット/秒である。128kbsにおいて
は、120kbsまでを画像に対して使うことができる
(残りの8kbsは音声のために使われる。約8kbs
のバンド幅を使って音声の電話の品質以上の品質で伝送
する多くの良好な音声コーデックがある)。120kb
sのリンクによって30:1の圧縮比で、そして視覚的
に快適性が期待できる30dBのSNRで、1秒間に約
2個のフル・フレーム(320×200×24ビット)
を伝送することができる。差動コーディングおよび運動
補正などを使って、上記の圧縮技法を組み合わせること
により、15フレーム/秒までのより高いレートを達成
することができる。
【0062】要約すると、高速ハートレー変換に基づい
た画像圧縮および伸張システムが提示された。それはソ
フトウェアで非常に効率的に計算され、あるいはハード
ウェアで非常に少ない回路で実装できる変換としてFH
Tの恩恵を利用している。
【0063】これまで説明されてきたことは本発明の原
理の適用の単なる例である。本発明の精神および範囲か
ら逸脱することなしに、この分野の技術に熟達した人に
よって他の構成および方法を実施することができる。
【図面の簡単な説明】
【図1】N=8の場合のディスクリート・ハートレー変
換のカーネルを示す図である。
【図2】N=8の場合の高速ハートレー変換のデータフ
ローを示す図である。
【図3】本発明によって使われるFHTにおける精度の
制御を示す図である。
【図4】本発明による画像データ圧縮を示しているブロ
ック図である。
【図5A】本発明に従って使われる代表的なエントロピ
ー・コードを示す図である。
【図5B】本発明に関して使われるエントロピー・コー
ドを計算するための方法を示す図である。
【図5C】正規のハフマン符号化ツリーの特性を示す図
である。
【図6】本発明の代替実施形態による画像データ圧縮を
示しているブロック図である。
【図7】各種の精度制御設定および圧縮比に対するSN
Rの測定値を示す図である。

Claims (98)

    【特許請求の範囲】
  1. 【請求項1】 画像を圧縮するための方法であって、 1.画像を少なくとも1つの画像の組に分割し、各画像
    の組は列の数がMで行の数がNであるピクセルの二次元
    配列であるように分割するステップと、 2.各画像の組に対して、 1.可逆変換を使って前記画像の組を一組の係数に変換
    し、 2.前記係数の組の各係数を量子化し、 3.エントロピー・コードに従って前記係数の組の量子
    化された各係数を符号化するステップとを含む方法。
  2. 【請求項2】 請求項1に記載の方法において、前記可
    逆変換は2段階のハートレー変換を含み、前記2段階の
    ハートレー変換は、任意の順序で、一次元の行のハート
    レー変換の1回のパスおよび一次元の列のハートレー変
    換の1回のパスを含む方法。
  3. 【請求項3】 請求項2に記載の方法において、前記一
    次元の行のハートレー変換および前記一次元の列のハー
    トレー変換のそれぞれが、乗算を使わずに計算されるよ
    うになっている方法。
  4. 【請求項4】 請求項2に記載の方法において、前記一
    次元の行のハートレー変換および前記一次元の列のハー
    トレー変換のそれぞれが、加算、減算およびビット・シ
    フトだけを使って計算されるようになっている方法。
  5. 【請求項5】 請求項2に記載の方法において、前記画
    像の組を変換するステップが、前記ハートレー変換の少
    なくとも1つの段階の精度を、前記変換の前記段階から
    の結果の係数の組の各係数を表すために使われるビット
    の数を制限することによって制御するステップをさらに
    含む方法。
  6. 【請求項6】 請求項1に記載の方法において、前記係
    数の組の各係数を量子化するステップが、そのサブステ
    ップとして、 (a)前記係数の相対的な重要度を決定するステップ
    と、 (b)その決定された相対的な重要度に従って、前記係
    数を表すために使われるビットの数を保持するステップ
    とを含む方法。
  7. 【請求項7】 請求項6に記載の方法において、前記係
    数の前記相対的な重要度を決定する前記ステップが、所
    定の頻度分布に従って前記係数の組をソートするステッ
    プを含む方法。
  8. 【請求項8】 請求項6に記載の方法において、前記係
    数の前記相対的な重要度を決定する前記ステップが、統
    計的に決定されるエネルギー分布に従って前記係数の組
    をソートするステップを含む方法。
  9. 【請求項9】 請求項1に記載の方法において、前記画
    像はカラー情報に対応している成分を含む方法。
  10. 【請求項10】 請求項9に記載の方法において、可逆
    変換を使って前記画像の組を変換する前に、前記画像の
    組の前記カラー成分についてのカラー変換を計算するス
    テップをさらに含む方法。
  11. 【請求項11】 請求項9に記載の方法において、可逆
    変換を使って前記画像の組を変換する前に、前記画像の
    組の前記カラー成分のうちの少なくとも1つをサブサン
    プルするステップをさらに含む方法。
  12. 【請求項12】 請求項11に記載の方法において、可
    逆変換を使って前記画像の組を変換する前に、前記画像
    の組の前記カラー成分のうちの少なくとも1つに含まれ
    ている各ピクセルを量子化するステップをさらに含む方
    法。
  13. 【請求項13】 請求項9に記載の方法において、画像
    の組を変換するステップが、可逆変換の精度を、その可
    逆変換からの結果の係数の組の各係数を表すために使わ
    れるビットの数を制限することによって制御するステッ
    プをさらに含む方法。
  14. 【請求項14】 請求項1に記載の方法において、エン
    トロピー・コードは係数の期待される分布に対して得ら
    れ、 1.係数の前記期待される分布に対する正準ハフマン符
    号化ツリーを計算するステップと、 2.長さの等しいすべてのコードを共通のコード・グル
    ープに組み合わせるステップと、 3.前記正準ハフマン符号化ツリーの構造に基づいてコ
    ード・プリフィックスを各コード・グループに対して割
    り当てるステップと、 4.前記コード・グループの中の別々の各シンボルに対
    してサフィックスを割り当てるステップとを含む方法。
  15. 【請求項15】 請求項1に記載の方法において、符号
    化されて量子化された係数を格納するためのステップを
    さらに含む方法。
  16. 【請求項16】 圧縮された画像データから、列の数が
    Mで行の数がNであるピクセルの二次元配列から構成さ
    れる少なくとも1つの画像の組を有している画像を復元
    するための方法であって、 1.前記圧縮された画像データを係数の少なくとも1つ
    の組に、エントロピー・コードに従ってデコードするス
    テップと、 2.係数の各組に対して、 1.前記係数を逆量子化するステップと、 2.前記逆量子化された係数を、1つの画像の組に、可
    逆変換を使って逆変換するステップと、 3.各画像の組を組み合わせて前記画像を復元するステ
    ップとを含む方法。
  17. 【請求項17】 請求項16に記載の方法において、前
    記可逆変換は2段階のハートレー変換を含み、前記2段
    階のハートレー変換は、任意の順序で、一次元の行のハ
    ートレー変換の1回のパスと一次元の列のハートレー変
    換の1回のパスを含む方法。
  18. 【請求項18】 請求項17に記載の方法において、前
    記一次元の行のハートレー変換および前記一次元の列の
    ハートレー変換のそれぞれが、乗算を使わずに計算され
    るようになっている方法。
  19. 【請求項19】 請求項17に記載の方法において、前
    記一次元の行のハートレー変換および前記一次元の列の
    ハートレー変換のそれぞれが、加算、減算およびビット
    ・シフトだけを使って計算されるようになっている方
    法。
  20. 【請求項20】 請求項17に記載の方法において、前
    記逆量子化された係数を逆変換するステップが、前記画
    像データの圧縮に関して使われた精度制御に対して、前
    記ハートレー変換の少なくとも1つの段階から得られる
    各ピクセルを表すために使われるビットの数を拡張する
    ことによって補正するステップをさらに含む方法。
  21. 【請求項21】 請求項16に記載の方法において、前
    記各係数を逆量子化するステップが、 (a)前記係数の相対的重要度を決定するステップと、 (b)前記係数を表すために使われるビットの数を、そ
    の決定された相対的重要度に従って復元するステップを
    含む方法。
  22. 【請求項22】 請求項16に記載の方法において、前
    記画像がカラー成分を含む方法。
  23. 【請求項23】 請求項22に記載の方法において、各
    画像の組を前記画像に組み合わせる前に、各画像の組の
    カラー成分に対してカラーの逆変換を計算するステップ
    をさらに含む方法。
  24. 【請求項24】 請求項22に記載の方法において、各
    画像の組を前記画像に組み合わせる前に、各画像の組の
    前記カラー成分のうちの少なくとも1つを再度拡張する
    ステップをさらに含む方法。
  25. 【請求項25】 請求項22に記載の方法において、前
    記画像の前記カラー成分についてカラーの逆変換を計算
    するステップをさらに含む方法。
  26. 【請求項26】 請求項16に記載の方法において、前
    記圧縮された画像データを、エントロピー・コードに従
    って係数の少なくとも1つの組にデコードするステップ
    が、そのサブステップとして、 1.前記圧縮された画像データのプリフィックス部分を
    前記エントロピー・コードに関連付けられている一組の
    既知のコード・プリフィックスに対してマッチさせるこ
    とによって、コード・プリフィックスに対応しているコ
    ード・グループを決定するステップと、 2.前記決定されたコード・グループの中の前記係数の
    値を、前記圧縮された画像データの組のサフィックス部
    分を、前記エントロピー・コードに関連付けられている
    既知のコード・サフィックスの組に対してマッチさせる
    ことによって識別するステップとを含む方法。
  27. 【請求項27】 画像を圧縮および復元するための方法
    であって、 1.画像の圧縮は、サブステップとして、 1.前記画像を少なくとも1つの画像の組に分割し、各
    画像の組が、列の数がMで行の数がNであるピクセルの
    二次元配列であるようにするステップと、 2.各画像の組に対して、 (a)可逆変換を使って前記画像の組を一組の係数に変
    換し、 (b)前記係数の組の各係数を量子化し、 (c)エントロピー・コードに従って前記係数の組の量
    子化された各係数を符号化するステップとを含み、 2. 画像の復元は、サブステップとして、 1.前記圧縮された画像データを、エントロピー・コー
    ドに従って少なくとも1つの組の係数にデコードするス
    テップと、 2.係数の各セットに対して、 (a)前記係数を逆量子化し、 (b)可逆変換を使って、前記逆量子化された係数を1
    つの画像の組に逆変換するステップと、 3. 各画像の組を組み合わせて前記画像に復元するス
    テップとを含む方法。
  28. 【請求項28】 少なくとも1つの画像の組に分割する
    ことができる画像を圧縮するためのシステムであって、
    各画像の組は列の数がMで行の数がNである二次元配列
    であり、 1.可逆変換を使って、各画像の組を一組の係数に変換
    する変換手段と、 2.前記係数の組の各係数を量子化する量子化手段と、 3.エントロピー・コードに従って、前記量子化された
    係数の組を符号化するコーダとを含むシステム。
  29. 【請求項29】 請求項28に記載のシステムにおい
    て、前記可逆変換は2段階のハートレー変換を含み、前
    記2段階のハートレー変換は、任意の順序で、一次元の
    行のハートレー変換の1回のパスおよび、一次元の列の
    ハートレー変換の1回のパスを含むシステム。
  30. 【請求項30】 請求項29に記載のシステムにおい
    て、前記一次元の行のハートレー変換および前記一次元
    の列のハートレー変換のそれぞれが、乗算を使わずに計
    算されるようになっているシステム。
  31. 【請求項31】 請求項29に記載のシステムにおい
    て、前記一次元の行のハートレー変換および前記一次元
    の列のハートレー変換のそれぞれが、加算、減算および
    ビット・シフトだけを使って計算されるようになってい
    るシステム。
  32. 【請求項32】 請求項28に記載のシステムにおい
    て、前記変換手段は、前記変換手段から得られる前記係
    数の組の各係数を表すために使われるビットの数を制限
    する精度コントローラを含むシステム。
  33. 【請求項33】 請求項28に記載のシステムにおい
    て、前記量子化手段は各係数の相対的な重要度を決定
    し、その決定された相対的重要度に従って、前記係数を
    表すために使われるビットの数を維持するようになって
    いるシステム。
  34. 【請求項34】 請求項33に記載のシステムにおい
    て、前記量子化手段は、所定の頻度分布に従って前記係
    数の組をソートすることによって、各係数の相対的な重
    要度を決定するようになっているシステム。
  35. 【請求項35】 請求項33に記載のシステムにおい
    て、前記量子化手段は、統計的に決定されたエネルギー
    分布に従って、前記係数の組をソートすることによっ
    て、各係数の前記相対的な重要度を決定するようになっ
    ているシステム。
  36. 【請求項36】 請求項28に記載のシステムにおい
    て、少なくとも1つの画像の組を格納するためのメモリ
    をさらに含むシステム。
  37. 【請求項37】 画像を圧縮するためのシステムであっ
    て、プロセッサを含み、前記プロセッサが、 1.前記画像を少なくとも1つの画像の組に分割し、各
    画像の組は列の数がMで行の数がNであるピクセルの二
    次元配列であり、 2.各画像の組に対して、 1.可逆変換を使って前記画像の組を一組の係数に変換
    し、 2.前記画像の組の各画像を量子化し、 3.エントロピー・コードに従って、前記係数の組の量
    子化された各係数を符号化するようにプログラムされて
    いるシステム。
  38. 【請求項38】 請求項37に記載のシステムにおい
    て、前記可逆変換が、2段階のハートレー変換を含み、
    前記2段階のハートレー変換は、任意の順序で、一次元
    の行のハートレー変換の1回のパスおよび一次元の列の
    ハートレー変換の1回のパスを含むシステム。
  39. 【請求項39】 請求項38に記載のシステムにおい
    て、前記一次元の行のハートレー変換および一次元の列
    のハートレー変換のそれぞれが、乗算を使わずに計算さ
    れるようになっているシステム。
  40. 【請求項40】 請求項38に記載のシステムにおい
    て、前記一次元の行のハートレー変換および前記一次元
    の列のハートレー変換のそれぞれが、加算、減算および
    ビット・シフトだけを使って計算されるようになってい
    るシステム。
  41. 【請求項41】 請求項38に記載のシステムにおい
    て、前記プロセッサは、前記ハートレー変換の少なくと
    も1つの段階の精度を、前記変換の前記段階から得られ
    る係数の組の各係数を表すために使われるビットの数を
    制限することによって制御するように、さらにプログラ
    ムされているシステム。
  42. 【請求項42】 請求項37に記載のシステムにおい
    て、前記プロセッサが、前記係数の組の各係数を量子化
    するようにプログラムされ、 1.前記係数の相対的な重要度を決定するステップと、 2.その決定された相対的重要度に従って、前記係数を
    表すために使われるビットの数を保持するステップとを
    含むシステム。
  43. 【請求項43】 請求項42に記載のシステムにおい
    て、前記プロセッサが、所定の頻度分布に従って前記係
    数の組をソートすることによって、前記係数の前記相対
    的重要度を決定するようにプログラムされているシステ
    ム。
  44. 【請求項44】 請求項42に記載のシステムにおい
    て、前記プロセッサが、統計的に決定されるエネルギー
    分布にしたがって、前記係数の組をソートすることによ
    って、前記係数の前記相対的重要度を決定するようにプ
    ログラムされているシステム。
  45. 【請求項45】 請求項37に記載のシステムにおい
    て、前記画像が、カラー情報に対応している成分を含む
    システム。
  46. 【請求項46】 請求項45に記載のシステムにおい
    て、前記プロセッサが、可逆変換を使って前記画像の組
    を変換する前に、前記画像の前記カラー成分についてカ
    ラー変換を計算するように、さらにプログラムされてい
    るシステム。
  47. 【請求項47】 請求項45に記載のシステムにおい
    て、前記プロセッサが、可逆変換を使って前記画像の組
    を変換する前に、前記画像の組の前記カラー成分のうち
    の少なくとも1つをサブサンプルするように、さらにプ
    ログラムされているシステム。
  48. 【請求項48】請求項47に記載のシステムにおいて、
    前記プロセッサが、可逆変換を使って前記画像を変換す
    る前に前記画像の組のカラー成分のうちの少なくとも1
    つの中に含まれている各ピクセルを量子化するように、
    さらにプログラムされているシステム。
  49. 【請求項49】 請求項45に記載のシステムにおい
    て、前記プロセッサが、前記可逆変換から得られる前記
    係数の組の各係数を表すために使われるビットの数を制
    限することによって、前記可逆変換の精度を制御するよ
    うに、さらにプログラムされているシステム。
  50. 【請求項50】 請求項37に記載のシステムにおい
    て、 1.係数の期待される分布に対して正準ハフマン符号化
    ツリーを計算するステップと、 2.長さの等しいすべてのコードを共通のコード・グル
    ープに組み合わせるステップと、 3.前記正準ハフマン符号化ツリーの構造に基づいて、
    コード・プリフィックスを各コード・グループに対して
    割り当てるステップと、 4.前記コード・グループの中の別々の各シンボルに対
    してサフィックスを割り当てるステップとによって、 前記エントロピー・コードが前記係数の期待される分布
    に対して得られるようになっているシステム。
  51. 【請求項51】 請求項37に記載のシステムにおい
    て、前記符号化されて量子化された係数を格納するため
    のメモリをさらに含むシステム。
  52. 【請求項52】 圧縮された画像データから、列の数が
    Mで行の数がNである二次元のピクセルの配列から構成
    される少なくとも1つの画像の組を有する画像を復元す
    るためのシステムであって、 1.前記圧縮された画像データを、エントロピー・コー
    ドに従って係数の少なくとも1つの組にデコードするデ
    コーダと、 2.係数の各組の各係数を逆量子化する逆量子化手段
    と、 3.可逆変換を使って、逆量子化された係数の各組を1
    つの画像に逆変換する逆変換手段とを含むシステム。
  53. 【請求項53】 請求項52に記載のシステムにおい
    て、前記可逆変換が、2段階のハートレー変換を含み、
    前記2段階のハートレー変換は、任意の順序で、一次元
    の行のハートレー変換の1回のパスと一次元の列のハー
    トレー変換の1回のパスとを含むシステム。
  54. 【請求項54】 請求項53に記載のシステムにおい
    て、前記一次元の行のハートレー変換および前記一次元
    の列のハートレー変換のそれぞれが、乗算を使わずに計
    算されるようになっているシステム。
  55. 【請求項55】 請求項53に記載のシステムにおい
    て、前記一次元の行のハートレー変換および前記一次元
    の列のハートレー変換のそれぞれが、加算、減算および
    ビット・シフトだけを使って計算されるようになってい
    るシステム。
  56. 【請求項56】 請求項53に記載のシステムにおい
    て、前記逆変換手段が、画像データの圧縮に関して使わ
    れた精度制御に対して、前記ハートレー変換から得られ
    る各ピクセルを表すために使われるビットの数を拡張す
    ることによって補正する精度補正を含むシステム。
  57. 【請求項57】 請求項52に記載のシステムにおい
    て、前記逆量子化手段が、各係数の相対的重要度を決定
    し、その決定された相対的重要度に従って、前記係数を
    表すために使われるビットの数を復元するようになって
    いるシステム。
  58. 【請求項58】 請求項52に記載のシステムにおい
    て、少なくとも1つの画像の組を格納するためのメモリ
    をさらに含むシステム。
  59. 【請求項59】 圧縮された画像データから、列の数が
    Mであって、行の数がNである、ピクセルの二次元配列
    から構成される、少なくとも1つの画像を有する画像を
    復元するためのシステムであって、 1.前記圧縮された画像データをエントロピー・コード
    に従って係数の少なくとも1つの組にデコードし、 2.各係数の組に対して、 1.前記係数を逆量子化し、 2.可逆変換を使って、前記逆量子化された係数を1つ
    の画像に逆変換し、 3.各画像の組を組み合わせて前記画像に復元するよう
    にプログラムされているプロセッサを含むシステム。
  60. 【請求項60】 請求項59に記載のシステムにおい
    て、前記可逆変換が、2段階のハートレー変換を含み、
    前記2段階のハートレー変換は、任意の順序で、一次元
    の行のハートレー変換の1回のパスおよび一次元の列の
    ハートレー変換の1回のパスを含むシステム。
  61. 【請求項61】 請求項60に記載のシステムにおい
    て、前記一次元の行のハートレー変換および一次元の列
    のハートレー変換のそれぞれが、乗算を使わずに計算さ
    れるようになっているシステム。
  62. 【請求項62】 請求項60に記載のシステムにおい
    て、前記一次元の行のハートレー変換および前記一次元
    の列のハートレー変換のそれぞれが、加算、減算および
    ビット・シフトだけを使って計算されるようになってい
    るシステム。
  63. 【請求項63】 請求項60に記載のシステムにおい
    て、前記プロセッサが、画像データの圧縮に関して使わ
    れた精度制御に対して、前記ハートレー変換の少なくと
    も1つの段階から得られる各ピクセルを表すために使わ
    れるビットの数を拡張することによって補正するよう
    に、さらにプログラムされているシステム。
  64. 【請求項64】 請求項59に記載のシステムにおい
    て、前記プロセッサが、 (a)前記係数の前記相対的重要度を決定するステップ
    と、 (b)その決定された相対的重要度に従って前記係数を
    表すために使われるビットの数を復元するステップとに
    よって、前記各係数を逆量子化するようにプログラムさ
    れているシステム。
  65. 【請求項65】 請求項59に記載のシステムにおい
    て、前記画像がカラー成分を含むシステム。
  66. 【請求項66】 請求項65に記載のシステムにおい
    て、前記プロセッサが、前記画像の組を組み合わせて前
    記画像に復元する前に、各画像の組の前記カラー成分に
    ついてカラーの逆変換を計算するように、さらにプログ
    ラムされているシステム。
  67. 【請求項67】 請求項65に記載のシステムにおい
    て、前記プロセッサが、各画像の組を組み合わせる前
    に、各画像の組の前記カラー成分のうちの少なくとも1
    つを再度拡張するように、さらにプログラムされている
    システム。
  68. 【請求項68】 請求項65に記載のシステムにおい
    て、前記プロセッサが、前記画像の前記カラー成分につ
    いてカラーの逆変換を計算するように、さらにプログラ
    ムされているシステム。
  69. 【請求項69】 請求項59に記載のシステムにおい
    て、前記プロセッサが、前記圧縮された画像データを、
    エントロピー・コードに従って係数の少なくとも1つの
    組にデコードするようにプログラムされており、 1.前記圧縮された画像データのプリフィックス部分を
    前記エントロピー・コードに関連付けられている一組の
    既知のコード・プリフィックスに対してマッチさせるこ
    とによって、コード・プリフィックスに対応しているコ
    ード・グループを決定するステップと、 2.前記圧縮された画像データの組のサフィックス部分
    を、前記エントロピー・コードに関連付けられている一
    組の既知のコード・サフィックスに対してマッチさせる
    ことによって、前記決定されたコード・グループの中で
    の前記係数の値を識別するステップとによって構成され
    ているシステム。
  70. 【請求項70】 少なくとも1つの画像の組に分割する
    ことができる画像を圧縮および復元するためのシステム
    であって、各画像の組は列の数がMで、行の数がNであ
    るピクセルの二次元配列であって、 1.圧縮手段であって、 1.可逆変換を使って、各画像の組を一組の係数に変換
    する変換手段と、 2.前記画像の組の各画像を量子化する量子化手段と、 3.前記量子化された係数の組を、エントロピー・コー
    ドに従って符号化するコーダとを含んでいる圧縮手段
    と、 2.復元において、 1.圧縮された画像データを、エントロピー・コードに
    従って係数の少なくとも1つの組にデコードするデコー
    ダと、 2.係数の各組の各係数を逆量子化する逆量子化手段
    と、 3.逆量子化された係数の各組を、可逆変換を使って画
    像の組に逆変換する逆変換手段とを含んでいる復元手段
    とを含むシステム。
  71. 【請求項71】 画像を圧縮および復元するためのシス
    テムであって、 1.前記画像の圧縮は、 1.前記画像を少なくとも1つの画像の組に分割し、各
    画像の組は列の数がMであり、行の数がNであるピクセ
    ルの二次元配列であるようにするステップと、 2.各画像の組に対して、 (a)可逆変換を使って、前記画像の組を一組の係数に
    変換し、 (b)前記係数の組の各係数を量子化し、 (c)前記係数の組の量子化された各係数を、エントロ
    ピー・コードに従って符号化するステップとを実行し、 2.前記画像の復元は、 1.前記圧縮された画像データを、エントロピー・コー
    ドに従って係数の少なくとも1つの組にデコードするス
    テップと、 2.係数の各組に対して、 (a)前記係数を逆量子化し、 (b)前記逆量子化された係数を、可逆変換を使って1
    つの画像の組に逆変換するステップと、 3.各画像の組を組み合わせて前記画像に復元するステ
    ップとを実行するように、プログラムされているプロセ
    ッサを含むシステム。
  72. 【請求項72】 画像を圧縮するための命令を格納して
    いる、コンピュータが読める媒体を含んでいる製造の商
    品であって、前記命令は、プロセッサによって実行され
    るとき、 1.前記画像を少なくとも1つの画像の組に分割し、各
    画像の組が列の数がMで行の数がNであるピクセルの二
    次元配列であるようにするステップと、 2.各画像の組に対して、 1.可逆変換を使って、前記画像の組を一組の係数に変
    換するステップと、 2.前記係数の組の各係数を量子化するステップと、 3.前記係数の組の量子化された各係数を、エントロピ
    ー・コードに従って符号化するステップとを前記プロセ
    ッサに実行させる商品。
  73. 【請求項73】 請求項72に記載の製造の商品であっ
    て、前記可逆変換が、2段階のハートレー変換を含み、
    前記2段階のハートレー変換が、任意の順序で、一次元
    の行のハートレー変換の1回のパスと、一次元の列のハ
    ートレー変換の1回のパスとを含む商品。
  74. 【請求項74】 請求項73に記載の製造の商品におい
    て、前記一次元のハートレー変換および前記一次元の列
    のハートレー変換のそれぞれが、乗算を使わずに計算さ
    れるようになっている商品。
  75. 【請求項75】 請求項73に記載の製造の商品におい
    て、前記一次元の行のハートレー変換および前記一次元
    の列のハートレー変換のそれぞれが、加算、減算および
    ビット・シフトだけを使って計算されるようになってい
    る商品。
  76. 【請求項76】 請求項73に記載の製造の商品におい
    て、前記命令は、プロセッサによって実行されるとき、
    前記ハートレー変換の少なくとも1つの段階の精度を、
    前記変換の前記段階から得られる前記係数の組の各係数
    を表すために使われるビットの数を制限することによっ
    て制御するステップを、前記プロセッサにさらに実行さ
    せるようになっている商品。
  77. 【請求項77】 請求項72に記載の製造の商品におい
    て、前記命令は、プロセッサによって実行されるとき、 (a)前記係数の相対的な重要度を決定するステップ
    と、 (b)その決定された相対的な重要度に従って、前記係
    数を表すために使われるビットの数を保持するステップ
    とを、前記プロセッサに実行させることによって、前記
    係数の組の各係数を量子化するようになっている商品。
  78. 【請求項78】 請求項77に記載の製造の商品であっ
    て、前記命令は、プロセッサによって実行されるとき、
    所定の頻度分布に従って、前記係数の組をソートするこ
    とによって、前記係数の相対的な重要度を前記プロセッ
    サに決定させるようになっている商品。
  79. 【請求項79】 請求項77に記載の製造の商品におい
    て、前記命令は、プロセッサによって実行されるとき、
    統計的に決定されるエネルギー分布に従って、前記係数
    の組をソートすることによって、前記係数の相対的な重
    要度をプロセッサに決定させるようになっている商品。
  80. 【請求項80】 請求項72に記載の製造の商品におい
    て、前記画像がカラー情報に対応している成分を含む商
    品。
  81. 【請求項81】 請求項80に記載の製造の商品におい
    て、前記命令は、プロセッサによって実行されるとき、
    可逆変換を使って前記画像の組を変換する前に、前記画
    像の組の前記カラー成分についてのカラー変換を前記プ
    ロセッサにさらに計算させるようになっている商品。
  82. 【請求項82】 請求項80に記載の製造の商品におい
    て、前記命令は、プロセッサによって実行されるとき、
    可逆変換を使って前記画像の組を変換する前に、前記画
    像の組の前記カラー成分のうちの少なくとも1つを前記
    プロセッサにさらにサブサンプルさせるようになってい
    る商品。
  83. 【請求項83】 請求項82に記載の製造の商品におい
    て、前記命令は、プロセッサによって実行されるとき、
    可逆変換を使って前記画像の組を変換する前に、前記画
    像の組の前記カラー成分のうちの少なくとも1つの中に
    含まれている各ピクセルの量子化を、前記プロセッサに
    さらに実行させるようになっている商品。
  84. 【請求項84】 請求項80に記載の製造の商品におい
    て、前記命令は、プロセッサによって実行されるとき、
    前記可逆変換から得られる前記係数の組の各係数を表す
    ために使われるビットの数を制限することによって、前
    記可逆変換の前記精度を前記プロセッサにさらに制御さ
    せるようになっている商品。
  85. 【請求項85】 請求項72に記載の製造の商品におい
    て、 (a)係数の前記期待される分布に対する正準ハフマン
    符号化ツリーを計算するステップと、 (b)長さの等しいすべてのコードを組み合わせて共通
    のコード・グループに入れるステップと、 (c)各コード・グループに対して、前記正準ハフマン
    符号化ツリーの構造に基づいて1つのコード・プリフィ
    ックスを割り当てるステップと、 (d)前記コード・グループの中の別々の各シンボルに
    対してサフィックスを割り当てるステップとによって、 前記エントロピー・コードが係数の期待される分布に対
    して得られるようになっている商品。
  86. 【請求項86】 請求項72に記載の製造の商品におい
    て、前記命令は、プロセッサによって実行されるとき、
    前記の符号化されて量子化された係数をメモリの中に格
    納することを、前記プロセッサにさらに実行させるよう
    になっている商品。
  87. 【請求項87】 圧縮された画像データから、列の数が
    Mで行の数がNであるピクセルの二次元配列から構成さ
    れている少なくとも1つの画像の組を有している画像を
    復元するための命令を格納している、コンピュータが読
    める媒体を含んでいる製造の商品であって、前記命令
    は、プロセッサによって実行されるとき、 1.前記圧縮された画像データを、エントロピー・コー
    ドに従って係数の少なくとも1つの組にデコードするス
    テップと、 2.各係数の組に対して、 1.前記係数を逆量子化し、 2.前記逆量子化された係数を、可逆変換を使って画像
    の組に可逆変換するステップと、 3.各画像の組を組み合わせて前記画像に復元するステ
    ップとを、前記プロセッサに実行させるようになってい
    る商品。
  88. 【請求項88】 請求項87に記載の製造の商品におい
    て、前記可逆変換が2段階のハートレー変換を含み、前
    記2段階のハートレー変換が、任意の順序で、一次元の
    行のハートレー変換の1回のパスと、一次元の列のハー
    トレー変換の1回のパスとを含む商品。
  89. 【請求項89】 請求項88に記載の製造の商品におい
    て、前記一次元のハートレー変換および前記一次元の列
    のハートレー変換のそれぞれが、乗算を使わずに計算さ
    れるようになっている商品。
  90. 【請求項90】 請求項88に記載の製造の商品におい
    て、前記一次元の行のハートレー変換および前記一次元
    の列のハートレー変換のそれぞれが、加算、減算および
    ビット・シフトだけを使って計算されるようになってい
    る商品。
  91. 【請求項91】 請求項88に記載の製造の商品におい
    て、前記命令は、プロセッサによって実行されるとき、
    画像データの圧縮に関して使われた精度制御に対して、
    前記ハートレー変換の少なくとも1つの段階から得られ
    る各ピクセルを表すために使われるビットの数を拡張す
    ることによって補正するステップを、前記プロセッサに
    さらに実行させるようになっている商品。
  92. 【請求項92】 請求項87に記載の製造の商品におい
    て、前記命令は、プロセッサによって実行されるとき、 (a)前記係数の前記相対的重要度を決定するステップ
    と、 (b)その決定された相対的重要度に従って、前記係数
    を表すために使われるビットの数を復元するステップと
    によって、各係数の逆量子化を前記プロセッサに実行さ
    せるようになっている商品。
  93. 【請求項93】 請求項87に記載の製造の商品におい
    て、前記画像がカラー情報を含む商品。
  94. 【請求項94】 請求項93に記載の製造の商品におい
    て、前記命令は、プロセッサによって実行されるとき、
    各画像の組を組み合わせて前記画像に復元する前に、各
    画像の前記カラー成分についてカラーの逆変換をプロセ
    ッサにさらに計算させるようになっている商品。
  95. 【請求項95】 請求項93に記載の製造の商品におい
    て、前記命令は、プロセッサによって実行されるとき、
    各画像の組を組み合わせる前に、各画像の組の前記カラ
    ー成分のうちの少なくとも1つを、さらに前記プロセッ
    サに再拡張させるようになっている商品。
  96. 【請求項96】 請求項93に記載の製造の商品におい
    て、前記命令は、プロセッサによって実行されるとき、
    前記画像のカラー成分についてカラーの逆変換を、さら
    に前記プロセッサに計算させるようになっている商品。
  97. 【請求項97】 請求項87に記載の製造の商品におい
    て、前記命令は、プロセッサによって実行されるとき、
    前記圧縮されたデータを、エントロピー・コードに従っ
    て少なくとも1つの組の係数にデコードすることを前記
    プロセッサに実行させ、 1.前記圧縮された画像データのプリフィックス部分
    を、前記エントロピー・コードに関連付けられた一組の
    既知のコード・プリフィックスに対してマッチさせるこ
    とによって、コード・プリフィックスに対応しているコ
    ード・グループを決定するステップと、 2.前記決定されたコード・グループの中の前記係数の
    値を、前記圧縮された画像データの組のサフィックス部
    分を、前記エントロピー・コードに関連付けられている
    一組の既知のコード・サフィックスに対してマッチさせ
    ることによって識別するステップとによって実行される
    ようになっている商品。
  98. 【請求項98】 画像を圧縮および復元するための命令
    を格納している、コンピュータが読める媒体を含んでい
    る製造の商品であって、前記命令は、プロセッサによっ
    て実行されるとき、 1.前記画像の圧縮は、 1.前記画像を少なくとも1つの画像の組に分割し、各
    画像の組は列の数がMで行の数がNであるピクセルの二
    次元配列であるようにするステップと、 2.各画像セットに対して、 (a)可逆変換を使って前記画像の組を一組の係数に変
    換し、 (b)前記係数の組の各係数を量子化し、 (c)前記係数の組の量子化された各係数を、エントロ
    ピー・コードに従って符号化するステップとを前記プロ
    セッサに実行させ、 2.前記画像の復元は、 1.前記圧縮された画像データを、エントロピー・コー
    ドに従って係数の少なくとも1つの組にデコードするス
    テップと、 2.係数の各組に対して、 (a)前記係数を逆量子化し、 (b)前記逆量子化された係数を、可逆変換を使って画
    像の組に逆変換するステップと、 3.各画像の組を組み合わせて前記画像を復元するステ
    ップとを、前記プロセッサに実行させるようになってい
    る商品。
JP28039598A 1997-10-02 1998-10-02 高速の画像圧縮のための方法および装置 Expired - Fee Related JP4860017B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/942,684 US6160918A (en) 1997-10-02 1997-10-02 Method and apparatus for fast image compression
US08/942684 1997-10-02

Publications (2)

Publication Number Publication Date
JPH11177985A true JPH11177985A (ja) 1999-07-02
JP4860017B2 JP4860017B2 (ja) 2012-01-25

Family

ID=25478454

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28039598A Expired - Fee Related JP4860017B2 (ja) 1997-10-02 1998-10-02 高速の画像圧縮のための方法および装置

Country Status (4)

Country Link
US (1) US6160918A (ja)
EP (2) EP1936997A3 (ja)
JP (1) JP4860017B2 (ja)
CA (1) CA2248664C (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007534239A (ja) * 2004-04-21 2007-11-22 スリップストリーム データ インコーポレイテッド カラー画像の符号化のための方法、システム、およびソフトウェア製品
US8022963B2 (en) 2004-04-23 2011-09-20 Slipstream Data Inc. Method, system and software product for color image encoding

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1099124A2 (en) * 1998-07-22 2001-05-16 Geo Energy, Inc. Fast compression and transmission of seismic data
US6400766B1 (en) * 1999-12-30 2002-06-04 Quikcat.Com, Inc. Method and apparatus for digital video compression using three-dimensional cellular automata transforms
US6563439B1 (en) * 2000-10-31 2003-05-13 Intel Corporation Method of performing Huffman decoding
US6636167B1 (en) 2000-10-31 2003-10-21 Intel Corporation Method of generating Huffman code length information
US6801668B2 (en) 2000-12-20 2004-10-05 Telefonaktiebolaget Lm Ericsson (Publ) Method of compressing data by use of self-prefixed universal variable length code
CN1520641A (zh) * 2001-04-04 2004-08-11 霍尼韦尔国际公司 规范的霍夫曼编码数据的解压缩算法
US6650784B2 (en) 2001-07-02 2003-11-18 Qualcomm, Incorporated Lossless intraframe encoding using Golomb-Rice
US6573847B1 (en) * 2002-01-08 2003-06-03 Intel Corporation Multi-table mapping for huffman code decoding
US7606847B2 (en) * 2004-03-29 2009-10-20 Vince Grolmusz Dense and randomized storage and coding of information
US7564874B2 (en) 2004-09-17 2009-07-21 Uni-Pixel Displays, Inc. Enhanced bandwidth data encoding method
CN1282107C (zh) * 2005-01-07 2006-10-25 北京北大方正电子有限公司 一种对图像进行快速压缩和解压缩的方法
US8249340B2 (en) * 2009-03-02 2012-08-21 Xerox Corporation Dimensionality reduction method and system for efficient color profile compression
US8433148B2 (en) * 2011-03-31 2013-04-30 Mitsubishi Electric Research Laboratories, Inc. Method for compressing textured images

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03162179A (ja) * 1989-11-21 1991-07-12 Matsushita Electric Ind Co Ltd 量子化装置
JPH05103313A (ja) * 1991-10-04 1993-04-23 Canon Inc 画像情報処理方法及び装置
JPH06178281A (ja) * 1992-12-04 1994-06-24 Asahi Chem Ind Co Ltd ビットエラー検出方法
JPH08228156A (ja) * 1994-11-08 1996-09-03 General Instr Corp Of Delaware デジタル信号を部分的に再圧縮するための方法及び装 置
JPH09187004A (ja) * 1995-12-28 1997-07-15 Nec Corp 画像信号のアダマール変換符号化装置および復号装置
JPH09247673A (ja) * 1996-03-04 1997-09-19 Kokusai Denshin Denwa Co Ltd <Kdd> 符号化動画像再生装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4947447A (en) * 1986-04-24 1990-08-07 Hitachi, Ltd. Method for data coding
KR930000033B1 (ko) * 1990-10-18 1993-01-06 삼성전자 주식회사 에지검출을 이용한 양자화폭 조정회로
WO1993014600A1 (en) * 1992-01-21 1993-07-22 Supermac Technology Method and apparatus for compression and decompression of color image data
US5440344A (en) * 1992-04-28 1995-08-08 Mitsubishi Denki Kabushiki Kaisha Video encoder using adjacent pixel difference for quantizer control
US5339265A (en) * 1992-08-31 1994-08-16 University Of Maryland At College Park Optimal unified architectures for the real-time computation of time-recursive discrete sinusoidal transforms
US5351047A (en) * 1992-09-21 1994-09-27 Laboratory Automation, Inc. Data decoding method and apparatus
JP3069455B2 (ja) * 1992-12-22 2000-07-24 富士写真フイルム株式会社 画像データ圧縮伸張装置における量子化・逆量子化回路
US5615020A (en) * 1993-05-13 1997-03-25 Keith; Michael System and method for fast huffman decoding
JP3651941B2 (ja) * 1994-11-28 2005-05-25 キヤノン株式会社 画像再生装置
JP3703195B2 (ja) * 1995-03-27 2005-10-05 ヒューレット・パッカード・カンパニー カラー画像伝送装置
EP0735772A3 (en) * 1995-03-27 1998-04-01 Hewlett-Packard Company Method for selecting JPEG quantization tables for low bandwidth applications
US5754457A (en) * 1996-03-05 1998-05-19 Intel Corporation Method for performing an inverse cosine transfer function for use with multimedia information
US5696507A (en) * 1996-05-31 1997-12-09 Daewoo Electronics Co., Inc. Method and apparatus for decoding variable length code

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03162179A (ja) * 1989-11-21 1991-07-12 Matsushita Electric Ind Co Ltd 量子化装置
JPH05103313A (ja) * 1991-10-04 1993-04-23 Canon Inc 画像情報処理方法及び装置
JPH06178281A (ja) * 1992-12-04 1994-06-24 Asahi Chem Ind Co Ltd ビットエラー検出方法
JPH08228156A (ja) * 1994-11-08 1996-09-03 General Instr Corp Of Delaware デジタル信号を部分的に再圧縮するための方法及び装 置
JPH09187004A (ja) * 1995-12-28 1997-07-15 Nec Corp 画像信号のアダマール変換符号化装置および復号装置
JPH09247673A (ja) * 1996-03-04 1997-09-19 Kokusai Denshin Denwa Co Ltd <Kdd> 符号化動画像再生装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007534239A (ja) * 2004-04-21 2007-11-22 スリップストリーム データ インコーポレイテッド カラー画像の符号化のための方法、システム、およびソフトウェア製品
US8106919B2 (en) 2004-04-21 2012-01-31 Slipstream Data Inc. Method, system and software product for color image encoding
US8253757B2 (en) 2004-04-21 2012-08-28 Slipstream Data Inc. Method, system and software product for color image encoding
US8379044B2 (en) 2004-04-21 2013-02-19 Slipstream Data Inc. Method, system and software product for color image encoding
US8022963B2 (en) 2004-04-23 2011-09-20 Slipstream Data Inc. Method, system and software product for color image encoding

Also Published As

Publication number Publication date
US6160918A (en) 2000-12-12
CA2248664C (en) 2002-10-22
JP4860017B2 (ja) 2012-01-25
EP0907288A2 (en) 1999-04-07
EP0907288A3 (en) 2001-04-11
EP1936997A2 (en) 2008-06-25
CA2248664A1 (en) 1999-04-02
EP1936997A3 (en) 2012-03-21

Similar Documents

Publication Publication Date Title
US7076108B2 (en) Apparatus and method for image/video compression using discrete wavelet transform
US5455874A (en) Continuous-tone image compression
JP4860017B2 (ja) 高速の画像圧縮のための方法および装置
US5523847A (en) Digital image processor for color image compression
JPH02305191A (ja) 2次元情報の符号化方法
WO2001050768A2 (en) Method and apparatus for video compression using sequential frame cellular automata transforms
WO1998054907A1 (en) System and method for encoding video data using computationally efficient adaptive spline wavelets
US6876704B2 (en) Apparatus and method for encoding and computing a discrete cosine transform using a butterfly processor
WO2002100116A1 (en) Selective chrominance decimation for digital images
AU2002259268A1 (en) Apparatus and method for encoding and computing a discrete cosine transform using a butterfly processor
JP2003188733A (ja) 符号化方法及び装置
US20050038843A1 (en) Apparatus and method for decoding and computing a discrete cosine transform using a butterfly processor
US5343539A (en) Method for spatial domain image compression
CA2449709A1 (en) Interframe encoding method and apparatus
US6996595B2 (en) Apparatus and method for consolidating output data from a plurality of processors
WO1996001529A1 (en) Fractal representation of data
US5633685A (en) Method and apparatus for encoding an image signal having an object by using an extension-interpolation technique
WO2001050769A9 (en) Method and apparatus for video compression using multi-state dynamical predictive systems
US20040136600A1 (en) Visually lossless still image compression for RGB, YUV, YIQ, YCrCb, K1K2K3 formats
US5778101A (en) Method and apparatus for processing an image signal having an object by using an extension-interpolation technique
WO2002013539A1 (en) Sub-optimal variable length coding
JPH08275153A (ja) 画像圧縮装置および画像復元装置
JPH05252400A (ja) データ圧縮およびデータ解圧方法ならびにそのための装置
Salomon et al. Image compression
Kountcheva et al. Influence of parameters on image compression with Inverse Difference Pyramid

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071203

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080303

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080306

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080530

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090223

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090522

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090527

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090817

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100506

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20100616

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20100702

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110106

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110112

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

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

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees