JP2931789B2 - 動きベクトル探索装置 - Google Patents

動きベクトル探索装置

Info

Publication number
JP2931789B2
JP2931789B2 JP8637896A JP8637896A JP2931789B2 JP 2931789 B2 JP2931789 B2 JP 2931789B2 JP 8637896 A JP8637896 A JP 8637896A JP 8637896 A JP8637896 A JP 8637896A JP 2931789 B2 JP2931789 B2 JP 2931789B2
Authority
JP
Japan
Prior art keywords
data
search
search window
current image
transfer path
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP8637896A
Other languages
English (en)
Other versions
JPH09284768A (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.)
GURAFUITSUKUSU KOMYUNIKEESHON RABORATORIIZU KK
Original Assignee
GURAFUITSUKUSU KOMYUNIKEESHON RABORATORIIZU KK
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 GURAFUITSUKUSU KOMYUNIKEESHON RABORATORIIZU KK filed Critical GURAFUITSUKUSU KOMYUNIKEESHON RABORATORIIZU KK
Priority to JP8637896A priority Critical patent/JP2931789B2/ja
Publication of JPH09284768A publication Critical patent/JPH09284768A/ja
Application granted granted Critical
Publication of JP2931789B2 publication Critical patent/JP2931789B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、動画像の動き補
償に用いられる動きベクトルを探索するための装置に関
する。
【0002】
【従来の技術】膨大なデータ量を有する画像信号の伝送
または蓄積のためには、データ量を削減するデータ圧縮
技術が必要不可となる。画像データは、近燐画素間の相
関関係および人間の知覚特性などに起因するかなりの冗
長度を備える。このデータの冗長度を抑制して伝送デー
タ量を低減するデータ圧縮技術は高能率符号化と呼ばれ
る。この高能率符号化方式の1つに、フレーム間予測符
号化方式がある。このフレーム間予測符号化方式におい
ては、以下の処理が実行される。現在符号化しようとし
ている現フレームの各画素データと参照する前フレーム
の同じ位置にある各画素データとの差分である予測誤差
を算出する。この算出された予測誤差を以後の符号化に
用いる。この方法では、動きの少ない画像に関しては、
フレーム間の相関が大きいため高能率で符号化を行うこ
とができる。しかしながら、動きの大きな画像について
は、フレーム間の相関が小さいため誤差が大きくなり、
逆に伝送されるデータ量が増加するという欠点が生ず
る。
【0003】上述の問題点を解決する方法として、動き
補償付フレーム間予測符号化方式がある。この方法で
は、以下の処理が行われる。すなわち、予測誤差を算出
する前に、予め現フレームと前フレームの画素データを
用いて動きベクトルを算出する。この算出された動きベ
クトルに従って前フレームの予測画像を移動させる。す
なわち前フレームの動きベクトルだけずれた位置の画素
データを参照画素とし、この参照画素を予測値として用
いる。次いでこの移動後の前フレームと現フレームとの
各画素の予測誤差を算出し、予測誤差と動きベクトルを
伝送する。
【0004】図58は、従来の動き補償付予測符号化方
式に従って画像データを符号化する符号器の全体の構成
を示すブロック図である。図58において、符号器は、
入力された画像信号に対し所定の前処理を実行する前処
理回路910と、この前処理回路910により前処理さ
れた信号に対し冗長度の除去および入力信号の量子化を
実行するソース符号化回路912と、ソース符号化回路
912からの信号に対し所定のフォーマットに従った符
号化および予め定められたデータ構造の符号列に多重化
するビデオマルチプレクス符号化回路914とを含む。
【0005】前処理回路910は、時間および空間フィ
ルタを用いて入力画像信号を共通の中間フォーマットに
(CIF)に変換しかつノイズ防止のためフィルタ処理
を実行する。ソース符号化回路912は、与えられた信
号に対するたとえば離散コサイン変換(DCT)などの
直交変換処理を行うとともに、入力信号に対する動き補
償を行ない、かつ直交変換された画像データを量子化す
る。
【0006】ビデオマルチプレクス符号化回路914
は、与えられた画像信号に対し2次元可変長符号化を行
なうとともに、データ処理単位であるブロックの各種属
性(動きベクトルなど)も可変長符号化した後に、予め
定められたデータ構造の符号列に多重化する。符号器は
さらに、このビデオマルチプレクス符号化回路914か
らの画像データをバッファ処理する伝送バッファ916
と、伝送バッファ916からの画像データを伝送チャネ
ルに適合させるための伝送符号化回路918を含む。
【0007】伝送バッファ916は、情報発生速度を一
定速度に平滑化する。伝送符号化回路918は誤り訂正
ビットの付加、音声信号の付加等を実行する。図59は
図58に示すソース符号化回路912の具体的構成の一
例を示す図である。図59において、ソース符号化回路
は入力画像信号に対し動きベクトルを探索しかつ動きベ
クトルに従って動き補償された参照画素を生成する動き
補償予測器920と、動き補償予測器920からの参照
画素データに対しフィルタ処理を行なうループフィルタ
922と、ループフィルタ922の出力と入力画像信号
との差分を求める減算器924と、減算器924の出力
を直交変換する直交変換器926と、直交変換器926
により直交変換されたデータを量子化する量子化器92
8を含む。
【0008】動き補償予測器920の構成は後に詳細に
説明するが、1フレーム前の画素データを格納するフレ
ームメモリを含み、入力画像信号データとこのフレーム
メモリ内の画素データとに従って動きベクトルの探索お
よび動き補償された参照画素データの生成を行なう。ル
ープフィルタ922は、画質改善のために設けられる。
直交変換器926は、減算器924からのデータに対し
所定のブロック(通常8×8画素)を1つの単位として
DCT変換などの直交変換を行なう。量子化器928は
この直交変換された画素データを量子化する。
【0009】動き補償予測器920および減算器924
により動き補償付フレーム間予測が実行され、動画像信
号における時間的な冗長性が除去される。また、直交変
換器926による直交変換により動画像信号における空
間的な冗長性が除去される。ソース符号化回路はさら
に、量子化器928で量子化されたデータを量子化前の
信号状態に変換するための逆量子化器930と、この逆
量子化器930の出力に対し逆直交変換を行う逆直交変
換器932と、ループフィルタ922の出力と逆直交変
換器932の出力を加算する加算器934を含む。この
逆量子化器930および逆直交変換器932により次の
フレームに対するフレーム間予測に用いる画像が生成さ
れる。この生成された画像データは動き補償予測器92
0に含まれるフレームメモリへ書き込まれる。入力画像
信号(フレーム間差分データ)が加算されるため、現フ
レームのデータが再生される。通常、一般にこの逆量子
化処理、逆直交変換処理および加算処理は局部復号過程
と呼ばれる。
【0010】次に、動きベクトルの算出について具体的
に説明する。動きベクトルの算出には、一般にブロック
マッチング法が用いられる。図60(A)に示すよう
に、第(m−1)フレームにおける画像Aが第mフレー
ムにおいてはA′に移動した状態を考える。ブロックマ
ッチング法においては、画像(1フレーム)をM×N画
素のブロックに分割する(一般にはM=N)。現フレー
ムにおいては着目するブロックに最も近似するブロック
を前フレームから探し出す。この着目ブロックから最も
近似する前フレームにおけるブロックへのずれを動きベ
クトルと称す。以下に、より詳細に説明する。
【0011】図60(B)に示すように、今第mフレー
ムを符号化対象フレームとする。フレームはN×N画素
のブロックに分割される。第mフレームにおけるN×N
画素のブロックにおける一番左上の画素位置(Nk,N
l)における画素データの値をXm(Nk,Nl)とす
る。画素位置を位置(i,j)だけずらした前フレーム
におけるブロックと現フレームにおけるブロックとの差
分の絶対値和を求める。次に、このずれ(i,j)を様
々な値に変え、それぞれの差分絶対値和を求める。その
最小値の差分絶対値和を与える位置(i,j)を動きベ
クトルと称す。
【0012】動きベクトルは1ブロック画素当り一個伝
送する必要がある。ブロックサイズを小さくすると伝送
情報が増加し、効果的なデータ圧縮ができなくなる。一
方、ブロックサイズを大きくすると効果的な動き探索が
困難となる。そこで、ブロックサイズは16×16画
素、動きベクトル探索範囲(i,jの最大変化幅)は−
15〜+15とするのが一般的である。以下に、具体的
にブロックマッチング法による動きベクトルの算出につ
いて説明する。
【0013】図61はブロックマッチング法による動き
ベクトルの算出の方法を示す図である。今352ドット
×288ラインからなる画像950を考える。画像95
0を、16×16の画素群を1ブロックとしてブロック
に分割する。このブロック単位で動きベクトルの探索が
実行される。探索処理の対象となるブロック(以下、現
画像ブロックと称す)952の同じ位置にある前フレー
ムにおけるブロック954を基準として水平方向および
垂直方向に±16画素大きなブロック、すなわちブロッ
ク954を中心とする48×48画素により構成される
ブロック956を探索ブロック(以下、サーチエリアと
称す)とする。現画像ブロック952に対する動きベク
トルの探索はこのサーチエリア内において実行される。
ブロックマッチング法に従った動きベクトルの探索方法
は以下の処理ステップを備える。
【0014】動きベクトルの候補に対応する変位を有す
る予測画像ブロック(図61においては(i,j)で示
す)を求める。この求められたブロックと現画像ブロッ
クの対応の位置にある画素の差分絶対値和であるディス
トーションを求める。上述の動作を(i,j)が(−1
6、−16)〜(+16、+16)のすべての変位に対
して実行する。すべての予測画像ブロックに対して評価
関数(評価値)を求めた後、この評価関数の値が最小と
なる予測画像ブロックを探索する。現画像ブロックと同
じ位置(以下、真裏と称す)のブロック(図61におい
て(0,0)で示すブロック954)からディストーシ
ョンが最小となる予測画像ブロックに向かうベクトルを
この現画像ブロックに対する動きベクトルと決定する。
【0015】このような動きベクトルをハードウエアで
求めるための構成が種々提案されている。図62は、特
開平2−213291号公報に報告されているように従
来の動きベクトル探索装置の全体の構成を示す図であ
る。図62において、動きベクトル探索装置は、サーチ
エリアの画素データをサーチエリアの一列分入力するた
めのサーチエリア入力レジスタ962と、現画像ブロッ
ク評価点と同一サイズの行および列のマトリックス状に
配置された複数のプロセッサエレメントを含むプロセッ
サアレイ966と、このプロセッサアレイに対しサーチ
エリアにおける同一列のデータを格納するサーチエリア
サイドレジスタ964aおよび964bと、プロセッサ
アレイ966の演算結果に従って動きベクトルを探索す
る動きベクトル探索部968を含む。
【0016】プロセッサアレイ966には、変位ベクト
ル(i,j)に対応してプロセッサエレメントが配置さ
れる。すなわち、第i行、第j列に配置されたプロセッ
サエレメントPijは、変位ベクトルD(i,j)を計
算する。図63は、図62に示すプロセッサアレイに含
まれるプロセッサエレメントの構成を示す図である。図
63において、プロセッサエレメント970は、アレイ
の水平および垂直方向の3方向のプロセッサエレメント
から伝送されるサーチエリアデータを受け、選択信号S
ELに応答してその1つの入力を通過させる3入力レジ
スタ972と、3入力レジスタ972からのサーチエリ
アデータYと外部から与えられる現画像ブロックデータ
Xとに基づいてディストーション(差分絶対値和)を計
算するディストーション計算部974と、ディストーシ
ョン計算部974からのディストーションDと水平方向
に隣接するプロセッサエレメントからのディストーショ
ンとを受け、選択信号Toに従って一方を選択的に通過
させる2入力レジスタ976を含む。
【0017】このプロセッサエレメントは、図62に示
すプロセッサアレイにおいて、サーチエリアにおいて動
きベクトルの候補となるすべてのディストーションに対
応して2次元状に配置される。プロセッサアレイ966
(図62参照)の各プロセッサエレメント970へは、
全て同じ現画像ブロックデータXが与えられる。このと
き、プロセッサエレメント970へは、参照画像ブロッ
クの対応のデータが与えられる。すなわち、たとえば現
画像ブロックデータXが、X(m,n)の場合、プロセ
ッサエレメントPijに対しては参照画像ブロックデー
タY(i+m,j+n)が与えられる。サーチウインド
ウデータは、サーチエリアサイドレジスタ964aおよ
び964bならびにプロセッサアレイ966の各プロセ
ッサエレメント970を介して転送される。外部から与
えられる現画像ブロックデータX(m,n)に対し、正
確に参照画像ブロックデータY(m+i,n+j)を与
えるために、現画像ブロックデータおよび参照画像ブロ
ックデータはある規則性をもってスキャンされなければ
ならない。
【0018】図64は、この現画像ブロックのデータの
スキャン方法を示す図である。図64において、現画像
ブロックデータは、現画像ブロック999において図に
おいて矢印で示すように、まず同一列に沿って上方向か
ら下方向へスキャンされ、次いで1列隣のデータを下方
向から上方向へスキャンして生成される。このスキャン
方法を「スネークスキャン」と称す。この現画像ブロッ
クデータの「スネークスキャン」方法に従って、プロセ
ッサアレイに与えられる参照画像ブロックデータも同様
にスキャンされる。プロセッサエレメントは、その配置
位置に応じてサーチエリアデータを図の上下方向または
図63の左方向へ転送する必要がある。このため3入力
レジスタ972が設けられる。
【0019】2入力レジスタ976は、各ディストーシ
ョンが計算された後、動きベクトル探索部968におい
て最小のディストーションを与えるディストーションを
求めるために、プロセッサエレメントで計算されたディ
ストーションを動きベクトル探索部968へ伝送するた
めに設けられる。動きベクトル探索部968は、各プロ
セッサエレメントからのディストーションのうち最小の
ディストーションを探索し、その最小のディストーショ
ンを与えるプロセッサエレメントの位置、すなわち動き
ベクトルを求める。次に、この図62に示す動きベクト
ル探索装置の動作について説明する。
【0020】プロセッサエレメント966において第i
行j列に配置されたプロセッサエレメントPijは下記
の数式(E1)で表されるディストーションD(i,
j)を算出する。
【0021】
【数1】
【0022】ただし、‖ ‖はディストーションを演算
するためのノルムを表しており、d(m,n)=X
(m,n)−Y(m+j,n+j)であり、位置的に対
応する画素データの差分、すなわち局所ディストーショ
ンを表している。上述のノルム演算としては、絶対値演
算、二乗演算等がよく用いられているが、絶対値演算が
最も頻繁に用いられている。総和Σは、mおよびnに関
して行われる。m、nの変化範囲は、サーチウインドウ
のサイズにより決定される。
【0023】今、図65に示すように、現画像ブロック
980としてM行N列に配置された画素を考える。最初
のサイクルにおいては、プロセッサアレイにおける各プ
ロセッサエレメントには参照符号982で示す参照画像
ブロックデータが格納される。外部からは現画像ブロッ
ク980における第1行第1列の画素X(1,1)がプ
ロセッサアレイのすべてのプロセッサエレメントに与え
られる。各プロセッサエレメントはそこに格納されてい
るサーチウインドウデータYと与えられた現画像ブロッ
クデータXとの差分絶対値を求めて累積する。
【0024】次のサイクルにおいては、プロセッサアレ
イにおいてサーチエリアデータが図65の下方向に1行
シフトされる。この状態で、次いで現画像ブロック98
0から次の画素データX(2,1)が与えられる。プロ
セッサエレメント970において、格納されたサーチエ
リアデータはY(i+m+1,j+n)である。これら
のデータを用いて再び差分絶対値がとられかつ累算され
る。この動作がM回繰り返される。
【0025】M回上述の動作を繰り返すと、外部からサ
ーチエリアの1列のサーチエリア画素データが図62に
示すサーチエリア入力レジスタ962を介して書き込ま
れる。不要となったサーチエリアの一列の画素データは
放出される。これにより、新しいサーチエリアデータが
サーチエリアサイドレジスタ964aおよび964bお
よびプロセッサアレイ966に格納される。この動作が
繰り返し実行される。
【0026】すなわち、図66に示すように、最初はサ
ーチウインドウ990を用いて差分絶対値和の計算が実
行され、Mサイクル完了後、次のサーチウインドウ99
2のデータを用いて再び同様の計算が実行され、以降、
サーチウインドウ994、・・・と同様の計算が繰り返
される。最終的にサーチエリア996すべてに対する画
素データに対する計算が実行されると、プロセッサエレ
メントPijにおいては、ディストーションD(i,
j)が求められ、保持される。
【0027】この各プロセッサエレメントPijにおい
て求められたディストーションD(i,j)は動きベク
トル探索部968(図62参照)へ伝送され、そこで最
小のディストーションが動きベクトルとして探索され
る。上述の動きベクトル探索装置は、サーチエリアの画
素データと現画像ブロックの画素データを用いて動きベ
クトルを探索している。
【0028】また、図67のようにデータを一方向のみ
に転送してディストーションを求める動きベクトル探索
装置に関わる発明が特開平6−113290に示されて
いる。現画像ブロックと各参照画像ブロックとのディス
トーションを求める際、現画像ブロックデータはプロセ
ッサエレメントに保持されており、所定の参照画像ブロ
ックとのディストーションを算出する際、参照画像ブロ
ックデータと現画像ブロックデータとの差分絶対値を算
出する作業をそれぞれ同時に行なう。
【0029】なお、この発明は本発明に関係しているの
で転送およびディストーション算出方法等に関しては後
述する。
【0030】
【発明が解決しようとする課題】従来動きベクトルを探
索する際、サーチエリアが広い場合あるいはより動きベ
クトル探索の精度が要求される場合においては、最初に
粗い動きベクトルの探索を行って最適な動きベクトルが
存在する範囲を把握した後に、改めてその範囲において
より精度の高い動きベクトルの探索を行なうことがなさ
れている。
【0031】しかし、図67のような従来の動きベクト
ル探索装置では粗い探索と精度の高い探索を行うために
は2種類の動きベクトル探索装置が必要となる。そこ
で、本発明は1つの動きベクトル探索装置で上記の効率
的な動きベクトル探索を行うことができるように、粗い
動きベクトルの探索を行う動きベクトル探索装置および
粗い探索と精度の高い探索の選択ができる動きベクトル
探索装置を提供することである。
【0032】
【課題を解決するための手段】請求項1記載の発明は、
上記課題を解決するため、現画像よりも先に符号化され
る参照画像に含まれるサーチウインドウをそれぞれ部分
的に構成する複数の参照画像ブロックの中から、現画像
ブロックに最も類似した参照画像ブロックを選択するこ
とによって、前記現画像ブロックの現画像上の位置と選
択された参照画像ブロックの参照画像上の位置とにより
特定される動きベクトルを探索する動きベクトル探索装
置であって、前記現画像ブロックに含まれる画素データ
を出力する現画像ブロックデータ出力手段と、前記サー
チウインドウに含まれる画素データを出力するサーチウ
インドウデータ出力手段と、現画像ブロックと各参照画
像ブロックとの互いに位置的に対応する画素データ同士
の差の総和を表すディストーションを算出するディスト
ーション算出手段と、前記ディストーション算出手段に
より算出された前記ディストーションの中から前記現画
像ブロックに最も類似した参照画像ブロックを特定し、
動きベクトルを算出するディストーション特定手段と、
を備え、前記ディストーション算出手段は、前記現画像
ブロックデータ出力手段から画素データを入力して通過
させる現画像データ転送経路および前記サーチウインド
ウデータ出力手段から画素データを入力して通過させる
サーチウインドウデータ転送経路を有し、前記現画像デ
ータ転送経路上を転送中の画素データおよびサーチウイ
ンドウデータ転送経路上を転送中の画素データに基づい
て、現画像ブロックと各参照画像ブロックとの互いに位
置的に対応する画素データ同士の差を表す複数の局所デ
ィストーションを算出する局所ディストーション算出手
段と、前記局所ディストーション算出手段より算出され
た複数の局所ディストーションを総和する総和手段と、
を有し、前記サーチウインドウデータ転送経路が、第1
転送経路と第2転送経路とからなり、前記局所ディスト
ーション算出手段が、前記現画像データ転送経路上に配
置されて該現画像データ転送経路により直列に接続さ
れ、現画像データ転送経路を通過する画素データを一時
的に保持しながら転送する複数の現画像データ転送素子
と、前記サーチウインドウデータ転送経路上に配置され
て、サーチウインドウ転送経路を通過する画素データを
一時的に保持しながら転送する複数のサーチウインドウ
データ転送素子と、前記第1および前記第2転送経路
何れかを選択する転送経路選択手段と、を有し、前記第
1転送経路は、全てのサーチウインドウデータ転送素子
を直列に接続し、前記第2転送経路は、サーチウインド
ウデータ転送素子を直列に接続する複数の転送経路から
なり、全てのサーチウインドウデータ転送素子のそれぞ
れは、前記複数の転送経路のいずれかに接続され、前記
転送経路選択手段により第1転送経路が選択されたと
き、第1転送経路により直列に接続された全てのサーチ
ウインドウデータ転送素子により前記サーチウインドウ
データの画素データが順次保持されながら転送され、前
記転送経路選択手段により第2転送経路が選択されたと
、前記第2転送経路により接続されたサーチウインド
ウデータ転送素子により前記サーチウインドウデータの
画素データが順次保持されながら転送されることを特徴
とするものである。
【0033】請求項2記載の発明は、上記課題を解決す
るため、請求項1記載の動きベクトル探索装置におい
て、I、J、M、N、PおよびQを正の整数とし、Iは
Pより小さく、JはQより小さく、PはMより大きく、
QはNより大きいとして、現画像ブロックがM行N列の
画素により構成され、サーチウインドウがP行Q列の画
素により構成され、現画像データ転送素子が(M×N)
個で、M行N列のマトリックス状に配置され、サーチウ
インドウデータ転送素子が、(P×N)個でP行N列の
マトリックス状に配置され、前記第1転送経路は、サー
チウインドウデータ転送素子の各列の全ての素子を直列
に接続するとともに、各列の後端のサーチウインドウデ
ータ転送素子と隣の列の前端のサーチウインドウデータ
転送素子を接続し、全てのサーチウインドウデータ転送
素子を直列に転送する転送経路であり、前記第2転送経
路は、(I×J)個の転送経路からなり、サーチウイン
ドウデータ転送素子の各列をI個毎に直列に接続すると
ともに、各列の後端からI個のサーチウインドウデータ
転送素子のそれぞれと、J個隣の列の前端からI個のサ
ーチウインドウデータ転送素子のそれぞれを接続し、各
転送経路上のサーチウインドウデータ転送素子を直列に
転送する転送経路であることを特徴とするものである。
【0034】請求項3記載の発明は、上記課題を解決す
るため、請求項1記載の動きベクトル探索装置におい
て、転送経路選択手段が、各サーチウインドウデータ転
送素子の第1転送経路および第2転送経路上に配置さ
れ、サーチウインドウデータ転送経路を選択するよう複
数のサーチウインドウデータ転送素子を接続するセレク
タであることを特徴とするものである。
【0035】請求項4記載の発明は、上記課題を解決す
るため、請求項2記載の動きベクトル探索装置におい
て、局所ディストーション算出手段が、局所ディストー
ションを算出する演算子を有し、各現画像データ転送素
子、各サーチウインドウデータ転送素子および各演算素
子が、一つのプロセッサエレメントを構成し、(M×
N)個のプロセッサエレメントを有し、プロセッサエレ
メントと残りのサーチウインドウデータ転送素子が上下
のブロックに分かれることを特徴とするものである。
【0036】請求項5記載の発明は、上記課題を解決す
るため、請求項1記載の動きベクトル探索装置におい
て、前記局所ディストーション算出手段は、前記サーチ
ウインドウに含まれる画素データと前記現画像ブロック
に含まれる画素データとの減算を行い、該減算結果を符
号を示す符号ビットと大きさを示す大きさビットとの組
合せで出力する減算手段と、前記減算手段の各大きさビ
ットと前記符号ビットとの加算を行い、前記減算結果の
差分絶対値を出力するゲート手段と、を有し、前記局所
ディストーション算出手段の出力は前記符号ビットと前
記差分絶対値との組で与えられることを特徴とするもの
である。
【0037】請求項6記載の発明は、上記課題を解決す
るため、請求項5記載の動きベクトル探索装置におい
て、前記総和手段は、全出力が次段へ伝達され、ツリー
状となるよう複数段に配置した全加算回路を有し、前記
符号ビットは最下位ビットの前記全加算回路のキャリ入
力へ与えられることを特徴とするものである。
【0038】
【発明の実施の形態】図1〜57は本発明に関わる図面
である。図1は本発明の全体の構成の概略図である。本
発明は、現画像ブロックに含まれる画素データを出力す
る現画像ブロックデータ出力手段110と、サーチウイ
ンドウに含まれる画素データを出力するサーチウインド
ウデータ出力手段120と、現画像ブロックと各参照画
像ブロックとの互いに位置的に対応する画素データ同士
の差の総和を表すディストーションを算出するディスト
ーション算出手段130と、ディストーション算出手段
130により算出されたディストーションの中から現画
像ブロックに最も類似した参照画像ブロックを特定し、
動きベクトルを算出するディストーション特定手段14
0と、を備えている。
【0039】さらにディストーション算出手段130
は、局所ディストーション算出手段131および総和手
段132から構成される。局所ディストーション算出手
段131は、現画像ブロックデータ出力手段110から
画素データを入力して通過させる現画像データ転送経路
およびサーチウインドウデータ出力手段120から画素
データを入力して通過させるサーチウインドウデータ転
送経路を有している。また現画像データ転送経路上を転
送中の画素データおよびサーチウインドウデータ転送経
路上を転送中の画素データに基づいて、現画像ブロック
と各参照画像ブロックとの互いに位置的に対応する画素
データ同士の差を表す複数の局所ディストーションを算
出する。
【0040】また総和手段132は、局所ディストーシ
ョン算出手段131より算出された複数の局所ディスト
ーションを総和する。図2は本発明の第1実施例におけ
る局所ディストーション算出手段131の構成例を示す
図である。その構成および作用は後述する。図3は本発
明の第2実施例における局所ディストーション算出手段
131の構成例を示す図である。その構成および作用は
後述する。図4は本発明の実施例における現画像ブロッ
ク200とサーチウインドウ300を示す図である。
【0041】図7はプロセッサエレメントPEの構成例
を示す。プロセッサエレメントPEは、2段の縦続接続
されたサーチウインドウデータ保持用のレジスタ25−
1および25−2と、選択信号SEL1に従ってレジス
タ25−1および25−2の一方の保持データを順次選
択するセレクタ62と、現画像ブロックデータを保持す
るための2段の縦続接続されたレジスタ26−1および
26−2と、選択信号SEL0に従ってレジスタ26−
1および26−2の一方の保持データを順次選択するセ
レクタ60と、セレクタ60および62により選択され
たデータに対し局所ディストーションを求める差分絶対
値回路64と、入力値としてプロセッサエレメントPE
またはデータバッファDLから転送されるサーチウイン
ドウデータを選択信号SSWによって選択するセレクタ
28と、を含む。レジスタ25−1および25−2は一
方のみを有してもよく、レジスタが25−1または25
−2の一方のみの場合セレクタ62は不要である。また
レジスタ26−1および26−2の一方のみを有しても
よく、レジスタが26−1または26−2の一方のみの
場合セレクタ60は不要である。レジスタが25−1お
よび25−2の2つを有し、かつ26−1および26−
2の2つを有する場合、同じクロック数で異なる2つの
動きベクトルを同時に求めることができる。
【0042】次に、セレクタ28の説明をする。セレク
タ28は、プロセッサエレメントまたはデータバッファ
間を転送させる際に、縦方向および横方向とも跳ばしを
行わずに転送させるか、または縦方向のみ、横方向の
み、若しくは縦方向および横方向とも跳ばして転送させ
るかを選択できるように転送の仕方を切り替えるための
ものである。本実施例の場合、1つ跳びで転送させるの
でセレクタ28は2入力セレクタとなっている。なお、
2つ跳びで転送させる場合はセレクタ28は3入力セレ
クタとなり、同様にしてIを自然数としてI個跳びで転
送させる場合はセレクタ28は(I+1)入力セレクタ
となる。
【0043】例えば図2において、PE(0,0)は図
中の点線で示されており、点線内にセレクタ28および
図7のセレクタ28以外のものが斜線部で示されてい
る。図7のセレクタ28は、選択信号SSWによってサ
ーチウインドウデータが、縦方向に対して隣接する1つ
下のプロセッサエレメントPE若しくはデータバッファ
DL、または縦方向に対して2つ下のプロセッサエレメ
ントPE若しくはデータバッファDL、から転送される
かを切り替えることができる。セレクタ28は、縦方向
および横方向とも跳ばしを行わずに動きベクトルの探索
を行なう場合、選択信号SSWの値を”0”とするとセ
レクタ28の出力端子Yは入力端子Aの値を選択し、一
方、縦方向に1つ跳びでサーチウインドウデータを転送
する場合、選択信号SSWの値を”1”とするとセレク
タ28の出力端子Yは入力端子Bの値を選択する。
【0044】具体的に説明すると、例えばPE(0、
0)においては、選択信号SSWの入力値が”0”の場
合、セレクタ28の出力端子Yは入力端子Aの値、すな
わちPE(0、1)に一時的に保存されているサーチウ
インドウデータを選択し、一方選択信号SSWの入力値
が”1”の場合、セレクタ28の出力端子Yは入力端子
Bの値、すなわちPE(0、2)に一時的に保持されて
いるサーチウインドウデータを選択する。
【0045】図10〜16はデータバッファDLの構成
例を示す。図2および図3に示す7種類のデータバッフ
ァの構成を表す図である。すなわち、セレクタの有無お
よび種類に従って7種類のデータバッファに分類され
る。レジスタ31〜37はすべて共通のものであり、サ
ーチウインドウデータを一時的に保持するものである。
以下、7種類のデータバッファをレジスタの違いをもと
に説明する。
【0046】図10はデータバッファDL(3,7)の
構成を示す図である。データバッファDL(3,7)は
セレクタを有していない。レジスタ31にはサーチウイ
ンドウデータ出力手段120から出力されるサーチウイ
ンドウデータが入力され一時的に保持される。ここで、
データバッファDLに記載されるaおよびbは、それぞ
れ図2の第1実施例および図3の第2実施例の局所ディ
ストーション算出手段131の構成に係わることを表し
ている。
【0047】図11はデータバッファDL(0,4),
DLa(0,5),DL(1,4),DLa(1,
5),DL(2,4),DLa(2,5),DL(3,
4),DL(3,5),DLa(3,6)の構成を示す
図である。セレクタ41は2入力セレクタであり、出力
端子Yは選択信号S0の値によって入力端子A、Bを選
択するものである。すなわち、選択信号S0の値が”
0”の場合、出力端子Yは入力値として入力端子Aの信
号値を選択する。また、選択信号S0の値が”1”の値
の場合、出力端子Yは入力値として入力端子Bの信号値
を選択する。
【0048】具体的に説明すると、例えばDLa(1、
5)において、選択信号S0の値が”0”の場合、出力
端子Yは入力値として入力端子Aの信号値を選択するの
で、DLa(1,6)に一時的に保持されているサーチ
ウインドウデータを入力値として選択する。この選択が
される場合、縦方向および横方向とも跳ばしを行わずに
動きベクトルの探索が行なわれる。
【0049】また、選択信号S0の値が”1”の場合、
出力端子Yは入力値として入力端子Bの信号値を選択す
るので、DLa(1,7)に一時的に保持されているサ
ーチウインドウデータを入力値として選択する。この選
択がされる場合、縦方向に1つ跳ばしで動きベクトルの
探索が行なわれる。図12はデータバッファDLa
(0,7),DLa(1,7)の構成を示す図である。
セレクタ42は4入力セレクタであり、出力端子Yは選
択信号S0およびS1の値によって入力端子A、B、
C、Dを選択するものである。すなわち、選択信号S0
の値が”0”かつ選択信号S1の値が”0”の場合、出
力端子Yは入力値として入力端子Aの信号値を選択す
る。また、選択信号S0の値が”0”かつ選択信号S1
の値が”1”の場合、出力端子Yは入力値として入力端
子Bの信号値を選択する。また、選択信号S0の値が”
1”かつ選択信号S1の値が”0”の場合、出力端子Y
は入力値として入力端子Cの信号値を選択する。また、
選択信号S0の値が”1”かつ選択信号S1の値が”
1”の場合、出力端子Yは入力値として入力端子Dの信
号値を選択する。
【0050】具体的に説明すると、例えばDLa(1、
7)において、選択信号S0の値が”0”かつ選択信号
S1の値が”0”の場合、出力端子Yは入力値として入
力端子Aの信号値を選択するので、PE(2,0)に一
時的に保持されているサーチウインドウデータを入力値
として選択する。この選択がされる場合、縦方向および
横方向とも跳ばしを行わずに動きベクトルの探索が行な
われる。
【0051】また、選択信号S0の値が”0”かつ選択
信号S1の値が”1”の場合、出力端子Yは入力値とし
て入力端子Bの信号値を選択するので、PE(2,1)
に一時的に保持されているサーチウインドウデータを入
力値として選択する。この選択がされる場合、縦方向に
のみ1つ跳ばしで動きベクトルの探索が行なわれる。ま
た、選択信号S0の値が”1”かつ選択信号S1の値
が”0”の場合、出力端子Yは入力値として入力端子C
の信号値を選択するので、PE(3,0)に一時的に保
持されているサーチウインドウデータを入力値として選
択する。この選択がされる場合、横方向のみ1つ跳ばし
で動きベクトルの探索を行なわれる。
【0052】また、選択信号S0の値が”1”かつ選択
信号S1の値が”1”の場合、出力端子Yは入力値とし
て入力端子Dの信号値を選択するので、PE(3,1)
に一時的に保持されているサーチウインドウデータを入
力値として選択する。この選択がされる場合、横方向お
よび縦方向とも1つ跳ばしで動きベクトルの探索が行な
われる。
【0053】図13はデータバッファDLa(2,7)
の構成を示す図である。セレクタ43は3入力セレクタ
であり、出力端子Yは選択信号S0およびS1の値によ
って入力端子A、B、C/Dを選択するものである。す
なわち、選択信号S0の値が”0”かつ選択信号S1の
値が”0”の場合、出力端子Yは入力値として入力端子
Aの信号値を選択する。また、選択信号S0の値が”
0”かつ選択信号S1の値が”1”の場合、出力端子Y
は入力値として入力端子Bの信号値を選択する。また、
選択信号S0の値が”1”の場合、選択信号S1の値に
係わらず出力端子Yは入力値として入力端子C/Dの信
号値を選択する。
【0054】具体的に説明すると、例えばDLa(2、
7)において、選択信号S0の値が”0”かつ選択信号
S1の値が”0”の場合、出力端子Yは入力値として入
力端子Aの信号値を選択するので、PE(3,0)に一
時的に保持されているサーチウインドウデータを入力値
として選択する。この選択がされる場合、縦方向および
横方向とも跳ばしを行わずに動きベクトルの探索が行な
われる。
【0055】また、選択信号S0の値が”0”かつ選択
信号S1の値が”1”の場合、出力端子Yは入力値とし
て入力端子Bの信号値を選択するので、PE(3,1)
に一時的に保持されているサーチウインドウデータを入
力値として選択する。この選択がされる場合、縦方向に
のみ1つ跳ばしで動きベクトルの探索が行なわれる。ま
た、選択信号S0の値が”1”の場合、選択信号S1の
値にかかわらず、出力端子Yは入力値として入力端子C
/Dの信号値を選択するので、サーチウインドウデータ
出力手段120から入力口Ia4を介して入力されるサ
ーチウインドウデータを入力値として選択する。この選
択がされる場合、横方向に1つ跳ばしで動きベクトルの
探索が行なわれる。
【0056】図14はデータバッファDLa(0,
6),DLa(1,6),DLa(2,6)の構成を示
す図である。セレクタ44は3入力セレクタであり、出
力端子Yは選択信号S0およびS1によって入力端子A
/C、B、Dの値を選択するものである。すなわち、選
択信号S1の値が”0”の場合、選択信号S0の値にか
かわらず、出力端子Yは入力値として入力端子A/Cの
信号値を選択する。また、選択信号S0の値が”0”か
つ選択信号S1の値が”1”の場合、出力端子Yは入力
値として入力端子Bの信号値を選択する。また、選択信
号S0の値が”1”かつ選択信号S1の値が”1”の値
の場合、出力端子Yは入力値として入力端子Dの信号値
を選択する。
【0057】具体的に説明すると、例えばDLa(1、
6)において、選択信号S1の値が”0”の場合、選択
信号S0の値にかかわらず、出力端子Yは入力値として
入力端子A/Cの信号値を選択するので、DLa(1,
7)に一時的に保持されているサーチウインドウデータ
を入力値として選択する。この選択がされる場合、縦方
向に跳ばしを行わずに動きベクトルの探索が行なわれ
る。
【0058】また、選択信号S0の値が”0”かつ選択
信号S1の値が”1”の場合、出力端子Yは入力値とし
て入力端子Bの信号値を選択するので、PE(2,0)
に一時的に保持されているサーチウインドウデータを入
力値として選択する。この選択がされる場合、縦方向に
のみ1つ跳ばしで動きベクトルの探索が行なわれる。ま
た、選択信号S0の値が”1”かつ選択信号S1の値
が”1”の場合、出力端子Yは入力値として入力端子D
の信号値を選択するので、PE(3,0)に一時的に保
持されているサーチウインドウデータを入力値として選
択する。この選択がされる場合、横方向および縦方向と
も1つ跳ばしで動きベクトルの探索が行なわれる。
【0059】図15はデータバッファDLb(0,
6),DLb(1,6),DLb(2,6),DLb
(0,7),DLb(1,7),DLb(2,7)の構
成を示す図である。セレクタ46は2入力セレクタであ
り、出力端子Yは選択信号S0の値によって入力端子
B、Dを選択するものである。すなわち、選択信号S0
の値が”0”の場合、出力端子Yは入力値として入力端
子Bの信号値を選択する。また、選択信号S0の値が”
1”の値の場合、出力端子Yは入力値として入力端子D
の信号値を選択する。ここで注意すべきは、縦方向の跳
ばしが行われない場合、後述するように、サーチウイン
ドウを拡大させるためにデータバッファ数を増加させる
必要がないため、本データバッファは使用されないとい
う点である。
【0060】具体的に説明すると、例えばDLb(1、
6)において、選択信号S0の値が”0”の場合、出力
端子Yは入力値として入力端子Bの信号値を選択するの
で、PE(2,0)に一時的に保持されているサーチウ
インドウデータを入力値として選択する。この選択がさ
れる場合、縦方向のみ跳ばして転送され、動きベクトル
の探索が行なわれる。
【0061】また、選択信号S0の値が”1”の場合、
出力端子Yは入力値として入力端子Dの信号値を選択す
るので、PE(3,0)に一時的に保持されているサー
チウインドウデータを入力値として選択する。この選択
がされる場合、縦方向および横方向ともに1つ跳ばしで
転送され、動きベクトルの探索が行なわれる。図16は
データバッファDLb(0,5),DLb(1,5),
DLb(2,5)の構成を示す図である。セレクタ45
は3入力セレクタであり、出力端子Yは選択信号S0お
よびS1の値によって入力端子A、B、Cを選択するも
のである。すなわち、選択信号S0の値が”0”かつ選
択信号S1の値が”0”の場合、出力端子Yは入力値と
して入力端子Aの信号値を選択する。また、選択信号S
0の値が”0”かつ選択信号S1の値が”1”の場合、
出力端子Yは入力値として入力端子Bの信号値を選択す
る。また、選択信号S0の値が”1”の場合、選択信号
S1の値にかかわらず出力端子Yは入力値として入力端
子Cの信号値を選択する。ここで注意すべきは、本デー
タバッファは、縦方向の跳ばしが行われない場合、後述
するようにデータバッファDLb(0,6),DLb
(1,6),DLb(2,6),DLb(0,7),D
Lb(1,7),DLb(2,7),DLb(3,6)
およびDLb(3,7)が使用されないため、実際上、
局所ディストーション算出手段131の列の最後尾とし
て接続されている点である。
【0062】具体的に説明すると、例えばDLb(2、
5)において、選択信号S0の値が”0”かつ選択信号
S1の値が”0”の場合、出力端子Yは入力値として入
力端子Aの信号値を選択するので、PE(3,0)に一
時的に保持されているサーチウインドウデータを入力値
として選択する。この選択がされる場合、縦方向および
横方向とも跳ばしを行わずに動きベクトルの探索が行な
われる。
【0063】また、選択信号S0の値が”0”かつ選択
信号S1の値が”1”の場合、出力端子Yは入力値とし
て入力端子Bの信号値を選択するので、DLb(2,
7)に一時的に保持されているサーチウインドウデータ
を入力値として選択する。この選択がされる場合、縦方
向に1つ跳ばしで動きベクトルの探索が行なわれる。ま
た、選択信号S0の値が”1”の場合、選択信号S1の
値にかかわらず、出力端子Yは入力値として入力端子C
の信号値を選択するので、サーチウインドウデータ出力
手段120から入力されるサーチウインドウデータを入
力口Ib2を介して入力値として選択する。この選択が
される場合、横方向のみ1つ跳ばしで動きベクトルの探
索が行なわれる。
【0064】図8は図7に示す差分絶対値回路64の具
体的構成の一例を示す図である。差分絶対値回路64は
図7のセレクタ60からのサーチウインドウデータを負
入力(A)に受け、かつセレクタ62からの現画像ブロ
ックデータを正入力(B)に受ける減算器70を含む。
減算器70はその減算結果を符号付マルチビット表示す
る。符号ビットS(A>B)はサーチウインドウデータ
が現画像データより大きい場合には”1”となり、そう
でない場合に”0”となる。この減算器70の出力が2
の補数表示されるものとする。
【0065】差分絶対値回路64はさらに、符号ビット
S(A>B)と減算器70からの残りのビット(大きさ
ビットと称す)とを受けるExOR回路72と、符号ビ
ットS(A>B)に応じてExOR回路72の出力に1
を加算するインクリメンタ74を含む。インクリメンタ
74は、符号S(A>B)が”1”の場合にExOR回
路72の出力に1を加算する。インクリメンタ74は、
符号S(A>B)が”0”の場合にはExOR回路72
の出力に1を加算せずにそのまま通過させる。ExOR
回路72は、マルチビットの画素データに対して演算を
行なう。画素データの各ビットが符号ビットの値に従っ
て反転または非反転される。
【0066】ExOR回路72は、符号ビットS(A>
B)が”0”の場合には減算器70からの大きさビット
(演算器70の出力のうち符号ビットを除いた残りのビ
ット)をそのまま通過させる。符号ビットS(A>B)
が”1”の場合、ExOR回路72は減算器70の大き
さビットの各ビットを反転する。すなわち、ExOR回
路72は減算器70からの大きさビットの各ビットと符
号ビットS(A>B)とのモジュール2の加算を実行す
る。
【0067】演算器70は(B−A)の演算を行なう。
この演算結果が正であれば符号ビットS(A>B)は”
0”であり、負の場合には符号ビットS(A>B)は”
1”である。減算器70の出力は2の補数表示されてい
る。したがって、ExOR回路72およびインクリメン
タ74により符号ビットS(A>B)に従って演算器出
力のビット反転および1増分を選択的に行なうことによ
り|B−A|の差分絶対値が出力される。このとき、各プ
ロセッサエレメントからそれぞれ求められた差分絶対値
が総和手段132へ入力され、その総和値が求められ
る。したがって、各動きベクトルに対するディストーシ
ョンが算出される。
【0068】図9は図7に示す差分絶対値回路64の他
の具体的構成例を示す図である。図9に示す差分絶対値
回路64は、サーチウインドウデータと現画像データと
演算を行う減算器70と、減算器70の出力の大きさビ
ットと符号ビットS(A>B)を受けるExOR回路7
2を含んでいる。この図9に示す差分絶対値回路64
は、図8に示す差分絶対値回路64と異なりインクリメ
ンタ74を含んでいない。インクリメンタ74の機能
は、符号ビットS(A>B)が”1”のときにExOR
回路72の出力に1を加算することである。図9に示す
差分絶対値回路64では、この1を加算する動作は、実
行されず次の総和手段132で実行される。すなわち、
図9に示す差分絶対値回路64は、差分絶対値PE#と
符号ビットS#を出力し、総和手段132に入力する。
【0069】図17は、図9に示す差分絶対値回路64
を用いた場合の総和手段132の全体の構造を示すブロ
ック図である。図17において総和手段132は、プロ
セッサエレメント数をnとするとき、各プロセッサエレ
メントからそれぞれ差分絶対値PE#1〜PE#nと符
号ビットS#1〜S#nが入力され、その総和を算出す
る。差分絶対値PE#1〜PE#nはマルチビットデー
タであり、符号ビットS#1〜S#nは1ビットデータ
である。総和手段132の構成は、差分絶対値PE#1
〜PE#nを受ける、全加算器からなるコンプレッサで
構成される。符号ビットS#1〜S#nはこのコンプレ
ッサの最下位ビットのキャリ入力へ与えられる。これに
より加算操作の高速化および装置規模の低減が図られ
る。
【0070】図18は、図17に示す総和手段132の
具体的構成の一例を示す図である。プロセッサエレメン
トの数に応じて構成が拡張される。図18において、総
和手段132は、4つのプロセッサエレメントからの差
分絶対値に対応する値PE#1〜PE#4を入力A、
B、CおよびDにそれぞれ受けかつキャリ入力に符号ビ
ットS#1を受けて加算を行い、その加算結果を2出力
EおよびFから出力する4対2コンプレッサ102a
と、差分絶対値に対応する値PE#5〜PE#8を入力
A、B、CおよびDにそれぞれ受けかつキャリ入力に符
号ビットS#2を受けて加算を行い、その加算結果を2
出力EおよびFから出力する4対2コンプレッサ102
bと、4対2コンプレッサ102aおよび102bの出
力をその4入力A、B、CおよびDに受け、かつその最
下位ビット位置に符号ビットS#3、S#4およびS#
5を受ける4対2コンプレッサ102cを含んでいる。
4対2コンプレッサ102cが3ビットの符号ビットS
#3、S#4およびS#5を受けることができるのは、
この4対2コンプレッサ102cが3段の全加算回路を
含んでいるためである。
【0071】総和手段132はさらに、4対2コンプレ
ッサ102cの出力(EおよびF)をその入力Aおよび
Bに受けかつ最下位ビットのキャリ入力に符号ビットS
#6、S#7およびS#8を受ける加算器104を含
む。そして、加算器104から総和結果が出力される。
この総和手段132は、ワレスツリー(Wallace
Tree)の構成を備え、キャリ伝搬遅延を最小にし
て高速で加算を実行することができる。ここで、図18
の示す総和手段132は、累算器を備えていない。演算
速度がサーチウインドウデータ転送速度よりも早い場合
には、複数回の加算を実行する必要がある。このため、
プロセッサエレメントが複数の現画像データ転送素子を
備える場合、加算回路104の出力部に累算器が設けら
れる。各演算サイクル毎にプロセッサエレメントから差
分絶対値和データが総和手段132へ転送されてもよ
い。
【0072】上述の構成においては、符号ビットを最下
位ビットのキャリ入力に与えているため、小さい回路規
模で高速で加算を実行することができる。次にこの4対
2コンプレッサの構成および総和手段132の具体的構
成について説明する。図19は図18に示す4対2コン
プレッサの具体的構成の一例を示す図である。図19に
示す4対2コンプレッサは、与えられたデータが4ビッ
ト幅の場合に対する構成を備える。入力データのビット
幅が大きくなればこの図19に示す構成が拡張される。
【0073】図19において、4対2コンプレッサ10
2は、各々が入力AおよびBと、キャリ入力Cinと、
キャリ出力Coと、和出力Sとを備える並列に配列され
る全加算回路110a、110b、110cおよび11
0dを含む。全加算回路110a〜110dのA入力お
よびB入力に4ビット入力データA<3;0>およびB
<3;0>が与えられかつキャリ入力Cinに入力デー
タC<3;0>が与えられる。ここで、「A<3;0
>」はデータAがビットA0を最下位ビットとしかつビ
ットA3を最上位ビットとする4ビットデータであるこ
とを示す。
【0074】4対2コンプレッサ102はさらに、初段
の全加算回路110a〜110dの和出力Sおよびキャ
リ出力Coと入力データD<3;0>との加算を行う全
加算回路110e、110f、110gおよび110h
を含む。全加算回路110a〜110dと全加算回路1
10e〜110hとは桁合わせして配置される。初段の
全加算回路110a〜110dの和出力Sは次段の対応
の全加算回路の入力(AまたはB)に与えられる。初段
の全加算回路110a〜110dのキャリ出力Coは次
段の全加算回路において1ビット上位の全加算回路のキ
ャリ入力へ与えられる。
【0075】全加算回路(FA)において最下位ビット
の全加算回路110hのキャリ入力104には0が印加
される。すなわち全加算回路110hのキャリ入力は空
きキャリとなる。本実施例においてはこの空きキャリ1
04へ符号ビットS#を与える。4対2コンプレッサ1
02からは5ビットデータE<4;0>およびF<4;
0>が出力される。全加算回路(FA)110e〜11
0hのキャリ出力がデータビットE<4;0>を与え
る。初段の全加算回路110aのキャリ出力がデータビ
ットF<4;0>を与える。
【0076】図19に示す4対2コンプレッサ102の
構成においては、キャリ伝搬は存在しない。演算に要す
る遅延時間は全加算回路2段分だけである。これにより
高速で加算を実行することができる。また、空きキャリ
104へ符号ビットS#を与える構成とするため、回路
規模を増加させることなく差分絶対値の加算を実行する
ことができる。
【0077】図20は、図18に示す回路構成の具体的
接続形態を示す図である。この図20に示す総和手段1
32は図19に示す4対2コンプレッサを利用する。
今、差分絶対値P#iを(Pi3,Pi2,Pi1,P
i0)で表す。4対2コンプレッサ110aは差分絶対
値P#1〜P#3を加算する全加算回路FA1〜FA4
と、全加算回路FA1〜FA4の出力と差分絶対値P#
4とを加算する全加算回路FA5、FA6、FA7およ
びFA8を含む。全加算回路FA8のキャリ入力へ符号
ビットS#1が与えられる。
【0078】4対2コンプレッサ102bは差分絶対値
P#5〜P#7を加算する全加算回路FA9、FA1
0、FA11およびFA12と、全加算回路FA9〜F
A12の出力と差分絶対値P#8とを加算する全加算回
路FA13、FA14、FA15およびFA16を含
む。全加算回路FA16のキャリ入力へ符号ビットS#
2が与えられる。
【0079】4対2コンプレッサ102cは、4対2コ
ンプレッサ102aの出力と、4対2コンプレッサ10
2aの一方出力(全加算回路FA13〜FA16の和出
力および全加算回路FA9のキャリ出力)とを加算する
全加算回路FA17〜FA21と、全加算回路FA17
〜FA21の出力と4対2コンプレッサ102bの他方
出力(全加算回路FA13〜FA16のキャリ出力)を
加算する全加算回路FA22ないしFA26を含む。全
加算回路FA26のキャリ入力および一方入力へ符号ビ
ットS#4およびS#5が与えられる。
【0080】加算器104は、符号ビットS#6ないし
S#8を加算する全加算回路FA27と、この全加算回
路FA27の出力と4対2コンプレッサ102cの出力
とを加算する全加算回路FA28ないしFA33と、全
加算回路FA28ないしFA33の出力を受けて最終加
算結果を出力する全加算回路FA34ないしFA39を
含む。全加算回路FA28ないしFA33は3対2コン
プレッサを構成する。全加算回路FA34〜FA39は
リップキャリ型加算器を構成する。他の加算器の構成
(たとえば桁上げ先見型加算器)が利用されてもよい。
【0081】このように、図20に示すようにコンプレ
ッサを利用して加算を行うことによりキャリ伝搬に伴う
遅延を最小限に抑えることができ、高速で加算すること
ができる。図21は図1に示すディストーション特定手
段140の具体的構成を示す図である。ディストーショ
ン特定手段140はディストーション算出手段130か
ら与えられるディストーションを格納するためのレジス
タラッチ141と、レジスタラッチ141に格納された
ディストーションとディストーション算出手段130か
ら新たに与えられるディストーションの大きさを比較す
る比較器142と、ディストーション算出サイクル数を
カウントするカウンタ143と、比較器142の出力に
応答してカウンタ143のカウント値を格納するレジス
タラッチ144を含む。レジスタラッチ144から動き
ベクトルがそのまま出力されてもよく、また図において
破線のブロック154で示すように、レジスタラッチ1
44の出力を所定の形式でコード化するデコーダが設け
られてもよい。次に動作について説明する。
【0082】1つの現画像ブロックに対する動きベクト
ルの動作開始時においてカウンタ143、レジスタラッ
チ141、およびレジスタラッチ144はリセットされ
る。レジスタラッチ141の初期設定値は最大ディスト
ーションよりも大きい値に設定される(例えば全ビッ
ト”1”)。1つのディストーションが与えられると、
比較器142はこのレジスタラッチ141に格納された
ディストーションとディストーション算出手段130か
ら新たに与えられるディストーションの大きさを比較す
る。比較器142は、ディストーション算出手段130
から新たに与えられるディストーションはレジスタラッ
チ141に格納されたディストーションより小さいとき
にはラッチ信号を発生する。レジスタラッチ141はこ
のラッチ指示信号に応答してディストーション算出手段
130から与えられるディストーションを格納する。同
様にレジスタラッチ144もカウンタ143のカウント
値を動きベクトルの候補としてラッチする。
【0083】次のディストーションに対してカウンタ
は、カウンタに入力される制御信号に応答してカウント
値を1インクリメントする。ディストーション算出が完
了すると、比較器142はディストーション算出手段1
30から新たに与えられたディストーションとレジスタ
ラッチ141に格納された値との大きさの比較を行な
う。新たに与えられたディストーションがレジスタラッ
チ141に格納されている値よりも大きい場合には、比
較器142はラッチ信号を発生しない。新たに与えられ
たディストーションがレジスタラッチ141に格納され
ている値よりも小さいときにはラッチ指示信号が発生さ
れる。この動作をすべてのディストーションに対して実
行する。これによりレジスタラッチ141には、すべて
のディストーションのうち最小のディストーションが格
納される。またレジスタラッチ144にはその最小のデ
ィストーションを与える動作サイクルを示すカウンタ1
43のカウント値がラッチされる。このカウント値が動
きベクトルとして利用される。
【0084】この動きベクトルが求められた後は再びカ
ウント143、レジスタラッチ141および144が初
期設定され、次の現画像ブロックに対する動きベクトル
の算出が実行される。画像データ格納のためのフレーム
メモリとしては、ダイナミック・ランダム・アクセス・
メモリまたはスタテック・ランダム・アクセス・メモリ
が用いられてもよい。ランダム・アクセス・メモリの場
合、連続データを読出す場合にページモードなどの高速
動作モードが利用される。
【0085】次に本発明の実施例の特徴点の説明を行
う。 《第1実施例》まず、本発明の第1実施例の説明を行
う。図2は本発明の第1実施例における局所ディストー
ション算出手段131の構成例を示す図である。
【0086】本実施例において、プロセッサエレメント
PEおよびデータバッファDL内にあるそれぞれセレク
タ28およびセレクタ41〜44によってプロセッサエ
レメントPEおよびデータバッファDL間の接続を切り
替えることができる。すなわち、セレクタ28およびセ
レクタ41〜44によって、第1転送経路と、プロセッ
サエレメントPEおよびデータバッファDLの縦方向の
みを1つ跳びに転送する第2転送経路と、横方向のみを
1つ跳びに転送する第2転送経路と、縦方向および横方
向とも1つ跳びに転送する第2転送経路と、の4種類の
サーチウインドウデータの転送経路を選択することがで
きる。
【0087】前述のように、セレクタ28およびセレク
タ41〜44にはこの4種類のサーチウインドウデータ
転送経路を選択するためのモード選択信号SSW、S0
およびS1によって、入力されるサーチウインドウデー
タが保持されているプロセッサエレメントPEまたはデ
ータバッファDLが選択される。なお、モード選択信号
SSW、S0およびS1は動きベクトル算出開始時に入
力されれば、モードを替えない限り同じ信号値である。
【0088】セレクタ28およびセレクタ41〜44
が、サーチウインドウデータ転送経路として、第1転送
経路、または上記3種類の何れかの第2転送経路を選択
した場合をそれぞれ第1モード、第2モード、第3モー
ドおよび第4モードとして以下説明する。なお、第1〜
4モードはプロセッサエレメントPEおよびデータバッ
ファDLの電気的接続が変化するだけで回路構成は同じ
である。 <第1モード>図40〜57を参照して本発明に係わる
動きベクトル探索装置の第1実施例の第1モードを説明
する。本モードは、図67に示すようにプロセッサエレ
メントPEおよびデータバッファDLがすべて直列に接
続された第1転送経路によってサーチウインドウデータ
が転送され動きベクトルを求めるものである。特開平6
−113290号公報には第1モードのみで探索する動
きベクトル探索装置が報告されている。本発明でも一つ
のモードとして選択できるので以下説明する。
【0089】第1モードでは、図2において各プロセッ
サエレメントPEのセレクタ28および各データバッフ
ァDLのセレクタ41〜44は、それぞれ選択信号SS
W,SO,S1の値をそれぞれ”0”、”0”、”0”
としているので出力端子Yは全て入力端子Aを選択して
いる。したがって、セレクタ41〜44は、サーチウイ
ンドウデータの転送経路として第1転送経路を選択する
ことができるので、プロセッサエレメントPEおよびデ
ータバッファDLがすべて直列に接続される。
【0090】本モードのデータの転送の仕方は、図40
〜図57に説明されており、プロセッサエレメントPE
およびデータバッファDLのデータ保持状態を示してい
る。現画像ブロックデータ出力手段110とサーチウイ
ンドウデータ出力手段120はそれぞれ現画像ブロック
データおよびサーチウインドウデータをクロックパルス
信号の1パルス毎にパルスに同期して出力されるととも
にプロセサエレメントPEまたはデータバッファDLに
保持されているデータは次のプロセサエレメントPEま
たはデータバッファDLに転送される。以下、開始時か
らの1パルス毎のクロックパルス信号を1クロック、2
クロック、・・・と呼ぶ。
【0091】図40〜44は、それぞれ1、3、5、8
および12クロック目のデータ保持状態を示す図であ
る。現画像ブロックデータおよびサーチウインドウデー
タはそれぞれプロセサエレメントまたはデータバッファ
の列方向および行方向の1つ毎に転送されていることが
わかる。図45は、16クロック目のデータ保持状態を
示す図である。動きベクトルを探索する際の図4の現画
像ブロック200のデータはすべてプロセサエレメント
に入力されていることがわかる。以下、この現画像ブロ
ックデータは探索範囲をすべて探索するまで同じプロセ
サエレメントに保持される。図46は、24クロック目
のデータ保持状態を示す図である。図47〜57は、そ
れぞれ32、33、34、35、36、40、44、4
8、56、64および68クロック目のデータ保持状態
を示す図である。図47では、プロセサエレメントまた
はデータバッファにすべてサーチウインドウデータは保
持され、各プロセサエレメントはベクトル(−2,−
2)に対する局所ディストーションを算出し、その総和
が総和手段132で算出され、ベクトル(−2,−2)
に対応するディストーションが求まる。ここでサーチウ
インドウデータが参照画像ブロックとしてb(2,
2)、b(3,2)、b(4,2)、b(5,2)、b
(2,3)、b(3,3)、b(4,3)、b(5,
3)、b(2,4)、b(3,4)、b(4,4)、b
(5,4)、b(2,5)、b(3,5)、b(4,
5)、b(5,5)を取る場合をベクトル(0,0)と
して定義している。
【0092】以下同様にして、図48〜57でそれぞれ
ベクトル(−2,−1)、(−2,0)、(−2,
1)、(−2,2)、(−1,−2)、(−1,2)、
(0,−2)、(1,−2)、(2,−2)、(2,
2)のディストーションが求まる際のデータ保持状態を
示している。このようにして図4に示す現画像ブロック
200に対してサーチウインドウ300の範囲で取り得
るサーチウインドウブロックのディストーションがすべ
て求まり、この中から最小のディストーションが特定さ
れ、動きベクトルが求められる。動きベクトル算出の説
明は、前述の通りなので省略する。なお、本モードにお
いて、参照画像転送経路として、1個の第1転送経路を
とる。
【0093】<第2モード>図5および図22〜31を
参照して本発明に係わる動きベクトル探索装置の第1実
施例の第2モードの説明をする。本モードは、プロセッ
サエレメントPEおよびデータバッファDLが縦方向に
跳ばして接続された第2転送経路によってサーチウイン
ドウデータが転送され動きベクトルを求めるものであ
る。なお、図22〜31には本モードとして縦方向に1
つ跳ばしで転送する一例が示されているが、セレクタの
選択数を増加させることにより縦方向の跳ばしを増加さ
せることができる。
【0094】図5は第2モードにおける参照画像ブロッ
ク410〜440とサーチウインドウ300の転送動作
を説明するための図である。本モードのサーチウインド
ウの探索範囲は、第1モードと同様ベクトルのy座標が
−2〜+2の範囲である。図27は、現画像ブロック2
00の現画像ブロックデータがプロセッサエレメントP
Eに保持され、参照画像ブロック410のサーチウイン
ドウデータがプロセッサエレメントPEに保持されてい
る状態を示している。このとき、ベクトル(−2,−
2)に対応するディストーションが算出される。図28
は、図27の保持状態から1クロック後の保持状態を示
している。現画像ブロック200の現画像ブロックデー
タがプロセッサエレメントPEに保持され、参照画像ブ
ロック420のサーチウインドウデータがプロセッサエ
レメントPEに保持される状態を示している。このと
き、ベクトル(−2,0)に対応するディストーション
が算出される。この1クロックで、サーチウインドウデ
ータは縦方向に対して図5のTS1の範囲まで探索され
たこととなる。
【0095】図29は、図28の保持状態から1クロッ
ク後の保持状態を示している。現画像ブロック200の
現画像ブロックデータがプロセッサエレメントPEに保
持され、参照画像ブロック430のサーチウインドウデ
ータがプロセッサエレメントPEに保持されている状態
を示している。このとき、ベクトル(−2,2)に対応
するディストーションが算出される。この1クロック
で、サーチウインドウデータは縦方向に対して図5のT
S2の範囲まで探索されたこととなる。
【0096】このように、図5の斜線部が示すように各
プロセッサエレメントはサーチウインドウ300を縦方
向に1つ跳びで探索するため、探索精度を粗くするかわ
りに探索時間を短くすることができる。すなわち、第1
モードによるサーチウインドウの縦方向の探索時間の1
/2の時間で探索することができる。したがって、縦方
向に跳ばしを行わない動きベクトル探索と比べて同一の
探索範囲を短時間で探索することができる。
【0097】次にセレクタ41〜44がサーチウインド
ウデータの転送経路として第2転送経路を選択をする場
合のデータの転送の仕方を説明する。図22〜図31
は、動きベクトルを求める際のプロセッサエレメントP
EおよびデータバッファDLのデータ保持状態を示す図
である。図22〜図31において、各プロセッサエレメ
ントPEの左側および各データバッファDLにサーチウ
インドウデータが保持され、各プロセッサエレメントP
Eの右側に現画像ブロックデータが保持されているとし
て示されている。
【0098】第2モードでは、図2において各プロセッ
サエレメントPEのセレクタ28および各データバッフ
ァDLのセレクタ41〜44は、それぞれ選択信号SS
W,SO,S1の値をそれぞれ”1”、”0”、”1”
としているので出力端子Yは全て入力端子Bを選択して
いる。よって、プロセッサエレメントPEおよびデータ
バッファDLの縦方向のみを1つ跳びに転送する第2転
送経路を選択することができることが分かる。
【0099】現画像ブロックデータ出力手段110と最
初に転送するプロセッサエレメントPE(3,3)は電
気的に接続されており、現画像ブロックデータは現画像
ブロックデータ出力手段110から出力され、PE
(3,3)に入力される。各プロセッサエレメントPE
および各データバッファDLの座標を図2のように設定
すると、現画像データ転送経路において、同じ列の各プ
ロセッサエレメントPEはそれぞれ電気的に接続されて
おり、列の一番上のPE(1,0)、PE(2,0)お
よびPE(3,0)は、それぞれ次の列のPE(0,
3)、PE(1,3)およびPE(2,3)に電気的に
接続されている。PE(0,0)は、ディストーション
を算出した後現画像ブロックデータを排出する。
【0100】サーチウインドウデータ出力手段120と
データバッファDL(3、6)およびDL(3、7)は
それぞれ電気的に接続されており、サーチウインドウデ
ータ出力手段120から同時に出力されるサーチウイン
ドウデータはそれぞれDL(3、6)およびDL(3、
7)に入力する。同じ列の各プロセッサエレメントPE
および各データバッファDLはそれぞれ縦方向に1つ跳
びに電気的に接続されている。列の一番上のPE(1,
0)、PE(2,0)およびPE(3,0)は、それぞ
れ次の列のDLa(0,6)、DLa(1,6)および
DLa(2,6)に電気的に接続されている。また、P
E(1,1)、PE(2,1)およびPE(3,1)
は、それぞれ次の列のDLa(0,7)、DLa(1,
7)およびDLa(2,7)に電気的に接続されてい
る。PE(0,0)およびPE(0,1)は、ディスト
ーションを算出した後サーチウインドウデータを排出す
る。
【0101】図22〜31はその際のプロセッサエレメ
ントおよびデータバッファのデータ保持状態を示す図で
ある。PE(3,3)に現画像ブロックデータが入力さ
れ、DL(3、6)およびDL(3、7)にサーチウイ
ンドウデータが同時に入力される。図22〜26はそれ
ぞれ1、2、5、7、11クロック目のデータ保持状態
を示す図である。
【0102】例えば、図25において、クロックパルス
信号の7クロック目に同期して、現画像ブロックデータ
a(0,0)はPE(2,1)に保持されるが、8クロ
ック目に同期して、a(0,0)はPE(2,0)に保
持され、9クロック目に同期して、a(0,0)はPE
(1,3)に保持される。また、図25において、クロ
ックパルス信号の7クロック目に同期して、サーチウイ
ンドウデータb(0,0)はPE(2,2)に保持され
るが、8クロック目に同期して、b(0,0)はPE
(2,0)に保持され、9クロック目に同期して、b
(0,0)はDLa(1,6)に保持され、10クロッ
ク目に同期して、b(0,0)はDL(1,4)に保持
される。同様にして他の現画像ブロックデータおよびサ
ーチウインドウデータは転送保持される。
【0103】図27〜31はそれぞれ16、17、1
8、20、24クロック目のデータ保持状態を示す図で
あり、それぞれベクトル(−2,−2)、(−2,
0)、(−2,2)、(−1,−2)および(0,−
2)のディストーションが求まる際のデータ保持状態を
示している。前述のサーチウインドウデータの転送経路
として第1転送経路を選択する場合と比べてベクトル
(2,−2)が求まるまでに要するクロック数は1/2
となっていることがわかる。したがって、サーチウイン
ドウデータの転送経路として第1転送経路を取る場合と
同じ探索範囲で探索を行う際、探索精度を粗くしている
ので1/2の処理時間で動きベクトルの探索を行うこと
ができる。したがって、縦方向に跳ばしを行わない動き
ベクトル探索と比べて同一の探索範囲を短時間で探索す
ることができる。
【0104】ここで、縦方向にサーチウインドウを広げ
て探索したい場合には、跳ばしによる探索処理速度の増
加分に対応してサーチウインドウデータ転送量の増大を
図るためにデータバッファDLを縦方向に余分に多くし
なければならない。このデータバッファDLの増加分に
基づいて縦方向の探索範囲が拡大する。ただし、この場
合データバッファDLを新たに設けなければならないた
め、再設計等により手間がかかり面倒である。そこで、
本実施例では通常データバッファDLの数を増加させな
いように同一構成の局所ディストーション算出手段13
1により縦方向の探索処理を複数回繰り返すことにより
探索範囲を広げて探索される。なお、縦方向の跳ばしを
行わない探索と同一の探索時間でサーチウインドウを広
げて探索する場合は、後述の実施例2の第2モードとし
て説明される。
【0105】また、このモードにおいて、参照画像転送
経路として2個の第2転送経路をとる。 <第3モード>本モードは、プロセッサエレメントPE
およびデータバッファDLが横方向のみに跳ばして接続
された第2転送経路によってサーチウインドウデータが
転送され動きベクトルを求めるものである。なお、説明
では横方向に1つ跳ばしで転送する例を示すが、セレク
タの選択数を増加させることにより横方向の跳ばしを増
加させることができる。
【0106】本モードのサーチウインドウの探索範囲
は、第1モードと同様ベクトルのy座標が−2〜+2の
範囲である。本モードは、横方向の探索精度を粗くして
いるので、図5の横方向の探索範囲を1/2の時間で探
索することができる。すなわち、同じ範囲の探索範囲を
短時間で探索することができる。セレクタがサーチウイ
ンドウデータの転送経路として第2転送経路を選択をす
る場合のデータの転送の仕方は、第1および第2モード
から容易にわかるので説明は省略する。
【0107】第3モードでは、図2において各プロセッ
サエレメントPEのセレクタ28および各データバッフ
ァDLのセレクタ41〜44は、それぞれ選択信号SS
W,SO,S1の値をそれぞれ”0”、”1”、”0”
としているので、セレクタ28およびセレクタ41の出
力端子Yは入力端子Aを選択し、セレクタ42の出力端
子Yは入力端子Cを選択し、セレクタ43の出力端子Y
は入力端子C/Dを選択し、セレクタ44の出力端子Y
は入力端子A/Cを選択している。よって、プロセッサ
エレメントPEおよびデータバッファDLの横方向のみ
を1つ跳びに転送する第2転送経路を選択することがで
きることが分かる。
【0108】現画像ブロックデータ出力手段110と最
初に転送するプロセッサエレメントPE(2,3)およ
びPE(3,3)とは電気的に接続されており、現画像
ブロックデータは現画像ブロックデータ出力手段110
から出力され、PE(2,3)およびPE(3,3)に
入力される。現画像データ転送経路において、同じ列の
各プロセッサエレメントPEはそれぞれ電気的に接続さ
れており、列の一番上のPE(2,0)およびPE
(3,0)は、それぞれ次の列のPE(0,3)および
PE(1,3)に電気的に接続されている。PE(0,
0)およびPE(1,0)は、ディストーションを算出
した後現画像ブロックデータを排出する。
【0109】第2転送経路において、サーチウインドウ
データ出力手段120と、データバッファDLa(2,
7)およびDL(3,7)とはそれぞれ入力口Ia2お
よびIa4を介して電気的に接続されており、サーチウ
インドウデータ出力手段120から同時に出力されるサ
ーチウインドウデータはそれぞれDLa(2,7)およ
びDL(3,7)に入力する。同じ列の各プロセッサエ
レメントPEおよび各データバッファDLはそれぞれ列
方向に電気的に接続されている。列の一番上のPE
(2,0)およびPE(3,0)は、それぞれ次の列の
DLa(0,7)およびDLa(1,7)に電気的に接
続されている。PE(0,0)およびPE(1,0)
は、ディストーションを算出した後サーチウインドウデ
ータを排出する。
【0110】なお、このモードにおいて、参照画像転送
経路として、2個の第2転送経路をとることが分かる。 <第4モード>図6および図32〜39を参照して本発
明に係わる動きベクトル探索装置の第1実施例の第4モ
ードを説明する。
【0111】本モードは、図32に示すようにプロセッ
サエレメントPEおよびデータバッファDLを横方向と
縦方向のどちらも1つ跳びに接続した第2転送経路を選
択して、サーチウインドウデータを転送し動きベクトル
を探索するものである。なお、図32〜39には本モー
ドとして縦方向と縦方向のどちらも1つ跳ばしで転送す
る一例が示されているが、セレクタの選択数を増加させ
ることにより縦方向および縦方向とも跳ばし数を増加さ
せることができる。
【0112】図6は第4モードにおける参照画像ブロッ
ク510〜550とサーチウインドウ300の転送動作
を説明するための図である。本モードのサーチウインド
ウの探索範囲は、第1モードと同様ベクトルのy座標が
−2〜+2の範囲である。図36は、現画像ブロック2
00の現画像ブロックデータがプロセッサエレメントP
Eに保持され、参照画像ブロック510のサーチウイン
ドウデータがプロセッサエレメントPEに保持されてい
る状態を示している。このとき、ベクトル(−2,−
2)に対応するディストーションが算出される。
【0113】図37は、図36の保持状態から1クロッ
ク後の保持状態を示している。現画像ブロック200の
現画像ブロックデータがプロセッサエレメントPEに保
持され、参照画像ブロック520のサーチウインドウデ
ータがプロセッサエレメントPEに保持される状態を示
している。このとき、ベクトル(−2,0)に対応する
ディストーションが算出される。この1クロックで、サ
ーチウインドウデータは縦方向に対して図6のTS1の
範囲まで探索されたこととなる。
【0114】図38は、図37の保持状態から1クロッ
ク後の保持状態を示している。現画像ブロック200の
現画像ブロックデータがプロセッサエレメントPEに保
持され、参照画像ブロック530のサーチウインドウデ
ータがプロセッサエレメントPEに保持されている状態
を示している。このとき、ベクトル(−2,2)に対応
するディストーションが算出される。この1クロック
で、サーチウインドウデータは縦方向に対して図6のT
S2の範囲まで探索されたこととなる。
【0115】このように、図6の斜線部が示すように各
プロセッサエレメントはサーチウインドウ300を縦方
向および横方向とも1つ跳びで探索するため、探索精度
を粗くするかわりに探索時間を短くすることができる。
すなわち、第1モードによるサーチウインドウの縦方向
の探索時間の1/4の時間で探索することができる。し
たがって、縦方向および横方向とも同時に跳ばしを行わ
ない動きベクトル探索と比べて同一の探索範囲を短時間
で探索することができる。
【0116】次にセレクタがサーチウインドウデータの
転送経路として第2転送経路を選択をする場合のデータ
の転送の仕方を説明する。図32〜図39は、動きベク
トルを求める際のプロセッサエレメントPEおよびデー
タバッファDLのデータ保持状態を示す図である。図3
2〜図39において、各プロセッサエレメントPEの左
側および各データバッファDLにサーチウインドウデー
タが保持され、各プロセッサエレメントPEの右側に現
画像ブロックデータが保持されているとして示されてい
る。
【0117】第4モードでは、図2において各プロセッ
サエレメントPEのセレクタ28および各データバッフ
ァDLのセレクタ41〜44は、それぞれ選択信号SS
W,SO,S1の値をそれぞれ”1”、”1”、”1”
としているので、セレクタ28およびセレクタ41の出
力端子Yは入力端子Bを選択し、セレクタ42の出力端
子Yは入力端子Dを選択し、セレクタ43の出力端子Y
は入力端子C/Dを選択し、セレクタ44の出力端子Y
は入力端子Dを選択している。よって、プロセッサエレ
メントPEおよびデータバッファDLの縦方向および横
方向とも1つ跳びに転送する第2転送経路を選択するこ
とができることが分かる。
【0118】次にセレクタがサーチウインドウデータの
転送経路として第4モードの第2転送経路を選択する場
合のデータの転送の仕方を説明する。図32〜図39
は、動きベクトルを求める際のプロセッサエレメントP
EおよびデータバッファDLのデータ保持状態を示す図
である。図32〜図39において、各プロセッサエレメ
ントPEの左側および各データバッファDLにサーチウ
インドウデータが保持され、各プロセッサエレメントP
Eの右側に現画像ブロックデータが保持されるとして示
されている。
【0119】現画像ブロックデータ出力手段110と最
初に転送するプロセッサエレメントPE(2,3)およ
びPE(3,3)とはそれぞれ電気的に接続されてお
り、現画像ブロックデータは現画像ブロックデータ出力
手段110から出力され、PE(2,3)およびPE
(3,3)に入力される。現画像データ転送経路におい
て、同じ列の各プロセッサエレメントPEはそれぞれ電
気的に接続されており、列の一番上の、PE(2,0)
およびPE(3,0)は、それぞれ横方向に一つ跳んだ
次の列のPE(0,3)およびPE(1,3)に電気的
に接続されている。PE(0,0)およびPE(0,
1)は、局所ディストーションを算出した後現画像ブロ
ックデータを排出する。
【0120】第2転送経路において、サーチウインドウ
データ出力手段120とデータバッファDLa(2,
6)、DLa(2,7)、DLa(3,6)およびDL
(3,7)はそれぞれ入力口Ia3、Ia4、Ia1お
よびIa2を介して電気的に接続されており、サーチウ
インドウデータ出力手段120から同時に出力されるサ
ーチウインドウデータはそれぞれDLa(2,6)、D
La(2,7)、DLa(3,6)およびDL(3,
7)に入力する。同じ列の各プロセッサエレメントPE
および各データバッファDLはそれぞれ縦方向に1つ跳
びに電気的に接続されている。列の一番上のPE(2,
0)およびPE(3,0)は、それぞれ横方向に1つ跳
んだ次の列のDLa(0,6)およびDLa(1,6)
に電気的に接続されている。また、PE(2,1)およ
びPE(3,1)は、それぞれ横方向に1つ跳んだ次の
列のDLa(0,7)およびDLa(1,7)に電気的
に接続されている。PE(0,0)、PE(0,1)、
PE(1,0)およびPE(1,1)は、局所ディスト
ーションを算出した後サーチウインドウデータを排出す
る。
【0121】第4モードでは、プロセッサエレメントP
EまたはデータバッファDLを横方向と縦方向のどちら
も1つ跳びに電気的に接続した第2転送経路を選択し
て、サーチウインドウデータを転送し動きベクトルを探
索できる。PE(2,3)およびPE(3,3)に現画
像ブロックデータが入力され、DLa(2,6)、DL
a(2,7)、DLa(3,6)およびDL(3,7)
にサーチウインドウデータが同時に入力される。
【0122】図32〜39はそれぞれ1、2、4、5、
8、9、10、12クロック目のデータ保持状態を示す
図である。例えば、図33〜35において、クロックパ
ルス信号の2クロック目に同期して、現画像ブロックデ
ータa(0,0)はPE(2,2)に保持されるが、3
クロック目に同期して、a(0,0)はPE(2,1)
に保持され、4クロック目に同期して、a(0,0)は
PE(2,0)に保持され、5クロック目に同期して、
a(0,0)はPE(0,3)に保持される。また、図
33において、クロックパルス信号の2クロック目に同
期して、サーチウインドウデータb(0,0)はDL
(2,4)に保持されるが、3クロック目に同期して、
b(0,0)はPE(2,2)に保持され、4クロック
目に同期して、b(0,0)はPE(2,0)に保持さ
れ、5クロック目に同期して、b(0,0)はDLa
(0,6)に保持される。同様にして他の現画像ブロッ
クデータおよびサーチウインドウデータは転送保持され
る。
【0123】また、図36〜39はそれぞれでベクトル
(−2,−2)、(−2,0)、(−2,2)、および
(0,−2)のディストーションが求まる際のデータ保
持状態を示している。前述のサーチウインドウデータの
転送経路として第1転送経路を選択する場合と比べてベ
クトル(0,−2)が求まるまでに要するクロック数は
1/4となっていることがわかる。したがって、縦方向
および横方向同時の跳ばしを行わない動きベクトル探索
と比べて同一の探索範囲を短時間で探索することができ
る。
【0124】ここで、縦方向にサーチウインドウを広げ
て探索したい場合には、跳ばしによる探索処理速度の増
加分に対応してサーチウインドウデータ転送量の増大を
図るためにデータバッファDLを縦方向に余分に多くし
なければならない。ただし、横方向の跳ばしに対しては
データバッファDLを余分に多くする必要はない。この
データバッファDLの増加分に基づいて縦方向の探索範
囲が拡大する。ただし、この場合、データバッファDL
を新たに設けなければならないため、再設計等により手
間がかかり面倒である。そこで、本実施例では通常デー
タバッファDLの数を増加させないように同一構成の局
所ディストーション算出手段131により縦方向の探索
処理を複数回繰り返すことにより探索範囲を広げて探索
される。なお、縦方向の跳ばしを行わない探索と同一の
探索時間でサーチウインドウを広げて探索する場合は、
後述の実施例2の第4モードとして説明される。
【0125】また、本モードにおいて、参照画像転送経
路として4個の第2転送経路をとる。 《第2実施例》次に第2実施例の説明を行う。図3は本
発明の第2実施例における局所ディストーション算出手
段131の構成例を示す図である。
【0126】第2実施例では、第1実施例において縦方
向の跳ばしを行わない探索と同一の探索時間でサーチウ
インドウを広げて探索したい場合にデータバッファDL
を縦方向に新たに設けなければならないことに鑑み、縦
方向の跳ばしを行うときのみ使用されるデータバッファ
DLを局所ディストーション算出手段131に予め構成
している。また、局所ディストーション算出手段131
が、セレクタ41〜44の替りにセレクタ41、45お
よび46を有し、サーチウインドウデータの入力口Ib
1〜Ib6を有するように構成されている。
【0127】本実施例の特徴は、縦方向の跳ばしによる
探索処理速度の増加分に対応してサーチウインドウデー
タ転送量の増大を図るように予めデータバッファDLを
縦方向に余分に設けているので、容易に縦方向の跳ばし
を行わない探索と同一の探索時間でサーチウインドウを
広げて探索することができる。本実施例の一例として、
第1実施例とは異なり縦方向の跳ばし転送を行わない場
合のサーチウインドウの探索範囲はベクトルのy座標が
−1〜+1の範囲であり、一方、縦方向の跳ばし転送を
行う場合の探索範囲はベクトルのy座標が−2〜+2の
範囲である場合の局所ディストーション算出手段131
の構成が図3に示されている。なお、本実施例として縦
方向と縦方向のどちらも1つ跳ばしで転送する一例が示
されているが、セレクタの選択数を増加させることによ
り縦方向および縦方向のどちらも跳ばし数を増加させる
ことができる。セレクタがサーチウインドウデータの転
送経路として第2転送経路を選択をする場合のデータの
転送の仕方は第1実施例から容易にわかるので説明は省
略する。以下、本実施例の各モードの第1実施例との相
違点のみを説明する。
【0128】<第1モード>本モードは、第1実施例と
同様にプロセッサエレメントPEおよびデータバッファ
DLがすべて直列に接続された第1転送経路によってサ
ーチウインドウデータが転送され動きベクトルを求める
ものである。このとき、サーチウインドウデータは入力
口Ib1を介して入力される。また、セレクタ41およ
び45は入力端子Aを選択している。ここで、注意すべ
きは、DLb(0,6),DLb(1,6),DLb
(2,6),DLb(3,6),DLb(0,7),D
Lb(1,7),DLb(2,7)およびDL(3,
7)は、何れも使用されていない点である。また、PE
(3,0)、PE(2,0)およびPE(1,0)は、
それぞれDLb(2,5)、DLb(1,5)およびD
Lb(0,5)と接続している。また、サーチウインド
ウの探索範囲はベクトルのy座標が−1〜+1の範囲で
ある。
【0129】<第2モード>本モードは、第1実施例と
同様にプロセッサエレメントPEおよびデータバッファ
DLが縦方向のみに跳ばして接続された第2転送経路に
よってサーチウインドウデータが転送され動きベクトル
を求めるものである。サーチウインドウデータは、入力
口Ib3およびIb4を介して入力される。セレクタ4
1、45および46はいづれも入力端子Bを選択してい
る。
【0130】このように、第1モードよりデータバッフ
ァDLの数を2倍に増加させ、サーチウインドウデータ
を入力口Ib3およびIb4を介して入力してサーチウ
インドウデータを縦方向に1つ跳びに転送することによ
り、縦方向を粗く探索することができる。したがって、
縦方向の跳ばしを行わない第1モードの探索と同一の探
索時間で探索範囲を2倍に広げて探索することができ
る。
【0131】<第3モード>本モードは、第1実施例と
同様にプロセッサエレメントPEおよびデータバッファ
DLが横方向のみに跳ばして接続された第2転送経路に
よってサーチウインドウデータが転送され動きベクトル
を求めるものである。サーチウインドウデータは、入力
口Ib1およびIb2を介して入力される。セレクタ4
5は入力端子Cを選択している。ここで、注意すべき
は、DLb(0,6),DLb(1,6),DLb
(2,6),DLb(3,6),DLb(0,7),D
Lb(1,7),DLb(2,7)およびDL(3,
7)は、何れも使用されていない点である。また、PE
(3,0)、PE(2,0)およびPE(1,0)は、
それぞれDLb(2,5)、DLb(1,5)およびD
Lb(0,5)と接続している。また、サーチウインド
ウの探索範囲はベクトルのy座標が−1〜+1の範囲で
ある。
【0132】このように、サーチウインドウデータを入
力口Ib1およびIb2を介して入力してサーチウイン
ドウデータを横方向に1つ跳びに転送することにより、
横方向を粗く探索することができる。したがって、横方
向の跳ばしを行わない第1モードの探索と同一の探索時
間で探索範囲を2倍に広げて探索することができる。 <第4モード>本モードは、第1実施例と同様にプロセ
ッサエレメントPEおよびデータバッファDLが縦方向
および横方向ともに跳ばして接続された第2転送経路に
よってサーチウインドウデータが転送され動きベクトル
を求めるものである。
【0133】本モードは、第1モードよりデータバッフ
ァDLの数を2倍に増加させ、サーチウインドウデータ
を入力口Ib3〜Ib5を介して入力してサーチウイン
ドウデータを縦方向および横方向とも1つ跳びに転送す
ることにより、縦方向および横方向とも粗く探索するこ
とができる。したがって、横方向および横方向の跳ばし
を行わない第1モードの探索と同一の探索時間で探索範
囲を4倍に広げて探索することができる。
【0134】なお、本実施例として上記の例を挙げた
が、I、J、M、N、PおよびQを正の整数とし、Iは
Pより小さく、JはQより小さく、PはMより大きく、
QはNより大きいとするとき、現画像ブロックはM行N
列の画素により構成され、サーチウインドウはP行Q列
の画素により構成されており、現画像データ転送素子お
よびサーチウインドウデータ転送素子がそれぞれM行N
列およびP行N列のマトリックス状に配置されていると
ともに、第2転送経路が、サーチウインドウデータ転送
素子の縦方向および横方向にそれぞれI個毎、J個毎に
接続するとき、第2転送経路は(I×J)個からなって
いてもよい。
【0135】
【発明の効果】請求項1記載の発明によれば、サーチウ
インドウデータをサーチウインドウデータ転送素子の一
部を跳ばして転送することができる。また、跳ばしを行
わない第1転送経路による転送と、跳ばし転送を行う第
2転送経路との切り替えができる。さらに跳ばし転送を
行う場合、縦方向のみの跳ばし、横方向のみの跳ばし、
あるいは縦方向および横方向同時の跳ばしのいづれかを
選択することができる。このため、跳ばしを行わない通
常の探索と、跳ばしを行う探索とを、同一の動きベクト
ル探索装置で行うことができる。また、従来の動きベク
トル探索装置で転送する場合と比べて、同じ探索時間で
より広範囲の探索を行うことができる。また、従来の動
きベクトル探索装置で転送する場合と比べて、同じ探索
範囲を短時間で探索することができる。したがって、効
率的な動きベクトル探索を行うことができる。
【0136】請求項2記載の発明によれば、現画像デー
タ転送素子をM行N列、サーチウインドウデータ転送素
子をP行N列の行列で配列することができるため、現画
像データ転送素子およびサーチウインドウデータ転送素
子の数を最小にすることができる。したがって、占有面
積を小さくすることができ、動きベクトル探索の効率化
および消費電力の軽減を図ることができる。また、サー
チウインドウデータが、マトリックス状に配置されたサ
ーチウインドウデータ転送素子を、列方向のみ(I−
1)個跳ばして転送されるか、行方向のみ(J−1)個
跳ばして転送されるか、または行方向を(I−1)個お
よび列方向を(J−1)個跳ばして転送されるかのいづ
れかを選択して動きベクトル探索を行うことができる。
このため、跳ばしを行わない通常の探索と、跳ばしを行
う探索とを、同一の動きベクトル探索装置で行うことが
できる。また、サーチウインドウデータ転送素子の全て
を直列に接続する第1転送経路により転送される場合と
比べて、同じ探索時間でより広範囲の探索を行うことが
できる。また、サーチウインドウデータ転送素子の全て
を直列に接続する第1転送経路により転送される場合と
比べて、同じ探索範囲を短時間で探索することができ
る。したがって、効率的な動きベクトル探索を行うこと
ができる。
【0137】請求項3記載の発明によれば、請求項1記
載の発明において、セレクタへの転送選択信号を制御す
ることにより、第1転送経路による通常の転送と第2転
送経路による跳ばし転送とを容易に切り替えることでき
る。したがって、複数の動きベクトル探索装置を用いる
ことなく、跳ばしを行わない通常の探索と跳ばしを行う
探索とを、容易に選択できるので効率的な動きベクトル
探索を行うことができる。
【0138】請求項4記載の発明によれば、請求項2記
載の発明において、サーチウインドウ内の各画素データ
をプロセッサエレメントの各列において転送方向を上方
向または下方向のどちらかに転送するようにしている。
したがって、サーチウインドウ内の各画素データ転送バ
スを短くできる。また、回路構成を簡単にできる。した
がって、効率的な動きベクトル探索および消費電力軽減
をおこなうことができる。
【0139】請求項5記載の発明によれば、請求項1記
載の発明において、局所ディストーション算出手段が、
符号付減算結果を符号ビットと各大きさビットとの加算
を行って、符号ビットとこの差分絶対値に対応する値と
の組で出力しているため、2の補数表示における負数の
表示に必要とされるインクリメンタが不要となり、局所
ディストーション算出手段の回路規模の低減を図ること
ができる。また、単にゲート手段のみを用いて符号ビッ
トと差分絶対値に対応する値とを生成しているため高速
で演算結果を出力することができる。さらに、消費電力
を低減することができる。
【0140】請求項6記載の発明によれば、請求項5記
載の発明において、局所ディストーション算出手段の出
力の総和を算出する総和手段がツリー状に配置された複
数段の全加算回路で構成されており、全加算回路の最下
位ビットへ符号ビットが与えられるため、キャリ伝搬遅
延時間を大幅に低減することができ、高速で総和演算を
実行することができる。したがって、ディストーション
を高速で算出することができる。
【図面の簡単な説明】
【図1】本発明の全体の構成の概略図である。
【図2】本発明の第1実施例の局所ディストーション算
出手段の構成例を示す図である。
【図3】本発明の第2実施例の局所ディストーション算
出手段の構成例を示す図である。
【図4】現画像ブロックとサーチウインドウの具体例を
示す図である。
【図5】本発明の第2モードの実施例における参照画像
ブロック410〜430とサーチウインドウ300の転
送動作を説明するための図である。
【図6】本発明の第4モードの実施例における参照画像
ブロック410〜430とサーチウインドウ300の転
送動作を説明するための図である。
【図7】プロセッサエレメントの具体的構成例を示す図
である。
【図8】図7に示す差分絶対値回路の具体的構成例を示
す図である。
【図9】図7に示す差分絶対値回路の他の具体的構成例
を示す図である。
【図10】図2に示すデータバッファDL(3,7)の
構成を示す図である。
【図11】図2に示すデータバッファDL(0,4),
DLa(0,5),DL(1,4),DLa(1,
5),DL(2,4),DLa(2,5),DL(3,
4),DL(3,5),DLa(3,6)の構成を示す
図である。
【図12】図2に示すデータバッファDLa(0,
7),DLa(1,7)の構成を示す図である。
【図13】図2に示すデータバッファDLa(2,7)
の構成を示す図である。
【図14】図2に示すデータバッファDLa(0,
6),DLa(1,6),DLa(2,6)の構成を示
す図である。
【図15】図3に示すデータバッファDLb(0,
6),DLb(1,6),DLb(2,6),DLb
(0,7),DLb(1,7),DLb(2,7)の構
成を示す図である。
【図16】図3に示すデータバッファDLb(0,
5),DLb(1,5),DLb(2,5)の構成を示
す図である。
【図17】図9に示す差分絶対値回路を用いる場合の総
和手段の構成を示す図である。
【図18】図17に示す総和手段の具体的構成例を示す
図である。
【図19】図18に示す4対2コンプレッサの構成を示
す図である。
【図20】図18に示す総和手段の具体的構成例を示す
図である。
【図21】図1に示すディストーション特定手段の構成
を示す図である。
【図22】本発明の第1実施例の第2モードの1クロッ
ク目におけるプロセッサエレメントおよびデータバッフ
ァのデータ保持状態を示す図である。
【図23】本発明の第1実施例の第2モードの2クロッ
ク目におけるプロセッサエレメントおよびデータバッフ
ァのデータ保持状態を示す図である。
【図24】本発明の第1実施例の第2モードの5クロッ
ク目におけるプロセッサエレメントおよびデータバッフ
ァのデータ保持状態を示す図である。
【図25】本発明の第1実施例の第2モードの7クロッ
ク目におけるプロセッサエレメントおよびデータバッフ
ァのデータ保持状態を示す図である。
【図26】本発明の第1実施例の第2モードの11クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図27】本発明の第1実施例の第2モードの16クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図28】本発明の第1実施例の第2モードの17クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図29】本発明の第1実施例の第2モードの18クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図30】本発明の第1実施例の第2モードの20クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図31】本発明の第1実施例の第2モードの24クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図32】本発明の第1実施例の第4モードの1クロッ
ク目におけるプロセッサエレメントおよびデータバッフ
ァのデータ保持状態を示す図である。
【図33】本発明の第1実施例の第4モードの2クロッ
ク目におけるプロセッサエレメントおよびデータバッフ
ァのデータ保持状態を示す図である。
【図34】本発明の第1実施例の第4モードの4クロッ
ク目におけるプロセッサエレメントおよびデータバッフ
ァのデータ保持状態を示す図である。
【図35】本発明の第1実施例の第4モードの5クロッ
ク目におけるプロセッサエレメントおよびデータバッフ
ァのデータ保持状態を示す図である。
【図36】本発明の第1実施例の第4モードの8クロッ
ク目におけるプロセッサエレメントおよびデータバッフ
ァのデータ保持状態を示す図である。
【図37】本発明の第1実施例の第4モードの9クロッ
ク目におけるプロセッサエレメントおよびデータバッフ
ァのデータ保持状態を示す図である。
【図38】本発明の第1実施例の第4モードの10クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図39】本発明の第1実施例の第4モードの12クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図40】本発明の第1実施例の第1モードの1クロッ
ク目におけるプロセッサエレメントおよびデータバッフ
ァのデータ保持状態を示す図である。
【図41】本発明の第1実施例の第1モードの3クロッ
ク目におけるプロセッサエレメントおよびデータバッフ
ァのデータ保持状態を示す図である。
【図42】本発明の第1実施例の第1モードの5クロッ
ク目におけるプロセッサエレメントおよびデータバッフ
ァのデータ保持状態を示す図である。
【図43】本発明の第1実施例の第1モードの8クロッ
ク目におけるプロセッサエレメントおよびデータバッフ
ァのデータ保持状態を示す図である。
【図44】本発明の第1実施例の第1モードの12クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図45】本発明の第1実施例の第1モードの16クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図46】本発明の第1実施例の第1モードの24クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図47】本発明の第1実施例の第1モードの32クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図48】本発明の第1実施例の第1モードの33クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図49】本発明の第1実施例の第1モードの34クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図50】本発明の第1実施例の第1モードの35クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図51】本発明の第1実施例の第1モードの36クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図52】本発明の第1実施例の第1モードの40クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図53】本発明の第1実施例の第1モードの44クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図54】本発明の第1実施例の第1モードの48クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図55】本発明の第1実施例の第1モードの56クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図56】本発明の第1実施例の第1モードの64クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図57】本発明の第1実施例の第1モードの68クロ
ック目におけるプロセッサエレメントおよびデータバッ
ファのデータ保持状態を示す図である。
【図58】従来画像信号符号化回路の全体の構成を示す
図である。
【図59】図58に示すソース符号化回路912の全体
の構成を示す図である。
【図60】画像の動き補償の操作を説明するための図で
ある。
【図61】ブロックマッチング法による動き補償を行う
際のサーチウインドウおよび現画像ブロックの配置例お
よび動きベクトルの関係を示す図である。
【図62】従来の動きベクトル探索装置の全体の構成を
示す図である。
【図63】図62に示すプロセッサアレイ内に含まれる
プロセッサエレメントの構成を示す図である。
【図64】図62に示す動きベクトル探索装置における
現画像ブロックのスキャンおよびサーチウインドウのス
キャン方法を示す図である。
【図65】図62に示す動きベクトル探索装置の動作を
示す図である。
【図66】従来の動きベクトル探索装置の動作を説明す
るための図である。
【図67】従来の動きベクトル探索装置の動作を説明す
るための図である。
【符号の説明】
25−1 レジスタ 25−2 レジスタ 26−1 レジスタ 26−2 レジスタ 28 セレクタ 31 レジスタ 32 レジスタ 33 レジスタ 34 レジスタ 35 レジスタ 36 レジスタ 37 レジスタ 41 セレクタ 42 セレクタ 43 セレクタ 44 セレクタ 45 セレクタ 46 セレクタ 60 セレクタ 62 セレクタ 64 差分絶対値回路 70 減算器 72 ExOR回路 74 インクリメンタ 102 4対2コンプレッサ 104 全加算器 110a〜110h 全加算回路 110 現画像ブロックデータ出力手段 120 サーチウインドウデータ出力手段 130 ディストーション算出手段 131 局所ディストーション算出手段 132 総和手段 140 ディストーション特定手段 141 レジスタラッチ 142 比較器 143 カウンタ 144 レジスタラッチ 145 デコーダ 200 現画像ブロック 300 サーチウインドウ 410 参照画像ブロック 420 参照画像ブロック 430 参照画像ブロック 440 参照画像ブロック 510 参照画像ブロック 520 参照画像ブロック 530 参照画像ブロック 540 参照画像ブロック 550 参照画像ブロック 910 前処理回路 912 ソース符号化回路 914 ビデオマルチプレクス符号化回路 916 伝送バッファ 918 伝送符号化回路 920 動き補償予測器 922 ループフィルタ 924 減算器 926 直交変換器 928 量子化器 930 逆量子化器 932 逆直交変換器 934 加算器 950 現画像 952 現画像ブロック 954 サーチエリアの中心に位置する参
照画像ブロック 956 サーチエリア 962 サーチエリア入力レジスタ 964a サーチエリアサイドレジスタ 964b サーチエリアサイドレジスタ 966 プロセッサアレイ 968 動きベクトル検出部 970 プロセッサエレメント 972 3入力レジスタ 974 ディストーション計算部 976 3入力レジスタ 980 現画像ブロック 982 参照符号 983 参照符号 990 サーチウインドウ 992 サーチウインドウ 994 サーチウインドウ 996 サーチエリア 999 現画像ブロック a 現画像ブロックデータ b サーチウインドウデータ PE プロセッサエレメント DL データバッファ X(TPD) 現画像ブロックデータ Y(SWD) サーチウインドウデータ SEL 3入力レジスタ972への入力信
号 SELO セレクタ60への入力信号 SEL1 セレクタ62への入力信号 SSW セレクタ28の選択信号 S0 セレクタ41〜46の選択信号 S1 セレクタ42〜46の選択信号 mv 動きベクトル To 3入力レジスタ976およびディ
ストーション計算部への入力信号
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平6−113290(JP,A) 特開 平7−250328(JP,A) (58)調査した分野(Int.Cl.6,DB名) H04N 7/24 - 7/68

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】現画像よりも先に符号化される参照画像に
    含まれるサーチウインドウをそれぞれ部分的に構成する
    複数の参照画像ブロックの中から、現画像ブロックに最
    も類似した参照画像ブロックを選択することによって、
    前記現画像ブロックの現画像上の位置と選択された参照
    画像ブロックの参照画像上の位置とにより特定される動
    きベクトルを探索する動きベクトル探索装置であって、 前記現画像ブロックに含まれる画素データを出力する現
    画像ブロックデータ出力手段と、 前記サーチウインドウに含まれる画素データを出力する
    サーチウインドウデータ出力手段と、 現画像ブロックと各参照画像ブロックとの互いに位置的
    に対応する画素データ同士の差の総和を表すディストー
    ションを算出するディストーション算出手段と、 前記ディストーション算出手段により算出された前記デ
    ィストーションの中から前記現画像ブロックに最も類似
    した参照画像ブロックを特定し、動きベクトルを算出す
    るディストーション特定手段と、を備え、 前記ディストーション算出手段は、 前記現画像ブロックデータ出力手段から画素データを入
    力して通過させる現画像データ転送経路および前記サー
    チウインドウデータ出力手段から画素データを入力して
    通過させるサーチウインドウデータ転送経路を有し、前
    記現画像データ転送経路上を転送中の画素データおよび
    サーチウインドウデータ転送経路上を転送中の画素デー
    タに基づいて、現画像ブロックと各参照画像ブロックと
    の互いに位置的に対応する画素データ同士の差を表す複
    数の局所ディストーションを算出する局所ディストーシ
    ョン算出手段と、 前記局所ディストーション算出手段より算出された複数
    の局所ディストーションを総和する総和手段と、を有
    し、 前記サーチウインドウデータ転送経路が、第1転送経路
    と第2転送経路とからなり、 前記局所ディストーション算出手段が、 前記現画像データ転送経路上に配置されて該現画像デー
    タ転送経路により直列に接続され、現画像データ転送経
    路を通過する画素データを一時的に保持しながら転送す
    る複数の現画像データ転送素子と、 前記サーチウインドウデータ転送経路上に配置されて、
    サーチウインドウ転送経路を通過する画素データを一時
    的に保持しながら転送する複数のサーチウインドウデー
    タ転送素子と、 前記第1および前記第2転送経路の何れかを選択する転
    送経路選択手段と、を有し、前記第1転送経路は、全てのサーチウインドウデータ転
    送素子を直列に接続し、前記第2転送経路は、サーチウ
    インドウデータ転送素子を直列に接続する複数の転送経
    路からなり、全てのサーチウインドウデータ転送素子の
    それぞれは、前記複数の転送経路のいずれかに接続さ
    れ、 前記転送経路選択手段により第1転送経路が選択された
    とき、第1転送経路により直列に接続された全てのサー
    チウインドウデータ転送素子により前記サーチウインド
    ウデータの画素データが順次保持されながら転送され、 前記転送経路選択手段により第2転送経路が選択された
    とき、前記第2転送経路により接続されたサーチウイン
    ドウデータ転送素子により前記サーチウインドウデータ
    の画素データが順次保持されながら転送されることを特
    徴とする動きベクトル探索装置。
  2. 【請求項2】請求項1記載の動きベクトル探索装置にお
    いて、I、J、M、N、PおよびQを正の整数とし、I
    はPより小さく、JはQより小さく、PはMより大き
    く、QはNより大きいとして、現画像ブロックがM行N
    列の画素により構成され、サーチウインドウがP行Q列
    の画素により構成され、 現画像データ転送素子が(M×N)個で、M行N列のマ
    トリックス状に配置され、サーチウインドウデータ転送
    素子が、(P×N)個でP行N列のマトリックス状に配
    置され、前記第1転送経路は、サーチウインドウデータ転送素子
    の各列の全ての素子を直列に接続するとともに、各列の
    後端のサーチウインドウデータ転送素子と隣の列の前端
    のサーチウインドウデータ転送素子を接続し、全てのサ
    ーチウインドウデータ転送素子を直列に転送する転送経
    路であり、 前記第2転送経路は、(I×J)個の転送経路からな
    り、サーチウインドウデータ転送素子の各列をI個毎に
    直列に接続するとともに、各列の後端からI個のサーチ
    ウインドウデータ転送素子のそれぞれと、J個隣の列の
    前端からI個のサーチウインドウデータ転送素子のそれ
    ぞれを接続し、各転送経路上のサーチウインドウデータ
    転送素子を直列に転送する転送経路であること を特徴と
    する動きベクトル探索装置。
  3. 【請求項3】転送経路選択手段が、各サーチウインドウ
    データ転送素子の第1転送経路および第2転送経路上に
    配置され、サーチウインドウデータ転送経路を選択する
    よう複数のサーチウインドウデータ転送素子を接続する
    セレクタであることを特徴とする請求項1記載の動きベ
    クトル探索装置。
  4. 【請求項4】局所ディストーション算出手段が、局所デ
    ィストーションを算出する演算子を有し、 各現画像データ転送素子、各サーチウインドウデータ転
    送素子および各演算素子が、一つのプロセッサエレメン
    トを構成し、(M×N)個のプロセッサエレメントを有
    し、プロセッサエレメントと残りのサーチウインドウデ
    ータ転送素子が上下のブロックに分かれることを特徴と
    する請求項2記載の動きベクトル探索装置。
  5. 【請求項5】前記局所ディストーション算出手段は、 前記サーチウインドウに含まれる画素データと前記現画
    像ブロックに含まれる画素データとの減算を行い、該減
    算結果を符号を示す符号ビットと大きさを示す大きさビ
    ットとの組合せで出力する減算手段と、 前記減算手段の各大きさビットと前記符号ビットとの加
    算を行い、前記減算結果の差分絶対値を出力するゲート
    手段と、を有し、前記局所ディストーション算出手段の
    出力は前記符号ビットと前記差分絶対値との組で与えら
    れることを特徴とする請求項1記載の動きベクトル探索
    装置。
  6. 【請求項6】前記総和手段は、 全出力が次段へ伝達され、ツリー状となるよう複数段に
    配置した全加算回路を有し、 前記符号ビットは最下位ビットの前記全加算回路のキャ
    リ入力へ与えられることを特徴とする請求項5記載の動
    きベクトル探索装置。
