Abstract: An image decoding method, according to the present invention, can comprise the steps of: deriving a spatial merge candidate of a current block; generating a merge candidate list for the current block on the basis of the spatial merge candidate; acquiring motion information on the current block on the basis of the merge candidate list; and performing motion compensation for the current block by using the motion information.
Art
[1]The present invention relates to a video signal processing method and apparatus.
BACKGROUND
[2]Recently, the demand for high-resolution, high-quality video, such as HD (High Definition) video and UHD (Ultra High Definition) video is increasing in various application areas. Since the image data has been increasing the amount of high resolution, high quality is the more relatively data compared to traditional image data if the stored transmit image data using a medium such as an existing wired or wireless broadband, or with a conventional storage medium, transmission cost and It increases storage costs. In order to address these issues as the picture data of high resolution, high quality image can be compressed with high efficiency techniques are utilized.
[3]
A video compression techniques inter picture predicting the pixel values of the current picture from a previous or subsequent picture in the current picture prediction techniques, by using the pixel information in the current picture screen for predicting the pixel values of current picture prediction techniques, It may assign a short code to a value of high appearance frequency, and transmitted or stored until there is a variety of techniques, such as an entropy encoding technique for assigning a long code to the low frequency of appearance values, and effectively compressing the image data by using such a video compression technology.
[4]
On the other hand, with the increased demand for high-definition video, and even with increased demand for stereoscopic content as a new video service. There is ongoing debate about the resolution and second video compression technology to provide a high-resolution stereoscopic content effectively.
Detailed Description of the Invention
SUMMARY
[5]
An object of the present invention is to provide a method and apparatus capable of performing efficient inter-prediction with respect to the method as the coding / decoding a video signal, an encoding / decoding block.
[6]
An object of the present invention is to provide a method and apparatus capable of inducing the remaining candidates based on the predetermined form, or a block of a predetermined size as in encoding / decoding a video signal.
[7]
An object of the present invention is to provide a method and apparatus capable of performing a parallel merge into a predetermined shape or a predetermined unit size, according as coding / decoding a video signal.
[8]
SUMMARY OF THE INVENTION In the present invention are not limited to the technical problem mentioned above, it is not mentioned another technical problem will be clearly understood to those of ordinary skill in the art from the following description It will be.
Problem solving means
[9]
How to decode the video signal in accordance with the invention and apparatus, on the basis of the current block spatially merge deriving a candidate, and the spatial merge candidate for generating a list since the remaining of the current block, and in the near future based on the candidate list, acquiring motion information of the current block, using the motion information, it may perform the motion compensation of the current block. In this case, the spatial merge candidate for the current block may be derived from at least one spatially adjacent block adjacent to the block including an upper node of the current block.
[10]
How encoded video signal according to the invention and apparatus, on the basis of the current block spatially merge deriving a candidate, and the spatial merge candidate for generating a list since the remaining of the current block, and in the near future based on the candidate list, acquiring motion information of the current block, using the motion information, it may perform the motion compensation of the current block. In this case, the spatial merge candidate for the current block may be derived from at least one spatially adjacent block adjacent to the block including an upper node of the current block.
[11]
In the video signal encoding / decoding method and apparatus according to the present invention, the spatially neighboring blocks which are specified by the remaining indices of neighboring blocks of the current block may be determined to be not available in a spatially merge candidate for the current block.
[12]
In the video signal encoding / decoding method and apparatus according to the present invention, the neighboring blocks may be, the first encoding / decoding block from the current block.
[13]
In the video signal encoding / decoding method and apparatus according to the present invention, the spatial merge candidates having the same remaining candidate and neighboring blocks of the current block may be determined to be not available.
[14]
In the video signal encoding / decoding method and apparatus according to the present invention, the higher not less than the node number of samples a predetermined number of the block that contains the spatial rest of the current block from at least one spatially neighboring blocks in adjacent to the superordinate block It can induce candidates.
[15]
In the video signal encoding / decoding method and apparatus according to the present invention, when the number of child nodes blocks including the upper node block satisfies at least one of less than the minimum value or higher, or the maximum value, at least adjacent to the superordinate block It may derive a spatial merge candidate for the current block from a spatially adjacent block.
[16]
The for the invention briefly summarized above features are merely exemplary of yangsangil detailed description of the invention which will be described later, and are not intended to limit the scope of the invention.
Effects of the Invention
[17]
According to the present invention, encoding / decoding can be efficiently performed by the inter prediction for the current block.
[18]
According to the present invention, it is possible to derive the remaining candidates based on the predetermined form, or a block of a predetermined size.
[19]
According to the present invention, the remaining to a predetermined shape or predetermined unit of measurement can be performed in parallel.
[20]
Effects that can be obtained in the present invention is not limited to the effects mentioned above, are not mentioned other effects can be clearly understood to those of ordinary skill in the art from the following description will be.
Brief Description of the Drawings
[21]
Figure 1 is a block diagram showing an image encoding apparatus according to an embodiment of the present invention.
[22]
Figure 2 is a block diagram showing an image decoding apparatus according to an embodiment of the present invention.
[23]
Figure 3 illustrates an example of dividing the one embodiment to which the present invention is applied, coded block on the basis of the tree structure (tree structure) in a hierarchical manner.
[24]
Figure 4 is a view of the partition form of the invention is in one embodiment, the partitioning of the binary tree-based allowed to be applied.
[25]
Figure 5 is a view showing one embodiment to which the present invention is applied, for example, only a particular form of binary tree-based partition allowed.
[26]
Figure 6 is one embodiment to which the present invention is applied, a view for explaining an example in which the information relating to the division number allows a binary tree to be encoded / decoded.
[27]
7 is a view according to an embodiment to which the present invention is applied, illustrating a partition mode that can be applied to the coded block.
[28]
8 is a flowchart illustrating the inter-prediction method according to an embodiment to which the present invention is applied.
[29]
9 is a case where the merge mode applied to the current block, a diagram illustrating a process for deriving the motion information of the current block.
[30]
10 is a view showing an example of spatially neighboring blocks.
[31]
11 is a view for explaining a non-spatially neighboring blocks.
[32]
12 is a view spatially non-adjacent samples are not adjacent in the same CTU and the current block showing examples are replaced by the sample adjacent to the CTU.
[33]
13 is a view for explaining an example of inducing a motion vector of a temporal merge candidates.
[34]
Figure 14 is a view showing the positions of the candidate blocks that can be used with colo K lactide block.
[35]
15 is a case where the mode for the current block AMVP apply a diagram illustrating a process for deriving the motion information of the current block.
[36]
16 is a view showing an example in which, based on the square block, guided through the remaining candidates for a non-square block.
[37]
17 is a view for explaining an example in which a merge candidate for the divided blocks binary tree is derived, based on the parent node block.
[38]
18 is a view showing an example of determining the availability of spatially neighboring blocks based on the derived remaining region.
[39]
19 is a view showing an example of inducing the remaining candidates for the current block in consideration of the remaining index of the neighboring blocks.
Mode for the Invention
[40]
The invention will be described in bars, it illustrated in the drawings certain embodiments that may have a variety of embodiments can be applied to various changes and detail in the Detailed Description. This, however, is by no means to restrict the invention to the specific embodiments, it is to be understood as embracing all included in the spirit and scope of the present invention changes, equivalents and substitutes. In describing the drawings was used for a similar reference numerals to like elements.
[41]
First, the term of the second, etc., can be used in describing various elements, but the above elements shall not be restricted to the above terms. These terms are only used to distinguish one element from the other. For example, without departing from the scope of the present invention, the first component may be referred to as a second configuration can be named as an element, similar to the first component is also a second component. And / or the term includes any item of the items described concerning the combination or plurality of the plurality of related items disclosed.
[42]
It understood that when one element is described as being "connected" or "coupled" to another element, but may be directly connected or coupled to the other components, may be other element in between It should be. In contrast, when an element is referred to there being "directly connected" to another element or "directly connected", it should be understood that other components in the middle that does not exist.
[43]
The terms used in the present specification are merely used to describe particular embodiments, and are not intended to limit the present invention. Expression in the singular number include a plural forms unless the context clearly indicates otherwise. In this application, the terms "inclusive" or "gajida" terms, such as is that which you want to specify that the features, numbers, steps, actions, components, parts, or one that exists combinations thereof described in the specification, the one or more other features , numbers, steps, actions, components, parts, or the presence or possibility of combinations thereof and are not intended to preclude.
[44]
With reference to the accompanying drawings, it will be described in detail preferred embodiments of the invention. The same reference numerals for the same components on the accompanying drawings and the description redundant with respect to the same elements will be omitted.
[45]
[46]
Figure 1 is a block diagram showing an image encoding apparatus according to an embodiment of the present invention.
[47]
1, the image encoding device 100 includes a picture dividing unit 110, a prediction unit (120, 125), the conversion unit 130, a quantization unit 135, a reordering unit 160, an entropy coding unit ( 165), it may include an inverse quantization unit 140, an inverse transformation unit 145, filter unit 150 and memory 155. the
[48]
FIG constituent parts shown in Fig. 1 does not mean that each independently shown to represent another characteristic feature, made of an constituent parts are separate hardware or a software unit in the image encoding apparatus. That is, the respective constituent parts combined addition of convenience, each of the configuration of at least one constituent part that includes the list part two configurations described or made part a configuration, it is possible to perform a divided parts of one configuration addition plurality of configuration functions for each of these one is included in the scope of the present invention configured without departing from the spirit of the present invention, examples of an integrated and separate exemplary embodiment portion.
[49]
In addition, some of the components are not the essential components that perform essential functions in the present invention can only be an optional component to improve the performance. Structure of the present invention can only be implemented to include only the essential component parts to implement the essence of the present invention except for the components that are used to improve performance, including only optional configuration required components except the elements that are only used for better performance It is also included in the scope of the present invention.
[50]
A picture dividing unit 110 can divide an input picture into at least one processing unit. At this time, in units of prediction unit may be: (CU Coding Unit) (Prediction Unit:: PU) may be a, a translation unit (TU Transform Unit) and may be a coding unit. Picture division section 110 into a plurality of coding unit, a prediction unit, and the combination of the transform unit for the one picture and a predetermined reference (for example, a cost function), as a coding unit, a prediction unit and a translation unit, a combination to select it can be encoded in the picture.
[51]
For example, one picture can be divided into a plurality of coding units. Coding in order to divide the unit of encoding in a picture may be used a recursive tree structure, such as a quad tree structure (Quad Tree Structure) by one of the picture or the maximum size of the encoding unit (largest coding unit) to the root which is divided into different coding units unit may be divided to have the child nodes as many as the number of the divided coded unit. In accordance with a predetermined limit that is no longer divided coding unit is a leaf node. That is, if we assume that the square divided only possible for one of the coding unit, a coding unit may be divided into up to four different coding units.
[52]
Hereinafter, embodiments in the coding unit of the present invention may be used to mean a unit for performing the encoding, it can be used to mean a unit for performing the decoding.
[53]
Prediction unit may be divided to have the form of at least one of the square or rectangle of the same size within a coding unit, one of the any of the prediction unit of the divided prediction unit in the coding units prediction of other It may be partitioned to have a unit with a different shape and / or size.
[54]
If not the minimum coding unit when generating a prediction unit which performs intra prediction based on the encoding unit may perform intraprediction not divided into a plurality of NxN prediction unit.
[55]
Prediction unit 120, 125 may comprise an intra predictor 125 to perform the inter-prediction unit 120 and the intra-prediction for performing inter-prediction. For the prediction unit whether to use the inter prediction or decision whether to perform intra prediction, it is possible to determine the specific information (e.g., intra-prediction modes, motion vectors, reference picture, and so on) for each prediction method. At this time, the prediction process unit is performed and the prediction method and the specific process unit to be the content determined may be different. For example, the prediction method and the prediction mode and the like is determined as a prediction unit, for performing prediction may be performed in a conversion unit. Residual values between the generated prediction block and the original block (residuals block) can be input to the converter 130. Further, the prediction mode information used for prediction, and motion vector information which are coded by the entropy coding unit 165 together with the residual value may be delivered decoding groups. When using a specific encoding mode, instead of generating a prediction block by the prediction unit (120, 125), by directly coding the source block it is also possible to transfer the decrypting unit.
[56]
Inter prediction section 120 thus is predicted based on the information of a part of the coding in the current picture is complete, if the current and of the previous picture or a subsequent picture of the picture also at least predicting the prediction unit, based on information in the one picture, It may predict the unit. Inter prediction section 120 may include a reference picture interpolation, motion prediction unit, a motion compensation unit.
[57]
The reference picture interpolation may receive service information from the reference picture memory 155, it generates the pixel information of more than integer pixels in a reference picture. Can be used for luminance pixel, quarter-8-tap interpolation filter (DCT-based Interpolation Filter) in the DCT-based otherwise the filter coefficient to generate the pixel information of the integer pixels in units of pixels or less. For the color difference signals is 1/8 4-tap interpolation filter (DCT-based Interpolation Filter) in the DCT-based having different filter coefficients on a pixel-by-pixel basis to generate the pixel information of integer pixels or less can be used.
[58]
A motion prediction unit may perform motion estimation based on the reference picture in a reference picture interpolation by the interpolation. There are various methods as a way to calculate a motion vector (Full search-based Block Matching Algorithm) FBMA, TSS (Three Step Search), NTS (New Three-Step Search Algorithm) or the like can be used. A motion vector may have a motion vector value of 1/2 or 1/4 pixel units on the basis of the interpolation pixel. The motion predictor by different motion prediction methods to predict the current prediction unit. Motion predicting method in the skip (Skip) method, merge (Merge) method, AMVP (Advanced Motion Vector Prediction) method, such as an intra block copy (Intra Block Copy) method can be used a variety of methods.
[59]
Intra predictor 125 may generate the pixel information of the current prediction unit based on the reference pixel information of neighboring blocks in the current picture. If it is, the neighboring blocks of the prediction unit then blocks the performing inter-prediction, the reference pixel is a pixel which performs the inter-prediction, with reference of the reference pixel contained in the block performing the inter prediction performs intra prediction for the neighboring blocks of pixels It may be replaced by information. In other words, if reference pixels are not available, it may be replaced by at least one reference pixel in the reference pixels available for reference information that is not available pixels.
[60]
In the intra-prediction mode, prediction may have a non-directional mode that does not use the directional information for the performance of the directional prediction mode, the prediction using the reference pixels in accordance with information on a prediction direction. And a mode for predicting the mode and color difference information to predict the luminance information may be different, it is possible to take advantage of the intra-prediction mode information or the prediction luminance signal information used to estimate the brightness information to estimate the color difference information.
[61]
Intra-prediction for a case the same size of the size of the translation unit of the prediction unit when performing the intra prediction, a pixel that exists on the left side of the prediction unit, and the pixel, the prediction unit based on the pixels existing in the top of existing in the upper left the can be performed. But it can be when the size of the prediction unit to perform the intra-prediction size and phase conversion unit, using the reference pixel on the basis of a conversion unit to perform intra prediction. It is also possible to use the intra-prediction using the NxN split only for the minimum coding unit.
[62]
Intra-prediction method may generate a prediction block after applying (Adaptive Intra Smoothing) AIS filter the reference pixels according to the prediction mode. Type of AIS filters that are applied to the reference pixel may be different. The intra-prediction mode of the current prediction unit for performing intra prediction method may be predicted from the intra-prediction mode of the prediction unit existing in the vicinity of the current prediction unit. When prediction a prediction mode of the current prediction unit using the mode information predicted from the surrounding prediction unit, the intra prediction mode is the same when using the predetermined flag information, the current prediction unit and the surrounding prediction unit for the current prediction unit and the surrounding prediction unit a prediction mode and to transmit the same information that, if the can when the prediction mode of the current prediction unit and the peripheral units of different prediction by performing the entropy coding to encode the prediction mode information of the current block.
[63]
In addition, a residual block that contains the prediction section 120, 125 predicted by performing a prediction based on a prediction unit of the unit to the original block of the prediction unit and the difference value of the residual values (Residual) information generated by the can be generated. The generated residual block may be input to the converter 130.
[64]
Conversion unit 130 in the source block and the prediction unit (120, 125) (Discrete Cosine Transform), DCT residual block including residual value (residual) information of the predicted unit generation via, DST (Discrete Sine Transform), KLT and using the same conversion method can be converted. To apply the DCT transform to the residual block, the intra-prediction mode information of the prediction unit used to generate the residual block might seem apply to apply the DST or KLT can be determined based on.
[65]
The quantization unit 135 may quantize the values converted into the frequency domain in a transform unit 130. The Based on the importance of the image or depending on the block quantization coefficient it may be varied. A value calculated by the quantization unit 135 may be provided to the inverse quantization unit 140 and the reordering unit 160.
[66]
Reordering unit 160 may perform the reordering of the coefficient value for the quantized residual values.
[67]
Rearrangement unit 160 may change the form factor of the two-dimensional block by a coefficient scanning method (Coefficient Scanning) in the form of a vector of 1 dimension. For example, the rearrangement unit 160, the zig-zag scanned using a scan (Zig-Zag Scan) method from the DC coefficient to the coefficients of the high frequency region can be changed to a one-dimensional vector format. May be used instead of the horizontal scanning to scan zag scan vertical scan to scan two-dimensional coefficients of the block type in the column direction, the block coefficient of the two-dimensional form in the row direction according to the size of the transformation unit and the intra prediction mode jig. That is, according to the size and the intra-prediction mode of the conversion unit of zig-zag scanning may determine whether, any scanning method of the vertical scan and the horizontal scan will be used.
[68]
The entropy encoding unit 165 may perform entropy-encoding on the basis of the value calculated by the reordering unit 160. The Entropy encoding, for example, exponential Golomb (Exponential Golomb), may be used for various coding methods such as CAVLC (Context-Adaptive Variable Length Coding), CABAC (Context-Adaptive Binary Arithmetic Coding).
[69]
The entropy encoding section 165 rearrangement unit 160 and the prediction unit (120, 125) from the residual value of the coefficient of the coding unit information and block type information, prediction mode information, the division unit information, a prediction unit of information and transmission unit information, motion vector information, and reference frame information, interpolation information, filter information of the block can be encoded in a variety of information.
[70]
The entropy coding unit 165, the entropy encoding may be the coefficients of a coded unit of input in the rearrangement unit 160. The
[71]
The inverse quantization unit 140 and inverse transform unit 145 inverse quantizes the values quantized by the quantization unit 135 and inverse transform the values converted by the conversion unit 130. Residual value (Residual) generated by the inverse quantization unit 140 and inverse transformation unit 145 is the prediction unit restoring combined with the motion estimator, a motion compensator, and intraprediction predicted through parts prediction unit comprises a (120, 125) it is possible to produce a block (block Reconstructed).
[72]
Filter unit 150 may include at least one of a deblocking filter, offset correction, ALF (Adaptive Loop Filter).
[73]
De-blocking filter may be removed and the resulting block distortion due to the interface between the block in the reconstructed picture. To perform a de-blocking can be determined whether or not to apply the deblocking filter to the current block based on pixels included in several rows or columns included in the block in order to determine. For the application of the deblocking filter to the block it can be applied in a strong filter (Strong Filter) or a weak filter (Weak Filter) in accordance with the necessary de-blocking filter strength. Also note that when applying the deblocking filter for vertical filtering and horizontal filtering can be done in parallel for processing the horizontal filter and vertical filter.
[74]
Offset compensation unit for performing a de-blocking the image it is possible to correct the offset of the original image in pixels. Offset and then divided into the area of the number of certain of the pixels included in the image to perform the offset correction for the specified picture determines the area to perform the offset considering a method of applying an offset to the area or edge information of each pixel you can use the method of applying.
[75]
(Adaptive Loop Filtering) ALF may be performed on the basis of a comparison of the original picture and the filtered reconstructed image value. Divide the pixels included in the image in a predetermined group can be performed by determining the differential filter as a single filter to be applied to the group for each group. Information relating to whether to apply the ALF is a luminance signal is shaped, and the filter coefficients of the filter to be applied in accordance with the ALF coding unit (Coding Unit, CU) each block can have, to be transmitted by each may vary. Further, the application may be applied to the ALF filter of the same type (fixed type) regardless of the characteristics of the current block.
[76]
Memory 155 may store the reconstructed picture block or output through a filter section 150, the stored recovery block or picture may be provided at the time of performing inter-prediction predictor (120, 125).
[77]
[78]
Figure 2 is a block diagram showing an image decoding apparatus according to an embodiment of the present invention.
[79]
2, the video decoder 200, an entropy decoding unit 210, a reordering unit 215, an inverse quantization unit 220, an inversion unit 225, a prediction unit (230, 235), the filter unit ( 240), may be included in the memory 245.
[80]
If the video bit streams from the video encoder input, the input bit stream can be decoded in the process of a video encoder and opposite.
[81]
The entropy decoding unit 210 may perform entropy decoding in the reverse procedure to that performing the entropy coding in the entropy coding unit of the video encoder. For example, it is possible to correspond to the process performed in the video encoder be subject to a variety of methods such as exponential Golomb (Exponential Golomb), CAVLC (Context-Adaptive Variable Length Coding), CABAC (Context-Adaptive Binary Arithmetic Coding).
[82]
The entropy decoding unit 210, the can decrypt the information with regard to intra-prediction and inter-prediction performed in the encoder.
[83]
Reordering unit 215 may perform reordering based on the way rearrange the entropy decoded bitstream in the entropy decoding unit 210 in the encoding unit. The coefficients represented as one-dimensional vector form may be further rearranged to restore it to the coefficients of the blocks in the form of two-dimensional. Reordering unit 215 by the received provided information related to the coefficient scanning performed on the coding unit based on the scanning procedure performed in the encoding unit may perform reordering by a method of scanning in reverse.
[84]
The inverse quantization unit 220 may perform inverse quantization based on the count value of the reordered block and the quantization parameter provided by the encoder.
[85]
Inverse transform unit 225 may be for a conversion that is, DCT, DST, and KLT performed in converting unit for performing a quantization result by the image encoder performs the inverse transformation that is, reverse DCT, reverse DST and inverse KLT. The inverse transform may be performed on the basis of the transmission unit is determined from the video encoder. The inversion unit 225 of the video decoder prediction method, the transformation method (e.g., DCT, DST, KLT) based on the current block of the plurality of information such as the size and direction of prediction can be carried out selectively.
[86]
Predictor (230, 235) may generate a prediction block based on a previously decoded block, or picture information provided by the entropy decoding unit 210, a prediction block generated additional information and the memory 245 provided in the.
[87]
Present on equally to the operation of the video encoder, the size of the size and the conversion unit of the prediction unit of the same when performing the intra prediction, pixel, the upper present in the pixels, the upper left corner existing on the left side of the prediction unit as described above, on the basis of pixels that performs intra-prediction for a prediction unit, however, the case where the size of the transformation unit of the prediction unit for the performance of intra prediction different, using a reference on the basis conversion units of pixels to perform the intra prediction can. It is also possible to use the intra-prediction using the NxN split only for the minimum coding unit.
[88]
Predictor (230, 235) may include predicting unit determining unit, an inter prediction unit and the intra-prediction unit. Prediction unit judging section receives a variety of information such as the motion prediction information of the entropy decoding unit 210, prediction unit information, the intra-prediction method to be input in the prediction mode information and inter-prediction method of the separate prediction unit of the current coding unit, and prediction if the unit is performing inter prediction or it can be determined whether to perform intra prediction. The inter-prediction unit 230 is provided in the video encoder using the information necessary for inter-prediction of the current prediction unit are predicted on the basis of the information contained in the at least one picture of the previous picture or a subsequent picture of a current picture containing the current prediction unit It may perform inter prediction on the unit. It may perform inter-prediction based on the information of the restored partial area - or, a group within a current picture containing the current prediction unit.
[89]
Motion predicting method in the prediction unit included in the coding unit, based on the coding units for performing inter-prediction is a skip mode (Skip Mode), merge mode (Merge mode), AMVP mode (AMVP Mode), the intra-block copy mode of what kind of method can determine whether or not.
[90]
An intra prediction unit 235 may generate a prediction block based on a pixel information in the current picture. When the prediction unit of the prediction unit that performs intra prediction, based on the intra-prediction mode information of the prediction unit provided in the video encoder to perform intra prediction. An intra prediction unit 235 may include a (Adaptive Intra Smoothing) AIS filter, the reference pixel interpolating units, DC filter. AIS filter may be applied to determine whether a filter is applied in accordance with the prediction mode of the current prediction unit as a part that filters the current block of the reference pixel. Using the prediction mode information of the prediction filter and the AIS unit provided in the video encoder may perform the AIS filtering the current block of the reference pixel. If the current mode is a prediction mode of the block does not perform filtering AIS, AIS filter can not be applied.
[91]
Reference pixel interpolation unit may if the prediction mode of the prediction unit of one prediction unit which performs intra prediction based on the pixel value interpolation reference pixels, by interpolating the reference pixel to generate a reference pixel of a pixel unit or less constant value. If the prediction mode of generating a predictive block without the prediction mode of the current prediction unit interpolates the reference pixels a reference pixel can not be interpolated. DC filter has a prediction mode of the current block to generate a prediction block through the filter when the DC mode.
[92]
The reconstructed block or picture may be provided to filter unit 240. Filter unit 240 may include the deblocking filter, offset correction, ALF.
[93]
From the video encoder can be provided with information and di was applied when the blocking filter, information on whether the applied strong filter or apply a weak filter to whether on whether or not applying the deblocking filter to the block or picture. The deblocking filter of a video decoder being provided for the de-blocking filter-related information provided from the video encoder may perform deblocking filtering on the block in the video decoder.
[94]
Offset correcting unit may perform the offset correction on the restored image based on the information such as the type and the offset value of the offset compensation applied to the video encoding operation.
[95]
ALF may be applied to the encoding unit on the basis of whether the ALF application provided from the encoder information, ALF coefficient information, and the like. The ALF information may be provided to include a particular parameter set.
[96]
Memory 245 stores the reconstructed picture blocks or can to be used as a reference picture or a reference block may also provide the reconstructed picture as an output module.
[97]
In the following embodiments, the present invention as described above, used as a term for convenience coding unit (Coding Unit) coding units of description, but the encoding may be not only a unit for performing the decoding.
[98]
Also, the current block, to indicate the coding / decoding the current block, the encoding / accordance with the decoding phase, the coding tree block (or coding tree unit), an encoding block (or encryption unit), the conversion block (or a conversion unit), or prediction block It can be an indication or the like (or the prediction unit).
[99]
[100]
One picture can be divided into the basic blocks of the square or non-square shape encoding / decoding. In this case, the basic blocks may be referred to as the coding tree unit (Coding Tree Unit). Coding tree unit may be defined as the largest size allowed by the encoding unit sequence or a slice. Coding tree unit information related to the size of the square or non-square shape and whether or coding tree unit may be signaled through a sequence parameter set, picture parameter set or a slice header and the like. Coding tree unit may be divided into a smaller size for the partition. In this case, if the generated partition tree by splitting a coding unit as to the depth 1, the partitions created by dividing the depth of 1 partitions can be defined as the depth 2. That is, by dividing the generated within the depth k of the partition tree coding unit partition may be defined as having a depth k + 1.
[101]
Coding tree unit may be defined as a coding unit for partitioning the generated arbitrary size as the split. The coding unit is divided or recursively, may be divided into a basic unit for performing a predictive, quantized, transformation, or in-loop filtering, and the like. For example, any size of the partition generated as the coding units is split may be defined or the coding unit, defined as the predicted, quantized, transformation, or the basic unit of conversion unit or a prediction unit for performing such loop filter.
[102]
Partitioning of the coding tree unit or a coding unit, a vertical line may be performed based on at least one of (Vertical Line) or horizontal (Horizontal Line). In addition, the number of vertical and horizontal lines that partition the coding tree unit or a coding unit may be at least at least one. For example, as a vertical line, or one with a horizontal line, the coding tree unit or dividing the coding unit into two partitions, or two vertical and two by a horizontal line, the three partitions the coding tree units or coding unit It can be split. Or, by using a single vertical line and one horizontal line, it is possible to divide the coding tree units or coding unit to the four partitions of the length and width of one-half.
[103]
If the coding tree units or coding unit by using at least one vertical or at least one horizontal line is divided into a plurality of partitions, the partitions may have a uniform size, or may have a different size. Alternatively, it may also be any one of the partitions have a different size from the rest of the partition.
[104]
In the embodiments to be described later for example, it is assumed to be divided into a coding tree units or coding unit quadtree, triple tree or a binary tree structure. However, it can also be further divided in the coding tree units or coding unit by using a large number of vertical line or a larger number of horizontal lines of the.
[105]
Figure 3 illustrates an example of dividing the one embodiment to which the present invention is applied, coded block on the basis of the tree structure (tree structure) in a hierarchical manner.
[106]
The input video signal is decoded by a predetermined block unit, the basic unit is referred to as a coded block for decoding Thus the input video signal. Coding block may be a unit for performing the intra / inter-prediction, transformation, quantization. Further, the coding block unit prediction mode is determined (e.g., the intra-prediction mode or the inter-prediction mode), the prediction block included in the coded blocks, it is possible to share the determined prediction mode. Coded block may be a square or non-square blocks of arbitrary size of 8x8 to 64x64 belonging to the range, it can be 128x128, 256x256, or a square or non-square block having a size more.
[107]
Specifically, the coding block can be divided into a hierarchical tree based on at least one of a quad (quad tree), triple tree (triple tree), and a binary tree (binary tree). Here, the division of the quad-tree based 2Nx2N coded block with four NxN a manner that is divided into coded blocks, triple-partitioning of the tree-based is how a coding block is divided into three code blocks, a binary tree split of base may refer to one way of coding the block is divided into the two coded blocks. Although the triple tree or a binary tree-based partition of the partition was performed, in the lower depths may be present in the square in the coding block. Or, after the triple tree or a binary tree-based partition of the partition is performed, the sub-depth may be limited to be a square coding block generated.
[108]
Dividing the binary tree-based may be performed symmetrically, and may be performed asymmetrically. The coded blocks divided by a binary tree-based block may be a square, but may be non-square block such as a rectangular. For example, as shown in the example in shown in Figure 4 the partition shape which the division of a binary tree-based allow, symmetric (symmetric) of 2NxN (horizontal non-square coding unit) or Nx2N (vertically non room coding unit), an asymmetric of the type (asymmetric) in nLx2N, nRx2N, 2NxnU 2NxnD or it may include at least one.
[109]
Division of the binary tree-based and may be limited to allow only one of a symmetric or asymmetric form of partition. In this case, it is for constituting the coding tree unit, a square block for the quadtree partitioning CU, configure coding tree unit, in a non-symmetric square block may correspond to a binary tree partitioning. What constitutes a tree-coding unit in a square block with symmetric non-square block may correspond to a quad, and a binary tree CU partitioning.
[110]
Dividing the binary tree-based may be performed on a coding block is divided in the quad-tree based it is no longer performed. Binary partition tree of quad-based for the coded blocks divided in a tree-based, tree-based triple of the division or partition of at least one of a binary tree-based, may be set to no longer be performed.
[111]
Alternatively, but allow the triple tree-based partition or division of the binary tree based on the coding block divided by a binary tree-based, it is also possible to allow limited to only one of the horizontal direction or divided in the vertical direction.
[112]
For example, it is also possible to limit further divided or further divided direction on the location, index, types, coded blocks divided by a binary tree-based depending on the further divided in the form of adjacent partitions of the encoded block divided by a binary tree-based. For example, a binary tree split the index of the code block before the two coded coding sequence of the blocks generated by the 0 (hereinafter referred to as coded block with index 0) of the base, the coding order is 1 (the index of the coded block on the back, when called coded block index 1), the coding block index 0 or coded block index 1 in the case that the division of a binary tree-based applied to all coded blocks, dividing direction of the binary tree based on the coded block index is 1, the coded block, coded block index can be determined according to the dividing direction of the zero-tree of binary-coded block based. Specifically, the coded block, if the index is the division direction of the zero binary tree for coding the block-based to split a coded block coded block index is zero in the square partitions, the coding block index of 1, a binary tree-based coding block the partition can be limited so as to have a partition different from the direction of the binary tree based on the coded block index 1 of the coding block. That is, the coded block with index 0 and index 1 coded block of coded blocks may all be limited to be divided into a square partition. In this case, the encoding / decoding of the information representing the binary tree splitting direction of the coded block index is 1, the coded block can be omitted. This coded block with index 0 and index 1 coded block of coded blocks is all that is divided into a square partitions, the bar represents the equivalent to dividing the higher block to a depth quadtree-based,
[113]
Triple-partitioning of the tree base, means for dividing the coded blocks in the horizontal or vertical direction into three partitions. Triple all three partitions of the tree based on the generated due to division can have different sizes. Or, two of the partitions created due to the division of the tree-based triple has the same size, there is also the other one can have any different size. For example, the coding block width ratio or height ratio of generated partitions as partition 1 according to the dividing direction: to be set to 1: n: 1, 1: 1: n, n: 1: 1 or m: n have. Here, m and n may be an integer, e.g., 2 to a real number greater than 1, or 1.
[114]
Triple-partitioning of the tree-based may be performed on a coding block is divided in the quad-tree based is no longer performed. Access may for coded blocks divided in a tree-based, the division of the quadtree-based, tree-based triple-partitioning of binary or tree-based partition of the at least one can be set to no longer be performed.
[115]
Alternatively, triple, but the tree-based acceptable triple tree-based partition or division of the binary tree based on the divided coded block, it is also possible to allow limited to only one of the horizontal direction or divided in the vertical direction.
[116]
For example, the triple depending position of the coded blocks divided in a tree-based, the index, shape, size and further divided in the form of adjacent partitions or the like, it is also possible to limit further divided or further divided direction for the coded blocks divided into a triple-tree-based. For example, the triple can be either a horizontal division or a vertical division for the size of the tree-based coded blocks generated by the division of the largest partition is restricted. Specifically, triple the size of the coded blocks generated by the splitting of the tree based on the largest partition is two triple tree division direction and triple tree partitioning of the binary tree split, or the same direction with the same orientation direction of the upper depth, the partition may not be allowed have. In this case, the triple tree-based coding / decoding of information representing the binary tree splitting direction or triple tree splitting direction for the largest partitions of the divided coded block to may be omitted.
[117]
It may be a division of the binary tree or a tree-based triple limited by the size or type of the current block. Here, the size of the current block, based on at least one of the number of samples included in the sum, the width and the product, or the current block of the height of the width, height, and width / minimum value of the height / maximum values, the width and height of the current block It can be expressed. For example, in the case at least one of the width or height of the current block is greater than a previously defined value, the binary tree or a tree-based triple split may not be allowed. Here, the value defined group may be an integer, such as, 16, 32, 64 or 128. As another example, the width and the height ratio is greater than a previously defined value or a defined group, if less than the value of the binary tree or a tree-based triple-partitioning of the current block may not be allowed. If the value defined group 1, there is a current block, the width and height can be a division of the binary tree or a tree-based triple allowed only when the same square block.
[118]
Dividing the sub-depth may be determined as dependent on the splitting type of the upper depth. If a one embodiment, the partitioning of the binary tree based on more than one depth allows, only a binary tree split and forms the same type of binary tree-based partition of the upper depth, this can be tolerated at lower depths. For example, if the binary tree based on the parent depths to form 2NxN division is carried out, even in the lower depth of the division of a binary tree-based 2NxN form can be carried out. Or, in the case of a binary tree-based Nx2N to form in the upper division depth is carried out, even in the lower depth of the division of a binary tree-based Nx2N shape can be allowed.
[119]
On the other hand, it is also possible to allow at lower depths, only a binary tree split and form different types of binary tree-based partition of the upper depth.
[120]
For a sequence, a slice, the coding tree units or coding unit, is a particular form of binary tree-based partition or the specific form of the division of the tree-based Access may be limited to use only. For example, it is possible to limit the allowed 2NxN or only division of a binary tree-based Nx2N form for coding tree unit. Partition type may be acceptable to code the information about the partition type that encoder or decoded groups may be defined based, not allowed, or allowed to form partition signaling on the bit stream.
[121]
5 is a view showing an example in which only a particular form of binary tree-based partition allowed. Figure 5 (a) represents an example that only a limited partitioning of the binary tree based Nx2N This allows, also (b) the 5 shows an example that only a limited partitioning of the binary tree based 2NxN This allowed. Indicating the division of the information, a binary tree based on the size / depth of the quad-tree or a binary tree-based adaptive that this information, quad split tree-based allow for instructing the division of the quad-tree basis to implement the partition coded block for information, a binary tree based on whether the division is the division of information or a binary tree based on the size / depth of the information, a binary tree-based coding block is divided is not permitted for the size / depth of the coded blocks which allow the vertical direction or include information about whether the horizontal direction may be used.
[122]
In addition, the coding tree unit or for a given coding unit, and a binary tree split / triple tree segmentation is permitted number, a binary tree splitting / triple tree, the number of depth or a binary tree splitting / triple tree divided allowed depth to be split is allowed to be and the like can be obtained. The information may be transmitted via the group decoding, the bitstream is coded in the coding tree unit or units of the coding unit.
[123]
For example, it is through the bit stream, the syntax 'max_binary_depth_idx_minus1' represents the maximum depth that a binary tree segmentation is allowed to be coded / decoded through the bit stream. In this case, max_binary_depth_idx_minus1 + 1 may point to a maximum depth which is a binary tree split allowed.
[124]
Referring to Figure 6, in the example illustrated, shown as a in Fig. 6, a binary tree split for the depth 2 encoding unit 3 and the depth of the coding units performed. Accordingly, the coding tree unit in the binary tree splitting is carried out a number of times (twice), representing the information, the coding tree unit in the binary tree splitting the maximum allowed depth information or coding tree unit indicating (depth 3) in the binary tree split the number of acceptable depth at least one of information indicating (2, depth 2, depth and 3) can be encoded / decoded by the bitstream.
[125]
As another example, a binary tree splitting / triple tree segmentation is permitted number, a binary tree splitting / triple tree splitting at least one of the number of depth or a binary tree splitting / triple tree divided allowed depth is allowed to be is by the sequence, picture or slice It can be obtained. For example, the information, is encoded in a sequence, picture or slice units may be transmitted on a bit stream. Or, the sequence, there may be a number of the picture or a binary tree splitting / triple tree partitioned allows the depth or a binary tree splitting / triple tree split acceptable depth for each slice is defined group. Accordingly, the first slice and the second slice, a binary tree / triple tree division number, a binary tree / triple tree segmentation is allowed up to a depth or a binary tree / triple tree splitting to at least one phase of the number of depth is allowed to be can. For example, in the first slice, while the one which is allowed only in a binary tree split depth, the second slice, a binary tree split can be tolerated in the two depths.
[126]
In yet another example one slice or a depth that is a binary tree / triple tree segmentation is permitted number, a binary tree / triple tree splitting the depth or a binary tree / triple tree split acceptable allows that with time the level identifier (TemporalID) of the picture It may be set differently at least one of a number. Here, the time the level identifier (TemporalID), the point (view), the space (spatial), time (temporal) or the image quality (quality) of the at least one scalability (Scalability) for identifying a plurality of layers each image having a will be.
[127]
3, the depth divided (split depth) k is the first coding block 300 may be divided into a plurality of second coding block based on the quad-tree (quad tree). For example, the second coding block 310 to 340 is a square block that has a half size of the width and height of the first coded block, dividing the depth of the second coded block can be increased to k + 1.
[128]
Dividing the depth k + 1 of the second coding block 310 may be divided into a plurality of third code block division depth of k + 2. Second dividing the coding block 310 can be carried out according to the division method by selectively using any one of the quart tree or a binary tree. Here, the division method may be determined based on at least one of information indicating a division of the divided information or a binary tree-based indicative of a quadtree-based.
[129]
The second coding block 310 two quarts case that is divided into a tree-based, the second coding block 310 is divided into four third coded block 310a having a half size of the width and height of the second coded block, the third coded block 310a dividing the depth may be increased to k + 2. On the other hand, in a case that is divided into second coding block 310 is a binary tree based on the second coding block 310 may be divided into two third block coding. At this time, each of the two third coded block is one half the size of the non-square blocks of the width and height of the second coded block, split-depth can be increased to k + 2. The second coded block according to the dividing direction may be determined in a non-square block in the transverse direction or the longitudinal direction, dividing direction may be determined based on information on whether the division of a binary tree-based portrait or landscape orientation.
[130]
On the other hand, the second coding block 310 may be determined by end-coded blocks which are no longer dividing, based on the quad-tree or a binary tree, in this case, the coding block may be used as a predicted block or a transform block.
[131]
Third coding block 310a of the second terminal or determined by the coding block dividing, like the coding block 310 and may be further divided based on the quad-tree or a binary tree.
[132]
On the other hand, the three coded blocks divided by a binary tree-based 310b are further based on a binary tree may be further divided into the coding blocks (310b-2) or a coded block (310b-3) in the horizontal direction in the vertical direction, the coding division depth of the block can be increased to k + 3. Alternatively, the third coded block 310b based on the binary tree further may be determined by non-dividing end-coded block (310b-1), In this case, the coding block (310b-1) can be used as a predicted block or a transform block can. However, the above-described segmentation process allows the division of information or a binary tree based on the size / depth of the information, a binary tree-based coding block is divided is allowed on the size / depth of the coded blocks allowed the division of the quad-tree based on the size / depth of the non-coded block may be performed in a limited based on at least one of information.
[133]
Size of the coding block can have, or are limited to a predetermined number, the size of the unit within the predetermined coding blocks may have a fixed value. For example, the size or the size of the coding block of the picture within the coded block sequences, can be limited to 256x256, 128x128 or 32x32. The information indicating the size of the sequence or the picture within the coding block may be signaled by a sequence header or picture header.
[134]
Division result based on the quad-tree, binary tree, and triple tree, the coding unit may ttil a rectangle or square of any size.
[135]
[136]
Coding block is a skip mode, and can be encoded / decoded using intra prediction, at least one of the prediction method or inter-picture skipped.
[137]
As another example, it may perform intra prediction or inter prediction through the division of the encoding block in units smaller than the same size or a coded block and a coded block. To this end, when the coded block is determined, it can be divided through the prediction of the coding block to determine the predicted block (Block Prediction). Prediction of the coding block dividing may be performed by a partition mode (Part_mode) showing a split in the form of coded blocks. Size or shape of the prediction block may be determined according to a partition mode of the coded block. For example, the size of the prediction block, which is determined according to the mode partition can have the same or a smaller value as the size of the coding block.
[138]
7 is a diagram illustrating a partition mode that can be applied to the coded block when the coded block is coded in inter picture prediction.
[139]
If the coding block coded by inter picture prediction, coding block, as shown in the example in shown in Figure 7, any of the eight partition mode can be applied.
[140]
If the coded blocks are coded with intra picture prediction, the coding block may be subject to a partition mode PART_2Nx2N or PART_NxN.
[141]
PART_NxN is applicable when the coded blocks having the minimum size. Here, the minimum size of the coding block can be defined based on the encoder and decoder. Alternatively, information on the minimum size of the coding block may be signaled through a bitstream. For example, the minimum size of the coding block is signaled through the slice header, and therefore, a minimum size of the coding block can be defined by each slice.
[142]
In general, the size of the prediction block may have a size of from 64x64 4x4. However, if the coded block coded by inter picture prediction, when performing motion compensation, to reduce the memory bandwidth (memory bandwidth), it is possible to prevent the prediction blocks have a 4x4 size.
[143]
[144]
8 is a flowchart illustrating the inter-prediction method according to an embodiment to which the present invention is applied.
[145]
8, it is possible to determine the motion information of the current block (S810). The motion information of the current block, may include at least one of inter-prediction direction, the reference picture index of motion vector or the current block, the current block of the current block.
[146]
The motion information of the current block may be obtained on the basis of at least one of motion information of neighboring blocks adjacent to the current block, or information that is signaled via the bitstream.
[147]
9 is a case where the merge mode applied to the current block, a diagram illustrating a process for deriving the motion information of the current block.
[148]
Merge mode indicates a method of inducing the neighboring blocks for the current block in the motion information.
[149]
When the merge mode applied to the current block, it is possible to derive the spatial merge candidates from the spatially neighboring blocks of the current block (S910). Spatially neighboring blocks may include at least one of the blocks adjacent to the current top of the blocks, or the left corner of the current block (for example, at least one of the upper left corner, upper right corner, or bottom left corner).
[150]
10 is a view showing an example of spatially neighboring blocks.
[151]
As with the example in shown in Figure 10, the spatially neighboring blocks is a neighboring block adjacent to the left of the current block (A 1 ), the neighboring blocks (B neighboring the upper end of the current block 1 ), at the lower left corner of the current block adjacent neighboring blocks (a 0 ), the current neighboring blocks adjacent to the upper-right corner of the block (B 0 ) and the neighboring block (B adjacent to the upper left corner of the current block 2 may comprise at least one of a).
[152]
Even more extended to 10 embodiment, the leads to spatially merge candidates from at least one of a block neighboring a block, the block or the upper right samples of the present block adjacent to the upper middle sample neighboring the left upper sample of the current block, or from at least one of a block neighboring a block, lower left block or samples of the present block adjacent to the left center samples neighboring the sample top left of the current block may derive a spatial merge candidates. Depending on the type of the current block it may be determined using the potential of the extended spatially neighboring blocks. For example, if the current block is a block of a large non room shape than the height width, a block neighboring a block, the block or the lower left Samples of the beulreuk neighboring the left central sample neighboring the left upper sample of the current block is used It not may be determined to be one. On the other hand, if the current block has a height larger block than the width, may be determined to be a block, the blocks neighboring the block or the upper right samples of the present block adjacent to the upper middle sample neighboring the left upper sample of the current block can not be used .
[153]
It may lead to spatially merge candidates from the spatial non-neighboring blocks that are not adjacent to the current block. Spatial non-neighboring blocks, may be to include a sample which is located on the same vertical line with the spatial neighboring blocks, the same horizontal line or diagonally adjacent to the current block. Accordingly, the spatial non-neighboring block is the same as the top of the current block, a block which is located in the same vertical line with the upper-right corner, or a block adjacent to the left upper corner, the left of the current block, a block adjacent to the top of the lower left corner or the left-hand corner of the blocks positioned on the same diagonal and the current block or a block adjacent to the corner of the block located on the horizontal line may include at least one.
[154]
11 is a view for explaining a non-spatially neighboring blocks.
[155]
The spatial position of the non-adjacent blocks may be increased / decreased by the width / height (referred to as 'grid' in Fig. 11) x-coordinate and y coordinate is the unit block from the adjacent blocks. That is, the non-spatially adjacent sample position may be a same horizontal line, it is increased by from spatially adjacent samples, or the spatial non-adjacent samples which is located on a vertical line or diagonal line x-coordinate and y coordinate is the unit width / height units / decreased. For example, the spatial non-neighboring blocks A1 is from spatially adjacent neighboring blocks A0 may include spatial non-adjacent samples is x-coordinate decreases as -4, spatially non-neighboring block A2 is the x-coordinate from -4 spatially non-neighboring blocks A1 It may include spatial non-adjacent samples decreased as much.
[156]
Unit blocks may have a size of 4x4, 8x8 or more may have a size. Alternatively, it is also possible to set up a unit block, depending on the type of the current block in the form of non room. For example, if the current block is non-square, a unit block can have a form such as a 2x4, 2x8, 4x2 or 8x2.
[157]
Or, it may determine the size of the unit block according to the width or height of the current block. For example, the width of the unit block / height can be set to 1/2 of the current block width / height. For one example, the width of the current block 8, the width of the unit block in the case is set to 4, wherein the width of the current block 16, the width of the unit block can be set to eight. Similarly, if the height of the current block 8, is set to the height of the unit block 4, the height of the current block may be set to the height 8 of the case of 16, the unit block.
[158]
If that is not included in the current block and the same CTU spatially non-adjacent samples, it is possible to derive the spatial merge candidates using a sample adjacent to the CTU boundary. Here, the sample adjacent to the CTU boundary, may represent a sample which is contained in the current block and the CTU different, may represent a sample which is contained in the same CTU and the current block.
[159]
12 is a view spatially non-adjacent samples are not adjacent in the same CTU and the current block showing examples are replaced by the sample adjacent to the CTU.
[160]
As with the example in shown in Figure 12, when the spatial non-adjacent samples that are not included in the same CTU to the current block, may be led through the remaining candidates for the current block by using at least one of the sample adjacent to the CTU. In this case, the spatially non-adjacent samples in this case positioned on the upper end of the current block (that is, when the y coordinate of the spatially neighboring blocks is less than the y coordinate of the upper left sample of the current block), samples spatially non-adjacent samples of the adjacent CTU and a sample which is located in the same vertical line can be used. Alternatively, the sample to offset the x coordinate of the spatial non-adjacent samples of the adjacent CTU may be used an addition or a subtraction sample.
[161]
On the other hand the spatial non-adjacent samples in this case which is located in the left portion of the current block (that is, when the x coordinate of the spatial neighbor samples is smaller than the x coordinate at the left upper sample of the current block), spatial non-neighbors of the sample adjacent to the CTU sample and a sample which is located on the same horizontal line can be used. Alternatively, an offset to the y coordinate of the samples of non-spatially neighboring samples adjacent to the CTU may be used an addition or a subtraction sample.
[162]
Unlike the example in shown in Figure 12, the phase current when the spatial non-neighboring sample located on a diagonal from the corner of the block that are not included in the same CTU to the current block, the samples of the spatial non-adjacent samples and diagonally adjacent to the CTU by using a sample which is located it may lead to merge candidate for the current block.
[163]
Search for the remaining candidates can be performed spatially neighboring blocks and the spatial non-neighboring blocks in order. Or, it may be used if the adjacent block adjacent to the current block can not be used as the remaining candidates, the non-adjacent blocks to the current block to the remaining candidates for the current block.
[164]
The motion information of the spatial merge candidates, can be set equal to the motion information of the spatial neighboring blocks / spatial non-neighboring blocks.
[165]
Spatially merge candidates may be determined by searching for the neighboring blocks in a predetermined order. For example, in the example shown in Fig. 10, A 1 , B 1 , B 0 , A 0 and B 2 may be the search for the remaining spatial candidate determination performed on a block-by-block order. In this case, B 2 blocks the other block (i.e., A 1 , B 1 , B 0 and A 0 ) is not present or at least one of the at least one can be used if the coding by the intra-prediction mode.
[166]
Explore the order of spatial merge candidate may be defined based on the encoder / decoder. Or, may determine, the search order of the spatial merge candidates according to the size or type of the current block is adaptively. Or, on the basis of information that is signaled via the bitstream may determine a search order of the spatial merge candidates.
[167]
Can derive the time remaining from the time the candidate neighboring blocks of the current block (S920). Temporally neighboring blocks, may refer to the co-located block (co-located block, Colo K lactide block) included in the Colo K suited picture. Colo K suited picture is the current picture has a different temporal order (Picture Order Count, POC) that contains the current block. Colo K suited picture is a reference picture list within a group having a defined index picture or the output order (POC) for the current picture to the difference can be determined as the smallest picture. Alternatively, it is also possible to determine the K Colo suited picture by the information signaled from the bitstream. Information signaled from the bit stream is colo K suited referenced picture includes a picture list (e.g., L0 reference picture list or by reference L1 picture list) for indicating information and / or at least one of the index points to the reference picture list in colo K suited picture It may contain. Information for determining the K Colo suited picture may be signaled in at least one of the picture parameter set, slice header, or block level.
[168]
Motion information on a time remaining candidates, may be determined based on the motion information of colo K lactide block. For example, motion vector of the temporal merge candidates, may be determined based on the motion vector of colo K lactide block. For example, the motion vector of the time remaining candidates can be set equal to the motion vector of colo K lactide block. Alternatively, the temporal motion vector of the remaining candidates is based on the current picture and the output order (POC) difference between the output sequence (POC) between the reference picture of the current block differences and / or colo K suited picture and Colo K suited picture reference picture and it may be derived by scaling the motion vector of colo K lactide block.
[169]
13 is a view for explaining an example of inducing a motion vector of a temporal merge candidates.
[170]
Between the example shown in Figure 13, tb is the current picture (curr_pic) and represents the POC difference between the reference picture (curr_ref) of the current picture, td is colo K suited picture (col_pic) and Coronate reference picture K lactide block ( It represents the difference between the POC col_ref). A motion vector of the temporal merge candidates, and a motion vector of colo K lactide block (col_PU) may be derived by scaling on the basis of tb and / or td.
[171]
Or, Colo considering the availability of K lactide block, it is possible to use all colo K lactide blocks of motion vectors and a scaling this motion vector as a motion vector of the temporal merge candidates. For example, it is possible to set a value obtained by setting the motion vector of colo K lactide block as a motion vector of a first candidate time and merge, scaling a motion vector of colo K lactide block as a motion vector of a second time remaining candidates.
[172]
The inter-prediction direction of the time remaining candidates can be set equal to the inter-prediction in the temporal direction neighboring blocks. However, a reference picture index for the time remaining candidates, may have a fixed value. For example, a reference picture index for the time remaining candidates may be set to '0'. Or based on at least one of reference picture indices, the reference picture index of the current picture in the spatial merge candidates, and may determine a reference picture index for the time remaining candidate adaptively.
[173]
Colo suited K blocks, and it can be determined in a block adjacent to the present block and Colo K sited within the same location and with the block in any block of the picture size or the block having the same position and size as the current block.
[174]
Figure 14 is a view showing the positions of the candidate blocks that can be used with colo K lactide block.
[175]
Candidate block is, Coronate K suited picture block adjacent to the upper left corner position in the current block, may include at least one of the blocks adjacent to the bottom left corner position of the current block or a block adjacent to the central sample position of the current block.
[176]
For example, the candidate block is, Coronate K lactide block including the top-left sample position in the current block is the picture (TL), which are adjacent to the lower right corner of the block (BR), the current block containing the right lower end sample position of the current block block (H), block (C3) or a block adjacent to the central sample of the current block (e.g., comprising a sample position spaced by a current (-1, -1) from the center of the sample block containing the central sample position of the current block of the block) (C0) may contain at least one.
[177]
FIG not only to the example shown in Figure 14, may select the block that contains the locations of neighboring blocks adjacent to the K Colo suited predetermined boundaries of the blocks in the current picture with colo K lactide block.
[178]
The number of remaining candidate time may be at least one or. For example, based on one or more colo K lactide block, it can lead to one or more time remaining candidates.
[179]
Information about the maximum number of time remaining candidates can be coded in the encoder signaling. Alternatively, it is also possible to derive the maximum number of time remaining candidates on the basis of the maximum number of the remaining maximum number of candidates, and / or spatial merge candidate for that may be included in the merge candidate list. Alternatively, it can be determined the maximum number of time remaining candidates based on the number of available colo K lactide block.
[180]
Determining the availability of a candidate block according to a predetermined priority order, based on a maximum number of the determined time and the remaining candidates, you can determine at least one of colo K lactide block. For example, when block block (H) adjacent to the lower right corner of (C3) with the current block containing the central sample position of the current block is a candidate block, any one of a C3 blocks and H blocks in colo K lactide block It can be determined. If the H block is available, the H can be determined in block K Colo suited block. On the other hand, which is located on the outside of the H block is the ratio If you used (e.g., when the H blocks are coded with intra picture prediction, if the H block is not available, or H block is the largest coding unit (Largest Coding Unit, LCU) If the like), a C3 block can be determined in a colo K lactide block.
[181]
As another example, Colo K suited intra picture if at least one of the current a plurality of blocks adjacent to the lower right corner position of the block, the ratio yonghan (e.g., H blocks and / or BR block), the ratio to be replaced by the other block of available blocks for can. Other block ratio replacing for the block is at least one of colo K suited blocks adjacent the central sample position in the current block is the picture (e.g., C0, and / or C3) or block (for example, TL) are adjacent to the upper left corner position of the block It may include one.
[182]
Colo K suited picture even in the case in the current block and at least one of the plurality of blocks adjacent to the central sample position ratio is yonghan or at least one of colo K suited picture a plurality of blocks adjacent to the upper left corner position in the current block is the ratio yonghan It can be replaced by the rain as the other blocks available yonghan block.
[183]
Then, it is possible to generate a merge candidate list including the spatial and temporal merge candidates remaining candidate (S930). There in constituting the remaining candidate list, the remaining candidates having the same motion information as the remaining candidate groups is added, it can be removed from the remaining candidate list.
[184]
Information about the maximum number of remaining candidates can be signaled via the bitstream. For example, the information indicating the maximum number of remaining candidate over the sequence parameters or picture parameter may be signaled. For example, if the maximum number of merge candidates five individuals, combined spatial merging candidate and a temporal merging candidate can choose five. For example, select four of the five remaining candidate spatial, and can select one of the two time remaining candidates. If, before long, if the number of remaining candidates included in the candidate list are less than the maximum number of remaining candidate, the remaining candidate with the remaining two or more combining the candidate combined merge candidate or (0,0) motion vector (zero motion vector) is It may be included in the merge candidate list.
[185]
Alternatively, the average of the average motion vectors of the two or more remaining candidate merge candidates may include a merge candidate list. Mean the remaining candidates can be derived by averaging the motion vectors of the remaining two or more candidates included in the candidate list before long. For example, it is possible to obtain the first remaining candidate and the second when the remaining candidates are added, the average remaining candidates by averaging the first motion vector and the motion vector of the remaining two candidates for the remaining candidate to merge candidate list. Specifically, L0 motion vector of the average remaining candidates are first merged is derived by averaging the L0 motion vector and the L0 motion vector of the second merge candidate for the candidate, L1 motion vector of the average remaining candidate L1 motion vector of the first remaining candidate and a it may be derived by averaging the motion vectors of the two remaining L1 candidate. The one of the first remaining candidate and second remaining candidate One of the bi-directional prediction is applied, and one-way prediction in this case been applied to set the motion vector of the bi-directional merge candidate as a L0 motion vector or L1 motion vector of the average remaining candidate have. In one embodiment, the first remaining candidates, while carrying out the L0 direction and the L1 direction prediction, the second merge candidate when performing L0 direction prediction, L0 motion vector of the average remaining candidate vector L0 movement of the first remaining candidate and the 2 motion vector L1 the other hand, the average of the remaining candidates are average to derive a motion vector L0 of the remaining candidates can be derived by the motion vector of the first L1 remaining candidates.
[186]
In the case of 1 remaining candidate reference pictures of the second remaining candidates different from the current picture and in consideration of the distance (that is, POC difference) between the reference picture for each remaining candidate, the first merge candidate or the second movement of the remaining candidate vector the can be scaled. For example, the second remaining after scaling the motion vector candidate, by averaging the first motion vector and the motion vector of the scaled second merge candidate for the remaining candidates can derive the average remaining candidates. At this time, the size of the reference picture index for each remaining candidate, by setting the priority based on the like whether or not the distance or bi-directional prediction is applied between the current block and the reference picture for each remaining candidate, the priority is high (or low) merges you can apply scaling to the motion vector candidate.
[187]
The average index of the reference picture merge candidate may be set to point to the specific location of the reference picture of the reference picture list. For example, a reference picture index for the average of the remaining candidate may indicate the first or the last reference picture of the reference picture list. Alternatively, the reference picture index of the average remaining candidates can be set equal to the reference picture index of the first or second remaining candidates remaining candidates. In one embodiment, the first and second remaining candidate when the reference picture index of the remaining candidates are the same, the reference picture index of the average remaining candidates can be set equal to the reference picture index of the first and second remaining candidates remaining candidates. Claim to 1, the remaining candidate and the second case different from the reference picture index of the remaining candidates, size, base or the like whether or not a distance or bidirectional prediction applied between the current block and each of the remaining candidate reference picture in a reference picture index for each remaining candidate first, to set the priority, it is possible to set the reference picture index of the remaining candidate high priority (or low) as a reference picture index for the average of the remaining candidates. For example, the first merge candidate is a bi-directional prediction is applied, and a second remaining candidates can be determined as a reference picture index for the case, the two-way prediction is first merged average remaining candidate for a reference picture index of the candidate is applied a one-way prediction is applied.
[188]
Merge candidate may be included in the merge candidate list in accordance with the previously defined priorities. First, the index is higher the rank assigned to the remaining candidate may then be a low value. For example, the spatial merge candidate may be first added to the merge candidate list than a temporal merge candidate. In addition, the spatial remaining candidates is close to the spatial merge candidate spatial merge candidate spatial merge candidates of blocks adjacent to the upper right corner, the spatial merge candidates and the upper left corner of the block adjacent the bottom left corner at the top of the neighboring blocks of the left neighboring block a block of spatial merge candidate, may be added to the merge candidate list. Alternatively, it is also possible to set such that in addition to the spatial merge candidates are remaining candidate list to the succeeding time than the remaining candidates derived from the current (B2 in Fig. 10) adjacent block adjacent to the upper left corner of the block.
[189]
As another example, it may determine the priority between the remaining candidates according to the size or type of the current block. For example, if the current block has a width greater than the height of the rectangular shape, the spatial merge candidate for the left neighboring blocks can be added to the remaining candidate list before the spatial merge candidate for the upper adjacent block. On the other hand, if the current block has a height greater than width, a rectangular shape, a spatial candidates remaining in the upper neighboring blocks may be added to the remaining candidate list before the remaining spatial candidate of the left neighboring block.
[190]
According to another example, the remaining candidates, each of the motion information, may determine the priority between the remaining candidates. For example, the remaining candidate with the bi-directional motion information may have a higher priority than the remaining candidate with the one-way motion information. Accordingly, the remaining candidate with the bi-directional motion information can be added to the first of the remaining candidate list merge candidate with the one-way motion information.
[191]
As another example, it is also possible to rearrange the back, the remaining candidates generating a merge candidate list in accordance with the previously defined priorities. Rearrangement can be carried out on the basis of the motion information of the remaining candidates. For example, the remaining is the candidate can be the reordering performed on the basis of at least one of bi-directional motion whether it has the information, the motion vector amount of the motion vector accuracy or the current picture and a temporal sequence (POC) between the reference picture of the remaining candidate . Specifically, the rearrangement can be carried out so as to have a higher priority than the remaining candidate having a one-way merge candidates remaining after having a bi-directional motion information. Alternatively, the motion vector accuracy minority merge candidate may be a motion vector precision rearrangement performed to have a higher priority than an integer merge candidate.
[192]
If the remaining candidate list is generated on the basis of the remaining candidate index, it is possible to specify at least one of the remaining candidates included in the merge candidate list (S940).
[193]
The motion information of the current block, may be set equal to the motion information on the remaining candidate specified by the merge candidate indexes (S950). For example, by a merge candidate index, in the case where the spatial merge candidate is selected, the motion information of the current block, may be set equal to the motion information of the spatial neighboring blocks. Or, in the case by the remaining candidate index, time remaining candidate is selected, the motion information of the current block, may be set equal to the motion information of temporally neighboring blocks.
[194]
15 is a case where the mode for the current block AMVP apply a diagram illustrating a process for deriving the motion information of the current block.
[195]
When the mode AMVP applied to a current block, from the bit stream it can be decoded at least one of the current inter-prediction direction, or a reference picture index for the block (S1510). That is, when the mode AMVP applied, at least one of the current inter-prediction direction, or a reference picture index for the block may be determined based on the encoded information in the bit stream.
[196]
Based on the motion vectors of spatially neighboring blocks of the current block, it is possible to determine the spatial motion vector candidates (S1520). Spatial motion vector candidates, may include at least one of the second spatial motion vector candidates derived from the first spatial motion vector candidates or left neighboring blocks of the current block is derived from the top of the neighboring blocks of the current block. Here, the upper adjacent block and including at least one block adjacent the top or the upper right corner of the current block and the left neighboring block to the current block is to include at least one of a block adjacent to the left side or the lower left corner of the current block can. A block adjacent to the upper left corner of the current block, may be treated in the top of the neighboring block, or may be treated as the left neighboring block.
[197]
Alternatively, it is also possible to derive the spatial candidate motion vector from the spatially non-neighboring blocks are not adjacent to the current block. For example, a block which is located in the same vertical line and the current block is the top, the upper right corner or a block adjacent to the upper left corner of the left of the current block, a block which is located on the same horizontal line and the block adjacent to the top of the lower left corner or the left-hand corner or using at least one of the blocks which is located on the same diagonal and current block adjacent the corners of the block may derive a spatial motion vector candidates of the current block. Using a spatial non-neighboring blocks if the spatially neighboring blocks ratio yonghan may derive a spatial motion vector candidates.
[198]
As another example, using spatially neighboring blocks and the spatial non-neighboring blocks may lead to at least two spatial motion vector candidates. For example, for deriving a first spatial motion vector candidate and the second spatial motion vector candidates on the basis of neighboring blocks adjacent to the current block the other hand, does not present, the neighboring blocks, based on the neighboring blocks adjacent to the adjacent block and it may derive a third spatial motion vector candidate and / or the fourth spatial motion vector candidates.
[199]
If the reference picture is present between the current block and spatially neighboring blocks a different spatial motion vector may be obtained by scaling the motion vectors of spatially neighboring blocks. On the basis of a motion vector of a temporally adjacent block of the current block, it is possible to determine the temporal motion vector candidate (S1530). If the reference picture is present between the current block and temporally adjacent blocks are different, the temporal motion vector may be obtained by scaling the motion vector of the temporally neighboring blocks. At this time, it is possible to derive a temporal motion vector candidates only if the number of spatial motion vector candidates is smaller than the predetermined number.
[200]
It may generate a list of candidate motion vectors including a motion vector candidate spatial and temporal motion vector candidates (S1540).
[201]
When the motion vector candidate list is generated, on the basis of at least one of a motion vector candidate list in which specific information, it is possible to specify at least one of the candidate motion vectors included in the motion vector candidate list (S1550).
[202]
The motion vector candidate specified by the information, set to the current block in the motion vector prediction value and the combined motion vector difference value of the motion vector predicted value, it is possible to obtain a motion vector of a current block (S1560). At this time, the motion vector difference values, can be parsed by the bit stream.
[203]
When the current block in the motion information is obtained, based on the obtained motion information, it is possible to perform motion compensation of the current block (S820). Specifically, on the basis of the inter-prediction direction of a current block, the reference picture index and the motion vector, the motion compensation may be performed for the current block.
[204]
When performing a motion compensation to predict the outcome of a sample is obtained, based on the generated prediction samples, it is possible to reconstruct the current block. Specifically, it is possible to obtain the reconstructed samples and samples the combined prediction residual samples in the current block.
[205]
[206]
The remaining candidates, may be derived based on the block or blocks of a predetermined size over a predetermined form. Accordingly, it can be the current block is derived as if the case or the size of the current block does not have a predetermined shape is smaller than the predetermined size, based on the predetermined form, or block at least a predetermined size including a merge candidate is, the current block of the current block . For example, the remaining candidates for non room in the form of the coding unit, may be derived based on a square form of the coding unit including a room in the form of non-coding unit.
[207]
16 is a view showing an example in which, based on the square block, guided through the remaining candidates for a non-square block.
[208]
The remaining candidates for a non-square block, it can be derived on the basis of a square block containing a non-square block. For example, in the example shown in Figure 16, the remaining candidates for non room in the form of coded block 0 and block 1 is coded can be derived based on the block of a square shape. Accordingly, the coding block 0 and block 1 is coded can be derived for the remaining candidates of spatially neighboring blocks form a square neighborhood in the block of the A0, A1, A2, A3 and A4 from the at least one.
[209]
Although not shown, the time remaining candidate for a non-square block, too, may be derived based on the block of a square shape. For example, the coding block 0 and block 1 is coded, it is possible to use the time remaining candidates derived from the temporally neighboring blocks determined based on the shape of a square block. Accordingly, the coding block 0 and 1 coded block belonging to the square block may share the same merge candidates.
[210]
Or at least one of the remaining candidate spatial and temporal merge candidate is derived on the basis of a square block, and the other can be derived based on a non-square block. For example, coded blocks of 0, and a coded block 1, while using the same spatial merge candidates derived on the basis of a square block, code block 0 and the coded block 1, a different time remaining candidate derived based on the location of each block It can be used.
[211]
In the example described above, but illustrates that the remaining candidates is derived based on the square block, it is also possible to derive the remaining candidates, based on the non-square blocks of the predetermined type. For example, the current block 2Nxn form (here, n is 1 / 2N) when the non-square blocks, merge candidate for the current block is derived on the basis of the non-square blocks of 2NxN form, the current block nx2N form of a non- If a square block, the remaining candidate for the current block may be derived based on a non-square block of Nx2N form.
[212]
The information indicating the size of the form or the block of which the induction of the remaining candidate reference block can be signaled via the bitstream. For example, the information on the block type representing a non-square or a square can be signaled via the bitstream. Alternatively, the encoder / decoder group according to the rules defined group, it is also possible to derive the remaining candidates based on the shape or size of the group defined above block definer.
[213]
[214]
As another example, it is possible to derive the remaining candidates on the basis of the parent nodes that satisfy the predetermined condition. Here, the predetermined condition may include, whether the quadtree division unit, a block size, such as whether or not the outside of the block type or of the picture boundary. Here, the quadtree dividing unit, quadtree segmentation is applied can represent a block or blocks in a quad-tree partition may apply generated (e. G., Over a predetermined block size square). One as an example, if it is set to drive the remaining candidate quadtree division unit, based on a parent node blocks the current block is if produced by the binary tree splitting or triple tree split, merge candidate for the current block, the quadtree dividing unit It can be derived. If the parent node, the block division quadtree for the current block does not exist, merge candidate for the current block, may be derived based on the LCU or blocks of a certain size including the current block.
[215]
17 is a view for explaining an example in which a merge candidate for the divided blocks binary tree is derived, based on the parent node block.
[216]
The non room type block 0 and block division in the binary tree type 1, can be at least one use of the derived relative to the parent node blocks the quadtree unit spatially merge candidates, A0, A1, A2, A3 and A4. Accordingly, block 0 and block 1 may use the same spatial merge candidates.
[217]
Further, the binary tree splitting the non room type block 2, block 3 and block 4 is at least one use of the spatial merge candidates, B0, B1, B2, B3 and B4 derived based on the parent node block diagram of a quad-tree unit have. Accordingly, block 2, block 3 and block 4 can use the same spatial merge candidates.
[218]
Not shown, the time-merge candidate for the block division but also a binary tree, it can be derived based on the parent node block. Accordingly, block 0 and block 1, it is possible to use the same time remaining candidate derived from a quadtree temporally neighboring blocks determined based on a block-by-block basis. Furthermore, block 2, it is possible to use the same time remaining candidates derived from the block 3 and block 4 also temporally neighboring blocks determined based on the quad-tree block. Accordingly, the lower node blocks included in the parent node blocks may share the same merge candidate list.
[219]
Or at least one of the remaining candidate spatial and temporal merge candidate is derived based on the child node block and the other is also possible to guide, based on the parent node block. For example, block 0 and block 1, the upper node blocks the other hand, using the same spatial merge candidate induced by, block 0 and block 1, may use different time remaining candidate derived based on the location of each block have.
[220]
As another example, and a quad-tree partition, a binary tree split or triple tree division applied to the coded block, and includes a sub-node blocks of a predetermined size smaller size blocks or non-square blocks of more, the parent node block departing from the picture boundary If it does, or width, or more than the height of the previously defined value, the number of samples can lead to the remaining candidates to 64, based on the parent nodes of a square block or a non room types 128 or 256. Sub-node blocks included in the parent node blocks may share the remaining candidate list derived based on relative to the upper node block.
[221]
Or, it may be set to direct the remaining candidates on the basis of any one of the child node block contained in the parent node block, and sub-node blocks share the remaining candidate list derived on the basis of either one of the sub-node block.
[222]
Sub-node blocks information indicating whether or not to share the remaining candidate list induced by the superordinate block can be signaled via the bitstream. According to the information, the remaining group of candidate defines a small block or a non-square block sizes than, or will be derived on the basis of whether the block is an upper node may be determined. Alternatively, the encoder / decoder group according to the rules defined group, and may determine whether or not to derive the remaining candidate blocks based on the parent node.
[223]
, And in the block (e.g., block coding or prediction block) or a group defined unit can derive the remaining candidates for the current block, as described above. At this time, it is present in a defined group of spatially merge candidate for the current block area, it can be determined as unavailable and, except in the spatial merge candidates. For example, if the parallel processing area defined for the parallelism between the blocks, it can be determined as unavailable to the remaining candidates included in the parallel region of the spatial merge candidate for the current block. Parallel processing area, it may be referred to as merged area induction (Region Merge Estimation, MER). In the block, parallel processing areas is advantageous to perform the remaining parallel. In order to determine whether or not included in the current block and spatially neighboring blocks have the same remaining induction region, the shift operation can be performed. Specifically, it is possible to shift operation to the left side reference sample position and a spatially adjacent block position of the current block, to 00 to 00.
[224]
Merge derived region may be a square shape, may be a non-integer room type. For example, it is possible to define a prediction unit of the coding unit, or a square or non-square area as before long induction. The remaining area of the induction type non room can be restricted in a predetermined type. For example, the remaining region of the non-inductive type is a square, it can take the form of 2NxN or Nx2N.
[225]
The remaining regions are derived, at least one of the information indicating the size of the information or the remaining induction area indicating the type of a it can be signaled via the bitstream. For example, the slice header, information about the shape or size of the remaining area derived from the picture file Raney emitter or sequence parameter may be signaled. Alternatively, at least one of the size or form of the sequence or the picture merge induction zone can change. For example, the size or shape of the remaining region derived may be updated in a slice or picture basis. If the size or shape of the remaining area before induction unit areas and other, information of the updated remaining induction zone can be signaled.
[226]
The minimum or maximum value of blocks included in the remaining induction area can be defined. For example, the remaining induced when the number of blocks included in an area smaller than the maximum value, the remaining induction if the area, the number of blocks included in a larger than the minimum value, or range of number of the minimum value or maximum value of blocks included in the remaining induction area only in the case where there is a parallel between the block with the remaining induction zone it can be tolerated.
[227]
Information indicating the type of the remaining regions derived may be a 1-bit flag. For example, the remaining region is derived a square or a non-square indicates whether the syntax 'isrectagular_mer_flag' can be signaled via the bitstream. It is the value of the isrectagular_mer_flag 1, indicates that the remaining non-induction zone is square, but the value of isrectagular_mer_flag is 0, it indicates that the remaining square region derived.
[228]
If the remaining region is induced in a non-square shape, a width (width), height (height), width, and or at least one of information related to height ratio (ratio) can be signaled via the bitstream. This basis, it is possible to derive the size and / or shape of the remaining area of the induction type non room.
[229]
18 is a view showing an example of determining the availability of spatially neighboring blocks based on the derived remaining region.
[230]
If the remaining induction area tinged with Nx2N form, wherein the remaining induction area having a predetermined size, spatially for the remaining inductive area spatially neighboring blocks in the same merged derived region and the block 1 includes a B0 and B3, block 1 It can not be used as a merge candidate. Accordingly, the spatial merge candidate for the block 1, may be derived from at least one of spatially neighboring blocks B1, B2 and B4, except the spatial neighboring blocks B0 and B3.
[231]
Similarly, the spatially neighboring blocks in the same region and the remaining induction block C0 3 can not be used to spatially merge candidate for the third block. Accordingly, the spatial merge candidate for the block 3, can be derived from at least one of spatially neighboring blocks C1, C2, C3 and C4 except for the spatially neighboring blocks C0.
[232]
[233]
Block among remaining candidates derived sequence may be carried out according to the block among the priorities or a group defined order. Here, the priority or the group defined order, the block between the encoding / decoding order, the block scan order, a raster scan order, including the size / shape, position, block a relative position, partitioned index or the same remaining induction zone between the blocks of the block whether the like that may be determined based on. For example, when a square block has been divided into blocks of a non-integer multiple room type of non-integer multiple room type block may perform motion compensation according to the encoding / decoding order. In this way, non-integer multiple room type blocks can be derived through the remaining candidates sequentially in accordance with the encoding / decoding order.
[234]
In constituting the remaining candidate list for the current block can be considered a merge candidate for the motion information of neighboring blocks or a neighboring block. For example, when inducing a merge candidate for the current block based on the upper node blocks including the current block, the remaining candidates are remaining indices of the remaining candidate or neighboring blocks have the same motion information as the neighboring block points to the remaining candidates to the current block as can be set to unavailable.
[235]
19 is a view showing an example of inducing the remaining candidates for the current block in consideration of the remaining index of the neighboring blocks.
[236]
For convenience of explanation, it will be defined as a non room block the first block of the fast block encoding / decoding order of the shown in Figure 19, and the encoding / decoding order is defined as a second block the late block. In addition, the first block is a non-integer room block located on the left side, the second block is assumed that the non room block located on the right side. In addition, the remaining candidates for the first block and the second block is assumed to be derived on the basis of the parent node of a square block shape.
[237]
First, it is possible to derive the remaining candidates for the first block based on the parent node block. For example, as shown in the example shown in Figure 19, the first block may be led through the remaining candidates from the spatially neighboring blocks A0, A1, A2, A3, and A4 adjacent to the upper node block.
[238]
The motion information of the first block may be derived based on the remaining candidate specified by the merge indices. For example, when the remaining first block of the index points to the remaining candidates derived from A0, the motion information of the first block may be set equal to A0.
[239]
Next, but leads to the remaining of the second candidate block based on the parent node block, the remaining candidate specified by the merge index in the first block can be determined as unavailable to the remaining candidates for the second block. For example, spatially adjacent block adjacent to the upper node block A0 may be determined as unavailable to the remaining candidates to the bars of the second block specified by the merge index of the first block. In this way, the second block may be derived from the remaining candidate spatially neighboring blocks adjacent to the upper node block, A1, A2, A3 and A4.
[240]
Alternatively, the remaining candidates having the same motion information as the motion information of the first block of the remaining candidates for the second block may be determined as unavailable to the remaining candidates for the second block. For example, spatially adjacent block adjacent to the upper node blocks A0, A1, A2, A3 and A4 of the A0 of the motion information is the same bar, the motion information of the first block, A0 are determined as unavailable to the remaining candidates for the second block can.
[241]
In addition to the illustrated example, even if that result in the near future candidates using a spatial non-neighboring blocks, before the coding / non-spatially adjacent block selected in the decoded blocks may be determined to be not available as a merge candidate for the current block.
[242]
Even when the first block is not encoded in the merge mode, the same remaining candidate and the motion information of the first block it may be set as unavailable as the remaining candidates for the second block.
[243]
The above-described embodiment has been described about the decoding process, the same as the order or in reverse order coding process thereof can be carried out as described.
[244]
The above-described embodiments, but is described on the basis of a series of steps or flow chart, which is not necessarily limited to a time-series order of the invention, it may be performed as needed at the same time or performed in a different order. Further, the components that make up the block diagram in the above-described embodiment (e.g., the units, modules, etc.) each of which may be implemented as a hardware device or software, as a hardware device or software in combination with a plurality of components It may be implemented. The described embodiments are implemented in the form of program instructions that may be performed through various computer components may be written in a computer-readable recording medium. The computer readable recording media may also include, alone or in combination with the program instructions, data files, data structures, and the like. Examples of the computer readable recording medium, such as hard disks, floppy disks, and magnetic tape media, CD-ROM, such as an optical recording medium, flop tikeol disk (floptical disk) such as DVD magneto-optical medium (magneto-optical storing program instructions, such as media), and ROM, RAM, flash memory, hardware devices that are specially configured to, perform. The hardware devices may be configured to act as one or more software modules in order to perform the process according to the invention, and vice versa.
Industrial Applicability
[245]
The present invention can be applied to electronic devices capable of encoding / decoding an image.
Claims
[Claim 1]Deriving a spatial merge candidate for the current block; Based on the spatial merge candidates, generating a merged list since for the current block; Further comprising: based on the remaining candidate list, obtains the motion information of the current block; And using the motion information, comprising the step of performing the motion compensation of the current block, the spatial merge candidate for the current block are adjacent to the upper node block containing the current block from at least one spatially neighboring blocks of , the image decoding method characterized in that the induction.
[Claim 2]
The method of claim 1, wherein the spatially neighboring blocks which are specified by the remaining indices of neighboring blocks of the current block, the image decoding method characterized in that it is determined to be not available in a spatially merge candidate for the current block.
[Claim 3]
The method of claim 2, wherein the neighboring block, the image decoding method, characterized in that the said first decoding the current block block.
[Claim 4]
The method of claim 1, wherein the current block and the neighboring block, characterized in that it is determined that is not possible using the spatial merge candidates having the same remaining candidate, an image decoding method.
[Claim 5]
The method of claim 1, wherein the number of samples containing the the superordinate block not less than a predetermined number of, characterized in that for deriving the spatial merge candidate for the current block from at least one spatially neighboring blocks in the adjacent to the upper node block, video decoding method.
[Claim 6]
The method of claim 1, wherein the top when the number of child nodes block including the node block satisfies at least one of above or below the maximum minimum value, the current block from at least one spatially neighboring blocks in adjacent to the superordinate block of characterized in that to drive the remaining spatial candidate, an image decoding method.
[Claim 7]
Deriving a spatial merge candidate for the current block; Based on the spatial merge candidates, generating a merged list since for the current block; Further comprising: based on the remaining candidate list, obtains the motion information of the current block; And using the motion information, comprising the step of performing the motion compensation of the current block, the spatial merge candidate for the current block are adjacent to the upper node block containing the current block from at least one spatially neighboring blocks of , the image encoding method characterized in that the induction.
[Claim 8]
The method of claim 7, wherein the spatially neighboring blocks which are specified by the remaining indices of neighboring blocks of the current block, the image encoding method, characterized in that it is determined to be not available in a spatially merge candidate for the current block.
[Claim 9]
10. The method of claim 8, wherein the neighboring block, the image encoding method, characterized in that said first coding block from the current block.
[Claim 10]
The method of claim 7, wherein the current block and the neighboring block, characterized in that it is determined that is not possible using the spatial merge candidates having the same remaining candidate, the image encoding method.
[Claim 11]
The method of claim 7, wherein the number of samples containing the the superordinate block not less than a predetermined number of, characterized in that for deriving the spatial merge candidate for the current block from at least one spatially neighboring blocks in the adjacent to the upper node block, The image encoding method.
[Claim 12]
The method of claim 7, wherein the top when the number of child nodes block including the node block satisfies at least one of above or below the maximum minimum value, the current block from at least one spatially neighboring blocks in adjacent to the superordinate block of characterized in that to drive the remaining spatial candidate, the image encoding method.
[Claim 13]
The current based on the spatial merge candidates induce spatially merge candidates, and of the block, and generates the list after the remaining of the current block, and acquiring the motion information on the basis of the remaining candidate list, the current block, using the motion information, comprising inter-prediction unit that performs motion compensation of the current block, derived from the spatially merge candidate for the current block, at least one spatially adjacent block adjacent to the upper node block containing the current block the image decoding device, characterized in that.
[Claim 14]
The current based on the spatial merge candidates induce spatially merge candidates, and of the block, and generates the list after the remaining of the current block, and acquiring the motion information on the basis of the remaining candidate list, the current block, using the motion information, comprising inter-prediction unit that performs motion compensation of the current block, derived from the spatially merge candidate for the current block, at least one spatially adjacent block adjacent to the upper node block containing the current block the video encoder, characterized in that.
| # | Name | Date |
|---|---|---|
| 1 | 201917051907.pdf | 2019-12-14 |
| 2 | 201917051907-TRANSLATIOIN OF PRIOIRTY DOCUMENTS ETC. [14-12-2019(online)].pdf | 2019-12-14 |
| 3 | 201917051907-STATEMENT OF UNDERTAKING (FORM 3) [14-12-2019(online)].pdf | 2019-12-14 |
| 4 | 201917051907-NOTIFICATION OF INT. APPLN. NO. & FILING DATE (PCT-RO-105) [14-12-2019(online)].pdf | 2019-12-14 |
| 5 | 201917051907-FORM 1 [14-12-2019(online)].pdf | 2019-12-14 |
| 6 | 201917051907-DRAWINGS [14-12-2019(online)].pdf | 2019-12-14 |
| 7 | 201917051907-DECLARATION OF INVENTORSHIP (FORM 5) [14-12-2019(online)].pdf | 2019-12-14 |
| 8 | 201917051907-COMPLETE SPECIFICATION [14-12-2019(online)].pdf | 2019-12-14 |
| 9 | abstract.jpg | 2020-01-03 |
| 10 | 201917051907-Proof of Right [24-02-2020(online)].pdf | 2020-02-24 |
| 11 | 201917051907-FORM-26 [24-02-2020(online)].pdf | 2020-02-24 |
| 12 | 201917051907-FORM 3 [28-04-2020(online)].pdf | 2020-04-28 |
| 13 | 201917051907-MARKED COPIES OF AMENDEMENTS [21-07-2021(online)].pdf | 2021-07-21 |
| 14 | 201917051907-FORM 13 [21-07-2021(online)].pdf | 2021-07-21 |
| 15 | 201917051907-AMMENDED DOCUMENTS [21-07-2021(online)].pdf | 2021-07-21 |
| 16 | 201917051907-FORM 18 [04-10-2021(online)].pdf | 2021-10-04 |
| 17 | 201917051907-FER.pdf | 2022-04-05 |
| 18 | 201917051907-certified copy of translation [01-07-2022(online)].pdf | 2022-07-01 |
| 19 | 201917051907-FORM 3 [26-09-2022(online)].pdf | 2022-09-26 |
| 20 | 201917051907-PETITION UNDER RULE 137 [27-09-2022(online)].pdf | 2022-09-27 |
| 21 | 201917051907-Information under section 8(2) [28-09-2022(online)].pdf | 2022-09-28 |
| 22 | 201917051907-OTHERS [30-09-2022(online)].pdf | 2022-09-30 |
| 23 | 201917051907-FER_SER_REPLY [30-09-2022(online)].pdf | 2022-09-30 |
| 24 | 201917051907-CLAIMS [30-09-2022(online)].pdf | 2022-09-30 |
| 25 | 201917051907-PatentCertificate12-01-2024.pdf | 2024-01-12 |
| 26 | 201917051907-IntimationOfGrant12-01-2024.pdf | 2024-01-12 |
| 1 | SearchHistoryE_05-04-2022.pdf |