Sign In to Follow Application
View All Documents & Correspondence

Method And Apparatus For Processing Video Signal

Abstract: The present invention relates to a video signal processing method and device for increasing prediction accuracy and improving encoding efficiency by using a simplified affine motion model. The video signal processing method according to the present invention induces an affine motion vector by using a plurality of motion vectors related to a current block and performs motion compensation on the basis of the affine motion vector and a location of a current sample.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
30 August 2018
Publication Number
03/2019
Publication Type
INA
Invention Field
ELECTRONICS
Status
Email
Parent Application
Patent Number
Legal Status
Grant Date
2024-02-20
Renewal Date

Applicants

KT CORPORATION
90, Buljeong-ro, Bundang-ru, Seongnam-si Gyeonggi-do 13606

Inventors

1. LEE, Bae Keun
Korea Telecom Research Group, 151, Taebong-ro, Seocho-gu Seoul 06763

Specification

[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 as in encoding / decoding a video signal, dividing the coded blocks in a hierarchical manner.
[6]
An object of the present invention is to provide an intra prediction method and apparatus as in encoding / decoding a video signal, an encoding / decoding block.
[7]
An object of the present invention is to provide a method and apparatus for correcting a prediction samples as in encoding / decoding a video signal, an encoding / decoding block.
[8]
An object of the present invention is to provide a method and apparatus for the update to the second prediction sample by using the offset to the first prediction samples generated by the intra prediction, as in encoding / decoding a video signal.
[9]
An object of the present invention is to provide an inter-prediction method and apparatus as in encoding / decoding a video signal, based on a motion model.
[10]
The present invention provides a method and apparatus as in encoding / decoding a video signal, filtering the reference sample for the intra prediction.
Problem solving means
[11]
A video signal decoding method and apparatus according to the present invention may generate a first prediction sample by performing intra prediction for the current block, and determines the intra-prediction pattern that specifies a pattern that the current block is divided into sub-blocks, wherein it is possible to determine the offset in the sub-blocks of the current block on the basis of the intra prediction pattern and the first prediction sample and using the offset, a sub-block of the current block, generating a second prediction samples .
[12]
In the video signal decoding method and apparatus according to the present invention, the current block may be determined whether that includes a plurality of sub-blocks, and wherein the offset is set by each sub-block.
[13]
In the video signal decoding method and apparatus according to the present invention, whether the offset is set in the sub-block it may be determined based on the position of the sub-blocks.
[14]
In the video signal decoding method and apparatus according to the present invention, the offset and the current block includes a plurality of sub-blocks, it may be set to a different value for each sub-block.
[15]
In the video signal decoding method and apparatus according to the present invention, the offset it may be derived from a reference sample neighboring the current block.
[16]
A video signal decoding method and apparatus according to the present invention may induce affine motion vector by using a plurality of motion vectors for the current block, and perform the induction of affine motion vector and motion compensation based on the position of the current sample can do.
[17]
In the video signal decoding method and apparatus according to the present invention, the plurality of motion vectors may correspond to a motion vector of a plurality of corner samples belonging to the current block.
[18]
In the video signal decoding method and apparatus according to the present invention, the plurality of motion vectors may include the top left corner of the sample of the current block and the motion vector of the upper right corner of the current sample block motion vector.
[19]
A video signal decoding method according to the invention and the apparatus can perform motion compensation by applying the affine motion vector, and partitioning the current block into a plurality of sub-blocks by a unit of the partitioned sub-block.
[20]
In the video signal decoding method and apparatus according to the present invention, the plurality of motion vectors may be acquired by using motion vectors of neighboring blocks of the current block.
Effects of the Invention
[21]
According to the present invention, coding efficiency can be improved through the hierarchical / adaptive division of the coded block.
[22]
According to the invention, it determines the encoding / decoding an intra-prediction mode of the current block and effectively, it is possible to increase the accuracy of intra prediction.
[23]
According to the present invention, it is possible to increase the accuracy of the inter-prediction of the encoding / decoding block.
Brief Description of the Drawings
[24]
Figure 1 is a block diagram showing an image encoding apparatus according to an embodiment of the present invention.
[25]
Figure 2 is a block diagram showing an image decoding apparatus according to an embodiment of the present invention.
[26]
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.
[27]
Figure 4 is based groups in one embodiment the present invention is applied, a video encoder / decoder - shows a kind of a defined intra-prediction mode.
[28]
Figure 5 is a flow chart schematically illustrating an intraprediction method according to an embodiment to which the present invention is applied.
[29]
Figure 6 is one embodiment to which the present invention is applied, on the basis of difference information of the neighboring sample illustrates a method for correcting the predicted samples for the current block.
[30]
FIGS. 7 and 8 in one embodiment the present invention is applied, showing the method of correcting the prediction samples based on a predetermined correction filter.
[31]
Figure 9 is an embodiment to which the present invention is applied, showing the method of correcting the predicted sample using the weights and offsets.
[32]
10 to 15 is an embodiment to which the present invention is applied, showing how to configure a template to determine the weight w.
[33]
Figure 16 shows a method for correcting, based on the predicted sample offset according to an embodiment to which the present invention is applied.
[34]
17 to 21 as an embodiment to which the present invention is applied, a view illustrating the intra-prediction of the current block pattern.
[35]
Figure 22 shows how to do, the intra-prediction using a block copy method according to an embodiment to which the present invention is applied.
[36]
23 is a flowchart illustrating a process in which the symbol is coded.
[37]
24 is a view showing an example to divide the section between [0, 1) as a sub-interval based on the occurrence statistics of symbols.
[38]
25 is a view showing an example in which the probability index set according to the position of the block to be coded.
[39]
26 and 27 is a diagram showing a division example of a tile and sliced ​​segment.
[40]
28 is a view showing an example of the initial probability index per tile that is variably determined.
[41]
Figure 29 shows an example of a motion model according to an embodiment to which the present invention is applied.
[42]
Figures 30-32 illustrate the inter-prediction process with, which is a simplified affine motion model (simplified affine motion model) according to an embodiment to which the present invention is applied.
[43]
Figure 33 is one embodiment to which the present invention is applied, showing a method of inducing a motion vector of a corner of the sample.
[44]
Figure 34 is one embodiment to which the present invention is applied, showing the range of the reference samples for the intra prediction.
[45]
35 to 37 illustrates an example of a reference sample to filter.
Best Mode for Carrying Out the Invention
[46]
A video signal decoding method and apparatus according to the present invention may generate a first prediction sample by performing intra prediction for the current block, and determines the intra-prediction pattern that specifies a pattern that the current block is divided into sub-blocks, wherein it is possible to determine the offset in the sub-blocks of the current block on the basis of the intra prediction pattern and the first prediction sample and using the offset, a sub-block of the current block, generating a second prediction samples .
[47]
In the video signal decoding method and apparatus according to the present invention, the current block may be determined whether that includes a plurality of sub-blocks, and wherein the offset is set by each sub-block.
[48]
In the video signal decoding method and apparatus according to the present invention, whether the offset is set in the sub-block it may be determined based on the position of the sub-blocks.
[49]
In the video signal decoding method and apparatus according to the present invention, the offset and the current block includes a plurality of sub-blocks, it may be set to a different value for each sub-block.
[50]
In the video signal decoding method and apparatus according to the present invention, the offset it may be derived from a reference sample neighboring the current block.
[51]
A video signal decoding method and apparatus according to the present invention may induce affine motion vector by using a plurality of motion vectors for the current block, and perform the induction of affine motion vector and motion compensation based on the position of the current sample can do.
[52]
In the video signal decoding method and apparatus according to the present invention, the plurality of motion vectors may correspond to a motion vector of a plurality of corner samples belonging to the current block.
[53]
In the video signal decoding method and apparatus according to the present invention, the plurality of motion vectors may include the top left corner of the sample of the current block and the motion vector of the upper right corner of the current sample block motion vector.
[54]
A video signal decoding method according to the invention and the apparatus can perform motion compensation by applying the affine motion vector, and partitioning the current block into a plurality of sub-blocks by a unit of the partitioned sub-block.
[55]
In the video signal decoding method and apparatus according to the present invention, the plurality of motion vectors may be acquired by using motion vectors of neighboring blocks of the current block.
Mode for the Invention
[56]
The invention will be described in bars, 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.
[57]
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.
[58]
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.
[59]
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.
[60]
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.
[61]
[62]
Figure 1 is a block diagram showing an image encoding apparatus according to an embodiment of the present invention.
[63]
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
[64]
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.
[65]
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.
[66]
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.
[67]
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.
[68]
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.
[69]
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.
[70]
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.
[71]
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.
[72]
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.
[73]
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.
[74]
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.
[75]
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.
[76]
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.
[77]
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 that uses N x N split only for the minimum coding unit.
[78]
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.
[79]
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.
[80]
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.
[81]
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.
[82]
Reordering unit 160 may perform the reordering of the coefficient value for the quantized residual values.
[83]
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.
[84]
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).
[85]
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.
[86]
The entropy coding unit 165, the entropy encoding may be the coefficients of a coded unit of input in the rearrangement unit 160. The
[87]
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).
[88]
Filter unit 150 may include at least one of a deblocking filter, offset correction, ALF (Adaptive Loop Filter).
[89]
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 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.
[90]
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.
[91]
(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.
[92]
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).
[93]
[94]
Figure 2 is a block diagram showing an image decoding apparatus according to an embodiment of the present invention.
[95]
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.
[96]
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.
[97]
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).
[98]
The entropy decoding unit 210, the can decrypt the information with regard to intra-prediction and inter-prediction performed in the encoder.
[99]
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.
[100]
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.
[101]
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.
[102]
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.
[103]
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 that uses N x N split only for the minimum coding unit.
[104]
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.
[105]
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.
[106]
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.
[107]
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.
[108]
The reconstructed block or picture may be provided to filter unit 240. Filter unit 240 may include the deblocking filter, offset correction, ALF.
[109]
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.
[110]
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.
[111]
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.
[112]
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.
[113]
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.
[114]
[115]
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.
[116]
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. 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.
[117]
Specifically, the coding block can be divided into a hierarchical tree based on at least one of a quad (quad tree) with a binary tree (binary tree). Here, the division of the quad-tree based 2Nx2N block coding scheme is a split of a binary tree-based divided into four NxN coded block may represent a method of coding a block is divided into the two coded blocks. 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. Dividing the binary tree-based may be performed on a coding block is divided in the quad-tree based it is no longer performed. For the coded blocks divided by a binary tree-based partition of the quad-tree based can no longer be performed.
[118]
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.
[119]
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.
[120]
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.
[121]
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.
[122]
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.
[123]
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.
[124]
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.
[125]
[126]
Figure 4 is based groups in one embodiment the present invention is applied, a video encoder / decoder - shows a kind of a defined intra-prediction mode.
[127]
Video coder / decoder group may perform intra prediction by using any one of a defined intra-prediction mode. Group for intra-prediction-intra-prediction mode defined may be of a non-directional prediction mode (e.g., Planar mode, DC mode) and 33-directional prediction mode (directional prediction mode).
[128]
Alternatively, the directional prediction modes of a greater number than 33 directional prediction modes can be used to improve the accuracy of intra prediction. That is, it can further subdivide the angle (angle) of the directional prediction mode defines the M number of the extended-directional prediction mode and (M> 33), group-a predetermined angle using at least one of a definition of 33-directional prediction mode It can be used to derive the directional prediction mode with.
[129]
4 is an example of the extended intra-prediction mode, the extended intra-prediction mode may be composed of two non-directional prediction mode, the 65 extended-directional prediction mode. The extended intra-prediction mode may equally be used for the luminance components and the chrominance components, it is also possible to use different numbers of intra prediction modes for each other by each component. For example, the luminance component using the 67 extended intra-prediction mode, the color difference component can be used for intra-prediction mode 35.
[130]
Or, using the intra-prediction mode of a different number, depending on the chrominance format (format) may perform intra prediction. For example, a 4: 2: when the 4 format: performing intra-prediction using a 67 intra-prediction mode in the case of 0 format includes the luminance component and the chrominance component may use the 35 intra prediction modes, 4:04 in all, the luminance components and the color difference component by using the intra-prediction mode 67 intra-prediction may also be used.
[131]
Alternatively, depending on the size and / or shape of the block can each other by using the intra-prediction mode of a different number of performing the intra prediction. That is, using a 35 intra-prediction mode or the intra-prediction mode 67, depending on the size and / or shape of the PU or CU may perform intra prediction. For example, the size of the CU or PU is less than 64x64 or asymmetric partitions if (asymmetric partition) is using the 35 intra prediction modes, and can perform the intra-prediction, the CU or PU size equal to 64x64, or larger case may perform intra prediction by using a 67 intra-prediction mode. In Intra_2Nx2N may allow the 65 intra prediction modes, the Intra_NxN may only be 35 directional intra-prediction mode.
[132]
[133]
Figure 5 is a flow chart schematically illustrating an intraprediction method according to an embodiment to which the present invention is applied.
[134]
5, it is possible to determine the intra-prediction mode of the current block (S500).
[135]
Specifically, the intra-prediction mode of the current block may be derived based on the candidate list with the index. Here, the candidate list includes a plurality of candidates, a plurality of candidates may be determined based on the intra-prediction mode of peripheral blocks adjacent to the current block. Neighboring blocks may comprise a top of the current block, the lower, the left, at least one of the block located on the right side or corner. The index may specify any one of a plurality of candidates that belong to the candidate list. A candidate specified by the index may be set to the intra-prediction mode of the current block.
[136]
The intra-prediction mode using neighboring blocks in the intra-prediction can be set as a candidate. In addition, the intra-prediction mode of a similar direction and an intra-prediction mode of the surrounding block may be set as a candidate. Here, the intra-prediction mode of a similar orientation may be determined by the value plus or minus the predetermined constant value in the intra-prediction modes in the neighboring blocks. A predetermined constant value may be one, two or more integer.
[137]
The candidate list may further include a default mode. The default mode may include at least one of the planar mode, DC mode, a vertical mode, a horizontal mode. The default mode may be more adaptively in consideration of the maximum number of candidates included in the candidate list for the current block.
[138]
Maximum number of candidates included in the candidate list is 3, 4, 5, may be six or more. Maximum number of candidates included in the candidate list based video encoder / decoder groups-can be a value set a fixed, may be determined as a variable on the basis of the properties of the current block. Property may refer to the like number / type of position / size / shape, the intra-prediction mode of the block is a usable block. Or, and information indicating the maximum number of candidates included in the candidate list may additionally be ring signal, it may be a maximum number of candidates included in the candidate list to be determined variably by. Information indicating the maximum number of the candidate may be a ring signal from at least one of the sequence level, picture level, slice level or block level.
[139]
Corresponds to the case of the 35 intra prediction modes defined to be selectively used, conversion to the index corresponding to the intra-prediction mode, extended intra-prediction mode of a neighboring block, or 35 intra-prediction mode-extended intra-prediction mode, the group It is converted into an index that can lead to a candidate. Groups to convert the index - may be defined using a table, a scaling operation based on a predetermined value may be used. Here, the group-defined table may be defined by a mapping relation between the intra-prediction modes are different from each other group (e.g., an extended intra prediction mode 35 and the intra-prediction mode).
[140]
For example, using the left neighboring blocks are 35 intra-prediction mode, when the intra-prediction mode 10 (horizontal mode) of the left neighboring blocks, to be converted to an index 16 corresponding to a horizontal mode in the intra-prediction mode, it extended it can.
[141]
Or, using the intra-prediction mode, the upper neighboring blocks extended and, when the intra-prediction mode index of the upper neighboring block of 50 (vertical mode), to convert it to an index 26 corresponding to vertical mode at 35 intra-prediction mode have.
[142]
The above-described intra-prediction mode and for each determination method the luminance components and the chrominance components on the basis of independently be the intra prediction modes derived, the color difference component may be derived in dependence on intra-prediction mode of the luminance component.
[143]
Specifically, the intra-prediction mode of the color difference component may be determined on the basis of the intra-prediction mode of the luminance component as shown in Table 1.
[144]
Table 1 [Table 1]
Intra_chroma_pred_mode[xCb][yCb] IntraPredModeY[xCb][yCb]
0 26 10 1 X(0<=X<=34)
0 34 0 0 0 0
1 26 34 26 26 26
2 10 10 34 10 10
3 1 1 1 34 1
4 0 26 10 1 X

[145]
In Table 1 intra_chroma_pred_mode means information that is signaled to a specific intra-prediction mode of the color difference components and, IntraPredModeY shows an intra-prediction mode of the luminance component.
[146]
5, it is possible to derive the reference sample for the intra prediction of the current block (S510).
[147]
Specifically, it is possible on the basis of surrounding samples of the current block to derive a reference sample for the intra prediction. Surrounding the sample may be the means that reconstructed samples of the above-mentioned neighboring blocks, which may be restored after the sample of the in-loop filter to the previous reconstructed samples, or in-loop filter is applied has been applied.
[148]
It may be the surrounding sample restore the current block prior to use as a reference sample, a sample close to the filter based on a predetermined intra-filter may be used as a reference sample. The intra-filter may include at least one of the second intra-filter applied to a plurality of peripheral sample located in the first intra-filter or the same vertical line that is applied to a plurality of peripheral sample located in the same horizontal line. And either the first filter or the second intra-intra-filter based on the location of the sample is close to be selectively applied, the two intra-filter may be applied redundantly.
[149]
The filtering may be performed adaptively based on at least one of the size of the conversion block of the intra-prediction mode or the current block of the current block. For example, the filter when the intra-prediction mode of the current block, the DC mode, a vertical mode or horizontal mode can not be performed. If the size of the conversion block NxM, filtering may not be performed. Here, N and M may be the same or may be a value different from one another, 4, 8, 16 or any one of more values. Alternatively, a current block of an intra-prediction mode, a vertical mode (or landscape mode) different from the group of - may be based on a comparison result between the (threshold) defined threshold can optionally perform filtering. For example, it is possible to perform the filtering only when the difference between the intra-prediction mode, the vertical mode of the current block is larger than the threshold value. The threshold may be defined by the size of the transform block as shown in Table 2.
[150]
Table 2 [Table 2]
8x8 transform 16x16 transform 32x32 transform
Threshold 7 1 0

[151]
The intra-filter image encoder / decoder groups group can be determined by any one of a plurality of intra-defined filter candidates. Of a plurality of candidate intra-filter for this purpose there is a separate index that specifies the intra-filter for the current block can be signaled. Alternatively, it is also an intra-filter determined on the basis of at least one of a current block of the size / shape, the change of the information, or close to the sample on the size / shape of the transform block, the filter strength (strength) (variation).
[152]
5, may perform intra prediction by using the intra-prediction mode, the reference samples in the current block (S520).
[153]
That is, by using a reference sample derived from the intra-prediction mode determined at S510 and S500 it is possible to obtain the prediction samples of the current block. However, it can cause poor image quality of the prediction image problem due to use boundary samples in the case of intra prediction adjacent blocks. Thus, referring to the correction process may further involve, and 6 to 15 or less to the predicted samples produced through the prediction process described above will be in view at detail. However, the calibration process will be described later that is not limited to be applied only to the intra prediction sample, the sample can be applied to inter-prediction or reconstructed samples. FIG.
[154]
[155]
Figure 6 is one embodiment to which the present invention is applied, on the basis of difference information of the neighboring sample illustrates a method for correcting the predicted samples for the current block.
[156]
On the basis of difference information of the plurality of surrounding samples for the current block it can be corrected prediction samples of the current block. The correction may be performed for all the samples belonging to the current prediction block may be performed only for the prediction sample that belongs to a predetermined partial area of. Some areas may be one line / ten days of the row / column or more, which group for the correction in the video encoder / decoder-may be a predetermined area, based on at least one of the current block size / shape or the intra-prediction mode and it may be determined as a variable.
[157]
Surrounding the sample may belong to at least one of the neighboring blocks in the upper of the current block, the left side, the upper left corner. The number of neighboring samples used for calibration may be two, three, four or more. Location of nearby samples may be determined variably according to the position of the target within the sample prediction compensation current block. Alternatively, some of the surrounding sample has a fixed position regardless of the position of the prediction target sample the correction, and the other may have a variable position depending on the position of the prediction samples subject to correction.
[158]
Difference information of neighboring samples could mean the difference between the samples around the sample, it may mean a value scaled to the difference samples to a predetermined constant value (e.g., 1, 2, 3, etc.). Here, the predetermined constant value can be determined in consideration of the position of the target compensation prediction samples, the position of the column or row to which it belongs prediction samples subject to correction, the position of the prediction samples in the rows or columns and so on.
[159]
For example, by using a difference between the current sample block of the intra prediction mode is the vertical mode is the case, close to the sample adjacent to the left boundary of the current block p (-1, y) and the upper left around the sample p (-1, -1) then it is possible to obtain a final prediction samples as shown in equation 1. (y = 0 ... N-1)
[160]
Equation 1 [Equation 1]

[161]
For example, by using a difference between the current sample block of the intra prediction mode is the horizontal mode is the case, close to the sample adjacent the upper boundary of the current block p (x, -1) and the upper left around the sample p (-1, -1) then it is possible to obtain a final prediction samples as shown in equation 2. (X = 0 ... N-1)
[162]
Equation (2) [Formula 2]

[163]
For example, by using a difference between the current sample block of the intra prediction mode is the vertical mode is the case, close to the sample adjacent to the left boundary of the current block p (-1, y) and the upper left around the sample p (-1, -1) you can obtain the final prediction samples. At this time, may be added to the difference samples to sample prediction, then scaling the difference samples to a predetermined constant value, it may be adding it to the prediction samples. Predetermined constant values ​​used in scaling can be determined differently according to the columns and / or rows. As an example, then it is possible to correct the prediction samples as in equation (3) and equation (4). (Y = 0 ... N-1)
[164]
Equation 3. [Equation 3]

[165]
Equation 4. [Equation 4]

[166]
For example, by using a difference between the current sample block of the intra prediction mode is the horizontal mode is the case, close to the sample adjacent the upper boundary of the current block p (x, -1) and the upper left around the sample p (-1, -1) It may obtain the final prediction sample, which is the same as described above in a vertical mode. As an example, it is possible to correct the prediction samples as shown in Equation 5 and Equation 6. (X = 0 .... N-1)
[167]
Equation 5. [Equation 5]

[168]
Equation (6) [Equation 6]

[169]
FIGS. 7 and 8 in one embodiment the present invention is applied, showing the method of correcting the prediction samples based on a predetermined correction filter.
[170]
Based on the peripheral samples and a predetermined correction filter of the prediction target sample the correction can be corrected prediction samples. At this time, around the sample it can be specified by the current line angle (angular line) of the block-directional prediction modes, and may be one or more samples in the same line and the angle prediction correction target sample. Further, around the sample may be a prediction sample that belongs to the current block, may be reconstructed samples belonging to the neighboring blocks in the current block is restored before.
[171]
The number of taps of the compensation filter, the strength (strength) or the filter coefficients, at least one of whether or not, the angle, the periphery of the intra-prediction mode, the directional prediction mode of the current block if the prediction sample is located at the boundary of the current block is target position, correction of the prediction samples subject to correction prediction mode (inter or intra mode) or the block may be determined based on at least one of the size / shape of the current block.
[172]
7, the at least one prediction / reconstructed samples and the final prediction sample by using a predetermined correction filter is located in the lower left corner of the prediction samples subject to correction as shown in Fig. 7 in the case where of the directional prediction mode index of 2 or 34 It can be obtained. Here, the prediction / reconstructed samples of the left lower end may be belonging to the previous line of the line belonging to the prediction samples subject to correction, which may be part of the same block as the current sample, and may be belonging to the surrounding blocks adjacent to the current block.
[173]
Filtering of the prediction samples may only be performed on-line in the block boundary, and may be performed on a plurality of lines. Each line may have at least one compensation filter is different from the number of taps or filter coefficients of the filters used. For example, for the nearest left of the first line with the block boundary (1 / 2,1 / 2) can be used for filters, it can be used in the case of the second line (12/16, 4/16) filter, and the third line cases (14/16, 2/16), and using a filter, may be used in the case of fourth lines (15/16, 1/16) filter.
[174]
Alternatively, the one directional prediction mode index from 3 to 6, if a value between, or between 30 to 33, it is possible to perform filtering on the block boundary as shown in Figure 8, to correct the predicted sample using the correction filter of 3-tap have. Using the correction of the 3-tap filter to the lower left sample, the lower the sample and the correction target prediction sample at the bottom left of a correction target sample prediction samples as input may perform filtering. Location close to the sample used for the correction filter can be differently determined based on the directional prediction mode. The filter coefficient of the correction filter can be differently determined according to a directional prediction mode.
[175]
If a neighboring block is the inter mode has a different correction filter can be applied depending on whether the intra mode. If the surrounding block in intra mode encoding may be used for filtering to give more weight to the prediction samples than if the coding in inter mode. For example, if the intra-prediction mode 34, when a neighboring block is coded in inter mode, when using a (1 / 2,1 / 2) filter and a neighboring block is coded in intra mode (4/16 , you can use the 12/16) filter.
[176]
Current number of blocks of the line that is within the current block filter in accordance with the size / shape (for example, a coding block, a prediction block) may be different. For example, if the current block size to be the case is less than 32x32 or equal to, the performing the filtering only one line in the block boundary, and otherwise, performs filtering on a plurality of lines, including one line in the block boundary may.
[177]
7 and 8 may be applied in the same / similar in the case of using the described one, the extended intra prediction mode based on the case of using the 35 intra prediction modes that are discussed in FIG.
[178]
[179]
Figure 9 is one embodiment to which the present invention is applied, showing the method of correcting the predicted sample using the weights and offsets.
[180]
Currently even block and though similar to the corresponding blocks of the previous frame, previous frame, and to the illumination change between the current frame occurs or not coded in the intra-prediction or inter-prediction, the picture quality of a prediction image is encoded in the intra-prediction or inter-prediction relative You may experience lower case. In this case, it is possible to improve the picture quality of a prediction image by applying the weights and offsets for luminance compensation prediction samples.
[181]
Referring to Figure 9, it is possible to determine at least one of the weight w and the offset f (S900).
[182]
At least one of the weights w f or the offset may be a ring signal from at least one of a sequence parameter set, a picture parameter set or a slice header. Or at least one of the weight w and the offset f may be signaled in a predetermined block unit of sharing this end, a plurality of blocks belonging to a predetermined block unit (e.g., CU, PU, ​​TU) is one that is ring signal the can share the weights w and / or offset f.
[183]
At least one of the weights w f or offset may be signaled, regardless of the prediction mode of the current block, may be optionally signaling in consideration of the prediction mode. For example, if it is the case of a prediction mode of a current block of an inter mode, and a ring signal to the weight w and / or offset f, otherwise it may not be signaled. Here, an inter mode may include at least one of a skip mode, the remaining mode, AMVP mode or current mode reference picture. Group in the current picture belongs to a current picture is a reference mode, the current block-can mean the area using the restored prediction mode. The group - a motion vector for the current reference picture mode can be used to specify the restored area. The current index block or a flag indicating whether or not the current coded picture as reference mode blocks may be signaled or may be inferred from the reference picture index of the current block. Current picture for the current picture reference mode may be in a fixed position in the reference picture list of the current block (e.g., refIdx = 0 position or the last position). Or, may be variably positioned in the reference picture list, a separate reference image index indicating the position of the current picture may be a ring signal for this purpose.
[184]
The weights may be derived using the illumination change between the second template, the current block neighboring the specific form of the first template in the neighborhood of the previous block corresponding thereto. May contain a ratio of samples in the second template, in which case the ratio may be used to copy the available sample on the position of the samples, may be used in through interpolation between a plurality of available samples derived the available sample. The sample to be used is available may be belonging to the second templates may be belonging to the neighboring blocks. At least one of the factors, the form or the number of taps of the filter used in interpolation may be based on the size and / or shape of the template determined in a variable. For information on how to configure the template reference to Figures 10 to 15 will be in view at detail.
[185]
For example, when the called (from i is 0 N-1) of the nearby samples yi of the current block, a peripheral sample of the corresponding blocks xi (i is from 0 N-1), the weight w and the offset f is as follows: It can be derived.
[186]
The weight w and the offset f using a template of a particular type adjacent to the current block may be derived obtain the following minimum value of E (w, f) of equation (7).
[187]
Equation (7) [Formula 7]

[188]
How to obtain the minimum value of Equation (7) can be modified as shown in equation (8).
[189]
Equation 8. [Equation 8]

[190]
May obtain the equation (10) for deriving the equation (9) and the offset f to derive the weight w from the equation (8).
[191]
Equation 9. [Equation 9]

[192]
Equation (10) [Equation 10]

[193]
9, it is possible to use at least one of a weight and an offset determined in S900 to correct the prediction samples.
[194]
For example, when the illumination variation occurs in the entire frame, to obtain a weight (w) and the predicted sample P 'corrected by applying the offset (f) to the expected sample P generated by the intra prediction as following equation (11) can.
[195]
Equation 11. [Equation 11]

[196]
Here, the weight (w) and the offset (f) is available and may be applied to the predicted samples generated by the inter-prediction, also be applied to restore the sample. FIG.
[197]
[198]
In one embodiment 10 to 15 is the present invention is applied, showing how to configure a template to determine the weight w.
[199]
Referring to the left drawing of FIG. 10, it is possible to configure all the surrounding sample the current and adjacent blocks as templates, sub-in peripheral samples are adjacent to the block-can form a template in some of the samples the sampling (sub-sampling). The central diagram of Figure 10 can be configured only as a template, a sample of a gray field as exemplified 1/2 sub-sampling. 1/2 using the sub-sampling sub-sampling instead of 1/4, 1/8 sub-sampling may be formed on the template. As the right diagram in Fig. 10 may be formed and the template except for the sample in the upper left on all surrounding samples are adjacent to the block. Figure one is not not shown in 10, considering the location of the current block, picture or a coding tree block (Largest Coding Unit) using the template consisting only of a sample located on the left side, or may use a template composed only of the sample at the top.
[200]
Referring to Figure 11, it is also possible to extend the number of samples around the configuration template. That is, the template 11 may be composed of a second peripheral samples are adjacent to the boundary with the adjacent first surrounding samples and the first sample of peripheral blocks.
[201]
Also may be used as shown on the left diagram of the peripheral sample 11 all belonging to the two adjacent line from the boundary of the current block in the template, it is possible to configure the template by the template of the left figure sub-sampling, as the central figure. The four samples that belong to the upper left as the right side of figure 11 may be configured to exclude the template. Figure one is not not shown in 11, considering the location of the current block, picture or a coding tree block (Largest Coding Unit) using the template consisting only of a sample located on the left side, or may use a template composed only of the sample at the top.
[202]
Alternatively, it is also possible to configure the different templates based on the current size and / or shape of the block (whether or not, symmetrical partitions that the square). For example, the sub-template according to the size of the current block as shown in FIG. 12 may be applied differently than a rate (sub-sampling rate) of the sample. For example, as the size of the block is equal to or more than 64x64 as shown on the left diagram of FIG. 12 constitute a template 1/2 sub-sampling, and the size is greater than or equal to 128x128 block diagram the right side of FIG. 12 1/4 sub -sampling can configure the template.
[203]
Referring to Figure 13, it is also possible to use a template for extension of the number of samples around the adjacent depending on the size of the current block.
[204]
Determining a plurality of candidate templates available in the sequence, or slice, of which may be selectively used either. The plurality of candidate templates may be of a different shape and / or size to each other in the template. Information regarding the types of templates and / or sizes may be signaled in the sequence header or slice header. In the video encoder / decoder it can be assigned to the index for each candidate template. And, it is possible to encode the syntax type_weight_pred_template_idx to identify a candidate template for use in the current sequence, picture or slice from a plurality of candidate templates. Video decoder based on the syntax type_weight_pred_template_idx may optionally use a template candidate.
[205]
For example, Fig. 14 and the like, also assigned to the central figure template in the 10 to zero, and assigning a first template of the right drawing of FIG. 10, and assigned as a second template in the central diagram of Figure 11, and Figure 11 a template of the right figure can be assigned to three of which may be ring signal templates used in sequence from that.
[206]
When performing the weighted prediction with a non-square block so that the total number of templates can be 2 ^ N, a length of long side and short side of the sub-configure the template to different sampling rate (sub-sampling rate) applied You may. For example, it is possible for the 1/2 sub-sampling side of the short length as shown in Figure 15, the length is carried out respectively for the 1/4 sub-sampling the long side to configure the template.
[207]
When performing the intra prediction of the current block on the basis of the intra prediction mode, because it is in a range of a reference sample to be used limit (For example, performing the intra prediction by using only one peripheral samples adjacent to the current block), generated this prediction samples that may occur if not reflect the characteristics of the original image. For between example, in, for example, when the current block within the edge (edge) is present, or a new object in the boundary vicinity of the current block (object) appeared, according to the locations of the prediction samples a current block, the prediction samples of the original image It may occur if the difference is large.
[208]
In this case, it may cause a problem that the residual value is relatively large, the encoding / decoding to the bit amount is increased. In particular, the residual value in the relatively remote region from the boundary of the present block may cause a problem that is to include a large amount of high-frequency components, it is reduced coding / decoding efficiency.
[209]
In order to solve the above problems, it is possible to consider a method for creating or updating the prediction samples to sub-block units. Accordingly, it is possible to relatively increase the prediction accuracy of the far field in the block boundary.
[210]
For convenience of explanation, in the embodiments to be described hereinafter, it will be referred to as the predicted samples for the first generated prediction samples based on the intra-prediction mode. However, the prediction sample is generated by performing the inter prediction or the prediction sample is generated based on non-directional intra-prediction mode may also be included in the scope of the first prediction samples.
[211]
See Fig. 16, it will be described in detail how to correct the prediction sample based on the offset.
[212]
Figure 16 shows a method for correcting, based on the predicted sample offset according to an embodiment to which the present invention is applied.
[213]
16, whether to update the first prediction sample by using the offset for the current block can be determined whether or not (S1600). Whether to update the first predicted samples using an offset may be determined by the flag being decoded from the bit stream. For example, the syntax 'is_sub_block_refinement_flag' indicating whether to update the first predicted samples using an offset can be signaled via the bitstream. If the value of is_sub_block_refinement_flag is 1, in the current block, and a method for first predicted samples updated by the offset can be used, a value of is_sub_block_refinement_flag zero, to update the first predicted samples using an offset, in the current block this method is not used. However, step S1600 is for performing the update for the first prediction samples Alternatively, as an essential structure for achieving the object of the present invention is not, in some cases, step S1600 may be omitted.
[214]
When using an offset determined by the use a method for updating a first prediction sample, one can determine the intra prediction of the current block pattern (S1610). The through intra prediction pattern, whether the offset is the offset applied to the sub-blocks included in whole or in part areas, dividing the form of a current block, the current block of the current block to be applied or allocated to each sub-block offset size / sign (sign ) or the like can be determined.
[215]
Intra prediction pattern of the current block is rot weapon / decryption groups group-any one of the pattern defined plural may be selectively used, the index that specifies the intra-prediction pattern of the current block may be signaled from the bit stream for this purpose have. Other examples may be determined by the intra-prediction pattern of the current block is a basis of the current partition mode of the block prediction unit or the coding unit of the block size / shape, the directional angle of the intra-prediction mode and whether the directional intra-prediction mode (angle).
[216]
The index indicating the intra prediction of the current block pattern that the ring signal is checked may be determined by the predetermined flag information from the signaling bit stream. For example, if the flag information, indicating that the pattern points to the intra prediction of the current block index, from the bit stream to be the ring signal, the intra prediction of the current block pattern may be determined based on the index to be decoded from the bitstream. At this time, the flag information may be a ring signal from at least one of a picture, slice, or block level.
[217]
When indicating the flag information is an index that represents the current block is an intra-prediction pattern from the bit stream is not a ring signal, the intra-prediction pattern of the current block is determined based on a partition mode of the prediction unit or the coding unit of the above-described present block have. For example, the form of which the current block is divided into sub-blocks may take the same form as the two coded blocks divided into a prediction unit form.
[218]
When the intra prediction of the current block pattern determination, it is possible to obtain the offset in sub-block units (S1620). Offset may be signaled by slice unit, the encoding unit unit unit unit or prediction. As another example, the offset may be derived from neighboring samples in the current block. The offset may comprise at least one of the offset size information or code offset information. At this time, the offset size information may fall within the range of integer greater than or equal to zero.
[219]
If the offset is determined, a second prediction samples for each sub-block can be obtained (S1630). Second prediction samples may be obtained by applying the offset to the first sample prediction. For example, the second prediction samples may be obtained by adding or subtracting the offset to the first sample prediction.
[220]
[221]
17 to 21 as an embodiment to which the present invention is applied, a view illustrating the intra-prediction of the current block pattern.
[222]
For example, in the example shown in Figure 17, the index is "0" or when the '1', the current block is the other hand, offset upper sub-block is divided into upper and lower sub-block mi is set, the lower sub-block, there is an offset 'f' can be set. Accordingly, the upper sub-block first prediction sample (P (i, j)) as it is being used, the lower sub-block in a first of the offset to the predicted sample addition or subtraction to generate a second prediction samples (P (i, j ) + f or the like can be used P (i, j) -f). As "not set" in used herein can also mean that could mean a case that is not assigned to the block offset, the offset of "0" value is assigned.
[223]
If the index is '2' or '3', the current block is the other hand, the offset is left sub-block that is divided into left and right sub-block mi is set, and can be right sub-block is offset 'f' setting. Thus, the left sub-block, the first prediction sample (P (i, j)) as it is being used, and the right sub-block in the first second prediction sample is generated by adding or subtracting an offset to the predicted sample (P (i, j ) + f or the like can be used P (i, j) -f).
[224]
Using intra prediction pattern is possible, and that range may be limited on the basis of the intra prediction mode of the current block. For example, if the current block is an intra-prediction mode is a prediction mode of a similar direction and the vertical intra-prediction mode or vertical intra-prediction mode (for example, when the intra-prediction mode index of 33 directional prediction modes 22 to 30 ), divided by the horizontal intra prediction pattern (e.g., the index of 17, 0 or 1, index) of the current block only can be applied to the current block.
[225]
In other examples, the current block is an intra-prediction mode is a prediction mode of a similar direction as the horizontal direction intra-prediction mode or the horizontal intra-prediction mode (for example, if the intra-prediction mode index of 33 directional prediction mode, a 6- to 14 ), the intra-prediction pattern vertical partition of the current block (e.g., the index of 17 or 2 index 3) only can be applied to the current block.
[226]
In Figure 17, any one of the sub-blocks included in the current block and the offset is not set, and the other has been shown to be offset is set. Whether to set the offset in the sub-block may be determined based on which the signaling information for each sub-block.
[227]
Whether to set the offset in the sub-block it may be determined on the basis of an index or the like for identifying the position or the current block within the sub-block of the sub-blocks. For example, based on a predetermined boundary of the current block, and the offset is not set in contact with a predetermined sub-block boundary, there may be offset a set sub-block not in contact with a predetermined boundary.
[228]
Cases, a boundary to be assumed as the upper boundary of the current block, under the intra prediction pattern corresponding to an index '0' or '1', without an offset for a sub-block adjacent to the upper boundary of the current block is set, the current block for the sub-block does not contact the top of the boundary, can be offset is set.
[229]
If the predetermined boundary can assumed to be a left boundary of the current block, an index '2', or under the intra prediction pattern corresponding to "3", but the offset is set for the sub-block adjacent to the left boundary of the current block, the current block on the left It may be an offset for the sub-block does not contact the demarcation.
[230]
In Figure 17, any one of the sub-blocks included in the current block and the offset is not set, and the other has been assumed that the offset is set. As another example, it may be an offset of a different value is set to the sub-blocks included in the current block.
[231]
See Fig. 18, description will be made on the example in which the sub-blocks by different offset is set.
[232]
Referring to Figure 18, when the index is '0' or '1', the current block is within the upper sub-block, and the offset "h" set, and the lower sub-block within the current block, offset 'f' can be set. Accordingly, the upper sub-block a second prediction samples obtained by adding or subtracting the offset 'h' to the first prediction sample (P (i, j) + h or P (i, j) -h) are being generated, the lower sub- the block may be the one second prediction samples obtained by adding or subtracting an offset 'f' in the prediction samples (P (i, j) + f or P (i, j) -f) generated.
[233]
Referring to Figure 18, when the index is '2' or '3', the current block in the left sub-block, and the offset "h" set, and the right sub-block in the current block, offset 'f' it can be set. Thus, the left sub-block, the first prediction samples second prediction samples obtained by adding or subtracting the offset 'h' to the (P (i, j) + h or P (i, j) -h) is created, and the right sub- the block may be the one second prediction samples obtained by adding or subtracting an offset 'f' in the prediction samples (P (i, j) + f or P (i, j) -f) generated.
[234]
The example shown in Figure 17, and two, but the sub shown to be divided into blocks, the number of sub-blocks included in the current block and / or sizes are 17 and 18 of the sub-block 18 is of the same size of the current block not limited to. The number of sub-blocks included in the current block may be three or more, the respective sub-blocks may have different sizes.
[235]
If the number of available plurality of intra prediction pattern an individual, may be grouped intra prediction pattern available in a plurality of categories. In this case, the intra prediction of the current block pattern, may be selected based on the second index for identifying the first index and the category intra prediction pattern for identifying the categories.
[236]
Reference to Figure 19, the description will be made on the example in which the first index and the intra-prediction pattern of the current block based on the second index determination.
[237]
In the example shown in Figure 19, the 12 intra prediction pattern may be classified into three categories including four intra-prediction pattern respectively. For example, the intra-prediction pattern corresponding to index 0-3 are classified as category 0, the intra-prediction pattern corresponding to index 4 to index 7 has been classified as category 1, the intra prediction pattern corresponding to index 8 to Index 11 category may be classified into two.
[238]
Decoder can decode the first index from the bit stream to a specific category, including at least one intra prediction pattern. In the example shown in Figure 19, the first index, category 0, it is possible to specify any one of the first and second.
[239]
If a particular category based on the first index, on the basis of the second index decoding from the bit stream, it is possible to determine the intra prediction of the current block pattern. If the category is one by one specific index, the second index may be specified to any one of the four intra-prediction pattern (i.e., index 4 to index 7) that belong to a category 1.
[240]
In Figure 19, although shown as each category including an intra-prediction patterns of the same number, and are not intended to each category have to be included in the intra prediction patterns of the same number.
[241]
Number or the number of categories used in the intra prediction pattern possible may be determined in sequence or slice units. In addition, using at least one of a number of categories or the number of possible intra-prediction pattern may be a ring signal through a sequence header or a slice header.
[242]
As another example, using the number and / or the number of categories of intra prediction pattern possible may be determined based on the current block or the size of the prediction unit of the coding unit. For example, the current block may be selected from not less than the size of the (e. G., Coding unit of the current block) 64x64, intra prediction pattern is a five intra prediction pattern shown in Figure 20 of the current block. Alternatively, the current block is the size of the (e. G., Coding unit of the current block) is smaller than 64x64, intra prediction pattern of the current block, 17, can be selected from among the intra-prediction pattern shown in FIG. 18 or 19 have.
[243]
In the 17 to 20 sub-blocks included in each of the intra prediction patterns it is illustrated as being rectangular (rectangular). In another example, at least one of the size or shape of the sub-blocks may be used are other intra-prediction pattern. For example, Figure 22 is a view that the size and shape of the sub-block showing an example of the different intra-prediction pattern.
[244]
Offset for each sub-block (e.g., FIG. 17 to the offset of each sub-block h, f, g or i shown in Fig. 21) it may be decoded from the bit stream, derived from neighboring samples adjacent to the current block It may be.
[245]
As another example, the offset of a sub-block it may be determined in consideration of the distance between the sample and the specific position within the current block. For example, the offset may be determined in proportion to a value that is the distance between the current block within a sample located in the sample and a sub-block within a predetermined position located at a predetermined position.
[246]
As another example, the offset of a sub-block it may be determined by adding or subtracting a value that is determined based on the distance between samples in the current block and the sample sub-block located in a predetermined location within a predetermined location in a predetermined value.
[247]
As another example, the offset may be determined based on the ratio of the value indicating the size of the current block and current block value that is the distance between a sample and the sample sub-block located in a predetermined position in a predetermined position.
[248]
Here, it is possible to include a current block within a sample located at a predetermined position is a sample adjacent to the left boundary of the current block, and samples near the top left corner of the sample or the current block in the upper boundary of the current block.
[249]
[250]
Figure 22 shows how to do, the intra-prediction using a block copy method according to an embodiment to which the present invention is applied.
[251]
Intra block copy (Intra Block Copy, IBC) is a prediction / decompression method is used (also referred to hereinafter, referred to as "reference block"), the current block is already reconstructed block in the same picture. The image, and a character, such as Hangul, or alphabet includes a plurality, may be the characters it included when restoring the current block, if included in the already-decoded block, and improve the encoding / decoding performance through the intra block copy.
[252]
Intra block copy technique may be categorized as an intra-prediction method, and may be classified as inter-prediction method. If the intra-block copy technique is classified into an intra-prediction method, and can be added to define the intra-prediction mode for intra blocks copying techniques. If the intra-block copy technique that is classified as inter-prediction method, it is possible to a flag indicating whether or not to apply the intra-block copy technique for a current block included in the bit stream. Alternatively, it is also possible to determine whether the current block is an intra block using the copy with the reference picture index of the current block. That is, when the reference picture index of the current block points to the current picture, the current block may perform inter-prediction with the intra-block copy. To this end, group-reconstructed current picture may be added to the reference picture list for the current block. Current picture may be present in a fixed location in the reference picture list (e. G., Reference picture index of zero position or the last position). Or, may be variably positioned in the reference picture list, a separate reference picture index of the current picture may be signaled to do so.
[253]
In order to specify the reference block of the current block, a (hereinafter referred to as block vector (block vector) hereinafter), the current block and the reference block position the motion vector difference between a can be defined.
[254]
Block vectors may be derived as the sum of the prediction block and the difference vector block vector. Encoder may generate a prediction block vector from the predictive encoding, and encoding a difference vector indicating a difference between the block and the prediction block vector block vector. In this case, the decoder using the decoded difference block vector from the predicted block and the bit stream derived vector by using the decoding information group, it is possible to derive a block vector of the current block.
[255]
At this time, the prediction block is a vector, it can be derived on the basis of the current block or the like of an adjacent block adjacent to the block vector, the current block in the LCU the block includes a vector, or that contains the current block, a block in the LCU row / column vector.
[256]
The encoder may encode the block vector without performing a predictive coding of the block vector. In this case, the decoder, by decrypting the block vector information that is signaled via the bitstream, will be able to obtain a block vector. Intra block copy may further involve a calibration process also for the prediction / reconstructed samples generated through the techniques have. In which case the calibration method discussed with reference to Figures 6 to 21 can also be applied the same / similar, in which a detailed description will be omitted.
[257]
[258]
Encoder can be binarized within the symbol, such as the syntax conversion coefficient, motion vector difference and a slice, and generating a bitstream by performing arithmetic encoding (arithmetic coding) on ​​the binarized value. At this time, in order to extract the symbol, taking into account the value of the same symbols in a neighboring block, the information block or the current location of the neighboring blocks may be determined such that the context (context). If the probability index is determined based on the selected context, based on the determined probability index, it can be determined the generation of the symbol probabilities. Then, through the re-calculated probability of occurrence, and the arithmetic coding in accordance with the value of cumulative statistics with the encoded symbols of the internal symbol, it is possible to improve the compression performance of the symbol. An example of the arithmetic coding method, CABAC may be used.
[259]
See Fig. 23, and in detail view look at the example of encoding the symbol from the encoder. A detailed description of decoding the symbols in the decoder is not one, it is through the reverse operation in the embodiment to be described hereinafter, the symbol decoding in the decoder may be performed.
[260]
23 is a flowchart illustrating a process in which the symbol is coded.
[261]
The encoder is a binary symbol (S2300). If the target symbol to be encoded non-binary symbol, the encoder can convert the symbols into binary symbols. For example, an encoder such as the non-transform coefficients or motion vector difference - can be binarized by the binary symbols to a binary symbol, the value of a symbol consisting only 0's and 1's. When the binary symbols, the code words having a map of the '0' or '1' bits may be referred to as bin (bin).
[262]
Binary symbols may be performed through such a unary binarization (Unary binarization), and a cutting-type unary binarization (Truncated unary binarization).
[263]
Table 3 shows a unary binarization, and Table 4 shows the cutting-type unary binarization when the 6-bit length at most (cMax).
[264]
Table 3 [Table 3]
Symbol Binarization
0 0
1 10
2 110
3 1110
… …

[265]
Table 4 [Table 4]
Symbol binarization
0 0
1 10
2 110
3 1110
4 11110
5 111110
6 111111

[266]
When the binary symbol is complete, selects a context model (context model) (S2310). Context models is the probability model for each symbol. This probability is 0 or 1 in an empty result by the context model may be different. In the embodiments to be described hereinafter, the occurrence probability of symbols, may indicate the probability of 0 or 1 occurs in the bean. In HEVC there are approximately 400 independent of the context of the different symbols.
[267]
At the beginning of the encoding of the slice, of the quantization parameter (Qp) or slice type (I, P or B) based on at least one, there is a context-specific probability index (pStateIdx) may be initialized.
[268]
When using a tile (tile), at the beginning of the encoding of the tiles, of the quantization parameter (Qp) or slice type (I, P or B) based on at least one, and context-specific probability index it may be initialized.
[269]
Then, based on the selected context model, it is possible to perform arithmetic encoding of each symbol (S2320). Arithmetic coding of the symbol may be performed by the context model. Accordingly, even in a same symbol, if you use a different context and does not have an impact on the probability of each encoded bit stream and updates. When the occurrence probability of a symbol is determined, the coding can proceed in accordance with the probability of occurrence and the value of each symbol of the symbol. At this time, depending on the value of each symbol can be determined by varying the number of coded bits. That is, in the case have a high probability of occurrence values ​​for each symbol, the symbol may be compressed in a small number of bits. For example, when having a high probability value for each symbol, symbols with 10 blank may be smaller than 10 bits, coded.
[270]
On the basis of the occurrence probability of symbols share the period between [0, 1) into sub-intervals, by selecting the small number of available bits and represent the coefficients of the real number belonging to the divided sub-interval, it is possible to encode the symbols. When dividing the section between [0, 1) into sub-intervals, greater occurrence probability of the symbol, allocating a longer sub-interval, if the occurrence probability of symbols is small, it is possible to assign a small sub-interval.
[271]
24 is a view showing an example to divide the section between [0, 1) as a sub-interval based on the occurrence statistics of symbols. The probability of occurrence of 1 is described the procedure for the arithmetic coding, a symbol "010" when the occurrence probability of 0.8 days 0.2, 0.
[272]
A first blank of the symbol '010' is '0', because the probability of occurrence of "0" is 0.8, the interval [0,1) is updated with [0, 0.8).
[273]
Since a symbol "010" as the second blank is "1", the probability of occurrence of "1" is 0.2, the interval [0, 0.8) is updated to [0.64, 0.8).
[274]
And the third blank of the symbol '010' is '0', because the probability of occurrence of "0" is 0.8, the interval [0.64, 0.8) is updated to [0.64, 0.768).
[275]
In the 0.64, 0.768) interval, and selects the number of available bits representing the least. [0.64, 0.768, so) within the interval, 0.75 = 1x (1/2) + 1x (1.2) ^ 2, the symbol "010" may be encoded in a binary representation of "11" other than 0.
[276]
MPS (Most Probable Symbol) refers to the number of symbol occurrence of 0 and 1, and the frequency, LPS (Least Probable Symbol); means a small symbol generation of the zero and one frequency. The initial value of the MPS and the LPS occurrence probability may be determined based on the value context, and the quantization parameter (Qp).
[277]
In Figure 24, for each bin, but assumes that the probability of occurrence of 0 and 1 fixed, or may update the MPS probability and LPS occurrence probability of the symbol according to whether the current encoding a bean MPS whether or LPS.
[278]
For example, if the binary value of a blank of a symbol to be currently coded equal to MPS, MPS, while increasing the probability value of a symbol, LPS probability value may decrease. In contrast, if the binary value of a blank of a symbol to be currently coded equal to LPS, it is possible to increase the LPS probability value while decreasing MPS probability value of a symbol.
[279]
In CABAC it may be used to define a probability of 64 MPS and LPS probability is issued, but are defined, or can be less than this number of MPS or a LPS occurrence probability of the occurrence probability. MPS and the LPS occurrence probability is the probability, can be specified by the Index (pStateIdx) represents the probability of occurrence of symbols. The higher the value of an index indicating a probability of occurrence of symbols, may be configured to a higher probability of occurrence of the MPS.
[280]
Table 5 is for explaining an example in which the probability index (pStateIdx) update.
[281]
Table 5 Table 5
pStateIdx 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
transIdxLPS 0 0 1 2 2 4 4 5 6 7 8 9 9 11 11 12
transIdxMPS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
pStateIdx 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
transIdxLPS 13 13 15 15 16 16 18 18 19 19 21 21 22 22 23 24
transIdxMPS 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
pStateIdx 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
transIdxLPS 24 25 26 26 27 27 28 29 29 30 30 30 31 21 32 33
transIdxMPS 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
pStateIdx 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
transIdxLPS 33 33 34 34 35 35 35 36 36 36 37 37 37 38 38 63
transIdxMPS 49 50 51 52 53 54 55 56 57 58 59 60 61 62 62 63

[282]
If the MPS symbols encoded, probability index (pStateIdx) represents the probability of the current context, it can be updated as corresponding to transIdxMPS index. For example, when the value of pStateIdx 16 days, when the coded symbol MPS, pStateIdx may be updated with the index 17 for the transIdxMPS. On the other hand, when the value of pStateIdx 16 il, LPS if the symbol is encoded, pStateIdx may be updated with the index 13 for the transIdxLPS. As pStateIdx is updated, the probability of the MPS and the LPS can also be updated.
[283]
PStateIdx when the value is 0, inde MPS probability is 0.5, and when in this state LPS symbol is encoded, is a frequency of LPS increased MPS. As a result, the pStateIdx value at zero, if the LPS symbol coded, the symbol MPS and LPS symbols are interchanged.
[284]
Context-specific probability index value is initialized on a slice-by-slice basis or tile units. Since the probability index is initialized with a slice unit, it is possible to decode the current slice regardless of whether or not the encoding of the previous slice or the previous frame. However, in case of encoding a symbol to the initialized probability index, there is a certain probability by the initialization index failed to properly reflect the probability of the occurrence probability of the actual symbol can cause initial coding efficiency is lowered slice.
[285]
In order to solve the above problems, the probability index to a predetermined cumulative time of coding / decoding the previous slice, the current can be set with the probability index, the initial value of the slice. Here, the predetermined time point may indicate a time for coding / decoding a block located on a slice scanning sequence within a particular location (e.g., intermediate position). A probability value or probability index accumulated in the previous slice, such as may be the direct encoding / decoding via a header or the like of a slice.
[286]
As another example, by assigning a plurality of the probability index to a context, it may variably determine the initial probability index of slice. For example, if for a given context (ctx), together with a plurality of probability index having a different value exists, it is possible to determine one of a plurality of probability index to the initial probability index. In this case, the information for selecting any one of a plurality of probability index may be a ring signal through such a slice header. For example, decoder may select the probability index via the information transmitted in the slice header, and performs the decoding by using the selected probability index to the initial probability index.
[287]
As another example, by assigning a plurality of initial values ​​(InitValue) for a context, it may variably determine the initial probability index of slice. When the initial value is selected, it is possible to derive the variables m, n by using the initial value, and the induction variable preCtxState representing the previous context state through the induction variables m, n. On the basis of a variable representing the old preCtxState contending test status, the MPS and the context probability index pStateIdx initial value can be derived.
[288]
Table 7 is an illustration of a process for deriving a probabilistic index to an initial value on the basis of.
[289]
Table 7 [Table 7]
slopeIdx = initValue >> 4offsetIdx = initValue & 15 (1)m = slopeIdx * 5 - 45 n=(offsetIdx << 3)-16 (2)preCtxState=Clip3(1,126,((m*Clip3(0,51,SliceQpY )) >> 4)+n)valMps=(preCtxState <= 63)?0:1pStateIdx = valMps ( preCtxState - 64 ) : ( 63 - preCtxState ) (3)

[290]
Is an index for specifying the initial value (InitValue) for use in a slice may be signaled by slice header. Index for specifying a context initial value can be defined as CABAC initialization index (cabac_init_idx). CABAC on the basis of the index initialization, the context index (ctxIdx), and at least more than one mapping relation of the initial value defined by the table, can be determined, the initial value corresponding to cabac_init_idx.
[291]
In addition, there is a syntax for representing a number of CABAC initialization index is available through the slice header, a sequence header or a picture header, etc. can be signaled. Using CABAC syntax for representing a number of initialization indexable may be defined as 'num_cabac_init_idx_minus1'.
[292]
Table 8 and Table 9 is a diagram for explaining an example in which the initial value is determined based on the CABAC initialization index. Table 8, shown will the available CABAC If the personal number of an initialization index 5, Table 9, will be the number of available CABAC initialization index showing the six cases. Is based on the value num_cabac_init_minus1 Table 8 or Table 9, it can optionally be used.
[293]
Table 8 [Table 8]
cabac_init_idx 0 1 2 3 4
ctxIdx 0 1 0 1 0 1 0 1 0 1
initValue 111 141 153 111 153 111 168 224 95 79

[294]
Table 9 [Table 9]
cabac_init_idx 0 1 2 3 4 5
ctxIdx 0 1 0 1 0 1 0 1 0 1 0 1
initValue 111 141 153 111 153 111 168 224 95 79 63 31

[295]
Is described, for example, the 'cbf_luma' syntax, the transform coefficients (non-zero transform coefficient), the context of the syntax cbf_luma indicating whether the presence, not in zero transform block of luma components, according to cabac_init_idx have different initial values can. Probability index (pStateIdx) is derived based on the initial value, too, it can be determined variably according to cabac_init_idx.
[296]
cabac_init_idx may indicate the offset to be applied to the probability index. For example, based on the initial value (InitValue) determined for each quantization parameter (Qp) 'sliceQpY' and contexts of any slice to derive the probability index (pStateIdx), and based on cabac_init_idx value, to determine an offset to be applied to the probability index can. If the offset is determined, it is possible to recalculate the probability based on a probability index and the index offset. Thus in accordance with, in the case of the quantization parameter (Qp) of the slice, context models may have a plurality of probability index (that is, a plurality of pStateIdx initial value).
[297]
As another example, to determine an initial value for each context, and based on cabac_init_idx value, and may determine an offset to be applied to the initial value. Re-calculating the initial value based on the determined offset, and may derive a probability index based on the re-calculated initial value.
[298]
Only for a particular symbol, rather than the entire symbol, a plurality of probability index may exist for a single context. Can. For example, a particular symbol such as transform coefficients (transform coefficient), residual motion vector (motion vector difference) or the reference picture index (reference index), a plurality of probability index, in one context may be present.
[299]
In one context, whether or not the plurality of initial value (InitValue) or a plurality of probability index (pStateIdx) is assigned, may be determined according to the slice type may be determined, regardless of the slice type. In addition, the initial value may also go for different values ​​for each slice type.
[300]
[301]
25 is a view showing an example in which the probability index set according to the position of the block to be coded.
[302]
A probability index may be determined in accordance with the spatial position or scan order of blocks to be coded. For example, it may be set as shown in the example shown in Figure 25, a slice according to the scan order, different probability index (pStateIdx). At this time, the values ​​of the probability index (pStateIdx) may be selected as the probability index (prevPstateIdx) is the same as or most similar values ​​for the same location area (collocated region) from the previous slice.
[303]
The spatial domain to initialize the probability index can be referred to as' the context initializing area. Context initialization area may be a rectangular shape, and the like. In addition, context initialization region, but it can be set to have a predetermined size, and the like. Information for identifying a context initialization area may be the ring signal, etc. through the slice header.
[304]
Assuming as the context initialization area rectangle, on the basis of the syntax, 'num_row_ctu_minus1' representing the number of the coding tree unit (Coding Tree Unit) line (row) included in the context initialization area, the unit to initialize the probability index can be determined have. For example, when the value of the 'num_row_ctu_minus1' is 1, as shown in the example shown in Figure 25, it may be set to the initialization area, the area including the CTU 2 of the columns.
[305]
[306]
Slice (slice) is the basic unit capable of performing the entropy coding / decoding independently. There is no restriction that the slices should bring up the rectangular shape (rectangular). Slice may be divided into a plurality of segments sliced, sliced ​​segments may be composed of a plurality of tree-coding unit (CTU).
[307]
Tile (tile) is one and the same slice from the point consisting of a plurality of coding tree units, the difference in terms of a square (rectangular) area of ​​the form. There is a tile unit entropy encoding / decoding may be performed. When performing the entropy coding / decoding unit to the tile has the possible advantage that parallelism at the same time coding / decoding the plurality of tiles.
[308]
26 and 27 is a diagram showing a division example of a tile and sliced ​​segment.
[309]
26 and as shown in the example shown in Figure 27, the tile may comprise at least one or more slice segments, one segment of a slice may be present within a single tile.
[310]
An independent slice segment (Independent slice segment) and slave slice segment (Dependent slice segment) at least one constitutes a single slice. As with the example in shown in Fig. 26 and 27, not to the tiles within the stand-sliced ​​segment be included.
[311]
Although not shown, there may exist multiple tiles in a slice, a tile may be present within a single slice.
[312]
28 is a view showing an example of the initial probability index per tile that is variably determined.
[313]
When using the tiles, there is initialised a context model to tile unit, the different initial values ​​according to the position of the tile (InitValue) or different probability index (pStateIdx) can be used. That is, even if the context is the same, a different probability index (pStateIdx) may be used in accordance with the tile.
[314]
An index to specify the initial values ​​of each tile may be a ring signal through the segment header including a slice. For example, if the initial value specified by the syntax 'tile_cabac_init_idx' for specifying the initial value of the tile, based on the specified initial value, there is a probability index it can be derived.
[315]
Probability index-specific context for each tile may be derived based on the initial value or the probability index for the context of co-located tiles (collocated tile) of the previous frame. As another example, the probability of index-specific context for each tile, or derived based on the initial value of a selected one of a plurality of the initial value defined by the context, may be determined as a selected probability index of a plurality of probability index is defined by the context. If a plurality of initial values ​​or a plurality of probability index is defined by the context, the index can be signaled to select the initial value or the probability index for each tile.
[316]
In the example shown in Figure 28, that the residual motion information on the (Motion Vector Difference) for the relevant symbol, the first tile (tile0) is the initial probability index is determined by pStateIdx0, the second tile (tile1) initial probability index is determined by pStateIdx1 It is shown.
[317]
[318]
Figure 29 shows an example of a motion model according to an embodiment to which the present invention is applied.
[319]
In the manner of the movement model (motion modeling), and the like move the motion models (translation model motion), rotational motion model (rotation motion model), affine motion model (affine motion model) may be used.
[320]
Mobile motion model may represent the behavior of Figure 29 may represent a linear movement as shown in (a), the object (object) to the 2D coordinates and / or the motion vector (MVx, MVy). Rotational motion model can be represented in the form of a rotational movement of the object at a predetermined angle, such as 29 (b) Fig. Meanwhile, Referring to FIG. 29 (c), the movement of the object non-a may occur when having changed in accordance with the portion of the linearly objects with different translation, rotation, size, and so on. Affine motion models can express the movement of the object based on the movement, rotation, scaling, and so on. For example, the affine motion model can be represented using a predetermined parameter (a ~ f) as shown in the following equation (12).
[321]
Equation (12) [Equation 12]

[322]
In Equation 12, x and y represents the position of the samples belonging to the current block, x 'and y' represents the position of the sample belonging to the reference block. A motion vector (V a current block of the affine location difference between the samples of the sample and the reference block x , V y ) may be expressed as Equation (13).
[323]
Equation (13) [Equation 13]

[324]
Using Equation 12 in Equation 13 the motion vector (V affine x , V y ) may be derived as the following equation (14).
[325]
Equation (14) [Equation 14]

[326]
Through the above-mentioned affine motion model, it is possible to derive the affine motion vector corresponding to the current sample based on predetermined parameters, and performing motion compensation using the derived motion vector Affine.
[327]
[328]
Figures 30-32 illustrate the inter-prediction process with, which is a simplified affine motion model (simplified affine motion model) according to an embodiment to which the present invention is applied.
[329]
Referring to Figure 30, it is possible to derive the affine motion vector using the motion vector corresponding to the current block of samples corner (corner sample) (S3000).
[330]
The corner sample may comprise a sample upper left corner, upper right corner of the sample, at least one of the lower left corner or lower right corner of the sample sample. Affine motion vector may be derived using the motion vector corresponding to the n sample corner. At least one of a motion vector corresponding to the n sample corner may have a motion vector different from the rest of the size and / or direction.
[331]
Where, n value is 1, 2, 3, 4, or may be greater. The value of n groups based encoder / decoder - may be a value fixed an appointment. Alternatively, the encoder may be signaled by encoding the position / number of samples of the corner that is used for inter-prediction of the affine motion model based decoder may variably determine the value of n is based on the signaling information.
[332]
Or, n value may be determined by a variable based on at least one of the shape or size of the current block.
[333]
For example, the n value may be different depending on whether the current block is a square shape and whether the current block or a symmetric partition. If the current block is a square shape (e.g., NxN), it may use the motion vectors (V0, V1, V2) corresponding to the three corner sample. If the current block is a non-integer room type (e.g., Nx2N), you can use the motion vectors (V0, V1) corresponding to the two corner samples.
[334]
Alternatively, the N value can be different according to the comparison result between the current block size and the predetermined first threshold value. The size of the current block can be represented by a width (W), height (H), the sum (W + H), the number of samples (W * H) in width and height. If the current block size is greater than the first threshold value, it is possible to use the motion vectors (V0, V1, V2) corresponding to the three corner sample within the current block. If the current block size is smaller than the first threshold value, it is possible to use the motion vectors (V0, V1) corresponding to the two corner samples in the current block. The above-described first threshold value based groups encoder / decoder - may be a value defined. Alternatively, the encoder may be signaled by encoding an optimal threshold value. Decoder based on the signaling information may derive a first threshold value. The information may be a ring signal through at least one of a sequence, a picture, a slice, a block level.
[335]
Location Corner of n sample groups is based encoder / decoder may be in a fixed position promises. For example, if n = 2, group-a fixed appointment location may be the top left corner and top right corner of the sample the sample of the current block. For n = 3, group-a fixed appointment location may be the upper left corner of the sample, the top right corner and bottom left corner of the sample the sample of the current block.
[336]
Alternatively, the encoder may be signaled by encoding the position of the corner samples to be used for inter-prediction of the affine motion model based decoder is based on the signaling information may specify the location of the corner samples.
[337]
Alternatively, the position of the corner samples may be determined based on at least one of the shape or size of the current block.
[338]
For example, the position of the corner of the sample may be different depending on whether the current block is a square shape and whether the current block or a symmetric partition. If the current block is a square shape (e.g., NxN) has an upper left corner and top right corner of the sample the sample of the current block may be used. If the current block is a non-integer room type (e.g., Nx2N) has an upper left corner of the sample and the lower left corner of the sample of the current block it may be used. If conversely, the current block is a square shape has been used is the top left corner and top right corner of the sample the sample may be, if the current block is a non-integer room shape, the upper left corner of the sample and the lower left corner of the sample used.
[339]
Or, the position of the corner sample may be determined in accordance with the comparison result between the current block size and the predetermined second threshold value. The second threshold value based groups encoder / decoder - may be a value defined. Alternatively, the encoder may be signaled by encoding an optimal threshold value. Decoder based on the signaling information can lead to the second threshold value. The information may be a ring signal through at least one of a sequence, a picture, a slice, a block level.
[340]
With reference to Figure 31 by using the motion vectors corresponding to a plurality of the corner samples, take a look at the method of inducing the affine motion vector.
[341]
Referring to Figure 31 (a), there is an affine using the motion vectors (V0, V1, V2) of the upper left corner of the sample, the top right corner and bottom left corner of samples Samples of the block motion vectors can be derived. For example, the following can be derived in the motion vector (Vx, Vy) Affine as shown in Equation 15.
[342]
Equation (15) [Equation 15]

[343]

[344]
In equation 15, w may represent the position difference between the particular reference samples by a reference sample and a motion vector specified by the motion vector V1 V0. Or, w may mean the width or height of the reference block identified by the motion vectors V0 and V1.
[345]
Alternatively, it can also be 31 (b) When the reference, the affine motion vector derived by the motion vectors (V0, V1) of the sample in the upper left corner and top right corner of the current block to sample. At this time, the motion vector of the lower left corner of the sample can be expressed as Equation (16).
[346]
Equation 16. [Equation 16]

[347]
The using equation 15) and (16 affine motion vector may be derived as shown in Equation 17.
[348]
Equation (17) [Equation 17]

[349]

[350]
Referring to Figure 30, by using the affine motion vector derived from S3000 may perform motion compensation (S3010).
[351]
Specifically, using the affine motion vector, it is possible to determine the reference samples corresponding to the current sample. The reference sample is determined may be set to a predicted value for the current sample.
[352]
Alternatively, as shown in Figure 32, it may perform the motion compensation in units of sub-blocks (sub-block) belonging to the current block. Current to partition the block into sub-blocks, and for this purpose, below the hinge position to look at.
[353]
(1) number-based partitioning of the
[354]
Based on the predetermined number of m may partition the current block into a plurality of sub-blocks. m value may be an integer greater than zero. For example, if the predetermined number of m 4, when the current block is 16x16, the current block can be evenly partitioned into units of 8x8 sub-blocks.
[355]
At this time, a predetermined number of groups is based encoder / decoder may be in a fixed number of appointments. Alternatively, the encoder may be signaled by encoding the number of sub-blocks making up the block, the decoder based on the signaling information may determine the predetermined number m. Alternatively, the predetermined number may be determined by a variable based on at least one of the size or type of the current block. For example, if the size of the current block is 16x16 may perform motion compensation in the unit of four 8x8 sub-blocks. If the size of the current block 64x64 or 32x32 may be performed by motion compensation unit 16, or four 16x16 subblocks.
[356]
(2) size based partitioning of the
[357]
In units of sub-blocks having a predetermined size (NxM), regardless of the size of the current block may partition the current block. Here, N, M is an integer greater than zero. N and M may be the same with each other or may be different from each other. Predetermined size groups based encoder / decoder - may be a value of the appointed place. Alternatively, the encoder may be signaled by encoding of the optimal size of the sub-block, the decoder is based on the signaling information that can determine the size of the sub-blocks. The information may be a ring signal in the sequence, picture, slice, at least one of the block level.
[358]
A combination of the aforementioned (1) for size-based partitioning and (2) based on the size of the partitioning, it is also possible to partition the current block into a plurality of sub-blocks. Sub-block can be limited to be partitioned into a square shape or a non room type. Alternatively, the sub-block may be limited so that the current block and the partitioning of the same type or different types.
[359]
Based on the affine motion vector derived from a specific position of each of the partitioned sub-block and S3000 may perform motion compensation. Here, the specific location may refer to at least one of the four corner position or the center position of the sub-blocks. In this case, the respective sub-blocks as shown in Figure 32 may have a mutually different affine motion vector.
[360]
The inter-prediction process of a motion model based on the above-described affine is, performs motion compensation using the step of inducing the affine motion vector using the motion vectors corresponding to a plurality of the corner samples (the first step) and the affine motion vector and by separating the steps of (step 2) may be implemented, it may be implemented in one step.
[361]
On the other hand, it is possible to define the affine motion model-based inter prediction to the affine inter mode (affine inter mode). These affine inter mode may be selectively used on the basis of the identifier for specifying the type of the inter mode (e. G., Flag, index). Or, affine inter mode may be used in a limited or optionally based on at least one of the size or type of coding / prediction block. For example, if the encoding / prediction block is a square shape, the block size may perform inter prediction according to the inter mode affine only if larger than 16x16.
[362]
[363]
Figure 33 is one embodiment to which the present invention is applied, showing a method of inducing a motion vector of a corner of the sample.
[364]
It may derive a motion vector of a corner of the sample from neighboring blocks of the current block. Referring to Figure 33 (a), the motion vector (V0) of the upper left corner of the sample may be acquired by using at least any one of neighboring blocks A, B, C. The top right corner of the sample motion vector (V1) may be acquired by using at least one of a neighboring block D, E. Or, V0 may be acquired by using at least one of the neighboring blocks B, C, F, V1 may be derived by using at least any one of neighboring blocks A, D, E. At this time, may be a motion vector of the neighboring block as a motion vector set in the corner sample, by adding the differential motion vector to the motion vector of the neighboring blocks may be derived are of the corner sample motion vectors. To this end, the encoder may be signaled by encoding the difference between the differential motion vector between the motion vector and the neighboring blocks of samples corner motion vector.
[365]
If the values ​​of V0 and V1 are equal to each other or the V0 and V1 derived from the same neighbor block each other, any of V0 and V1 may be derived from the motion vectors of the other neighbor blocks. Alternatively, it is also possible to drive the other by applying a certain offset to any of V0 and V1. For example, in Figure 33 (a), the neighboring blocks A, B, C of the V0 and neighboring blocks derived from any one of D, E, if the induced V1 from one another of the same, any one of V0 and V1 are It may be replaced by a motion vector of a neighboring block F. A motion vector (e.g., V0, V1), which may be a flag or index that represents the same whether or not to be signaled, specify the position of the corner samples with the same motion vector information between the corner of the sample may be signaling for this purpose .
[366]
Any of V0 and V1 may be encoded by the differential encoding based on the other one. For example, V1 is not directly encoded, a motion vector, only the difference between the V0 can be encoded. In this case, the decoder can restore the V0 and V1, using the coded differential motion vector. For convenience of explanation, but only refer to V0 and V1, and a motion vector (V2), the motion vector (V3) corresponding to the lower right corner of the sample corresponding to the lower left corner of the sample may be used, which is V0, V1 and equal to / in a similar manner it can be restored.
[367]
Movement of the candidate list, the corner sample, depending on the type of the current block may be configured differently. For example, as shown in Figure 33 (a), if the current block is a square shape, the upper left corner of the sample is made to move the candidate list using the neighboring blocks A, B, C, and the top right corner of the sample neighboring block D, E using it to configure the motion candidate list. On the other hand, as shown in FIG. 33 (b), when the current block is non room shape, the upper left corner of the sample is made to move the candidate list using the neighboring block C, B, F, and the lower left corner of the sample neighboring blocks A, D , it can be configured to move the candidate list using the E.
[368]
[369]
Figure 34 is one embodiment to which the present invention is applied, showing the range of the reference samples for the intra prediction.
[370]
Referring to Figure 34, in reference to the boundary of the current block, the sample P (-1, -1), P (-1, y) (0 <= y <= 2N-1), P (x, -1) ( for 0 <= x <= 2N-1) can be carried out by using the intra-prediction. In this case, all the intra-prediction mode of the current block (e.g., an index of intra-prediction mode, orientation, angle, etc.) or based on at least one of the size of the conversion block of the current block, to selectively perform the filtering for the reference sample can.
[371]
Selecting at least one of a plurality of candidate intra-filter and may perform the filtering for the reference sample. Here, the plurality of candidate intra-filter has at least one filter strength, the filter coefficient or the tap (e.g., the number of filter coefficients, the filter length) may be different from each other. A plurality of candidate intra-filter may be defined in a sequence, a picture, a slice, at least one of the block level. That is, the sequences belong to the current block, a picture, a slice, or block can use the same plurality of candidate intra-filter.
[372]
For the following, convenience of description, a plurality of candidate intra-filter includes a first filter and a second intra-intra-filter, the first filter is an intra (1,2,1) 3-tap filter, the second filter is an intra (2,3,6,3,2) assumed to be 5-tap filter.
[373]
When filtering the reference sample by applying the first intra-filter, the filtered reference samples may be derived as shown in Equation 18.
[374]
Equation (18) [Equation 18]

[375]

[376]

[377]
When filtering the reference sample by applying the second intra-filter, the filtered reference samples may be derived as the following equation (19).
[378]
Equation (19) [Equation 19]

[379]

[380]

[381]
[382]
A particular one of a plurality of candidate intra-filter based on the location of the reference sample, and can use them to perform the filtering for the reference sample. For example, for a reference sample at the boundary of the current block in the case of the reference sample other than the first application for intra-filter, and that can be applied to the second intra-filter. Specifically, as shown in Fig. 35, reference sample P (-1, -1), P (-1,0), P (-1,1), ... , P (-1, N-1) and P (0, -1), P (1, -1), ... , Is applied to the first intra-filter P (N-1, -1) by performing the filtering as shown in Equation 18, and the other reference samples by applying a second intra filter to perform filtering as shown in Equation 19 have.
[383]
Selecting any one of a plurality of candidate intra-filter on the basis of the conversion type used in the current block, and can use them to perform the filtering for the reference sample. Here, the conversion type (1) may refer to a conversion technique such as a DCT, DST, KLT, could mean a (2) 2D transform, 1D conversion, conversion mode indicator, such as non-conversion, (3) primary transformation, it may mean the number of conversion as the second conversion. Hereinafter, conversion type for convenience of explanation, it is assumed to mean a conversion technique such as DCT, DST, KLT.
[384]
For example, if the current block is, if the encoded using a DCT is performed filtering with a first intra-filter, and the current block is coded using the DST, use the second intra-filter to perform filtering have. Or, if the current block is, if the encoded using the DCT or DST is performed filtering with a first intra-filter, and the current block is coded using a KLT, use the second intra-filter to perform filtering have.
[385]
Using the selected filter based on the location of the conversion type and a reference sample of the above-described present block may perform the filtering. For example, if the current block is coded using the DCT, the reference sample P (-1, -1), P (-1,0), P (-1,1), ... , P (-1, N-1) and P (0, -1), P (1, -1), ... , P (N-1, -1) performs filtering using a first filter, intra, and other reference samples may perform filtering using a second filter intra. If the current block is coded using the DST, the reference sample P (-1, -1), P (-1,0), P (-1,1), ... , P (-1, N-1) and P (0, -1), P (1, -1), ... , P (N-1, -1) performs filtering using a second filter, intra, and other reference samples may perform filtering using a first filter intra.
[386]
Reference neighbor block containing the sample conversion type and based on whether or not the same between the present conversion type of the block by selecting any of a plurality of candidate intra-filters, and can use them to perform the filtering for the reference sample. For example, in the case of using the current block and the neighboring blocks have the same conversion type in the case of performing filtering by using a first intra-filter, and the current block and a transform type is different from each other neighboring block has a second intra-filter It can be used to perform the filtering.
[387]
Selecting any one of a plurality of candidate filters on the basis of the intra-type conversion of the neighboring blocks, and can use them to perform the filtering for the reference sample. That is, in consideration of the type of transformation belonging the reference sample block may select the desired filter. For example, as shown in Figure 36, the current block and the block adjacent to the left / bottom left is coded block by using the DCT, the upper / block adjacent to the upper right is the case of the coding block using a DST, left / reference sample adjacent to the left lower part by applying a first reference filter intra performing the filtering, and adjacent the top / upper right samples may perform filtering by applying a second intra filter.
[388]
With a predetermined area unit, the filter available for the zone may be defined. Here, the predetermined area unit of a sequence, a picture, a slice, a block group (e. G., Coding tree unit row), the blocks (e.g., coding tree unit) may be any one of, share one or more filter a separate region may be defined. Reference sample may be filtered using a filter that blocks the current map to the region belongs.
[389]
For example, it is possible, as illustrated in Figure 37, with a different filter to the CTU unit to perform the filtering for the reference sample. In this case, the sequence in the parameter set (SPS) or picture parameter set (PPS), has the sequence or the information indicating whether the picture is to use the same filter, the type of filter used for each CTU, the available intra filter the CTU of candidate there is an index that specifies a filter or the like used can be signaled.
[390]
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
[391]
The invention can be used for encoding / decoding a video signal.

WE CLAIM

[Claim 1]
Deriving an affine motion vector by using a plurality of motion vectors for the current block, wherein in the plurality of motion vectors corresponding to a motion vector of a plurality of corner samples belonging to the current block, and affine said induction motion vectors and the video decoding method comprising: performing motion compensation based on the position of the current sample.
[Claim 2]
The method of claim 1, wherein the plurality of motion vectors is a video decoding method including the motion vector of the upper right corner of the sample of the motion vector and the current block of the upper left corner of the sample of the current block.
[Claim 3]
The method of claim 1, further comprising: performing the motion compensation, the method comprising: partitioning the current block into a plurality of sub-blocks; And a video decoding method including the step of using the derived affine motion vector, performs motion compensation in the unit of the partitioned sub-block.
[Claim 4]
The method of claim 2, wherein the plurality of motion vectors are derived by the video decoding method using the motion vectors of neighboring blocks of the current block.
[Claim 5]
Using a plurality of motion vectors for the current block and drive the affine motion vectors, the induction of affine motion vector and comprising inter-prediction unit that performs motion compensation based on the position of the current sample, the plurality of motion vectors the video decoding apparatus corresponding to the motion vector of the plurality of the corner samples belonging to the current block.
[Claim 6]
The method of claim 5, wherein the plurality of motion vectors is a video decoding apparatus including the motion vector of the upper right corner of the sample of the motion vector and the current block of the upper left corner of the sample of the current block.
[Claim 7]
The method of claim 5, wherein the inter-prediction unit, a video decoding device for partitioning the current block into a plurality of sub-blocks and performing motion compensation by applying the affine motion vector in units of the partitioned sub-block.
[Claim 8]
7. The method of claim 6 wherein the plurality of motion vectors for video decoding apparatus to be derived using a motion vector of a neighboring block of the current block.

Documents

Application Documents

# Name Date
1 201817032651-TRANSLATIOIN OF PRIOIRTY DOCUMENTS ETC. [30-08-2018(online)].pdf 2018-08-30
2 201817032651-STATEMENT OF UNDERTAKING (FORM 3) [30-08-2018(online)].pdf 2018-08-30
3 201817032651-FORM 1 [30-08-2018(online)].pdf 2018-08-30
4 201817032651-DRAWINGS [30-08-2018(online)].pdf 2018-08-30
5 201817032651-DECLARATION OF INVENTORSHIP (FORM 5) [30-08-2018(online)].pdf 2018-08-30
6 201817032651-COMPLETE SPECIFICATION [30-08-2018(online)].pdf 2018-08-30
7 201817032651-Proof of Right (MANDATORY) [05-09-2018(online)].pdf 2018-09-05
8 201817032651-FORM-26 [05-09-2018(online)].pdf 2018-09-05
9 201817032651-Power of Attorney-100918.pdf 2018-09-13
10 201817032651-OTHERS-100918.pdf 2018-09-13
11 201817032651-Correspondence-100918.pdf 2018-09-13
12 201817032651.pdf 2018-09-25
13 abstract.jpg 2018-10-01
14 201817032651-FORM 3 [15-02-2019(online)].pdf 2019-02-15
15 201817032651-FORM 18 [24-11-2019(online)].pdf 2019-11-24
16 201817032651-FORM 3 [11-06-2021(online)].pdf 2021-06-11
17 201817032651-certified copy of translation [11-06-2021(online)].pdf 2021-06-11
18 201817032651-OTHERS [18-06-2021(online)].pdf 2021-06-18
19 201817032651-Information under section 8(2) [18-06-2021(online)].pdf 2021-06-18
20 201817032651-FER_SER_REPLY [18-06-2021(online)].pdf 2021-06-18
21 201817032651-CLAIMS [18-06-2021(online)].pdf 2021-06-18
22 201817032651-FER.pdf 2021-10-18
23 201817032651-US(14)-HearingNotice-(HearingDate-16-01-2024).pdf 2023-12-09
24 201817032651-Correspondence to notify the Controller [13-12-2023(online)].pdf 2023-12-13
25 201817032651-FORM 3 [18-01-2024(online)].pdf 2024-01-18
26 201817032651-Written submissions and relevant documents [31-01-2024(online)].pdf 2024-01-31
27 201817032651-PETITION UNDER RULE 137 [31-01-2024(online)].pdf 2024-01-31
28 201817032651-PatentCertificate20-02-2024.pdf 2024-02-20
29 201817032651-IntimationOfGrant20-02-2024.pdf 2024-02-20

Search Strategy

1 2021-01-1315-56-19E_28-01-2021.pdf

ERegister / Renewals

3rd: 01 Mar 2024

From 24/02/2019 - To 24/02/2020

4th: 01 Mar 2024

From 24/02/2020 - To 24/02/2021

5th: 01 Mar 2024

From 24/02/2021 - To 24/02/2022

6th: 01 Mar 2024

From 24/02/2022 - To 24/02/2023

7th: 01 Mar 2024

From 24/02/2023 - To 24/02/2024

8th: 01 Mar 2024

From 24/02/2024 - To 24/02/2025

9th: 17 Jan 2025

From 24/02/2025 - To 24/02/2026