JP8637896A 1996-04-09 1996-04-09 動きベクトル探索装置 Expired - Lifetime JP2931789B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8637896A JP2931789B2 (ja) 1996-04-09 1996-04-09 動きベクトル探索装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8637896A JP2931789B2 (ja) 1996-04-09 1996-04-09 動きベクトル探索装置

Publications (2)

Publication Number Publication Date
JPH09284768A JPH09284768A (ja) 1997-10-31
JP2931789B2 true JP2931789B2 (ja) 1999-08-09

Family

ID=13885225

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8637896A Expired - Lifetime JP2931789B2 (ja) 1996-04-09 1996-04-09 動きベクトル探索装置

Country Status (1)

Country Link
JP (1) JP2931789B2 (ja)

Also Published As

Publication number Publication date
JPH09284768A (ja) 1997-10-31

Similar Documents

Publication Publication Date Title
US8218635B2 (en) Systolic-array based systems and methods for performing block matching in motion compensation
US7702020B2 (en) Multi-standard variable block size motion estimation processor
US5504931A (en) Method and apparatus for comparing data sets
US7486733B2 (en) Method for performing motion estimation in video encoding, a video encoding system and a video encoding device
JP3101691B2 (ja) 二次元動画像の連続するピクセルを表わすデータ信号を処理するための方法および回路
US7236634B2 (en) Image encoding of moving pictures
US5949486A (en) Unit for detecting motion vector for motion compensation
JPH07115646A (ja) 画像処理装置
US6330282B1 (en) Block matching arithmetic device and recording medium readable program-recorded machine
JP2931789B2 (ja) 動きベクトル探索装置
Baek et al. A fast array architecture for block matching algorithm
US5838392A (en) Adaptive block-matching motion estimator with a compression array for use in a video coding system
KR0178302B1 (ko) 양방향 병렬 파이프라인 구조에 근거한 탐색 이동 예측처리기
Campos et al. Integer-pixel motion estimation H. 264/AVC accelerator architecture with optimal memory management
JPH0879761A (ja) 動き予測装置および動きベクトルを計算する装置
KR100243467B1 (ko) 움직임 추정기의 절대 에러값 가산 회로
KR100571907B1 (ko) 동영상 추정 알고리즘에 있어서 프로세싱 엘레멘트 수 결정 방법
US6374280B1 (en) Computationally efficient inverse discrete cosine transform method and apparatus
US6560286B1 (en) Field frame motion design for digital video decoder
Lai et al. A flexible high-throughput VLSI architecture with 2-D data-reuse for full-search motion estimation
KR100243466B1 (ko) 움직임 추정기의 절대 에러값 가산 회로
CN1422402A (zh) 在通用处理器中有效多输入累加的最优化乘法器结构
Duanmu et al. A fast three-step search algorithm by the utilization of multilevel vector partial sums
JPH07288818A (ja) 動きベクトル検出装置
JP2934134B2 (ja) 動画像圧縮におけるブロック・マッチング方法と装置