WO2019135457A1 - 움직임 예측에 의한 패딩 기법을 이용한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 - Google Patents

움직임 예측에 의한 패딩 기법을 이용한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 Download PDF

Info

Publication number
WO2019135457A1
WO2019135457A1 PCT/KR2018/007812 KR2018007812W WO2019135457A1 WO 2019135457 A1 WO2019135457 A1 WO 2019135457A1 KR 2018007812 W KR2018007812 W KR 2018007812W WO 2019135457 A1 WO2019135457 A1 WO 2019135457A1
Authority
WO
WIPO (PCT)
Prior art keywords
outline
block
image
information
encoding unit
Prior art date
Application number
PCT/KR2018/007812
Other languages
English (en)
French (fr)
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 삼성전자 주식회사
Priority to KR1020207017845A priority Critical patent/KR20200096551A/ko
Publication of WO2019135457A1 publication Critical patent/WO2019135457A1/ko

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/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/563Motion estimation with padding, i.e. with filling of non-object values in an arbitrarily shaped picture block or region for estimation purposes
    • 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/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/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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures

Definitions

  • the image can be encoded or decoded using peripheral information of the reference image.
  • an inter prediction method for predicting a current image using a previous image or a next image is used during a video encoding / decoding process on the assumption that the content of the current image is similar to the previous or next image of the current image.
  • Inter prediction can also be performed for each block.
  • the distance between the current block and the closest block among the blocks of other images can be expressed mainly as a motion vector. It is possible to predict the sample values of the current block by using the motion vector determined by the inter prediction.
  • sample values of a current block can be predicted using a sample value of a block (reference block) that is separated from a current block by a motion vector.
  • a video encoding method comprising: obtaining prediction information of blocks adjacent to an inside of an outline of a reference image when a current block refers to an out-of-bounds region of the reference image in motion reference; Determining reference samples for predicting samples located outside the outline of the reference image using prediction information of a block adjacent to the outline; And determining the samples located outside the outline of the reference image using the reference samples.
  • the reference samples may be located in an image.
  • the prediction information is inter-prediction information of a block adjacent to the outline, and the inter-prediction information may include at least one of a reference picture list, a reference index, and a motion vector.
  • the reference picture list of the inter prediction information indicates the L0 reference list and the L1 reference list
  • the motion vector of the L0 reference list and the areas of the areas indicated by the motion vectors of the L1 reference list the predictive information corresponding to the motion vector of the L0 reference list and the predictive information corresponding to the motion vector of the L1 reference list are used for a region of a smaller size among the neighboring regions, the reference samples can be determined in a linear manner.
  • the motion vector of the L0 reference list and the motion vector of the L1 reference list are shifted in the outward direction of the area indicated by the first motion vector
  • the reference samples may be determined using the prediction information excluding the prediction information corresponding to the first motion vector when the neighboring region is outside the image.
  • the reference picture list of the inter prediction information indicates the L0 reference list and the L1 reference list
  • the motion vector of the L0 reference list and the motion vector of the L1 reference list are shifted in the outward direction of the area indicated by the first motion vector
  • the reference samples can be generated using the samples adjacent to the inside of the outline of the reference image.
  • the prediction information may be intra mode information of a block adjacent to the inside of the outline, and the reference samples may be determined from samples in the reference image according to the intra mode information.
  • the prediction information is information on a characteristic of a block adjacent to the outline, and the reference samples may be determined according to information on the characteristic.
  • the prediction information may include affine mode information, and the reference samples may be determined according to the affine mode information.
  • the characteristics of the block adjacent to the inside of the outline may be determined using one of a gradient and an edge detection.
  • the prediction information may include a characteristic of a block adjacent to the inside of the outline Information.
  • a block related to a block adjacent to the contour line may be determined by a template matching method, and the prediction information may include prediction information of the related block.
  • the reference image is one of a plurality of images combined according to a 360-degree image format, if prediction information of a block adjacent to an inside of an outline of the reference image exists, It is possible to generate sample values of an area outside the outline.
  • the 360 degree image may be generated by one of Rotated Sphere Projection (RSP), Equirectangular Projection (ERP), Icosahedral Projection (ISP), Segmented Sphere Projection (SSP), CubeMap Projection (CMP), Equal Area Cube Map .
  • RSP Rotated Sphere Projection
  • ERP Equirectangular Projection
  • ISP Icosahedral Projection
  • SSP Segmented Sphere Projection
  • CMP CubeMap Projection
  • a video decoding method comprising: obtaining prediction information of blocks adjacent to an inside of an outline of a reference image when a current block refers to an out-of-bounds region of the reference image in motion reference; Determining reference samples for predicting samples located outside the outline of the reference image using prediction information of a block adjacent to the outline; And determining the samples located outside the outline of the reference image using the reference samples.
  • a video encoding apparatus including: a prediction information obtaining unit that obtains prediction information of blocks adjacent to an inside of an outline of a reference image, when a current block refers to an out-of- A reference sample determining unit for determining reference samples for predicting samples located outside the outline of the reference image using prediction information of a block adjacent to the inside of the outline; And an outer sample determination unit for determining a sample located outside the outline of the reference image using the reference samples.
  • a video decoding apparatus comprising: a prediction information obtaining unit that obtains prediction information of blocks adjacent to an inside of an outline of a reference image, when a current block refers to an out-of- A reference sample determining unit for determining reference samples for predicting samples located outside the outline of the reference image using prediction information of a block adjacent to the inside of the outline; And an outer sample determination unit for determining a sample located outside the outline of the reference image using the reference samples.
  • a video encoding method acquires motion information and intra mode information of contour blocks adjacent to an inside of an outline of a reference image when a current block refers to an out-of- ; Determining reference samples for predicting samples located outside an outline of the reference image using motion information and intra mode information of an outline block adjacent to the outline; And determining the samples located outside the outline of the reference image using the reference samples.
  • the video coding method further comprises the step of determining a first weight of the motion information of the outline block and a second weight of the intra mode information of the outline block, the determined first weight and the second weight, Information, and the intra mode information to determine the reference samples.
  • the reference samples are determined using the motion information of the outline block and the neighboring outline blocks adjacent to the outline in the case where there is no motion information of the outline block or the motion information is a zero motion vector,
  • the reference samples can be determined using only information.
  • the reference samples are determined using the motion information of the outline block and surrounding outline blocks adjacent to the inside of the outline and the intra mode information of the outline block .
  • the video encoding method comprising the steps of: determining a difference between motion information of the outline block and motion information of the outline block and neighboring outline blocks adjacent to the outline; And determining a first weight of the motion information of the peripheral outline block and a second weight of the intra mode information of the outline block if the difference is greater than a predetermined threshold, 1 < / RTI > weight and the second weight, the motion information, and the intra mode information.
  • the video decoding method obtains motion information and intra mode information of contour blocks adjacent to an inside of the outline of the reference image when the current block refers to an out-of-bounds area of the reference image in motion reference step; Determining reference samples for predicting samples located outside an outline of the reference image using motion information and intra mode information of an outline block adjacent to the outline; And determining the samples located outside the outline of the reference image using the reference samples.
  • the video encoding apparatus acquires motion information and intra mode information of contour blocks adjacent to the inside of the outline of the reference image when the current block refers to an area outside the outline of the reference image in motion reference
  • An information acquisition unit A reference sample determining unit for determining reference samples for predicting samples located outside the outline of the reference image using motion information and intra mode information of an outline block adjacent to the outline; And an outer sample determination unit for determining samples located outside the outline of the reference image using the reference samples.
  • the video decoding apparatus acquires motion information and intra mode information of contour blocks adjacent to the inside of the outline of the reference image when the current block refers to an area outside the outline of the reference image in motion reference
  • An information acquisition unit A reference sample determining unit for determining reference samples for predicting samples located outside the outline of the reference image using motion information and intra mode information of an outline block adjacent to the outline; And an outer sample determination unit for determining samples located outside the outline of the reference image using the reference samples.
  • a video encoding apparatus includes: a memory; And acquiring motion information and intra mode information of contour blocks adjacent to an inside of an outline of the reference image when the current block refers to an out-of-frame area of the reference image in motion reference; Determining reference samples for predicting samples located outside an outline of the reference image using motion information and intra mode information of an outline block adjacent to the outline; And a processor for determining an outer sample to determine samples located outside the outline of the reference image using the reference samples, wherein the processor is interconnected with the memory to perform a video decoding operation.
  • a video decoding apparatus includes: a memory; And acquiring motion information and intra mode information of contour blocks adjacent to an inside of an outline of the reference image when the current block refers to an out-of-frame area of the reference image in motion reference; Determining reference samples for predicting samples located outside an outline of the reference image using motion information and intra mode information of an outline block adjacent to the outline; And a processor for determining an outer sample to determine samples located outside the outline of the reference image using the reference samples, wherein the processor is interconnected with the memory to perform a video decoding operation.
  • FIG. 1A shows a flowchart of a padding method of an image outside region using prediction information according to an exemplary embodiment.
  • FIG. 1B is a flowchart illustrating a method of predicting a motion of an outer region of a reference image using prediction information according to another embodiment.
  • 1C is a flowchart of a padding method of an image outside region using motion information and intra mode information according to another embodiment.
  • FIG. 2A illustrates a block diagram of an image padding apparatus using prediction information according to an embodiment.
  • FIG. 2B is a block diagram of a motion prediction apparatus to which a padding method of a reference image outer region using prediction information is applied according to another embodiment.
  • 2C is a block diagram of a motion prediction apparatus to which a padding method of a reference image outside region using motion information and intra mode information according to another embodiment is applied.
  • FIG. 3 illustrates a method of padding an outer region of a reference image according to a conventional padding method.
  • 4A illustrates a method of padding an outer region of a reference image using inter information according to an embodiment.
  • 4B illustrates a method of padding an outer region of a reference image using intra information according to an exemplary embodiment of the present invention.
  • 4C illustrates a method of padding an outer region of a reference image using motion information and intra mode information according to an exemplary embodiment of the present invention.
  • FIG. 5 shows an example of a reference image to which a conventional padding method is applied.
  • FIG. 6 illustrates an example of a reference image to which the padding method according to an embodiment is applied.
  • FIG. 7 shows an example of a 360-degree image to which the conventional padding method is applied.
  • FIG. 8 illustrates an example of a reference image of a 360-degree image to which a padding method of a reference image outside region according to an embodiment is applied.
  • FIG. 9 illustrates an example of a reference image of a 360-degree image to which a padding method of a reference image outside area is applied according to another embodiment.
  • 10A is a block diagram of a video encoding apparatus to which a padding method of a reference image outside region using prediction information according to an embodiment is applied.
  • FIG. 10B is a block diagram of a video decoding apparatus to which a padding method of a reference image outside region using prediction information according to an embodiment is applied.
  • FIG. 11 illustrates a process in which an image decoding apparatus determines at least one encoding unit by dividing a current encoding unit according to an embodiment.
  • FIG. 12 illustrates a process in which an image decoding apparatus determines at least one encoding unit by dividing a non-square encoding unit according to an embodiment.
  • FIG. 13 illustrates a process in which an image decoding apparatus divides an encoding unit based on at least one of information on a block format information and a format mode according to an embodiment.
  • FIG. 14 illustrates a method for an image decoding apparatus to determine a predetermined encoding unit among odd number of encoding units according to an embodiment.
  • FIG. 15 illustrates a sequence in which a plurality of coding units are processed when an image decoding apparatus determines a plurality of coding units by dividing a current coding unit according to an embodiment.
  • 16 illustrates a process of determining that the current encoding unit is divided into odd number of encoding units when the image decoding apparatus can not process the encoding units in a predetermined order according to an embodiment.
  • FIG. 17 illustrates a process in which an image decoding apparatus determines at least one encoding unit by dividing a first encoding unit according to an embodiment.
  • FIG. 18 is a diagram illustrating an example in which when the non-square second encoding unit determined by dividing the first encoding unit by the image decoding apparatus satisfies a predetermined condition, a form in which the second encoding unit can be divided is limited Lt; / RTI >
  • FIG. 19 illustrates a process in which an image decoding apparatus divides a square-shaped encoding unit when the information on the split mode mode can not be divided into four square-shaped encoding units according to an exemplary embodiment.
  • FIG. 20 illustrates that a processing order among a plurality of coding units may be changed according to a division process of coding units according to an embodiment.
  • FIG. 21 illustrates a process in which the depth of an encoding unit is determined according to a change in type and size of an encoding unit when a plurality of encoding units are determined by recursively dividing an encoding unit according to an exemplary embodiment.
  • FIG. 22 illustrates a depth index (hereinafter referred to as a PID) for classifying a depth and a coding unit that can be determined according to the type and size of coding units according to an exemplary embodiment.
  • a PID depth index
  • FIG. 23 illustrates that a plurality of coding units are determined according to a plurality of predetermined data units included in a picture according to an embodiment.
  • FIG. 24 shows a processing block serving as a reference for determining a determination order of reference encoding units included in a picture according to an embodiment.
  • part used in the specification means software or hardware component, and "part " However, “part” is not meant to be limited to software or hardware. “Part” may be configured to reside on an addressable storage medium and may be configured to play back one or more processors.
  • part (s) refers to components such as software components, object oriented software components, class components and task components, and processes, Subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays and variables.
  • the functions provided in the components and “parts " may be combined into a smaller number of components and” parts " or further separated into additional components and “parts ".
  • processor may be embodied in a processor and memory.
  • the term “processor” should be broadly interpreted to include a general purpose processor, a central processing unit (CPU), a microprocessor, a digital signal processor (DSP), a controller, a microcontroller, a state machine, In some circumstances, a “processor” may refer to an application specific integrated circuit (ASIC), a programmable logic device (PLD), a field programmable gate array (FPGA)
  • ASIC application specific integrated circuit
  • PLD programmable logic device
  • FPGA field programmable gate array
  • processor refers to a combination of processing devices, such as, for example, a combination of a DSP and a microprocessor, a combination of a plurality of microprocessors, a combination of one or more microprocessors in conjunction with a DSP core, It can also be called.
  • memory should be broadly interpreted to include any electronic component capable of storing electronic information.
  • the terminology memory may be any suitable memory such as random access memory (RAM), read-only memory (ROM), non-volatile random access memory (NVRAM), programmable read-only memory (PROM), erase- May refer to various types of processor-readable media such as erasable programmable read-only memory (PROM), flash memory, magnetic or optical data storage devices, registers, and the like.
  • RAM random access memory
  • ROM read-only memory
  • NVRAM non-volatile random access memory
  • PROM programmable read-only memory
  • erase- May to various types of processor-readable media such as erasable programmable read-only memory (PROM), flash memory, magnetic or optical data storage devices, registers, and the like.
  • a memory is said to be in electronic communication with a processor if the processor can read information from and / or write information to the memory.
  • the memory integrated in the processor is in electronic communication with the processor.
  • the "image” may be a static image such as a still image of a video or a dynamic image such as a moving image, i.e., the video itself.
  • sample means data to be processed as data assigned to a sampling position of an image.
  • pixel values in the image of the spatial domain, and transform coefficients on the transform domain may be samples.
  • a unit including at least one of these samples may be defined as a block.
  • the "padding” operation refers to an operation of copying a sample value of another pixel to generate a sample value of the current pixel.
  • FIG. 1A shows a flowchart of a padding method of an image outside region using prediction information according to an exemplary embodiment.
  • the current block means the block of the current image
  • the reference block means the block indicated by the motion vector of the current image in the reference image of the current image.
  • step s10 prediction information of a current block adjacent to an outline of a current image is obtained.
  • An image padding method attempts to predict a sample value of an outer region located outside an outline of a current image using prediction information of a current block when prediction information of a current block exists.
  • the reference samples for predicting the samples located outside the outline of the current block can be determined using the prediction information of the current block in step s12.
  • Reference samples may be located within the current or reference image.
  • the samples located outside the outline of the current image, which are adjacent to the current block using the reference samples determined in step s12, may be determined. As a result, the samples located in the outer region of the current image can be padded.
  • the prediction information of the motion prediction method to which the padding method of the reference region is applied may be intra prediction information of a neighboring block or intra mode information of a neighboring block or may be affine motion information of neighboring blocks.
  • the inter prediction information of a current block used for padding of an image outside area may include at least one of a reference picture list, a reference index, and a motion vector. More specifically, the reference image of the current block can be determined using the inter prediction information. The reference image may be determined from among the images included in at least one of the reference list of the current block, i.e., the L0 list and the L1 list. The position indicated by the motion vector of the current block among the blocks of the reference image may be the position of the reference block.
  • the reference picture list of the inter prediction information may indicate at least one of the L0 reference list and the L1 reference list.
  • one reference image among the images included in the L0 reference list can be determined using the L0 reference index.
  • one reference image among the images included in the L1 reference list can be determined using the L1 reference index.
  • the image padding method may use the neighboring blocks of the reference block determined according to the inter prediction information of the current block to padd the samples outside the outline of the current image. That is, the samples of the pixels included in the neighboring block of the reference block indicated by the motion vector of the current block may be determined as reference samples, and the sample values of the image outside region adjacent to the current block may be determined using the reference samples.
  • the outer samples of the current block can be determined using reference samples of neighboring blocks adjacent to the left side of the reference block of the current block.
  • the outer samples of the current block can be determined using reference samples of neighboring blocks adjacent to the upper side of the reference block of the current block.
  • the outer samples of the current block can be determined using reference samples of neighboring blocks adjacent to the right side of the reference block of the current block.
  • the outer samples of the current block can be determined using the reference samples of the neighboring block below the reference block of the current block.
  • the reference samples can be determined using the remaining prediction information excluding the prediction information corresponding to the motion vector.
  • samples adjacent to the outline among the samples of the current block are determined as reference samples, The image outside area can be padded.
  • reference samples for padding the outer region can be determined according to the intra mode information of the current block.
  • the intra mode information of the current block used for padding of the out-of-picture area may be an intra prediction mode indicating a direction of neighboring samples referred to predict a sample of the current block.
  • the intra-prediction mode may include 33 directional prediction modes, a DC mode, and a planar mode.
  • the present invention is not limited thereto, and the direction prediction mode of the intra prediction mode can be subdivided into 62 direction prediction modes.
  • the intra-prediction mode may include at least one of a DC mode, a vertical mode, a horizontal mode, a planar mode, a diagonal mode in an upper left and lower right direction, and a diagonal mode in an upper right and lower left direction .
  • the samples in the current image which are located according to the direction indicated by the intra prediction mode of the current block, can be determined as reference samples for padding the outer sample.
  • a method of padding an image outside area according to the intra prediction mode of the current block will be described later with reference to FIG. 4B.
  • the characteristics of a block adjacent to an outline may be determined using a method such as gradient, edge detect, etc.
  • the prediction information may include information on the characteristics of the block adjacent to the outline . ≪ / RTI >
  • a method of padding an outer region of an image may be applied. More specifically, a method of padding a reference block when a reference block for motion prediction is located outside the reference image will be described below with reference to FIGS. 1B and 2B.
  • a conventional padding method can be used to generate reference samples values. That is, at the time of in-loop filtering, a reference sample can be generated by copying samples inside an image adjacent to a reference sample around a video outline to padding a reference sample located outside the image .
  • a padding method for an image outside region can find a block related to a current block through template matching, and can perform padding using a related block.
  • Template matching is a method of determining a template area of a certain type surrounding a block and determining that a block surrounded by the detected area is a similar block of the block when the closest area to the template area is detected in the reference image. Accordingly, if template matching is applied to the padding method according to the present disclosure, the following procedure can be followed. If the current block is adjacent to the outline of the current image, a template of the current block in the current image may be determined, and a block surrounded by the area detected by template matching may be determined as a similar block of the current block. The sample values of the block adjacent to the pseudo block of the current block can be determined as the sample values for padding the image outside region adjacent to the current block.
  • FIG. 1B shows a flowchart of an applied motion prediction method of a padding method of a reference image outside region according to an embodiment.
  • a reference block for inter prediction of a current block is divided into sub- Prediction information of at least one block adjacent to the inside of the outline of the reference image is obtained.
  • the motion vector of the current block can be determined by inter prediction of the current block.
  • the sample value of the current block can be compensated using the sample value of the reference block, that is, the area indicated by the motion vector of the current block.
  • the motion vector is 'unavailable' Is defined.
  • the motion prediction method includes the steps of acquiring prediction information of another block adjacent to an inside of an outline of a reference image when a motion vector of the current block indicates an area outside the outline of the reference image, To estimate the sample values of the reference block located outside the outline.
  • the reference image may be determined from among the images included in at least one of the reference list of the current block, i.e., the L0 list and the L1 list.
  • the position indicated by the motion vector of the current block among the blocks of the reference image may be the position of the reference block.
  • the positions of all the pixels included in the reference block may be located outside the outline of the reference image. Or the position of some pixels included in the reference block may be located outside the outline of the reference image.
  • the reference samples used for predicting the samples located outside the outline of the reference image are determined using the prediction information of the block adjacent to the inside of the outline of the reference image in step s13.
  • the samples located outside the outline of the reference image are determined using the determined reference samples.
  • a reference picture selected from a reference list of a current block is referred to as a 'current reference picture', and a reference block or a region indicated by a current block motion vector in a 'current reference picture' Reference block " and " current reference region ".
  • an image for predicting a sample located outside the outline of the current reference image (hereinafter referred to as an "external sample”) is referred to as a reference image by prediction information of a block adjacent to the inside of the outline of the current reference image it means.
  • the prediction information of the motion prediction method to which the padding method of the reference image outside region is applied may be determined based on the inter prediction information of the block adjacent to the inside of the outline of the current reference image or the intra prediction mode of the block adjacent to the inside of the outline of the current reference image, Information.
  • inter prediction information among prediction information of adjacent blocks in the outline may be used.
  • the 'image for predicting the external samples' of the current reference image can be determined from the images included in at least one of the reference list of the 'block adjacent to the inside of the outline' of the current reference image, that is, the L0 list and the L1 list.
  • the reference block of the 'block adjacent to the outline' can be determined based on the position indicated by the motion vector of the 'block adjacent to the outline' within the 'reference image for predicting the external samples'.
  • Outer samples of the current reference image can be predicted using samples adjacent in the outline direction of the 'reference image of a block adjacent to the outline' among the samples adjacent to the reference block of the 'block adjacent to the inside of the outline'
  • Reference samples for padding outer samples may be located within an image for predicting outer samples.
  • the outer samples can be padded using the samples adjacent to the inside of the outline of the current reference image.
  • the outer samples may be samples of the pixels included in the reference block of the current block.
  • some pixels included in the reference block of the current block may be padded with samples of some pixels, i.e., the outer samples.
  • the prediction information of the block adjacent to the inside of the outline may include the affine mode information, and the affine mode information , It is possible to determine reference samples for predicting outer samples of the current reference image.
  • the inter prediction information of a block adjacent to the inside of the outline of the current reference image may include at least one of a reference picture list, a reference index, and a motion vector .
  • a reference picture list an image indicated by the reference index in the reference picture list of a block adjacent to the inside of the outline of the current reference image is determined as a reference image for predicting the external samples.
  • the position indicated by the motion vector of the block adjacent to the inside of the outline of the reference image among the reference images for predicting the external samples can be determined as a block to be a reference object.
  • Neighboring samples of a block to be referred to can be determined as samples for predicting external samples, i.e., samples located outside the outline of the current reference image.
  • the inter prediction information of the block adjacent to the inside of the left outline is determined.
  • Blocks or samples located outside the left outline of the current reference image may be predicted using neighboring blocks or samples adjacent to the left side of the reference block in the determined image.
  • the inter prediction information of the block adjacent to the inside of the upper outline The reference block in the image and the image is determined. Blocks or samples located outside the upper outline of the current reference image may be predicted using neighboring blocks or samples adjacent to the upper side of the reference block in the determined image.
  • Blocks or samples located outside the right outline of the current reference image may be predicted using neighboring blocks or samples adjacent to the right side of the reference block within the determined image.
  • a reference block in a video and an image to be a reference of a block adjacent to the inside of the outline is determined.
  • a block or samples located outside the lower outline of the current reference image may be predicted using neighboring blocks or samples that are adjacent to the lower side of the reference block in the determined image.
  • a reference picture list of inter prediction information of a block adjacent to an inside of an outline of a current reference picture includes at least one of an L0 reference list and an L1 reference list Can point to.
  • an L0 reference list of a block adjacent to an inside of an outline of a current reference image an image indicated by the L0 reference index of a block adjacent to the inside of the outline of the current reference image among the images included in the L0 reference list is referred to
  • the L0 image for predicting the samples located outside the outline of the image can be determined.
  • an L1 reference list of a block adjacent to an inside of an outline of a current reference image an image indicated by an L1 reference index of a block adjacent to the inside of the outline of the current reference image among the images included in the L1 reference list, It is possible to determine the L1 image for predicting the samples located outside the outline of the reference image. If the position of the block neighboring the outline of the block indicated by the L1 motion vector of the block adjacent to the inside of the current reference image is located outside the L1 image for predicting the samples located outside the outline, Samples located outside the outline may be padded with the sample values within the outline of the current reference image.
  • Prediction mode according to the Bi-prediction mode available for the L0 reference list and the L1 reference list of the block adjacent to the inside of the outline of the current reference image the reference image according to the L0 reference list of the block adjacent to the inside of the outline
  • the samples of the reference image according to the L1 reference list the outer samples of the current reference image can be predicted.
  • the L0 reference image in the L0 reference list of the block adjacent to the inside of the current reference image is determined to be an image for predicting a sample outside the outline, and among the L0 reference images, the L0 motion vector The L0 reference block can be determined.
  • the L1 reference picture of the L1 reference list of the block adjacent to the inside of the current reference picture is an image for predicting the sample outside the outline, and the L1 motion vector Lt; / RTI > reference block may be determined.
  • the neighboring samples of the L0 reference block in the L0 reference image of the block adjacent to the inside of the outline and the neighboring samples of the L1 reference block in the L1 reference image can be used to predict the outer samples of the current reference image. For example, using the weight based on the distance between the current reference image and the L0 reference image and the distance based on the distance between the current reference image and the L1 reference image, weights of neighboring samples of the L0 reference block and neighboring samples of the L1 reference block May be determined to be the value of the outer samples of the current reference image.
  • the inter prediction according to the Bi-prediction mode is performed on the block adjacent to the inside of the outline of the current reference image, and the area indicated by one of the L0 motion vector and the L1 motion vector of the block adjacent to the inside of the outline of the current reference image (Case 1), the prediction information excluding the prediction information corresponding to the motion vector of the case 1 is used in the case of being located outside the image for predicting the samples located outside the outline Reference samples for padding samples located outside the outline of the current reference image can be determined.
  • Another example is a case where an area neighboring the outline of the area indicated by the L0 motion vector and the L1 motion vector of the block adjacent to the inside of the current reference image is located outside the image for predicting the samples located outside the outline It is possible to padd samples located outside the outline of the reference image using the samples touched inside the outline of the current reference image.
  • the reference samples may be padded using the samples in the reference image according to intra mode information of a block adjacent to the inside of the outline.
  • the intra mode information of a block adjacent to an inside of an outline of a current reference image used for padding of a reference image outside region may be predicted by predicting a sample of a block adjacent to an inside of an outline of a current reference image, Prediction mode indicating the direction to be referred to from neighboring samples in order to be able to reproduce an image.
  • inter prediction according to the Bi-prediction mode available for the L0 reference list and the L1 reference list of the block adjacent to the current reference image is performed, and L0
  • the reference image of the motion vector indicating the smaller one of the two neighboring areas is determined as an image for predicting samples located outside the outline of the reference image, and neighboring samples of the L0 reference block in the determined image and neighboring samples of the L1 reference block in the L1 reference image are used, Samples can be predicted.
  • inter prediction according to the Bi-prediction mode is performed on a block adjacent to an inside of an outline of a current reference image, and L0 motion vectors and L1 motion vectors
  • the reference image of the motion vector pointing to the smaller one of the two neighboring regions is the sample located outside the outline of the current reference image It can be determined as an image to be predicted. Neighbor samples of the L0 reference block within the determined image and neighbor samples of the L1 reference block within the L1 reference image may be used.
  • One of neighboring areas outside the outline of the areas indicated by the L0 motion vector and the L1 motion vectors of the block adjacent to the inside of the outline of the current reference image is an image for predicting the samples located outside the outline of the current reference image
  • the other indicates the outside of the image for predicting the samples located outside the outline of the current reference image
  • the remaining motion vector excluding the motion vector indicating the outside of the image for prediction is used So that the outer samples of the current reference image can be predicted.
  • inter prediction according to the Bi-prediction mode is performed on a block adjacent to an inside of an outline of a current reference image, and L0 motion vectors and L1 motion vectors
  • the reference image of the motion vector pointing to the smaller one of the two neighboring regions is the sample located outside the outline of the current reference image It can be determined as an image to be predicted. Neighbor samples of the L0 reference block within the determined image and neighbor samples of the L1 reference block within the L1 reference image may be used.
  • One of neighboring areas outside the outline of the areas indicated by the L0 motion vector and the L1 motion vectors of the block adjacent to the inside of the outline of the current reference image is an image for predicting the samples located outside the outline of the current reference image And the other pointing to the outside of the image for predicting the samples located outside the outline of the current reference image, samples using the inside of the outline of the current reference image, Can be predicted.
  • the outer samples of the current reference image can be determined.
  • the samples used to predict the outer samples of the current reference image may be a predetermined size.
  • the predetermined size may be the size of the padding area outside the image for predicting the outer samples and may be one-half the size of the padding area.
  • the predetermined size may be determined differently depending on the motion information, the size of the padding area, the picture size, and the like.
  • the size of the region of the samples to be used may be a maximum size that can be used for the image internal region to be predicted and a predetermined size may be used for the image outside region to be predicted. If the determined size is 0, the external samples can be determined using the samples adjacent to the inside of the outline of the current reference image.
  • a reference sample for padding an outer area of an outline of a reference image may be determined from a block in a reference image according to intra mode information of a motion estimation method to which a padding method of a reference image outer area according to an embodiment is applied.
  • the intra mode information of a block adjacent to an inside of an outline of a current reference image used for padding of a reference image outside region may be predicted by predicting a sample of a block adjacent to an inside of an outline of a current reference image, Prediction mode indicating the direction of neighboring samples to be referred to in order to determine the direction of neighboring samples.
  • the characteristics of the block adjacent to the inside of the outline of the current reference image may be determined using a method such as gradient, edge detection, etc.
  • Prediction information of the blocks adjacent to each other may include information on the characteristics of blocks adjacent to the outline.
  • a method of padding a reference block according to intra information of a block adjacent to an inside of an outline of a current reference image will be described with reference to FIG. 4B.
  • a motion estimation method to which a padding method of an outer region of a reference image is applied is to find a block related to a block adjacent to an inside of an outline of a current reference image through a template matching method, Padding can be performed by using.
  • template matching is applied to the padding method of the reference image outside region according to the present disclosure, the following procedure can be followed.
  • the reference block of the current block is out of the reference image, the template of the boundary block within the reference image adjacent to the reference block is determined, and the block surrounded by the area detected by the template matching is determined as the similar block of the boundary block .
  • the reference block of the current block can be padded using the sample values of the block adjacent to the pseudo block of the boundary block.
  • 1C illustrates a flow diagram of a padding method of a reference image outer region using both motion information and intra information according to an embodiment.
  • step s16 the current block is divided into an area Motion information and intra mode information of contour blocks adjacent to the contour line of the reference image are acquired.
  • the motion information (motion vector) of the outline block can be determined by inter prediction of the outline block.
  • the padding method according to the present invention obtains motion information and intra mode information of other blocks adjacent to the inside of the outline of a reference image when the motion vector of the current block indicates an out-of-line area of the reference image, We try to predict the sample values of the reference block located outside the outline by using the sample values indicated by the intra mode information.
  • the reference image may be determined from among the images included in at least one of the reference list of the current block, i.e., the L0 list and the L1 list.
  • the position indicated by the motion vector of the current block among the blocks of the reference image may be the position of the reference block.
  • the positions of all the pixels included in the reference block may be located outside the outline of the reference image. Or the position of some pixels included in the reference block may be located outside the outline of the reference image.
  • step s17 reference samples for predicting the samples located outside the outline of the reference image are determined using the motion information and intra mode information of the outline block adjacent to the outline.
  • step S18 the samples located outside the outline of the reference image are determined using the reference samples.
  • the weights of the motion information and the intra mode information of the outline block can be determined.
  • the reference samples may be determined using motion information, intra mode information, and respective weights. For example, the weight of the reference sample determined using motion information is determined as a, the weight of the reference sample determined using the intra mode information is determined as b, and the final reference sample is a * (reference determined using motion information Sample) + b * (reference sample determined using intra mode information).
  • the weights of the reference samples are determined in an encoding step and can be encoded and signaled, respectively.
  • the weights may be received in the decoding step and the final reference samples may be determined using the weights.
  • weights of the reference samples may be a predefined value.
  • the weights of the reference samples may be signaled on a picture level basis.
  • the weights may be included in a picture parameter set and signaled.
  • a block adjacent to the inside of the outline of the reference image of the current block is referred to as an " outline block ", and a block adjacent to the outline of the reference image and adjacent to the &Quot; outline block ".
  • the reference samples may be determined using the motion information of the surrounding outline block, and the samples located outside the outline of the reference image may be predicted using the reference samples.
  • the reference samples are determined using only the intra mode information of the outline block, and the reference samples are used to determine the outline Externally located samples can be predicted.
  • the reference samples are determined using the motion information of the surrounding outline block and the intra mode information of the outline block, Samples that are located outside the outline of the reference image can be predicted using the samples.
  • the weight of the motion information of the surrounding outline block and the weight of the intra mode information of the outline block are respectively determined,
  • the reference samples are determined using the weight, the weight of the intra mode information, the motion information, and the intra information, and the samples located outside the outline of the reference image can be predicted using the reference samples.
  • the weight of the motion information of the surrounding outline block and the weight of the intra mode information of the outline block are Determines the reference samples using the weight of the motion information, the weight of the intra mode information, the motion information, and the intra information, and determines the reference samples to be located outside the outline of the reference image using the reference samples Samples can be predicted.
  • the determination of the reference sample using the motion information and the determination of the reference sample using the intra mode information may be determined in the manner described above with reference to FIG.
  • FIG. 2A illustrates a block diagram of an image padding apparatus using prediction information according to an embodiment.
  • an image padding apparatus 20 using prediction information includes a prediction information obtaining unit 22, a reference sample determining unit 24, and an external sample determining unit 26.
  • the image padding apparatus 20 using prediction information includes a central processor (not shown) for controlling the prediction information obtaining unit 22, the reference sample determining unit 24, and the external sample determining unit 26 can do.
  • the prediction information obtaining section 22, the reference sample determining section 24 and the external sample determining section 26 are operated by respective ones of the processors (not shown), and the processors (not shown)
  • the motion prediction apparatus to which the padding method of the reference region is applied can be operated as a whole.
  • the prediction information obtaining unit 22 of the image padding apparatus 20 using the prediction information can obtain the prediction information of the current block adjacent to the outline of the current image.
  • the reference sample determining unit 24 can use the prediction information of the current block to determine reference samples for predicting samples located outside the outline of the current block.
  • the outer sample determination unit 26 may determine samples located outside the outline of the current image adjacent to the current block using the reference samples.
  • the prediction information obtaining section 22 determines that the prediction information of the current block exists, Whether the pixel position is located in one of the upper left, upper right, lower left, and right lower sides of the current picture. If the prediction information of the current block exists and the pixel position of the outer region is not a position adjacent to one of the upper left side corner, the upper right side corner, the lower left side corner, and the lower right side corner of the current picture, the reference sample determination unit 24 It can be confirmed whether there is a neighboring sample of the reference block indicated by the prediction information of the current block.
  • the inter prediction information of the current block it can be confirmed whether neighbor samples neighboring the reference block among the reference images of the current block exist. If intraprediction information of the current block is used, it can be confirmed whether there is a neighboring sample located in a direction according to the intra prediction mode of the current block from the pixel position of the outer region, among the samples adjacent to the inside of the outline of the current image.
  • the sample value of the current area can be determined using the neighboring sample.
  • the sample value of the current image may be determined using the sample in the outline of the current image adjacent to the outer region in the horizontal or vertical direction .
  • the sample value of the current image can be determined using the sample in the outline of the current image adjacent to the outside region in the horizontal or vertical direction.
  • the pixel positions of the outer region are adjacent to the left upper corner of the current picture in the upper left diagonal direction, the upper right corner is adjacent to the upper right corner in the right upper diagonal direction, the lower left corner is adjacent in the lower left diagonal direction,
  • the sample value of the current image can be determined using the sample in the outline of the current image which is adjacent to the outside region in the horizontal or vertical direction.
  • the method of padding the outer region of the image using the prediction information of the current block corresponds to the above description with reference to FIG. 1A, and thus a duplicated description will be omitted.
  • FIG. 2B is a block diagram of a motion prediction apparatus 21 to which a padding method of a reference image outside region using prediction information is applied according to an embodiment.
  • the motion prediction apparatus 21 to which the reference region padding method according to an embodiment is applied includes a prediction information obtaining unit 23, a reference sample determining unit 25, and an external sample determining unit 27 .
  • the motion prediction apparatus 21 to which the padding method of the reference region according to the embodiment is applied includes a central processor (not shown) for controlling the prediction information obtaining unit 23, the reference sample determining unit 25 and the outer sample determining unit 27 Time).
  • the prediction information obtaining section 23, the reference sample determining section 25, and the external sample determining section 27 are operated by respective ones of the processors (not shown), and the processors (not shown) Accordingly, the motion prediction apparatus to which the padding method of the outer region of the reference image is applied can be operated as a whole.
  • the prediction information obtaining unit 23 of the motion prediction apparatus to which the padding method of the reference region according to an embodiment applies the current reference is referred to as a current reference when the motion vector determined by the inter prediction of the current block indicates an area outside the current reference image
  • Prediction information of neighboring blocks within the outline of the image can be obtained.
  • the reference sample determining unit 25 can determine reference samples for predicting samples located outside the outline by using prediction information of a block adjacent to the inside of the outline of the current reference image.
  • the outer sample determination unit 27 may determine a sample located outside the outline of the current reference image using the determined reference samples for predicting the samples located outside the current reference image.
  • a method of determining reference samples for padding an outer region of a current reference image using prediction information of a block adjacent to an inside of an outline of a current reference image is as follows. Referring to FIG. 1B, Method, and thus redundant description will be omitted.
  • FIG. 2C illustrates a block diagram of an image padding device 28 that utilizes both motion information and intra mode information in accordance with one embodiment.
  • an image padding device 28 to which a padding method of a reference region according to an embodiment is applied includes an information obtaining unit 28-1, a reference sample determining unit 28-2, and an external sample determining unit 28-3).
  • the image padding device 28 to which the padding method of the reference area according to the embodiment is applied controls the information obtaining unit 28-1, the reference sample determining unit 28-2, and the external sample determining unit 28-3 And a memory 28-5 interconnected with the central processor 28-4 and the processor 28-4.
  • the information obtaining unit 28-1, the reference sample determining unit 28-2, and the external sample determining unit 28-3 are operated by respective internal processors (not shown), and processors
  • the motion prediction apparatus to which the padding method of the outer region of the reference image is applied can be operated as a whole.
  • the information obtaining unit 28-1 of the image padding device 28 to which the padding method of the reference region according to the embodiment applies the reference block may refer to an area outside the outline of the reference image in motion reference,
  • the motion information and the intra mode information of the contour blocks adjacent to the contour line of the contour line can be obtained.
  • the reference sample determining unit 28-2 can determine reference samples for predicting samples located outside the outline of the reference image using motion information and intra mode information of the outline block adjacent to the outline.
  • the outer sample determination unit 28-3 may use the reference samples to determine samples located outside the outline of the reference image.
  • a method of determining reference samples for padding an outer region of a current reference image using motion information and intra mode information of a block adjacent to an outer boundary of a reference image at present is as follows. Referring to FIG. 1C, And therefore, redundant description will be omitted.
  • a reconstructed image generated by decoding a current image can be used as a reference image for motion prediction of another image.
  • the video coding system and the video decoding system may pre-padd the outer area of the restored image of the current image to generate a padding larger than the current image, A padded picture can be generated.
  • the image padding device 20, the motion prediction device 21, and the image padding device 28 may convert the outer region of the decoded reconstructed image into inter prediction information, intra prediction information, By padding with reference samples determined using both, a larger image than the original size of the reconstructed image can be stored in the memory.
  • the image padding device 20, the motion prediction device 21, and the image padding device 28 store the decoded original size reconstructed image first in the memory, and the reference block for motion prediction of the other image is reconstructed If there is a determination that an outer region of the image is present, sample values of the reference block are generated by padding the outer region with reference samples determined using inter prediction information, intra prediction information, or both, in the reconstructed image
  • Figs. 3 to 9 specific embodiments for padding the outer region of the reference image will be described in detail.
  • FIG. 3 illustrates a method of padding an outer region of a reference image according to a conventional padding method.
  • the conventional padding method is a method of padding samples 33 located outside the reference image contour 31, by using an outline line contiguous to the image contour line 31 among the pixels of the contour block 35 And copies the sample values of the pixels to generate sample values of the samples 33 located outside the reference image contour 31.
  • the mirroring method of using outline pixels arranged in the padding direction 37 among the pixels in the outline pixels and copying in the direction symmetrical about the contour line 31 And also generates the sample values of the samples 33.
  • 4A illustrates a method of padding an outer region of a reference image using inter information according to an embodiment.
  • the predicted motion may be used to pad the sample values of the outer pixels 43 that are located outside the outline of the reference image 40.
  • the sample values of the external pixels 43 can be predicted using the inter-information of the outline block 45 adjacent to the inside of the outline of the reference image 40 adjacent to the external pixels 43.
  • the block 41 to be a reference of the outline block 45 can be determined using the reference list, the reference index, and the motion vector of the outline block 45. More specifically, in the reference list of the outline block 45, the image indicated by the reference index becomes the reference image 42 of the outline block 45, and the motion vector of the outline block 45 of the reference image 42 The block 41 to be referred to can be determined.
  • the samples of the neighboring block 49 adjacent to the reference block 41 may be determined as reference samples for padding the outer pixels 43 of the reference image 40. [ Therefore, the sample values of the outer pixels 43 of the reference image 40 can be replaced by the sample values of the neighboring block 49 adjacent to the block 41 to be referred to.
  • 4B illustrates a method of padding an outer region of a reference image using intra information according to an exemplary embodiment of the present invention.
  • the intra prediction mode 44 of the block 45 in order to padding the outer pixels 43 located outside the outline of the reference image 40, the intra prediction mode 44 of the block 45 to be used.
  • the intra prediction mode 44 may indicate that neighboring sample values located in the lower-right direction 48 may be used to predict a sample of a block 45 that is contiguous within the outline of the reference image. (45, 48) adjacent to the inside of the outline of the reference image (40) according to the direction indicated by the intra prediction mode (44) of the block (45) adjacent to the inside of the outline of the reference image.
  • the external pixels 43 of the image 40 may be padded.
  • the sample values of the pixels positioned in the lower right direction of the outer pixels 43 of the reference image 40 among the pixels adjacent to the reference image outline in the outline blocks 45 and 48 are detected by the reference image 40,
  • the sample values of the external pixels 43 of the pixel P may be determined.
  • 4C illustrates a method of padding a reference image outside region using both motion information and intra mode information according to an embodiment.
  • the methods of Figures 4a and 4b can be used together.
  • the block 41 to which the motion information of the outline block 45 points is determined, and the samples of the neighboring block 49 adjacent to the block 41 to be the reference are stored in the reference image 40
  • the reference image 40 may be determined as the reference samples for padding the outer pixels 43 of the contour block 45 and the direction indicated by the intra prediction mode 44 of the contour block 45 adjacent to the inside of the contour of the reference image.
  • the samples of the contour block 45 and the contour block 48 adjacent to the inside of the contour of the contour block 45 and the contour block 48 may be determined as reference samples.
  • the sample values of the outer pixels 43 of the reference image 40 can be determined using both the reference samples 49 and 48 determined using the motion information and the intra-prediction mode. Also, it is possible to determine the weight of each of the reference samples determined using the motion information and each of the reference samples determined using the intra-prediction mode, the reference samples 49 determined using each determined weight, the motion information, and the intra- And determine the sample values of the external pixels 43 of the reference image 40 using the reference samples 48 determined using the reference images.
  • FIG. 5 shows an example of a reference image to which a conventional padding method is applied.
  • the conventional padding method is a method in which sample values of pixels of a reference image outside area 55 outside the outline 53 of a reference image 51 are sampled by the inner pixels 53 adjacent to the outline 53 of the reference image,
  • the reference image outside area 55 is copied. That is, the sample values of the reference image outside region 55 adjacent to the vertical outline of the outline 53 copy the sample values of the internal pixels of the reference image 51 adjacent to the vertical outline in the horizontal direction in the horizontal direction.
  • the sample values of the reference image outside region 55 adjacent to the horizontal outline of the outline 53 copy the sample values of the internal pixels of the reference image 51 adjacent to the horizontal outline in the vertical direction in the vertical direction.
  • FIG. 6 illustrates an example of a reference image to which the padding method according to an embodiment is applied.
  • a method of padding a reference image outside area 65 using inter-prediction information of a block adjacent to an inside of an outline 63 of a reference image 61 is applied.
  • the reference image outside area 65 located outside the outline line 63 of the reference image 61 is included in the other image to be referenced indicated by the inter prediction information of the adjacent block inside the outline line 63 Can be padded using reference samples. Therefore, a portion 67 of the reference image outside area 65 may be generated so as to include an area not included in the reference image 61.
  • the reference image outside area 65 outside the outline 63 is predicted using the prediction information of the block inside the reference image 61, so that the reference image outside area 65 May also include information that can not be obtained from within the reference image 61. Therefore, the accuracy of motion prediction using the reference image including the reference image outside area 65 is improved, and the coding efficiency of the inter prediction can be improved.
  • a motion prediction method to which a padding method of a reference image using prediction information is applied can be applied to a method of decoding a 360 degree image.
  • a 360 degree image consists of a number of images taken in various directions.
  • the existing video encoding method and video decoding method assume that the image has a rectangular shape.
  • a plurality of images constituting a 360 degree image are arranged in a predetermined order to constitute one image, and the existing video coding method and video decoding method are applied to the image.
  • FIG. 7 shows an example of a reference image of a 360-degree image to which a conventional padding method is applied.
  • a reference image 75 of a 360-degree image is composed of images 75-1, 75-2, 75-3, 75-4, 75-5, and 75-6 photographed in six directions . Since there is no external sample value of the image outline 71 of the reference image 75 of the 360-degree image, the same value as the samples adjacent to the inside of the outline 71 of the 360- By padding, the outer region 73 of the reference image 75 of the 360 degree image can be generated.
  • FIG. 8 illustrates an example of a reference image of a 360-degree image to which a padding method of a reference image outside region according to an embodiment is applied.
  • a motion prediction method to which a padding method of a reference image outside area according to an embodiment is applied is applied to a reference image 75 of a 360-degree image of FIG.
  • the reference image 75 of the 360 degree image is divided into the respective images 75-1, 75-2, 75-3, 75-4, 75-5, and 75-6, Can be applied to each of the images 75-1, 75-2, 75-3, 75-4, 75-5, and 75-6.
  • the reference image outside area 83-1 can be generated.
  • the reference image is the image 75-2, 75-3, 75-4, 75-5, 75-6
  • the image 75-2, 75-3, 75-4, 75-5 81-2 and 81-6 based on the inter prediction information of the contour blocks adjacent to the inside of the contour lines 81-2, 81-3, 81-4, 81-5, 83-3, 83-4, 83-5, and 83-6 outside the reference image region outside the reference image regions 83-2, 83-4, 81-5, and 81-6.
  • FIG. 9 illustrates an example of a 360-degree image to which a padding method of a reference image outside area is applied according to another embodiment.
  • a single image is composed of a Rotated Sphere Projection (RSP), an Equirectangular Projection (ERP), an Icosahedral Projection (ISP), a Segmented Sphere Projection (SSP), a CubeMap Projection (EAC) and so on.
  • RSP Rotated Sphere Projection
  • ERP Equirectangular Projection
  • ISP Icosahedral Projection
  • SSP Segmented Sphere Projection
  • EAC CubeMap Projection
  • the actual region photographed may be different from the region to be encoded.
  • the area to be encoded is larger than the actual area, it is a conventional method to fill the empty area other than the actual area through a method such as interpolation.
  • a padding method of a reference image outside area may be applied to a free area of the current image.
  • the reference image 90 of the 360-degree image of FIG. 9 is an image generated by Rotated Sphere Projection (RSP).
  • the reference image 90 of the 360-degree image may include an image 95 and a free area (or padding area) 93.
  • the reference image may be a 360 degree image 90 and the empty area 93 may exist outside the reference image outline 91.
  • the sample value of the free area 93 can be predicted using the reference sample values determined using the inter prediction information or the intra prediction information of the block located inside the outline 91.
  • the accuracy of the motion prediction is increased by filling the outline region outside the actual value by using the prediction information of the outline block inside the outline of the reference image.
  • FIG. 10A is a block diagram of a video encoding apparatus 2000 to which an image padding method using prediction information according to an embodiment is applied.
  • the video encoding apparatus 2000 includes a predictive encoding unit 2015, a transform and quantization unit 2020, an entropy encoding unit 2025, an inverse quantization and inverse transformation unit 2030, a deblocking filtering unit 2035, (2040).
  • the predictive coding unit 2015 can determine prediction information for indicating a predictive sample by inter prediction or intra prediction on a current block of the input image.
  • inter prediction the prediction samples of the current block are determined from the reference image that has been coded first, and in the case of intra prediction, the prediction samples of the current block can be determined from the samples that are coded first in the current image.
  • the transform and quantization unit 2020 transforms and quantizes the residual blocks, which are difference components between the predicted samples of the predicted block and the samples of the current block, and outputs the quantized transform coefficients.
  • the entropy encoding unit 2025 can perform entropy encoding on the quantized transform coefficients to output a bitstream.
  • the inverse quantization and inverse transform unit 2030 performs inverse quantization and inverse transform on the quantized transform coefficients to reconstruct the residual block in the spatial domain.
  • the reconstructed block in which the reconstructed residual block is combined with the prediction block is input to the deblocking filtering unit 2035 and the loop filtering unit 2040, and the reconstructed block is filtered and output to the reconstructed block.
  • the reconstructed image composed of reconstructed blocks modified through loop filtering can be used as a reference image for inter prediction of the next block in the predictive coding unit 2015.
  • a method of padding the outer region of the current image described above with reference to FIGS. 1A to 9 may be applied when the current block is adjacent to the outline of the current image and inter prediction information or intra prediction information for the current block exists. That is, the operation of the image padding apparatus 20 described above with reference to FIG. 2A may be performed in the predictive encoding unit 2015. FIG. The operation of the image padding device 20 performed in the predictive encoding unit 2015 is the same as the operation described above with reference to FIGS. 1A to 9, and thus a duplicated description will be omitted.
  • the padding method of the reference picture outside region described above with reference to Figs. 1B to 9 is applied . That is, the operation of the motion prediction apparatus 21 described above with reference to FIG. 2B may be performed by the predictive encoding unit 2015. FIG.
  • the operation of the motion prediction unit 21 performed in the predictive encoding unit 2015 is the same as the operation described above with reference to FIGS. 1B and 2B, and thus a duplicated description will be omitted.
  • FIG. 10B shows a block diagram of a video decoding apparatus 2080 to which an image padding method using prediction information according to an embodiment is applied.
  • the video decoding apparatus 2080 includes an entropy decoding unit 2055, an inverse quantization and inverse transform unit 2060, a predictive decoding unit 2075, a deblocking filtering unit 2065 and a loop filtering unit 2070.
  • the entropy decoding unit 2055 performs entropy decoding on the received bitstream to obtain quantized transform coefficients of the image.
  • the inverse quantization and inverse transform unit 2060 performs inverse quantization and inverse transform on the quantized transform coefficients of the transform block to reconstruct the residual block in the spatial domain.
  • the prediction decoding unit 2075 can determine reference blocks of the reference block using the prediction information for inter prediction or intra prediction for the current block and determine prediction blocks using the reference samples.
  • inter prediction the prediction samples of the current block are determined first among reconstructed reference images, and in the case of intra prediction, the prediction samples of the current block can be determined among the samples reconstructed in the current image.
  • a reconstruction block in the spatial domain is determined by combining the prediction block and the residual block, the sample values of the reconstruction block are modified through the deblocking filtering unit 2065 and the loop filtering unit 2070, A restored image of the current image can be output.
  • the reconstructed image can be used as a reference image for predicting the next image in the predictive decoding unit 2075.
  • the padding method of the reference region described above with reference to FIGS. Can be applied. That is, the operation of the image padding apparatus 20 described above with reference to FIG. 2A may be performed in the predictive decoding unit 2075.
  • the operation of the image padding device 20 performed in the predictive encoding unit 2075 is the same as the operation described above with reference to FIGS. 1A to 9, and thus a duplicated description will be omitted.
  • FIG. 1B to 9 is applied . That is, the operation of the motion prediction apparatus 21 described above with reference to FIG. 2B may be performed in the predictive decoding unit 2075.
  • FIG. The operation of the motion prediction apparatus 21 performed in the predictive encoding unit 2075 is the same as the operation described above with reference to FIGS. 1B and 2B, and thus a duplicated description will be omitted.
  • FIG. 11 illustrates a process in which the video decoding apparatus 2080 divides a current encoding unit to determine at least one encoding unit according to an embodiment.
  • the block shape may include 4Nx4N, 4Nx2N, 2Nx4N, 4NxN, or Nx4N. Where N may be a positive integer.
  • the block type information is information indicating at least one of a ratio, or a size, of a shape, direction, width, and height of an encoding unit.
  • the shape of the encoding unit may include a square and a non-square. If the width and height of the encoding unit are the same (4Nx4N), the image decoding apparatus 2080 can determine the block type information of the encoding unit as a square. The image decoding apparatus 2080 can determine the shape of the encoding unit to be non-square.
  • the image decoding apparatus 2080 can determine the block type information of the encoding unit as a non-square. If the shape of the coding unit is a non-square shape, the image decoding apparatus 2080 divides the width and height ratio of the block type information of the coding unit by 1: 2, 2: 1, 1: 4, 4: Or 8: 1. Further, based on the length of the width of the coding unit and the length of the height, the video decoding apparatus 2080 can determine whether the coding unit is the horizontal direction or the vertical direction. Further, the image decoding apparatus 2080 can determine the size of the encoding unit based on at least one of the width of the encoding unit, the length of the height, and the width.
  • the image decoding apparatus 2080 can determine a type of an encoding unit using block type information and determine a type of an encoding unit to be divided using information on the division type mode. That is, the division method of the coding unit indicated by the information on the division mode can be determined according to which block type the block type information used by the video decoding apparatus 2080 represents.
  • the image decoding apparatus 2080 can obtain information on the split mode mode from the bit stream. However, the present invention is not limited thereto, and the image decoding apparatus 2080 and the image encoding apparatus 2200 can acquire information on the promised split mode mode on the basis of the block type information.
  • the image decoding apparatus 2080 can acquire information on the promised divided mode mode for the maximum encoding unit or the minimum encoding unit. For example, the image decoding apparatus 2080 can determine the size of the maximum encoding unit to be 256x256.
  • the image decoding apparatus 2080 can determine the information about the promised division mode in advance by quad split. Quad partitioning is a split mode mode that bisects both the width and the height of the encoding unit.
  • the image decoding apparatus 2080 can obtain a 128x128 encoding unit from the maximum encoding unit of 256x256 size based on the information on the split mode mode. Also, the image decoding apparatus 2080 can determine the size of the minimum encoding unit to be 4x4. The image decoding apparatus 2080 can acquire information on the division mode mode indicating "not divided" for the minimum encoding unit.
  • the image decoding apparatus 2080 may use block type information indicating that the current encoding unit is a square format. For example, the image decoding apparatus 2080 can determine whether to divide a square encoding unit into vertically, horizontally, or four encoding units according to the information on the split mode mode.
  • the video decoding apparatus 2080 decodes the current encoding unit 300 according to information on the split mode mode indicating that the current block is not divided, It is possible to determine the divided coding units 310b, 310c, and 310d based on the information on the division mode mode indicating the predetermined division method, without dividing the coding unit 310a having the same size as the coding unit 310a.
  • the image decoding apparatus 2080 includes two encoding units 310b (FIG. 11) that divide a current encoding unit 300 in the vertical direction based on information on a split mode mode indicating that the image is divided vertically according to an embodiment. Can be determined.
  • the image decoding apparatus 2080 can determine two encoding units 310c in which the current encoding unit 300 is divided in the horizontal direction based on the information on the split mode mode indicating that the image is divided in the horizontal direction.
  • the image decoding apparatus 2080 can determine four encoding units 310d obtained by dividing the current encoding unit 300 in the vertical direction and the horizontal direction based on the information on the split mode mode indicating that the image is divided vertically and horizontally have.
  • the division type in which the square encoding unit can be divided should not be limited to the above-mentioned form, but may include various forms in which the information on the division type mode can be represented.
  • the predetermined divisional form in which the square encoding unit is divided will be described in detail by way of various embodiments below.
  • FIG. 12 illustrates a process in which the image decoding apparatus 2080 determines at least one encoding unit by dividing a non-square encoding unit according to an embodiment.
  • the image decoding apparatus 2080 may use block type information indicating that the current encoding unit is a non-square format.
  • the image decoding apparatus 2080 can determine whether to divide the non-square current encoding unit according to the information on the split mode mode or not in a predetermined method.
  • the image decoding apparatus 2080 decodes the current encoding
  • the encoding unit 410 or 460 having the same size as the unit 400 or 450 is determined or the encoding unit 420a, 420b, 430a, or 430b divided based on the information on the division mode mode indicating the predetermined division method , 430c, 470a, 470b, 480a, 480b, 480c.
  • the predetermined division method in which the non-square coding unit is divided will be described in detail through various embodiments.
  • the image decoding apparatus 2080 may determine a type in which an encoding unit is divided using information on a split mode mode.
  • information on the split mode mode may include at least one Lt; / RTI > can be represented by the number of encoding units.
  • the image decoding apparatus 2080 decodes the current encoding
  • the unit 400 or 450 may be divided to determine two encoding units 420a, 420b, or 470a and 470b included in the current encoding unit.
  • the image decoding apparatus 2080 decodes the non- The current encoding unit can be divided in consideration of the position of the long side of the current encoding unit (400 or 450). For example, the image decoding apparatus 2080 divides the current encoding unit 400 or 450 in the direction of dividing the longer side of the current encoding unit 400 or 450 in consideration of the type of the current encoding unit 400 or 450 So that a plurality of encoding units can be determined.
  • the image decoding apparatus 2080 when the information on the split mode mode indicates that an encoding unit is divided into an odd number of blocks (tri-split), the image decoding apparatus 2080 includes the current encoding unit 400 or 450 An odd number of encoding units can be determined. For example, when the information on the split mode mode indicates that the current encoding unit 400 or 450 is divided into three encoding units, the image decoding device 2080 encodes the current encoding unit 400 or 450 into three encoding Can be divided into units 430a, 430b, 430c, 480a, 480b, and 480c.
  • the ratio of the width and height of the current encoding unit 400 or 450 may be 4: 1 or 1: 4. If the ratio of width to height is 4: 1, the length of the width is longer than the length of the height, so the block type information may be horizontal. If the ratio of width to height is 1: 4, the block type information may be vertical because the length of the width is shorter than the length of the height.
  • the image decoding apparatus 2080 can determine to divide the current encoding unit into odd number blocks based on the information on the split mode mode. The image decoding apparatus 2080 can determine the division direction of the current encoding unit 400 or 450 based on the block type information of the current encoding unit 400 or 450.
  • the image decoding apparatus 2080 can determine the encoding units 430a, 430b, and 430c by dividing the current encoding unit 400 in the horizontal direction. If the current encoding unit 450 is in the horizontal direction, the image decoding apparatus 2080 can determine the encoding units 480a, 480b, and 480c by dividing the current encoding unit 450 in the vertical direction.
  • the image decoding apparatus 2080 may determine an odd number of encoding units included in the current encoding unit 400 or 450, and the sizes of the determined encoding units may not be the same. For example, the size of a predetermined encoding unit 430b or 480b among the determined odd number of encoding units 430a, 430b, 430c, 480a, 480b, and 480c is different from the size of the other encoding units 430a, 430c, 480a, and 480c .
  • an encoding unit that can be determined by dividing the current encoding unit (400 or 450) may have a plurality of types of sizes, and an odd number of encoding units (430a, 430b, 430c, 480a, 480b, 480c) May have different sizes.
  • the image decoding apparatus 2080 can determine an odd number of encoding units included in the current encoding unit 400 or 450 Further, the image decoding apparatus 2080 may set a predetermined restriction on at least one encoding unit among odd number of encoding units generated by division. Referring to FIG.
  • the image decoding apparatus 2080 decodes an encoding unit (not shown) located at the center among the three encoding units 430a, 430b, 430c, 480a, 480b, and 480c generated by dividing the current encoding unit 400 or 450,
  • the decoding process for the coding units 430b and 480b may be different from the coding units 430a, 430c, 480a, and 480c.
  • the image decoding apparatus 2080 may restrict the coding units 430b and 480b positioned at the center to be not further divided unlike the other coding units 430a, 430c, 480a, and 480c, It can be limited to be divided.
  • FIG. 13 illustrates a process in which an image decoding apparatus 2080 divides an encoding unit based on at least one of information on a block format information and a format mode according to an embodiment.
  • the image decoding apparatus 2080 decides not to divide or divide the first encoding unit 500 of the square shape into encoding units based on at least one of the information on the block type information and the information on the division mode mode . If the information on the split mode mode indicates that the first encoding unit 500 is divided in the horizontal direction according to the embodiment, the image decoding apparatus 2080 divides the first encoding unit 500 in the horizontal direction, 2 encoding unit 510, as shown in FIG.
  • the first encoding unit, the second encoding unit, and the third encoding unit used according to an embodiment are terms used to understand the relation before and after the division between encoding units.
  • the second encoding unit can be determined, and if the second encoding unit is divided, the third encoding unit can be determined.
  • the relationship between the first coding unit, the second coding unit and the third coding unit used can be understood to be in accordance with the above-mentioned characteristic.
  • the image decoding apparatus 2080 may determine that the determined second encoding unit 510 is not divided or divided into encoding units based on at least one of the block type information and the information on the split mode mode . 13, the image decoding apparatus 2080 decodes the first encoding unit 500 based on at least one of information on the block type information and the information on the split mode, 510) may be divided into at least one third encoding unit 520a, 520b, 520c, 520d, or the second encoding unit 510 may not be divided.
  • the image decoding apparatus 2080 may acquire at least one of information on the block type information and the division mode mode and the image decoding apparatus 2080 may acquire the block type information on the basis of at least one of the acquired block type information and the information on the division mode mode
  • the second encoding unit 510 may divide the first encoding unit 500 into a plurality of second encoding units of various types (for example, 510), and the second encoding unit 510 may divide the block type information and the information
  • the first encoding unit 500 may be divided according to a manner in which the first encoding unit 500 is divided.
  • the first encoding unit 500 is divided into the second encoding units 510 based on at least one of the block type information for the first encoding unit 500 and the information about the split mode mode 520b, 520c, and 520d (e.g., 520a, 520b, 520c, and 520d) based on at least one of the block type information on the second encoding unit 510 and the information on the split mode mode, Etc.). That is, the encoding unit may be recursively divided based on at least one of the information on the split mode mode and the block type information associated with each of the encoding units. Therefore, a square encoding unit may be determined in a non-square encoding unit, and a non-square encoding unit may be determined by dividing the square encoding unit recursively.
  • predetermined encoding units for example, An encoding unit or a square-shaped encoding unit
  • the square-shaped third coding unit 520b which is one of the odd-numbered third coding units 520b, 520c, and 520d, may be divided in the horizontal direction and divided into a plurality of fourth coding units.
  • the non-square fourth encoding unit 530b or 530d which is one of the plurality of fourth encoding units 530a, 530b, 530c, and 530d, may be further divided into a plurality of encoding units.
  • the fourth encoding unit 530b or 530d in the non-square form may be divided again into odd number of encoding units.
  • a method which can be used for recursive division of an encoding unit will be described later in various embodiments.
  • the image decoding apparatus 2080 divides each of the third encoding units 520a, 520b, 520c, and 520d into encoding units based on at least one of the block type information and the information on the split mode mode . Also, the image decoding apparatus 2080 may determine that the second encoding unit 510 is not divided based on at least one of the block type information and the information on the split mode mode. The image decoding apparatus 2080 may divide the non-square-shaped second coding unit 510 into odd-numbered third coding units 520b, 520c and 520d according to an embodiment.
  • the image decoding apparatus 2080 may set a predetermined limit on a predetermined third encoding unit among odd numbered third encoding units 520b, 520c, and 520d. For example, the image decoding apparatus 2080 may limit the encoding unit 520c located in the middle among the odd numbered third encoding units 520b, 520c, and 520d to no longer be divided, or be divided into a set number of times .
  • the image decoding apparatus 2080 includes an encoding unit (not shown) located in the middle among the odd third encoding units 520b, 520c, and 520d included in the second encoding unit 510 in the non- 520c may not be further divided or may be limited to being divided into a predetermined division form (for example, divided into four coding units only or divided into a form corresponding to a form in which the second coding units 510 are divided) (For example, dividing only n times, n > 0).
  • a predetermined division form for example, divided into four coding units only or divided into a form corresponding to a form in which the second coding units 510 are divided
  • the above restriction on the coding unit 520c positioned at the center is merely an example and should not be construed to be limited to the above embodiments and the coding unit 520c positioned at the center is not limited to the coding units 520b and 520d Quot;), < / RTI > which can be decoded differently.
  • the image decoding apparatus 2080 can acquire at least one of the block type information used for dividing the current encoding unit and the information about the split mode using a predetermined position in the current encoding unit.
  • FIG. 14 illustrates a method for an image decoding apparatus 2080 to determine a predetermined encoding unit among odd number of encoding units according to an embodiment.
  • At least one of the block type information of the current encoding units 600 and 650 and the information of the split mode mode is a sample of a predetermined position among a plurality of samples included in the current encoding units 600 and 650 For example, samples 640 and 690 positioned in the middle).
  • the predetermined position in the current coding unit 600 in which at least one of the block type information and the division mode information can be obtained should not be limited to the middle position shown in Fig. 14, It should be understood that various positions (e.g., top, bottom, left, right, top left, bottom left, top right, or bottom right, etc.) that may be included in unit 600 may be included.
  • the video decoding apparatus 2080 may determine that the current encoding unit is divided or not divided into encoding units of various types and sizes by acquiring at least one of the block type information and the division type mode information obtained from the predetermined position .
  • the image decoding apparatus 2080 can select one of the encoding units.
  • the method for selecting one of the plurality of encoding units may be various, and description of these methods will be described later in various embodiments.
  • the image decoding apparatus 2080 may divide the current encoding unit into a plurality of encoding units and determine a predetermined encoding unit.
  • the image decoding apparatus 2080 may use information indicating the positions of odd-numbered coding units in order to determine a coding unit located in the middle among odd-numbered coding units. 14, the image decoding apparatus 2080 divides the current encoding unit 600 or the current encoding unit 650 into odd number of encoding units 620a, 620b, and 620c or odd number of encoding units 660a, 660b, and 660c.
  • the image decoding apparatus 2080 decodes the encoded data in the middle encoding unit 620b or the middle encoding unit 620b using information on the positions of odd number of encoding units 620a, 620b, and 620c or odd number of encoding units 660a, 660b, and 660c. (660b). For example, the image decoding apparatus 2080 determines the positions of the encoding units 620a, 620b, and 620c based on information indicating the positions of predetermined samples included in the encoding units 620a, 620b, and 620c, The encoding unit 620b located in the encoding unit 620b can be determined.
  • the image decoding apparatus 2080 decodes the encoding units 620a, 620b, and 620c based on information indicating the positions of the upper left samples 630a, 630b, and 630c of the encoding units 620a, 620b, and 620c,
  • the encoding unit 620b located in the center can be determined.
  • Information indicating the positions of the upper left samples 630a, 630b, and 630c included in the coding units 620a, 620b, and 620c according to one embodiment is stored in the pictures of the coding units 620a, 620b, and 620c Or information about the position or coordinates of the object.
  • Information indicating the positions of the upper left samples 630a, 630b, and 630c included in the coding units 620a, 620b, and 620c according to one embodiment is stored in the coding units 620a , 620b, and 620c, and the width or height may correspond to information indicating the difference between the coordinates of the encoding units 620a, 620b, and 620c in the picture.
  • the image decoding apparatus 2080 directly uses the information on the position or the coordinates in the pictures of the coding units 620a, 620b, and 620c or the information on the width or height of the coding units corresponding to the difference between the coordinates
  • the encoding unit 620b located in the center can be determined.
  • the information indicating the position of the upper left sample 630a of the upper coding unit 620a may indicate the coordinates (xa, ya) and the upper left sample 530b of the middle coding unit 620b May indicate the coordinates (xb, yb), and the information indicating the position of the upper left sample 630c of the lower coding unit 620c may indicate the coordinates (xc, yc).
  • the image decoding apparatus 2080 can determine the center encoding unit 620b using the coordinates of the upper left samples 630a, 630b, and 630c included in the encoding units 620a, 620b, and 620c.
  • the coding unit 620b including (xb, yb) coordinates of the sample 630b located at the center, Can be determined as a coding unit located in the middle of the coding units 620a, 620b, and 620c determined by dividing the current coding unit 600.
  • the coordinates indicating the positions of the samples 630a, 630b and 630c in the upper left corner may indicate the coordinates indicating the absolute position in the picture
  • the position of the upper left sample 630a of the upper coding unit 620a may be (Dxb, dyb), which is information indicating the relative position of the sample 630b at the upper left of the middle encoding unit 620b, and the relative position of the sample 630c at the upper left of the lower encoding unit 620c
  • Information dyn (dxc, dyc) coordinates may also be used.
  • the method of determining the coding unit at a predetermined position by using the coordinates of the sample as information indicating the position of the sample included in the coding unit should not be limited to the above-described method, and various arithmetic Should be interpreted as a method.
  • the image decoding apparatus 2080 may divide the current encoding unit 600 into a plurality of encoding units 620a, 620b, and 620c, and may encode a predetermined one of the encoding units 620a, 620b, and 620c
  • the encoding unit can be selected according to the criterion. For example, the image decoding apparatus 2080 can select an encoding unit 620b having a different size from among the encoding units 620a, 620b, and 620c.
  • the image decoding apparatus 2080 includes a (xa, ya) coordinate which is information indicating the position of the upper left sample 630a of the upper encoding unit 620a, (Xc, yc) coordinates, which is information indicating the position of the lower-stage coding unit 630b and the position of the upper-left sample 630c of the lower-stage coding unit 620c, , 620b, and 620c, respectively.
  • the image decoding apparatus 2080 decodes the encoding units 620a and 620b using the coordinates (xa, ya), (xb, yb), (xc, yc) indicating the positions of the encoding units 620a, 620b and 620c , And 620c, respectively.
  • the image decoding apparatus 2080 can determine the width of the upper encoding unit 620a as the width of the current encoding unit 600.
  • the image decoding apparatus 2080 can determine the height of the upper encoding unit 620a as yb-ya.
  • the image decoding apparatus 2080 may determine the width of the middle encoding unit 620b as the width of the current encoding unit 600 according to an embodiment.
  • the image decoding apparatus 2080 can determine the height of the center encoding unit 620b as yc-yb.
  • the image decoding apparatus 2080 can determine the width or height of the lower coding unit by using the width or height of the current coding unit and the width and height of the upper coding unit 620a and the middle coding unit 620b .
  • the image decoding apparatus 2080 can determine an encoding unit having a different size from the other encoding units based on the widths and heights of the determined encoding units 620a, 620b, and 620c. Referring to FIG.
  • the image decoding apparatus 2080 can determine a coding unit 620b as a coding unit at a predetermined position while having a size different from that of the upper coding unit 620a and the lower coding unit 620c.
  • the process of determining the encoding unit having a size different from that of the other encoding units by the image decoding apparatus 2080 may be the same as that of the first embodiment in which the encoding unit of a predetermined position is determined using the size of the encoding unit determined based on the sample coordinates , Various processes may be used for determining the encoding unit at a predetermined position by comparing the sizes of the encoding units determined according to predetermined sample coordinates.
  • the image decoding apparatus 2080 decodes the position of the left upper sample 670a of the left coding unit 660a and the position (xd, yd) of the left upper sample of the left coding unit 660b of the middle coding unit 660b, 660b and 660c using the (xf, yf) coordinates, which is information indicating the (xe, ye) coordinate which is the information indicating the position of the right encoding unit 660c and the position of the sample 670c at the upper left of the right encoding unit 660c, Each width or height can be determined.
  • the image decoding apparatus 2080 decodes the encoding units 660a and 660b using the coordinates (xd, yd), (xe, ye), (xf, yf) indicating the positions of the encoding units 660a, 660b and 660c And 660c, respectively.
  • the image decoding apparatus 2080 can determine the width of the left encoding unit 660a as xe-xd.
  • the image decoding apparatus 2080 can determine the height of the left encoding unit 660a as the height of the current encoding unit 650.
  • the image decoding apparatus 2080 can determine the width of the middle encoding unit 660b as xf-xe.
  • the image decoding apparatus 2080 can determine the height of the middle encoding unit 660b as the height of the current encoding unit 600.
  • the width or height of the right encoding unit 660c is determined by the width or height of the current encoding unit 650 and the width and height of the left encoding unit 660a and the middle encoding unit 660b . ≪ / RTI >
  • the image decoding apparatus 2080 can determine an encoding unit having a different size from the other encoding units based on the widths and heights of the determined encoding units 660a, 660b, and 660c. Referring to FIG. 14, the image decoding apparatus 2080 can determine a coding unit 660b as a coding unit at a predetermined position while having a size different from that of the left coding unit 660a and the right coding unit 660c.
  • the process of determining the encoding unit having a size different from that of the other encoding units by the image decoding apparatus 2080 may be the same as that of the first embodiment in which the encoding unit of a predetermined position is determined using the size of the encoding unit determined based on the sample coordinates , Various processes may be used for determining the encoding unit at a predetermined position by comparing the sizes of the encoding units determined according to predetermined sample coordinates.
  • the position of the sample to be considered for determining the position of the coding unit should not be interpreted as being limited to the left upper end, and information about the position of any sample included in the coding unit can be interpreted as being available.
  • the image decoding apparatus 2080 can select a coding unit at a predetermined position among the odd number of coding units determined by dividing the current coding unit considering the type of the current coding unit. For example, if the current coding unit is a non-square shape having a width greater than the height, the image decoding apparatus 2080 can determine a coding unit at a predetermined position along the horizontal direction. That is, the image decoding apparatus 2080 may determine one of the encoding units which are located in the horizontal direction and limit the encoding unit. If the current coding unit is a non-square shape having a height greater than the width, the image decoding apparatus 2080 can determine a coding unit at a predetermined position in the vertical direction. That is, the image decoding apparatus 2080 may determine one of the encoding units which are located in the vertical direction and limit the encoding unit.
  • the image decoding apparatus 2080 may use information indicating positions of even-numbered encoding units in order to determine an encoding unit of a predetermined position among the even-numbered encoding units.
  • the image decoding apparatus 2080 can determine an even number of coding units by binary coding the current coding unit and determine a coding unit at a predetermined position using information on the positions of even number of coding units. A concrete procedure for this is omitted because it may be a process corresponding to a process of determining a coding unit of a predetermined position (for example, the middle position) among the above-mentioned odd number of coding units in FIG.
  • a non-square current encoding unit is divided into a plurality of encoding units
  • in order to determine an encoding unit at a predetermined position among a plurality of encoding units Can be used.
  • the image decoding apparatus 2080 decodes the block type information stored in the sample included in the middle encoding unit, Mode may be used.
  • the image decoding apparatus 2080 divides the current encoding unit 600 into a plurality of encoding units 620a, 620b, and 620c based on at least one of information on the block type information and the information on the split mode mode And the encoding unit 620b located in the middle of the plurality of encoding units 620a, 620b, and 620c can be determined. Furthermore, the image decoding apparatus 2080 can determine a coding unit 620b positioned at the center in consideration of the position at which at least one of the block type information and the division type mode information is obtained.
  • At least one of the block type information of the current encoding unit 600 and the information of the division mode mode can be obtained in the sample 640 located in the middle of the current encoding unit 600, If the current encoding unit 600 is divided into a plurality of encoding units 620a, 620b, and 620c based on at least one of the information on the division mode mode and the encoding unit 620b including the sample 640, As shown in FIG.
  • the information used for determining the encoding unit located in the middle should not be limited to at least one of the block type information and the information about the division mode mode, and a process of determining an encoding unit in which various types of information are located in the middle ≪ / RTI >
  • predetermined information for identifying a coding unit at a predetermined position may be obtained from a predetermined sample included in a coding unit to be determined.
  • the image decoding apparatus 2080 encodes a predetermined number of coding units (for example, a plurality of divided coding units) among a plurality of coding units 620a, 620b, and 620c determined by dividing the current coding unit 600 (For example, a sample located in the middle of the current encoding unit 600) at a predetermined position in the current encoding unit 600 in order to determine an encoding unit located in the middle of the encoding unit, And at least one of information on the split mode mode may be used.
  • the image decoding apparatus 2080 can determine the sample of the predetermined position in consideration of the block form of the current encoding unit 600, and the image decoding apparatus 2080 decodes the plural A coding unit 620b including samples from which predetermined information (for example, at least one of information on the block type information and the division mode information) can be obtained from the plurality of coding units 620a, 620b, and 620c So that a predetermined limit can be set.
  • predetermined information for example, at least one of information on the block type information and the division mode information
  • the image decoding apparatus 2080 can determine a sample 640 positioned in the center of the current encoding unit 600 as a sample from which predetermined information can be obtained,
  • the coding unit 2080 may limit the coding unit 620b including the sample 640 to a predetermined limit in the decoding process.
  • the position of the sample from which the predetermined information can be obtained should not be construed to be limited to the above-mentioned position, but may be interpreted as samples at arbitrary positions included in the encoding unit 620b to be determined for limiting.
  • the position of a sample from which predetermined information can be obtained may be determined according to the type of the current encoding unit 600.
  • the block type information can determine whether the current encoding unit is a square or a non-square, and determine the position of a sample from which predetermined information can be obtained according to the shape.
  • the video decoding apparatus 2080 may use at least one of the information on the width of the current coding unit and the information on the height to position at least one of the width and the height of the current coding unit in half The sample can be determined as a sample from which predetermined information can be obtained.
  • the image decoding apparatus 2080 decodes one of the samples adjacent to the boundary dividing the longer side of the current encoding unit into half, Can be determined as a sample from which the information of < / RTI >
  • the image decoding apparatus 2080 decodes the block type information and the split mode mode to determine a coding unit of a predetermined position among the plurality of encoding units.
  • Information can be used.
  • the image decoding apparatus 2080 can acquire at least one of the block type information and the information on the split mode mode from a sample of a predetermined position included in the encoding unit, and the image decoding apparatus 2080
  • the plurality of coding units generated by dividing the unit may be divided using at least one of the information on the division mode and the block type information obtained from the sample at the predetermined position included in each of the plurality of the coding units.
  • the coding unit can be recursively divided using at least one of the block type information obtained in the sample at the predetermined position included in each of the coding units and the information about the division mode.
  • the recursive division process of the encoding unit is described in detail with reference to FIG. 13, and a detailed description thereof will be omitted.
  • the image decoding apparatus 2080 can determine at least one encoding unit by dividing the current encoding unit, and the order in which the at least one encoding unit is decoded is determined as a predetermined block (for example, ). ≪ / RTI >
  • FIG. 15 shows a sequence in which a plurality of coding units are processed when the image decoding apparatus 2080 determines a plurality of coding units by dividing a current coding unit according to an embodiment.
  • the image decoding apparatus 2080 divides the first encoding unit 700 in the vertical direction according to the information on the block type information and the division mode, thereby determining the second encoding units 710a and 710b,
  • the second encoding units 730a and 730b may be determined by dividing the first encoding units 700a to 750c by dividing the first encoding units 700a and 750b in the horizontal direction to divide the first encoding units 700 in the vertical direction and the horizontal direction, , 750d can be determined.
  • the image decoding apparatus 2080 can determine the order in which the second encoding units 710a and 710b determined by dividing the first encoding unit 700 in the vertical direction are processed in the horizontal direction 710c .
  • the image decoding apparatus 2080 can determine the processing order of the second encoding units 730a and 730b determined by dividing the first encoding unit 700 in the horizontal direction as the vertical direction 730c.
  • the image decoding apparatus 2080 processes the encoding units located in one row of the second encoding units 750a, 750b, 750c, and 750d determined by dividing the first encoding unit 700 in the vertical direction and the horizontal direction, (For example, a raster scan order or a z scan order 750e) in which the encoding units located in the next row are processed.
  • the image decoding apparatus 2080 can recursively divide encoding units. 15, the image decoding apparatus 2080 can determine a plurality of encoding units 710a, 710b, 730a, 730b, 750a, 750b, 750c and 750d by dividing the first encoding unit 700, The determined plurality of encoding units 710a, 710b, 730a, 730b, 750a, 750b, 750c, and 750d can be recursively divided.
  • the method of dividing the plurality of encoding units 710a, 710b, 730a, 730b, 750a, 750b, 750c, and 750d may be a method corresponding to the method of dividing the first encoding unit 700.
  • the plurality of encoding units 710a, 710b, 730a, 730b, 750a, 750b, 750c, and 750d may be independently divided into a plurality of encoding units.
  • the image decoding apparatus 2080 can determine the second encoding units 710a and 710b by dividing the first encoding unit 700 in the vertical direction, and can further determine the second encoding units 710a and 710b Can be determined not to divide or separate independently.
  • the image decoding apparatus 2080 may divide the second encoding unit 710a on the left side in the horizontal direction into the third encoding units 720a and 720b and the second encoding units 710b ) May not be divided.
  • the processing order of the encoding units may be determined based on the division process of the encoding units.
  • the processing order of the divided coding units can be determined based on the processing order of the coding units immediately before being divided.
  • the image decoding apparatus 2080 can independently determine the order in which the third encoding units 720a and 720b determined by dividing the second encoding unit 710a on the left side are processed to the second encoding unit 710b on the right side.
  • the third encoding units 720a and 720b may be processed in the vertical direction 720c because the second encoding units 710a on the left side are divided in the horizontal direction and the third encoding units 720a and 720b are determined.
  • the order in which the left second encoding unit 710a and the right second encoding unit 710b are processed corresponds to the horizontal direction 710c
  • the right encoding unit 710b can be processed after the blocks 720a and 720b are processed in the vertical direction 720c.
  • the above description is intended to explain the process sequence in which encoding units are determined according to the encoding units before division. Therefore, it should not be construed to be limited to the above-described embodiments, It should be construed as being used in various ways that can be handled independently in sequence.
  • 16 illustrates a process of determining that the current encoding unit is divided into odd number of encoding units when the image decoding apparatus 2080 can not process the encoding units in a predetermined order according to an embodiment.
  • the image decoding apparatus 2080 can determine that the current encoding unit is divided into odd number of encoding units based on the obtained block type information and information on the split mode mode.
  • the first encoding unit 800 in the form of a square may be divided into second non-square encoding units 810a and 810b, and the second encoding units 810a and 810b may be independently 3 encoding units 820a, 820b, 820c, 820d, and 820e.
  • the image decoding apparatus 2080 can determine the plurality of third encoding units 820a and 820b by dividing the left encoding unit 810a of the second encoding unit in the horizontal direction, and the right encoding unit 810b Can be divided into an odd number of third encoding units 820c, 820d, and 820e.
  • the image decoding apparatus 2080 determines whether or not the third encoding units 820a, 820b, 820c, 820d, and 820e can be processed in a predetermined order and determines whether there are odd-numbered encoding units You can decide. Referring to FIG. 16, the image decoding apparatus 2080 can recursively divide the first encoding unit 800 to determine the third encoding units 820a, 820b, 820c, 820d, and 820e.
  • the image decoding apparatus 2080 may encode the first encoding unit 800, the second encoding units 810a and 810b or the third encoding units 820a and 820b based on at least one of the block type information and the information on the split mode mode , 820c, 820d, and 820e are divided into odd number of coding units among the divided types. For example, an encoding unit located on the right of the second encoding units 810a and 810b may be divided into odd third encoding units 820c, 820d, and 820e.
  • the order in which the plurality of coding units included in the first coding unit 800 are processed may be a predetermined order (for example, a z-scan order 830) 2080 can determine whether the third encoding units 820c, 820d, and 820e determined by dividing the right second encoding unit 810b into odd numbers satisfy the condition that the third encoding units 820c, 820d, and 820e can be processed according to the predetermined order.
  • a predetermined order for example, a z-scan order 830
  • the image decoding apparatus 2080 satisfies the condition that the third encoding units 820a, 820b, 820c, 820d, and 820e included in the first encoding unit 800 can be processed in a predetermined order And it is determined whether or not at least one of the widths and heights of the second encoding units 810a and 810b is divided in half according to the boundaries of the third encoding units 820a, 820b, 820c, 820d, and 820e, .
  • the third encoding units 820a and 820b which are determined by dividing the height of the left second encoding unit 810a in the non-square shape by half, can satisfy the condition.
  • the boundaries of the third encoding units 820c, 820d, and 820e determined by dividing the right second encoding unit 810b into three encoding units do not divide the width or height of the right second encoding unit 810b in half ,
  • the third encoding units 820c, 820d, and 820e may be determined as not satisfying the condition.
  • the image decoding apparatus 2080 may determine that the scan sequence is disconnection in the case of such unsatisfactory condition and determine that the right second encoding unit 810b is divided into odd number of encoding units based on the determination result.
  • the image decoding apparatus 2080 may limit a coding unit at a predetermined position among the divided coding units when the coding unit is divided into odd number of coding units. Since the embodiment has been described above, a detailed description thereof will be omitted.
  • FIG. 17 illustrates a process in which the image decoding apparatus 2080 determines at least one encoding unit by dividing a first encoding unit 900 according to an embodiment.
  • the image decoding apparatus 2080 can divide the first encoding unit 900 based on at least one of the block type information obtained through the entropy decoding unit 2055 and the information on the split mode mode .
  • the first coding unit 900 in the form of a square may be divided into four coding units having a square form, or may be divided into a plurality of non-square coding units. For example, referring to FIG. 17, if the block type information indicates that the first encoding unit 900 is square, and the information on the split mode mode is divided into non-square encoding units, the image decoding apparatus 2080 1 encoding unit 900 into a plurality of non-square encoding units.
  • the image decoding apparatus 2080 decodes the first encoding
  • the unit 900 can be divided into the second coding units 910a, 910b and 910c divided in the vertical direction as the odd number of coding units or the second coding units 920a, 920b and 920c divided in the horizontal direction .
  • the image decoding apparatus 2080 may be configured such that the second encoding units 910a, 910b, 910c, 920a, 920b, and 920c included in the first encoding unit 900 are processed in a predetermined order And the condition is that at least one of the width and the height of the first encoding unit 900 is divided in half according to the boundaries of the second encoding units 910a, 910b, 910c, 920a, 920b, and 920c .
  • the boundaries of the second encoding units 910a, 910b, and 910c which are determined by dividing the first encoding unit 900 in the vertical direction into a square shape, are divided in half by the width of the first encoding unit 900
  • the first encoding unit 900 can be determined as not satisfying a condition that can be processed in a predetermined order.
  • the boundaries of the second encoding units 920a, 920b, and 920c which are determined by dividing the first encoding unit 900 in the horizontal direction into the horizontal direction, can not divide the width of the first encoding unit 900 in half, 1 encoding unit 900 may be determined as not satisfying a condition that can be processed in a predetermined order.
  • the image decoding apparatus 2080 may determine that the scan sequence is disconnection in the case of such unsatisfactory condition and determine that the first encoding unit 900 is divided into odd number of encoding units based on the determination result. According to an exemplary embodiment, the image decoding apparatus 2080 may limit a coding unit at a predetermined position among the divided coding units when the coding unit is divided into odd number of coding units. Since the embodiment has been described above, a detailed description thereof will be omitted.
  • the image decoding apparatus 2080 may divide the first encoding unit to determine various types of encoding units.
  • the image decoding apparatus 2080 may divide a first coding unit 900 in a square form and a first coding unit 930 or 950 in a non-square form into various types of coding units .
  • the image decoding apparatus 2080 decodes the first encoding unit 1000 in the form of a square based on at least one of the block type information and the division type mode information acquired through the entropy decoding unit 2055 - the second encoding units 1010a, 1010b, 1020a, and 1020b in the form of a square.
  • the second encoding units 1010a, 1010b, 1020a, and 1020b may be independently divided.
  • the image decoding apparatus 2080 divides or divides the image data into a plurality of encoding units based on at least one of the block type information and the information on the split mode mode associated with each of the second encoding units 1010a, 1010b, 1020a, and 1020b You can decide not to. According to one embodiment, the image decoding apparatus 2080 divides the non-square left second encoding unit 1010a determined by dividing the first encoding unit 1000 in the vertical direction into a horizontal direction, 1012a, and 1012b.
  • the right second encoding unit 1010b is horizontally aligned with the left second encoding unit 1010a in a direction in which the left second encoding unit 1010a is divided, As shown in Fig. If the right second encoding unit 1010b is divided in the same direction and the third encoding units 1014a and 1014b are determined, the left second encoding unit 1010a and the right second encoding unit 1010b are arranged in the horizontal direction
  • the third encoding units 1012a, 1012b, 1014a, and 1014b can be determined by being independently divided.
  • the image decoding apparatus 2080 may convert the first encoding unit 1000 into four square-shaped second encoding units 1030a, 1030b, 1030c, and 1030d based on at least one of the block type information and the information on the split mode mode ), which may be inefficient in terms of image decoding.
  • the image decoding apparatus 2080 divides the non-square second encoding unit 1020a or 1020b determined by dividing the first encoding unit 1000 in the horizontal direction into a vertical direction, (1022a, 1022b, 1024a, 1024b).
  • the video decoding apparatus 2080 decodes the second coding unit (for example, The encoding unit 1020b) can be restricted such that the upper second encoding unit 1020a can not be divided vertically in the same direction as the divided direction.
  • FIG. 19 illustrates a process in which the image decoding apparatus 2080 divides a square-shaped encoding unit when the information on the split mode mode can not indicate division into four square-shaped encoding units according to an embodiment .
  • the image decoding apparatus 2080 divides the first encoding unit 1100 based on at least one of information on the block type information and the information on the split mode mode to generate second encoding units 1110a, 1110b, 1120a, and 1120b Etc.) can be determined.
  • the information on the division type mode may include information on various types in which the coding unit can be divided, but information on various types may not include information for dividing into four square units of coding units.
  • the image decoding apparatus 2080 can not divide the first encoding unit 1100 in the square form into the second encoding units 1130a, 1130b, 1130c, and 1130d in the form of four squares .
  • the image decoding apparatus 2080 can determine the second encoding units 1110a, 1110b, 1120a, and 1120b in the non-square form based on the information on the split mode mode.
  • the image decoding apparatus 2080 can independently divide the non-square second encoding units 1110a, 1110b, 1120a, and 1120b, respectively.
  • Each of the second encoding units 1110a, 1110b, 1120a, and 1120b may be divided in a predetermined order through a recursive method, and the first encoding units 1110a, 1110b, 1120a, and 1120b may be divided according to at least one of the block type information, May be a division method corresponding to how the unit 1100 is divided.
  • the image decoding apparatus 2080 can determine the third encoding units 1112a and 1112b in the form of a square by dividing the left second encoding unit 1110a in the horizontal direction, and the second right encoding unit 1110b It is possible to determine the third encoding units 1114a and 1114b in the form of a square by being divided in the horizontal direction. Furthermore, the image decoding apparatus 2080 may divide the left second encoding unit 1110a and the right second encoding unit 1110b in the horizontal direction to determine the third encoding units 1116a, 1116b, 1116c, and 1116d in the form of a square have. In this case, the encoding unit can be determined in the same manner as the first encoding unit 1100 is divided into the four second square encoding units 1130a, 1130b, 1130c, and 1130d.
  • the image decoding apparatus 2080 can determine the third encoding units 1122a and 1122b in the shape of a square by dividing the upper second encoding unit 1120a in the vertical direction, and the lower second encoding units 1120b May be divided in the vertical direction to determine the third encoding units 1124a and 1124b in the form of a square. Further, the image decoding apparatus 2080 may divide the upper second encoding unit 1120a and the lower second encoding unit 1120b in the vertical direction to determine the square-shaped third encoding units 1126a, 1126b, 1126a, and 1126b have. In this case, the encoding unit can be determined in the same manner as the first encoding unit 1100 is divided into the four second square encoding units 1130a, 1130b, 1130c, and 1130d.
  • FIG. 20 illustrates that a processing order among a plurality of coding units may be changed according to a division process of coding units according to an embodiment.
  • the image decoding apparatus 2080 may divide the first encoding unit 1200 based on information on the block type information and the split mode mode.
  • the image decoding apparatus 2080 decodes the first encoding
  • the unit 1200 can be divided to determine the second encoding unit (e.g., 1210a, 1210b, 1220a, 1220b, etc.). Referring to FIG.
  • the non-square second encoding units 1210a, 1210b, 1220a, and 1220b which are determined by dividing the first encoding unit 1200 only in the horizontal direction or the vertical direction, Can be independently divided based on information on the < / RTI >
  • the image decoding apparatus 2080 divides the second encoding units 1210a and 1210b generated by dividing the first encoding unit 1200 in the vertical direction into the horizontal direction, and outputs the third encoding units 1216a, 1216b, 1216c and 1216d can be determined and the second encoding units 1220a and 1220b generated by dividing the first encoding unit 1200 in the horizontal direction are divided in the horizontal direction and the third encoding units 1226a, , 1226d. Since the process of dividing the second encoding units 1210a, 1210b, 1220a, and 1220b has been described above with reference to FIG. 19, a detailed description thereof will be omitted.
  • the image decoding apparatus 2080 can process a coding unit in a predetermined order. Features of processing of a coding unit in a predetermined order have been described above with reference to FIG. 15, and a detailed description thereof will be omitted. Referring to FIG. 20, the image decoding apparatus 2080 divides a first encoding unit 1200 of a square shape into 4 pieces of fourth encoding units 1216a, 1216b, 1216c, 1216d, 1226a, 1226b, 1226c, 1226d Can be determined.
  • the image decoding apparatus 2080 decodes the processing order of the third encoding units 1216a, 1216b, 1216c, 1216d, 1226a, 1226b, 1226c, and 1226d according to the form in which the first encoding unit 1200 is divided You can decide.
  • the image decoding apparatus 2080 divides the second encoding units 1210a and 1210b generated in the vertical direction into horizontal units to determine the third encoding units 1216a, 1216b, 1216c, and 1216d And the image decoding apparatus 2080 processes the third encoding units 1216a and 1216c included in the left second encoding unit 1210a first in the vertical direction and then processes the third encoding units 1216a and 1216c included in the right second encoding unit 1210b The third encoding units 1216a, 1216b, 1216c, and 1216d can be processed according to the order 1217 of processing the third encoding units 1216b and 1216d in the vertical direction.
  • the image decoding apparatus 2080 divides the second encoding units 1220a and 1220b generated in the horizontal direction into vertical directions to determine the third encoding units 1226a, 1226b, 1226c and 1226d And the image decoding apparatus 2080 first processes the third encoding units 1226a and 1226b included in the upper second encoding unit 1220a in the horizontal direction and then processes the third encoding units 1226a and 1226b included in the lower second encoding unit 1220b The third encoding units 1226a, 1226b, 1226c, and 1226d may be processed in accordance with an order 1227 for processing the third encoding units 1226c and 1226d in the horizontal direction.
  • the second encoding units 1210a, 1210b, 1220a, and 1220b are divided to determine the third encoding units 1216a, 1216b, 1216c, 1216d, 1226a, 1226b, 1226c, and 1226d, have.
  • the second encoding units 1210a and 1210b determined to be divided in the vertical direction and the second encoding units 1220a and 1220b determined to be divided in the horizontal direction are divided into different formats, but the third encoding units 1216a , 1216b, 1216c, 1216d, 1226a, 1226b, 1226c, and 1226d, the result is that the first encoding unit 1200 is divided into the same type of encoding units.
  • the image decoding apparatus 2080 divides the encoding unit recursively through different processes based on at least one of the block type information and the information about the division mode, thereby determining the same type of encoding units as a result, A plurality of encoding units may be processed in different orders.
  • FIG. 21 illustrates a process in which the depth of an encoding unit is determined according to a change in type and size of an encoding unit when a plurality of encoding units are determined by recursively dividing an encoding unit according to an exemplary embodiment.
  • the image decoding apparatus 2080 can determine the depth of a coding unit according to a predetermined criterion.
  • a predetermined criterion may be a length of a long side of a coding unit.
  • the depth of the current coding unit is smaller than the depth of the coding unit before being divided it can be determined that the depth is increased by n.
  • an encoding unit with an increased depth is expressed as a lower-depth encoding unit.
  • the image decoding apparatus 2080 may include a square- 1 encoding unit 1300 can be divided to determine the second encoding unit 1302, the third encoding unit 1304, etc. of the lower depth. If the size of the first encoding unit 1300 in the form of a square is 2Nx2N, the second encoding unit 1302 determined by dividing the width and height of the first encoding unit 1300 by 1/2 may have a size of NxN have.
  • the third encoding unit 1304 determined by dividing the width and height of the second encoding unit 1302 by a half size may have a size of N / 2xN / 2.
  • the width and height of the third encoding unit 1304 correspond to 1/4 of the first encoding unit 1300. If the depth of the first encoding unit 1300 is D, the depth of the second encoding unit 1302, which is half the width and height of the first encoding unit 1300, may be D + 1, The depth of the third encoding unit 1304, which is one fourth of the width and height of the third encoding unit 1300, may be D + 2.
  • block type information indicating a non-square shape for example, block type information is' 1: NS_VER 'indicating that the height is a non-square having a width greater than the width or' 2 >: NS_HOR '
  • the image decoding apparatus 2080 divides the non-square first coding unit 1310 or 1320 into a second lower coding unit 1312 or 1322, The third encoding unit 1314 or 1324, or the like.
  • the image decoding apparatus 2080 can determine a second coding unit (e.g., 1302, 1312, 1322, etc.) by dividing at least one of the width and the height of the first coding unit 1310 of Nx2N size. That is, the image decoding apparatus 2080 can determine the second encoding unit 1302 of NxN size or the second encoding unit 1322 of NxN / 2 size by dividing the first encoding unit 1310 in the horizontal direction, It is also possible to determine the second encoding unit 1312 of N / 2xN size by dividing it in the horizontal direction and the vertical direction.
  • a second coding unit e.g., 1302, 1312, 1322, etc.
  • the image decoding apparatus 2080 divides at least one of the width and the height of the 2NxN first encoding unit 1320 to determine a second encoding unit (for example, 1302, 1312, 1322, etc.) It is possible. That is, the image decoding apparatus 2080 can determine the second encoding unit 1302 of NxN size or the second encoding unit 1312 of N / 2xN size by dividing the first encoding unit 1320 in the vertical direction, The second encoding unit 1322 of the NxN / 2 size may be determined by dividing the image data in the horizontal direction and the vertical direction.
  • a second encoding unit for example, 1302, 1312, 1322, etc.
  • the image decoding apparatus 2080 divides at least one of the width and the height of the second encoding unit 1302 of NxN size to determine a third encoding unit (for example, 1304, 1314, 1324, etc.) It is possible. That is, the image decoding apparatus 2080 divides the second encoding unit 1302 in the vertical direction and the horizontal direction to determine a third encoding unit 1304 of N / 2xN / 2 size or a N / 4xN / 3 encoding unit 1314 or a third encoding unit 1324 of N / 2xN / 4 size.
  • a third encoding unit for example, 1304, 1314, 1324, etc.
  • the image decoding apparatus 2080 divides at least one of the width and the height of the second encoding unit 1312 of N / 2xN size into a third encoding unit (e.g., 1304, 1314, 1324, etc.) . That is, the image decoding apparatus 2080 divides the second encoding unit 1312 in the horizontal direction to generate a third encoding unit 1304 of N / 2xN / 2 or a third encoding unit 1324 of N / 2xN / 4 size ) Or may be divided in the vertical and horizontal directions to determine the third encoding unit 1314 of N / 4xN / 2 size.
  • a third encoding unit e.g. 1304, 1314, 1324, etc.
  • the image decoding apparatus 2080 may divide at least one of the width and the height of the second encoding unit 1322 of NxN / 2 size into a third encoding unit (e.g., 1304, 1314, 1324, etc.) . That is, the image decoding apparatus 2080 divides the second encoding unit 1322 in the vertical direction to obtain a third encoding unit 1304 of N / 2xN / 2 or a third encoding unit 1314 of N / 4xN / 2 size ) Or may be divided in the vertical and horizontal directions to determine the third encoding unit 1324 of N / 2xN / 4 size.
  • a third encoding unit e.g. 1304, 1314, 1324, etc.
  • the image decoding apparatus 2080 may divide a square-shaped encoding unit (for example, 1300, 1302, and 1304) into a horizontal direction or a vertical direction.
  • a square-shaped encoding unit for example, 1300, 1302, and 1304
  • the first encoding unit 1300 having a size of 2Nx2N is divided in the vertical direction to determine a first encoding unit 1310 having a size of Nx2N or the first encoding unit 1310 having a size of 2NxN to determine a first encoding unit 1320 having a size of 2NxN .
  • the depth of the encoding unit when the depth is determined based on the length of the longest side of the encoding unit, the depth of the encoding unit, which is determined by dividing the first encoding unit 1300 of 2Nx2N size in the horizontal direction or the vertical direction, May be the same as the depth of the unit (1300).
  • the width and height of the third encoding unit 1314 or 1324 may correspond to one fourth of the first encoding unit 1310 or 1320.
  • the depth of the first coding unit 1310 or 1320 is D
  • the depth of the second coding unit 1312 or 1322 which is half the width and height of the first coding unit 1310 or 1320 is D +
  • the depth of the third encoding unit 1314 or 1324, which is one fourth of the width and height of the first encoding unit 1310 or 1320 may be D + 2.
  • FIG. 22 illustrates a depth index (hereinafter referred to as a PID) for classifying a depth and a coding unit that can be determined according to the type and size of coding units according to an exemplary embodiment.
  • a PID depth index
  • the image decoding apparatus 2080 may divide the first encoding unit 1400 in a square form to determine various types of second encoding units. 22, the image decoding apparatus 2080 divides the first encoding unit 1400 into at least one of the vertical direction and the horizontal direction according to the information on the division mode mode, and outputs the second encoding units 1402a and 1402b , 1404a, 1404b, 1406a, 1406b, 1406c, 1406d. That is, the image decoding apparatus 2080 determines the second encoding units 1402a, 1402b, 1404a, 1404b, 1406a, 1406b, 1406c, and 1406d based on the information on the split mode mode for the first encoding unit 1400 .
  • the second encoding units 1402a, 1402b, 1404a, 1404b, 1406a, 1406b, 1406c, and 1406d which are determined according to the information on the split mode mode for the first encoding unit 1400 in the square form.
  • the depth can be determined based on the length of the sides. For example, since the length of one side of the first encoding unit 1400 in the square form is the same as the length of long sides of the second encoding units 1402a, 1402b, 1404a, and 1404b in the non-square form, 1400) and the non-square type second encoding units 1402a, 1402b, 1404a, 1404b are denoted by D in the same manner.
  • the length of one side of the second encoding units 1406a, 1406b, 1406c and 1406d in the form of the second encoding units 1406a, 1406b, 1406c and 1406d is 1/2 of the length of one side of the first encoding unit 1400, May be a depth of D + 1 that is one depth lower than D, which is the depth of the first encoding unit 1400.
  • the image decoding apparatus 2080 divides the first coding unit 1410 having a height greater than the width in the horizontal direction according to the information about the division mode, and generates a plurality of second coding units 1412a and 1412b , 1414a, 1414b, and 1414c. According to an embodiment, the image decoding apparatus 2080 divides the first encoding unit 1420 having a shape whose length is greater than the height, in the vertical direction according to the information on the division mode, and generates a plurality of second encoding units 1422a and 1422b , 1424a, 1424b, 1424c.
  • 1412b, 1414a, 1414b, 1414c. 1422a, 1422b, 1414c, 1414b, 1414c, 1414b, 1414c, 1414b, 1414c, 1414b, 1414c, 1424a, 1424b, 1424c can be determined in depth based on the length of the long side. For example, since the length of one side of the square-shaped second encoding units 1412a and 1412b is 1/2 times the length of one side of the non-square first encoding unit 1410 whose height is longer than the width, The depth of the second encoding units 1412a and 1412b of the form is D + 1 which is one depth lower than the depth D of the first encoding unit 1410 of the non-square form.
  • the image decoding apparatus 2080 can divide the non-square first encoding unit 1410 into odd number of second encoding units 1414a, 1414b and 1414c based on the information on the split mode mode.
  • the odd number of second encoding units 1414a, 1414b and 1414c may include non-square second encoding units 1414a and 1414c and a square second encoding unit 1414b.
  • the length of the long sides of the non-square type second encoding units 1414a and 1414c and the length of one side of the second encoding unit 1414b in the square form are set to 1/10 of the length of one side of the first encoding unit 1410
  • the depth of the second encoding units 1414a, 1414b, and 1414c may be a depth of D + 1 which is one depth lower than D, which is the depth of the first encoding unit 1410.
  • the image decoding apparatus 2080 is connected to the first encoding unit 1420 in the form of a non-square shape whose width is longer than the height in a manner corresponding to the scheme for determining the depths of the encoding units associated with the first encoding unit 1410 The depth of the encoding units can be determined.
  • the image decoding apparatus 2080 may calculate the size ratio between the coding units The index can be determined based on the index. Referring to FIG. 22, the coding unit 1414b positioned at the center among the odd-numbered coding units 1414a, 1414b, and 1414c has the same width as the other coding units 1414a and 1414c, Lt; / RTI > 1414a and 1414c. That is, in this case, the encoding unit 1414b positioned in the middle may include two of the other encoding units 1414a and 1414c.
  • the coding unit 1414c positioned next to the coding unit 1414c may be three days in which the index is increased by two. That is, there may be a discontinuity in the value of the index.
  • the image decoding apparatus 2080 may determine whether odd-numbered encoding units are not the same size based on the presence or absence of an index discontinuity for distinguishing between the divided encoding units.
  • the image decoding apparatus 2080 can determine whether the image is divided into a specific division form based on an index value for identifying a plurality of coding units divided and determined from the current coding unit. 22, the image decoding apparatus 2080 divides a first coding unit 1410 of a rectangular shape whose height is longer than the width to determine an even number of coding units 1412a and 1412b or an odd number of coding units 1414a and 1414b , And 1414c.
  • the image decoding apparatus 2080 may use an index (PID) indicating each coding unit in order to distinguish each of the plurality of coding units.
  • the PID may be obtained at a sample of a predetermined position of each coding unit (e.g., the upper left sample).
  • the image decoding apparatus 2080 may determine an encoding unit at a predetermined position among the encoding units determined by using the index for classifying the encoding unit. According to an exemplary embodiment, when the information on the split mode format for the rectangular first-type encoding unit 1410 whose height is longer than the width is divided into three encoding units, the image decoding apparatus 2080 decodes the first encoding unit 1410 can be divided into three coding units 1414a, 1414b, 1414c. The image decoding apparatus 2080 can assign an index to each of the three encoding units 1414a, 1414b, and 1414c.
  • the image decoding apparatus 2080 can compare the indexes of the respective coding units in order to determine the middle coding unit among the coding units divided into odd numbers.
  • the image decoding apparatus 2080 encodes the encoding unit 1414b having an index corresponding to the middle value among the indices based on the indexes of the encoding units by encoding the middle position among the encoding units determined by dividing the first encoding unit 1410 Can be determined as a unit.
  • the image decoding apparatus 2080 may determine an index based on a size ratio between coding units when the coding units are not the same size in determining the index for dividing the divided coding units .
  • the coding unit 1414b generated by dividing the first coding unit 1410 is divided into coding units 1414a and 1414c having the same width as the other coding units 1414a and 1414c but different in height Can be double the height.
  • the index (PID) of the coding unit 1414b positioned at the center is 1, the coding unit 1414c located next to the coding unit 1414c may be three days in which the index is increased by two.
  • the image decoding apparatus 2080 may determine that the image is divided into a plurality of encoding units including encoding units having different sizes from other encoding units.
  • the image decoding apparatus 2080 decodes the encoding unit (for example, the middle encoding unit) at a predetermined position among the odd number of encoding units
  • the current encoding unit can be divided into different sizes.
  • the image decoding apparatus 2080 can determine an encoding unit having a different size by using an index (PID) for the encoding unit.
  • PID index
  • the index and the size or position of the encoding unit at a predetermined position to be determined are specific for explaining an embodiment, and thus should not be construed to be limited thereto, and various indexes, positions and sizes of encoding units can be used Should be interpreted.
  • the image decoding apparatus 2080 may use a predetermined data unit in which recursive division of an encoding unit starts.
  • FIG. 23 illustrates that a plurality of coding units are determined according to a plurality of predetermined data units included in a picture according to an embodiment.
  • a predetermined data unit may be defined as a unit of data in which an encoding unit starts to be recursively segmented using at least one of block type information and information on a division mode mode. That is, it may correspond to a coding unit of the highest depth used in the process of determining a plurality of coding units for dividing the current picture.
  • a predetermined data unit is referred to as a reference data unit for convenience of explanation.
  • the reference data unit may represent a predetermined size and shape.
  • the reference encoding unit may comprise samples of MxN.
  • M and N may be equal to each other, or may be an integer represented by a multiplier of 2. That is, the reference data unit may represent a square or a non-square shape, and may be divided into an integer number of encoding units.
  • the image decoding apparatus 2080 may divide the current picture into a plurality of reference data units. According to an exemplary embodiment, the image decoding apparatus 2080 may divide a plurality of reference data units for dividing a current picture into pieces using information on a division mode mode for each reference data unit. The segmentation process of the reference data unit may correspond to the segmentation process using a quad-tree structure.
  • the image decoding apparatus 2080 can determine in advance the minimum size that the reference data unit included in the current picture can have. Accordingly, the image decoding apparatus 2080 can determine reference data units of various sizes having a size of a minimum size or more, and use at least one of the block type information and the division mode mode information based on the determined reference data unit The encoding unit can be determined.
  • the image decoding apparatus 2080 can use a square-shaped reference encoding unit 1500 or a non-square-shaped reference encoding unit 1502.
  • the type and size of the reference encoding unit may include various data units (e.g., a sequence, a picture, a slice, a slice segment a slice segment, a maximum encoding unit, and the like).
  • the entropy decoding unit 2055 of the image decoding apparatus 2080 may obtain at least one of the information on the type of the reference encoding unit and the size of the reference encoding unit from the bitstream for each of the various data units .
  • the process of determining at least one encoding unit included in the reference type encoding unit 1500 is described in detail in the process of dividing the current encoding unit 300 of FIG. 11, and the process of dividing the non- ) Is determined through the process of dividing the current encoding unit 400 or 450 of FIG. 12, so that a detailed description thereof will be omitted.
  • the image decoding apparatus 2080 may include an index for identifying the size and type of the reference encoding unit Can be used. That is, the entropy decoding unit 2055 decodes a predetermined condition (for example, data having a size smaller than a slice) among the various data units (e.g., a sequence, a picture, a slice, a slice segment, Unit), it is possible to obtain only an index for identification of the size and type of the reference encoding unit for each slice, slice segment, maximum encoding unit, and the like.
  • a predetermined condition for example, data having a size smaller than a slice
  • the various data units e.g., a sequence, a picture, a slice, a slice segment, Unit
  • the image decoding apparatus 2080 can determine the size and type of the reference data unit for each data unit that satisfies the predetermined condition by using the index.
  • the information on the type of the reference encoding unit and the information on the size of the reference encoding unit are obtained from the bitstream for each relatively small data unit and used, the use efficiency of the bitstream may not be good. Therefore, Information on the size of the reference encoding unit and information on the size of the reference encoding unit can be acquired and used. In this case, at least one of the size and the type of the reference encoding unit corresponding to the index indicating the size and type of the reference encoding unit may be predetermined.
  • the image decoding apparatus 2080 selects at least one of a size and a type of a predetermined reference encoding unit according to an index, thereby obtaining at least one of a size and a type of a reference encoding unit included in a data unit serving as a reference for obtaining an index You can decide.
  • the image decoding apparatus 2080 may use at least one reference encoding unit included in one maximum encoding unit. That is, the maximum encoding unit for dividing an image may include at least one reference encoding unit, and the encoding unit may be determined through a recursive division process of each reference encoding unit. According to an exemplary embodiment, at least one of the width and the height of the maximum encoding unit may correspond to at least one integer multiple of the width and height of the reference encoding unit. According to an exemplary embodiment, the size of the reference encoding unit may be a size obtained by dividing the maximum encoding unit n times according to a quadtree structure.
  • the image decoding apparatus 2080 can determine the reference encoding unit by dividing the maximum encoding unit n times according to the quad tree structure, and can calculate the reference encoding unit as block type information and information on the split mode Based on at least one of them.
  • FIG. 24 shows a processing block serving as a reference for determining a determination order of reference encoding units included in the picture 1600 according to an embodiment.
  • the image decoding apparatus 2080 can determine at least one processing block that divides a picture.
  • the processing block is a data unit including at least one reference encoding unit for dividing an image, and at least one reference encoding unit included in the processing block may be determined in a specific order. That is, the order of determination of at least one reference encoding unit determined in each processing block may correspond to one of various kinds of order in which the reference encoding unit can be determined, and the reference encoding unit determination order determined in each processing block May be different for each processing block.
  • the order of determination of the reference encoding unit determined for each processing block is a raster scan, a Z scan, an N scan, an up-right diagonal scan, a horizontal scan a horizontal scan, and a vertical scan. However, the order that can be determined should not be limited to the scan orders.
  • the image decoding apparatus 2080 may obtain information on the size of the processing block to determine the size of the at least one processing block included in the image.
  • the image decoding apparatus 2080 may obtain information on the size of the processing block from the bitstream to determine the size of the at least one processing block included in the image.
  • the size of such a processing block may be a predetermined size of a data unit represented by information on the size of the processing block.
  • the entropy decoding unit 2055 of the image decoding apparatus 2080 can obtain information on the size of the processing block from the bitstream for each specific data unit.
  • information on the size of a processing block can be obtained from a bitstream in units of data such as an image, a sequence, a picture, a slice, a slice segment, and the like. That is, the entropy decoding unit 2055 can obtain information on the size of the processing block from the bitstream for each of the plurality of data units, and the image decoding apparatus 2080 divides the picture using the information on the size of the obtained processing block
  • the size of the processing block may be an integer multiple of the reference encoding unit.
  • the image decoding apparatus 2080 can determine the sizes of the processing blocks 1602 and 1612 included in the picture 1600. [ For example, the image decoding apparatus 2080 can determine the size of the processing block based on information on the size of the processing block obtained from the bitstream. 24, the image decoding apparatus 2080 decodes the horizontal size of the processing blocks 1602 and 1612 by four times the horizontal size of the reference encoding unit, four times the vertical size of the reference encoding unit, You can decide. The image decoding apparatus 2080 can determine an order in which at least one reference encoding unit is determined in at least one processing block.
  • the video decoding apparatus 2080 can determine each processing block 1602, 1612 included in the picture 1600 based on the size of the processing block, and can include in the processing blocks 1602, 1612 The determination order of at least one reference encoding unit is determined.
  • the determination of the reference encoding unit may include determining the size of the reference encoding unit according to an embodiment.
  • the image decoding apparatus 2080 may obtain information on a determination order of at least one reference encoding unit included in at least one processing block from a bitstream, So that the order in which at least one reference encoding unit is determined can be determined.
  • the information on the decision order can be defined in the order or direction in which the reference encoding units are determined in the processing block. That is, the order in which the reference encoding units are determined may be independently determined for each processing block.
  • the image decoding apparatus 2080 may obtain information on a determination order of a reference encoding unit from a bit stream for each specific data unit.
  • the entropy decoding unit 2055 can obtain information on the determination order of the reference encoding unit from a bitstream for each data unit such as an image, a sequence, a picture, a slice, a slice segment, and a processing block. Since the information on the determination order of the reference encoding unit indicates the reference encoding unit determination order in the processing block, the information on the determination order can be obtained for each specific data unit including an integer number of processing blocks.
  • the image decoding apparatus 2080 may determine at least one reference encoding unit based on the determined order according to an embodiment.
  • the entropy decoding unit 2055 can obtain information on the reference encoding unit determination order from the bitstream as information related to the processing blocks 1602 and 1612, and the video decoding apparatus 2080 can obtain the information It is possible to determine the order of determining at least one reference encoding unit included in the blocks 1602 and 1612 and determine at least one reference encoding unit included in the picture 1600 according to the determination order of the encoding units. Referring to FIG. 24, the video decoding apparatus 2080 can determine the determination order 1604 and 1614 of at least one reference encoding unit associated with each of the processing blocks 1602 and 1612.
  • the reference encoding unit determination order associated with each processing block 1602, 1612 may be different for each processing block. If the reference encoding unit determination order 1604 related to the processing block 1602 is a raster scan order, the reference encoding unit included in the processing block 1602 can be determined according to the raster scan order. On the other hand, when the reference encoding unit determination order 1614 related to the other processing block 1612 is a reverse order of the raster scan order, the reference encoding unit included in the processing block 1612 can be determined according to the reverse order of the raster scan order.
  • the image decoding apparatus 2080 may decode the determined at least one reference encoding unit according to an embodiment.
  • the image decoding apparatus 2080 can decode an image based on the reference encoding unit determined through the above-described embodiment.
  • the method of decoding the reference encoding unit may include various methods of decoding the image.
  • the image decoding apparatus 2080 may obtain block type information indicating a type of a current encoding unit or information on a split mode mode indicating a method of dividing a current encoding unit from a bitstream.
  • Information about the block type information or the split mode mode may be included in a bitstream related to various data units.
  • the video decoding apparatus 2080 includes a sequence parameter set, a picture parameter set, a video parameter set, a slice header, a slice segment header slice block type information included in the segment header or information on the split mode mode can be used.
  • the image decoding apparatus 2080 can acquire and use a syntax element corresponding to information on the maximum encoding unit, the reference encoding unit, the block type information from the bit stream, or the split mode mode for each processing block from the bit stream.
  • the above-described embodiments of the present disclosure can be embodied in a general-purpose digital computer that can be created as a program that can be executed by a computer and operates the program using a computer-readable recording medium.
  • the computer readable recording medium includes a storage medium such as a magnetic storage medium (e.g., ROM, floppy disk, hard disk, etc.), optical reading medium (e.g., CD ROM, DVD, etc.).

Abstract

본 개시의 일 실시예에 따른 비디오 복호화 방법은 현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 상기 참조 영상의 외곽선 내부에 인접하는 외곽선 블록들의 움직임 정보 및 인트라 모드 정보를 획득하는 단계; 상기 외곽선 내부에 인접하는 외곽선 블록의 움직임 정보 및 인트라 모드 정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정하는 단계; 및 상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 결정하는 단계를 포함한다.

Description

움직임 예측에 의한 패딩 기법을 이용한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
현재 영상의 움직임 예측을 위해, 참조 영상의 주변 정보를 이용하여 영상을 부호화 또는 복호화 할 수 있다.
비디오는 다량의 데이터를 포함하고 있기 때문에, 비디오에 포함된 각 영상을 다수의 블록들로 분할하여 부호화하는 비디오 부호화/복호화 방법 및 장치들이 사용되고 있다.
또한 현재 영상의 컨텐트는 현재 영상의 이전 영상 또는 다음 영상과 비슷하다는 가정 하에, 이전 영상 또는 다음 영상을 이용하여 현재 영상을 예측하는 인터 예측 방식이 비디오 부호화/복호화 과정 중에 이용된다. 인터 예측도 블록들마다 수행될 수 있다. 현재 영상의 블록들 중에서 현재 블록을 위한 인터 예측을 위해, 다른 영상의 블록들 중에 현재 블록과 가장 유사한 블록 간의 거리는, 주로 움직임 벡터로 표현될 수 있다. 인터 예측으로 인해 결정된 움직임 벡터를 이용하여, 현재 블록의 샘플값들을 예측할 수 있다. 구체적으로, 다른 영상(참조 영상)의 블록들 중에서, 현재 블록으로부터 움직임 벡터만큼 떨어져 있는 블록(참조 블록)의 샘플값을 이용하여, 현재 블록의 샘플값들을 예측할 수 있다.
본 개시의 일 측면에 따른 비디오 부호화 방법은, 현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 참조 영상의 외곽선 내부에 인접하는 블록들의 예측정보를 획득하는 단계; 상기 외곽선 내부에 인접하는 블록의 예측정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정하는 단계; 및 상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 결정하는 단계를 포함한다.
상기 참조 샘플들은 영상 내에 위치할 수 있다.
상기 예측정보는 상기 외곽선 내부에 인접하는 블록의 인터 예측 정보이고, 상기 인터 예측 정보는 참조 픽처 리스트, 참조 인덱스, 및 움직임 벡터 중 적어도 하나를 포함할 수 있다.
상기 인터 예측 정보의 참조 픽처 리스트가 L0 참조 리스트 및 L1 참조 리스트를 가리키는 경우에, 상기 L0 참조 리스트의 움직임 벡터 및 상기 L1 참조 리스트의 움직임 벡터가 가리키는 영역들의 상기 외곽선 외부 방향으로 이웃하는 영역들이 영상의 내부인 경우에, 상기 이웃하는 영역들 중 크기가 더 작은 영역에 대하여 상기 L0 참조 리스트의 움직임 벡터에 해당하는 예측 정보 및 상기 L1 참조 리스트의 움직임 벡터에 해당하는 예측 정보를 모두 이용하여 Bi-linear 방식으로 상기 참조 샘플들을 결정할 수 있다.
상기 인터 예측 정보의 참조 픽처 리스트가 L0 참조 리스트 및 L1 참조 리스트를 가리키는 경우에, 상기 L0 참조 리스트의 움직임 벡터 및 상기 L1 참조 리스트의 움직임 벡터 중 제 1 움직임 벡터가 가리키는 영역의 상기 외곽선 외부 방향으로 이웃하는 영역이 영상의 외부인 경우에, 상기 제1 움직임 벡터에 해당하는 예측 정보를 제외한 예측 정보를 이용하여 상기 참조 샘플들을 결정할 수 있다.
상기 인터 예측 정보의 참조 픽처 리스트가 L0 참조 리스트 및 L1 참조 리스트를 가리키는 경우에, 상기 L0 참조 리스트의 움직임 벡터 및 상기 L1 참조 리스트의 움직임 벡터 중 제 1 움직임 벡터가 가리키는 영역의 상기 외곽선 외부 방향으로 이웃하는 영역이 영상의 외부인 경우에, 상기 참조 영상의 외곽선 내부에 인접하는 샘플들을 이용하여 상기 참조 샘플들을 생성할 수 있다.
상기 예측정보가 상기 외곽선 내부에 인접하는 블록의 인트라 모드 정보이고, 상기 인트라 모드 정보에 따라, 상기 참조 영상 내의 샘플들 중에서 상기 참조 샘플들을 결정할 수 있다.
상기 예측정보가 상기 외곽선 내부에 인접하는 블록의 특성에 대한 정보이고, 상기 특성에 대한 정보에 따라, 상기 참조 샘플들을 결정할 수 있다.
상기 외곽선 내부에 인접하는 블록이 Affine모드를 통해 생성된 경우, 상기 예측정보는 Affine모드 정보를 포함할 수 있고, 상기 Affine모드 정보에 따라 상기 참조 샘플들을 결정할 수 있다.
상기 외곽선 내부에 인접하는 블록의 특성은 그래디언트(gradient), 엣지 검출(edge detect) 중 하나의 방법을 사용하여 결정될 수 있고, 이러한 경우, 상기 예측 정보는 상기 외곽선 내부에 인접하는 블록의 특성에 대한 정보를 포함할 수 있다.
상기 외곽선 내부에 인접하는 블록과 연관성 있는 블록을 템플릿 매칭(template matching)의 방법으로 결정하고, 상기 예측 정보는 상기 연관성 있는 블록의 예측 정보를 포함할 수 있다.
상기 참조 영상이, 360도 영상 포맷에 따라 결합된 다수의 영상들 중 하나일 때, 상기 참조 영상의 외곽선 내부에 인접하는 블록의 예측 정보가 존재하면, 상기 예측 정보가 가리키는 참조 샘플들을 이용하여 상기 외곽선 외부의 영역의 샘플값들을 생성할 수 있다.
상기 360도 영상은 Rotated Sphere Projection(RSP), Equirectangular Projection(ERP), Icosahedral projection(ISP), Segmented Sphere Projection(SSP), CubeMap Projection(CMP), Equal Area CubeMap(EAC) 중 하나의 방법으로 생성될 수 있다.
본 개시의 일 측면에 따른 비디오 복호화 방법은 현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 참조 영상의 외곽선 내부에 인접하는 블록들의 예측정보를 획득하는 단계; 상기 외곽선 내부에 인접하는 블록의 예측정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정하는 단계; 및 상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 결정하는 단계를 포함한다.
본 개시의 일 측면에 따른 비디오 부호화 장치는, 현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 참조 영상의 외곽선 내부에 인접하는 블록들의 예측정보를 획득하는 예측 정보 획득부; 상기 외곽선 내부에 인접하는 블록의 예측정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정하는 참조 샘플 결정부; 및 상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플을 결정하는 외부 샘플 결정부를 포함한다.
본 개시의 일 측면에 따른 비디오 복호화 장치는, 현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 참조 영상의 외곽선 내부에 인접하는 블록들의 예측정보를 획득하는 예측 정보 획득부; 상기 외곽선 내부에 인접하는 블록의 예측정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정하는 참조 샘플 결정부; 및 상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플을 결정하는 외부 샘플 결정부를 포함한다.
본 개시의 일 측면에 따른 비디오 부호화 방법은, 현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 상기 참조 영상의 외곽선 내부에 인접하는 외곽선 블록들의 움직임 정보 및 인트라 모드 정보를 획득하는 단계; 상기 외곽선 내부에 인접하는 외곽선 블록의 움직임 정보 및 인트라 모드 정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정하는 단계; 및 상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 결정하는 단계를 포함한다.
상기 비디오 부호화 방법은 상기 외곽선 블록의 상기 움직임 정보의 제 1 가중치 및 상기 외곽선 블록의 상기 인트라 모드 정보의 제 2 가중치를 결정하는 단계를 추가로 포함하고, 결정된 제1 가중치 및 제2 가중치, 상기 움직임 정보, 및 상기 인트라 모드 정보를 이용하여 상기 참조 샘플들을 결정할 수 있다.
상기 외곽선 블록의 움직임 정보가 없거나 움직임 정보가 제로 움직임 벡터인 경우에는, 상기 외곽선 블록과 상기 외곽선 내부에 인접하는 주변 외곽선 블록의 움직임 정보를 이용하여 상기 참조 샘플들을 결정하거나, 상기 외곽선 블록의 인트라 모드 정보만을 이용하여 상기 참조 샘플들을 결정할 수 있다.
상기 외곽선 블록의 움직임 정보가 없거나 움직임 정보가 제로 움직임 벡터인 경우에는, 상기 외곽선 블록과 상기 외곽선 내부에 인접하는 주변 외곽선 블록의 움직임 정보 및 상기 외곽선 블록의 인트라 모드 정보를 이용하여 상기 참조 샘플들을 결정할 수 있다. 또한, 상기 주변 외곽선 블록의 상기 움직임 정보의 제1 가중치 및 상기 외곽선 블록의 상기 인트라 모드 정보의 제2 가중치를 결정하는 단계를 추가로 포함하고, 결정된 제1 가중치 및 제2 가중치, 상기 움직임 정보, 및 상기 인트라 모드 정보를 이용하여 상기 참조 샘플들을 결정할 수 있다.
상기 비디오 부호화 방법은, 상기 외곽선 블록의 움직임 정보 및 상기 외곽선 블록과 상기 외곽선 내부에 인접하는 주변 외곽선 블록의 움직임 정보의 차이를 결정하는 단계; 및 상기 차이가 미리 결정된 임계값보다 큰 경우에, 상기 주변 외곽선 블록의 상기 움직임 정보의 제1 가중치 및 상기 외곽선 블록의 상기 인트라 모드 정보의 제2 가중치를 결정하는 단계를 추가로 포함하고, 결정된 제1 가중치 및 제2 가중치, 상기 움직임 정보, 및 상기 인트라 모드 정보를 이용하여 상기 참조 샘플들을 결정할 수 있다.
본 개시의 일 측면에 따른 비디오 복호화 방법은 현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 상기 참조 영상의 외곽선 내부에 인접하는 외곽선 블록들의 움직임 정보 및 인트라 모드 정보를 획득하는 단계; 상기 외곽선 내부에 인접하는 외곽선 블록의 움직임 정보 및 인트라 모드 정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정하는 단계; 및 상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 결정하는 단계를 포함한다.
본 개시의 일 측면에 따른 비디오 부호화 장치는, 현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 상기 참조 영상의 외곽선 내부에 인접하는 외곽선 블록들의 움직임 정보 및 인트라 모드 정보를 획득하는 정보 획득부; 상기 외곽선 내부에 인접하는 외곽선 블록의 움직임 정보 및 인트라 모드 정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정하는 참조 샘플 결정부; 및 상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 결정하는 외부샘플 결정부를 포함한다.
본 개시의 일 측면에 따른 비디오 복호화 장치는, 현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 상기 참조 영상의 외곽선 내부에 인접하는 외곽선 블록들의 움직임 정보 및 인트라 모드 정보를 획득하는 정보 획득부; 상기 외곽선 내부에 인접하는 외곽선 블록의 움직임 정보 및 인트라 모드 정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정하는 참조 샘플 결정부; 및 상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 결정하는 외부샘플 결정부를 포함한다.
본 개시의 일 측면에 따른 비디오 부호화 장치는, 메모리; 및 현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 상기 참조 영상의 외곽선 내부에 인접하는 외곽선 블록들의 움직임 정보 및 인트라 모드 정보를 획득하고; 상기 외곽선 내부에 인접하는 외곽선 블록의 움직임 정보 및 인트라 모드 정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정하고; 상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 결정하는 외부샘플 결정하기 위한 프로세서를 포함하고, 상기 프로세서는 상기 메모리와 상호 연결되어 비디오 복호화 동작을 수행하는 것을 특징으로 한다.
본 개시의 일 측면에 따른 비디오 복호화 장치는, 메모리; 및 현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 상기 참조 영상의 외곽선 내부에 인접하는 외곽선 블록들의 움직임 정보 및 인트라 모드 정보를 획득하고; 상기 외곽선 내부에 인접하는 외곽선 블록의 움직임 정보 및 인트라 모드 정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정하고; 상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 결정하는 외부샘플 결정하기 위한 프로세서를 포함하고, 상기 프로세서는 상기 메모리와 상호 연결되어 비디오 복호화 동작을 수행하는 것을 특징으로 한다.
도 1a은 일 실시예에 따른 예측 정보를 이용한 영상 외부 영역의 패딩 방법의 흐름도를 도시한다.
도 1b은 다른 실시예에 따른 예측 정보를 이용한 참조 영상 외부 영역의 패딩 방법의 적용되는 움직임 예측 방법의 흐름도를 도시한다.
도 1c는 또 다른 실시예에 따른 움직임 정보 및 인트라 모드 정보를 이용한 영상 외부 영역의 패딩 방법의 흐름도를 도시한다.
도 2a는 일 실시예에 따라 예측 정보를 이용한 영상 패딩 장치의 블록도를 도시한다.
도 2b는 다른 실시예에 따라 예측 정보를 이용한 참조 영상 외부 영역의 패딩 방법이 적용되는 움직임 예측 장치의 블록도를 도시한다.
도 2c는 또 다른 실시예에 따라 움직임 정보 및 인트라 모드 정보를 이용한 참조 영상 외부 영역의 패딩 방법이 적용되는 움직임 예측 장치의 블록도를 도시한다.
도 3는 종래의 패딩 방법에 따라 참조 영상 외부 영역을 패딩하는 방법을 도시한다.
도 4a는 일 실시예에 따라 인터 정보를 이용하여 참조 영상 외부 영역을 패딩하는 방법을 도시한다.
도 4b는 일 실시예에 따라 인트라 정보를 이용하여 참조 영상 외부 영역을 패딩하는 방법을 도시한다.
도 4c는 일 실시예에 따라 움직임 정보 및 인트라 모드 정보를 이용하여 참조 영상 외부 영역을 패딩하는 방법을 도시한다.
도 5은 종래의 패딩 방법이 적용된 참조 영상의 예를 도시한다.
도 6는 일 실시예에 따른 패딩 방법이 적용된 참조 영상의 예를 도시한다.
도 7은 종래의 패딩 방법이 적용된 360도 영상의 예를 도시한다.
도 8은 일 실시예에 따른 참조 영상 외부 영역의 패딩 방법이 적용된 360도 영상의 참조 영상의 예를 도시한다.
도 9는 다른 실시예에 따라 참조 영상 외부 영역의 패딩 방법이 적용된 360도 영상의 참조 영상의 예를 도시한다.
도 10a는 일 실시예에 따른 예측 정보를 이용한 참조 영상 외부 영역의 패딩 방법이 적용되는 비디오 부호화 장치의 블록도를 도시한다.
도 10b는 일 실시예에 따른 예측 정보를 이용한 참조 영상 외부 영역의 패딩 방법이 적용되는 비디오 복호화 장치의 블록도를 도시한다.
도 11은 일 실시예에 따라 영상 복호화 장치가 현재 부호화 단위를 분할하여 적어도 하나의 부호화 단위를 결정하는 과정을 도시한다.
도 12는 일 실시예에 따라 영상 복호화 장치가 비-정사각형의 형태인 부호화 단위를 분할하여 적어도 하나의 부호화 단위를 결정하는 과정을 도시한다.
도 13는 일 실시예에 따라 영상 복호화 장치가 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 부호화 단위를 분할하는 과정을 도시한다.
도 14은 일 실시예에 따라 영상 복호화 장치가 홀수개의 부호화 단위들 중 소정의 부호화 단위를 결정하기 위한 방법을 도시한다.
도 15은 일 실시예에 따라 영상 복호화 장치가 현재 부호화 단위를 분할하여 복수개의 부호화 단위들을 결정하는 경우, 복수개의 부호화 단위들이 처리되는 순서를 도시한다.
도 16은 일 실시예에 따라 영상 복호화 장치가 소정의 순서로 부호화 단위가 처리될 수 없는 경우, 현재 부호화 단위가 홀수개의 부호화 단위로 분할되는 것임을 결정하는 과정을 도시한다.
도 17는 일 실시예에 따라 영상 복호화 장치가 제1 부호화 단위를 분할하여 적어도 하나의 부호화 단위를 결정하는 과정을 도시한다.
도 18은 일 실시예에 따라 영상 복호화 장치가 제1 부호화 단위가 분할되어 결정된 비-정사각형 형태의 제2 부호화 단위가 소정의 조건을 만족하는 경우 제2 부호화 단위가 분할될 수 있는 형태가 제한되는 것을 도시한다.
도 19은 일 실시예에 따라 분할 형태 모드에 대한 정보가 4개의 정사각형 형태의 부호화 단위로 분할하는 것을 나타낼 수 없는 경우, 영상 복호화 장치가 정사각형 형태의 부호화 단위를 분할하는 과정을 도시한다.
도 20는 일 실시예에 따라 복수개의 부호화 단위들 간의 처리 순서가 부호화 단위의 분할 과정에 따라 달라질 수 있음을 도시한 것이다.
도 21은 일 실시예에 따라 부호화 단위가 재귀적으로 분할되어 복수개의 부호화 단위가 결정되는 경우, 부호화 단위의 형태 및 크기가 변함에 따라 부호화 단위의 심도가 결정되는 과정을 도시한다.
도 22은 일 실시예에 따라 부호화 단위들의 형태 및 크기에 따라 결정될 수 있는 심도 및 부호화 단위 구분을 위한 인덱스(part index, 이하 PID)를 도시한다.
도 23는 일 실시예에 따라 픽쳐에 포함되는 복수개의 소정의 데이터 단위에 따라 복수개의 부호화 단위들이 결정된 것을 도시한다.
도 24은 일 실시예에 따라 픽쳐에 포함되는 기준 부호화 단위의 결정 순서를 결정하는 기준이 되는 프로세싱 블록을 도시한다.
개시된 실시예의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 개시는 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 개시가 완전하도록 하고, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것일 뿐이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 개시된 실시예에 대해 구체적으로 설명하기로 한다.
본 명세서에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 관련 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
본 명세서에서의 단수의 표현은 문맥상 명백하게 단수인 것으로 특정하지 않는 한, 복수의 표현을 포함한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다.
또한, 명세서에서 사용되는 "부"라는 용어는 소프트웨어 또는 하드웨어 구성요소를 의미하며, "부"는 어떤 역할들을 수행한다. 그렇지만 "부"는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부"는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부"는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부"들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부"들로 결합되거나 추가적인 구성요소들과 "부"들로 더 분리될 수 있다.
본 개시의 일 실시예에 따르면 "부"는 프로세서 및 메모리로 구현될 수 있다. 용어 "프로세서" 는 범용 프로세서, 중앙 처리 장치 (CPU), 마이크로프로세서, 디지털 신호 프로세서 (DSP), 제어기, 마이크로제어기, 상태 머신, 및 등을 포함하도록 넓게 해석되어야 한다. 몇몇 환경에서는, "프로세서" 는 주문형 반도체 (ASIC), 프로그램가능 로직 디바이스 (PLD), 필드 프로그램가능 게이트 어레이 (FPGA), 등을 지칭할 수도 있다. 용어 "프로세서" 는, 예를 들어, DSP 와 마이크로프로세서의 조합, 복수의 마이크로프로세서들의 조합, DSP 코어와 결합한 하나 이상의 마이크로프로세서들의 조합, 또는 임의의 다른 그러한 구성들의 조합과 같은 처리 디바이스들의 조합을 지칭할 수도 있다.
용어 "메모리" 는 전자 정보를 저장 가능한 임의의 전자 컴포넌트를 포함하도록 넓게 해석되어야 한다. 용어 메모리는 임의 액세스 메모리 (RAM), 판독-전용 메모리 (ROM), 비-휘발성 임의 액세스 메모리 (NVRAM), 프로그램가능 판독-전용 메모리 (PROM), 소거-프로그램가능 판독 전용 메모리 (EPROM), 전기적으로 소거가능 PROM (EEPROM), 플래쉬 메모리, 자기 또는 광학 데이터 저장장치, 레지스터들, 등과 같은 프로세서-판독가능 매체의 다양한 유형들을 지칭할 수도 있다. 프로세서가 메모리에 메모리로부터 정보를 판독하고/하거나 메모리에 정보를 기록할 수 있다면 메모리는 프로세서와 전자 통신 상태에 있다고 불린다. 프로세서에 집적된 메모리는 프로세서와 전자 통신 상태에 있다.
이하, "영상"은 비디오의 정지영상와 같은 정적 이미지이거나 동영상, 즉 비디오 그 자체와 같은 동적 이미지를 나타낼 수 있다.
이하 "샘플"은, 영상의 샘플링 위치에 할당된 데이터로서 프로세싱 대상이 되는 데이터를 의미한다. 예를 들어, 공간영역의 영상에서 픽셀값, 변환 영역 상의 변환 계수들이 샘플들일 수 있다. 이러한 적어도 하나의 샘플들을 포함하는 단위를 블록이라고 정의할 수 있다.
이하 "패딩"동작은, 다른 픽셀의 샘플값을 복사하여 현재 픽셀의 샘플값을 생성하는 동작을 의미한다.
아래에서는 첨부한 도면을 참고하여 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그리고 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략한다.
이하 도 1a 내지 도 10b를 참조하여 일 실시예에 따라 참조 영상 외부 영역을 패딩하는 방법이 적용되는 움직임 예측 방법 및 장치, 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 상술된다. 도 11 내지 도 24을 참조하여 일 실시예에 따라 영상의 데이터 단위를 결정하는 방법이 설명된다.
도 1a은 일 실시예에 따른 예측 정보를 이용한 영상 외부 영역의 패딩 방법의 흐름도를 도시한다.
이하, 현재 블록은 현재 영상의 블록을 의미하고, 참조 블록은, 현재 영상의 참조 영상 내에서, 현재 영상의 움직임 벡터가 가리키는 블록을 의미한다.
도 1a을 참조하면, 본 개시의 일 실시예에 따른 영상 외부 영역의 패딩 방법에 따르면, 단계 s10에서, 현재 영상의 외곽선에 인접하는 현재 블록의 예측정보가 획득된다.
일반적으로 픽셀 위치가 영상 외곽선의 외부를 가리키는 경우에, 해당 픽셀 위치에 대한 샘플값은 존재하지 않기 때문에 '이용될 수 없는(unavailable)'상태로 정의된다. 본 개시에 따른 영상 패딩 방법은, 현재 블록의 예측 정보가 존재하는 경우에, 현재 블록의 예측 정보를 이용하여 현재 영상의 외곽선 외부에 위치하는 외부 영역의 샘플값을 예측하고자 한다.
단계 s12에서 현재 블록의 예측정보를 이용하여, 현재 블록의 외곽선의 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들이 결정될 수 있다. 참조 샘플들은 현재 영상 또는 참조 영상의 내부에 위치할 수 있다. 단계 s14에서는, 앞서 단계 s12에서 결정된 참조 샘플들을 이용하여 현재 블록에 인접하며 현재 영상의 외곽선 외부에 위치하는 샘플들이 결정될 수 있다. 이로 인해 현재 영상의 외부 영역에 위치하는 샘플들이 패딩될 수 있다.
일 실시예에 따른 참조 영역의 패딩 방법이 적용되는 움직임 예측 방법의 예측 정보는 주변 블록의 인터 예측 정보 또는 주변 블록의 인트라 모드 정보일 수 있고, 주변 블록의 Affine 움직임 정보일 수 있다.
일 실시예에 따른 영상 외부 영역의 패딩을 위해 이용되는 현재 블록의 인터 예측 정보는 참조 픽처 리스트, 참조 인덱스, 및 움직임 벡터 중 적어도 하나를 포함할 수 있다. 구체적으로, 인터 예측 정보를 이용하여 현재 블록의 참조 영상을 결정할 수 있다. 참조 영상은 현재 블록의 참조 리스트, 즉 L0 리스트 및 L1 리스트 중 적어도 어느 하나에 포함된 영상들 중에서 결정될 수 있다. 참조 영상의 블록들 중에서 현재 블록의 움직임 벡터가 가리키는 위치가 참조 블록의 위치일 수 있다.
일 실시예에 따른 인터 예측 정보의 참조 픽처 리스트는 L0 참조 리스트 및 L1 참조 리스트 중 적어도 하나를 가리킬 수 있다.
L0 참조 리스트가 이용되는 경우에, L0 참조 인덱스를 이용하여 L0 참조 리스트에 포함된 영상들 중에서 하나의 참조 영상을 결정할 수 있다. L1 참조 리스트가 이용되는 경우에, L1 참조 인덱스를 이용하여 L1 참조 리스트에 포함된 영상들 중에서 하나의 참조 영상을 결정할 수 있다.
일 실시예에 따른 영상 패딩 방법은, 현재 블록의 인터 예측 정보에 따라 결정된 참조 블록의 이웃 블록을 이용하여, 현재 영상의 외곽선 외부의 샘플들을 패딩할 수 있다. 즉, 현재 블록의 움직임 벡터가 가리키는 참조 블록의 이웃 블록에 포함된 픽셀들의 샘플들을 참조 샘플들로 결정하여, 참조 샘플들을 이용하여 현재 블록에 인접하는 영상 외부 영역의 샘플값들을 결정할 수 있다.
구체적으로, 현재 블록의 좌측에 인접하는 영상 외곽선 및 외부 샘플들이 존재한다면, 현재 블록의 참조 블록의 좌측에 인접하는 이웃 블록의 참조 샘플들을 이용하여, 현재 블록의 외부 샘플들이 결정될 수 있다.
현재 블록의 상측에 인접하는 영상 외곽선 및 외부 샘플들이 존재한다면, 현재 블록의 참조 블록의 상측에 인접하는 이웃 블록의 참조 샘플들을 이용하여, 현재 블록의 외부 샘플들이 결정될 수 있다.
현재 블록의 우측에 인접하는 영상 외곽선 및 외부 샘플들이 존재한다면, 현재 블록의 참조 블록의 우측에 인접하는 이웃 블록의 참조 샘플들을 이용하여, 현재 블록의 외부 샘플들이 결정될 수 있다.
현재 블록의 하측에 인접하는 영상 외곽선 및 외부 샘플들이 존재한다면, 현재 블록의 참조 블록의 하측에 인접하는 이웃 블록의 참조 샘플들을 이용하여, 현재 블록의 외부 샘플들이 결정될 수 있다.
L0 참조 리스트 및 L1 참조 리스트가 이용될 수 있는 Bi-예측 모드에 따른 인터 예측의 경우, L0 움직임 벡터 및 L1 움직임 벡터 중 하나의 움직임 벡터가 가리키는 영역이 영상의 외부인 경우에, 영상의 외부를 가리키는 움직임 벡터에 해당하는 예측 정보를 제외한 나머지 예측 정보를 이용하여 참조 샘플들을 결정할 수 있다. 다른 예로는, L0 움직임 벡터 및 L1 움직임 벡터 중 하나의 움직임 벡터가 가리키는 영역이 영상의 외부인 경우에, 현재 블록의 샘플들 중에서 외곽선에 인접하는 샘플들을 참조 샘플들로 결정하고, 참조 샘플들을 이용하여 영상 외부 영역을 패딩할 수 있다.
현재 블록의 인터 예측 정보에 따라 영상 외부 영역을 패딩하는 방법은 도 4a를 이용하여 후술한다.
일 실시예에 따르면, 현재 블록의 인트라 모드 정보에 따라, 현재 영상 내의 샘플 중에서, 외부 영역을 패딩하기 위한 참조 샘플들이 결정될 수 있다.
일 실시예에 따라 영상 외부 영역의 패딩을 위해 이용되는 현재 블록의 인트라 모드 정보는, 현재 블록의 샘플을 예측하기 위해 참조되는 이웃 샘플들의 방향을 나타내는 인트라 예측 모드일 수 있다. 예를 들어, 인트라 예측 모드는 33개의 방향(directional) 예측 모드, DC 모드 및 플래너(planar) 모드를 포함할 수 있다. 다만 이에 한정되는 것은 아니며, 인트라 예측 모드의 방향 예측 모드는 62개의 방향 예측 모드로 세분화 될 수 있다. 또한 인트라 예측 모드는, DC 모드, 수직 모드, 수평모드, 플래너(planar) 모드, 좌상측 및 우하측 방향의 대각모드, 우상측 및 좌하측 방향의 대각모드 중 적어도 하나의 모드를 포함할 수 있다.
따라서, 현재 영상의 외곽선의 외부 샘플들로부터, 현재 블록의 인트라 예측 모드가 가리키는 방향에 따라 위치하는, 현재 영상 내의 샘플들을, 외부 샘플을 패딩하기 위한 참조 샘플들로 결정할 수 있다. 현재 블록의 인트라 예측 모드에 따라 영상 외부 영역을 패딩하는 방법은 도 4b를 이용하여 후술한다.
다른 예에 따라 외곽선에 인접하는 블록의 특성은, 그래디언트(gradient), 엣지 검출(edge detect) 등의 방법을 사용하여 결정될 수 있고, 이러한 경우, 예측 정보는 외곽선에 인접하는 블록의 특성에 대한 정보를 포함할 수 있다.
움직임 예측을 위한 참조 블록을 결정하는 과정에서는, 일 실시예에 따른 영상 외부 영역의 패딩 방법이 적용될 수 있다. 구체적으로, 움직임 예측을 위한 참조 블록이 참조 영상의 외부에 위치하는 경우에 참조 블록을 패딩하는 방법은 도 1b 및 2b를 참조하여 후술된다.
다만, 디블록킹필터링 (deblocking filtering), SAO (Sample Adaptive Offset), ALF (Adaptive Loop Filtering) 등의 인루프 필터링 (in-Loop Filtering) 시에는 필터링 대상이 되는 참조 샘플이 영상 외부의 위치하는 경우에, 참조 샘플들 값들을 생성하기 위해 종래의 패딩 방법을 이용할 수 있다. 즉, 인루프 필터링 (in-Loop Filtering) 시에는, 영상 외부에 위치하는 참조 샘플을 패딩하기 위해, 영상 외곽선을 중심으로 참조 샘플에 인접하는 영상 내부의 샘플들을 복사하여 참조 샘플을 생성할 수 있다.
다른 실시예에 따른 영상 외부 영역의 패딩 방법은 템플릿 매칭(template matching)의 방법을 통해 현재 블록과 연관성 있는 블록을 찾아 내고, 연관성 있는 블록을 이용하여 패딩할 수 있다.
템플릿 매칭이란, 한 블록을 둘러싼 소정 형태의 템플릿 영역을 결정하고, 참조 영상 내에서 템플릿 영역에 가장 근사한 영역이 검출되면, 검출된 영역에 둘러싸인 블록이 블록의 유사 블록임을 결정하는 방식이다. 따라서, 본 개시에 따른 패딩 방법에 템플릿 매칭이 적용된다면 다음 과정에 따를 수 있다. 현재 블록이 현재 영상의 외곽선에 인접한다면, 현재 영상 내에서 현재 블록의 템플릿을 결정하고, 템플릿 매칭에 의해 검출되는 영역에 둘러싸인 블록을 현재 블록의 유사 블록을 결정할 수 있다. 현재 블록의 유사 블록에 인접하는 블록의 샘플값들을, 현재 블록에 인접하는 영상 외부 영역을 패딩하기 위한 샘플값들로 결정할 수 있다.
도 1b은 일 실시예에 따른 참조 영상 외부 영역의 패딩 방법의 적용되는 움직임 예측 방법의 흐름도를 도시한다.
도 1b을 참조하면, 본 개시의 일 실시예에 따른 참조 영상 외부 영역의 패딩 방법이 적용되는 움직임 예측 방법에 따르면, 단계 s11에서, 현재 블록의 인터 예측을 위한 참조 블록이 참조 영상의 외곽을 벗어난 영역에 위치하는 경우, 참조 영상의 외곽선 내부에 인접하는 적어도 하나의 블록의 예측정보가 획득된다. 현재 블록의 인터 예측에 의해 현재 블록의 움직임 벡터가 결정될 수 있다. 현재 블록의 움직임 벡터가 가리키는 영역, 즉 참조 블록의 샘플값을 이용하여 현재 블록의 샘플값을 보상할 수 있다. 일반적으로 현재 블록의 움직임 벡터가 참조 영상의 외곽을 벗어난 영역을 가리키는 경우에, 해당 참조 영상의 외곽을 벗어난 영역의 위치에 대한 샘플값은 존재하지 않기 때문에 '이용될 수 없는(unavailable)'상태로 정의된다. 본 개시에 따른 움직임 예측 방법은, 현재 블록의움직임 벡터가 참조 영상의 외곽선 벗어난 영역을 가리키는 경우, 참조 영상의 외곽선 내부에 인접하는 다른 블록의 예측 정보를 획득하고, 획득된 예측 정보가 가리키는 샘플값들을 이용하여 외곽선 외부에 위치하는 참조 블록의 샘플값들을 예측하고자 한다.
참조 영상은 현재 블록의 참조 리스트, 즉 L0 리스트 및 L1 리스트 중 적어도 어느 하나에 포함된 영상들 중에서 결정될 수 있다. 참조 영상의 블록들 중에서 현재 블록의 움직임 벡터가 가리키는 위치가 참조 블록의 위치일 수 있다.
참조 블록에 포함되는 모든 픽셀들의 위치가 참조 영상의 외곽선 외부에 위치할 수 있다. 또는 참조 블록에 포함되는 일부 픽셀들의 위치가 참조 영상의 외곽선 외부에 위치할 수 있다.
단계 s13에서 참조 영상의 외곽선 내부에 인접하는 블록의 예측정보를 이용하여, 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위해 이용되는 참조 샘플들이 결정된다. 단계 S15에서, 상기 결정된 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플들이 결정된다.
이하 도 1b에 대한 설명에서, 현재 블록의 참조 리스트 중에서 선택되는 참조 영상은 '현재 참조 영상'이라 지칭하고, '현재 참조 영상'내에서 현재 불록의 움직임 벡터가 가리키는 참조 블록 또는 영역은 각각 '현재 참조 블록'및'현재 참조 영역'이라 지칭한다.
이하, 현재 참조 영상의 외곽선 외부에 위치하는 샘플(이하, "외부 샘플"이라 함)들을 예측하기 위한 영상은, 현재 참조 영상의 외곽선 내부에 인접하는 블록의 예측 정보에 의해 참조 대상이 되는 영상을 의미한다.
일 실시예에 따른 참조 영상 외부 영역의 패딩 방법이 적용되는 움직임 예측 방법의 예측 정보는 현재 참조 영상의 외곽선 내부에 인접하는 블록의 인터 예측 정보 또는 현재 참조 영상의 외곽선 내부에 인접하는 블록의 인트라 모드 정보일 수 있다.
구체적으로, 현재 참조 영상의 외부 샘플들을 예측하기 위해, 외곽선 내부에 인접하는 블록의 예측 정보 중 인터 예측 정보가 이용될 수 있다. 현재 참조 영상의 '외부 샘플들을 예측하기 위한 영상'은 현재 참조 영상의 '외곽선 내부에 인접하는 블록'의 참조 리스트, 즉 L0 리스트 및 L1 리스트 중 적어도 어느 하나에 포함된 영상들 중에서 결정될 수 있다. '외부 샘플들을 예측하기 위한 참조 영상' 내에서 '외곽선 내부에 인접하는 블록'의 움직임 벡터가 가리키는 위치에 기초하여, '외곽선 내부에 인접하는 블록'의 참조 블록이 결정될 수 있다.
외부 샘플들을 예측하기 위한 영상의 픽셀들 중에서, '외곽선 내부에 인접하는 블록'의 참조 블록에 인접하는 샘플들을 이용하여, 외부 샘플들을 예측할 수 있다. '외곽선 내부에 인접하는 블록'의 참조 블록에 인접하는 샘플들 중에서, '외곽선 내부에 인접하는 블록의 참조 영상'의 외곽선 방향으로 인접하는 샘플들을 이용하여, 현재 참조 영상의 외부 샘플들이 예측될 수 있다.일 실시예에 따라 외부 샘플들을 패딩하기 위한 참조 샘플들은 외부 샘플들을 예측하기 위한 영상 내부에 위치할 수 있다. 반면에, 참조 샘플들이 외부 샘플들을 예측하기 위한 영상 외부에 위치하는 경우에는, 현재 참조 영상의 외곽선 내부에 인접하는 샘플들을 이용하여 외부 샘플들을 패딩할 수 있다.
외부 샘플들은, 현재 블록의 참조 블록에 포함되는 픽셀들의 샘플들일 수 있다.
현재 블록의 참조 블록에 포함되는 모든 픽셀들의 위치가 현재 참조 영상의 외곽선 외부에 위치하는 경우에는, 외부 샘플들을 예측하기 위한 영상의 픽셀들 중에서, 현재 블록의 참조 블록에 포함되는 모든 픽셀들에 대응하는 모든 픽셀들의 샘플들을 이용하여, 참조 블록의 모든 샘플들, 즉 외부 샘플들이 패딩될 수 있다.
또는 현재 블록의 참조 블록에 포함되는 일부 픽셀들의 위치가 현재 참조 영상의 외곽선 외부에 위치하는 경우에는, 외부 샘플들을 예측하기 위한 영상의 픽셀들 중에서, 현재 블록의 참조 블록에 포함되는 일부 픽셀들에 대응하는, 일부 픽셀들의 샘플들을 이용하여 참조 블록의 일부 샘플들, 즉 외부 샘플들이 패딩될 수 있다.
또한, 현재 참조 영상의 외곽선 내부에 인접하는 블록이 Affine모드를 통해 생성된 경우, 외곽선 내부에 인접하는 블록의 예측정보는 Affine모드 정보를 포함할 수 있고, 외곽선 내부에 인접하는 블록의 Affine모드 정보에 따라, 현재 참조 영상의 외부 샘플들을 예측하기 위한 참조 샘플들을 결정할 수 있다.
일 실시예에 따라 현재 참조 영상 외부 영역의 패딩을 위해 이용되는, 현재 참조 영상의 외곽선 내부에 인접하는 블록의 인터 예측 정보는 참조 픽처 리스트, 참조 인덱스, 및 움직임 벡터 중 적어도 하나를 포함할 수 있다. 구체적으로, 현재 참조 영상의 외곽선 내부에 인접하는 블록의 참조 픽처 리스트에서 참조 인덱스가 가리키는 영상이, 외부 샘플들을 예측하기 위한 참조 영상으로 결정된다. 외부 샘플들을 예측하기 위한 참조 영상 중에서, 참조 영상의 외곽선 내부에 인접하는 블록의 움직임 벡터가 가리키는 위치가 참조 대상이 되는 블록으로 결정될 수 있다. 참조 대상이 되는 블록의 이웃 샘플들을 외부 샘플들, 즉 현재 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 샘플들로 결정할 수 있다.
구체적으로, 현재 블록의 참조 블록이 현재 참조 영상의 좌측 외곽선의 외부에 존재하고, 좌측 외곽선의 내부에 인접하는 블록의 인터 예측 정보가 존재한다면, 좌측 외곽선의 내부에 인접하는 블록의 인터 예측 정보에 의해 참조 대상이 되는 영상 및 영상 내의 참조 블록이 결정된다. 결정된 영상 내에서 참조 블록의 좌측에 인접하는 이웃 블록 또는 샘플들을 이용하여, 현재 참고 영상의 좌측 외곽선의 외부에 위치하는 블록 또는 샘플들이 예측될 수 있다.
현재 블록의 참조 블록이 참조 영상의 상측 외곽선의 외부에 존재하고, 상측 외곽선의 내부에 인접하는 블록의 인터 예측 정보가 존재한다면, 상측 외곽선의 내부에 인접하는 블록의 인터 예측 정보에 의해 참조 대상이 영상 및 영상 내의 참조 블록이 결정된다. 결정된 영상 내에서 참조 블록의 상측에 인접하는 이웃 블록 또는 샘플들을 이용하여, 현재 참고 영상의 상측 외곽선의 외부에 위치하는 블록 또는 샘플들이 예측될 수 있다.
현재 블록의 참조 블록이 참조 영상의 우측 외곽선의 외부에 존재하고, 우측 외곽선의 내부에 인접하는 블록의 인터 예측 정보가 존재한다면, 우측 외곽선의 내부에 인접하는 블록의 인터 예측 정보에 의해 참조 대상이 되는 영상 및 영상 내의 참조 블록이 결정된다. 결정된 영상 내에서 참조 블록의 우측에 인접하는 이웃 블록 또는 샘플들을 이용하여, 현재 참고 영상의 우측 외곽선의 외부에 위치하는 블록 또는 샘플들이 예측될 수 있다.
현재 블록의 참조 블록이 참조 영상의 하측 외곽선의 외부에 존재하고, 하측 외곽선의 내부에 인접하는 블록의 인터 예측 정보가 존재한다면, 하측 외곽선의 내부에 인접하는 블록의 인터 예측 정보에 의해 결정되는 하측 외곽선의 내부에 인접하는 블록의 참조 대상이 되는 영상 및 영상 내의 참조 블록이 결정된다. 결정된 영상 내에서 참조 블록의 하측에 인접하는 이웃 블록 또는 샘플들을 이용하여, 현재 참고 영상의 하측 외곽선의 외부에 위치하는 블록 또는 샘플들이 예측될 수 있다.
일 실시예에 따른 참조 영상 외부 영역의 패딩 방법이 적용되는 움직임 예측 방법에서, 현재 참조 영상의 외곽선 내부에 인접하는 블록의 인터 예측 정보의 참조 픽처 리스트는 L0 참조 리스트 및 L1 참조 리스트 중 적어도 하나를 가리킬 수 있다.
현재 참조 영상의 외곽선 내부에 인접하는 블록의 L0 참조 리스트가 이용되는 경우에, L0 참조 리스트에 포함된 영상들 중에서 현재 참조 영상의 외곽선 내부에 인접하는 블록의 L0 참조 인덱스가 가리키는 하나의 영상을 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 L0 영상으로 결정할 수 있다.
현재 참조 영상의 외곽선 내부에 인접하는 블록의 L0 움직임 벡터가 가리키는 블록의 외곽선 외부 방향으로 이웃하는 블록의 위치가 외곽선 외부에 위치하는 샘플들을 예측하기 위한 L0 영상의 외부에 위치한다면, 외곽선 외부에 위치하는 샘플들은 참조 영상의 외곽선 내부의 샘플값들로 패딩될 수 있다.
현재 참조 영상의 외곽선 내부에 인접하는 블록의 L1 참조 리스트가 이용되는 경우에, L1 참조 리스트에 포함된 영상들 중에서 현재 참조 영상의 외곽선 내부에 인접하는 블록의 L1 참조 인덱스가 가리키는 하나의 영상을 현재 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 L1 영상으로 결정할 수 있다. 현재 참조 영상의 외곽선 내부에 인접하는 블록의 L1 움직임 벡터가 가리키는 블록의 외곽선 외부 방향으로 이웃하는 블록의 위치가 외곽선 외부에 위치하는 샘플들을 예측하기 위한 L1 영상의 외부에 위치한다면, 현재 참조 영상의 외곽선 외부에 위치하는 샘플들은 현재 참조 영상의 외곽선 내부의 샘플값들로 패딩될 수 있다.
현재 참조 영상의 외곽선 내부에 인접하는 블록의 L0 참조 리스트 및 L1 참조 리스트가 이용할 수 있는 Bi-예측 모드에 따른 인터 예측이 수행되는 경우에, 외곽선 내부에 인접하는 블록의 L0 참조 리스트에 따른 참조 영상의 샘플들과 L1 참조 리스트에 따른 참조 영상의 샘플들을 이용하여, 현재 참조 영상의 외부 샘플들이 예측될 수 있다.
현재 참조 영상의 외곽선 내부에 인접하는 블록의 L0 참조 리스트 중 L0 참조 영상이, 외곽선 외부의 샘플을 예측하기 위한 영상인 것으로 결정되고, L0 참조 영상 중에서 외곽선 내부에 인접하는 블록의 L0 움직임 벡터가 가리키는 L0 참조 블록이 결정될 수 있다. 마찬가지로, 현재 참조 영상의 외곽선 내부에 인접하는 블록의 L1 참조 리스트 중 L1 참조 영상이, 외곽선 외부의 샘플을 예측하기 위한 영상인 것으로 결정되고, L1 참조 영상 중에서 외곽선 내부에 인접하는 블록의 L1 움직임 벡터가 가리키는 L1 참조 블록이 결정될 수 있다.
따라서, 외곽선 내부에 인접하는 블록의 L0 참조 영상 내에서 L0 참조 블록의 이웃 샘플들과 L1 참조 영상 내에서 L1 참조 블록의 이웃 샘플들을 이용하여, 현재 참조 영상의 외부 샘플들이 예측될 수 있다. 예를 들어, 현재 참조 영상과 L0 참조 영상 간의 거리 및, 현재 참조 영상과 L1 참조 영상 간의 거리에 기초한 가중치를 이용하여, L0 참조 블록의 이웃 샘플들과 L1 참조 블록의 이웃 샘플들에 대해 가중합을 적용한 결과값이, 현재 참조 영상의 외부 샘플들의 값이 되도록 결정될 수 있다.
현재 참조 영상의 외곽선 내부에 인접하는 블록에 대해 Bi-예측 모드에 따른 인터 예측이 수행되고, 현재 참조 영상의 외곽선 내부에 인접하는 블록의 L0 움직임 벡터 및 L1 움직임 벡터 중 하나의 움직임 벡터가 가리키는 영역의 외곽선 방향으로 이웃하는 영역이 외곽선 외부에 위치하는 샘플들을 예측하기 위한 영상의 외부에 위치하는 경우(경우 1)에, 상기 경우 1의 움직임 벡터에 해당하는 예측 정보를 제외한 나머지 예측 정보를 이용하여 현재 참조 영상의 외곽선 외부에 위치하는 샘플들을 패딩하기 위한 참조 샘플들을 결정할 수 있다.
다른 예로는, 현재 참조 영상의 외곽선 내부에 인접하는 블록의 L0 움직임 벡터 및 L1 움직임 벡터가 가리키는 영역의 외곽선 방향으로 이웃하는 영역이 외곽선 외부에 위치하는 샘플들을 예측하기 위한 영상의 외부에 위치하는 경우에, 현재 참조 영상의 외곽선 내부에 접하는 샘플들을 이용하여 참조 영상의 외곽선 외부에 위치하는 샘플들을 패딩할 수 있다.
다른 예로는, 현재 참조 영상의 외곽선 내부에 인접하는 블록의 L0 움직임 벡터 및 L1 움직임 벡터가 가리키는 영역의 외곽선 방향으로 이웃하는 영역이 외곽선 외부에 위치하는 샘플들을 예측하기 위한 영상의 외부에 위치하는 경우에, 상기 외곽선 내부에 인접하는 블록의 인트라 모드 정보에 따라, 상기 참조 영상 내의 샘플들을 이용하여 상기 참조 샘플들을 패딩할 수 있다.
일 실시예에 따른 일 실시예에 따른 참조 영상 외부 영역의 패딩을 위해 이용되는 현재 참조 영상의 외곽선 내부에 인접하는 블록의 인트라 모드 정보는, 현재 참조 영상의 외곽선 내부에 인접하는 블록의 샘플을 예측하기 위해 이웃 샘플들로부터 참조되는 방향을 나타내는 인트라 예측 모드일 수 있다.
다른 예로는, 현재 참조 영상의 외곽선 외부 영역을 예측하기 위한 영상의 참조 샘플들의 영역이 현재 참조 영상의 외곽선 외부의 패딩하고자 하는 영역보다 작은 경우에는, 참조 샘플들의 영역에 대해서는 참조 샘플들을 이용하여 외곽선 외부의 샘플들을 결정하고, 나머지 영역에 대해서는 참조 샘플들의 영역의 외곽선 외부 방향에 있는 샘플들을 이용하여 패딩할 수 있다.
다른 예로는, 현재 참조 영상의 외곽선 내부에 인접하는 블록의 L0 참조 리스트 및 L1 참조 리스트가 이용할 수 있는 Bi-예측 모드에 따른 인터 예측이 수행되고, 현재 참조 영상의 외곽선 내부에 인접하는 블록의 L0 움직임 벡터 및 L1 움직임 벡터들이 가리키는 영역들의 외곽선 외부 방향으로 이웃하는 영역들이 각각 L0 참조 영상 및 L1 참조 영상의 내부인 경우에, 두 이웃하는 영역들 중 더 작은 영역을 가리키는 움직임 벡터의 참조 영상이 현재 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 영상으로 결정되고, 결정된 영상 내에서 L0 참조 블록의 이웃 샘플들과 L1 참조 영상 내에서 L1 참조 블록의 이웃 샘플들을 이용하여, 현재 참조 영상의 외부 샘플들이 예측될 수 있다.
다른 예로는, 현재 참조 영상의 외곽선 내부에 인접하는 블록에 대해 Bi-예측 모드에 따른 인터 예측이 수행되고, 현재 참조 영상의 외곽선 내부에 인접하는 블록의 L0 움직임 벡터 및 L1 움직임 벡터들이 가리키는 영역들의 외곽선 외부 방향으로 이웃하는 영역들이 각각 L0 참조 영상 및 L1 참조 영상의 내부인 경우에, 두 이웃하는 영역들 중 더 작은 영역을 가리키는 움직임 벡터의 참조 영상이 현재 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 영상으로 결정될 수 있다. 결정된 영상 내에서 L0 참조 블록의 이웃 샘플들과 L1 참조 영상 내에서 L1 참조 블록의 이웃 샘플들을 이용할 수 있다.
현재 참조 영상의 외곽선 내부에 인접하는 블록의 L0 움직임 벡터 및 L1 움직임 벡터들이 가리키는 영역들의 외곽선 외부 방향으로 이웃하는 영역들 중 하나는 상기 현재 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 영상의 내부를 가리키고, 다른 하나는 상기 현재 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 영상의 외부를 가리키는 경우에, 상기 예측하기 위한 영상의 외부를 가리키는 경우의 움직임 벡터를 제외한 나머지 움직임 벡터를 이용하여, 현재 참조 영상의 외부 샘플들이 예측될 수 있다.
다른 예로는, 현재 참조 영상의 외곽선 내부에 인접하는 블록에 대해 Bi-예측 모드에 따른 인터 예측이 수행되고, 현재 참조 영상의 외곽선 내부에 인접하는 블록의 L0 움직임 벡터 및 L1 움직임 벡터들이 가리키는 영역들의 외곽선 외부 방향으로 이웃하는 영역들이 각각 L0 참조 영상 및 L1 참조 영상의 내부인 경우에, 두 이웃하는 영역들 중 더 작은 영역을 가리키는 움직임 벡터의 참조 영상이 현재 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 영상으로 결정될 수 있다. 결정된 영상 내에서 L0 참조 블록의 이웃 샘플들과 L1 참조 영상 내에서 L1 참조 블록의 이웃 샘플들을 이용할 수 있다.
현재 참조 영상의 외곽선 내부에 인접하는 블록의 L0 움직임 벡터 및 L1 움직임 벡터들이 가리키는 영역들의 외곽선 외부 방향으로 이웃하는 영역들 중 하나는 상기 현재 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 영상의 내부를 가리키고, 다른 하나는 상기 현재 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 영상의 외부를 가리키는 경우에, 현재 참조 영상의 외곽선 내부에 접하는 샘플들을 이용하여, 현재 참조 영상의 외부 샘플들이 예측될 수 있다.
다른 실시예에 따라 참조 샘플들이 외부 샘플들을 예측하기 위한 영상 외부에 위치하는 경우에, 상기 외부 샘플들을 예측하기 위한 영상 외부에 이용가능한 샘플들이 존재하는 경우에는 이러한 샘플을 이용하여, 현재 참조 영상의 외부 샘플들이 결정될 수 있다.
다른 실시예에 따라 참조 샘플들이 외부 샘플들을 예측하기 위한 영상 내부와 외부에 걸쳐 위치하는 경우에, 상기 외부 샘플들을 예측하기 위한 영상 외부에 이용가능한 샘플들이 존재하는 경우에는 영상의 내부에 위치한 샘플들 및 영상 외부의 이용가능한 샘플들을 모두 이용하여, 현재 참조 영상의 외부 샘플들이 결정될 수 있다.
다른 실시예에 따라 참조 샘플들이 외부 샘플들을 예측하기 위한 영상 외부에 위치하고 상기 외부 샘플들을 예측하기 위한 영상 외부에 이용가능한 샘플들이 존재하는 경우, 현재 참조 영상의 외부 샘플들을 예측하기 위해 이용되는 샘플들의 영역의 크기는 미리 정해진 크기가 사용될 수 있다. 미리 정해진 크기는 상기 외부 샘플들을 예측하기 위한 영상 외부의 패딩 영역의 크기일 수 있고 패딩 영역의 1/2 크기일 수도 있다. 또한, 미리 정해진 크기는 움직임 정보, 패딩 영역의 크기, 픽처 사이즈 등에 따라 다르게 결정될 수 있다.
다른 실시예에 따라 참조 샘플들이 외부 샘플들을 예측하기 위한 영상 내부와 외부에 걸쳐 위치하고 상기 외부 샘플들을 예측하기 위한 영상 외부에 이용가능한 샘플들이 존재하는 경우, 현재 참조 영상의 외부 샘플들을 예측하기 위해 이용되는 샘플들의 영역의 크기는 상기 예측하기 위한 영상 내부 영역은 이용가능한 최대 크기를 사용하고 상기 예측하기 위한 영상 외부 영역은 정해진 크기가 사용될 수 있다. 정해진 크기가 0인 경우에는 현재 참조 영상의 외곽선 내부에 인접하는 샘플들을 이용하여 상기 외부 샘플들이 결정될 수 있다.
현재 참조 영상의 외곽선 내부에 인접하는 블록의 인터 정보에 따라 현재 참조 영상의 외곽선 외부 영역을 패딩하는 방법은 도 4a를 이용하여 후술한다.
일 실시예에 따른 참조 영상 외부 영역의 패딩 방법이 적용되는 움직임 예측 방법의 인트라 모드 정보에 따라, 참조 영상의 외곽선 외부 영역을 패딩하기 위한 참조 샘플이 참조 영상 내의 블록 중에서 결정될 수 있다.
일 실시예에 따른 일 실시예에 따른 참조 영상 외부 영역의 패딩을 위해 이용되는 현재 참조 영상의 외곽선 내부에 인접하는 블록의 인트라 모드 정보는, 현재 참조 영상의 외곽선 내부에 인접하는 블록의 샘플을 예측하기 위해 참조되는 이웃 샘플들의 방향을 나타내는 인트라 예측 모드일 수 있다.
다른 예에 따라 현재 참조 영상의 외곽선 내부에 인접하는 블록의 특성은, 그래디언트(gradient), 엣지 검출(edge detect) 등의 방법을 사용하여 결정될 수 있고, 이러한 경우, 현재 참조 영상의 외곽선 내부에 인접하는 블록들의 예측정보는 외곽선 내부에 인접하는 블록의 특성에 대한 정보를 포함할 수 있다.
현재 참조 영상의 외곽선 내부에 인접하는 블록의 인트라 정보에 따라 참조 블록을 패딩하는 방법은 도 4b를 이용하여 후술한다.
다른 실시예에 따른 참조 영상 외부 영역의 패딩 방법이 적용되는 움직임 예측 방법은 템플릿 매칭(template matching)의 방법을 통해 현재 참조 영상의 외곽선 내부에 인접하는 블록과 연관성 있는 블록을 찾아 내고 연관성 있는 블록을 이용하여 패딩할 수 있다.
본 개시에 따른 참조 영상 외부 영역의 패딩 방법에 템플릿 매칭이 적용된다면 다음 과정에 따를 수 있다. 현재 블록의 참조 블록이 참조 영상의 외곽선을 벗어나는 경우에, 참조 블록에 인접하는 참조 영상 내부의 경계 블록의 템플릿을 결정하고, 템플릿 매칭에 의해 검출되는 영역에 둘러싸인 블록을 경계 블록의 유사 블록을 결정할 수 있다. 경계 블록의 유사 블록에 인접하는 블록의 샘플값들을 이용하여, 현재 블록의 참조 블록을 패딩할 수 있다.
도 1c는 일 실시예에 따른 움직임 정보 및 인트라 정보를 둘 다 이용하는 참조 영상 외부 영역의 패딩 방법의 흐름도를 도시한다.
도 1c를 참조하면, 본 개시의 일 실시예에 따른 움직임 정보 및 인트라 정보를 둘 다 이용하는 참조 영상 외부 영역의 패딩 방법에 따르면, 단계 s16에서, 현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 상기 참조 영상의 외곽선 내부에 인접하는 외곽선 블록들의 움직임 정보 및 인트라 모드 정보를 획득한다. 외곽선 블록의 인터 예측에 의해 외곽선 블록의 움직임 정보(움직임 벡터)가 결정될 수 있다. 본 개시에 따른 패딩 방법은, 현재 블록의 움직임 벡터가 참조 영상의 외곽선 벗어난 영역을 가리키는 경우, 참조 영상의 외곽선 내부에 인접하는 다른 블록의 움직임 정보 및 인트라 모드 정보를 획득하고, 획득된 움직임 정보 및 인트라 모드 정보가 가리키는 샘플값들을 이용하여 외곽선 외부에 위치하는 참조 블록의 샘플값들을 예측하고자 한다.
참조 영상은 현재 블록의 참조 리스트, 즉 L0 리스트 및 L1 리스트 중 적어도 어느 하나에 포함된 영상들 중에서 결정될 수 있다. 참조 영상의 블록들 중에서 현재 블록의 움직임 벡터가 가리키는 위치가 참조 블록의 위치일 수 있다.
참조 블록에 포함되는 모든 픽셀들의 위치가 참조 영상의 외곽선 외부에 위치할 수 있다. 또는 참조 블록에 포함되는 일부 픽셀들의 위치가 참조 영상의 외곽선 외부에 위치할 수 있다.
단계 s17에서 상기 외곽선 내부에 인접하는 외곽선 블록의 움직임 정보 및 인트라 모드 정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정된다. 단계 S18에서, 상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 결정된다.
일 실시예에 따른 움직임 정보 및 인트라 정보를 둘 다 이용하는 참조 영상 외부 영역의 패딩 방법에 따르면, 상기 외곽선 블록의 움직임 정보 및 인트라 모드 정보 각각의 가중치를 결정할 수 있다. 상기 참조 샘플은 움직임 정보, 인트라 모드 정보, 그리고 각각의 가중치를 이용하여 결정될 수 있다. 예를 들어, 움직임 정보를 이용하여 결정된 참조 샘플의 가중치를 a로 결정하고 인트라 모드 정보를 이용하여 결정된 참조 샘플의 가중치를 b로 결정하여, 최종 참조 샘플은 a*(움직임 정보를 이용하여 결정된 참조 샘플) + b*(인트라 모드 정보를 이용하여 결정된 참조 샘플)의 결과로 결정될 수 있다.
상기 참조 샘플들의 가중치들은 부호화 단계에서 결정되고, 각각 부호화되어 시그널링될 수 있다. 상기 가중치들을 복호화 단계에서 수신하여 상기 가중치들을 이용하여 최종 참조 샘플이 결정될 수 있다.
또한, 상기 참조 샘플들의 가중치들은 미리 정의된 값일 수도 있다.
다른 예에 따라, 상기 참조 샘플들의 가중치들은 픽쳐 레벨 단위로 시그널링될 수 있다. 예를 들어, 상기 가중치들은 픽처 파라미터 세트 (picture parameter set)에 포함되어 시그널링 될 수 있다.
이하 도 1c에 대한 설명에서, 현재 블록의 참조 영상의 외곽선 내부에 인접하는 블록은 “외곽선 블록”이라 지칭하고, 상기 참조 영상의 외곽선 내부에 인접하면서 상기 “외곽선 블록”에 인접하는 블록은 “주변 외곽선 블록”이라 지칭한다.
일 실시예에 따른 움직임 정보 및 인트라 정보를 둘 다 이용하는 참조 영상 외부 영역의 패딩 방법에 따르면, 상기 외곽선 블록의 움직임 정보가 없거나 움직임 정보가 제로 움직임 벡터인 경우에는, 상기 외곽선 블록의 움직임 정보 대신 상기 주변 외곽선 블록의 움직임 정보를 이용하여, 상기 참조 샘플들을 결정하고, 상기 참조 샘플들을 이용하여 참조 영상의 외곽선 외부에 위치하는 샘플들이 예측될 수 있다.
다른 예로는, 상기 외곽선 블록의 움직임 정보가 없거나 움직임 정보가 제로 움직임 벡터인 경우에는, 상기 외곽선 블록의 인트라 모드 정보만을 이용하여, 상기 참조 샘플들을 결정하고, 상기 참조 샘플들을 이용하여 참조 영상의 외곽선 외부에 위치하는 샘플들이 예측될 수 있다.
다른 예로는, 상기 외곽선 블록의 움직임 정보가 없거나 움직임 정보가 제로 움직임 벡터인 경우에는, 상기 주변 외곽선 블록의 움직임 정보 및 상기 외곽선 블록의 인트라 모드 정보를 이용하여, 상기 참조 샘플들을 결정하고, 상기 참조 샘플들을 이용하여 참조 영상의 외곽선 외부에 위치하는 샘플들이 예측될 수 있다.
다른 예로는, 상기 외곽선 블록의 움직임 정보가 없거나 움직임 정보가 제로 움직임 벡터인 경우에는, 상기 주변 외곽선 블록의 움직임 정보의 가중치 및 상기 외곽선 블록의 인트라 모드 정보의 가중치를 각각 결정하고, 상기 움직임 정보의 가중치, 상기 인트라 모드 정보의 가중치, 상기 움직임 정보, 및 상기 인트라 정보를 이용하여, 상기 참조 샘플들을 결정하고, 상기 참조 샘플들을 이용하여 참조 영상의 외곽선 외부에 위치하는 샘플들이 예측될 수 있다.
다른 예로는, 상기 외곽선 블록의 움직임 정보 및 상기 주변 외곽선 블록의 움직임 정보의 차이가 미리 결정된 임계값보다 큰 경우에는, 상기 주변 외곽선 블록의 움직임 정보의 가중치 및 상기 외곽선 블록의 인트라 모드 정보의 가중치를 각각 결정하고, 상기 움직임 정보의 가중치, 상기 인트라 모드 정보의 가중치, 상기 움직임 정보, 및 상기 인트라 정보를 이용하여, 상기 참조 샘플들을 결정하고, 상기 참조 샘플들을 이용하여 참조 영상의 외곽선 외부에 위치하는 샘플들이 예측될 수 있다.
움직임 정보를 이용하여 참조 샘플을 결정하고, 인트라 모드 정보를 이용하여 참조 샘플을 결정하는 것은 도 1b에서 상술된 방식으로 결정할 수 있다.
현재 참조 영상의 외곽선 내부에 인접하는 외곽선 블록의 움직임 정보 및 인트라 모드 정보에 따라 현재 참조 영상의 외곽선 외부 영역을 패딩하는 방법은 도 4c를 이용하여 후술한다.
도 2a는 일 실시예에 따라 예측 정보를 이용한 영상 패딩 장치의 블록도를 도시한다.
도 2a를 참조하면, 일 실시예에 따른 예측 정보를 이용한 영상 패딩 장치(20)는 예측 정보 획득부(22), 참조 샘플 결정부(24) 및 외부 샘플 결정부(26)를 포함한다.
일 실시예에 따른 예측 정보를 이용한 영상 패딩 장치(20)는 예측 정보 획득부(22), 참조 샘플 결정부(24) 및 외부 샘플 결정부(26)를 제어하는 중앙 프로세서(미도시)를 포함할 수 있다. 또는, 예측 정보 획득부(22), 참조 샘플 결정부(24) 및 외부 샘플 결정부(26)가 각각의 자체 프로세서(미도시)에 의해 작동되며, 프로세서(미도시)들이 상호 유기적으로 작동함에 따라 참조 영역의 패딩 방법이 적용되는 움직임 예측 장치가 전체적으로 작동될 수 있다.
일 실시예에 따른 예측 정보를 이용한 영상 패딩 장치(20)의 예측 정보 획득부(22)는 현재 영상의 외곽선에 인접하는 현재 블록의 예측정보를 획득할 수 있다. 참조 샘플 결정부(24)는 현재 블록의 예측정보를 이용하여, 현재 블록의 외곽선의 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정할 수 있다. 외부 샘플 결정부(26)는 참조 샘플들을 이용하여 현재 블록에 인접하는 현재 영상의 외곽선 외부에 위치하는 샘플들을 결정할 수 있다.
현재 영상 내의 현재 블록의 픽셀이 현재 영상의 외곽선에 인접하고, 외곽선 외부 영역의 픽셀 위치의 샘플값이 필요하다면, 예측 정보 획득부(22)는 현재 블록의 예측 정보가 존재하고, 그리고 외부 영역의 픽셀 위치가 현재 픽처의 좌상, 우상, 좌하 및 우하측 중 하나에 위치하지 않는지 여부를 확인할 수 있다. 현재 블록의 예측 정보가 존재하고, 외부 영역의 픽셀 위치가 현재 픽처의 좌상측 모서리, 우상측 모서리, 좌하측 모서리 및 우하측 모서리 중 하나에 인접하는 위치가 아니라면, 참조 샘플 결정부(24)는 현재 블록의 예측 정보가 가리키는 참조 블록의 이웃 샘플이 존재하는지 확인할 수 있다. 현재 블록의 인터 예측 정보가 이용된다면, 현재 블록의 참조 영상 중 참조 블록에 인접하는 이웃 샘플이 존재하는지 확인될 수 있다. 현재 블록의 인트라 예측 정보가 이용된다면, 현재 영상의 외곽선 내부에 인접하는 샘플들 중에서, 외부 영역의 픽셀 위치로부터 현재 블록의 인트라 예측 모드에 따른 방향에 위치하는 이웃 샘플이 존재하는지 확인될 수 있다.
현재 블록의 예측 정보에 따른 참조 블록의 이웃 샘플이 존재한다면, 이웃 샘플을 이용하여 현재 영상이 외부 영역의 샘플값이 결정될 수 있다.
다만, 현재 블록의 예측 정보에 따른 참조 블록의 이웃 샘플이 존재하지 않는다면, 외부 영역에 수평 또는 수직 방향으로 인접하는 현재 영상의 외곽선 내부 샘플을 이용하여 현재 영상이 외부 영역의 샘플값이 결정될 수 있다.
현재 블록의 예측 정보가 존재하지 않는 경우에도, 외부 영역에 수평 또는 수직 방향으로 인접하는 현재 영상의 외곽선 내부 샘플을 이용하여 현재 영상이 외부 영역의 샘플값이 결정될 수 있다.
외부 영역의 픽셀 위치가 현재 픽처의 좌상측 모서리의 좌상 대각방향으로 인접하거나, 우상측 모서리의 우상 대각방향으로 인접하거나, 좌하측 모서리의 좌하 대각방향으로 인접하거나, 우하측 모서리의 우하 대각방향으로 인접하는 위치인 경우에도, 외부 영역에 수평 또는 수직 방향으로 인접하는 현재 영상의 외곽선 내부 샘플을 이용하여 현재 영상이 외부 영역의 샘플값이 결정될 수 있다.
현재 블록의 예측정보를 이용하여, 영상 외부 영역을 패딩하는 방법은, 도 1a을 참고하여 상술한 바에 상응하므로, 중복되는 설명은 생략한다.
도 2b는 일 실시예에 따라 예측 정보를 이용한 참조 영상 외부 영역의 패딩 방법이 적용되는 움직임 예측 장치(21)의 블록도를 도시한다.
도 2b를 참조하면, 일 실시예에 따른 참조 영역의 패딩 방법이 적용되는 움직임 예측 장치(21)는 예측 정보 획득부(23), 참조 샘플 결정부(25) 및 외부 샘플 결정부(27)를 포함한다.
일 실시예에 따른 참조 영역의 패딩 방법이 적용되는 움직임 예측 장치(21)는 예측 정보 획득부(23), 참조 샘플 결정부(25) 및 외부 샘플 결정부(27)를 제어하는 중앙 프로세서(미도시)를 포함할 수 있다. 또는, 예측 정보 획득부(23), 참조 샘플 결정부(25) 및 외부 샘플 결정부(27)가 각각의 자체 프로세서(미도시)에 의해 작동되며, 프로세서(미도시)들이 상호 유기적으로 작동함에 따라 참조 영상 외부 영역의 패딩 방법이 적용되는 움직임 예측 장치가 전체적으로 작동될 수 있다.
일 실시예에 따른 참조 영역의 패딩 방법이 적용되는 움직임 예측 장치의 예측 정보 획득부(23)는 현재 블록의 인터 예측에 의해 결정된 움직임 벡터가 현재 참조 영상의 외곽을 벗어난 영역을 가리키는 경우, 현재 참조 영상의 외곽선 내부에 인접하는 블록들의 예측정보를 획득할 수 있다. 참조 샘플 결정부(25)는 현재 참조 영상의 외곽선 내부에 인접하는 블록의 예측정보를 이용하여, 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정할 수 있다. 외부 샘플 결정부(27)는 현재 참조 영상의 외부에 위치하는 샘플들을 예측하기 위한 결정된 참조 샘플들을 이용하여 현재 참조 영상의 외곽선 외부에 위치하는 샘플을 결정할 수 있다.
현재 참조 영상의 외곽선 내부에 인접하는 블록의 예측정보를 이용하여, 현재 참조 영상의 외부 영역을 패딩하기 위한 참조 샘플들을 결정하는 방법은, 도 1b을 참고하여 참조 영역의 패딩 방법의 적용되는 움직임 예측 방법에서 상술한 바에 상응하므로, 중복되는 설명은 생략한다.
도 2c는 일 실시예에 따라 움직임 정보 및 인트라 모드 정보를 둘 다 이용한 영상 패딩 장치(28)의 블록도를 도시한다.
도 2c를 참조하면, 일 실시예에 따른 참조 영역의 패딩 방법이 적용되는 영상 패딩 장치(28)는 정보 획득부(28-1), 참조 샘플 결정부(28-2) 및 외부 샘플 결정부(28-3)를 포함한다.
일 실시예에 따른 참조 영역의 패딩 방법이 적용되는 영상 패딩 장치(28)는 정보 획득부(28-1), 참조 샘플 결정부(28-2) 및 외부 샘플 결정부(28-3)를 제어하는 중앙 프로세서(28-4) 및 프로세서(28-4)와 상호 연결된 메모리(28-5)를 포함할 수 있다. 또는, 정보 획득부(28-1), 참조 샘플 결정부(28-2) 및 외부 샘플 결정부(28-3)가 각각의 자체 프로세서(미도시)에 의해 작동되며, 프로세서(미도시)들이 상호 유기적으로 작동함에 따라 참조 영상 외부 영역의 패딩 방법이 적용되는 움직임 예측 장치가 전체적으로 작동될 수 있다.
일 실시예에 따른 참조 영역의 패딩 방법이 적용되는 영상 패딩 장치(28)의 정보 획득부(28-1)는 현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 상기 참조 영상의 외곽선 내부에 인접하는 외곽선 블록들의 움직임 정보 및 인트라 모드 정보를 획득할 수 있다. 참조 샘플 결정부(28-2)는 상기 외곽선 내부에 인접하는 외곽선 블록의 움직임 정보 및 인트라 모드 정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정할 수 있다. 외부 샘플 결정부(28-3)는 상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 결정할 수 있다.
현재 참조 영상의 외곽선 내부에 인접하는 블록의 움직임 정보 및 인트라 모드 정보를 이용하여, 현재 참조 영상의 외부 영역을 패딩하기 위한 참조 샘플들을 결정하는 방법은, 도 1c를 참고하여 참조 영역의 패딩 방법에서 상술한 바에 상응하므로, 중복되는 설명은 생략한다.
비디오 부호화 시스템 및 비디오 복호화 시스템에서는, 현재 영상을 복호화하여 생성되는 복원영상은, 다른 영상의 움직임 예측을 위한 참조영상으로서 사용될 수 있다. 다른 영상의 움직임 예측을 위해 필요한 위치가 복원영상(현재영상)의 외부를 가리키는 경우를 대비하여, 비디오 부호화 시스템 및 비디오 복호화 시스템은 현재 영상의 복원 영상의 외부 영역을 미리 패딩하여 현재 영상보다 큰 패딩 영상(padded picture)을 생성할 수 있다.
일 실시예에 따른 영상 패딩 장치(20), 움직임 예측 장치(21), 및 영상 패딩 장치(28)는, 복호화된 후의 복원영상의 외부 영역을, 복원 영상 내부의 인터 예측 정보, 인트라 예측 정보 또는 둘 다를 이용하여 결정되는 참조 샘플들로 패딩함으로써, 복원영상의 원본 크기에 비해 큰 영상을 메모리에 저장해놓을 수 있다.
또는, 영상 패딩 장치(20), 움직임 예측 장치(21), 및 영상 패딩 장치(28)는, 복호화된 원본 크기의 복원영상을 먼저 메모리에 저장해놓고, 다른 영상의 움직임 예측을 위한 참조 블록이 복원 영상의 외부 영역이 존재한다는 결정이 있는 경우에, 복원 영상 내부의 인터 예측 정보, 인트라 예측 정보, 또는 둘 다를 이용하여 결정되는 참조 샘플들로 외부 영역을 패딩함으로써, 참조 블록의 샘플값들을 생성할 수도 있다.이하, 도 3 내지 9를 참조하여, 참조 영상의 외부 영역을 패딩하는 구체적인 실시예들에 대해 상술한다.
도 3는 종래의 패딩 방법에 따라 참조 영상 외부 영역을 패딩하는 방법을 도시한다.
도 3를 참조하면, 종래의 패딩 방법은 참조 영상 외곽선(31)의 외부에 위치하는 샘플들(33)을 패딩하기 위해, 외곽선 블록(35)의 픽셀들 중에서 영상 외곽선(31)에 인접하는 외곽선 픽셀들의 샘플값들을 복사하여 참조 영상 외곽선(31)의 외부에 위치하는 샘플들(33)의 샘플값들을 생성한다. 또는 외곽선 픽셀들 내부의 픽셀들 중 패딩 방향(37)으로 나열된 외곽선 픽셀들을 이용하되, 외곽선(31)을 중심으로 대칭되는 방향으로 복사하는 미러링 방식으로 통해 참조 영상 외곽선(31)의 외부에 위치하는 샘플들(33)의 샘플값들을 생성하기도 한다.
도 4a는 일 실시예에 따라 인터 정보를 이용하여 참조 영상 외부 영역을 패딩하는 방법을 도시한다.
일 실시예에 따라 참조 영상(40)의 외곽선의 외부에 위치하는 외부 픽셀들(43)의 샘플값들을 패딩하기 위해, 예측된 움직임을 이용할 수 있다. 외부 픽셀들(43)에 인접하며 참조 영상(40)의 외곽선 내부에 인접하는 외곽선 블록(45)의 인터 정보를 이용하여, 외부 픽셀들(43)의 샘플값들이 예측될 수 있다.
구체적으로, 외곽선 블록(45)의 참조 리스트, 참조 인덱스, 움직임 벡터를 이용하여, 외곽선 블록(45)의 참조 대상이 되는 블록(41)을 결정할 수 있다. 구체적으로, 외곽선 블록(45)의 참조 리스트 중에서 참조 인덱스가 가리키는 영상이 외곽선 블록(45)의 참조 대상 영상(42)이 되고, 참조 대상 영상(42) 중에서 외곽선 블록(45)의 움직임 벡터가 가리키는 참조 대상이 되는 블록(41)이 결정될 수 있다.
참조 대상이 되는 블록(41)에 인접하는 이웃 블록(49)의 샘플들이, 참조 영상(40)의 외부 픽셀들(43)을 패딩하기 위한 참조 샘플들로 결정될 수 있다. 따라서, 참조 대상이 되는 블록(41)에 인접하는 이웃 블록(49)의 샘플값들로 참조 영상(40)의 외부 픽셀들(43)의 샘플값들이 메꿔질 수 있다.
도 4b는 일 실시예에 따라 인트라 정보를 이용하여 참조 영상 외부 영역을 패딩하는 방법을 도시한다.
도 4b을 참조하면, 일 실시예에 따른 참조 영상 외부 영역의 패딩 방법에서는, 참조 영상(40)의 외곽선의 외부에 위치하는 외부 픽셀들(43)을 패딩하기 위해, 참조 영상의 외곽선 내부에 인접하는 블록(45)의 인트라 예측 모드(44)를 이용할 수 있다.
구체적으로 인트라 예측 모드(44)는 참조 영상의 외곽선 내부에 인접하는 블록(45)의 샘플을 예측하기 위해 우하측 방향(48)에 위치하는 이웃 샘플값들이 이용될 수 있음을 나타낼 수 있다. 참조 영상의 외곽선 내부에 인접하는 블록(45)의 인트라 예측 모드(44)가 가리키는 방향에 따라, 참조 영상(40)의 외곽선 내부에 인접하는 외곽선 블록들(45, 48)의 샘플들을 이용하여 참조 영상(40)의 외부 픽셀들(43)이 패딩(46)될 수 있다. 외곽선 블록들(45, 48) 내에서 참조 영상 외곽선에 인접하는 픽셀들 중에서, 참조 영상(40)의 외부 픽셀들(43)의 우하측 방향에 위치하는 픽셀들의 샘플값들이, 참조 영상(40)의 외부 픽셀들(43)의 샘플값들이 되도록 결정될 수 있다.
도 4c는 일 실시예에 따라 움직임 정보 및 인트라 모드 정보를 둘 다 이용하여 참조 영상 외부 영역을 패딩하는 방법을 도시한다.
도 4c의 방법에서는, 도 4a 및 도 4b의 방법을 함께 사용할 수 있다. 구체적으로, 외곽선 블록(45)의 움직임 정보가 가리키는 참조의 대상이 되는 블록(41)이 결정되고, 참조 대상이 되는 블록(41)에 인접하는 이웃 블록(49)의 샘플들이, 참조 영상(40)의 외부 픽셀들(43)을 패딩하기 위한 참조 샘플들로 결정될 수 있고, 참조 영상의 외곽선 내부에 인접하는 외곽선 블록(45)의 인트라 예측 모드(44)가 가리키는 방향에 따라, 참조 영상(40)의 외곽선 내부에 인접하는 외곽선 블록(45) 및 주변 외곽선 블록(48)의 샘플들이 참조 샘플들로 결정될 수 있다. 이와 같이, 움직임 정보와 인트라 예측 모드를 이용하여 결정된 참조 샘플들(49, 48)을 둘 다 이용하여 참조 영상(40)의 외부 픽셀들(43)의 샘플값들을 결정할 수 있다. 또한, 움직임 정보를 이용하여 결정된 참조 샘플과 인트라 예측 모드를 이용하여 결정된 참조 샘플 각각의 가중치를 결정할 수 있고, 각각의 결정된 가중치, 움직임 정보를 이용하여 결정된 참조 샘플(49), 및 인트라 예측 모드를 이용하여 결정된 참조 샘플(48)들을 이용하여 참조 영상(40)의 외부 픽셀들(43)의 샘플값들을 결정할 수 있다.
도 5은 종래의 패딩 방법이 적용된 참조 영상의 예를 도시한다.
도 5을 참조하면, 종래의 패딩 방법은 참조 영상(51)의 외곽선(53)의 외부에 있는 참조 영상 외부 영역(55)의 픽셀들의 샘플값들을 참조 영상의 외곽선(53)에 인접하는 내부 픽셀들의 샘플값들을 복사하여 참조 영상 외부 영역(55)을 채운다. 즉, 외곽선(53) 중 수직 외곽선에 인접하는 참조 영상 외부 영역(55)의 샘플값들은, 수평 방향으로 수직 외곽선에 인접하는 참조 영상(51)의 내부 픽셀의 샘플값들을 수평 방향으로 복사한다. 마찬가지로 외곽선(53) 중 수평 외곽선에 인접하는 참조 영상 외부 영역(55)의 샘플값들은, 수직 방향으로 수평 외곽선에 인접하는 참조 영상(51)의 내부 픽셀의 샘플값들을 수직 방향으로 복사한다.
도 6는 일 실시예에 따른 패딩 방법이 적용된 참조 영상의 예를 도시한다.
도 6를 참조하면, 일 실시예에 따라 참조 영상(61)의 외곽선(63)의 내부에 인접하는 블록의 인터 예측 정보를 이용하여 참조 영상 외부 영역(65)을 패딩하는 방법이 적용된 영상이다. 참조 영상(61)의 외곽선(63)의 외부에 위치하는 참조 영상 외부 영역(65)은, 외곽선(63)의 내부에 인접하는 블록의 인터 예측 정보가 가리키는 참조의 대상이 되는 다른 영상에 포함된 참조 샘플들을 이용하여 패딩될 수 있다. 따라서, 참조 영상 외부 영역(65) 중 일부 영역(67)은, 참조 영상(61)에 포함되지 않은 영역까지 포함되도록 생성될 수 있다.
도 5의 참조 영상에서는, 참조 영상 외곽선에 인접하는 내부 샘플들을 복사하여 외곽선 외부의 영역이 패딩되었지만, 실질적으로 참조 영상(51)의 내부 정보 이상의 정보를 포함하지 않는다. 이에 비해, 도 6의 참조 영상(61)에서는, 참조 영상(61) 내부의 블록의 예측정보를 이용하여 외곽선(63) 외부의 참조 영상 외부 영역(65)이 예측되므로, 참조 영상 외부 영역(65)은 참조 영상(61) 내부로부터 획득될 수 없는 정보도 포함할 수 있다. 따라서, 참조 영상 외부 영역(65)을 포함하는 참조 영상을 이용하는 움직임 예측의 정확성이 향상되고, 이로 인해 인터 예측의 코딩 효율이 향상될 수 있다.
다양한 실시예에 따라 예측 정보를 이용한 참조 영상의 패딩 방법이 적용된 움직임 예측 방법은 360도 영상의 부복호화 방법에 적용될 수 있다. 360도 영상은 여러 방향으로 촬영한 다수의 영상들로 구성되어 있다. 현존하는 비디오 부호화 방식 및 비디오 복호화 방식은 영상이 사각형 형태임을 전제로 한다. 현존 시스템을 이용하기 위해, 360도 영상을 구성하는 다수의 영상들을 일정한 순서로 배치하여 하나의 영상을 구성하고, 그 영상에 현존하는 비디오 부호화 방식 및 비디오 복호화 방식을 적용한다.
도 7은 종래의 패딩 방법이 적용된 360도 영상의 참조 영상의 예를 도시한다.
도7을 참조하면, 360도 영상의 참조 영상(75)은 6개 방향으로 촬영된 영상(75-1, 75-2, 75-3, 75-4, 75-5, 75-6)로 구성되어 있다. 360도 영상의 참조 영상(75)의 영상 외곽선(71)의 외부 샘플값이 존재하지 않으므로, 360도 영상(75)의 외곽선(71) 내부에 인접하는 샘플들과 동일한 값으로 수직 또는 수평방향으로 패딩함으로써 360도 영상의 참조 영상(75)의 외부 영역(73)이 생성될 수 있다.
도 8은 일 실시예에 따른 참조 영상 외부 영역의 패딩 방법이 적용된 360도 영상의 참조 영상의 예를 도시한다.
일 실시예에 따른 참조 영상 외부 영역의 패딩 방법이 적용되는 움직임 예측 방법을 도 7의 360도 영상의 참조 영상(75)에 적용하고자 한다.
360도 영상의 참조 영상(75)을 각 영상(75-1, 75-2, 75-3, 75-4, 75-5, 75-6)으로 분리하고, 일 실시예에 따른 참조 영상 외부 영역의 패딩 방법을 각 영상(75-1, 75-2, 75-3, 75-4, 75-5, 75-6)마다 적용할 수 있다.
구체적으로, 참조 영상이 영상(75-1)인 경우, 영상(75-1)의 외곽선(81-1) 내부에 인접하는 외곽선 블록의 인터 예측 정보를 기초로, 외곽선(81-1) 외부의 참조 영상 외부 영역(83-1)을 생성할 수 있다.
마찬가지로, 참조 영상이 영상(75-2, 75-3, 75-4, 75-5, 75-6)인 각각의 경우에, 영상(75-2, 75-3, 75-4, 75-5, 75-6)의 외곽선(81-2, 81-3, 81-4, 81-5, 81-6) 내부에 인접하는 외곽선 블록의 인터 예측 정보를 기초로, 외곽선(81-2, 81-3, 81-4, 81-5, 81-6) 외부의 참조 영상 외부 영역(83-2, 83-3, 83-4, 83-5, 83-6)을 생성할 수 있다.
따라서, 여러 방향으로 촬영한 이미지들을 하나로 합친 360도 영상을 각 영역으로 분리하고, 샘플값이 존재하지 않는 참조 영상 외부 영역을 영상 내부 블록의 인터 예측 정보 또는 인트라 예측 정보에 따라 샘플값을 예측한다면, 360도 영상의 각 영상에 대한 코딩의 정확성이 더 향상되고 코딩 효율도 향상될 수 있다.
도 9는 다른 실시예에 따라 참조 영상 외부 영역의 패딩 방법이 적용된 360도 영상의 예를 도시한다.
360도 영상을 코딩하기 위해 하나의 영상으로 구성하는 포맷은 Rotated Sphere Projection(RSP), Equirectangular Projection(ERP), Icosahedral projection(ISP), Segmented Sphere Projection(SSP), CubeMap Projection(CMP), Equal Area CubeMap(EAC) 등으로 다양하다.
360도 영상의 포맷에 따라, 촬영된 실제 영역과 부호화 대상이 되는 영역이 다를 수 있다. 부호화 대상이 되는 영역이 실제 영역에 비해 큰 경우에, 실제 영역이 아닌 빈 영역에 대해서 보간(interpolation)등의 방법을 통해 채워지는 것이 종래의 방식이다.
360도 영상의 포맷에 따라, 현재 영상 중 빈 영역을 위해 일 실시예에 따른 참조 영상 외부 영역의 패딩 방법이 적용될 수 있다.
도 9의 360도 영상의 참조 영상(90)은 Rotated Sphere Projection(RSP)으로 생성된 영상이다. 360도 영상의 참조 영상(90)은 영상(95)과 빈 영역(또는 패딩 영역)(93)을 포함할 수 있다. 참조 영상이 360도 영상(90)이고, 참조 영상 외곽선(91) 외부에 빈 영역(93)이 존재할 수 있다. 외곽선(91) 내부에 위치하는 블록의 인터 예측 정보 또는 인트라 예측 정보를 이용하여 결정된 참조 샘플값들을 이용하여 빈 영역(93)의 샘플값을 예측할 수 있다.
참조 영상의 외곽선 내부에 있는 외곽선 블록의 예측 정보를 이용하여 실제값이 존재하지 않는 외곽선 외부 영역을 채움으로써, 움직임 예측의 정확성이 증대되는 효과가 있다.
도 10a는 일 실시예에 따른 예측 정보를 이용한 영상의 패딩 방법이 적용되는 비디오 부호화 장치(2000)의 블록도를 도시한다.
비디오 부호화 장치(2000)는, 예측 부호화부(2015), 변환 및 양자화부(2020), 엔트로피 부호화부(2025), 역양자화 및 역변환부(2030), 디블로킹 필터링부(2035) 및 루프 필터링부(2040)를 포함한다.
예측 부호화부(2015)는 입력 영상의 현재 블록에 대한 인터 예측 또는 인트라 예측에 의해 예측 샘플을 가리키기 위한 예측 정보를 결정할 수 있다. 인터 예측인 경우에 현재 블록의 예측 샘플들은 먼저 부호화된 참조 영상 중에서 결정되고, 인트라 예측인 경우에 현재 블록의 예측 샘플들은 현재 영상 내에서 먼저 부호화된 샘플들 중에서 결정될 수 있다.
변환 및 양자화부(2020)는 예측 블록의 예측 샘플들과 현재 블록의 샘플들값 간의 차이 성분들인 레지듀얼 블록에 대해 변환 및 양자화를 수행하여 양자화된 변환 계수들을 출력한다. 엔트로피 부호화부(2025)는 양자화된 변환 계수들에 엔트로피 부호화를 수행하여 비트스트림을 출력할 수 있다. 역양자화 및 역변환부(2030)는 양자화된 변환 계수들에 대해 역양자화 및 역변환을 수행하여 공간 영역의 레지듀얼 블록을 복원한다. 복원된 레지듀얼 블록과 예측 블록이 결합된 복원 블록은 디블로킹 필터링부(2035) 및 루프 필터링부(2040)에 입력되고 복원 블록에 대해 필터링이 수행되어 수정된 복원 블록이 출력된다. 루프 필터링을 통해 수정된 복원 블록들로 구성된 복원 영상은 예측 부호화부(2015)에서 다음 블록의 인터 예측을 위한 참조 영상으로 이용될 수 있다.
현재 블록이 현재 영상의 외곽선에 인접하고 현재 블록을 위한 인터 예측 정보 또는 인트라 예측 정보가 존재하는 경우에, 도 1a 내지 9를 참조하여 상술한 현재 영상의 외부 영역을 패딩하는 방법이 적용될 수 있다. 즉, 도 2a를 참조하여 상술한 영상 패딩 장치(20)의 동작은 예측 부호화부(2015)에서 수행될 수 있다. 예측 부호화부(2015)에서 수행되는 영상 패딩 장치(20)의 동작은 앞서 도 1a 내지 9를 참조하여 상술한 동작과 동일하므로, 중복되는 설명은 생략한다.
또한, 예측 부호화부(2015)에서 현재 블록의 인터 예측을 위해 이용되는 참조 영상이 참조 영상의 외곽선 외부에 위치하는 경우에, 도 1b 내지 9를 참조하여 상술한 참조 영상 외부 영역의 패딩 방법이 적용될 수 있다. 즉, 도 2b를 참조하여 상술한 움직임 예측 장치(21)의 동작은 예측 부호화부(2015)에서 수행될 수 있다. 예측 부호화부(2015)에서 수행되는 움직임 예측 장치 (21)의 동작은 앞서 도 1b 및 2b를 참조하여 상술한 동작과 동일하므로, 중복되는 설명은 생략한다.
도 10b는 일 실시예에 따른 예측 정보를 이용한 영상의 패딩 방법이 적용되는 비디오 복호화 장치(2080)의 블록도를 도시한다.
비디오 복호화 장치(2080)는, 엔트로피 복호화부(2055), 역양자화 및 역변환부(2060), 예측 복호화부(2075), 디블로킹 필터링부(2065) 및 루프 필터링부(2070)를 포함한다.
엔트로피 복호화부(2055)는, 수신된 비트스트림에 대해 엔트로피 복호화를 수행하여 영상의 양자화된 변환 계수들를 획득한다. 역양자화 및 역변환부(2060)는 변환블록의 양자화된 변환 계수들에 대해 역양자화 및 역변환을 수행하여 공간 영역의 레지듀얼 블록을 복원한다.
예측 복호화부(2075)는 현재 블록을 위한 인터 예측 또는 인트라 예측을 위한 예측 정보를 이용하여 참조 블록의 참조 샘플들을 결정하고 참조 샘플들을 이용하여 예측 블록을 결정할 수 있다. 인터 예측인 경우에 현재 블록의 예측 샘플들은 먼저 복원된 참조 영상 중에서 결정되고, 인트라 예측인 경우에 현재 블록의 예측 샘플들은 현재 영상 내에서 먼저 복원된 샘플들 중에서 결정될 수 있다.
예측 블록과 레지듀얼 블록을 결합하여 공간 영역의 복원 블록이 결정되고, 디블로킹 필터링부(2065) 및 루프 필터링부(2070)를 통해 복원 블록의 샘플값들이 수정되고, 수정된 복원 블록들로 구성된 현재 영상의 복원 영상이 출력될 수 있다. 복원 영상은 예측 복호화부(2075)에서 다음 영상을 예측하기 위한 참조 영상으로서 이용될 수 있다.
따라서, 예측 복호화부(2075)에서 현재 블록이 현재 영상의 외곽선에 인접하고 현재 블록의 인터 예측 정보 또는 인트라 예측 정보가 존재하는 경우에, 도 1a 내지 9를 참조하여 상술한 참조 영역의 패딩 방법이 적용될 수 있다. 즉, 도 2a를 참조하여 상술한 영상 패딩 장치(20)의 동작은 예측 복호화부(2075)에서 수행될 수 있다. 예측 부호화부(2075)에서 수행되는 영상 패딩 장치(20)의 동작은 앞서 도 1a 내지 9를 참조하여 상술한 동작과 동일하므로, 중복되는 설명은 생략한다. 또한, 예측 복호화부(2075)에서 현재 블록의 인터 예측을 위해 이용되는 참조 영상이 참조 영상의 외곽선 외부에 위치하는 경우에, 도 1b 내지 9를 참조하여 상술한 참조 영상 외부 영역의 패딩 방법이 적용될 수 있다. 즉, 도 2b를 참조하여 상술한 움직임 예측 장치(21)의 동작은 예측 복호화부(2075)에서 수행될 수 있다. 예측 부호화부(2075)에서 수행되는 움직임 예측 장치 (21)의 동작은 앞서 도 1b 및 2b를 참조하여 상술한 동작과 동일하므로, 중복되는 설명은 생략한다.
도 11은 일 실시예에 따라 비디오 복호화 장치(2080)가 현재 부호화 단위를 분할하여 적어도 하나의 부호화 단위를 결정하는 과정을 도시한다.
블록 형태는 4Nx4N,4Nx2N, 2Nx4N, 4NxN 또는 Nx4N을 포함할 수 있다. 여기서 N은 양의 정수일 수 있다. 블록 형태 정보는 부호화 단위의 모양, 방향, 너비 및 높이의 비율 또는 크기 중 적어도 하나를 나타내는 정보이다.
부호화 단위의 모양은 정사각형(square) 및 비-정사각형(non-square)을 포함할 수 있다. 부호화 단위의 너비 및 높이의 길이가 같은 경우(4Nx4N), 영상 복호화 장치(2080)는 부호화 단위의 블록 형태 정보를 정사각형으로 결정할 수 있다. 영상 복호화 장치(2080)는 부호화 단위의 모양을 비-정사각형으로 결정할 수 있다.
부호화 단위의 너비 및 높이의 길이가 다른 경우(4Nx2N, 2Nx4N, 4NxN 또는 Nx4N), 영상 복호화 장치(2080)는 부호화 단위의 블록 형태 정보를 비-정사각형으로 결정할 수 있다. 부호화 단위의 모양이 비-정사각형인 경우, 영상 복호화 장치(2080)는 부호화 단위의 블록 형태 정보 중 너비 및 높이의 비율을 1:2, 2:1, 1:4, 4:1, 1:8 또는 8:1 중 적어도 하나로 결정할 수 있다. 또한, 부호화 단위의 너비의 길이 및 높이의 길이에 기초하여, 영상 복호화 장치(2080)는 부호화 단위가 수평 방향인지 수직 방향인지 결정할 수 있다. 또한, 부호화 단위의 너비의 길이, 높이의 길이, 넓이 중 적어도 하나에 기초하여, 영상 복호화 장치(2080)는 부호화 단위의 크기를 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 블록 형태 정보를 이용하여 부호화 단위의 형태를 결정할 수 있고, 분할 형태 모드에 대한 정보를 이용하여 부호화 단위가 어떤 형태로 분할되는지를 결정할 수 있다. 즉, 영상 복호화 장치(2080)가 이용하는 블록 형태 정보가 어떤 블록 형태를 나타내는지에 따라 분할 형태 모드에 대한 정보가 나타내는 부호화 단위의 분할 방법이 결정될 수 있다.
영상 복호화 장치(2080)는 비트스트림으로부터 분할 형태 모드에 대한 정보를 획득할 수 있다. 하지만 이에 한정되는 것은 아니며, 영상 복호화 장치(2080) 및 영상 부호화 장치(2200)는 블록 형태 정보에 기초하여 미리 약속된 분할 형태 모드에 대한 정보를 획득할 수 있다. 영상 복호화 장치(2080)는 최대 부호화 단위 또는 최소 부호화 단위에 대하여 미리 약속된 분할 형태 모드에 대한 정보를 획득할 수 있다. 예를 들어 영상 복호화 장치(2080)는 최대 부호화 단위의 크기를 256x256으로 결정할 수 있다. 영상 복호화 장치(2080)는 미리 약속된 분할 형태 모드에 대한 정보를 쿼드 분할(quad split)로 결정할 수 있다. 쿼드 분할은 부호화 단위의 너비 및 높이를 모두 이등분하는 분할 형태 모드이다. 영상 복호화 장치(2080)는 분할 형태 모드에 대한 정보에 기초하여 256x256 크기의 최대 부호화 단위로부터 128x128 크기의 부호화 단위를 획득할 수 있다. 또한 영상 복호화 장치(2080)는 최소 부호화 단위의 크기를 4x4로 결정할 수 있다. 영상 복호화 장치(2080)는 최소 부호화 단위에 대하여 "분할하지 않음"을 나타내는 분할 형태 모드에 대한 정보를 획득할 수 있다.
일 실시예에 따라, 영상 복호화 장치(2080)는 현재 부호화 단위가 정사각형 형태임을 나타내는 블록 형태 정보를 이용할 수 있다. 예를 들어 영상 복호화 장치(2080)는 분할 형태 모드에 대한 정보에 따라 정사각형의 부호화 단위를 분할하지 않을지, 수직으로 분할할지, 수평으로 분할할지, 4개의 부호화 단위로 분할할지 등을 결정할 수 있다. 도 11을 참조하면, 현재 부호화 단위(300)의 블록 형태 정보가 정사각형의 형태를 나타내는 경우, 비디오 복호화 장치(2080)는 분할되지 않음을 나타내는 분할 형태 모드에 대한 정보에 따라 현재 부호화 단위(300)와 동일한 크기를 가지는 부호화 단위(310a)를 분할하지 않거나, 소정의 분할방법을 나타내는 분할 형태 모드에 대한 정보에 기초하여 분할된 부호화 단위(310b, 310c, 310d 등)를 결정할 수 있다.
도 11을 참조하면 영상 복호화 장치(2080)는 일 실시예에 따라 수직방향으로 분할됨을 나타내는 분할 형태 모드에 대한 정보에 기초하여 현재 부호화 단위(300)를 수직방향으로 분할한 두 개의 부호화 단위(310b)를 결정할 수 있다. 영상 복호화 장치(2080)는 수평방향으로 분할됨을 나타내는 분할 형태 모드에 대한 정보에 기초하여 현재 부호화 단위(300)를 수평방향으로 분할한 두 개의 부호화 단위(310c)를 결정할 수 있다. 영상 복호화 장치(2080)는 수직방향 및 수평방향으로 분할됨을 나타내는 분할 형태 모드에 대한 정보에 기초하여 현재 부호화 단위(300)를 수직방향 및 수평방향으로 분할한 네 개의 부호화 단위(310d)를 결정할 수 있다. 다만 정사각형의 부호화 단위가 분할될 수 있는 분할 형태는 상술한 형태로 한정하여 해석되어서는 안되고, 분할 형태 모드에 대한 정보가 나타낼 수 있는 다양한 형태가 포함될 수 있다. 정사각형의 부호화 단위가 분할되는 소정의 분할 형태들은 이하에서 다양한 실시예를 통해 구체적으로 설명하도록 한다.
도 12는 일 실시예에 따라 영상 복호화 장치(2080)가 비-정사각형의 형태인 부호화 단위를 분할하여 적어도 하나의 부호화 단위를 결정하는 과정을 도시한다.
일 실시예에 따라 영상 복호화 장치(2080)는 현재 부호화 단위가 비-정사각형 형태임을 나타내는 블록 형태 정보를 이용할 수 있다. 영상 복호화 장치(2080)는 분할 형태 모드에 대한 정보에 따라 비-정사각형의 현재 부호화 단위를 분할하지 않을지 소정의 방법으로 분할할지 여부를 결정할 수 있다. 도 12를 참조하면, 현재 부호화 단위(400 또는 450)의 블록 형태 정보가 비-정사각형의 형태를 나타내는 경우, 영상 복호화 장치(2080)는 분할되지 않음을 나타내는 분할 형태 모드에 대한 정보에 따라 현재 부호화 단위(400 또는 450)와 동일한 크기를 가지는 부호화 단위(410 또는 460)를 결정하거나, 소정의 분할방법을 나타내는 분할 형태 모드에 대한 정보에 따라 기초하여 분할된 부호화 단위(420a, 420b, 430a, 430b, 430c, 470a, 470b, 480a, 480b, 480c)를 결정할 수 있다. 비-정사각형의 부호화 단위가 분할되는 소정의 분할 방법은 이하에서 다양한 실시예를 통해 구체적으로 설명하도록 한다.
일 실시예에 따라 영상 복호화 장치(2080)는 분할 형태 모드에 대한 정보를 이용하여 부호화 단위가 분할되는 형태를 결정할 수 있고, 이 경우 분할 형태 모드에 대한 정보는 부호화 단위가 분할되어 생성되는 적어도 하나의 부호화 단위의 개수를 나타낼 수 있다. 도 12를 참조하면 분할 형태 모드에 대한 정보가 두 개의 부호화 단위로 현재 부호화 단위(400 또는 450)가 분할되는 것을 나타내는 경우, 영상 복호화 장치(2080)는 분할 형태 모드에 대한 정보에 기초하여 현재 부호화 단위(400 또는 450)를 분할하여 현재 부호화 단위에 포함되는 두 개의 부호화 단위(420a, 420b, 또는 470a, 470b)를 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)가 분할 형태 모드에 대한 정보에 기초하여 비-정사각형의 형태의 현재 부호화 단위(400 또는 450)를 분할하는 경우, 영상 복호화 장치(2080)는 비-정사각형의 현재 부호화 단위(400 또는 450)의 긴 변의 위치를 고려하여 현재 부호화 단위를 분할할 수 있다. 예를 들면, 영상 복호화 장치(2080)는 현재 부호화 단위(400 또는 450)의 형태를 고려하여 현재 부호화 단위(400 또는 450)의 긴 변을 분할하는 방향으로 현재 부호화 단위(400 또는 450)를 분할하여 복수개의 부호화 단위를 결정할 수 있다.
일 실시예에 따라, 분할 형태 모드에 대한 정보가 홀수개의 블록으로 부호화 단위를 분할(트라이 분할; tri split)하는 것을 나타내는 경우, 영상 복호화 장치(2080)는 현재 부호화 단위(400 또는 450)에 포함되는 홀수개의 부호화 단위를 결정할 수 있다. 예를 들면, 분할 형태 모드에 대한 정보가 3개의 부호화 단위로 현재 부호화 단위(400 또는 450)를 분할하는 것을 나타내는 경우, 영상 복호화 장치(2080)는 현재 부호화 단위(400 또는 450)를 3개의 부호화 단위(430a, 430b, 430c, 480a, 480b, 480c)로 분할할 수 있다.
일 실시예에 따라, 현재 부호화 단위(400 또는 450)의 너비 및 높이의 비율이 4:1 또는 1:4 일 수 있다. 너비 및 높이의 비율이 4:1 인 경우, 너비의 길이가 높이의 길이보다 길므로 블록 형태 정보는 수평 방향일 수 있다. 너비 및 높이의 비율이 1:4 인 경우, 너비의 길이가 높이의 길이보다 짧으므로 블록 형태 정보는 수직 방향일 수 있다. 영상 복호화 장치(2080)는 분할 형태 모드에 대한 정보에 기초하여 현재 부호화 단위를 홀수개의 블록으로 분할할 것을 결정할 수 있다. 또한 영상 복호화 장치(2080)는 현재 부호화 단위(400 또는 450)의 블록 형태 정보에 기초하여 현재 부호화 단위(400 또는 450)의 분할 방향을 결정할 수 있다. 예를 들어 현재 부호화 단위(400)가 수직 방향인 경우, 영상 복호화 장치(2080)는 현재 부호화 단위(400)를 수평 방향으로 분할 하여 부호화 단위(430a, 430b, 430c)를 결정할 수 있다. 또한 현재 부호화 단위(450)가 수평 방향인 경우, 영상 복호화 장치(2080)는 현재 부호화 단위(450)를 수직 방향으로 분할 하여 부호화 단위(480a, 480b, 480c)를 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 현재 부호화 단위(400 또는 450)에 포함되는 홀수개의 부호화 단위를 결정할 수 있으며, 결정된 부호화 단위들의 크기 모두가 동일하지는 않을 수 있다. 예를 들면, 결정된 홀수개의 부호화 단위(430a, 430b, 430c, 480a, 480b, 480c) 중 소정의 부호화 단위(430b 또는 480b)의 크기는 다른 부호화 단위(430a, 430c, 480a, 480c)들과는 다른 크기를 가질 수도 있다. 즉, 현재 부호화 단위(400 또는 450)가 분할되어 결정될 수 있는 부호화 단위는 복수의 종류의 크기를 가질 수 있고, 경우에 따라서는 홀수개의 부호화 단위(430a, 430b, 430c, 480a, 480b, 480c)가 각각 서로 다른 크기를 가질 수도 있다.
일 실시예에 따라 분할 형태 모드에 대한 정보가 홀수개의 블록으로 부호화 단위가 분할되는 것을 나타내는 경우, 영상 복호화 장치(2080)는 현재 부호화 단위(400 또는 450)에 포함되는 홀수개의 부호화 단위를 결정할 수 있고, 나아가 영상 복호화 장치(2080)는 분할하여 생성되는 홀수개의 부호화 단위들 중 적어도 하나의 부호화 단위에 대하여 소정의 제한을 둘 수 있다. 도 12을 참조하면 영상 복호화 장치(2080)는 현재 부호화 단위(400 또는 450)가 분할되어 생성된 3개의 부호화 단위(430a, 430b, 430c, 480a, 480b, 480c)들 중 중앙에 위치하는 부호화 단위(430b, 480b)에 대한 복호화 과정을 다른 부호화 단위(430a, 430c, 480a, 480c)와 다르게 할 수 있다. 예를 들면, 영상 복호화 장치(2080)는 중앙에 위치하는 부호화 단위(430b, 480b)에 대하여는 다른 부호화 단위(430a, 430c, 480a, 480c)와 달리 더 이상 분할되지 않도록 제한하거나, 소정의 횟수만큼만 분할되도록 제한할 수 있다.
도 13는 일 실시예에 따라 영상 복호화 장치(2080)가 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 부호화 단위를 분할하는 과정을 도시한다.
일 실시예에 따라 영상 복호화 장치(2080)는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 정사각형 형태의 제1 부호화 단위(500)를 부호화 단위들로 분할하거나 분할하지 않는 것으로 결정할 수 있다. 일 실시예에 따라 분할 형태 모드에 대한 정보가 수평 방향으로 제1 부호화 단위(500)를 분할하는 것을 나타내는 경우, 영상 복호화 장치(2080)는 제1 부호화 단위(500)를 수평 방향으로 분할하여 제2 부호화 단위(510)를 결정할 수 있다. 일 실시예에 따라 이용되는 제1 부호화 단위, 제2 부호화 단위, 제3 부호화 단위는 부호화 단위 간의 분할 전후 관계를 이해하기 위해 이용된 용어이다. 예를 들면, 제1 부호화 단위를 분할하면 제2 부호화 단위가 결정될 수 있고, 제2 부호화 단위가 분할되면 제3 부호화 단위가 결정될 수 있다. 이하에서는 이용되는 제1 부호화 단위, 제2 부호화 단위 및 제3 부호화 단위의 관계는 상술한 특징에 따르는 것으로 이해될 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 결정된 제2 부호화 단위(510)를 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 부호화 단위들로 분할하거나 분할하지 않는 것으로 결정할 수 있다. 도 13를 참조하면 영상 복호화 장치(2080)는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 제1 부호화 단위(500)를 분할하여 결정된 비-정사각형의 형태의 제2 부호화 단위(510)를 적어도 하나의 제3 부호화 단위(520a, 520b, 520c, 520d 등)로 분할하거나 제2 부호화 단위(510)를 분할하지 않을 수 있다. 영상 복호화 장치(2080)는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나를 획득할 수 있고 영상 복호화 장치(2080)는 획득한 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 제1 부호화 단위(500)를 분할하여 다양한 형태의 복수개의 제2 부호화 단위(예를 들면, 510)를 분할할 수 있으며, 제2 부호화 단위(510)는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 제1 부호화 단위(500)가 분할된 방식에 따라 분할될 수 있다. 일 실시예에 따라, 제1 부호화 단위(500)가 제1 부호화 단위(500)에 대한 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 제2 부호화 단위(510)로 분할된 경우, 제2 부호화 단위(510) 역시 제2 부호화 단위(510)에 대한 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 제3 부호화 단위(예를 들면, 520a, 520b, 520c, 520d 등)으로 분할될 수 있다. 즉, 부호화 단위는 부호화 단위 각각에 관련된 분할 형태 모드에 대한 정보 및 블록 형태 정보 중 적어도 하나에 기초하여 재귀적으로 분할될 수 있다. 따라서 비-정사각형 형태의 부호화 단위에서 정사각형의 부호화 단위가 결정될 수 있고, 이러한 정사각형 형태의 부호화 단위가 재귀적으로 분할되어 비-정사각형 형태의 부호화 단위가 결정될 수도 있다.
도 13를 참조하면, 비-정사각형 형태의 제2 부호화 단위(510)가 분할되어 결정되는 홀수개의 제3 부호화 단위(520b, 520c, 520d) 중 소정의 부호화 단위(예를 들면, 가운데에 위치하는 부호화 단위 또는 정사각형 형태의 부호화 단위)는 재귀적으로 분할될 수 있다. 일 실시예에 따라 홀수개의 제3 부호화 단위(520b, 520c, 520d) 중 하나인 정사각형 형태의 제3 부호화 단위(520b)는 수평 방향으로 분할되어 복수개의 제4 부호화 단위로 분할될 수 있다. 복수개의 제4 부호화 단위(530a, 530b, 530c, 530d) 중 하나인 비-정사각형 형태의 제4 부호화 단위(530b 또는 530d)는 다시 복수개의 부호화 단위들로 분할될 수 있다. 예를 들면, 비-정사각형 형태의 제4 부호화 단위(530b 또는 530d)는 홀수개의 부호화 단위로 다시 분할될 수도 있다. 부호화 단위의 재귀적 분할에 이용될 수 있는 방법에 대하여는 다양한 실시예를 통해 후술하도록 한다.
일 실시예에 따라 영상 복호화 장치(2080)는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 제3 부호화 단위(520a, 520b, 520c, 520d 등) 각각을 부호화 단위들로 분할할 수 있다. 또한 영상 복호화 장치(2080)는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 제2 부호화 단위(510)를 분할하지 않는 것으로 결정할 수 있다. 영상 복호화 장치(2080)는 일 실시예에 따라 비-정사각형 형태의 제2 부호화 단위(510)를 홀수개의 제3 부호화 단위(520b, 520c, 520d)로 분할할 수 있다. 영상 복호화 장치(2080)는 홀수개의 제3 부호화 단위(520b, 520c, 520d) 중 소정의 제3 부호화 단위에 대하여 소정의 제한을 둘 수 있다. 예를 들면 영상 복호화 장치(2080)는 홀수개의 제3 부호화 단위(520b, 520c, 520d) 중 가운데에 위치하는 부호화 단위(520c)에 대하여는 더 이상 분할되지 않는 것으로 제한하거나 또는 설정 가능한 횟수로 분할되어야 하는 것으로 제한할 수 있다.
도 13를 참조하면, 영상 복호화 장치(2080)는 비-정사각형 형태의 제2 부호화 단위(510)에 포함되는 홀수개의 제3 부호화 단위(520b, 520c, 520d)들 중 가운데에 위치하는 부호화 단위(520c)는 더 이상 분할되지 않거나, 소정의 분할 형태로 분할(예를 들면 4개의 부호화 단위로만 분할하거나 제2 부호화 단위(510)가 분할된 형태에 대응하는 형태로 분할)되는 것으로 제한하거나, 소정의 횟수로만 분할(예를 들면 n회만 분할, n>0)하는 것으로 제한할 수 있다. 다만 가운데에 위치한 부호화 단위(520c)에 대한 상기 제한은 단순한 실시예들에 불과하므로 상술한 실시예들로 제한되어 해석되어서는 안되고, 가운데에 위치한 부호화 단위(520c)가 다른 부호화 단위(520b, 520d)와 다르게 복호화 될 수 있는 다양한 제한들을 포함하는 것으로 해석되어야 한다.
일 실시예에 따라 영상 복호화 장치(2080)는 현재 부호화 단위를 분할하기 위해 이용되는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나를 현재 부호화 단위 내의 소정의 위치에서 획득할 수 있다.
도 14은 일 실시예에 따라 영상 복호화 장치(2080)가 홀수개의 부호화 단위들 중 소정의 부호화 단위를 결정하기 위한 방법을 도시한다.
도 14을 참조하면, 현재 부호화 단위(600, 650)의 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나는 현재 부호화 단위(600, 650)에 포함되는 복수개의 샘플 중 소정 위치의 샘플(예를 들면, 가운데에 위치하는 샘플(640, 690))에서 획득될 수 있다. 다만 이러한 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나가 획득될 수 있는 현재 부호화 단위(600) 내의 소정 위치가 도 14에서 도시하는 가운데 위치로 한정하여 해석되어서는 안되고, 소정 위치에는 현재 부호화 단위(600)내에 포함될 수 있는 다양한 위치(예를 들면, 최상단, 최하단, 좌측, 우측, 좌측상단, 좌측하단, 우측상단 또는 우측하단 등)가 포함될 수 있는 것으로 해석되어야 한다. 영상 복호화 장치(2080)는 소정 위치로부터 획득되는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나를 획득하여 현재 부호화 단위를 다양한 형태 및 크기의 부호화 단위들로 분할하거나 분할하지 않는 것으로 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 현재 부호화 단위가 소정의 개수의 부호화 단위들로 분할된 경우 그 중 하나의 부호화 단위를 선택할 수 있다. 복수개의 부호화 단위들 중 하나를 선택하기 위한 방법은 다양할 수 있으며, 이러한 방법들에 대한 설명은 이하의 다양한 실시예를 통해 후술하도록 한다.
일 실시예에 따라 영상 복호화 장치(2080) 는 현재 부호화 단위를 복수개의 부호화 단위들로 분할하고, 소정 위치의 부호화 단위를 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 홀수개의 부호화 단위들 중 가운데에 위치하는 부호화 단위를 결정하기 위하여 홀수개의 부호화 단위들 각각의 위치를 나타내는 정보를 이용할 수 있다. 도 14을 참조하면, 영상 복호화 장치(2080)는 현재 부호화 단위(600) 또는 현재 부호화 단위(650)를 분할하여 홀수개의 부호화 단위들(620a, 620b, 620c) 또는 홀수개의 부호화 단위들(660a, 660b, 660c)을 결정할 수 있다. 영상 복호화 장치(2080)는 홀수개의 부호화 단위들(620a, 620b, 620c) 또는 홀수개의 부호화 단위들(660a, 660b, 660c)의 위치에 대한 정보를 이용하여 가운데 부호화 단위(620b)또는 가운데 부호화 단위(660b)를 결정할 수 있다. 예를 들면 영상 복호화 장치(2080)는 부호화 단위들(620a, 620b, 620c)에 포함되는 소정의 샘플의 위치를 나타내는 정보에 기초하여 부호화 단위들(620a, 620b, 620c)의 위치를 결정함으로써 가운데에 위치하는 부호화 단위(620b)를 결정할 수 있다. 구체적으로, 영상 복호화 장치(2080)는 부호화 단위들(620a, 620b, 620c)의 좌측 상단의 샘플(630a, 630b, 630c)의 위치를 나타내는 정보에 기초하여 부호화 단위들(620a, 620b, 620c)의 위치를 결정함으로써 가운데에 위치하는 부호화 단위(620b)를 결정할 수 있다.
일 실시예에 따라 부호화 단위들(620a, 620b, 620c)에 각각 포함되는 좌측 상단의 샘플(630a, 630b, 630c)의 위치를 나타내는 정보는 부호화 단위들(620a, 620b, 620c)의 픽쳐 내에서의 위치 또는 좌표에 대한 정보를 포함할 수 있다. 일 실시예에 따라 부호화 단위들(620a, 620b, 620c)에 각각 포함되는 좌측 상단의 샘플(630a, 630b, 630c)의 위치를 나타내는 정보는 현재 부호화 단위(600)에 포함되는 부호화 단위들(620a, 620b, 620c)의 너비 또는 높이를 나타내는 정보를 포함할 수 있고, 이러한 너비 또는 높이는 부호화 단위들(620a, 620b, 620c)의 픽쳐 내에서의 좌표 간의 차이를 나타내는 정보에 해당할 수 있다. 즉, 영상 복호화 장치(2080)는 부호화 단위들(620a, 620b, 620c)의 픽쳐 내에서의 위치 또는 좌표에 대한 정보를 직접 이용하거나 좌표간의 차이값에 대응하는 부호화 단위의 너비 또는 높이에 대한 정보를 이용함으로써 가운데에 위치하는 부호화 단위(620b)를 결정할 수 있다.
일 실시예에 따라, 상단 부호화 단위(620a)의 좌측 상단의 샘플(630a)의 위치를 나타내는 정보는 (xa, ya) 좌표를 나타낼 수 있고, 가운데 부호화 단위(620b)의 좌측 상단의 샘플(530b)의 위치를 나타내는 정보는 (xb, yb) 좌표를 나타낼 수 있고, 하단 부호화 단위(620c)의 좌측 상단의 샘플(630c)의 위치를 나타내는 정보는 (xc, yc) 좌표를 나타낼 수 있다. 영상 복호화 장치(2080)는 부호화 단위들(620a, 620b, 620c)에 각각 포함되는 좌측 상단의 샘플(630a, 630b, 630c)의 좌표를 이용하여 가운데 부호화 단위(620b)를 결정할 수 있다. 예를 들면, 좌측 상단의 샘플(630a, 630b, 630c)의 좌표를 오름차순 또는 내림차순으로 정렬하였을 때, 가운데에 위치하는 샘플(630b)의 좌표인 (xb, yb)를 포함하는 부호화 단위(620b)를 현재 부호화 단위(600)가 분할되어 결정된 부호화 단위들(620a, 620b, 620c) 중 가운데에 위치하는 부호화 단위로 결정할 수 있다. 다만 좌측 상단의 샘플(630a, 630b, 630c)의 위치를 나타내는 좌표는 픽쳐 내에서의 절대적인 위치를 나타내는 좌표를 나타낼 수 있고, 나아가 상단 부호화 단위(620a)의 좌측 상단의 샘플(630a)의 위치를 기준으로, 가운데 부호화 단위(620b)의 좌측 상단의 샘플(630b)의 상대적 위치를 나타내는 정보인 (dxb, dyb)좌표, 하단 부호화 단위(620c)의 좌측 상단의 샘플(630c)의 상대적 위치를 나타내는 정보인 (dxc, dyc)좌표를 이용할 수도 있다. 또한 부호화 단위에 포함되는 샘플의 위치를 나타내는 정보로서 해당 샘플의 좌표를 이용함으로써 소정 위치의 부호화 단위를 결정하는 방법이 상술한 방법으로 한정하여 해석되어서는 안되고, 샘플의 좌표를 이용할 수 있는 다양한 산술적 방법으로 해석되어야 한다.
일 실시예에 따라 영상 복호화 장치(2080)는 현재 부호화 단위(600)를 복수개의 부호화 단위들(620a, 620b, 620c)로 분할할 수 있고, 부호화 단위들(620a, 620b, 620c) 중 소정의 기준에 따라 부호화 단위를 선택할 수 있다. 예를 들면, 영상 복호화 장치(2080)는 부호화 단위들(620a, 620b, 620c) 중 크기가 다른 부호화 단위(620b)를 선택할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 상단 부호화 단위(620a)의 좌측 상단의 샘플(630a)의 위치를 나타내는 정보인 (xa, ya) 좌표, 가운데 부호화 단위(620b)의 좌측 상단의 샘플(630b)의 위치를 나타내는 정보인 (xb, yb) 좌표, 하단 부호화 단위(620c)의 좌측 상단의 샘플(630c)의 위치를 나타내는 정보인 (xc, yc) 좌표를 이용하여 부호화 단위들(620a, 620b, 620c) 각각의 너비 또는 높이를 결정할 수 있다. 영상 복호화 장치(2080)는 부호화 단위들(620a, 620b, 620c)의 위치를 나타내는 좌표인 (xa, ya), (xb, yb), (xc, yc)를 이용하여 부호화 단위들(620a, 620b, 620c) 각각의 크기를 결정할 수 있다. 일 실시예에 따라, 영상 복호화 장치(2080)는 상단 부호화 단위(620a)의 너비를 현재 부호화 단위(600)의 너비로 결정할 수 있다. 영상 복호화 장치(2080)는 상단 부호화 단위(620a)의 높이를 yb-ya로 결정할 수 있다. 일 실시예에 따라 영상 복호화 장치(2080)는 가운데 부호화 단위(620b)의 너비를 현재 부호화 단위(600)의 너비로 결정할 수 있다. 영상 복호화 장치(2080)는 가운데 부호화 단위(620b)의 높이를 yc-yb로 결정할 수 있다. 일 실시예에 따라 영상 복호화 장치(2080)는 하단 부호화 단위의 너비 또는 높이는 현재 부호화 단위의 너비 또는 높이와 상단 부호화 단위(620a) 및 가운데 부호화 단위(620b)의 너비 및 높이를 이용하여 결정할 수 있다. 영상 복호화 장치(2080)는 결정된 부호화 단위들(620a, 620b, 620c)의 너비 및 높이에 기초하여 다른 부호화 단위와 다른 크기를 갖는 부호화 단위를 결정할 수 있다. 도 14을 참조하면, 영상 복호화 장치(2080)는 상단 부호화 단위(620a) 및 하단 부호화 단위(620c)의 크기와 다른 크기를 가지는 가운데 부호화 단위(620b)를 소정 위치의 부호화 단위로 결정할 수 있다. 다만 상술한 영상 복호화 장치(2080)가 다른 부호화 단위와 다른 크기를 갖는 부호화 단위를 결정하는 과정은 샘플 좌표에 기초하여 결정되는 부호화 단위의 크기를 이용하여 소정 위치의 부호화 단위를 결정하는 일 실시예에 불과하므로, 소정의 샘플 좌표에 따라 결정되는 부호화 단위의 크기를 비교하여 소정 위치의 부호화 단위를 결정하는 다양한 과정이 이용될 수 있다.
영상 복호화 장치(2080)는 좌측 부호화 단위(660a)의 좌측 상단의 샘플(670a)의 위치를 나타내는 정보인 (xd, yd) 좌표, 가운데 부호화 단위(660b)의 좌측 상단의 샘플(670b)의 위치를 나타내는 정보인 (xe, ye) 좌표, 우측 부호화 단위(660c)의 좌측 상단의 샘플(670c)의 위치를 나타내는 정보인 (xf, yf) 좌표를 이용하여 부호화 단위들(660a, 660b, 660c) 각각의 너비 또는 높이를 결정할 수 있다. 영상 복호화 장치(2080)는 부호화 단위들(660a, 660b, 660c)의 위치를 나타내는 좌표인 (xd, yd), (xe, ye), (xf, yf)를 이용하여 부호화 단위들(660a, 660b, 660c) 각각의 크기를 결정할 수 있다.
일 실시예에 따라, 영상 복호화 장치(2080)는 좌측 부호화 단위(660a)의 너비를 xe-xd로 결정할 수 있다. 영상 복호화 장치(2080)는 좌측 부호화 단위(660a)의 높이를 현재 부호화 단위(650)의 높이로 결정할 수 있다. 일 실시예에 따라 영상 복호화 장치(2080)는 가운데 부호화 단위(660b)의 너비를 xf-xe로 결정할 수 있다. 영상 복호화 장치(2080)는 가운데 부호화 단위(660b)의 높이를 현재 부호화 단위(600)의 높이로 결정할 수 있다. 일 실시예에 따라 영상 복호화 장치(2080)는 우측 부호화 단위(660c)의 너비 또는 높이는 현재 부호화 단위(650)의 너비 또는 높이와 좌측 부호화 단위(660a) 및 가운데 부호화 단위(660b)의 너비 및 높이를 이용하여 결정할 수 있다. 영상 복호화 장치(2080)는 결정된 부호화 단위들(660a, 660b, 660c)의 너비 및 높이에 기초하여 다른 부호화 단위와 다른 크기를 갖는 부호화 단위를 결정할 수 있다. 도 14을 참조하면, 영상 복호화 장치(2080)는 좌측 부호화 단위(660a) 및 우측 부호화 단위(660c)의 크기와 다른 크기를 가지는 가운데 부호화 단위(660b)를 소정 위치의 부호화 단위로 결정할 수 있다. 다만 상술한 영상 복호화 장치(2080)가 다른 부호화 단위와 다른 크기를 갖는 부호화 단위를 결정하는 과정은 샘플 좌표에 기초하여 결정되는 부호화 단위의 크기를 이용하여 소정 위치의 부호화 단위를 결정하는 일 실시예에 불과하므로, 소정의 샘플 좌표에 따라 결정되는 부호화 단위의 크기를 비교하여 소정 위치의 부호화 단위를 결정하는 다양한 과정이 이용될 수 있다.
다만 부호화 단위의 위치를 결정하기 위하여 고려하는 샘플의 위치는 상술한 좌측 상단으로 한정하여 해석되어서는 안되고 부호화 단위에 포함되는 임의의 샘플의 위치에 대한 정보가 이용될 수 있는 것으로 해석될 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 현재 부호화 단위의 형태를 고려하여, 현재 부호화 단위가 분할되어 결정되는 홀수개의 부호화 단위들 중 소정 위치의 부호화 단위를 선택할 수 있다. 예를 들면, 현재 부호화 단위가 너비가 높이보다 긴 비-정사각형 형태라면 영상 복호화 장치(2080)는 수평 방향에 따라 소정 위치의 부호화 단위를 결정할 수 있다. 즉, 영상 복호화 장치(2080)는 수평 방향으로 위치를 달리 하는 부호화 단위들 중 하나를 결정하여 해당 부호화 단위에 대한 제한을 둘 수 있다. 현재 부호화 단위가 높이가 너비보다 긴 비-정사각형 형태라면 영상 복호화 장치(2080)는 수직 방향에 따라 소정 위치의 부호화 단위를 결정할 수 있다. 즉, 영상 복호화 장치(2080)는 수직 방향으로 위치를 달리 하는 부호화 단위들 중 하나를 결정하여 해당 부호화 단위에 대한 제한을 둘 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 짝수개의 부호화 단위들 중 소정 위치의 부호화 단위를 결정하기 위하여 짝수개의 부호화 단위들 각각의 위치를 나타내는 정보를 이용할 수 있다. 영상 복호화 장치(2080)는 현재 부호화 단위를 분할(바이 분할; binarysplit)하여 짝수개의 부호화 단위들을 결정할 수 있고 짝수개의 부호화 단위들의 위치에 대한 정보를 이용하여 소정 위치의 부호화 단위를 결정할 수 있다. 이에 대한 구체적인 과정은 도 14에서 상술한 홀수개의 부호화 단위들 중 소정 위치(예를 들면, 가운데 위치)의 부호화 단위를 결정하는 과정에 대응하는 과정일 수 있으므로 생략하도록 한다.
일 실시예에 따라, 비-정사각형 형태의 현재 부호화 단위를 복수개의 부호화 단위로 분할한 경우, 복수개의 부호화 단위들 중 소정 위치의 부호화 단위를 결정하기 위하여 분할 과정에서 소정 위치의 부호화 단위에 대한 소정의 정보를 이용할 수 있다. 예를 들면 영상 복호화 장치(2080)는 현재 부호화 단위가 복수개로 분할된 부호화 단위들 중 가운데에 위치하는 부호화 단위를 결정하기 위하여 분할 과정에서 가운데 부호화 단위에 포함된 샘플에 저장된 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나를 이용할 수 있다.
도 14을 참조하면 영상 복호화 장치(2080)는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 현재 부호화 단위(600)를 복수개의 부호화 단위들(620a, 620b, 620c)로 분할할 수 있으며, 복수개의 부호화 단위들(620a, 620b, 620c) 중 가운데에 위치하는 부호화 단위(620b)를 결정할 수 있다. 나아가 영상 복호화 장치(2080)는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나가 획득되는 위치를 고려하여, 가운데에 위치하는 부호화 단위(620b)를 결정할 수 있다. 즉, 현재 부호화 단위(600)의 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나는 현재 부호화 단위(600)의 가운데에 위치하는 샘플(640)에서 획득될 수 있으며, 상기 블록 형태 정보 및 상기 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 현재 부호화 단위(600)가 복수개의 부호화 단위들(620a, 620b, 620c)로 분할된 경우 상기 샘플(640)을 포함하는 부호화 단위(620b)를 가운데에 위치하는 부호화 단위로 결정할 수 있다. 다만 가운데에 위치하는 부호화 단위로 결정하기 위해 이용되는 정보가 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나로 한정하여 해석되어서는 안되고, 다양한 종류의 정보가 가운데에 위치하는 부호화 단위를 결정하는 과정에서 이용될 수 있다.
일 실시예에 따라 소정 위치의 부호화 단위를 식별하기 위한 소정의 정보는, 결정하려는 부호화 단위에 포함되는 소정의 샘플에서 획득될 수 있다. 도 14을 참조하면, 영상 복호화 장치(2080)는 현재 부호화 단위(600)가 분할되어 결정된 복수개의 부호화 단위들(620a, 620b, 620c) 중 소정 위치의 부호화 단위(예를 들면, 복수개로 분할된 부호화 단위 중 가운데에 위치하는 부호화 단위)를 결정하기 위하여 현재 부호화 단위(600) 내의 소정 위치의 샘플(예를 들면, 현재 부호화 단위(600)의 가운데에 위치하는 샘플)에서 획득되는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나를 이용할 수 있다. 즉, 영상 복호화 장치(2080)는 현재 부호화 단위(600)의 블록 형태를 고려하여 상기 소정 위치의 샘플을 결정할 수 있고, 영상 복호화 장치(2080)는 현재 부호화 단위(600)가 분할되어 결정되는 복수개의 부호화 단위들(620a, 620b, 620c) 중, 소정의 정보(예를 들면, 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나)가 획득될 수 있는 샘플이 포함된 부호화 단위(620b)를 결정하여 소정의 제한을 둘 수 있다. 도 14을 참조하면 일 실시예에 따라 영상 복호화 장치(2080)는 소정의 정보가 획득될 수 있는 샘플로서 현재 부호화 단위(600)의 가운데에 위치하는 샘플(640)을 결정할 수 있고, 영상 복호화 장치(2080)는 이러한 샘플(640)이 포함되는 부호화 단위(620b)를 복호화 과정에서의 소정의 제한을 둘 수 있다. 다만 소정의 정보가 획득될 수 있는 샘플의 위치는 상술한 위치로 한정하여 해석되어서는 안되고, 제한을 두기 위해 결정하려는 부호화 단위(620b)에 포함되는 임의의 위치의 샘플들로 해석될 수 있다.
일 실시예에 따라 소정의 정보가 획득될 수 있는 샘플의 위치는 현재 부호화 단위(600)의 형태에 따라 결정될 수 있다. 일 실시예에 따라 블록 형태 정보는 현재 부호화 단위의 형태가 정사각형인지 또는 비-정사각형인지 여부를 결정할 수 있고, 형태에 따라 소정의 정보가 획득될 수 있는 샘플의 위치를 결정할 수 있다. 예를 들면, 영상 복호화 장치(2080)는 현재 부호화 단위의 너비에 대한 정보 및 높이에 대한 정보 중 적어도 하나를 이용하여 현재 부호화 단위의 너비 및 높이 중 적어도 하나를 반으로 분할하는 경계 상에 위치하는 샘플을 소정의 정보가 획득될 수 있는 샘플로 결정할 수 있다. 또다른 예를 들면, 영상 복호화 장치(2080)는 현재 부호화 단위에 관련된 블록 형태 정보가 비-정사각형 형태임을 나타내는 경우, 현재 부호화 단위의 긴 변을 반으로 분할하는 경계에 인접하는 샘플 중 하나를 소정의 정보가 획득될 수 있는 샘플로 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 현재 부호화 단위를 복수개의 부호화 단위로 분할한 경우, 복수개의 부호화 단위들 중 소정 위치의 부호화 단위를 결정하기 위하여, 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나를 이용할 수 있다. 일 실시예에 따라 영상 복호화 장치(2080)는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나를 부호화 단위에 포함된 소정 위치의 샘플에서 획득할 수 있고, 영상 복호화 장치(2080)는 현재 부호화 단위가 분할되어 생성된 복수개의 부호화 단위들을 복수개의 부호화 단위 각각에 포함된 소정 위치의 샘플로부터 획득되는 분할 형태 모드에 대한 정보 및 블록 형태 정보 중 적어도 하나를 이용하여 분할할 수 있다. 즉, 부호화 단위는 부호화 단위 각각에 포함된 소정 위치의 샘플에서 획득되는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나를 이용하여 재귀적으로 분할될 수 있다. 부호화 단위의 재귀적 분할 과정에 대하여는 도 13를 통해 상술하였으므로 자세한 설명은 생략하도록 한다.
일 실시예에 따라 영상 복호화 장치(2080)는 현재 부호화 단위를 분할하여 적어도 하나의 부호화 단위를 결정할 수 있고, 이러한 적어도 하나의 부호화 단위가 복호화되는 순서를 소정의 블록(예를 들면, 현재 부호화 단위)에 따라 결정할 수 있다.
도 15는 일 실시예에 따라 영상 복호화 장치(2080)가 현재 부호화 단위를 분할하여 복수개의 부호화 단위들을 결정하는 경우, 복수개의 부호화 단위들이 처리되는 순서를 도시한다.
일 실시예에 따라 영상 복호화 장치(2080)는 블록 형태 정보 및 분할 형태 모드에 대한 정보에 따라 제1 부호화 단위(700)를 수직 방향으로 분할하여 제2 부호화 단위(710a, 710b)를 결정하거나 제1 부호화 단위(700)를 수평 방향으로 분할하여 제2 부호화 단위(730a, 730b)를 결정하거나 제1 부호화 단위(700)를 수직 방향 및 수평 방향으로 분할하여 제2 부호화 단위(750a, 750b, 750c, 750d)를 결정할 수 있다.
도 15를 참조하면, 영상 복호화 장치(2080)는 제1 부호화 단위(700)를 수직 방향으로 분할하여 결정된 제2 부호화 단위(710a, 710b)를 수평 방향(710c)으로 처리되도록 순서를 결정할 수 있다. 영상 복호화 장치(2080)는 제1 부호화 단위(700)를 수평 방향으로 분할하여 결정된 제2 부호화 단위(730a, 730b)의 처리 순서를 수직 방향(730c)으로 결정할 수 있다. 영상 복호화 장치(2080)는 제1 부호화 단위(700)를 수직 방향 및 수평 방향으로 분할하여 결정된 제2 부호화 단위(750a, 750b, 750c, 750d)를 하나의 행에 위치하는 부호화 단위들이 처리된 후 다음 행에 위치하는 부호화 단위들이 처리되는 소정의 순서(예를 들면, 래스터 스캔 순서((raster scan order) 또는 z 스캔 순서(z scan order)(750e) 등)에 따라 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 부호화 단위들을 재귀적으로 분할할 수 있다. 도 15를 참조하면, 영상 복호화 장치(2080)는 제1 부호화 단위(700)를 분할하여 복수개의 부호화 단위들(710a, 710b, 730a, 730b, 750a, 750b, 750c, 750d)을 결정할 수 있고, 결정된 복수개의 부호화 단위들(710a, 710b, 730a, 730b, 750a, 750b, 750c, 750d) 각각을 재귀적으로 분할할 수 있다. 복수개의 부호화 단위들(710a, 710b, 730a, 730b, 750a, 750b, 750c, 750d)을 분할하는 방법은 제1 부호화 단위(700)를 분할하는 방법에 대응하는 방법이 될 수 있다. 이에 따라 복수개의 부호화 단위들(710a, 710b, 730a, 730b, 750a, 750b, 750c, 750d)은 각각 독립적으로 복수개의 부호화 단위들로 분할될 수 있다. 도 15를 참조하면 영상 복호화 장치(2080)는 제1 부호화 단위(700)를 수직 방향으로 분할하여 제2 부호화 단위(710a, 710b)를 결정할 수 있고, 나아가 제2 부호화 단위(710a, 710b) 각각을 독립적으로 분할하거나 분할하지 않는 것으로 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 좌측의 제2 부호화 단위(710a)를 수평 방향으로 분할하여 제3 부호화 단위(720a, 720b)로 분할할 수 있고, 우측의 제2 부호화 단위(710b)는 분할하지 않을 수 있다.
일 실시예에 따라 부호화 단위들의 처리 순서는 부호화 단위의 분할 과정에 기초하여 결정될 수 있다. 다시 말해, 분할된 부호화 단위들의 처리 순서는 분할되기 직전의 부호화 단위들의 처리 순서에 기초하여 결정될 수 있다. 영상 복호화 장치(2080)는 좌측의 제2 부호화 단위(710a)가 분할되어 결정된 제3 부호화 단위(720a, 720b)가 처리되는 순서를 우측의 제2 부호화 단위(710b)와 독립적으로 결정할 수 있다. 좌측의 제2 부호화 단위(710a)가 수평 방향으로 분할되어 제3 부호화 단위(720a, 720b)가 결정되었으므로 제3 부호화 단위(720a, 720b)는 수직 방향(720c)으로 처리될 수 있다. 또한 좌측의 제2 부호화 단위(710a) 및 우측의 제2 부호화 단위(710b)가 처리되는 순서는 수평 방향(710c)에 해당하므로, 좌측의 제2 부호화 단위(710a)에 포함되는 제3 부호화 단위(720a, 720b)가 수직 방향(720c)으로 처리된 후에 우측 부호화 단위(710b)가 처리될 수 있다. 상술한 내용은 부호화 단위들이 각각 분할 전의 부호화 단위에 따라 처리 순서가 결정되는 과정을 설명하기 위한 것이므로, 상술한 실시예에 한정하여 해석되어서는 안되고, 다양한 형태로 분할되어 결정되는 부호화 단위들이 소정의 순서에 따라 독립적으로 처리될 수 있는 다양한 방법으로 이용되는 것으로 해석되어야 한다.
도 16는 일 실시예에 따라 영상 복호화 장치(2080)가 소정의 순서로 부호화 단위가 처리될 수 없는 경우, 현재 부호화 단위가 홀수개의 부호화 단위로 분할되는 것임을 결정하는 과정을 도시한다.
일 실시예에 따라 영상 복호화 장치(2080)는 획득된 블록 형태 정보 및 분할 형태 모드에 대한 정보에 기초하여 현재 부호화 단위가 홀수개의 부호화 단위들로 분할되는 것을 결정할 수 있다. 도 16를 참조하면 정사각형 형태의 제1 부호화 단위(800)가 비-정사각형 형태의 제2 부호화 단위(810a, 810b)로 분할될 수 있고, 제2 부호화 단위(810a, 810b)는 각각 독립적으로 제3 부호화 단위(820a, 820b, 820c, 820d, 820e)로 분할될 수 있다. 일 실시예에 따라 영상 복호화 장치(2080)는 제2 부호화 단위 중 좌측 부호화 단위(810a)는 수평 방향으로 분할하여 복수개의 제3 부호화 단위(820a, 820b)를 결정할 수 있고, 우측 부호화 단위(810b)는 홀수개의 제3 부호화 단위(820c, 820d, 820e)로 분할할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 제3 부호화 단위들(820a, 820b, 820c, 820d, 820e)이 소정의 순서로 처리될 수 있는지 여부를 판단하여 홀수개로 분할된 부호화 단위가 존재하는지를 결정할 수 있다. 도 16를 참조하면, 영상 복호화 장치(2080)는 제1 부호화 단위(800)를 재귀적으로 분할하여 제3 부호화 단위(820a, 820b, 820c, 820d, 820e)를 결정할 수 있다. 영상 복호화 장치(2080)는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여, 제1 부호화 단위(800), 제2 부호화 단위(810a, 810b) 또는 제3 부호화 단위(820a, 820b, 820c, 820d, 820e)가 분할되는 형태 중 홀수개의 부호화 단위로 분할되는지 여부를 결정할 수 있다. 예를 들면, 제2 부호화 단위(810a, 810b) 중 우측에 위치하는 부호화 단위가 홀수개의 제3 부호화 단위(820c, 820d, 820e)로 분할될 수 있다. 제1 부호화 단위(800)에 포함되는 복수개의 부호화 단위들이 처리되는 순서는 소정의 순서(예를 들면, z-스캔 순서(z-scan order)(830))가 될 수 있고, 영상 복호화 장치(2080)는 우측 제2 부호화 단위(810b)가 홀수개로 분할되어 결정된 제3 부호화 단위(820c, 820d, 820e)가 상기 소정의 순서에 따라 처리될 수 있는 조건을 만족하는지를 판단할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 제1 부호화 단위(800)에 포함되는 제3 부호화 단위(820a, 820b, 820c, 820d, 820e)가 소정의 순서에 따라 처리될 수 있는 조건을 만족하는지를 결정할 수 있으며, 상기 조건은 제3 부호화 단위(820a, 820b, 820c, 820d, 820e)의 경계에 따라 제2 부호화 단위(810a, 810b)의 너비 및 높이 중 적어도 하나를 반으로 분할되는지 여부와 관련된다. 예를 들면 비-정사각형 형태의 좌측 제2 부호화 단위(810a)의 높이를 반으로 분할하여 결정되는 제3 부호화 단위(820a, 820b)는 조건을 만족할 수 있다. 우측 제2 부호화 단위(810b)를 3개의 부호화 단위로 분할하여 결정되는 제3 부호화 단위(820c, 820d, 820e)들의 경계가 우측 제2 부호화 단위(810b)의 너비 또는 높이를 반으로 분할하지 못하므로 제3 부호화 단위(820c, 820d, 820e)는 조건을 만족하지 못하는 것으로 결정될 수 있다. 영상 복호화 장치(2080)는 이러한 조건 불만족의 경우 스캔 순서의 단절(disconnection)로 판단하고, 판단 결과에 기초하여 우측 제2 부호화 단위(810b)는 홀수개의 부호화 단위로 분할되는 것으로 결정할 수 있다. 일 실시예에 따라 영상 복호화 장치(2080)는 홀수개의 부호화 단위로 분할되는 경우 분할된 부호화 단위들 중 소정 위치의 부호화 단위에 대하여 소정의 제한을 둘 수 있으며, 이러한 제한 내용 또는 소정 위치 등에 대하여는 다양한 실시예를 통해 상술하였으므로 자세한 설명은 생략하도록 한다.
도 17은 일 실시예에 따라 영상 복호화 장치(2080)가 제1 부호화 단위(900)를 분할하여 적어도 하나의 부호화 단위를 결정하는 과정을 도시한다.
일 실시예에 따라 영상 복호화 장치(2080)는 엔트로피 복호화부(2055)를 통해 획득한 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 제1 부호화 단위(900)를 분할할 수 있다. 정사각형 형태의 제1 부호화 단위(900)는 4개의 정사각형 형태를 가지는 부호화 단위로 분할되거나 또는 비-정사각형 형태의 복수개의 부호화 단위로 분할할 수 있다. 예를 들면 도 17을 참조하면, 블록 형태 정보가 제1 부호화 단위(900)는 정사각형임을 나타내고 분할 형태 모드에 대한 정보가 비-정사각형의 부호화 단위로 분할됨을 나타내는 경우 영상 복호화 장치(2080)는 제1 부호화 단위(900)를 복수개의 비-정사각형의 부호화 단위들로 분할할 수 있다. 구체적으로, 분할 형태 모드에 대한 정보가 제1 부호화 단위(900)를 수평 방향 또는 수직 방향으로 분할하여 홀수개의 부호화 단위를 결정하는 것을 나타내는 경우, 영상 복호화 장치(2080)는 정사각형 형태의 제1 부호화 단위(900)를 홀수개의 부호화 단위들로서 수직 방향으로 분할되어 결정된 제2 부호화 단위(910a, 910b, 910c) 또는 수평 방향으로 분할되어 결정된 제2 부호화 단위(920a, 920b, 920c)로 분할할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 제1 부호화 단위(900)에 포함되는 제2 부호화 단위(910a, 910b, 910c, 920a, 920b, 920c)가 소정의 순서에 따라 처리될 수 있는 조건을 만족하는지를 결정할 수 있으며, 상기 조건은 제2 부호화 단위(910a, 910b, 910c, 920a, 920b, 920c)의 경계에 따라 제1 부호화 단위(900)의 너비 및 높이 중 적어도 하나를 반으로 분할되는지 여부와 관련된다. 도 17를 참조하면 정사각형 형태의 제1 부호화 단위(900)를 수직 방향으로 분할하여 결정되는 제2 부호화 단위(910a, 910b, 910c)들의 경계가 제1 부호화 단위(900)의 너비를 반으로 분할하지 못하므로 제1 부호화 단위(900)는 소정의 순서에 따라 처리될 수 있는 조건을 만족하지 못하는 것으로 결정될 수 있다. 또한 정사각형 형태의 제1 부호화 단위(900)를 수평 방향으로 분할하여 결정되는 제2 부호화 단위(920a, 920b, 920c)들의 경계가 제1 부호화 단위(900)의 너비를 반으로 분할하지 못하므로 제1 부호화 단위(900)는 소정의 순서에 따라 처리될 수 있는 조건을 만족하지 못하는 것으로 결정될 수 있다. 영상 복호화 장치(2080)는 이러한 조건 불만족의 경우 스캔 순서의 단절(disconnection)로 판단하고, 판단 결과에 기초하여 제1 부호화 단위(900)는 홀수개의 부호화 단위로 분할되는 것으로 결정할 수 있다. 일 실시예에 따라 영상 복호화 장치(2080)는 홀수개의 부호화 단위로 분할되는 경우 분할된 부호화 단위들 중 소정 위치의 부호화 단위에 대하여 소정의 제한을 둘 수 있으며, 이러한 제한 내용 또는 소정 위치 등에 대하여는 다양한 실시예를 통해 상술하였으므로 자세한 설명은 생략하도록 한다.
일 실시예에 따라, 영상 복호화 장치(2080)는 제1 부호화 단위를 분할하여 다양한 형태의 부호화 단위들을 결정할 수 있다.
도 17을 참조하면, 영상 복호화 장치(2080)는 정사각형 형태의 제1 부호화 단위(900), 비-정사각형 형태의 제1 부호화 단위(930 또는 950)를 다양한 형태의 부호화 단위들로 분할할 수 있다.
도 18은 일 실시예에 따라 영상 복호화 장치(2080)가 제1 부호화 단위(1000)가 분할되어 결정된 비-정사각형 형태의 제2 부호화 단위가 소정의 조건을 만족하는 경우 제2 부호화 단위가 분할될 수 있는 형태가 제한되는 것을 도시한다.
일 실시예에 따라 영상 복호화 장치(2080)는 엔트로피 복호화부(2055)를 통해 획득한 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 정사각형 형태의 제1 부호화 단위(1000)를 비-정사각형 형태의 제2 부호화 단위(1010a, 1010b, 1020a, 1020b)로 분할하는 것으로 결정할 수 있다. 제2 부호화 단위(1010a, 1010b, 1020a, 1020b)는 독립적으로 분할될 수 있다. 이에 따라 영상 복호화 장치(2080)는 제2 부호화 단위(1010a, 1010b, 1020a, 1020b) 각각에 관련된 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 복수개의 부호화 단위로 분할하거나 분할하지 않는 것을 결정할 수 있다. 일 실시예에 따라 영상 복호화 장치(2080)는 수직 방향으로 제1 부호화 단위(1000)가 분할되어 결정된 비-정사각형 형태의 좌측 제2 부호화 단위(1010a)를 수평 방향으로 분할하여 제3 부호화 단위(1012a, 1012b)를 결정할 수 있다. 다만 영상 복호화 장치(2080)는 좌측 제2 부호화 단위(1010a)를 수평 방향으로 분할한 경우, 우측 제2 부호화 단위(1010b)는 좌측 제2 부호화 단위(1010a)가 분할된 방향과 동일하게 수평 방향으로 분할될 수 없도록 제한할 수 있다. 만일 우측 제2 부호화 단위(1010b)가 동일한 방향으로 분할되어 제3 부호화 단위(1014a, 1014b)가 결정된 경우, 좌측 제2 부호화 단위(1010a) 및 우측 제2 부호화 단위(1010b)가 수평 방향으로 각각 독립적으로 분할됨으로써 제3 부호화 단위(1012a, 1012b, 1014a, 1014b)가 결정될 수 있다. 하지만 이는 영상 복호화 장치(2080)가 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 제1 부호화 단위(1000)를 4개의 정사각형 형태의 제2 부호화 단위(1030a, 1030b, 1030c, 1030d)로 분할한 것과 동일한 결과이며 이는 영상 복호화 측면에서 비효율적일 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 수평 방향으로 제1 부호화 단위(1000)가 분할되어 결정된 비-정사각형 형태의 제2 부호화 단위(1020a 또는 1020b)를 수직 방향으로 분할하여 제3 부호화 단위(1022a, 1022b, 1024a, 1024b)를 결정할 수 있다. 다만 영상 복호화 장치(2080)는 제2 부호화 단위 중 하나(예를 들면 상단 제2 부호화 단위(1020a))를 수직 방향으로 분할한 경우, 상술한 이유에 따라 다른 제2 부호화 단위(예를 들면 하단 부호화 단위(1020b))는 상단 제2 부호화 단위(1020a)가 분할된 방향과 동일하게 수직 방향으로 분할될 수 없도록 제한할 수 있다.
도 19은 일 실시예에 따라 분할 형태 모드에 대한 정보가 4개의 정사각형 형태의 부호화 단위로 분할하는 것을 나타낼 수 없는 경우, 영상 복호화 장치(2080)가 정사각형 형태의 부호화 단위를 분할하는 과정을 도시한다.
일 실시예에 따라 영상 복호화 장치(2080)는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 제1 부호화 단위(1100)를 분할하여 제2 부호화 단위(1110a, 1110b, 1120a, 1120b 등)를 결정할 수 있다. 분할 형태 모드에 대한 정보에는 부호화 단위가 분할될 수 있는 다양한 형태에 대한 정보가 포함될 수 있으나, 다양한 형태에 대한 정보에는 정사각형 형태의 4개의 부호화 단위로 분할하기 위한 정보가 포함될 수 없는 경우가 있다. 이러한 분할 형태 모드에 대한 정보에 따르면, 영상 복호화 장치(2080)는 정사각형 형태의 제1 부호화 단위(1100)를 4개의 정사각형 형태의 제2 부호화 단위(1130a, 1130b, 1130c, 1130d)로 분할하지 못한다. 분할 형태 모드에 대한 정보에 기초하여 영상 복호화 장치(2080)는 비-정사각형 형태의 제2 부호화 단위(1110a, 1110b, 1120a, 1120b 등)를 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 비-정사각형 형태의 제2 부호화 단위(1110a, 1110b, 1120a, 1120b 등)를 각각 독립적으로 분할할 수 있다. 재귀적인 방법을 통해 제2 부호화 단위(1110a, 1110b, 1120a, 1120b 등) 각각이 소정의 순서대로 분할될 수 있으며, 이는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 제1 부호화 단위(1100)가 분할되는 방법에 대응하는 분할 방법일 수 있다.
예를 들면 영상 복호화 장치(2080)는 좌측 제2 부호화 단위(1110a)가 수평 방향으로 분할되어 정사각형 형태의 제3 부호화 단위(1112a, 1112b)를 결정할 수 있고, 우측 제2 부호화 단위(1110b)가 수평 방향으로 분할되어 정사각형 형태의 제3 부호화 단위(1114a, 1114b)를 결정할 수 있다. 나아가 영상 복호화 장치(2080)는 좌측 제2 부호화 단위(1110a) 및 우측 제2 부호화 단위(1110b) 모두 수평 방향으로 분할되어 정사각형 형태의 제3 부호화 단위(1116a, 1116b, 1116c, 1116d)를 결정할 수도 있다. 이러한 경우 제1 부호화 단위(1100)가 4개의 정사각형 형태의 제2 부호화 단위(1130a, 1130b, 1130c, 1130d)로 분할된 것과 동일한 형태로 부호화 단위가 결정될 수 있다.
또 다른 예를 들면 영상 복호화 장치(2080)는 상단 제2 부호화 단위(1120a)가 수직 방향으로 분할되어 정사각형 형태의 제3 부호화 단위(1122a, 1122b)를 결정할 수 있고, 하단 제2 부호화 단위(1120b)가 수직 방향으로 분할되어 정사각형 형태의 제3 부호화 단위(1124a, 1124b)를 결정할 수 있다. 나아가 영상 복호화 장치(2080)는 상단 제2 부호화 단위(1120a) 및 하단 제2 부호화 단위(1120b) 모두 수직 방향으로 분할되어 정사각형 형태의 제3 부호화 단위(1126a, 1126b, 1126a, 1126b)를 결정할 수도 있다. 이러한 경우 제1 부호화 단위(1100)가 4개의 정사각형 형태의 제2 부호화 단위(1130a, 1130b, 1130c, 1130d)로 분할된 것과 동일한 형태로 부호화 단위가 결정될 수 있다.
도 20는 일 실시예에 따라 복수개의 부호화 단위들 간의 처리 순서가 부호화 단위의 분할 과정에 따라 달라질 수 있음을 도시한 것이다.
일 실시예에 따라 영상 복호화 장치(2080)는 블록 형태 정보 및 분할 형태 모드에 대한 정보에 기초하여 제1 부호화 단위(1200)를 분할할 수 있다. 블록 형태 정보가 정사각형 형태를 나타내고, 분할 형태 모드에 대한 정보가 제1 부호화 단위(1200)가 수평 방향 및 수직 방향 중 적어도 하나의 방향으로 분할됨을 나타내는 경우, 영상 복호화 장치(2080)는 제1 부호화 단위(1200)를 분할하여 제2 부호화 단위(예를 들면, 1210a, 1210b, 1220a, 1220b 등)를 결정할 수 있다. 도 20를 참조하면 제1 부호화 단위1200)가 수평 방향 또는 수직 방향만으로 분할되어 결정된 비-정사각형 형태의 제2 부호화 단위(1210a, 1210b, 1220a, 1220b)는 각각에 대한 블록 형태 정보 및 분할 형태 모드에 대한 정보에 기초하여 독립적으로 분할될 수 있다. 예를 들면 영상 복호화 장치(2080)는 제1 부호화 단위(1200)가 수직 방향으로 분할되어 생성된 제2 부호화 단위(1210a, 1210b)를 수평 방향으로 각각 분할하여 제3 부호화 단위(1216a, 1216b, 1216c, 1216d)를 결정할 수 있고, 제1 부호화 단위(1200)가 수평 방향으로 분할되어 생성된 제2 부호화 단위(1220a, 1220b)를 수평 방향으로 각각 분할하여 제3 부호화 단위(1226a, 1226b, 1226c, 1226d)를 결정할 수 있다. 이러한 제2 부호화 단위(1210a, 1210b, 1220a, 1220b)의 분할 과정은 도 19과 관련하여 상술하였으므로 자세한 설명은 생략하도록 한다.
일 실시예에 따라 영상 복호화 장치(2080)는 소정의 순서에 따라 부호화 단위를 처리할 수 있다. 소정의 순서에 따른 부호화 단위의 처리에 대한 특징은 도 15와 관련하여 상술하였으므로 자세한 설명은 생략하도록 한다. 도 20를 참조하면 영상 복호화 장치(2080)는 정사각형 형태의 제1 부호화 단위(1200)를 분할하여 4개의 정사각형 형태의 제3 부호화 단위(1216a, 1216b, 1216c, 1216d, 1226a, 1226b, 1226c, 1226d)를 결정할 수 있다. 일 실시예에 따라 영상 복호화 장치(2080)는 제1 부호화 단위(1200)가 분할되는 형태에 따라 제3 부호화 단위(1216a, 1216b, 1216c, 1216d, 1226a, 1226b, 1226c, 1226d)의 처리 순서를 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 수직 방향으로 분할되어 생성된 제2 부호화 단위(1210a, 1210b)를 수평 방향으로 각각 분할하여 제3 부호화 단위(1216a, 1216b, 1216c, 1216d)를 결정할 수 있고, 영상 복호화 장치(2080)는 좌측 제2 부호화 단위(1210a)에 포함되는 제3 부호화 단위(1216a, 1216c)를 수직 방향으로 먼저 처리한 후, 우측 제2 부호화 단위(1210b)에 포함되는 제3 부호화 단위(1216b, 1216d)를 수직 방향으로 처리하는 순서(1217)에 따라 제3 부호화 단위(1216a, 1216b, 1216c, 1216d)를 처리할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 수평 방향으로 분할되어 생성된 제2 부호화 단위(1220a, 1220b)를 수직 방향으로 각각 분할하여 제3 부호화 단위(1226a, 1226b, 1226c, 1226d)를 결정할 수 있고, 영상 복호화 장치(2080)는 상단 제2 부호화 단위(1220a)에 포함되는 제3 부호화 단위(1226a, 1226b)를 수평 방향으로 먼저 처리한 후, 하단 제2 부호화 단위(1220b)에 포함되는 제3 부호화 단위(1226c, 1226d)를 수평 방향으로 처리하는 순서(1227)에 따라 제3 부호화 단위(1226a, 1226b, 1226c, 1226d)를 처리할 수 있다.
도 20를 참조하면, 제2 부호화 단위(1210a, 1210b, 1220a, 1220b)가 각각 분할되어 정사각형 형태의 제3 부호화 단위(1216a, 1216b, 1216c, 1216d, 1226a, 1226b, 1226c, 1226d)가 결정될 수 있다. 수직 방향으로 분할되어 결정된 제2 부호화 단위(1210a, 1210b) 및 수평 방향으로 분할되어 결정된 제2 부호화 단위(1220a, 1220b)는 서로 다른 형태로 분할된 것이지만, 이후에 결정되는 제3 부호화 단위(1216a, 1216b, 1216c, 1216d, 1226a, 1226b, 1226c, 1226d)에 따르면 결국 동일한 형태의 부호화 단위들로 제1 부호화 단위(1200)가 분할된 결과가 된다. 이에 따라 영상 복호화 장치(2080)는 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 상이한 과정을 통해 재귀적으로 부호화 단위를 분할함으로써 결과적으로 동일한 형태의 부호화 단위들을 결정하더라도, 동일한 형태로 결정된 복수개의 부호화 단위들을 서로 다른 순서로 처리할 수 있다.
도 21은 일 실시예에 따라 부호화 단위가 재귀적으로 분할되어 복수개의 부호화 단위가 결정되는 경우, 부호화 단위의 형태 및 크기가 변함에 따라 부호화 단위의 심도가 결정되는 과정을 도시한다.
일 실시예에 따라 영상 복호화 장치(2080)는 부호화 단위의 심도를 소정의 기준에 따라 결정할 수 있다. 예를 들면 소정의 기준은 부호화 단위의 긴 변의 길이가 될 수 있다. 영상 복호화 장치(2080)는 현재 부호화 단위의 긴 변의 길이가 분할되기 전의 부호화 단위의 긴 변의 길이보다 2n (n>0) 배로 분할된 경우, 현재 부호화 단위의 심도는 분할되기 전의 부호화 단위의 심도보다 n만큼 심도가 증가된 것으로 결정할 수 있다. 이하에서는 심도가 증가된 부호화 단위를 하위 심도의 부호화 단위로 표현하도록 한다.
도 21을 참조하면, 일 실시예에 따라 정사각형 형태임을 나타내는 블록 형태 정보(예를 들면 블록 형태 정보는 ′0: SQUARE′를 나타낼 수 있음)에 기초하여 영상 복호화 장치(2080)는 정사각형 형태인 제1 부호화 단위(1300)를 분할하여 하위 심도의 제2 부호화 단위(1302), 제3 부호화 단위(1304) 등을 결정할 수 있다. 정사각형 형태의 제1 부호화 단위(1300)의 크기를 2Nx2N이라고 한다면, 제1 부호화 단위(1300)의 너비 및 높이를 1/2배로 분할하여 결정된 제2 부호화 단위(1302)는 NxN의 크기를 가질 수 있다. 나아가 제2 부호화 단위(1302)의 너비 및 높이를 1/2크기로 분할하여 결정된 제3 부호화 단위(1304)는 N/2xN/2의 크기를 가질 수 있다. 이 경우 제3 부호화 단위(1304)의 너비 및 높이는 제1 부호화 단위(1300)의 1/4배에 해당한다. 제1 부호화 단위(1300)의 심도가 D인 경우 제1 부호화 단위(1300)의 너비 및 높이의 1/2배인 제2 부호화 단위(1302)의 심도는 D+1일 수 있고, 제1 부호화 단위(1300)의 너비 및 높이의 1/4배인 제3 부호화 단위(1304)의 심도는 D+2일 수 있다.
일 실시예에 따라 비-정사각형 형태를 나타내는 블록 형태 정보(예를 들면 블록 형태 정보는, 높이가 너비보다 긴 비-정사각형임을 나타내는 ′1: NS_VER′ 또는 너비가 높이보다 긴 비-정사각형임을 나타내는 ′2: NS_HOR′를 나타낼 수 있음)에 기초하여, 영상 복호화 장치(2080)는 비-정사각형 형태인 제1 부호화 단위(1310 또는 1320)를 분할하여 하위 심도의 제2 부호화 단위(1312 또는 1322), 제3 부호화 단위(1314 또는 1324) 등을 결정할 수 있다.
영상 복호화 장치(2080)는 Nx2N 크기의 제1 부호화 단위(1310)의 너비 및 높이 중 적어도 하나를 분할하여 제2 부호화 단위(예를 들면, 1302, 1312, 1322 등)를 결정할 수 있다. 즉, 영상 복호화 장치(2080)는 제1 부호화 단위(1310)를 수평 방향으로 분할하여 NxN 크기의 제2 부호화 단위(1302) 또는 NxN/2 크기의 제2 부호화 단위(1322)를 결정할 수 있고, 수평 방향 및 수직 방향으로 분할하여 N/2xN 크기의 제2 부호화 단위(1312)를 결정할 수도 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 2NxN 크기의 제1 부호화 단위(1320) 의 너비 및 높이 중 적어도 하나를 분할하여 제2 부호화 단위(예를 들면, 1302, 1312, 1322 등)를 결정할 수도 있다. 즉, 영상 복호화 장치(2080)는 제1 부호화 단위(1320)를 수직 방향으로 분할하여 NxN 크기의 제2 부호화 단위(1302) 또는 N/2xN 크기의 제2 부호화 단위(1312)를 결정할 수 있고, 수평 방향 및 수직 방향으로 분할하여 NxN/2 크기의 제2 부호화 단위(1322)를 결정할 수도 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 NxN 크기의 제2 부호화 단위(1302) 의 너비 및 높이 중 적어도 하나를 분할하여 제3 부호화 단위(예를 들면, 1304, 1314, 1324 등)를 결정할 수도 있다. 즉, 영상 복호화 장치(2080)는 제2 부호화 단위(1302)를 수직 방향 및 수평 방향으로 분할하여 N/2xN/2 크기의 제3 부호화 단위(1304)를 결정하거나 N/4xN/2 크기의 제3 부호화 단위(1314)를 결정하거나 N/2xN/4 크기의 제3 부호화 단위(1324)를 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 N/2xN 크기의 제2 부호화 단위(1312)의 너비 및 높이 중 적어도 하나를 분할하여 제3 부호화 단위(예를 들면, 1304, 1314, 1324 등)를 결정할 수도 있다. 즉, 영상 복호화 장치(2080)는 제2 부호화 단위(1312)를 수평 방향으로 분할하여 N/2xN/2 크기의 제3 부호화 단위(1304) 또는 N/2xN/4 크기의 제3 부호화 단위(1324)를 결정하거나 수직 방향 및 수평 방향으로 분할하여 N/4xN/2 크기의 제3 부호화 단위(1314)를 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 NxN/2 크기의 제2 부호화 단위(1322)의 너비 및 높이 중 적어도 하나를 분할하여 제3 부호화 단위(예를 들면, 1304, 1314, 1324 등)를 결정할 수도 있다. 즉, 영상 복호화 장치(2080)는 제2 부호화 단위(1322)를 수직 방향으로 분할하여 N/2xN/2 크기의 제3 부호화 단위(1304) 또는 N/4xN/2 크기의 제3 부호화 단위(1314)를 결정하거나 수직 방향 및 수평 방향으로 분할하여 N/2xN/4크기의 제3 부호화 단위(1324)를 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 정사각형 형태의 부호화 단위(예를 들면, 1300, 1302, 1304)를 수평 방향 또는 수직 방향으로 분할할 수 있다. 예를 들면, 2Nx2N 크기의 제1 부호화 단위(1300)를 수직 방향으로 분할하여 Nx2N 크기의 제1 부호화 단위(1310)를 결정하거나 수평 방향으로 분할하여 2NxN 크기의 제1 부호화 단위(1320)를 결정할 수 있다. 일 실시예에 따라 심도가 부호화 단위의 가장 긴 변의 길이에 기초하여 결정되는 경우, 2Nx2N 크기의 제1 부호화 단위(1300)가 수평 방향 또는 수직 방향으로 분할되어 결정되는 부호화 단위의 심도는 제1 부호화 단위(1300)의 심도와 동일할 수 있다.
일 실시예에 따라 제3 부호화 단위(1314 또는 1324)의 너비 및 높이는 제1 부호화 단위(1310 또는 1320)의 1/4배에 해당할 수 있다. 제1 부호화 단위(1310 또는 1320)의 심도가 D인 경우 제1 부호화 단위(1310 또는 1320)의 너비 및 높이의 1/2배인 제2 부호화 단위(1312 또는 1322)의 심도는 D+1일 수 있고, 제1 부호화 단위(1310 또는 1320)의 너비 및 높이의 1/4배인 제3 부호화 단위(1314 또는 1324)의 심도는 D+2일 수 있다.
도 22은 일 실시예에 따라 부호화 단위들의 형태 및 크기에 따라 결정될 수 있는 심도 및 부호화 단위 구분을 위한 인덱스(part index, 이하 PID)를 도시한다.
일 실시예에 따라 영상 복호화 장치(2080)는 정사각형 형태의 제1 부호화 단위(1400)를 분할하여 다양한 형태의 제2 부호화 단위를 결정할 수 있다. 도 22를 참조하면, 영상 복호화 장치(2080)는 분할 형태 모드에 대한 정보에 따라 제1 부호화 단위(1400)를 수직 방향 및 수평 방향 중 적어도 하나의 방향으로 분할하여 제2 부호화 단위(1402a, 1402b, 1404a, 1404b, 1406a, 1406b, 1406c, 1406d)를 결정할 수 있다. 즉, 영상 복호화 장치(2080)는 제1 부호화 단위(1400)에 대한 분할 형태 모드에 대한 정보에 기초하여 제2 부호화 단위(1402a, 1402b, 1404a, 1404b, 1406a, 1406b, 1406c, 1406d)를 결정할 수 있다.
일 실시예에 따라 정사각형 형태의 제1 부호화 단위(1400)에 대한 분할 형태 모드에 대한 정보에 따라 결정되는 제2 부호화 단위(1402a, 1402b, 1404a, 1404b, 1406a, 1406b, 1406c, 1406d)는 긴 변의 길이에 기초하여 심도가 결정될 수 있다. 예를 들면, 정사각형 형태의 제1 부호화 단위(1400)의 한 변의 길이와 비-정사각형 형태의 제2 부호화 단위(1402a, 1402b, 1404a, 1404b)의 긴 변의 길이가 동일하므로, 제1 부호화 단위(1400)와 비-정사각형 형태의 제2 부호화 단위(1402a, 1402b, 1404a, 1404b)의 심도는 D로 동일하다고 볼 수 있다. 이에 반해 영상 복호화 장치(2080)가 분할 형태 모드에 대한 정보에 기초하여 제1 부호화 단위(1400)를 4개의 정사각형 형태의 제2 부호화 단위(1406a, 1406b, 1406c, 1406d)로 분할한 경우, 정사각형 형태의 제2 부호화 단위(1406a, 1406b, 1406c, 1406d)의 한 변의 길이는 제1 부호화 단위(1400)의 한 변의 길이의 1/2배 이므로, 제2 부호화 단위(1406a, 1406b, 1406c, 1406d)의 심도는 제1 부호화 단위(1400)의 심도인 D보다 한 심도 하위인 D+1의 심도일 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 높이가 너비보다 긴 형태의 제1 부호화 단위(1410)를 분할 형태 모드에 대한 정보에 따라 수평 방향으로 분할하여 복수개의 제2 부호화 단위(1412a, 1412b, 1414a, 1414b, 1414c)로 분할할 수 있다. 일 실시예에 따라 영상 복호화 장치(2080)는 너비가 높이보다 긴 형태의 제1 부호화 단위(1420)를 분할 형태 모드에 대한 정보에 따라 수직 방향으로 분할하여 복수개의 제2 부호화 단위(1422a, 1422b, 1424a, 1424b, 1424c)로 분할할 수 있다.
일 실시예에 따라 비-정사각형 형태의 제1 부호화 단위(1410 또는 1420)에 대한 분할 형태 모드에 대한 정보에 따라 결정되는 제2 부호화 단위(1412a, 1412b, 1414a, 1414b, 1414c. 1422a, 1422b, 1424a, 1424b, 1424c)는 긴 변의 길이에 기초하여 심도가 결정될 수 있다. 예를 들면, 정사각형 형태의 제2 부호화 단위(1412a, 1412b)의 한 변의 길이는 높이가 너비보다 긴 비-정사각형 형태의 제1 부호화 단위(1410)의 한 변의 길이의 1/2배이므로, 정사각형 형태의 제2 부호화 단위(1412a, 1412b)의 심도는 비-정사각형 형태의 제1 부호화 단위(1410)의 심도 D보다 한 심도 하위의 심도인 D+1이다.
나아가 영상 복호화 장치(2080)가 분할 형태 모드에 대한 정보에 기초하여 비-정사각형 형태의 제1 부호화 단위(1410)를 홀수개의 제2 부호화 단위(1414a, 1414b, 1414c)로 분할할 수 있다. 홀수개의 제2 부호화 단위(1414a, 1414b, 1414c)는 비-정사각형 형태의 제2 부호화 단위(1414a, 1414c) 및 정사각형 형태의 제2 부호화 단위(1414b)를 포함할 수 있다. 이 경우 비-정사각형 형태의 제2 부호화 단위(1414a, 1414c)의 긴 변의 길이 및 정사각형 형태의 제2 부호화 단위(1414b)의 한 변의 길이는 제1 부호화 단위(1410)의 한 변의 길이의 1/2배 이므로, 제2 부호화 단위(1414a, 1414b, 1414c)의 심도는 제1 부호화 단위(1410)의 심도인 D보다 한 심도 하위인 D+1의 심도일 수 있다. 영상 복호화 장치(2080)는 제1 부호화 단위(1410)와 관련된 부호화 단위들의 심도를 결정하는 상기 방식에 대응하는 방식으로, 너비가 높이보다 긴 비-정사각형 형태의 제1 부호화 단위(1420)와 관련된 부호화 단위들의 심도를 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 분할된 부호화 단위들의 구분을 위한 인덱스(PID)를 결정함에 있어서, 홀수개로 분할된 부호화 단위들이 서로 동일한 크기가 아닌 경우, 부호화 단위들 간의 크기 비율에 기초하여 인덱스를 결정할 수 있다. 도 22를 참조하면, 홀수개로 분할된 부호화 단위들(1414a, 1414b, 1414c) 중 가운데에 위치하는 부호화 단위(1414b)는 다른 부호화 단위들(1414a, 1414c)와 너비는 동일하지만 높이가 다른 부호화 단위들(1414a, 1414c)의 높이의 두 배일 수 있다. 즉, 이 경우 가운데에 위치하는 부호화 단위(1414b)는 다른 부호화 단위들(1414a, 1414c)의 두 개를 포함할 수 있다. 따라서, 스캔 순서에 따라 가운데에 위치하는 부호화 단위(1414b)의 인덱스(PID)가 1이라면 그 다음 순서에 위치하는 부호화 단위(1414c)는 인덱스가 2가 증가한 3일수 있다. 즉 인덱스의 값의 불연속성이 존재할 수 있다. 일 실시예에 따라 영상 복호화 장치(2080)는 이러한 분할된 부호화 단위들 간의 구분을 위한 인덱스의 불연속성의 존재 여부에 기초하여 홀수개로 분할된 부호화 단위들이 서로 동일한 크기가 아닌지 여부를 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 현재 부호화 단위로부터 분할되어 결정된 복수개의 부호화 단위들을 구분하기 위한 인덱스의 값에 기초하여 특정 분할 형태로 분할된 것인지를 결정할 수 있다. 도 22를 참조하면 영상 복호화 장치(2080)는 높이가 너비보다 긴 직사각형 형태의 제1 부호화 단위(1410)를 분할하여 짝수개의 부호화 단위(1412a, 1412b)를 결정하거나 홀수개의 부호화 단위(1414a, 1414b, 1414c)를 결정할 수 있다. 영상 복호화 장치(2080)는 복수개의 부호화 단위 각각을 구분하기 위하여 각 부호화 단위를 나타내는 인덱스(PID)를 이용할 수 있다. 일 실시예에 따라 PID는 각각의 부호화 단위의 소정 위치의 샘플(예를 들면, 좌측 상단 샘플)에서 획득될 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 부호화 단위의 구분을 위한 인덱스를 이용하여 분할되어 결정된 부호화 단위들 중 소정 위치의 부호화 단위를 결정할 수 있다. 일 실시예에 따라 높이가 너비보다 긴 직사각형 형태의 제1 부호화 단위(1410)에 대한 분할 형태 모드에 대한 정보가 3개의 부호화 단위로 분할됨을 나타내는 경우 영상 복호화 장치(2080)는 제1 부호화 단위(1410)를 3개의 부호화 단위(1414a, 1414b, 1414c)로 분할할 수 있다. 영상 복호화 장치(2080)는 3개의 부호화 단위(1414a, 1414b, 1414c) 각각에 대한 인덱스를 할당할 수 있다. 영상 복호화 장치(2080)는 홀수개로 분할된 부호화 단위 중 가운데 부호화 단위를 결정하기 위하여 각 부호화 단위에 대한 인덱스를 비교할 수 있다. 영상 복호화 장치(2080)는 부호화 단위들의 인덱스에 기초하여 인덱스들 중 가운데 값에 해당하는 인덱스를 갖는 부호화 단위(1414b)를, 제1 부호화 단위(1410)가 분할되어 결정된 부호화 단위 중 가운데 위치의 부호화 단위로서 결정할 수 있다. 일 실시예에 따라 영상 복호화 장치(2080)는 분할된 부호화 단위들의 구분을 위한 인덱스를 결정함에 있어서, 부호화 단위들이 서로 동일한 크기가 아닌 경우, 부호화 단위들 간의 크기 비율에 기초하여 인덱스를 결정할 수 있다. 도 22를 참조하면, 제1 부호화 단위(1410)가 분할되어 생성된 부호화 단위(1414b)는 다른 부호화 단위들(1414a, 1414c)와 너비는 동일하지만 높이가 다른 부호화 단위들(1414a, 1414c)의 높이의 두 배일 수 있다. 이 경우 가운데에 위치하는 부호화 단위(1414b)의 인덱스(PID)가 1이라면 그 다음 순서에 위치하는 부호화 단위(1414c)는 인덱스가 2가 증가한 3일수 있다. 이러한 경우처럼 균일하게 인덱스가 증가하다가 증가너비가이 달라지는 경우, 영상 복호화 장치(2080)는 다른 부호화 단위들과 다른 크기를 가지는 부호화 단위를 포함하는 복수개의 부호화 단위로 분할된 것으로 결정할 수 있다, 일 실시예에 따라 분할 형태 모드에 대한 정보가 홀수개의 부호화 단위로 분할됨을 나타내는 경우, 영상 복호화 장치(2080)는 홀수개의 부호화 단위 중 소정 위치의 부호화 단위(예를 들면 가운데 부호화 단위)가 다른 부호화 단위와 크기가 다른 형태로 현재 부호화 단위를 분할할 수 있다. 이 경우 영상 복호화 장치(2080)는 부호화 단위에 대한 인덱스(PID)를 이용하여 다른 크기를 가지는 가운데 부호화 단위를 결정할 수 있다. 다만 상술한 인덱스, 결정하고자 하는 소정 위치의 부호화 단위의 크기 또는 위치는 일 실시예를 설명하기 위해 특정한 것이므로 이에 한정하여 해석되어서는 안되며, 다양한 인덱스, 부호화 단위의 위치 및 크기가 이용될 수 있는 것으로 해석되어야 한다.
일 실시예에 따라 영상 복호화 장치(2080)는 부호화 단위의 재귀적인 분할이 시작되는 소정의 데이터 단위를 이용할 수 있다.
도 23는 일 실시예에 따라 픽쳐에 포함되는 복수개의 소정의 데이터 단위에 따라 복수개의 부호화 단위들이 결정된 것을 도시한다.
일 실시예에 따라 소정의 데이터 단위는 부호화 단위가 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나를 이용하여 재귀적으로 분할되기 시작하는 데이터 단위로 정의될 수 있다. 즉, 현재 픽쳐를 분할하는 복수개의 부호화 단위들이 결정되는 과정에서 이용되는 최상위 심도의 부호화 단위에 해당할 수 있다. 이하에서는 설명 상 편의를 위해 이러한 소정의 데이터 단위를 기준 데이터 단위라고 지칭하도록 한다.
일 실시예에 따라 기준 데이터 단위는 소정의 크기 및 형태를 나타낼 수 있다. 일 실시예에 따라, 기준 부호화 단위는 MxN의 샘플들을 포함할 수 있다. 여기서 M 및 N은 서로 동일할 수도 있으며, 2의 승수로 표현되는 정수일 수 있다. 즉, 기준 데이터 단위는 정사각형 또는 비-정사각형의 형태를 나타낼 수 있으며, 이후에 정수개의 부호화 단위로 분할될 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 현재 픽쳐를 복수개의 기준 데이터 단위로 분할할 수 있다. 일 실시예에 따라 영상 복호화 장치(2080)는 현재 픽쳐를 분할하는 복수개의 기준 데이터 단위를 각각의 기준 데이터 단위에 대한 분할 형태 모드에 대한 정보를 이용하여 분할할 수 있다. 이러한 기준 데이터 단위의 분할 과정은 쿼드 트리(quad-tree)구조를 이용한 분할 과정에 대응될 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 현재 픽쳐에 포함되는 기준 데이터 단위가 가질 수 있는 최소 크기를 미리 결정할 수 있다. 이에 따라, 영상 복호화 장치(2080)는 최소 크기 이상의 크기를 갖는 다양한 크기의 기준 데이터 단위를 결정할 수 있고, 결정된 기준 데이터 단위를 기준으로 블록 형태 정보 및 분할 형태 모드에 대한 정보를 이용하여 적어도 하나의 부호화 단위를 결정할 수 있다.
도 23를 참조하면, 영상 복호화 장치(2080)는 정사각형 형태의 기준 부호화 단위(1500)를 이용할 수 있고, 또는 비-정사각형 형태의 기준 부호화 단위(1502)를 이용할 수도 있다. 일 실시예에 따라 기준 부호화 단위의 형태 및 크기는 적어도 하나의 기준 부호화 단위를 포함할 수 있는 다양한 데이터 단위(예를 들면, 시퀀스(sequence), 픽쳐(picture), 슬라이스(slice), 슬라이스 세그먼트(slice segment), 최대부호화단위 등)에 따라 결정될 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)의 엔트로피 복호화부(2055)는 기준 부호화 단위의 형태에 대한 정보 및 기준 부호화 단위의 크기에 대한 정보 중 적어도 하나를 상기 다양한 데이터 단위마다 비트스트림으로부터 획득할 수 있다. 정사각형 형태의 기준 부호화 단위(1500)에 포함되는 적어도 하나의 부호화 단위가 결정되는 과정은 도 11의 현재 부호화 단위(300)가 분할되는 과정을 통해 상술하였고, 비-정사각형 형태의 기준 부호화 단위(1502)에 포함되는 적어도 하나의 부호화 단위가 결정되는 과정은 도 12의 현재 부호화 단위(400 또는 450)가 분할되는 과정을 통해 상술하였으므로 자세한 설명은 생략하도록 한다.
일 실시예에 따라 영상 복호화 장치(2080)는 소정의 조건에 기초하여 미리 결정되는 일부 데이터 단위에 따라 기준 부호화 단위의 크기 및 형태를 결정하기 위하여, 기준 부호화 단위의 크기 및 형태를 식별하기 위한 인덱스를 이용할 수 있다. 즉, 엔트로피 복호화부(2055)는 비트스트림으로부터 상기 다양한 데이터 단위(예를 들면, 시퀀스, 픽쳐, 슬라이스, 슬라이스 세그먼트, 최대부호화단위 등) 중 소정의 조건(예를 들면 슬라이스 이하의 크기를 갖는 데이터 단위)을 만족하는 데이터 단위로서 슬라이스, 슬라이스 세그먼트, 최대부호화 단위 등 마다, 기준 부호화 단위의 크기 및 형태의 식별을 위한 인덱스만을 획득할 수 있다. 영상 복호화 장치(2080)는 인덱스를 이용함으로써 상기 소정의 조건을 만족하는 데이터 단위마다 기준 데이터 단위의 크기 및 형태를 결정할 수 있다. 기준 부호화 단위의 형태에 대한 정보 및 기준 부호화 단위의 크기에 대한 정보를 상대적으로 작은 크기의 데이터 단위마다 비트스트림으로부터 획득하여 이용하는 경우, 비트스트림의 이용 효율이 좋지 않을 수 있으므로, 기준 부호화 단위의 형태에 대한 정보 및 기준 부호화 단위의 크기에 대한 정보를 직접 획득하는 대신 상기 인덱스만을 획득하여 이용할 수 있다. 이 경우 기준 부호화 단위의 크기 및 형태를 나타내는 인덱스에 대응하는 기준 부호화 단위의 크기 및 형태 중 적어도 하나는 미리 결정되어 있을 수 있다. 즉, 영상 복호화 장치(2080)는 미리 결정된 기준 부호화 단위의 크기 및 형태 중 적어도 하나를 인덱스에 따라 선택함으로써, 인덱스 획득의 기준이 되는 데이터 단위에 포함되는 기준 부호화 단위의 크기 및 형태 중 적어도 하나를 결정할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 하나의 최대 부호화 단위에 포함하는 적어도 하나의 기준 부호화 단위를 이용할 수 있다. 즉, 영상을 분할하는 최대 부호화 단위에는 적어도 하나의 기준 부호화 단위가 포함될 수 있고, 각각의 기준 부호화 단위의 재귀적인 분할 과정을 통해 부호화 단위가 결정될 수 있다. 일 실시예에 따라 최대 부호화 단위의 너비 및 높이 중 적어도 하나는 기준 부호화 단위의 너비 및 높이 중 적어도 하나의 정수배에 해당할 수 있다. 일 실시예에 따라 기준 부호화 단위의 크기는 최대부호화단위를 쿼드 트리 구조에 따라 n번 분할한 크기일 수 있다. 즉, 영상 복호화 장치(2080)는 최대부호화단위를 쿼드 트리 구조에 따라 n 번 분할하여 기준 부호화 단위를 결정할 수 있고, 다양한 실시예들에 따라 기준 부호화 단위를 블록 형태 정보 및 분할 형태 모드에 대한 정보 중 적어도 하나에 기초하여 분할할 수 있다.
도 24은 일 실시예에 따라 픽쳐(1600)에 포함되는 기준 부호화 단위의 결정 순서를 결정하는 기준이 되는 프로세싱 블록을 도시한다.
일 실시예에 따라 영상 복호화 장치(2080)는 픽쳐를 분할하는 적어도 하나의 프로세싱 블록을 결정할 수 있다. 프로세싱 블록이란, 영상을 분할하는 적어도 하나의 기준 부호화 단위를 포함하는 데이터 단위로서, 프로세싱 블록에 포함되는 적어도 하나의 기준 부호화 단위는 특정 순서대로 결정될 수 있다. 즉, 각각의 프로세싱 블록에서 결정되는 적어도 하나의 기준 부호화 단위의 결정 순서는 기준 부호화 단위가 결정될 수 있는 다양한 순서의 종류 중 하나에 해당할 수 있으며, 각각의 프로세싱 블록에서 결정되는 기준 부호화 단위 결정 순서는 프로세싱 블록마다 상이할 수 있다. 프로세싱 블록마다 결정되는 기준 부호화 단위의 결정 순서는 래스터 스캔(raster scan), Z 스캔(Z-scan), N 스캔(N-scan), 우상향 대각 스캔(up-right diagonal scan), 수평적 스캔(horizontal scan), 수직적 스캔(vertical scan) 등 다양한 순서 중 하나일 수 있으나, 결정될 수 있는 순서는 상기 스캔 순서들에 한정하여 해석되어서는 안 된다.
일 실시예에 따라 영상 복호화 장치(2080)는 프로세싱 블록의 크기에 대한 정보를 획득하여 영상에 포함되는 적어도 하나의 프로세싱 블록의 크기를 결정할 수 있다. 영상 복호화 장치(2080)는 프로세싱 블록의 크기에 대한 정보를 비트스트림으로부터 획득하여 영상에 포함되는 적어도 하나의 프로세싱 블록의 크기를 결정할 수 있다. 이러한 프로세싱 블록의 크기는 프로세싱 블록의 크기에 대한 정보가 나타내는 데이터 단위의 소정의 크기일 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)의 엔트로피 복호화부(2055)는 비트스트림으로부터 프로세싱 블록의 크기에 대한 정보를 특정의 데이터 단위마다 획득할 수 있다. 예를 들면 프로세싱 블록의 크기에 대한 정보는 영상, 시퀀스, 픽쳐, 슬라이스, 슬라이스 세그먼트 등의 데이터 단위로 비트스트림으로부터 획득될 수 있다. 즉 엔트로피 복호화부(2055)는 상기 여러 데이터 단위마다 비트스트림으로부터 프로세싱 블록의 크기에 대한 정보를 획득할 수 있고 영상 복호화 장치(2080)는 획득된 프로세싱 블록의 크기에 대한 정보를 이용하여 픽쳐를 분할하는 적어도 하나의 프로세싱 블록의 크기를 결정할 수 있으며, 이러한 프로세싱 블록의 크기는 기준 부호화 단위의 정수배의 크기일 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 픽쳐(1600)에 포함되는 프로세싱 블록(1602, 1612)의 크기를 결정할 수 있다. 예를 들면, 영상 복호화 장치(2080)는 비트스트림으로부터 획득된 프로세싱 블록의 크기에 대한 정보에 기초하여 프로세싱 블록의 크기를 결정할 수 있다. 도 24을 참조하면, 영상 복호화 장치(2080)는 일 실시예에 따라 프로세싱 블록(1602, 1612)의 가로크기를 기준 부호화 단위 가로크기의 4배, 세로크기를 기준 부호화 단위의 세로크기의 4배로 결정할 수 있다. 영상 복호화 장치(2080)는 적어도 하나의 프로세싱 블록 내에서 적어도 하나의 기준 부호화 단위가 결정되는 순서를 결정할 수 있다.
일 실시예에 따라, 영상 복호화 장치(2080)는 프로세싱 블록의 크기에 기초하여 픽쳐(1600)에 포함되는 각각의 프로세싱 블록(1602, 1612)을 결정할 수 있고, 프로세싱 블록(1602, 1612)에 포함되는 적어도 하나의 기준 부호화 단위의 결정 순서를 결정할 수 있다. 일 실시예에 따라 기준 부호화 단위의 결정은 기준 부호화 단위의 크기의 결정을 포함할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 비트스트림으로부터 적어도 하나의 프로세싱 블록에 포함되는 적어도 하나의 기준 부호화 단위의 결정 순서에 대한 정보를 획득할 수 있고, 획득한 결정 순서에 대한 정보에 기초하여 적어도 하나의 기준 부호화 단위가 결정되는 순서를 결정할 수 있다. 결정 순서에 대한 정보는 프로세싱 블록 내에서 기준 부호화 단위들이 결정되는 순서 또는 방향으로 정의될 수 있다. 즉, 기준 부호화 단위들이 결정되는 순서는 각각의 프로세싱 블록마다 독립적으로 결정될 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 특정 데이터 단위마다 기준 부호화 단위의 결정 순서에 대한 정보를 비트스트림으로부터 획득할 수 있다. 예를 들면, 엔트로피 복호화부(2055)는 기준 부호화 단위의 결정 순서에 대한 정보를 영상, 시퀀스, 픽쳐, 슬라이스, 슬라이스 세그먼트, 프로세싱 블록 등의 데이터 단위로마다 비트스트림으로부터 획득할 수 있다. 기준 부호화 단위의 결정 순서에 대한 정보는 프로세싱 블록 내에서의 기준 부호화 단위 결정 순서를 나타내므로, 결정 순서에 대한 정보는 정수개의 프로세싱 블록을 포함하는 특정 데이터 단위 마다 획득될 수 있다.
영상 복호화 장치(2080)는 일 실시예에 따라 결정된 순서에 기초하여 적어도 하나의 기준 부호화 단위를 결정할 수 있다.
일 실시예에 따라 엔트로피 복호화부(2055)는 비트스트림으로부터 프로세싱 블록(1602, 1612)과 관련된 정보로서, 기준 부호화 단위 결정 순서에 대한 정보를 획득할 수 있고, 영상 복호화 장치(2080)는 상기 프로세싱 블록(1602, 1612)에 포함된 적어도 하나의 기준 부호화 단위를 결정하는 순서를 결정하고 부호화 단위의 결정 순서에 따라 픽쳐(1600)에 포함되는 적어도 하나의 기준 부호화 단위를 결정할 수 있다. 도 24을 참조하면, 영상 복호화 장치(2080)는 각각의 프로세싱 블록(1602, 1612)과 관련된 적어도 하나의 기준 부호화 단위의 결정 순서(1604, 1614)를 결정할 수 있다. 예를 들면, 기준 부호화 단위의 결정 순서에 대한 정보가 프로세싱 블록마다 획득되는 경우, 각각의 프로세싱 블록(1602, 1612)과 관련된 기준 부호화 단위 결정 순서는 프로세싱 블록마다 상이할 수 있다. 프로세싱 블록(1602)과 관련된 기준 부호화 단위 결정 순서(1604)가 래스터 스캔(raster scan)순서인 경우, 프로세싱 블록(1602)에 포함되는 기준 부호화 단위는 래스터 스캔 순서에 따라 결정될 수 있다. 이에 반해 다른 프로세싱 블록(1612)과 관련된 기준 부호화 단위 결정 순서(1614)가 래스터 스캔 순서의 역순인 경우, 프로세싱 블록(1612)에 포함되는 기준 부호화 단위는 래스터 스캔 순서의 역순에 따라 결정될 수 있다.
영상 복호화 장치(2080)는 일 실시예에 따라, 결정된 적어도 하나의 기준 부호화 단위를 복호화할 수 있다. 영상 복호화 장치(2080)는 상술한 실시예를 통해 결정된 기준 부호화 단위에 기초하여 영상을 복호화 할 수 있다. 기준 부호화 단위를 복호화 하는 방법은 영상을 복호화 하는 다양한 방법들을 포함할 수 있다.
일 실시예에 따라 영상 복호화 장치(2080)는 현재 부호화 단위의 형태를 나타내는 블록 형태 정보 또는 현재 부호화 단위를 분할하는 방법을 나타내는 분할 형태 모드에 대한 정보를 비트스트림으로부터 획득하여 이용할 수 있다. 블록 형태 정보 또는 분할 형태 모드에 대한 정보는 다양한 데이터 단위와 관련된 비트스트림에 포함될 수 있다. 예를 들면, 영상 복호화 장치(2080)는 시퀀스 파라미터 세트(sequence parameter set), 픽쳐 파라미터 세트(picture parameter set), 비디오 파라미터 세트(video parameter set), 슬라이스 헤더(slice header), 슬라이스 세그먼트 헤더(slice segment header)에 포함된 블록 형태 정보 또는 분할 형태 모드에 대한 정보를 이용할 수 있다. 나아가, 영상 복호화 장치(2080)는 최대 부호화 단위, 기준 부호화 단위, 프로세싱 블록마다 비트스트림으로부터 블록 형태 정보 또는 분할 형태 모드에 대한 정보에 대응하는 신택스 엘리먼트를 비트스트림으로부터 획득하여 이용할 수 있다.
이제까지 다양한 실시예들을 중심으로 살펴보았다. 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자는 본 개시가 본 개시의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 개시의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 개시에 포함된 것으로 해석되어야 할 것이다.
한편, 상술한 본 개시의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함한다.

Claims (15)

  1. 현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 상기 참조 영상의 외곽선 내부에 인접하는 외곽선 블록들의 움직임 정보 및 인트라 모드 정보를 획득하는 단계;
    상기 외곽선 내부에 인접하는 외곽선 블록의 움직임 정보 및 인트라 모드 정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정하는 단계; 및
    상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 결정하는 단계를 포함하는, 비디오 부호화 방법.
  2. 제 1 항에 있어서,
    상기 외곽선 블록의 상기 움직임 정보의 제 1 가중치 및 상기 외곽선 블록의 상기 인트라 모드 정보의 제 2 가중치를 결정하는 단계를 포함하고,
    결정된 제1 가중치 및 제2 가중치, 상기 움직임 정보, 및 상기 인트라 모드 정보를 이용하여 상기 참조 샘플들을 결정하는, 비디오 부호화 방법.
  3. 제 1 항에 있어서,
    상기 외곽선 블록의 움직임 정보가 없거나 움직임 정보가 제로 움직임 벡터인 경우에는, 상기 외곽선 블록과 상기 외곽선 내부에 인접하는 주변 외곽선 블록의 움직임 정보를 이용하여 상기 참조 샘플들을 결정하는, 비디오 부호화 방법.
  4. 제 1 항에 있어서,
    상기 외곽선 블록의 움직임 정보가 없거나 움직임 정보가 제로 움직임 벡터인 경우에는, 상기 외곽선 블록의 인트라 모드 정보만을 이용하여 상기 참조 샘플들을 결정하는, 비디오 부호화 방법.
  5. 제 1 항에 있어서,
    상기 외곽선 블록의 움직임 정보가 없거나 움직임 정보가 제로 움직임 벡터인 경우에는, 상기 외곽선 블록과 상기 외곽선 내부에 인접하는 주변 외곽선 블록의 움직임 정보 및 상기 외곽선 블록의 인트라 모드 정보를 이용하여 상기 참조 샘플들을 결정하는, 비디오 부호화 방법.
  6. 제 5 항에 있어서,
    상기 주변 외곽선 블록의 상기 움직임 정보의 제1 가중치 및 상기 외곽선 블록의 상기 인트라 모드 정보의 제2 가중치를 결정하는 단계를 포함하고,
    결정된 제1 가중치 및 제2 가중치, 상기 움직임 정보, 및 상기 인트라 모드 정보를 이용하여 상기 참조 샘플들을 결정하는, 비디오 부호화 방법.
  7. 제 1 항에 있어서,
    상기 외곽선 블록의 움직임 정보 및 상기 외곽선 블록과 상기 외곽선 내부에 인접하는 주변 외곽선 블록의 움직임 정보의 차이를 결정하는 단계; 및
    상기 차이가 미리 결정된 임계값보다 큰 경우에, 상기 주변 외곽선 블록의 상기 움직임 정보의 제1 가중치 및 상기 외곽선 블록의 상기 인트라 모드 정보의 제2 가중치를 결정하는 단계를 포함하고,
    결정된 제1 가중치 및 제2 가중치, 상기 움직임 정보, 및 상기 인트라 모드 정보를 이용하여 상기 참조 샘플들을 결정하는, 비디오 부호화 방법.
  8. 현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 상기 참조 영상의 외곽선 내부에 인접하는 외곽선 블록들의 움직임 정보 및 인트라 모드 정보를 획득하는 단계;
    상기 외곽선 내부에 인접하는 외곽선 블록의 움직임 정보 및 인트라 모드 정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정하는 단계; 및
    상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 결정하는 단계를 포함하는, 비디오 복호화 방법.
  9. 제 8 항에 있어서,
    상기 외곽선 블록의 상기 움직임 정보의 제 1 가중치 및 상기 외곽선 블록의 상기 인트라 모드 정보의 제 2 가중치를 결정하는 단계를 포함하고,
    결정된 제1 가중치 및 제2 가중치, 상기 움직임 정보, 및 상기 인트라 모드 정보를 이용하여 상기 참조 샘플들을 결정하는, 비디오 복호화 방법.
  10. 제 8 항에 있어서,
    상기 외곽선 블록의 움직임 정보가 없거나 움직임 정보가 제로 움직임 벡터인 경우에는, 상기 외곽선 블록과 상기 외곽선 내부에 인접하는 주변 외곽선 블록의 움직임 정보를 이용하여 상기 참조 샘플들을 결정하는, 비디오 복호화 방법.
  11. 제 8 항에 있어서,
    상기 외곽선 블록의 움직임 정보가 없거나 움직임 정보가 제로 움직임 벡터인 경우에는, 상기 외곽선 블록의 인트라 모드 정보만을 이용하여 상기 참조 샘플들을 결정하는, 비디오 복호화 방법.
  12. 제 8 항에 있어서,
    상기 외곽선 블록의 움직임 정보가 없거나 움직임 정보가 제로 움직임 벡터인 경우에는, 상기 외곽선 블록과 상기 외곽선 내부에 인접하는 주변 외곽선 블록의 움직임 정보 및 상기 외곽선 블록의 인트라 모드 정보를 이용하여 상기 참조 샘플들을 결정하는, 비디오 복호화 방법.
  13. 제 12 항에 있어서,
    상기 주변 외곽선 블록의 상기 움직임 정보의 제1 가중치 및 상기 외곽선 블록의 상기 인트라 모드 정보의 제2 가중치를 결정하는 단계를 포함하고,
    결정된 제1 가중치 및 제2 가중치, 상기 움직임 정보, 및 상기 인트라 모드 정보를 이용하여 상기 참조 샘플들을 결정하는, 비디오 복호화 방법.
  14. 제 8 항에 있어서,
    상기 외곽선 블록의 움직임 정보 및 상기 외곽선 블록과 상기 외곽선 내부에 인접하는 주변 외곽선 블록의 움직임 정보의 차이를 결정하는 단계; 및
    상기 차이가 미리 결정된 임계값보다 큰 경우에, 상기 주변 외곽선 블록의 상기 움직임 정보의 제1 가중치 및 상기 외곽선 블록의 상기 인트라 모드 정보의 제2 가중치를 결정하는 단계를 포함하고,
    결정된 제1 가중치 및 제2 가중치, 상기 움직임 정보, 및 상기 인트라 모드 정보를 이용하여 상기 참조 샘플들을 결정하는, 비디오 복호화 방법.
  15. 메모리; 및
    현재 블록이 움직임 참조시 참조 영상의 외곽을 벗어난 영역을 참조하는 경우, 상기 참조 영상의 외곽선 내부에 인접하는 외곽선 블록들의 움직임 정보 및 인트라 모드 정보를 획득하고;
    상기 외곽선 내부에 인접하는 외곽선 블록의 움직임 정보 및 인트라 모드 정보를 이용하여, 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 예측하기 위한 참조 샘플들을 결정하고;
    상기 참조 샘플들을 이용하여 상기 참조 영상의 외곽선 외부에 위치하는 샘플들을 결정하는 외부샘플 결정하기 위한 프로세서를 포함하고,
    상기 프로세서는 상기 메모리와 상호 연결되어 비디오 복호화 동작을 수행하는 것을 특징으로 하는, 비디오 복호화 장치.
PCT/KR2018/007812 2018-01-02 2018-07-10 움직임 예측에 의한 패딩 기법을 이용한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 WO2019135457A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020207017845A KR20200096551A (ko) 2018-01-02 2018-07-10 움직임 예측에 의한 패딩 기법을 이용한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862612765P 2018-01-02 2018-01-02
US62/612,765 2018-01-02
KRPCT/KR2018/003803 2018-03-30
PCT/KR2018/003803 WO2019135447A1 (ko) 2018-01-02 2018-03-30 움직임 예측에 의한 패딩 기법을 이용한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치

Publications (1)

Publication Number Publication Date
WO2019135457A1 true WO2019135457A1 (ko) 2019-07-11

Family

ID=67144281

Family Applications (2)

Application Number Title Priority Date Filing Date
PCT/KR2018/003803 WO2019135447A1 (ko) 2018-01-02 2018-03-30 움직임 예측에 의한 패딩 기법을 이용한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
PCT/KR2018/007812 WO2019135457A1 (ko) 2018-01-02 2018-07-10 움직임 예측에 의한 패딩 기법을 이용한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
PCT/KR2018/003803 WO2019135447A1 (ko) 2018-01-02 2018-03-30 움직임 예측에 의한 패딩 기법을 이용한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치

Country Status (2)

Country Link
KR (1) KR20200096551A (ko)
WO (2) WO2019135447A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080000562A (ko) * 2005-04-01 2008-01-02 마쯔시다덴기산교 가부시키가이샤 화상 복호화 장치 및 화상 복호화 방법
US20080112488A1 (en) * 2003-07-15 2008-05-15 Pearson Eric C Supporting motion vectors outside picture boundaries in motion estimation process
KR100992044B1 (ko) * 2003-01-07 2010-11-05 톰슨 라이센싱 매크로블록 파티션의 혼합된 인터/인트라 비디오 코딩 방법
KR20140122189A (ko) * 2013-04-05 2014-10-17 한국전자통신연구원 계층 간 결합된 화면 내 예측을 이용한 영상 부호화/복호화 방법 및 그 장치
KR20170019363A (ko) * 2014-06-18 2017-02-21 삼성전자주식회사 휘도차를 보상하기 위한 인터 레이어 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011147049A (ja) * 2010-01-18 2011-07-28 Sony Corp 画像処理装置および方法、並びにプログラム
US9083983B2 (en) * 2011-10-04 2015-07-14 Qualcomm Incorporated Motion vector predictor candidate clipping removal for video coding
CN104255032B (zh) * 2012-03-29 2018-03-27 Lg 电子株式会社 层间预测方法和使用其的编码设备和解码设备
US9648319B2 (en) * 2012-12-12 2017-05-09 Qualcomm Incorporated Device and method for scalable coding of video information based on high efficiency video coding
US20170353737A1 (en) * 2016-06-07 2017-12-07 Mediatek Inc. Method and Apparatus of Boundary Padding for VR Video Processing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100992044B1 (ko) * 2003-01-07 2010-11-05 톰슨 라이센싱 매크로블록 파티션의 혼합된 인터/인트라 비디오 코딩 방법
US20080112488A1 (en) * 2003-07-15 2008-05-15 Pearson Eric C Supporting motion vectors outside picture boundaries in motion estimation process
KR20080000562A (ko) * 2005-04-01 2008-01-02 마쯔시다덴기산교 가부시키가이샤 화상 복호화 장치 및 화상 복호화 방법
KR20140122189A (ko) * 2013-04-05 2014-10-17 한국전자통신연구원 계층 간 결합된 화면 내 예측을 이용한 영상 부호화/복호화 방법 및 그 장치
KR20170019363A (ko) * 2014-06-18 2017-02-21 삼성전자주식회사 휘도차를 보상하기 위한 인터 레이어 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치

Also Published As

Publication number Publication date
WO2019135447A1 (ko) 2019-07-11
KR20200096551A (ko) 2020-08-12

Similar Documents

Publication Publication Date Title
WO2021006692A1 (ko) 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
WO2019172676A1 (ko) 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
WO2020027551A1 (ko) 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치
WO2020040619A1 (ko) 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
WO2019066384A1 (ko) 크로스-성분 예측에 의한 비디오 복호화 방법 및 장치, 크로스-성분 예측에 의한 비디오 부호화 방법 및 장치
WO2019143093A1 (ko) 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
WO2019168347A1 (ko) 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
WO2019135558A1 (ko) 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
WO2020130730A1 (ko) 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치
WO2017090968A1 (ko) 영상을 부호화/복호화 하는 방법 및 그 장치
WO2020235951A1 (ko) 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치
WO2019066472A1 (ko) 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치
WO2020013627A1 (ko) 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
WO2019066514A1 (ko) 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
WO2020076130A1 (ko) 타일 및 타일 그룹을 이용하는 비디오 부호화 및 복호화 방법, 및 타일 및 타일 그룹을 이용하는 비디오 부호화 및 복호화 장치
WO2020117010A1 (ko) 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
WO2019066574A1 (ko) 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
WO2020040623A1 (ko) 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치
WO2019209028A1 (ko) 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
WO2021049894A1 (ko) 툴 세트를 이용하는 영상 복호화 장치 및 이에 의한 영상 복호화 방법, 및 영상 부호화 장치 및 이에 의한 영상 부호화 방법
WO2019009502A1 (ko) 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
WO2019093597A1 (ko) 움직임 벡터 해상도에 기초하여 영상을 부호화하는 장치 및 방법, 및 복호화 장치 및 방법
WO2017195945A1 (ko) 영상을 부호화/복호화 하는 방법 및 그 장치
WO2020256521A1 (ko) 제한된 예측 모드에서 복원후 필터링을 수행하는 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
WO2020189980A1 (ko) 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치

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: 18898406

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20207017845

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18898406

Country of ref document: EP

Kind code of ref document: A1