WO2019203504A1 - Procédé et appareil pour réduire un espace de stockage pour des informations de mouvement dans un système de traitement vidéo - Google Patents

Procédé et appareil pour réduire un espace de stockage pour des informations de mouvement dans un système de traitement vidéo Download PDF

Info

Publication number
WO2019203504A1
WO2019203504A1 PCT/KR2019/004401 KR2019004401W WO2019203504A1 WO 2019203504 A1 WO2019203504 A1 WO 2019203504A1 KR 2019004401 W KR2019004401 W KR 2019004401W WO 2019203504 A1 WO2019203504 A1 WO 2019203504A1
Authority
WO
WIPO (PCT)
Prior art keywords
motion information
block
storage unit
information storage
subblocks
Prior art date
Application number
PCT/KR2019/004401
Other languages
English (en)
Korean (ko)
Inventor
이재호
김승환
남정학
장형문
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Publication of WO2019203504A1 publication Critical patent/WO2019203504A1/fr

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/53Multi-resolution motion estimation; Hierarchical motion estimation

Definitions

  • the present invention relates to video coding techniques, and more particularly, to a method and apparatus for reducing storage space for motion information in a video processing system.
  • the demand for high resolution and high quality images such as high definition (HD) images and ultra high definition (UHD) images is increasing in various fields.
  • the higher the resolution and the higher quality of the image data the more information or bit rate is transmitted than the existing image data. Therefore, the image data can be transmitted by using a medium such as a conventional wired / wireless broadband line or by using a conventional storage medium. In the case of storage, the transmission cost and the storage cost are increased.
  • a high efficiency image compression technique is required to effectively transmit, store, and reproduce high resolution, high quality image information.
  • An object of the present invention is to provide a method and apparatus for improving video coding efficiency.
  • Another object of the present invention is to provide a method and apparatus for reducing a storage space for motion information in a video processing system.
  • Another technical problem of the present invention is to provide a method and apparatus for reducing a storage space for motion information using a motion information storage unit.
  • Another object of the present invention is to provide a method and apparatus for reducing storage space and improving prediction performance by storing motion information of a block coded in an affine mode among a plurality of blocks as representative motion information.
  • Another technical problem of the present invention is to provide a method and apparatus for reducing storage space and improving prediction performance by storing motion information of a block including a control point among a plurality of blocks coded in affine mode as representative motion information. have.
  • Another object of the present invention is to provide a method and apparatus for improving prediction performance by deriving motion information of a block including a control point from among a plurality of blocks coded in the affine mode from motion information of the control point.
  • the decoding method may include: deriving a motion information candidate list of the current block based on spatial neighboring blocks and temporal neighboring blocks; deriving motion information of the current block based on the motion information candidate list; Deriving a predicted block for the current block based on information, and reconstructing a current picture based on the predicted block, wherein the motion information candidate list includes a temporal candidate and includes the temporal candidate Is derived based on the temporal neighboring block in the reference picture, the reference picture includes a plurality of motion information storage units, and the temporal candidate is a motion in which the temporal neighboring block in the reference picture is located.
  • motion information of a block coded in an affine mode among the plurality of blocks is derived as motion information of the motion information storage unit. It is characterized by.
  • the encoding method may include deriving a motion information candidate list of a current block based on spatial neighboring blocks and temporal neighboring blocks, and selecting information indicating one of candidates included in the motion information candidate list based on the motion information candidate list. And encoding and outputting the image information including the selection information into a bitstream, wherein the motion information candidate list includes a temporal candidate, and the temporal candidate is the temporal neighboring block in a reference picture.
  • the reference picture includes a plurality of motion information storage units, and the temporal candidate is based on motion information of a motion information storage unit in which the temporal neighboring block in the reference picture is located. Derived, and the movement When the information storage unit overlaps a plurality of blocks in the reference picture, motion information of a block coded in an affine mode among the plurality of blocks is derived as motion information of the motion information storage unit. do.
  • Another embodiment of the present invention provides a decoding apparatus for performing video decoding.
  • the decoding apparatus derives a motion information candidate list of the current block based on the spatial neighboring blocks and the temporal neighboring block, derives the motion information of the current block based on the motion information candidate list, and extracts the derived motion information.
  • the reference picture includes a plurality of motion information storage units, and the temporal candidate stores motion information in which the temporal neighboring block in the reference picture is located Derived based on the motion information of the unit, and
  • motion information storage unit overlaps a plurality of blocks in the reference picture, motion information of a block coded in an affine mode among the plurality of blocks is derived as motion information of the motion information storage unit. It is done.
  • the encoding apparatus derives a motion information candidate list of the current block based on the spatial neighboring blocks and the temporal neighboring block, and selects information indicating one of candidates included in the motion information candidate list based on the motion information candidate list.
  • an entropy encoding unit for encoding and outputting the image information including the selection information to the bitstream, wherein the motion information candidate list includes a temporal candidate, and the temporal candidate is the temporal neighboring block in the reference picture.
  • the reference picture includes a plurality of motion information storage units, and the temporal candidate is based on motion information of a motion information storage unit in which the temporal neighboring block in the reference picture is located.
  • motion information storage unit overlaps a plurality of blocks in the reference picture, it is determined that motion information of a block coded in an affine mode among the plurality of blocks is derived as motion information of the motion information storage unit. It features.
  • a storage space occupied by motion information in a buffer may be reduced during inter prediction.
  • the overall coding efficiency can be improved by reducing the storage space occupied by the motion information in the buffer.
  • FIG. 1 is a block diagram schematically illustrating a video encoding apparatus according to an embodiment of the present invention.
  • FIG. 2 is a block diagram schematically illustrating a video decoding apparatus according to an embodiment of the present invention.
  • FIG. 3 exemplarily illustrates a content streaming system according to an embodiment of the present invention.
  • 5A and 5B exemplarily illustrate a four-parameter affine model and a six-parameter affine model according to an embodiment of the present invention.
  • FIG. 6 exemplarily illustrates a case where the affine motion vector field is determined in subblock units according to an embodiment of the present invention.
  • FIG. 7 exemplarily illustrates a control point motion vector and an affine motion vector field according to an embodiment of the present invention.
  • FIG. 8 exemplarily illustrates an affine motion vector field in which a motion vector of some subblocks is replaced with a control point motion vector according to an embodiment of the present invention.
  • 10A and 10B exemplarily illustrate a motion vector field including an affine block and a non-affine block according to an embodiment of the present invention.
  • FIG. 11 schematically illustrates a video encoding method by an encoding apparatus according to an embodiment of the present invention.
  • FIG. 12 schematically illustrates a video decoding method by a decoding apparatus according to an embodiment of the present invention.
  • each of the components in the drawings described in the present invention are shown independently for the convenience of description of the different characteristic functions in the video encoding apparatus / decoding apparatus, each component is a separate hardware or separate software It does not mean that it is implemented.
  • two or more of each configuration may be combined to form one configuration, or one configuration may be divided into a plurality of configurations.
  • Embodiments in which each configuration is integrated and / or separated are also included in the present invention without departing from the spirit of the present invention.
  • each configuration in the drawings described in the present invention are shown independently for the convenience of description of the different characteristic functions, it does not mean that each configuration is implemented by separate hardware or separate software.
  • two or more of each configuration may be combined to form one configuration, or one configuration may be divided into a plurality of configurations.
  • Embodiments in which each configuration is integrated and / or separated are also included in the scope of the present invention without departing from the spirit of the present invention.
  • VVC Versatile Video Coding
  • HEVC High Efficiency Video Coding
  • a video may mean a series of images over time.
  • a picture generally refers to a unit representing one image in a specific time zone, and a slice is a unit constituting a part of a picture in coding.
  • One picture may be composed of a plurality of slices, and if necessary, the picture and the slice may be mixed with each other.
  • a pixel or a pel may refer to a minimum unit constituting one picture (or image). Also, 'sample' may be used as a term corresponding to a pixel.
  • a sample may generally represent a pixel or a value of a pixel, and may only represent pixel / pixel values of the luma component, or only pixel / pixel values of the chroma component.
  • a unit represents the basic unit of image processing.
  • the unit may include at least one of a specific region of the picture and information related to the region.
  • the unit may be used interchangeably with terms such as block or area in some cases.
  • an M ⁇ N block may represent a set of samples or transform coefficients composed of M columns and N rows.
  • FIG. 1 is a block diagram schematically illustrating a video encoding apparatus according to an embodiment of the present invention.
  • the encoding / decoding device may include a video encoding / decoding device and / or an image encoding / decoding device, and the video encoding / decoding device is used as a concept including the image encoding / decoding device, or the image encoding / decoding device is It may be used in a concept including a video encoding / decoding device.
  • the (video) encoding apparatus 100 may include a picture partitioning module 105, a prediction module 110, a residual processing module 120, and an entropy encoding unit (
  • the entropy encoding module 130 may include an adder 140, a filtering module 150, and a memory 160.
  • the residual processor 120 may include a substractor 121, a transform module 122, a quantization module 123, a rearrangement module 124, and a dequantization module 125. ) And an inverse transform module 126.
  • the picture divider 105 may divide the input picture into at least one processing unit.
  • the processing unit may be called a coding unit (CU).
  • the coding unit may be recursively divided according to a quad-tree binary-tree (QTBT) structure from a largest coding unit (LCU).
  • QTBT quad-tree binary-tree
  • LCU largest coding unit
  • one coding unit may be divided into a plurality of coding units of a deeper depth based on a quad tree structure, a binary tree structure, and / or a ternary tree structure.
  • the quad tree structure may be applied first, and the binary tree structure and the ternary tree structure may be applied later.
  • the binary tree structure / tunary tree structure may be applied first.
  • the coding procedure according to the present invention may be performed based on the final coding unit that is no longer split.
  • the maximum coding unit may be used as the final coding unit immediately based on coding efficiency according to the image characteristic, or if necessary, the coding unit is recursively divided into coding units of lower depths and optimized.
  • a coding unit of size may be used as the final coding unit.
  • the coding procedure may include a procedure of prediction, transform, and reconstruction, which will be described later.
  • the processing unit may include a coding unit (CU) prediction unit (PU) or a transform unit (TU).
  • the coding unit may be split from the largest coding unit (LCU) into coding units of deeper depths along the quad tree structure.
  • LCU largest coding unit
  • the maximum coding unit may be used as the final coding unit immediately based on coding efficiency according to the image characteristic, or if necessary, the coding unit is recursively divided into coding units of lower depths and optimized.
  • a coding unit of size may be used as the final coding unit. If a smallest coding unit (SCU) is set, the coding unit may not be split into smaller coding units than the minimum coding unit.
  • the final coding unit refers to a coding unit that is the basis of partitioning or partitioning into a prediction unit or a transform unit.
  • the prediction unit is a unit partitioning from the coding unit and may be a unit of sample prediction. In this case, the prediction unit may be divided into sub blocks.
  • the transform unit may be divided along the quad tree structure from the coding unit, and may be a unit for deriving a transform coefficient and / or a unit for deriving a residual signal from the transform coefficient.
  • a coding unit may be called a coding block (CB)
  • a prediction unit is a prediction block (PB)
  • a transform unit may be called a transform block (TB).
  • a prediction block or prediction unit may mean a specific area in the form of a block within a picture, and may include an array of prediction samples.
  • a transform block or a transform unit may mean a specific area in a block form within a picture, and may include an array of transform coefficients or residual samples.
  • the prediction unit 110 performs prediction on a block to be processed (hereinafter, may mean a current block or a residual block), and generates a predicted block including prediction samples for the current block. can do.
  • the unit of prediction performed by the prediction unit 110 may be a coding block, a transform block, or a prediction block.
  • the prediction unit 110 may determine whether intra prediction or inter prediction is applied to the current block. As an example, the prediction unit 110 may determine whether intra prediction or inter prediction is applied on a CU basis.
  • the prediction unit 110 may derive a prediction sample for the current block based on reference samples outside the current block in the picture to which the current block belongs (hereinafter, referred to as the current picture). In this case, the prediction unit 110 may (i) derive the prediction sample based on the average or interpolation of neighboring reference samples of the current block, and (ii) the neighbor reference of the current block.
  • the prediction sample may be derived based on a reference sample present in a specific (prediction) direction with respect to the prediction sample among the samples. In case of (i), it may be called non-directional mode or non-angle mode, and in case of (ii), it may be called directional mode or angular mode.
  • the prediction mode may have, for example, 33 directional prediction modes and at least two non-directional modes.
  • the non-directional mode may include a DC prediction mode and a planner mode (Planar mode).
  • the prediction unit 110 may determine the prediction mode applied to the current block by using the prediction mode applied to the neighboring block.
  • the prediction unit 110 may derive the prediction sample for the current block based on the sample specified by the motion vector on the reference picture.
  • the prediction unit 110 may apply one of a skip mode, a merge mode, and a motion vector prediction (MVP) mode to derive a prediction sample for the current block.
  • the prediction unit 110 may use the motion information of the neighboring block as the motion information of the current block.
  • the skip mode unlike the merge mode, the difference (residual) between the prediction sample and the original sample is not transmitted.
  • the MVP mode the motion vector of the current block may be derived using the motion vector of the neighboring block as a motion vector predictor.
  • the neighboring block may include a spatial neighboring block existing in the current picture and a temporal neighboring block present in the reference picture.
  • a reference picture including the temporal neighboring block may be called a collocated picture (colPic).
  • the motion information may include a motion vector and a reference picture index.
  • Information such as prediction mode information and motion information may be encoded (entropy) and output in the form of a bitstream.
  • the highest picture on the reference picture list may be used as the reference picture.
  • Reference pictures included in a reference picture list may be sorted based on a difference in a picture order count (POC) between a current picture and a corresponding reference picture.
  • POC picture order count
  • the subtraction unit 121 generates a residual sample which is a difference between the original sample and the prediction sample.
  • residual samples may not be generated as described above.
  • the transform unit 122 generates transform coefficients by transforming the residual sample in units of transform blocks.
  • the transform unit 122 may perform the transform according to the size of the transform block and the prediction mode applied to the coding block or the prediction block that spatially overlaps the transform block. For example, if intra prediction is applied to the coding block or the prediction block that overlaps the transform block, and the transform block is a residual array of 4 ⁇ 4, the residual sample is obtained by using a discrete sine transform (DST) transform kernel. In other cases, the residual sample may be transformed using a discrete cosine transform (DCT) transform kernel.
  • DST discrete sine transform
  • DCT discrete cosine transform
  • the quantization unit 123 may quantize the transform coefficients to generate quantized transform coefficients.
  • the reordering unit 124 rearranges the quantized transform coefficients.
  • the reordering unit 124 may reorder the quantized transform coefficients in the form of a block into a one-dimensional vector form through a coefficient scanning method. Although the reordering unit 124 has been described in a separate configuration, the reordering unit 124 may be part of the quantization unit 123.
  • the entropy encoding unit 130 may perform entropy encoding on the quantized transform coefficients.
  • Entropy encoding may include, for example, encoding methods such as exponential Golomb, context-adaptive variable length coding (CAVLC), context-adaptive binary arithmetic coding (CABAC), and the like.
  • the entropy encoding unit 130 may encode information necessary for video reconstruction other than the quantized transform coefficients (for example, a value of a syntax element) together or separately according to entropy encoding or a predetermined method.
  • the encoded information may be transmitted or stored in units of network abstraction layer (NAL) units in the form of bitstreams.
  • the bitstream may be transmitted over a network or may be stored in a digital storage medium.
  • the network may include a broadcasting network and / or a communication network, and the digital storage medium may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, SSD, and the like.
  • the inverse quantization unit 125 inversely quantizes the quantized values (quantized transform coefficients) in the quantization unit 123, and the inverse transformer 126 inversely transforms the inverse quantized values in the inverse quantization unit 125 to generate a residual sample.
  • the adder 140 reconstructs the picture by combining the residual sample and the predictive sample.
  • the residual sample and the predictive sample may be added in units of blocks to generate a reconstructed block.
  • the adder 140 may be part of the predictor 110.
  • the adder 140 may also be called a reconstruction module or a restore block generator.
  • the filter unit 150 may apply a deblocking filter and / or a sample adaptive offset to the reconstructed picture. Through deblocking filtering and / or sample adaptive offset, the artifacts of the block boundaries in the reconstructed picture or the distortion in the quantization process can be corrected.
  • the sample adaptive offset may be applied on a sample basis and may be applied after the process of deblocking filtering is completed.
  • the filter unit 150 may apply an adaptive loop filter (ALF) to the reconstructed picture. ALF may be applied to the reconstructed picture after the deblocking filter and / or sample adaptive offset is applied.
  • ALF adaptive loop filter
  • the memory 160 may store reconstructed pictures (decoded pictures) or information necessary for encoding / decoding.
  • the reconstructed picture may be a reconstructed picture after the filtering process is completed by the filter unit 150.
  • the stored reconstructed picture may be used as a reference picture for (inter) prediction of another picture.
  • the memory 160 may store (reference) pictures used for inter prediction.
  • pictures used for inter prediction may be designated by a reference picture set or a reference picture list.
  • FIG. 2 is a block diagram schematically illustrating a video decoding apparatus according to an embodiment of the present invention.
  • the video decoding apparatus may include an image decoding apparatus.
  • the video decoding apparatus 200 may include an entropy decoding module 210, a residual processing module 220, a prediction module 230, and an adder 240. ), A filtering module 250, and a memory 260.
  • the residual processor 220 may include a rearrangement module 221, a dequantization module 222, and an inverse transform module 223.
  • the video decoding apparatus 200 may include a receiver that receives a bitstream including video information. The receiver may be configured as a separate module or may be included in the entropy decoding unit 210.
  • the video decoding apparatus 200 may reconstruct a video / image / picture in response to a process in which video / image information is processed in the video encoding apparatus.
  • the video decoding apparatus 200 may perform video decoding using a processing unit applied in the video encoding apparatus.
  • the processing unit block of video decoding may be, for example, a coding unit, and in another example, a coding unit, a prediction unit, or a transform unit.
  • the coding unit may be split along the quad tree structure, binary tree structure and / or ternary tree structure from the largest coding unit.
  • the prediction unit and the transform unit may be further used in some cases, in which case the prediction block is a block derived or partitioned from the coding unit and may be a unit of sample prediction. At this point, the prediction unit may be divided into subblocks.
  • the transform unit may be divided along the quad tree structure from the coding unit, and may be a unit for deriving a transform coefficient or a unit for deriving a residual signal from the transform coefficient.
  • the entropy decoding unit 210 may parse the bitstream and output information necessary for video reconstruction or picture reconstruction. For example, the entropy decoding unit 210 decodes information in a bitstream based on a coding method such as exponential Golomb coding, CAVLC, or CABAC, quantized values of syntax elements required for video reconstruction, and transform coefficients for residuals. Can be output.
  • a coding method such as exponential Golomb coding, CAVLC, or CABAC, quantized values of syntax elements required for video reconstruction, and transform coefficients for residuals. Can be output.
  • the CABAC entropy decoding method receives a bin corresponding to each syntax element in a bitstream, and decodes syntax element information and decoding information of neighboring and decoding target blocks or information of symbols / bins decoded in a previous step.
  • the context model is determined using the context model, the probability of occurrence of a bin is predicted according to the determined context model, and arithmetic decoding of the bin is performed to generate a symbol corresponding to the value of each syntax element. can do.
  • the CABAC entropy decoding method may update the context model by using the information of the decoded symbol / bin for the context model of the next symbol / bin after determining the context model.
  • the information related to the prediction among the information decoded by the entropy decoding unit 210 is provided to the prediction unit 230, and the residual value on which the entropy decoding has been performed by the entropy decoding unit 210, that is, the quantized transform coefficient, is used as a reordering unit ( 221 may be input.
  • the reordering unit 221 may rearrange the quantized transform coefficients in a two-dimensional block form.
  • the reordering unit 221 may perform reordering in response to coefficient scanning performed by the encoding apparatus.
  • the rearrangement unit 221 has been described in a separate configuration, but the rearrangement unit 221 may be part of the inverse quantization unit 222.
  • the inverse quantization unit 222 may dequantize the quantized transform coefficients based on the (inverse) quantization parameter and output the transform coefficients.
  • information for deriving a quantization parameter may be signaled from the encoding apparatus.
  • the inverse transform unit 223 may inversely transform transform coefficients to derive residual samples.
  • the prediction unit 230 may perform prediction on the current block and generate a predicted block including prediction samples for the current block.
  • the unit of prediction performed by the prediction unit 230 may be a coding block, a transform block, or a prediction block.
  • the prediction unit 230 may determine whether to apply intra prediction or inter prediction based on the information about the prediction.
  • a unit for determining which of intra prediction and inter prediction is to be applied and a unit for generating a prediction sample may be different.
  • the unit for generating a prediction sample in inter prediction and intra prediction may also be different.
  • whether to apply inter prediction or intra prediction may be determined in units of CUs.
  • a prediction mode may be determined and a prediction sample may be generated in PU units
  • intra prediction a prediction mode may be determined in PU units and a prediction sample may be generated in TU units.
  • the prediction unit 230 may derive the prediction sample for the current block based on the neighbor reference samples in the current picture.
  • the prediction unit 230 may derive the prediction sample for the current block by applying the directional mode or the non-directional mode based on the neighbor reference samples of the current block.
  • the prediction mode to be applied to the current block may be determined using the intra prediction mode of the neighboring block.
  • the prediction unit 230 may derive the prediction sample for the current block based on the sample specified on the reference picture by the motion vector on the reference picture.
  • the prediction unit 230 may apply any one of a skip mode, a merge mode, and an MVP mode to derive a prediction sample for the current block.
  • motion information required for inter prediction of the current block provided by the video encoding apparatus for example, information about a motion vector, a reference picture index, and the like may be obtained or derived based on the prediction information.
  • the motion information of the neighboring block may be used as the motion information of the current block.
  • the neighboring block may include a spatial neighboring block and a temporal neighboring block.
  • the prediction unit 230 may construct a merge candidate list using motion information of available neighboring blocks, and may use information indicated by the merge index on the merge candidate list as a motion vector of the current block.
  • the merge index may be signaled from the encoding device.
  • the motion information may include a motion vector and a reference picture. When the motion information of the temporal neighboring block is used in the skip mode and the merge mode, the highest picture on the reference picture list may be used as the reference picture.
  • the difference (residual) between the prediction sample and the original sample is not transmitted.
  • the motion vector of the current block may be derived using the motion vector of the neighboring block as a motion vector predictor.
  • the neighboring block may include a spatial neighboring block and a temporal neighboring block.
  • a merge candidate list may be generated by using a motion vector of a reconstructed spatial neighboring block and / or a motion vector corresponding to a Col block, which is a temporal neighboring block.
  • the motion vector of the candidate block selected from the merge candidate list is used as the motion vector of the current block.
  • the information about the prediction may include a merge index indicating a candidate block having an optimal motion vector selected from candidate blocks included in the merge candidate list.
  • the prediction unit 230 may derive the motion vector of the current block by using the merge index.
  • a motion vector predictor candidate list may be generated using a motion vector of a reconstructed spatial neighboring block and / or a motion vector corresponding to a Col block, which is a temporal neighboring block.
  • the prediction information may include a prediction motion vector index indicating an optimal motion vector selected from the motion vector candidates included in the list.
  • the prediction unit 230 may select the predicted motion vector of the current block from the motion vector candidates included in the motion vector candidate list using the motion vector index.
  • the prediction unit of the encoding apparatus may obtain a motion vector difference (MVD) between the motion vector of the current block and the motion vector predictor, and may encode the output vector in a bitstream form. That is, MVD may be obtained by subtracting the motion vector predictor from the motion vector of the current block.
  • the prediction unit 230 may obtain a motion vector difference included in the information about the prediction, and derive the motion vector of the current block by adding the motion vector difference and the motion vector predictor.
  • the prediction unit may also obtain or derive a reference picture index or the like indicating a reference picture from the information about the prediction.
  • the adder 240 may reconstruct the current block or the current picture by adding the residual sample and the predictive sample.
  • the adder 240 may reconstruct the current picture by adding the residual sample and the predictive sample in block units. Since the residual is not transmitted when the skip mode is applied, the prediction sample may be a reconstruction sample.
  • the adder 240 has been described in a separate configuration, the adder 240 may be part of the predictor 230.
  • the adder 240 may also be called a reconstruction module or a reconstruction block generator.
  • the filter unit 250 may apply the deblocking filtering sample adaptive offset, and / or ALF to the reconstructed picture.
  • the sample adaptive offset may be applied in units of samples and may be applied after deblocking filtering.
  • ALF may be applied after deblocking filtering and / or sample adaptive offset.
  • the memory 260 may store reconstructed pictures (decoded pictures) or information necessary for decoding.
  • the reconstructed picture may be a reconstructed picture after the filtering process is completed by the filter unit 250.
  • the memory 260 may store pictures used for inter prediction.
  • pictures used for inter prediction may be designated by a reference picture set or a reference picture list.
  • the reconstructed picture can be used as a reference picture for another picture.
  • the memory 260 may output the reconstructed picture in an output order.
  • a predicted block including prediction samples of the current block which is a coding target block
  • the predicted block comprises prediction samples in the spatial domain (or pixel domain).
  • the predicted block is derived identically in the encoding apparatus and the decoding apparatus, and the encoding apparatus decodes information (residual information) about the residual between the original block and the predicted block, not the original sample value itself of the original block. Signaling to an apparatus may increase image coding efficiency.
  • the decoding apparatus may derive a residual block including residual samples based on the residual information, generate the reconstructed block including reconstructed samples by adding the residual block and the predicted block, and generate reconstructed blocks. A reconstructed picture may be generated.
  • the residual information may be generated through a transform and quantization procedure.
  • the encoding apparatus derives a residual block between the original block and the predicted block, and performs transform procedure on residual samples (residual sample array) included in the residual block to derive transform coefficients.
  • the quantized transform coefficients may be derived by performing a quantization procedure on the transform coefficients to signal related residual information to the decoding device (via a bitstream).
  • the residual information may include information such as value information of the quantized transform coefficients, position information, a transform scheme, a transform kernel, and a quantization parameter.
  • the decoding apparatus may perform an inverse quantization / inverse transformation procedure and derive residual samples (or residual blocks) based on the residual information.
  • the decoding apparatus may generate a reconstructed picture based on the predicted block and the residual block.
  • the encoding apparatus may then dequantize / inverse transform the quantized transform coefficients for reference for inter prediction of the picture to derive a residual block, and generate a reconstructed picture based thereon.
  • FIG. 3 exemplarily illustrates a content streaming system according to an embodiment of the present invention.
  • the embodiments described in the present invention may be implemented and performed on a processor, a microprocessor, a controller, or a chip.
  • the functional units shown in each drawing may be implemented and performed on a computer, processor, microprocessor, controller, or chip.
  • information for implementation (ex. Information on instructions) or an algorithm may be stored in a digital storage medium.
  • the decoding apparatus and encoding apparatus to which the present invention is applied include a multimedia broadcasting transmitting and receiving device, a mobile communication terminal, a home cinema video device, a digital cinema video device, a surveillance camera, a video chat device, a real time communication device such as video communication, and mobile streaming.
  • the OTT video device may include a game console, a Blu-ray player, an internet access TV, a home theater system, a smartphone, a tablet PC, a digital video recorder (DVR), and the like.
  • the processing method to which the present invention is applied can be produced in the form of a program executed by a computer, and can be stored in a computer-readable recording medium.
  • Multimedia data having a data structure according to the present invention can also be stored in a computer-readable recording medium.
  • the computer readable recording medium includes all kinds of storage devices and distributed storage devices in which computer readable data is stored.
  • the computer-readable recording medium may be, for example, a Blu-ray disc (BD), a universal serial bus (USB), a ROM, a PROM, an EPROM, an EEPROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, and an optical disc. It may include a data storage device.
  • the computer-readable recording medium also includes media embodied in the form of a carrier wave (eg, transmission over the Internet).
  • the bitstream generated by the encoding method may be stored in a computer-readable recording medium or transmitted through a wired or wireless communication network.
  • an embodiment of the present invention may be implemented as a computer program product by program code, which may be performed on a computer by an embodiment of the present invention.
  • the program code may be stored on a carrier readable by a computer.
  • the content streaming system to which the present invention is applied may largely include an encoding server, a streaming server, a web server, a media storage, a user device, and a multimedia input device.
  • the encoding server compresses content input from multimedia input devices such as a smart phone, a camera, a camcorder, etc. into digital data to generate a bitstream and transmit the bitstream to the streaming server.
  • multimedia input devices such as smart phones, cameras, camcorders, etc. directly generate a bitstream
  • the encoding server may be omitted.
  • the bitstream may be generated by an encoding method or a bitstream generation method to which the present invention is applied, and the streaming server may temporarily store the bitstream in the process of transmitting or receiving the bitstream.
  • the streaming server transmits the multimedia data to the user device based on the user's request through the web server, and the web server serves as a medium for informing the user of what service.
  • the web server delivers it to a streaming server, and the streaming server transmits multimedia data to the user.
  • the content streaming system may include a separate control server.
  • the control server plays a role of controlling a command / response between devices in the content streaming system.
  • the streaming server may receive content from a media store and / or an encoding server. For example, when the content is received from the encoding server, the content may be received in real time. In this case, in order to provide a smooth streaming service, the streaming server may store the bitstream for a predetermined time.
  • Examples of the user device include a mobile phone, a smart phone, a laptop computer, a digital broadcasting terminal, a personal digital assistant (PDA), a portable multimedia player (PMP), navigation, a slate PC, Tablet PCs, ultrabooks, wearable devices, such as smartwatches, glass glasses, head mounted displays, digital TVs, desktops Computer, digital signage, and the like.
  • PDA personal digital assistant
  • PMP portable multimedia player
  • slate PC slate PC
  • Tablet PCs ultrabooks
  • wearable devices such as smartwatches, glass glasses, head mounted displays, digital TVs, desktops Computer, digital signage, and the like.
  • Each server in the content streaming system may be operated as a distributed server, in which case data received from each server may be distributed.
  • inter prediction modes may be used for prediction of the current block in the picture.
  • various modes such as merge mode, skip mode, motion vector prediction (MVP) mode, affine mode, and historical motino vector prediction (HMVP) mode
  • DMVR Decoder side motion vector refinement
  • AMVR adaptive motion vector resolution
  • the affine mode may be called an affine motion prediction mode.
  • MVP mode may be referred to as advanced motion vector prediction (AMVP) mode.
  • motion information candidates derived by some modes and / or some modes may be included as one of motion information candidates of other modes.
  • Prediction mode information indicating the inter prediction mode of the current block may be signaled from the encoding device to the decoding device.
  • the prediction mode information may be included in the bitstream and received by the decoding apparatus.
  • the prediction mode information may include index information indicating one of a plurality of candidate modes.
  • the inter prediction mode may be indicated through hierarchical signaling of flag information.
  • the prediction mode information may include one or more flags. For example, a skip flag is signaled to indicate whether a skip mode is applied, and if a skip mode is not applied, a merge flag is signaled to indicate whether a merge mode is applied, and if a merge mode is not applied, an MVP mode is applied. Or may further signal a flag for additional classification.
  • the affine mode may be signaled in an independent mode, or may be signaled in a mode dependent on a merge mode or an MVP mode.
  • the affine mode may include an affine merge mode and an affine MVP mode.
  • Inter prediction may be performed using motion information of the current block.
  • the encoding apparatus may derive optimal motion information for the current block through a motion estimation procedure. For example, the encoding apparatus may search for a similar reference block having a high correlation using the original block in the original picture for the current block in fractional pixel units within a predetermined search range in the reference picture, thereby deriving motion information.
  • Similarity of blocks can be derived based on the difference of phase based sample values. For example, the similarity of a block may be calculated based on a sum of absorptive difference (SAD) between a current block (or a template of a current block) and a reference block (or a template of a reference block). In this case, motion information may be derived based on a reference block having the smallest SAD in the search area.
  • the derived motion information may be signaled to the decoding apparatus according to various methods based on the inter prediction mode.
  • an affine mode or an affine motion prediction mode that encodes using an affine motion model capable of determining an optimal motion vector in a pixel unit may be used.
  • the affine mode may determine an optimal motion vector in subblock units of the current block in order to further improve coding efficiency.
  • the affine motion prediction mode may represent a motion vector in each pixel unit of a block by using two, three, or four motion vectors.
  • the affine motion model may include four motion models, but since this is an exemplary motion model, the scope of the present invention is not limited thereto.
  • the four movements described above may include translation, scale, rotation, and shear.
  • 5A and 5B exemplarily illustrate a four-parameter affine model and a six-parameter affine model according to an embodiment of the present invention.
  • a control point may be defined to use an affine motion model, and two or more control point motion vectors (CPMVs) may be defined.
  • the motion vector of the pixel position or the subblock included in the block can be determined by using.
  • the set of pixel positions or motion vectors of the sub-blocks may be referred to as an affine Motion Vector Field (affine MVF).
  • the 4-parameter affine model may mean a model for determining a motion vector of a pixel position or a subblock using two CPMVs, and the motion vectors or affine motion of the pixel position or a subblock.
  • the vector field may be derived as shown in Equation 1.
  • the 6-parameter affine model may mean a model for determining a motion vector of a pixel position or a subblock using three CPMV motion vectors, and the motion vectors or the affinity of the pixel position or subblock.
  • the motion vector field may be derived as shown in Equation 2.
  • Equation 1 and Equation 2 v 0x, v 0y is the CP CPMV of the upper left corner position of the current block, v 1x, v 1y are the CP CPMV of the upper right corner position of the current block, v 2x, v 2y is It may indicate the CPMV of the CP of the lower left corner of the current block.
  • W may represent the width of the current block, H may represent the height of the current block.
  • v x , v y may represent a motion vector of a pixel at the (x, y) position or a subblock including the (x, y) position.
  • FIG. 6 exemplarily illustrates a case where the affine motion vector field is determined in subblock units according to an embodiment of the present invention.
  • the affinity motion vector field may be determined in a previously defined subblock unit, or may be determined in a pixel unit unlike FIG.
  • the motion vector may be determined based on each pixel value, and when determined in units of subblocks, the motion vector is the center of the subblock (lower right center, that is, four centers). The right lower sample of the samples) may be determined based on the pixel value.
  • the affine mode may include an affine merge mode and an affine MVP mode.
  • the affine merge mode may derive the CPMV of the current block using the CPMV of the neighboring block coded in the affine mode, and when the motion vector is determined in units of subblocks, the affine merge mode is called a subblock merge mode. You may.
  • the encoding apparatus may signal an index for a neighboring block coded in the affine mode to derive the CPMV of the current block to the decoding apparatus, and further add a difference value between the CPMV of the neighboring block and the CPMV of the current block. It may signal.
  • the merge merge mode may configure the candidate merge list based on the neighboring block, and the index of the neighboring block may represent the neighboring block to be referred to to derive the CPMV of the current block among the merge merge candidate lists.
  • the affine merge candidate list may be referred to as a subblock merge candidate list.
  • the affine MVP mode may derive the CPMV of the current block based on a CPMVP (Control Point Motion Vector Predictor) and a CPMVD (Control Point Motion Vector Difference).
  • the encoding apparatus may determine the CPMVP for the CPMV of the current block, derive a CPMVD that is a difference between the CPMV and the CPMVP of the current block, and signal the information about the CPMVP and the information about the CPMVD to the decoding apparatus.
  • the affine MVP mode may configure the affine MVP candidate list based on the neighboring block, and the information on the CPMVP indicates a neighboring block to be referred to to derive the CPMVP of the CPMV of the current block among the affine MVP candidate lists.
  • the affine MVP mode may be referred to as an affine inter mode, and the affine MVP candidate list may be referred to as a control point motion vector predictor candidate list.
  • the affine candidate list may include an affine merge candidate list in the affine merge mode and an affine MVP candidate list in the affine MVP mode.
  • the candidate candidate list may be configured as candidates of neighboring blocks coded in the searched affine mode in a specific order, and the number of candidates may be predefined.
  • the candidate candidate list may be derived based on neighboring blocks.
  • the neighboring block may include a spatial neighboring block and a temporal neighboring block.
  • the affine candidate list may first include spatial candidates derived based on spatial neighboring blocks.
  • the affine candidate list may include a temporal candidate derived based on a temporal neighboring block when a predefined number of candidates is less than a spatial candidate only.
  • the affine candidate list may further include a zero motion vector when the number of candidates predefined by the spatial candidates and the temporal candidates is less than the candidate candidate list.
  • the spatial neighboring block may mean a block decoded before the current block, and the temporal neighboring block may include a block at the same position as the current block in the reference picture decoded before the picture including the current block.
  • the temporal neighboring block may refer to the above-described Col block.
  • motion information of a reference picture may need to be stored in a memory.
  • TMVP temporal motion vector prediction
  • Temporal Motion Vector Prediction may be used to improve coding efficiency.
  • Motion information in a reference picture or reference frame for a TMVP may include a motion vector (MV) and a reference frame index, and the motion vector may be an alternate temporal motion vector (ATMVP) or a spatial-temporal (STMVP).
  • MV motion vector
  • ATMVP alternate temporal motion vector
  • STMVP spatial-temporal
  • It can be derived at the 4 x 4 block level by several coding tools, such as Motion Vector Prediction, affine prediction, and Pattern Matched Motion Vector Derivation (PMMVD), so 4 x instead of 8 x 8 or higher block levels. Can be stored at 4 block levels. Therefore, since motion information in a reference frame for TMVP may occupy a considerable amount of bits in the memory storage, it may be required to be compressed and stored in the reference frame buffer.
  • PMMVD Pattern Matched Motion Vector Derivation
  • One embodiment of the present invention may propose a method of reducing a storage space for motion information by using a motion information storage unit.
  • An embodiment of the present invention may store motion information of a reference frame in a buffer through the motion information storage unit to reduce the storage space for the motion information.
  • the motion information storage unit may be defined as a unit unit for a block level in which one motion vector is stored.
  • the motion information storage unit may have an N ⁇ N size (N is a number greater than 4 or a large natural number), and in the description of the present invention, the motion information storage unit may be referred to as an N ⁇ N block.
  • the motion information of the 4 x 4 block located in the upper left in the N x N block may be stored in the memory storage.
  • the position of the 4 ⁇ 4 block may be located at the top right or the center in addition to the top left, but is not limited thereto. Other positions may be predefined.
  • the motion vector of the first scanned 4 ⁇ 4 block having a reference index on a predefined scan order of 0 may be used. If there is no motion vector having a reference index of 0, a motion vector scaled with a reference index of 0 may be stored.
  • a representative reference frame index may be selected at the frame level, and then a motion vector of a predefined position of a 4 ⁇ 4 block may be scaled and stored according to the representative reference frame.
  • the representative reference frame may be selected as the most generated reference frame, and one flag may be signaled to indicate the representative reference frame at the frame level.
  • the above-described process may be used at the CTU level, slice level, or picture level.
  • the representative reference frame index may be set to zero. In this case, a flag indicating a representative reference frame index may not be required.
  • an average or median motion vector may be used instead of selecting one motion vector in the N ⁇ N block.
  • a method of reducing storage space for motion information when using affine prediction, may be as follows.
  • FIG. 7 exemplarily illustrates a control point motion vector and an affine motion vector field according to an embodiment of the present invention.
  • Affine prediction may use two types of motion vectors, such as a set of control point motion vectors (CPMVs) and an affine motion vector field (MVF).
  • CPMVs control point motion vectors
  • MVF affine motion vector field
  • control point motion vectors may be motion vectors at four corner points of a coding block for generating an affine motion model
  • the affine MVF field is It may be a set of motion vectors derived from an affine motion model determined based on control points.
  • the affine motion vector field is a set of motion vectors in a subblock unit
  • each motion vector may be determined based on the center position of the subblock.
  • the subblock may be a 4 ⁇ 4 block, but is not limited thereto.
  • the control points may include a top-left sample position, a top-right sample position, a bottom-left sample position, and a bottom-right sample. Each may be positioned at a sample position.
  • the control point at the upper left sample position is CP 0
  • the control point at the upper right sample position is CP 1
  • the control point at the lower left sample position is CP 2
  • the control point at the lower right sample position is CP 3 .
  • a block may be divided into 16 subblocks, and a motion vector of the subblock may be determined based on a center position of each subblock. Therefore, the control point motion vector may be different from the motion vector of the subblock including the control point.
  • FIG. 8 exemplarily illustrates an affine motion vector field in which a motion vector of some subblocks is replaced with a control point motion vector according to an embodiment of the present invention.
  • the affine motion vector field for a block may be determined and stored in a buffer for affine motion compensation during decoding.
  • the motion vector of four corner blocks including the control point may be replaced with the control point motion vector.
  • the motion vector of the upper left subblock including CP 0 is a motion vector of CP
  • the motion vector of the upper right subblock including CP 1 is a motion vector of CP 1
  • a motion vector of the lower left sub-block containing the CP 2 may be replaced by a motion vector of a CP 2
  • a block is coded with affine prediction, and the motion vector is N ⁇ N (N is a number greater than 4 or a natural number larger) to reduce the size of the MV buffer.
  • motion information may be stored according to a process as follows.
  • an affine block may mean a block coded by affine prediction.
  • motion information of the 4 ⁇ 4 block in the upper left corner of the N ⁇ N block may be stored as motion information of the corresponding motion information storage unit.
  • the control point motion vector (CPMV) of the CP is stored as the motion information of the corresponding motion information storage unit instead of the motion information of the 4 x 4 block in the upper left corner. Can be.
  • the motion vector of the center position of the motion information storage unit (N x N block) may be derived according to the affine motion model of the current block, and the derived motion vector is a motion vector of the motion information storage unit (N x N block). Can be stored.
  • the stored motion vector of the motion information storage unit containing the CP may or may not be replaced with CPVM.
  • a block size is 32 ⁇ 32 and N is 8 for convenience of description.
  • the block may include sixteen 8 ⁇ 8 motion information storage units, and the motion information storage units may each include four 4 ⁇ 4 subblocks.
  • the motion vector may exist per subblock.
  • the motion vectors of the 12 motion information storage units not including the CP among the 16 motion information storage units may be stored as the motion vectors of the 4 ⁇ 4 subblocks of the upper left corner.
  • the motion vectors of the four motion information storage units (blocks indicated by dotted lines) including the CP may be stored as the motion vectors of the 4 ⁇ 4 subblocks including the CP.
  • the motion vector of the 4x4 subblock including the CP may be replaced with a motion vector (CPMV) of the corresponding CP, and the CPMV may be stored as a motion vector of the motion information storage unit.
  • a block may include 16 motion information storage units, and motion vectors of gray areas of the 4 ⁇ 4 subblocks may be stored as motion vectors of 16 motion information storage units, respectively.
  • 10A and 10B exemplarily illustrate a motion vector field including an affine block and a non-affine block according to an embodiment of the present invention.
  • one motion information storage unit may include at least a portion of a block coded with affine prediction or a subblock and at least a portion of a block coded according to a method or mode other than affine prediction. It may be. Blocks shown in bold lines in FIGS. 10A and 10B may indicate a motion information storage unit.
  • the affine block may refer to at least a part or subblock of a block coded with affine prediction, and the non-affine block is coded according to a method or mode other than affine prediction. It may refer to at least a portion of the block.
  • the motion vector of the N x N block is a pre-defined position.
  • the motion vector, the average motion vector, or the median motion vector may be selected.
  • the motion vector of the N x N block is the priority of the affine subblock for storage in the buffer. Can be selected as a vector.
  • the position of the CP may be considered.
  • the position of the CP may be considered in the motion vector of the affine block in FIG. 10A.
  • storage in the motion vector buffer may be considered in the motion vector buffer in the motion vector buffer in the motion vector buffer in the motion vector buffer in the motion vector buffer in the motion vector buffer in the motion vector buffer in the motion vector buffer in FIG. 10B.
  • the position of the motion vector is away from the center position in the N ⁇ N block, storage in the motion vector buffer may not be considered.
  • the motion vector of the motion information storage unit is affine. It may be stored as a motion vector of one subblock of a block.
  • the block or subblock may have a motion vector and have a size of 4 ⁇ 4, but is not limited thereto.
  • the motion vector of the motion information storage unit is affine. It may be stored as one of the motion vectors of the two subblocks of the block. In other words, when there are two or more subblocks of the affine block in the motion information storage unit, the motion vector of the subblock including the control point of the affine block or the motion vector of the upper left subblock is the motion vector of the motion information storage unit. Can be stored as. The motion vector of the subblock including the control point may be replaced with the control point motion vector.
  • the storage space occupied in the buffer may be reduced by storing the motion information including the motion vector for each motion information storage unit in the buffer through the above-described process.
  • FIG. 11 schematically illustrates a video encoding method by an encoding apparatus according to an embodiment of the present invention.
  • the method disclosed in FIG. 11 may be performed by the encoding apparatus disclosed in FIG. 1.
  • S1100 and S1110 of FIG. 11 may be performed by the prediction unit of the encoding apparatus
  • S1120 may be performed by the entropy encoding unit of the encoding apparatus.
  • the encoding apparatus derives a motion information candidate list of the current block based on the spatial neighboring blocks and the temporal neighboring block (S1100).
  • the motion information candidate list may include candidate lists according to various prediction modes, such as merge mode, MVP mode, and affine mode.
  • the number of candidates may be predefined in the motion information candidate list according to the prediction mode.
  • the motion information candidate list may include spatial candidates derived from spatial neighboring blocks.
  • temporal candidates derived from temporal neighboring blocks may be further included. If the number of spatial and temporal candidates is less than the predefined number of candidates, zero motion vector may be further included.
  • the temporal candidate may be stored in a buffer, and the temporal candidate may be derived based on temporal neighboring blocks in the reference picture.
  • the reference picture may include a plurality of motion information storage units, and a temporal candidate may be derived based on motion information of the motion information storage unit in which the temporal neighboring block in the reference picture is located.
  • the temporal candidate may include the above-described Col block.
  • the motion information storage unit may have a size of 8 ⁇ 8, but may be larger than 4 ⁇ 4, but is not limited thereto.
  • motion information of a block coded in an affine mode among the plurality of blocks may be derived as motion information of the motion information storage unit. Can be.
  • a control point of the block coded in the affine mode among the plurality of subblocks may be derived as motion information of the motion information storage unit.
  • the motion information of the subblock including the control point may be derived as the motion information of the control point.
  • a block coded in an affine mode includes a plurality of subblocks
  • the plurality of subblocks overlap the motion information storage unit, and a block including a control point among the plurality of subblocks does not exist.
  • the motion information of the subblock located at the top-left of the plurality of subblocks may be derived as the motion information of the motion information storage unit.
  • a block coded in an affine mode includes a plurality of subblocks, and the plurality of subblocks overlap the motion information storage unit, an average value or median value of motion information values of the plurality of subblocks is moved. It can be derived as a value of motion information of the information storage unit.
  • the temporal candidate is derived based on the motion information or the representative motion information stored for each motion information storage unit having a larger size than the subblock, the storage space occupied by the motion information can be reduced.
  • the encoding apparatus generates selection information indicating one of the candidates included in the motion information candidate list based on the motion information candidate list (S1110).
  • the selection information may include an index for a block having a high correlation with the current block in the motion information candidate list.
  • the encoding apparatus encodes image information including the selection information and outputs a bitstream (S1120).
  • the image information may further include residual information generated based on the predicted block and the current block.
  • the bitstream may be transmitted to the decoding apparatus via a network or a storage medium.
  • FIG. 12 schematically illustrates a video decoding method by a decoding apparatus according to an embodiment of the present invention.
  • the method disclosed in FIG. 12 may be performed by the decoding apparatus disclosed in FIG. 2.
  • S1200 to S1220 of FIG. 12 may be performed by the prediction unit of the decoding apparatus
  • S1230 may be performed by the reconstruction unit or the adder of the decoding apparatus.
  • the decoding apparatus derives a motion information candidate list of the current block based on the spatial neighboring blocks and the temporal neighboring block (S1200).
  • the motion information candidate list may include candidate lists according to various prediction modes, such as merge mode, MVP mode, and affine mode.
  • the number of candidates may be predefined in the motion information candidate list according to the prediction mode.
  • the motion information candidate list may include spatial candidates derived from spatial neighboring blocks.
  • temporal candidates derived from temporal neighboring blocks may be further included. If the number of spatial and temporal candidates is less than the predefined number of candidates, zero motion vector may be further included.
  • the temporal candidate may be stored in a buffer, and the temporal candidate may be derived based on temporal neighboring blocks in the reference picture.
  • the reference picture may include a plurality of motion information storage units, and a temporal candidate may be derived based on motion information of the motion information storage unit in which the temporal neighboring block in the reference picture is located.
  • the temporal candidate may include the above-described Col block.
  • the motion information storage unit may have a size of 8 ⁇ 8, but may be larger than 4 ⁇ 4, but is not limited thereto.
  • motion information of a block coded in an affine mode among the plurality of blocks may be derived as motion information of the motion information storage unit. Can be.
  • a control point of the block coded in the affine mode among the plurality of subblocks may be derived as motion information of the motion information storage unit.
  • the motion information of the subblock including the control point may be derived as the motion information of the control point.
  • a block coded in an affine mode includes a plurality of subblocks
  • the plurality of subblocks overlap the motion information storage unit, and a block including a control point among the plurality of subblocks does not exist.
  • the motion information of the subblock located at the top-left of the plurality of subblocks may be derived as the motion information of the motion information storage unit.
  • a block coded in an affine mode includes a plurality of subblocks, and the plurality of subblocks overlap the motion information storage unit, an average value or median value of motion information values of the plurality of subblocks is moved. It can be derived as a value of motion information of the information storage unit.
  • the temporal candidate is derived based on the motion information or the representative motion information stored for each motion information storage unit having a larger size than the subblock, the storage space occupied by the motion information can be reduced.
  • the decoding apparatus derives motion information of the current block based on the motion information candidate list (S1210).
  • the motion information of the current block may be derived from the motion information of the motion information storage unit when using a temporal candidate from the motion information candidate list based on the selection information.
  • the selection information can be obtained by decoding the bitstream.
  • the bitstream may be transmitted from the encoding device via a network or a storage medium.
  • the decoding apparatus derives the predicted block for the current block based on the derived motion information (S1220).
  • the predicted block may include a block having a high correlation with the current block in the affine candidate list.
  • the decoding apparatus reconstructs the current picture based on the predicted block (S1230).
  • the current picture may be reconstructed based on the predicted block and residual information.
  • the residual information may mean information about a difference between the predicted block and the current block, and may be obtained by decoding the bitstream.
  • the bitstream may be transmitted from the encoding device via a network or a storage medium.
  • the above-described method according to the present invention may be implemented in software, and the encoding device and / or the decoding device according to the present invention may perform image processing of, for example, a TV, a computer, a smartphone, a set-top box, a display device, and the like. It can be included in the device.
  • the above-described method may be implemented as a module (process, function, etc.) for performing the above-described function.
  • the module may be stored in memory and executed by a processor.
  • the memory may be internal or external to the processor and may be coupled to the processor by a variety of well known means.
  • the processor may include application-specific integrated circuits (ASICs), other chipsets, logic circuits, and / or data processing devices.
  • the memory may include read-only memory (ROM), random access memory (RAM), flash memory, memory card, storage medium and / or other storage device.

Abstract

La présente invention concerne un procédé de décodage vidéo comprenant les étapes consistant : à déduire une liste de candidats d'informations de mouvement d'un bloc courant sur la base de blocs voisins spatiaux et d'un bloc voisin temporel ; à déduire des informations de mouvement du bloc courant sur la base de la liste de candidats d'informations de mouvement ; à déduire un bloc prédit pour le bloc courant sur la base des informations de mouvement déduites ; et à reconstruire une image courante sur la base du bloc prédit, la liste de candidats d'informations de mouvement comprenant un candidat temporel, le candidat temporel étant déduit sur la base du bloc voisin temporel à l'intérieur d'une image de référence, l'image de référence comprenant une pluralité d'unités de stockage d'informations de mouvement, et le candidat temporel étant déduit sur la base d'informations de mouvement d'une unité de stockage d'informations de mouvement dans laquelle se trouve le bloc voisin temporel dans l'image de référence.
PCT/KR2019/004401 2018-04-15 2019-04-12 Procédé et appareil pour réduire un espace de stockage pour des informations de mouvement dans un système de traitement vidéo WO2019203504A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201862657900P 2018-04-15 2018-04-15
US62/657,900 2018-04-15

Publications (1)

Publication Number Publication Date
WO2019203504A1 true WO2019203504A1 (fr) 2019-10-24

