JP2861963B2 - 動きベクトル検出回路 - Google Patents

動きベクトル検出回路

Info

Publication number
JP2861963B2
JP2861963B2 JP24916296A JP24916296A JP2861963B2 JP 2861963 B2 JP2861963 B2 JP 2861963B2 JP 24916296 A JP24916296 A JP 24916296A JP 24916296 A JP24916296 A JP 24916296A JP 2861963 B2 JP2861963 B2 JP 2861963B2
Authority
JP
Japan
Prior art keywords
motion vector
pixels
reference area
partial
search range
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP24916296A
Other languages
English (en)
Other versions
JPH1075455A (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.)
NEC Corp
Original Assignee
Nippon Electric 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP24916296A priority Critical patent/JP2861963B2/ja
Publication of JPH1075455A publication Critical patent/JPH1075455A/ja
Application granted granted Critical
Publication of JP2861963B2 publication Critical patent/JP2861963B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、動画像符号化回路
における動きベクトルを検出する動きベクトル検出回路
に関し、特に、動きベクトルの探索範囲を減らして動作
周波数を下げることが可能な動きベクトル検出回路に関
する。
【0002】
【従来の技術】動画像はデータ量が非常に大きくなるた
め、しばしばデータを圧縮して伝送あるいは記録し、そ
のデータを受信側あるいは再生側で伸長するという処理
を行っている。このような圧縮/伸長は符号化/復号化
とも呼ばれ、例えばテレビ会議システムで用いるITU
−T勧告H.261方式、CD−ROMへの記録等に用
いるISO/IEC11172方式(MPEG−1方式
と呼ばれる)、ディジタルビデオディスクや衛星放送等
に用いるISO/IEC13813方式(MPEG−2
方式と呼ばれる)が知られている。
【0003】このような圧縮方式では、動き補償フレー
ム間予測符号化方式が採用されている。これは動画像を
構成する1枚1枚の画像の相関が高いことを利用して、
過去に符号化した画像との差分を符号化することにより
圧縮率を上げる方式である。具体的には、現在符号化し
ている1枚の画像をブロック分割し、ブロック毎に過去
に符号化した画像から予測ブロックを作成し、現在符号
化しているブロックと予測ブロックの差分すなわち予測
誤差を符号化する。
【0004】また、動いている物体は時間の経過ととも
に画面内で少しずつ位置を変えるので、予測ブロックを
物体の動きに従って移動させたのちに予測誤差をとれば
予測誤差がさらに小さくなり、圧縮率を上げることがで
きる。このためブロック毎に過去に符号化した画像から
の動きを検出する。
【0005】この動きを表す情報は動きベクトルと呼ば
れ、予測誤差とともに伝送あるいは記録される。
【0006】図13を用いて動きベクトルを説明する。
符号化するフレームを現フレーム131、現フレーム1
31上の符号化するブロック(水平方向16画素×垂直
方向16画素)を現ブロック134とする。さらに動き
ベクトルを求めるフレームを参照フレーム132、参照
フレーム132上の動きベクトルを探索する領域を参照
領域133、参照領域133内の現ブロックと同じ大き
さのブロックを参照ブロック候補とする。参照ブロック
候補のうち最も現ブロックと類似しているブロックを参
照ブロック135とすると、現ブロック134と参照ブ
ロック135のフレーム内の相対的な位置の差が動きベ
クトル136である。
【0007】H.261方式では、参照フレームは現ブ
ロックの1フレーム前のフレームであり、MPEG−1
方式、MPEG−2方式では、参照フレームは現フレー
ムからみて過去あるいは未来のどちらのフレームをも用
いることもできる。なお、MPEG−2方式ではフレー
ムを2つのフィールドに分けてフィールド単位の動きベ
クトルを使用することもできる。
【0008】動きベクトルを検出する際に、現ブロック
と参照ブロック候補の類似性を評価するが、その評価値
としては、これらのブロックの対応する各画素の差分の
2乗和あるいは絶対値和が用いられる。通常は回路とし
て実現しやすい差分絶対値和を用い、この回路が最小の
参照ブロック候補を参照ブロックとして採用してその参
照ブロックの位置を示す動きベクトルを検出する。従っ
て、動きベクトルを検出するためには参照領域内の参照
ブロック候補の中から評価値が最小のものを選択するこ
とになる。
【0009】H.261方式では、動きベクトルの精度
は1画素であるのに対し、MPEG−1、2方式では動
きベクトルの精度が半画素精度となっている。そのため
MPEG−1、2方式では、参照領域をまず半画素内挿
してから動きベクトルを検出する。しかし、広い参照領
域で1度に半画素精度の動きベクトルを検出する1段探
索方式では膨大な演算量が必要になるため、通常は多段
探索方式をとる。
【0010】この多段探索方式は、まず半画素より粗い
画素精度で動きベクトルを検出しておき、この粗い精度
の動きベクトルの回りでさらに細かく動きベクトルを検
出して最終的に半画素精度の動きベクトルを検出する方
式である。例えば、2段探索の例として、最初に1画素
精度の動きベクトルを検出し、次に1画素精度動きベク
トルの回りのみで半画素精度の動きベクトルを検出する
方式がある。
【0011】また、さらに演算量を削減する2段探索の
例としては、最初に水平方向2画素精度、垂直方向1画
素精度で動きベクトルを検出し、次にこの動きベクトル
の回りのみで半画素精度の動きベクトルを検出する方式
等がある。同様に、2段探索で1段目の探索の画素精度
をさらに粗くする方式や、3段探索の方式等も可能であ
るが、一般に1段探索より検出した動きベクトルの確度
が低くなり、圧縮率が落ち、あるいは同じビットレート
では画質が下がる等の問題が生じる。
【0012】従って、一般に1段目が1画素あるいは2
画素精度の2段探索方式が広く用いられている。
【0013】本発明の動きベクトル検出回路は、主とし
てこのような2段探索の1段目の探索に使われる半画素
精度ではない動きベクトルの検出回路に関する。
【0014】この種のMPEG−1方式の動きベクトル
検出回路の従来例としては、本発明の発明者等による
「A Bidirectional Motion C
ompensation LSI with a Co
mpact Motion Estimator、電気
情報通信学会英論文誌C、1995年12月号、P.1
682−1690(IEICE Transactio
ns on E1ectronics VOL.E78
−C No.12、1995)」(文献1)に開示さ、
また、MPEG−2方式の動きベクトル検出回路の例と
しては、石原等による「MPEG2動き検出LSI、電
子情報通信学会研究報告ICD95−104、1995
年8月」(文献2)に開示されており、何れも動きベク
トルを効率よく求めることができる。
【0015】図8は文献1に開示されるMPEG−1方
式の動きベクトル検出回路のブロック図を示したもので
ある。図8では説明を簡単にするため、現ブロックの大
きさを実際の水平方向16画素×垂直方向16画素では
なく、水平方向4画素×垂直方向4画素の大きさとして
いる。以下、この従来例の構成と動作を説明する。
【0016】図8に示す回路は、図9に示すプロセッサ
エレメントPE91〜94を4個並べたブロックマッチ
ングプロセッサ81と、これに現ブロックの画素を供給
する現ブロックメモリ82と参照領域の画素を供給する
参照領域メモリ83、現ブロックの読み出しアドレスを
生成するアドレス発生器84、参照領域の読み出しアド
レスを発生するアドレス発生器87、ブロックマッチン
グプロセッサ81が出力する現ブロックと参照ブロック
候補の評価値を入力してその最小値を検出する最小値検
出回路89、及び全体を制御する制御回路88からな
る。
【0017】プロセッサエレメントPEは、図9に示す
ように、現ブロックの1画素を格納するレジスタ112
と参照ブロック候補の1画素を格納するレジスタ11
1、これらの差分絶対値を計算する減算器115及び絶
対値演算器117、前段のプロセッサエレメントPEか
ら入力する差分絶対値和を格納するレジスタ113と、
これに計算した差分絶対値和を加算する加算器116か
らなる。
【0018】次段のプロセッサエレメントPEに出力す
る差分絶対値和をSi 、前段のプロセッサエレメントP
Eから入力する差分絶対値和をSi-1 、レジスタ112
に格納する現ブロックの画素をC、レジスタ111に格
納する参照領域の画素をRとすると、PEは、Si=|
C−R|+Si-1の演算を行う。参照領域の画素Rは、
制御信号CTL1が0の場合に端子122(Rin’)
の画素、1の場合に端子123(Rin”)の画素を選
択するものとする。
【0019】レジスタ112のラッチ信号も制御信号C
TL0としてプロセッサエレメントPEに入力され、こ
れら2本の制御信号は端子126(CTLin)からレ
ジスタ114に格納され、端子127(CTLout)
から次段のプロセッサエレメントPEに出力される。
【0020】図8のブロックマッチングプロセッサ81
は、プロセッサエレメントPE9i(i=1〜4)のSi
とCTLoutをプロセッサエレメントPE9i+1(i
=1〜3)のSi-1 、CTLinにそれぞれ接続する構
成になっている。最終段のプロセッサエレメントPE9
4から出力する差分絶対値和S4は、遅延線95とセレ
クタ96を介して第1段のプロセッサエレメントPE9
1の差分絶対値和入力S0にフィードバックする。すな
わち、差分絶対値和はプロセッサエレメントPE91〜
94で構成されるループ内で累算される。遅延線95の
出力はまた最小値選択回路89に出力される。
【0021】なお、図8の回路は、実際には評価値が最
小になる参照ブロック候補すなわち参照ブロックを選択
する回路である。参照ブロック候補の評価順序すなわち
動きベクトルの探索順序は後述するように決められてお
り、選ばれた参照ブロックの評価順番からその位置を特
定することにより動きベクトルを決定する。参照ブロッ
クの位置は最小値検出回路89内で最小値を更新するタ
イミングを継続的に調べることで求められるがこのため
の回路は図示していない。
【0022】図11に上述した従来例の一部の動作タイ
ミングの詳細に示す。また図12に動きベクトル探索全
体の動作タイミングを模式的に示す。以下、図11を説
明してから、図12を説明する。
【0023】図11は、水平方向8画素×垂直方向8画
素の参照領域内で動きベクトルを探索する場合の最初の
2サイクル分の動作を詳細に示したものである。参照フ
レーム上で、参照領域の中央の位置が現ブロックの位置
と同じ場合には、水平方向−2〜+2、垂直方向−2〜
+2の範囲の動きベクトルを検出することになる。も
し、異なる場合には現ブロック位置と参照領域の中央の
位置の違いに相当するオフセットが加わる。以下では現
ブロック位置が参照領域の中央の位置と同じとし、探索
する動きベクトル候補を(vx,vy)(vx=−2〜
+2,vy=−2〜+2)として説明する。
【0024】現ブロックの各画素をCDi,j(i,j=
1〜4、iは水平方向の座標、jは垂直方向の座標)と
し、各行をCj(CD1,j、CD2,j、CD3,j、CD4,j
からなる行)とすると、ブロックマッチングプロセッサ
81の4個のプロセッサエレメントPE91〜94は、
現ブロックの1行Cjをなす4画素CD1,j、CD2,j、
CD3,j、CD4,jをそれぞれロードし、これらと参照ブ
ロック候補の対応する画素との差分絶対値和を計算す
る。
【0025】プロセッサエレメントPEの数は現ブロッ
クの水平方向画素数と等しいため、プロセッサエレメン
トPE91〜94で累算されるのは現ブロックの水平方
向画素1行と参照ブロック候補の水平方向画素1行との
差分絶対値和である。従って、参照フレーム上の参照ブ
ロック候補1個の評価値を求めるには現ブロックの垂直
方向画素数と同じ4回の繰り返し計算が必要になる。た
だし、評価値の計算は参照ブロック候補を1個ずつ順に
行うのではなく、参照データバス上の画素を効率よく使
用できるように、水平方向の参照ブロック候補の数(こ
の場合には5個)を並行して計算する。従って、この場
合には、水平方向5個の参照ブロック候補の差分絶対値
和は1行ずつ並行して累算する。さらにプロセッサエレ
メントPEの動作率を上げるため2本の参照データバス
Rinl、Rin2を用いる。以下、動作を詳細に説明
する。
【0026】参照領域の各画素をRDi,j(i、j=1
〜8、iは水平方向の座標、jは垂直方向の座標)と
し、各行をRj(RD1,j、RD2,j、...、RD8,jか
らなる行)とすると、まず参照領域の最も上の段に位置
する5個の参照ブロック候補の評価値を求める。制御回
路88から出力されるSTART信号により、アドレス
発生器84、87は、現ブロックと参照領域の画素の読
み出しアドレスをそれぞれ現ブロックメモリ82、参照
領域メモリ83に出力し、1サイクルの動作を開始す
る。
【0027】まず、現ブロックの最初の1行C1の各画
素CDi,1をプロセッサエレメントPE9iのレジスタ
112にロードするため、アドレス発生器84はC1の
各画素を現データバス101(Cin)に1画素ずつ載
せる。また、制御回路88は、1行のロード開始時に図
11に示すように制御端子104(CTL)の1本の制
御信号CTL0に1画素期間1になるパルス信号を加え
る。
【0028】すると続く4画素期間にパルス信号がプロ
セッサエレメントPEを通過しプロセッサエレメントP
E9iのレジスタ112にCinに載っているCi,1を
ロードできる。また、C1のロード開始と同時にもう1
本の制御信号CTL1を0にし、各プロセッサエレメン
トPEが参照データバス102から参照領域の画素を入
力するようにする。
【0029】アドレス発生器87は、参照領域の最初の
1行R1を1画素ずつ参照データバス102(Rin
1)に載せる。また、プロセッサエレメントPE91の
差分絶対値和入力S0にはセレクタ96から0を入力し
ておく。これにより、プロセッサエレメントPE91〜
94により5個の参照ブロック候補それぞれの1行分の
差分絶対値和、Σ(i=1〜4)|CDi,1−RDi,1
|、Σ(i=1〜4)|CDi,1−RDi+1,1|、Σ(i
=1〜4)|CDi,1−RDi+2,1|、Σ(i=1〜4)
|CDi,1−RDi+3,1|及びΣ(i=1〜4)|CDi,
1−RDi+4,1|が計算され遅延線95から出力される。
遅延線95はプロセッサエレメントPE94の出力S4
をプロセッサエレメントPE91の入力S0にフィード
バックするタイミングを調整するもので、水平方向の参
照ブロック候補数−現ブロックの水平方向画素数(この
場合は5−4=1画素)の遅延となる。
【0030】なお、この遅延が負になる場合には遅延線
は不要であるが、各プロセッサエレメントPEの動作に
空きスロットが生じるため、プロセッサエレメントPE
の動作率が落ちて動きベクトル探索の効率が悪くなる。
【0031】次に、これら5個の参照ブロック候補の2
行目の差分絶対値和を累算する。そのためセレクタ96
は、プロセッサエレメントPE94が出力するS4をプ
ロセッサエレメントPE91のS0に入力する。2行目
の差分絶対値和はC2とR2の差分絶対値和で、Cinに
C2、Rin2にR2を載せ、制御端子CTL1を1にし
て制御端子CTL0に1行目と同様にパルス信号を加え
る。
【0032】これにより、プロセッサエレメントPE9
1から順にCinとRin2上の画素の差分絶対値和が
計算され、遅延線95から参照ブロック候補5個それぞ
れの2行分の差分絶対値和である、Σ(i=1〜4,j
=1〜2)|CDi,j−RDi,j|、Σ(i=1〜4,j
=1〜2)|CDi,j−RDi+1,j|、Σ(i=1〜4,
j=1〜2)|CDi,j−RDi+2,j|、Σ(i=1〜
4,j=1〜2)|CDi,j−RDi+3,j|及びΣ(i=
1〜4,j=1〜2)|CDi,j−RDi+4,j|が出力さ
れる。
【0033】続いて、3行目の差分絶対値和であるC3
とR3の差分絶対値和を同様に累算する。CinにC3、
RinlにR3を1画素ずつ載せて制御端子CTL1を
0にし、制御端子CTL0に1行目と同様にパルス信号
を加える。これにより、プロセッサエレメントPE91
から順にCinとRinl上の画素の差分絶対値和が計
算され、遅延線95から参照ブロック候補5個それぞれ
の3行分の差分絶対値和である、Σ(i=1〜4,j=
1〜3)|CDi,j−RDi,j|、Σ(i=1〜4,j=
1〜3)|CDi,j−RDi+1,j|、Σ(i=1〜4,j
=1〜3)|CDi,j−RDi+2,j|、Σ(i=1〜4,
j=1〜3)|CDi,j−RDi+3,j|及びΣ(i=1〜
4,j=1〜3)|CDi,j−RDi+4,j|が出力され
る。
【0034】最後に、4行目の差分絶対値和であるC4
とR4の差分絶対値和を同様に累算する。CinにC4、
Rin2にR4を1画素ずつ載せて制御端子CTL1を
1にし、制御端子CTL0に1行目と同様にパルス信号
を加える。これにより、プロセッサエレメントPE91
から順にCinとRin2上の画素の差分絶対値和が計
算され、遅延線95から参照ブロック候補5個それぞれ
の評価値である、Σ(i=1〜4,j=1〜4)|CD
i,j−RDi,j|、Σ(i=1〜4,j=1〜4)|CD
i,j−RDi+1,j|、Σ(i=1〜4,j=1〜4)|C
Di,j−RDi+2,j|、Σ(i=1〜4,j=1〜4)
|CDi,j−RDi+3,j|及びΣ(i=1〜4,j=1〜
4)|CDi,j−RDi+4,j|が出力される。
【0035】これらが遅延線95から出力されるタイミ
ングに合わせて制御回路88から出力する制御信号10
5(VALID)が1になり、最小値検出回路89で、
ブロックマッチングプロセッサ81から出力される5個
の評価値の最小値を検出することになる。以上で1サイ
クルの処理が終わる。
【0036】この1サイクルでは参照領域内の最も上の
水平方向1行にあたる5個の参照ブロック候補を評価す
る。すなわち(vx,−2)(vx=−2〜+2)の範
囲の動きベクトル探索を行う。
【0037】続いて、制御回路88が次のサイクルを起
動し、参照領域の上から2行目から始まるR2〜R5を読
み出して、(vx,−1)(vx=−2〜+2)の範囲
の動きベクトル探索を同様に行う。以下同様に、合わせ
て5サイクルで(vx,vy)(vx,vy=−2〜+
2)の範囲の動きベクトル探索が完了する。なお、図1
1に示すように1サイクルの終了前に次のサイクルを起
動し、プロセッサエレメントPEの動作に空きスロット
が生じないように制御できる。
【0038】図8、図9に示す従来の動きベクトル検出
回路は、以上説明したように動きベクトルの探索を行
う。実際の現ブロックは、水平方向MX×垂直方向MY
画素(MX、MYは16の約数)で、典型的な動きベク
トル探索範囲は動きベクトルが1画素精度の場合に換算
して1フレーム間隔で水平方向±16、垂直方向±16
程度である。参照領域を水平方向NX×垂直方向NY画
素とすると、動きベクトル探索範囲は水平方向(NX−
MX+1)、垂直方向(NY−MY+1)となるので、
1画素精度の動きベクトルを求める場合には、参照領域
の大きさは水平方向48×垂直方向48画素の大きさに
なる。
【0039】図12に従来の動きベクトル検出回路の探
索の様子を模式的に示す。探索範囲を水平方向(NX−
MX+1)、垂直方向(NY−MY+1)とすると、1
サイクルで水平方向(NX−MX+1)個の参照ブロッ
ク候補、すなわち(vx,vy)(vx,vy=−(N
X−MX+1)/2〜+(NX−MX+1)/2)を評
価し、(NY−MY+1)サイクルかかって上から下の
順にすべての範囲の探索を行う。
【0040】なお、図8では現ブロックの水平方向画素
数と等しい数のプロセッサエレメントPEを用いたブロ
ックマッチングプロセッサの例を示したが、文献1に開
示されるように、プロセッサエレメントPE数を増やし
て動きベクトル探索時間を短くすることも可能である。
水平方向1行分の差分絶対価和を計算するMX個のプロ
セッサエレメントPEを1セットとすると、プロセッサ
エレメントPE数を2倍の2セットにして、これらをル
ープに入れる構成にすれば、水平方向2行分の差分絶対
値和を1サイクルで計算することができる。
【0041】同様に、プロセッサエレメントPE数を現
ブロックの水平方向画素数のP倍(P=1、2、
4、...、MY/2)にすれば、P行分の差分絶対値
和を1サイクルで求めることができる。この場合には、
図12の1サイクルで(NX−MX+1)×P個の参照
ブロック候補を評価できるため、垂直方向の動きベクト
ル探索範囲がPの倍数であれば動きベクトル探索時間を
1セットの場合の約1/Pに短縮することも可能であ
る。ただし、1サイクルでP行分の差分絶対値和を並列
に求めるため、参照領域の水平方向P行の画素をプロセ
ッサエレメントPEに供給しなければならない。実際に
はパイプライン動作による遅延があるため、同時に参照
領域のP行すべての画素を供給する必要はないが、プロ
セッサエレメントPEの動作率を上げるには、参照デー
タバスの本数(図8ではRinl、Rin2の2本)と
プロセッサエレメントPEに入力する参照データ端子
(図9ではRin’とRin”の2本)を増やさなけれ
ばならない場合もある。
【0042】
【発明が解決しようとする課題】従来の動きベクトル検
出回路は、上述したように現ブロックの大きさを水平方
向MX画素×垂直方向MY画素とし、参照領域の大きさ
を水平方向NX画素×垂直方向NY画素とすると、図1
0に示すように水平方向(NX−MX+1)×垂直方向
(NY−MY+1)の長方形の動きベクトル探索範囲で
動きベクトルを探索する。この探索方法によると図11
に示すように、参照領域の水平方向1行を参照データバ
スに載せて、共通の参照領域の画素を持つ水平方向の参
照ブロック候補を各プロセッサエレメントPEで同時並
列的に評価できる。すなわち、参照領域の画素を効率よ
く供給することができる。また文献2に示される動きベ
クトル検出回路でも、参照領域を垂直方向に1行ずつス
キャンするように供給することにより、効率よく参照ブ
ロック候補の評価を行う。この結果、動きベクトル探索
範囲は必然的に長方形になる。
【0043】ところが、TV等に実際に流れる動画像で
は、水平方向の動きは多いが、斜め方向の動きは少ない
ことが知られている。例えば、MPEG−2方式のアル
ゴリズムで、図10に示す従来の動きベクトル検出回路
と同じ長方形の探索範囲で動きベクトルを検出した場合
と、図4に示すような斜め方向を探索しない菱形の探索
範囲で動きベクトルを検出した場合の信号対雑音比の差
をテスト画像を用いて調べると、以下に示す表1のよう
な結果となる。この表1においては、標準画像である4
種類のテスト画像、フラワーガーデン(flower
garden)、バイシクル(bicycle)、チア
ガール(cbeer girls)、モービル・アンド
・カレンダー(mobile and calenda
r)をフレームピクチャ構造で4Mビット/秒の圧縮率
で符号化した場合のシミュレーンョン結果である。
【0044】ここで、Iピクチャ(現ブロックをフレー
ム内符号化するフレーム)の間隔Nを15フレームと
し、Pピクチャ(過去のフレームから作成した予測ブロ
ックと現ブロックとの予測誤差を符号化するか、あるい
は現ブロックをフレーム内符号化するフレーム)の間隔
Mをよく用いられるM=3とM=1の2通りでシミュレ
ーンョンしている。動きベクトル探索範囲はM=3の場
合で水平方向±47、垂直方向±15、M=1の場合で
水平方向±15、垂直方向±15とした。なお、M=3
の場合のI、Pピクチャ以外のフレームはBピクチャ
(過去または未来またはその両方のフレームから作成し
た予測ブロックと現ブロックとの予測誤差を符号化する
か、あるいは現ブロックをフレーム内符号化するフレー
ム)で符号化する。
【0045】
【表1】 信号対雑音比の差が、0.5dB以内であれば普通の人
の目では劣化を認識できないと言われており、動きベク
トル探索範囲を菱形に制限してもほとんど画質の劣化は
ないことがわかる。つまり、図4のように斜め方向の動
きベクトルを探索しなくとも符号化結果はほとんど変わ
らない。なお、上の結果は動きベクトルの精度を落とし
た場合でも同様の結果となる。
【0046】従って、従来の動きベクトル検出回路にあ
っては、ほとんど探索する必要のない探索範囲まで動き
ベクトルを探索していることがわかる。このように探索
する必要のない探索範囲まで動きベクトルを探索するた
め、動きベクトル探索に要する時間が長くなり、その結
果、動作周波数が高くなって設計が困難になるという問
題点を有している。また、ほとんど探索する必要のない
探索範囲まで動きベクトルを探索しているため消費電力
も必要以上に大きくなるという問題もある。
【0047】本発明の第1の目的は、符号化した画像の
画質劣化を抑えつつ動きベクトル探索に要する時間を短
縮して回路の動作周波数を従来の回路より下げることを
可能とし、これにより回路設計を容易にする動きベクト
ル検出回路を提供することにある。
【0048】本発明の第2の目的は、動きベクトル探索
のための演算量を減らし不要な消費電力を極力抑えるこ
とができる動きベクトル検出回路を提供することにあ
る。
【0049】
【課題を解決するための手段】上述した問題点を解決す
るため、本発明による動きベクトル検出回路は、水平方
向MX×垂直方向MY画素の現ブロックの動きベクトル
を水平方向NX×垂直方向NY画素の参照領域内で検出
する動きベクトル検出回路において、前記現ブロックの
画素を格納する第1のメモリと、前記第1のメモリから
の読み出しアドレスを発生する第1のアドレス発生手段
と、前記参照領域の画素を格納する第2のメモリと、前
記第2のメモリに格納された複数の水平方向(MX+K
X−1)×垂直方向(MY+KY−1)画素からなる部
分参照領域の位置を指示するテーブルと、前記テーブル
の出力が指示する前記部分参照領域の読み出しアドレス
を発生する第2のアドレス発生手段と、前記第1のメモ
リから出力する前記現ブロックと前記第2のメモリから
出力する前記部分参照領域内の各参照ブロック候補の評
価値を求める評価手段と、前記評価値の最小値を検出す
る最小値検出手段を備え、前記各部分参照領域が、水平
方向(NX−MX+1)×垂直方向(NY−MY+1)
画素からなる動きベクトル探索範囲に内接する水平方向
KX×垂直方向KY画素の部分探索範囲の集合であっ
て、前記動きベクトル探索範囲の四隅を含まない前記各
部分探索範囲の集合の探索に必要な前記参照領域内の画
素からなることを特徴とする。
【0050】請求項2の本発明の動きベクトル検出回路
は、前記水平方向の画素数KXが、KX≧MXを満た
し、かつ(NX−MX+1)の約数となるように設定
し、前記垂直方向の画素数KYが、(NY−MY+1)
の約数となるように設定したことを特徴とする。
【0051】請求項3の本発明の動きベクトル検出回路
は、水平方向MX画素×垂直方向MY画素の現ブロック
の動きベクトルを水平方向NX画素×垂直方向NY画素
の参照領域内で検出する動きベクトル検出回路におい
て、前記現ブロックの画素を格納する第1のメモリと、
前記第1のメモリからの読み出しアドレスを発生する第
1のアドレス発生手段と、前記参照領域の画素を格納す
る第2のメモリと、前記第2のメモリに格納された複数
の水平方向(MX+KX−1)×垂直方向(MY+KY
−1)画素からなる部分参照領域の位置を指示するテー
ブルと、前記テーブルの出力が指示する前記部分参照領
域の読み出しアドレスを発生する第2のアドレス発生手
段と、前記第1のメモリから出力する前記現ブロックと
前記第2のメモリから出力する前記部分参照領域内の各
参照ブロック候補の評価値を求める評価手段と、前記評
価値の所定の閾値を格納する閾値格納手段と、前記評価
手段からの前記評価値を前記閾値格納手段の前記閾値と
比較することにより、前記評価値の最小値を検出する最
小値検出手段とを備え、前記各部分参照領域が、水平方
向(NX−MX+1)×垂直方向(NY−MY+1)の
画素からなる動きベクトル探索範囲に内接する水平方向
KX×垂直方向KY画素からなる部分探索範囲の集合で
あって、前記動きベクトル探索範囲の四隅を含まない前
記各部分探索範囲の集合の探索に必要な前記参照領域内
の画素からなり、前記テーブルは、前記部分参照領域に
おける前記部分探索範囲の読み出し順を設定し、前記第
2のメモリから読み出した前記部分参照領域内の前記参
照ブロック候補の前記評価値が前記閾値より小さい場合
に、前記読み出し順においてそれ以降の前記部分参照領
域の前記各参照ブロック候補の探索を停止することを特
徴とする。
【0052】請求項4の本発明の動きベクトル検出回路
は、前記水平方向の画素数KXが、KX≧MXを満た
し、かつ(NX−MX+1)の約数となるように設定
し、前記垂直方向の画素数KYが、(NY−MY+1)
の約数となるように設定したことを特徴とする。
【0053】請求項5の本発明の動きベクトル検出回路
は、前記テーブルに、前記動きベクトル探索の中心を含
む前記部分探索範囲から順に周囲の前記部分探索範囲に
向かって渦巻き状に探索する順に、前記部分参照領域に
おける前記部分探索範囲の読み出し順を設定したことを
特徴とする。
【0054】
【発明の実施の形態】動画像の符号化では、一般に動き
ベクトル探索に要する演算量が膨大なため、効率よく動
きベクトル探索を行わないとリアルタイム圧縮が不可能
になる。ところが、前述したように、効率よく参照ブロ
ック候補を評価するには、共通の参照領域の画素を持つ
参照ブロック候補をまとめて評価しなければならない。
このため動きベクトル探索範囲は長方形になる。
【0055】そこで、本発明においては、動きベクトル
探索範囲を水平方向KX×垂直方向KYの小さな長方形
の部分探索範囲の集合として考え、この部分探索範囲の
集合が動きベクトル探索範囲の斜め成分である四隅を含
まないように設定する。そして、小さな長方形の部分探
索範囲を順に探索することにより、動きベクトル探索範
囲の斜め成分だけ探索範囲を減らして探索を行い、動き
ベクトル探索範囲の面積を小さくする。この場合の部分
探索範囲の動きベクトル探索に要する時間の合計が、従
来の長方形の探索範囲全体を探索する時間より小さくな
れば、現ブロック1個の動きベクトル探索時間が短くな
り動作周波数を下げることができる。
【0056】特に、部分探索範囲の水平方向KXが(N
X−MX+1)の約数、垂直方向KYが(NY−MY+
1)の約数であれば、水平方向(NX−MX+1)×垂
直方向(NY−MY+1)の動きベクトル探索範囲を部
分探索範囲の大きさで分割することができる。従って、
部分探索範囲をそれぞれ重なり合わないように敷きつめ
て、部分探索範囲の集合が動きベクトル探索範囲に内接
するように部分探索範囲を設定できるので、動作周波数
を下げる効果が大きくなる。
【0057】従来の動きベクトル検出回路において、プ
ロセッサエレメントPEの動作率が1になる条件は、図
8のブロックマッチングプロセッサ内の遅延線95の遅
延が0以上、すなわち水平方向動きベクトル探索範囲が
現ブロックの水平方向画素数MXと等しいかそれ以上で
あること、及びプロセッサエレメントPEのセット数P
が垂直方向動きベクトル探索範囲の約数であることであ
る。
【0058】これらの条件を部分探索範囲に当てはめる
と、前者の条件は、部分探素範囲の水平方向KXがMX
以上であり、後者の条件は部分探索範囲の垂直方向KY
がPの倍数であることである。従って、最小の部分探索
範囲は水平方向MX×垂直方向Pからなる長方形とな
る。例えば、動きベクトル探索範囲のうち四隅を含まな
い範囲をこの大きさの部分探索範囲で分割して覆うよう
に設定すれば、従来の動きベクトル検出回路と同様のブ
ロックマッチングプロセッサを用いて、部分探索範囲の
探索順にそれに対応する部分参照領域内で動きベクトル
を探索することができる。
【0059】部分探索範囲の左上隅の位置の動きベクト
ル候補を(VX0,VY0)とすると、部分探索範囲に
属する動きベクトル候補は、(vx+VX0,vy+V
Y0)(vx=0〜KX−1,vy=0〜KY−1)と
なる。従って、この部分探索範囲に対応する参照領域
は、参照領域の中心に現ブロック位置があるとすると、
(VX0,VY0)と(VX0+MX+KX−2,VY
0+MY+KY−2)を対角線とする水平方向(MX+
KX−1)×垂直方向(MY+KY−1)画素からなる
長方形の部分参照領域となる。
【0060】また、消費電力を削減するための手段とし
ては、斜め成分のようにほとんど探索する必要がない範
囲の探索を行わないことに加えて、良い評価値が得られ
やすい範囲から探索を始め、所定の閾値より良い評価値
が得られれば、そこで探索を打ち切るという手段をとる
ことができる。
【0061】短い時間内で物体が大きく位置を変える可
能性は低いため、通常良い評価値が得られやすい探索範
囲としては、過去に符号化した同じ位置の現ブロックの
動きベクトルや、静止位置である(0,0)の動きベク
トル、1ブロック前に符号化した動きベクトルを探索の
原点(中心)とする探索範囲をとればよい。そこで、こ
の中心を含む部分探索範囲から探索を始め、周囲の部分
探索範囲を渦巻き状に探索していけば、良い評価値を早
く得られる可能性が高くなる。また、途中で十分な評価
値が得られれば、そこで探索を打ち切っても、それ以降
の探索でさらによい評価値が得られる可能性は低いの
で、符号化結果に悪影響を与えにくい。このようにして
1個の現ブロックの動きベクトル探索のための演算量を
減らすことにより、要な電力消費を抑えることができ
る。
【0062】本発明の第1の実施の形態について図面を
参照して説明する。図1に本発明の第1の実施の形態に
よる動きベクトル検出回路のブロック図を示す。
【0063】図1に示す動きベクトル検出回路は、図8
に示す従来例と同じ構成のブロックマッチングプロセッ
サ11と、現ブロックの画素を供給する現ブロックメモ
リ12及び参照領域の画素を供給する参照領域メモリ1
3と、現ブロックの読み出しアドレスを生成するアドレ
ス発生器14と、参照領域の読み出しアドレスを発生す
るアドレス発生器15と、アドレス発生器15に部分参
照領域の開始アドレスを与える部分参照領域開始アドレ
ステーブル16と、ブロックマッチングプロセッサ11
が出力する評価値の最小値を検出する最小値検出回路1
7と、全体を制御する制御回路19からなる。
【0064】図8の従来例では説明を簡単にするため、
現ブロックを水平方向4画素×垂直方向4画素、参照領
域を水平方向8画素×垂直方向8画素として、動きベク
トル探索範囲を水平方向−2〜+2、垂直方向−2〜+
2としたが、本実施の形態では、実際に水平方向2画素
精度、垂直方向2画素精度の動きベクトルを検出する場
合を想定し、現ブロックを水平方向8画素×垂直方向8
画素、参照領域を水平方向40画素×垂直方向24画
素、すなわち動きベクトル探索範囲を水平方向−16〜
+15、垂直方向−8〜+7として説明する。また、ブ
ロックマッチングプロセッサ11も現ブロックの水平方
向画素数と等しい8個のプロセッサエレメントPEから
構成されるものとする。
【0065】図2に本実施の形態による動きベクトル探
索範囲をドットを付して示す。図示のように、本実施の
形態では水平方向−16〜+15、垂直方向−8〜+7
の動きベクトル探索範囲を水平方向8×垂直方向4の部
分探索範囲で分割し、そのうちの四隅の4個を除く12
個の部分探索範囲の探索を行う。
【0066】部分探索範囲における探索は、図2の各部
分探索範囲に付した記号S1〜S12の順に行う。部分
探索範囲の左上隅の動きベクトル候補を(VX0,VY
0)とすると、この部分探索範囲に対応する部分参照領
域は(VX0,VY0)と(VX0+14,VY0+1
0)を対角線とする水平方向15×垂直方向11画素の
長方形となる。従って、図2のS1〜S12に対応する
部分参照領域の左上隅の画素は、参照領域をRDi,j
(i=1〜40、j=1〜24;i,jはそれぞれ水平
方向、垂直方向の座標)とすると次の表2のようにな
る。
【0067】
【表2】 これらの部分参照領域の左上隅の画素のアドレスがS1
〜S12の順に部分参照領域開始アドレステーブル16
に格納されている。部分探索範囲の水平方向画素数8と
現ブロックの水平方向画素数8が等しいため、ブロック
マッチングプロセッサ11は、図8に示す従来例のよう
な遅延線95が不要で、8個のプロセッサエレメントP
Eでループを構成している。
【0068】次に本実施の形態の動作を説明する。制御
回路19が、現ブロックの第1サイクルを開始するST
ART信号を出力すると、アドレス発生器15は部分参
照領域開始アドレステーブル16からS1の開始アドレ
スであるRD1,5を読み出し、ここから水平方向15×
垂直方向11画素の長方形の部分参照領域の画素を1行
ずつ読み出すアドレスを参照領域メモリ13に出力す
る。アドレス発生器14も1サイクルの開始時に現ブロ
ックメモリ12に現ブロックCDi,j(i,j=1〜
8)を水平方向1行ずつ読み出すアドレスを出力する。
【0069】そして、図3に示すように、64画素期間
を1サイクルとして部分探索範囲の水平方向8個の動き
ベクトル候補を並列に評価する。最初の4サイクルでS
1の部分探索範囲の探索が完了し、次の5サイクル目か
らS2の部分探索範囲の探索を始める。以下同様に動作
し、4サイクル毎に部分探索範囲の探索が終了し、計4
8サイクルで現ブロックの動きベクトルの探索を完了す
る。なお、部分参照領域開始アドレスの出力は最小値検
出回路17にも出力され、各部分参照領域内の参照ブロ
ック候補の探索順と合わせて最小の評価値を与える参照
ブロック候補の位置を更新していく。
【0070】以上のように、図1に示す本発明の動きベ
クトル検出回路は、水平方向−16〜+15、垂直方向
−8〜+7の動きベクトル探索範囲のうち、斜め成分
(vx,vy)(vx<−8かつvy<−4、vx<−
8かつvy>+3、vx>+7かつvy<−4、vx>
+7かつvy>+3)を含まない範囲の動きベクトル探
索を行うことができる。実際の探索範囲は菱形の探索範
囲を含んでおり、菱形探索範囲より符号化結果が悪くな
ることはないため、符号化した画像の画質の劣化はほと
んど認められない。
【0071】図1のブロックマッチングプロセッサ11
は、プロセッサエレメントPEを現ブロックの水平方向
1行分の8個としているため、1サイクルで水平方向8
個の参照ブロック候補の評価値を求めている。ここで、
垂直方向の部分探索範囲が4のため、前述したようにプ
ロセッサエレメントPE数を8×2セット=16個、ま
たは8×4セット=32個まで増やしてもプロセッサエ
レメントPEの動作率を1にすることができる。4セッ
ト32個のプロセッサエレメントPEをループにして、
水平方向4行分すなわち32個の参照ブロック候補を1
サイクルで評価する場合には、図3に示す動作タイミン
グの約1/4の時間で同じ範囲の探索が可能である。
【0072】なお、本実施の形態では、水平方向8×垂
直方向4の大きさの部分探索範囲を用いたが、動きベク
トル探索範囲が水平方向−16〜+15、垂直方向−8
〜+7の32×16の長方形のため、このほかに水平方
向4×垂直方向2、あるいは水平方向16×垂直方向4
等の部分探索範囲を用いることも可能である。また、動
きベクトル精度を水平及び垂直方向とも2画素精度とし
たが、水平垂直方向とも1画素精度の場合や、水平方向
2画素、垂直方向1画素精度の場合にも適用するするこ
とができる。
【0073】上述したように、本実施の形態によれば、
斜め方向の動きベクトル探索範囲を減らして動きベクト
ル探索を行うことができる。この実際の動きベクトル探
索範囲は、図4に示すような菱形探索範囲に近く、符号
化した画像の画質劣化は極めて小さく抑えることができ
る。そして、現ブロックの動きベクトル探索に要する時
間は、図2に示す探索範囲の例では、水平方向−16〜
+15、垂直方向−8〜+7の長方形の探索範囲をとっ
た場合の3/4、図6に示す探索範囲の例では最大5/
8の探索時間で済み、動作周波数をそれぞれ3/4、5
/8まで下げることが可能となる。
【0074】ここで、従来の動きベクトル検出回路と本
発明の動きベクトル検出回路で必要な動作周波数につい
て比較する。従来の動きベクトル検出回路では、現ブロ
ックを水平方向MX画素×垂直方向MY画素、参照領域
の大きさを水平方向NX画素×垂直方向NY画素とした
場合、すなわち現ブロックの参照フレーム上の動きベク
トル探索範囲を水平方向(NX−MX+1)×垂直方向
(NY−MY+1)の長方形とした場合には、参照ブロ
ック候補の数は(NX−MX+1)×(NY−MY+
1)となる。そして、参照フレーム上の参照ブロック候
補1個の評価値を求めるためには、(MX×MY)回の
差分絶対値和の累算が必要である。従って、、現ブロッ
ク1個の動きベクトル探索に必要な差分絶対値和の累算
回数は、(NX−MX+1)×(NY−MY+1)×
(MX×MY)回となる。
【0075】図9に示す1個のプロセッサエレメントP
Eで1回の差分絶対値和を計算するのに必要な時間(パ
イプライン遅延時間を除いた、例えば図11の1画素期
間)を1クロック周期とした場合、現ブロック1個の動
きベクトル探索に必要なクロック数を計算すると次のよ
うになる。
【0076】図8と同様のMX個のプロセッサエレメン
トPEからなる1行分の差分絶対値和計算回路をPセッ
ト含むブロックマッチングプロセッサを用いる場合に
は、パイプライン処理に起因する遅延時間を除けば全プ
ロセッサエレメントPEを常に動作させることができ
る。すなわち動作率を1にできるため、現ブロック1個
の動きベクトル探索に必要なクロック数は、概算で、
(NX−MX+1)×(NY−MY+1)×(MX×M
Y)/(P×MX)クロックとなる。
【0077】必要な動作周波数は、例えばNTSC方式
の動画像を符号化する場合には、水平方向720画素×
垂直方向480画素からなるフレームを30枚/秒で符
号化するため、(720/16×480/16×30)
×(NX−MX+1)×(NY−MY+1)×(MX×
MY)/(P×MX)となる。これに対して、本発明の
動きベクトル検出回路では、斜め方向の動きベクトル候
補の探索を減らすため、従来必要なクロック数の約3/
4の動作クロック数で済むことになる。
【0078】本実施例で説明した、2画素精度の動きベ
クトルを水平方向32、垂直方向16の探索範囲で検出
する場合(水平方向探索範囲が−32〜+30で2画素
精度、垂直方向探索範囲が−16〜+14で2画素精
度)では、MX=MY=8、NX=40、NY=24で
あるので、従来例では約165/P[MHz]クロック
必要であるのに対し、本発明で必要なクロック数はその
3/4の約125/P[MHz]クロックとなる。ま
た、動きベクトル検出精度が水平方向2画素、垂直方向
1画素で、水平方向48、垂直方向32の探索範囲で検
出する場合(水平方向探索範囲が−48〜+46で2画
素精度、垂直方向探索範囲が−16〜+15で1画素精
度)では、MX=8、MY=16、NX=56、NY=
48となり、従来例では約995/P[MHz]クロッ
ク必要であるのに対し、本発明で必要なクロック数は約
750/P[MHz]となる。
【0079】現在の半導体製造技術では、数百[MH
z]の動作クロックが実現できるので、P=4(4×8
個のプロセッサエレメントPE)を採用するとすると、
従来例では約250[MHz]、本発明では約190M
Hzとなり、動きベクトル検出範囲を広げるほど、本発
明の動きベクトル検出回路の方が実現しやすくなる。
【0080】次に、本発明の第2の実施の形態について
図面を参照して説明する。図5は本発明の第2の実施の
形態による動きベクトル検出回路の構成を示すブロック
である。この実施の形態では、動きベクトル探索範囲の
うち、斜め成分を減らした範囲の探索をすることに加え
て、得られた評価値を設定した閾値と比較し、閾値より
小さな良い評価値が得られた時点で探索を打ち切り消費
電力を削減する機能を実現している。
【0081】図5に示す実施の形態は、図1の実施の形
態に、閾値を設定する閾値レジスタ58を加え、最小値
検出回路57がブロックマッチングプロセッサ51から
入力した評価値と閾値レジスタ58の値を比較し、閾値
より小さな評価値が得られた時点で制御回路59に制御
信号を出力する構成になっている。本実施の形態の現ブ
ロック、参照領域の大きさ、ブロックマッチングプロセ
ッサの構成は図1と同じである。以下この実施の形態の
動作を説明する。
【0082】図6は本実施の形態による動きベクトル探
索範囲をドットを付して示したものである。図6におい
ては、図2の動きベクトル探索範囲と同じく水平方向8
×垂直方向4の部分探索範囲を用いるが、図2と異な
り、上下の探索範囲を減らして10個の部分探索範囲を
用いる。また、部分探索範囲の探索順を、中心の探索範
囲から周辺の探索範囲へ探索するように、渦巻きの形に
S1からS10を設定している。S1は探索の原点であ
る動きベクトル候補(0,0)を含むため最初に探索す
る。部分参照領域開始アドレスブーブル56には以下の
表示3に示す部分参照領域の左上隅の画素のアドレスを
設定する。
【0083】
【表3】 次に、この実施の形態の動作を説明する。制御回路59
が現ブロックの第1サイクルを開始するSTART信号
を出力すると、アドレス発生器55は部分参照領域開始
アドレステーブル56からS1の開始アドレスであるR
D17,9を読み出し、ここから水平方向15×垂直方向1
1画素の長方形の部分参照領域の画素を1行ずつ読み出
すアドレスを参照領域メモリ53に出力する。アドレス
発生器54も1サイクルの開始時に現ブロックメモリ5
2に現ブロックCDi,j(i,j=1〜8)を水平方向
1行ずつ読み出すアドレスを出力する。
【0084】そして、図7に示すように、64画素期間
を1サイクルとして部分探索範囲の水平方向8個の動き
ベクトル候補を並列に評価する。最初の4サイクルでS
1の部分探索範囲の探索が完了し、次の5サイクル目か
らS2の部分探索範囲の探索を始める。以下同様に動作
し、計40サイクルで現ブロックの動きベクトルの探索
を終了する。ただし、最小値検出回路57はブロックマ
ッチングプロセッサ51から入力した評価値と閾値レジ
スタ58の値を常に比較しており、もし閾値より小さな
評価値が得られた場合には制御回路59に制御信号を出
力する。この場合には、制御回路59が次のサイクルを
起動するSTART信号を出力せず、動きベクトル探索
を打ち切る。
【0085】以上のように図5に示す本発明の第2の実
施の形態による動きベクトル検出回路は、水平方向−1
6〜+15、垂直方向−8〜+7の動きベクトル探索範
囲のうち、斜め成分(vx,vy)(vx<−4かつv
y<−4、vx<−4かつvy>+3、vx>+3かつ
vy<−4、vx>+3かつvy>+3)を含まない範
囲の動きベクトル探索を行い、探索途中で所定の閾値よ
り良い評価値が得られた場合には動きベクトル探索を停
止することができる。
【0086】この探索範囲は、菱形の探索範囲をほとん
ど含んでおり、画質に悪影響を与える可能性は小さい。
また、動きベクトル探索は良い評価値が得られる可能性
が高い中心の部分探索範囲から渦巻き状に探索するの
で、動きベクトル探索を停止した場合でも、それ以降の
探索でさらによい評価値が得られる可能性は低く、動き
ベクトル探索に要する消費電力を減らすことができる。
【0087】なお、図1の実施の形態と同様に、本実施
の形態でもブロックマッチングプロセッサは、1セット
を8個のプロセッサエレメントPEとして、2または4
セットのプロセッサエレメントPEをループを構成する
ように接続し、探索時間をそれぞれ約1/2、1/4に
することも可能である。
【0088】以上好ましい実施の形態をあげて本発明を
説明したが、本発明は必ずしも上記実施の形態の内容に
限定されるものではない。
【0089】
【発明の効果】以上説明したように本発明の動きベクト
ル検出回路によれば、ベクトル探索範囲のうち検索する
必要のない斜め方向の成分を探索範囲から除くことによ
り、符号化した画像の画質劣化を極めて小さく抑えなが
ら動きベクトル探索に要する時間が短縮されるので、回
路の動作周波数を従来より下げることが可能となる。こ
の結果、回路設計が容易になるという効果が得られる。
【0090】さらに、動きベクトル探索に要する時間が
短縮されることから、動きベクトル探索のための演算量
を減らし不要な消費電力を極力抑えることができる。
【0091】また、請求項3の動きベクトル検出回路に
よれば、検索する必要のない斜め方向の成分を探索範囲
から減らすと共に、良い評価値が得られる可能性のある
範囲から検索を開始し、所定の閾値より小さい評価値が
得られた時点で探索を停止することにより、上述した効
果に加えて、現ブロックの多くをさらに短時間で探索す
ることが可能となるため、その分だけ演算量すなわち消
費電力をより大きく減らすことができるという効果が得
られる。
【図面の簡単な説明】
【図1】 本発明の第1の実施の形態による動きベクト
ル検出回路の構成を示すブロック図である。
【図2】 第1の実施の形態による動きベクトル検出回
路の動きベクトル探索範囲を示す図である。
【図3】 第1の実施の形態による動きベクトル検出回
路の動作タイミングチャートである。
【図4】 菱形の動きベクトル探索範囲を示す図であ
る。
【図5】 本発明の第2の実施の形態による動きベクト
ル検出回路の構成を示すブロック図である。
【図6】 第2の実施の形態による動きベクトル検出回
路の動きベクトル探索範囲を示す図である。
【図7】 第2の実施の形態による動きベクトル検出回
路の動作タイミングチャートである。
【図8】 従来の動きベクトル検出回路の構成を示すブ
ロック図である。
【図9】 従来の動きベクトル検出回路で用いられるプ
ロセッサエレメントの構成を示すブロック図である。
【図10】 従来の動きベクトル検出回路の探索範囲を
示す図である。
【図11】 従来の動きベクトル検出回路の動作を説明
する動作タイミングチャートである。
【図12】 従来の動きベクトル検出回路の動きベクト
ル探索全体の動作を説明するタイミングチャートであ
る。
【図13】 動きベクトルを説明するための図である。
【符号の説明】
11,51 ブロックマッチングプロセッサ 12,52 現ブロックメモリ 13,53 参照領域メモリ 14,15,54,55 アドレス発生器 16,56 部分参照領域開始アドレステーブル 19,59 制御回路 17、57 最小値検出回路 58 閾値レジスタ S1〜S12 部分探索範囲 91〜94 プロセッサエレメント

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】 水平方向MX×垂直方向MY画素の現ブ
    ロックの動きベクトルを水平方向NX×垂直方向NY画
    素の参照領域内で検出する動きベクトル検出回路におい
    て、 前記現ブロックの画素を格納する第1のメモリと、 前記第1のメモリからの読み出しアドレスを発生する第
    1のアドレス発生手段と、 前記参照領域の画素を格納する第2のメモリと、 前記第2のメモリに格納された複数の水平方向(MX+
    KX−1)×垂直方向(MY+KY−1)画素からなる
    部分参照領域の位置を指示するテーブルと、 前記テーブルの出力が指示する前記部分参照領域の読み
    出しアドレスを発生する第2のアドレス発生手段と、 前記第1のメモリから出力する前記現ブロックと前記第
    2のメモリから出力する前記部分参照領域内の各参照ブ
    ロック候補の評価値を求める評価手段と、 前記評価値の最小値を検出する最小値検出手段を備え、 前記各部分参照領域が、水平方向(NX−MX+1)×
    垂直方向(NY−MY+1)画素からなる動きベクトル
    探索範囲に内接する水平方向KX×垂直方向KY画素の
    部分探索範囲の集合であって、前記動きベクトル探索範
    囲の四隅を含まない前記各部分探索範囲の集合の探索に
    必要な前記参照領域内の画素からなることを特徴とする
    動きベクトル検出回路。
  2. 【請求項2】 前記水平方向の画素数KXが、KX≧M
    Xを満たし、かつ(NX−MX+1)の約数となるよう
    に設定し、前記垂直方向の画素数KYが、(NY−MY
    +1)の約数となるように設定したことを特徴とする請
    求項1に記載の動きベクトル検出回路。
  3. 【請求項3】 水平方向MX画素×垂直方向MY画素の
    現ブロックの動きベクトルを水平方向NX画素×垂直方
    向NY画素の参照領域内で検出する動きベクトル検出回
    路において、 前記現ブロックの画素を格納する第1のメモリと、 前記第1のメモリからの読み出しアドレスを発生する第
    1のアドレス発生手段と、 前記参照領域の画素を格納する第2のメモリと、 前記第2のメモリに格納された複数の水平方向(MX+
    KX−1)×垂直方向(MY+KY−1)画素からなる
    部分参照領域の位置を指示するテーブルと、 前記テーブルの出力が指示する前記部分参照領域の読み
    出しアドレスを発生する第2のアドレス発生手段と、 前記第1のメモリから出力する前記現ブロックと前記第
    2のメモリから出力する前記部分参照領域内の各参照ブ
    ロック候補の評価値を求める評価手段と、 前記評価値の所定の閾値を格納する閾値格納手段と、 前記評価手段からの前記評価値を前記閾値格納手段の前
    記閾値と比較することにより、前記評価値の最小値を検
    出する最小値検出手段とを備え、 前記各部分参照領域が、水平方向(NX−MX+1)×
    垂直方向(NY−MY+1)の画素からなる動きベクト
    ル探索範囲に内接する水平方向KX×垂直方向KY画素
    からなる部分探索範囲の集合であって、前記動きベクト
    ル探索範囲の四隅を含まない前記各部分探索範囲の集合
    の探索に必要な前記参照領域内の画素からなり、 前記テーブルは、前記部分参照領域における前記部分探
    索範囲の読み出し順を設定し、 前記第2のメモリから読み出した前記部分参照領域内の
    前記参照ブロック候補の前記評価値が前記閾値より小さ
    い場合に、前記読み出し順においてそれ以降の前記部分
    参照領域の前記各参照ブロック候補の探索を停止するこ
    とを特徴とする動きベクトル検出回路。
  4. 【請求項4】 前記水平方向の画素数KXが、KX≧M
    Xを満たし、かつ(NX−MX+1)の約数となるよう
    に設定し、前記垂直方向の画素数KYが、(NY−MY
    +1)の約数となるように設定したことを特徴とする請
    求項3に記載の動きベクトル検出回路。
  5. 【請求項5】 前記テーブルに、前記動きベクトル探索
    の中心を含む前記部分探索範囲から順に周囲の前記部分
    探索範囲に向かって渦巻き状に探索する順に、前記部分
    参照領域における前記部分探索範囲の読み出し順を設定
    したことを特徴とする請求項3に記載の動きベクトル検
    出回路。
JP24916296A 1996-08-30 1996-08-30 動きベクトル検出回路 Expired - Fee Related JP2861963B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24916296A JP2861963B2 (ja) 1996-08-30 1996-08-30 動きベクトル検出回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24916296A JP2861963B2 (ja) 1996-08-30 1996-08-30 動きベクトル検出回路

Publications (2)

Publication Number Publication Date
JPH1075455A JPH1075455A (ja) 1998-03-17
JP2861963B2 true JP2861963B2 (ja) 1999-02-24

Family

ID=17188835

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24916296A Expired - Fee Related JP2861963B2 (ja) 1996-08-30 1996-08-30 動きベクトル検出回路

Country Status (1)

Country Link
JP (1) JP2861963B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5044568B2 (ja) * 2005-12-15 2012-10-10 アナログ・デバイシズ・インコーポレーテッド 予測誘導間引き探索を使用する動き推定
JP4793070B2 (ja) * 2006-04-12 2011-10-12 ソニー株式会社 動きベクトル探索方法及び装置

Also Published As

Publication number Publication date
JPH1075455A (ja) 1998-03-17

Similar Documents

Publication Publication Date Title
US6195389B1 (en) Motion estimation system and methods
US7929609B2 (en) Motion estimation and/or compensation
US6690729B2 (en) Motion vector search apparatus and method
US7933331B2 (en) High quality, low memory bandwidth motion estimation processor
US5473378A (en) Motion compensating inter-frame predictive picture coding apparatus
JP3277418B2 (ja) 動きベクトル検出装置および方法
EP0645933B1 (en) Image reproducing apparatus
JP2006115470A (ja) 映像評価装置、フレームレート決定装置、映像処理装置、映像評価方法、および映像評価プログラム
JP4709155B2 (ja) 動き検出装置
JP5101673B2 (ja) 映像評価装置、フレームレート決定装置、映像処理装置、映像評価方法、および映像評価プログラム
JPH06205395A (ja) 動き補償を用いた動映像信号処理器のためのメモリ装置
JP3447235B2 (ja) モーションベクトル検出装置
JP4377693B2 (ja) 画像データ検索
US6160850A (en) Motion estimator employing a three-step hierachical search block-matching algorithm
US5581309A (en) Motion vector detecting circuit
JP2861963B2 (ja) 動きベクトル検出回路
JP3598526B2 (ja) 動きベクトル検出方法及び画像データの符号化方法
JP2861969B2 (ja) 動きベクトル検出回路
JP2869142B2 (ja) 画像の動き検出方法
JPH0795526A (ja) 画像処理装置及びその処理方法
JP3171249B2 (ja) 動画像符号化の動きベクトル探索方法
JP3585628B2 (ja) 動きベクトル検出装置
JP3334316B2 (ja) 画像照合方法および装置
JPH09284773A (ja) 動きベクトル探索装置
JPH10191358A (ja) 動ベクトル検出装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071211

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20081211

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20091211

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20091211

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20101211

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20101211

Year of fee payment: 12

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Free format text: PAYMENT UNTIL: 20101211

Year of fee payment: 12

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20111211

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20111211

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20121211

Year of fee payment: 14

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

Free format text: PAYMENT UNTIL: 20121211

Year of fee payment: 14

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

Free format text: PAYMENT UNTIL: 20131211

Year of fee payment: 15

LAPS Cancellation because of no payment of annual fees