JPH0468890A - 符号化装置 - Google Patents

符号化装置

Info

Publication number
JPH0468890A
JPH0468890A JP2179194A JP17919490A JPH0468890A JP H0468890 A JPH0468890 A JP H0468890A JP 2179194 A JP2179194 A JP 2179194A JP 17919490 A JP17919490 A JP 17919490A JP H0468890 A JPH0468890 A JP H0468890A
Authority
JP
Japan
Prior art keywords
data
circuit
calculation
arithmetic
encoding method
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
JP2179194A
Other languages
English (en)
Other versions
JP3004687B2 (ja
Inventor
Masato Yamazaki
真人 山崎
Yutaka Mazaki
裕 真崎
Noritsugu Matsubishi
松菱 則嗣
Hideo Mizutani
秀夫 水谷
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP17919490A priority Critical patent/JP3004687B2/ja
Publication of JPH0468890A publication Critical patent/JPH0468890A/ja
Application granted granted Critical
Publication of JP3004687B2 publication Critical patent/JP3004687B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野) 発明は、テレビ電話等の動画像通信や蓄積用動画像等の
画像符号化装置に6ける符号化方式に関するもので必る
(従来の技術) 従来、このような分野の技術とし・では、次のような文
献に記載されるものがあった。
文献ゴ:テレビジョン学会誌、迭fi[1BN988〉
大久保栄著「テレビ会議/電話方式の国際標準化動向J
P、12’″19文献2:吹扱敬彦著「TV頁画像多次
元信号処理」(昭63−1’、  15)日刊工業新聞
、0.252−256 文#X3:信学伎法誌、(1989)登載?荒木・青野
著rlcD89−54画像帯域圧縮、ディジタルフィル
タ用600M0PS画像処理プロセッサJ P、 89
−94文献4:アイ・イ・イ トランスアクション オ
ン コンピュータ(IEEE Transaction
 onComputers) 、c−24[10]  
(1975−10)  rA Proof of th
e Modified f3ooth’s Algor
ithm for Multipl 1catiOnJ
 P、 1014−1015 文献5:安田晴彦監修「画像伝送における高能率符号化
技術」 (昭62−3−31>(株)トリケプス、2.
23ゴー233 従来、テレビ会議やテレビ電話等(あける動画像の符号
化方式には、前記文献1に記載された、テレビ会議及び
テレビ電話方式に関する国際標準化の装置の勧告案がお
り、それを第2図及び第3図に示す。
第2図は、前記文献1に記載された従来のテレビ会議用
C0DEC(コープイック)の機能ブロック図である。
このC0DECは、符号化制御回路1を有し、それには
前処理回路2、ソース符号化回路3、ビデオマルチプレ
ックス符号化回路4、及び伝送バッファ5が接続され、
その伝送バッファ5に、伝送路符号化回路6が接続され
ている。
前処理回路2では、時間・空間フィルタにより、入力ビ
デオ信号を中間フォーマットに変換し、併せて雑音除去
フィルタリングを行う。ソース符号化回路3は、入力信
号に含まれる冗長度を除き、残りの信号を一定の誤差の
範囲内で量子化する。
ビデオマルチプレックス符号化回路4では、映像信号の
ほか、各種ブロック属性信号を可変長符号化した後、定
められたデータ構造の符号列に多重化する。伝送路符号
化回路6では、伝送チャネルのフォーマットに従い、マ
ルチメディア信号(映像、音声、データ、制御ンをビッ
ト列に多重化する。
第3図は、笥2図中のソース符号化回路3の構成ブロッ
ク図である。
この回路は、減算器10、フレーム内/問識別回路11
、有効/無効判定回路−12,8X8の離散余弦量@(
1:!、下、DCTという)回路−i 3、?千生回路
14、クラス分は回路″15、逆量子化回路 (Q ン
 16、遅延回路 (丁 ン 17、加算回路18、動
き補償予測回路19、及びループフィルタ20等で構成
されている。なお、pはフレーム内/間フラグ、tは有
/無効フラッグ、qはDC下係数の量子化インデックス
、QZは量子化回路種別、■は動きベクトル、CNはク
ラス、fはループフィルタ・オン/オフの信号である。
このソース符号化回路の符号化フルコ゛リズムは、テス
ト画像を定めて、その計算機シミュレーション結果を比
較評価することにより、先ず、動き補償予測回路19に
よって画素空間で動き補償フレーム間予測を行う。次に
、その子$:]誤差をDCT回路13によって8×8の
ブロックサイズで直交変換した俄、量子化回路14を用
いて、係数空間で量子化するハイブリッド方式で構成さ
れている。
この方式は、動き補償フレーム間予測により、時間的変
化に関する冗長度を、直交変換符号化によって、フレー
ム内の空間的変化に閣わる冗長度を除く方式である。
予測は通常、フレーム間であるが、シーンチェンジのと
きなど、映像入力がそのままDCT回路13に加えられ
る。ループフィルタ2oは、画質改善効果が大きく、ブ
ロック毎にオン/オフできる。これらフレーム内/間識
別回路11、及びループフィルタ20のオン/オフのブ
ロック属性情報は、サイド情報として送られるので、這
択の基準は設計者の自由に任せられる。
変換器はプログラマブルで、DCT回路13で行ってい
る。このDC下回路13は、ハイブリッド符号化に適し
ている、つまりフレーム間予測誤差信号に対しても通し
ている。一方、DCTには積和演算が必要なごとから、
送受のI D CTにあける演算方法ミスマツチによる
累積誤差が問題となる。量子化回路14もプログラマブ
ルである。
クラス分は回路15は、変換係数の伝送順序を指定する
ことにより、有意係数のブロック内分布の偏りを利用す
るためのものである。
DCT方式、及び動き補償フレーム間予測(以下、MC
という)の手法と実現手段については、前記文献2〜4
に記載されている。
DCT方式 画像信号の自己相関関数は負指数関数で近似できる。D
CTは、この近似を行った場合の最適直交変換(kar
hunen−Laeve変換、KL変換)に近い。
従来、ハードウェアが簡単なことがら重要視されていた
アダマール変換に代わって、効率を重視する立場から最
も一般的な直交変換となり、穆々の用途に採用されてい
る。
(a)00丁の定義 標本値系列X。、×1.・・・−xM−1を1ブロツク
として、変換行列[dk、□]により、変換係数y  
y 、・・・、yM−1に直交変換するものであ0・ 
 す る。
(b)逆DC丁(以下、IDCTという)00丁の変換
係数[’10.y1.・・・、 ’/M−1]が与えら
れて、これからもとの信号[XO、X、。
・・・、xM−1]を求める変換であり、次式のように
なっている。
do、m=ゴf7、  (m=o、1.2.−、M−1
>但し、 do、□、 dk、n+ : (1)式の00丁の場合
と同様 (C)DCTの物理的意味 OCTの用語の由来と物理的意味を考える。標本値系列
g  Ω 、 9g  を、↑=Oを対Oφ 1 °°
°  阿−1 称軸に反転する。この両者を合わせた2M個の標本値か
らなる系列を11を数的フーリI変換(以下、DFTと
いう)する。標本点がT/2だけずれていること、すな
わち、例えばqoがt=T/2の標本値であることと、
↑−〇に対して対称である(偶関数である)ことを考慮
すれば、sinの項はなくなり、次式のようになる。
十exp(+2πj(m+ )k/(2M))) ・・・・・・(3) DFTTは、本来のM個の標本値からなる系列に対して
は、M個の復素変換係@(あるいはsin 。
CO5合わぜてM個の項)が得られる。一方、DCTで
は、2M個のe4本値からなる仮想的系列に対し、2M
個の項が(停られるが、sinが浩えてM1間のCOS
の項のみか残る。
(d)2次元DCT アダマール変換と同様、DCTも2次元に拡張できる。
垂直N画素×水平M画素のブロック[Xn、mrを1ブ
ロツクとして、これに、まず走査線毎に水平方向のOC
T (即ち、[d、 ]  [Xr1. ]1)を行う
。次に、この結果について垂直方向のDCT [y    ]m=d N コ[[d、 ][X、、 
] ’ コln1m = [dNl[X、、 ][dM] ・・・・・・(4) を演算する。即ち、 を求める。変換の順序は、水平、垂直いずれが先でもよ
い。この2次元DCHの方が一般的であり、8×8(あ
るいは16X”+6>画素程度を1ブロツクとすること
が多い。
第4図は、前記文献3に記載された1次元DCTを実現
する回路構成例を示すもので、画像処理プロセッサのD
CTC−モード時行される行列演算のデータフローでお
る。
この画像処理プロセッサは、入力端子30を有じ、その
入力端子30にはレジスタ31を介して複数の演算ユニ
ット40−1〜40−8が接続されている。各演算ユニ
ット40−1〜40−8は1:1、同一の回路構成をな
し、乗算器4]、レジスタ42、加算器43、及びレジ
スタ44.45の縦続接続で、それぞれ構成されている
。この演算ユニット40−]〜40−8の出力側は、共
通ハス32及びレジスタ33を介して出力端子34に接
続されている。
この画像処理プロセッサは、(1)式のM=8の時のD
CTを実行する機能を有じ、その(1)式のM=8の時
の変換行列dk、mを次式に示す。
但し、 行列Z□= b 行列Z1= 行列z2= 行列Z5= 行列z6= 行列Z3 行列Z4= b 行列Z7= 各演算ユニット40−1〜40−8は、(6〉式の一行
分の演算を行う微開を有している。例えば、演算ユニッ
ト40−1は、ylを求める場合、(6)式から、次の
ような演算を行う。
即ち、時系列のデータX o 、 X 1 、 ・=、
 X 7が入力端子30から逐次入力され、レジスタ3
1を介して各演算ユニット40−1〜40−8へ送られ
る。演算ユニット40−1に入力された時系列のデータ
は、乗算器により、X□と1/2・CO3π/16の乗
算が行われ、その乗算結果が一時的にレジスタ42に格
納される。レジスタ42内の乗算結果は、加算器43に
より、クリアされたデータとの加算が行われ、その加算
結果がレジスタ44に格納される。次のタイミングで、
入力端子30からの次のデータ×1の値と1/2−CO
53π/16との乗算結果が格納されているレジスタ4
2から、その乗算結果を出力し、レジスタ44に格納さ
れている値との間で、加算器43によって加算が実行さ
れ、その加算結果が再びレジスタ44に格納される。こ
のような累積加算が8回実行されてYlの値が算出され
、その値Y1がレジスタ45に:格納されて一行分の演
算が終わる。この演算結果は、所定のタイミングで共通
バス32を介じて最終段のレジスタ33に格納された後
、出力端子34から出力される。
他の演算ユニット40−2〜40−8も、乗算を行う係
数を(6)式で示した値を使用することにより、前記と
同様の演算処理を行う。
この画像処理プロセッサは、マトリクス演算を行えるこ
とから、乗算を行う係数を変更することにより、逆DC
T、及び第3図のフィルタの演算も実行できる。
2次元DCTの回路構成例 第5図は、第4図の回路構成を用いて2次元DC丁を実
現する構成例を示すブロック図でめる。
この2次元OCT回路は、2個の1次元DC下回路50
−1.50−2バッフ7メモリ65とで構成されている
。入力データは、X方向の1次元DCT回路50−1で
処理された1麦、バッフ7メモリ65内に、横方向(X
方向)に格納される。
バッフ7メモリ65からデータを読み出す時は、縦方向
(X方向)に読み出し、次のX方向の1次元DCT回路
50−2より、もう1度、1次元OCTを実行すること
により、2次元DCTが実行されることになる。
1次元DCT回路50−1.50−2は、例えば数個の
乗算器で構成されている。このマトリクス演算に必要な
乗算を、少ないハード量で構成する手法てして、前記文
献4に記載されたブース(B○○th>のアルゴリズム
を用いた方法がある。次に、その方法を説明する。
例えば、Y=DXXの演算を行う時、係数りを″14ビ
ットの2の補数表堤の値とり、2次のBoctlを用い
て係数ビットを分解すると次の式になる。
・・・(7〉 但し、右上のかっこ内の数字は係数りの次数を示し、D
()はその次数のビット情報を示す。
この手法を用いて、次式(8)に示すマトリクス演算の
一行分計算を、次のようにして計算する。
Y=DO−XO+D1・Xi 十D2・X2+・・・・
−+D7X7 ・)2°・X・) 「 ・−(8−1) 以上の計痺式を実現する回路構成を第6図及び第7図に
示す。
第6図は2次3oothを用いた1行分のマトリクス演
算回路の構成ブロック図、第7図は第6図中のプロセッ
サエレメント(以下、Peという)の構成ブロック図で
ある。
第6図のマトリクス演算回路は、入力域子50a及び出
力端子50bを有し、その間に、レジスタ51−1〜5
1−6、Pe52−1〜52−7、及び累積加算器53
が接続されている。第7図のPeは、入力域子54a及
び出力端子54bを有し、その間に、バレルシフタ55
、符号反転器56、加算器57、レジスタ58,59、
及びハスコントローラ60が接続されている。さらに、
バレルシフタ55及び符号反転器56には、リード・オ
ンリ・メモリ(以下、ROMという)61が接続されて
いる。
第6図の各Pe 52−1〜52−7は、それぞれ上式
の 但し、n=”12,10.8.6,は2.0の計算を行
い、その出力結果は各peの共通のバスを通じて後段の
累積加算器53によって累積加算され、出力値Yを求め
る。
次に、第7図を用いて各Pe52−1〜52−7でどの
様にして(8−2>式の計算を行うかを説明する。(8
〜2)式のD Oは係数D の1ビツトデータなので、
かっこ内の計算の取りうる値は−2,−1,0,1,2
で、またこの値は係数値なのであらかじめ演算してあけ
る。この値−2,−”1.0.1.2と入力端子54a
から入力されたX、との乗算がバレルシフタ55と符号
反転器56によって行われ、その後段の加算器57とレ
ジスタ58によって構成される累積加算器によって累積
加算が演算され、その累積加算結果がレジスタ59に格
納される。つまり、この例のように8次元のマトリクス
演算の場合、8個の制御データがROM61に格納され
、かっこ内の計算結果の取りうる値−2,−1,0,1
,2,に応じてバレルシフタ55と符号反転器56を制
御する。バレルシフタ55では、入力データXiを1ビ
ットシフトするか、そのまま出力するか、もしくはゼロ
を出力するかが制御される。符号反転器56では、符号
を反転するかしないかが制御さ(n+1)   1(n
) れることによって(−D・   ・2  +D、 2 
 +[) 、 (n−1> 、 2°> x、 のsi
が行わn、] 後段の累積加算器によってΣが演算される。以上、レジ
スタ59に格納された演算結果1ま、バスコントローラ
60によって、バスに出力するタイミングが制御され、
出力域子54bを通じてバスに出力される。
第6図に示したように、Pe52−1〜52−7は7個
存在し、各Pe52−1〜52−7の演算結果が順にバ
スに出力され、累積加算器53に入力されて累積加算さ
れる。この累積加算結果が、1次元のDCT変換された
値に相当する。このようにして2次のBoothのアル
ゴリズムを用いて1次元のDCT変換を行うことができ
る。
MΩに±多二号北方ぶ この方式は、前記文献5に記載されているように、符号
化対象フレーム(現フレーム)を小さな矩形ブロックに
分割し、各ブロックに対して前フレーム中から最も近似
度の高い部分を検出し、これを予測符号として用いるも
のである。この動きベクトルの検出説明図を第8図(a
>〜(C)にホす。
第8図(a)は、現フレームFtと前フレームF   
の対応を示す図である。A(m、n)は↑−1 現フレームF の分割された1ブロツク、B(、。
0〉は前フレームFt−1のA(m、n)に対応する検
索対象ブロックである。A (yll、 n+ 1 >
はA(m、n)の隣接ブロック、B(m、n+1>はA
(m、n+’l)に対応する検索対象ブロック、じ位置
で同じ大きざのブロックである。
第8図(b)は、ブロックA(m、n)に対応する検索
範囲、即ちB(m、n)の大きさを示す図″:U・B 
s <1.。)(5,。)170′りA(m、n)とB
(m、n)内のどの部分と比較されるかを示すブロック
である。但し、D、 qは’ (m、n>  (0,O
)”位置を中心1そ0ブロツク位置で垂直方向にp、及
び水平方向にq画素分だけ移動させたことを示す。
’ (m、n>  (り、Q>” B(m−’)内1あ
るから、 ポす。
8(m、nン内でA(m、rl)と最も近魚度の高い部
分を検出するのに、D、Qを変化させ、A(m、n>”
’ (m、n)  (D、Q)”’分絶対値を求め、そ
の値が最も小さいものを近但度の高いものとする。即ち
、各り、 qに対し、となる。ここで、ブロックA(m
、n)内の各画素の値は、そのブロックの大きさをIM
XJNと¥”” x” (IMm+i、JNn+j)”
表9し、比較されるブロックB5 (m、n>(p、Q) 内の各画素の値を ”t−i (IMm+i+p、JNn+j+Q> ・・・・・・(9) の計算を行い、この計算結果が最小となるp、qを求め
る。このp、qを動きベクトル、を予測信号として、符 ’ (m、 n> (D、 Q) 帰化対象フレームとなる環フレームFtのブロックA(
m、n>との誤差を符号化した方が符号化の効率を向上
できる。
このようなMCによる符号化方式(必要な移動ベクトル
検出を、ハードウェアで実現しようとすると、次のよう
になる。
前フレームFt−1と現フレームFtのデータは、それ
ぞれフレームメモリに格納され、その間でp、 Qを少
しずつずらしながら、(9)式に示す計算式が行われる
。この計算式では、D、Qが近い場合、第8図(C)に
示すように、BS (m、’n>  (。、q)のかな
りの部分が共通な画素となる。しかし、画素単位ではそ
れぞれずれた画素の計算になる。更に、第8図(a)に
示すように、検索対象のブロックB(m、n)、B(m
、n+1>も共通画素を含むが、それぞれ別のブロック
A(m、n>” (m、n+1>との計算となるため、
画素データの読み出しが複数回になり、その制御が複雑
となる。
そのため、このような動き検出処理機能を有する装置に
おいては、一般に、ソフトウェアで制御が可能なマイク
ロプロセッサ等を用いて計算を行う。ところが、この場
合、扱う計算量が非常に多いため、処理に時間がかかる
という問題を有している。即ち、環フレームF   の
ブロック↑−1 ’ Cm、 n) (p、 Q> との計算では、それぞれのブロックの大きさがIM十J
Nであるとすると、i mx j n回の絶対値差分の
累積加算が行われる。これが各々の動きベクトル(つま
り、D、 Qの取り得る数)、(rl+r2+1)x 
(c1xc2+1>回だけ繰り返される。これだけの計
算を行って、ブロックA(m、n)に対する動きベクト
ルが求まる。従って、現フレームFtのある1個のブロ
ックA(、。
。)に対してIMXJNX (r1+r2+1>X(c
1+c2+1>回の絶対値差分の累積加算が行われる。
これが現フレームFtの各ブロックについて行われるた
め、膨大な計算量となる。
一般に、マイクロプロセッサは、各計算をシリアルに行
っていくので、処理にかなりの時間がかかる。そのため
、1フレームの画素数及び動きベクトル数をかなり制御
しなければならず、あまり実用的ではなかった。
以上のようなMCに必要な移動ベクトル検出回路やDC
T回路等を用いて映像の画像符号化装置を構成すると、
第9図のようになる。
従米pI徽ユ旦化ヌ1 第9図に示V画像符号化装置は、符号化されるデータを
格納する現フレームメモリ70.1フレーム前の符号化
し復号したデータを格納する前フレームメモリ71、移
動ベクトル検出回路(MV)72、フィルタ73、フィ
ルタ73と符号化の処理単位である基本ブロックの読み
出し方向を躾える転置回路74、及び各専用プロセッサ
の同期をとるためのバッフ?の役目をするファーストイ
ン・ファーストアウトメモリ(以下、F I FOとい
う>75.76.77.86を備えている。ざらに、F
IFO76,77の面出力データ(フィルタリング)変
のデータまたはフィルタリング前のデータ〉のいずれか
一方を選択するセレクタ7B、減算器79、DCT回路
80、ジグザグスキャン用の一時格納メモリ81.84
、量子化回路82、逆量子化回路83、IDCT回路8
5、及び加算器87が設けられている。
次に、動作を説明する。
先ず、現フレームメモリ70から、符号化するための基
本ブロックデータが読み出され、移動ベクトル検出回路
72及び)−IFO75へ出方される。この時、前フレ
ームメモリ71からは、動き補償を行うために前記基本
ブロックデータに対応した探索データが読み出され、移
動ベクトル検出回路72へ出力される。
移動ベクトル検出回路72では、移動ベクトルを基に、
動き補償を行い、その部分のデータが、予め読み出す方
向を縦横逆にして前フレームメモリ71から読み出され
、フィルタ73及び転置回路74に入力される。フィル
タ73及び転置回路74の出力は、FIFO76,77
に格納される。
その債、セレクタ78により、FIFO76,77の両
出力、つまりフィルタリング後のデータまたはフィルタ
リング前のデータの、いずれか一方が選択される。
選択されたデータは、PIFO86に格納されると共に
、Wc算器79に送られる。減算器79は、F)FO7
5からの基本ブロックデータから、セレクタ78の出力
を減算する。この減算結果は、DCT回路80により変
換され、メモリ81に一時的に格納される。メモリ81
からジグザグスキャンで読み出されたデータは、量子化
回路82によって量子化され、符号データとして出力さ
れる。
また、次のフレームを符号化するための原画面の復号デ
ータを作成する動作としては、前記符号データを逆量子
化回路83で逆量子化し、それがメモリ84にジグザグ
スキャンで書き込まれて一時的に格納される。
メモリ84のデータは、IDCT回路85で変換され、
P I FO86の出力と共に加算器87に入力される
。そして、加算器87で加算されて復号データとなり、
この復号データが前フレームメモリ71に格納される。
以後、次のフレームデータが現フレームメモリ70に入
力し、前記と同様の動作を繰り返し、動画像の符号化が
行われる。
(発明が解決しようとする課題) しかしながら、第9図の符号化方式では、DCTと、動
き補償のための動きベクトル検出を行うために、移動ベ
クトル検出回路72やDCT回路80等といった別々の
専用のプロセッサ、又は異なるハードウェアが必要とな
る。そして、これらを接続する場合、処理効率を向上さ
せるためにパイプライン方式を採用するが、それによっ
て回路構成が複雑になり、ハード量(回路規模)が多く
、コスト高になるという問題がおり、それを解決するこ
とが困難であった。
本発明は、前記従来伎術が持っていた課題として、回路
構成の複雑化と、それによるハード量の壜入及びコスト
高の点について解決した画像符号化装置の符号化方式を
提供するものである。
(課題を解決するための手段) 前記課題を解決するために、第1の発明は、1フレーム
内を複数のブロックに分割し、その環ブロックと他のフ
レームとの比較によって動画像の符号化を行う装置内の
動きベクトル検出とマトリクス変換を行う符号化方式に
おいて、制御信号により、評価関数値あるいは少なくと
も数ビットの乗算を行ってその乗算結果を累積加算する
複数の第1の演算回路と、入力データを遅延させて前記
第1の演算回路へ与える複数の遅延回路と、前記各第1
の演算回路の演算結果を累積加算する第2の演算回路と
を、有するプロセッサユニットを複数段設ける。そして
、マトリクス演算時には、前記第1の演算回路を用い、
2次のBooth法により展開されたマトリクス係数2
桁分の乗算を行ってその乗算結果を累積加算し、その累
積加算結果を前記第2の演算回路によって桁合わせを行
いながら累積加算を行い、前記各プロセッサユニットに
おいて演算結果となるマトリクスの各要素を求める。動
き補償の動きベクトル検出時には、前記遅延回路によっ
て前記現ブロックのデータを遅延させ、前記第1の演算
回路により、各ベクトルに対する評価関数値を求めるよ
うにしている。
第2の発明では、第1の発明において、前記複数段のプ
ロセッサユニットと、前記マトリクス演算時において前
記第2の演算回路の演算結果を格納するメモリと、前記
動き補償の動きベクトル検出時において前記各第1の演
算回路の演算結果を比較して動きベクトルの最適値を検
出する比較器とを用い、モードを切り替えることによっ
て前記マトリクス演算または前記動きベクトルの検出を
行う。
第3の発明では、第1の発明において、前記マトリクス
演算時に、前記遅延回路により前記入力データを遅延さ
せて前記各第1の演算回路のH算結果を時間的にずらし
て出力する。
第4の発明では、第1の発明において、前記各第1の演
算回路内に、検索用ブロックの1走査の画素数と同数の
遅延回路を設け、前記動きベクトル検出時に前記現ブロ
ックのデータを前記第1の演算回路間に複数の該遅延回
路を配置し動きベクトルの検出範囲を拡大する。
第5の発明では、第1の発明において、前記第1の演算
回路は、モード切り替えの制御信号によって制御される
係数メモリと、前記係数メモリ内のデータによって制御
されるバレルシフタ及び符号反転器と、絶対値差分器と
、累積加算器とを有している。前記マトリクス演算時に
は、入力データを前記バレルシフタ及び符号反転器で処
理し、その処理したデータを前記累積加算器で累積加算
し、前記動きベクトル検出時には、前記絶対fa差分器
の出力を前記累積加算器で累積加算する。
第6の発明では、第2の発明において、前記複数段のプ
ロセッサユニットにより1次元の直交変換を行ってその
結果を前記メモリに格納し、更にそのメモリの内容に対
し前記プロセッサユニットで直交変換を行って2次元の
直交変換結果を求める。
第7の発明では、第3の発明において、2次のブース法
によって展開して割り振られた前記第1の演算回路を用
い、該第1の演算回路の割り振られだ次数の低い方から
順に演算結果を出力する。
前記第2の演算回路では、それまでの累積加算結果を下
位の方向に2ビットシフトして累積加算を行う。
第8の発明では、第4の発明において、前記遅延回路内
に、遅延量を制御するセレクタを設け、そのセレクタを
用いて前記第]の演算回路間の入力データの遅延数を数
クロック又[よ1クロック遅らせる。
第9の発明では、第8の発明において、前記各遅延回路
を分はjした2つのレジスタで構成する。
前記マトリクス@算時には、前記2つのレジスタにそれ
ぞれ上位、下位のデータを格納して1クロツタ遅延する
レジスタとして用い、前記動きベクトル検出時には、前
記2つのレジスタを直列接続して2クロック遅延するレ
ジスタとして用いる。
第10の発明では、第9の発明において、前記各遅延回
路内の入力段に、レジスタ及びセレクタを設けて入力デ
ータを1クロックだけ遅延させる。
(作 用) 第1〜第10の発明によれば、以上のように符号化方式
を構成したので、マトリクス演算時には、全て2次の3
oothのアルゴリズムにより、係数データを展開する
ことによって累積加算でマド(ノクス演算を実行し、ハ
ード量の削除化を図っている。動き補償の動きベクトル
検出時には、マトリクス演算時に用いたプロセッサユニ
ット等の主要部分を用いて動きベクトルの検出を行い、
回路構成の共用による構成の簡単化、制御の容易化、及
びハード量の削減化を図っている。従って、前記課題を
解決できるのである。
(実施例) !1の叉籏廻 第1図は、本発明の第1の実施例を示す符号化方式を用
いた符号化回路の構成ブロック図である。
この符号化回路は、入力端子100a、100bと、出
力端子101と、ベクトル出力端子102a、102t
>と、入力端子201a、201b及び出力端子202
a、202bをそれぞれ有する複数のプロセッサユニッ
ト(以下、PUという)200−1〜200−16と、
複数のセレクタ300−1〜300−17と、バス30
1,302と、ランダム・アクセス・メモリ(以下、R
AMという)等のメモリ303.304と、比較器30
5とを、僅えている。
入力嫡子100a、100bは、初段のPU200−1
の入力嫡子201a、201bに接続されている。入力
端子100aは、セレクタ300−1〜307を介して
各PU200−2〜2007の入力嫡子201aに接続
され、さらに入力端子100bは、各PUd200−2
〜20016の入力嫡子202bに接続されている。各
PU200−1〜200−8の出力端子202 a t
、ll、バス301に接続されている。初段のPU20
0−1の出力端子202bは、セレクタ300−1を介
して次段のPU200−2の入力端子201aに接続さ
れ、そのPU200−2の出力端子202bは、セレク
タ300−2を介して次段のPU200−3の入力端子
201aに接続されている。以下同様にして、セレクタ
300−3〜300−7を介してPU200−8まで構
成されている。
バス301は、メモ1ノ303,304の入力端に接続
されると共に、セレクタ300−16を介してハス30
2に接続されている。メモリ303゜304の出力側は
、各セレクタ300−8〜300−15を介して各PU
200−9〜200−16の入力端子2018にそれぞ
れ接続されている。
PU200−8の出力端子202bは、セレクタ300
−8を介してPU200−9の入力端子201aに接続
されている。PU209の出力端子202bは、セレク
タ300−9を介して次段のPU200−10の入力端
子201aに接続されている。以下同様に、PU200
−11〜200−16まで接続されている。
各PU200−9〜200−16の出力端子202aは
、バス302に接続されている。このバス302には、
セレクタ300−17を介して出力端子101が接続さ
れると共に、比較器305を介してベクトル出力端子1
02a、102b及びセレクタ300−17が接続され
ている。
第10図は、第1図中の各PU200−1〜200−1
6内の構成ブロック図である。
このPUは、入力嫡子21”ta、211b及び出力端
子212をそれぞれ有する複数の第1の演算回路(以下
、Pe  という>210−1〜210−7と、入力デ
ータをそれぞれ1クロックずつ遅らせるレジスタ等から
なる複数の遅延回路(以下、Reという> 220−1
〜220−13と、バス230と、データの累積加算を
行う第2の演算回路(以下、AUという)231とを、
備えている。
入力嫡子2018に:は、初段のPe21’O−1の入
fJ端子211aが接続されると共に、Re220−1
〜220−13が縦接続されて出力端子202bに接続
されている。各Re220−1〜220−6の出7J@
子は、各Pe2’l0−2〜210−7の入1′J@子
211aにそれぞれ接続され、1クロックずつ遅れた入
力データが各Pe210−2〜210−7に人力するよ
うになっている。
入力端子201bは、各Pe210−1〜210−7の
入力端子211bにそれぞれ接続されている。
各Pe2.10−1〜210−7の出力端子212はバ
ス230を介してAU231に共通され、そのAtJ2
31が出力端子2028に接続されている。
第11図は第10図中の各Pe210−1〜210−7
の構成ブロック図である。
このPeは、マトリクス演算等の係数を格納し、モード
切り替えの制御信号C8によりその内容が読みだされる
ROM等からなる係数メモリ213を備えている。この
係数メモリ213には、その出りによって動作が制御さ
れるバレルシフタ215及び符号反転器216が接続さ
れている。入力端子211aは絶対値差分器216に接
続されると共に、入力端子211bがバレルシフタ21
4及び符号反転器215を介して該絶対値差分器216
に接続されている。絶対値差分器216は、積用算器2
17を介して、レジスタ218、バスコントローラ21
9、及び出力端子212に接続されている。累積加算器
217は、加算器2178及びレジスタ217bで構成
されている。
以上のように構成されろ符号化回路において、OCTC
−モード時CTの変換動作(1)と、M■モード時の動
きベクトル検出動作(2)とを、説明する。
C1> DCTC−モード時作 DC丁モードの時、第1図のセレクタ3001〜300
−17は全て縦方向の端子が選択されて接続される。即
ち、入力端子100aとPU200−1〜200)−8
とが直接接続され、さらにメモリ303,304とPt
J200−9〜200−16とが、直接接続される。バ
ス3C)1と302はセレクタ300−16によって切
り離され、セレクタ300−17によってPU200−
9〜200−16と出力端子101とが接続される。
本実施例において、DCTの変換はM=8の場合で、8
個のデータXO〜X7をひとまとめにしてDCTの変換
を行う。
データの流れとしては、入力端子100aから8個のデ
ータXO〜X7が時系列に入力し、各PL、1200−
1〜200−8に同時に入力される。
各PU200−1〜200−8では、次式のように、1
行分のDCHのマトリクス演算が行われる。
Y=DO−XO+D1−X1+ ・・・・・・+D7・X7 ・・・(8) 但し、Do〜D7:DCTのマトリクス係数従って、こ
のPU200−1〜200−8で1次元のDCTが行わ
れ、その結果が、メモリ303又は304に格納される
。2つのメモリ303゜304が設けられているのは、
一方がPU200−1〜200−8からの出力を入力し
ている時は、他方がデータを出力して後段のPU200
−9〜200−16の入力となり、2つのメモリ302
゜304をトグルで用いるためでおる。
8個の入力データXO〜X7k17対して各PU200
−ゴ〜200−8から1つずつ、計8個のデータが出力
され、それらがバス301上でぶつがらないように制御
されてメモリ303又は304に入力される。もしこ口
で、メモリ303が入力で、メモリ304が出力である
ならば、前段の各PU200−1〜200−8の出力が
、メモリ303に入力にされると同時に、メモリ304
の出力が、後段の各PU200−9〜200−16の入
力となる。この動作を8回繰り返す。
つまりM=8の場合、2次元のDCTの変換のひとまと
めとして扱う64個のデータが入力されて、前段の各P
U200−1〜200−8<7)出力がメモリ303に
入力し終わると、2つのメモリ303.304の入出力
関係が逆になり、今度はメモリ303が、データを後段
の各PU200−9〜200−16に出力する。
第12図(a>、(b)4.t:、1次元DC丁(7)
’[換データを格納する第1図のメモリ303,304
に対する、書き込み時と読み出し時の入出力するデータ
の順序を示す図である。
前段の各200−1〜200−8の出力をメモリ303
又は304に書き込む場合、第12図(a>に示すよう
k、例えば横方向で8個ずつデータを書き込む。次に、
メモリ303のデータを後段の各PU200−9〜20
0−16へ出力する場合、第12図(b>に示すように
、縦方向に順番に8個ずつデータを読み出す。
このようk、メモ1]303,304に対するデータの
書き込み、読み出し方向を代えることにより、後段のP
U200−9〜200−16が前段のPU200−1〜
200−8と同じ動作をすることで、その後段のPU2
00−9〜200−16の出力は、2次元DCTの変換
を行ったデータとなる。このデータは、後段の各PU2
00−9〜200−16から1ずつ、計8個のデータを
出力し、バス302上で各PU200−9〜200−1
6の出力がぶつからないように刺部されて、出力端子1
01から出力される。
次に、第10図及び第11図において、(8)式に示す
ように、各PU200−1〜200−コロで実行される
DCHのマトリクス@篩の1行分の針師動作 Y=DO−XO+D1・X1+ ・・・・・・+D7・X7 ・・・(8) について、説明する。この例では、DCTのマトリクス
係数を15ビツトとして計算を行う。
第10図に示すように、DCTのマトリクス演算の1行
分計算((8)式)を行う場合、乗算器を用いず、全て
累積加算動作で実行される。その手法としては、従来例
で示したように、2次のBoothのアルゴリズムを用
い、係数データを分解して演算結果を得る手法を用いる
。つまり、(8−2>式の1行分の演算 の計算を各Pe210−1〜210−7で演算ざぜ、そ
の結果が順にバス230上に出力され、AU231に入
力されて全ての合計が演算される。
ここで、(8−:2>式の()内の取りうる値は、−2
,−1,0,1,2なので、例として、((−2>−X
o+1−X、+2−X2+o−x3+(−t>・X4+
2・X5十1・X6+O−×7)2n ・・・(8−3> の演算式をあげ、各Pe210〜210−7の演算方法
を第11図を用いて説明する。
まず、入力端子211bから入力データX1が入力され
、係数メモリ213の制御データに従ってバレルシフタ
214と符号反転器215によって制御される。この場
合だと、最初にX]と−2との乗算を実行するために、
バレルシフタ2ゴ4では1ビットシフトし、符号反転器
215では符号を変換して(置設の絶対値差分器216
に渡される。このモード時には、値ゼロとの差分絶対値
が行われる。即ち、符号反転器215の出力値がそのま
ま加算器2178に入力され、まずはゼロとの加算が行
われてレジスタ217bに格納される。
次に、入力端子21]bから入力データ×2が入力され
、前回と同様に、係数メモ1ノ213への制御データに
従って、バレルシフタ214と符号反転器215によっ
て制御されるが、この場合だと、X2と1との乗算を実
行することになるので、バレルシフタ214ではビット
シフトせず、符号反転器215も符号はそのままで、後
段の絶対値差分器216に渡される。この絶対値差分器
216も前回同様何もぜずに加算器217aに入力され
、先はどのレジスタ217bの内容との加算が行われ、
次のタイミングでその結果が同じくレジスタ217bに
格納されている。
以下、X 2 X 3 X 4 X 5 X 6 X 
7の入力データは、この場合、それぞれ2,0,1.−
2.1゜Oとの乗算を前記のバレルシフタ214と符号
反転器215によって実行し、その結果を加算器217
aとレジスタ217bから構成される累積加算器2]7
によって累積加算を行う。このようにして8個のデータ
XO〜X7の入力が終わり、加算結果が出力されるタイ
ミングで、レジスタ218に格納し、同時に加算器21
7aにもクリア信号を入力し、次のデータXOがレジス
タ217bにそのまま格納される。その累積加算結果は
、バスコントローラ219によって第10図内のPU2
10−1〜210−7内のバス230上で各Peの出力
がぶつからないように制御される。
このようにして、例えばPe210−1では(B−3>
式の係数の次数が一番低い1行分の演算Σ(−D・  
 ・2 +D (O)・20)(1〉1 20・X・の計算が行われる。同様に、Pe210−2
では、次に低い1行分の演算Σ(−D(3)  1  
  (2>   O(1)。
・2  +D・   ・2  +D・ 20)22・X・の計算というように、各Peで(8−
3>式の各行の演算が行われ、その累積加算結果がバス
230に出力される。バス230上にPe2ゴO−1か
らPe2″10−7の順番で出力された累積加算結果は
AU231で累積加算され、出力端子202aから出力
される。
各Pe210−1〜210−7の演算結果とその$算結
果か出力されるタイミングチャートを第13図に示す。
第13図中のDl   〜D8   ・・・は入力(0
)     (O) データ、Sl   〜S7   ・・・は演算結果、O
UT (0> 、OUT (1)は出力データでおる。
このタイムチャートでは、入力データD1(0)〜D8
   ・・・が遅延回路220−1〜220(O) 6によって各Pe210−1〜210−7に遅延して入
力するため、演算結果81  〜S7(○〉 (0)・・−も隣のPeよりゴクロツタ遅れて出力して
いる。
ここで、第10図のAU231では、各Pe210−1
〜210−7の演算結果を累積加算する時に、各Pe毎
に演算結果の桁が違うため、桁合わせを行いながら累積
加算を行う必要がある。Pe210−1から順に出力さ
れるこの例では、隣合うPeの演算結果の桁が2ビツト
ずつずれているので、AU231では、累積加算をする
ときに、加算結果の方を2ビツト下位ににシフトして加
算する必要がある。このように、各PU210−1〜2
10−7では、OCT変換されるデータは滞ることなく
出力端子202aからPUの外部へ出力される。
またこの構成は、マド1ノクス@算を行えることから、
第11図のPe内の係数メモリ213を追加するか、あ
るいはそのメモリ内容を追加することで、100丁の変
換や、第3図のフィルタの演算を実行することも可能で
ある。
(2)MVモード時の動作 MVモードの時は、DCTモードの時とは逆に、第1図
に6いてセレクタ300−1〜300−17は全て横方
向の嫡子が選択されて接続される。
つまり、入力端子100aはPU200−1とだけ接続
され、他のPU200−2〜200−’16は左隣のP
Uの出力信号を入力する。バス30”と302はセレク
タ300−16によって接続され、さらにセレクタ30
0−17によって仝PU200−1〜200−16まで
の出力が比較器305を通して出力端子101と接続さ
れる。
この例のMV検出回路において使用されるデータは、第
14図(a>〜(C>に示すように、検出する基本ブロ
ック(第14図(a))の大ぎさが7×7で、その検索
範囲いはX方向が−3〜+3まで、Y方向が−8〜+7
まで可能である。第1図においては、入力端子100a
から基本ブロックデータAを入力し、入力端子100b
がらは第14図(b)の検索用ブロックデータB1を人
力する。この検索用ブロックデータB1は、各PU20
0−1〜200−16内の各Pe210−1〜210−
7に直接入力される。
入力端子100aから入力された基本ブロックデータA
は、PU200−1に入力され、第10図に示す13個
の遅延回路220−1〜220−13で13クロック遅
延して隣のPU200−2に送られる。同様に、他のP
U200−3〜200−16でも、隣のPUより13ク
ロック遅延したデータが渡される。各PU200−1〜
200−16では、第10図のようにPe210−1〜
220−7が7個存在し、その1つ1つがベクトル候補
地の演算を担当する。前記のDCTモードで累積加算を
行ったAU231は、このMVモードの時は何もしない
ので、各Pe210−1〜210−7の出力は比較器3
05に直接接続されていることになる。第1図において
PU200−1では、X方向が−3〜+3まで、Y方向
が−8のベクトル候補地の候補ブロックと基本ブロック
との誤差量が計算される。誤差量の求め方は、第11図
のPeで次のように計算される。
DCTC−モード時卸信号C8によって係数メモリ21
3から出力されるデータにより、バレルシフタ214及
び符号反転器215が制御される。
ところが、MVモードの時には、バレルシフタ214及
び号反転器215がスルー状態となるため、入力端子2
11bから入力された基本ブロックデータAはそのまま
絶対値差分器216へ送られる。
絶対値差分器216は、入力端子211aがらの検索用
ブロックデータB1.B2と、入力嫡子2ゴゴbからの
基本ブロックデータAとの、差分絶対値を計算する。こ
の計算結果は、加算器217aの入力となり、累積加算
が行われる。この例では、基本ブロックデータ数が49
=7X7なので、その回数だけ累積加算が行われ、その
結果がレジスタ218に格納されると同時にレジスタ2
ゴ7bもクリアされる。そして比較器305と接続して
いるバス230上で、累積加算結果同士がぶつからない
ように、バスコントローラ219によって制御される。
このMV検出モード時のPU内のタイムチャートを第1
5図に示す。
第15図において、検索用ブロックデータB]は、第1
0図の入力端子201bから入力され、基本ブロックデ
ータAは入力端子201aからPe210−1に入力さ
れる。側部信号C31はPe210−1においてその時
の入力データに対して演算を行うか、停止するかを制御
する信号、C82はPe210−1においてその時の入
力データに対して演算を行うか、停止するかを制御する
信号である。
第10図の入力域子201bから入力される検索用ブロ
ックデータB1は、第14図(b>に示すように、ブロ
ックの左上のB(0,0>から順にB (1,0>、B
 (2,O>、・・・のように縦方向に遂次入力し、B
(12,O)まで入力すると、次のB(0,1)という
ように、次の列へと連続的に入力される。入力端子20
1 aから入力される基本ブロックデータAは、第14
図(a)に示すように、ブロックの左上のA (0,0
>から順にA (1,O)、A (2,O> 、・・・
のように縦方向に遂次入力し、A(6,0)まで入力す
ると、−時的に入力を停止し、検索用ブロックの走査が
次の列に移ると同時に、再び次の列の基本ブロックデー
タAの入力を開始する。即ち、入力域子201aと20
1bからの入力データは、それぞれ基本ブロックデータ
A、検索用ブロックデータB1の列の先頭から同期して
入力される。
このような入力データに対して、Pe2101では、基
本ブロックデータA′tfiA (6,6)まで入力し
演算が終わった時点で、次式に(9−1>に小すp=−
3,g=−8の計算が行われたことになる。
Xt−1。
(IMm+1−3.JNn+j−8) ・・・(9−1> この演算結果、即ちベクトルp=−3,Cl−−8に対
する差分絶対値の累積値は、第1図の比較器305へ送
られる。
Pe210−2においても同様の計算が行われる。但し
、入力域子201aから入力される基本ブロックデータ
Aは、遅延回路220−1によって1クロックタイミン
グずれて入力されるので、次式(9−2>に示すD=−
2,g=−8の計算が行われることになる。
Xt−1 (IMm+i−6,JNn+j−8) −・・(9−2> 入力がPe210−1より1クロックタイミングずれて
いるため、出力もゴクロック遅れて出力される。
このようにしてPe210−1〜Pe210−7により
、ベクトルp=−3〜+3、Q=−8に対応する演算結
果を、それぞれ1クロックずれたタイミングで出力する
。第1図のPU200−2では、初段の直列に接続され
た遅延回路群によって基本ブロックデータAの1列ずれ
たデータが与えられるため、ベクトルP=−3〜+39
g=7に対応する演算結果を出力する。
以上のようにして各Pe210−1〜210−7でベク
トル候補地p=−3〜+3.0=−8〜+7の演算を行
い、その結果が全て比較器305に集められ、該比較器
305により、それらの中から最小値を見つけ、それに
対応したベクトルも保持する。そして全てのベクトル候
補地の演算が終了した時点で、ベクトル出力端子ゴ02
aとゴ02bに各々の値を出力すると共に、その時の誤
差量も出力端子101がら出力される。
ここで、第10図のPe210−1は、基本ブロックデ
ータA及び検索用ブロックデータB1が入力され、演算
が終わると、その基本ブロックデータAに対するベクト
ル候補地D=−3,にi=8の演算を終了し、その次の
列の入力と共に次の基本ブロックデータAに対するベク
トル候補地p=−3,g=−8の演算を開始する。この
ように次々に、次のブロックの各Pe210−1〜21
0−7に割り振られたベクトル候補地の演算を行ってゆ
く。そのため、ある基本ブロックの検索用のブロックデ
ータB1の入力データが終了しても、次の基本ブロック
の検索用ブロックデータB1の入力データを始めからへ
カする必要がなく、入力データが終了した次の列を連続
的に入力することができる。
このように、基本ブロックデータA、検索用ブロックデ
ータB1ともに走査方向に逆戻りすることなく、連続し
て入力することによって、動きベクトルが次々に出力さ
れる。従って、極めて効率的に各ブロックに対する動き
ベクトルを求めることができる。
第2の実施例 第16図は、本発明の第2図の実施例を示すもので、第
1図中のPUの構成ブロック図である。
このPUでは、各Pe210−2〜210−7の入力デ
ータを遅延させる遅延回路220−’Ia〜220−6
8を1段追加し、各2段設けている。
そして、第14図(C>に示した検索用ブロックデータ
B2を用い、第10図と同様にデータを入力して動き補
償のための動きベクトル検出を行う。
その時のタイムチャートを第17図に示す。
コノヨウニ、遅延回路220−1 a 〜220−68
を追加したことで検索範囲が広がり、X方向が−6〜+
6まで、X方向が−8〜+7まで可能となる。しかし、
ベクトル候補地の誤差量は、計算するPeの数が変わら
ないので、間引かれたベクトル候補地の説明図である第
18図に示すように、ちょうどX軸方向に、ベクトル候
補値演算が泡引かれた形になる。
この第2図の実施例では、動き補償のための動きベクト
ル検出を行う検索範囲を広くとるために、遅延回路22
0−1a〜220−68を付加している。しかし、実際
はDCT入カデカデータ本ブロックデータとのビット幅
が異なることが多いので、遅延回路220−1a 〜2
10−7aを付加することなく、検索範囲を広げること
も可能で必る。その構成例を、次の第3図の実施例で説
明する。
第3図の実施例 第19図は、DCT入カデカデー9幅本ブロックデータ
幅の2倍であると仮定した場合の、第10図中の各遅延
回路220−1〜220−7の構成図である。
この遅延回路は、入力端子221a、221b及び出力
端子222a、222bを有し、その間に、基本人力デ
ータ幅のにジスタ225,226を2つ設け、その前段
に、入力データを制御するセレクタ223.224を設
けた構成になってる。
DCTC−モード時2つのレジスタ225,226を上
位、下位に割り振る。つまり入力端子221bからDC
T入カデカデータ位データが、入力端子221aからD
CT入力データの上位データが入力し、セレクタ223
,224ではそのままレジスタ225.226に入力さ
れるように選択される。このモードでは、1クロック遅
れて出力するので、上記に示した実施例と同じ動作をす
る。MV検出モードでは、入力端子221bから基本ブ
ロックデータが入力されると、このデータはまずレジス
タ225に格納され、次にレジスタ226に格納れるよ
うにセレクタ223.224によってデータの流れがI
IJIIされる。このようにレジスタ225,226を
2段通過しているので、2クロック遅れて出力する。こ
のようにして、M■検出モードでは、レジスタ225.
226を付加することなく検索範囲を広げ、DCTC−
モード時、レジスタ225,226によって遅延するこ
とがないので、今までと同じ速度で変換することができ
る。
また、この入力端子の前段にレジスタを1段設けること
によってベクトル候補地演算の間引かれた位置が]つず
つずれるので、先はど間引かれたベクトル候補地の演算
が可能となる。このようにして、入力端子の前段のレジ
スタの接設にセレクタを設け、入力データの遅延を制御
Ilすることにより、1回では間引かれた形になるが、
2回データを流すことで、全ての場所のベクトル検圧が
可能となる。
里丘鳳の叉里廻 第20図は、本発明の第4の実施例を示す画像符号化装
置の構成ブロック図である。
この画像符号化装置は第1図の符号化回路を用いて構成
されており、符号化されるデータ(現フレームデータ)
が格納されている規フレームメモ1ノ400、ジグザグ
スキャン用の一時格納メモ1ノ401.1フレーム前の
データをこの装置内で符号化し復号したデータが格納さ
れている前フレームメモリ402、及び前フレームメモ
1ノ402データをフィルタ処理した後のデータが格納
されているフィルタ処理後格納メモリ403を備えてい
る。環フレームメモリ4. O01IDCT変換前のデ
ータを格納したメモリ40ゴ、及び信号−〇−には、そ
れらのいずれか1つを選択するセレクタ404が接続さ
れている。
フィルタリング前のデータが格納された前フレームメモ
リ4.02、及びフィルタリング後のデータが格納され
たフィルタ処理後格納メモリ403には、それらのいず
れか1つを選択するセレクタ405が接続されている。
このセレクタ405の出力側は、信号−〇−と共にセレ
クタ406.409にそれぞれ接続されている。セレク
タ404゜406の各出力側は、減算器407に接続さ
れ、該減算器407と前フレームメモリ402が符号化
回路408に接続されている。
符号化回路408は、集積化(LSI等〉された第1図
の回路で構成されており、その出力側がセレクタ409
と共に加算器410に接続されている。加算器410の
出力側は、ジグザグスキャン用の一時格納メモ1)41
1を介して、量子化回路412に接続され、ざらにその
量子化回路(Q)412が、逆量子化回路(Q−1>4
13を介してメモ1)401に接続されている。
次に、動作を説明する。
先ず、現フレームメモリ400から、符号化するための
基本ブロックデータAが読み出され、前フレームメモリ
402からは、動き補償を行うために該基本ブロックデ
ータAに対応した検索用ブロックデータBが読み出され
る。この時、セレクタ404は現フレームデータ(基本
ブロックデータA〉を選択すると共に、セレクタ406
,409は共に一〇−を選択する。そのため、符号化回
路408には、基本ブロックデータAと検索用ブロック
データBとがそのまま入力され、MVモードにして移動
ベクトルが検出される。この移動ベクトルを基に動き補
償が行われたその部分のデータが、前フレームメモリ4
02から読み出され、セレクタ405,406は前フレ
ームデータを選択すると共に、セレクタ404’、40
9が共に一〇−を選択する。これにより、前フレームメ
モリ402のデータが符号化回路408に入力し、フィ
ルタモードでフィルタリングされる。その結果は、フィ
ルタ処理後格納メモリ403に格納される。
次に、セレクタ405,406により、フィルタをかけ
たデータとフィルタをかける前のデータとのいずれか一
方を選択し、セレクタ404によって選択された現フレ
ームメモリ400のデータと共に、減算器407に入力
した債、その減算結果が符号化回路408に入力される
。この時、符号化回路408はDCTモードとなってD
CT変換され、そのデータがメモリ411に一時的に格
納され、出力時にはジグザグスキャンで読み出される。
このメモリ411のデータは、量子化回路412により
量子化されて出力される。また、逆量子化回路413で
は、量子化回路412の出力データを逆量子化し、その
データがジグザグスキャンでメモリ401に書き込まれ
て一時的に格納される。このメモリ401のデータは、
セレクタ404によって選択され、セレクタ406が−
〇−を選択するので、減算器407を介して符号化回路
408に入力される。この時、符号化回路408は、I
D0丁モードとなってIDCT変換され、セレクタ40
5,409によって選択されたフィルタリング後のデー
タとフィルタリンク前のデータとのいずれか一方のデー
タと共に、加算器410で加算され、次のフレームを符
号化するのに必要なデータとして前フレームメモリ40
2に格納される。
このように、符号化回路408を時分割にしてモードを
切り替え、MV検出、フィルタ、DCT変換、及びID
CT変換として使用することにより、画像符号化装置の
構成を簡略化し、従来のものよりも、ハード量の削減化
と低コスト化が図れる。
なお、本発明は上記実施例に限定されず、第1図のPU
200−1〜200−16及びメモリ303.304の
数を入力データのビット数に応じて他の数に変形したり
、あるいは各PU2001〜200−16の回路構成を
第10図及び第16図以外の構成に変形する等、種々の
変形が可能である。
(発明の効果) 以上詳細に説明したように、本発明によれば、モード切
り替え可能なプロセッサユニットを用いてマトリクス演
算、及び動き補償の動きベクトル検出を行うので、多機
能化が図れると共に、回路構成の多くの部分を共用でき
、それによって回路構成の簡単化、ハード量の削減化、
及び低コストが可能となる。
さらに、本発明を、2次元のDCT時と、動き補償の動
きベクトル検出を行う回路に適用した場合、DCT時の
マトリクス演算に2次のBoo↑hのアルゴリズムを用
いているので、ハード量が小さくなり、しかも動き補償
の動きベクトル検出も、例えば基本ブロックデータと検
索用のブロックデータを2度入力することによって全ブ
ロック領域の検索が可能となる。
さらにまた、本発明はOCTモードの時、マトリクス演
算を行えるので、係数メモリを追加、あるいは変更する
ことにより、他のマトリクス演算も実行できる。
【図面の簡単な説明】
第1図は本発明の第1の実施例を示す符号化回路の構成
ブロック図、第2図は従来のテレビ会議用C0DECの
構成ブロック図、第3図は第2図中のソース符号化回路
の構成図、第4図は従来の1次元DCHのデータフロー
を示す図、第5図は従来の2次元DCTの構成例を示す
図、第6図は従来の2次B○○↑hを用いた1行分のマ
トリクス演算回路の構成図ブロック図、第7図は第6図
中のpeの構成図ブロック図、第8図(a)〜(C)は
従来の動きベクトル検出の説明図、第9図は従来の画像
符号化装置の構成図ブロック図、第10図は第1図中の
PUの構成図ブロック図、第11図は第10図中のpe
の構成図ブロック図、第12図は第1図のメモリのデー
タ入出力を示す図、第13図は第1図のDCTC−モー
ド時U内ツタイムチャート第14図(a’)〜(C)は
第1図の基本ブロックと検索用ブロックを示す図、第1
5図は第1図のMV検出モード時のPU内ツタイムチャ
ート第16図は本発明の第2の実施例を示す第1図中の
PUの構成ブロック図、第17図は第16図におけるM
V検出モードのレジスタ2段構成時のタイムチャート、
第18図は第16図における間引かれたベクトル候補地
を示す図、第19図は第3の実施例を示す第1図中の遅
延回路の構成図、第20図は本発明の第4の実施例を示
す画gi処理装置の構成ブロック図である。 200−1〜200−16・・・プロセッサユニット(
PU) 、210−1〜210−7・・・第1の演算回
路(Pe)、213・・・係数メモリ、214・・・バ
レルシフタ、215・・・符号反転器、216・・・絶
対値差分器、217・・−累積加算器、220−1〜2
20−13,220−1a 〜220−6a−・・遅延
回路(Re>、223.224−・・セレクタ、225
.226・・・レジスタ、231・・・第2の演算回路
(AU>、300−1〜300−17・・・セレクタ、
303,304・・−メモリ、305・・・比較器。

Claims (1)

  1. 【特許請求の範囲】 1、1フレーム内を複数のブロックに分割し、その現ブ
    ロックと他のフレームとの比較によつて動画像の符号化
    を行う装置内の動きベクトル検出とマトリクス変換を行
    う符号化方式において、制御信号により、評価関数値あ
    るいは少なくとも数ビットの乗算を行ってその乗算結果
    を累積加積する複数の第1の演算回路と、 入力データを遅延させて前記第1の演算回路へ与える複
    数の遅延回路と、 前記各第1の演算回路の演算結果を累積加算する第2の
    演算回路とを、 有するプロセッサユニットを複数段設け、 マトリクス演算時には、前記第1の演算回路を用い、2
    次のブース法により展開されたマトリクス係数2桁分の
    乗算を行ってその乗算結果を累積加算し、その累積加算
    結果を前記第2の演算回路によつて桁合わせを行いなが
    ら累積加算を行い、前記各プロセッサユニットにおいて
    演算結果となるマトリクスの各要素を求め、 動き補償の動きベクトル検出時には、前記遅延回路によ
    つて前記現ブロックのデータを遅延させ、前記第1の演
    算回路により、各ベクトルに対する評価関数値を求める
    ことを特徴とする符号化方式。 2、請求項1記載の符号化方式において、 前記複数段のプロセッサユニットと、前記マトリクス演
    算時において前記第2の演算回路の演算結果を格納する
    メモリと、前記動き補償の動きベクトル検出時において
    前記各第1の演算回路の演算結果を比較して動きベクト
    ルの最適値を検出する比較器とを用い、 モードを切り替えることによつて前記マトリクス演算ま
    たは前記動きベクトルの検出を行う符号化方式。 3、請求項1記載の符号化方式において、 前記マトリクス演算時に、前記遅延回路により前記入力
    データを遅延させて前記各第1の演算回路の演算結果を
    時間的にずらして出力する符号化方式。 4、請求項1記載の符号化方式において、 前記各第1の演算回路内に、検索用ブロックの1走査の
    画素数と同数の遅延回路を設け、前記動きベクトル検出
    時に前記現ブロックのデータを前記第1の演算回路間に
    複数の該遅延回路を配置し動きベクトルの検出範囲を拡
    大する符号化方式。 5、請求項1記載の符号化方式において、 前記第1の演算回路は、モード切り替えの制御信号によ
    つて制御される係数メモリと、前記係数メモリ内のデー
    タによって制御されるバレルシフタ及び符号反転器と、
    絶対値差分器と、累積加算器とを有し、 前記マトリクス演算時には、入力データを前記バレルシ
    フタ及び符号反転器で処理し、その処理したデータを前
    記累積加算器で累積加算し、前記動きベクトル検出時に
    は、前記絶対値差分器の出力を前記累積加算器で累積加
    算する符号化方式。 6、請求項2記載の符号化方式において、 前記複数段のプロセッサユニットにより1次元の直交変
    換を行ってその結果を前記メモリに格納し、更にそのメ
    モリの内容に対し前記プロセッサユニットで直交変換を
    行つて2次元の直交変換結果を求める符号化方式。 7、請求項3記載の符号化方式において、 2次のブース法によつて展開して割り振られた前記第1
    の演算回路を用い、該第1の演算回路の割り振られた次
    数の低い方から順に演算結果を出力し、 前記第2の演算回路ではそれまでの累積加算結果を下位
    の方向に2ビットシフトして累積加算を行う符号化方式
    。 8、請求項4記載の符号化方式において、 前記遅延回路内に、遅延量を制御するセレクタを設け、
    そのセレクタを用いて前記第1の演算回路間の入力デー
    タの遅延数を数クロック又は1クロック遅らせる符号化
    方式。 9、請求項8記載の符号化方式において、 前記各遅延回路を分割した2つのレジスタで構成し、 前記マトリクス演算時には、前記2つのレジスタにそれ
    ぞれ上位、下位のデータを格納して1クロック遅延する
    レジスタとして用い、 前記動きベクトル検出時には、前記2つのレジスタを直
    列接続して2クロック遅延するレジスタとして用いる符
    号化方式。 10、請求項9記載の符号化方式において、前記各遅延
    回路内の入力段に、レジスタ及びセレクタを設けて入力
    データを1クロックだけ遅延させる符号化方式。
JP17919490A 1990-07-06 1990-07-06 符号化装置 Expired - Fee Related JP3004687B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17919490A JP3004687B2 (ja) 1990-07-06 1990-07-06 符号化装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17919490A JP3004687B2 (ja) 1990-07-06 1990-07-06 符号化装置

Publications (2)

Publication Number Publication Date
JPH0468890A true JPH0468890A (ja) 1992-03-04
JP3004687B2 JP3004687B2 (ja) 2000-01-31

Family

ID=16061580

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17919490A Expired - Fee Related JP3004687B2 (ja) 1990-07-06 1990-07-06 符号化装置

Country Status (1)

Country Link
JP (1) JP3004687B2 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63274279A (ja) * 1987-04-30 1988-11-11 Nec Corp 動画処理装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63274279A (ja) * 1987-04-30 1988-11-11 Nec Corp 動画処理装置

Also Published As

Publication number Publication date
JP3004687B2 (ja) 2000-01-31

Similar Documents

Publication Publication Date Title
EP2934008B1 (en) Low-complexity intra prediction for video coding
US6134270A (en) Scaled forward and inverse discrete cosine transform and video compression/decompression systems employing the same
AU2019240711C1 (en) Method and apparatus for motion compensation prediction
US6414997B1 (en) Hierarchical recursive motion estimator for video images encoder
KR19980080157A (ko) 이산 코사인 변환 인코드 화상의 다운 변환을 위한 주파수 영역 필터링
US6223193B1 (en) Macroblock variance estimator for MPEG-2 video encoder
CN102804165A (zh) 具有可扩展数据路径的前端处理器
EP2092752A2 (en) Adaptive interpolation method and system for motion compensated predictive video coding and decoding
WO2000010320A2 (en) Performing transform during processing of an image
JPH0468890A (ja) 符号化装置
JP2673034B2 (ja) 画像符号化方式
JP3004686B2 (ja) 符号化回路及び画像符号化装置
KR100734876B1 (ko) 부화소의 볼록 성질을 사용한 움직임 벡터 추정 방법 및연속영상 생성 방법
JP3004688B2 (ja) 符号化装置
Rosenberg Recasting a scene adaptive video coder for real time implementation
Bove Hardware and software implications of representing scenes as data
van der Lem Implementation of realtime video compression, conform the MPEG standard, using a Transport Triggered Architecture
Pan A new fast 2-D DCT/IDCT algorithm and its VLSI implementation
Britch Object-Based Coding of Video Data Using the Wavelet Transform
Hsieh VLSI architectures and algorithms for video coding and image processing applications
JPH11196421A (ja) パイプライン構造計算回路
JPH07334347A (ja) 符号化演算器
IE901502A1 (en) Motion estimator

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees