CN105025300B - The method and apparatus encoded/decoded to image - Google Patents
The method and apparatus encoded/decoded to image Download PDFInfo
- 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
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 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.
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)
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)
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 |
-
2011
- 2011-01-19 JP JP2012549942A patent/JP2013517733A/en active Pending
- 2011-01-19 MY MYPI2012003278A patent/MY184904A/en unknown
- 2011-01-19 CN CN201510446035.2A patent/CN105025301B/en active Active
- 2011-01-19 CN CN201510445868.7A patent/CN105025299B/en active Active
- 2011-01-19 CN CN201510446031.4A patent/CN105025300B/en active Active
- 2011-01-19 MY MYPI2019001262A patent/MY197143A/en unknown
Patent Citations (6)
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 |