JP3046115B2 - 離散コサイン変換器 - Google Patents

離散コサイン変換器

Info

Publication number
JP3046115B2
JP3046115B2 JP31686491A JP31686491A JP3046115B2 JP 3046115 B2 JP3046115 B2 JP 3046115B2 JP 31686491 A JP31686491 A JP 31686491A JP 31686491 A JP31686491 A JP 31686491A JP 3046115 B2 JP3046115 B2 JP 3046115B2
Authority
JP
Japan
Prior art keywords
dct
look
circuit
matrix
rows
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP31686491A
Other languages
English (en)
Other versions
JPH05153402A (ja
Inventor
眞成 浅野
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.)
Fujifilm Holdings Corp
Original Assignee
Fuji Photo Film Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Photo Film Co Ltd filed Critical Fuji Photo Film Co Ltd
Priority to JP31686491A priority Critical patent/JP3046115B2/ja
Priority to US07/982,623 priority patent/US5361220A/en
Publication of JPH05153402A publication Critical patent/JPH05153402A/ja
Application granted granted Critical
Publication of JP3046115B2 publication Critical patent/JP3046115B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、離散コサイン変換(D
CT)に関し、特に乗算器を用いずに離散コサイン変換
の演算を行なう離散コサイン変換器に関する。
【0002】画像データの圧縮に適した変換方法として
DCTが知られている。画像データを周波数成分に変換
する順方向のDCTと逆変換を行なって画像データを復
元する逆方向のDCT(IDCT)があるが、本明細書
では両者をDCTと呼び、一方のみを指す時は順方向
(順)DCT、逆方向(逆)DCTと呼ぶことにする。
【0003】
【従来の技術】近年、データ圧縮方式として直交変換の
1手法であるDCTが広く採用されるようになった。
【0004】図3に、DCTを用いた画像データ圧縮技
術を示す。図3(A)に示すように、対象とする画面5
0を小さな小区画51に分割する。小区画51は、たと
えば8画素×8画素の大きさを有する。すなわち、小区
画51は64個の元を含む8行8列の正方行列を構成す
る。画面50の画像情報は、小区画51毎に処理され
る。
【0005】図3(B)に示すように、小区画51の画
像データ52を順方向DCT処理装置53によって処理
し、DCT係数(F)54を得る。このDCT係数54
は、画像情報を行方向、列方向に周波数解析したものと
なっている。DCT係数54をスレッショルド処理装置
55によって処理し、一定値以下のデータを切り捨て
る。次に、ノンゼロのデータ長を短縮するために、ノー
マライズ処理装置56によってデータを一定値で除算
し、短縮したデータ57を得る。
【0006】このようにして得られた画像データ57
は、ノンゼロのものとゼロのものが混在するが、周波数
の高い成分はほとんどゼロとなる。ノンゼロデータにつ
いては、ハフマン符号化を行ない、さらにデータを圧縮
する。また、ゼロのデータについては、ランレングス符
号化を行ない、ゼロの塊を1つのデータとして扱い、さ
らにハフマン符号化を行なう。
【0007】このようにして得られた圧縮データから元
の画像を再生するときは、まずハフマン符号化の復号化
等を行なって画像データ57を再現した後、ノーマライ
ズ処理の逆処理を行ない、順方向DCT処理の逆処理で
ある逆方向DCT処理を行なうことによって画像情報を
再現する。
【0008】図3(C)は、図3(B)に示す順方向D
CT処理の内容を示す。画像データfを、転置コサイン
係数行列Dt とコサイン係数行列Dとで挟み、行列演算
を行なうことによってDCT係数Fを得る。
【0009】なお、この順方向DCT処理をさらに展開
すると、 F=Dt fD={(fD)t D}t と表せる。すなわち、画像データfにコサイン係数行列
Dを右側から乗算して行方向の周波数解析を行ない、得
られた行列を転置して行方向と列方向を変換した後、再
びコサイン係数行列Dを乗算して列方向の周波数解析を
行ない、転置することによって行方向、列方向を元の状
態に戻し、画像情報を行方向、列方向に周波数解析した
DCT係数Fを得ることができる。このような演算を行
なうには、行列の乗算を2回繰り返す必要がある。
【0010】図4にブロックサイズが8×8の場合の順
DCT変換、逆DCT変換に用いる変換係数行列を示
す。図4(A)にコサイン係数行列Dと転置コサイン係
数行列Dt を示す。
【0011】順DCT変換を上述の数式にしたがって行
なう場合は、メモリにコサイン係数行列Dを記憶させ、
入力信号とコサイン係数行列Dとの乗算(積和演算)を
行なえばよい。
【0012】なお、逆DCT変換はDCT係数Fから画
像情報fを再現する演算となり、 f=DFDt =(Ft t t t ={(FDt t t t と表される。
【0013】したがって、逆DCT変換を行なうには、
DCT係数Fに転置コサイン係数行列Dt を右から乗算
し、得られた結果を転置して行と列を交換し、再び転置
コサイン係数行列Dt を右から乗算し、得られた結果を
転置して行と列を元の状態に戻せばよい。
【0014】画像データfとコサイン係数行列Dが共に
8×8行列の場合、乗算は8×8行列の乗算となる。こ
のような順DCTまたは逆DCT処理を行なうために
は、8個の乗算器を用いることになる。
【0015】ところで、コサイン係数行列Dを観察する
と、各列において、第1〜4行と第5〜8行とが符号を
別にして対称的な構成になっていることがわかる。すな
わち、コサイン係数行列Dのある列の要素をD0 〜D7
とすると、D0 =±D7 、D 1 =±D6 、D2 =±
5 、D3 =±D4 の関係がある。また、この符号は列
によって定まっており、奇数列でプラス、偶数列でマイ
ナスとなる。
【0016】したがって、これら係数の等しい乗算はま
とめることができ、4回の乗算で1回の積和演算を実行
することが可能となる。このような変換行列の対称性を
利用して、高速アルゴリズムを用いたDCT変換も提案
されている。
【0017】ところで、DCT変換における積和演算の
係数は、ブロックサイズで決まり、固定されている。そ
こで、演算結果をROMに格納し、これをルックアップ
テーブルとして使うことでDCT演算を行なうことがで
きる。
【0018】行列乗算の一手法として、DA(Dist
ributed Arithmetic)アルゴリズム
が知られている。Y=A・Xの行列乗算を考える。Xは
mビットとする。1列分の行列演算は次のように表され
る。
【0019】
【数1】
【0020】ここで、X=−x(m-1) ・2m-1 +ΣM
(M) ・2M である。そこで、(i)式は、 Yi =Σj ijj =Σj (−Aijj (m-1) ・2(m-1) +ΣM ijj (M) ・2M ) …(ii) となる。ただし、x(M) はXのMビット目を表し、その
値は“0”または“1”である。
【0021】(ii)式はさらに、 Yi =−(Σj ijj (m-1) )・2m-1 +ΣM (Σj ijj (M) ) ・2M と表される。右辺第1項はサインビットを示し、第2項
がXの各ビットに対する乗算を示す。ここで、xj (M)
は、“0”か“1”であり、Aがn行n列の行列であれ
ば、Aijのj=0〜(n−1)の加算となる。
【0022】そこで、( )内をxj によるルックアッ
プテーブルで構成すると、ビット位置によるシフトと加
減算によって行列乗算のYi を計算することができる。
DCT演算をハードウエア構成する場合、乗算器を用い
高速化しようとすると、ハードウエアが大きくなるた
め、乗算器はなるべく用いたくない。DAアルゴリズム
は乗算器を用いずに乗算を行なう手法として適切であ
る。
【0023】図5は、このようなDAアルゴリズムを用
いたDCT演算回路の例を示す。図5(A)はDCT演
算回路の全体構成を概略的に示し、図5(B)はその1
次元処理ユニットの構成を示し、図5(C)は1次元処
理ユニット内のDA積和演算ブロックの構成を示す。
【0024】図5(A)において、入力データが1次元
DCT処理ユニット61に入力し、ルックアップテーブ
ルを用いてDCT変換がされ、出力がシフト/ラウンド
回路62に供給される。シフト/ラウンド回路62はD
CT処理によってビット数の増加した信号を再び所望ビ
ット数に揃え、丸め処理を行なう。
【0025】シフト/ラウンド回路62の出力は、転置
用RAM63に供給され、行と列が交換される。転置さ
れた信号は、別の1次元DCT処理ユニット64に供給
され、他の方向の周波数解析がなされ、信号がシフト/
ラウンド回路65に供給される。シフト/ラウンド回路
65は再びビット数を揃え、丸め処理を行なって出力デ
ータを形成する。
【0026】図5(B)は、図5(A)に示す1次元D
CT処理ユニット61、64の各々の構成を概略的に示
す。すなわち、1次元DCT処理ユニットにおいては、
入力データが前処理回路66に供給され、適当な入力信
号の組み合わせが形成される。このようにして変換され
た入力信号は2組に分けて構成されたDA積和演算ブロ
ック67、68に入力される。
【0027】たとえば、画像信号が8×8ブロックの場
合、入力データとして8個の入力信号が供給され、前処
理回路66が供給する4組の信号がDA積和演算ブロッ
ク67に供給され、他の4組がDA積和演算ブロック6
8に供給される。
【0028】このように、DA積和演算ブロックを2つ
に分割することは、ルックアップテーブルの大きさを大
きくしすぎないためと、DCT変換行列の対称性を利用
するのに好ましい。DA積和演算ブロック67、68の
出力信号は、後処理回路69に供給され、ビット数の整
理や丸め処理が行なわれる。このようにして、後処理回
路69から出力データが発生する。
【0029】図6は、このようなルックアップテーブル
を用いたDCT演算処理回路の基本構成を示す。n個の
入力信号がDCT変換のルックアップテーブルを格納す
る係数ROM81にアドレスとして供給され、ルックア
ップテーブルによって積和演算が行なわれる。ルックア
ップテーブル81の出力信号は、入力xj がサインビッ
トの場合、信号Tsによって信号反転した後、アダー8
3を介して出力信号Y i を形成する。
【0030】なお、この出力信号Yi は、係数回路84
によって1/2倍され、アダー83に帰還される。次
に、1ビット上の入力信号がルックアップテーブル81
に供給され、同様の演算が行なわれて出力信号がアダー
83に供給される。この出力信号に対し、係数回路84
を介して桁合わせされた前回の演算結果が加算され、新
たな出力信号Yi が形成される。この際、ビット位置を
揃えるために係数回路84が用いられている。
【0031】各入力信号が15ビットとすると、演算は
通常15サイクルが必要である。しかし、8×8ブロッ
クをリアルタイムに処理するには、パイプラインを用い
ても8サイクルの間に計算を終えなければならない。そ
こで、入力信号を2ビットづつ取り出し、ルックアップ
テーブルを2倍にすることによって8サイクルで演算処
理を終了させることが可能となる。
【0032】ところで、図4(A)の変換行列から明ら
かなように、コサイン係数行列Dは、各列の1〜4行と
5〜8行が対称的な構成を有する。このため、変換行列
の1〜4行と5〜8行に対しては同一のルックアップテ
ーブルを用いることができる。したがって、入力する8
個の信号を4個づつの組に分け、それぞれに対しルック
アップテーブルを用いることが有効となる。
【0033】図7は、このように8×8構成のDCT変
換において入力信号を4個づつの組に分け、各信号を2
ビットづつ供給するDCT演算回路の構成を示す。係数
ROM81aと、係数ROM81bとは同一構成のルッ
クアップテーブルを有し、4個の入力信号の上位ビット
の組と、下位ビットの組とを入力する。下位ビットを入
力するルックアップテーブル81bの出力信号は、係数
回路86によって1/2倍され、上位ビット用ルックア
ップテーブル81aの出力信号とアダー82において加
算される。
【0034】また、入力がサインビットの場合、信号T
sによって符号反転され、加算され、アダー83を介し
て出力信号Yi を形成する。また、この出力信号Y
i は、係数回路87を介してアダー83に帰還される。
係数回路87は出力信号Yi を1/4倍してアダー83
に帰還する。これは、演算が2ビットづつ行なわれるた
め引き続く演算において同一の数値が4倍の大きさにな
るのを調整するものである。
【0035】図5(C)は、図5(B)の1次元DCT
処理ユニットにおいて用いられるDA積和演算ブロック
の構成を示す。各DA積和演算ブロックは、4組の入力
信号を2ビットづつ入力する。
【0036】これら2ビットづつの4組の入力信号は、
上位ビットと下位ビットに分割され、下位ビットは下位
ビット用ルックアップテーブル71aまたは72aに供
給され、上位ビットは上位ビット用ルックアップテーブ
ル71bまたは72bに供給される。
【0037】すなわち、下位ビット用ルックアップテー
ブル71a,72aと上位ビット用ルックアップテーブ
ル71b,72bは、ビット位置は異なるが、同一の組
み合わせの入力信号を受け、同一の変換を行なう。
【0038】下位ビット用ルックアップテーブル71
a、72aの出力信号は、係数回路73に供給され、1
/2倍されてアダー74に供給される。上位ビット用ル
ックアップテーブル71b、72bの出力信号は、直接
アダー74に供給される。
【0039】係数回路73によって上位ビットと下位ビ
ットの桁数が揃えられ、アダー74においてそれらの加
算が行なわれる。アダー74の出力信号は、アキュミュ
レータ75に供給され、累積和が形成される。アキュミ
ュレータ75は、アダー74、レジスタ78、シフタ7
9を含み、前回の出力信号がシフタ79によってビット
シフトされ、アダー77に帰還される。
【0040】このようにして、アダー77は前回の出力
信号と今回の出力信号を加算し、レジスタ78に記憶さ
せる。たとえば、下位ビットから順に計算する場合は、
シフタ79は出力を1/4倍して次回の計算との桁揃え
を行なう。上位ビットから計算が行なわれる場合は、シ
フタ79は出力信号を4倍し、次回の計算との桁合わせ
を行なう。
【0041】このようにして、図5(C)のDA積和演
算ブロックを用いてDCT演算が行なわれる。なお、逆
DCT演算の場合は、変換行列が図4(A)に示す転置
行列Dt となる。Dt は、変換行列Dのような対称性を
有さないが、奇数行と偶数行を分けて考えると、第1列
と第8列、第2列と第7列、第3列と第6列、第4列と
第5列がそれぞれ対称的な構成を有する。
【0042】したがって、逆DCT演算の場合は、変換
行列を奇数行と偶数行に分離することにより、順DCT
変換と同様のルックアップテーブルの縮小が行なえる。
表1に、図5(D)の構成を用いる場合のルックアップ
テーブルの内容を示す。
【0043】
【表1】
【0044】
【表2】
【0045】
【表3】
【0046】
【表4】
【0047】
【表5】
【0048】
【表6】
【0049】
【表7】
【0050】
【表8】
【0051】表1〜表8の順DCT用ルックアップテー
ブルは、変換行列の第1列から第8列までに対応するも
のであり、入力信号x1〜x4は、変換行列の第1行〜
第4行に対応する。
【0052】逆DCT用ルックアップテーブルは、表1
のNo. 0と表2のNo. 1が第1列および第8列に対応
し、No. 0が奇数行に対応し、No. 1が偶数行に対応す
る。同様に、逆DCT用ルックアップテーブルは、表3
のNo. 2と表4のNo. 3が第2行と第7行に対応し、表
5のNo. 4と表6のNo. 5が第3列と第6列に対応し、
表7のNo. 6と表8のNo. 7が第4列と第5列に対応す
る。
【0053】表1〜表8に示すルックアップテーブルの
数値を見ると、No.1、No. 3、No. 5、No. 7につい
ては、順DCT用ルックアップテーブルと逆DCT用ル
ックアップテーブの数値が同一である。したがって、こ
れらについてはルックアップテーブルを共用することが
できる。
【0054】基本的には図5(B)の8個のDA積和演
算ブロックの各々について、図5(C)に示すように4
つのルックアップテーブが必要であり、4×8=32個
のルックアップテーブルを用いて1次元DCT変換がな
される。2次元DCT変換を行なうためには、32×2
=64個のルックアップテーブルが必要となる。
【0055】しかしながら、表1〜表8に示すように、
順DCT演算と逆DCT演算についてルックアップテー
ブルを共用できる部分があり、これらを共用させると必
要なルックアップテーブルの数は48個となる。
【0056】また、表1に示すルックアップテーブルは
さらに高い対称性を有し、これらを利用することによっ
て構成をさらに簡単化することが可能である。図8は、
ルックアップテーブルの対称性を用いてDCT変換回路
の構成をさらに簡単化した例を示す。図8(A)に示す
ように、たとえば順DCT用ルックアップテーブルNo.
0は、内容の数値から均等に8192を減算すると、表
の上半分と下半分が対称的な構成となっている。
【0057】つまり、ビットx4で他のビットを排他的
にORし、さらに符号を反転させればルックアップテー
ブルの内容を半分にすることができる。図8(B)はこ
のような対称性を用いたDA積和演算ブロックの構成を
示す。ルックアップテーブル88a、88bは、図7に
示すルックアップテーブル81a、81bの半分の内容
を有し、排他的OR回路が形成する3種類の入力信号を
入力する。
【0058】信号x4は、さらに排他的OR回路を介し
て符号反転器に供給される。その他の構成は図7と同様
である。
【0059】
【発明が解決しようとする課題】以上説明したように、
ルックアップテーブルを用いたDCT演算処理装置によ
れば、乗算器を使わずにDCT演算を実行することがで
きる。
【0060】しかしながら、ルックアップテーブルの容
量が大きいと、ルックアップテーブルを実現するための
ROMのチップ占有面積が大きくなり、チップサイズ、
消費電力が増大する。
【0061】本発明の目的は、チップサイズを減少し、
消費電力を低減することのできる離散コサイン変換器を
提供することである。
【0062】
【課題を解決するための手段】本発明の離散コサイン変
換器は、複数の元の入力データを各元について2ビット
ずつサンプルしてルックアップテーブルを用いて順/逆
離散コサイン変換(DCT)演算を行なう離散コサイン
変換器であって、ルックアップテーブルが順DCT変換
行列、逆DCT変換行列についてそれぞれ2つの元の2
ビット分毎に作成されている。
【0063】
【作用】ルックアップテーブルがDCT変換行列の2つ
の の2ビット分ごとに作成されているため、順DCT
変換と逆DCT変換について、ルックアップテーブルの
共用部分を拡大することができる。
【0064】
【実施例】図1に本発明の基本概念を示す。ルックアッ
プテーブル1a、1bは、それぞれ入力信号I1、I2
およびI3、I4の2ビットづつを入力し、対応する出
力をアダー2に供給する。
【0065】ルックアップテーブル1a、1bは同じビ
ット位置の入力信号を演算するので、その出力のビット
位置は等しく、単にアダー2で加算される。アダー2の
出力はアキュミュレータ6に供給され、累積和が演算さ
れる。アキュミュレータ6は、アダー3、レジスタ4、
シフタ5を含み、入力信号はアダー3を介してレジスタ
4に記憶され、レジスタ4の出力はシフタ5を介してア
ダー3に帰還されている。
【0066】したがって、レジスタ4に記憶された前回
の値が、シフタ5を介してアダー3に供給され、新たな
信号との加算が行なわれる。このようにして、累積和が
演算される。
【0067】ルックアップテーブル1c、1dは、ルッ
クアップテーブル1a、1b同様にそれぞれ2つの信
号、I5、I6およびI7、I8の2ビット分づつを入
力し、対応する出力信号を供給する。
【0068】このように、各入力信号を2ビットづつ入
力するルックアップテーブルを構成し、信号の組み合わ
せを選択することにより、同一のルックアップテーブル
を順DCT変換、逆DCT変換に共通に使用できる可能
性が増大する。
【0069】比較のため、図2に従来の技術による対応
する回路構成を示す。この回路構成は図5(C)に示す
ものに対応している。また、図2の構成は、図1の構成
の上半分または下半分に対応するものである。
【0070】4種類の入力信号I1〜I4の2ビット分
づつは、下位ビットの4個と上位ビットの4個に分割さ
れ、それぞれルックアップテーブル71a、72aおよ
び71b、72bに入力される。
【0071】ここで、ルックアップテーブル71a、7
1bは順DCT変換に用いるものであり、ルックアップ
テーブル72a、72bは、逆DCT変換に用いるもの
である。また、ルックアップテーブル71a、72a
は、ルックアップテーブル71b、72bとそれぞれ等
しい内容を有する。これは単にビット位置の異なる同一
種類の入力信号を演算するためである。
【0072】また、このような入力信号に対しては、順
DCT変換に対するルックアップテーブルと逆DCT変
換に対するルックアップテーブルとの共通部分は制限さ
れていた。
【0073】図1の構成に示すような、同一種類の信号
を2ビット分入力信号として取り込むことにより、入力
信号の種類が少なくなり、入力信号の組み合わせを選択
することによって順DCT変換と逆DCT変換に対して
ルックアップテーブルの共通部分を増大することが可能
となる。
【0074】以下ブロックサイズが8×8の場合につい
て説明する。ブロックサイズが8×8の場合、変換行列
は図4(A)に示すものとなる。なお、この表の数値
は、2次元DCT変換を行なったとき、3ビット分ずれ
た値を与える。
【0075】順DCT変換に用いる変換行列Dは、先に
説明したように、各列において上半分と下半分が対称的
な構成を有する。したがって、各列について4つの入力
信号を準備すればDCT変換演算を行なうことができ
る。
【0076】ところで、逆DCT変換に用いる変換行列
t は、変換行列Dと行列が反転しているため、Dのよ
うな対称性は失われている。しかしながら、Dt の第1
列目に着目すると、その偶数行は図4(B)左側の列に
示すように、5681、4816、3218、1130
であり、順DCT変換に用いる変換行列Dの2列目上半
分と同一である。また、Dt の8列目の偶数行の数値
は、図4(A)に示すように、−5681、−481
6、−3218、−1130であり、第1列目の偶数行
と符号が異なるが、絶対値の等しいものである。
【0077】したがって、図4(A)に示すように、順
DCT変換に用いる変換行列Dの2列目の上下は対称的
構造を有し、それらはそれぞれ逆DCT変換に用いる変
換行列Dt の第1列目、第8列目の偶数行とも対称的な
構成を有している。この対称性を用いれば、ルックアッ
プテーブルを共通化することができる。
【0078】なお、順DCT変換に用いる変換行列Dの
第2列目と逆DCTに用いる変換行列Dt の第1列目、
第8列目の対称性を説明したが、同様の対称性はDの第
4列目とDt の第2列目および第7列目、Dの第6列目
とDt の第3列目および第6列目、Dの第8列目とDt
の第4列目、第5列目についても成立している。
【0079】さらに、Dt の奇数行に対しても、Dとの
共通部分を見出すことができる。たとえば、Dt の第1
列目について奇数行を取り出すと、図4(C)に示すよ
うに4096、5352、4096、2217となる
が、このうち2つの4096は、Dの1列目の第1行、
第3行と等しい。
【0080】また、Dt の第2列目の奇数行について
は、図4(C)に示すように、第3行目、第7行目がD
の3列目の第2行、第4行と等しい。このように、Dt
の奇数行のみを取り出し、Dの要素と比較すると、その
うち半分のものに共通性が見出される。
【0081】図4(B)、(C)から明らかなように、
逆DCT変換に用いる変換行列Dt については、奇数行
と偶数行に分け、それぞれについて改めて行数を付与す
ると、順DCT変換に用いる変換行列との共通性が明ら
かである。
【0082】そこで、順DCT変換の変換行列Dについ
ては各列の1行目と3行目の組、2行目と4行目の組を
作り、逆DCT変換行列については、同様に奇数行の1
行目と3行目の組、2行目と4行目の組および偶数行の
1行目と3行目の組、2行目と4行目の組を入力信号の
組み合わせとすればよい。このような組み合わせによる
2ビットずつの変換テーブルを表9〜表16に示す。
【0083】
【表9】
【0084】
【表10】
【0085】
【表11】
【0086】
【表12】
【0087】
【表13】
【0088】
【表14】
【0089】
【表15】
【0090】
【表16】
【0091】なお、表9〜表16において順DCT用ル
ックアップテーブルのNo. 0〜No.7は、変換行列Dの
第1列〜第8列に相当する。また、逆DCT用ルックア
ップテーブルは、No. 0とNo. 1がDt の第1列目奇数
行と偶数行に対応し、同様、No. 2とNo. 3がDt の第
2列目の奇数行と偶数行に対応し、No. 4とNo. 5がD
t の第3列目の奇数行と偶数行に対応し、No. 6とNo.
7がDt の第4列目の奇数行と偶数行に対応する。
【0092】表9〜表16中、No. 0の2、4行、No.
2の1、3行、No. 4の2、4行、No. 6の1、3行の
みが順DCT用変換ルックアップテーブルと逆DCT用
変換ルックアップテーブルで異なる部分である。したが
って、これらのルックアップテーブルを構成するには、
ROMの数は2×8+4=20でよい。2次元DCT演
算装置を構成するには、20×2=40個のROMで足
りることになる。
【0093】ところで、さらにルックアップテーブルの
内容を観察すると、実線の枠で囲まれた部分のうちその
半分、すなわち、順DCT用ルックアップテーブルのN
o. 0とNo. 4および逆DCT用ルックアップテーブル
のNo. 2とNo. 6については、2ビットずつの各入力信
号の和または差を形成し、12ビットのビットシフトを
行なうことによって形成することができる。すなわち、
これらについてはルックアップテーブルを用いなくて
も、加減算回路とビットシフタを用いれば演算を行なう
ことができる。
【0094】このような構成とすると、20個のROM
のうち4個をさらに省略することができ、必要なROM
は16個となる。2次元DCT演算装置を実現するに
は、16×2=32個のROMで足りることになる。
【0095】上述のテーブルを用いたDCT演算装置の
ROM累積部の部分を図9に示す。係数ROM1a、1
bは、ルックアップテーブルを有し、それぞれ2ビット
の2種類の入力x1、x3、およびx2、x4を入力信
号とする。入力信号の組み合わせは4ビットとなるの
で、係数ROMの内容は16ワードとなる。
【0096】なお、一方の係数ROM、図示の場合、係
数ROM1bには、アダー7、ビットシフトによる係数
回路8、セレクタ9がさらに接続されている。この要素
7、8、9による回路は、順DCT変換と逆DCT変換
に対するルックアップテーブルが異なる場合に入力信号
の和または差から出力信号を形成するためのものであ
り、順DCTと逆DCTに対するルックアップテーブル
が同一の場合には省略される。
【0097】また、係数ROM1bにビットシフトによ
る演算回路を付加した場合を示したが、ブロックによっ
てはこの演算回路は係数ROM1a側に接続される。セ
レクタ9は、係数ROM1bの出力か、ビットシフトに
よる出力の何れかを選択するためのものである。
【0098】係数ROM1aの出力信号とセレクタ9の
出力信号はアダー2で加算され、アダー3を介して出力
される。出力信号は、ビットシフトによる係数回路5を
介してアダー3に帰還される。
【0099】すなわち、引き続く演算においてビット位
置が順次変化するため、位置合わせを行なって累積和を
形成する。また、入力がサインビットの場合、信号Ts
により符号反転される。
【0100】図9に示すようなROMアキュミュレータ
を用いたDCT演算回路の全体を図10に概略的に示
す。入力信号は入力バッファ11に入力され、入力バッ
ファからバタフライ回路12またはバイパス13を介し
てパラレル/シリアル変換回路14に供給される。
【0101】順DCTの場合には入力信号は入力バッフ
ァ11からバタフライ回路12に供給され、2種類の入
力信号の和、差すなわち、f0+f7、f1+f6、f
2+f5、f3+f4、f0−f7、f1−f6、f2
−f5、f3−f4が形成される。これらの信号がパラ
レル/シリアル変換回路14に供給され、それぞれ2ビ
ットずつが出力される。
【0102】逆DCTの場合には、入力バッファ11の
出力は、バイパス13を介して直接パラレル/シリアル
変換回路14に供給される。パラレル/シリアル変換回
路においては、奇数番目の入力信号f0+f2、f4、
f6と、偶数番目の入力信号f1、f3、f5、f7が
それぞれ分離されて収容される。
【0103】パラレル/シリアル変換回路14の出力
は、それぞれ4つずつまとめられ、2つの8ビット信号
を形成する。この信号は、図9に示すような構成を複数
有するROM累積器10に供給され、演算位置によって
ルックアップテーブルを選択し、出力信号が形成され
る。ROM累積器10の出力信号は、バタフライ回路1
6またはバイパス17を介して出力バッファ18に供給
される。このようにして出力バッファ18から出力信号
が供給される。
【0104】なお、順DCTにおいては、ROM累積器
10の出力信号はバイパス17を通過し、逆DCTにお
いてはROM累積器10の出力信号はバタフライ回路1
6を通って出力バッファ18に供給される。このように
して、1次元のDCT演算が行なわれる。
【0105】図11は、2次元DCT演算装置の構成を
示す。図11において、入力バッファ11、バタフライ
回路12、バイパス13、パラレル/シリアル変換回路
14、ROM累積器10a、バタフライ回路16、バイ
パス17、出力バッファ18は、図10に示す対応部分
と同等のものである。
【0106】すなわち、これらの要素により、1次元D
CT変換が実施される。1次元DCT変換された信号
は、転置ROM20によって行と列とが変換され、入力
バッファ21に供給される。入力バッファ21、バタフ
ライ回路22、バイパス23、パラレル/シリアル変換
回路24、ROM累積器10b、バタフライ回路26、
バイパス27、出力バッファ28は、他の1次元DCT
演算回路を構成し、2次元目のDCT演算を実行する。
このようにして、2次元方向でDCT処理された出力信
号が形成される。
【0107】また、表9〜表16に示すルックアップテ
ーブルの値は、表中の最上位ビットb2によって排他的
論理和を取ることにより、その容量を半分にすることが
できる。たとえば、順DCT用ルックアップテーブルN
o. 0に関しては、表中の値から平均値12288を減
算することにより、上半分と下半分が対称的な構成とな
る。このような構成によれば、ルックアップテーブルの
容量を1/2にすることができる。
【0108】図12はこのような構成を用いたROM累
積器の構成を示す。4ビットの入力信号b2、b1、a
2、a1は、b2と残りの3つb1、a2、a1につい
てそれぞれ排他的論理和が取られ、3つの信号となって
係数ROM31a、31bに入力される。係数ROM3
1a、31bは3ビットの入力信号を受け、8ワード構
成となる。その他の点は、図9の回路と同等である。
【0109】以上説明したように、離散コサイン変換器
において、逆DCT用変換行列については奇数行と偶数
行に分離し、順DCTと逆DCTについて、2種類の信
号を2ビットずつ組み合わせることにより、DCT演算
のルックアップテーブルの共通部分を大幅に増加するこ
とができる。
【0110】以上実施例に沿って本発明を説明したが、
本発明はこれらに制限されるものではない。たとえば、
種々の変更、改良、組み合わせ等が可能なことは当業者
に自明であろう。
【0111】
【発明の効果】以上説明したように、本発明によれば、
離散コサイン変換器のルックアップテーブルを減少する
ことができる。
【0112】離散コサイン変換器を実現する半導体装置
のチップサイズ、消費電力を低減することができる。
【図面の簡単な説明】
【図1】本発明の基本概念を示すブロック図である。
【図2】従来の技術を示すブロック図である。
【図3】従来の技術によるDCTを用いた画像データ圧
縮技術を説明する概略図である。
【図4】DCTの変換行列を説明するための概略図であ
る。
【図5】従来の技術によるDCT演算装置の構成を説明
するブロック図である。
【図6】従来の技術によるDCT演算装置の要部を示す
ブロック図である。
【図7】従来の技術によるDCT演算装置の要部を示す
ブロック図である。
【図8】従来の技術によるDCT演算装置の要部を示す
表およびブロック図である。
【図9】本発明の実施例によるDCT演算装置の要部を
示すブロック図である。
【図10】本発明の実施例によるDCT演算装置の1次
元演算部分を示すブロック図である。
【図11】本発明の実施例による2次元DCT演算装置
の構成を示すブロック図である。
【図12】本発明の他の実施例によるDCT演算装置の
要部を示すブロック図である。
【符号の説明】
1 ルックアップテーブル 2、3 アダー 4 レジスタ 5 シフタ 6 アキュミュレータ 7 アダー 8 係数回路(シフタ) 9 セレクタ 10 ROM累積器 11 入力バッファ 12 バタフライ回路 13 バイパス 14 パラレル/シリアル変換回路 16 バタフライ回路 17 バイパス 18 出力バッファ 20 転置RAM 21 入力バッファ 22 バタフライ回路 23 バイパス 24 パラレル/シリアル変換回路 26 バタフライ回路 27 バイパス 28 出力バッファ
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI H04N 1/415 G06F 15/66 330H 7/30 H04N 7/133 Z (56)参考文献 米国特許5361220(US,A) Proceeding of SPI E−The Internationa l Society for Opti cal Engineering Vo l.1244 1990 p234−239 (58)調査した分野(Int.Cl.7,DB名) G06F 17/14 G06T 1/00 G06T 9/00 H03M 7/30 H04N 1/41 H04N 1/415 H04N 7/30 INSPEC(DIALOG) JICSTファイル(JOIS) WPI(DIALOG)

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数元の入力データを各元について2ビ
    ットずつサンプルしてルックアップテーブルを用いて順
    /逆離散コサイン変換(DCT)演算を行なう離散コサ
    イン変換器であって、 ルックアップテーブルが順DCT変換行列、逆DCT変
    換行列についてそれぞれ2つの元の2ビット分毎に作成
    されている離散コサイン変換器。
  2. 【請求項2】 前記離散コサイン変換が8×8のブロッ
    クサイズを有し、前記ルックアップテーブルは順DCT
    変換、逆DCT変換に共通なものが12個種類ある請求
    項1記載の離散コサイン変換器。
  3. 【請求項3】 さらに、前記入力データの所定の元のも
    のをバイパスするビットシフト回路を含む請求項1ない
    し2記載の離散コサイン変換器。
JP31686491A 1991-11-29 1991-11-29 離散コサイン変換器 Expired - Lifetime JP3046115B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP31686491A JP3046115B2 (ja) 1991-11-29 1991-11-29 離散コサイン変換器
US07/982,623 US5361220A (en) 1991-11-29 1992-11-27 Discrete cosine transformation with reduced components

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31686491A JP3046115B2 (ja) 1991-11-29 1991-11-29 離散コサイン変換器

Publications (2)

Publication Number Publication Date
JPH05153402A JPH05153402A (ja) 1993-06-18
JP3046115B2 true JP3046115B2 (ja) 2000-05-29

Family

ID=18081766

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31686491A Expired - Lifetime JP3046115B2 (ja) 1991-11-29 1991-11-29 離散コサイン変換器

Country Status (1)

Country Link
JP (1) JP3046115B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11769275B2 (en) 2017-10-19 2023-09-26 Interdigital Vc Holdings, Inc. Method and device for predictive encoding/decoding of a point cloud

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2997613B2 (ja) * 1993-10-26 2000-01-11 株式会社東芝 離散コサイン変換装置
JP6102707B2 (ja) * 2013-12-05 2017-03-29 Nttエレクトロニクス株式会社 デジタル符号化装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Proceeding of SPIE−The International Society for Optical Engineering Vol.1244 1990 p234−239

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11769275B2 (en) 2017-10-19 2023-09-26 Interdigital Vc Holdings, Inc. Method and device for predictive encoding/decoding of a point cloud

Also Published As

Publication number Publication date
JPH05153402A (ja) 1993-06-18

Similar Documents

Publication Publication Date Title
US5361220A (en) Discrete cosine transformation with reduced components
EP0353223B1 (en) Two-dimensional discrete cosine transform processor
US5249146A (en) Dct/idct processor and data processing method
US20070094320A1 (en) Parallel Adder-Based DCT / IDCT Design Using Cyclic Convolution
JP2821489B2 (ja) 静止画像圧縮処理装置及び方法
JPH03165192A (ja) 2元独立変換の演算のためのシステムおよび回路
US6574648B1 (en) Dct arithmetic device
EP1018082A1 (en) Variable block size 2-dimensional inverse discrete cosine transform engine
CN114007079A (zh) 变换电路、方法、装置和编码器
JP3046115B2 (ja) 離散コサイン変換器
JP2997613B2 (ja) 離散コサイン変換装置
JPS6037514B2 (ja) 2次元離散フ−リエ変換計算装置
JP3046116B2 (ja) 離散コサイン変換器
KR0139699B1 (ko) 이산 코사인 변환장치
US5671169A (en) Apparatus for two-dimensional inverse discrete cosine transform
JPH0645948A (ja) 直交変換装置及び逆直交変換装置
JP3155383B2 (ja) 2モード処理装置、2次元変換装置及び静止画像データの圧縮システム
JP3214831B2 (ja) データ処理装置
JP3547567B2 (ja) 離散コサイン変換器
JP4405452B2 (ja) 逆変換回路
JP2822684B2 (ja) 離散コサイン変換装置および逆離散コサイン変換装置
KR0154919B1 (ko) 2차원 역이산 코사인 변환 회로
JPH0645947A (ja) 直交変換装置及び逆直交変換装置
JPH05225224A (ja) 離散コサイン変換器
Kalyani et al. Fpga implementation of fully parallel distributed arithmetic based dct architecture

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20000229

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

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20080317

Year of fee payment: 8

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20080317

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090317

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20090317

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100317

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100317

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20110317

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20110317

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20120317

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20120317

Year of fee payment: 12