JP3528115B2 - Motion prediction vector detection circuit - Google Patents
Motion prediction vector detection circuitInfo
- Publication number
- JP3528115B2 JP3528115B2 JP11226396A JP11226396A JP3528115B2 JP 3528115 B2 JP3528115 B2 JP 3528115B2 JP 11226396 A JP11226396 A JP 11226396A JP 11226396 A JP11226396 A JP 11226396A JP 3528115 B2 JP3528115 B2 JP 3528115B2
- Authority
- JP
- Japan
- Prior art keywords
- pixel
- data
- vector
- pixel precision
- search window
- 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
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
【0001】[0001]
【発明の属する技術分野】本発明は動き予測ベクトル検
出回路に関し、特に半画素精度で画像データの動き予測
を行なうようにした動き予測ベクトル検出回路に関する
ものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a motion vector predictor detection circuit and, more particularly, to a motion vector predictor detection circuit for predicting motion of image data with half pixel accuracy.
【0002】[0002]
【従来の技術】画像符号化方式においては、対象となる
画像情報を符号化する際に、予め画像の動きベクトルを
求めてこの動きベクトルに基づいて画像情報のデータ量
を符号化することによって、画像データの伝送効率及び
圧縮効率を向上するような技術が用いられている。2. Description of the Related Art In an image coding method, when a target image information is coded, a motion vector of the image is obtained in advance and the data amount of the image information is coded based on the motion vector. Technologies that improve the transmission efficiency and compression efficiency of image data are used.
【0003】図2(a)はこの様な動き予測ベクトル検
出方式の概念を説明する図であり、1フレームの画像デ
ータFを複数のブロックに分割しておく。そして、現フ
レームにおいて、任意の位置にあるブロックは直前フレ
ーム(1つ前のフレーム)の同じ位置若しくはその近傍
に存在することになるから、直前フレームのある領域
(これをサーチウィンドウSW)に対して、このブロッ
ク(これを参照ブロックRB)がどこに位置していたか
を検索し、最も近似した部分(破線で示すブロックRB
´とする)との相対的位置関係をベクトルAとして表現
する。FIG. 2 (a) is a diagram for explaining the concept of such a motion vector predictor detection method, in which one frame of image data F is divided into a plurality of blocks. Then, in the current frame, a block at an arbitrary position exists at the same position as the immediately preceding frame (the frame immediately before) or in the vicinity thereof, and therefore, with respect to a certain region (the search window SW) of the immediately preceding frame. Then, it is searched where this block (referred to as the reference block RB) was located, and the most approximate part (block RB indicated by a broken line).
It is expressed as a vector A.
【0004】このベクトルAの評価値として、参照ブロ
ックRBとサーチウィンドウSW内の最近似ブロックR
B´との対応画素データ同士の差の総和をも算出して、
ベクトルAと共にこの評価値をも出力するようになって
いる。As the evaluation value of the vector A, the reference block RB and the most approximate block R in the search window SW.
The sum of the differences between the corresponding pixel data with B'is also calculated,
This evaluation value is also output together with the vector A.
【0005】この様な動き予測ベクトル検出回路では、
1画素精度の検索領域であるサーチウィンドウSWと参
照ブロックRBとから、動き予測を行い、平均絶対値誤
差(MAE)推定法等による比較結果から最小となるベ
クトル及び評価値を求めている。従って、参照ブロック
RBが検索サーチウィンドウSWに対して半画素精度で
動いたとしても、1画素単位でしかベクトルが検出でき
ないことになる。In such a motion vector predictor detection circuit,
Motion estimation is performed from the search window SW and the reference block RB, which are the search area of one pixel accuracy, and the minimum vector and evaluation value are obtained from the comparison result by the mean absolute value error (MAE) estimation method or the like. Therefore, even if the reference block RB moves with half-pixel accuracy with respect to the search window SW, the vector can be detected only in units of one pixel.
【0006】そこで、半画素精度の動きベクトル検出処
理を行う例が特開平5−336514号公報に開示され
ている。この例においては、半画素精度の動きベクトル
検出処理を、フレームメモリの個数を増やすことなく単
一クロックを用いて実行するようになっている。Therefore, an example of performing motion vector detection processing with half-pixel precision is disclosed in Japanese Patent Laid-Open No. 5-336514. In this example, half-pixel precision motion vector detection processing is executed using a single clock without increasing the number of frame memories.
【0007】すなわち、1画素精度のベクトルを求め、
このベクトルを基準にして周辺画素からの補間処理を行
い、半画素領域から半画素精度のベクトルを検索して、
1画素精度のベクトルと合成したものを、半画素精度の
動きベクトルとして出力する。そして、補間処理を行う
に当り、画素データを並列に分割することで、補間にか
かる時間を短縮し、単一クロック系を用いて回路を構成
している。That is, a vector with one pixel accuracy is obtained,
Perform interpolation processing from surrounding pixels based on this vector, search a vector with half-pixel accuracy from the half-pixel area,
A combination with a one-pixel precision vector is output as a half-pixel precision motion vector. When performing the interpolation process, the pixel data is divided in parallel to shorten the time required for the interpolation, and the circuit is configured using a single clock system.
【0008】[0008]
【発明が解決しようとする課題】この様に、特開平5−
336514号公報の技術では、1画素精度のベクトル
を求め、この動きベクトルが示す画素を中心に必要な範
囲のみオリジナル画素から補間画素を求めて、この求め
た補間画素から1/2画素精度のベクトルを探索し、1
画素精度のベクトルと合成した動きベクトルを1/2画
素精度の動きベクトルとしている。As described above, Japanese Patent Laid-Open No.
According to the technique of Japanese Patent No. 336514, a vector with 1-pixel precision is obtained, interpolation pixels are obtained from original pixels only in a necessary range centered on the pixel indicated by this motion vector, and a vector with 1 / 2-pixel precision is obtained from the obtained interpolation pixels. Search for 1
The motion vector combined with the pixel precision vector is defined as the 1/2 pixel precision motion vector.
【0009】このため、補間画素を生成するためにある
領域の画素データを蓄えるマルチポートVRAM(ビデ
オランダムアクセスメモリ)と、その周辺回路としてマ
ルチポートVRAMに画素データを出力する並列化回路
と、1/2画素精度のベクトルを探索するために必要な
領域をマルチポートVRAMから読出すための補間アド
レス生成回路等が必要である。For this reason, a multiport VRAM (video random access memory) for storing pixel data of a certain area for generating an interpolation pixel, a parallel circuit for outputting the pixel data to the multiport VRAM as a peripheral circuit thereof, and 1 An interpolation address generation circuit or the like for reading the area required for searching a vector with a / 2 pixel precision from the multiport VRAM is required.
【0010】本発明の目的は、動きベクトルを検出する
ための検索領域であるサーチウィンドウを予め半画素精
度の領域として半画素精度のベクトル検出を可能とし
て、回路構成の簡素化を図るようにした動き予測ベクト
ル検出回路を提供することである。An object of the present invention is to make it possible to detect a vector with half-pixel accuracy by using a search window, which is a search area for detecting a motion vector, as an area with half-pixel accuracy in advance, thereby simplifying the circuit configuration. A motion prediction vector detection circuit is provided.
【0011】[0011]
【課題を解決するための手段】本発明によれば、1フレ
ームの画像データを複数のブロックに分割して、直前フ
レームの所定領域であるサーチウィンドウに対して現在
フレームの所定参照ブロックがどこに位置していたか
を、対応画素毎に順次照合して最も近似したブロックと
当該参照ブロックとの相対的位置関係をベクトルとして
表し、このベクトルと共に、対応画素毎の差分値の和を
当該ベクトルの評価値として出力するようにした動き予
測ベクトル検出回路であって、前記サーチウィンドウの
1画素精度のデータに対して、これ等各1画素に隣接す
る画素のデータと当該1画素データとの平均データを夫
々算出して半画素精度のデータを生成する半画素精度デ
ータ生成手段と、前記サーチウィンドウの1画素精度の
データと前記参照ブロックのデータとを照合して1画素
精度のベクトルとその評価値とを生成する1画素精度ベ
クトル検出手段と、前記半画素精度データ生成手段によ
る前記サーチウィンドウの半画素精度のデータと前記参
照ブロックのデータとを照合して半画素精度のベクトル
とその評価値とを生成する半画素精度ベクトル検出手段
と、前記1画素精度及び半画素精度ベクトル検出手段の
両評価値を比較してこの比較結果に応じて前記1画素精
度及び半画素精度のベクトルを択一的に導出する選択手
段と、を含み、参照ブロックに対する前記1画素精度ベ
クトル検出と半画素精度ベクトル検出とを同時に並列処
理することを特徴とする動き予測ベクトル検出回路が得
られる。According to the present invention, image data of one frame is divided into a plurality of blocks, and a predetermined reference block of the current frame is located with respect to a search window which is a predetermined area of the immediately preceding frame. The relative positional relationship between the most approximate block and the reference block is sequentially collated for each corresponding pixel, and the sum of the difference values for each corresponding pixel together with this vector is evaluated as the evaluation value of the vector. A motion vector predictor detection circuit for outputting 1-pixel precision data in the search window, and average data of the pixel data adjacent to each 1-pixel pixel and the 1-pixel data. Half-pixel precision data generation means for calculating and generating half-pixel precision data, one-pixel precision data of the search window and the reference block 1-pixel precision vector detection means for generating a 1-pixel precision vector and its evaluation value by collating the data of the search window, the half-pixel precision data of the search window by the half-pixel precision data generation means, and the reference. The half-pixel precision vector detection means for generating a half-pixel precision vector and its evaluation value by comparing with the block data and the one-pixel precision and half-pixel precision vector detection means are compared and the comparison is made. Selecting means for selectively deriving the one-pixel precision vector and the half-pixel precision vector according to the result, and the one-pixel precision vector for the reference block.
Cuttle detection and half-pixel precision vector detection are performed in parallel at the same time.
Motion prediction vector detection circuit, characterized in that management is obtained.
【0012】[0012]
【発明の実施の形態】本発明の作用について述べる。1
画素精度のサーチウィンドウデータの他に、このサーチ
ウィンドウデータの各1画素を水平,垂直及び斜めの各
方向に夫々半画素ずらした半画素精度のデータを補間生
成する。この場合の半画素ずらしたデータとしては、各
1画素の回りの隣接データと当該1画素データとの平均
値データを求めて、これを半画素精度のデータとする。BEST MODE FOR CARRYING OUT THE INVENTION The operation of the present invention will be described. 1
In addition to the pixel-precision search window data, half-pixel-precision data in which one pixel of this search window data is shifted by half a pixel in each of the horizontal, vertical, and diagonal directions is interpolated and generated. In this case, as half-pixel shifted data, average value data of adjacent data around each one pixel and the one-pixel data is obtained, and this is set as half-pixel precision data.
【0013】そして、これ等半画素精度のサーチウィン
ドウデータと入力された参照ブロックのデータとのブロ
ックマッチング処理(最近似ブロックか否かの判断処
理)と、従来の1画素精度のサーチウィンドウデータと
入力された参照ブロックデータとのブロックマッチング
処理との両処理を行い、これ等両ブロックマッチング処
理による評価値が最も小さい方のベクトルを最適ベクト
ルとするのである。Then, a block matching process (determination process as to whether or not the block is the closest block) between the search window data having the half-pixel precision and the data of the input reference block, and the conventional search window data having the one-pixel precision are performed. Both the block matching process with the input reference block data is performed, and the vector having the smallest evaluation value by these block matching processes is set as the optimum vector.
【0014】以下に図面を用いて本発明の実施例につい
て詳述する。Embodiments of the present invention will be described in detail below with reference to the drawings.
【0015】図1は本発明の実施例のブロック図であ
る。図1において、現フレームの参照ブロックRBのデ
ータS1はベクトル検出回路1〜4の各1入力となって
いる。直前フレームのサーチウィンドウS2のデータS
2はベクトル検出回路1の他入力となると共に、半画素
データ生成回路5へも供給されている。FIG. 1 is a block diagram of an embodiment of the present invention. In FIG. 1, the data S1 of the reference block RB of the current frame is one input to each of the vector detection circuits 1 to 4. Data S in the search window S2 of the immediately preceding frame
2 is the other input of the vector detection circuit 1 and is also supplied to the half pixel data generation circuit 5.
【0016】参照ブロックデータS1とサーチウィンド
ウデータS2とは共に従来と同様に1画素精度のデータ
であるものとする。従って、ベクトル検出回路1は1画
素精度のブロックマッチング処理を行って、両入力デー
タS1,S2間の最小ベクトルV0とその評価値H0と
を出力する。It is assumed that both the reference block data S1 and the search window data S2 are data of one pixel precision as in the conventional case. Therefore, the vector detection circuit 1 performs a block matching process with one pixel accuracy and outputs the minimum vector V0 between both input data S1 and S2 and its evaluation value H0.
【0017】半画素データ生成回路5は1画素精度のサ
ーチウィンドウデータS2から半画素精度のデータS
3,S4,S5を生成するものであり、例えば、図3の
丸数字で示す各1画素に対して、垂直方向に半画素ずら
した画素S3(×印),水平方向に半画素ずらした画素
S4(△印)及び斜め方向に半画素ずらした画素S5
(□印)に夫々対応する半画素補間データを夫々生成す
る。The half-pixel data generation circuit 5 uses the search window data S2 of 1-pixel precision to the data S of half-pixel precision.
3, S4, S5 are generated, and for example, a pixel S3 (x mark) vertically shifted by one pixel and a pixel shifted horizontally by half pixel with respect to each pixel indicated by circled numbers in FIG. S4 (marked by Δ) and pixel S5 that is shifted by half a pixel in the diagonal direction
Half-pixel interpolation data corresponding to each (□) is generated.
【0018】ベクトル検出回路2〜4の各々は、半画素
補間データS3(×),S4(△),S5(□)の各々
と参照ブロックデータS1との間のブロックマッチング
処理を行って、最小ベクトルV1〜V3と各評価値H1
〜H3とを夫々出力する。Each of the vector detection circuits 2 to 4 performs block matching processing between each of the half-pixel interpolation data S3 (x), S4 (Δ), S5 (□) and the reference block data S1 to obtain the minimum value. Vectors V1 to V3 and each evaluation value H1
To H3 are output respectively.
【0019】比較器6はこれ等評価値H0〜H3の比較
を行って、最も小さい評価値に対応する最小ベクトルを
セレクタ7が選択する様にセレクタ制御信号Cを生成す
る。これにより、セレクタ7の出力には半画素精度の最
適動き予測ベクトルVOUT が導出されることになる。The comparator 6 compares these evaluation values H0 to H3 and generates a selector control signal C so that the selector 7 selects the minimum vector corresponding to the smallest evaluation value. As a result, the optimum motion prediction vector VOUT with half-pixel precision is derived from the output of the selector 7.
【0020】半画素データ生成回路5について以下に詳
細に説明する。この場合、ベクトル検出回路1〜4にお
けるブロックマッチング処理時の各ブロックの大きさと
しては、一般にm×n画素(m,n共に2以上の整数)
とされるが、ここでは簡単化のために、図2(b)に示
す如く、3×3画素を1ブロックとしてこのブロック単
位でブロックマッチング処理がなされるものとする。The half pixel data generation circuit 5 will be described in detail below. In this case, the size of each block during the block matching processing in the vector detection circuits 1 to 4 is generally m × n pixels (both m and n are integers of 2 or more).
However, here, for simplification, as shown in FIG. 2B, it is assumed that the block matching process is performed on a block-by-block basis with 3 × 3 pixels as one block.
【0021】従って、参照ブロックRBは3×3画素と
なり、比較されるべきサーチウィンドウSWも3×3画
素単位のブロックに分割して、これ等両ブロックのブロ
ックマッチングがなされる。Therefore, the reference block RB has 3 × 3 pixels, and the search window SW to be compared is also divided into blocks of 3 × 3 pixels, and block matching of these two blocks is performed.
【0022】このブロックマッチングにおいては、ブロ
ック間の対応画素同士の比較が行われるが、この対応画
素同士の比較の順序としては、図2(b)に示す如く、
縦スキャンと横スキャンとの2通りの方法が存在する。In this block matching, the corresponding pixels between blocks are compared with each other. The order of comparison between the corresponding pixels is as shown in FIG. 2 (b).
There are two methods, vertical scanning and horizontal scanning.
【0023】半画素データ生成回路5では、これ等2通
りのスキャン方法によりその構成が異なるもので、先ず
図2(b)の縦スキャンの場合について説明する。The half-pixel data generation circuit 5 has a different structure depending on these two scanning methods. First, the case of vertical scanning in FIG. 2B will be described.
【0024】図3を参照すると、丸数字が各ブロックの
1画素データの順番を示しており、垂直方向に半画素ず
らした×印のデータを生成するには、例えばとその直
下のとの画素データの平均値を算出してこれを半画素
補間データ(×印)とする。また、ブロックの最下の
の画素データに関しては、当該ブロックの直下の第10
0番目の画素データとの平均値を半画素補間データとす
る必要がある。Referring to FIG. 3, the circled numbers indicate the order of 1-pixel data of each block. To generate the data of the X mark which is shifted by half a pixel in the vertical direction, for example, the pixel between and The average value of the data is calculated, and this is used as half-pixel interpolation data (marked with x). Also, regarding the pixel data at the bottom of the block, the tenth pixel immediately below the block is displayed.
The average value with the 0th pixel data needs to be the half-pixel interpolation data.
【0025】従って、以上の×印の半画素補間データを
得るには、図4の如き各画素のタイミング位相が制御さ
れることが必要となる。図4において、最上行は入力さ
れるサーチウィンドウデータS2の画素順番を示し、第
2行はこのサーチウィンドウデータをFIFOメモリに
て蓄積しておき、最上行のデータと位相合わせを行って
出力した後の画素順番を示し、第3行はこのFIFOメ
モリの出力を1画素遅延した後の画素順番を示す。Therefore, in order to obtain the above-mentioned half-pixel interpolated data of X, it is necessary to control the timing phase of each pixel as shown in FIG. In FIG. 4, the top row shows the pixel order of the input search window data S2, and the second row stores this search window data in a FIFO memory and outputs it after performing phase matching with the top row data. The subsequent pixel order is shown, and the third row shows the pixel order after the output of this FIFO memory is delayed by one pixel.
【0026】各画素内の左上の黒点で示す2つの画素同
士のデータ加算を行って平均値を求めれば、目的とする
×印の半画素補間データが生成されることが判る。It can be seen that if the data of two pixels indicated by the upper left black dot in each pixel is added to obtain the average value, the intended half-pixel interpolated data of X is generated.
【0027】そこで、縦スキャンの場合の半画素データ
生成回路5の例が図5に示す如く得られる。図5におい
て、サーチウィンドウデータS2はセレクタ52の一入
力となると共に、FIFO(First in Fir
st out)メモリ51へも入力される。このFIF
Oメモリ51の出力S10がセレクタ52の他入力とな
っている。Therefore, an example of the half-pixel data generating circuit 5 in the case of vertical scanning is obtained as shown in FIG. In FIG. 5, the search window data S2 becomes one input of the selector 52, and at the same time, the FIFO (First in FIR)
(st out) is also input to the memory 51. This FIF
The output S10 of the O memory 51 is the other input of the selector 52.
【0028】このFIFOメモリ51の出力S10は1
画素遅延器53を介して加算器54の一入力となってお
り、この加算器54の他入力にはセレクタ52の出力が
印加されている。この加算器54は両入力の加算を行っ
た後、LSB(最下位ビット)を無視して出力する(加
算データを1ビットだけLSB側へシフト)ことで、加
算結果を1/2するものであり、両入力の平均データを
出力する。The output S10 of this FIFO memory 51 is 1
It is one input of the adder 54 via the pixel delay device 53, and the output of the selector 52 is applied to the other input of this adder 54. This adder 54 adds the two inputs and then outputs by ignoring the LSB (least significant bit) (shifts the addition data by 1 bit to the LSB side) to halve the addition result. Yes, output the average data of both inputs.
【0029】尚、他の加算回路についても全て同様であ
るものとし、2入力の平均データを出力するものとす
る。The same applies to all the other adder circuits, and the average data of two inputs is output.
【0030】タイミング制御回路59は入力データの各
画素データに同期したクロックCLKを入力としてFI
FOメモリ51の書込み、読出し(W/R)タイミング
を生成すると共に、セレクタ52のセレクタ制御信号S
12をも生成する。The timing control circuit 59 receives the clock CLK synchronized with each pixel data of the input data as an input, and outputs FI.
The write / read (W / R) timing of the FO memory 51 is generated, and the selector control signal S of the selector 52 is generated.
Also produces twelve.
【0031】加算器54の出力である平均値S3が垂直
方向の半画素補間データ(×印)となり、図4のタイミ
ングチャートに各部の画素番号とセレクタ52のセレク
タ制御信号S12との関係を示している。The average value S3 output from the adder 54 becomes half-pixel interpolation data in the vertical direction (marked with X), and the timing chart of FIG. 4 shows the relationship between the pixel number of each part and the selector control signal S12 of the selector 52. ing.
【0032】水平方向の半画素補間データ(△印)は、
1画素遅延素子S3の出力S11と、この出力S11を
3画素遅延素子(m=3)57にて3画素分遅延したデ
ータとを、加算器58にて加算することにより、例えば
画素ととの平均値S4が算出されることになる。Horizontal half-pixel interpolation data (marked by Δ) is
The output S11 of the one-pixel delay element S3 and the data obtained by delaying the output S11 by three pixels by the three-pixel delay element (m = 3) 57 are added by the adder 58, so that, for example, a pixel The average value S4 will be calculated.
【0033】斜め方向の半画素補間データ(□印)は、
ここでは、同一行の互いに隣接する×印同士の平均値を
算出したものとすると、加算器54による平均値(×
印)とこれを3画素遅延素子55にて3画素分遅延した
データとを、加算器56にて加算することにより、デー
タS5として得られる。Half-pixel interpolation data (square mark) in the diagonal direction is
Here, if it is assumed that the average value of X marks adjacent to each other in the same row is calculated, the average value (×
Mark) and data delayed by 3 pixels by the 3 pixel delay element 55 are added by the adder 56 to obtain data S5.
【0034】図5に示した半画素データ生成回路5によ
り、図3に示す如く、1画素精度のサーチウィンドウデ
ータS2(縦スキャン)が、図3のブロック30にて示
す如く、半画素精度の補間データとして得られることに
なるのである。By the half-pixel data generation circuit 5 shown in FIG. 5, the search window data S2 (vertical scan) with 1-pixel precision as shown in FIG. It will be obtained as interpolation data.
【0035】以上はブロックマッチング処理時におい
て、図2(b)の縦スキャンをなす場合の例であるが、
図2(b)の横スキャンの場合においては、半画素デー
タ生成回路5としては、同様な考え方により図6に示す
回路構成となる。The above is an example in which the vertical scanning shown in FIG. 2B is performed during the block matching process.
In the case of the horizontal scan of FIG. 2B, the half pixel data generation circuit 5 has the circuit configuration shown in FIG.
【0036】図6において、サーチウィンドウデータS
2はセレクタ62の一入力となると共に、FIFOメモ
リ61の入力となっており、このメモリ61の出力がセ
レクタ62の他入力となる。セレクタ62の出力とメモ
リ61の出力の1画素遅延素子63による遅延出力と
が、加算器64にて加算されて平均値が算出され、×印
の画素データS3が得られる。In FIG. 6, search window data S
2 serves as one input of the selector 62 and also serves as an input of the FIFO memory 61, and the output of this memory 61 becomes the other input of the selector 62. The output of the selector 62 and the delay output of the one-pixel delay element 63 of the output of the memory 61 are added by the adder 64 to calculate the average value, and the pixel data S3 indicated by x is obtained.
【0037】この画素データS3はセレクタ67及び加
算器68の各一入力となると共に、FIFOメモリ65
の入力ともなっており、このメモリ65の出力は1画素
遅延数66を介してセレクタ67の他入力となってい
る。このセレクタ67の出力は加算器68の他入力とな
って、□印の画素データS5が得られる。This pixel data S3 becomes one input to each of the selector 67 and the adder 68, and also the FIFO memory 65.
The output of the memory 65 is the other input of the selector 67 via the one-pixel delay number 66. The output of the selector 67 becomes the other input of the adder 68, and the pixel data S5 marked with □ is obtained.
【0038】また、1画素遅延素子63の出力は加算器
72及びセレクタ71の各一入力となると共に、FIF
Oメモリ69の一入力ともなっている。このメモリ69
の出力は1画素遅延素子70を介してセレクタ71の他
入力となっており、このセレクタ71の出力は加算器7
2の他入力となって、△印の画素データS6が得られ
る。The output of the one-pixel delay element 63 becomes one input of the adder 72 and the selector 71, and the FIF
It also serves as one input of the O memory 69. This memory 69
Of the selector 71 is input to the other input of the selector 71 via the 1-pixel delay element 70. The output of the selector 71 is the adder 7
The other input becomes 2, and the pixel data S6 marked with Δ is obtained.
【0039】尚、FIFOメモリとしては、ブロックの
構成をm×n画素,水平方向のブロック数をiとする
と、m×n×i画素分のサーチウィンドウデータS2を
蓄え得る容量を有するものとする。Assuming that the block structure is m × n pixels and the number of blocks in the horizontal direction is i, the FIFO memory has a capacity capable of storing search window data S2 for m × n × i pixels. .
【0040】[0040]
【発明の効果】叙上の如く、本発明によれば、サーチウ
ィンドウデータとして1画素精度のデータから半画素精
度のデータを生成し、これ等1画素精度と半画素精度の
両サーチウィンドウデータと、参照ブロックデータとの
ブロックマッチングを行うようにしているので、簡単な
構成でより正確な動きベクトルの検出が可能となるとい
う効果がある。As described above, according to the present invention, half-pixel precision data is generated as search window data from one-pixel precision data, and both search window data having one-pixel precision and half-pixel precision are generated. Since the block matching with the reference block data is performed, the motion vector can be detected more accurately with a simple configuration.
【図1】本発明の実施例のブロック図である。FIG. 1 is a block diagram of an embodiment of the present invention.
【図2】ブロックマッチング処理を説明する図である。FIG. 2 is a diagram illustrating a block matching process.
【図3】半画素精度のサーチウィンドウデータを生成す
る過程を説明する図である。FIG. 3 is a diagram illustrating a process of generating search window data with half-pixel accuracy.
【図4】半画素精度のサーチウィンドウデータを生成す
るための隣接画素間の位相を示すタイミングチャートで
ある。FIG. 4 is a timing chart showing a phase between adjacent pixels for generating search window data with half-pixel accuracy.
【図5】図1の半画素データ生成回路の一例を示す図で
ある。5 is a diagram illustrating an example of the half-pixel data generation circuit in FIG.
【図6】図1の半画素データ生成回路の他の例を示す図
である。FIG. 6 is a diagram showing another example of the half-pixel data generation circuit of FIG.
1〜4 ベクトル生成回路 5 半画素データ生成回路 6 比較器 7,52,62,67,71 セレクタ 51,61,65,69 FIFOメモリ 53,55,57,63,66,70 遅延素子 54,56,58,64,68,72 加算器 59 タイミング制御回路 1-4 vector generation circuit 5 Half pixel data generation circuit 6 comparator 7,52,62,67,71 Selector 51, 61, 65, 69 FIFO memory 53, 55, 57, 63, 66, 70 Delay element 54, 56, 58, 64, 68, 72 Adder 59 Timing control circuit
Claims (4)
クに分割して、直前フレームの所定領域であるサーチウ
ィンドウに対して現在フレームの所定参照ブロックがど
こに位置していたかを、対応画素毎に順次照合して最も
近似したブロックと当該参照ブロックとの相対的位置関
係をベクトルとして表し、このベクトルと共に、対応画
素毎の差分値の和を当該ベクトルの評価値として出力す
るようにした動き予測ベクトル検出回路であって、前記
サーチウィンドウの1画素精度のデータに対して、これ
等各1画素に隣接する画素のデータと当該1画素データ
との平均データを夫々算出して半画素精度のデータを生
成する半画素精度データ生成手段と、前記サーチウィン
ドウの1画素精度のデータと前記参照ブロックのデータ
とを照合して1画素精度のベクトルとその評価値とを生
成する1画素精度ベクトル検出手段と、前記半画素精度
データ生成手段による前記サーチウィンドウの半画素精
度のデータと前記参照ブロックのデータとを照合して半
画素精度のベクトルとその評価値とを生成する半画素精
度ベクトル検出手段と、前記1画素精度及び半画素精度
ベクトル検出手段の両評価値を比較してこの比較結果に
応じて前記1画素精度及び半画素精度のベクトルを択一
的に導出する選択手段と、を含み、参照ブロックに対す
る前記1画素精度ベクトル検出と半画素精度ベクトル検
出とを同時に並列処理することを特徴とする動き予測ベ
クトル検出回路。1. The image data of one frame is divided into a plurality of blocks, and where the predetermined reference block of the current frame is located with respect to the search window, which is the predetermined area of the immediately preceding frame, is sequentially determined for each corresponding pixel. Motion prediction vector detection in which the relative positional relationship between the block closest to the reference and the reference block is expressed as a vector, and the sum of the difference values for each corresponding pixel is output as the evaluation value of the vector together with this vector. A circuit, which calculates half-pixel precision data by calculating average data of data of pixels adjacent to each one pixel of the search window and one-pixel precision data of the search window. 1 pixel by comparing the 1-pixel precision data of the search window with the data of the reference block. 1-pixel precision vector detection means for generating a precision vector and its evaluation value, and half-pixel precision data by collating the half-pixel precision data of the search window by the half-pixel precision data generation means with the reference block data. Of the half-pixel precision vector detecting means for generating the vector and its evaluation value and the one-pixel precision and half-pixel precision vector detecting means are compared, and the one-pixel precision and half-pixel are calculated according to the comparison result. comprising selecting means for alternatively derive a vector accuracy, a, against the reference block
1-pixel precision vector detection and half-pixel precision vector detection
A motion vector predictor detection circuit characterized in that output and output are processed in parallel at the same time .
の1画素精度のデータとこの各1画素を基準として少な
くとも垂直方向、水平方向に夫々1画素ずれた各画素と
当該1画素との各平均データを夫々算出して前記半画素
精度のデータとして出力する手段を有することを特徴と
する請求項1記載の動き予測ベクトル検出回路。2. The interpolating means, data of one pixel accuracy of the search window, and respective average data of each pixel and at least one pixel shifted in the vertical direction and in the horizontal direction with respect to each one pixel as a reference. 2. The motion vector predictor detection circuit according to claim 1, further comprising means for calculating each of the values and outputting the data as the half-pixel precision data.
記各平均データと前記参照ブロックのデータとを夫々照
合して半画素精度のベクトルとその評価値とを生成する
ようにしたことを特徴とする請求項2記載の動き予測ベ
クトル検出回路。3. The half-pixel precision vector detection means collates each of the average data and the data of the reference block to generate a half-pixel precision vector and its evaluation value. The motion vector predictor detection circuit according to claim 2.
の評価値に対応するベクトルを最適ベクトルとして出力
するよう構成されていることを特徴とする請求項3記載
の動き予測ベクトル検出回路。4. The motion prediction vector detection circuit according to claim 3, wherein the selection means is configured to output a vector corresponding to the smallest evaluation value among the evaluation values as an optimum vector.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11226396A JP3528115B2 (en) | 1996-05-07 | 1996-05-07 | Motion prediction vector detection circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11226396A JP3528115B2 (en) | 1996-05-07 | 1996-05-07 | Motion prediction vector detection circuit |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09298751A JPH09298751A (en) | 1997-11-18 |
JP3528115B2 true JP3528115B2 (en) | 2004-05-17 |
Family
ID=14582333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11226396A Expired - Fee Related JP3528115B2 (en) | 1996-05-07 | 1996-05-07 | Motion prediction vector detection circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3528115B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000041251A (en) | 1998-07-22 | 2000-02-08 | Mitsubishi Electric Corp | Moving vector detector |
US7408988B2 (en) * | 2002-12-20 | 2008-08-05 | Lsi Corporation | Motion estimation engine with parallel interpolation and search hardware |
JP2011182181A (en) * | 2010-03-01 | 2011-09-15 | Nanao Corp | Motion vector arithmetic apparatus by block, or method for the same |
-
1996
- 1996-05-07 JP JP11226396A patent/JP3528115B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH09298751A (en) | 1997-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7012649B2 (en) | Image processing apparatus and method, program, and recording medium | |
US7738556B2 (en) | Apparatus and method for estimating motion vector with gradient method | |
US20050238102A1 (en) | Hierarchical motion estimation apparatus and method | |
US5793443A (en) | Motion vector detection circuit | |
JP2006331136A (en) | Moving vector detection apparatus | |
JP2861462B2 (en) | Motion vector detection device | |
JP3528115B2 (en) | Motion prediction vector detection circuit | |
JP2930675B2 (en) | Motion vector detection method using initial displacement vector | |
JP3212917B2 (en) | Scanning line interpolation device and scanning line interpolation method | |
JPS62230180A (en) | Motion vector detecting system | |
US8200032B2 (en) | Image processing method and related apparatus for performing image processing operation according to image blocks in horizontal direction | |
JP4250598B2 (en) | Motion compensation IP conversion processing apparatus and motion compensation IP conversion processing method | |
JP3576618B2 (en) | Motion vector detection method and apparatus | |
JP3580612B2 (en) | Motion detection device for video coding device | |
JP2000165883A (en) | Motion vector detector | |
JP4241021B2 (en) | Motion vector detection method, motion vector detection device, and image encoding device | |
JP3483751B2 (en) | Motion vector detecting device and motion vector detecting method | |
JP2007503656A (en) | Edge direction estimation | |
JP4972321B2 (en) | Method and apparatus for scanning pixels in a sequence of images representing temporal recurrence and method and apparatus for estimating current frame motion with respect to a reference frame | |
JP3611958B2 (en) | Motion vector detection method and motion vector detection circuit for moving picture signal | |
JP3587188B2 (en) | Digital image signal processing apparatus and processing method | |
JP3271387B2 (en) | Motion amount detection device and motion amount detection method | |
JP4274430B2 (en) | Motion vector detection device | |
JP3334317B2 (en) | Image matching method and apparatus | |
JP4570700B2 (en) | Motion vector detector |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20020219 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040212 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080305 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090305 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090305 Year of fee payment: 5 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090305 Year of fee payment: 5 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100305 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100305 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110305 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |