JP3577325B2 - 離散余弦変換(dct)によるデータ処理方法、dct方法、およびdctデータ処理回路 - Google Patents

離散余弦変換(dct)によるデータ処理方法、dct方法、およびdctデータ処理回路 Download PDF

Info

Publication number
JP3577325B2
JP3577325B2 JP25974092A JP25974092A JP3577325B2 JP 3577325 B2 JP3577325 B2 JP 3577325B2 JP 25974092 A JP25974092 A JP 25974092A JP 25974092 A JP25974092 A JP 25974092A JP 3577325 B2 JP3577325 B2 JP 3577325B2
Authority
JP
Japan
Prior art keywords
memory
product
values
given
par
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP25974092A
Other languages
English (en)
Other versions
JPH05260313A (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 JPH05260313A publication Critical patent/JPH05260313A/ja
Application granted granted Critical
Publication of JP3577325B2 publication Critical patent/JP3577325B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Theoretical Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Complex Calculations (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

【0001】
【技術分野】
この発明は、いわゆる「離散余弦変換」(DCT)を達成するためのディジタル信号処理のための方法および回路に関する。
【0002】
【背景技術】
この型の変換はディジタル出力値または係数のマトリックス(またはブロック)と、ディジタル入力値のマトリックスとの間に対応を生じさせる。この変換はもし対応する信号が変換なしに伝送されれば可能であろう速度より速い速度で伝送されるように画像を圧縮するために特に有用である。
【0003】
余弦変換はそれ自体は何らデータ圧縮を達成することはなく、この圧縮は変換回路の下流に位置決めされたエンコーダによって行なわれる。しかしながら、変換回路は容易に圧縮され得る入力データをエンコーダで与えることによって圧縮をより容易にする。この変換回路は黒および白または色画像のディジタル伝送に非常によく使用され、この例を参照することによってこの発明を説明することにする。したがって、ディジタル入力値のマトリックスはピクセルマトリックスに対応するであろう。余弦変換を達成するために、伝送されるべき画像または枠はn行およびn列のブロックに配列され、各ブロック点はディジタル値、たとえば、8−ビットの符号化された値によって表わされるピクセルに対応する。この値は、たとえばピクセルの輝度またはクロミナンス成分に対応する。
【0004】
余弦変換はnxnピクセルのブロックとnxn係数のブロックとの間に対応を生じさせる。ブロックの座標xおよびyを有するピクセルの値をf(x,y)と呼ぶ。F(u,v)は余弦変換に従って計算され、かつ変換されたブロックにおいて線uと列vとの交点に位置決めされる係数を示す。最も一般的な場合において、n=8ならびにx、y、uおよびvは0から7の範囲であろう。
【0005】
以下の説明では、8x8ピクセルブロックのこの具体例のみを考慮することにする。当業者はnxnピクセルブロックに対する対応する公式を容易に計算するまたは専門文献で見つけることが可能であろう。このように、考慮される具体例において、余弦変換は以下の関係によって示される。
【0006】
【数5】
Figure 0003577325
【0007】
この公式において、
Kは2の積分ベキとして表わされる標準化係数であり、
x、yは開始ブロックのピクセルの空間座標であり、
uおよびvは変換されたブロックの係数の空間座標であり、
f(x,y)は開始ブロックのピクセルの値であり、
F(u,v)は余弦変換の係数の値であり、
c(u)、c(v)はu,v=0に対して1/√2であり、u,v≠0に対して1である。
【0008】
達成されるべきDCT作用素の計算ベキは秒当たりの処理されるべきブロックの数に依存する。従来のまたは高品位テレビ画像のために、数100キロブロックが秒当たり処理されなければならず、この目的を達成するために、ビヨン・ジー・リー(Byong Gi Lee)アルゴリズムのような複素アルゴリズム関数を実現化する専用集積回路に頼るものもある。これらの回路は非常に速い処理動作を達成するが、様々な動作を同時に達成するために数多くの構成要素を必要とし、それゆえに集積回路上の大きな表面を占有するという欠点を有する。
【0009】
かかる回路はまた解決するべき問題がより単純であり、かつ秒あたり少数のブロックしか処理する必要がない、たとえばビデオホン型の画像を処理する場合にもよく使用され、この場合約10キロブロック/秒の処理が十分であるように思われる。
【0010】
このように、この発明の目的は小型の集積回路の形で達成され得る離散余弦変換によってデータを処理するための方法および回路を提供することである。
【0011】
【発明の概要】
この目的を達成するために、この発明は、以下の関係に従ってN×Nデータの表f(x,y)とN×N係数の表F(u,v)との間に対応を生じさせるDCTデータ処理方法を提供し、
【0012】
【数6】
Figure 0003577325
【0013】
ここでKは2の定数ベキであり、
x,yはデータ表のデータの座標を示し、
u,vは係数表の係数の座標を示し、
p(x,u)=c(u).cos[(2x+1)uπ/2N]
p(y,v)=c(v).cos[(2y+1)vπ/2N]
であり、
c(u)、c(v)はu,v=0に対して1/√2であり、u,v≠0に対して1である。
この方法は以下のステップを達成することによって1対の座標u,vに対する各係数F(u,v)を順次決定することからなり、そのステップは第1の対x,yに対して、係数P=p(x,u).p(y,v)の絶対値および符号を表でサーチするステップと、pの絶対値にf(x,y)を乗算するステップと、加算または減算によってその乗算の結果を符号の関数でアキュムレータに導入するステップと、さらに対x,yのすべての値に対してこの動作を再開し、かつアキュムレータによって与えられた結果を抽出するステップとである。
【0014】
この発明の一実施例に従って、表でサーチするステップは以下のように達成される、つまり、xおよびuによってアドレス指定された第1の表で、p(x,u)の符号および項n(x,u)(1からN−1の範囲である)をサーチするステップを含み、p(x,u)=Sgn[p(x,u)].|cos[n(x,u)π/2N]|であり、yおよびvによってアドレス指定された第2の表で、p(y,v)の符号および項n(y,v)(1からn−1の範囲である)をサーチするステップを含み、p(y,v)=Sgn[p(y,v)].|cos[n(y,v)π/2N]|であり、さらにn(x,u)およびn(y,v)によってアドレス指定された第3の表で、係数Pの絶対値をサーチするステップとで達成される。
【0015】
この方法の他の局面は以下のステップを達成することによって1対の座標u,vに対する各係数F(u,v)を順次決定することであり、そのステップはデータ表の中心軸に対して組毎に対称的な位置に対応する4つの対x,yに対して、係数P=p(x,u).p(y,v)の絶対値を表でサーチするステップと、これらの4つの対に対する加算および/または減算によって対応するデータの値を結合するステップとを含み、各動作の符号は4つのデータの相対的な位置の関数で決定され、結合された値に係数Pの値を乗算するステップと、その乗算の結果をアキュムレータに導入するステップと、さらに対x,yのすべての値に対してその動作を再開するステップとを含み、xおよびyは0から(N/2)−1の範囲である。
【0016】
他のアプローチに従って、この発明はブロックの各ケースが座標x,yに対応するメモリにストアされたN×Nデータのブロックのデータ(f(x,y))をDCT処理して、係数のブロックの係数(F(u,v))を与えるための方法を提供し、この方法はメモリのケースをアドレス指定するステップと、そのケースの内容を乗算器の第1の入力に与えるステップと、第1の表に、1からN−1の範囲のパラメータn(x,u)およびn(y,v)のすべての値に対して
P=cos[n(x,y)π/2N].cos[n(y,v)π/2N]
の値をストアするステップと、第2の表に、一方でuとx、他方でvとyの値の関数で余弦関数の符号の値、およびn(x,y)とn(y,v)の値をストアし、かつこれらの値を第1の表をアドレス指定するために使用するステップと、各クロックパルスでデータブロックのケースの値に第1の表の値を乗算するステップと、さらにxおよびyのすべての値に対して第2の表によって決定された符号の関数で加算または減算によってその乗算の結果を累積するステップとを含む。
【0017】
この発明はさらにN×Nデータの表f(x,y)とN×N係数の表F(u,v)との間に対応を生じさせるDCTデータ処理回路を提供し、データ処理回路はデータ表メモリと、積
P=|cos[n(x,u)π/2N].cos[n(y,v)π/2N]|のメモリとを含み、
p(x,u)=Sgn[p(x,u)].|cos[n(x,u)π/2N]|
p(y,v)=Sgn[p(y,v)].|cos[n(y,v)π/2N]|であり、
ここでn(x,u)およびn(y,v)は1からN−1の範囲の整数であり、積メモリをアドレス指定するp(x,u)およびp(y,v)の符号ならびにn(x,u)およびn(y,v)の値の表と、値対(u,v)、および各対(u,v)に対して、対のすべての値(x,y)を順次与える座標発生器と、Pのデータメモリのデータ組合せとの積を計算する乗算器と、さらに符号表によって与えられる符号の関数でその乗算の結果を以前の結果で減算するまたは加算するトータライザとを含む。
【0018】
相互的に、この発明は以下の関係に従ってN×N係数(F(u,v))の表とN×Nデータ(f(x,y))の表との間に対応を生じさせる逆離散余弦変換によって係数を処理するための回路を提供し、
【0019】
【数7】
Figure 0003577325
【0020】
ここでKは2の定数ベキであり、
x,yはデータ表のデータの座標を示し、
u,vは係数表の係数の座標を示し、
c(u)、c(v)はu,v=0に対して1/√2であり、u,v≠0に対して1である。
【0021】
この回路は係数表のメモリと、積
P=cos[n(x,u)π/2N].cos[n(y,v)π/2N]
のメモリとを含み、ここでn(x,u)およびn(u,v)は1から(N/2)−1の範囲の整数であり、cos[n(x,u)π/2N]およびcos[n(y,v)π/2N]ならびにn(x,u)およびn(y,v)の符号の表と、データ表の第1の象限およびuとvとが偶数であるか奇数であるかに依存して+1または−1に等しい信号par(u)およびpar(v)に対応する値の対(x,y)、ならびに各対(x,y)に対して対のすべての値(u,v)を順次与える座標発生器と、pの係数メモリの係数組合せとの積を計算する乗算器と、さらに符号表ならびにpar(u)およびpar(v)の値によって与えられる符号の関数で、以前の結果からその乗算の結果を減算して、または以前の結果にその乗算の結果を加算して、それぞれf(x,y)、f(x′,y)、f(x,y′)およびf(x′,y′)を与える4つのトータライザとを含み、ここでx′=N−1−xおよびy′=N−1−yである。
【0022】
この発明の前述および他の目的、特徴、局面および利点は添付の図面に関連して考えられるこの発明の以下の詳細な説明から明らかになるであろう。
【0023】
【発明を実行するためのベストモード】
この発明は上述のDCT公式(1)の分析に基づく。先行技術において、これらの方法を実現化するために使用される方法および回路は、本質的に益々多くなる電子構成要素の数を犠牲にして、最大可能数の動作を同時に達成することを目標としているが、この発明の目的は可能な最も単純な方法で一連にこれらの機能を達成し、かつ可能な限り少ない電子構成要素を使用する一方で、秒当たり約2、30キロブロックの画像シーケンスを処理するために十分な計算力を与えることである。
【0024】
上の公式(1)は以下のように書直すことが可能であり、
【0025】
【数8】
Figure 0003577325
【0026】
ここで
P(x,u,y,v)=p(x,u)p(y,v)
であり、
Figure 0003577325
であり、かつ
Figure 0003577325
であり、ここで
n(x,u)またはn(y,v)=1ないし7であり、さらに
Sgn[p(x,u)]またはSgn[p(y,v)]=±1はpの符号を示す。
【0027】
これらの公式において、
もしu=0であれば、余弦は1に等しく、かつ
p(x,u)=c(u)=1/√2=cos4π/16であり、
もしu≠0であれば、c(u)=1であり、かつ
p(x,u)=cos[(2x+1)uπ/16]である。
【0028】
同一の計算がc(v)およびp(y,v)に当てはまる。
これはp(x,u)またはp(y,v)が正または負の符号を有するπ/16の第1の象限倍数の弧の余弦の絶対値に常に等しいことを意味する。したがって、F(u,v)の各値はf(x,y)の正または負の符号を有する型|cos[n(x,u)π/16].cos[n(y,v)π/16]|の係数Pとの64の積の和に対応する。一方、|P|は49の異なる値をとる。
【0029】
このように、この発明はDCT処理のための基礎となるべき各積cos[n(x,u)π/16].cos[n(y,v)π/16]の一方で符号および他方で絶対値を表にストアすることを提供する。より特定的に、この発明は第1のメモリで2つの表を使用することを提供し、そのうちの一方はxおよびuの現在値を受け、かつn(x,u)およびSgn(x,u)を与え、第2の表はyおよびvの現在値を受け、かつn(y,v)およびSgn(y,v)を与える。n(x,u)およびn(y,v)の値は双方ともPの絶対値(余弦積)を含む第2のメモリのためのアドレスして機能する。上の公式に戻って、8x8のブロックの具体例において、表は相対的に小さなサイズ(第1の表の各々に対して64の4−ビットワード、および第2のメモリに対して典型的に12のビットの49のワード)を有することが認められるであろう。
【0030】
図1はこの発明に従う第1のDCT回路実施例を表わすブロック図である。
処理されるべきブロックx,yのピクセルは処理されるべき8x8のブロックの64のピクセルを最初に含むメモリ1にストアされる。実務において、次のブロックの記憶の間の時間の浪費を回避するために、メモリのサイズを二倍にし、かつそれに二重接続ポートを与えることが賢明である。1つのブロックが処理されている間に、次のブロックが先行技術に従って同時に獲得されるであろう。
【0031】
リードオンリメモリ(ROM)3はすべての積
P=|P(x,u,y,v)|=|cos[n(x,u)π/16].cos[n(y,v)π/16]|、
つまり49の係数を含む。座標発生器y、x、u、vはuおよびvの値の64の組合せを与え、かつ各対(u,v)に対して、64のクロックパルス内でx,yの64の可能性のある値、つまりブロック1の64のメモリピクセルを走査する。座標x,yはランダムに走査されるが、対(u,v)の走査順序は回路出力で入手されるべき順序の関数で選択されることが認められるであろう。たとえば、もしCCITT H261標準要求に応じる出力を与えることが所望されれば、マトリックスu,vの走査はジグザグ型で達成されるであろう。
【0032】
表7は各対(x,u)に対してp(x,u)の符号の対応する値(以下Sgn[p(x,u)]またはより単純にSgn(x,u)と呼ぶ)を与える。この表はまたメモリ3のアドレスの半割りn(x,u)を与える。表9はyおよびvに対して類似の機能を達成する。
【0033】
各対x,yに対して、乗算器11は現在のピクセルの値f(x,y)のPとの積を与える。この積はトータライザ13に与えられ、トータライザは64のクロックパルス毎に対u,vに対して対応する係数F(u,v)の値を与える。トータライザ13は加算器−減算器15およびアキュムレータ17を含む。アキュムレータ17は64のクロックパルスの間加算器15の出力の代数和をストアする。加算器は第1の入力でアキュムレータ17に累積された部分結果を受け、かつその第2の入力で表7および表9の出力で入手されたSgn(x,u)およびSgn(y,v)の代数積を与える符号判別回路19の出力に依存する符号(+)または(−)を有する現在積P.f(x,y)を受ける。
【0034】
図1の回路を使って、64のクロックパルスは各係数F(u,v)を計算するために必要であり、かつ故にブロックの64のDCT係数を計算するために64.64=4096クロックパルスが必要である。図1の回路で最も遅い動作速度を有する要素は乗算器11である。16−MHzクロックパルス内で1つの乗算を行なうことを可能にする技術は4キロブロック/秒の計算ベキを可能にする。
【0035】
一方、図1の回路の大きさのより正確な近似値を有するために、8x8ブロックに対して座標発生器は3ビットで各座標を与え、かつもしブロックメモリのピクセルが鮮明度を損なわないように8ビットで規定されれば、Pの値は12ビットで実質的に規定されなければならないことが認められるであろう。
【0036】
この発明の第2の実施例において、係数F(u,v)が16−MHzクロックパルス内で11−ビット数に12−ビット数を乗算する単一の乗算器を使用することによって伝えられる速度を増大することが工夫される。この目的を達成するために、係数pのより正確な分析が考慮に入れられる。したがって、これらの係数が以下の特徴を満たすことを認めることが可能である。
【0037】
もしx′=7−xであれば、
それならもしuが偶数であればp(x′,u)=+p(x,u)であり、
もしuが奇数であればp(x′,u)=−p(x,u)である。
【0038】
uのパリティを示すために表記par(u)を使用することによって、この式は以下のように書くことが可能であり、
p(x′,u)=par(u).p(x,u)
ここで、par(u)はもしuが偶数であれば+1であり、もしuが奇数であれば−1である。
【0039】
このように上の式(1)に戻って、かつ前の見解を考慮に入れることによって、以下のように書くことが可能である。
【0040】
【数9】
Figure 0003577325
【0041】
図2に示されるように、この式はピクセルx,yの表の中心軸に対して対称的な4組のピクセル、つまりピクセル(x,y)(x′,y)(x,y′)(x′,y′)に対して、乗算係数Pはピクセルに対応するデータがその位置の関数で正または負の符号を与えられるとすれば同一であろうことを意味する。しかしながら、二重和は上に示されたように、8x8=64の代わりに4x4=16項のみに関する。2つの結論が引出される、つまり一方で図1のメモリ7および9のサイズは減少されることが可能であり、他方で係数F(u,v)は64の代わりにわずか16のクロックパルス内で計算することが可能である。このように、計算速度は4倍速くなりかつ約16キロブロック/秒の速度、つまり上に示したようにビデオホンデータを処理するのに十分速い速度を与える。
【0042】
図3はこの発明の第2の実施例を実現化する回路を概略的に示す。図1の回路と同様に、図3の回路はブロックメモリ1、係数Pのメモリ3、データ発生器5、ROM3をアドレス指定するためにそれぞれ値n(x,u)およびn(y,v)を与え、かつまたPの符号を与える回路19にp(x,u)およびp(y,v)の符号を与える表7および9を含む。Pの絶対値は乗算器11に与えられ、その出力は周期的に連続値F(u,v)を与えるトータライザ13に接続される。
【0043】
図1の回路との主要な違いは座標発生器5がメモリ1の4つのピクセル、つまりピクセルf(x,y)、f(x′,y)、f(x,y′)およびf(x′,y′)を同時にアドレス指定することである。総和回路21は、
f(x,y)+par(u)f(x′,y)+par(v)[(f(x,y′)+par(u)f(x′,y′)]
の値を与える。
【0044】
回路21の出力は乗算器11の第2の入力に与えられる。
説明された実施例において、総和回路21は3つの加算器/減算器を含む。第1のもの23はf(x,y)+par(u).f(x′,y)を与え、かつ座標発生器5から入力par(u)を受ける。 同様に、第2のもの24はf(x,y′)+par(u).f(x′,y′)を与え、かつ座標発生器5から入力par(u)を受ける。第3のもの25は最終結果を与え、かつ座標発生器5から信号par(v)を受ける。
【0045】
この実施例において、各対の値u,vに対して、yの4つの値およびxの4つの値のみが走査され、それは上述のように総和回路21を付加することを犠牲にして動作持続期間を減少させる。回路21のみが加算器を含むので、それは製造するのが特に単純でありかつ集積回路上の小さな表面を占有するであろう。
【0046】
この発明をよりよく理解するために、図4はuの8つの値およびxの4つの走査された値の各々に対応するn(x,u)およびSgn(x,u)の値の表を示す(nは公式(2)および(3)で規定されたことが思い出されなければならない)。
【0047】
【逆離散余弦変換】
逆離散余弦変換8x8は以下のように書かれる。
【0048】
【数10】
Figure 0003577325
【0049】
この等式は直接DCTを決定するための等式(1)と同一の形式を有する。したがって、図1の回路は修正することなくf(x,y)およびF(u,v)を交換することによって逆DCTを計算することが可能である。
【0050】
しかしながら、係数Pの因数分解を利用する図3の回路は可逆的ではない。しかし、図1の回路に対して回路の動作を因数4だけ加速するための対応する構造は逆DCTの計算に適合可能である。
【0051】
実際、同一の積
F(u,v).p(x,u).p(y,v)
はその符号を除いては4つのピクセルの和の計算に含まれることが認められる。言換えれば、逆離散余弦変換の作用素は直接DCT計算機と同一の性能を有するように、64のクロックパルス内で4つのピクセルを同時に計算することが可能である。前のようにx′=7−xおよびy′=7−yを考慮すると、以下の関係(5)が得られる。
【0052】
【数11】
Figure 0003577325
【0053】
これらの関係を利用する回路は図5に示される。
図5において、前の図面の要素に類似する要素は同一の参照番号で示される。この回路はブロックメモリ1を含むが、ピクセルf(x,y)のブロックの代わりに、それらはここで係数F(u,v)のブロックである。前のように、ROM3はPの値、つまりcos(nπ16)の積の絶対値を含み、かつ座標発生器5ならびに項n(x,u)およびn(y,v)の値を決定する表7および9に関連する。乗算器11は一方でブロックメモリ1から値F(u,v)を直接受け、かつ他方でROM3から値Pを受ける。乗算の結果は4つのトータライザ31、32、33、34に同時に与えられ、それらに対して加算または減算選択が回路19からの出力Sgn、および座標発生器5の出力で供給されるようなuおよびvのパリティ値の関数で決定される。4つのトータライザの出力は同時に与えられるので、それらは適当な速度で出力線40に与えられる前にレジスタ35、36、37、38で一時的にストアされる。
【0054】
しかしながら、線40上のピクセル出力は等式(5)の要求によって課せられたシーケンスで与えられる。つまり、ピクセルマトリックスの中心軸に対して対称的な組に配列された4つの位置に対応するピクセルは順次与えられる。これはピクセルマトリックスの所望の走査シーケンスに一般に対応しない。したがって、出力42上の所望の順序でピクセルを再配列するために出力順列回路41を与えることが時として必要であろう。
【0055】
付加的に、逆DCTの計算に関して、DCT動作は最も高い振幅を有する係数のみを伝送するように係数を後に定量化するために一般に達成されることが認められるであろう。したがって、逆変換動作が行なわれなればならないとき、項の大半がゼロである係数F(u,v)のマトリックスが一般に入手される。したがって、様々な方法が図1または図5に示されるような回路による計算サイクルにゼロ係数をさらすことを回避するために使用され得る。これはたとえばブロックメモリおよび座標発生器を以下のように修正することによって達成され得る。
【0056】
− ブロックメモリは係数リストを含むメモリになる。同一のブロックの非ゼロ係数は変数長のリストの形式で連続メモリアドレスでそこにストアされる。このメモリの各ワードは一方でF(u,v)、つまり係数の値を、かつ他方でこの係数(各3ビット)の座標u,vを含み、最後にリスト終端ビットfbを含む。
【0057】
− 座標発生器はxおよびyを伝達し続けるが、uおよびvの値はブロックメモリの出力によって与えられる。最後に、ブロックメモリは次のリストを処理する前に64回(図1の例において)、または16回(図5の例において)リストを走査するようにアドレス指定されなければならない。
【図面の簡単な説明】
【図1】この発明の第1の実施例を示す図である。
【図2】この発明の第2の実施例で実現化される方法を理解するために有用な例証的なブロック図である。
【図3】この発明の第2の実施例を示す図である。
【図4】uおよびxの様々な値に対する係数値の表を示す図である。
【図5】逆離散余弦変換を決定するための回路を示す図である。
【符号の説明】
5 座標発生器
11 乗算器
13 トータライザ
17 アキュムレータ
21 回路

Claims (8)

  1. 以下の関係
    Figure 0003577325
    に従ってN×N個のデータf(x,y)のデータ表N×N個の係数F(u,v)の係数表との間に対応を生じさせる離散余弦変換(DCT)データ処理回路におけるデータ処理方法であって、ここで
    Kは2の定数ベキであり、
    x,yはデータ表の中のデータの座標を示し、
    u,vは係数表の中の係数の座標を示し、
    p(x,u)=c(u).cos[(2x+1)uπ/2N]
    p(y,v)=c(v).cos[(2y+1)vπ/2N]であり、
    c(u),c(v)はu,v=0に対して1/√2であり、u,v≠0に対して1であり、前記方法は以下のステップを達成することによって1対の座標u,vに対する各係数F(u,v)を順次決定することからなり、そのステップは、
    データ表の中心軸に対して対称的な値の組によって配列される位置に対応する4つの対(x,y)、(x,y’)、(x’,y)、および(x’,y’)に対して、積P(x,u,y,v)=p(x,u).p(y,v)の絶対値を表でサーチするステップと、
    これら4つの対に対応するf(x,y)、f(x,y’)、f(x’,y)、およびf(x’,y’)の値を演算によって組合わせるステップとを含み、前記演算は、加算および/または減算であって、前記演算の種類は、uとvが奇数か偶数かで決定され、
    前記組合された値と前記サーチされた積P(x,u,y,v)の絶対値とを乗算するステップと、
    前記乗算の結果をアキュムレータ(17)に導入するステップと、
    さらに対x,yのすべての値に対して上記ステップを再開するステップとを含み、xおよびyは0から(N/2)−1の範囲である、離散余弦変換(DCT)データ処理回路に
    おけるデータ処理方法。
  2. 前記データ処理方法は
    p(x,u)=Sgn[p(x,u)].|cos[n(x,u)π/2N]|、
    p(y,v)=Sgn[p(y,v)].|cos[n(y,v)π/2N]|であり、ここでn(x,u)およびn(y,v)は1からN−1の範囲の整数であり、積P(x,u,y,v)=p(x,u).p(y,v)であり、
    前記データ表をデータ表メモリ(1)に予めストアするステップと
    前記積P(x,u,y,v)の絶対値の表を積メモリ(3)に予めストアするステップと、
    前記積メモリ(3)をアドレス指定するためのn(x,u)の値およびp(x,u)の符号を定めた表を予めメモリ(7)にストアするステップと、
    前記積メモリ(3)をアドレス指定するためのn(y,v)の値およびp(y,v)の符号を定めた表を予めメモリ(9)に予めストアするステップとをさらに含み、
    前記再開するステップは、値対(u,v)、および各対(u,v)に対して、対(x、y)のすべての値を順次与え、
    前記データ処理方法は、さらに、
    前記データ表メモリ(1)に、前記再開するステップで与えられた(x,y)に対応するf(x,y)、f(x,y’)、f(x’,y)、およびf(x’,y’)を与えさせ るステップと、
    前記メモリ(7)に、前記再開するステップで与えられた(x,u)に対応するp(x,u)の符号と、n(x,u)の値を与えさせるステップと、
    前記メモリ(9)に、前記再開するステップで与えられた(y,v)に対応するp(y,v)の符号と、n(y,v)の値を与えさせるステップとを含み、
    前記サーチするステップは、前記与えられたn(x,u)およびn(y,v)の値を使用して、前記積メモリ(3)に、前記再開するステップで与えられた(x,y,u,v)に対応する積P(x,u,y,v)の絶対値を与えさせ、
    前記組合わせるステップは、前記与えられたf(x,y)、f(x,y’)、f(x’,y)、およびf(x’,y’)の値を演算によって組合わせ、
    前記乗算するステップは、前記組合された値と、前記与えられた積P(x,u,y,v)の絶対値とを乗算し、
    前記導入するステップは、前記与えられたp(x,u)の符号およびp(y,v)の符号の関数で、前記乗算の結果を前の結果から減算するか、またはそれに加算する、請求項1記載のデータ処理方法。
  3. 以下の関係
    Figure 0003577325
    に従ってN×N個のデータf(x,y)のデータ表とN×N個の係数F(u,v)の係数表との間に対応を生じさせる離散余弦変換(DCT)データ処理回路であって、ここで、
    Kは2の定数ベキであり、
    x,yはデータ表のデータの座標を示し、
    u,vは係数表の係数の座標を示し、
    p(x,u)=c(u).cos[(2x+1)uπ/2N]、
    p(y,v)=c(v).cos[(2y+1)vπ/2N]であり、
    c(u),c(v)はu,v=0に対して1/√2であり、u,v≠0に対して1であ
    り、前記離散余弦変換(DCT)データ処理回路は、以下の手段によって1対の座標u,vに対する各係数F(u,v)を順次決定し、その手段は、
    データ表の中心軸に対して対称的な値の組によって配列される位置に対応する4つの対(x,y)、(x,y’)、(x’,y)、および(x’,y’)に対して、積P(x,u,y,v)=p(x,u).p(y,v)の絶対値を表でサーチする手段と、
    これら4つの対に対応するf(x,y)、f(x,y’)、f(x’,y)、およびf(x’,y’)の値を演算によって組合せる手段とを含み、前記演算は、加算および/または減算であって、前記演算の種類は、uとvが奇数か偶数かで決定され、
    前記組合された値と前記サーチされた積P(x,u,y,v)の絶対値とを乗算する手段と、
    前記乗算の結果をアキュムレータ(17)に導入する手段と、
    さらに対x,yのすべての値に対して上記ステップを再開する手段とを含み、xおよびyは0から(N/2)−1の範囲である、離散余弦変換(DCT)データ処理回路。
  4. 前記離散余弦変換(DCT)データ処理回路は、
    p(x,u)=Sgn[p(x,u)].|cos[n(x,u)π/2N]|、
    p(y,v)=Sgn[p(y,v)].|cos[n(y,v)π/2N]|であり、ここでn(x,u)およびn(y,v)は1からN−1の範囲の整数であり、積P(x,u,y,v)=p(x,u).p(y,v)であり、
    前記データ表を記憶するデータ表メモリ(1)と、
    前記積P(x,u,y,v)の絶対値の表を記憶する積メモリ(3)と、
    前記積メモリ(3)をアドレス指定するためのn(x,u)の値およびp(x,u)の符号を定めた表を記憶するメモリ(7)と、
    前記積メモリ(3)をアドレス指定するためのn(y,v)の値およびp(y,v)の符号を定めた表を記憶するメモリ(9)とをさらに備え
    前記再開する手段は、値対(u,v)、および各対(u,v)に対して、対(x、y)のすべての値を順次与える座標発生器(5)であり
    前記データ表メモリ(1)は、前記座標発生器(5)で与えられた(x,y)に対応するf(x,y)、f(x,y’)、f(x’,y)、およびf(x’,y’)を与え
    前記メモリ(7)は、前記座標発生器(5)で与えられた(x,u)に対応するp(x,u)の符号と、n(x,u)の値を与え
    前記メモリ(9)は、前記座標発生器(5)で与えられた(y,v)に対応するp(y,v)の符号と、n(y,v)の値を与え
    前記サーチする手段は、前記与えられたn(x,u)およびn(y,v)の値を使用して、前記積メモリ(3)に、前記座標発生器(5)で与えられた(x,y,u,v)に対応する積P(x,u,y,v)の絶対値を与えさせ
    前記組合わせる手段は、前記与えられたf(x,y)、f(x,y’)、f(x’,y)、およびf(x’,y’)の値を演算によって組合わせ
    前記乗算する手段は、前記組合された値と、前記与えられた積P(x,u,y,v)の絶対値とを乗算する乗算器(11)であり
    前記導入する手段は、前記与えられたp(x,u)の符号およびp(y,v)の符号の関数で、前記乗算の結果を前の結果から減算するか、またはそれに加算するトータライザ(13)である、請求項3記載の離散余弦(DCT)データ処理回路
  5. 前記組合わせる手段は、
    {f(x,y)+par(u)f(x′,y)+par(v)[(f(x,y′)+par(u)f(x′,y′)]}
    を生成し、ここで
    x′=N−1−xであり、
    y′=N−1−yであり、
    par(u)およびpar(v)は、uまたはvが偶数であるか奇数であるかに依存して+1または−1である、請求項に記載の離散余弦(DCT)データ処理回路。
  6. 前記組合わせる手段は
    f(x,y)、f(x′,y)およびpar(u)を受けて、f(x,y)+par(u)f(x′,y)を与える第1の加算器/減算器(23)と、
    f(x,y′)、f(x′,y′)およびpar(u)を受けて、f(x,y′)+par(u)f(x′,y′)を与える第2の加算器/減算器(24)と、
    前記第1の加算器/減算器(23)により与えられたf(x,y)+par(u)f(x′,y)、前記第2の加算器/減算器(24)により与えられたf(x,y′)+par(u)f(x′,y′)、およびpar(v)を受けて、f(x,y)+par(u)f(x′,y)+par(v)[f(x,y′)+par(u)f(x′,y′)]を与える第3の加算器/減算器(25)とを含む、請求項に記載の離散余弦(DCT)データ処理回路。
  7. 以下の関係
    Figure 0003577325
    に従ってN×N個の係数F(u,v)の係数表N×N個のデータf(x,y)のデータ表との間に対応を生じさせる逆離散余弦変換によってデータを処理するための回路であって、ここで
    Kは2の定数ベキであり、
    x,yはデータ表のデータの座標を示し、
    u,vは係数表の係数の座標を示し、
    c(u),c(v)はu,v=0に対して1/√2であり、かつu,v≠0に対して1であり、前記回路は、
    前記係数表を記憶する係数表メモリ(1)と、
    積P(x、u、y、v)=cos[n(x,y)π/2N]×cos[n(y,v)π/2N]の絶対値の表を記憶する積メモリ(3)とを含み、ここでn(x,u)およびn(y,v)は1からN−1の範囲の整数であり、
    cos[n(x,u)π/2N]の符号とn(x,u)の値を定めた表を記憶するメモリ(7)と、
    cos[n(y,v)π/2N]の符号とn(y,v)の値を定めた表を記憶するメモリ(9)と、
    データ表の第1の象限に対応する値の対(x,y)と、各対(x,y)に対して、対(u、v)のすべての値と、uおよびvが偶数であるか奇数であるかに依存して+1または−1に等しい信号par(u)およびpar(v)を順次与える座標発生器(5)と、
    前記積メモリ(3)内の表によって与えられる積P(x、u、y、v)の絶対値と、前記係数表メモリ(1)内の係数表によって与えられるF(u、v)との積を計算する乗算器(11)と、
    前記メモリ(7)内の表によって与えられるcos[n(x,u)π/2N]の符号、前記メモリ(9)内の表によって与えられるcos[n(y,v)π/2N]の符号、par(u)の値、およびpar(v)の値の関数で、前の結果から乗算の結果を減算して、または前の結果に乗算の結果を加算して、それぞれf(x,y)、f(x′,y)、f(x,y′)およびf(x′,y′)を与える4つのトータライザ(13)とを含み、ここで
    x′=N−1−xであり、かつ
    y′=N−1−yである、回路。
  8. 前記係数表メモリ(1)は非ゼロ係数のみを含み、前記メモリの各ワードは前記係数の座標u,vが後に続く非ゼロ係数値を含む、請求項に記載の回路。
JP25974092A 1991-09-30 1992-09-29 離散余弦変換(dct)によるデータ処理方法、dct方法、およびdctデータ処理回路 Expired - Fee Related JP3577325B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9112277A FR2681962B1 (fr) 1991-09-30 1991-09-30 Procede et circuit de traitement de donnees par transformee cosinus.
FR91/12277 1991-09-30

Publications (2)

Publication Number Publication Date
JPH05260313A JPH05260313A (ja) 1993-10-08
JP3577325B2 true JP3577325B2 (ja) 2004-10-13

Family

ID=9417627

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25974092A Expired - Fee Related JP3577325B2 (ja) 1991-09-30 1992-09-29 離散余弦変換(dct)によるデータ処理方法、dct方法、およびdctデータ処理回路

Country Status (5)

Country Link
US (1) US5995990A (ja)
EP (1) EP0536062B1 (ja)
JP (1) JP3577325B2 (ja)
DE (1) DE69228036T2 (ja)
FR (1) FR2681962B1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07152730A (ja) * 1993-11-30 1995-06-16 Toshiba Corp 離散コサイン変換装置
US6295320B1 (en) * 1997-12-31 2001-09-25 Lg Electronics Inc. Inverse discrete cosine transforming system for digital television receiver
US6493737B1 (en) * 1998-06-29 2002-12-10 Stmicroelectronics S.R.L. Method and circuit for computing the discrete cosine transform (DCT) in microcontrollers
KR100275933B1 (ko) * 1998-07-14 2000-12-15 구자홍 엠펙디코더의 역이산여현변환장치
CA2347671A1 (en) * 1998-12-24 2000-07-06 Dupont Pharmaceuticals Company Succinoylamino benzodiazepines as inhibitors of a.beta. protein production
US7454439B1 (en) * 1999-11-24 2008-11-18 At&T Corp. System and method for large-scale data visualization
US8374237B2 (en) 2001-03-02 2013-02-12 Dolby Laboratories Licensing Corporation High precision encoding and decoding of video images
US20040111457A1 (en) * 2001-07-02 2004-06-10 Scholz John Arthur Method for executing a linear transformation
JP4175124B2 (ja) * 2003-01-24 2008-11-05 ソニー株式会社 画像信号処理装置
US20050281332A1 (en) * 2004-06-22 2005-12-22 Wai-Ming Lai Transform coefficient decoding
US7564874B2 (en) 2004-09-17 2009-07-21 Uni-Pixel Displays, Inc. Enhanced bandwidth data encoding method
US8090587B2 (en) * 2005-09-27 2012-01-03 Lg Electronics Inc. Method and apparatus for encoding/decoding multi-channel audio signal

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL8601183A (nl) * 1986-05-12 1987-12-01 Philips Nv Discrete cosinus transformatie-inrichting.
FR2603719B1 (fr) * 1986-09-04 1991-10-31 Duhamel Pierre Dispositif de determination de la transformee numerique d'un signal
US4791598A (en) * 1987-03-24 1988-12-13 Bell Communications Research, Inc. Two-dimensional discrete cosine transform processor
US5053985A (en) * 1989-10-19 1991-10-01 Zoran Corporation Recycling dct/idct integrated circuit apparatus using a single multiplier/accumulator and a single random access memory

Also Published As

Publication number Publication date
EP0536062A3 (ja) 1994-03-23
FR2681962B1 (fr) 1993-12-24
EP0536062B1 (fr) 1998-12-30
JPH05260313A (ja) 1993-10-08
EP0536062A2 (fr) 1993-04-07
FR2681962A1 (fr) 1993-04-02
DE69228036D1 (de) 1999-02-11
DE69228036T2 (de) 1999-07-01
US5995990A (en) 1999-11-30

Similar Documents

Publication Publication Date Title
EP0353223B1 (en) Two-dimensional discrete cosine transform processor
JP2931389B2 (ja) 単一のマルチプライヤ/アキュムレータと単一のランダムアクセスメモリを用いてdct/idct演算を繰り返す集積回路装置
JP2909333B2 (ja) 乗算不要の離散コサイン変換を実行する方法およびシステム
US5572236A (en) Digital image processor for color image compression
JP3577325B2 (ja) 離散余弦変換(dct)によるデータ処理方法、dct方法、およびdctデータ処理回路
US6052703A (en) Method and apparatus for determining discrete cosine transforms using matrix multiplication and modified booth encoding
JPS62269519A (ja) ディスクリ−トコサイン変換回路
JP2901213B2 (ja) カラー空間変換方法
US6643412B1 (en) Method and apparatus for high speed convolution
US5748770A (en) System and method for color recovery using discrete cosine transforms
US5434808A (en) Highly parallel discrete cosine transform engine
US6453332B1 (en) Method and apparatus for performing plural matrix multiplication operations
JPH0645948A (ja) 直交変換装置及び逆直交変換装置
JP3155383B2 (ja) 2モード処理装置、2次元変換装置及び静止画像データの圧縮システム
JP2790911B2 (ja) 直交変換演算装置
JP3576612B2 (ja) 色変換処理装置
KR910008454B1 (ko) 변환 회로
JPH08305684A (ja) バタフライ演算装置及び逆離散余弦変換装置
KR960014197B1 (ko) 파이프라인 분산연산을 이용한 8×8 이차원 이산여현 변환/역변환 처리장치
JPH05153402A (ja) 離散コサイン変換器
JPH07141325A (ja) 信号処理装置
JPH07319849A (ja) 離散コサイン高速演算器
JPH05153403A (ja) 離散コサイン変換器
JPH04293360A (ja) 直交変換演算装置
JPH06274524A (ja) 直交変換回路および逆変換回路

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040113

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20040412

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20040415

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040604

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040629

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040712

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees