CN102291581B - Realizing method of self-adaptive motion estimation supporting frame field - Google Patents

Realizing method of self-adaptive motion estimation supporting frame field Download PDF

Info

Publication number
CN102291581B
CN102291581B CN 201110266004 CN201110266004A CN102291581B CN 102291581 B CN102291581 B CN 102291581B CN 201110266004 CN201110266004 CN 201110266004 CN 201110266004 A CN201110266004 A CN 201110266004A CN 102291581 B CN102291581 B CN 102291581B
Authority
CN
China
Prior art keywords
sad
macro block
sub
mode
frame
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
CN 201110266004
Other languages
Chinese (zh)
Other versions
CN102291581A (en
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.)
Xidian University
Original Assignee
Xidian University
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 Xidian University filed Critical Xidian University
Priority to CN 201110266004 priority Critical patent/CN102291581B/en
Publication of CN102291581A publication Critical patent/CN102291581A/en
Application granted granted Critical
Publication of CN102291581B publication Critical patent/CN102291581B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

The invention discloses a self-adaptive motion estimating method supporting a frame field. The problem in the prior art that the realization difficulty of hardware is large is mainly solved. The method comprises the following steps of: dividing a video sequence into N macro block pairs in a size of a 32-line 16-row pixel, and performing a two-way design of carrying out coarse motion estimation and fine motion estimation on each macro block pair; when the coarse motion estimation is carried out, respectively determining upper macro blocks and lower macro blocks of the macro block pairs in a frame field mode, dividing each macro block into eight sub-blocks, carrying out transverse 4: 1 sampling on a source macro block and a reference macro block, and then determining an optimal motion vector type and an optimal matching position in the frame field mode, and determining the frame field mode adopted by the macro block pairs; and when the fine motion estimation is carried out, according toa result of the coarse motion estimation, determining optimal matching positions of integral pixel precision, half pixel precision and 1/4 pixel precision, so as to obtain a motion estimation result of the 1/4 pixel precision. By using the method, the realization difficulty of the hardware is decreased, and the processing capacity of H.264 video encoding is improved.

Description

Support the implementation method of frame field adaptive estimation
Technical field
The present invention relates to field of video image processing, relate in particular to a kind of implementation method of video coding, can be used for the H.264 video compression processing of video coding system.
Background technology
Following society is informationalized society, digitized information, especially the video after the digitlization and audio-frequency information have series of advantages, as intuitive, certainty, high efficiency, popularity etc., but amount of information is too big, storage and the transmission of the information of giving cause very big difficulty, become to hinder human one of the bottleneck of effective information that obtains and use.Video information is effectively used, must be solved the problem of compression rates and decoded image quality.Therefore, research and development novel and effective multi-medium data compaction coding method, storing and transmit these data with the form of compression will be best choice.Video encoding standard H.264 in, as shown in Figure 1, at first current macro is carried out infra-frame prediction or inter prediction, select best predictive mode, the predicted macroblock that is obtained by current macro and optimal mode produces residual error macro block, and it is carried out conversion, quantification; Quantization parameter is carried out the entropy coding; Result behind the coding is delivered to network layer to be transmitted; In order to guarantee the consistency of encoding and decoding, quantization parameter is carried out inverse quantization, inverse transformation, reconstruction, block-eliminating effect filtering simultaneously, with the coded reference of result as successive image.
H.264 in the practical application, mainly comprise several modules such as estimation, macroblock coding, entropy coding and block-eliminating effect filtering.At motion estimation module, present searching algorithm mainly comprises full-search algorithm and the fast search algorithm that much mates based on piece, mainly containing based on the fast search algorithm of piece coupling wherein: pyramid search method, diamond search method and three step search methods etc.Full-search algorithm need read lot of data, and based on the fast algorithm of piece coupling by the point of the part in the region of search being searched for the motion vector that obtains near-optimization, thereby reduction operand, increase arithmetic speed, but these fast search algorithms are based on the software proposition more, in the hardware implementation procedure, to face various difficulty, for example erratic memory read-write and lower resource utilization etc.
Summary of the invention
The objective of the invention is to the deficiency at above-mentioned prior art, a kind of implementation method of supporting the frame field adaptive estimation is provided, by the two-pass design that coarse movement is estimated and fine movement is estimated, be reduced in the difficulty that hardware is realized, improve the H.264 processing capability in real time of video coding.
One, term explanation
Macro block: image is divided into several pieces of 16 * 16, and each piece is called a macro block.
Quantization parameter: the value after pixel quantizes.
SAD:Sum of Absolute Differences, the absolute difference sum.
Motion vector: the motion vector of current macro relative reference macro block or the sub-piece of current sub-block relative reference.
Two, implementation
The technical scheme that realizes the object of the invention may further comprise the steps:
(1) it is right video sequence to be divided into the macro block of N 32 row, 16 row pixel sizes, and N is determined by the size of video sequence;
(2) each macro block is estimated carrying out coarse movement:
2a) under frame pattern, with macro block to the last macro block that is divided into 16 row, 16 row pixels and the following macro block of 16 row, 16 row pixels; Under the presence mode, 16 row, the 16 row pixels note that macro block is formed odd-numbered line is done macro block, 16 row, the 16 row pixels note that macro block dual numbers row is formed is done down macro block; Again each macro block is divided into 8 sub-pieces;
It is right 2b) the current macro block that will estimate to be done the source macro block to note, with estimate the source macro block to the time with macro block for referencial use note to be done reference macroblock right, respectively to the source macro block to reference macroblock to carrying out horizontal 4: 1 down-samplings, and calculate absolute difference sum SAD under each motion vector situation;
2c) according to the absolute difference sum SAD under each motion vector situation, determine optimal motion vectors type and best match position under the frame field mode respectively, and the frame field mode of definite macro block to adopting;
(3) each macro block is estimated carrying out fine movement
3a) according to optimal motion vectors type and best match position under the definite frame field mode of step (2), for each the sub-piece under the optimal motion vectors type, calculate it at the absolute difference sum SAD of the corresponding pixel points of zero motion vector position and the sub-piece of reference;
3b) according to optimal motion vectors type and best match position under the definite frame field mode of step (2), centered by best match position, set up the search window of 4 row, 8 row, for each the sub-piece under the optimal motion vectors type, calculate it at search each position in the window and absolute difference sum SAD with reference to the corresponding pixel points of sub-piece;
3c) according to step 3a) and step 3b) the SAD result that obtains, best match position is updated to the position at minimum SAD place;
3d) according to step 3c) best match position that obtains, calculate the SAD of 8 half-pixel position centered by best match position, best match position is updated to the position at minimum SAD place;
3e) according to step 3d) best match position that obtains, calculate the SAD of 8 1/4 location of pixels centered by best match position, best match position is updated to the position at minimum SAD place, obtain the fine movement estimated result of 1/4 pixel precision.
The present invention is compared with the prior art, and has the following advantages:
In motion estimation process, because existing full-search algorithm need read lot of data, the fast search algorithm that mates based on piece then needs to carry out a large amount of erratic read-writes, and these all are not easy to hardware and realize; And the present invention makes the data volume of read-write reduce 4 times owing to the method by horizontal 4: 1 down-samplings; By the two-pass design that coarse movement is estimated and fine movement is estimated, the mode of searching in order in the hunting zone makes arithmetic element carry out water operation rapidly simultaneously, is easy to hardware and realizes.
Description of drawings
Feature of the present invention and advantage further specify by the following drawings and example:
Fig. 1 is standard code system block diagram H.264;
Fig. 2 is estimation general flow chart of the present invention;
Fig. 3 is coarse movement estimator flow chart of the present invention;
Fig. 4 is the structural representation of macro block and each height piece;
Fig. 5 is the schematic diagram of horizontal 4: 1 down-samplings;
Fig. 6 is fine movement estimator flow chart of the present invention;
Fig. 7 is the search window of accurate estimation of the present invention;
Fig. 8 is the searching position schematic diagram of half-pixel accuracy;
Fig. 9 is the searching position schematic diagram of 1/4 pixel precision.
Embodiment
The present invention will be further described below in conjunction with accompanying drawing:
The present invention realizes is the estimation part in the standard code system H.264.In standard code system H.264, at first carry out the selection of frame mode and inter-frame mode, produce residual error macro block by current macro and predicted macroblock, it is carried out conversion, quantification; Quantization parameter is carried out the entropy coding; In order to guarantee the consistency of encoding and decoding, quantization parameter is carried out inverse quantization, inverse transformation, reconstruction and block-eliminating effect filtering simultaneously, the result who obtains is used as the coded reference of successive image; H.264 the structure of standard code system as shown in Figure 1.
With reference to Fig. 2, performing step of the present invention is as follows:
Step 1, the macro block that video sequence is divided into N 32 row, 16 row pixel sizes is right, and N determines that by the size of video sequence the right structure of macro block is designated as 16 * 32.
Step 2, is carried out coarse movement and is estimated as the basic exercise estimation unit with macro block.
With reference to Fig. 3, being implemented as follows of this step:
2.1) under frame pattern, with macro block to the last macro block that is divided into 16 row, 16 row pixels and the following macro block of 16 row, 16 row pixels; Under the presence mode, 16 row, the 16 row pixels note that macro block is formed odd-numbered line is done macro block, 16 row, the 16 row pixels note that macro block dual numbers row is formed is done down macro block; Each macro block is divided into 8 sub-pieces, comprises 2 16 * 8 sub-piece, 28 * 16 sub-piece and 48 * 8 sub-piece, the structure of last macro block, following macro block and each height piece is as shown in Figure 4; Wherein, the structure of last macro block is shown in Fig. 4 (a), and the structure of following macro block is shown in Fig. 4 (b), and the structure of 16 * 8 sub-pieces is shown in Fig. 4 (c), and the structure of 8 * 16 sub-pieces is shown in Fig. 4 (d), and the structure of 8 * 8 sub-pieces is shown in Fig. 4 (e);
2.2) that the current macro block that will estimate is done the source macro block to note is right, with estimate the source macro block to the time with macro block for referencial use note to be done reference macroblock right; From external memory, read respectively the source macro block to data and reference macroblock to data, according to following formula to the source macro block to reference macroblock to carrying out horizontal 4: 1 down-samplings:
X=clip((A+3B+3C+D)/8)
Wherein, X is the result of 4: 1 horizontal down-samplings, A, B, C, D be macro block to four horizontal adjacent positions, clip is round operation; The sub-piece of 8 * 8 sizes passes through horizontal 4: 1 structures behind the down-sampling as shown in Figure 5;
2.3) calculate horizontal 4: 1 behind the down-sampling the source macro block and the absolute difference sum SAD of the corresponding pixel points of reference macroblock, be designated as SAD 1mvThereby, obtain the SAD under the 1 motion vector situation;
2.4) calculate horizontal 4: 1 each 16 * 8 sub-pieces behind the down-sampling and absolute difference sum SAD with reference to the corresponding pixel points of sub-piece respectively, be designated as SAD 16 * 8Thereby, obtain the SAD of 16 * 8 sub-pieces under the 2 motion vector situations;
2.5) calculate horizontal 4: 1 each 8 * 16 sub-pieces behind the down-sampling and absolute difference sum SAD with reference to the corresponding pixel points of sub-piece respectively, be designated as SAD 8 * 16Thereby, obtain the SAD of 8 * 16 sub-pieces under the 2 motion vector situations;
2.6) calculate horizontal 4: 1 each 8 * 8 sub-pieces behind the down-sampling and absolute difference sum SAD with reference to the corresponding pixel points of sub-piece respectively, be designated as SAD 4mvThereby, obtain the SAD under 4 motion vectors;
2.7) according to the absolute difference sum SAD under each motion vector situation, determine optimal motion vectors type under the frame field mode according to following formula:
MV_MODE=(SAD 1mv<(∑SAD 16×8+cost 2mv))?1MV:(∑SAD 16×8<∑SAD 8×16)?2MV 16×8
(∑SAD 8×16+cost 2mv<(∑SAD 4mv+cost 4mv))?2MV 8×16:4MV
It is described that the syntactic structure of this formula is based on hardware language Verilog, and wherein, MV_MODE is the optimal motion vectors type; 1MV is 1 motion vector, 2MV 16 * 8Be 2 motion vectors under 16 * 8 sub-pieces, 2MV 8 * 16Be 2 motion vectors under 8 * 16 sub-pieces, 4MV is 4 motion vectors under 8 * 8 sub-pieces, cost 2mvBe the cost value under 2 motion vectors, its representative value is 64; Cost 4mvBe the cost value under 4 motion vectors, its representative value is 128;
Divide time-like, at first relatively SAD 1mv(∑ SAD 16 * 8+ cost 2mv), if SAD 1mv<(∑ SAD 16 * 8+ cost 2mv), then MV_MODE is 1MV; Otherwise, compare ∑ SAD 16 * 8With ∑ SAD 8 * 16If, ∑ SAD 16 * 8<∑ SAD 8 * 16, then MV_MODE is 2MV 16 * 8Otherwise, compare (∑ SAD 8 * 16+ cost 2mv) and (∑ SAD 4mv+ cost 4mv), if (∑ SAD 8 * 16+ cost 2mv)<(∑ SAD 4mv+ cost 4mv), then MV_MODE is 2MV 16 * 8Otherwise MV_MODE is 4MV;
2.8) determine best match position under the frame field mode according to following steps:
At first, with sub-piece carries out the SAD computing for the first time in the hunting zone position, be labeled as the best match position of this sub-piece, and the SAD of this best match position is labeled as minimum SAD;
Then, calculate this sub-piece at the SAD of next work location, if the SAD of this position less than the minimum SAD of mark, then is updated to best match position this position, and minimum SAD is updated to the SAD of this position; Travel through all positions in this sub-block searching range successively, can determine the best match position of each sub-piece under the frame field mode;
2.9) according to following formula, determine the frame field mode of macro block to adopting:
MBAFF_MODE=((SAD frame_top+SAD frame_bot)>(SAD field_top+SAD field_bot))?
field_mode:frame_mode
It is described that the syntactic structure of this formula is based on hardware language Verilog, and wherein, MBAFF_MODE is the pattern of macro block to adopting; Frame_mode is frame pattern, and field_mode is field mode; SAD Frame_topGo up the SAD of macro block during for frame pattern, SAD Frame_botBe the frame pattern SAD of macro block at present; SAD Field_topGo up the SAD of macro block during for field mode, SAD Field_botBe the field mode SAD of macro block at present;
Compare (SAD Frame_top+ SAD Frame_bot) and (SAD Field_top+ SAD Field_bot) size, if (SAD Frame_top+ SAD Frame_bot)>(SAD Field_top+ SAD Field_bot), then MBAFF_MODE is field_mode; Otherwise MBAFF_MODE is frame_mode.
Step 3, is carried out fine movement and is estimated as the basic exercise estimation unit with macro block.
With reference to Fig. 6, being implemented as follows of this step:
3.1) in common video sequence, a macro block is static with very big probability, optimal motion vectors type and best match position under the frame field mode of estimating to determine according to coarse movement, for each the sub-piece under the optimal motion vectors type, calculate it at the absolute difference sum SAD of the corresponding pixel points of zero motion vector position and the sub-piece of reference;
3.2) estimate optimal motion vectors type and best match position under definite frame field mode according to coarse movement, centered by the best match position that coarse movement is estimated, set up the search window of 4 row, 8 row, the structure of search window as shown in Figure 7, for each the sub-piece under the optimal motion vectors type, calculate it at search each position in the window and absolute difference sum SAD with reference to the corresponding pixel points of sub-piece;
3.3) for each the sub-piece under the optimal motion vectors type, according to step 3.1) and step 3.2), the best match position of determining to put in order pixel precision:
At first, with the best match position of zero motion vector position mark for whole pixel precision;
Then, 32 positions in the traversal search window, the position mark of SAD minimum is the minimum SAD position in the search window, and the SAD of minimum SAD position and the SAD of zero motion vector position compared, if the SAD of minimum SAD position, then will put in order the best match position of pixel precision less than the SAD of zero motion vector position and be updated to the interior minimum SAD position of search window; Otherwise do not upgrade;
3.4) according to step 3.3) best match position of the whole pixel precision that obtains, the SAD of 8 half-pixel position of calculating centered by best match position, 8 half-pixel position centered by best match position are determined the best match position of half-pixel accuracy as shown in Figure 8:
At first, with step 3.3) best match position of the whole pixel precision that obtains is labeled as the best match position of half-pixel accuracy;
Then, 8 half-pixel position of traversal centered by best match position, be the minimum SAD position of half-pixel accuracy with the position mark of SAD minimum, and the SAD of the best match position of the SAD of minimum SAD position and whole pixel precision compared, if the SAD of minimum SAD position less than the SAD of the best match position of whole pixel precision, then is updated to the best match position of half-pixel accuracy the minimum SAD position of half-pixel accuracy; Otherwise do not upgrade;
3.5) according to step 3.4) best match position of the half-pixel accuracy that obtains, the SAD of 8 1/4 location of pixels of calculating centered by the best match position of half-pixel accuracy, 8 1/4 location of pixels centered by the best match position of half-pixel accuracy are determined the best match position of 1/4 pixel precision as shown in Figure 9:
At first, with step 3.4) best match position of the half-pixel accuracy that obtains is labeled as the best match position of 1/4 pixel precision;
Then, 8 1/4 location of pixels of traversal centered by the best match position of half-pixel accuracy, be the minimum SAD position of 1/4 pixel precision with the position mark of SAD minimum, and the SAD of the best match position of the SAD of minimum SAD position and half-pixel accuracy compared, if the SAD of minimum SAD position less than the SAD of the best match position of half-pixel accuracy, then is updated to the best match position of 1/4 pixel precision the minimum SAD position of 1/4 pixel; Otherwise do not upgrade;
By each step that above coarse movement is estimated and fine movement is estimated, namely finished the two-pass design that coarse movement is estimated and fine movement is estimated, realized supporting the estimation of frame field adaptive.
The implementation method of support frame field adaptive estimation provided by the invention, by the two-pass design that coarse movement is estimated and fine movement is estimated, accelerate the estimation speed of macro block, reduced the difficulty on hardware is realized, improved the H.264 processing capability in real time of video coding.

Claims (6)

1. method of supporting the frame field adaptive estimation may further comprise the steps:
(1) it is right video sequence to be divided into the macro block of N 32 row, 16 row pixel sizes, and N is determined by the size of video sequence;
(2) each macro block is estimated carrying out coarse movement:
2a) under frame pattern, with macro block to the last macro block that is divided into 16 row, 16 row pixels and the following macro block of 16 row, 16 row pixels; Under the presence mode, 16 row, the 16 row pixels note that macro block is formed odd-numbered line is done macro block, 16 row, the 16 row pixels note that macro block dual numbers row is formed is done down macro block; Again each macro block is divided into 8 sub-pieces, comprises 2 16 * 8 sub-piece, 28 * 16 sub-piece and 48 * 8 sub-piece;
It is right 2b) the current macro block that will estimate to be done the source macro block to note, with estimate the source macro block to the time with macro block for referencial use note to be done reference macroblock right, respectively to the source macro block to reference macroblock to carrying out horizontal 4:1 down-sampling, and calculate absolute difference sum SAD under each motion vector situation;
2c) according to the absolute difference sum SAD under each motion vector situation, determine optimal motion vectors type and best match position under the frame field mode respectively, and the frame field mode of definite macro block to adopting;
(3) each macro block is estimated carrying out fine movement
3a) according to optimal motion vectors type and best match position under the definite frame field mode of step (2), for each the sub-piece under the optimal motion vectors type, calculate it at the absolute difference sum SAD of the corresponding pixel points of zero motion vector position and the sub-piece of reference;
3b) according to optimal motion vectors type and best match position under the definite frame field mode of step (2), centered by best match position, set up the search window of 4 row, 8 row, for each the sub-piece under the optimal motion vectors type, calculate it at search each position in the window and absolute difference sum SAD with reference to the corresponding pixel points of sub-piece;
3c) according to step 3a) and step 3b) the SAD result that obtains, best match position is updated to the position at minimum SAD place;
3d) according to step 3c) best match position that obtains, calculate the SAD of 8 half-pixel position centered by best match position, best match position is updated to the position at minimum SAD place;
3e) according to step 3d) best match position that obtains, calculate the SAD of 8 1/4 location of pixels centered by best match position, best match position is updated to the position at minimum SAD place, obtain the fine movement estimated result of 1/4 pixel precision.
2. method for estimating according to claim 1, wherein step 2b) related to the source macro block to reference macroblock to carrying out horizontal 4:1 down-sampling, undertaken by following formula:
X=clip((A+3B+3C+D)/8)
Wherein, X is the result of the horizontal down-sampling of 4:1, A, B, C, D be macro block to four horizontal adjacent positions, clip is round operation.
3. method for estimating according to claim 1, step 2b wherein) the absolute difference sum SAD under related each motion vector situation of calculating, comprise the SAD that calculates under 1 motion vector, 2 motion vectors and the 4 motion vector situations, wherein calculate the SAD under the 1 motion vector situation, be the absolute difference sum SAD that calculates the corresponding pixel points of source macro block behind the horizontal 4:1 down-sampling and reference macroblock, be designated as SAD 1mvCalculate the SAD under the 2 motion vector situations, comprise the calculating to two sub-pieces of two sub-pieces of 16 * 8 and 8 * 16: two sub-pieces for 16 * 8, calculate each 16 * 8 sub-piece and absolute difference sum SAD with reference to the corresponding pixel points of sub-piece behind the horizontal 4:1 down-sampling respectively, be designated as SAD 16 * 8Two sub-pieces for 8 * 16 calculate each 8 * 16 sub-piece and absolute difference sum SAD with reference to the corresponding pixel points of sub-piece behind the horizontal 4:1 down-sampling respectively, are designated as SAD 8 * 16Calculating the SAD under the 4 motion vector situations, is 8 * 8 sub-pieces and absolute difference sum SAD with reference to the corresponding pixel points of sub-piece that calculate behind the horizontal 4:1 down-sampling, is designated as SAD 4mv
4. method for estimating according to claim 3, wherein step 2c) optimal motion vectors type under related definite frame field mode, undertaken by following formula:
MV_MODE=(SAD 1mv<(ΣSAD 16×8+cost 2mv))?1MV:(ΣSAD 16×8<ΣSAD 8×16)?2MV 16×8:(ΣSAD 8×16+cost 2mv<(ΣSAD 4mv+cost 4mv))?2MV 8×16:4MV
It is described that the syntactic structure of this formula is based on hardware language Verilog, and wherein, MV_MODE is the optimal motion vectors type; 1MV is 1 motion vector, 2MV 16 * 8Be 2 motion vectors under 16 * 8 sub-pieces, 2MV 8 * 16Be 2 motion vectors under 8 * 16 sub-pieces, 4MV is 4 motion vectors under 8 * 8 sub-pieces, cost 2mvBe the cost value under 2 motion vectors, its representative value is 64; Cost 4mvBe the cost value under 4 motion vectors, its representative value is 128;
Divide time-like, at first relatively SAD 1mv(Σ SAD 16 * 8+ cost 2mv), if SAD 1mv<(Σ SAD 16 * 8+ cost 2mv), then MV_MODE is 1MV; Otherwise, compare Σ SAD 16 * 8With Σ SAD 8 * 16If, Σ SAD 16 * 8<Σ SAD 8 * 16, then MV_MODE is 2MV 16 * 8Otherwise, compare (Σ SAD 8 * 16+ cost 2mv) and (Σ SAD 4mv+ cost 4mv), if (Σ SAD 8 * 16+ cost 2mv)<(Σ SAD 4mv+ cost 4mv), then MV_MODE is 2MV 16 * 8Otherwise MV_MODE is 4MV.
5. method for estimating according to claim 1, wherein step 2c) best match position under related definite frame field mode, carry out as follows:
At first, with sub-piece carries out the SAD computing for the first time in the hunting zone position, be labeled as the best match position of this sub-piece, and the SAD of this best match position is labeled as minimum SAD;
Then, calculate this sub-piece at the SAD of next work location, if the SAD of this position less than the minimum SAD of mark, then is updated to best match position this position, and minimum SAD is updated to the SAD of this position; Travel through all positions in this sub-block searching range successively, can determine the best match position of each sub-piece of frame field mode.
6. method for estimating according to claim 1, wherein step 2c) the frame field mode of definite macro block to adopting that relate to, undertaken by following formula:
MBAFF_MODE=((SAD frame_top+SAD frame_bot)>(SAD field_top+SAD field_bot))?field_mode:frame_mode
It is described that the syntactic structure of this formula is based on hardware language Verilog, and wherein, MBAFF_MODE is the pattern of macro block to adopting; Frame_mode is frame pattern, and field_mode is field mode; SAD Frame_topGo up the SAD of macro block during for frame pattern, SAD Frame_botBe the frame pattern SAD of macro block at present; SAD Field_topGo up the SAD of macro block during for field mode, SAD Field_botBe the field mode SAD of macro block at present;
Compare (SAD Frame_top+ SAD Frame_bot) and (SAD Field_top+ SAD Field_bot) size, if (SAD Frame_top+ SAD Frame_bot) (SAD Field_top+ SAD Field_bot), then MBA_FF is field_mode; Otherwise MBAFF_MODE is frame_mode.
CN 201110266004 2011-09-09 2011-09-09 Realizing method of self-adaptive motion estimation supporting frame field Expired - Fee Related CN102291581B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110266004 CN102291581B (en) 2011-09-09 2011-09-09 Realizing method of self-adaptive motion estimation supporting frame field

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110266004 CN102291581B (en) 2011-09-09 2011-09-09 Realizing method of self-adaptive motion estimation supporting frame field

Publications (2)

Publication Number Publication Date
CN102291581A CN102291581A (en) 2011-12-21
CN102291581B true CN102291581B (en) 2013-09-25

Family

ID=45337652

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110266004 Expired - Fee Related CN102291581B (en) 2011-09-09 2011-09-09 Realizing method of self-adaptive motion estimation supporting frame field

Country Status (1)

Country Link
CN (1) CN102291581B (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10554965B2 (en) * 2014-08-18 2020-02-04 Google Llc Motion-compensated partitioning
US10291932B2 (en) * 2015-03-06 2019-05-14 Qualcomm Incorporated Method and apparatus for low complexity quarter pel generation in motion search
CN104902256B (en) * 2015-05-21 2018-01-09 南京大学 A kind of binocular stereo image decoding method based on motion compensation
TWI746994B (en) 2018-06-19 2021-11-21 大陸商北京字節跳動網絡技術有限公司 Different precisions for different reference list
TWI815967B (en) 2018-09-19 2023-09-21 大陸商北京字節跳動網絡技術有限公司 Mode dependent adaptive motion vector resolution for affine mode coding
CN109348234B (en) * 2018-11-12 2021-11-19 北京佳讯飞鸿电气股份有限公司 Efficient sub-pixel motion estimation method and system
JP7235877B2 (en) 2019-01-31 2023-03-08 北京字節跳動網絡技術有限公司 Context for Encoding Affine Mode Adaptive Motion Vector Resolution
CN113424534A (en) * 2019-02-01 2021-09-21 北京字节跳动网络技术有限公司 Multiple syntax elements for adaptive motion vector resolution
CN111968151B (en) * 2020-07-03 2022-04-05 北京博雅慧视智能技术研究院有限公司 Motion estimation fine search method and device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1476252A (en) * 2003-07-04 2004-02-18 清华大学 Stepped prediction coding method based on macro block group structure in video frequency signal
CN1595990A (en) * 2004-07-02 2005-03-16 上海广电(集团)有限公司中央研究院 Frame field adaptive coding method based on image slice structure
CN1925616A (en) * 2006-09-14 2007-03-07 清华大学 Macro block pair class frame field adaptive coding/decoding method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1476252A (en) * 2003-07-04 2004-02-18 清华大学 Stepped prediction coding method based on macro block group structure in video frequency signal
CN1595990A (en) * 2004-07-02 2005-03-16 上海广电(集团)有限公司中央研究院 Frame field adaptive coding method based on image slice structure
CN1925616A (en) * 2006-09-14 2007-03-07 清华大学 Macro block pair class frame field adaptive coding/decoding method

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Analysis and Architecture Design of an HDTV720p 30 Frames/s H.264/AVC Encoder;Tung-Chien Chen等;《IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY》;20060630;第16卷(第6期);第673-688页 *
Tung-Chien Chen等.Analysis and Architecture Design of an HDTV720p 30 Frames/s H.264/AVC Encoder.《IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY》.2006,第16卷(第6期),
宋锐,赵波, 肖嵩.适合硬件实现的运动估计方法及其VLSI实现.《西安电子科技大学学报(自然科学版)》.2006,第33卷(第2期),
适合硬件实现的运动估计方法及其VLSI实现;宋锐,赵波, 肖嵩;《西安电子科技大学学报(自然科学版)》;20060430;第33卷(第2期);第257-261页 *

Also Published As

Publication number Publication date
CN102291581A (en) 2011-12-21

Similar Documents

Publication Publication Date Title
CN102291581B (en) Realizing method of self-adaptive motion estimation supporting frame field
CN104967857B (en) The method and apparatus that image is encoded/decoded
CN107809642B (en) Method for encoding and decoding video image, encoding device and decoding device
CN103260031B (en) Method and apparatus for encoding/decoding to motion vector
CN101699865B (en) Method for fast searching mass movement self-adapting sub pixel
CN101610413B (en) Video coding/decoding method and device
CN102316317B (en) Method and device for generating predicted value of picture
CN102547296B (en) Motion estimation accelerating circuit and motion estimation method as well as loop filtering accelerating circuit
CN101605262B (en) Method and device for predicting size motion of variable block
CN106803960A (en) Picture decoding method
CN103096080A (en) Apparatus For Estimating Motion Vector Of Current Block
CN104202602B (en) Perform the device and method of Video coding
CN101505427A (en) Movement estimation apparatus in video compression encoding algorithm
CN105025298B (en) The method and apparatus that image is encoded/decoded
CN101170696B (en) Motion estimating method
CN101765011A (en) Method and device for scaling motion estimation
CN105263026B (en) Global vector acquisition methods based on probability statistics and image gradient information
CN111901590B (en) Refined motion vector storage method and device for inter-frame prediction
CN100385957C (en) Kinematic vector predicting method
WO2021031225A1 (en) Motion vector derivation method and apparatus, and electronic device
CN104202606B (en) One kind determines method based on HEVC estimation starting points
CN100366092C (en) Search method for video frequency encoding based on motion vector prediction
KR20040035390A (en) Method and apparatus for motion estimation using of adaptive search pattern for video sequence compression
CN103780914A (en) Loop filter accelerating circuit and loop filter method
CN201639717U (en) Size-changeable motion predicting device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130925

Termination date: 20190909