JPH1013839A - 半画素動き推定装置 - Google Patents
半画素動き推定装置Info
- Publication number
- JPH1013839A JPH1013839A JP9069997A JP6999797A JPH1013839A JP H1013839 A JPH1013839 A JP H1013839A JP 9069997 A JP9069997 A JP 9069997A JP 6999797 A JP6999797 A JP 6999797A JP H1013839 A JPH1013839 A JP H1013839A
- Authority
- JP
- Japan
- Prior art keywords
- pixel
- clock
- input
- pixels
- reference block
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/523—Motion estimation or motion compensation with sub-pixel accuracy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/223—Analysis of motion using block-matching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods 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/43—Hardware specially adapted for motion estimation or compensation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
(57)【要約】
【課題】 半画素を求める補間演算にシフタを利用し、
動き推定を順次に処理して、回路を簡単にしてコンパク
トな半画素動き推定装置を提供する。 【解決手段】 第1サーチウインドー上で所定大きさの
リファレンスブロックに対して整画素動きベクトルと絶
対エラー値を求めた後、第2サーチウインドーを形成し
てリファレンスブロックに対する半画素動きを推定する
動き推定装置において、補間器100が第2サーチウイ
ンドーの画素データの遅延された一対の画素と現在入力
される一対の画素を加算及びシフトして半画素を生成
し、半画素動き推定手段200がリファレンスブロック
の画素データ及び1ライン遅延された画素データに応答
して、補間器の出力と入力画素データを演算して半画素
動きによる絶対エラー値を求めた後にこの絶対エラー値
と整画素動き推定による絶対エラー値のうち絶対エラー
値が最小である動きベクトルを選択して出力する。
動き推定を順次に処理して、回路を簡単にしてコンパク
トな半画素動き推定装置を提供する。 【解決手段】 第1サーチウインドー上で所定大きさの
リファレンスブロックに対して整画素動きベクトルと絶
対エラー値を求めた後、第2サーチウインドーを形成し
てリファレンスブロックに対する半画素動きを推定する
動き推定装置において、補間器100が第2サーチウイ
ンドーの画素データの遅延された一対の画素と現在入力
される一対の画素を加算及びシフトして半画素を生成
し、半画素動き推定手段200がリファレンスブロック
の画素データ及び1ライン遅延された画素データに応答
して、補間器の出力と入力画素データを演算して半画素
動きによる絶対エラー値を求めた後にこの絶対エラー値
と整画素動き推定による絶対エラー値のうち絶対エラー
値が最小である動きベクトルを選択して出力する。
Description
【0001】
【発明の属する技術分野】本発明は映像信号の動き推定
(予測)装置に関するものであり、より詳細には整数ピ
クセルを補間して形成した半画素に対しても動きを推定
するための半画素動き推定装置に関するものである。
(予測)装置に関するものであり、より詳細には整数ピ
クセルを補間して形成した半画素に対しても動きを推定
するための半画素動き推定装置に関するものである。
【0002】
【従来の技術】映像信号の圧縮に用いられる半画素動き
補償に関連する技術が米国特許第5,461,423
号、第5,488,419号、第5,489,949
号、第5,493,344号などに開示されている。米
国特許第5,489,949号に開示された技術は、同
一の大きさを有する映像ブロックのそれぞれの映像信号
の比較による誤差値に基づいて半画素単位の動きベクト
ルを推定するためのもので、微細な動き推定が可能とさ
れている。
補償に関連する技術が米国特許第5,461,423
号、第5,488,419号、第5,489,949
号、第5,493,344号などに開示されている。米
国特許第5,489,949号に開示された技術は、同
一の大きさを有する映像ブロックのそれぞれの映像信号
の比較による誤差値に基づいて半画素単位の動きベクト
ルを推定するためのもので、微細な動き推定が可能とさ
れている。
【0003】一般に、映像信号処理技術において、動き
推定とは連続する映像信号において現在フレームの画素
が以前フレームに比べてどれほど動いたかをベクトルで
示す動きベクトルを推定して、全体映像を伝送する代わ
り、これらの動きベクトルとDPCM値を伝送すること
により伝送情報を減らす技術(すなわち、映像圧縮)を
言う。
推定とは連続する映像信号において現在フレームの画素
が以前フレームに比べてどれほど動いたかをベクトルで
示す動きベクトルを推定して、全体映像を伝送する代わ
り、これらの動きベクトルとDPCM値を伝送すること
により伝送情報を減らす技術(すなわち、映像圧縮)を
言う。
【0004】このような動き推定において広く用いられ
ているブロック整合アルゴリズム(BMA:Block Mat
ching Algorithm)は画面の動きが水平または垂直に平
行移動したものと仮定して、動きが発生したフレーム
(すなわち、現在のフレーム)のブロック映像が、動き
が発生する前のフレーム(すなわち、以前フレーム)の
どの位置にあるブロック映像と最も一致するかを推定し
て、その位置を動きベクトルで推定する方法である。こ
の際、ブロックの大きさには8×8、16×16(これ
をリファレンスブロックという)を主に用いる。
ているブロック整合アルゴリズム(BMA:Block Mat
ching Algorithm)は画面の動きが水平または垂直に平
行移動したものと仮定して、動きが発生したフレーム
(すなわち、現在のフレーム)のブロック映像が、動き
が発生する前のフレーム(すなわち、以前フレーム)の
どの位置にあるブロック映像と最も一致するかを推定し
て、その位置を動きベクトルで推定する方法である。こ
の際、ブロックの大きさには8×8、16×16(これ
をリファレンスブロックという)を主に用いる。
【0005】ここで、現在フレームのリファレンスブロ
ックと最も類似した以前ブロックを探すために、以前フ
レームでリファレンスブロックの位置を中心に一定の範
囲内を探すが、このような範囲をサーチウインドーとい
う。そして、このようなサーチウインドー内における各
候補ブロックの画素とリファレンスブロックの画素との
差をエラー(あるいは、ディストーションともいう)と
いい、2つのブロック間の類似程度を示す。
ックと最も類似した以前ブロックを探すために、以前フ
レームでリファレンスブロックの位置を中心に一定の範
囲内を探すが、このような範囲をサーチウインドーとい
う。そして、このようなサーチウインドー内における各
候補ブロックの画素とリファレンスブロックの画素との
差をエラー(あるいは、ディストーションともいう)と
いい、2つのブロック間の類似程度を示す。
【0006】また、サーチウインドー内の全ての候補ブ
ロックとリファレンスブロックを比較することをフルサ
ーチブロックマッチングアルゴリズム(full search
block matching algorithm)といい、数式的に最も一
致するブロックを探すために連続する2つのフレームの
映像の中で、以前フレームをf1(x,y)、現在のフレーム
をf2(x,y)、任意の変数をa,bとしたとき、f2(x,y)
とf1(x-a,y-b)でa,bを変化させながらf1(x-a,y-b)
とf2(x,y)の差を求めて、その差が最小となるa,bを
動きベクトルとして推定する。このようにブロック間の
最小誤差を求める方法を平均絶対エラー(MAE:Mean
Absolute Error)方法といい、平均絶対エラーは次の数
(1)の通りである。
ロックとリファレンスブロックを比較することをフルサ
ーチブロックマッチングアルゴリズム(full search
block matching algorithm)といい、数式的に最も一
致するブロックを探すために連続する2つのフレームの
映像の中で、以前フレームをf1(x,y)、現在のフレーム
をf2(x,y)、任意の変数をa,bとしたとき、f2(x,y)
とf1(x-a,y-b)でa,bを変化させながらf1(x-a,y-b)
とf2(x,y)の差を求めて、その差が最小となるa,bを
動きベクトルとして推定する。このようにブロック間の
最小誤差を求める方法を平均絶対エラー(MAE:Mean
Absolute Error)方法といい、平均絶対エラーは次の数
(1)の通りである。
【0007】
【数1】
【0008】前記数1においてEabs は平均絶対エラー
であり、Bはブロック大きさである。従って、前記E
absを最小とするa,bを求めると、これが動きベクト
ルとなる。一方、MPEG2などのように映像を圧縮符
号化する実際の装置では動き推定をより精密に遂行する
ために通常2段階のサーチにより動き推定が行われる。
であり、Bはブロック大きさである。従って、前記E
absを最小とするa,bを求めると、これが動きベクト
ルとなる。一方、MPEG2などのように映像を圧縮符
号化する実際の装置では動き推定をより精密に遂行する
ために通常2段階のサーチにより動き推定が行われる。
【0009】すなわち、図1Aに示すように、通常整数
画素単位で広いサーチウインドーSW´で動き推定を遂
行して1次動きベクトルMV1´を算出した後、その動
きベクトルMV1´を中心に隣接した画素を演算して求
めた、補間された半画素に対して狭い範囲のサーチウイ
ンドーSW2´で動き推定(これを半画素動き推定とも
いう)して最終的に精密な動きベクトルMV2´を求め
る。このように半画素動き推定はより精密な動きベクト
ルを求める。
画素単位で広いサーチウインドーSW´で動き推定を遂
行して1次動きベクトルMV1´を算出した後、その動
きベクトルMV1´を中心に隣接した画素を演算して求
めた、補間された半画素に対して狭い範囲のサーチウイ
ンドーSW2´で動き推定(これを半画素動き推定とも
いう)して最終的に精密な動きベクトルMV2´を求め
る。このように半画素動き推定はより精密な動きベクト
ルを求める。
【0010】
【発明が解決しようとする課題】しかしながら、従来の
半画素動き推定装置を構成する補間器は、半画素を求め
るためにディバイダが必要であり、このようなディバイ
ダを半導体チップで具現する時にチップの面積が増加し
た。また、従来には半画素動き推定装置をアレープロセ
ッサ(array processor)型で具現したためにチップの面
積が大きくなるという問題点があった。
半画素動き推定装置を構成する補間器は、半画素を求め
るためにディバイダが必要であり、このようなディバイ
ダを半導体チップで具現する時にチップの面積が増加し
た。また、従来には半画素動き推定装置をアレープロセ
ッサ(array processor)型で具現したためにチップの面
積が大きくなるという問題点があった。
【0011】本発明は以上のような従来技術の問題点を
解決するためのものであり、本発明の技術的課題は、半
画素を求めるための補間演算にシフタを利用し、動き推
定も順次に処理することにより、回路を簡単にしてコン
パクトな半画素動き推定装置を提供することにある。
解決するためのものであり、本発明の技術的課題は、半
画素を求めるための補間演算にシフタを利用し、動き推
定も順次に処理することにより、回路を簡単にしてコン
パクトな半画素動き推定装置を提供することにある。
【0012】
【課題を解決するための手段】前記目的を達成するため
に本発明の装置は、所定の第1サーチウインドー上で所
定大きさのリファレンスブロックに対して整数動き推定
が遂行され整数動きベクトルと当該絶対エラー値が求め
られた後、それに応じて所定の第2サーチウインドーを
形成して前記リファレンスブロックに対して半画素動き
を推定するための動き推定装置において、前記第2サー
チウインドーの画素データを順次に一対ずつ入力されて
遅延された一対の画素と現在入力される一対の画素を加
算及びシフトして半画素を生成する補間器、及び前記リ
ファレンスブロックの画素データ及び1水平ライン遅延
された画素データを順次に入力され、前記補間器の出力
と入力された画素データを演算して半画素動きによる絶
対エラー値を求めた後、この絶対エラー値と前記整数動
き推定による絶対エラー値をそれぞれ比較し、絶対エラ
ー値が最小である動きベクトルを選択して出力する半画
素動き推定手段が備えられることを特徴とする。
に本発明の装置は、所定の第1サーチウインドー上で所
定大きさのリファレンスブロックに対して整数動き推定
が遂行され整数動きベクトルと当該絶対エラー値が求め
られた後、それに応じて所定の第2サーチウインドーを
形成して前記リファレンスブロックに対して半画素動き
を推定するための動き推定装置において、前記第2サー
チウインドーの画素データを順次に一対ずつ入力されて
遅延された一対の画素と現在入力される一対の画素を加
算及びシフトして半画素を生成する補間器、及び前記リ
ファレンスブロックの画素データ及び1水平ライン遅延
された画素データを順次に入力され、前記補間器の出力
と入力された画素データを演算して半画素動きによる絶
対エラー値を求めた後、この絶対エラー値と前記整数動
き推定による絶対エラー値をそれぞれ比較し、絶対エラ
ー値が最小である動きベクトルを選択して出力する半画
素動き推定手段が備えられることを特徴とする。
【0013】
【作用】このような構成を有する本発明は、補間器の演
算において割り算の演算をシフタを利用して具現し、半
画素動き推定のための演算過程を順次方式で処理する。
算において割り算の演算をシフタを利用して具現し、半
画素動き推定のための演算過程を順次方式で処理する。
【0014】以上のような本発明の目的と他の特徴及び
利点などは次に参照する本発明のいくつかの好適な実施
例に対する以下の説明から明確になるであろう。
利点などは次に参照する本発明のいくつかの好適な実施
例に対する以下の説明から明確になるであろう。
【0015】
【発明の実施の形態】以下、本発明を添付図面に基づい
て詳細に説明する。
て詳細に説明する。
【0016】図1Aは広い範囲のサーチウインドーSW
1´上で1次動き推定した後、狭い範囲のサーチウイン
ドーSW2´上で2次動き推定して、より精密に動きを
推定する概念を説明する図面である。図1Bは本発明を
適用するのに好適な典型的な動き推定装置を示すブロッ
ク図であり、現在フレームバッファ1、以前フレームバ
ッファ2、整画素(整数画素)動き推定装置3、半画素
動き推定装置4及び垂直ライン遅延器5が備えられてい
る。図1Bにおいて、現在フレームバッファ1は動きを
推定する現在フレームの映像データ(ピクセル)が貯蔵
されており、このデータはリファレンスブロック単位で
アクセス可能とされており、以前フレームバッファ2に
は動き推定の基準映像となる以前フレームの映像データ
(ピクセル)が貯蔵されており、このデータが所定大き
さのサーチウインドーを形成する。
1´上で1次動き推定した後、狭い範囲のサーチウイン
ドーSW2´上で2次動き推定して、より精密に動きを
推定する概念を説明する図面である。図1Bは本発明を
適用するのに好適な典型的な動き推定装置を示すブロッ
ク図であり、現在フレームバッファ1、以前フレームバ
ッファ2、整画素(整数画素)動き推定装置3、半画素
動き推定装置4及び垂直ライン遅延器5が備えられてい
る。図1Bにおいて、現在フレームバッファ1は動きを
推定する現在フレームの映像データ(ピクセル)が貯蔵
されており、このデータはリファレンスブロック単位で
アクセス可能とされており、以前フレームバッファ2に
は動き推定の基準映像となる以前フレームの映像データ
(ピクセル)が貯蔵されており、このデータが所定大き
さのサーチウインドーを形成する。
【0017】整画素動き推定装置3は、現在フレームバ
ッファ1からリファレンスブロックの画素を入力され、
以前フレームバッファ2からサーチウインドーに属する
候補ブロックの画素を入力され、前記リファレンスブロ
ックとサーチウインドー上の候補ブロックを比較して絶
対エラーが最小である動きベクトルMV0と絶対エラー
AE0を求めた後に出力する。
ッファ1からリファレンスブロックの画素を入力され、
以前フレームバッファ2からサーチウインドーに属する
候補ブロックの画素を入力され、前記リファレンスブロ
ックとサーチウインドー上の候補ブロックを比較して絶
対エラーが最小である動きベクトルMV0と絶対エラー
AE0を求めた後に出力する。
【0018】半画素動き推定装置4は、前記整画素動き
推定装置3から求められた動きベクトルMV0の候補ブ
ロックを中心として所定範囲の画素を以前フレームバッ
ファ2から入力され、現在フレームバッファ1から入力
されたリファレンスブロックの画素とそれぞれ比較して
半画素動きを推定する。この際に半画素動き推定装置4
には後に説明する補間器が備えられて狭い範囲のサーチ
ウインドー上で半画素を求め、この半画素に対して動き
を推定して、より正確な動きベクトルを求める。そし
て、リファレンスブロックの画素は半画素動き装置4に
直ちに入力されると同時に、垂直ライン遅延器5で1垂
直ライン遅延されて入力される。このような半画素動き
推定装置4は図4において詳しく説明される。
推定装置3から求められた動きベクトルMV0の候補ブ
ロックを中心として所定範囲の画素を以前フレームバッ
ファ2から入力され、現在フレームバッファ1から入力
されたリファレンスブロックの画素とそれぞれ比較して
半画素動きを推定する。この際に半画素動き推定装置4
には後に説明する補間器が備えられて狭い範囲のサーチ
ウインドー上で半画素を求め、この半画素に対して動き
を推定して、より正確な動きベクトルを求める。そし
て、リファレンスブロックの画素は半画素動き装置4に
直ちに入力されると同時に、垂直ライン遅延器5で1垂
直ライン遅延されて入力される。このような半画素動き
推定装置4は図4において詳しく説明される。
【0019】図2Aは本発明の実施例に用いられる16
×16リファレンスブロックを示す。このリファレンス
ブロックはリファレンスブロック単位で画素a(1,1),・
・・,a(1,16),・・・,a(16,1),・・・,a(16,16)ま
で256個からなる。図2Bは本発明の実施例において
半画素動き推定のためのサーチウインドーSW2を示
す。前記サーチウインドーSW2の大きさは、1次動き
推定(すなわち、整画素動き推定)により求められた動
きベクトルを有する候補ブロック7を中心として上下左
右にそれぞれ1画素ずつ大きく定められる。そして、こ
のサーチウインドーSW2の大きさ内に属する整画素を
補間して半画素を求めると、この半画素により形成され
たサーチウインドー上に合計9個の候補ブロック(半画
素による8個の候補ブロックと1次動き推定による1つ
の整画素の候補ブロック)がある。すなわち、1次動き
推定により候補ブロック7が指定されると、前記候補ブ
ロック7を中心に1画素大きいサーチウインドーSW2
が形成され、前記サーチウインドー2SW2内の画素b
(0,0)〜b(17,17)を補間して半画素が求められると、前
記半画素に対して8つの候補ブロックが形成される。
×16リファレンスブロックを示す。このリファレンス
ブロックはリファレンスブロック単位で画素a(1,1),・
・・,a(1,16),・・・,a(16,1),・・・,a(16,16)ま
で256個からなる。図2Bは本発明の実施例において
半画素動き推定のためのサーチウインドーSW2を示
す。前記サーチウインドーSW2の大きさは、1次動き
推定(すなわち、整画素動き推定)により求められた動
きベクトルを有する候補ブロック7を中心として上下左
右にそれぞれ1画素ずつ大きく定められる。そして、こ
のサーチウインドーSW2の大きさ内に属する整画素を
補間して半画素を求めると、この半画素により形成され
たサーチウインドー上に合計9個の候補ブロック(半画
素による8個の候補ブロックと1次動き推定による1つ
の整画素の候補ブロック)がある。すなわち、1次動き
推定により候補ブロック7が指定されると、前記候補ブ
ロック7を中心に1画素大きいサーチウインドーSW2
が形成され、前記サーチウインドー2SW2内の画素b
(0,0)〜b(17,17)を補間して半画素が求められると、前
記半画素に対して8つの候補ブロックが形成される。
【0020】従って、半画素動き推定は1次動き推定に
より求められた候補ブロックに対する絶対エラーと、半
画素により新たに求められた8つの候補ブロックの絶対
エラーとをそれぞれ比較してこの中で絶対エラーが最小
である動きベクトルを2次動きベクトル(最終動きベク
トル)として求める。
より求められた候補ブロックに対する絶対エラーと、半
画素により新たに求められた8つの候補ブロックの絶対
エラーとをそれぞれ比較してこの中で絶対エラーが最小
である動きベクトルを2次動きベクトル(最終動きベク
トル)として求める。
【0021】図3は2次動き推定のためのサーチウイン
ドーSW2上で任意の9つの整画素b(x,y),b(x+1,y),
b(x+2,y),b(x,y+1),b(x+1,y+1),b(x+2,y+1),b(x,y+
2),b(x+1,y+2),b(x+2,y+2)とこの整画素から補間によ
り求められた半画素b0 1,b1 0,b1 1を示す。図3にお
いて、黒い点は整画素を示し、xは補間により求められ
た半画素を示し、各矢印は画素b(x+1,y+1)を基準とし
て、8つの候補ブロックに対する半画素動きベクトルを
示す。そして、矢印上に表示された参照符号PE1ない
しPE8は当該半画素動きベクトルを求めるためのプロ
セッシングエレメントを示す。
ドーSW2上で任意の9つの整画素b(x,y),b(x+1,y),
b(x+2,y),b(x,y+1),b(x+1,y+1),b(x+2,y+1),b(x,y+
2),b(x+1,y+2),b(x+2,y+2)とこの整画素から補間によ
り求められた半画素b0 1,b1 0,b1 1を示す。図3にお
いて、黒い点は整画素を示し、xは補間により求められ
た半画素を示し、各矢印は画素b(x+1,y+1)を基準とし
て、8つの候補ブロックに対する半画素動きベクトルを
示す。そして、矢印上に表示された参照符号PE1ない
しPE8は当該半画素動きベクトルを求めるためのプロ
セッシングエレメントを示す。
【0022】図3において、b0 1は垂直方向の隣接した
2つの整画素を補間して求めた半画素(これを垂直方向
の半画素という)を示し、b1 0は水平方向の隣接した2
つの整画素を補間して求めた半画素(これを水平方向の
半画素という)を示し、b1 1は四角形をなす隣接した4
つの画素を補間して求めた半画素(これを対角線方向の
半画素という)を示す。
2つの整画素を補間して求めた半画素(これを垂直方向
の半画素という)を示し、b1 0は水平方向の隣接した2
つの整画素を補間して求めた半画素(これを水平方向の
半画素という)を示し、b1 1は四角形をなす隣接した4
つの画素を補間して求めた半画素(これを対角線方向の
半画素という)を示す。
【0023】例えば、図3において、垂直方向半画素b
0 1(x+1,y)は次の数2のように求められ、水平方向の半
画素b1 0(x,y+1)は次の数3のように求められ、対角線
方向の半画素b1 1(x,y)は次の数4のように求められ
る。
0 1(x+1,y)は次の数2のように求められ、水平方向の半
画素b1 0(x,y+1)は次の数3のように求められ、対角線
方向の半画素b1 1(x,y)は次の数4のように求められ
る。
【数2】b0 1(x+1,y)={b(x+1,y)+b(x+1,y+1)}//2
【数3】b1 0(x,y+1)={b(x,y+1)+b(x+1,y+1)}//2
【数4】b1 1(x,y)={b(x,y)+b(x+1,y)+b(x,y+1)+b(x+
1,y+1)}//4 ここで、x=0,1,2,・・・,17、y=0,1,
2,・・・,17である。
1,y+1)}//4 ここで、x=0,1,2,・・・,17、y=0,1,
2,・・・,17である。
【0024】本発明による半画素動き推定措置は、図4
に示すように、補間器100と半画素動き推定部200
に大別され、補間器100は第1ラッチ110と3つの
半画素算出部120,130,140で構成され、半画
素動き推定部200は第2ラッチ211及び第3ラッチ
212、8つのプロセッシングエレメント(PE:pr
ocessing element)221〜228、
8つの累算器(ACC:accumulator)23
1〜238、及び比較及び選択器240からなる。
に示すように、補間器100と半画素動き推定部200
に大別され、補間器100は第1ラッチ110と3つの
半画素算出部120,130,140で構成され、半画
素動き推定部200は第2ラッチ211及び第3ラッチ
212、8つのプロセッシングエレメント(PE:pr
ocessing element)221〜228、
8つの累算器(ACC:accumulator)23
1〜238、及び比較及び選択器240からなる。
【0025】ここで、補間器100は図2Bに示すよう
なサーチウインドーSW2から2画素ずつ画素を垂直方
向に順次に入力され、本発明の実施例において1画素は
8ビットのデータからなる。入力された2画素はラッチ
110によりラッチされ、新たに入力された2画素と1
クロック以前に入力された以前の画素が補間器100の
ライン101〜104上にある。すなわち、図3のよう
に9つの画素がある場合に、以前クロックにb(x,y),b
(x+1,y)画素が補間器100に入力され、次いで現在ク
ロックにb(x,y+1),b(x+1,y+1)画素が入力されると、ラ
イン101,102に以前クロックにラッチされたb(x,
y),b(x+1,y)が示され、ライン103,104には現在
クロックに入力されるb(x,y+1),b(x+1,y+1)が示され
る。
なサーチウインドーSW2から2画素ずつ画素を垂直方
向に順次に入力され、本発明の実施例において1画素は
8ビットのデータからなる。入力された2画素はラッチ
110によりラッチされ、新たに入力された2画素と1
クロック以前に入力された以前の画素が補間器100の
ライン101〜104上にある。すなわち、図3のよう
に9つの画素がある場合に、以前クロックにb(x,y),b
(x+1,y)画素が補間器100に入力され、次いで現在ク
ロックにb(x,y+1),b(x+1,y+1)画素が入力されると、ラ
イン101,102に以前クロックにラッチされたb(x,
y),b(x+1,y)が示され、ライン103,104には現在
クロックに入力されるb(x,y+1),b(x+1,y+1)が示され
る。
【0026】従って、対角線方向の半画素算出部120
にはb(x,y),b(x+1,y),b(x,y+1),b(x+1,y+1)画素が入
力された後に演算され対角線方向の半画素b1 1が出力さ
れ、垂直方向の半画素算出部130にはb(x+1,y),b(x+
1,y+1)画素が入力された後に演算され垂直方向の半画素
b0 1が出力され、水平方向の半画素算出部140にはb
(x,y+1),b(x+1,y+1)画素が入力された後に演算され水
平方向の半画素b1 0が出力される。
にはb(x,y),b(x+1,y),b(x,y+1),b(x+1,y+1)画素が入
力された後に演算され対角線方向の半画素b1 1が出力さ
れ、垂直方向の半画素算出部130にはb(x+1,y),b(x+
1,y+1)画素が入力された後に演算され垂直方向の半画素
b0 1が出力され、水平方向の半画素算出部140にはb
(x,y+1),b(x+1,y+1)画素が入力された後に演算され水
平方向の半画素b1 0が出力される。
【0027】ここで、半画素算出部120,130,1
40は図7に示すように、加算器151、シフタ152
及びラッチ153で構成されるが、より詳細に説明する
と、対角線方向の半画素算出部120の加算器は、8ビ
ットの画素4入力と2進数“10”を加算し、シフタは
加算器の出力を2回シフトして加算器の10ビット出力
をMSBから8ビットのみを出力する。
40は図7に示すように、加算器151、シフタ152
及びラッチ153で構成されるが、より詳細に説明する
と、対角線方向の半画素算出部120の加算器は、8ビ
ットの画素4入力と2進数“10”を加算し、シフタは
加算器の出力を2回シフトして加算器の10ビット出力
をMSBから8ビットのみを出力する。
【0028】また、垂直方向あるいは水平方向の半画素
算出部130,140の加算器は、8ビット画素2入力
と2進数“1”を加算し、シフタは加算器の出力を1回
シフトして加算器の9ビット出力をMSBから8ビット
のみを出力する。ここで、対角線方向の半画素算出部1
20で“102”を加えて、垂直方向あるいは水平方向
の半画素算出部130,140で“12”をそれぞれ加
えることはシフト(すなわち、割り算)結果を整数とす
るためである。
算出部130,140の加算器は、8ビット画素2入力
と2進数“1”を加算し、シフタは加算器の出力を1回
シフトして加算器の9ビット出力をMSBから8ビット
のみを出力する。ここで、対角線方向の半画素算出部1
20で“102”を加えて、垂直方向あるいは水平方向
の半画素算出部130,140で“12”をそれぞれ加
えることはシフト(すなわち、割り算)結果を整数とす
るためである。
【0029】一方、図4を参照すると、半画素動き推定
部200は、リファレンスブロックの画素を順次に入力
されるが、まずライン105にはリファレンスブロック
の画素a(1,1)〜a(16,16)を垂直方向に順次に入力され、
ライン106にはライン105よりリファレンスブロッ
クの1垂直ライン遅延された画素を順次に入力される。
すなわち、ライン105にリファレンスブロックの2番
目の垂直ライン画素a(2,1)〜a(2,16)が順次に入力され
るとき、ライン106にはリファレンスブロックの1番
目の垂直ライン画素a(1,1)〜a(1,16)が順次に入力され
る。そして、第2ラッチ211は遅延されていない垂直
ラインの入力画素をラッチして1クロック遅延させてプ
ロセッシングエレメント221,222に出力し、第3
ラッチ212は1垂直ライン遅延されて入力される画素
をラッチしてさらに1クロック遅延させてプロセッシン
グエレメント228に出力する。
部200は、リファレンスブロックの画素を順次に入力
されるが、まずライン105にはリファレンスブロック
の画素a(1,1)〜a(16,16)を垂直方向に順次に入力され、
ライン106にはライン105よりリファレンスブロッ
クの1垂直ライン遅延された画素を順次に入力される。
すなわち、ライン105にリファレンスブロックの2番
目の垂直ライン画素a(2,1)〜a(2,16)が順次に入力され
るとき、ライン106にはリファレンスブロックの1番
目の垂直ライン画素a(1,1)〜a(1,16)が順次に入力され
る。そして、第2ラッチ211は遅延されていない垂直
ラインの入力画素をラッチして1クロック遅延させてプ
ロセッシングエレメント221,222に出力し、第3
ラッチ212は1垂直ライン遅延されて入力される画素
をラッチしてさらに1クロック遅延させてプロセッシン
グエレメント228に出力する。
【0030】図4において、プロセッシングエレメント
221〜228が4つ(a,b,c,d)にグルーピン
グされたことは、リファレンスブロックの同一の画素が
同一のタイミングに処理されることを示す。aグループ
のプロセッシングエレメント221,222はライン1
05に入力されて第2ラッチ211で1クロック遅延さ
れた、リファレンスブロックの画素a(x,y)´と、該画素
a(x,y)´が入力されるクロックと同一のクロックで補間
器100から入力された半画素との演算を処理する。b
グループのプロセッシングエレメント223,224,
225はライン105に入力されたリファレンスブロッ
クの画素a(x,y)と、該画素a(x,y)が入力されるクロック
と同一のクロックで補間器100から入力される半画素
との演算を処理する。cグループのプロセッシングエレ
メント226,227はライン106に1垂直ライン遅
延されて入力された、リファレンスブロックの画素a´
(x,y)と、該画素a´(x,y)が入力されるクロックと同一
のクロックで補間器100から入力された半画素との演
算を処理する。そして、dグループのプロセッシングエ
レメント228はライン106に1垂直ライン遅延され
て入力され、第3ラッチ212で1クロック遅延され
た、リファレンスブロックの画素a´(x,y)´と、該画素
a´(x,y)´が入力されるクロックと同一のクロックで補
間器100から入力される半画素との演算を処理する。
221〜228が4つ(a,b,c,d)にグルーピン
グされたことは、リファレンスブロックの同一の画素が
同一のタイミングに処理されることを示す。aグループ
のプロセッシングエレメント221,222はライン1
05に入力されて第2ラッチ211で1クロック遅延さ
れた、リファレンスブロックの画素a(x,y)´と、該画素
a(x,y)´が入力されるクロックと同一のクロックで補間
器100から入力された半画素との演算を処理する。b
グループのプロセッシングエレメント223,224,
225はライン105に入力されたリファレンスブロッ
クの画素a(x,y)と、該画素a(x,y)が入力されるクロック
と同一のクロックで補間器100から入力される半画素
との演算を処理する。cグループのプロセッシングエレ
メント226,227はライン106に1垂直ライン遅
延されて入力された、リファレンスブロックの画素a´
(x,y)と、該画素a´(x,y)が入力されるクロックと同一
のクロックで補間器100から入力された半画素との演
算を処理する。そして、dグループのプロセッシングエ
レメント228はライン106に1垂直ライン遅延され
て入力され、第3ラッチ212で1クロック遅延され
た、リファレンスブロックの画素a´(x,y)´と、該画素
a´(x,y)´が入力されるクロックと同一のクロックで補
間器100から入力される半画素との演算を処理する。
【0031】ここで、プロセッシングエレメント221
〜228(PE1〜PE8)は、図6に示すように、減
算器251、ラッチ252及び絶対値計算器253で構
成され、減算器251はリファレンスブロックの画素と
補間器により求められた半画素との差を演算し、その減
算結果はラッチ252でラッチされた後、絶対値計算器
253で絶対値が計算される。このようにプロセッシン
グエレメント221〜228は個別的な画素に対する絶
対エラーを求めるものであり、個別的な画素に対する絶
対エラーは当該累算器231〜238で累積し続けら
れ、リファレンスブロック全体の画素に対する演算が終
わると、累算器231〜238にはリファレンスブロッ
クと当該候補ブロックとの絶対エラーが貯蔵されてい
る。
〜228(PE1〜PE8)は、図6に示すように、減
算器251、ラッチ252及び絶対値計算器253で構
成され、減算器251はリファレンスブロックの画素と
補間器により求められた半画素との差を演算し、その減
算結果はラッチ252でラッチされた後、絶対値計算器
253で絶対値が計算される。このようにプロセッシン
グエレメント221〜228は個別的な画素に対する絶
対エラーを求めるものであり、個別的な画素に対する絶
対エラーは当該累算器231〜238で累積し続けら
れ、リファレンスブロック全体の画素に対する演算が終
わると、累算器231〜238にはリファレンスブロッ
クと当該候補ブロックとの絶対エラーが貯蔵されてい
る。
【0032】ところが、各プロセッシングエレメント2
21〜228は、図3に示すように、8つ方向の半画素
動き推定に対する絶対エラーを計算するものであるため
に、つまり累算器231〜238の最終出力は図2Bの
ように形成されたサーチウインドー上で8つの候補ブロ
ックとリファレンスブロック間の絶対エラーに該当す
る。従って、比較及び選択器240は1次動き推定で求
めた絶対エラーAE0と、8つの累算器231〜238
に累積された絶対エラーAE1〜AE8をそれぞれ比較
してこの中で絶対エラーが最も小さい候補ブロックの動
きベクトルを最終的に出力する。
21〜228は、図3に示すように、8つ方向の半画素
動き推定に対する絶対エラーを計算するものであるため
に、つまり累算器231〜238の最終出力は図2Bの
ように形成されたサーチウインドー上で8つの候補ブロ
ックとリファレンスブロック間の絶対エラーに該当す
る。従って、比較及び選択器240は1次動き推定で求
めた絶対エラーAE0と、8つの累算器231〜238
に累積された絶対エラーAE1〜AE8をそれぞれ比較
してこの中で絶対エラーが最も小さい候補ブロックの動
きベクトルを最終的に出力する。
【0033】例えば、8つの累算器231〜238の出
力と1次動き推定の絶対エラーを比較したときに、1次
動き推定の絶対エラーが最小であると、最終的な動きベ
クトルとして1次動き推定による動きベクトルMV0が
選択され、任意の累算器の絶対エラーが最小であると、
当該累算器の半画素動きベクトルと1次動き推定による
動きベクトルの和が最終的な動きベクトルMV1として
出力される。これをまとめると、1次動きベクトルMV
0がMV(m,n)の値を有するなら、次の表1のように2
次動きベクトルが定められる。
力と1次動き推定の絶対エラーを比較したときに、1次
動き推定の絶対エラーが最小であると、最終的な動きベ
クトルとして1次動き推定による動きベクトルMV0が
選択され、任意の累算器の絶対エラーが最小であると、
当該累算器の半画素動きベクトルと1次動き推定による
動きベクトルの和が最終的な動きベクトルMV1として
出力される。これをまとめると、1次動きベクトルMV
0がMV(m,n)の値を有するなら、次の表1のように2
次動きベクトルが定められる。
【0034】
【表1】
【0035】前記表1を参照すると、比較及び選択器2
40において各累算器231〜238に貯蔵された絶対
エラーAE1〜AE8と1次動き推定の絶対エラーAE
0を比較した結果、第1累算器231の絶対エラーAE
1が最小であるなら、図3の“PE1”による半画素動
きベクトル(-0.5,+0.5)が選択され、従って1次動き推
定により求められた動きベクトルMV(m,n)に半画素動
きベクトル(-0.5,+0.5)を加えた動きベクトルであるM
V(m-0.5,n+0.5)が最終的な動きベクトルMV1として
出力される。
40において各累算器231〜238に貯蔵された絶対
エラーAE1〜AE8と1次動き推定の絶対エラーAE
0を比較した結果、第1累算器231の絶対エラーAE
1が最小であるなら、図3の“PE1”による半画素動
きベクトル(-0.5,+0.5)が選択され、従って1次動き推
定により求められた動きベクトルMV(m,n)に半画素動
きベクトル(-0.5,+0.5)を加えた動きベクトルであるM
V(m-0.5,n+0.5)が最終的な動きベクトルMV1として
出力される。
【0036】次いで、前記のように構成される望ましい
実施例の動作を図5のタイミングテーブルを参照してさ
らに詳細に説明する。図5に示すようにクロック(CLOC
K)に応じて補間器100に図2Bに示すようなサーチウ
インドーb(0,0)〜b(17,17)が一対ずつ入力される。すな
わち、クロック0においてb(0,0),b(1,0)、クロック1
においてb(0,1),b(1,1)、クロック2においてb(0,2),
b(1,2)、・・・などのように補間器100に一対の画素
データが垂直ライン順に順次に入力されると、補間器1
00は演算を遂行してクロック2から3つの半画素(対
角線方向の半画素、垂直方向の半画素及び水平方向の半
画素)を順次に出力する。すなわち、クロック2におい
て補間器100はb1 1(0,0),b0 1(1,0),b1 0(0,1)を
出力し、クロック3において補間器100はb1 1(0,
1),b0 1(1,1),b1 0(0,2)・・・のように出力する。
実施例の動作を図5のタイミングテーブルを参照してさ
らに詳細に説明する。図5に示すようにクロック(CLOC
K)に応じて補間器100に図2Bに示すようなサーチウ
インドーb(0,0)〜b(17,17)が一対ずつ入力される。すな
わち、クロック0においてb(0,0),b(1,0)、クロック1
においてb(0,1),b(1,1)、クロック2においてb(0,2),
b(1,2)、・・・などのように補間器100に一対の画素
データが垂直ライン順に順次に入力されると、補間器1
00は演算を遂行してクロック2から3つの半画素(対
角線方向の半画素、垂直方向の半画素及び水平方向の半
画素)を順次に出力する。すなわち、クロック2におい
て補間器100はb1 1(0,0),b0 1(1,0),b1 0(0,1)を
出力し、クロック3において補間器100はb1 1(0,
1),b0 1(1,1),b1 0(0,2)・・・のように出力する。
【0037】一方、リファレンスブロックの画素a(1,1)
〜a(16,16)はクロックに応じて垂直ライン順に順次にプ
ロセッシングエレメント221〜228に入力される。
この際に、前述したように、プロセッシングエレメント
はグループ別(a,b,c,d)に同一のクロックにリ
ファレンスブロックの同一の画素が入力されて補間器1
00の出力(すなわち、半画素)と演算される。
〜a(16,16)はクロックに応じて垂直ライン順に順次にプ
ロセッシングエレメント221〜228に入力される。
この際に、前述したように、プロセッシングエレメント
はグループ別(a,b,c,d)に同一のクロックにリ
ファレンスブロックの同一の画素が入力されて補間器1
00の出力(すなわち、半画素)と演算される。
【0038】すなわち、リファレンスブロックの第1の
垂直ラインの1番目の画素a(1,1)はクロック2において
プロセッシングエレメント223〜225(PE3〜P
E5)に入力され、同一のクロックにおいて補間器10
0から出力される半画素b1 1(0,0),b0 1(1,0),b
1 0(0,1)と演算され、第3プロセッシングエレメント2
23は“a(1,1)−b1 1(0,0)”を演算し、第4プロセッ
シングエレメント224は“a(1,1)−b0 1(1,0)”を、
第5プロセッシングエレメント225は“a(1,1)−b1 0
(0,1)”をそれぞれ演算して絶対エラーを求め、この絶
対エラーは当該累算器233〜235にそれぞれ貯蔵さ
れる。
垂直ラインの1番目の画素a(1,1)はクロック2において
プロセッシングエレメント223〜225(PE3〜P
E5)に入力され、同一のクロックにおいて補間器10
0から出力される半画素b1 1(0,0),b0 1(1,0),b
1 0(0,1)と演算され、第3プロセッシングエレメント2
23は“a(1,1)−b1 1(0,0)”を演算し、第4プロセッ
シングエレメント224は“a(1,1)−b0 1(1,0)”を、
第5プロセッシングエレメント225は“a(1,1)−b1 0
(0,1)”をそれぞれ演算して絶対エラーを求め、この絶
対エラーは当該累算器233〜235にそれぞれ貯蔵さ
れる。
【0039】次いで、クロック3においてリファレンス
ブロックの1番目の垂直ラインの2番目の画素a(1,2)が
入力されると、これに対して第3ないし第5プロセッシ
ングエレメント223〜225は演算を遂行し、第1及
び第2プロセッシングエレメント221,222はラッ
チ211でラッチされ、1クロック遅延された1番目の
画素a(1,1)に対して演算を遂行する。すなわち、クロッ
ク3において第3ないし第5プロセッシングエレメント
223〜225はa(1,2)−b1 1(0,1),a(1,2)−b0 1(1,
1),a(1,2)−b1 0(0,2)をそれぞれ演算して、絶対エラ
ーを当該累算器233〜235にそれぞれ出力し、クロ
ック3において第1プロセッシングエレメント221は
a(1,1)−b1 1(0,1)を演算して絶対エラーを第1累算器
231に出力し、クロック3において第2プロセッシン
グエレメント222はa(1,1)−b0 1(1,1)を演算して絶
対エラーを第2累算器232に出力する。
ブロックの1番目の垂直ラインの2番目の画素a(1,2)が
入力されると、これに対して第3ないし第5プロセッシ
ングエレメント223〜225は演算を遂行し、第1及
び第2プロセッシングエレメント221,222はラッ
チ211でラッチされ、1クロック遅延された1番目の
画素a(1,1)に対して演算を遂行する。すなわち、クロッ
ク3において第3ないし第5プロセッシングエレメント
223〜225はa(1,2)−b1 1(0,1),a(1,2)−b0 1(1,
1),a(1,2)−b1 0(0,2)をそれぞれ演算して、絶対エラ
ーを当該累算器233〜235にそれぞれ出力し、クロ
ック3において第1プロセッシングエレメント221は
a(1,1)−b1 1(0,1)を演算して絶対エラーを第1累算器
231に出力し、クロック3において第2プロセッシン
グエレメント222はa(1,1)−b0 1(1,1)を演算して絶
対エラーを第2累算器232に出力する。
【0040】このようにリファレンスブロックの1番目
の垂直ラインピクセルに対する演算が図5に示すように
第1ないし第5プロセッシングエレメント221〜22
5により順次に処理された後、次いで第1ないし第5プ
ロセッシングエレメント221〜225はリファレンス
ブロックの2番目の垂直ライン画素に対する演算を遂行
し、この2番目の垂直ライン画素を処理するクロックと
同一のクロックにおいて第6ないし第8プロセッシング
エレメント226〜228は、リファレンスブロックの
1番目の垂直ライン画素を入力されて演算を遂行する。
すなわち、リファレンスブロックの1番目の垂直ライン
の1番目の画素a(1,1)が1垂直ライン遅延された後に、
ライン106を通して第6ないし第8プロセッシングエ
レメント226〜228に入力され、この画素a(1,1)の
入力クロックと同一のクロックにおいて補間器100か
ら半画素が入力されると、これに応じて第6プロセッシ
ングエレメント226はa(1,1)−b1 1(1,0)を演算した
後に絶対エラーを第6累算器236に出力し、第7プロ
セッシングエレメント227はa(1,1)−b1 0(1,1)を演
算した後に絶対エラーを第7累算器237に出力する。
この際、第3ラッチ212は1垂直ライン遅延されて入
力される、リファレンスブロックの1番目の垂直ライン
の1番目の画素a(1,1)をラッチして1クロック遅延させ
る。
の垂直ラインピクセルに対する演算が図5に示すように
第1ないし第5プロセッシングエレメント221〜22
5により順次に処理された後、次いで第1ないし第5プ
ロセッシングエレメント221〜225はリファレンス
ブロックの2番目の垂直ライン画素に対する演算を遂行
し、この2番目の垂直ライン画素を処理するクロックと
同一のクロックにおいて第6ないし第8プロセッシング
エレメント226〜228は、リファレンスブロックの
1番目の垂直ライン画素を入力されて演算を遂行する。
すなわち、リファレンスブロックの1番目の垂直ライン
の1番目の画素a(1,1)が1垂直ライン遅延された後に、
ライン106を通して第6ないし第8プロセッシングエ
レメント226〜228に入力され、この画素a(1,1)の
入力クロックと同一のクロックにおいて補間器100か
ら半画素が入力されると、これに応じて第6プロセッシ
ングエレメント226はa(1,1)−b1 1(1,0)を演算した
後に絶対エラーを第6累算器236に出力し、第7プロ
セッシングエレメント227はa(1,1)−b1 0(1,1)を演
算した後に絶対エラーを第7累算器237に出力する。
この際、第3ラッチ212は1垂直ライン遅延されて入
力される、リファレンスブロックの1番目の垂直ライン
の1番目の画素a(1,1)をラッチして1クロック遅延させ
る。
【0041】次いで、次のクロックにおいて第6及び第
7プロセッシングエレメント226,227は次の画素
a(1,2)に対する演算をa(1,2)−b1 1(1,1),a(1,2)−b1
0(1,2)のようにそれぞれ遂行し、これと同一のクロック
において第8プロセッシングエレメント228は第3ラ
ッチ212でラッチされ1クロック遅延された1番目の
画素a(1,1)に対する演算をa(1,1)−b1 1(1,1)のように
処理して絶対エラーを第8累算器238に出力する。
7プロセッシングエレメント226,227は次の画素
a(1,2)に対する演算をa(1,2)−b1 1(1,1),a(1,2)−b1
0(1,2)のようにそれぞれ遂行し、これと同一のクロック
において第8プロセッシングエレメント228は第3ラ
ッチ212でラッチされ1クロック遅延された1番目の
画素a(1,1)に対する演算をa(1,1)−b1 1(1,1)のように
処理して絶対エラーを第8累算器238に出力する。
【0042】このように各プロセッシングエレメントが
演算した絶対エラーは当該累算器にそれぞれ貯蔵されて
リファレンスブロックの画素全体に対する演算が終わる
と、つまり1つのリファレンスブロックと半画素による
8つの候補ブロックとの絶対エラーが当該累算器231
〜238にそれぞれ貯蔵される。従って、リファレンス
ブロックの全ての画素に対する演算が終わると、比較及
び選択器240が8つの累算器231〜238に貯蔵さ
れた絶対エラーAE1〜AE8と1次動き推定(整数動
き推定)による絶対エラーAE0をそれぞれ比較して絶
対エラーを最小とする動きベクトルを前記表1に応じて
求めて出力する。
演算した絶対エラーは当該累算器にそれぞれ貯蔵されて
リファレンスブロックの画素全体に対する演算が終わる
と、つまり1つのリファレンスブロックと半画素による
8つの候補ブロックとの絶対エラーが当該累算器231
〜238にそれぞれ貯蔵される。従って、リファレンス
ブロックの全ての画素に対する演算が終わると、比較及
び選択器240が8つの累算器231〜238に貯蔵さ
れた絶対エラーAE1〜AE8と1次動き推定(整数動
き推定)による絶対エラーAE0をそれぞれ比較して絶
対エラーを最小とする動きベクトルを前記表1に応じて
求めて出力する。
【0043】
【発明の効果】以上で説明したように、本発明による半
画素動き推定装置は、補間器の演算において割り算の演
算を、シフタを利用して具現し、半画素動き推定のため
の演算過程をアレープロセッサ型でない、順次方式で処
理することにより、回路が相対的に簡単であって半導体
チップで製作を容易にする効果がある。
画素動き推定装置は、補間器の演算において割り算の演
算を、シフタを利用して具現し、半画素動き推定のため
の演算過程をアレープロセッサ型でない、順次方式で処
理することにより、回路が相対的に簡単であって半導体
チップで製作を容易にする効果がある。
【0044】本発明を実施例によって詳細に説明した
が、本発明は実施例によって限定されず、本発明が属す
る技術分野において通常の知識を有する者であれば本発
明の思想と精神を離れることなく、本発明を修正または
変更できるであろう。
が、本発明は実施例によって限定されず、本発明が属す
る技術分野において通常の知識を有する者であれば本発
明の思想と精神を離れることなく、本発明を修正または
変更できるであろう。
【図1】Aは2次にわたって動きを推定する概念を説明
する図面である。Bは本発明を適用するのに好適な典型
的な動き推定装置を示すブロック図である。
する図面である。Bは本発明を適用するのに好適な典型
的な動き推定装置を示すブロック図である。
【図2】Aは動き推定のための16×16大きさのリフ
ァレンスブロックを示す図面である。Bは半画素動き推
定のためのサーチウインドーを示す図面である。
ァレンスブロックを示す図面である。Bは半画素動き推
定のためのサーチウインドーを示す図面である。
【図3】半画素動き推定を説明するために画素及び半画
素の例を示す図面である。
素の例を示す図面である。
【図4】本発明による半画素動き推定装置を示すブロッ
ク図である。
ク図である。
【図5】本発明による動作タイミングテーブルである。
【図6】図4に示すプロセッシングエレメントの細部ブ
ロック図である。
ロック図である。
【図7】図4に示す半画素算出部の細部ブロック図であ
る。
る。
100 補間器 110,211,212 第1、第2、第3ラッチ 120,130,140 半画素算出部 200 半画素動き推定部 221〜228 プロセッシングエレメント 231〜238 累算器 240 比較及び選択器
Claims (11)
- 【請求項1】 以前フレームバッファに貯蔵されたピク
セル上に所定大きさの第1サーチウインドーを形成した
後、前記サーチウインドー上に1次動き推定を遂行して
整画素動きベクトルと該当絶対エラーを求め、前記整画
素動きベクトルにより指定される候補ブロックを中心に
所定大きさの第2サーチウインドーを形成した後、所定
大きさのリファレンスブロックの画素と、前記第2サー
チウインドーに属する整画素の画素を補間して求めた半
画素とを比較して2次動き推定された動きベクトルを出
力する半画素動き推定装置において、 前記第2サーチウインドー上で水平方向に隣接された一
対のピクセルを垂直方向に順次に一対ずつ入力され、以
前クロックに入力された一対の画素と現在のクロックに
入力される一対の画素を演算して半画素を生成する補間
器と、 前記リファレンスブロックからの垂直ライン方向に画素
を順次に入力され、1垂直ライン遅延されたリファレン
スブロックの画素を垂直ライン方向に順次に入力され、
前記補間器の出力と入力された前記画素を演算して絶対
エラーを求めた後、前記絶対エラーと前記整画素動き推
定による絶対エラーをそれぞれ比較して絶対エラーを最
小とする半画素動きベクトルあるいは整画素動きベクト
ルを選択した後、整画素動きベクトルに半画素動きベク
トルを加えた動きベクトルまたは整画素動きベクトルを
出力する半画素動き推定手段とが備えられることを特徴
とする半画素動き推定装置。 - 【請求項2】 前記補間器が、 前記第2サーチウインドーから以前クロックに入力され
た一対の画素データをラッチして1クロック遅延させる
遅延手段と、 前記遅延手段において1クロック遅延された画素対と現
在クロックから入力される画素対及び所定の2進数を加
算した後、2回シフトして対角線方向の半画素を出力す
る対角線方向の半画素算出部と、 前記遅延手段において1クロック遅延された画素対の中
の2番目の画素、現在のクロックから入力された画素対
の中の2番目の画素、及び所定の2進数を加算した後、
1回シフトして垂直方向の半画素を出力する垂直方向の
半画素算出部と、 現在のクロックに入力される一対の画素と所定の2進数
を加算した後、1回シフトして水平方向の半画素を出力
する水平方向の半画素算出部とを備えることを特徴とす
る請求項1に記載の半画素動き推定装置。 - 【請求項3】 前記遅延手段が、ラッチで具現されるこ
とを特徴とする請求項2に記載の半画素動き推定装置。 - 【請求項4】 前記対角線方向の半画素算出部が、 前記第2サーチウインドーの4画素と2進数“10”を
加算する加算器と、前記加算器の出力を2回シフトする
シフタと、前記シフタの出力を一時貯蔵するラッチとで
構成されることを特徴とする請求項2に記載の半画素動
き推定装置。 - 【請求項5】 前記垂直方向の半画素算出部が、 前記第2サーチウインドーの2画素と2進数“1”を加
算する加算器と、前記加算器の出力を1回シフトするシ
フタと、前記シフタの出力を一時貯蔵するラッチとで構
成されることを特徴とする請求項2に記載の半画素動き
推定装置。 - 【請求項6】 前記水平方向の半画素算出部が、 前記第2サーチウインドーの2画素と2進数“1”を加
算する加算器と、前記加算器の出力を1回シフトするシ
フタと、前記シフタの出力を一時貯蔵するラッチとで構
成されることを特徴とする請求項2に記載の半画素動き
推定装置。 - 【請求項7】 前記動き推定手段が、 前記リファレンスブロックの現在の画素を1クロック遅
延させる第1遅延手段と、 前記リファレンスブロックの1垂直ライン遅延された画
素を1クロック遅延させる第2遅延手段と、 前記リファレンスブロックの現在の画素、1クロック遅
延された現在の画素、1垂直ライン遅延された画素、及
び1垂直ラインに1クロックがさらに遅延された画素を
入力され、前記画素が入力されるクロックと同一のクロ
ックに前記補間器の出力を入力されてこれらを演算して
当該画素に対する絶対エラーを出力する複数個のプロセ
ッシングエレメントと、 前記プロセッシングエレメントの画素に対する絶対エラ
ーを累積加算して当該リファレンスブロックの全ての画
素に対する演算が完了すると、当該半画素動きによる絶
対エラーが貯蔵される複数個の累算器と、 前記累算器がそれぞれ出力する絶対エラーと前記整画素
動き推定による絶対エラーとをそれぞれ比較して整画素
動き推定による絶対エラーが最小なら当該整画素動きベ
クトルを選択して出力し、累算器の中のいずれか1つの
絶対エラーが最小なら当該半画素動きベクトルを選択し
た後、前記整画素動きベクトルに加算して出力する比較
及び選択器とで構成されることを特徴とする請求項1に
記載の半画素動き推定装置。 - 【請求項8】 前記第1遅延手段がラッチで具現される
ことを特徴とする請求項7に記載の半画素動き推定装
置。 - 【請求項9】 前記第2遅延手段がラッチで具現される
ことを特徴とする請求項7に記載の半画素動き推定装
置。 - 【請求項10】 前記複数個のプロセッシングエレメン
トが、 前記リファレンスブロックの1クロック遅延された現在
の画素と、該遅延された画素が入力されるクロックと同
一のクロックに入力される対角線方向の半画素を演算し
て当該画素の絶対エラーを出力する第1プロセッシング
エレメントと、 前記リファレンスブロックの1クロック遅延された現在
の画素と、該遅延された画素が入力されるクロックと同
一のクロックに入力される垂直方向の半画素を演算して
当該画素の絶対エラーを出力する第2プロセッシングエ
レメントと、 前記リファレンスブロックの現在の画素と、該画素が入
力されるクロックと同一のクロックに入力される対角線
方向の半画素を演算して当該画素の絶対エラーを出力す
る第3プロセッシングエレメントと、 前記リファレンスブロックの現在の画素と、該画素が入
力されるクロックと同一のクロックに入力される垂直方
向の半画素を演算して当該画素の絶対エラーを出力する
第4プロセッシングエレメントと、 前記リファレンスブロックの現在の画素と、該画素が入
力されるクロックと同一のクロックに入力される水平方
向の半画素を演算して当該画素の絶対エラーを出力する
第5プロセッシングエレメントと、 前記リファレンスブロックの1垂直ライン遅延された画
素と、該垂直ライン遅延された画素が入力されるクロッ
クと同一のクロックに入力される対角線方向の半画素を
演算して当該画素の絶対エラーを出力する第6プロセッ
シングエレメントと、 前記リファレンスブロックの1垂直ライン遅延された画
素と、該垂直ライン遅延された画素が入力されるクロッ
クと同一のクロックに入力される水平方向の半画素を演
算して当該画素の絶対エラーを出力する第7プロセッシ
ングエレメントと、 前記リファレンスブロックの1垂直ラインに1クロック
がさらに遅延された画素と、該さらに遅延された画素が
入力されるクロックと同一のクロックに入力される対角
線方向の半画素を演算して当該画素の絶対エラーを出力
する第8プロセッシングエレメントとで構成されること
を特徴とする請求項7に記載の半画素動き推定装置。 - 【請求項11】 前記プロセッシングエレメントが、 前記リファレンスブロックの画素と前記補間器が出力す
る半画素を減算してエラーを出力する減算器と、前記エ
ラーを一時貯蔵するラッチと、前記ラッチされたエラー
の絶対値を求める絶対値の計算器とで構成されることを
特徴とする請求項10に記載の半画素動き推定装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960007973A KR100226684B1 (ko) | 1996-03-22 | 1996-03-22 | 반화소 움직임 추정장치 |
KR96-7973 | 1996-03-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH1013839A true JPH1013839A (ja) | 1998-01-16 |
Family
ID=19453750
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9069997A Pending JPH1013839A (ja) | 1996-03-22 | 1997-03-24 | 半画素動き推定装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US5936672A (ja) |
JP (1) | JPH1013839A (ja) |
KR (1) | KR100226684B1 (ja) |
CN (1) | CN1214646C (ja) |
GB (1) | GB2311435B (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003530780A (ja) * | 2000-04-11 | 2003-10-14 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | データサンプルと別のデータサンプルの補間との間の類似度を決定する方法 |
JP2010081634A (ja) * | 2002-12-20 | 2010-04-08 | Lsi Corp | 並列補間及びサーチ・ハードウェアを備えた運動評価エンジン |
CN116074533A (zh) * | 2023-04-06 | 2023-05-05 | 湖南国科微电子股份有限公司 | 运动矢量预测方法、系统、电子设备及存储介质 |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3631868B2 (ja) * | 1996-12-20 | 2005-03-23 | 株式会社東芝 | 動きベクトル検出装置および方法 |
US6041078A (en) * | 1997-03-25 | 2000-03-21 | Level One Communications, Inc. | Method for simplifying bit matched motion estimation |
US6067322A (en) * | 1997-06-04 | 2000-05-23 | Microsoft Corporation | Half pixel motion estimation in motion video signal encoding |
KR100549919B1 (ko) * | 2000-12-15 | 2006-02-06 | 주식회사 케이티 | 소요클럭사이클수 감축을 위한 초대규모 집적회로 장치 |
US20020172288A1 (en) * | 2001-03-08 | 2002-11-21 | Nyeongku Kwon | Device and method for performing half-pixel accuracy fast search in video coding |
KR100439183B1 (ko) * | 2001-08-29 | 2004-07-05 | 한국전자통신연구원 | 확률 샘플링 기반의 움직임 추정 방법 |
US6950469B2 (en) * | 2001-09-17 | 2005-09-27 | Nokia Corporation | Method for sub-pixel value interpolation |
KR100926440B1 (ko) * | 2002-06-26 | 2009-11-13 | 이문기 | 영상부호화를 위한 블록 매칭 움직임 추정 장치 |
US7302648B1 (en) | 2002-07-10 | 2007-11-27 | Apple Inc. | Method and apparatus for resizing buffered windows |
JP4724351B2 (ja) * | 2002-07-15 | 2011-07-13 | 三菱電機株式会社 | 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法、および通信装置 |
NO320114B1 (no) * | 2003-12-05 | 2005-10-24 | Tandberg Telecom As | Forbedret utregning av interpolerte pixelverdier |
JP2005354276A (ja) * | 2004-06-09 | 2005-12-22 | Seiko Epson Corp | 画像差分演算方法及びその装置、動き検出装置及び画像データ圧縮装置 |
US20050286777A1 (en) * | 2004-06-27 | 2005-12-29 | Roger Kumar | Encoding and decoding images |
US20060088104A1 (en) * | 2004-10-27 | 2006-04-27 | Stephen Molloy | Non-integer pixel sharing for video encoding |
CN100471275C (zh) * | 2006-09-08 | 2009-03-18 | 清华大学 | 用于h.264/avc编码器的运动估计方法 |
US8509567B2 (en) * | 2007-07-09 | 2013-08-13 | Analog Devices, Inc. | Half pixel interpolator for video motion estimation accelerator |
WO2011036625A2 (en) * | 2009-09-23 | 2011-03-31 | Ramot At Tel-Aviv University Ltd. | System, method and computer program product for motion detection |
KR101634141B1 (ko) * | 2009-11-18 | 2016-06-28 | 삼성전자주식회사 | 방향에 따른 참조블록을 이용한 영상 보간 방법 및 장치 |
CN109587485A (zh) * | 2018-10-26 | 2019-04-05 | 西安科锐盛创新科技有限公司 | 视频压缩编码方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4937666A (en) * | 1989-12-04 | 1990-06-26 | Bell Communications Research, Inc. | Circuit implementation of block matching algorithm with fractional precision |
JP2611591B2 (ja) * | 1991-10-31 | 1997-05-21 | 日本ビクター株式会社 | 動き補償装置 |
KR950014862B1 (ko) * | 1992-02-08 | 1995-12-16 | 삼성전자주식회사 | 움직임추정방법 및 그 장치 |
JP2636622B2 (ja) * | 1992-03-13 | 1997-07-30 | 松下電器産業株式会社 | ビデオ信号の符号化方法及び復号化方法ならびにビデオ信号の符号化装置及び復号化装置 |
US5461423A (en) * | 1992-05-29 | 1995-10-24 | Sony Corporation | Apparatus for generating a motion vector with half-pixel precision for use in compressing a digital motion picture signal |
JPH05336514A (ja) * | 1992-05-29 | 1993-12-17 | Sony Corp | 画像符号化装置 |
US5398079A (en) * | 1993-01-27 | 1995-03-14 | General Instrument Corporation | Half-pixel interpolation for a motion compensated digital video system |
KR0166724B1 (ko) * | 1993-05-08 | 1999-03-20 | 김광호 | 반화소정확도를 갖는 동벡터추정방법 및 그 장치 |
JP2636674B2 (ja) * | 1993-05-25 | 1997-07-30 | 日本電気株式会社 | 動画像の動きベクトル検出装置 |
KR960010198B1 (ko) * | 1993-07-21 | 1996-07-26 | 배순훈 | 동영상 부호화기의 움직임 추정방법 및 장치 |
KR0178231B1 (ko) * | 1995-08-10 | 1999-05-01 | 배순훈 | 계층적인 움직임 추정 기법을 이용하는 움직임 벡터 검출 방법 및 장치 |
US5510856A (en) * | 1994-12-30 | 1996-04-23 | Daewoo Electronics Co., Ltd. | Apparatus for determining motion vectors |
-
1996
- 1996-03-22 KR KR1019960007973A patent/KR100226684B1/ko not_active IP Right Cessation
-
1997
- 1997-03-21 US US08/821,914 patent/US5936672A/en not_active Expired - Lifetime
- 1997-03-21 GB GB9705879A patent/GB2311435B/en not_active Expired - Fee Related
- 1997-03-24 CN CNB971037078A patent/CN1214646C/zh not_active Expired - Fee Related
- 1997-03-24 JP JP9069997A patent/JPH1013839A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003530780A (ja) * | 2000-04-11 | 2003-10-14 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | データサンプルと別のデータサンプルの補間との間の類似度を決定する方法 |
JP2010081634A (ja) * | 2002-12-20 | 2010-04-08 | Lsi Corp | 並列補間及びサーチ・ハードウェアを備えた運動評価エンジン |
CN116074533A (zh) * | 2023-04-06 | 2023-05-05 | 湖南国科微电子股份有限公司 | 运动矢量预测方法、系统、电子设备及存储介质 |
CN116074533B (zh) * | 2023-04-06 | 2023-08-22 | 湖南国科微电子股份有限公司 | 运动矢量预测方法、系统、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
GB2311435A (en) | 1997-09-24 |
GB2311435B (en) | 2000-09-13 |
GB9705879D0 (en) | 1997-05-07 |
KR100226684B1 (ko) | 1999-10-15 |
CN1214646C (zh) | 2005-08-10 |
KR970068661A (ko) | 1997-10-13 |
CN1163542A (zh) | 1997-10-29 |
US5936672A (en) | 1999-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH1013839A (ja) | 半画素動き推定装置 | |
US6690730B2 (en) | Motion estimator | |
US4937666A (en) | Circuit implementation of block matching algorithm with fractional precision | |
US6285713B1 (en) | Video coding/decoding system and video coder and video decoder used for the same system | |
KR101578052B1 (ko) | 움직임 추정 장치 및 이를 구비하는 동영상 부호화 장치 | |
US5619268A (en) | Motion estimation method and apparatus for calculating a motion vector | |
JPS62213392A (ja) | フイ−ルド補間方法 | |
US5754237A (en) | Method for determining motion vectors using a hierarchical motion estimation | |
WO2007089068A1 (en) | Method and apparatus for block-based motion estimation | |
KR100732683B1 (ko) | 움직임 보상을 수행하는 영상변환장치 및 움직임 보상방법 | |
US5386248A (en) | Method and apparatus for reducing motion estimator hardware and data transmission capacity requirements in video systems | |
KR100364789B1 (ko) | 움직임 추정 방법 및 장치 | |
KR20040049214A (ko) | 고속 모션벡터 추정장치 및 방법 | |
JP2006059341A (ja) | 差分絶対値の和を計算するための回路 | |
EP1420595B1 (en) | Motion vector selection in a video motion estimator based on a preferred reference point | |
JP3890638B2 (ja) | 画像情報変換装置および方法 | |
US5706055A (en) | Motion compensated predictive picture production apparatus | |
JP2768644B2 (ja) | 動きベクトル探索方法および探索装置 | |
JP3580612B2 (ja) | 動画像符号化装置の動き検出装置 | |
JP3826434B2 (ja) | 信号変換装置および方法 | |
JPH04227184A (ja) | 動きベクトル評価装置 | |
JP2768647B2 (ja) | 動きベクトル探索方法および探索装置 | |
JP2934134B2 (ja) | 動画像圧縮におけるブロック・マッチング方法と装置 | |
JP3767019B2 (ja) | 積和演算回路および方法 | |
JP2968233B2 (ja) | 動きベクトル探索方法および探索装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040303 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060630 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20061128 |