JPH07193822A - 動き予測プロセッサ及び動き予測装置 - Google Patents

動き予測プロセッサ及び動き予測装置

Info

Publication number
JPH07193822A
JPH07193822A JP34591693A JP34591693A JPH07193822A JP H07193822 A JPH07193822 A JP H07193822A JP 34591693 A JP34591693 A JP 34591693A JP 34591693 A JP34591693 A JP 34591693A JP H07193822 A JPH07193822 A JP H07193822A
Authority
JP
Japan
Prior art keywords
motion
prediction
motion prediction
block
processor
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
JP34591693A
Other languages
English (en)
Other versions
JP3031152B2 (ja
Inventor
Naoya Hayashi
直哉 林
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP34591693A priority Critical patent/JP3031152B2/ja
Priority to US08/361,652 priority patent/US5717462A/en
Priority to DE1994621158 priority patent/DE69421158T2/de
Priority to EP19940120543 priority patent/EP0660615B1/en
Publication of JPH07193822A publication Critical patent/JPH07193822A/ja
Application granted granted Critical
Publication of JP3031152B2 publication Critical patent/JP3031152B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/144Movement detection
    • H04N5/145Movement estimation

Abstract

(57)【要約】 【目的】画像圧縮で動きベクトル検出を行う動き予測プ
ロセッサにおいて、並列配置して容易に動きベクトル検
出範囲を広げることが可能な構成の提供。 【構成】フレーム間予測符号化又はフレーム内符号化を
指定する符号化タイプと、フレーム間予測符号化の行な
う場合の動きベクトルを出力する動き予測プロセッサに
おいて、現在処理中のブロックの座標を出力し、参照フ
レームメモリから参照領域を読み出すアドレスにオフセ
ットを加え、フレーム間予測符号化を行った場合の符号
量を推定する評価データとを出力する。この動き予測プ
ロセッサをn個配置し各々に参照フレームメモリを接続
し、n個の動き予測プロセッサに同一のブロックと異な
る参照領域を供給し、参照領域が画面内に入る動き予測
プロセッサの中から評価データが最小のものを選択しこ
れが出力する動きベクトルを補正して出力する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、動画像のデータ量の圧
縮を行う画像処理装置で用いる動き予測を行うプロセッ
サに関し、特に、並列配置して動作させることが可能な
動き予測プロセッサに関する。
【0002】
【従来の技術】動画像はデータ量が非常に多いため、し
ばしば圧縮して伝送あるいは記録し、受信あるいは再生
側で伸長するという処理が行なわれる。このような圧縮
/伸長は符号化/復号化とも呼ばれ、例えばテレビ電
話、テレビ会議システム等で用いるCCITT勧告H.
261方式、蓄積媒体への記録等に用いる蓄積用動画像
符号化国際標準方式(MPEG;Motion Picture Im
age Coding Experts Group、以下「MPEG方式」
という)が知られている。
【0003】このような圧縮方式では、動き補償フレー
ム間予測符号化方式が採用されている。これは、動画像
を構成する各フレームの相関が高いため、過去に符号化
したフレームから予測フレームを作成し、現在符号化し
ているフレーム(以下「現フレーム」という)と予測フ
レームの差分すなわち予測誤差を符号化することにより
圧縮率を上げる方式である。
【0004】また、動いている物体は、フレーム内で少
しずつ位置を変えるので、予測フレームを物体の動きに
従って移動させた後に予測誤差をとれば予測誤差が小さ
くなり、圧縮率をさらに上げることができる。この動き
を表す情報は動きベクトルと呼ばれ、予測誤差とともに
伝送あるいは記録される。
【0005】予測フレームは、過去に伝送あるいは記録
したフレームから作成されるが、CCITT勧告H.2
61方式では、1フレーム前(過去)のフレームを予測
フレームとしている。
【0006】また、MPEG方式では、数フレーム前の
過去のフレームの他に数フレーム後の未来のフレーム、
及びこの過去のフレームと未来のフレームを時間軸方向
で内挿して得られる架空のフレームを予測フレームとす
ることができる。
【0007】但し、未来のフレームから予測フレームを
作成する場合、フレームの順番を入れ替えて、現フレー
ムはそれが参照する未来のフレームの後に符号化され
る。
【0008】また、動画像の場面が変わった場合など予
測フレームとの相関が低い場合には、予測誤差を符号化
するよりも、現フレームをそのまま独立して符号化する
方が圧縮率が高くなる。従って予測誤差を符号化する場
合と現フレームをそのまま符号化する場合を適応的に切
り替えて圧縮する。
【0009】以下では、過去のフレームを予測フレーム
とする場合を順方向予測符号化、未来のフレームを予測
フレームとする場合を逆方向予測符号化、過去及び未来
のフレームを時間軸方向で内挿して得られる架空のフレ
ームを予測フレームとする場合を両方向予測符号化とい
う。そしてこれら3つをフレーム間予測符号化(inter-
frame coding)という。
【0010】現フレームをそのまま符号化する場合をフ
レーム内符号化(intra-frame coding)という。
【0011】MPEG方式では順方向予測符号化、逆方
向予測符号化、両方向予測符号化及びフレーム内符号化
が可能であり、またCCITT勧告H.261方式では
順方向予測符号化とフレーム内符号化が可能である。
【0012】図10にCCITT勧告H.261方式に
従う動画像符号化方式、図13にMPEG方式に従う動
画像符号化方式の具体的な処理手順をそれぞれ示す。
【0013】本発明は、図10の動き予測111及び図1
3の動き予測121の処理を行う動き予測プロセッサに関
するものであるが、始めに、これらの符号化方式全体に
ついて図を参照しながら説明する。
【0014】まず、図10を参照して、CCITT勧告
H.261方式に沿った動画像符号化方式について説明
する。
【0015】現フレームは、図11に示すように正方形
のブロックに分割され、順に図10の端子100に与えら
れて符号化される。ブロックの大きさとして、水平方向
16画素×垂直方向16画素が用いられるが、以下では簡単
に表わすため、これよりも小さな大きさで説明する。
【0016】現フレームの中で、現在処理中のブロック
を現ブロックという。
【0017】参照フレームメモリ112には、動きベクト
ルを求める際に参照する参照フレームが格納されてい
る。CCITT勧告H.261方式では、順方向予測で
参照する1フレーム前の輝度成分が格納されている。
【0018】動き予測111には、この現ブロックと参照
フレームメモリ112から読み出された参照領域が供給さ
れる。参照領域は、通常、参照フレーム内で現ブロック
と同じ位置のブロックを含む、現ブロックより大きな領
域とされる。そして動きベクトルはこの参照領域内で検
出される。
【0019】動き予測111内部の動きベクトル検出114で
は、参照領域内で、現ブロックと最も類似しているブロ
ック(以下「類似ブロック」という)を探索し、動きベ
クトルを局所復号フレームメモリ110に出力する。
【0020】図11にこれらの画像上の関係を示す。参
照領域4内で探索した類似ブロック5を現フレーム1に
投影した位置6と現ブロック3の位置との差が、現ブロ
ックの動きベクトル7となる。
【0021】このとき、動き予測111内部の動きベクト
ル検出114から、現ブロックと類似ブロックの類似性を
評価するデータを算出し、動き予測111内部の符号化タ
イプ判定115において、順方向予測符号化とフレーム内
符号化のうちどちらが圧縮率が高くなるかを推定する。
そしてその判定結果である符号化タイプをセレクタ102
に出力する。
【0022】セレクタ102には、局所復号フレームメモ
リ110から出力される予測ブロックと値が全て0のブロ
ックが接続されている。ここで、予測ブロックは局所復
号フレームメモリ110に格納されているフレームの類似
ブロックの位置にあるブロックであり、現ブロックの位
置と入力される動きベクトルからフレーム上の位置が定
まり出力される。
【0023】セレクタ102は、符号化タイプが順方向予
測符号化の場合には予測ブロックを選択し、フレーム内
符号化の場合には値が全て0のブロックを選択して、減
算器101及び加算器109に出力する。従って減算器101か
らは、符号化タイプが順方向予測符号化の場合には、現
ブロックと予測ブロックの差分すなわち予測誤差ブロッ
クが出力され、フレーム内符号化の場合には、現ブロッ
クと値が全て0のブロックの差分すなわち現ブロックが
そのまま出力される。
【0024】予測誤差ブロックあるいは現ブロックは、
DCT103において2次元離散コサイン変換(Discrete
Cosine Transform)により周波数成分に変換され、量子
化104に出力される。量子化104ではこの周波数成分を量
子化しきい値というパラメータで除算する。
【0025】量子化しきい値は、一般に高周波成分が大
きく、低周波成分が小さくなっており、この結果、高周
波成分を粗く、低周波成分を細かく量子化する。これに
より、高周波成分の情報が多少失われるが、この影響は
人の目につきにくいため画質を落とさずに圧縮すること
が可能になる。
【0026】量子化された周波数成分は、ハフマン符号
化105で統計的な性質を利用してさらに圧縮され、端子1
06から出力される。また動き予測111から出力された符
号化タイプは、それが順方向予測符号化の場合には動き
ベクトルと共に端子106から出力される。
【0027】一方、現フレームを後続のフレームの予測
フレームとして用いるため、量子化した周波数成分は逆
量子化107にも出力され、逆量子化107では量子化しきい
値との乗算を行い、周波数成分を復元する。
【0028】そして、復元された周波数成分を逆DCT
108で2次元逆離散コサイン変換し、予測誤差ブロック
あるいは現ブロックを復元して加算器109に出力する。
但し、これらは周波数成分を一度量子化していること、
及びDCTと逆DCTの演算誤差により、DCT103に
入力した予測誤差ブロックあるいは現ブロックとは一致
しないが、十分に近い値をとることができる。
【0029】加算器109では、符号化タイプが順方向予
測符号化の場合には復元された予測誤差ブロックとセレ
クタ102から出力される予測ブロックとを加算し、現ブ
ロックを復号する。また符号化タイプがフレーム内符号
化の場合には復元された現ブロックと値が全て0のブロ
ックとを加算し、同様に現ブロックを復号する。
【0030】このように復号された現ブロックは局所復
号フレームメモリ110に格納され、後続のフレームの予
測フレームとして用いられる。また参照フレームメモリ
112の更新も行なう。参照フレームメモリ112に格納する
参照フレームは、局所復号フレームメモリ110に格納す
る復号ブロックのうち動き予測で用いる輝度成分のブロ
ックを格納する。
【0031】以上説明したように、現フレームをブロッ
ク毎に順方向予測符号化あるいはフレーム内符号化して
圧縮する。
【0032】図10の動き予測111の処理は、参照領域
の中から類似ブロックを探索し、動きベクトルを検出す
ること及び符号化タイプを決定することであるが、この
うち動きベクトル検出は、参照領域内で現ブロックと同
じ大きさのブロックを切り出し、通常、これらのブロッ
クを構成する画素の絶対誤差の和(以下「予測誤差絶対
値和」という)を計算し、絶対誤差の和が最小となるブ
ロックを類似ブロックとする方法が採られている。
【0033】すなわち、ブロックの大きさを水平方向M
画素×垂直方向M画素として、現ブロックをf(ix,iy)、
参照領域内から切り出したブロックをg(ix+vx,iy+vy)
(ix,iyはそれぞれ水平方向、垂直方向の座標で0≦ix,i
y≦M-1,vx,vyはそれぞれ現ブロックとの位置の差を示
す水平方向、垂直方向成分)とすると、類似ブロックは
次式(1)で表される予測誤差絶対値和が最も小さいブロ
ックとなり、また動きベクトルはこのときの(vx,xy)で
与えられる。
【0034】
【数1】
【0035】参照領域内で現ブロックと同じ大きさのブ
ロックを切り出し、これらのブロックの予測誤差絶対値
和を計算することを、以下ではブロックマッチングを行
うという。
【0036】また、符号化タイプは、本来、順方向予測
符号化を行った場合とフレーム内符号化を行った場合の
符号量を直接比較して小さい方を選択するのが望まし
い。
【0037】しかし、この場合2回符号化を行うことに
なり、処理時間が長くなるため一般に行われていない。
その代わり上記したように、どちらが符号量が小さくな
るかを推定して符号化タイプを判定する方法が採られて
いる。
【0038】これは、例えば次式(2)で表される現ブロ
ックの平均値からの偏差の絶対値和(以下「AC成分絶
対値和」という)と動きベクトル検出の際に求められる
予測誤差絶対値和の最小値との比較により行う。
【0039】一例として、(予測誤差絶対値和の最小
値)<(AC成分絶対値和)の場合には順方向予測符号
化を、(予測誤差絶対値和の最小値)≧(AC成分絶対
値和)の場合にはフレーム内符号化を行なうものと判定
することができる。
【0040】
【数2】
【0041】ここに、平均値favrは次式(2)´で与えら
れる。
【0042】
【数3】
【0043】次に、図13のMPEG方式に従う動画像
符号化方式について説明する。MPEG方式では、順方
向予測符号化、逆方向予測符号化、両方向予測符号化の
3種類のフレーム間予測符号化が可能とされ、これらの
符号化タイプの判定の際に予測符号化方式の選択が必要
になる。
【0044】そこで図13の動画像符号化方式には、図
10の構成に更に、両方向予測ブロック作成116、セレ
クタ118が付加されており、動き予測121には3種類の予
測ブロック候補の中から最も圧縮率が高くなるブロック
を選択するための予測誤差評価126が加えられている。
【0045】また、局所復号フレームメモリ110、参照
フレームメモリ112には、順方向予測のための過去のフ
レームと逆方向予測のための未来のフレームの2枚が格
納されている。その他の処理は図10で説明したものと
同様であり、以下では図10の方式との相違点を説明す
る。
【0046】動き予測121には、現ブロックと参照フレ
ームメモリ112から読み出された参照領域が供給され
る。MPEG方式では、過去と未来の2つのフレームか
ら動きベクトルを求めるため、1個の現ブロックの処理
で両方のフレームから別々に参照領域を読み込み、2回
の動きベクトル検出を行う。そしてそれぞれの動きベク
トルを局所復号フレームメモリ110に出力し、ここに格
納されている過去のフレームから順方向予測符号化で用
いる予測ブロック候補、未来のフレームから逆方向予測
符号化で用いる予測ブロック候補を出力する。
【0047】さらに、これら順方向及び逆方向の予測ブ
ロック候補を両方向予測ブロック作成116において平均
し、両方向予測符号化で用いる予測ブロック候補を生成
する。このようして得られた3種類の予測ブロック候補
をセレクタ118及び動き予測121の予測誤差評価126に出
力する。
【0048】予測誤差評価126では、3種類の予測ブロ
ック候補から最も圧縮率が高くなると推定される1つの
予測ブロック候補を選択する。選択方法としては、例え
ば上式(1)のg(ix+vx,iy+vy)の替わりに、各予測ブロッ
ク候補を当てはめて計算した予測誤差絶対値和が最小に
なる候補を選ぶという方法が採られる。そして、選択さ
れたフレーム間予測方式とその予測誤差絶対値和を符号
化タイプ判定125に出力する。
【0049】符号化タイプ判定125では、図10の符号
化タイプ判定115と同様に現ブロックのAC成分絶対値
和と予測誤差評価126から入力した予測誤差絶対値和を
比較して、フレーム間予測符号化又はフレーム内符号化
を判定する。そして、判定結果である符号化タイプをセ
レクタ102,118に出力する。
【0050】MPEG方式の符号化タイプとしては、前
記の通り、順方向予測符号化、逆方向予測符号化、両方
向予測符号化、フレーム内符号化のいずれかであり、セ
レクタ118は、順方向予測符号化、逆方向予測符号化、
両方向予測符号化の判定に応じてそれぞれの予測ブロッ
ク候補をセレクタ102に出力する。またセレクタ102は符
号化タイプがフレーム内符号化の場合には値が全て0の
ブロックを選択し、それ以外の場合にはセレクタ118の
出力を選択する。
【0051】これにより、符号化タイプに応じて3種類
の予測ブロック候補と値が全て0のブロックのうちいず
れか1つがセレクタ102から出力される。そして、図1
0の動画像符号化方式と同様に減算器101から予測誤差
ブロックあるいは現ブロックが出力され、後段で符号化
される。
【0052】一方、現フレームを後続のフレームの予測
フレームとして用いる場合には、加算器109で復号した
現ブロックを局所復号フレームメモリ110の古い方のフ
レームと入れ替える。また参照フレームメモリ112の更
新も同様に行う。
【0053】ところで、参照領域の大きさを水平方向N
画素×垂直方向N画素(N>M)とすると、動きベクト
ル検出では(N−M+1)2回のブロックマッチングを
行い、(N−M+1)2個の予測誤差絶対値和から最小
値を求めなければならない。さらに、1回のブロックマ
ッチングにはM2回絶対誤差の和を求める必要がある。
そして、参照領域が広く、且つ画面内に入っていれば、
その分、画質を維持したまま圧縮率が上がる可能性があ
る。
【0054】このように動きベクトル検出は非常に多く
の計算を要するため、従来から処理時間を短くする工夫
がなされている。
【0055】なお、上式(2)で表されるAC成分絶対値
和は、上式(1)のg(ix+vx,iy+vy)をfavrとして同様に計
算することができる。また、favrも上式(1)のg(ix+vx,i
y+vy)を0として同様に計算し、(M×M)で除算する
ことにより求めることができる。通常Mは2のべき乗と
する場合が多いため、除算は下位ビットの切り捨てで実
行できる。従って、一般に予測誤差絶対値和を計算する
装置で、符号化タイプの決定に必要な評価データを求め
ることは可能である。
【0056】動きベクトル検出を行う装置の従来例とし
て、例えば特開平3−106283号公報、あるいは特
開平5−12916号公報に開示された動ベクトル検出
装置がある。前者にはブロックマッチングを行う手段を
複数備えた演算モジュールにより動きベクトルを検出す
る装置が提案されており、後者にはこのような演算モジ
ュールを複数個多段接続してより高速に動きベクトルを
検出する構成が提案されている。
【0057】図4に、特開平5−12916号公報の動
きベクトル検出装置を用いた動き予測プロセッサのブロ
ック図を示す。この動き予測プロセッサは、水平方向±
1画素、垂直方向±4画素の範囲の動きベクトルを検出
可能な演算モジュールが3個接続し、水平方向±4画
素、垂直方向±4画素の範囲の動きベクトルを検出す
る。
【0058】ここでは現ブロックを水平方向3画素×垂
直方向3画素、参照領域を水平方向11画素×垂直方向11
画素とし、この参照領域のフレーム上の位置は、現ブロ
ック位置を中心とするようにとっている。この場合、参
照領域は現ブロックの位置を中心として水平方向±4画
素、垂直方向±4画素拡大した領域となるため、この範
囲の動きベクトルを検出できる。
【0059】この例では、(11−3+1)2=92回のブ
ロックマッチングにより得られる92個の予測誤差絶対
値和から最小値を求めなければならない。
【0060】参照領域を図5に示すようにg(kx,ky)(k
x,kyはそれぞれ水平方向、垂直方向の座標で、0≦kx,ky
≦10)とすると、図4の演算モジュール75が担当する領
域は図5で斜線を付した0≦kx≦4,0≦ky≦10、演算モジ
ュール76が担当する領域は3≦kx≦7,0≦ky≦10、演算モ
ジュール77が担当する領域は6≦kx≦10,0≦ky≦10とな
り、それぞれの領域は水平方向5画素×垂直方向11画素
である。
【0061】この領域の中で、各演算モジュールはブロ
ックマッチングをそれぞれ水平方向3回×垂直方向9回
繰り返す。ここで、各演算モジュールが担当する参照領
域が水平方向5画素×垂直方向11画素であるため、これ
を現ブロック位置を中心とするようにとれば、水平方向
±1画素、垂直方向±4画素の範囲の動きベクトルを検
出できることがわかる。
【0062】図4に示すように、各演算モジュールは内
部に3個のブロックマッチング手段を備えている。そし
て、割り当てられた動きベクトル検出範囲を3分割し、
それぞれを3個のブロックマッチング手段により処理す
る。
【0063】例えば、演算モジュール75の中の1番目の
ブロックマッチング手段161は、0≦kx≦2,0≦ky≦10内
でブロックマッチングを垂直方向に9回繰り返す。2番
目のブロックマッチング手段162は、1≦kx≦3,0≦ky≦1
0内でブロックマッチングを垂直方向に9回繰り返す。
3番目のブロックマッチング手段163は、2≦kx≦4,0≦k
y≦10内でブロックマッチングを垂直方向に9回繰り返
し、演算モジュール75として、0≦kx≦4,0≦ky≦10の範
囲の水平方向3回×垂直方向9回のブロックマッチング
を行う。
【0064】また、これらの演算モジュールに参照領域
の画素を供給するために、参照領域を演算モジュールの
数より1つ多い4個の領域に分割して、並列に画素を供
給する。
【0065】次に、処理タイミングについて説明する。
各演算モジュールは、水平方向3回のブロックマッチン
グを1サイクルとして、担当領域を9サイクルで処理す
る。1サイクル中に演算モジュール内の3個のブロック
マッチング手段がそれぞれ1回ずつブロックマッチング
を行うことになる。
【0066】まず、第1サイクルにおいて、図4の端子
70には、現ブロックf(ix,iy)(ix,iyはそれぞれ水平方
向、垂直方向の座標で、0≦ix,iy≦2)が、水平方向に
1画素ずつスキャンする順序、すなわちf(0,0),f(1,0),
f(2,0),f(0,1),…,f(2,2)の順に入力される。
【0067】これらは、3画素分の遅延の後、信号線17
1から1画素ずつ演算モジュール76へ供給される。すな
わち、端子70にf(1,1)が供給される時には信号線171にf
(0,0)が現れる。さらに同様にして、3画素分の遅延の
後、信号線172から演算モジュール77へ供給される。
【0068】また、端子71からは、図5のB1で示され
るg(kx,ky)(0≦kx≦2,0≦ky≦10)の上部9画素が、水
平方向に1画素ずつスキャンする順序、すなわちg(0,
0),g(1,0),g(2,0),g(0,1),…,g(2,2)の順に入力され
る。これらは、端子70にf(0,0)が供給されるときに端子
71にg(0,0)が供給されるようなタイミングで入力され
る。
【0069】そして、g(0,0)から3画素分の遅延の後、
端子72から図5のB2で示されるg(kx,ky)(3≦kx≦5,0
≦ky≦10)の上部9画素が、水平方向に1画素ずつスキ
ャンする順序、すなわちg(3,0),g(4,0),g(5,0),g(3,1),
…,g(5,2)の順に入力される。
【0070】また、g(3,0)から3画素分の遅延の後、端
子73から図5のB3で示されるg(kx,ky)(6≦kx≦8,0≦
ky≦10)の上部9画素が、前記と同様にしてg(6,0),g
(7,0),g(8,0),g(6,1),…,g(8,2)の順に入力される。
【0071】さらに、g(6,0)から3画素分の遅延の後、
端子74から図5のB4で示されるg(kx,ky)(9≦kx≦10,
0≦ky≦10)の上部6画素が、右端にもう1列加えて9
画素あるようにみなされ、水平方向に1画素ずつスキャ
ンする順序、すなわちg(9,0),g(10,0),X,g(9,1),…,g
(10,2)の順に入力される。ここでXは無効なデータが入
力されることを示す。このように演算モジュール75には
次の順で画素が供給される。
【0072】
【数4】
【0073】演算モジュール76には、演算モジュール75
から3画素遅れて次の順で画素が供給される。
【0074】
【数5】
【0075】演算モジュール77には、演算モジュール76
から3画素遅れて次の順で画素が供給される。
【0076】
【数6】
【0077】このように現ブロックの画素を供給し、同
時に供給される参照領域の画素の一方を以下のように適
切に選択することにより、演算モジュール75の3個のブ
ロックマッチング手段は上式(1)の予測誤差絶対値和計
算を行い、第1サイクルを実行することができる。演算
モジュール75の1番目のブロックマッチング手段161が
選択するg(kx,ky)を次に示す。
【0078】
【数7】
【0079】演算モジュール75の2番目のブロックマッ
チング手段162が選択するg(kx,ky)を次に示す。端子7
1,72の選択はセレクタ166が行う。
【0080】
【数8】
【0081】演算モジュール75の3番目のブロックマッ
チング手段163が選択するg(kx,ky)を次に示す。端子7
1,72の選択はセレクタ167が行う。
【0082】
【数9】
【0083】これらと端子70に加えられる現ブロックの
絶対誤差を求めて累算することにより、第1サイクルで
実行する水平方向3回のブロックマッチングが行なわれ
る。
【0074】同様にして演算モジュール76の3個のブロ
ックマッチング手段は、演算モジュール75から3画素分
の遅延の後、参照領域の画素の一方を以下のように適切
に選択することにより、第1サイクルを実行することが
できる。演算モジュール76の1番目のブロックマッチン
グが選択するg(kx,ky)を次に示す。
【0084】
【数10】
【0085】演算モジュール76の2番目のブロックマッ
チング手段が選択するg(kx,ky)を次に示す。
【0086】
【数11】
【0087】演算モジュール76の3番目のブロックマッ
チング手段が選択するg(kx,ky)を次に示す。
【0088】
【数12】
【0089】これらと端子171に加えられる現ブロック
の絶対誤差を求めて累算することにより、第1サイクル
で実行する水平方向3回のブロックマッチングが行なわ
れる。
【0090】さらに同様にして、演算モジュール77の3
個のブロックマッチング手段は演算モジュール76から3
画素分の遅延の後、参照領域の画素の一方を以下のよう
に適切に選択することにより、第1サイクルを実行する
ことができる。演算モジュール77の1番目のブロックマ
ッチングが選択するg(kx,ky)を次に示す。
【0091】
【数13】
【0092】演算モジュール77の2番目のブロックマッ
チング手段が選択するg(kx,ky)を次に示す。
【0093】
【数14】
【0094】演算モジュール77の3番目のブロックマッ
チング手段が選択するg(kx,ky)を次に示す。
【0095】
【数15】
【0096】これらと端子172に加えられる現ブロック
の絶対誤差を求めて累算することにより、第1サイクル
で実行する水平方向3回のブロックマッチングが行なわ
れる。
【0097】以上のようにして3個の演算モジュール75
〜77は第1サイクルのブロックマッチングを行う。そし
て、第1サイクルの終わりに第1比較サイクルを実行す
る。まず、演算モジュール76内で求められた3個の予測
誤差絶対値和は転送手段164により順に比較手段165に出
力される。
【0098】演算モジュール76でも同様にして、3個の
予測誤差絶対値和を順に信号線174を介して演算モジュ
ール75に転送する。これらは演算モジュール75内の転送
手段を介して演算モジュール75内の比較手段165に転送
される。
【0099】また、演算モジュール77でも同様にして、
3個の予測誤差絶対値和を順に信号線173を介して演算
モジュール76に転送する。これらは演算モジュール76内
の転送手段を介して演算モジュール75に転送される。
【0100】従って、演算モジュール75内の比較手段16
5は、演算モジュール75の3個の予測誤差絶対値和に続
いて演算モジュール76で求められた3個の予測誤差絶対
値和を入力し、さらに続いて演算モジュール77で求めら
れた3個の予測誤差絶対値和を入力する。
【0101】演算モジュール75内の比較手段165では、
転送されてくる第1サイクルの予測誤差絶対値和9個を
1つずつ調べ、それまでの最小値と比較し、最小値及び
それらが得られた箇所を更新していく。この結果、第1
サイクルでの予測誤差絶対値和の最小値と、最小値が得
られた参照領域中のブロックの位置がわかる。
【0102】なお、現ブロックが画面の端例えば左上角
にある場合には、参照領域の現ブロック位置より左側の
0≦kx≦3、あるいは上側の0≦ky≦3の範囲は画面内に収
まらない。従ってこの範囲の参照領域には通常、無効な
データが読み込まれ、出力される予測誤差絶対値和は無
効な値となる。
【0103】そこで、参照領域監視手段78が現ブロック
のフレーム上の座標を監視し、動きベクトル検出範囲と
照らし合わせて、参照領域が画面外になる場合の予測誤
差絶対値和は無視するよう演算モジュール75内の比較手
段165を制御する。
【0104】次に第2サイクルを実行する。第2サイク
ルでは、第1サイクルと同様に図4の端子70には現ブロ
ックf(ix,iy)を、水平方向に1画素ずつスキャンする順
序、すなわちf(0,0),f(1,0),f(2,0),f(0,1),…f(2,2)の
順に入力する。また端子71から、図5のB1で示される
g(kx,ky)(3≦kx≦2,0≦ky≦10)のky=1から下の9画素
をg(0,1),g(1,1),g(2,1),g(0,2),…g(2,3)の順に入力す
る。これらは第1サイクルと同様に、端子70にf(0,0)、
端子71にg(0,1)が同時に現れるよう供給する。
【0105】また、g(0,1)から3画素分の遅延の後、端
子72から図5のB2で示されるg(kx,ky)(3≦kx≦5,0≦
ky≦10)のky=1から下の9画素を同様にg(3,1),g(4,1),
g(5,1),g(3,2),…g(5,3)の順に入力する。さらにg(3,1)
から3画素分の遅延の後、端子73から図5のB3で示さ
れるg(kx,ky)(6≦kx≦8,0≦ky≦10)のky=1から下の9
画素をg(6,1),g(7,1),g(8,1),g(6,2),…g(8,3)の順に入
力する。
【0106】さらに、g(6,1)から3画素分の遅延の後、
端子74から図5のB4で示されるg(kx,ky)(9≦kx≦10,
0≦ky≦10)のky=1から下の6画素を、右端にもう1列
加えて9画素あるようにみなして、g(9,1),g(10,1),X,
g(9,2),…g(10,3)の順に入力する。ここで、Xは無効な
データが入力されることを示す。
【0107】以上のように、第1サイクルで読み出した
参照領域の画素から垂直方向に1画素下がった位置の画
素を供給することにより、第1サイクルと同様に、各演
算モジュールでそれぞれ3回のブロックマッチングを行
う。
【0108】続いて第2比較サイクルを行う。ここでは
求められた9個の予測誤差絶対値和を1つずつ、第1比
較サイクルと同様に演算モジュール75の比較手段165に
転送し、これを第1サイクルでの最小値と比較し、最小
値とそれが得られた位置を更新する。この結果、第2サ
イクルまでの予測誤差絶対値和の最小値とそれが得られ
た参照領域中のブロックの位置が求められる。
【0109】以上のサイクルをさらに7回繰り返すこと
により、水平方向11画素×垂直方向11画素の参照領域内
で予測誤差絶対値和が最小のブロック、すなわち類似ブ
ロックを求めることができる。この結果、予測誤差絶対
値和の最小値と動きベクトルが得られる。そして予測誤
差絶対値和の最小値を符号化タイプ選択器160に、動き
ベクトルを端子176に出力する。
【0110】また、AC成分絶対値和をAC成分絶対値
和計算手段79で求めておく。これは例えば演算モジュー
ルと同じブロックマッチング手段を1個備えた構成で、
第1サイクルで入力の一方に現ブロック、他方に0を供
給しながら、上式(2)´のfavrを計算し、第2サイクル
に入力の一方に現ブロック、他方にfavrを供給して算出
することができる。
【0111】符号化タイプ選択器160は、AC成分絶対
値和と予測誤差絶対値和の最小値を入力し、(予測誤差
絶対値和の最小値)<(AC成分絶対値和)の場合には
順方向予測符号化を選択し、(予測誤差絶対値和の最小
値)≧(ACの成分絶対値和)の場合にはフレーム内符
号化を選択して端子175に出力する。
【0112】このようにして、図10に示す動画像符号
化方式の動き予測111が出力する符号化タイプを端子175
に、動きベクトルを端子176に出力することができる。
【0113】この従来例の処理の様子を図6に示す。図
6では、演算モジュール75が実行するサイクルをPj(j=1
〜9)、演算モジュール76が実行するサイクルをQj(j=1〜
9)、演算モジュール77が実行するサイクルをRj(j=1〜9)
で示している。また、各サイクルの終わりに実行する比
較サイクルをCj(j=1〜9)で示している。Pj,Qj,Rjの処
理タイミングの間には3画素分の遅延がある。
【0114】以上の例は現ブロックが水平方向3画素×
垂直方向3画素、参照領域が水平方向11画素×垂直方向
11画素の場合の例であったが、一般に水平方向M画素×
垂直方向M画素の現ブロックの動きベクトル検出をp個
のブロックマッチング手段をもつ演算モジュールをm段
接続することにより、水平方向N′画素×垂直方向N′
画素の参照領域内で行うことができる。ここでN′は次
式(3)で表される。なお、pはMと同じ程度の値にする
のが効率がよい。
【0115】 N′=M+p−1+(m−1)p=M+mp−1 …(3)
【0116】これを実行するには、参照領域をm+1個
の領域(m=3の場合には図5に示すB1,B2,B
3,B4の4つの領域)に分割して、そこからm個の演
算モジュールに画素を同時に供給しなければならない。
【0117】
【発明が解決しようとする課題】以上説明したように、
図4に示す従来の動き予測プロセッサは、複数の演算モ
ジュールを用いてブロックマッチングを並列に行い、1
個の演算モジュールを用いる場合より広い範囲の動きベ
クトルを検出できる。
【0118】しかし、動きベクトル検出範囲をさらに広
げて画質を維持したまま圧縮率を上げる場合を考える
と、従来の予測プロセッサでは対応困難な問題点があ
る。すなわち、p個のブロックマッチング手段をもつ演
算モジュールを用意し、これをm段接続する場合を考え
ると、図6に示すように、演算モジュール間にはp画素
分の処理遅延があるため、段数が増えればそれだけ全体
の処理時間が長くなる。従って、演算モジュールの段数
が増えると実時間処理が困難になる。
【0119】また、参照領域をm+1の領域に分割し、
分割した領域から所定のタイミングで並列に画素を読み
出さなければならないため、参照領域を格納するメモリ
構成及びアドレス生成器が複雑になる。このため、従来
の動き予測プロセッサで演算モジュールの数をさらに増
やして動きベクトル検出範囲を広げることは容易ではな
いという問題がある。
【0120】従って、本発明は前記問題点を解消し、並
列配置することにより、従来より容易に動きベクトル検
出範囲を広げることが可能な動き予測プロセッサを提供
することを目的とする。
【0121】
【課題を解決するための手段】本発明はかかる目的を達
成するため、以下の特徴を有する動き予測プロセッサを
提供する。
【0122】すなわち、本発明の動き予測プロセッサ
は、第1の視点において、フレームをブロックに分割し
て読み込む第1の手段と、前記ブロック毎にフレーム間
予測符号化の種別又はフレーム内符号化を表す符号化タ
イプデータを決定する第2の手段と、前記フレーム間予
測符号化を行う場合の動きベクトルを検出する第3の手
段と、前記動きベクトルを検出する際に参照する参照領
域を参照フレームメモリから読み出すためのアドレスを
生成する第4の手段と、を備え、前記第1の手段は、現
在処理中のブロックの座標を算出し、前記第4の手段
は、前記アドレスに前記参照領域の位置を変更するため
のオフセットを加えて出力し、前記第3の手段は、前記
フレーム間予測符号化を行った場合の符号量を推定する
評価データを算出し、更に、前記ブロックの座標、前記
評価データ、前記動きベクトル、及び前記符号化タイプ
データを所定のタイミングで出力する手段を、具備して
成ることを特徴とする。
【0123】また、本発明は、第2の視点において、前
記第1の視点の動き予測プロセッサをn個配置し、これ
らn個の動き予測プロセッサのそれぞれに参照フレーム
メモリを接続した動き予測装置であって、前記n個の動
き予測プロセッサのうち第1の動き予測プロセッサが入
力するブロックを他のn−1個の動き予測プロセッサに
供給し、前記第1の動き予測プロセッサには、オフセッ
トを0として与え、前記他のn−1個の動き予測プロセ
ッサには、それぞれが入力する参照領域が前記第1の動
き予測プロセッサが入力する参照領域と位置が異なるよ
うにオフセットを与え、前記n個の動き予測プロセッサ
から、それぞれが入力する参照領域が画面内に入るもの
を選択し、さらにこれらの動き予測プロセッサの中で評
価データが最小となる動き予測プロセッサを選択する選
択手段と、前記選択手段により選択される動き予測プロ
セッサが出力する動きベクトルを、該動き予測プロセッ
サに与えられたオフセットに合わせて補正して出力する
手段と、を具備して成る動き予測装置を提供する。
【0124】
【発明の概要】本発明は、フレーム間予測符号化あるい
はフレーム内符号化を指定する符号化タイプと、フレー
ム間予測符号化を行う場合の動きベクトルとを出力する
動き予測プロセッサにおいて、所定のタイミングで現在
処理中のブロックの座標を出力し、参照フレームメモリ
から参照領域を読み出すアドレスにオフセットを加え、
フレーム間予測符号化を行った場合の符号量を推定する
評価データを出力する。
【0125】さらに、この動き予測プロセッサをn個配
置し各々に参照フレームメモリを接続し、n個の動き予
測プロセッサに同一のブロックと異なる参照領域を供給
し、参照領域が画面内に入る動き予測プロセッサの中か
ら、最も評価データが小さいものを選択し、これが出力
する動きベクトルを補正して出力する。
【0126】本発明に係る動き予測プロセッサは、後に
詳述されるように、並列配置することにより動きベクト
ル検出範囲を広げることが可能とされ、しかも並列配置
した構成でも全体の処理時間が単体で用いた場合とほと
んど変わらないという特徴がある。すなわち、本発明に
係る動き予測プロセッサを並列配置した構成では、すべ
ての動き予測プロセッサが同時に処理を完了するため、
処理時間が短くできる。従って、並列配置する動き予測
プロセッサを増やして、動きベクトル範囲をさらに広げ
る場合でも実時間処理が可能となり、例えばテレビ会議
/電話符号化標準H.261、及び蓄積用動画像符号化
標準MPEG等に準拠するいずれの動き補償にも適用可
能である。
【0127】
【実施例】図面を参照して、本発明の実施例を以下に説
明する。
【0128】
【実施例1】図1に本発明の第1の実施例に係る動き予
測プロセッサのブロック図を示す。これは図10に示し
た動き予測111に対応する処理を行うものである。図2
には本発明の動き予測プロセッサを5個並列配置して参
照領域を拡大する応用例を示す。この応用例も図10に
示した動き予測111に対応する処理を行う。以下では、
まず図1の動き予測プロセッサの動作を説明し、次に図
2の応用例について説明する。
【0129】以下では、現ブロックは水平方向4画素×
垂直方向4画素の大きさとし、現フレーム及び参照フレ
ームの大きさは水平方向NX画素×垂直方向NY画素の大き
さとして説明を行なう。ここでNXは現ブロックの水平方
向の画素数4の倍数であり、NYは現ブロックの垂直方向
の画素数4の倍数とする。但し、これを満たさない場合
には、現ブロックの水平方向、垂直方向の画素数の倍数
となるよう画面の右端、下端に適当が画素を補ってフレ
ームを構成すればよい。
【0130】また、参照フレームメモリのアドレスは、
図12に示すように1つのアドレスに1画素が格納され
ているものとする。すなわち、参照フレームをh(jx,jy)
(jx,jyはそれぞれ水平方向、垂直方向の座標で、0≦jx
<NX,0≦jy<NY)とすると、jy=0となる水平方向第1ラ
インをアドレス0番地からNX-1番地まで順に格納し、以
下同様に1ライン毎に画素を格納し、jy=NY-1となる第N
YラインをアドレスNX(NY-1)番地からNX*NY-1番地となる
よう格納する。従って、h(jx,jy)のアドレスはjx*NX+jx
となる。
【0131】さらに、参照領域は水平方向8画素×垂直
方向8画素の大きさとする。そして、参照領域のフレー
ム上の位置は、現ブロックのフレーム上の位置を中心に
上下左右に2画素ずつ広げた領域とする。従って、検出
可能な動きベクトルを(vx,vy)とすると、-2≦vx≦2,-2
≦vy≦2となる。
【0132】図1に示すように、本実施例の動き予測プ
ロセッサ30は、演算手段31、アドレス発生器33及び35、
符号化タイプ選択器32、パケットアドレス発生器34、パ
ケットアドレス線37、パケットデータ線36からなる。こ
のうち演算手段31とアドレス発生器33,35は、図10の
動きベクトル検出114に相当し、符号化タイプ選択器3
2、パケットアドレス発生器34は図10の符号化タイプ
判定115に相当する。以下この実施例の動作を説明す
る。
【0133】現フレームメモリ11に格納された現フレー
ムの中からアドレス発生器35が出力するアドレスに従っ
て読み出された現ブロックは、端子12から演算手段31に
供給される。一方、参照フレームメモリ21に格納された
参照フレームの中からアドレス発生器33が出力するアド
レスに従って読み出された参照領域も端子15から演算手
段31に供給される。
【0134】演算手段31は、従来例と同様に上式(1)で
表されるブロックマッチングを行い、現ブロックの動き
ベクトルと、予測誤差絶対値和の最小値と、上式(2)で
与えられる現ブロックのAC成分絶対値和を計算して出
力する。
【0135】このとき、アドレス発生器33が出力する現
ブロックのフレーム上の座標と動きベクトル検出範囲か
ら参照領域を監視し、参照領域が画面外になる場合の予
測誤差絶対値は無視する。この場合では、-2≦vx≦2,-2
≦vy≦2であるため、現ブロックが現フレームの上端、
下端、左端あるいは右端に位置する場合に、参照領域の
一部が画面外となる。これは、例えば図4の従来例で示
される演算モジュールの構成では、3個のブロックマッ
チング手段を備える1個の演算モジュールと、AC線分
絶対値和計算手段79、参照領域監視手段78により実現で
きる。このとき、1個の現ブロックの動きベクトル検出
に25回のブロックマッチングが必要になる。
【0136】演算手段31は、パケットアドレス線37上の
アドレス信号をデコードし、パケットアドレスが3のと
き動きベクトルをパケットデータ線36に出力する。演算
手段31は、予測誤差絶対値和を符号化タイプ選択器32
と、パケットアドレス線37上のパケットアドレスが1の
場合にパケットデータ線36へ出力する。また、演算手段
31はAC成分絶対値和を符号化タイプ選択器32に出力す
る。
【0137】符号化タイプ選択器32は、前記従来例と同
様な判定を行う。すなわち、(予測誤差絶対値和の最小
値)<(AC成分絶対値和)の場合に、順方向予測符号
化を判定し、(予測誤差絶対値和の最小値)≧(AC成
分絶対値和)の場合にフレーム内符号化を判定する。符
号化タイプ選択器32は、パケットアドレス線37上のパケ
ットアドレス信号をデコードし、パケットアドレスが2
の場合にこの符号化タイプをパケットデータ線36に出力
する。
【0138】アドレス発生器35は、現ブロックを構成す
る画素のアドレスを端子13から現フレームメモリ11に出
力するほか、パケットアドレス線37上のパケットアドレ
ス信号をデコードし、パケットアドレスが0の場合に、
現ブロックのフレーム上の座標を示す、ブロックの左上
角の画素の座標をパケットデータ線36に出力する。
【0139】アドレス発生器33は、端子17から供給され
るオフセットを加えたアドレスを端子16から参照フレー
ムメモリ21に出力する。
【0140】ここで、現ブロックの左上角の画素の座標
が(ix,iy)(0≦ix<NX,0≦iy<NY)の場合、参照領域を
構成する画素の座標(jx,jy)(0≦jx<NX,0≦jy<NY)
は、ix-2≦jx≦ix+5,iy-2≦jy≦iy+5となる。参照フレ
ームメモリのアドレスは図12に示すように割り付けら
れているので、参照領域を読み出すためにアドレス発生
器33が出力するアドレスは、参照領域を上端から第1ラ
イン、第2ラインと数えると以下のようになる。
【0141】
【数16】
【0142】動き予測プロセッサ30は、パケットデータ
線36が接続された端子14から、外部に現ブロックのフレ
ーム上の座標、予測誤差絶対値和の最小値、符号化タイ
プ、動きベクトルを出力する。この出力のタイミングを
制御するため、パケットアドレス発生器34が設けられて
おり、パケットアドレス発生器34は、端子19にパルス信
号が入力されるとパケットアドレスを0から3まで順に
発生し、パケットアドレス線37に出力する。パケットア
ドレス線37は、アドレス発生器35、演算手段31、符号化
タイプ選択器32に接続されており、パケットデータ線36
及び端子14に下記(5)に示す順番でパケットデータが出
力される。
【0143】
【数17】
【0144】図14に、動き予測プロセッサ30における
1ブロック処理のタイミング関係の一例を示す。図中に
おいて、タイミング発生器61は次の応用例で説明される
タイミング発生器であり、また図示複数のタイミング信
号(パルス信号)を供給する信号線は1本あるいは複数
本であってもよい。タイミング発生器61の出力パルス信
号は端子19に入力され、パケットアドレス発生器34は図
14に示すように、0〜3のパケットアドレスをパケッ
トアドレス線37上に巡回的に出力し、例えばパケットア
ドレスが0に変化したときアドレス発生器33及び35は動
作を開始し、且つ演算手段31は処理を開始する。そし
て、演算手段31は、パケットアドレスが1のとき上記
(5)に従い予測誤差絶対値和の最小値を、またパケット
アドレスが2のとき動きベクトルをそれぞれパケットデ
ータ線36上に出力する。なお、図14のタイミング図は
説明の便宜のためのものであり、本実施例における各タ
イミング幅等は図14に限定されるものでない。
【0145】次に、図1に示す本実施例の動き予測プロ
セッサ30単体を図10に示す動画像符号化方式の動き予
測111に応用する場合の動作を説明する。ここでは端子1
7に0を与えておく。この場合、アドレス発生器33はオ
フセットが0であるため、上式(4)から図12に示す参
照フレームメモリアドレスをそのまま出力する。従って
参照領域を動き予測111に供給することができる。
【0146】そして、現ブロックの処理が完了するタイ
ミングで、図10には示していないタイミング発生器か
ら端子19にパルス信号を与え、端子14から上記(5)で示
すパケットデータを出力する。図10のセレクタ102に
出力する符号化タイプ115及び局所復号フレームメモリ1
10に出力する動きベクトルは、パケットアドレス2と3
に対応するパケットデータを取り込むことにより得られ
る。このようして図1に示す動き予測プロセッサは図1
0の動画像符号化方式の動き予測111が出力するデータ
を供給する。すなわち、図1に示す本実施例のは図10
の動画像符号化方式の動き予測111に適用できる。
【0147】なお、図1の参照フレームメモリ21には、
動き予測プロセッサ30の外で復号された現ブロックの輝
度成分が端子20から格納されるが、このときの書き込み
アドレスは外部から与える。
【0148】
【応用例1】次に、図2を参照して、前記本実施例の動
き予測プロセッサの応用例について説明する。図2は図
1の動き予測プロセッサを5個並列形態に配置し、図1
の動き予測プロセッサ30より動きベクトルを広い範囲で
検出することにより、圧縮率を高めることが可能な応用
例である。
【0149】図2に示すように、本応用例は、図1と同
じ現フレームメモリ11と、動き予測プロセッサ51,52,
53,54,55及びそれぞれに接続された参照フレームメモ
リ56,57,58,59,60、タイミング発生器61、参照位置
指示器64、予測結果選択器62、動きベクトル補正器63か
らなる。ここで動き予測プロセッサ51〜55はいずれも図
1に示す動き予測プロセッサ30と同一のものが用いられ
ており、参照フレームメモリ56〜60は図1に示す参照フ
レームメモリ21と同一である。
【0150】次に、この応用例の動作について説明す
る。5個の動き予測プロセッサは同時に処理を開始し、
同期して動作する。但し、図1に示す端子17について
は、参照位置指示器64からそれぞれの動き予測プロセッ
サに以下の値を与える。
【0151】
【数18】
【0152】図1の端子17には、参照フレームメモリ21
から参照領域の画素を読み出すときに出力されるアドレ
スに加えるオフセットを与えるので、動き予測プロセッ
サ51が出力するアドレスをjy*NX+jx、読み出す参照領域
の画素をh(jx,jy)とすると、各プロセッサが同時に出力
するアドレスは次のようになる。
【0153】
【数19】
【0154】これらは、各動き予測プロセッサそれぞれ
に接続された参照フレームメモリ56〜59に出力される。
各参照フレームメモリには、図10と同様に、復号され
た現ブロックの輝度成分を端子20から同時に格納、更新
する。
【0155】このとき、書き込みアドレスは外部から同
じアドレスを指定する、従って、動き予測プロセッサ51
の参照領域を図3(A)に斜線を付して示す水平方向8
画素×垂直方向8画素の領域151とすると、次式(6)か
ら、動き予測プロセッサ52の参照領域は、動き予測プロ
セッサ51の参照領域より水平方向に4画素左、垂直方向
に4画素上の水平方向8画素×垂直方向8画素の領域15
2となり、同様にして、動き予測プロセッサ53の参照領
域は図3(A)の領域153、動き予測プロセッサ54の参
照領域は図3(A)の領域154、動き予測プロセッサ55
の参照領域は図3(A)の領域155となる。
【0156】現フレームメモリ11からは動き予測プロセ
ッサ51が出力するアドレスに従って現ブロックが読み出
され、動き予測プロセッサ51〜55に出力される。各動き
予測プロセッサは同期して動作するので、5個の動き予
測プロセッサは同じ現ブロックを同時に入力し、図3
(A)に示す異なる参照領域を入力することができる。
従って、5個の動き予測プロセッサは、各々に割り当て
られた異なる参照領域内で類似ブロックを並列に探索す
る。
【0157】1個の現ブロックの処理が終了すると、タ
イミング発生器61から各動き予測プロセッサにパルス信
号が出力され、各動き予測プロセッサはパケットデータ
を同時に予測結果選択器62に出力する。
【0158】予測結果選択器62は、5個の動き予測プロ
セッサが出力するパケットデータから1つを選択し、符
号化タイプを端子22に、動きベクトルと選択した動き予
測プロセッサ番号を動きベクトル補正器63に出力する。
動きベクトル補正器63は、入力した動きベクトルと選択
した動き予測プロセッサ番号から動きベクトルを補正
し、端子23に出力する。
【0159】予測結果選択器62の動作は以下のようにな
る。まずタイミング発生器61からパケットアドレス0に
相当するタイミング信号を受取り、動き予測プロセッサ
51の出力から現ブロックのフレーム上の座標を入力す
る。そして参照領域が画面外となる動き予測プロセッサ
の出力を除外する。
【0160】すなわち、現ブロックのフレーム上の座標
として現ブロックの左上角の画素の座標が出力されるの
で、これを(ix,iy)(0≦ix<NX,0≦iy<NY)と表すと、
ix=0及びix=4の場合、図3の左側の参照領域152,154の
一部は画面外となる。ix=NX-8及びix=NX-4の場合、図3
の右側の参照領域153,155の一部が画面外となる。
【0161】同様にして、iy=0及びiy=4の場合には、図
3の上側の参照領域152,153の一部が画面外となり、iy
=NY-8及びiy=NY-4の場合には、図3の下側の参照領域15
4,155の一部が画面外となる。
【0162】但し、動き予測プロセッサ51〜55は現ブロ
ックのフレーム上の座標から参照領域が画面外かどうか
判断するので、参照フレームメモリのアドレスに加える
オフセットが0の動き予測プロセッサ51以外は画面の端
付近でその判断が誤りとなる。従って、これらの場合に
出力される動きベクトル等は無効な参照領域を探索した
結果である可能性がある。このため、予測結果選択器62
により改めて参照領域が画面内かどうかを判断し直し、
参照領域が画面外となる動き予測プロセッサの出力を除
外する。
【0163】なお、判断が誤りとなるのは、上で説明し
た参照領域が画面外となる場合だけではない。すなわ
ち、動き予測プロセッサ52は、ix=NY-8及びix=NX-4、iy
=NY-8及びjy=NY-4の場合に、参照領域が画面内であるの
にその一部を画面外とみなし、その部分の予測誤差絶対
値和を無視する。
【0164】同様に動き予測プロセッサ53は、ix=0,ix
=4,iy=NY-8及びiy=NY-4の場合に、動き予測プロセッサ
54は、ix=NX-8,ix=NX-4,iy=0及びiy=4の場合に、動き
予測プロセッサ55は、ix=0,ix=4,iy=0及びiy=4の場合
に、参照領域が画面内であるのにその一部を画面外とみ
なし、その部分の予測誤差絶対値和を無視する。
【0165】但し、画面内とみなした参照領域のなかで
最も現ブロックと類似しているブロックを探索した結果
を出力している。従って結果は多少異なっている可能性
があるが、仮にそれが5個の動き予測プロセッサの出力
のなかから選択されても、無効な参照領域を探索したわ
けではないので誤りにはならない。
【0166】次に、予測結果選択器62は、タイミング発
生器61からパケットアドレス1に相当するタイミング信
号を受取り、上で除外されなかった動き予測プロセッサ
の出力から予測誤差絶対値和を入力する。そしてそのな
かの最小値を出力した動き予測プロセッサを選択し、そ
の番号(ここでは便宜上図2と同じ51〜55とする)を取
り込んでおく。この最小値は、各動き予測プロセッサが
担当する参照領域を合わせた領域の中で最も現ブロック
と類似したブロックの予測誤差絶対値和となる。
【0167】次に、予測結果選択器62は、タイミング発
生器61からパケットアドレス2に相当するタイミング信
号を受取り、上で選択した動き予測プロセッサの出力か
ら符号化タイプを入力する。ここで、この符号化タイプ
は、各動き予測プロセッサに供給される同じ現ブロック
のAC成分絶対値和と参照領域が画面内に収まる動き予
測プロセッサの中で最も小さい予測誤差絶対値和とを用
いて判定した符号化タイプとなる。そして、この符号化
タイプを端子22に出力する。
【0168】次に、予測結果選択器62は、タイミング発
生器61からパケットアドレス3に相当するタイミング信
号を受取り、上で選択した動き予測プロセッサの出力か
ら動きベクトルを入力する。そして、入力した動きベク
トルを動きベクトル補正器63に、動き予測プロセッサの
番号とともに出力する。
【0169】動きベクトル補正器63は、入力した動き予
測プロセッサの番号に応じて動きベクトルを補正する。
入力した動きベクトルを(vx,xy)(-2≦vx≦2,-2≦vy≦
2)とすると、以下のように補正した動きベクトルを端
子23に出力する。
【0170】
【数20】
【0171】この補正は、各動き予測プロセッサの参照
領域の位置の違いを反映したもので、例えば動き予測プ
ロセッサ52の参照領域は、動き予測プロセッサ51の参照
領域より水平方向に4画素左、垂直方向に4画素上の図
3の領域152であるため、実際の動きベクトルは次式(7)
の補正を加えて正しい値となる。動き予測プロセッサ53
〜55についても同様であり、次式(7)の補正により正し
い値となる。
【0172】従って5個の動き予測プロセッサを用い
て、画面内に収まる参照領域の中で並列に動きベクトル
を検出した結果、最も予測誤差絶対値和が小さい動き予
測プロセッサの出力する符号化タイプと正しい動きベク
トルが端子22,23に出力される。
【0173】この場合に各動き予測プロセッサが担当す
る正しい動きベクトル検出範囲は以下のようになる。
【0174】
【数21】
【0175】以上説明したように、図2に示す本発明の
動き予測プロセッサの応用例は、水平方向±2画素、垂
直方向±2画素の動きベクトルを検出可能な動き予測プ
ロセッサを5個用いて、画面の端付近を除けば、1個の
動き予測プロセッサを用いた場合の5倍の動きベクトル
検出範囲を実現できる。
【0176】また各動き予測プロセッサは、同時に処理
を開始、終了するので、この例の処理タイミングは図3
(B)に示すように、1個の動き予測プロセッサの処理
に予測結果選択器62と動きベクトル補正器63の処理時間
が加わるだけである。そして、後者の処理時間はブロッ
クマッチングを25回行う各動き予測プロセッサの処理時
間に比べて小さくできる。
【0177】さらに、図2に示す応用例は、動き予測プ
ロセッサのを5個並列に配置した例であるが、同様な手
法でさらに多くの動き予測プロセッサを並列配置し、動
きベクトル検出範囲を広げることができることは明らか
である。そして、動き予測プロセッサを並列配置場合で
も処理時間は1個の動き予測プロセッサの場合とほとん
ど変わらないという特徴がある。また、並列配置の際に
付加する回路は予測結果選択器62、動きベクトル補正器
63といった比較的簡単な構成の回路で済む。
【0178】
【実施例2】図7に、本発明に係る動き予測プロセッサ
の別の実施例を示す。本実施例は図13に示す動画像符
号化方式の動き予測121の処理を行うものである。また
図8には、図7の動き予測プロセッサを3個並列に配置
して参照領域を拡大する応用例を示す。この応用例も図
13の動き予測121の処理を行う。
【0179】本実施例と図1の実施例との主な違いは、
本実施例が、順方向予測符号化、逆方向予測符号化、両
方向予測符号化及びフレーム内符号化の4つの方式が可
能なMPEG方式に従う動画像符号化方式の動き予測を
行うこと、及び図1の実施例が動き予測プロセッサ内部
にパケットアドレス発生器を備え、出力をパケットデー
タとして出力していたのに対し、図7の実施例は出力デ
ータを外部からアドレスを指定して読み出す構成になっ
ていることである。
【0180】まず、図7の動き予測プロセッサの動作を
説明してから図8の応用例について説明する。
【0181】図7に示す動き予測プロセッサ40は、演算
手段31、アドレス発生器33及び35、符号化タイプ選択器
45、予測誤差評価手段46、オフセットレジスタ42からな
る。また図1の実施例と同様に現フレームメモリ11、参
照フレームメモリ21が設けられている。
【0182】このうち、演算手段31、アドレス発生器3
3,35、オフセットレジスタ42は、図13の動きベクト
ル検出124に相当し、符号化タイプ選択器45は図13の
符号化タイプ判定125に相当し、予測誤差評価手段46は
図13の予測誤差評価126に相当する。この他に現フレ
ームメモリ11、参照フレームメモリ21があり、それぞれ
アドレス発生器35,33から発生するアドレスに従って水
平方向4画素×垂直方向4画素の現ブロックと水平方向
8画素×垂直方向8画素の参照領域を演算手段31に供給
する。
【0183】MPEG方式では、順方向予測と逆方向予
測で参照する2枚のフレームが参照フレームメモリ21に
格納されている。参照フレームメモリ21のアドレスは、
1枚目のフレームを図12に示すフレームと同じアドレ
スに格納し、2枚目を1枚目の最後のアドレスNX*NYか
ら2*NX*NY-1まで1枚目と同様な画素順で格納するよう
割り付ける。
【0184】演算手段31は、図1の前記実施例の演算手
段31と同一であり、参照領域が画面内に収まる範囲で、
水平方向±2画素、垂直方向±2画素の範囲の動きベク
トルを検出する。また現ブロックのAC成分絶対値和も
求まる。
【0185】演算手段31から出力される動きベクトルに
対応して端子47,48,49には、それぞれ順方向予測符号
化、逆方向予測符号化、両方向予測符号化のための予測
ブロック候補が入力される。予測誤差評価手段46は、予
測ブロック候補と現ブロックの予測誤差絶対値和を算出
する。
【0186】これは、上式(1)のg(ix+vx,iy+vy)を各予
測ブロック候補に置き換えたもので、図4のAC成分絶
対値和計算手段79と同様に、例えば図4に示す従来例の
演算モジュールのブロックマッチング手段を用いて実現
できる。予測誤差評価手段46は、3つの予測誤差絶対値
和の中の最小値と、最小値が得られたフレーム間予測方
式、すなわち順方向予測符号化、逆方向予測符号化、両
方向予測符号化を識別する信号を符号化タイプ選択器45
に出力する。
【0187】符号化タイプ選択器45は、前記実施例と同
様に、(予測誤差絶対値和の最小値)<(AC成分絶対
値和)の場合に、予測誤差評価手段46から入力した識別
信号に従い、順方向予測符号化、逆方向予測符号化ある
いは両方向予測符号化と判定し、(予測誤差絶対値和の
最小値)≧(AC成分絶対値和)の場合にフレーム内符
号化と判定する。
【0188】アドレス発生器33は、図1に示した前記実
施例と同様に、オフセットを加えたアドレスを端子16か
ら出力するが、オフセットは、図7に示すようにオフセ
ットレジスタ42から入力される。ここで、現ブロックの
左上角の画素の座標が(ix,iy)(0≦ix<NX,0≦iy<NY)
の場合、参照領域を構成する画素の座標(jx,jy)(0≦jx
<NX,0≦jy<NY)はix-2≦jx≦ix+5,iy-2≦jy≦iy+5と
なる。
【0189】参照フレームメモリには、0番地から1
枚、NX*NY番地からもう1枚のフレームが格納されてい
るため、baseをフレームの最初の画素のアドレス(1枚
目は0、2枚目はNX*NY)とすると、参照領域を読み込
むためにアドレス発生器33が出力するアドレスは以下の
ようになる。
【0190】
【数22】
【0191】図7の動き予測プロセッサは、図1の実施
例と同様に上記(5)と同じデータを端子43に出力する。
但し、これらのデータは外部から端子44を通してアドレ
スを指定して読み出す。ここでは、下記(9)に示すよう
にアドレスとデータが対応しているとする。またオフセ
ットレジスタ42もアドレスを持ち、端子44,43からアド
レスとデータを指定し、端子41に書き込みパルス信号を
加えて書き込む。
【0192】
【数23】
【0193】次に、図7に示す動き予測プロセッサ単体
40を図13の動画像符号化方式の動き予測121に応用す
る場合の動作を説明する。まず、処理を開始前に、端子
44に4、端子43に0を設定し、端子41に書き込みパルス
を加えてオフセットレジスタ42に0を書き込む。これに
より、参照フレームメモリ21に出力するアドレスに加え
られるオフセットは0となり、2枚のフレームとも式
(8)に示すオフセットを0としたアドレスが出力され
て、参照領域を読み込むことができる。
【0194】まず、最初に現フレームメモリ11から現ブ
ロック、過去のフレームから参照領域を読み込み、過去
の参照フレームに対する動きベクトルを検出する。そし
て、外部から端子44に3を設定して端子43の値を読み出
すことにより過去の参照フレームに対する動きベクトル
を図13の局所復号フレームメモリ110に出力できる。
【0195】次に、現フレームメモリ11から現ブロッ
ク、未来のフレームから参照領域を読み込み、未来の参
照フレームに対する動きベクトルを検出する。そして外
部から端子44に3を設定して端子43の値を読み出すこと
により未来の参照フレームに対する動きベクトルを図1
3の局所復号フレームメモリ110に出力できる。
【0196】この後、出力した動きベクトルに対応した
3種類の予測ブロック候補が、端子47,48,49から入力
される。このとき、現フレームメモリ11から現ブロック
を読み込み、これらとの予測誤差絶対値和を計算し、そ
の最小値と最小値が得られたフレーム間予測方式を識別
する信号を符号化タイプ選択器45に出力する。
【0197】その後、端子44に2を設定して端子43の値
を読み出すことにより符号化タイプを図13のセレクタ
102,118に出力できる。
【0198】以上から、図7に示す動き予測プロセッサ
を図13の動画像符号化方式の動き予測121に適用でき
ることがわかる。
【0199】
【応用例2】次に図8を参照して、前記実施例2で説明
した本発明の動き予測プロセッサの応用例について説明
する。これは図7の動き予測プロセッサを3個並列配置
して、動きベクトルの検出範囲を広くすることにより圧
縮率を上げることが可能な応用例である。これも図13
の動き予測121の処理を行う。
【0200】図8は、図7と同一の現フレームメモリ11
と、動き予測プロセッサ81,82,83及びそれぞれに接続
された参照フレームメモリ84,85,86、アドレスデコー
ダ87,88,89、コントローラ90、タイミング発生器94か
らなる。ここで動き予測プロセッサ81,82,83はいずれ
も図7に示す動き予測プロセッサ40と同一であり、参照
フレームメモリ81,82,83は図7に示す参照フレームメ
モリ21と同一である。
【0201】順方向予測符号化、逆方向予測符号化、両
方向予測符号化のための予測ブロック候補は、動き予測
プロセッサ81のみに入力される。
【0202】コントローラ90は、アドレスバス91、及び
データバス92を介して動き予測プロセッサ81〜83のデー
タを読み書きする。書き込みパルス信号は信号線93から
供給する。このため上記(9)に示した各動き予測プロセ
ッサのデータは、すべて異なるアドレスが割り当てられ
ており、アドレスデコーダ87〜89がアドレスバス91上に
出力されるアドレスを解釈して、それぞれ動き予測プロ
セッサ81〜83のデータを読み書きする。
【0203】ここでは、アドレスを2桁で表し、10の位
が1の場合に動き予測プロセッサ81、10の位が2の場合
に動き予測プロセッサ82、10の位が3の場合に動き予測
プロセッサ83のデータを指すものとする。例えば12番地
は動き予測プロセッサ81の符号化タイプを指す。
【0204】次に、この応用例の動作について説明す
る。3個の動き予測プロセッサは、図2の応用例と同様
に同時に処理を開始し、同期して動作する。但し、各動
き予測プロセッサのオフセットレジスタ42(図7参照)
には、コントローラ90があらかじめ下記記載の値を書き
込んでおく。例えば動き予測プロセッサ81のオフセット
レジスタ42への書き込みは、アドレスバス91上に14、デ
ータバス上に0を出力し、信号線93に書き込みパルス信
号を出力して実現する。
【0205】
【数24】
【0206】図7のオフセットレジスタ42には、参照領
域の画素を読み出すときに出力するアドレスに加えるオ
フセットを与えるので、動き予測プロセッサ81が出力す
るアドレスをbase+jy*NX+jx、読み込む参照領域の画素
をh(jx,jy)とすると、各プロセッサが同時に出力するア
ドレスは次のようになる。
【0207】
【数25】
【0208】これらは、各動き予測プロセッサに接続さ
れた参照フレームメモリ84〜86に出力される。各参照フ
レームメモリには、図13と同様に復号された現ブロッ
クの輝度成分を端子20から同時に格納、更新する。
【0209】このとき、書き込みアドレスは外部から同
じアドレスを指定する、従って、動き予測プロセッサ81
の参照領域を図9に斜線を付して示す水平方向8画素×
垂直方向8画素の領域181とすると、動き予測プロセッ
サ82の参照領域は、動き予測プロセッサ81の参照領域よ
り水平方向に4画素左の水平方向8画素×垂直方向8画
素の領域182となり、同様に、動き予測プロセッサ83の
参照領域は図9の領域183となる。これらは過去、未来
の参照フレームとも同じ関係になる。
【0210】現フレームメモリ11からは動き予測プロセ
ッサ81が出力するアドレスに従って現ブロックが読み出
され、動き予測プロセッサ81〜83に出力される。各動き
予測プロセッサは同期して動作するため、3個の動き予
測プロセッサは同じ現ブロックを入力し、図9に示す異
なる参照領域を入力することができる。従ってそれぞれ
に割り当てられた異なる参照領域内で類似ブロックを並
列に探索する。
【0211】そして、過去の参照フレームに対する動き
ベクトルが求められたタイミングで、タイミング発生器
94からコントローラ90に信号が送られ、コントローラ90
は、各プロセッサのデータを順次読み出す。
【0212】まず、アドレスバス91に10を出力して、動
き予測プロセッサ81が出力する現ブロックのフレーム上
の座標を入力する。そして、図2に示す応用例と同様に
コントローラ90が、参照領域が画面内に収まる動き予測
プロセッサを判定する。
【0213】次に、参照領域が画面内に収まる動き予測
プロセッサの予測誤差絶対値和の最小値を読み出す。例
えば動き予測プロセッサ81,82の参照領域が画面内に収
まる場合、コントローラ90はアドレスバス91に11,21を
出力してそれぞれの予測誤差絶対値和の最小値を読み出
し、その中の最小値を選択する。
【0214】次に、予測誤差絶対値和が最小となった動
き予測プロセッサの出力する、過去の参照フレームに対
する動きベクトルをコントローラ90が同様な手段で読み
出し、それを図2に示す応用例と同様に補正する。この
場合、各動き予測プロセッサが出力する動きベクトルを
(vx,xy)(-2≦vx≦2,-2≦vy≦2)とすると、以下のよう
に補正する。
【0215】
【数26】
【0216】そして、補正した過去の参照フレームに対
する動きベクトルを端子23に出力する。この補正は、各
動き予測プロセッサの参照領域の位置の違いを反映した
ものであり、例えば動き予測プロセッサ82の参照領域
は、動き予測プロセッサ81の参照領域より水平方向に4
画素左の図9の領域182であるため、実際の動きベクト
ルは上式(10)の補正を加えて正しい値となる。動き予測
プロセッサ83についても同様である。
【0217】次に、未来の参照フレームに対する動きベ
クトルが求められたタイミングで、タイミング発生器94
からコントローラ90に信号が送られ、コントローラ90は
過去のフレームに対する動きベクトルと同様に補正し
た、未来の参照フレームに対する動きベクトルを端子23
に出力する。
【0218】さらに、動き予測プロセッサ81の符号化タ
イプ選択器が符号化タイプを決定したタイミングで、タ
イミング発生器94からコントローラ90に信号が送られ
る。コントローラ90は、この符号化タイプを同様な手段
で読み出し、端子22に出力する。
【0219】このような手順で各動き予測プロセッサか
ら予測結果を読み出すことにより、図8に示す本発明の
応用例は、図13の動き予測121の処理ができる。
【0220】この場合の各動き予測プロセッサが担当す
る動きベクトル検出範囲は、式(10)から以下のようにな
っている。
【0221】
【数27】
【0222】従って、全体の動きベクトル検出範囲は、
過去、未来のフレームに対する動きベクトルとも、水平
方向±6画素、垂直方向±2画素となる。
【0223】以上説明したように、図8に示す応用例で
は、水平方向±2画素、垂直方向±2画素の動きベクト
ルを検出可能な動き予測プロセッサを3個用いて、画面
の端付近を除けば、1個の動き予測プロセッサを用いた
場合の3倍の動きベクトル検出範囲を実現できる。
【0224】また、各動き予測プロセッサは、同時に処
理を開始、終了するので、この例の処理タイミングは図
2の応用例と同様に、1個の動き予測プロセッサの処理
にコントローラの処理時間が加わるだけである。そし
て、後者の処理時間は、1回の動きベクトル検出に、25
回のブロックマッチングを行う各動き予測プロセッサの
処理時間に比べて小さくできる。
【0225】さらに、図8では3個を並列に用いた例で
あるが、同様な手法でさらに多くの動き予測プロセッサ
を並列配置し、動きベクトル検出範囲を広げることがで
きるのは明らかである。そしてその場合でも処理時間は
1個の動き予測プロセッサの場合とほとんど変わらない
という特徴がある。
【0226】以上、本発明を上記各種実施例について説
明したが、本発明の動き予測プロセッサは、複数並列配
置することにより動きベクトル検出範囲を広げることが
可能であり、しかも複数並列配置した構成でも、全体の
処理時間が、単体で用いた場合とほとんど変わらない。
具体的に説明すると、例えば現ブロックの大きさを一般
的に用いられる水平方向16画素×垂直方向16画素として
比較すると、15個程度のブロックマッチング手段をもつ
演算モジュールで処理する従来の動き予測プロセッサに
おいて、演算モジュールを図4のように3段接続する構
成とした場合、1段目の演算モジュールの演算サイクル
が完了してから3段目の演算モジュールの演算サイクル
が完了するまで30画素分の遅延があり、さらに比較サイ
クルの遅延が生じる。
【0227】これに対して、本発明に係る動き予測プロ
セッサを複数並列配置した構成では、すべての動き予測
プロセッサが同時に処理を完了し、従来例のような画素
の遅延が生じることがなく、処理時間を縮減する。
【0228】
【発明の効果】以上説明したように、本発明の動き予測
プロセッサによれば、これを複数並列配置することによ
り動きベクトル検出範囲を広げることが可能であると共
に、複数並列配置した構成でも、従来例のような画素の
遅延が生ぜず、全体の処理時間が、単体で用いた場合と
ほとんど変わらないという効果を有する。
【0229】本発明の効果をより具体的に説明すると、
例えば現ブロックの大きさを一般的に用いられる水平方
向16画素×垂直方向16画素として、15個程度のブロック
マッチング手段をもつ演算モジュールで処理する従来の
動き予測プロセッサでは、演算モジュールを図4のよう
に3段接続すると、1段目の演算モジュールの演算サイ
クルが完了してから3段目の演算モジュールの演算サイ
クルが完了するまで30画素分の遅延が生じ、さらに比較
サイクルの遅延が生じることになる。これに対し、本発
明に係る動き予測プロセッサを並列配置した構成では、
すべての動き予測プロセッサが同時に処理を完了し、そ
の分、処理時間が縮減され、並列配置する動き予測プロ
セッサの個数を増やし動きベクトル範囲をさらに広げる
場合でも、実時間処理が可能となる。
【0230】また、本発明においては、並列配置した動
き予測プロセッサはそれぞれの参照フレームメモリを持
ち、各々同時に書き込み、読みだしを行う。このため、
従来の構成よりメモリ容量が増える可能性があるもの
の、メモリ構成、アドレス発生器は、単体で用いる場合
となんら変更の必要はない。従って本発明は従来例より
も遥かに柔軟に構成を変更することができる。
【0231】本発明の動き予測プロセッサは、従来より
容易に動きベクトル検出範囲を広げることが可能とさ
れ、その分、画質を保ったまま圧縮率を上げることがで
きるという効果を有する。
【図面の簡単な説明】
【図1】本発明の一実施例の動き予測プロセッサのブロ
ック図である。
【図2】図1の動き予測プロセッサを並列配置した応用
例を示すブロック図である。
【図3】(A)は図2の応用例の参照領域を説明する図
である。(B)は図2の応用例の処理タイミングを説明
する図である。
【図4】従来の動き予測プロセッサのブロック図であ
る。
【図5】従来例の参照領域を説明する図である。
【図6】従来例の処理タイミングを説明する図である。
【図7】本発明の第2の実施例の動き予測プロセッサの
ブロック図である。
【図8】図7の実施例を並列配置した応用例のブロック
図である。
【図9】図8の応用例の参照領域を説明する図である。
【図10】動画像符号化方式のブロック図である。
【図11】動きベクトルの説明図である。
【図12】参照フレームメモリアドレスを説明する図で
ある。
【図13】動画像符号化方式を説明する図である。
【図14】本発明のタイミング関係を説明するための説
明図である。
【符号の説明】
1 現フレーム 2 参照フレーム 3 現ブロック 5 類似ブロック 6 現フレームにおける類似ブロックの位置 7 動きベクトル 11 現フレームメモリ 21,56〜60,84〜86,112 参照フレームメモリ 30,40,51〜55,81〜83 動き予測プロセッサ 31 演算手段 33,35 アドレス発生器 32,45,160 符号化タイプ選択器 34 パケットアドレス発生器 42 オフセットレジスタ 46 予測誤差評価手段 61,94 タイミング発生器 62 予測結果選択器 63 動きベクトル補正器 64 参照位置指示器 75〜77 演算モジュール 78 参照領域監視手段 79 AC成分絶対値和計算手段 87〜89 アドレスデコーダ 90 コントローラ 101 減算器 102,113,118,166,167 セレクタ 103 DCT 104 量子化 105 ハフマン符号化 107 逆量子化 108 逆DCT 109 加算器 110 局所復号フレームメモリ 111 動き予測 114,124 動きベクトル検出 115,125 符号化タイプ判定 116 両方向予測ブロック作成 126 予測誤差評価 4,151〜155,181〜183 参照領域 161〜163 ブロックマッチング手段 164 転送手段 165 比較手段
フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H04N 1/41 B G06F 15/66 7459−5L 15/70

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】フレームをブロックに分割して読み込む第
    1の手段と、 前記ブロック毎にフレーム間予測符号化の種別又はフレ
    ーム内符号化を表す符号化タイプデータを決定する第2
    の手段と、 前記フレーム間予測符号化を行う場合の動きベクトルを
    検出する第3の手段と、 前記動きベクトルを検出する際に参照する参照領域を参
    照フレームメモリから読み出すためのアドレスを生成す
    る第4の手段と、を備え、 前記第1の手段は現在処理中のブロックの座標を算出
    し、 前記第4の手段は前記アドレスに前記参照領域の位置を
    変更するためのオフセットを加えて出力し、 前記第3の手段は前記フレーム間予測符号化を行った場
    合の符号量を推定する評価データを算出し、 更に、前記ブロックの座標、前記評価データ、前記動き
    ベクトル、及び前記符号化タイプデータを所定のタイミ
    ングで出力する手段を、具備して成る動き予測プロセッ
    サ。
  2. 【請求項2】前記所定のタイミングでパケットアドレス
    を発生する手段を備え、該パケットアドレスの値に対応
    して前記第1の手段は前記ブロックの座標を、前記第3
    の手段は前記評価データ及び前記動きベクトル、前記第
    2の手段は前記符号化タイプデータをそれぞれ出力する
    請求項1記載の動き予測プロセッサ。
  3. 【請求項3】外部から前記所定のタイミングでパケット
    アドレスが供給され、該パケットアドレスの値に対応し
    て、前記ブロックの座標、前記評価データ、前記動きベ
    クトル、前記符号化タイプデータの読み出し、及び前記
    第4の手段へのオフセットの設定をそれぞれ行なう構成
    とした請求項1記載の動き予測プロセッサ。
  4. 【請求項4】請求項1記載の動き予測プロセッサをn個
    (n>1)配置し、これらn個の動き予測プロセッサの
    それぞれに参照フレームメモリを接続した動き予測装置
    であって、 前記n個の動き予測プロセッサのうち第1の動き予測プ
    ロセッサが入力するブロックを他のn−1個の動き予測
    プロセッサに供給し、 前記第1の動き予測プロセッサには、オフセットを0と
    して与え、 前記他のn−1個の動き予測プロセッサには、それぞれ
    が入力する参照領域が前記第1の動き予測プロセッサが
    入力する参照領域と位置が異なるようにオフセットを与
    え、 前記n個の動き予測プロセッサから、それぞれが入力す
    る参照領域が画面内に入るものを選択し、さらにこれら
    の動き予測プロセッサの中で評価データが最小となる動
    き予測プロセッサを選択する選択手段と、 前記選択手段により選択される動き予測プロセッサが出
    力する動きベクトルを、該動き予測プロセッサに与えら
    れたオフセットに合わせて補正して出力する手段と、を
    具備して成る動き予測装置。
JP34591693A 1993-12-24 1993-12-24 動き予測プロセッサ及び動き予測装置 Expired - Fee Related JP3031152B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP34591693A JP3031152B2 (ja) 1993-12-24 1993-12-24 動き予測プロセッサ及び動き予測装置
US08/361,652 US5717462A (en) 1993-12-24 1994-12-22 Motion prediction processor and motion prediction apparatus including a plurality of motion prediction processors
DE1994621158 DE69421158T2 (de) 1993-12-24 1994-12-23 Bewegungsprädiktionsprozessor und -vorrichtung
EP19940120543 EP0660615B1 (en) 1993-12-24 1994-12-23 Motion prediction processor and motion prediction apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34591693A JP3031152B2 (ja) 1993-12-24 1993-12-24 動き予測プロセッサ及び動き予測装置

Publications (2)

Publication Number Publication Date
JPH07193822A true JPH07193822A (ja) 1995-07-28
JP3031152B2 JP3031152B2 (ja) 2000-04-10

Family

ID=18379872

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34591693A Expired - Fee Related JP3031152B2 (ja) 1993-12-24 1993-12-24 動き予測プロセッサ及び動き予測装置

Country Status (4)

Country Link
US (1) US5717462A (ja)
EP (1) EP0660615B1 (ja)
JP (1) JP3031152B2 (ja)
DE (1) DE69421158T2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6259816B1 (en) 1997-12-04 2001-07-10 Nec Corporation Moving picture compressing system capable of effectively executing compressive-encoding of a video signal in response to an attitude of a camera platform
JP2004078862A (ja) * 2002-08-15 2004-03-11 Sony Corp 画像処理装置および画像処理方法
US7522748B2 (en) 2002-08-15 2009-04-21 Sony Corporation Method and apparatus for processing image data and semiconductor storage device
JP2010011150A (ja) * 2008-06-27 2010-01-14 Mitsubishi Electric Corp 動きベクトル検出装置および動画像符号化装置
JP2013190865A (ja) * 2012-03-12 2013-09-26 Toshiba Corp 画像処理装置、画像処理方法およびそのプログラム

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2671820B2 (ja) * 1994-09-28 1997-11-05 日本電気株式会社 両方向予測方法及び両方向予測装置
US6057893A (en) * 1995-12-28 2000-05-02 Sony Corporation Picture encoding method, picture encoding apparatus, picture transmitting method and picture recording medium
US5905814A (en) * 1996-07-29 1999-05-18 Matsushita Electric Industrial Co., Ltd. One-dimensional time series data compression method, one-dimensional time series data decompression method
EP2352300A1 (en) * 1997-02-13 2011-08-03 Mitsubishi Denki Kabushiki Kaisha Moving picture prediction system
JP4010024B2 (ja) * 1997-09-02 2007-11-21 ソニー株式会社 圧縮動画像信号のデコード装置
DE69803195T2 (de) * 1997-11-27 2002-08-29 British Telecomm Codeumsetzung
JP4142180B2 (ja) 1998-10-29 2008-08-27 富士通株式会社 動きベクトル符号化装置および復号装置
JP3611507B2 (ja) * 2000-05-30 2005-01-19 松下電器産業株式会社 動きベクトル検出装置
KR20030009669A (ko) * 2001-07-23 2003-02-05 삼성전자주식회사 다채널 영상 부호화기 및 그 부호화 방법
US8275047B2 (en) * 2001-09-20 2012-09-25 Xilinx, Inc. Method and device for block-based conditional motion compensation
FR2830159A1 (fr) * 2001-09-24 2003-03-28 Thomson Licensing Sa Procede de codage selon la norme mpeg
US7269288B2 (en) * 2003-07-30 2007-09-11 Mediatek Inc. Apparatus for parallel calculation of prediction bits in a spatially predicted coded block pattern and method thereof
KR100716999B1 (ko) * 2005-06-03 2007-05-10 삼성전자주식회사 영상의 대칭성을 이용한 인트라 예측 방법, 이를 이용한영상의 복호화, 부호화 방법 및 장치
JP4799477B2 (ja) * 2007-05-08 2011-10-26 キヤノン株式会社 画像符号化装置及び画像符号化方法
KR20080107965A (ko) * 2007-06-08 2008-12-11 삼성전자주식회사 객체 경계 기반 파티션을 이용한 영상의 부호화, 복호화방법 및 장치
GB2512829B (en) 2013-04-05 2015-05-27 Canon Kk Method and apparatus for encoding or decoding an image with inter layer motion information prediction according to motion information compression scheme

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0624035A1 (en) * 1987-04-28 1994-11-09 Mitsubishi Denki Kabushiki Kaisha Image coding and decoding system
JPH03106283A (ja) * 1989-09-20 1991-05-02 Graphics Commun Technol:Kk 動ベクトル検出装置
DE69033797T2 (de) * 1989-10-14 2002-04-18 Sony Corp Verfahren und Anordnung zum Kodieren/Dekodieren eines Videosignales
JPH03252287A (ja) * 1990-02-28 1991-11-11 Victor Co Of Japan Ltd 動画像圧縮装置
FR2670923A1 (fr) * 1990-12-21 1992-06-26 Philips Lab Electronique Dispositif de correlation.
US5138447A (en) * 1991-02-11 1992-08-11 General Instrument Corporation Method and apparatus for communicating compressed digital video signals using multiple processors
US5212742A (en) * 1991-05-24 1993-05-18 Apple Computer, Inc. Method and apparatus for encoding/decoding image data
JPH0512916A (ja) * 1991-06-28 1993-01-22 Toshiba Corp 異方導電性接着剤の導電粒子
DE69217150T2 (de) * 1991-09-30 1997-07-17 Philips Electronics Nv Bewegungsvektorschätzung, Bewegungsbildkodierung- und -speicherung
US5289577A (en) * 1992-06-04 1994-02-22 International Business Machines Incorporated Process-pipeline architecture for image/video processing
FR2699780B1 (fr) * 1992-12-22 1995-03-17 Philips Electronique Lab Dispositif de traitement récursif de signal vidéo comprenant une pluralité de branches.
JP3190755B2 (ja) * 1993-01-22 2001-07-23 株式会社東芝 復号装置
US5398079A (en) * 1993-01-27 1995-03-14 General Instrument Corporation Half-pixel interpolation for a motion compensated digital video system
US5453799A (en) * 1993-11-05 1995-09-26 Comsat Corporation Unified motion estimation architecture
US5510842A (en) * 1994-05-04 1996-04-23 Matsushita Electric Corporation Of America Parallel architecture for a high definition television video decoder having multiple independent frame memories

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6259816B1 (en) 1997-12-04 2001-07-10 Nec Corporation Moving picture compressing system capable of effectively executing compressive-encoding of a video signal in response to an attitude of a camera platform
JP2004078862A (ja) * 2002-08-15 2004-03-11 Sony Corp 画像処理装置および画像処理方法
US7522748B2 (en) 2002-08-15 2009-04-21 Sony Corporation Method and apparatus for processing image data and semiconductor storage device
JP2010011150A (ja) * 2008-06-27 2010-01-14 Mitsubishi Electric Corp 動きベクトル検出装置および動画像符号化装置
JP2013190865A (ja) * 2012-03-12 2013-09-26 Toshiba Corp 画像処理装置、画像処理方法およびそのプログラム

Also Published As

Publication number Publication date
JP3031152B2 (ja) 2000-04-10
US5717462A (en) 1998-02-10
DE69421158T2 (de) 2000-08-17
EP0660615A3 (en) 1996-04-24
EP0660615A2 (en) 1995-06-28
EP0660615B1 (en) 1999-10-13
DE69421158D1 (de) 1999-11-18

Similar Documents

Publication Publication Date Title
JP3031152B2 (ja) 動き予測プロセッサ及び動き予測装置
JP2671820B2 (ja) 両方向予測方法及び両方向予測装置
US6339616B1 (en) Method and apparatus for compression and decompression of still and motion video data based on adaptive pixel-by-pixel processing and adaptive variable length coding
US5146325A (en) Video signal decompression apparatus for independently compressed even and odd field data
US6542642B2 (en) Image coding process and motion detecting process using bidirectional prediction
US6489996B1 (en) Moving-picture decoding method and apparatus calculating motion vectors to reduce distortion caused by error propagation
JP2000278688A (ja) 動きベクトル検出装置およびその方法と画像処理装置
JPH09179987A (ja) 動きベクトル検出方法及び動きベクトル検出装置
WO2005088981A1 (en) Encoding apparatus, encoding method, decoding apparatus, and decoding method
US6317460B1 (en) Motion vector generation by temporal interpolation
JP2004120732A (ja) 動画像符号化装置及び動画像復号装置
US20220232208A1 (en) Displacement vector prediction method and apparatus in video encoding and decoding and device
JPH08289302A (ja) 画像復号化装置
CN101822058A (zh) 使用像素抽取的视频编码
JPH10215457A (ja) 動画像復号方法及び動画像復号装置
JP2000069469A (ja) 動画像符号化方法とシステム及び動画像復号方法とシステム
KR100587274B1 (ko) 엠펙­2 압축복원시스템에서의 오류 은폐방법
JP3362463B2 (ja) フレーム補間装置
JPH10304373A (ja) 動画像復号方法及び動画像復号装置
JP3596137B2 (ja) 画像信号符号化方法及び装置、並びに画像信号復号方法及び装置
JP3004799B2 (ja) 画像符号化方法と装置
JP2000152233A (ja) 画像情報変換装置および変換方法
JP2621341B2 (ja) 背景予測を用いた動画像の予測符号化方式とその装置
JPH08130741A (ja) 画像復号化装置
JPH10145793A (ja) 画像符号化装置とその方法、および、画像復号化装置とその方法

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

LAPS Cancellation because of no payment of annual fees