JP4178562B2 - 動きベクトル検出装置および方法 - Google Patents
動きベクトル検出装置および方法 Download PDFInfo
- Publication number
- JP4178562B2 JP4178562B2 JP13195397A JP13195397A JP4178562B2 JP 4178562 B2 JP4178562 B2 JP 4178562B2 JP 13195397 A JP13195397 A JP 13195397A JP 13195397 A JP13195397 A JP 13195397A JP 4178562 B2 JP4178562 B2 JP 4178562B2
- Authority
- JP
- Japan
- Prior art keywords
- pixel data
- stored
- search range
- search
- columns
- 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
Links
- 230000033001 locomotion Effects 0.000 title claims description 59
- 238000001514 detection method Methods 0.000 title claims description 41
- 238000000034 method Methods 0.000 title description 5
- 230000015654 memory Effects 0.000 claims description 77
- 238000004364 calculation method Methods 0.000 claims description 49
- 238000010586 diagram Methods 0.000 description 15
- 238000013139 quantization Methods 0.000 description 14
- 238000007906 compression Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
Images
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/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
- H04N19/433—Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【発明の属する技術分野】
本発明は、動きベクトル検出装置および方法に関し、特に、より少ない消費電力で動きベクトルを検出することができるようにした、動きベクトル検出装置および方法に関する。
【0002】
【従来の技術】
例えば、MPEG(Moving Picture Experts Group)においては、動きベクトルを検出し、それを利用して動画像データを圧縮するようにしている。従って、この圧縮処理を行うには、動きベクトルを検出する必要がある。
【0003】
図15は、従来の動きベクトル検出装置の例を表している。この構成は、信学技報ICD93−80(1993−08)、第61頁乃至第68頁に、「CCIR601対応のハーフペル精度動きベクトル検出LSI」として開示されているものである。
【0004】
この例においては、入力回路から演算部71にサーチウインドウデータ(サーチ範囲のデータ)が供給される。このサーチ範囲の画素データは、基準ブロック(リファレンスブロック)の幅で、1画素行分づつ、サイドレジスタ81から処理要素(PE)82にシフトされる。各処理要素82は1サーチブロック分の画素データを保持する。また、各処理要素82には、動きベクトルを検出する基準ブロックのデータ(テンプレートデータ)が予め常駐されている。処理要素82は、常駐されている基準ブロックの画素データと、保持しているサーチブロックの画素データとの差分を検出し、その検出結果を総和回路72に出力する。縦続接続されている処理要素82は、クロックに同期してサーチブロック(基準ブロック)の幅の1行分の画素データを、順次、後段の処理要素82に転送する。各段の処理要素82は、同様の処理を行う。そして、新たな1行分の画素データが入力されてきたとき、再び、基準ブロックの画素データとサーチブロックの画素データの差を演算し、演算結果を総和回路72に出力する。
【0005】
総和回路72は、基準ブロックの画素とサーチブロックの画素の差の絶対値の和を、サーチブロック毎に演算する。そして、演算結果を最小値検出回路73に出力する。
【0006】
最小値検出回路73は、総和回路72の出力が最小となるタイミングのサーチブロックのサーチウインドウ内の位置を検出する。そして、検出結果を動きベクトルとして出力する。
【0007】
【発明が解決しようとする課題】
このように、従来の動きベクトル検出装置においては、画素データを順次後段の処理要素に転送し、パイプライン的な処理を行うようにしているので、1クロック毎に大部分の処理要素においてデータが書き換えられる結果、電流が流れ、消費電力が大きくなる課題があった。
【0008】
本発明はこのような状況に鑑みてなされたものであり、サーチデータを水平または垂直方向にインタリーブした形態で保存するようにし、もって、サーチデータの移動が少なくなるようにし、消費電力を抑制するようにするものである。
【0009】
【課題を解決するための手段】
請求項1に記載の動きベクトル検出装置は、サーチ範囲の画素データのうち、トップフィールドの画素データであって、水平または垂直方向の奇数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第1の記憶手段と、サーチ範囲の画素データのうち、トップフィールドの画素データであって、水平または垂直方向の偶数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第2の記憶手段と、サーチ範囲の画素データのうち、ボトムフィールドの画素データであって、水平または垂直方向の奇数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第3の記憶手段と、サーチ範囲の画素データのうち、ボトムフィールドの画素データであって、水平または垂直方向の偶数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第4の記憶手段と、基準ブロックの画素データのうち、インターリーブした位置の画素データを記憶する第5の記憶手段と、第1乃至第4の記憶手段に記憶された画素データのうち、第5の記憶手段に記憶された画素データに対応する位置のサーチブロックの画素データを選択する選択手段と、選択手段により選択されたサーチブロックの画素データと、第5の記憶手段に記憶されている基準ブロックのインターリーブした位置の画素データの差を演算する第1の演算手段と、サーチブロック毎に、第1の演算手段の演算結果の和を演算する第2の演算手段と、第2の演算手段の演算結果の最小値に対応するサーチブロックを検出する検出手段とを備え、第1乃至第4の記憶手段に記憶された画素データのうち、選択手段で選択されていない記憶手段の画素データは、将来的に必要になる新たな画素データに上書きされることを特徴とする。
【0010】
請求項2に記載の動きベクトル検出方法は、サーチ範囲の画素データのうち、トップフィールドの画素データであって、水平または垂直方向の奇数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第1の記憶ステップと、サーチ範囲の画素データのうち、トップフィールドの画素データであって、水平または垂直方向の偶数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第2の記憶ステップと、サーチ範囲の画素データのうち、ボトムフィールドの画素データであって、水平または垂直方向の奇数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第3の記憶ステップと、サーチ範囲の画素データのうち、ボトムフィールドの画素データであって、水平または垂直方向の偶数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第4の記憶ステップと、基準ブロックの画素データのうち、インターリーブした位置の画素データを記憶する第5の記憶ステップと、第1乃至第4の記憶ステップで記憶された画素データのうち、第5の記憶ステップで記憶された画素データに対応する位置のサーチブロックの画素データを選択する選択ステップと、選択ステップで選択されたサーチブロックの画素データと、第5の記憶ステップで記憶されている基準ブロックのインターリーブした位置の画素データの差を演算する第1の演算ステップと、サーチブロック毎に、第1の演算ステップの演算結果の和を演算する第2の演算ステップと、第2の演算ステップの演算結果の最小値に対応するサーチブロックを検出する検出ステップとを含み、第1乃至第4の記憶ステップで記憶された画素データのうち、選択ステップで選択されていない前記画素データは、将来的に必要になる新たな画素データに上書きされることを特徴とする。
【0011】
請求項1に記載の動きベクトル検出装置においては、第1の記憶手段が、水平または垂直方向の奇数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶し、第2の記憶手段が、サーチ範囲の画素データのうち、トップフィールドの画素データであって、水平または垂直方向の偶数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶し、第3の記憶手段が、サーチ範囲の画素データのうち、ボトムフィールドの画素データであって、水平または垂直方向の奇数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶し、第4の記憶手段が、サーチ範囲の画素データのうち、ボトムフィールドの画素データであって、水平または垂直方向の偶数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶し、第5の記憶手段が、基準ブロックの画素データのうち、インターリーブした位置の画素データを記憶し、選択手段が、第1乃至第4の記憶手段に記憶された画素データのうち、第5の記憶手段に記憶された画素データに対応する位置のサーチブロックの画素データを選択し、第1の演算手段が、選択手段により選択されたサーチブロックの画素データと、第5の記憶手段に記憶されている基準ブロックのインターリーブした位置の画素データの差を演算し、第2の演算手段が、サーチブロック毎に、第1の演算手段の演算結果の和を演算し、検出手段が、第2の演算手段の演算結果の最小値に対応するサーチブロックを検出する。また、第1乃至第4の記憶手段に記憶された画素データのうち、選択手段で選択されていない記憶手段の画素データは、将来的に必要になる新たな画素データに上書きされる。
【0012】
請求項2に記載の動きベクトル検出方法においては、第1の記憶ステップが、サーチ範囲の画素データのうち、トップフィールドの画素データであって、水平または垂直方向の奇数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶し、第2の記憶ステップが、サーチ範囲の画素データのうち、トップフィールドの画素データであって、水平または垂直方向の偶数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶し、第3の記憶ステップが、サーチ範囲の画素データのうち、ボトムフィールドの画素データであって、水平または垂直方向の奇数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶し、第4の記憶ステップが、サーチ範囲の画素データのうち、ボトムフィールドの画素データであって、水平または垂直方向の偶数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶し、第5の記憶ステップが、基準ブロックの画素データのうち、インターリーブした位置の画素データを記憶し、選択ステップが、第1乃至第4の記憶ステップで記憶された画素データのうち、第5の記憶ステップで記憶された画素データに対応する位置のサーチブロックの画素データを選択し、第1の演算ステップが、選択ステップで選択されたサーチブロックの画素データと、第5の記憶ステップで記憶されている基準ブロックのインターリーブした位置の画素データの差を演算し、第2の演算ステップが、サーチブロック毎に、第1の演算ステップの演算結果の和を演算し、検出ステップが、第2の演算ステップの演算結果の最小値に対応するサーチブロックを検出する。また、第1乃至第4の記憶ステップで記憶された画素データのうち、選択ステップで選択されていない画素データは、将来的に必要になる新たな画素データに上書きされる。
【0013】
【発明の実施の形態】
以下に本発明の実施の形態を説明するが、特許請求の範囲に記載の発明の各手段と以下の実施の形態との対応関係を明らかにするために、各手段の後の括弧内に、対応する実施の形態(但し一例)を付加して本発明の特徴を記述すると、次のようになる。但し勿論この記載は、各手段を記載したものに限定することを意味するものではない。
【0014】
請求項1に記載の動きベクトル検出装置は、サーチ範囲の画素データのうち、トップフィールドの画素データであって、水平または垂直方向の奇数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第1の記憶手段(例えば、図2のメモリ41)と、サーチ範囲の画素データのうち、トップフィールドの画素データであって、水平または垂直方向の偶数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第2の記憶手段(例えば、図2のメモリ42)と、サーチ範囲の画素データのうち、ボトムフィールドの画素データであって、水平または垂直方向の奇数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第3の記憶手段(例えば、図2のメモリ43)と、サーチ範囲の画素データのうち、ボトムフィールドの画素データであって、水平または垂直方向の偶数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第4の記憶手段(例えば、図2のメモリ44)と、基準ブロックの画素データのうち、インターリーブした位置の画素データを記憶する第5の記憶手段(例えば、図2のメモリ31)と、第1乃至第4の記憶手段に記憶された画素データのうち、第5の記憶手段に記憶された画素データに対応する位置のサーチブロックの画素データを選択する選択手段(例えば、図2のセレクタ45)と、選択手段により選択されたサーチブロックの画素データと、第5の記憶手段に記憶されている基準ブロックのインターリーブした位置の画素データの差を演算する第1の演算手段(例えば、図2の減算器46乃至53)と、サーチブロック毎に、第1の演算手段の演算結果の和を演算する第2の演算手段(例えば、図2の加算器54,55)と、第2の演算手段の演算結果の最小値に対応するサーチブロックを検出する検出手段(例えば、図2の最小値検出回路35)とを備え、第1乃至第4の記憶手段に記憶された画素データのうち、選択手段で選択されていない記憶手段の画素データは、将来的に必要になる新たな画素データに上書きされることを特徴とする。
【0015】
図1は、本発明の動きベクトル検出装置を応用した、画像圧縮装置の構成例を表している。画像データは、減算器1に入力され、動き補償回路10より供給された予測画像データとの差分が演算され、その演算結果が、DCT回路3に供給されている。DCT回路3は、入力されたデータをDCT(Discret Cosine Transform)変換して、量子化回路4に出力する。量子化回路4は、入力されたDCT係数を量子化して、VLC回路5と逆量子化回路6に出力するようになされている。VLC回路5は、量子化回路4より入力された量子化データをVLC(Variable Length Code)(可変長符号)に変換し、図示せぬ伝送路に伝送する。
【0016】
逆量子化回路6は、量子化回路4より入力された量子化データを逆量子化し、逆DCT回路7に出力している。逆DCT回路7は、逆量子化回路6より入力されたデータを逆DCT処理して、加算器8に出力する。加算器8は、動き補償回路10より入力された予測画像データと、逆DCT回路7より供給されデータ(差分データ)とを加算し、もとの画像データに戻して、フレームメモリ9に供給し、記憶させるようになされている。
【0017】
フレームメモリ9より読み出された画像データは、動き補償回路10で動き補償された後、減算器1と加算器8に予測画像データとして供給される。
【0018】
一方、入力された画像データは、フレームメモリ2に供給され記憶されるとともに、そこから適宜読み出され、動き検出回路11に供給され、動きベクトルが検出される。検出された動きベクトルは、動き補償回路10に供給されるようになされている。
【0019】
次に、その動作について説明する。入力された画像データは、減算器1に供給される。減算器1には、フレームメモリ9から読み出され、動き補償回路10で動きベクトルに対応して動き補償された予測画像データが供給されたおり、減算器1は、入力された画像データから、この予測画像データを減算して、その差分データをDCT回路3に出力する。DCT回路3は、入力された差分データをDCT変換し、量子化回路4に出力する。量子化回路4は、入力されたDCT係数を量子化し、VLC回路5に供給する。VLC回路5は、入力された量子化データを可変長符号に変換し、出力する。
【0020】
逆量子化回路6は、量子化回路4が出力した量子化データを極所的に復号するために、逆量子化して、逆DCT回路7に出力する。逆DCT回路7は、入力された量子化データを逆DCT処理し、もとの差分データに戻して、加算器8に出力する。加算器8にはまた、動き補償回路10より出力された予測画像データが供給されており、この予測画像データに、逆DCT回路7より出力された差分データが加算され、もとの画像データに戻された後、フレームメモリ9に供給され、記憶される。
【0021】
動き検出回路11は、フレームメモリ2に記憶された所定のフィールドの画像データを適宜読み出し、動きベクトルを検出し、検出した動きベクトルを動き補償回路10に出力する。動き補償回路10は、この動きベクトルに対応して、フレームメモリ9より読み出された画像データに動き補償を施し、予測画像データを生成し、減算器1と加算器8に出力する。
【0022】
図2は、動き検出回路11の構成例を表している。メモリ41乃至44には、動きベクトルを検出するサーチ範囲の画素データが供給され、記憶されるようになされている。この実施の形態の場合、サーチ範囲は、図3に示すように、8×8個の画素で構成されている。メモリ41乃至44には、図3に示す、8×8個の画素データのうち、所定の8個の画素データが適宜記憶されるようになされている。
【0023】
動きベクトルを検出するために、このサーチ範囲の所定のサーチブロックの画素データと、基準ブロックの画素データとが比較される。この基準ブロックは、図4に示すように、4×4個の画素で構成され、メモリ31に供給され、記憶される。従って、サーチブロックも、4×4個の画素で構成される。
【0024】
なお、図3と図4は、トップフィールドとボトムフィールドで構成される1フレーム分の画素データの一部を表しており、tで表す画素データは、トップフィールドの画素データを表し、bで表す画素データは、ボトムフィールドの画素データを表している。
【0025】
この実施の形態の場合、2対1サブサンプル方式で、動きベクトルが検出される。従って、4×4個の画素で構成される基準ブロックの画素データのうち、動きベクトル検出に、実際に使用される画素データは、その1/2の8個の画素データとなる。そして、この実施の形態の場合、4×4個の画素データのうち、図4に示すように、インタリーブされた画素データが、動きベクトル検出のための画素データとして利用される。図4の例においては、垂直方向の1列おきの画素データ(図中、黒色で示す画素データ)が利用される。すなわち、左側から第1列目の画素データt(0,0),b(0,0),t(1,0),b(1,0)と、第3列目の画素データt(0,2),b(0,2),t(1,2),b(1,2)である。
【0026】
これに対して、例えば、図5に示すように、4×4個の画素のうち、各列の上半分、または下半分の画素を交互に抽出し、利用することも理論的には可能である。しかしながら、このような抽出を行うと、インタリーブした関係にはならず、本願発明の特徴である、画素データの移動を軽減する効果を発揮することができなくなる。そこで、図4に示すように、インタリーブした位置の画素データを、リファレンスデータとして用いる。
【0027】
なお、メモリ31には、基準ブロックの4×4個の全ての画素データを記憶させるようにすることも可能であるが、実際に使用されるのは、そのうちの8個の画素データだけであるから、その8個の画素データだけを記憶させるようにすることも可能である。
【0028】
図2に戻って、セレクタ45は、メモリ41乃至メモリ44から、それぞれ4個の画素データを読み出し、減算器46乃至53のいずれかに供給するようになされている。減算器46乃至53にはまた、メモリ31から基準ブロックの8個の画素データのうちの1つの画素データが適宜選択され、供給されている。減算器46乃至53は、セレクタ45から入力された画素データと、メモリ31から入力された画素データとを減算し、その差の絶対値を演算する。減算器46乃至49の出力は、加算器54に供給され、加算されるようになされている。また、減算器50乃至53の出力は、加算器55に入力され、加算されるようになされている。加算器54の出力と、加算器55の出力は、加算器34に入力され、さらに加算されるようになされている。そして、加算器54、加算器55、および加算器34の出力は、最小値検出回路35に入力されている。最小値検出回路35は、入力されたデータの中から最小のデータのサーチブロックを求め、そのサーチブロックに対応する残差(動きベクトル)を出力するようになされている。
【0029】
メモリ41,42、減算器46乃至49、加算器54、並びにセレクタ45で構成される演算回路32は、トップフィールドの画素データの処理を行う演算回路を構成し、メモリ43,44、セレクタ45、減算器50乃至53、加算器55で構成される演算回路33は、ボトムフィールドの画素データの演算を行うようになされている。
【0030】
次に、その動作について説明する。図3に示すように、この実施の形態の場合、8×8個のサーチ範囲のデータのうち、左上の4×4個の画素が最初にサーチブロックとして抽出される。そして、サーチブロックの4×4個の画素データのうち、メモリ31に記憶されている8個の画素に対応する8個の画素データと、メモリ31に記憶されている8個の画素データとの差が演算される。そして、各画素の絶対値の和が、そのサーチブロックの残差とされる。
【0031】
次に、このサーチブロックが、1画素分だけ下側に移動される。すなわち、図3において、破線で示すブロックから、実線で示すブロックに、サーチブロックが変更される。このサーチブロックにおいても、同様に残差が演算される。そして、サーチブロックが、サーチ範囲内の最も下方まで移動したとき、次に、サーチブロックは、一番上まで移動されるとともに、1画素分だけ右側に移動される。以下同様の処理が繰り返される。そして、各サーチブロックの残差のうち、最小の残差を示すサーチブロックのサーチ範囲内の位置を示すデータが、動きベクトルとされる。
【0032】
このような処理を行うために、最初に、図示せぬメモリから、サーチ範囲のデータとして、メモリ41に、図3における画素データt0乃至t3、並びに、画素データt8乃至t11が供給され、記憶される。すなわち、図6に黒色で示す画素データがメモリ41に記憶される。
【0033】
同様にして、メモリ42には、図7に示すように、画素データt4乃至t7、並びに画素データt12乃至t15が保持される。メモリ43には、図8に示すように、画素データb0乃至b3、並びに、画素データb8乃至b11が保持される。さらに、メモリ44には、図9に示すように、画素データb4乃至b7、並びに画素データb12乃至b15が保持される。
【0034】
セレクタ45は、メモリ41乃至44に記憶されている画素データを、図10に示すように、各時刻Tiにおいて、減算器46乃至53に供給する。
【0035】
すなわち、時刻T0においては、メモリ41に記憶されている画素データt0乃至t3、並びにt8乃至t11のうち、画素データt0,t1,t8,t9を選択し、それぞれを、減算器46乃至49に供給する。減算器46乃至49には、メモリ31から、図4に示す画素データt(0,0),t(1,0),t(0,2),t(1,2)が、それぞれ供給されている。従って、減算器46は、画素データt(0,0)と画素データt0の差(t(0,0)−t0)の絶対値(abs(t(0,0)−t0))を演算する。同様に、減算器47では、abs(t(1,0)−t1)が、減算器48では、abs(t(0,2)−t8)が、減算器49では、abs(t(1,2)−t9)が、それぞれ演算される。
【0036】
加算器54は、減算器46乃至49の出力を加算する。すなわち、次式を演算する。
abs(t(0,0)−t0)+abs(t(1,0)−t1)+abs(t(0,2)−t8)+abs(t(1,2)−t9)
【0037】
一方、減算器50乃至53には、メモリ43に記憶されている画素データb0乃至b3、並びに画素データb8乃至b11のうち、画素データb0,b1,b8,b9が、それぞれセレクタ45により選択され、減算器50乃至53に供給される。この減算器50乃至53には、メモリ31に記憶されている画素データのうち、画素データb0,b1,b8,b9が供給されている。従って、減算器50乃至53は、abs(b(0,0)−b0),abs(b(1,0)−b1),abs(b(0,2)−b8),abs(b(1,2)−b9)を、それぞれ演算する。加算器55は、減算器50乃至53の演算結果を次のように加算する。
abs(b(0,0)−b0)+abs(b(1,0)−b1)+abs(b(0,2)−b8)+abs(b(1,2)−b9)
【0038】
加算器54の出力は、メモリ31に記憶されているトップフィールドの画素データと、メモリ41に記憶されているトップフィールドの画素データとの差のデータDttであり、加算器55の出力は、メモリ31に記憶されているボトムフィールドの画素データと、メモリ43に記憶されているボトムフィールドの画素データとの差のデータDbbである。従って、フレーム予測の残差は、加算器34で、加算器54の出力と加算器55の出力を加算して、データDfrとして求められる。
【0039】
最小値検出回路35は、加算器54、加算器55、および加算器34の出力から、最小の残差を求める。
【0040】
次に、時刻T1においては、セレクタ45は、メモリ43に記憶されている画素データb0,b1,b8,b9を、それぞれ減算器46乃至49に供給する。また、メモリ41に記憶されている画素データt1,t2,t9,t10が読み出され、それぞれ減算器50乃至53に供給される。減算器46乃至53には、メモリ31から時刻T0における場合と同一の画素データが供給されている。従って、減算器46乃至49では、abs(t(0,0)−b0),abs(t(1,0)−b1),abs(t(0,2)−b8),abs(t(1,2)−b9)が演算され、減算器50乃至53では、abs(b(0,0)−t1),abs(b(1,0)−t2),abs(b(0,2)−t9),abs(b(1,2)−t10)が演算される。
【0041】
従って、加算器54は、次式を演算する。
abs(t(0,0)−b0)+abs(t(1,0)−b1)+abs(t(0,2)−b8)+abs(t(1,2)−b9)
【0042】
また、加算器55では次式が演算される。
abs(b(0,0)−t1)+abs(b(1,0)−t2)+abs(b(0,2)−t9)+abs(b(1,2)−t10)
【0043】
加算器34は、加算器54の出力と加算器55の出力を加算する。最小値検出回路35は、加算器54、加算器55および加算器34の出力の最小値を演算する。そして、さらに時刻T0で求めた最小値と比較し、より小さい方を最小値として求める。
【0044】
以上のような処理が、時刻T2,T3,T4において、順次繰り返される。時刻T4においての演算結果が完了したとき、サーチブロックが、図3において左上の位置から、順次1画素分ずつ下方に移動し、最も下側まで移動したことになる。
【0045】
次に、時刻T5において、セレクタ45は、メモリ42に記憶されている画素データt4乃至t7、並びに画素データt12乃至t15のうち、画素データt4,t5,t12,t13を、それぞれ減算器46乃至49に供給し、メモリ44に記憶されている画素データb4乃至b7、並びに画素データb12乃至b15のうち、画素データb4,b5,b12,b13を、それぞれ減算器50乃至53に供給する。従って、減算器46は、abs(t(0,0)−t4)を演算し、減算器47は、abs(t(1,0)−t5)を演算し、減算器48は、abs(t(0,2)−t12)を演算し、減算器49は、abs(t(1,2)−t13)を演算する。また、減算器50は、abs(b(0,0)−b4)を演算し、減算器51は、abs(b(1,0)−b5)を演算し、減算器52は、abs(b(0,2)−b12)を演算し、減算器53は、abs(b(1,2)−b13)を演算する。
【0046】
加算器54は、減算器46乃至49の出力を加算し、加算器55は、減算器50乃至53の出力を加算する。また、加算器34は、加算器54と加算器55の出力を加算する。そして、最小値検出回路35は、加算器54、加算器55、および加算器34の出力のうち最小値を求め、既に求められている最小値を比較し、より小さい方を最小値として残す演算を行う。
【0047】
すなわち、これにより、図3に破線で示したサーチブロックを1画素分だけ右側に移動した位置のサーチブロックの残差が求められたことになる。
【0048】
以下同様にして、図10に示すように、セレクタ45が、メモリ41乃至44に記憶されている画素データを適宜選択して、減算器46乃至53に供給し、演算が行われる。
【0049】
なお、時刻T0乃至T4のタイミングにおいては、メモリ41とメモリ43が使用されているが、時刻T5乃至T9のタイミングにおいては、メモリ42とメモリ44が使用される。そこで、この間に、将来的に必要になる画素データが書き込まれる。すなわち、メモリ41には、図11に示すように、それまで書き込まれていた画素データt0,t1,t2,t3の上に、新たな画素データt16,t17,t18,t19が上書きされる。その結果、メモリ41には、画素データt8乃至t11、並びに画素データt16乃至t19が記憶される。
【0050】
同様に、メモリ43においては、図12に示すように、それまでの画素データb0乃至b3の上に、新たな画素データb16乃至b19が上書きされ、結局、メモリ43には、画素データb8乃至b11、並びに画素データb16乃至b19が記憶される。
【0051】
以下同様に、時刻T10乃至T14のタイミングにおいては、メモリ41とメモリ43が使用され、メモリ42とメモリ44は使用されないので、メモリ42とメモリ44には、新たなデータが書き込まれる。すなわち、図13に示すように、メモリ42には、それまでの画素データt4乃至t7の上に、新たな画素データt20乃至t23が上書きされる。その結果、メモリ42には、画素データt12乃至t15と、画素データt20乃至t23が記憶される。
【0052】
同様に、メモリ44には、図14に示すように、それまで記憶されていた画素データb4乃至b7の上に、新たな画素データb20乃至b23が上書きされる。その結果、メモリ44には、画素データb12乃至b15、並びに画素データb20乃至b23が記憶される。
【0053】
以上のようにして、図3に示す8×8画素で構成されるサーチ範囲の中でサーチブロックを移動させ、各移動位置における画素データと、メモリ31に記憶されている基準ブロックの画素データとの残差が求められる。そして、サーチ範囲内において、最小の残差が得られるサーチブロックのサーチ範囲内の位置が、動きベクトルとして、最小値検出回路35から出力される。
【0054】
例えば、図3において、破線で示すサーチブロックに対応する動きベクトルMV(mvx,mvy)は、(−2,−2)となる。図3において、実線で示す位置のサーチ範囲の動きベクトルは、(−2,−1)となる。時刻T4のサーチブロックに対応する動きベクトルは、(−2,+2)となり、時刻T5のサーチ範囲の動きベクトルは、(−1,−2)となる。
【0055】
なお、減算器46乃至53においては、差の絶対値を求めるようにしたが、差の自乗和を求めるようにしてもよい。
【0056】
また、上記実施の形態においては、画素列を水平方向にインタリーブするようにしたが、垂直方向にインタリーブするようにすることも可能である。
【0057】
このように、サーチする画素列をインタリーブすることにより、サーチを行っている間に、サーチに使用しない列の画素データを更新することが可能となり、また、サーチデータのパイプライン的な移動を行わなくてもすむようになる。その結果、画素データの転送にともなう電流の流れを減少させ、消費電力を削減することが可能となる。
【0058】
【発明の効果】
以上の如く、請求項1に記載の動きベクトル検出装置および請求項2に記載の動きベクトル検出方法によれば、基準ブロックの画素データのうち、インタリーブした位置の画素データを用いて演算を行うようにしたので、サーチデータのパイプライン的な移動を防止し、消費電力を抑制することが可能となる。
【図面の簡単な説明】
【図1】本発明を適用した画像圧縮装置の構成例を示すブロック図である。
【図2】図1の動き検出回路11の構成例を示すブロック図である。
【図3】サーチ範囲を説明する図である。
【図4】基準ブロックの構成を説明する図である。
【図5】基準ブロックの他の構成を説明する図である。
【図6】図2のメモリ41に記憶される画素データを説明する図である。
【図7】図2のメモリ42に記憶される画素データを説明する図である。
【図8】図2のメモリ43に記憶される画素データを説明する図である。
【図9】図2のメモリ44に記憶される画素データを説明する図である。
【図10】図2の構成例における画素データの転送を説明する図である。
【図11】図2のメモリ41における画素データの更新を説明する図である。
【図12】図2のメモリ43における画素データの更新を説明する図である。
【図13】図2のメモリ42における画素データの更新を説明する図である。
【図14】図2のメモリ44における画素データの更新を説明する図である。
【図15】従来の動きベクトル検出回路の構成例を示すブロック図である。
【符号の説明】
1 減算器, 3 DCT回路, 4 量子化回路, 5 VLC回路, 6逆量子化回路, 7 逆DCT回路, 8 加算器, 9 フレームメモリ,10 動き補償回路, 11 動き検出回路, 31 メモリ, 32,33演算回路, 34 加算器, 35 最小値検出回路, 41乃至44 メモリ, 45 セレクタ, 46乃至53 減算器, 54,55 加算器
Claims (2)
- サーチ範囲の画素データのうち、トップフィールドの画素データであって、水平または垂直方向の奇数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第1の記憶手段と、
サーチ範囲の画素データのうち、トップフィールドの画素データであって、水平または垂直方向の偶数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第2の記憶手段と、
サーチ範囲の画素データのうち、ボトムフィールドの画素データであって、水平または垂直方向の奇数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第3の記憶手段と、
サーチ範囲の画素データのうち、ボトムフィールドの画素データであって、水平または垂直方向の偶数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第4の記憶手段と、
基準ブロックの画素データのうち、インターリーブした位置の画素データを記憶する第5の記憶手段と、
前記第1乃至第4の記憶手段に記憶された画素データのうち、前記第5の記憶手段に記憶された画素データに対応する位置のサーチブロックの画素データを選択する選択手段と、
前記選択手段により選択されたサーチブロックの画素データと、前記第5の記憶手段に記憶されている基準ブロックのインターリーブした位置の画素データの差を演算する第1の演算手段と、
前記サーチブロック毎に、前記第1の演算手段の演算結果の和を演算する第2の演算手段と、
前記第2の演算手段の演算結果の最小値に対応するサーチブロックを検出する検出手段とを備え、
前記第1乃至第4の記憶手段に記憶された画素データのうち、前記選択手段で選択されていない前記記憶手段の画素データは、将来的に必要になる新たな画素データに上書きされる
ことを特徴とする動きベクトル検出装置。 - サーチ範囲の画素データのうち、トップフィールドの画素データであって、水平または垂直方向の奇数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第1の記憶ステップと、
サーチ範囲の画素データのうち、トップフィールドの画素データであって、水平または垂直方向の偶数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第2の記憶ステップと、
サーチ範囲の画素データのうち、ボトムフィールドの画素データであって、水平または垂直方向の奇数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第3の記憶ステップと、
サーチ範囲の画素データのうち、ボトムフィールドの画素データであって、水平または垂直方向の偶数番目の、前記サーチ範囲に含まれる画素の列の1/4の数の列の画素データを記憶する第4の記憶ステップと、
基準ブロックの画素データのうち、インターリーブした位置の画素データを記憶する第5の記憶ステップと、
前記第1乃至第4の記憶ステップで記憶された画素データのうち、前記第5の記憶ステップで記憶された画素データに対応する位置のサーチブロックの画素データを選択する選択ステップと、
前記選択ステップで選択されたサーチブロックの画素データと、前記第5の記憶ステップで記憶されている基準ブロックのインターリーブした位置の画素データの差を演算する第1の演算ステップと、
前記サーチブロック毎に、前記第1の演算ステップの演算結果の和を演算する第2の演算ステップと、
前記第2の演算ステップの演算結果の最小値に対応するサーチブロックを検出する検出ステップとを含み、
前記第1乃至第4の記憶ステップで記憶された画素データのうち、前記選択ステップで選択されていない前記画素データは、将来的に必要になる新たな画素データに上書きされる
ことを特徴とする動きベクトル検出方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13195397A JP4178562B2 (ja) | 1997-05-22 | 1997-05-22 | 動きベクトル検出装置および方法 |
US09/082,230 US6219455B1 (en) | 1997-05-22 | 1998-05-20 | Method and apparatus for detecting motion vectors |
KR10-1998-0018439A KR100506961B1 (ko) | 1997-05-22 | 1998-05-22 | 움직임벡터검출장치및방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13195397A JP4178562B2 (ja) | 1997-05-22 | 1997-05-22 | 動きベクトル検出装置および方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10327414A JPH10327414A (ja) | 1998-12-08 |
JP4178562B2 true JP4178562B2 (ja) | 2008-11-12 |
Family
ID=15070078
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP13195397A Expired - Fee Related JP4178562B2 (ja) | 1997-05-22 | 1997-05-22 | 動きベクトル検出装置および方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US6219455B1 (ja) |
JP (1) | JP4178562B2 (ja) |
KR (1) | KR100506961B1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4419062B2 (ja) * | 2004-03-29 | 2010-02-24 | ソニー株式会社 | 画像処理装置および方法、記録媒体、並びにプログラム |
US8265461B2 (en) * | 2005-04-13 | 2012-09-11 | Mediatek Inc. | Method of scaling subpicture data and related apparatus |
US7526186B2 (en) * | 2005-04-13 | 2009-04-28 | Mediatek Incorporation | Method of scaling subpicture data and related apparatus |
JP4553837B2 (ja) * | 2005-12-26 | 2010-09-29 | 三洋電機株式会社 | 復号装置 |
KR100761833B1 (ko) * | 2006-01-13 | 2007-09-28 | 삼성전자주식회사 | 화면의 라인들을 픽셀 단위로 교대로 저장하는 비디오디코딩 장치, 비디오 디코딩 방법 및 기준화면 저장 방법 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4462024A (en) * | 1981-03-24 | 1984-07-24 | Rca Corporation | Memory scanning address generator |
US4603350A (en) * | 1984-12-21 | 1986-07-29 | Rca Corporation | Interlaced digital video input filter/decimator and/or expander/interpolator filter |
USRE35093E (en) * | 1990-12-03 | 1995-11-21 | The Trustees Of Columbia University In The City Of New York | Systems and methods for coding even fields of interlaced video sequences |
US5193004A (en) * | 1990-12-03 | 1993-03-09 | The Trustees Of Columbia University In The City Of New York | Systems and methods for coding even fields of interlaced video sequences |
-
1997
- 1997-05-22 JP JP13195397A patent/JP4178562B2/ja not_active Expired - Fee Related
-
1998
- 1998-05-20 US US09/082,230 patent/US6219455B1/en not_active Expired - Fee Related
- 1998-05-22 KR KR10-1998-0018439A patent/KR100506961B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
JPH10327414A (ja) | 1998-12-08 |
KR100506961B1 (ko) | 2005-11-21 |
KR19980087272A (ko) | 1998-12-05 |
US6219455B1 (en) | 2001-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3863376B2 (ja) | 動き推定器 | |
EP0976251B1 (en) | Method and arrangement for video coding | |
JP3611507B2 (ja) | 動きベクトル検出装置 | |
US7408988B2 (en) | Motion estimation engine with parallel interpolation and search hardware | |
EP0679034B1 (en) | Apparatus and method for detecting motion vectors | |
JPH0787495A (ja) | 動きベクトル検出装置および方法 | |
US8135224B2 (en) | Generating image data | |
KR20010052630A (ko) | 동작 추정 | |
JP4178562B2 (ja) | 動きベクトル検出装置および方法 | |
JPH04314290A (ja) | 動きベクトル検出装置 | |
US6671318B2 (en) | Determining the degree of resemblance between a data sample and interpolations of other data samples | |
JP3606597B2 (ja) | 動きベクトル検出装置 | |
WO2000064182A1 (en) | Motion estimation | |
JP2008532335A (ja) | 画像内挿方法及び画素内挿装置 | |
JP4155102B2 (ja) | 画素値演算装置、動画像符号化装置及び動画像復号化装置 | |
JPH11239350A (ja) | 動画像信号の動きベクトル検出方法およびフレーム間符号化装置における動きベクトル検出回路 | |
JPH0787499A (ja) | 動きベクトル検出装置および方法 | |
JP2596352B2 (ja) | 小数精度動きベクトル探索装置 | |
GB2309135A (en) | Estimating image motion by comparing adjacent image frame signals | |
KR100262962B1 (ko) | 움직임 추정방법 및 장치 | |
JP2000078590A (ja) | 符号化装置および方法、並びに提供媒体 | |
JPH0993581A (ja) | 動画像符号化装置の動き検出装置 | |
JP3161076B2 (ja) | 画像信号符号化装置 | |
JP2901848B2 (ja) | ベクトル相関検出回路 | |
JPH02214283A (ja) | 動きベクトル検出装置及び検出方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040519 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20061114 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061129 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070125 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070823 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071012 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071102 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071121 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080502 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080702 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20080717 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080805 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080818 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110905 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |