JP2821489B2 - 静止画像圧縮処理装置及び方法 - Google Patents
静止画像圧縮処理装置及び方法Info
- Publication number
- JP2821489B2 JP2821489B2 JP2328762A JP32876290A JP2821489B2 JP 2821489 B2 JP2821489 B2 JP 2821489B2 JP 2328762 A JP2328762 A JP 2328762A JP 32876290 A JP32876290 A JP 32876290A JP 2821489 B2 JP2821489 B2 JP 2821489B2
- Authority
- JP
- Japan
- Prior art keywords
- image data
- image
- conversion
- data
- dimensional
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/76—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
- G06F7/78—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/147—Discrete 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C19/00—Digital stores in which the information is moved stepwise, e.g. shift registers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/12—Group selection circuits, e.g. for memory block selection, chip selection, array selection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N11/00—Colour television systems
- H04N11/04—Colour television systems using pulse code modulation
- H04N11/042—Codec means
- H04N11/044—Codec means involving transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Computational Mathematics (AREA)
- Multimedia (AREA)
- Mathematical Optimization (AREA)
- General Engineering & Computer Science (AREA)
- Algebra (AREA)
- Discrete Mathematics (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Complex Calculations (AREA)
Description
特に乗算を用いずに、しかも高速に2次元静止画像の圧
縮処理を行う静止画像圧縮処理装置及び方法に関する。
なければならない場合、通常のやり方は、画像をその情
報をよりコンパクトに表現可能な別の空間に変換するこ
とである。この変換は普通、1ブロックずつ線形変換
(マトリクス乗算)することにより行われる。すなわ
ち、典型的手法は、8画素の行セグメントに対し8ポイ
ント変換を行い、次に、この行変換後の画像の8エレメ
ント列セグメントに対し8ポイント変換を行う方法であ
る。等価的に、8×8のブロックに配列した64画素の画
素ブロックに対し、1回の64ポイント変換を行うことが
できる。
ェフ変換である。
の圧縮はいくつかの尺度に関しては、ほぼ最適である。
b)この変換及び逆変換を実行するための高速演算アル
ゴリズムである。c)後述の参照文献[1]に述べられ
ている仮定をおけば、鮮明化(初期画像の品質向上)を
変換空間内で容易に行うことができる。
平方向の1次元変換処理を乗算の繰り返し乗算を用いず
に行う静止画像圧縮処理装置及び方法を提供することに
ある。
変換処理後の画像データの90゜転置処理を高速に行う静
止画像圧縮処理装置及び方法を提供することにある。
交変換を施す静止画像圧縮処理装置において、前記画像
データの一方の方向(例えば水平方向)について、加算
器のみの構成で一次元変換処理を施こす第1変換手段
と、前記1次元変換処理された画像データを順次入力
し、同時に90゜転置された画像データを順次出力するN
×Nのシフトアレイ手段と、前記シフトアレイ手段から
出力される画像データの前記方向と異なる他方の方向
(例えば垂直方向)について、加算器のみの構成で1次
元変換処理を施こす第2変換手段と、前記第2変換手段
で変換処理された画像データをスケーリング手段と、前
記スケーリング手段でスケーリングされた画像データを
符号化する符号化手段とを具備することを特徴とする。
に2次元直交変換を施こす静止画像圧縮処理方法におい
て、前記画像データの一方の方向(例えば水平方向)に
ついて、加算器のみを使用して1次元変換処理を施こす
ステップと、前記1次元変換処理された画像データを順
次、N×Nのシフトアレイに入力し、同時に90゜転置さ
れた画像データを順次、該シフトアレイから出力するス
テップと、前記シフトアレイから出力される画像データ
の前記方向と異なる他方の方向(例えば垂直方向)につ
いて、加算器のみを使用して1次元変換処理を施こすス
テップと、前記変換処理された画像データをスケーリン
グするステップと、前記スケーリングされた画像データ
を符号化するステップとからなることを特徴とする。
述において一部示されるが、また一部は、以下の説明か
ら当業者にとって明らかになるであろうし、あるいは本
発明の実施により学習できるであろう。
のように示すことができる。
のステップ(L,Z)を省いた現行技術をも説明してい
る。
プとして(例えばステップIの後に)行うことができ
る。この鮮明化は、入力装置のポイント拡大作用(poin
t−spread functin)の補正のために行われるもので、
入力装置に応じて調整されなければならず、あるいは入
力画像が画質向上済みのときは省略しなければならな
い。他により優れた画像鮮明化方法があるが、ここで示
した方法は計算コストが小さいので、ある種のアプリケ
ーションに、例えばカラー・コピアにふさわしい。
ジが計算負荷の大部分となるようにアレンジすることが
できる。これらの乗算とステップ(C,E)の乗算の積を
予め計算することにより、圧縮プロセスの高速化が可能
である。
が計算負荷の大部分となるようにアレンジすることがで
きる。積を予め計算することにより、ステップ(H,I)
の計算量を効果的に削減できる。
により、演算をさらに単純化できる。
算、例えば2のべき乗を効率化するように、心理的適応
ウェートを選択的に変化させることができる。低エネル
ギー出力変換要素の心理的適応ウェートの小変化は、画
像の品質または圧縮率に殆ど影響を及ぼさない。
複雑さ(Difficuity)の類別のステップとブロック境界
の平滑化のステップに注目する。これらはオプション
で、また本発明とは無関係であるので、ここでは最小限
の説明しかしない。
方向にそれぞれ変換するための二つの変換TすなわちTv
とThを必要とする。完全な2次元変換は、 [F]=[Tv]t[f][Th] により表わされる。
係数であり、添う字“t"は行列転置を意味する。ここで
全行列は8×8である。
あって、全行列について [A]t[B]t=([B][A])t であり、そして、 [Tv]=[Fv][Qv] [Th]=[Ph][Qh] である。よって次のように書くことができる。
(Chen Wu)のアルゴリズムを用いて[g]について解
を求め、次に要素q(i,j)と掛け合わせる必要があ
る。
る。
の計算を高速化するために、いくつかの方法が考案され
ている。
て、任意の8タブル(tuple)と上記行列Tとを乗算す
る周知のアルゴリズム(チェン)(参照文献[2],
[3])がある。このアルゴリズムは、パラメータa,b,
c,rの格別の特性に何等依存しない。
により、チェン・ウーのアルゴリズムは二つのステージ
に分かれ、[Q]による乗算に8回の掛け算が用いら
れ、[P]による乗算に8回の掛け算とそれ以外の算術
演算が用いられる。これは我々の[Q]の選択の結果で
あって、[P]のいくつかの要素は1または−1にな
り、ひとつの乗算がなくなる。
2−D変換及び2−D逆変換にも当てはまる。8×8の
ブロックの場合、フォワード2−D変換とその逆変換の
いずれについても128回の掛け算が用いられる([q]
による掛け算を除く)。チェンのアルゴリズムの内部的
なデータの流れを見ると、これらの掛け算は、8つの加
算/減算ステージと4つの乗算ステージの組み合わせに
組み込まれる。
用いれば、一つの乗算ステージを省くことができる。こ
れにより、乗算回数は128回から120回に減るが、このよ
うな一つの乗算ステージの削減は重要となる。
b,c,rのいかんにかかわらず働くことである。しかしな
がら、従来用いられた8ポイントDCTは“真(true)コ
サイン変換”のパラメータすなわち a=tangent(7*pi/16) b=tangent(6*pi/16) c=tangent(5*pi/16) r=sqrt(1/2)=0.70710678… を持ち、行列Tが直交行列となるに必要十分なrを選ん
でいる。
にも考案されている。例えば、リー(Lee)によるアル
ゴリズムは、8ポイントの1D変換と64ポイントの2D変換
を、それぞれ12回の乗算と144回の乗算によって実行す
る。
は、チェンのアルゴリズムに比べ、いくつかの欠点があ
る。すなわち、 a)T=P×Qの単純化(逆変換の同様の因数分解)は
もはや有効でない。対角行列Qの分離は、以後の単純化
のために不可欠である。
rで役立つのではなく、真コサイン、パラメータに特に
有効な様々な三角恒等式に依存している。
これが具体化の妨げとなったり、数値が不安定になる危
険を増加させることがある。
から導かれたフォワード変換後乗数を組み入れできるこ
とに気付くであろう。同様に、ステップ(H,I)は逆変
換前乗数に組み入れできる。
g)、適応的重み付け、及び鮮明化関数が余分な計算オ
ーバーヘットを与えられていないことを意味する。上記
のように、このアプローチはリーのアルゴリズムのよう
な“高速”アルゴリズムと一緒に適用できない。
働くので、値を選ぶことによって、DCTと同様の品質と
圧縮を得て、高速乗算を達成できる。
が、計算効率はより高い。
えば5を掛ける計算は、複写、2桁シフト、加算とな
る。1.5を掛ける計算は、複写、1桁右シフト、加算と
なる。
分解できる。ゆえに、2.5を掛ける計算は、影響される
項と影響されない項のそれぞれに対し、5を掛ける計算
と0.5を掛ける計算とにすることができる。
リズムにおけるパラメータr=0.75を扱うには、4を掛
ける計算を96回、3を掛ける計算を32回、必要とする。
オー・パオリーニの改良によれば、一つの乗算ステージ
全体が省かれるので、これは16を掛ける計算が36回、12
を掛ける計算24回、9を掛ける計算が4回となる。(逆
変換には9を掛ける計算を36回、6を掛ける計算を24
回、4を掛ける計算を4回、用いる。) 演算速度のために、コサイン変換に極めて近いパラメ
ータ値を選ぶことができる。b=12/5及び/またはr=
17/2の代用が可能である。もうひとつの興味ある選択
は、 rRow=0.708333(17/24) rCol=0.7(7/10) である。
が行と列に用いられる。これは、ウー・パオリーニ法よ
り導かれる乗数を単純にするためになされる。ここで、
その方法は、15との掛け算を36回、85/8との掛け算を12
回、21/2との掛け算を12回、119/16との掛け算を4回、
生じる。(逆変換は、119/16との掛け算を36回、85/16
の掛け算を12回、21/4との掛け算を12回、15/4との掛け
算を4回、使用する。) ここで説明した方式によれば、すべての乗算が高速化
された。ただし、圧縮装置における結合乗数[q]と伸
長装置における結合乗数[q]は例外である。これらは
それぞれ、一つの変換要素につき一つの乗算が必要であ
る。伸長装置の結果乗数[q]は、変換係数の大半がゼ
ロとなり、また非ゼロの係数の多くが特別扱いが可能な
ゼロに非常に近い整数となる、という点において簡単化
される。
の計算コスト削減のために用いられる。レート・スケー
ラは、実際に任意値であるから、[q]行列要素に計算
が簡単な値、例えば2のべき数を与えるように1ポイン
ト毎に調整されることになる。これらの調整を一度だけ
行う必要がある(レート・スケーラと鮮明化フィルタの
決定後)。
数要素(D)が C=0.002773 D=0.009367 となったとすると、近似値C=3/1024=0.002930が得ら
れ、また乗算の簡単化のために用いられることになろ
う。その結果はC′=3/1024、D′=D×C′=0.0088
66となる。
化の非ゼロ・ステップを一定幅(w)とし、ゼロ・ステ
ップを幅(w×q)とすることが便利かつ効率的であ
る。
率にわたり品質面でほぼ最適である。この説明において
は、q=2(倍数ゼロ=double−width zero)とする。
ただし、本発明はそれに限るものでない。
の2進整数演算用にデザインされている。ただし、ステ
ップ(2),(4),(8)における中間決定は例外
で、それは高精度演算で行われる。
た整数乗算はコスト及びスピードに関して最適化され
る。例えば、 Nrr*Nrc=Drr′*Drc=1.75*4.25=7.4375 による掛け算を考える。恒等式7.4375=(8−1)*
(1+1/16)を選ぶことにより、この乗算はシフトと加
算により効率的に行われる。そのCプログラム言語によ
り表現は次の通りである。
できることなら通常はステップ4で行うべきである。多
くのアプリケーションにおいて、伸長装置は、どのよう
な方法で画像を鮮明化するのか、あるいは画像を鮮明化
するか否かの“知識”がない。注意すべきは、Thr
( )の最適値は入力装置及び鮮明化法によって変わる
ことである。
8参照)が圧縮時(ステップ4)に計算さ、圧縮画像の
一部として伝送され、あるいは蓄積されることである。
ンタリーブには、いくつか明白な方法がある。あるハー
ドウェア・アーキテクチャにとって好ましい方法は、次
に説明するような単純な方法である。
を選ぶ tan7*pi/16=a=Na/Da tan6*pi/16=b=Nb/Db tan5*pi/16=c=Nc/Dc sqrt(0.5) =rRow=Nrr/Drr sqrt(0.5) =rCol=Nrc/Drc 0.5/rRow =rRow′=Nrr′/Drr′ 0.5/rCol =rCol′=Nrc′/Drc′ “分子"N及び“分母"Dは整数である必要はないが、演算
の都合のよいように選ばれる。有効な可能値はいくつか
あるが、次のものもそれである。
をすべて包含する。
(変換空間内)の順序を示すインデックス(0,1,2,3,4,
5,6,7)とする。
(変換空間内)の順序を示すインデックス(0,1,2,3,4,
5,6,7)とする。
はDeb1( )=1とする。
理的適応ウェートを示すものとする。
的圧縮率に対してはM=1(近似)である。
を示すものとする。
のとする。
示す任意の小整数とする。
換のパラメータの各セット毎に再度最適化されるべきで
ある。しかし、上記ステップ((1)で与えられたパラ
メータはCCITTのパラメータに十分近く、同行列Thr
( )は最適である。4.64個の変換位置(i,j)につい
て、次式を満足させるk(i,j)及びs(i,j)を求め
る。
(i,j)は整数とする。
関係にするためのものである。
ックにつき以下の処理の実行を繰り返す。すなわち、 5.1 i=0,1,2,…,7について次の値を準備する。
置(i,j)のそれぞれについて、ステップ4より得られ
たk(i,j)とs(i,j)を用い、次の値を用意する。
=0)、それに1を加える。その結果が変換係数L(i,
j)である。
常に1,3,5,7または9であって、普通は1であるからで
ある。また2−S(i,j)の乗算は単に右シフトである
からである(あるいは、Mが非常に大きな値に選ばれた
場合には右シフトとなることもある)。
う丸めが実際に好ましい。ゆえに、前記のように“負の
ときは1を加える”ということである。
のためであり、また下記のステップ(9.1)の記載を単
純化するための工夫にすぎない。
する。結局は、この値は検索され、後続のステップによ
って画像が再構築されることになろう。
整数として求める。
かれ、“z"はステップ4で定義される。
と一緒に伝送しておいてもよい。これは、定数及びm
(i,j)のみに依存するA(i,j)に関しては必要ない。
レート・スケーラ及び鮮明化ウェートが固定されるアプ
リケーションにおいては、値m(i,j)A(i,j)は一定
となるであろう。
ビットは最終的にはステップ(9.2)及びステップ(1
0)での算術右シフトによって除かれることになる。
出力を丸め修正なしに利用できるようにする。
でL(0,0)へ1を加算することによっている。
あるが、平均二乗誤差の点でほぼ最適である。
換後輝度値L(_,_)の8×8の各ブロックに以下のこ
とを繰り返す。
は、L(0,0)>0の判定が成立せず、また上記ステッ
プ(6),(8)(オプション)が簡略化される場合も
包含する。
j)<11は乗算の演算費用を減らすための特殊ケースと
理解すべきである。
(i,j)の数を任意桁数S1だけ右シフトする。ただし、
これらのシフトは、本方法のある具体例では“自由”で
ある。このシフトが自由でない場体例では、E(i,j)
=0の時、そのシフトを省略してよい。あるいは、S1=
0に設定することにより、全てのシフトを省いてよい。
置(i,j)に対して、次の値を用意する。
において定義された任意の整数である。再び、乗算は実
際的には右シフトである。
ックが必要になることがある。例えば、輝度の許容範囲
が0≦V(i,j)≦225の場合、0未満及び255より大き
なV(i,j)値は0及び255にそれぞれ置き換えなければ
ならない。
る。
的)プロセスに付加的手段を追加するのが普通である。
(8I+8,j)と全画素ペアV(I,8J+7),V(i,8J+
8)(すなわち、別の画像ブロックに分離された近傍画
素)について繰り返し、またそれぞれに値を、例えば
(V2−V1)/max(2.11 sqrt(M))ずつインクリメン
ト及びデクリメントすることにより、画素の正確さを向
上できる。ここで、Mはステップ(4)で用いたレート
・スケーラであり、また分母の式は最適値の便宜的近似
にすぎない。
複雑さを3タイプすなわち単精度、2倍精度及び4倍精
度のいずれかに選択的に分類し、それぞれ“0",“10",
“11"のコード前書きを出力することができる。そうす
ると、ステップ(6)の計算は次式で置き換えられる。
Pは0,1,2となる。これは、増加した精度を(増えた)
右シフトにより除去しなければならないステップ(9.
2)において後補正される。
てかっていない。そこで、現在は、次の4つのソースか
ら複雑さの尺度Pを導き出す煩雑な方法を用いる。
j)′2) 変換エネルギー・スキュー c)−G(0,0) 平均濃度の逆数 d)max(sum_over_fixed_with(ヒストグラム(V(i,
j))))均一性 ステップ(7)において、蓄積または伝送すべき変換
データL(,)は、エントロビー符化法を用いさらに減
らすことができる。発明者らは、ビット・レートに応じ
たいくつかの既知のハフマン・テーブルを用いるCCITT
のジグザグ・ラン・テンプレート・コード(zigzag−ru
n−and−template−code)の改良を使用し、また推薦す
る。明確にするため、その例を以下の部分に説明する。
る) 2)DC係数デルタ・コード 3)AC係数コード(0回以上繰り返される) 4)end−of−Blockコード により表現される。
値の係数の番号(合計i+jに基づいた順序)である。
またTは、係数の絶対値の最上位ビット(MSB)のビッ
ト位置であり、例えば、 係数が11または−11 ビット位置:876543210 11=000001011(二進数)‥最上位ビット の時はT=3である。
ないが、高ビット・レートでACラン・テンプレートコー
ドに有用なハフマン・コードの例を示す。
16または16×16に使分可能である。チェン変換をさらに
一般化するための方法は、1D−16ポイントGCTが(行が
“蝶状”で、必要な標準化のための後乗数がないとし
て) により与えられることに注目した上で明らかにされるべ
きである。
t′,b,t′)の転置である。
966 r=0.70711): 0.1768 0.1768 0.1768 0.1768 0.1768 0.1768 0.
1768 0.1768 0.245 0.2079 .01389 0.0488 −0.1488 −0.1389 −
0.2079 −0.2452 0.2310 0.1957 −0.0957 −0.2310 −0.2310 −0.0957
0.0957 0.2310 0.2079 −0.0488 −0.2451 −0.1389 0.1389 0.2452
0.0488 −0.2079 0.1769 −0.1768 −0.1768 0.1768 0.1768 −0.1768
−0.1768 0.1768 0.1389 −0.2452 0.0488 0.2079 −0.2079 −0.0488
0.2452 −0.1389 0.0957 −0.2310 0.2310 −0.0957 −0.0957 0.2310
−0.2310 0.0957 0.0488 −0.1389 0.2079 −0.2452 0.2452 −0.2079
0.1389 −0.0488 関連したチェン変換(a=5.0 b=2.4 c=1.5 r
=0.7) 0.1768 0.1768 0.1768 0.1768 0.1738 0.1768 0.
1768 0.1768 0.2451 0.2059 0.1373 0.0490 −0.0490 −0.1373
−0.2059 −0.2451 0.2308 0.0962 −0.0962 −0.2308 −0.2308 −0.0962
0.0962 0.2308 0.2080 −0.0485 −0.2427 −0.1387 0.1387 0.2427
0.0485 −0.2080 0.1768 −0.1768 −0.1768 0.1768 0.1768 −0.1768
−0.1768 0.1768 0.1387 −0.2427 0.0485 0.2080 −0.2080 −0.0485
0.2427 −0.1387 0.0962 −0.2308 0.2308 −0.0962 −0.0962 0.2308
−0.2308 0.0962 0.0490 −0.1373 0.2059 −0.2451 0.2451 −0.2059
0.1373 −0.0490 (3)本発明の装置の説明 さて、本発明の一つの詳細説明を行ったが、本発明の
様々な形態を実施する装置について、ここに図面を参照
し説明する。
あるいは任意精度のデータ・パスを示すために用いる。
適当な精度を決める方法は、分かっている(6参照)。
れ、また改良したウー・パオリーニの方法が採用され
た。半導体装置の場合、単純に二つの8ポイント・ユニ
ットすなわち、垂直方向と水平方向のためにそれぞれ1
ユニットずつ用意すると好都合である。
トアレイを設ける必要があり、また同様のバッファリン
グを変換セクションと符号化セクションとのあいで行う
必要がある。
及び/または複数の分離した(seperate)装置を包含す
るが、好ましい一実施例(第7図)は3色データに対し
て動作する圧縮装置(第1図(a))と伸長装置(第1
図(b))の両方を含む。データは8ビットのベクトル
の形で圧縮装置に入力し、この8ビットはさらに辞書編
集上の順番に64画素のブロックに配列される。ブロック
の処理はパイプライン処理とされる(第2図(b))。
“B"(青)のスケーラ(scaler)からなる。これらは直
ちに輝度−色差空間に変換される。(かかる交換を行う
理由は周知である。) 変換は任意の固定した、またはプログラマブルの係数
を使用可能であり(第3図(a))、または用途によっ
ては単純な値に“ハードワイヤ(hard−wired)”する
ことも可能である。変換空間はここではXYZとして示さ
れるが、どのような線形形式の3色入力を用いてもよ
い。おそらくCCITT標準(Y,R−Y,B−Y)であろう。そ
して、三つの値X,Y,Zは、実際的には、それぞれ分離し
たモノクロ圧縮装置に送られる。伸長装置は、XYZベク
トルがRGBベクトルに変換されることを除けば、第3図
のように同じまたは同様の回路を用いる。
し、第1変換ユニット(3)への転送を待つ。この変換
ユニットは2.6画素時間で動作するので、データの一部
は説明したように遅延させなければならない。“XYZ"の
ラベリングは多少不適当である。すなわち、最適化され
た符号化方法では、輝度(“Y")が最初に処理される必
要がある。
は、好ましい本実施例においては、伸長中にY−レジス
タとZ−レジスタの利用を逆にすることによって、5ポ
イント分のレジスタが節約されている。
をXYZへ変換し、それを次に第1変換ユニット(3)へ
転送するためにバッファする入力セクション(1,2)を
含む。各8画素時間に、第1変換ユニットは3回の周期
的動作をしなければならない(X,Y,Zのそれぞれにつき
1回ずつ)。第1変換ユニット(3)の出力はシフトア
レイ(4)に入力し、そこで8×8画素ブロックが完全
に読み込まれるまで保持される。シフトアレイ(4)は
読込みと読出しが同時に進行する(第6図(B))。第
2変換ユニット(5)は予め読み込まれた画素ブロック
に対して動作し、これもまた各8画素時間に3回、周期
的動作をして、スケーラ(6)を経て、符号器入力バッ
ファ(7,8)へデータを与える。符号器(9,10,11)は三
つの色座標に共用されるが、輝度の1ブロック全体が中
断なく符号化され、それに続けて色差ブロックが1ブロ
ックずつ符号化される。これらの3つのブロックの処理
を64画素時間内に完了できない場合、タイミング・コン
ロール論理が外部の入力回路に対する画素クロックを停
止させる。
イ[4]、符号器入力バッファ[7,8])は、3色用に
三重化しなければならないが、計算ユニット[3,5,6,9,
10,11]はYデータ、Xデータ、Zデータで共用(時間
多重化)される。
号プログラミング[12,13,14]及びタイミング・コント
ロール論理[図示されていない]は、在来技術及びプラ
クティスによってよい。同様に、3色を単一回路に時間
多重化する方法は周知である。3ポイント変換セクショ
ン[1](第3図)もまた知られている。
またはROMと、(当然存在するところの)シフト、マル
チプレクサ及び加算器からなるシステムを用いる。これ
は簡単に実現できる。一般化チェン変換と適切なパラメ
ータが与えられれば、8ポイント変換器(第8図)も簡
単である。
現在の入力画素ブロックからの垂直(変換後)ベクトル
は、先行の画素ブロックからの水平ベクトルが水平変換
器へ送られる間に組み立てられる。特別な設計しない
と、このようなことには、128個のレジスタ(現在ブロ
ックと先行ブロックのそれぞれ毎に64個)が必要であ
る。これは、ポイントが受信された順序と異なる順序で
用いられるからである。しかし、その必要性は、偶数番
号画素ブロックの期間にデータを左から右へシフトし、
また奇数番号画素ブロックの期間にデータをトップから
ボトムシフトすることにより、なくなる。
によっては、4方向シフトアレイが好ましい。
をより詳しく示す。第6図(B)において、ベクトルは
シフトレジスタのボトムより一つ一つ取り出され、第1
図(a)の第2変換ユニット(5)のDCT8セクションへ
送られる。この期間に、第1変換ユニット(3)のDCT8
セクションから出力された垂直ベクトルがシフトアレイ
へトップより入力される。徐々に古いベクトルはシフト
アレイから出され、シフトアレイは次の画素ブロックか
らの垂直ベクトルで一杯になる。
前画素ブロックのデータの流れる向きから90度変わる。
そのようにして、水平ベクトルはシフトアレイの右より
取り出されてDCT8へ送られ、新しい垂直ベクトルがシフ
トアレイに左側より入力する。ブロックN+1まで進む
と、さらに90度回転することより最初の形に戻る。以下
同様である。
逆であることを除き、圧縮装置(第1図(a))と非常
に類似した構成である。好ましい実施例では、単一の装
置が二つのモードで、すなわち圧縮装置または伸長装置
のいずれかとして動作する。
よれば、圧縮の場合(第4図(c−a),(c−d))
と、伸長の場合(第4図(d−a),(d−b))とで
データの流れる向きが異なる。注意すべきは、変換及び
シフトアレイのユニットは、一方のレイアウト(第4図
(b))では圧縮と伸長の両方に同じ方向性を有する
が、他方のレイアウト(第4図(a))はそうでないこ
とがある。これは、結合した圧縮装置/伸長装置のデー
タの流れ(第7図)を考えた時に、より明確になる。二
つの変換ユニットを、RGBデータ及び圧縮データのそれ
ぞれに関与させた場合(第4図(a))、4方向シフト
アレイを用いない限りレイアウトが困難となる。故に、
シフトアレイの入力セクション及び出力セクションを用
いて、二つの変換ユニットとやり取りする(第4図
(b))。
られた変換ユニットは、38個の加算器を利用する。1桁
右シフト(“R1")、2桁右シフト(“R2")または4桁
右シフト(“R4")、あるいは1桁左シフト(“L1")は
容易になされる。図示回路はパラメータ(a,b,c,r=
(5,2,1,5,17/24)を用いる。別の実施例(第8図
(B))において、b=2.5として実現するには加算器
は36個だけで足りる。
ある。“出力イネーブル”信号の用い方に注意すれば、
フォワード変換器内の加算器の大部分を再使用可能であ
る。これを行うことは、当業者であれば簡単である。
依存するシフティング、マルチプレクサ及び加算器のシ
ステムを用いる。この実現は容易である。
キュムレータ、タイミング・コントロール論理及び小さ
なタイムプレート・カットオフ(timeplate cutoff)を
備えた小規模の布線論理乗算器である。専用の低コスト
のアプレケーションでは、デスケーラ(descaler)は、
鮮明化ウェートが広い範囲にわたりほぼ最適であること
に注目することにより、簡略化でき、したがってスケー
ラにおけるように単純なスケーリング(scaling)を利
用できる。
とその出力バッファとの間、あるいは、その出力バッフ
ァと変換器との間のいずれに置くこともできる。
シフトアレイと類似のサイクル−シェアリング(cycle
−sharing)によるレジスタ削減構成も可能である。よ
り単純な設計では、RAMアドレスを与えるための64×7
ビットROMを持った384×10ビットRAMを使用する。
の1サイクルの例を説明する。
赤、緑、青として圧縮装置に入力する。このデータは直
ちに、XYZと呼ぶ別空間へ変換される(ブロック1)。
X,Y,Zの3要素は、それぞれのシフトレジスタ(ブロッ
ク2)に入る。
ユニット(ブロック3)に送られる。X,Y,Zの3色に多
重化される一つの8ポイントDCTユニットが設けられる
こともあるし、多色毎にDCT8−ユニットが設られること
もある。
る。各色個別のシフトアレイが存在する。シフトアレイ
(ブロック4)から、情報はブロック3と同様のもう一
つの第2のDCTユニット(ブロック5)へ送られる。こ
の情報は次にスケーリングを行わなければならないこと
が、これは加算シフトを余分に重ねることである。
ある。シフトアレイは、実は概念上データを90度回転さ
せるものであり、その結果、情報を他の方向へ変換可能
である。データは、ブロック6でスケーリングされた
後、ブロック7,8(Z1,Z2)で示したデータ保持のための
別のバッファへ入力し、その結果、データは最終的に符
号化されチップから出力される(Z1,Z2はジグザグであ
る)。
けば、シフトアレイすなわちブロック4と同様である。
その代わり、それはジグザグ順に変換されるが、これは
従来、このような事に用いられてきており、またCCITT
標準に採用されている。情報は次にラン・テンプレート
(run and templete)コントロールユニットのブロック
9へ送られ、このユニットはゼロを検出してゼロのラン
を生成し、また非ゼロと値の対数の概算値(テンプレー
トと呼ぶ)を検出する。このランとテンプレートの組
(RTコードと呼ぶ)はRMAまたはROMで検索され、次にチ
ップより出力される。
力される。仮数とラン・テンプレートコードは1ビッ
ト、2ビット等々の任意の長さであるが、チップからの
出力は常に16ビットあるいは8ビット、32ビット等々の
同一ビット数であるから、ブロック11(整列)はそれを
容易にする。
プログラミング・ブロック12,13,13であり、これらはそ
れぞれにXYZ変換のための任意のRGB、任意のレート・ス
ケーラ、任意の心理的適応ウェート、ラン・テンプレー
トのための任意のモデファイド・ハフマンコードを設定
可能である。
ン・テンプレートコードは、ランとテンプレートの組に
複合されなければならず、また必要個数のゼロが省かれ
なければならない。
フターのアレイである。第1図(b)において、デスケ
ーラはハードウェアで非常に小さな乗数として実現され
ている。
を目的としてなされたものである。本発明を開示した態
様そのものに限定することは意図するものではなく、以
上の説明に照らし多くの修正が可能である。また、本発
明は既存の標準、例えばJPEGと両立できる。好ましい実
施例は、本発明の原理及び実際的な応用を最もよく説明
することによって、当業者が本発明及び様々な実施例を
最適に、また特定用途に適するように様々に修正して利
用できるようにすることを目的として、選び説明したも
のである。本発明の範囲は、特許請求の範囲によっての
み定義されるものである。
様も包含する。
置された輝度値を変換及び再構築するための方法であっ
て、 一般化チェン変換のためのパラメータを選択するこ
と、 鮮明化ウェート、心理的適応ウェート、及び計算上分
数式にセットされたチェン・パラメータを持つレート・
スケーラを選択すること、 各乗算の計算費用が少なく、かつ周波数エントロピー
が一般化チェン変換を用い画像の各N×Nのセクション
を変換する最良値に十分に近似するように、修正したチ
ェン・ウーのアルゴリズムにおける後乗数を丸めるこ
と、 対象のおおよその複雑さに応じて画素ブロックを分類
し、この分類に応じてチェンの後乗数の最終的シフト−
カウントを調整すること、 結果として得られた変換後画像を符合化すること、 からなる方法。
築するステップ、 及び 平均化手法によりブロック境界の不連続性を修正する
ステップ、 を含む方法。
り、また該カラー画像の様々な空間的に配置された値を
3刺激カラー値の座標のひとつ以上に対して変換及び再
構築するステップを含む方法。
のセクションを単位として処理され、また5,12,13が、
確度がほぼ4:3:1の三角形の各片として用いられる方
法。
on of an image sequence",SPIZ vol 393 Medical Imag
e Processing(1985) [2]Cooley,and Tukey,JW,“An algorithm for(fas
t)Fourier series",_Math Comput_,XIX No 90,pp 296
−301,1965. [3]Chen,W.et al,“A fast computational algorith
m for the DCT",IEEE Trans.Commun.vol COM−25(197
7) [4]Wu,HR and Paolini,FJ,“A 2D Fast Cosine Tran
sform",IEEE Conf.on Image Processing,vol I(1989) [5]Lee,BC,“A Fast Cosine Transform",IEEE ASSP,
vol XXXIII(1985) [6]Jalali and Rao,“Limited Wordlength and FDCT
Processing Accuracy,"IEEE ASSP−81,vol.III,pp1180
−2 〔発明の効果〕 以上の詳細な説明から明らかなように、本発明によれ
ば、2次元静止画像の圧縮処理を乗算の繰り返し演算を
用いずに加算器のみで行い、且つ、画像データの90゜転
置処理をシフトアレイによりパイプライン処理で行い、
高速な静止画像圧縮処理装置及び方法を提供できる。
1図(b)は本発明による伸長装置のブロック図、第2
図(a)乃至(c)は入力画素順、データのブロックタ
イミング及びベクトルタイミングの説明図、第3図はRG
BからXYZデータへの3ポイント変換の説明図、第4図の
(a)と(b)は本発明による可能なVISTレイアウトの
説明図、第4図の(c−a),(d−a),(c−
d),(d−b)は上記VISTレイアウトにおけるデータ
フローの説明図、第5図は本発明で使用されるシフトレ
ジスタの説明図、第6図(A)は本発明によりシフトア
レイの説明図、第6図(B)は第6図(A)のシフトア
レイの一例の説明図、第7図は結合されたデータフロー
図、第8図(A)及び第8図(B)は本発明によるフォ
ーワード(forward)加算アレイの説明図である。
Claims (2)
- 【請求項1】N×Nマトリクスの静止画像データに2次
元直交変換を施こす静止画像圧縮処理装置において、 前記画像データの一方の方向について、加算器のみの構
成で1次元変換処理を施こす第1変換手段と、 前記1次元変換処理された画像データを順次入力し、同
時に90゜転置された画像データを順次出力するN×Nの
シフトアレイ手段と、 前記シフトアレイ手段から出力される画像データの前記
方向と異なる他方の方向について、加算器のみの構成で
1次元変換処理を施こす第2変換手段と、 前記第2変換手段で変換処理された画像データをスケー
リングするスケーリング手段と、 前記スケーリング手段でスケーリングされた画像データ
を符号化する符号化手段と、 を具備することを特徴とする静止画像圧縮処理装置。 - 【請求項2】N×Nマトリクスの静止データに2次元直
交変換を施す静止画像圧縮処理方法において、 前記画像データの一方の方向について、加算器のみを使
用して1次元変換処理を施こすステップと、 前記1次元変換処理された画像データを順次、N×Nの
シフトアレイに入力し、同時に90゜転置された画像デー
タを順次、該シフトアレイから出力するステップと、 前記シフトアレイから出力される画像データの前記方向
と異なる他方の方向について、加算器のみを使用して1
次元変換処理を施こすステップと、 前記変換処理された画像データをスケーリングするステ
ップと、 前記スケーリングされた画像データを符号化するステッ
プと、 からなることを特徴とする静止画像圧縮処理方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/511,245 US5129015A (en) | 1990-04-19 | 1990-04-19 | Apparatus and method for compressing still images without multiplication |
US511245 | 1990-04-19 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04181877A JPH04181877A (ja) | 1992-06-29 |
JP2821489B2 true JP2821489B2 (ja) | 1998-11-05 |
Family
ID=24034067
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2328762A Expired - Lifetime JP2821489B2 (ja) | 1990-04-19 | 1990-11-28 | 静止画像圧縮処理装置及び方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5129015A (ja) |
JP (1) | JP2821489B2 (ja) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5319724A (en) * | 1990-04-19 | 1994-06-07 | Ricoh Corporation | Apparatus and method for compressing still images |
US5305399A (en) * | 1990-04-19 | 1994-04-19 | Ricoh Corporation | Two dimensional shift-array for use in image compression VLSI |
US5594812A (en) * | 1990-04-19 | 1997-01-14 | Ricoh Corporation | Apparatus and method for compressing still images |
JP3155383B2 (ja) * | 1992-02-28 | 2001-04-09 | 株式会社リコー | 2モード処理装置、2次元変換装置及び静止画像データの圧縮システム |
US5832436A (en) * | 1992-12-11 | 1998-11-03 | Industrial Technology Research Institute | System architecture and method for linear interpolation implementation |
JP3466705B2 (ja) * | 1993-05-28 | 2003-11-17 | ゼロックス・コーポレーション | 圧縮画像の圧縮解除方法 |
US5719961A (en) * | 1994-07-22 | 1998-02-17 | Apple Computer, Inc. | Adaptive technique for encoder and decoder signal transformation |
US5659362A (en) * | 1994-09-07 | 1997-08-19 | University Of South Florida | VLSI circuit structure for implementing JPEG image compression standard |
EP0714212A3 (en) * | 1994-11-21 | 1999-03-31 | SICAN, GESELLSCHAFT FÜR SILIZIUM-ANWENDUNGEN UND CAD/CAT NIEDERSACHSEN mbH | Video decoder using concurrent processing and resource sharing |
US6094453A (en) * | 1996-10-11 | 2000-07-25 | Digital Accelerator Corporation | Digital data compression with quad-tree coding of header file |
US6058215A (en) * | 1997-04-30 | 2000-05-02 | Ricoh Company, Ltd. | Reversible DCT for lossless-lossy compression |
US6298166B1 (en) * | 1998-03-30 | 2001-10-02 | Seiko Epson Corporation | Image transformations in the compressed domain |
US6473534B1 (en) | 1999-01-06 | 2002-10-29 | Hewlett-Packard Company | Multiplier-free implementation of DCT used in image and video processing and compression |
US6876703B2 (en) * | 2000-05-11 | 2005-04-05 | Ub Video Inc. | Method and apparatus for video coding |
US7082450B2 (en) | 2001-08-30 | 2006-07-25 | Nokia Corporation | Implementation of a transform and of a subsequent quantization |
WO2003069333A1 (en) * | 2002-02-14 | 2003-08-21 | Illumina, Inc. | Automated information processing in randomly ordered arrays |
US7760950B2 (en) * | 2002-09-26 | 2010-07-20 | Ntt Docomo, Inc. | Low complexity and unified transforms for video coding |
US7627187B2 (en) * | 2003-09-24 | 2009-12-01 | Ntt Docomo, Inc. | Low complexity and unified transforms for video coding |
US8571340B2 (en) * | 2006-06-26 | 2013-10-29 | Qualcomm Incorporated | Efficient fixed-point approximations of forward and inverse discrete cosine transforms |
US8385424B2 (en) * | 2006-06-26 | 2013-02-26 | Qualcomm Incorporated | Reduction of errors during computation of inverse discrete cosine transform |
US8300698B2 (en) * | 2006-10-23 | 2012-10-30 | Qualcomm Incorporated | Signalling of maximum dynamic range of inverse discrete cosine transform |
US8781000B2 (en) * | 2010-12-30 | 2014-07-15 | Vixs Systems, Inc. | Dynamic video data compression |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57152787A (en) * | 1981-03-17 | 1982-09-21 | Matsushita Electric Ind Co Ltd | Dc/ac conversion coding device for separation signal |
US4449194A (en) * | 1981-09-25 | 1984-05-15 | Motorola Inc. | Multiple point, discrete cosine processor |
US4507676A (en) * | 1982-10-28 | 1985-03-26 | Rca Corporation | Digital matrixing system |
US4835599A (en) * | 1987-02-25 | 1989-05-30 | Digital Equipment Corporation | Apparatus and method for storing and transmitting images represented by logic signals |
-
1990
- 1990-04-19 US US07/511,245 patent/US5129015A/en not_active Expired - Lifetime
- 1990-11-28 JP JP2328762A patent/JP2821489B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US5129015A (en) | 1992-07-07 |
JPH04181877A (ja) | 1992-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2821489B2 (ja) | 静止画像圧縮処理装置及び方法 | |
US5319724A (en) | Apparatus and method for compressing still images | |
US5345408A (en) | Inverse discrete cosine transform processor | |
JP5623565B2 (ja) | バタフライプロセッサを使用して離散コサイン変換をエンコードしそして計算するための装置及び方法 | |
CN101399988B (zh) | 减少位深的量子化方法 | |
US5467131A (en) | Method and apparatus for fast digital signal decoding | |
US20070094320A1 (en) | Parallel Adder-Based DCT / IDCT Design Using Cyclic Convolution | |
US6067384A (en) | Fast scaling of JPEG images | |
WO1996007986A2 (en) | Vlsi circuit structure for implementing jpeg image compression standard | |
US6052703A (en) | Method and apparatus for determining discrete cosine transforms using matrix multiplication and modified booth encoding | |
US7649939B2 (en) | Apparatus and method for decoding and computing a discrete cosine transform using a butterfly processor | |
US6996595B2 (en) | Apparatus and method for consolidating output data from a plurality of processors | |
KR100227271B1 (ko) | 역이산 여현변환방법 | |
US5555321A (en) | Image data binary coding method and apparatus | |
US5664028A (en) | Apparatus and method for compressing still images | |
JP3155383B2 (ja) | 2モード処理装置、2次元変換装置及び静止画像データの圧縮システム | |
US5594812A (en) | Apparatus and method for compressing still images | |
US6111989A (en) | 1/4 size real time decoding of digital video | |
JP3087312B2 (ja) | データ圧縮装置 | |
JPH0645947A (ja) | 直交変換装置及び逆直交変換装置 | |
JPH0595483A (ja) | 画像圧縮装置及び方法 | |
JPH04222121A (ja) | データ圧縮装置 | |
JPH05153402A (ja) | 離散コサイン変換器 | |
Mietens et al. | New scalable DCT computation for resource-constrained systems | |
JPH06274524A (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 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080904 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080904 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090904 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090904 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100904 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110904 Year of fee payment: 13 |
|
EXPY | Cancellation because of completion of term | ||
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110904 Year of fee payment: 13 |