Family

ID=68239664

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2019/004401 WO2019203504A1 (fr) 2018-04-15 2019-04-12 Procédé et appareil pour réduire un espace de stockage pour des informations de mouvement dans un système de traitement vidéo

Country Status (1)

Country Link
WO (1) WO2019203504A1 (fr)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170045264A (ko) * 2014-10-27 2017-04-26 후아웨이 테크놀러지 컴퍼니 리미티드 이미지 예측 방법 및 관련 장치
WO2017156705A1 (fr) * 2016-03-15 2017-09-21 Mediatek Inc. Prédiction affine pour le codage vidéo
WO2017171107A1 (fr) * 2016-03-28 2017-10-05 엘지전자(주) Procédé de traitement d'image basé sur un mode d'inter-prédiction, et appareil associé
KR20170115969A (ko) * 2016-04-08 2017-10-18 한국전자통신연구원 움직임 예측 정보를 유도하는 방법 및 장치
WO2018067823A1 (fr) * 2016-10-05 2018-04-12 Qualcomm Incorporated Prédiction de vecteur de mouvement destinée à des modèles de mouvement affine dans un codage vidéo

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170045264A (ko) * 2014-10-27 2017-04-26 후아웨이 테크놀러지 컴퍼니 리미티드 이미지 예측 방법 및 관련 장치
WO2017156705A1 (fr) * 2016-03-15 2017-09-21 Mediatek Inc. Prédiction affine pour le codage vidéo
WO2017171107A1 (fr) * 2016-03-28 2017-10-05 엘지전자(주) Procédé de traitement d'image basé sur un mode d'inter-prédiction, et appareil associé
KR20170115969A (ko) * 2016-04-08 2017-10-18 한국전자통신연구원 움직임 예측 정보를 유도하는 방법 및 장치
WO2018067823A1 (fr) * 2016-10-05 2018-04-12 Qualcomm Incorporated Prédiction de vecteur de mouvement destinée à des modèles de mouvement affine dans un codage vidéo

Similar Documents

Publication Publication Date Title
WO2020036417A1 (fr) Procédé de prédiction inter faisant appel à un vecteur de mouvement fondé sur un historique, et dispositif associé
WO2019194440A1 (fr) Procédé de codage d'image à l'aide d'une table de consultation de mode d'intraprédiction et appareil associé
WO2020017840A1 (fr) Procédé et dispositif pour exécuter une prédiction inter sur la base d'un dmvr
WO2017052118A1 (fr) Procédé et dispositif de prédiction intra dans un système de codage d'image
WO2019194507A1 (fr) Procédé de codage d'image basé sur une prédiction de mouvement affine, et dispositif associé
WO2020009390A1 (fr) Procédé et dispositif de traitement d'image selon une prédiction inter dans un système de codage d'image
WO2020141928A1 (fr) Procédé et appareil de décodage d'image sur la base d'une prédiction basée sur un mmvd dans un système de codage d'image
WO2020141932A1 (fr) Procédé et appareil de prédiction inter utilisant des mmvd de cpr
WO2019209026A1 (fr) Procédé et appareil d'interprédiction dans un système de codage vidéo
WO2020141886A1 (fr) Procédé et appareil d'inter-prédiction basée sur un sbtmvp
WO2020013480A1 (fr) Procédé de codage de mode d'intra-prédiction et dispositif associé
WO2019212230A1 (fr) Procédé et appareil de décodage d'image à l'aide d'une transformée selon une taille de bloc dans un système de codage d'image
WO2020251338A1 (fr) Prédiction inter dans un système de codage de vidéo ou d'image
WO2020141884A1 (fr) Procédé et appareil de codage d'image en utilisant une mmvd sur la base d'un cpr
WO2020004879A1 (fr) Procédé et dispositif de décodage d'image selon une prédiction inter à l'aide d'une pluralité de blocs voisins dans un système de codage d'image
WO2019225932A1 (fr) Procédé et appareil de décodage d'image à l'aide de dmvr dans un système de codage d'images
WO2019203533A1 (fr) Procédé d'inter-prédiction en fonction de modèles de mouvement multiples et dispositif correspondant
WO2019199071A1 (fr) Procédé et dispositif de décodage d'image selon l'interprédiction dans un système de codage d'image
WO2020145656A1 (fr) Procédé et dispositif pour signaler si un candidat de prédiction temporelle par vecteur de mouvement (tmvp) est disponible
WO2020251339A1 (fr) Procédé et dispositif de codage d'image/vidéo basés sur une bi-prédiction
WO2020017841A1 (fr) Procédé et appareil pour réaliser une inter-prédiction sur la base du mode de fusion
WO2019203513A1 (fr) Procédé et appareil de décodage d'image selon une prédiction inter à l'aide de dmvd dans un système de codage d'image
WO2019212223A1 (fr) Procédé de décodage d'image à l'aide d'un dmvr dans un système de codage d'image et dispositif associé
WO2020040439A1 (fr) Procédé et dispositif de prédiction intra dans un système de codage d'image
WO2019194435A1 (fr) Procédé de codage d'image faisant appel à un tmvp et appareil associé

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19788010

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19788010

Country of ref document: EP

Kind code of ref document: A1