CN105025300B - The method and apparatus encoded/decoded to image - Google Patents

The method and apparatus encoded/decoded to image Download PDF

Info

Publication number
CN105025300B
CN105025300B CN201510446031.4A CN201510446031A CN105025300B CN 105025300 B CN105025300 B CN 105025300B CN 201510446031 A CN201510446031 A CN 201510446031A CN 105025300 B CN105025300 B CN 105025300B
Authority
CN
China
Prior art keywords
motion vector
current block
coding unit
block
information
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
CN201510446031.4A
Other languages
Chinese (zh)
Other versions
CN105025300A (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Priority claimed from CN201180014824.9A external-priority patent/CN102835111B/en
Priority claimed from KR1020110005377A external-priority patent/KR101607308B1/en
Publication of CN105025300A publication Critical patent/CN105025300A/en
Application granted granted Critical
Publication of CN105025300B publication Critical patent/CN105025300B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

A kind of method and apparatus encoded/decoded to image:Motion vector based at least one block of coding/decoding before being encoded/decode in current block determines the motion vector of current block, according to definite motion vector, coding/decoding is predicted based on first direction prediction, second direction prediction and bi-directional predicted a pair of current block.

Description

The method and apparatus encoded/decoded to image
The application be to China Intellectual Property Office submit the applying date be January 19, Application No. in 2011 201180014824.9th, it is entitled " using previous block motion vector as current block motion vector come to image into The divisional application of the application of the method and apparatus of row coding/decoding ".
Technical field
The present invention relates to a kind of method and apparatus for being encoded/decoded to image, more specifically to one kind Method and apparatus for being encoded/decoded based on inter prediction to image.
Background technology
According to video compression standard, ((advanced video is compiled by such as MPEG-1, MPEG-2 and MPEG-4H.264/MPEG-4AVC Code)), image is encoded by dividing an image into the block of predefined size.Next, by using inter prediction or frame Interior prediction to the block of each predefined size is predicted coding.
For inter prediction, movement is performed by searching for at least one reference frame of the same or similar piece of current block Estimation, is encoded, the result of coding is subsequently inserted by the motion vector for performing estimation to produce together with pixel value Bit stream.
The content of the invention
Technical solution
The one or more aspects of the present invention provide a kind of method for encoding images and equipment and picture decoding method and Equipment, and record be useful for performing the computer of the program of described image coding method and/or described image coding/decoding method can Read record medium, wherein, in described image coding method and equipment and picture decoding method and equipment, based at least one The motion vector of previous block determines the motion vector of current block, and based on definite motion vector come image encode/ Decoding.
Beneficial effect
According to the present invention, volume is performed using the motion vector of at least one previously block as the motion vector of current block Code, so as to increase the hit rate of coding mode and the precision of prediction.Therefore, the compression ratio of higher can be used to carry out image Coding and decoding.
Brief description of the drawings
Fig. 1 is the block diagram of image encoding apparatus according to an embodiment of the invention.
Fig. 2 is the block diagram of image decoding apparatus according to an embodiment of the invention.
Fig. 3 shows hierarchical coding unit according to an embodiment of the invention.
Fig. 4 is the block diagram of the image encoder according to an embodiment of the invention based on coding unit.
Fig. 5 is the block diagram of the image decoder according to an embodiment of the invention based on coding unit.
Fig. 6 shows maximum coding unit, sub- coding unit and predicting unit according to an embodiment of the invention.
Fig. 7 shows coding unit and converter unit according to an embodiment of the invention.
Fig. 8 a and Fig. 8 b show the division shape of coding unit according to an embodiment of the invention, predicting unit and converter unit Shape.
Fig. 9 is the block diagram of image encoding apparatus according to another embodiment of the present invention.
Figure 10 is to show the side according to an embodiment of the invention being predicted to the block being included in bidirectional predictive picture The diagram of method.
Figure 11 a and Figure 11 b are to show the motion vector according to an embodiment of the invention based on previous coding block to determine The diagram of the method for the motion vector of current block.
Figure 12 a and Figure 12 b are to show the motion vector according to an embodiment of the invention based on previous coding block to determine The diagram of the method for the motion vector of current block.
Figure 13 a and Figure 13 b are to show the motion vector according to an embodiment of the invention based on previous coding block to determine The diagram of the method for the motion vector of current block.
Figure 14 is the block diagram of image decoding apparatus according to another embodiment of the present invention.
Figure 15 is the flow chart for showing method for encoding images according to an embodiment of the invention.
Figure 16 is the flow chart for showing picture decoding method according to an embodiment of the invention.
Optimal mode
According to an aspect of the present invention, there is provided a kind of based on the decoded at least one block before current block is decoded Motion vector determines the motion vector of current block and carries out decoded image solution to current block based on definite motion vector Code method, the described method includes:To in a first direction, second direction and it is two-way in will be used to decode current block Prediction direction information and decoded on the information of the pixel value of current block;Based on to the information on prediction direction Carry out it is decoded as a result, the prediction direction that definite current block will be predicted, determine for according to definite prediction direction to current At least one motion vector that block is predicted;Based at least one motion vector and to the information progress on pixel value It is decoded as a result, recover current block.First direction is the direction from present image to prior images, and second direction is from current figure Direction as arriving successive image.
According to another aspect of the present invention, there is provided a kind of based at least one block encoded before current block is encoded Motion vector determine the motion vector of current block and based on definite motion vector come the image that is encoded to current block Coding method, the described method includes:Motion vector based at least one block determines the first direction movement arrow of current block Amount and second direction motion vector;Based on first direction motion vector and second direction motion vector, from first direction prediction, the Two direction predictions and it is bi-directional predicted in determine that the Forecasting Methodology that encodes current block will be used for;To on pre- what is determined The letter of the pixel value of the information of the prediction direction used in survey method and the current block on being produced based on the Forecasting Methodology Breath is encoded.First direction is the direction from present image to prior images, and second direction is from present image to subsequent figure The direction of picture.
According to another aspect of the present invention, there is provided one kind is based on the decoded at least one block before current block is decoded Motion vector determine the motion vector of current block and decoded image carried out to current block based on definite motion vector Decoding device, the equipment include:Decoder, in a first direction, second direction and it is two-way in will be used for current Block carries out the information of decoded prediction direction and is decoded on the information of the pixel value of current block;Motion vector determines Device, based on to carrying out decoded on the information of prediction direction as a result, the prediction direction that definite current block will be predicted, determines to use In at least one motion vector being predicted according to definite prediction direction to current block;Recovery unit, based on it is described at least One motion vector and on pixel value information carry out it is decoded as a result, recover current block.First direction is from current figure Direction as arriving prior images, second direction is the direction from present image to successive image.
According to another aspect of the present invention, there is provided a kind of based at least one block encoded before current block is encoded Motion vector determine the motion vector of current block and based on definite motion vector come the image that is encoded to current block Encoding device, the equipment include:Motion vector determiner, the motion vector based at least one block determine current block First direction motion vector and second direction motion vector;Encoder, is moved based on first direction motion vector and second direction Vector, determines to be used to encode current block pre- in predicting from first direction prediction, second direction and is bi-directional predicted Survey method, information to the prediction direction on being used in definite Forecasting Methodology and on being produced based on the Forecasting Methodology The information of the pixel value of raw current block is encoded.First direction is the direction from present image to prior images, second party To being direction from present image to successive image.
According to another aspect of the present invention, there is provided one kind record is useful for performing described image coding method and/or institute State the computer readable recording medium storing program for performing of the program of picture decoding method.
Embodiment
Hereinafter, the exemplary embodiment of the present invention is more fully described with reference to the accompanying drawings.
Fig. 1 is the block diagram of image encoding apparatus 100 according to an embodiment of the invention.
With reference to Fig. 1, image encoding apparatus 100 includes maximum coding unit divide 110, coding depth determiner 120, figure As data encoder 130 and coding information encoder 140.
Maximum coding unit divide 110 can based on the maximum coding unit as the coding unit with largest amount come Present frame or slice are divided.That is, maximum coding unit divide 110 present frame or slice can be divided into A few maximum coding unit.
According to an embodiment of the invention, maximum coding unit and depth can be used to carry out presentation code unit.As described above, most There is the coding unit of largest amount, depth instruction coding unit point in multiple coding units of big coding unit instruction present frame The degree that layer reduces.As depth increases, coding unit is reduced to minimum coding unit from maximum coding unit, wherein, it is maximum The depth of coding unit is defined as minimum-depth, and the depth of minimum coding unit is defined as depth capacity.Due to depth Degree increase, the size of coding unit reduces since maximum coding unit, the sub- coding unit of kth depth may include multiple kth+ The sub- coding unit of n depth (k and n is equal to or the integer of size 1).
According to by the increase of the size for the frame being encoded, image is encoded according to larger coding unit can cause compared with High image compression ratio., possibly can not be by reflecting the images of consecutive variations however, if larger coding unit is fixed Feature effectively encodes image.
For example, when smooth region (such as ocean or sky) is encoded, coding unit is bigger, and compression ratio, which can improve, to get over Greatly.However, when complicated region (such as people or building) is encoded, coding unit is smaller, and compression ratio can improve bigger.
Therefore, according to an embodiment of the invention, for each frame or the different maximum image coding units of slice setting and not Same depth capacity.Due to the maximum times that depth capacity presentation code unit can reduce, it is single to be included in maximum image coding The big I of each minimum coding unit in member is set differently according to depth capacity.
Coding depth determiner 120 determines depth capacity.The calculating that can be based on rate distortion (RD) cost is maximum deep to determine Degree.Each frame or slice can be directed to or differently determine depth capacity for each maximum coding unit.Definite maximum is deep Degree is provided to coding information encoder 140, and coded image data device is provided to according to the view data of maximum coding unit 130。
Depth capacity represents may include that the coding unit with minimal size in maximum coding unit is (that is, minimum to compile Code unit).In other words, maximum coding unit can be divided into according to different depth with different size of sub- coding unit (referring specifically to Fig. 8 a and Fig. 8 b).Be included in maximum coding unit with different size of sub- coding unit can be based on Different size of processing unit is predicted or converts.Conversion can be that discrete cosine transform (DCT) or Karhunen Loever become (KLT) is changed, in the conversion, the pixel value of spatial domain is transformed to frequency coefficient.
In other words, image encoding apparatus 100 can be based on performing with all size and variously-shaped processing unit Multiple processing operation for image coding.In order to be encoded to view data, multiple processing operations (are such as predicted, converted And entropy coding) be performed, wherein, can be used for each operation has formed objects or different size of processing unit.
For example, image encoding apparatus 100 may be selected the processing unit different from coding unit come to the coding unit into Row prediction.
When the size of coding unit is 2N × 2N (wherein, N is positive integer), the processing unit for prediction can be 2N × 2N, 2N × N, N × 2N and N × N.In other words, can be based on at least one in the height and width by coding unit The processing unit of the shape of bisection performs motion prediction.Hereinafter, the basic processing unit as prediction is defined as " pre- Survey unit ".
Prediction mode can be it is at least one in frame mode, inter-frame mode and skip mode, can be only to specific Size or the predicting unit of given shape perform particular prediction mode.For example, can be 2N only to the size with square shape The predicting unit of × 2N and N × N performs frame mode.Mould is skipped in addition, can only be performed to the predicting unit that size is 2N × 2N Formula.If multiple predicting units are present in coding unit, after to each predicting unit perform prediction, may be selected to have The prediction mode of minimum coding error.
Selectively, image encoding apparatus 100 can be based on having with the different size of processing unit of coding unit to image Data perform conversion., can be based on the size identical with coding unit or single less than coding for the conversion in coding unit The processing unit of the size of member performs conversion.Hereinafter, the basic processing unit as conversion is defined as " converter unit ".
Coding depth determiner 120 can be optimized by using the RD based on Lagrange multiplier to determine to be included in maximum volume Sub- coding unit in code unit.In other words, coding depth determiner 120 can determine that from the multiple of maximum coding unit division Which kind of shape sub- coding unit has, wherein, the multiple sub- coding unit according to the depth of the multiple sub- coding unit and With different size.Coded image data device 130 by based on by coding depth determiner 120 determine division shape to maximum Coding unit, which is encoded, carrys out output bit flow.
Coding mould of the coding information encoder 140 to the maximum coding unit on being determined by coding depth determiner 120 The information of formula is encoded.In other words, coding information encoder 140 exports bit by being encoded to following information Stream:On the information of the division shape of maximum coding unit, the information on depth capacity and the son coding on each depth The information of the coding mode of unit.Information on the coding mode of sub- coding unit may include the prediction on sub- coding unit The information of unit, the information of prediction mode and the information of converter unit on sub- coding unit on each predicting unit.
Information on the division shape of maximum coding unit can be the letter whether each coding unit of instruction is divided Breath, for example, flag information.For example, when maximum coding unit is divided and is encoded, whether instruction maximum coding unit is drawn The information divided is encoded.In addition, when the sub- coding unit divided from maximum coding unit is divided and is encoded, indicate that son is compiled The information whether code unit is divided is encoded.
Due to existing in each maximum coding unit with different size of sub- coding unit and being compiled for per height Code unit determines the information on coding mode, therefore can be determined for a maximum coding unit at least one coding mode Information.
Image encoding apparatus 100 can according to the increase of depth by by the height of maximum coding unit and width halve come Produce sub- coding unit.That is, when the size of the coding unit of kth depth is 2N × 2N, the coding of (k+1) depth The size of unit is N × N.
Therefore, image encoding apparatus 100 is it is contemplated that characteristics of image, size and depth capacity based on maximum coding unit, Optimal dividing shape is determined for each maximum coding unit.By considering that characteristics of image changeably adjusts maximum coding unit Size simultaneously encodes image by the way that maximum coding unit to be divided into the sub- coding unit of different depth, has different points The image of resolution can be encoded more efficiently.
Fig. 2 is the block diagram of image decoding apparatus 200 according to the embodiment.
With reference to Fig. 2, image decoding apparatus 200 includes image data acquisition unit 210, coded information extractor 220 and figure As data decoder 230.
Image data acquisition unit 210 is obtained by being parsed to the bit stream received by image decoding apparatus 200 Image data decoder 230 is output to according to the view data of maximum coding unit, and by view data.Image data acquisition list Member 210 can be from present frame or the extraction of the head of slice on present frame or the information of the maximum coding unit of slice.In other words, scheme As the division maximum coding unit of data capture unit 210, so that image data decoder 230 can be according to maximum coding unit to figure As data are decoded.
Coded information extractor 220 is by parsing the bit stream received by image decoding apparatus 200 come from current The head of frame extracts the coding on maximum coding unit, depth capacity, the division shape of maximum coding unit and sub- coding unit The information of pattern.Picture number is provided on the information of the division shape of maximum coding unit and on the information of coding mode According to decoder 230.
Information on the division shape of maximum coding unit may include on according to depth have different size and including The information of sub- coding unit in maximum coding unit.As described above, the information on dividing shape can be that instruction is each The information whether coding unit is divided, for example, flag information.Information on coding mode may include on according to sub- coding The information of the predicting unit of unit, the information on prediction mode and the information on converter unit.
Image data decoder 230 by the information that coded information extractor 220 is extracted to each by based on maximum being encoded The view data of unit is decoded to recover present frame.
Image data decoder 230 can the information based on the division shape on maximum coding unit to being included in maximum volume Sub- coding unit in code unit is decoded.Decoding process may include prediction processing and inversion process, and prediction processing includes Infra-frame prediction and motion compensation.
Image data decoder 230 can be based on the predicting unit on every sub- coding unit information and on predicting mould The information of formula performs infra-frame prediction or inter prediction, so as to be predicted to every sub- coding unit.Image data decoder 230 Can also the information based on the converter unit on sub- coding unit inverse transformation is performed to every sub- coding unit.
Fig. 3 shows hierarchical coding unit according to an embodiment of the invention.
With reference to Fig. 3, hierarchical coding unit may include that width × height is 64 × 64,32 × 32,16 × 16,8 × 8 and 4 × 4 Coding unit.In addition to these are with the coding unit of complete square shape, also may be present width × height be 64 × 32nd, 32 × 64,32 × 16,16 × 32,16 × 8,8 × 16,8 × 4 and 4 × 8 coding unit.
It is 1920 × 1080 view data 310 for resolution ratio, the size of maximum coding unit is set with reference to Fig. 3 For 64 × 64, depth capacity is arranged to 2.
It is 1920 × 1080 view data 320 for resolution ratio, maximum coding unit is sized to 64 × 64, Depth capacity is arranged to 3.It is 352 × 288 view data 330 for resolution ratio, the size of maximum coding unit is set For 16 × 16, depth capacity is arranged to 2.
When high resolution or big data volume, the largest amount of coding unit can be relatively large simultaneously smart to improve compression ratio Really reflect characteristics of image.Therefore, can for the view data 310 and 320 of the resolution ratio with than 330 higher of view data Select 64 × 64 size as maximum coding unit.
The total quantity of layer in depth capacity instruction hierarchical coding unit.Since the depth capacity of view data 310 is 2, Therefore the coding unit 315 of view data 310 can according to the increase of depth and including major axis size be 64 maximum coding unit and Major axis size is 32 and 16 sub- coding unit.
On the other hand, since the depth capacity of view data 330 is 1, therefore the coding unit 335 of view data 330 can root According to the increase of depth be 16 maximum coding unit including major axis size and major axis size be 8 and 4 coding unit.
However, since the depth capacity of view data 320 is 3, therefore the coding unit 325 of view data 320 can be according to depth The increase of degree and be 64 maximum coding unit including major axis size and major axis size be 32,16,8 and 4 sub- coding unit. Due to being encoded based on the sub- coding unit with the increased smaller of depth to image, embodiment is applicable to including more The image of fine scene is encoded.
Fig. 4 is the block diagram of the image encoder 400 according to an embodiment of the invention based on coding unit.
Intraprediction unit 410 performs infra-frame prediction, estimation to the predicting unit of the frame mode in present frame 405 Device 420 and motion compensator 425 perform inter prediction using present frame 405 and reference frame 495 to the predicting unit of inter-frame mode And motion compensation.
Produced based on the predicting unit exported from intraprediction unit 410, exercise estimator 420 and motion compensator 425 Residual values, the residual values of generation are outputted as the conversion coefficient quantified by converter 430 and quantizer 440.
The conversion coefficient of quantization is recovered as residual values by inverse DCT 460 and inverse converter 470, and recover Residual values are outputted as reference frame 495 by going module unit 480 and loop filtering unit 490 to be post-treated.The conversion of quantization Coefficient can be outputted as bit stream 455 by entropy coder 450.
In order to perform coding, the component of image encoder 400 based on method for encoding images according to an embodiment of the invention (that is, intraprediction unit 410, exercise estimator 420, motion compensator 425, converter 430, quantizer 440, entropy coder 450th, inverse DCT 460, inverse converter 470, remove module unit 480 and loop filtering unit 490) based on maximum coding unit, root Image coded treatment is performed according to sub- coding unit, predicting unit and the converter unit of depth.
Fig. 5 is the block diagram of the image decoder 500 according to an embodiment of the invention based on coding unit.
With reference to Fig. 5, bit stream 505 passes through resolver 510, so that the coded image data and decoding that will be decoded must The coding information needed is resolved.Coded image data is outputted as inverse quantization by entropy decoder 520 and inverse DCT 530 Data, and residual values are recovered as by inverse converter 540.By according to coding unit by residual values and intraprediction unit 550 intra-prediction result or the motion compensated result phase Calais Cost fun ction value of motion compensator 560.The coding unit of recovery It is used for the prediction of next coding unit or next frame by removing module unit 570 and loop filtering unit 580.
In order to based on picture decoding method perform decoding according to an embodiment of the invention, the component of image decoder 500 (that is, resolver 510, entropy decoder 520, inverse DCT 530, inverse converter 540, intraprediction unit 550, motion compensator 560th, module unit 570 and loop filtering unit 580 are removed) based on maximum coding unit, it is single according to the sub- coding unit of depth, prediction Member and converter unit are handled to perform image decoding.
Especially, intraprediction unit 550 and motion compensator 560 by consider maximum coding unit and depth come according to Sub- coding unit determines predicting unit and prediction mode, and inverse converter 540 performs inversion by considering the size of converter unit Change.
Fig. 6 shows maximum coding unit, sub- coding unit and predicting unit according to an embodiment of the invention.
The image encoding apparatus 100 and image decoding apparatus shown in Figure 2 200 shown in Fig. 1 is by considering image spy Levy using hierarchical coding unit to perform coding and decoding.Maximum coding unit and depth capacity can be according to characteristics of image and by certainly Adaptively set, or be set differently according to the needs of user.
In figure 6, hierarchical coding unit structure 600 there is height and width be 64 and depth capacity be 4 maximum volume Code unit 610.Vertical axis increase of the depth along hierarchical coding unit structure 600, and as depth increases, sub- coding unit 620 to 650 height and width reduces.Maximum coding unit 610 and the predicting unit of sub- coding unit 620 to 650 along point The trunnion axis of layer coding unit structure 600 is shown.
The depth of maximum coding unit 610 is 0, and coding unit size (that is, height and width) is 64 × 64.Depth along Vertical axis increase, and there are size be 32 × 32 and depth be 1 sub- coding unit 620, size is 16 × 16 and depth is 2 Sub- coding unit 630, size be 8 × 8 and depth be 3 sub- coding unit 640, and size be 4 × 4 and depth be 4 Sub- coding unit 650.Size is 4 × 4 and depth is that 4 sub- coding unit 650 is minimum coding unit.
With reference to Fig. 6, the example of predicting unit is illustrated according to each depth along trunnion axis.That is, depth is 0 Maximum coding unit 610 predicting unit can be size be equal to coding unit 610 (that is, 64 × 64) predicting unit, or Person have be less than size be 64 × 64 coding unit 610 size size be 64 × 32 predicting unit 612, size be 32 × 64 predicting unit 614 or size is 32 × 32 predicting unit 616.
Depth is 1 and size is that 32 × 32 predicting unit of coding unit 620 can be that size is equal to coding unit 620 The predicting unit of (that is, 32 × 32), or the size with the size for being less than the coding unit 620 that size is 32 × 32 be 32 × 16 predicting unit 622, size be 16 × 32 predicting unit 624 or size be 16 × 16 predicting unit 626.
Depth is 2 and size is that 16 × 16 predicting unit of coding unit 630 can be that size is equal to coding unit 630 The predicting unit of (that is, 16 × 16), or the size with the size for being less than the coding unit 630 that size is 16 × 16 be 16 × 8 predicting unit 632, size be 8 × 16 predicting unit 634 or size be 8 × 8 predicting unit 636.
Depth is 3 and size is that 8 × 8 predicting unit of coding unit 640 can be that size is equal to coding unit 640 The predicting unit of (that is, 8 × 8), or be less than size be 8 × 8 coding unit 640 size size be 8 × 4 it is pre- Survey unit 642, size be 4 × 8 predicting unit 644 or size be 4 × 4 predicting unit 646.
Finally, depth is 4 and size is that 4 × 4 coding unit 650 is the coding unit of depth capacity.Coding unit 650 Predicting unit can be size be equal to predicting unit 650 size predicting unit.However, even if coding unit has maximum Depth, the size of the size of coding unit also without the predicting unit for being always equal to the coding unit.Arrived with coding unit 610 640 is similar, can be also used as by the way that coding unit 650 is divided into the sub- coding unit of predicting unit come to coding unit 650 into Row prediction.
Fig. 7 shows coding unit and converter unit according to an embodiment of the invention.
The image encoding apparatus 100 and image decoding apparatus shown in Figure 2 200 shown in Fig. 1 is to maximum coding unit In itself or by the way that maximum coding unit is divided at least one of size equal to or less than the size of maximum coding unit respectively A sub- coding unit performs coding and decoding.In coding and decoding processing, conversion can be selected single in this way The size of member:The maximum compression rate regardless of coding unit and predicting unit.For example, referring to Fig. 7, when current coded unit 710 Size when being 64 × 64, usable size is that 32 × 32 converter unit 720 performs conversion.
Fig. 8 a and Fig. 8 b show the division shape of coding unit according to an embodiment of the invention, predicting unit and converter unit Shape.
In Fig. 8 a, left diagram shows to be used for maximum coding list by what the image encoding apparatus 100 shown in Fig. 1 selected The division shape that member 810 is encoded.Maximum coding unit 810 is divided into variously-shaped by image encoding apparatus 100, performs volume Code, and by the way that the coding result of various division shapes is compared to selection optimal dividing shape each other based on R-D costs.When , as figures 8 a and 8 b show, can be to maximum coding unit 810 when carrying out encoding optimal to maximum coding unit 810 according to its former state Encoded without dividing maximum coding unit 810.
In the left diagram of Fig. 8 a, by being that 0 maximum coding unit 810 is divided into depth equal to or more than 1 by depth Sub- coding unit maximum coding unit 810 encoded.That is, maximum coding unit 810 is divided into 4 depths Degree is 1 sub- coding unit, and all or some depth are that 1 sub- coding unit is divided into the sub- coding unit that depth is 2.
Depth is to be located at the sub- coding unit of upper right side and the sub- coding unit quilt positioned at lower left side in 1 sub- coding unit It is divided into the sub- coding unit that depth is equal to or more than 2.Sub- coding unit of some depth equal to or more than 2 can be divided into depth Sub- coding unit of the degree equal to or more than 3.
In Fig. 8 a, right diagram shows the division shape of the predicting unit of maximum coding unit 810.
In right diagram in Fig. 8 a, the predicting unit 860 for maximum coding unit 810 can be from maximum coding unit 810 are differently divided.In other words, the predicting unit for every sub- coding unit is smaller than corresponding sub- coding unit.
For example, for depth be 1 sub- coding unit in can be small positioned at the predicting unit of the sub- coding unit 854 of lower right side In sub- coding unit 854.In addition, for depth be 2 sub- coding unit 814,816,818,828,850 and 852 in some The predicting unit of sub- coding unit 814,816,850 and 852 can be respectively smaller than sub- coding unit 814,816,850 and 852.
In addition, it is that the predicting unit of 3 sub- coding unit 822,832 and 848 can be respectively smaller than sub- coding list for depth Member 822,832 and 848.Predicting unit can have the shape that each sub- coding unit is bisected according to the direction of height or width Or have each sub- coding unit according to the direction of height or width by the shape of the quartering.
Fig. 8 b show predicting unit according to an embodiment of the invention and converter unit.
In figure 8b, left diagram shows the division shape of the predicting unit of the maximum coding unit 810 for being shown in Fig. 8 a Shape, right diagram show the division shape of the converter unit of maximum coding unit 810.
In the right diagram of Fig. 8 b, the division shape of converter unit 870 can differently be set with predicting unit 860.
For example, even if it is that the height shape that is bisected of 1 coding unit 854 selects to be used for coding unit with depth 854 predicting unit, can also select converter unit with the size identical with coding unit 854.Similarly, even if with depth Be 2 coding unit 814 and 850 in the height of each shape that is bisected select to be used for coding unit 814 and 850 Predicting unit, can also select to convert with the size identical with the original size of each in coding unit 814 and 850 Unit.
Converter unit can be selected with size less than predicting unit.For example, when the coding unit 852 for being 2 with depth The shape that is bisected of width to select the predicting unit for coding unit 852 when, can be with coding unit 852 according to height The direction of degree and width selects converter unit by the shape of the quartering.
Fig. 9 is the block diagram of image encoding apparatus 900 according to another embodiment of the present invention.With reference to Fig. 9, image coding is set Standby 900 can be included in the image encoding apparatus 100 of Fig. 1 or the image encoder 400 of Fig. 4 with based on inter prediction to current Block is encoded.
With reference to Fig. 9, image encoding apparatus 900 includes motion vector determiner 910 and encoder 920.
In some coding modes, based on determining current block by the motion vector of at least one block of previous coding Motion vector, encodes current block based on definite motion vector.The example of these coding modes is direct prediction mould Formula and skip mode.In direct prediction mode and skip mode, based on determining current block by the information of previous coding In addition motion vector, the motion vector of current block are encoded to the information on current block.
However, in direct prediction mode, produced by subtracting the prediction block produced using motion vector from current block Residual block be encoded as information on pixel value, however, in skip mode, prediction block is considered as identical with current block, Only indicate that the flag information that coding is performed under skip mode is encoded as the information on pixel value.
Although direct prediction mode and skip mode are all based on the coding mode of inter prediction, due to motion vector In addition do not encoded, therefore compression ratio is high.However, in direct prediction mode and skip mode, due to by only according to specific Direction is predicted current block to be encoded to current block, therefore the hit rate of each pattern in these patterns and prediction Precision may be low.Therefore, when current in bidirectional predictive picture to being included according to direct prediction mode or skip mode When block is encoded, image encoding apparatus 900 by being encoded according to various direction perform predictions to current block, this with Under will be described in.
Figure 10 is to show the side according to an embodiment of the invention being predicted to the block being included in bidirectional predictive picture The diagram of method.
With reference to Figure 10, by referring to the prior images before present image 1000 and after the present image 1000 after It is at least one in continuous image 1030, to the current block 1010 that is included in the present image 1000 as bidirectional predictive picture into Row predictive coding.It is corresponding with current block 1010 at least from least one detection in prior images 1020 and successive image 1030 One block (for example, previously block 1022 and subsequent block 1032), then based on the block 1022 or 1032 of detection come to current block 1010 It is predicted coding.
In other words, if being first direction (L0 directions) from present image 1000 to the direction of prior images 1020, Current block 1010 can be predicted (below, based on the previous block 1022 detected from prior images 1020 according to first direction Referred to as " first direction prediction ").Equally, if being second direction (L1 from present image 1000 to the direction of successive image 1030 Direction), then based on the subsequent block 1032 detected from successive image 1030 current block 1010 can be carried out according to second direction pre- Survey (hereinafter referred to as " second direction prediction ").In addition, first direction prediction and second direction prediction can be performed to current block 1010 Both, i.e. current block 1010 can be bi-directional predicted.
However, only when current block 1010 by it is bi-directional predicted when, can perform prediction mode direct according to prior art.Change sentence Talk about, when being predicted coding to current block 1010 based on first direction prediction or second direction prediction, current block 1010 is not It can be encoded under the directly prediction mode.Equally, only when current block 1010 by it is bi-directional predicted when, can perform according to existing skill The skip mode of art.Under skip mode according to prior art, the movement arrow based on the previous block neighbouring with current block 1010 The motion vector of the definite current block 1010 of amount is the motion vector mv_L0 on first direction, is predicted and produced according to first direction Prediction block be considered as identical with current block 1010, indicate according to skip mode perform coding flag information be encoded.
That is, according to the prior art, although it is pre- to perform first direction to the block being included in bidirectional predictive picture Survey, second direction prediction and bi-directional predicted, but only when by specific direction perform prediction, just can be used direct prediction mode and Skip mode.Therefore, the use of the direct prediction mode and skip mode of compression ratio raising is caused to be restricted.
In order to solve this problem, according to the image encoding apparatus 900 of present example according to such image coding staff Method performs coding:The motion vector of current block 1010 is determined based on previous coding information, can according to various method perform predictions and Motion vector need not be encoded.
Motion vector determiner 910 determine first direction motion vector and the second direction motion vector of current block 1010 with Perform first direction prediction, second direction is predicted and bi-directional predicted.Based on the previous coding before current block 1010 is encoded The motion vector of at least one block determine first direction motion vector and second direction motion vector.
It can be used and the method for motion vector is determined according to the prior art to determine first direction motion vector and second direction Motion vector.For example, being encoded if based on direct prediction mode to current block 1010, may be used according to based on H.264/ The direct prediction mode of AVC determines the method for motion vector to determine motion vector, wherein, under direct prediction mode, on The information of the motion vector of current block 1010 is not encoded, and the information on residual block is encoded.If based on skip mode Current block 1010 is encoded, may be used according to based on skip mode H.264/AVC determine the method for motion vector come Determine motion vector, wherein, under skip mode, the information on motion vector and the information on residual block are encoded.
Time direct prediction mode can be divided into based on direct prediction mode H.264/AVC and mould is directly predicted in space Formula.Therefore, motion vector determiner 910 can be by using the definite fortune under based on time direct prediction mode H.264/AVC The method of dynamic vector or by using under based on the direct prediction mode in space H.264/AVC determine motion vector method come Determine first direction motion vector and second direction motion vector.These sides are described in detail now with reference to Figure 11 a and Figure 11 b Method.
Figure 11 a are to show that the motion vector according to an embodiment of the invention based on previous coding block determines the fortune of current block The diagram of the method for dynamic vector.
With reference to Figure 11 a, when based on time direct prediction mode to the current block 1010 that is included in present image 1110 into During row coding, the motion vector mv_colA of subsequent block 1120 can be used to produce the motion vector of current block 1010, wherein, after Continuous block 1120 is included in the successive image 1114 after present image 1110, and with 1010 juxtaposition of current block.
In other words, if successive image 1114 is anchor (anchor) image, it may be used and be included in anchor image 1114 The motion vector mv_colA of subsequent block 1120 determine the first direction motion vector mv_L0A of current block 1010 and second party To motion vector mv_L1A.Can be by based on present image 1110 and between the prior images 1112 before present image 1110 Time gap and anchor image 1114 and prior images 1112 between time gap to the motion vector mv_ of subsequent block 1120 ColA zooms in and out (scale), to determine the first direction motion vector mv_L0A of current block 1010 and second direction movement arrow Measure mv_L1A.
For example, if the motion vector mv_colA of subsequent block 1120 is directed to 1122 quilt of block detected from prior images 1112 Produce, below equation may be used to produce the first direction motion vector mv_L0A of current block 1110 and second direction movement arrow Measure mv_L1A:
Mv_L0A=(t1/t2) × mv_colA
Mv_L1A=mv_L0A-mv_colA,
Wherein, " mv_L0A " and " mv_L1A " represents the first direction motion vector and second direction of current block 1010 respectively Motion vector.
Figure 11 b are to show that the motion vector based on previous coding block according to another embodiment of the present invention determines current block Motion vector method diagram.
, can motion vector mv_A, mv_ based on the block 1130,1132 and 1134 neighbouring with current block 1100 with reference to Figure 11 b B and mv_C determines the first direction motion vector of current block 1010 and second direction motion vector.It can be based on being located at current block The motion vector of the block in 1010 left side, upside and most upper right side determines the first direction motion vector of current block 1010 and Two direction motion vectors.
When being encoded according to the direct prediction mode in space to current block 1010, motion vector mv_A, mv_B and mv_C In at least one first direction motion vector between intermediate value be confirmed as the first direction motion vector of current block 1010, fortune The intermediate value between at least one second direction motion vector in dynamic vector mv_A, mv_B and mv_C is confirmed as current block 1010 Second direction motion vector.Described in being calculated by the way that at least one second direction motion vector is arranged to " 0 " at least Intermediate value between one first direction motion vector, to determine first direction motion vector, by by described at least one first Direction motion vector is arranged to " 0 " to calculate the intermediate value between at least one second direction motion vector, to determine second direction Motion vector.
It is corresponding to minimum first direction reference key in the reference picture determined by motion vector mv_A, mv_B and mv_C Image be confirmed as first direction reference picture, in the reference picture determined by motion vector mv_A, mv_B and mv_C with The minimum corresponding image of second direction reference key is confirmed as second direction reference picture.
When being encoded according to skip mode to current block 1010, as shown in figure 11b, the neighbouring block with current block 1010 1130th, between at least one first direction motion vector in 1132 and 1134 motion vector mv_A, mv_B and mv_C Value can be confirmed as the motion vector of current block 1010.
If the image encoding apparatus 900 of Fig. 9 is sweared as described above with the movement that current block is determined described in Figure 11 a or Figure 11 b Measure and current block is encoded, then decoding end determines the motion vector of current block simultaneously as described above with described in Figure 11 a or Figure 11 b Recover present image.In other words, image coding side and image decoding end can impliedly share identical definite motion vector Method, and determine according to shared method the motion vector of current block.
However, according to another embodiment of the present invention, image coding side can be based on encoding before current block is encoded The motion vector of multiple previously blocks produces multiple motion vector candidates, current in the multiple motion vector candidates to specifying The information of the motion vector of block is clearly encoded, and the result of coding is inserted into bit stream.In this case, image solution Code end can determine the motion vector of current block based on the result of the coding of insertion bit stream.Come now with reference to Figure 12 a and Figure 12 b Method as description.
Figure 12 a and Figure 12 b are to show that the motion vector according to an embodiment of the invention based on previous coding block determines to work as The diagram of the method for preceding piece of motion vector.
Can the movement based on the previous coding block neighbouring with current block with reference to the motion vector determiner 910 of Figure 12 a, Fig. 9 Vector produces multiple motion vector candidates.The multiple motion vector candidates can be in the block neighbouring with the upside of current block Leftmost side block a0Motion vector, the top side block b neighbouring with the left side of current block0Motion vector, with the upper right of current block The motion vector of the neighbouring block c in side, the motion vector of the block d neighbouring with the upper left side of current block and the lower left side with current block The motion vector of neighbouring block e.
Leftmost side block a0, top side block b0, block c and block d motion vector in one of first direction motion vector can be true It is set to the first direction motion vector of current block.Leftmost side block a0, top side block b0, block c and block d motion vector in second One of direction motion vector can be confirmed as the second direction motion vector of current block.If for example, leftmost side block a0, top side Block b0, leftmost side block a in block c and block d0With top side block b0Motion vector be first direction motion vector, then leftmost side block a0With top side block b0One of motion vector can be confirmed as the first direction motion vector of current block, the movement of block c and block d One of vector can be confirmed as the second direction motion vector of current block.
Various methods can be used for the motion vector that one of the multiple motion vector candidates are determined as to current block, but It is that can usually select the motion vector of current block along these lines:Current block can be based on motion vector by more accurately Prediction.If when with the leftmost side block a for first direction motion vector0With top side block b0Motion vector in using most left Lateral mass a0Motion vector when current block more accurately predicted, then leftmost side block a0Motion vector can be confirmed as current block First direction motion vector.Can be subtracted from current block by respectively using the motion vector of the multiple motion vector candidates come For the prediction block predicted current block and obtained to produce residual block, the residual error absolute value of each in the block and (SAD) can quilts Calculate, then, the motion vector with minimum SAD can be confirmed as the movement of current block in the multiple motion vector candidates Vector.
With reference to Figure 12 b, all piece of the motion vector neighbouring with current block is used as multiple motion vector candidates.Change sentence Talk about, not only the block neighbouring with the upside of current block (including leftmost side block a0) motion vector, and with the left side of current block Neighbouring block (including top side block b0) motion vector be all used as the multiple motion vector candidates.
As described above with described in Figure 12 b, the first party in all pieces of multiple motion vector candidates neighbouring with current block To one of motion vector and one of second direction motion vector can be confirmed as respectively current block first direction motion vector and Second direction motion vector.
Therefore, with reference to Figure 11 a, Figure 11 b, Figure 12 a and Figure 12 b, motion vector determiner 910 can be by using below equation One of multiple motion vector candidates are determined as to the motion vector of current block:
C=median (mv_a0, mv_b0, mv_c), mv_a0, mv_a1..., mv_aN, mv_b0, mv_b1 ..., mv_ BN, mv_c, mv_d, mv_e, mv_L0A, mv_L1A },
Wherein, " mv_L0A " and " mv_L1A " can represent the motion vector obtained according to the method for Figure 11 a, " median (mv_a0, mv_b0, mv_c) " can represent the motion vector obtained according to the method for Figure 11 b.As described above with Figure 12 a and Figure 12 b Describe other motion vectors.
It can determine that the first direction of current block moves arrow from the first direction motion vector for being included in C concentrations described above Amount, can determine the second direction motion vector of current block from the second direction motion vector for being included in C concentrations.
According to another embodiment of the present invention, the total quantity of motion vector candidates can be confirmed as small, and current block Motion vector can be determined based on below equation from motion vector candidates:
C={ median (mv_a', mv_b', mv_c'), mv_a', mv_b', mv_c', mv_L0A, mv_L1A },
Wherein, " mv_x " represents the motion vector of block x, and " median () " represents intermediate value, and " mv_a " represents motion vector mv_ A0, mv_a1 ..., the first efficient motion-vector in mv_aN.If for example, encoded using inter prediction to block a0, The motion vector mv_a0 of block a0 is invalid, therefore mv_a'=mv_a1.Motion vector mv_a1 such as fruit block a1 is also invalid, then mv_ A'=mv_a2.
Equally, " mv_b " represent motion vector mv_b0, mv_b1 ..., the first efficient motion-vector in mv_bN, " mv_ C " represent motion vector mv_c, mv_d ..., the first efficient motion-vector in mv_e.
" mv_L0A " and " mv_L1A " can represent the motion vector obtained according to the method for Figure 11 a.It is another according to the present invention One embodiment, is replaced in motion vector mv_L0A and mv_L1A, and the movement produced using the time gap between adjacent image is sweared Amount is used as motion vector candidates.The embodiment will be described in detail with reference to Figure 13 a and Figure 13 b.
Figure 13 a and Figure 13 b are to show that the motion vector according to an embodiment of the invention based on previous coding block determines to work as The diagram of the method for preceding piece of motion vector.
With reference to Figure 13 a, the motion vector candidates based on time gap can directly predict mould with the time according to prior art Formula is differently determined.
Being included in the motion vector candidates of the current block 1010 in present image 1110 can produce from the motion vector of block 1320 It is raw, wherein, block 1320 be included in the prior images 1112 before present image 1110 and with 1010 juxtaposition of current block.For example, If it is directed to 1322 quilt of block detected from successive image 1114 with juxtaposed piece 1320 of the motion vector mv_colB of current block 1010 Produce, below equation may be used to produce the motion vector candidates mv_L0B and mv_L1B of current block 1010:
Mv_L1B=(t3/t4) × mv_colB
Mv_L0B=mv_L1B-mv_colB,
Wherein, " mv_L0B " represents the first direction motion vector candidates of current block 1010, and " mv_L1B " represents current block 1010 second direction motion vector candidates.
With reference to Figure 13 b, the motion vector mv_colC of block 1330 can be used to determine to be included in working as in present image 1110 Preceding piece 1010 of motion vector candidates mv_L0C, wherein, block 1330 is included in prior images 1112, and with current block 1010 simultaneously Put.For example, detected when being directed to the motion vector mv_colC of juxtaposed piece 1330 of current block 1010 from another prior images 1116 Block 1332 when being generated, below equation can be used to produce the motion vector candidates mv_L0C of current block 1010:
Mv_L0C=(t6/t5) × mv_colC.
It can be included in above by reference to Figure 13 a and Figure 13 b the motion vector candidates mv_L0B and mv_L1B described above-mentioned The above-mentioned C of the motion vector candidates of current block 1010 is concentrated.That is, it is replaced in motion vector candidates mv_L0A and mv_ L1A, motion vector candidates mv_L0B and mv_L1B can be included in C concentrations, or motion vector candidates mv_L0B and mv_L1B C concentrations can be additionally included in.
Referring back to Fig. 9, if motion vector of the motion vector determiner 910 based on previous coding block determines current block Motion vector, then encoder 920 information on current block is encoded.
If the first direction motion vector and second direction motion vector of current block are determined, encoder 920 is based on First direction motion vector and second direction motion vector perform first direction prediction, second direction prediction and bi-directional predicted. Then, the prediction direction that current block can most be calculated to a nicety is determined.Predicted by performing first direction, second direction is predicted Can be compared with current block with prediction block that is bi-directional predicted and obtaining, the direction that can produce the residual block with minimum SAD can It is confirmed as prediction direction.Otherwise, can by perform first direction predict, second direction prediction and it is bi-directional predicted, to execution As a result encoded and mutually compared to the result of coding based on RD costs, to determine prediction direction.
After prediction direction is determined, the information on prediction direction and the information on pixel value are encoded.On The information of prediction direction can be encoded as sequential parameter, slice parameter or block parameter.Predetermined binary number can be assigned to first Direction, second direction and two-way, binary number corresponding with the prediction direction that current block is encoded can be coded by entropy, and subsequent entropy is compiled The result of code can be inserted into bit stream.
As the information on pixel value, the information (for example, direct prediction mode) on residual block can be attached ground Coding.Can be by being subtracted from current block by obtaining residual error according to definite prediction direction perform prediction and the prediction block produced Block, can bring generation frequency coefficient, then, frequency coefficient can be quantized and entropy coding by performing change to residual block.The change Changing can be dct transform or KLT conversion.
In addition, as the information on pixel value, skip mode and indication predicting block according only to the prior art and The identical flag information of current block can be encoded.That is, due to by being obtained according to definite prediction direction perform prediction The prediction block obtained is considered as identical with current block, therefore only skip mode and flag information can be encoded.
Reference picture for predicting current block can be inferred based on the reference key of previous coding block.Above with reference to figure Described in 11b, the reference key of current block and reference corresponding with current block can be determined based on the reference key of previous coding block Image.In addition, reference picture corresponding with the motion vector determined by motion vector determiner 910 can be confirmed as current block Reference picture.For example, as described above with described in Figure 11 a, if motion vector mv_L0A is confirmed as the first direction of current block Motion vector, then can be automatically determined the reference picture for current block according to the prior images 1112 of motion vector mv_L0A.
If motion vector determiner 910 as described above with described in Figure 12 a, Figure 12 b, Figure 13 a and Figure 13 b in multiple movements First direction motion vector and second direction motion vector are clearly determined in vectors candidates, then encoder 920 can be to instruction the At least one information in one direction motion vector and second direction motion vector is encoded.
If prediction direction is confirmed as first direction, it indicates that the only first direction in the multiple motion vector candidates The information of motion vector is encoded.If prediction direction is confirmed as second direction, second direction motion vector is only indicated Information can be encoded.However, if prediction direction is confirmed as two-way execution, it indicates that in the multiple motion vector candidates The information of first direction motion vector and second direction motion vector can be encoded.
Binary number, which can be individually allocated to, is included in all motion vectors that above-mentioned C is concentrated, and distributes to and is confirmed as The first direction motion vector of the motion vector of current block and/or the binary number of second direction motion vector can be encoded.So And since one of C as described above first direction motion vectors concentrated are confirmed as the first direction motion vector of current block, because This distributes to the first direction motion vector for distributing to current block in the binary number of the first direction motion vector of C concentrations Binary number can be encoded as the information of instruction first direction motion vector.Equally, the second direction movement arrow of C concentrations is distributed to The binary number of the second direction motion vector for distributing to current block in the binary number of amount can be encoded as instruction second party To the information of motion vector.
Figure 14 is the block diagram of image decoding apparatus 1400 according to another embodiment of the present invention.Image decoding apparatus 1400 Can be included in the image decoding apparatus 200 of Fig. 2 or the image decoding apparatus 500 of Fig. 5, and can by perform inter prediction come Current block is decoded.
With reference to Figure 14, image decoding apparatus 1400 includes decoder 1410, motion vector determiner 1420 and recovery unit 1430.
Decoder 1410 receives the bit stream for including the data on current block, and the prediction to being predicted on current block The information in direction is decoded.Image decoding apparatus 1400 based on before current block is decoded by least the one of early decoding The motion vector of a block determines the motion vector of current block, and based on definite under the decoding schema for recovering current block Motion vector decodes current block.Therefore, it is actually determined in the motion vector of current block on prediction direction Information is decoded.Information on prediction direction can be for example including sequential parameter in the bitstream, slice parameter or Block parameter.
Coding/decoding pattern (the example of the motion vector of current block is determined in the motion vector based on previous coding/decoding block Such as, direct prediction mode or skip mode) under, be based only upon the prediction that is performed according to specific direction come current block encode/ Decoding.However, in coding/decoding direction according to an embodiment of the invention, can be based on according to first direction, second direction and Two-way perform prediction as a result, being encoded/decoded under direct prediction mode or skip mode to current block.For this reason, Fig. 9 Image encoding apparatus 900 encodes the information on prediction direction, and the result of coding is inserted into bit stream.Decoder 1410 The information on prediction direction that bit stream is inserted into by using image encoding apparatus 900 is decoded.
Decoder 1410 can to the information of the motion vector for indicating the current block in multiple motion vector candidates and on The information of prediction direction is decoded together.If as discussed above based on the definite movement shared between coding side and decoding end The method of vector implicitly determines the motion vector of current block, then according to the motion vector of shared method and instruction current block not Decoded information is needed to determine the sum of a motion vector of current block.However, ought previously it be compiled based on multiple as described above The motion vector of code block produces multiple motion vector candidates and the fortune of current block is determined from the multiple motion vector candidates During dynamic vector, indicating the information of the motion vector of the current block in the multiple motion vector candidates can be decoded.
In addition, decoder 1410 decodes the information of the pixel value on current block.In this case, on working as The flag information that the information or instruction current block of preceding piece of residual block are identical with prediction block is decoded.Decoder 1410 can be by right Information on residual block carries out entropy decoding, inverse quantization or inverse transformation and carrys out Cost fun ction block.
Motion vector determiner 1420 is based on decoding the information on prediction direction by using decoder 1410 Result determine the motion vector of current block, so as to predict current block according to predetermined direction.It is true if based on decoded result It is fixed according to first direction perform prediction, then first direction motion vector is confirmed as the motion vector of current block.If based on solution The result of code determines that according to second direction perform prediction then second direction motion vector is confirmed as the motion vector of current block. Two-way perform prediction is determined if based on decoded result, then first direction motion vector and second direction motion vector are determined For the motion vector of current block.
When will implicitly determine current block according to the method for the definite motion vector shared between coding side and decoding end During motion vector, the motion vector of current block is determined according to shared method.The party is described above by reference to Figure 11 a and Figure 11 b Method.
However, when by the motion vector that current block is determined from multiple motion vector candidates, it is the multiple based on indicating The information of the motion vector by 1410 decoded current block of decoder in motion vector candidates come determine the movement of current block swear Amount.The multiple motion vector is produced using the motion vector of the decoded at least one block before current block is decoded to wait Select, and the motion vector of current block is determined from the multiple motion vector candidates.
If only predicting current block according to first direction, it is based on transporting using the decoded instruction first direction of decoder 1410 The information of dynamic vector, first direction motion vector is determined from the multiple motion vector candidates.It is if only pre- according to second direction Current block is surveyed, then based on the information using the decoded instruction second direction motion vector of decoder 1410, from the multiple movement Vectors candidates determine second direction motion vector.If current block is bi-directional predicted, it is based on decoded using decoder 1410 The information of first direction motion vector and the information of instruction second direction motion vector are indicated, so that the multiple motion vector is waited Choosing determines first direction motion vector and second direction motion vector.
Recovery unit 1430 is based on using the decoded information on pixel value of decoder 1410 and using motion vector The motion vector of the definite current block of determiner 1420 recovers current block.
By according to using motion vector determiner 1420 determine motion vector according to first direction, second direction or double Prediction block is produced to prediction current block.It is if next extensive to being decoded on the information of pixel value by using decoder 1410 Multiple residual block, the then residual block recovered are combined with prediction block to recover current block.If decoder 1410 to indication predicting block with The identical flag information of current block is decoded, then prediction block can be used directly as the current block recovered.
Can the reference key based on early decoding block come with reference to being used to predict the reference picture of current block.Above with reference to figure Described in 11b, it can determine the reference key of current block based on the reference key of early decoding block and corresponding with current block refer to Image.In addition, reference picture corresponding with the motion vector determined by motion vector determiner 1420 can be confirmed as currently The reference picture of block.For example, above with reference to as described in Figure 11 a, if motion vector mv_L0A is confirmed as the first of current block Direction motion vector, then can be automatically determined the reference chart for current block according to the prior images 1112 of motion vector mv_L0A Picture.
Figure 15 is the flow chart for showing method for encoding images according to an embodiment of the invention.
With reference to Figure 15, in operation 1510, image encoding apparatus determines the motion vector of current block.For example, 1510 are being operated, It is included in being determined by the first direction motion vector of bi-directional predicted current block and second direction motion vector for current picture. , can be according to the method for the definite motion vector shared between coding side and decoding end as described above with described in Figure 11 a and Figure 11 b Implicitly to determine the motion vector of current block.In addition, as described above with described in Figure 12 a, Figure 12 b, Figure 13 a and Figure 13 b, produce Multiple motion vector candidates, and first direction motion vector and second direction fortune can be determined from the multiple motion vector candidates Dynamic vector.
In operation 1520, determined during image encoding apparatus is predicted from first direction, second direction is predicted and is bi-directional predicted pre- Survey method is to encode current block.Predict from the first direction using first direction motion vector, transported using second direction The second direction of dynamic vector is predicted and using the bi-directional predicted of both first direction motion vector and second direction motion vector To determine Forecasting Methodology to be encoded to current block.
First direction prediction, second direction are predicted and more accurately predict that the Forecasting Methodology of current block can quilt in bi-directional predicted For being encoded to current block.As described above, obtain the minimum SAD between prediction block and current block Forecasting Methodology can by with Encoded in current block.
In operation 1530, image encoding apparatus is to the prediction direction on being used in the definite Forecasting Methodology of operation 1520 Information encoded.Binary number can be individually allocated to first direction, second direction and two-way, distribute to for current The binary number for the prediction direction that block is encoded can be encoded.Can according to predetermined entropy coding method to the binary number of coding into Row entropy coding.Information on prediction direction can be encoded as sequential parameter, slice parameter or block parameter.
Also the information of the pixel value on current block is encoded.In this case, can be on by from current The information of the residual values for the residual block that block subtracts prediction block and obtains is encoded.Residual block can be transformed, quantify and entropy coding. In addition, as described above, flag information that can be only identical with current block to indication predicting block encodes.
The information for defining the motion vector for being used for being encoded in multiple motion vector candidates to current block can also be carried out Coding.The multiple movement arrow is produced if based on the motion vector of at least one block encoded before current block is encoded Candidate is measured, and one of the multiple motion vector candidates are chosen and are used as the motion vector of current block, it indicates that selection The information of motion vector can be encoded., can be only right if being confirmed as Forecasting Methodology operating the prediction of 1520 first directions Information on first direction motion vector is encoded.If it is confirmed as prediction side operating the prediction of 1520 second directions Method, then can be only to encoding on the information of second direction motion vector.If bi-directional predicted it is confirmed as in operation 1520 Forecasting Methodology, then only to being encoded on the information of both first direction motion vector and second direction motion vector.
Figure 16 is the flow chart for showing picture decoding method according to an embodiment of the invention.
With reference to Figure 16, in operation 1610, image decoding apparatus on first direction, second direction and it is two-way in will by with Decoded in the information that decoded prediction direction is carried out to current block.In this case, can be to including in the bitstream Information on prediction direction is decoded.Can be to being respectively allocated in first direction, second direction and two-way binary number The binary number for distributing to prediction direction is decoded.It can be decoded as including the information on prediction direction in the bitstream Sequential parameter, slice parameter or block parameter.
In operation 1610, image decoding apparatus also encodes the information of the pixel value on current block.Can on The information of the residual values of the residual block of current block is encoded.Can on residual block information carry out entropy decoding, inverse quantization and Inverse transformation is with Cost fun ction block.In addition, can be to indicating that the current block information identical with prediction block decodes.
, can be the multiple to defining when determining the motion vector of current block from multiple motion vector candidates as described above The information for carrying out decoded motion vector to current block by being used in motion vector candidates decodes.If on pre- The decoded the results show prediction direction of information progress for surveying direction is first direction, then can be to indicating that the multiple motion vector is waited The information of the first direction motion vector for the current block chosen is decoded.If the information on prediction direction is decoded The results show prediction direction be second direction, then can be to indicating the second party of the current block in the multiple motion vector candidates Decoded to the information of motion vector.If it is to carrying out decoded the results show prediction direction on the information of prediction direction It is two-way, then can be to indicating the information of the first direction motion vector in the multiple motion vector candidates and indicating the multiple fortune The information of second direction motion vector in dynamic vector candidate is decoded.
Operation 1620, image decoding apparatus based on operate the 1610 decoded information on prediction direction come determine work as The preceding piece of prediction direction that will be predicted.Prediction that current block will be predicted is determined based on binary number corresponding with prediction direction Direction, wherein, the information of prediction direction is decoded in operation 1610.If the prediction direction being predicted is determined by current block, Then it is used to be determined according at least one motion vector of definite prediction direction prediction current block.
As described above, can be according to the method for the definite motion vector shared between coding side and decoding end come implicitly true Determine the motion vector of current block.If explicitly selecting the motion vector of current block from multiple motion vector candidates, it is based on Decoded at least one block motion vector produces the multiple motion vector candidates before current block is decoded, and from described The motion vector of current block is determined in multiple motion vector candidates.It can be based in the decoded the multiple movement of instruction of operation 1610 The information of the motion vector of current block in vectors candidates, determines the motion vector of current block.It can be based in the decoding of operation 1610 Information it is at least one in first direction motion vector and second direction motion vector to determine.
In operation 1630, image decoding apparatus recovers current block.Based on the movement arrow in the definite current block of operation 1620 Measure to determine the prediction block of current block, current block is recovered based on prediction block.
It can be performed by what is determined in operation 1620 based on first direction motion vector and/or second direction motion vector First direction prediction, second direction prediction and one of bi-directional predicted, produce the prediction block of current block.
If be resumed operating 1610 residual blocks, prediction block is combined to recover current block with the residual block recovered.Such as The fruit indication predicting block information identical with current block is decoded, then prediction block is used as current block.
Although the exemplary embodiment and attached drawing with reference to the present invention are particularly shown and the invention has been described, this area it is general Logical technical staff will be understood that, these exemplary embodiments can be changed without departing from the principles and spirit of the present invention Become, the scope of the present invention is defined in claim and its equivalent.In addition, system according to an embodiment of the invention can quilt The computer-readable code being embodied as in computer readable recording medium storing program for performing.
For example, image encoding apparatus, image decoding apparatus, the motion vector encoder of exemplary embodiment according to the present invention Equipment, motion vector decoder equipment may include each unit of the equipment with being shown in Fig. 1, Fig. 2, Fig. 4, Fig. 5, Fig. 9 and Figure 14 The bus of connection and at least one processor being connected with bus.Each in the equipment may also include memory, deposit Reservoir be connected with bus with store order, receive message or generation message, and with for performing described in aforesaid operations extremely Few processor connection.
Computer readable recording medium storing program for performing can be the recording equipment of any data that can be stored and be read by computer system, For example, read-only storage (ROM), random access memory (RAM), compact disk (CD)-ROM, tape, floppy disk, optical data storage Device etc..Computer readable recording medium storing program for performing can be distributed on by the way that in the inline computer system of network, the present invention can be stored With the computer-readable code being embodied as in distributed system.

Claims (5)

1. a kind of image decoding apparatus, including:
Decoder, it is single based on maximum coding unit layering is divided at least one coding from the division information that bit stream obtains Member, determines current block in the coding unit among at least one coding unit, and acquisition will be used to carry out current block The information of decoded prediction direction, wherein, described information instruction L0 directions, L1 directions and one of two-way;
Motion vector determiner, based on the operation vector of the decoded at least one block before being decoded to current block, really Determine the motion vector candidates of current block, and according to the described information on prediction direction, based on definite motion vector candidates it In L0 directions on motion vector candidates and L1 directions on motion vector candidates at least one motion vector candidates, really Determine at least one motion vector of current block, wherein, the decoded at least one block before being decoded to current block It is in the block at least one including first piece and second, wherein, first piece is neighbouring with the lower left side of current block, and second piece is located at first The upside of block.
2. equipment as claimed in claim 1, wherein, decoder by entropy decoding is performed to bit stream come obtain with LO directions, L1 directions and one of two-way corresponding binary number.
3. equipment as claimed in claim 1, wherein, motion vector determiner is based on the definite fortune of the instruction obtained from bit stream The information of at least one motion vector candidates in dynamic vector candidate, determines at least one motion vector of current block.
4. equipment as claimed in claim 1, wherein, motion vector determiner:
When the described information on prediction direction indicates L0 directions, pass through the letter to the motion vector candidates on instruction LO directions Breath is decoded, and at least one motion vector of current block is determined among motion vector candidates;
When the described information on prediction direction indicates L1 directions, pass through the letter to the motion vector candidates on instruction L1 directions Breath is decoded, and at least one motion vector of current block is determined among motion vector candidates;
When the described information instruction on prediction direction is two-way, by the LO directions among instruction motion vector candidates The information of the motion vector candidates on L1 directions among the information and instruction motion vector candidates of motion vector candidates carries out Decoding, determines at least one motion vector of current block.
5. equipment as claimed in claim 1, wherein, image is divided into multiple maximum volumes including the maximum coding unit Code unit,
The maximum coding unit is layered at least one coding unit being divided into according to depth,
The coding unit of current depth is one of square data cell marked off from the coding unit of greater depths,
The coding unit of current depth is divided into the coding unit of more low depth independently of neighbouring coding unit,
When the coding unit of current depth is divided at least one predicting unit, current block is that at least one prediction is single One of member.
CN201510446031.4A 2010-01-19 2011-01-19 The method and apparatus encoded/decoded to image Active CN105025300B (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US29614110P 2010-01-19 2010-01-19
US61/296,141 2010-01-19
KR10-2011-0005377 2011-01-19
CN201180014824.9A CN102835111B (en) 2010-01-19 2011-01-19 The motion vector of previous block is used as the motion vector of current block, image to be carried out to the method and apparatus of coding/decoding
KR1020110005377A KR101607308B1 (en) 2010-01-19 2011-01-19 Method and apparatus for encoding/decoding image by using motion vector of previous block as motion vector of current block

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201180014824.9A Division CN102835111B (en) 2010-01-19 2011-01-19 The motion vector of previous block is used as the motion vector of current block, image to be carried out to the method and apparatus of coding/decoding

Publications (2)

Publication Number Publication Date
CN105025300A CN105025300A (en) 2015-11-04
CN105025300B true CN105025300B (en) 2018-05-04

Family

ID=48667759

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201510446035.2A Active CN105025301B (en) 2010-01-19 2011-01-19 Image decoding apparatus
CN201510445868.7A Active CN105025299B (en) 2010-01-19 2011-01-19 The method and apparatus that image is encoded/decoded
CN201510446031.4A Active CN105025300B (en) 2010-01-19 2011-01-19 The method and apparatus encoded/decoded to image

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CN201510446035.2A Active CN105025301B (en) 2010-01-19 2011-01-19 Image decoding apparatus
CN201510445868.7A Active CN105025299B (en) 2010-01-19 2011-01-19 The method and apparatus that image is encoded/decoded

Country Status (3)

Country Link
JP (1) JP2013517733A (en)
CN (3) CN105025301B (en)
MY (2) MY184904A (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1336080A (en) * 1999-10-29 2002-02-13 皇家菲利浦电子有限公司 Video encoding-method
EP1406450A1 (en) * 2002-03-04 2004-04-07 Matsushita Electric Industrial Co., Ltd. Moving picture coding method and moving picture decoding method
EP1513349A2 (en) * 2003-09-07 2005-03-09 Microsoft Corporation Bitstream-controlled post-processing video filtering
KR20060053517A (en) * 2004-11-17 2006-05-22 삼성전자주식회사 Method for deinterlacing in use of field variable partition type and apparatus thereof
CN1993995A (en) * 2004-08-03 2007-07-04 学校法人大洋学园 Method, medium, and apparatus predicting direct mode motion of a multi-angle moving picture
CN100581259C (en) * 2002-01-09 2010-01-13 松下电器产业株式会社 Motion vector coding method and device

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040001546A1 (en) * 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
US8064520B2 (en) * 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
KR101330630B1 (en) * 2006-03-13 2013-11-22 삼성전자주식회사 Method and apparatus for encoding moving picture, method and apparatus for decoding moving picture, applying adaptively an optimal prediction mode
KR101505195B1 (en) * 2008-02-20 2015-03-24 삼성전자주식회사 Method for direct mode encoding and decoding
KR101517768B1 (en) * 2008-07-02 2015-05-06 삼성전자주식회사 Method and apparatus for encoding video and method and apparatus for decoding video

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1336080A (en) * 1999-10-29 2002-02-13 皇家菲利浦电子有限公司 Video encoding-method
CN100581259C (en) * 2002-01-09 2010-01-13 松下电器产业株式会社 Motion vector coding method and device
EP1406450A1 (en) * 2002-03-04 2004-04-07 Matsushita Electric Industrial Co., Ltd. Moving picture coding method and moving picture decoding method
EP1513349A2 (en) * 2003-09-07 2005-03-09 Microsoft Corporation Bitstream-controlled post-processing video filtering
CN1993995A (en) * 2004-08-03 2007-07-04 学校法人大洋学园 Method, medium, and apparatus predicting direct mode motion of a multi-angle moving picture
KR20060053517A (en) * 2004-11-17 2006-05-22 삼성전자주식회사 Method for deinterlacing in use of field variable partition type and apparatus thereof

Also Published As

Publication number Publication date
MY197143A (en) 2023-05-26
MY184904A (en) 2021-04-30
CN105025300A (en) 2015-11-04
CN105025299A (en) 2015-11-04
CN105025301B (en) 2019-08-23
CN105025301A (en) 2015-11-04
JP2013517733A (en) 2013-05-16
CN105025299B (en) 2019-04-16

Similar Documents

Publication Publication Date Title
CN104967857B (en) The method and apparatus that image is encoded/decoded
CN104994380B (en) Method and apparatus for being coded and decoded to motion vector
CN103260029B (en) Method and apparatus for encoding/decoding motion vector
CN102714736B (en) Method and apparatus for encoding and decoding motion vector based on reduced motion vector predictor candidates
CN104967850B (en) The method and apparatus that image is coded and decoded by using big converter unit
CN106851271B (en) Moving image encoding device and moving picture encoding method
CN105025298B (en) The method and apparatus that image is encoded/decoded
CN102474609B (en) Method and apparatus for encoding images and method and apparatus for decoding images
CN102598670A (en) Method and apparatus for encoding/decoding image with reference to a plurality of frames
CN105847832B (en) Video encoding/decoding method
CN105025300B (en) The method and apparatus encoded/decoded to image

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant