CN1306821C - Method and its device for forming moving vector prediction in video image - Google Patents

Method and its device for forming moving vector prediction in video image Download PDF

Info

Publication number
CN1306821C
CN1306821C CNB2004100702053A CN200410070205A CN1306821C CN 1306821 C CN1306821 C CN 1306821C CN B2004100702053 A CNB2004100702053 A CN B2004100702053A CN 200410070205 A CN200410070205 A CN 200410070205A CN 1306821 C CN1306821 C CN 1306821C
Authority
CN
China
Prior art keywords
prediction
domain prediction
module
time domain
control word
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.)
Active
Application number
CNB2004100702053A
Other languages
Chinese (zh)
Other versions
CN1589024A (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.)
Spreadtrum Communications Shanghai Co Ltd
Original Assignee
National Source Coding Center Digital Audio And Video Frequency Technology (beijing) 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 National Source Coding Center Digital Audio And Video Frequency Technology (beijing) Co Ltd filed Critical National Source Coding Center Digital Audio And Video Frequency Technology (beijing) Co Ltd
Priority to CNB2004100702053A priority Critical patent/CN1306821C/en
Publication of CN1589024A publication Critical patent/CN1589024A/en
Application granted granted Critical
Publication of CN1306821C publication Critical patent/CN1306821C/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

The present invention discloses a method and a device for generating the prediction of a motion vector in a video image. A table is looked up by a main control module according to the type of a current macro block to obtain a corresponding integral controlling word of a macro block. A corresponding subblock controlling word in the integral controlling word of a macro block is read, airspace predicting processing is carried out according to the content of a current control word, and a prediction MV value of a current block is derived. Or time-domain predicting processing is carried out to derive the prediction MV value of the current block; or the prediction MV value of the current block is generated by adopting an access copying mode. If a vector residual error exists, summation calculation is carried out; if a current subblock is the last one of macro blocks, the generation processing of the MV of the current macro block is ended; if the current subblock is not the last one of the macro blocks, a control word of the next subblock is reread. The present invention solves the problem of multiple MV generation caused by various macro block types and variable block sizes, and thus, the present invention which is convenient for implementing soft hardware has the advantages of simple prediction generating process of the motion vector, clear control logic, brief and regular structure and easy expansion.

Description

Motion-vector prediction generates in a kind of video image method and device thereof
Technical field
The present invention relates in a kind of digital video coding/decoding technology field, method and device thereof to motion-vector prediction generation in the video decode, especially when video decode for the motion vector of interframe encode, adopt regular succinct hardware configuration to realize method and device thereof that its prediction generates.
Background technology
Digital Television, next-generation mobile communications, broadband network communication, these high-tech industries of household consumption electronics group's common technology is to concentrate on to look the multimedia messages treatment technology that audio frequency is main contents, particularly on the data compression technique, video coding and decoding technology is to realize high-quality, storage of low-cost multi-medium data and the key of transmitting efficiently.
In the whole video coding, most code efficiency comes from inter prediction and uses prediction module to solve the temporal redundancy of video sequence.Motion vector (Motion Vector is called for short MV) movement tendency of record block in interframe encode, each piece obtains decoding and reconstituting piece by the MV indication, so only needs the residual error of these two pieces of coding to get final product.Because the characteristics of video sequence time domain redundancy, this residual values is more much smaller than the original value of this encoding block, thereby can reduce code check effectively.
All there are these two kinds of interframe encode types of P image and B image in (as MPEG series and H.26x serial) in existing video standard.The P image is the single directional prediction coding, and the B image is a bi-directional predictive coding.Each inter-coded macroblocks is all corresponding some to MV.MPEG2 and H.263 in the standard each inter-coded macroblocks all be corresponding a pair of MV, H.263+ with MPEG4 in because 8 * 8 sub-pieces are arranged, so each macro block can be a pair of MV (16 * 16) or four couples of MV (8 * 8).
Along with the continuous progress of computer hardware technique, video coding has also obtained new development.Motion Picture Experts Group that International Organization for Standardization is divided into (Moving Picture Expert Group is called for short MPEG) and International Telecommunication Union have released new H.264 standard jointly in 2002.The digital audio/video encoding and decoding technique standard operation group of China (Audio Video coding StandardWorkgroup of China is called for short AVS) also released AVSVideo 1.0 standards of independent intellectual property right the end of the year 2003.The common feature of these two standards is that encoder complexity significantly increases, and block size is divided meticulouslyr during coding, and macro block (mb) type increases, and the influence that brings is that prediction and the generation of MV becomes more complicated, has increased the realization difficulty of software and hardware.
The prediction of MV generates and comprises prediction and generate twice processing.By predicted operation, thus the MV numerical value (representing) that obtains predicting with mvp.If motion vector residual error (representing with mvd) is arranged, then final MV is mvp and mvd sum; As not having mvd, then final MV is exactly the numerical value of mvp.According to the characteristics of video sequence time-domain and frequency-domain correlation, the related MV prediction of the macro block (mb) type in the existing standard roughly is divided into spatial domain prediction, time domain prediction and 3 kinds of modes of access copy.Spatial domain prediction is left side and the known MV of top adjacent block that utilizes current block, according to the characteristics of motion relevance on their spaces, and the prediction MV numerical value of acquisition current block.Time domain prediction mainly is used in the B image, and it obtains with reference to MV to the piece position of reference picture correspondence from its forward direction or back, according to the characteristics of motion continuity on the time domain, derives the prediction MV numerical value of current block.The access copy mode is meant that when the motion of sequence was very little, current macro and previous reference picture correspondence position macro block were basic identical, and do not need to carry out prediction processing this moment again, do not have the vector residual error yet, and its MV can represent with (0,0) motion vector.
Motion-vector prediction handle to be what the sub-piece at a certain macro block carried out, if same macro block has a plurality of sub-pieces, the predictive mode of each height piece can be different.Such combination makes the prediction of MV generate to handle and becomes complicated unusually.With AVS 1.0 is example, nearly 30 kinds of macro block (mb) types, and B_8 wherein * 8 types, each macro block are divided into four sub-pieces again, and each sub-piece can have 4 seed categories, and 256 kinds of situations have combined.H.264 macro block can be assigned to 4 * 4 sizes, and macro block of its maximum situation has 16 motion vectors.The macroblock partitions mode is seen Fig. 1.Can see that from the mode of macro block (mb) type and macroblock partitions all MV that will generate macro block need consider multiple combination, handling process will be very complicated.Fig. 2, Fig. 3 have provided the flow chart of P image and B image M V generation respectively.
The processing of Fig. 2 and Fig. 3 all direct parsing of primal algorithm obtains, every kind of macro block (mb) type all corresponding independent processing route.Build hardware according to the parsing of algorithm and realize module, will complicated state machine occur, as shown in Figure 4.Fig. 4 is a kind of state machine diagram that motion vector generates, and is made up of 26 states, and left and right sides state is corresponding P image and B treatment of picture process respectively.Can see that this structure is unusual irregularity, control is complicated.Hardwired can be realized its function, but because state is many, the difficult mistake of finding appears in adjacent states correlation complexity easily.And each state is very definite, and this structure can not be carried out extension process, and a state is changed, and will involve adjacent a plurality of state variation.
Prior art is handled various macro block (mb) types successively according to code stream.Though computation complexity is not high, the pairing processing mode of different macro block (mb) types has nothing in common with each other, and causes that to handle branch various, the control logic complexity, and the structure irregularity, each single processing branch cooperates confusion alternately.Because macro block can split into many seed block combinations, the processing of different sub-pieces also can be inconsistent, handles then frequently judgment processing mode successively.Under the higher demand of new standard, prior art can not have been finished MV prediction generation task preferably, presses for new more effective technology and solves.
Summary of the invention
Technical problem to be solved by this invention is, at the deficiencies in the prior art, motion-vector prediction generates in a kind of video image method and device thereof are proposed, solve because macro block (mb) type is various and the variable MV that causes of block size generates complicated problems, make the generative process of motion-vector prediction simple, control logic is clear, and is simple for structure, is convenient to software and hardware and realizes.
Another technical problem to be solved by this invention is, at the deficiencies in the prior art, motion-vector prediction generating apparatus in a kind of video image is proposed, it is many to be used for solving prior art motion-vector prediction generate pattern, control is complicated, the structure irregularity, adjacent states correlation complexity is unfavorable for the problem that hardware is realized and is difficult to expand.
The objective of the invention is to realize by the following technical solutions:
The method that motion-vector prediction generates in a kind of video image comprises the steps:
Step 1, initialization, master control module are tabled look-up according to the type of current macro and are obtained the whole control word of corresponding macro block;
Step 2, master control module read corresponding sub-block control word in the whole control word of this macro block, according to the content of current control word, if carry out spatial domain prediction, execution in step three according to the numerical value in the sub-piece number of the macro block register; If carry out time domain prediction, execution in step four; If be the access copy mode, then execution in step five;
Step 3, carry out spatial domain prediction by the spatial domain prediction module and handle, derive the prediction MV numerical value of current block; Execution in step six;
Step 4, carry out time domain prediction by the time domain prediction module and handle, derive the prediction MV numerical value of current block; Execution in step six;
Step 5, employing access copy mode generate the MV of current block, and the MV of current macro is (0,0) vector; Execution in step seven;
Step 6, judge whether to exist the vector residual error according to the content of current control word, if any, carrying out read group total, promptly final MV is prediction MV and vector residual error sum; As do not have, carry out next step;
Step 7, judge that whether current sub-block is last of macro block, if, finish the generation of current macro MV and handle, if not, the numerical value in the sub-piece number of the macro block register adds 1, execution in step two.
Described control word comprises at least: Direct Model time domain prediction (Direct), symmetric pattern time domain prediction (Symmetric), MVD information (Read_MVD), spatial domain prediction (MV_Pred), wherein, Direct Model time domain prediction (Direct) is used for expression and carries out the processing of Direct Model time domain prediction, whether carries out described operation with 1 bit representation;
Symmetric pattern time domain prediction (Symmetric) is used for expression and carries out the processing of symmetric pattern time domain prediction, whether carries out described operation with 1 bit representation;
MVD information (Read_MVD) is used for expression and whether reads MVD information, is used to represent whether carry out described operation with 1;
Spatial domain prediction (MV_Pred) is used for expression and carries out spatial domain prediction and handle, and wherein, whether carries out this operation with 2 bit representations, and operate once when carrying out this operation or front and back to each once.
Method of the present invention makes that by the whole control word of macro block is set the prediction generative process of motion vector is simple, and control logic is clear, and is simple for structure, is convenient to software and hardware and realizes.
The present invention also provides the device that motion-vector prediction generates in a kind of video image, and this device comprises master control module, spatial domain prediction module, time domain prediction module, access copy module; Wherein,
Described master control inside modules is preserved the whole control of all types of macro blocks word table, described master control module analysis current macro type, obtain the control word of current macro by tabling look-up, to spatial domain prediction module or time domain prediction module or access copy module or its combination transmitting control commands, and handle the motion vector that generates video image according to the content of control word according to above each module return information;
The control command that described spatial domain prediction module is sent according to the master control module is carried out corresponding spatial domain prediction and is handled, and the prediction MV that will obtain sends to the master control module;
The control command that described time domain prediction module is sent according to the master control module is carried out corresponding time domain prediction and is handled, and the prediction MV that will obtain sends to the master control module;
The control command that access copy module is sent according to the master control module is carried out the access copy process, and the MV that obtains is sent to the master control module.
This device can also increase the respective handling module according to actual conditions, or each submodule of front is increased function.In the corresponding processing module of increase or in to each submodule increase function of front, increase or revise the control field of the macro block integral body control word table of master control inside modules preservation, the master control module is finished the processing module of increase or the controlled function of each submodule increase function according to the meaning of the respective field of control word in the whole control of this macro block word table.
In the present invention, each module in this device is come whole the driving by state machine, drives each module work according to method flow, and wherein, each module is made of the prior art module.
Apparatus structure provided by the invention is regular, control is simple, the correlation of adjacent states is simple, and,, can increase corresponding processing module by increasing or revise the control field of control word in the control table, can carry out the function expansion easily, and each submodule is relatively independent, does not influence it and independently operates.
Description of drawings
Fig. 1 is AVS 1.0 macroblock partitions schematic diagrames;
Fig. 2 is a MV prediction product process schematic diagram in the AVS 1.0 video decode P images;
Fig. 3 is a MV prediction product process schematic diagram in the AVS 1.0 video decode B images;
Fig. 4 is the conventional host state machine schematic diagram that AVS 1.0 video decode MV prediction generates;
Fig. 5 is that AVS 1.0 video decode 0_0_00_0 control word MV prediction generates schematic diagram;
Fig. 6 is that AVS 1.0 video decode 0_0_01_0 control word MV prediction generates schematic diagram;
Fig. 7 is that AVS 1.0 video decode 0_0_10_0 control word MV prediction generates schematic diagram;
Fig. 8 is that AVS 1.0 video decode 0_1_01_0 control word MV prediction generates schematic diagram;
Fig. 9 is that AVS 1.0 video decode 0_1_01_1 control word MV prediction generates schematic diagram;
Figure 10 is that AVS 1.0 video decode 1_0_00_0 control word MV prediction generates schematic diagram;
Figure 11 is that AVS 1.0 video decode MV prediction generates the general frame schematic diagram;
Figure 12 is that AVS 1.0 video decode MV prediction generates recommendation host state machine schematic diagram;
The MV prediction product process schematic diagram of the first sub-piece of Figure 13 one embodiment of the invention;
The MV prediction product process schematic diagram of the second sub-piece of Figure 14 one embodiment of the invention;
The MV prediction product process schematic diagram of the 3rd sub-piece of Figure 15 one embodiment of the invention;
Figure 16 video decode MV prediction of the present invention generating apparatus schematic diagram;
Figure 17 AVS 1.0 video decode MV prediction generating apparatus schematic diagram.
Embodiment
The present invention is described in further detail (is example with AVSVideo 1.0 coding standards) below in conjunction with specific embodiment and accompanying drawing:
The invention provides method and device thereof that a kind of novel motion-vector prediction that is used for video decode generates, its purpose is the mode with control word, module by regular unanimity realizes that the prediction of motion vector generates, the motion-vector prediction generate pattern is many in the existing main flow video coding of solution, control is complicated, is unfavorable for hard-wired problem.
Six big classes below macro block (mb) type has in AVS 1.0:
In following table, to the reference key numbering of reference picture, being numbered-1 expression did not have reference picture before and after reff/refb represented respectively, and 0 represents the nearest of reference picture and present image, and 1 secondly, and 3 presentation videos distance farthest; Vecf_x/y and vecb_x/y represent x and the y numerical value of front and back to MV respectively.
1.Intra Mode (frame mode, I/P/B)
reff -1 refb -1
vecf_x 0 vecb_x 0
vecf_y 0 vecb_y 0
The interior frame by frame coding of frame mode is handled macro block, does not have MV, does not need to carry out predicted operation, does not also have MVD information, and sub-piece can be 16 * 16,8 * 8.
2, Direct Mode (Direct Model, B)
A) Spatial Direct (spatial domain Direct Model)
reff 0 refb 0
vecf_x mvpf_x vecb_x mvpb_x
vecf_y mvpf_y vecb_y mvpb_y
When corresponding blocks was intraframe coding, Direct Model was not because not with reference to MV, handle and become the spatial domain mode when back.Because need sagittal MV, need carry out twice spatial domain prediction operation of forward-backward algorithm this moment, but not have MVD information, sub-piece can be 16 * 16,8 * 8.Mvpf_x/y and mvpb_x/y represent x and the y numerical value of front and back to prediction MV respectively.
B) Temporal Direct (time domain direct mode)
reff 0 refb 0
vecf_x scalf_x vecb_x scalb_x
vecf_y scalf_y vecb_y scalb_y
Time domain direct mode is derived front and back to MV by distance between computing block by its proportionate relationship, does not have MVD information, but need carry out the proportional zoom calculating of time domain, and sub-piece can be 16 * 16,8 * 8.Scalf_x/y and scalb_x/y represent x and the y numerical value of front and back to convergent-divergent MV respectively.
3, Forward Mode (forward mode, P/B)
reff ref_frame refb -1
vecf_x mvdf_x+mvp_x vecb_x 0
vecf_y mvdf_y+mvp_y vecb_y 0
When forward mode is handled the forward direction reference picture index number from code stream and MVD information obtain (ref_frame) together, carry out spatial domain prediction and handle the back and obtain prediction MV (mvp_x/y), obtain final forward direction MV after adding vector residual error (mvdf_x/y).There is not the back this moment to MV.Sub-piece can be 16 * 16,16 * 8,8 * 16 and 8 * 8.
4, Symmetric Mode (symmetric pattern, B)
reff ref_frame refb ~ref_frame
vecf_x mvdf_x+mvp_x vecb_x scalb_x
vecf_y mvdf_y+mvp_y vecb_y scalb_y
When symmetric pattern is handled the forward direction reference picture index number from code stream and MVD information obtain (ref_frame) together, carry out spatial domain prediction and handle the back and obtain prediction MV (mvp_x/y), obtain final forward direction MV after adding vector residual error (mvdf_x/y).The back is obtained by the ref_frame negate to reference picture index number, but the back need carry out time domain prediction to MV and handle, between computing block after the distance in proportion relation obtain the MV (scalb_x/y) of final convergent-divergent.Sub-piece can be 16 * 16,16 * 8,8 * 16 and 8 * 8.
5, (back is to pattern, B) for Backward Mode
reff -1 refb Ref_frame
vecf_x 0 vecb_x mvdb_x+mvp_x
vecf_y 0 vecb_y mvdb_y+mvp_y
The back when mode treatment after to reference picture index number from code stream and MVD information obtain (ref_frame) together, carry out spatial domain prediction and handle the back and obtain prediction MV (mvp_x/y), add obtain after the vector residual error (mvdb_x/y) final back to MV.There is not forward direction MV this moment.Sub-piece can be 16 * 16,16 * 8,8 * 16 and 8 * 8.
6, Skip Mode (skip mode, P)
A) Zero Motion (zero motion)
reff 0 refb -1
vecf_x 0 vecb_x 0
vecf_y 0 vecb_y 0
The zero motion skip mode of P image is the access copy mode, does not need to carry out predicted operation, does not also have MVD information, and forward direction MV is (0,0).There is not the back this moment to MV.Sub-block size is 16 * 16.
B) nonZero Motion (motion is arranged)
reff 0 refb -1
vecf_x mvp_x vecb_x 0
vecf_y mvp_y vecb_y 0
The skip mode of P image need carry out the spatial domain prediction operation, but does not have MVD information, and forward direction MV is prediction MV (mvp_x/y).There is not the back this moment to MV.Sub-block size is 16 * 16.
In view of the defective of conventional method to the MV generating run, the present invention extracts the common ground of the MV generating mode of various macro block (mb) type correspondences, construct a simple master control module according to these co-operate, control each peripheral certain functional modules with whole control word and finish required function.
The generative process of described control word is as follows:
Step 1, analysis MV prediction generate the various situations of the different sub-pieces combinations with macro block of the variety of way of handling, and list the detailed process that their are operated;
The similarities and differences that combinations thereof is handled is found out in step 2, analysis, operational processes is resolved into the module of each function singleness;
Step 3, the similar module of pooling function are built into all functional modules the processing framework of an integral body according to its processing order;
Step 4, with in the processing procedure values of moving of the various operative combination in step 1 Unified frame in the step 3; Different operative combination is not that each functional module all needs action according to its concrete demand of handling;
The operating position of step 5, whole each functional module of statistics according to whether using the control bit of setting this module, is used if exist repeatedly, then needs more control bits to represent;
Step 6, set whole control word; The all functions module is arranged in the whole control word by processing order, and, sets the bit wide and the meaning of each module each field in whole control word successively according to the result of step 5.
Concrete generative process is as follows:
For the P image of AVS 1.0 and the analysis of B image M V generating run as shown in Table 1 and Table 2:
The MV generating run is analyzed in the table 1.P image
mb_type Read_MVD MV_Pred opt_nums
Skip mode P_Skip_ ZeroMotion (0) 16×16 0
P_Skip_ Motion 16×16 1
Forward mode P_16×16 (1) 16×16 2
P_16×8 (2) 16×8 ① ③ ② ④ 4
P_8×16 (3) 8×16 ① ③ ② ④ 4
P_8×8 P_8×8ref0 (4) (5) 8×8 ① ③ ⑤ ⑦ ② ④ ⑥ ⑧ 8
Frame mode I_8×8 (6) 16×16 0
Table 1 is the MV generating run analysis signal of P image.The macro block tupe is shown in first tabulation.Secondary series is represented the various combinations of macro block (mb) type and macroblock partitions, and for example the forward mode of P images is represented in P_16 * 8, and block size is 16 * 8, and type number is 2.Read_MVD represents whether the operation of reading MVD information needs, and MV_Pred represents the operation of MV spatial domain prediction, and opt_nums represents to handle total number of operations of these macro block needs.The process of the numeral operation in the circle.Be example with P_16 * 8 equally, because this macro block is divided into up and down 16 * 8 two sub-pieces, each sub-piece needs to handle respectively, and forward mode need read MVD and spatial domain prediction operation, and so total number of operations is 4, order of operation as 1. 2. 3. 4. shown in.
The MV generating run is analyzed (removing B_8 * 8) in the table 2-1.B image
mb_type Direct Forward Symmetric Backward opt_ nums
Read_MVD MV_Pred Read_MVD MV_Pred
16×16 Direct B_Direct (Spatial) (0) 2
B_Direct (Temporal) ①② ③④ 4
16×16 B_Fwd (1) 2
B_Bck (2) 2
B_Sym (3) 3
16×8 8×16 B_Fwd_Fwd (4/5) ① ③ ② ④ 4
B_Bck_Bck (6/7) ① ③ ② ④ 4
B_Fwd_Bck (8/9) 4
B_Bck_Fwd (10/11) 4
B_Fwd_Sym (12/13) ① ③ ② ④ 5
B_Bck_Sym (14/15) 5
B_Sym_Fwd (16/17) ① ④ ② ⑤ 5
B_Sym_Bck (18/19) 5
B_Sym_Sym (20/21) ① ④ ② ⑤ ③ ⑥ 6
Intra I_8×8 (23) 0
The MV generating run is analyzed (B_8 * 8) in the table 2-2.B image
subblock_type Direct Forward Symmetric Backward opt_ nums
Read_MVD MV_Pred Read_MVD MV_Pred
8×8 SB_Direct (Spatial) (0) 2
SB_Direct (Temperal) (0) 1
SB_Fwd (1) 2
SB_Bck (2) 2
SB_Sym (3) 3
Table 2 is MV generating run analysis signals of B image, and the implication and the table 1 of each list item are similar, and table 2-1 is the analysis of removing outer other all types of operations in B_8 * 8 in the B image, and table 2-2 is the analysis of B_8 in the B image * 8 type operations.The dividing mode of macro block is shown in first tabulation.Secondary series is represented macro block (mb) type and corresponding types numbering thereof.Direct represents the processing of Direct Model time domain prediction, and Symmmetric represents the processing of symmetric pattern time domain prediction.Read_MVD represents to read the operation of MVD information, and MV_Pred represents the operation of MV spatial domain prediction, is divided into forward direction and back to different disposal.Opt_nums represents to handle total number of operations of these macro block needs.The process of the numeral operation in the circle.With B_Bck_Sym is example, and the piece dividing mode can be 16 * 8 or 8 * 16, and the different sub-piece processing orders of dividing are inequality, but their processing method is similar.Because macro block is divided into two sub-pieces, first sub-piece reads MVD information earlier, and does the back to spatial domain prediction, and obtains the MV of this sub-piece, as 1. 2. shown in; Second sub-piece reads MVD information earlier, and does the forward direction spatial domain prediction, do again the back to the symmetric pattern time domain prediction, as 3. 4. 5. shown in, the front and back that so just obtain second sub-piece are to MV.Processing and other macro block (mb) type of B image of B_8 * 8 types are similar, but 48 * 8 each sub-pieces of sub-piece can any be operated by five kinds of modes shown in the table 2-2, and the mode of combination is a lot, so only list the processing mode of sub-piece.
Can see from top tabular analysis, in whole AVS 1.0 standards, though macro block (mb) type with and the combination of sub-block size, on the whole in fact the prediction generating run of MV has only 5 kinds of processing modes, be respectively: Direct Model time domain prediction (Direct), symmetric pattern time domain prediction (Symmetric) reads MVD information (Read_MVD), spatial domain prediction (MV_Pred) and access copy mode (do not need predicted operation, do not have MVD information).Its actual treatment of combination of different macro block (mb) types and sub-block size is aforesaid operations to be made up according to certain order carry out.According to these information, can make up 5 following control words (4 fields):
Direct Read_MVD MV_Pred Symmetric
4 3 2 1 0
Wherein, whether Direct/Read_MVD/Symmetric carries out this operation with a bit representation respectively, and whether MV_Pred carries out the spatial domain prediction operation with two bit representations, if be to operate once, still front and back to each once.For access copy mode control word is 0_0_00_0, does not promptly carry out other operation.
Reanalyse the process that the MV prediction generates according to the definition of control word, can obtain table 3 and table 4-1 and table 4-2.Wherein, cnt_stage represents stage of handling, i.e. the processing of a corresponding sub-piece of each stage, and the control word of same macro block different phase is different.
Control word during table 3.P image M V generates
mb_type cnt_Stage Direct Read_MVD MV_Pred Symmetric Controller Word
0 1 2 3
Skip P_Skip_ ZeroMotion (0) 0_0_00_0
P_Skip_ Motion (0) 0_0_01_0
Forward P_16×16 (1) 0_1_01_0
P_16×8 P_8×16 (2) (3) 0_1_01_0
0_1_01_0
P_8×8 (4) 0_1_01_0
0_1_01_0
0_1_01_0
0_1_01_0
Intra I_8×8 (5) 0_0_00_0
Control word (removing B_8 * 8) during table 4-1.B image M V generates
mb_type cnt_Stage Direct Read_MVD MV_Pred Symmetric Controller Word
0 1 2 3
16×16 Direct B_Direct (Spatial) (0) ①② 0_0_10_0
B_Direct (Temporal) (0) 1_0_00_0
1_0_00_0
1_0_00_0
1_0_00_0
16×16 B_Fwd (1) 0_1_01_0
B_Bck (2) 0_1_01_0
B_Sym (3) 0_1_01_1
16×8 8×16 B_Fwd_Fwd (4/5) 0_1_01_0
B_Bck_Bck (6/7)
B_Fwd_Bck (8/9) 0_1_01_0
B_Bck_Fwd (10/11)
B_Fwd_Sym (12/13) 0_1_01_0
B_Bck_Sym (14/15) 0_1_01_1
B_Sym_Fwd (16/17) 0_1_01_1
B_Sym_Bck (18/19) 0_1_01_0
B_Sym_Sym (20/21) 0_1_01_1
0_1_01_1
Intra I_8×8 (23) 0_0_00_0
Control word (B_8 * 8) during table 4-2.B image M V generates
subblock_type cnt_Stage Direct Read_MVD MV_Pred Symmetric Controller Word
0 1 2 3
8×8 SB_Direct (Spatial) (0) ①② 0_0_10_0
SB_Direct (Temperal) (0) 1_0_00_0
SB_Fwd (1) 0_1_01_0
SB_Bck (2) 0_1_01_0
SB_Sym (3) 0_1_01_1
Be example equally with B_Bck_Sym, the phase I control word of its processing is 0_1_01_0, promptly reads MVD and carries out a spatial domain prediction processing, and prediction MV obtains the back to MV of first sub-piece after adding MVD; The second stage control word is 0_1_01_1, promptly reads MVD and carries out spatial domain prediction and handle, and prediction MV adds the forward direction MV that obtains this sub-piece behind the MVD, carries out the time domain prediction of symmetric pattern then and handles, and obtains the back to MV.
Control word in further analytical table 3 and the table 4, in fact the operation of each functional module has only 6 kinds of compound modes, and they are respectively:
1) 0_0_00_0: the access copy mode, no predicted operation does not have MVD information.
This processing mode below macro block (mb) type and block size combination in exist.
Macro block (mb) type Block size
P_Skip_ZeroMotion(0) P_Intra(0) B_Intra(0) [16×16]
It handles signal as shown in Figure 5.
2) 0_0_01_0: only carry out spatial domain prediction one time, no MVD information.
Macro block (mb) type Block size
P_Skip_Motion(0) [16×16]
It handles signal as shown in Figure 6.
3) 0_0_10_0: carry out front and back to 2 spatial domain predictions, no MVD information.
Macro block (mb) type Block size
B_Direct_Spatial(0) [16×16/8×8]
It handles signal as shown in Figure 7.
4) 0_1_01_0: after reading MVD information, carry out spatial domain prediction 1 time, summation obtains final MV.
Macro block (mb) type Block size
P_16×16(0) [16×16]
P_16×8(0) P_16×8(1) P_8×16(0) P_8×16(1) [16×8/8×16]
P_8×8(0) P_8×8(1) P_8×8(2) P_8×8(3) [8×8]
B_Fwd(0) B_Bck(0) [16×16]
B_Fwd_Fwd(0) B_Fwd_Fwd(1) B_Bck_Bck(0) B_Bck_Bck(1) [16×8/8×16]
B_Fwd_Bck(0) B_Fwd_Bck(1) B_Bck_Fwd(0) B_Bck_Fwd(1) [16×8/8×16]
B_Fwd_Sym(0) B_Bck_Sym(1) B_Sym_Fwd(1) B_Sym_Bck(1) [16×8/8×16]
SB_Fwd SB_Bck [8×8]
It handles signal as shown in Figure 8.
5) processing mode 0_1_01_1: read MVD and carry out spatial domain prediction and 4) is identical, but the back generates by symmetrical time domain prediction to MV.
Macro block (mb) type Block size
B_Sym(0) [16×16]
B_Fwd_Sym(1) B_Bck_Sym(0) B_Sym_Fwd(0) B_Sym_Bck(0) [16×8/8×16]
B_Sym_Sym(0) B_Sym_Sym(1) [16×8/8×16]
SB_Sym [8×8]
It handles signal as shown in Figure 9.
6) 1_0_00_0: the Direct Model time domain prediction, derive sagittal MV.
Macro block (mb) type Block size
B_Direct_Temporal(0) B_Direct_Temporal(1)
B_Direct_Temporal(2) B_Direct_Temporal(3) [8×8]
SB_Direct
It handles signal as shown in figure 10.
After classification is handled,, can obtain whole processing framework, as shown in figure 11 in conjunction with 6 kinds of modes of operation.The processing framework of this integral body is made up of 6 states, and its meaning is as follows:
MV_Gen_IDLE Wait for that MV prediction generating run begins
MV_Gen_ReadMVD Read MVD information
MV_Gen_Prediction Carry out spatial domain prediction, may need to carry out front and back to totally 2 times
MV_Gen_Symmetric The symmetric pattern time domain prediction is handled
MV_Gen_End Current block is finished dealing with
MV_Gen_Direct The Direct Model time domain prediction is handled
Can see that from the diagram of 6 kinds of top processing modes they all are the combinations of certain part of general frame.Like this in the processing framework of mode unification to an integral body that various MV predictions are generated.
From the integrated operation schematic diagram can corresponding conversion when hardware is realized state machine commonly used represent.Therefore contrast entire block diagram, the prediction generating run unification of MV can be arrived the major state machine of 9 states shown in Figure 12, the meaning of each state sees Table 5.
9 states of table 5 major state machine
Blk_Begin Master control begins
Read_MVD Read MVD and reference frame number information
MV_Pred_1 Spatial domain prediction operation 1
MV_Addition The calculating of mvp+mvd
MV_Pred_2 Spatial domain prediction operation 2
MV_Sym The operation of time domain symmetric pattern
MV_Dirt The time domain direct mode operation
Load_Store The access copy function
Blk_End Master control finishes
By simplifying the major state machine, the module that is implemented in separately of 3 kinds of processing modes is carried out, have and encapsulate characteristic preferably, overall structure is very clear, and each intermodule interface is succinct.The change of single mode can not influence the running of other modules.
In the present invention, all macro blocks are all handled by 48 * 8 sub-pieces, and described four sub-pieces are seen the order of last four sub-piece shown in Figure 1 in proper order, and putting in order of its sub-piece is the order of raster scan output.So whole control word is made up of 4 parts.The composition of each sub-control word is as shown in table 6, and it is formed by 9, can be divided into 6 fields.The meaning of each field sees Table 7.
Table 6. control word is formed table
LoadorStore Direct ReadMVD MvPredictor Symmetric Prediction Direction
8 7 6 5 4 3 2 1 0
5 middle (promptly 2~6) are identical with the definition of front, and the meaning of these 4 fields is also consistent.Two supplemental field are, Prediction Direction field is represented the direction predicted, as forward direction, the back to, still two-way, the incompatible 00 expression forward direction of seeing of this two hyte wherein, 01 expression back to, 10 expressions are two-way, in the 11 expression frames; The high bit representation of LoadorStore field is to preserve/read the MV data, wherein, is to represent to preserve the MV data at 0 o'clock, is that the MV data are read in 1 expression, and the position that low bit representation MV deposits/reads is to represent to be stored in 0 position at 0 o'clock, is that 1 expression is stored in 1 position.
The meaning of each all value of field of table 7 pair control word is explained.
Each field meaning of table 7. control word
bits
0 1 2 3
LoadorStore 2 Be stored in 0 position Be stored in 1 position Take out from 0 position Take out from 1 position
Direct
1 Inoperation Direct mode operation
ReadMVD
1 Inoperation Read MVD information
MvPredictor
2 Inoperation Spatial domain prediction once The spatial domain prediction front and back to each once
Symmetric 1 Inoperation The symmetric pattern operation
P8dir
2 Forward direction The back to Two-way In the frame
By the analysis of front and the definition of control word, can further analyze and generate the control word table that the MV prediction generates under all situations among the AVS 1.0, be shown in Table 8.
The control word table that the MV prediction generates among the table 8.AVS 1.0
P_picture 3 2 1 0
P_Skip_ZeroMotion (0) 10_0_0_00_0_00 10_0_0_00_0_00 10_0_0_00_0_00 00_0_0_00_0_00
P_Skip_Motion (0) 10_0_0_00_0_00 10_0_0_00_0_00 10_0_0_00_0_00 00_0_0_01_0_00
P_16×16 (1) 10_0_0_00_0_00 10_0_0_00_0_00 10_0_0_00_0_00 00_0_1_01_0_00
P_16×8 (2) 11_0_0_00_0_00 01_0_1_01_0_00 10_0_0_00_0_00 00_0_1_01_0_00
P_8×16 (3) 11_0_0_00_0_00 10_0_0_00_0_00 01_0_1_01_0_00 00_0_1_01_0_00
P_8×8 (4) 00_0_1_01_0_00 00_0_1_01_0_00 00_0_1_01_0_00 00_0_1_01_0_00
P_Intra (5) 10_0_0_00_0_11 10_0_0_00_0_11 10_0_0_00_0_11 00_0_0_00_0_11
B_picture 3 2 1 0
B_Direct_Spatial (32) 10_0_0_00_0_10 10_0_0_00_0_10 10_0_0_00_0_10 00_0_0_10_0_10
B_Direct_Temporal (32) 00_1_0_00_0_10 00_1_0_00_0_10 00_1_0_00_0_10 00_1_0_00_0_10
B_Fwd_16×16 (33) 10_0_0_00_0_00 10_0_0_00_0_00 10_0_0_00_0_00 00_0_1_01_0_00
B_Bck_16×16 (34) 10_0_0_00_0_01 10_0_0_00_0_01 10_0_0_00_0_01 00_0_1_01_0_01
B_Sym_16×16 (35) 10_0_0_00_0_10 10_0_0_00_0_10 10_0_0_00_0_10 00_0_1_01_1_10
B_Fwd_Fwd_16×8 (36) 11_0_0_00_0_00 01_0_1_01_0_00 10_0_0_00_0_00 00_0_1_01_0_00
B_Fwd_Fwd_8×16 (37) 11_0_0_00_0_00 10_0_0_00_0_00 01_0_1_01_0_00 00_0_1_01_0_00
B_Bck_Bck_16×8 (38) 11_0_0_00_0_01 01_0_1_01_0_01 10_0_0_00_0_01 00_0_1_01_0_01
B_Bck_Bck_8×16 (39) 11_0_0_00_0_01 10_0_0_00_0_01 01_0_1_01_0_01 00_0_1_01_0_01
B_Fwd_Bck_16×8 (40) 11_0_0_00_0_01 01_0_1_01_0_01 10_0_0_00_0_00 00_0_1_01_0_00
B_Fwd_Bck_8×16 (41) 11_0_0_00_0_01 10_0_0_00_0_00 01_0_1_01_0_01 00_0_1_01_0_00
B_Bck_Fwd_16×8 (42) 11_0_0_00_0_00 01_0_1_01_0_00 10_0_0_00_0_01 00_0_1_01_0_01
B_Bck_Fwd_8×16 (43) 11_0_0_00_0_00 10_0_0_00_0_01 01_0_1_01_0_00 00_0_1_01_0_01
B_Fwd_Sym_16×8 (44) 11_0_0_00_0_10 01_0_1_01_1_10 10_0_0_00_0_00 00_0_1_01_0_00
B_Fwd_Sym_8×16 (45) 11_0_0_00_0_10 10_0_0_00_0_00 01_0_1_01_1_10 00_0_1_01_0_00
B_Bck_Sym_16×8 (46) 11_0_0_00_0_10 01_0_1_01_1_10 10_0_0_00_0_01 00_0_1_01_0_01
B_Bck_Sym_8×16 (47) 11_0_0_00_0_10 10_0_0_00_0_01 01_0_1_01_1_10 00_0_1_01_0_01
B_Sym_Fwd_16×8 (48) 11_0_0_00_0_00 01_0_1_01_0_00 10_0_0_00_0_10 00_0_1_01_1_10
B_Sym_Fwd_8×16 (49) 11_0_0_00_0_00 10_0_0_00_0_10 01_0_1_01_0_00 00_0_1_01_1_10
B_Sym_Bck_16×8 (50) 11_0_0_00_0_01 01_0_1_01_0_01 10_0_0_00_0_10 00_0_1_01_1_10
B_Sym_Bck_8×16 (51) 11_0_0_00_0_01 10_0_0_00_0_10 01_0_1_01_0_01 00_0_1_01_1_10
B_Sym_Sym_16×8 (52) 11_0_0_00_0_10 01_0_1_01_1_10 10_0_0_00_0_10 00_0_1_01_1_10
B_Sym_Sym_8×16 (53) 11_0_0_00_0_10 10_0_0_00_0_10 01_0_1_01_1_10 00_0_1_01_1_10
B_Intra (55) 10_0_0_00_0_11 10_0_0_00_0_11 10_0_0_00_0_11 00_0_0_00_0_11
B_8×8 (54)
SB_Direct_Spatial (0) 00_0_0_10_0_10
SB_Direct_Temporal (0) 00_1_0_00_0_10
SB_Fwd (1) 00_0_1_01_0_00
SB_Bck (2) 00_0_1_01_0_01
SB_Sym (3) 00_0_1_01_1_10
The whole control word of all macro block (mb) types all is made up of 4 little control words, and each little control word is responsible for the processing of one 8 * 8 sub-piece.All macro blocks all need to carry out 4 times at host state machine to be handled, promptly 4 the processing stage, the processing stage numbering see Table shown in 8 gauge outfits 0,1,2 and 3.Handle according to dividing sub-piece merely because the different dividing mode of macro block can make, the number of processes of each macro block is inequality.For example 16 * 8 macro blocks only need produce 2 MV, and 16 * 16 macro blocks only need 1 MV to represent.Advantage processing stage that unification being 4 is to make all macro block operations all to be undertaken by the mode of unanimity, all exports by 4 sub-pieces.Because the piece minimum of AVS 1.0 is 8 * 8,, does each macro block (mb) type so can being transformed on 8 * 8 corresponding sub-pieces.
Be that the control word of B_Bck_Sym_16 * 8 illustrates whole control procedure with macro block (mb) type 46 below.
Macro block (mb) type is B_Bck_Sym_16 * 8, and its processing is to be that first macro block reads MVD information earlier to Blk_0 by 16 * 8, then does the back to time domain prediction, obtains final MV information after the addition.Because 16 * 8 sub-pieces are made up of level two 8 * 8 (Blk_0 and Blk_1), the required MV of Blk_1 is identical with Blk_0, gets final product so preserve the final MV of Blk_0 so that Blk_1 takes this moment.Do not need when being Blk_1 to recomputate, the MV that only need reach the Blk_0 preservation gets final product.The processing of Blk_2 and the sub-piece of Blk_3 as can be known in like manner, different is that Blk_2 is a symmetric pattern, it need carry out extra symmetric pattern time domain prediction and obtain the back to MV information.Pass through the control word of each sub-piece like this, as can be known the processing mode in each step.Detailed process is referring to Figure 12, and concrete steps are as follows:
Step 10, initialization master control module at first, making the numerical value in the sub-piece number of the macro block register is 0, and the master control module is tabled look-up according to the type of current macro and is obtained the whole control word of corresponding macro block, and described whole control word is as shown in table 9:
The control word of table 9.B_Sym_Bck_16 * 8
mbtype Blk_3 Blk_2 Blk_1 Blk_0
B_Bck_Sym_16×8 (46) 11_0_0_00_0_10 01_0_1_01_1_10 10_0_0_00_0_01 00_0_1_01_0_01
Step 11, according to the numerical value in the sub-piece number of the macro block register, read the control word of sub-piece corresponding in the whole control word of this macro block, if numerical value is 0, corresponding sub-piece is Blk_0, execution in step 100 is as Figure 13, if numerical value is 1, corresponding sub-piece is Blk_1, and execution in step 200 is as Figure 14; If numerical value is 2, corresponding sub-piece is Blk_2, and execution in step 300 is as Figure 15; If numerical value is 3, corresponding sub-piece is Blk_3, execution in step 400, and except that the position difference of fetching data, other is operated with shown in Figure 14;
Step 12, master control module judge whether the numerical value in the sub-piece number of the macro block register is 3, if if be 3, finish the generation of current macro MV and handle, MV according to raster scan order output generation, if not, the numerical value in the sub-piece number of the macro block register adds 1, execution in step 11;
Step 100, as can be known according to the content (01_0_1_01_0_01) of control word, need read the MVD data, do once the back to spatial domain prediction, it is final back to MV that mvd adds that mvp generates, and what will generate afterwards is stored in 0 position to MV, so the master control module sends the control information of back to spatial domain prediction to the spatial domain prediction module;
Step 101, spatial domain prediction module receive the control command that the master control module sends, and carry out the back and handle to spatial domain prediction, and the prediction MV that will produce promptly go up mvp and send it back the master control module;
Step 102, master control module read the MVD data, carry out the read group total of mvd and mvp, generate final back to MV, and will generate afterwards be stored in 0 position of buffering area, execution in step 12 to MV;
Step 200, according to the content of the control word (11_0_0_00_0_01) of sub-piece Blk_1 as can be known, the front and back that need take out this sub-piece from 0 position be to MV, the prediction direction of this piece be the back to, the master control module sends control information to access copy module;
Step 201, access copy module obtain the MV of current block, execution in step 12 from 0 position;
Step 300, according to the content of the control word (00_0_1_01_1_10) of sub-piece Blk_2 as can be known reads the MVD data, does the forward direction spatial domain prediction one time, and mvd adds that mvp generates forward direction MV, does time domain symmetric pattern time domain prediction then, generates thereafter to MV; There is 1 position of buffering area in the front and back that will generate to MV at last, so the master control module sends the control information of forward direction spatial domain prediction to the spatial domain prediction module;
The control command that step 301, spatial domain prediction module send according to the master control module is carried out the forward direction spatial domain prediction and is handled, and the prediction MV that will produce promptly goes up mvp and sends it back the master control module;
Step 302, master control module read the MVD data, carry out the read group total of mvd and mvp, generate forward direction MV, and send the control command of symmetric pattern time domain prediction to the time domain prediction module;
Step 303, time domain prediction module receive the control command that the master control module sends, and carry out the processing of symmetric pattern time domain prediction, and the front and back that will generate send it back the master control module to MV;
Step 304, master control module deposit front and back in the front and back that will generate and have 1 position of buffering area, execution in step 12 to MV to MV;
Step 400, as can be known according to the content of the control word (10_0_0_00_0_10) of sub-piece Blk_3, the front and back that need take out this sub-piece from 1 position are to MV, and the prediction direction of this piece is two-way, and the master control module sends control information to access copy module;
Step 401, access copy module obtain the front and back of current block to MV from 1 position; Execution in step 12;
Can see that from this example by whole control word, MV prediction generation module can generate the MV data of whole macro block on request, and no longer needs other control information.Can export all 4 required MV data processing stage of by 4.The processing stage that all macro block (mb) types all being unified 4, export in turn according to raster scan order.
The present invention also comprises the device that motion-vector prediction generates in a kind of video image, as shown in figure 16, comprises master control module, spatial domain prediction module, time domain prediction module, access copy module; Wherein,
Described master control inside modules is preserved the whole control of all types of macro blocks word table, described master control module analysis current macro type, obtain the control word of current macro by tabling look-up, to spatial domain prediction module or time domain prediction module or access copy module or its combination transmitting control commands, and handle the motion vector that generates video image according to the content of control word according to above each module return information;
The control command that described spatial domain prediction module is sent according to the master control module is carried out corresponding spatial domain prediction and is handled, and the prediction MV that will obtain sends to the master control module;
The control command that described time domain prediction module is sent according to the master control module is carried out corresponding time domain prediction and is handled, and the prediction MV that will obtain sends to the master control module;
The control command that access copy module is sent according to the master control module is carried out the access copy process, and the MV that obtains is sent to the master control module.
The control command that described spatial domain prediction module is sent according to the master control module is carried out forward direction or back to a spatial domain prediction, or front and back are to each spatial domain prediction.
Described time domain prediction module comprises Direct Model time domain prediction module or symmetric pattern time domain prediction module or its combination, the control command control Direct Model time domain prediction module that described time domain prediction module is sent according to the master control module that receives is carried out the Direct Model time domain prediction, or control symmetric pattern time domain prediction module is carried out the symmetric pattern time domain prediction.
Come whole each module that drives by state machine.Each functional part is made of the prior art module.
Annexation between each module as shown in figure 17.Master controller is responsible for the analysis generation of status word among the figure, by other each module of host state machine running control.The spatial domain prediction module is responsible for the spatial domain prediction operation, controls by wir_mvp, from " MvPredictor " field acquisition of control word.The time domain prediction module is finished the time domain prediction operation, wherein wir_direct control Direct Model work (obtaining from " Direct " field), wir_sym control symmetric pattern work (obtaining from " Symmetric " field).Access copy module is preserved two MV numerical value, shown in 0/1, by wir_ldorst control (obtaining from " LoadorStore " field).MVD FIFO reads MVD and reference frame number information (obtaining from " ReadMVD " field) by wir_readmvd control.The MVP addition that the MVD information that it obtains is sent into MV summation module and the output of spatial domain prediction module obtains final MV numerical value.If symmetric pattern, then this forward direction MV import into the symmetric pattern processing module generate the back to the MV data.All final MV data all output to outside other module from access copy module.
As from the foregoing, method of the present invention and device design are succinct, and control flow is clear, the complexity when having simplified greatly by control word that software and hardware is handled, but and extended attribute preferably arranged.By as can be known to the technical solution of the present invention analysis, this method in handling for video decode complicated MV prediction generate and handle and can both effectively work, it is simple for structure, is easy to software and hardware and realizes, particularly is convenient to hardware and realizes.
It should be noted last that, above embodiment is only unrestricted in order to technical scheme of the present invention to be described, although the present invention is had been described in detail with reference to preferred embodiment, those of ordinary skill in the art is to be understood that, can make amendment or be equal to replacement technical scheme of the present invention, and not breaking away from the spirit and scope of technical solution of the present invention, it all should be encompassed in the middle of the claim scope of the present invention.

Claims (12)

1, the method that motion-vector prediction generates in a kind of video image is characterized in that, comprises the steps:
Step 1, initialization, master control module are tabled look-up according to the type of current macro and are obtained the whole control word of corresponding macro block;
Step 2, master control module read corresponding sub-block control word in the whole control word of this macro block, according to the content of current control word, if carry out spatial domain prediction, execution in step three according to the numerical value in the sub-piece number of the macro block register; If carry out time domain prediction, execution in step four; If be the access copy mode, then execution in step five;
Step 3, carry out spatial domain prediction by the spatial domain prediction module and handle, derive the motion vectors numerical value of current block; Execution in step six;
Step 4, carry out time domain prediction by the time domain prediction module and handle, derive the motion vectors numerical value of current block; Execution in step six;
Step 5, employing access copy mode generate the motion vector of current block; Execution in step seven;
Step 6, judge whether to exist the vector residual error according to the content of current control word, if any, carrying out read group total, promptly final motion vector is motion vectors and vector residual error sum; As do not have, carry out next step;
Step 7, judge that whether current sub-block is last of macro block, if, finish the generation of current macro motion vector and handle, if not, the numerical value in the sub-piece number of the macro block register adds 1, execution in step two.
2, the method that motion-vector prediction generates in the video image according to claim 1, it is characterized in that, described macro block comprises four sub-pieces, putting in order of its sub-piece is the order of raster scan output, the whole control word of macro block comprises four control words, the corresponding sub-piece of each control word.
3, the method that motion-vector prediction generates in the video image according to claim 2, it is characterized in that, the whole control word neutron of described macro block block control word comprises at least: Direct Model time domain prediction control word, symmetric pattern time domain prediction control word, MVD information Control word, the spatial domain prediction control word, wherein
Direct Model time domain prediction control word is used for expression and carries out the processing of Direct Model time domain prediction, whether carries out described Direct Model time domain prediction with 1 bit representation and handles;
Symmetric pattern time domain prediction control word is used for expression and carries out the processing of symmetric pattern time domain prediction, whether carries out described symmetric pattern time domain prediction with 1 bit representation and handles;
MVD information Control word is used for expression and reads MVD information, whether carries out described operation of representing to read MVD information with 1 bit representation;
The spatial domain prediction control word is used for expression and carries out spatial domain prediction and handle, and whether carries out this operation with 2 bit representations, and carry out described spatial domain prediction operation be once or front and back to each once.
4, the method that motion-vector prediction generates in the video image according to claim 3 is characterized in that described step 2 comprises following step:
Step 21, read the spatial domain prediction information of control word, if spatial domain prediction information is not empty, execution in step three;
Step 22, read the time domain prediction information of control word, if time domain prediction information is not empty, then execution in step four;
Step 23, read the spatial domain prediction information of control word, time domain prediction information, MVD information if above-mentioned information is sky, is the access copy mode, execution in step five.
5, the method that motion-vector prediction generates in the video image according to claim 4 is characterized in that described control word also comprises prediction direction information, be used to represent described spatial domain prediction or time domain prediction be forward direction, back to or two-way.
6, the method that motion-vector prediction generates in the video image according to claim 5, it is characterized in that, the operating process of described step 3 is: the spatial domain prediction processing module is according to the content of spatial domain information of forecasting in the control word and prediction direction information, carry out forward direction or back to a spatial domain prediction, or carry out front and back to each spatial domain prediction.
7, the method that motion-vector prediction generates in the video image according to claim 4, it is characterized in that, the operating process of described step 4 is: the time domain prediction module is according to time domain prediction information in the control word, if Direct Model, then carries out the time domain prediction of Direct Model; If symmetric pattern, then carry out the time domain prediction of symmetric pattern.
8, the method that motion-vector prediction generates in the video image according to claim 4, it is characterized in that, described control word also comprises preserves/reads motion vector data and positional information that motion vector is deposited/read, is used for representing that the motion vector of this sub-piece is the relevant position of reading or the sub-block motion vector that generates is write buffering area from the buffering area relevant position.
9, the method that motion-vector prediction generates in the video image according to claim 8, it is characterized in that, in described step 2, also comprise if preserve/read motion vector data and positional information that motion vector is deposited/read for reading motion vector data, then master control module is according to the address of reading of motion vector in described preservation/read motion vector data and the positional information that motion vector is deposited/read, read motion vector data, execution in step seven; If the preservation motion vector data then after execution of step six, is saved in the position that motion vector is deposited in this information with the motion vector data that generates.
10, the device that motion-vector prediction generates in a kind of video image is characterized in that, comprises master control module, spatial domain prediction module, time domain prediction module, access copy module; Wherein,
Described master control inside modules is preserved the whole control of all types of macro blocks word table, described master control module analysis current macro type, obtain the control word of current macro by tabling look-up, to spatial domain prediction module or time domain prediction module or access copy module or its combination transmitting control commands, and handle the motion vector that generates video image according to the content of control word according to the return information of above each module;
The control command that described spatial domain prediction module is sent according to the master control module is carried out corresponding spatial domain prediction and is handled, and the motion vectors that obtains is sent to the master control module;
The control command that described time domain prediction module is sent according to the master control module is carried out corresponding time domain prediction and is handled, and the motion vectors that obtains is sent to the master control module;
The control command that described access copy module is sent according to the master control module is carried out the access copy process, and the motion vector that obtains is sent to the master control module.
11, the device that motion-vector prediction generates in the video image according to claim 10, it is characterized in that, the control command that described spatial domain prediction module is sent according to the master control module is carried out forward direction or back to a spatial domain prediction, or front and back are to each spatial domain prediction.
12, the device that motion-vector prediction generates in the video image according to claim 10, it is characterized in that, described time domain prediction module comprises Direct Model time domain prediction module or symmetric pattern time domain prediction module or its combination, the control command control Direct Model time domain prediction module that described time domain prediction module is sent according to the master control module that receives is carried out the Direct Model time domain prediction, or control symmetric pattern time domain prediction module is carried out the symmetric pattern time domain prediction.
CNB2004100702053A 2004-07-30 2004-07-30 Method and its device for forming moving vector prediction in video image Active CN1306821C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100702053A CN1306821C (en) 2004-07-30 2004-07-30 Method and its device for forming moving vector prediction in video image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100702053A CN1306821C (en) 2004-07-30 2004-07-30 Method and its device for forming moving vector prediction in video image

Publications (2)

Publication Number Publication Date
CN1589024A CN1589024A (en) 2005-03-02
CN1306821C true CN1306821C (en) 2007-03-21

Family

ID=34604435

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100702053A Active CN1306821C (en) 2004-07-30 2004-07-30 Method and its device for forming moving vector prediction in video image

Country Status (1)

Country Link
CN (1) CN1306821C (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9288501B2 (en) 2011-03-08 2016-03-15 Qualcomm Incorporated Motion vector predictors (MVPs) for bi-predictive inter mode in video coding
TWI743801B (en) * 2019-05-22 2021-10-21 聯發科技股份有限公司 Signaling of motion vector difference derivation

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4666255B2 (en) * 2005-12-27 2011-04-06 日本電気株式会社 Encoded data selection, encoded data setting, re-encoded data generation and re-encoding method and apparatus
CN102439978A (en) * 2010-03-12 2012-05-02 联发科技(新加坡)私人有限公司 Motion prediction methods
CN102148990B (en) * 2011-04-28 2012-10-10 北京大学 Device and method for predicting motion vector
CN105791855A (en) * 2012-01-18 2016-07-20 Jvc建伍株式会社 Moving picture decoding device and moving picture decoding method
US9900576B2 (en) * 2013-03-18 2018-02-20 Qualcomm Incorporated Simplifications on disparity vector derivation and motion vector prediction in 3D video coding
US9894382B2 (en) * 2014-07-18 2018-02-13 Mediatek Inc. Method and apparatus for assigning motion vector predictor to sub-block without performing associated iteration of sub-block motion vector predictor determination flow

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1206994A (en) * 1997-05-14 1999-02-03 索尼公司 Signal encoding device and method, signal recording medium and signal transmission method
US6345106B1 (en) * 1996-03-13 2002-02-05 Innovision Limited Gradient based motion estimation
JP2002281505A (en) * 2001-03-16 2002-09-27 Toshiba Corp Moving image compressor, data preparing method for cut detection for the same, cut position data preparing method, cut detector and cut detecting method for the same
US20030081675A1 (en) * 2001-10-29 2003-05-01 Sadeh Yaron M. Method and apparatus for motion estimation in a sequence of digital images
CN1457604A (en) * 2001-02-13 2003-11-19 皇家菲利浦电子有限公司 Motion information coding and decoding method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6345106B1 (en) * 1996-03-13 2002-02-05 Innovision Limited Gradient based motion estimation
CN1206994A (en) * 1997-05-14 1999-02-03 索尼公司 Signal encoding device and method, signal recording medium and signal transmission method
CN1457604A (en) * 2001-02-13 2003-11-19 皇家菲利浦电子有限公司 Motion information coding and decoding method
JP2002281505A (en) * 2001-03-16 2002-09-27 Toshiba Corp Moving image compressor, data preparing method for cut detection for the same, cut position data preparing method, cut detector and cut detecting method for the same
US20030081675A1 (en) * 2001-10-29 2003-05-01 Sadeh Yaron M. Method and apparatus for motion estimation in a sequence of digital images

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9288501B2 (en) 2011-03-08 2016-03-15 Qualcomm Incorporated Motion vector predictors (MVPs) for bi-predictive inter mode in video coding
TWI743801B (en) * 2019-05-22 2021-10-21 聯發科技股份有限公司 Signaling of motion vector difference derivation
TWI752897B (en) * 2019-05-22 2022-01-11 聯發科技股份有限公司 Signaling of motion vector difference derivation

Also Published As

Publication number Publication date
CN1589024A (en) 2005-03-02

Similar Documents

Publication Publication Date Title
CN1225126C (en) Space predicting method and apparatus for video encoding
CN1285216C (en) Image encoding method, image decoding method, image encoder, image decode, program, computer data signal, and image transmission system
CN1264333C (en) Video coding method, video decoding method, video coding equipment, video decoding equipment, video coding program and video decoding program
CN1956546A (en) Image coding apparatus
CN1605213A (en) Skip macroblock coding
CN101621687B (en) Methodfor converting video code stream from H. 264 to AVS and device thereof
CN1692653A (en) Moving picture encoding/decoding method and device
CN1910933A (en) Image information encoding device and image information encoding method
CN1774930A (en) Video transcoding
CN1917647A (en) Method and apparatus for adaptively selecting context model for entropy coding
CN1977541A (en) Motion prediction compensation method and motion prediction compensation device
CN1835595A (en) Image encoding/decoding method and apparatus therefor
CN1909664A (en) Arithmetic decoding system and device based on contents self-adaption
CN1610410A (en) Intra prediction method and apparatus
CN1324904C (en) Kinematic image coder and decoder
CN1620821A (en) Image information coding device and method and image information decoding device and method
CN102647593B (en) AVS (Audio Video Standard) intra mode decision method and AVS intra mode decision device
CN1162004C (en) Decoding apparatus and method, coding apparatus and method, and image processing system and method
CN1306821C (en) Method and its device for forming moving vector prediction in video image
CN1652608A (en) Data processing device and method of same, and encoding device and decoding device
CN1589017A (en) Quantizing device for low complicated degree integer 4x4 discrete cosine transform and its realizing method
CN1652605A (en) Video codecs, data processing systems and methods for the same
CN1338861A (en) Image decoding method, device and data storing media
CN102595127A (en) Codeword space reduction for intra chroma mode signaling for hevc
CN1266947C (en) Moving picture compression/coding apparatus and motion vector detection method

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
ASS Succession or assignment of patent right

Owner name: ZHANXUN COMMUNICATIONS (SHANGHAI) CO., LTD.

Free format text: FORMER OWNER: UNITED XINYUAN DIGITAL AUDIO-VIDEO TECHNOLOGY (BEIJING) CO., LTD.

Effective date: 20070608

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20070608

Address after: 201203 Shanghai city Zuchongzhi road Pudong Zhangjiang hi tech Park Lane 2288 newshow Center Building No. 1

Patentee after: Spreadtrum Communications (Shanghai) Inc.

Address before: 100080 North building, room 6, 140 South Road, Haidian District Academy of Sciences, Beijing

Patentee before: UNITED XINYUAN DIGITAL AUDIO V

TR01 Transfer of patent right

Effective date of registration: 20190314

Address after: 101399 Building 8-07, Ronghui Garden 6, Shunyi Airport Economic Core Area, Beijing

Patentee after: Xin Xin finance leasing (Beijing) Co.,Ltd.

Address before: 201203 Shanghai city Zuchongzhi road Pudong Zhangjiang hi tech Park Lane 2288 newshow Center Building No. 1

Patentee before: Spreadtrum Communications (Shanghai) Inc.

TR01 Transfer of patent right
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20050302

Assignee: SPREADTRUM COMMUNICATIONS (SHANGHAI) Co.,Ltd.

Assignor: Xin Xin finance leasing (Beijing) Co.,Ltd.

Contract record no.: X2021110000008

Denomination of invention: A method and device for generating motion vector prediction in video image

Granted publication date: 20070321

License type: Exclusive License

Record date: 20210317

EE01 Entry into force of recordation of patent licensing contract
TR01 Transfer of patent right

Effective date of registration: 20221018

Address after: 201203 Shanghai city Zuchongzhi road Pudong New Area Zhangjiang hi tech park, Spreadtrum Center Building 1, Lane 2288

Patentee after: SPREADTRUM COMMUNICATIONS (SHANGHAI) Co.,Ltd.

Address before: 101399 Building 8-07, Ronghui Garden 6, Shunyi Airport Economic Core Area, Beijing

Patentee before: Xin Xin finance leasing (Beijing) Co.,Ltd.

TR01 Transfer of patent right