JP3863376B2 - 動き推定器 - Google Patents

動き推定器 Download PDF

Info

Publication number
JP3863376B2
JP3863376B2 JP2001016271A JP2001016271A JP3863376B2 JP 3863376 B2 JP3863376 B2 JP 3863376B2 JP 2001016271 A JP2001016271 A JP 2001016271A JP 2001016271 A JP2001016271 A JP 2001016271A JP 3863376 B2 JP3863376 B2 JP 3863376B2
Authority
JP
Japan
Prior art keywords
data
unit
output
absolute difference
shift register
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001016271A
Other languages
English (en)
Other versions
JP2001218215A (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2001218215A publication Critical patent/JP2001218215A/ja
Application granted granted Critical
Publication of JP3863376B2 publication Critical patent/JP3863376B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/223Analysis of motion using block-matching
    • G06T7/238Analysis of motion using block-matching using non-full search, e.g. three-step search
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/28Indexing scheme for image data processing or generation, in general involving image processing hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は動き推定器に係り、より詳細には、動映像の圧縮中に用いられる動き推定を高速で行える動き推定器に関する。
【0002】
【従来の技術】
動き推定は、ビデオコーダにおいて、入力されるビデオデータの時間的な重複を除去して圧縮効率を高めるために用いられる。ほとんどの一般の動映像圧縮標準はブロック基盤のコーダであり、このようなブロック基盤のコーダではブロック整合アルゴリズムが用いられる。ブロック整合アルゴリズムとは、ブロック単位で動き推定を行うアルゴリズムを言う。ブロック整合アルゴリズムによれば、以前のフレームの探索領域内に位置する候補ブロックのうち現在のフレームのブロックと最も類似したブロックを探す。このとき、得られる現在のフレームの処理ブロックと以前のフレームの最も類似した候補ブロックとの相対的な位置の差は動きベクトル(MV)と呼ばれる。動き推定のためには、SAD(Sum of Absolute Differences)値を計算することが一般的である。16×16ブロックを単位として動き推定を行う場合、SAD値及び動きベクトル(MV)は各々、
【数1】
Figure 0003863376
【数2】
Figure 0003863376
のように計算される。ここで、C(i,j)は現在のフレームのブロックデータであり、P(i+u,j+v)は以前のフレームの候補ブロックのデータであり、(u,v)は動きベクトル候補である。
【0003】
このような計算に基づいて実際に動き推定器を設計するときには、動き推定の性能及び演算量を考慮しなければならない。動き推定において、演算量のほとんどはSAD値を計算することである。つまり、一つのSAD値を計算するためには引き算、絶対値、及び累積演算を行う必要があり、特に、このような計算量は処理ブロックの大きさに比例する。したがって、従来の動き推定方法によれば、演算量が多いため、動き推定に長時間がかかるという問題点がある。
【0004】
前記問題点を解決するために、従来の他の動き推定方法として、階層的な動き推定方法が提案されている。図1は、前記階層的な動き推定方法を説明するための図である。図1に示された階層的な動き推定方法によれば、下位階層のイメージをサブサンプリングすることにより中間階層、及び上位階層のサブサンプリングされたイメージを生成する。次に、サブサンプリングされた上位階層のイメージに対してSAD値を計算することにより中間階層のイメージに対する初期探索領域の候補を選択し、周辺のマクロブロックとの相関関係を用いて探索領域の候補をさらに選択する。そして、選択された初期探索領域の候補に対してSAD値を計算することにより、下位階層のイメージに対するそのSAD値が最小となる地点の最終的な動きベクトル(MV)を求める。
【0005】
このような方法は、全域にわたっての探索方法に比べて性能の低下は極めて小さく、しかも処理速度は速い。しかし、動き推定をより高速で行えるような方法への要求は依然として存在する。
【0006】
【発明が解決しようとする課題】
本発明は上記事情に鑑みて成されたものであり、その目的は、動き推定を高速で行える動き推定器を提供するところにある。
【0007】
【課題を解決するための手段】
前記目的を達成するために、本発明による動き推定器は、映像データフレームを圧縮するために動き推定を行う動き推定器において、以前の探索領域のデータをライン別に貯蔵する複数個のメモリ領域を具備する以前の探索領域メモリと、現在の処理領域のデータをライン別に貯蔵する現在の処理領域メモリを具備する第1メモリ部と、複数個のメモリ領域から循環的に出力される以前の探索領域のデータをシフトさせて出力する以前の探索領域データ供給部と、以前の探索領域データ供給部から出力された以前の探索領域のデータを選択する第1スイッチング部と、現在の処理領域メモリから出力される現在の処理領域のデータを行別に選択する第2スイッチング部と、選択された以前の処理領域のデータと現在の処理領域データとの絶対差和(SAD)を計算する複数個のSAD計算部が並列で接続された計算部と、計算部の一段のSAD計算部から出力されたSADデータを入力してシフトを行い、シフトされたデータと次段のSAD計算部から出力されたSAD値を和して部分SAD値を出力するシフトレジスタ部と、を含むことを特徴とする。
【0008】
さらに、好ましくは、前記計算部は、探索領域の大きさをpとしたとき、p個のSAD計算部が並列で接続され、前記シフトレジスタ部は2p+1個のシフトレジスタを具備する。
【0009】
さらに、好ましくは、前記動き推定器は、入力データをバッファリングするバッファと、バッファから出力されたデータを25シフトする25シフトレジスタと、部分SAD値に25シフトレジスタから出力されたデータを加えてSAD値を出力する加算器と、加算器から出力されたSAD値に基づき動きベクトルを生成するSAD比較及び動きベクトル生成部と、動きベクトル値を20シフトさせてSAD比較及び動きベクトル生成部に出力する20シフトレジスタと、をさらに含む。
【0010】
さらに、好ましくは、前記動き推定器は、3階層で階層的動き推定を行うとき、中間階層で周辺マクロブロックがもつ動きベクトルの相関関係を用いて初期探索点をさらに得るために22シフト動作を行う22シフトレジスタをさらに含む。
【0011】
さらに、好ましくは、前記動き推定器は、動き推定を行うために現在のデータ及び以前の探索領域データを区分して第1メモリに貯蔵されるように制御し、動き推定制御部の処理状況に応じて部分SAD計算部にデータを供給するように制御するDMA制御部と、DMA制御部から出力された制御信号に応答して動き推定動作を制御する動き推定制御部と、計算された部分SAD値を貯蔵する第2メモリ部と、をさらに含む。
【0012】
さらに、好ましくは、前記第1メモリは、三つの領域をもつ以前の探索領域メモリと現在の処理領域メモリとに区分され、前記計算部は、以前の探索領域のデータ及び現在の処理領域のデータに基づきSADを計算する第1のSAD計算部、第2のSAD計算部、第3のSAD計算部及び第4のSAD計算部を具備し、前記シフトレジスタ部は、前記第1SAD計算部から出力されたSADデータを9シフトさせて出力する第1の9シフトレジスタと、前記第1の9シフトレジスタの出力データに前記第2のSAD計算部の出力データを加える第1加算器と、前記第2のSAD計算部から出力されたSADデータを9シフトさせて出力する第2の9シフトレジスタと、前記第2の9シフトレジスタの出力データに前記第3のSAD計算部の出力データを加える第2加算器と、第3計算部から出力されたSADデータを9シフトさせて出力する第3の9シフトレジスタと、前記第3の9シフトレジスタの出力データに前記第4のSAD計算部の出力データを加える第3加算器と、を具備する。
【0013】
さらに、好ましくは、前記第1のSAD計算部は、複数のレジスタCR0、CR1、CR2、CR3と、一方の入力端は前記レジスタCR0、CR1、CR2、CR3の出力端に接続され、他方の入力端はスイッチに接続された減算器(SUB)を具備し、前記第2のSAD計算部は複数のレジスタCR4、CR5、CR6、CR7と、一方の入力端は前記レジスタCR4、CR5、CR6、CR7の出力端に接続され、他方の入力端はスイッチに接続された減算器(SUB)を具備し、前記第3のSAD計算部は複数のレジスタCR8、CR9、CR10、CR11と、一方の入力端は前記レジスタCR8、CR9、CR10、CR11の出力端に接続され、他方の入力端はスイッチに接続された減算器(SUB)を具備し、前記第4のSAD計算部は複数のレジスタCR12、CR13、CR14、CR15と、一方の入力端は前記レジスタCR12、CR13、CR14、CR15の出力端に接続され、他方の入力端はスイッチに接続された減算器(SUB)を具備する。
【0014】
さらに、好ましくは、前記動き推定器は、以前の探索領域のデータを補間して補間されたデータを出力する補間部をさらに含む。
【0015】
さらに、好ましくは、前記動き推定器は、以前の探索領域に該当するデータと現在の処理ブロックに該当するデータとを区分する動作を行い、処理状況によって前記以前の探索領域データ供給部及び前記計算部にデータを供給するように制御するDMA制御部をさらに含む。
【0016】
【発明の実施の形態】
以下、添付した図面に基づき、本発明の望ましい実施形態について詳細に説明する。
【0017】
図2は、本発明の実施形態による動き推定器の構造を示したブロック図である。この実施形態の動き推定器は、3階層の階層的な動き推定方法に基づく。下位階層では16×16ブロック、中間階層では8×8ブロック、及び上位階層では4×4ブロックに対してSAD計算が行われる。つまり、中間階層は下位階層を1/2だけデシメ―ションした階層であり、上位階層は中間階層を1/2だけデシメ―ションした階層である。さらに、上位階層では±4画素単位の探索が行われ、中間階層及び下位階層では±2画素単位の探索が行われる。また、この実施形態の動き推定器は、下位階層の正画素単位の推定が完了した後に、前記下位階層に対して半画素単位の推定を行う。また、この実施形態では、例えば、本出願人により出願され、かつ本明細書に参照として引用された韓国特許出願第98-6718号に開示された、改善された動き推定方法を用いる。前記特許出願に開示された動き推定方法によれば、中間階層で選択されたマクロブロック候補に加えて、下位階層で周辺マクロブロックとの相関関係に基づき少なくとも1つ以上のマクロブロック候補をさらに選択する。
【0018】
図2を参照すると、本発明の実施形態による動き推定器は、第1メモリ200、部分SAD計算部210、補間部212、加算器220、及びバッファ222を具備する。また、前記動き推定器は、25シフトレジスタ230、SAD比較及び動きベクトル生成部240、22シフトレジスタ250、DMA制御部260、動き推定制御部270、及び第2メモリ280を具備する。第1メモリは、以前の探索領域メモリ202と現在の処理領域メモリ204とに分けられる。
【0019】
これらの動作について述べると、DMA制御部260は、動き推定を行うために現在のデータと以前の探索領域データとを区分してこれらが第1メモリ200に貯蔵されるように制御する。また、DMA制御部260は、動き推定制御部270の処理状況によって部分SAD計算部210にデータを供給するように制御する。
【0020】
部分SAD計算部210は、現在の処理ブロックデータ及び以前の探索領域データを入力して部分SAD値を計算する。また、前記動き推定器は22シフトレジスタ250を具備することにより、3階層で階層的な動き推定を行うとき、中間階層で周辺マクロブロックがもつ動きベクトルの相関関係に基づき初期の探索点を得る。
【0021】
図3Aは、図2の動き推定器の第1メモリ200、部分SAD計算部210、及び補間部212の詳細図である。これを参照すると、第1メモリ200は、三つの領域をもつ以前の探索領域メモリ(以前の探索領域メモリ_A、以前の探索領域メモリ_B、以前の探索領域メモリ_C)と、現在の処理領域メモリとに分けられる。また、部分SAD計算部210は、以前の探索領域データ供給部30、計算部32、及びシフトレジスタ部34を具備する。また、図3Bを参照すると、以前の探索領域データ供給部30と計算部との間にはスイッチング部382、386が具備される。また、補間部212の出力端と計算部32との間にはスイッチ384が具備される。また、現在の処理領域メモリの出力端と計算部32との間にはスイッチング部388が具備される。この実施形態において、前記スイッチは制御信号Ctrl_A、Ctrl_B、Ctrl_C、Ctrl_Dを出力するスイッチング制御部36により制御され、前記スイッチング制御部36は動き推定制御部270内に具備できる。
【0022】
以前の探索領域データ供給部30は、第1以前の探索領域データ供給部30a、第2以前の探索領域データ供給部30b、及び第3以前の探索領域データ供給部30cを具備する。計算部32は、第1のSAD計算部322、第2のSAD計算部324、第3のSAD計算部326、及び第4のSAD計算部328を具備する。シフトレジスタ部34は、第1の9シフトレジスタ340、第2の9シフトレジスタ344、第3の9シフトレジスタ348、及び複数の加算器342、346、350を具備する。
【0023】
これらの動作について述べると、スイッチング部382は、制御信号Ctrl_Aに応答して以前の探索領域データ供給部30から出力された以前の探索領域のデータを選択する。また、スイッチ388は、制御信号Ctrl_Dに応答して現在の処理領域メモリから出力される現在の処理領域のデータを行別に選択する。部分SAD計算部210は、以前の探索領域メモリ及び現在の処理領域メモリから以前の探索領域に該当するデータ及び現在の処理ブロックに該当するデータを入力して部分SAD値を計算する。DMA制御部260は、以前の探索領域に該当するデータ及び現在の処理ブロックに該当するデータを区分する動作を行う。部分SAD計算部210は、4×4ブロックに対し−4〜+4探索領域に限って演算できるので、この実施形態による動き推定器は加算器220、バッファ222、及び25シフトレジスタ230を具備して4×4ブロックよりも大きいブロックに対してSAD値を得る。
【0024】
部分SAD計算部210は、以前の探索領域メモリ(以前の探索領域メモリ_A、以前の探索領域メモリ_B、以前の探索領域メモリ_C)による三つのチャンネルと、現在の処理領域メモリによる一つのチャンネルを通じて各々以前の探索領域データ及び現在の処理領域データを入力される。
【0025】
図4は、以前の探索領域のデータがメモリに配置される順序を示したものである。これを参照すると、以前の探索領域の第1ラインのデータは以前の探索領域メモリ_A、第2ラインのデータは以前の探索領域メモリ_B、第3ラインのデータは以前の探索領域メモリ_Cから各々出力される。次に、以前の探索領域の第4ラインのデータは再び以前の探索領域メモリ_Aから出力される。図4において、以前の探索領域メモリ_Aから出力されるデータは○、以前の探索領域メモリ_Bから出力されるデータは◇、以前の探索領域メモリ_Cから出力されるデータは□で各々示されている。
【0026】
また、部分SAD計算部210には、現在の処理領域メモリから現在の処理領域データが入力される。図5は、4×4画素よりなる現在の処理領域のデータが図3Aの計算部内のレジスタに配置される順序を示したものである。4×4画素よりなる現在の処理領域のデータは、図5に示されたように、図3AのレジスタCR0,CR1,...,CR15にロードされる。このように現在の処理領域データが各レジスタCR0,CR1,...,CR15に貯蔵中に、以前の探索領域のデータもレジスタPAR0,PAR1,...,PAR4,PBR1,...,PBR4,PCR0,...,PCR4にロードされる。
【0027】
レジスタへのデータのロードが完了すると、部分SAD計算部210の減算器(SUB)は以前の探索領域データと現在の処理領域データとの差値を計算する。次に、絶対差計算部(図示せず)は、前記差値を入力して前記差値の絶対値を出力する。各絶対差計算部の出力は各画素に該当する演算値であり、これらの演算値は現在の処理領域データの水平成分同士で和される。これにより、以前の探索領域データが一度入力されるとき、現在の処理領域の各ラインに対し差の絶対値が計算される。
【0028】
以降の説明のために、図4に示された以前の探索領域において、 最左上部のデータをP(0,0)、P(0,0)から右側に1画素分シフトした位置の画素データをP(0,1)、P(0,0)から右側に2画素分シフトした位置の画素データをP(0,2)と定義する。また、P(0,0)から下方に1画素分シフトした位置の画素データをP(1,0)、P(0,0)から下方に2画素分シフトした位置の画素データをP(2,0)と定義する。
【0029】
これと同様に、 図5に示された現在の処理領域において、最左上部のデータをc(0,0)、c(0,0)から右側に1画素分シフトした位置の画素データをc(0,1)、c(0,0)から右側に2画素分シフトした位置の画素データをc(0,2)と定義する。また、c(0,0)から下方に1画素分シフトした位置の画素データをc(1,0)、c(0,0)から下方に2画素分シフトした位置の画素データをc(2,0)と定義する。
【0030】
このように定義すると、レジスタCR0にはc(0,0)データがロードされ、レジスタCR1にはデータc(0,1)がロードされる。また、レジスタCR4にはデータc(1,0)がロードされ、レジスタCR5にはデータc(1,1)がロードされ、レジスタCR15にはデータc(3,3)がロードされる。
【0031】
部分SAD計算部210は、現在の処理領域内において1ラインずつに対して演算を行うため、第1計算部322、第2計算部324、第3計算部326、及び第4計算部328の加算器から出力される演算結果値L0(0,0)、L1(0,0)、L2(0,0)及びL3(0,0)は各々、
【数3】
Figure 0003863376
になる。演算結果値L0(0,0)、L1(0,0)、L2(0,0)及びL3(0,0)は現在の処理領域データの第1、第2、第3及び第4ラインに対する演算結果に該当する。iを行、jを列を表わす正の数としたとき、以前の探索領域データをP(i,j)で表わすと、以前の探索領域データP(i,j)及び現在の処理領域データの第1、第2、第3及び第4ラインに対する演算結果は各々L0(i,j)、L1(i,j)、L2(i,j)及びL3(i,j)となる。この表現によると、探索領域の最左上部に対するSAD値は、
【数4】
Figure 0003863376
のように表される。以前の探索領域データは部分SAD計算部210に1ラインずつ入力されるので、前記数式4から得られるSAD値が最初に得られるSAD値となる。
【0032】
L0(0,0)は第1ラインに対する演算によって得られる。しかし、L1(1,0)は以前の探索領域データの第2ラインが入力されてこそ得られ、L2(2,0)は第3ライン、そしてL3(3,0)は第4ラインが入力されてこそ得られる。つまり、L0(0,0)及びL1(1,0)は探索領域を-p〜+pとしたとき、2p+1に該当する時間差が発生する。したがって、L0(0,0)にL1(1,0)を加えるために2p+1クロック分の遅延が必要になる。この実施形態では、探索領域を-4〜+4とするため9クロック分の遅延が必要になり、シフトレジスタ部34の9シフトレジスタ340、344、348がこのような遅延動作を行う。図3Aを戻って詳細に述べると、第1の9シフトレジスタ340は第1のSAD計算部322から出力されたSADデータを9シフトさせて出力する。第1加算器342は、第1の9シフトレジスタ340の出力データに第2のSAD計算部324の出力データを加える。第2の9シフトレジスタ344は、第2のSAD計算部324から出力されたSADデータを9シフトさせて出力する。第2加算器346は、第2の9シフトレジスタ344の出力データに第3のSAD計算部326の出力データを加える。第3の9シフトレジスタ348は、第3のSAD計算部326から出力されたSADデータを9シフトさせて出力する。第3加算器350は、第3の9シフトレジスタ348の出力データに第4のSAD計算部328の出力データを加える。第3加算器350から出力されたデータは、与えられた探索領域に対する部分SAD値である。
【0033】
図6を参照すると、この実施形態による動き推定器では、L0(0,0)にL1(1,0)を加えるために9クロック分の遅延が必要になる。また、この実施形態による動き推定器では、第1ラインをレジスタ部34にロードするのに必要な9クロック分の処理遅延を除いた他の処理遅延は発生しない。つまり、斜線部分のL0(0,0)、L1(1,0)、L2(2,0)及びL3(3,0)がクロック毎に順次得られ、次に、網がけ部分のL0(0,1)、L1(1,1)、L2(2,1)及びL3(3,1)がクロック毎に順次得られる。したがって、4×4画素の探索領域の各々のSAD値を全域探索により求めるのに必要な総時間は、初期のデータロード時間を除いたとき、9×12クロック、つまり108クロックとなる。
【0034】
また、本発明による動き推定器は、正画素単位の探索を完了すると、正画素探索を通じて得た動きベクトル地点を基準として半画素単位の探索を行う。
【0035】
補間部212は、3個の以前の探索領域メモリ(以前の探索領域メモリ_A、以前の探索領域メモリ_B、以前の探索領域メモリ_C)からデータを受け入れる。
【0036】
以下、図7を参照し、本発明の実施形態による動き推定器で適用される半画素単位の探索過程について述べる。半画素単位の探索を行うためには、探索点を決める必要がある。半画素単位の探索点を各々alpha(i,j)、beta(i,j)及びgamma(i,j)としたとき、これらの探索点は各々、
【数5】
Figure 0003863376
【0037】
のように定義される。例えば、alpha(0,0)に該当する探索点は70、beta(0,1)に該当する探索点は72、gamma(1,0)に該当する探索点は74と参照される。また、alpha(0,4)に該当する探索点は76、gamma(1,4)に該当する探索点は78と参照される。
【0038】
図8は、前記動き推定器の補間部212の一例を参考として示したものである。これを参照すると、例えば、補間部212は、レジスタPAR0、PBR0、PCR0、またはレジスタPAR1、PBR1、PCR1、レジスタPAR2、PBR2、PCR2、レジスタPAR3、PBR3、PCR3、及びレジスタPAR4、PBR4、PCR4のうち各々両レジスタから以前の探索領域データを選択して入力し、前記数式5a、5b及び5cに示された等式に従い補間を行うことにより、alpha、beta及びgamma画素値を求め、出力端子に順次出力する。
【0039】
これにより、補間部212は、最上位ビット(MSB)及び最下位ビット(LSB)を含んで4ビットの補間されたデータを出力する。スイッチ384は、制御信号Ctrl_Bに応答して補間部212の出力端子のいずれか一方の端子に順次切り換えられることにより計算部32の入力データの選択を行う。また、スイッチング部386は、制御信号Ctrl_Cに応答して補間されたデータを選択して計算部32に入力する。これにより、計算部32及びシフトレジスタ部34によって補間されたデータに対する部分SAD値が得られる。
【0040】
すなわち、本発明による動き推定器は、以前のフレーム領域のデータを一度読み出すことにより、alpha、beta及びgammaに該当する探索点の画素値を同時に生成できる。その結果、本発明による動き推定器は従来の技術のそれに比べて処理速度が速い。
【0041】
また、ある4×4領域に対する動き推定が完了してから、次の4×4領域で動き推定をする場合、alpha(0,4)に該当する探索点76、beta(1,4)に該当する探索点78の画素値は、すでに読み出していた以前の探索領域のデータをシフトして書き込むことにより得られる。したがって、本発明による動き推定器は、特に半画素単位の探索を高速で、しかも効率良く行える。
【0042】
図9は、図2の示された動き推定器に半画素単位の探索を適用した場合のデータ流れを示したものである。これを参照すると、前記動き推定器では、一つの4×4ブロックに対する半画素単位の探索が24クロック中に完了する。
【0043】
一方、本実施形態による動き推定器に具備された部分SAD計算部210の処理単位は4×4ブロックである。このような動き推定器を3階層の階層的探索に用いるとき、上位階層の場合には4×4ブロック内で-4〜+4画素の探索領域に対して全域探索を行い、中間階層の場合には8×8ブロック内で-2〜+2画素の探索領域に対して探索を行い、下位階層の場合には16×16ブロック内で-2〜+2画素の探索領域に対して探索を行う。
【0044】
本実施形態による動き推定器の部分SAD計算部210は、4×4ブロックを計算できる。したがって、8×8ブロックの中間階層及び16×16ブロックの下位階層に対して動き推定を行うためには、階層を各々4個及び16個のブロックらに分けて計算した後に、結果値を加え合わせることが必要である。しかし、中間階層及び下位階層では探索領域が、図10に示されたように、-2〜+2画素に該当するので、探索を一回行うと、25ポイントに対する部分SAD値を求めることができる。このために、図2を参照すると、本発明による動き推定器は、25シフトレジスタ230を具備する。前記動き推定器は部分SAD値を25シフトレジスタ230に入力させ、次の部分SAD値が出力されるとき毎に25シフトレジスタ230に貯蔵されたデータをシフトさせて次の4×4ブロックの部分SAD値に加えることにより、中間階層及び下位階層の探索作業を行える。
【0045】
一方、この実施形態による動き推定器は、3個の初期探索点のうちいずれか一つを周辺マクロブロックとの相関関係に基づき選択する。周辺マクロブロックの位置は、図11のように定めることができる。入力映像フレームの左上部の左方から水平方向に動きベクトルを求めるため、現在の処理ブロックとこの上に位置したマクロブロックとの距離は、入力映像フレームの水平方向のマクロブロック数に等しい。したがって、入力映像フレームが352×288画素のCIF形式のものであるとしたとき、入力映像フレームの最大のサイズは水平方向に22個のマクロブロックに該当する。したがって、本発明の他の実施形態によれば、動き推定器は、22シフトレジスタアレイ1100及び中間値計算部1102をさらに具備する。22シフトレジスタアレイ1100は周辺マクロブロックに対する動きベクトル値を入力し、中間値計算部1102はこれらの中間値を動きベクトル候補として出力することにより、周辺マクロブロックとの相関関係に基づき動きベクトル候補をさらに選択する。選択された動きベクトル候補は、中間階層の初期探索点として用いられる。
【0046】
本発明の実施形態による動き推定器に適用される3階層の階層的探索において、上位階層データは元のデータを4:1デシメ―ションした値よりなる。この実施形態において、デシメ―ションに際しては、元のデータを4サンプルおきに一つずつ取る方法を用いる。現在の処理領域のデータは一つの現在の処理領域メモリに貯蔵されているため、水平及び垂直方向に4サンプルおきに一つずつ取る。以前の探索領域のデータは三つの以前の探索領域メモリに分かれて貯蔵されているため、水平方向のデシメ―ションは現在の処理領域のデータの場合と同様に、4サンプルおきに一つずつ取るが、垂直方向のデシメ―ションは図12のように行われる。すなわち、この実施形態によれば、以前の探索領域メモリは、探索領域データの第1ラインが以前の探索領域メモリ_Aに、第2ラインが以前の探索領域メモリ_Bに、第3ラインが以前の探索領域メモリ_Cに、のように貯蔵されているため、図2のDMA制御部260はアドレスを4ずつインクリメントし、以前の探索領域メモリ_A、以前の探索領域メモリ_B、及び以前の探索領域メモリ_Cの順番に読み出すように制御することが要される。
【0047】
メモリから読み出したデータは部分SAD計算部210の各レジスタに貯蔵され、-4〜+4ブロックの探索領域に対して全域探索を行うことにより、最小のSAD値をもつ両位置を中間階層の初期探索点として選択する。上位階層でのデータ処理の流れは、図13に示されている。図13は基本的に図6と同一であるため、これ以上の説明はしない。
【0048】
中間階層のデータは下位階層のデータを2:1デシメ―ションすることにより得られる。したがって、現在の処理領域メモリ及び以前の探索領域メモリから水平及び垂直方向にアドレスを2ずつインクリメントすることにより、図14に示されたように、メモリの読み出し及びスキップを行う。以前の探索領域データは3つのメモリに分かれて貯蔵されているため、垂直方向には以前の探索領域メモリ_A、以前の探索領域メモリ_B、以前の探索領域メモリ_Cの順番でデータを読み出す。これにより、以前の探索領域のデータに対する垂直方向への2:1デシメ―ションがなされる。
【0049】
中間階層では、上位階層で探した2個の初期探索点と、22シフトレジスタ250で得られる動きベクトル候補に該当する一つの初期探索点を中心点として決定される8×8ブロックに対して-2〜+2探索領域の全域探索を行い、これにより部分SAD値を求める。部分SAD計算部210は、4×4ブロック単位に探索を行うように設計されているため、8×8ブロックの中間階層に対して探索を行うためには、図15に示されたように、現在のフレームの8×8ブロックを4個の4×4ブロックに分けて探索を行う。すなわち、最初の4×4ブロックに対して-2〜+2探索領域にわたって25ポイントの部分SAD値を求め、前記部分SAD値を25シフトレジスタ230に貯蔵する。それから、加算器220により、前記部分SAD値に次の4×4ブロックに対する部分SAD値を加える。このような過程を4回繰り返すことにより、8×8ブロックに対するSAD値を求める。このように3個の初期探索点に対する-2〜+2探索領域によって最小のSAD値をもつ位置を下位階層の初期探索点として用いる。中間階層でのデータ処理の流れは、図16に示されている。これを参照すると、中間階層では、L0(0,0)にL1(1,0)を加えるために5クロックの遅延が必要である。すなわち、斜線部分のL0(0,0)、L1(1,0)、L2(2,0)及びL3(3,0)がクロック毎に順次求められ、次に網がけ部分のL0(0,1)、L1(1,1)、L2(2,1)及びL3(3,1)がクロック毎に順次求められる。
【0050】
下位階層のデータは、元のデータよりなる。中間階層で探した初期探索点を中心点として16×16ブロックに対して-2〜+2探索領域にわたって全域探索を行い、最小のSAD値をもつ位置を求める。前記位置から、正画素単位の探索による最終的な動きベクトルが求められる。下位階層に対する動き推定は、図17に示されたように、16×16ブロックに対して行われ、部分SAD計算部210は4×4ブロックを基準として処理を行うため、4×4ブロック単位の探索を16回繰り返すことにより16×16ブロックに対するSAD値を求める。下位階層でのデータ処理の流れは、図18に示されている。図18に示された下位階層でのデータ処理の流れは、±2画素の探索を行う中間階層でのデータ流れを示した図16と同一であるため、これ以上の説明は省く。
【0051】
【発明の効果】
以上述べたように、本発明による動き推定器は処理速度が速く、特に半画素単位の探索を高速で、しかも効率良く行える。
【図面の簡単な説明】
【図1】 従来の階層的動き推定方法を説明するための図である。
【図2】 本発明の実施形態による動き推定器の構造を示したブロック図である。
【図3】 図3Aは、図2の動き推定器の第1メモリ、部分SAD計算部、及び補間部の詳細図であり、図3Bは、図2の動き推定器のスイッチ及びスイッチング制御部の詳細図である。
【図4】 以前の探索領域のデータがメモリに配置される順序を説明するための図である。
【図5】 4×4画素よりなる現在の処理ブロックのデータが図3Aの計算部内のレジスタに配置される順序を示した図である。
【図6】 図2の動き推定器でのデータ流れを説明するための図である。
【図7】 本発明による動き推定器で適用される半画素単位の探索過程を説明するための図である。
【図8】 図2に示された動き推定器の補間部の一例を示したブロック図である。
【図9】 図2の本発明による動き推定器で半画素単位の探索を適用した場合の動き推定器でのデータ流れを説明するための図である。
【図10】 本発明の実施形態による動き推定器で適用される階層的探索に用いられた中間階層及び下位階層での探索領域を説明するための図である。
【図11】 図2に示された動き推定器において、周辺マクロブロックの相関関係に基づき 初期探索点を一つさらに選択するための22シフトレジスタの構成例を示した図である。
【図12】 以前の探索領域のデータを垂直方向に4:1デシメ―ションする過程を説明するための図である。
【図13】 上位階層でのデータ処理の流れを説明するための図である。
【図14】 以前の探索領域のデータを垂直方向に2:1デシメ―ションする過程を説明するための図である。
【図15】 中間階層でのデータ処理を説明するための図である。
【図16】 中間階層でのデータ処理の流れを説明するための図である。
【図17】 下位階層でのデータ処理を説明するための図である。
【図18】 下位階層でのデータ処理の流れを説明するための図である。
【符号の説明】
30,30a,30b,30c 以前の探索領域データ供給部
32 計算部
34 シフトレジスタ部
36 スイッチング制御部
200 第1メモリ
202 以前の探索領域メモリ
204 現在の処理領域メモリ
210 部分SAD計算部
212 補間部
220 加算器
222 バッファ
230 25シフトレジスタ
240 SAD比較及び動きベクトル生成部
250 22シフトレジスタ
260 DMA制御部
270 動き推定制御部
280 第2メモリ
322,324,326,328 SAD計算部
340,344,348 9シフトレジスタ
342,346,350 加算器
382,386 スイッチング部
384 スイッチ
388 スイッチング部
1100 22シフトレジスタアレイ
1102 中間値計算部

Claims (6)

  1. 映像データフレームを圧縮するために動き推定を行う動き推定器において、
    以前の探索領域のデータをライン別に貯蔵する複数個のメモリ領域を具備する以前の探索領域メモリと、現在の処理領域のデータをライン別に貯蔵する現在の処理領域メモリを具備する第1メモリ部と、
    前記複数個のメモリ領域から出力されるライン別の以前の探索領域データを、前記現在の処理領域のデータの1ラインの絶対差和 ( SAD; sum of absolute difference) の計算のために必要な所定のデータ単位で1クロック毎に所定画素単位ほどシフトさせながら前記所定のデータ単位で以前の探索領域データを出力する複数個の以前の探索領域データ供給部と、
    前記複数個の以前の探索領域データ供給部のうち所定画素単位ほどシフトさせながら前記所定のデータ単位で以前の探索領域データを出力する以前の探索領域データ供給部を選択する第1スイッチング部と、
    前記現在の処理領域メモリにライン別に貯蔵された前記現在の処理領域のデータをライン別に選択して出力する第2スイッチング部と、
    前記第2スイッチング部から出力されるライン別の現在の処理領域のデータを貯蔵する複数個のレジスタと、一方の入力端は前記レジスタに連結され、他方の入力端は前記第1スイッチング部に連結され、前記第1スイッチング部により選択された前記以前の探索領域データの所定データ単位と前記第2スイッチング部により選択されたライン別の現在の処理領域のデータ間の絶対差和を計算する複数個の減算器を具備する複数個の絶対差和計算部を含む計算部と、
    探索領域を−pから+p ( pは整数 ) とする時、前記絶対差和計算部から出力された絶対差和データを2p+1ほどシフトして前記各絶対差和計算部から出力される絶対差和を合算するシフトレジスタ部と、を含むことを特徴とする動き推定器。
  2. 上位階層、中間階層及び下位階層の3階層で階層的動き推定を行い、前記中間階層及び下位階層では探索領域が−2〜+2ピクセルであり、入力映像フレームの最大サイズは水平方向に22個のマクロブロックに該当する時、
    入力データをバッファリングするバッファと、
    前記バッファから出力されたデータを25シフトする25シフトジスタと、
    部分SAD値と前記シフトレジスタから出力されたデータを加えてSAD値を出力する加算器と、
    加算器から出力されたSAD値に基づき動きベクトルを生成するSAD比較及び動きベクトル生成部と、
    動きベクトル値を22シフトさせてSAD比較及び動きベクトル生成部に出力する22シフトレジスタと、をさらに含むことを特徴とする請求項1に記載の動き推定器。
  3. 前記22シフトレジスタは、3階層で階層的動き推定を行うとき、中間階層で周辺マクロブロックがもつ動きベクトルの相関関係を用いて初期探索点をさらに得るために22シフト動作を行うことを特徴とする請求項2に記載の動き推定器。
  4. 前記第1メモリは、
    三つの領域をもつ以前の探索領域メモリと、現在の処理領域メモリとに区分され、
    前記計算部は、
    前記現在の処理領域のデータが4 x 4ブロックサイズを有し、探索領域のサイズを−4〜+4ピクセルに該当するとした時、
    前記以前の探索領域のデータの所定データ単位と現在の処理領域のデータの各ライン別絶対差和を計算する第1絶対差和計算部、第2絶対差和計算部、第3絶対差和計算部、第4絶対差和計算部を具備し、
    前記シフトレジスタ部は、
    前記第1絶対差和計算部から出力された絶対差和データを9シフトさせて出力する第1の9シフトレジスタと、前記第1の9シフトレジスタの出力データに前記第2絶対差和計算部の出力データを加える第1加算器と、前記第2絶対差和計算部から出力された絶対差和データを9シフトさせて出力する第2の9シフトレジスタと、前記第2の9シフトレジスタの出力データに前記第3絶対差和計算部の出力データを加える第2加算器と、第3計算部から出力された絶対差和データを9シフトさせて出力する第3の9シフトレジスタと、前記第3の9シフトレジスタの出力データに前記第4絶対差和計算部の出力データを加える第3加算器と、を具備することを特徴とする請求項1に記載の動き推定器。
  5. 前記第1絶対差和計算部は、複数のレジスタCR0、CR1、CR2、CR3と、一方の入力端は前記レジスタCR0、CR1、CR2、CR3の出力端に接続され、他方の入力端はスイッチに接続された減算器(SUB)を具備し、前記第2絶対差和計算部は複数のレジスタCR4、CR5、CR6、CR7と、一方の入力端は前記レジスタCR4、CR5、CR6、CR7の出力端に接続され、他方の入力端はスイッチに接続された減算器(SUB)を具備し、前記第3絶対差和計算部は複数のレジスタCR8、CR9、CR10、CR11と、一方の入力端は前記レジスタCR8、CR9、CR10、CR11の出力端に接続され、他方の入力端はスイッチに接続された減算器(SUB)を具備し、前記第4絶対差和計算部は複数のレジスタCR12、CR13、CR14、CR15と、一方の入力端は前記レジスタCR12、CR13、CR14、CR15の出力端に接続され、他方の入力端はスイッチに接続された減算器(SUB)を具備することを特徴とする請求項4に記載の動き推定器。
  6. 以前の探索領域のデータを半画素単位で補間して補間されたデータを前記計算部に出力する補間部をさらに含むことを特徴とする請求項1に記載の動き推定器。
JP2001016271A 2000-01-27 2001-01-24 動き推定器 Expired - Fee Related JP3863376B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20004049 2000-01-27
KR20000004049A KR100677082B1 (ko) 2000-01-27 2000-01-27 움직임 추정기

Publications (2)

Publication Number Publication Date
JP2001218215A JP2001218215A (ja) 2001-08-10
JP3863376B2 true JP3863376B2 (ja) 2006-12-27

Family

ID=19642130

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001016271A Expired - Fee Related JP3863376B2 (ja) 2000-01-27 2001-01-24 動き推定器

Country Status (5)

Country Link
US (1) US6690730B2 (ja)
EP (1) EP1120747A3 (ja)
JP (1) JP3863376B2 (ja)
KR (1) KR100677082B1 (ja)
CN (1) CN1157956C (ja)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4765194B2 (ja) * 2001-05-10 2011-09-07 ソニー株式会社 動画像符号化装置、動画像符号化方法、動画像符号化プログラム格納媒体及び動画像符号化プログラム
US6987866B2 (en) * 2001-06-05 2006-01-17 Micron Technology, Inc. Multi-modal motion estimation for video sequences
US7236177B2 (en) * 2001-12-04 2007-06-26 Qualcomm Incorporated Processing digital video data
KR20030073141A (ko) * 2002-03-08 2003-09-19 주식회사 엘지이아이 Mpeg-4 비디오 코덱에서 움직임 벡터 코딩을 위한움직임 벡터 메모리 최소화 방법
US7817717B2 (en) * 2002-06-18 2010-10-19 Qualcomm Incorporated Motion estimation techniques for video encoding
US7940844B2 (en) 2002-06-18 2011-05-10 Qualcomm Incorporated Video encoding and decoding techniques
KR20040008359A (ko) * 2002-07-18 2004-01-31 삼성전자주식회사 계층적 움직임 벡터 탐색을 이용한 움직임 추정 방법 및장치 및 그를 적용한 동영상 부호화 시스템
EP1395061A1 (en) * 2002-08-27 2004-03-03 Mitsubishi Electric Information Technology Centre Europe B.V. Method and apparatus for compensation of erroneous motion vectors in video data
KR100508975B1 (ko) 2003-05-20 2005-08-17 주식회사 팬택 다층 레벨 연속 제거 알고리즘을 이용한 동영상 움직임추정 방법
KR20060037352A (ko) * 2003-07-15 2006-05-03 톰슨 라이센싱 고속 검색 블록 매칭에 의한 움직임 추정
KR100970726B1 (ko) * 2003-10-04 2010-07-16 삼성전자주식회사 계층적 움직임 추정 방법
KR100846780B1 (ko) 2003-11-10 2008-07-16 삼성전자주식회사 움직임 벡터 추정 방법 및 장치
KR100621137B1 (ko) * 2004-02-27 2006-09-13 세이코 엡슨 가부시키가이샤 동화상 부호화 장치 및 동화상 처리장치
TWI239474B (en) * 2004-07-28 2005-09-11 Novatek Microelectronics Corp Circuit for counting sum of absolute difference
CN100339976C (zh) * 2004-08-09 2007-09-26 Thomson宽带研发(北京)有限公司 多模多尺度运动估计的超大规模集成电路体系结构及方法
KR100657274B1 (ko) * 2004-08-24 2006-12-14 삼성전자주식회사 인트라 예측방법 및 그 방법을 사용한 영상처리장치
US20060120455A1 (en) * 2004-12-08 2006-06-08 Park Seong M Apparatus for motion estimation of video data
KR100686393B1 (ko) * 2005-04-07 2007-03-02 주식회사 텔레칩스 하드웨어 구현에 적합한 움직임 예측 장치 및 그 방법
EP1729518A1 (en) * 2005-05-31 2006-12-06 Novatek Microelectronics Corp. Circuit for computing sums of absolute difference
TWI277010B (en) * 2005-09-08 2007-03-21 Quanta Comp Inc Motion vector estimation system and method
US8275049B2 (en) 2006-06-16 2012-09-25 Via Technologies, Inc. Systems and methods of improved motion estimation using a graphics processing unit
TWI444047B (zh) * 2006-06-16 2014-07-01 Via Tech Inc 用於視訊解碼的去方塊效應濾波器、視訊解碼器與圖形處理單元
US20080126278A1 (en) * 2006-11-29 2008-05-29 Alexander Bronstein Parallel processing motion estimation for H.264 video codec
US8090024B2 (en) * 2007-06-25 2012-01-03 Sigma Designs, Inc. Methods for processing two data frames with scalable data utilization
CN101212682B (zh) * 2007-12-22 2011-06-15 深圳市同洲电子股份有限公司 一种运动搜索区域的数据加载装置和方法
US8098733B2 (en) * 2008-03-10 2012-01-17 Neomagic Corp. Multi-directional motion estimation using parallel processors and pre-computed search-strategy offset tables
US8982952B2 (en) * 2008-06-02 2015-03-17 Broadcom Corporation Method and system for using motion vector confidence to determine a fine motion estimation patch priority list for a scalable coder
KR100973083B1 (ko) * 2008-12-31 2010-07-29 전자부품연구원 어레이 기반의 움직임 벡터 추출기 및 그 방법
CN102790884B (zh) * 2012-07-27 2016-05-04 上海交通大学 一种基于分层运动估计的搜索方法及其实现系统
TW201409994A (zh) 2012-08-30 2014-03-01 Novatek Microelectronics Corp 立體視訊的編碼方法與編碼裝置
CN103686190A (zh) * 2012-09-07 2014-03-26 联咏科技股份有限公司 立体视频的编码方法与编码装置
EP2772189A1 (en) * 2013-02-28 2014-09-03 Koninklijke Philips N.V. Apparatus and method for determining vital sign information from a subject
CN103974077B (zh) * 2014-05-14 2017-04-19 东南大学 一种用于h.264编码的整数运动估计快速搜索方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05300497A (ja) * 1992-04-21 1993-11-12 Mitsubishi Electric Corp 画像処理装置及びディジタル信号処理プロセッサ
US5706059A (en) * 1994-11-30 1998-01-06 National Semiconductor Corp. Motion estimation using a hierarchical search
FR2728091B1 (fr) * 1994-12-13 1997-01-31 Thomson Consumer Electronics Procede de selection de vecteurs mouvement et dispositif de traitement d'images mettant en oeuvre ledit procede
US6549575B1 (en) * 1996-11-07 2003-04-15 International Business Machines Corporation. Efficient, flexible motion estimation architecture for real time MPEG2 compliant encoding
US6118901A (en) * 1997-10-31 2000-09-12 National Science Council Array architecture with data-rings for 3-step hierarchical search block matching algorithm
KR100275694B1 (ko) * 1998-03-02 2000-12-15 윤덕용 실시간 동영상 부호화를 위한 초고속 움직임 벡터 추정방법
EP0944245B1 (en) * 1998-03-20 2001-07-25 SGS-THOMSON MICROELECTRONICS S.r.l. Hierarchical recursive motion estimator for video images encoder
TW376659B (en) * 1998-05-21 1999-12-11 Nat Science Council Motion estimator using 3-step hierarchical search block-matching algorithm
JPH11346369A (ja) * 1998-06-01 1999-12-14 Nec Corp 動ベクトル検出回路
US6259737B1 (en) * 1998-06-05 2001-07-10 Innomedia Pte Ltd Method and apparatus for fast motion estimation in video coding
US6363117B1 (en) * 1998-12-31 2002-03-26 Sony Corporation Video compression using fast block motion estimation
JP2001251632A (ja) * 1999-12-27 2001-09-14 Toshiba Corp 動きベクトル検出方法および装置並びに動きベクトル検出プログラム
US6563874B1 (en) * 2000-06-23 2003-05-13 Hitachi America, Ltd. Fast search method for motion estimation

Also Published As

Publication number Publication date
EP1120747A3 (en) 2004-05-19
US6690730B2 (en) 2004-02-10
KR20010076707A (ko) 2001-08-16
EP1120747A2 (en) 2001-08-01
JP2001218215A (ja) 2001-08-10
CN1316856A (zh) 2001-10-10
US20010028681A1 (en) 2001-10-11
CN1157956C (zh) 2004-07-14
KR100677082B1 (ko) 2007-02-01

Similar Documents

Publication Publication Date Title
JP3863376B2 (ja) 動き推定器
JP3715283B2 (ja) 動画像の画像圧縮符号化方法及び装置
KR101578052B1 (ko) 움직임 추정 장치 및 이를 구비하는 동영상 부호화 장치
US20050238102A1 (en) Hierarchical motion estimation apparatus and method
US10785498B2 (en) System and method of mapping multiple reference frame motion estimation on multi-core DSP architecture
JP2008538433A (ja) 領域ベース複数パス動き推定及び時間的動きベクトル候補の更新を用いたビデオ処理
Wang et al. A fast algorithm and its VLSI architecture for fractional motion estimation for H. 264/MPEG-4 AVC video coding
JPH1013839A (ja) 半画素動き推定装置
JPH09102954A (ja) 1つまたは2つの予測ブロックからブロックの画素値を計算する方法
US8135224B2 (en) Generating image data
JP2000106674A (ja) 動き検出方法および装置
KR100416444B1 (ko) 모션벡터선택방법및이방법을수행하는이미지처리장치
JP2006059341A (ja) 差分絶対値の和を計算するための回路
JP4597103B2 (ja) 動きベクトル探索方法及び装置
JP4178562B2 (ja) 動きベクトル検出装置および方法
JP3580612B2 (ja) 動画像符号化装置の動き検出装置
JP4101645B2 (ja) 動きベクトル検出装置,動きベクトル検出方法,プログラム,および記録媒体
Biswas et al. An efficient VLSI architecture of the enhanced three step search algorithm
US20040120402A1 (en) Motion estimation apparatus for image data compression
JP4155102B2 (ja) 画素値演算装置、動画像符号化装置及び動画像復号化装置
KR100926440B1 (ko) 영상부호화를 위한 블록 매칭 움직임 추정 장치
JP4185579B2 (ja) パイプライン構造計算回路
JP4160855B2 (ja) ブロックマッチング画像処理装置
TWI440362B (zh) 動作估算及動作補償電路
KR100948164B1 (ko) 중앙집중적 탐색 패턴을 이용한 움직임 예측 방법 및움직임 예측기

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040420

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050823

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20051124

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20051129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060214

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060928

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20091006

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20101006

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111006

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121006

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20131006

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees