WO2012173449A2 - 비디오 인코딩 및 디코딩 방법과 이를 이용한 장치 - Google Patents

비디오 인코딩 및 디코딩 방법과 이를 이용한 장치 Download PDF

Info

Publication number
WO2012173449A2
WO2012173449A2 PCT/KR2012/004807 KR2012004807W WO2012173449A2 WO 2012173449 A2 WO2012173449 A2 WO 2012173449A2 KR 2012004807 W KR2012004807 W KR 2012004807W WO 2012173449 A2 WO2012173449 A2 WO 2012173449A2
Authority
WO
WIPO (PCT)
Prior art keywords
bit depth
pcm sample
sample
current block
per pcm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/KR2012/004807
Other languages
English (en)
French (fr)
Other versions
WO2012173449A3 (ko
Inventor
김휘용
임성창
이진호
최진수
김진웅
김재곤
박동일
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Electronics and Telecommunications Research Institute ETRI
Original Assignee
Electronics and Telecommunications Research Institute ETRI
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 Electronics and Telecommunications Research Institute ETRI filed Critical Electronics and Telecommunications Research Institute ETRI
Priority claimed from KR1020120065076A external-priority patent/KR101998756B1/ko
Publication of WO2012173449A2 publication Critical patent/WO2012173449A2/ko
Publication of WO2012173449A3 publication Critical patent/WO2012173449A3/ko
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Definitions

  • the present invention relates to a video encoding / decoding method and apparatus, and more particularly, to a method and apparatus for encoding image information in a pulse coding modulation (PCM) mode, and a method and apparatus for decoding.
  • PCM pulse coding modulation
  • the supporting performance is also diversified by device.
  • the network in which information is transmitted is also diversified not only in the external structure such as wired and wireless networks, but also in functions such as the type of information to be transmitted, the amount and speed of information.
  • the user selects a terminal and a network to be used according to a desired function, and the spectrum of terminals and networks provided by the enterprise to the user is also diversified.
  • Ultra High Definition which has four times the resolution of HDTV
  • HDTV High Definition
  • an inter prediction technique for predicting a pixel value included in a current picture from a previous and / or subsequent picture in time, another pixel included in the current picture using pixel information in the current picture
  • An intra prediction technique for predicting a value an entropy encoding technique for allocating a short sign to a high frequency symbol and a long code to a low frequency symbol may be used.
  • An object of the present invention is to generate each screen or each block in a mode of directly encoding a difference value corresponding to a difference between a sample value or a sample value and a sample value, such as intra coding in a pulse code modulation (PCM) mode, without a frequency conversion process.
  • PCM pulse code modulation
  • Another object of the present invention is to insert the bit depth information per sample for blocks that directly encode a sample value or a difference value, such as PCM mode, to overcome the limitations of the prior art, and the information is inserted into a higher level value or a peripheral. It is to provide a method and apparatus for minimizing signaling overhead by predicting from a value.
  • QP quantization parameter
  • An embodiment of the present invention relates to a video encoding method, comprising: determining a bit depth value per PCM sample and information about a bit depth per PCM sample for a current block to which Pulse Coding Modulation (PCM) is applied; And signaling, wherein the information about the bit depth per PCM sample may include a difference value with respect to a reference value of the bit depth per PCM sample for the current block.
  • PCM Pulse Coding Modulation
  • the reference value may be a bit depth reference value per PCM sample transmitted through higher level syntax.
  • the bit depth reference value per PCM sample may be transmitted through a sequence parameter set or a picture parameter set.
  • the difference value may be transmitted at the slice header level or the processing unit level.
  • the reference value may be a bit depth per PCM sample of a block to which the PCM mode is applied among neighboring blocks of the current block.
  • the reference value may be a bit depth per PCM sample of the first block of the slice or picture to which the current block belongs among blocks to which the PCM mode is applied.
  • the reference value may be the bit depth per PCM sample of the block closest to the current block in the scan order or the encoding order among the blocks to which the PCM mode is applied.
  • Another embodiment of the present invention is a video encoding method, comprising: determining a bit depth value per PCM sample and signaling information about a bit depth per PCM sample for a current block to which Pulse Coding Modulation (PCM) is applied; And the information on the bit depth per PCM sample may include a quantization parameter (QP) mapped to the bit depth per PCM sample for the current block.
  • PCM Pulse Coding Modulation
  • Another embodiment of the present invention is a video decoding method, comprising: receiving bit depth information per PCM sample for a current block to which Pulse Coding Modulation (PCM) is applied and bit depth per PCM sample for the current block And restoring the current block based on the information, wherein the bit depth information per PCM sample for the current block may include a difference value with respect to a reference value of the bit depth per PCM sample for the current block.
  • PCM Pulse Coding Modulation
  • the reference value may be a bit depth reference value per PCM sample transmitted through higher level syntax.
  • bit depth reference value per PCM sample may be transmitted through a sequence parameter set or a picture parameter set.
  • the difference value may be transmitted at the slice header level or the processing unit level.
  • the reference value may be a bit depth per PCM sample of a block to which the PCM mode is applied among neighboring blocks of the current block.
  • the reference value may be a bit depth per PCM sample of the first block of the slice or picture to which the current block belongs among blocks to which the PCM mode is applied.
  • the reference value may be the bit depth per PCM sample of the block closest to the current block in the scan order or decoding order among the blocks to which the PCM mode is applied.
  • Another embodiment of the present invention is a video decoding method, comprising: receiving bit depth information per PCM sample for a current block to which Pulse Coding Modulation (PCM) is applied and bit depth per PCM sample for the current block Restoring the current block based on the information, wherein the bit depth information per PCM sample for the current block may include a quantization parameter (QP) mapped to the bit depth per PCM sample for the current block.
  • PCM Pulse Coding Modulation
  • each screen or each block in a mode of directly encoding a difference value corresponding to a difference between a sample value or a sample value and a sample value, such as intra coding in a pulse code modulation (PCM) mode, without a frequency conversion process
  • PCM pulse code modulation
  • bit depth information per sample is inserted into blocks for directly encoding a sample value or a difference value, such as PCM mode, and the information is inserted into a higher level value or a peripheral value. Signaling overhead can be minimized by using prediction from.
  • the present invention by introducing a mapping relationship between the quantization parameter (QP) and the bit depth per sample, it is possible to derive the bit depth of the encoded sample value or the difference value only by QP allocation and signaling, thereby generating the generated bits of the encoding target block.
  • the QP information signaling of the encoding object block can be omitted by facilitating control of the amount or by inducing the QP value of the encoding object block only by signaling the bit depth information per sample of the encoded sample value or the difference value.
  • FIG. 1 is a block diagram illustrating a basic configuration of an encoding apparatus according to an embodiment.
  • FIG. 2 is a block diagram illustrating a basic configuration according to an embodiment of a decoding apparatus.
  • FIG. 3 is a flowchart schematically illustrating an example of a bit rate control operation for a PCM sample performed in an encoding apparatus according to the present invention.
  • FIG. 4 is a flowchart schematically illustrating another example of a bit rate control operation for a PCM sample performed in an encoding apparatus according to the present invention.
  • FIG. 5 is a diagram schematically illustrating bit amount information for a PCM mode signaled according to the present invention.
  • FIG. 6 is a diagram schematically illustrating a method of predicting a bit depth value per PCM sample of a current block by using information of a block encoded / decoded in the PCM mode among neighboring blocks of the current block according to the present invention.
  • FIG. 7 is a flowchart schematically illustrating a method of recovering a block to which a PCM mode is applied in a decoding apparatus according to the present invention.
  • first and second may be used to describe various configurations, but the configurations are not limited by the terms. The terms are used to distinguish one configuration from another.
  • first configuration may be referred to as the second configuration, and similarly, the second configuration may also be referred to as the first configuration.
  • each component shown in the embodiments of the present invention are independently shown to represent different characteristic functions, and do not mean that each component is made of separate hardware or one software component unit.
  • each component is listed as a component for convenience of description, and at least two of the components may form one component, or one component may be divided into a plurality of components to perform a function.
  • the integrated and separated embodiments of each component are also included in the scope of the present invention without departing from the spirit of the present invention.
  • FIG. 1 is a block diagram illustrating a basic configuration of an encoding apparatus according to an embodiment.
  • the encoding apparatus 100 may include an inter prediction unit 110, an intra prediction unit 120, a switch 125, a subtractor 130, a transform unit 135, a quantization unit 140, and entropy encoding.
  • the unit 150 includes an inverse quantization unit 160, an inverse transform unit 170, an adder 175, a filter unit 180, and a picture buffer 190.
  • the encoding apparatus 100 may encode the input image in an intra mode or an inter mode and output a bitstream. In the intra mode, the switch 125 is switched to intra, and in the inter mode, the switch 125 is switched to inter. The encoding apparatus 100 may generate a prediction block for the input block of the input image and then encode the difference between the input block and the prediction block.
  • the intra predictor 120 may generate a prediction block by performing spatial prediction using pixel values of blocks that are already encoded around the current block.
  • the inter prediction unit 110 may obtain a motion vector by searching for a region corresponding to an input block in a reference image stored in the picture buffer 190 during a motion prediction process.
  • the inter prediction unit 110 may generate a prediction block by performing motion compensation using the motion vector and the reference image stored in the picture buffer 190.
  • the subtractor 130 may generate a residual block by the difference between the input block and the generated prediction block.
  • the transformer 135 may perform a transform on the residual block and output a transform coefficient.
  • the quantization unit 140 may output the quantized coefficient by quantizing the input transform coefficient according to the quantization parameter.
  • the entropy encoding unit 150 may output a bitstream by entropy encoding the quantized coefficients according to a probability distribution based on values calculated by the quantization unit 140 or encoding parameter values calculated in the encoding process. Can be.
  • the quantized coefficients may be inversely quantized by the inverse quantizer 160 and inversely transformed by the inverse transformer 170.
  • the inverse quantized and inverse transformed coefficients are added to the prediction block through the adder 175 and a reconstruction block can be generated.
  • the reconstruction block passes through the filter unit 180, and the filter unit 180 applies at least one or more of a deblocking filter, a sample adaptive offset (SAO), and an adaptive loop filter (ALF) to the reconstruction block or the reconstruction picture. can do.
  • the filter unit 180 may determine whether to apply ALF when SAO is applied.
  • the reconstructed block that has passed through the filter unit 180 may be stored in the picture buffer 190.
  • FIG. 2 is a block diagram illustrating a basic configuration according to an embodiment of a decoding apparatus.
  • the decoding apparatus 200 includes an entropy decoding unit 210, an inverse quantization unit 220, an inverse transform unit 230, an intra prediction unit 240, an inter prediction unit 250, and a filter unit 260. ) And picture buffer 270.
  • the decoding apparatus 200 may receive the bitstream output from the encoding apparatus, decode the intra mode or the inter mode, and output a reconstructed image, that is, a reconstructed image.
  • the switch In the intra mode, the switch may be switched to intra, and in the inter mode, the switch may be switched to inter.
  • the decoding apparatus 200 may obtain a residual block reconstructed from the received bitstream, generate a prediction block, and then add the reconstructed residual block and the prediction block to generate a reconstructed block, that is, a reconstruction block. .
  • the entropy decoding unit 210 entropy decodes the input bitstream according to the probability distribution. By entropy decoding, quantized (transform) coefficients can be generated.
  • the quantized coefficient is inversely quantized by the inverse quantizer 220 and inversely transformed by the inverse transformer 230, and as a result of the inverse quantization / inverse transformation of the quantized coefficient, a reconstructed residual block may be generated.
  • the intra predictor 240 may generate a prediction block by performing spatial prediction using pixel values of blocks that are already encoded around the current block.
  • the inter predictor 250 may generate a predictive block by performing motion compensation using a motion vector and a reference image stored in the picture buffer 270.
  • the reconstructed residual block and the prediction block are added through the adder 255, and the added block passes through the filter unit 260.
  • the filter unit 260 may apply at least one of the deblocking filter, SAO, and ALF to the reconstructed block or the reconstructed picture.
  • the filter unit 260 may determine whether to apply ALF when SAO is applied.
  • the filter unit 260 outputs a reconstructed image, that is, a reconstructed image.
  • the reconstructed image may be stored in the picture buffer 270 to be used for inter prediction.
  • the encoding device and the decoding device may use a PCM mode in addition to the above-described intra prediction mode for lossless coding.
  • the PCM mode is a safety device for preventing the compressed bit amount of the block to be encoded from being larger than the original bit amount.
  • the PCM mode directly encodes a sample value without undergoing a prediction / conversion process.
  • the encoding apparatus may directly encode a sample value of the current block to which the PCM mode is applied and transmit the encoded value to the decoding apparatus without performing a prediction / conversion process.
  • the decoding apparatus may not perform prediction / transformation on a block to which the PCM mode is applied.
  • the decoding device may parse a bitstream transmitted from the encoding device and then construct a reconstructed block based on the parsed pixel value.
  • the encoding device may transmit information indicating whether the PCM mode is applied to the current block to the decoding device.
  • the decoding apparatus may determine whether to apply the PCM mode to the current block based on the information received from the encoding apparatus.
  • the block to which the PCM mode is applied may be a processing unit of any one of a CU, a PU, and a TU.
  • information indicating whether the PCM mode is applied may be transmitted in a flag.
  • In-loop filters may be applied to blocks reconstructed in PCM mode, for example, deblocking filters, SAO and / or ALF may be applied to blocks reconstructed in PCM mode.
  • the quantization interval allocated to each screen or a block constituting each screen is set to a quantization parameter (QP).
  • QP quantization parameter
  • the bit rate may be controlled in a block or picture to which the PCM mode is applied by a method other than quantization interval control.
  • the encoding device may signal a sample bit depth to the decoding device for a block to which the PCM mode is applied.
  • some or all of the information of the PCM mode applied to the current block may be predicted by the decoding apparatus.
  • predicting some or all of the bit depth information in the decoding apparatus it is possible to reduce the amount of bits required to transmit the information about the bit depth of the sample of the block to which the PCM mode is applied (hereinafter referred to as 'PCM sample' for convenience of description). have.
  • the PCM mode is applied by mapping bit depths of QP and PCM samples when the PCM mode is applied according to the present invention.
  • Bit rate control using QP may also be performed on the block.
  • the encoding apparatus may use a mapping relationship in which the decoding apparatus derives a QP by transmitting bit depth information per PCM sample, or the encoding apparatus may transmit a QP and use the mapping relation in which the decoding apparatus derives a bit depth value per PCM sample by transmitting the QP. It can also be used.
  • the encoding apparatus transmits a bitstream including information about the bit depth per PCM sample to the decoding apparatus.
  • the decoding apparatus parses the received bitstream to obtain information about bit depth per PCM sample.
  • the decoding apparatus may restore a block to which the PCM mode is applied based on the bit depth per PCM sample.
  • bit depth per PCM sample indicates how many bits to represent the sample value of the luma component and / or chroma component when encoding / decoding in the PCM mode.
  • the encoding apparatus may set a reference value of the bit depth per PCM sample (hereinafter, referred to as a “bit depth reference value per PCM sample” for convenience of description) to indicate the bit depth per PCM sample.
  • the encoding apparatus may transmit a difference value between the set reference value of the bit depth per PCM sample and the bit depth per PCM sample for the current block.
  • the decoding apparatus receives a bit depth reference value per PCM sample and a difference value between the reference value and the bit depth per PCM sample for the current block (hereinafter referred to as a 'bit depth difference per PCM sample' value for convenience of description) from the encoding apparatus. can do.
  • the decoding apparatus may restore a block to which the PCM mode is applied based on the received bit depth reference value per PCM sample and the difference value.
  • FIG. 3 is a flowchart schematically illustrating an example of a bit rate control operation for a PCM sample performed in an encoding apparatus according to the present invention.
  • the encoding apparatus determines a bit depth reference value per sample for the PCM mode (S310).
  • the encoding apparatus determines a bit depth value per PCM sample of the block to which the PCM mode is applied (S320).
  • the encoding device signals the information about the bit depth value per PCM sample (S330).
  • Information about the bit depth value per PCM sample includes the bit depth reference value per PCM sample and the bit depth difference value per PCM sample.
  • the encoding apparatus signals a bit depth reference value per PCM sample in a higher-level header such as slice, picture, and sequence to reduce the amount of signaled bits. At a lower level, a bit depth difference value per PCM sample may be signaled.
  • step S310 may be performed in the quantization unit
  • step S320 may be performed in the entropy encoding unit.
  • bit amount control is performed on a block to which the PCM mode is applied by mapping the bit depths of the QP and PCM samples.
  • QP and bit depth information per PCM sample are mapped (S410).
  • the encoding apparatus may map the bit depth information per PCM sample and the QP using a mapping table or a mapping calculation as described below.
  • the encoding apparatus may determine the depth information per PCM sample mapped to the QP corresponding to the bit depth per sample to be applied to the current block.
  • the encoding apparatus determines a bit depth reference value per sample for the PCM mode (S420).
  • the encoding apparatus determines a bit depth value per PCM sample of the block to which the PCM mode is applied (S430).
  • the encoding device signals the information about the bit depth value per PCM sample (S440).
  • Information about the bit depth value per PCM sample includes the bit depth reference value per PCM sample and the bit depth difference value per PCM sample. Instead of directly signaling bit information per PCM sample for each block to which the PCM mode is applied, the encoding apparatus signals a bit depth reference value per PCM sample in a higher-level header such as slice, picture, and sequence to reduce the amount of signaled bits. At a lower level, a bit depth difference value per PCM sample may be signaled.
  • the bit depth value per PCM sample of the current block is controlled by transmitting bit depth information per PCM sample corresponding to the QP.
  • the bit depth per PCM sample is determined and the corresponding QP value is transmitted to the PCM. It is also possible to control the bit depth value per sample.
  • the transmitted QP value may be used for dequantization, filtering, etc. in addition to controlling the bit depth value per PCM sample.
  • the encoding apparatus controls the bit amount for convenience of description, but the present invention is not limited thereto.
  • steps S410 and S420 may be performed by the quantization unit, and step S430 may be performed by the entropy encoding unit.
  • the present invention may control the bit amount for the PCM mode by signaling a depth difference value per PCM sample.
  • FIG. 5 is a diagram schematically illustrating bit amount information for a PCM mode signaled according to the present invention.
  • a bit depth reference value 510 per PCM sample is transmitted in a higher level sequence parameter set (SPS) or picture parameter set (PPS).
  • SPS sequence parameter set
  • PPS picture parameter set
  • bit depth value per PCM sample actually applied can be determined and burned out.
  • the bit depth value 520 per PCM sample may be determined in the slice header, or the bit depth value 530 per PCM sample may be determined at a processing unit level such as a CU, PU, or TU.
  • bit depth value per PCM sample of the current block may be transmitted in the form of a difference value from the bit depth reference value per PCM sample.
  • the difference value 530 from the bit depth reference value 510 per PCM sample is set at the processing unit level. Can be signaled.
  • bit depth value 520 per PCM sample at the slice header level may be transmitted to transmit the bit depth value 530 per PCM sample at the processing unit level.
  • the bit depth value 520 per PCM sample at the slice header level may be transmitted by indicating a difference value 540 from the bit depth reference value 510 per PCM sample.
  • the bit depth value 530 per PCM sample at the processing unit level may be transmitted by indicating a difference value 550 from the bit depth value 520 per PCM sample at the slice header level.
  • the encoding apparatus and the decoding apparatus are configured to transmit or receive only the bit depth value per PCM sample of the slice header level, or transmit the difference value 550 from the bit depth value 520 per PCM sample of the slice header level You may not.
  • Table 1 is an example of syntax regarding bit depth per PCM sample transmitted at each level.
  • bit depth reference value per PCM sample is transmitted in the SPS or PPS.
  • the bit depth reference value per PCM sample transmitted in the SPS or PPS is commonly applied to the sequence or the picture.
  • the bit depth difference value per PCM sample may be transmitted in the slice header.
  • the bit depth difference value per PCM sample may be combined with the bit depth reference value per PCM sample to represent the actual bit depth value per PCM sample.
  • the bit depth difference per PCM sample transmitted in the slice header is commonly applied to the slice.
  • a bit depth difference value per PCM sample may be transmitted at a processing unit level such as a CU, a PU, or a TU.
  • the bit depth difference value per PCM sample may be combined with the bit depth reference value per PCM sample to represent the actual bit depth value per PCM sample.
  • the bit depth difference per PCM sample transmitted at the processing unit level is commonly applied at that processing unit level.
  • bit depth reference value per PCM sample transmitted at the SPS or PPS level for the chroma component may be pcm_bit_depth_chroma or pcm_bit_depth_cr / pcm_bit_depth_cb.
  • the bit depth difference value per PCM sample transmitted at the slice header or the processing unit level may be pcm_bit_depth_delta_chroma or pcm_bit_depth_delta_cr / pcm_bit_depth_delta_cb.
  • the number of signaling bits may be reduced by using the already encoded bit depth information per sample.
  • bit_depth_luma_minus8 For example, suppose that the bit depth value per sample is transmitted to bit_depth_luma_minus8 through the information of the SPS.
  • bit_depth_luma_minus8 instead of directly signaling the bit depth reference value per PCM sample as shown in Table 1, a difference value with the bit depth per sample already signaled as shown in Table 2 below may be signaled.
  • Information about the bit depth per PCM sample may be signaled only when the PCM mode is applied to the target block. For example, as shown in the example of Table 3, when the prediction mode of the current block is the intra prediction mode, the encoding apparatus may transmit bit depth reference values (pcm_bit_depth_luma, pcm_bit_depth_cr, pcm_bit_depth_cbluma) per PCM sample.
  • bit depth reference values pcm_bit_depth_luma, pcm_bit_depth_cr, pcm_bit_depth_cbluma
  • bit depth value per PCM sample may be transmitted as shown in the example of Table 4 through the bit depth difference values (pcm_bit_depth_delta_luma, pcm_bit_depth_delta_cr, pcm_bit_depth_delta_cb) per PCM sample.
  • the PCM sample bit depth value of the neighboring block already encoded in PCM mode is used to predictively encode the bit depth value per PCM sample of the current block. You may.
  • FIG. 6 is a diagram schematically illustrating a method of predicting a bit depth value per PCM sample of a current block by using information of a block encoded / decoded in the PCM mode among neighboring blocks of the current block according to the present invention.
  • a CU, a PU, or a TU is divided, and blocks P1, P2, and P3 are already encoded / decoded in the PCM mode.
  • the bit depth per PCM sample of the current block X is at least one bit depth per PCM sample among the blocks P1, P2, and P3.
  • the value can be used to predict.
  • the encoding apparatus may signal only a difference value between the bit depth value per PCM sample and the prediction value for the current block.
  • the decoding apparatus may receive a difference value between the bit depth per PCM sample for the current block and the prediction value, and derive the bit depth value per PCM sample for the current block by adding the difference value to the prediction value.
  • a block depth per PCM sample of the current block may be predicted using a block closest to the current block in coding order. Therefore, the encoding device has already been encoded in the PCM mode, the bit depth per PCM sample of the current block can be predicted using the block closest to the current block in the encoding order, and the decoding device has already been decoded in the PCM mode and in decoding order. The block closest to the current block can be used to predict the bit depth per PCM sample of the current block.
  • the bit depth value per PCM sample of the current block X in FIG. 6 is based on the bit depth per PCM sample of the P3 block. Can be predicted.
  • the bit depth value per PCM sample applied to the P2 block may be used as the bit depth prediction value per PCM sample for the current block X.
  • the encoding apparatus may signal a difference between the bit depth value per PCM sample applied to the P2 block and the bit depth value per PCM sample of the current block.
  • the decoding apparatus uses the PCM sample depth value applied to the P2 block as the PCM sample bit depth prediction value of the current block, and adds the difference value of the bit depth per PCM sample received from the encoding apparatus to add the bit depth per PCM sample for the current block.
  • the value can be derived.
  • PCM-related information (bit depth reference value per PCM sample, bit depth value per PCM sample of the slice header, etc.) may be used as a prediction value.
  • bit depth may be used to restore the sample value of the current block.
  • PCM sample value reconstruction is a process of converting PCM sample values expressed in bits per PCM sample to fit bits per sample to be reconstructed.
  • Table 5 shows an example of a method of restoring PCM sample values.
  • ReconstructedLumaBlock [x] [y] represents the restored luma signal value at the current block position (x, y). Each signal value is represented by the number of bits by BitDepthLuma.
  • PCMSampleLuma [i] represents the PCM luma sample value at the i th position in the raster scan order of the current block. Each sample value is represented by the number of bits of PCMBitDepthLuma.
  • the PCMBitDepthLuma value for the current block is the number of bits used to represent each PCM luma sample value of the current block.
  • the conversion process as shown in Table 5 may be performed in the encoding apparatus and the decoding apparatus in the same manner. However, in the encoding apparatus, a process of converting the sample value of the current block into a PCM sample value and encoding may be added before the conversion process of Table 5.
  • Table 6 shows an example of a method of encoding by converting the sample values of the current block into PCM sample values.
  • Table 7 shows another example of a method of encoding a sample value of the current block by converting the sample value into a PCM sample value.
  • the encoding apparatus and the decoding apparatus may use a method of controlling the bit amount of the sample by mapping bit depth information per QP and PCM sample.
  • the generation bit amount of the sample is controlled by controlling the QP value. Therefore, by introducing a mapping relationship between the QP and the PCM sample bit depth information, it is also possible to control the amount of bits generated for the PCM mode block by allocating and signaling the QP.
  • the bit depth per PCM sample may be determined and a corresponding QP may be allocated to control the bit depth per PCM sample through the corresponding QP.
  • mapping relationship between QP and bit depth per PCM sample can be defined using a mapping table.
  • Table 8 is an example of a mapping table showing a mapping relationship between QP and bit depth per PCM sample.
  • the mapping relationship between QP and bit depth may be many-to-one, one-to-many, many-to-many as well as one-to-one.
  • the encoding apparatus may additionally signal which bit depths per PCM sample to use.
  • the encoding apparatus may further signal which QP to use.
  • mapping relationship between the QP and the bit depth per PCM sample may be defined using a calculation rather than a mapping table.
  • Equation 1 is an example of an expression representing a mapping relationship between a QP and a bit depth per PCM sample.
  • PCMSampleBitDepth MAX (8-Max (QP-13,0) / 6, 3)
  • the encoding apparatus does not need to signal the bit depth value or QP value per PCM sample each time.
  • the decoding apparatus may derive the bit depth value per PCM sample based on the signaled QP value or the QP value based on the signaled bit depth value per PCM sample.
  • the mapping relationship between the QP and the bit depth value per PCM sample may be set in advance between the encoding device and the decoding device.
  • the encoding apparatus may separately transmit information necessary for setting the mapping relationship between the QP and the bit depth value per PCM sample, for example, a mapping table or a mapping expression parameter through a sequence parameter set, a picture parameter set, and a slice parameter set. have.
  • the bit depth value per PCM sample obtained using the QP value is used as the bit depth prediction value per PCM sample for the current block, and the sequence parameter set, At a picture parameter set, slice header, or processing unit level, only the difference value between the bit depth value and the prediction value per PCM sample of the current block to which the PCM mode is applied may be transmitted.
  • FIG. 7 is a flowchart schematically illustrating a method of recovering a block to which a PCM mode is applied in a decoding apparatus according to the present invention.
  • the decoding apparatus receives information about a bit depth value per PCM sample from the encoding apparatus (S710).
  • the information about the bit depth value per PCM sample received by the decoding apparatus includes a bit depth reference value per PCM sample and a bit depth difference value per PCM sample.
  • the bit depth reference per PCM sample may be sent via SPS or PPS.
  • the bit depth difference per PCM sample may be transmitted at the processing unit level or at the slice header and processing unit level, respectively.
  • the information about the bit depth value per PCM sample received by the decoding apparatus may be a difference value between the bit depth value per PCM sample of the current block and the bit depth prediction value per PCM sample of the current block.
  • the bit depth prediction value per PCM sample of the current block is a bit depth value per PCM sample of a block decoded in the PCM mode first among neighboring blocks of the current block.
  • the decoding apparatus may derive the bit depth value per PCM sample of the current block by adding the received difference value to the bit depth prediction value per PCM sample. Which of the blocks decoded in the surrounding PCM mode may use a bit depth value per PCM sample as a prediction value or may be signaled from the encoding apparatus.
  • bit depth value per PCM sample of the block decoded in the PCM mode first in the current picture or the current slice may be used as the bit depth prediction value per PCM sample of the current block to which the PCM mode is applied.
  • bit depth value per PCM sample of the block closest to the current block in scanning order or decoding order among the blocks decoded in the PCM mode first in the current picture or the current slice is determined per PCM sample of the current block to which the PCM mode is applied. It can also be used as a bit depth prediction value.
  • bit depth value per PCM sample received by the decoding apparatus may include a QP value mapped to the bit depth per PCM sample for the current block.
  • the decoding apparatus may determine a bit depth value per PCM sample of the current block (S720). As described above, the decoding apparatus may determine the bit depth per PCM sample of the current block based on the received information.
  • the decoding apparatus adds the bit depth reference value per PCM sample and the bit depth difference value per PCM sample to add the per PCM sample for the current block.
  • the bit depth can be derived.
  • the decoding apparatus Upon receiving a difference value between the bit depth per PCM sample of the current block and the bit depth prediction per PCM sample of the current block, the decoding apparatus determines the bit depth per PCM sample of the current block and the bit depth per PCM sample of the current block. The difference from the prediction value can be added to derive the bit depth per PCM sample for the current block.
  • the decoding apparatus may derive the bit depth per PCM sample of the current block based on the received QP value.
  • the decoding apparatus may restore the current block based on the bit depth per PCM sample of the current block (S730).
  • S730 bit depth per PCM sample of the current block
  • an inverse transform of the transform used in the example of Table 6 or Table 7 may be used.
  • each step of FIG. 7 may be performed by internal configuration units of the decoding apparatus shown in FIG. 2, for example.
  • steps S710 and S720 may be performed by the entropy decoding unit
  • step S730 may be performed by the dequantization unit.
  • signaling some information means that the encoding device inserts the information into the bitstream so that the decoding device can know the information, and the decoding device parses the bitstream to obtain information.
  • the methods are described based on a flowchart as a series of steps or blocks, but the present invention is not limited to the order of the steps, and some steps may be in a different order than the above-described steps or It can happen at the same time.
  • the above-described embodiments include examples of various aspects. For example, a combination of each embodiment will also be understood as one embodiment of the present invention.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 비디오 인코딩 방법 및 비디오 디코딩 방법과 이를 이용하는 장치에 관한 것으로서, 본 발명에 따른 비디오 인코딩 방법의 일 실시형태는 PCM(Pulse Coding Modulation)이 적용되는 현재 블록에 대하여 PCM 샘플당 비트 깊이 값을 결정하는 단계 및 PCM 샘플당 비트 깊이에 관한 정보를 시그널링하는 단계를 포함하며, 상기 PCM 샘플당 비트 깊이에 관한 정보는, 상기 현재 블록에 대한 PCM 샘플당 비트 깊이의 기준값에 대한 차이값을 포함할 수 있다.

Description

비디오 인코딩 및 디코딩 방법과 이를 이용한 장치
본 발명은 비디오 인코딩/디코딩 방법 및 장치에 관한 것으로서, 구체적으로는 PCM(Pulse Coding Modulation) 모드에서 영상 정보를 인코딩하는 방법 및 장치와 디코딩 하는 방법 및 장치에 관한 것이다.
최근 멀티미디어(multimedia) 환경이 구축되면서, 다양한 단말과 네트워크가 이용되고 있으며, 이에 따른 사용자 요구도 다변화하고 있다.
예컨대, 단말의 성능과 컴퓨팅 능력(computing ability)이 다양해짐에 따라서 지원하는 성능도 기기별로 다양해지고 있다. 또한 정보가 전송되는 네트워크 역시 유무선 네트워크와 같은 외형적인 구조뿐만 아니라, 전송하는 정보의 형태, 정보량과 속도 등 기능별로도 다양해지고 있다. 사용자는 원하는 기능에 따라서 사용할 단말과 네트워크를 선택하며, 사용자에게 기업이 제공하는 단말과 네트워크의 스펙트럼도 다양해지고 있다.
최근에는 HD(High Definition) 해상도를 가지는 방송이 국내뿐만 아니라 세계적으로 확대되어 서비스되면서, 많은 사용자들이 고해상도, 고화질의 영상에 익숙해지고 있다. 이에 따라서 많은 영상 서비스 관련 기관들이 차세대 영상 기기에 대한 개발에 박차를 가하고 있다.
또한 HDTV와 더불어 HDTV의 4배 이상의 해상도를 갖는 UHD(Ultra High Definition)에 대한 관심이 증대되면서 보다 높은 해상도, 고화질의 영상을 압축하여 처리하는 기술에 대한 요구는 더 높아지고 있다.
영상을 압축하여 처리하기 위해, 시간적으로 이전 및/또는 이후의 픽처로부터 현재 픽처에 포함된 화소값을 예측하는 인터(inter) 예측 기술, 현재 픽처 내의 화소 정보를 이용하여 현재 픽처에 포함된 다른 화소값을 예측하는 인트라(intra) 예측 기술, 출현 빈도가 높은 심볼(symbol)에 짧은 부호를 할당하고 출현 빈도가 낮은 심볼에 긴 부호를 할당하는 엔트로피 인코딩 기술 등이 사용될 수 있다.
고해상도, 고화질 영상 서비스에 대한 수요가 증가함에 따라서, 전송되는 정보량 혹은 처리되는 정보량을 적정하게 제어하거나 최소화하는 방법이 필요하다.
본 발명의 목적은 PCM(Pulse Code Modulation) 모드의 인트라 코딩과 같이 샘플값 혹은 샘플값과 샘들 예측값의 차이에 해당하는 차분값을 주파수 변환 과정 없이 직접 부호화하는 모드에 있어 각 화면 혹은 각 블록의 발생 비트량을 제어할 수 없었던 종래 기술의 한계를 극복함으로써, 이러한 모드가 사용되더라도 비트율 제어가 용이하게 이루어질 수 있는 방법 및 장치를 제공하는 것이다.
본 발명의 다른 목적은 종래 기술의 한계를 극복하기 위해 PCM 모드와 같이 샘플값혹은 차분값을 직접 인코딩할 블록들에 대해서 샘플당 비트 깊이 정보를 삽입하며, 이 정보를 상위 레벨의 값 또는 주변의 값으로부터 예측하여 사용함으로써 시그널링 오버헤드를 최소화하는 방법 및 장치를 제공하는 것이다.
본 발명의 또 다른 목적은 양자화 파라미터(QP)와 샘플당 비트 깊이와의 매핑 관계를 도입함으로써, QP 할당 및 시그널링만으로 부호화된 샘플값 혹은 차분값의 비트 깊이를 유도할 수 있도록 함으로써 부호화 대상 블록의 발생 비트량 제어를 용이하게 하거나, 반대로 부호화된 샘플값 혹은 차분값의 샘플당 비트 깊이 정보의 시그널링 만으로 부호화 대상 블록의 QP값을 유도할 수 있도록 함으로써 부호화 대상 블록의 QP 정보 시그널링을 생략할 수 있도록 하는 방법 및 장치를 제공하는 것이다.
(1) 본 발명의 일 실시형태는 비디오 인코딩 방법에 관한 것으로서, PCM(Pulse Coding Modulation)이 적용되는 현재 블록에 대하여 PCM 샘플당 비트 깊이 값을 결정하는 단계 및 PCM 샘플당 비트 깊이에 관한 정보를 시그널링하는 단계를 포함하며, 상기 PCM 샘플당 비트 깊이에 관한 정보는, 상기 현재 블록에 대한 PCM 샘플당 비트 깊이의 기준값에 대한 차이값을 포함할 수 있다
(2) (1)에서, 상기 기준값은 상위 레벨 신택스를 통해 전송되는 PCM 샘플당 비트 깊이 기준값일 수 있다.
(3) (2)에서, 상기 시그널링 단계에서는, 상기 PCM 샘플당 비트 깊이 기준값을 시퀀스 파라미터 셋 또는 픽처 파라미터 셋을 통해서 전송할 수 있다.
(4) (2)에서, 상기 시그널링 단계에서는, 상기 차이값을 슬라이스 헤더 레벨 또는 처리 유닛 레벨에서 전송할 수 있다.
(5) (1)에서, 상기 기준값은 상기 현재 블록의 주변 블록들 중에서 PCM 모드가 적용된 블록의 PCM 샘플당 비트 깊이일 수 있다.
(6) (5)에서, 상기 기준값은 PCM 모드가 적용된 블록들 중에서, 상기 현재 블록이 속하는 슬라이스 또는 픽처의 첫 번째 블록의 PCM 샘플당 비트 깊이일 수 있다.
(7) (5)에서, 상기 기준값은 PCM 모드가 적용된 블록들 중에서, 스캔 순서 또는 인코딩 순서상 현재 블록에 가장 가까운 블록의 PCM 샘플당 비트 깊이일 수 있다.
(8) 본 발명의 다른 실시형태는 비디오 인코딩 방법으로서, PCM(Pulse Coding Modulation)이 적용되는 현재 블록에 대하여 PCM 샘플당 비트 깊이 값을 결정하는 단계 및 PCM 샘플당 비트 깊이에 관한 정보를 시그널링하는 단계를 포함하며, 상기 PCM 샘플당 비트 깊이에 관한 정보는, 상기 현재 블록에 대한 PCM 샘플당 비트 깊이에 매핑되는 QP(Quantization parameter)를 포함할 수 있다.
(9) 보 발명의 또 다른 실시형태는 비디오 디코딩 방법으로서, PCM(Pulse Coding Modulation)이 적용되는 현재 블록에 대한 PCM 샘플당 비트 깊이 정보를 수신하는 단계 및 상기 현재 블록에 대한 PCM 샘플당 비트 깊이 정보를 기반으로 현재 블록을 복원하는 단계를 포함하며, 상기 현재 블록에 대한 PCM 샘플당 비트 깊이 정보는, 상기 현재 블록에 대한 PCM 샘플당 비트 깊이의 기준값에 대한 차이값을 포함할 수 있다.
(10) (9)에서, 상기 기준값은 상위 레벨 신택스를 통해 전송된 PCM 샘플당 비트 깊이 기준값일 수 있다.
(11) (10)에서, 상기 PCM 샘플당 비트 깊이 기준값은 시퀀스 파라미터 셋 또는 픽처 파라미터 셋을 통해서 전송될 수 있다.
(12) (10)에서, 상기 차이값은 슬라이스 헤더 레벨 또는 처리 유닛 레벨에서 전송될 수 있다.
(13) (9)에서, 상기 기준값은 상기 현재 블록의 주변 블록들 중에서 PCM 모드가 적용된 블록의 PCM 샘플당 비트 깊이일 수 있다.
(14) (13)에서, 상기 기준값은, PCM 모드가 적용된 블록들 중에서, 상기 현재 블록이 속하는 슬라이스 또는 픽처의 첫 번째 블록의 PCM 샘플당 비트 깊이일 수 있다.
(15) (13)에서, 상기 기준값은 PCM 모드가 적용된 블록들 중에서, 스캔 순서 또는 디코딩 순서상 현재 블록에 가장 가까운 블록의 PCM 샘플당 비트 깊이일 수 있다.
(16) 본 발명의 또 다른 실시형태는 비디오 디코딩 방법으로서, PCM(Pulse Coding Modulation)이 적용되는 현재 블록에 대한 PCM 샘플당 비트 깊이 정보를 수신하는 단계 및 상기 현재 블록에 대한 PCM 샘플당 비트 깊이 정보를 기반으로 현재 블록을 복원하는 단계를 포함하며, 상기 현재 블록에 대한 PCM 샘플당 비트 깊이 정보는, 상기 현재 블록에 대한 PCM 샘플당 비트 깊이에 매핑되는 QP(Quantization parameter)를 포함할 수 있다.
본 발명에 의하면, PCM(Pulse Code Modulation) 모드의 인트라 코딩과 같이 샘플값 혹은 샘플값과 샘들 예측값의 차이에 해당하는 차분값을 주파수 변환 과정 없이 직접 부호화하는 모드에 있어 각 화면 혹은 각 블록의 발생 비트량을 제어할 수 없었던 종래 기술의 한계를 극복함으로써, 이러한 모드가 사용되더라도 비트율 제어가 용이하게 이루어질 수 있다.
본 발명에 의하면, 종래 기술의 한계를 극복하기 위해 PCM 모드와 같이 샘플값혹은 차분값을 직접 인코딩할 블록들에 대해서 샘플당 비트 깊이 정보를 삽입하며, 이 정보를 상위 레벨의 값 또는 주변의 값으로부터 예측하여 사용함으로써 시그널링 오버헤드를 최소화할 수 있다.
본 발명에 의하면, 양자화 파라미터(QP)와 샘플당 비트 깊이와의 매핑 관계를 도입함으로써, QP 할당 및 시그널링만으로 부호화된 샘플값 혹은 차분값의 비트 깊이를 유도할 수 있도록 함으로써 부호화 대상 블록의 발생 비트량 제어를 용이하게 하거나, 반대로 부호화된 샘플값 혹은 차분값의 샘플당 비트 깊이 정보의 시그널링 만으로 부호화 대상 블록의 QP값을 유도할 수 있도록 함으로써 부호화 대상 블록의 QP 정보 시그널링을 생략할 수 있다.
도 1은 인코딩 장치의 일 실시예에 따른 기본 구성을 나타내는 블록도이다.
도 2는 디코딩 장치의 일 실시예에 따른 기본 구성을 나타내는 블록도이다.
도 3은 본 발명에 따라서 인코딩 장치에서 수행되는 PCM 샘플에 대한 비트율 제어 동작의 일 예를 개략적으로 설명하는 플로우 차트이다.
도 4는 본 발명에 따라서 인코딩 장치에서 수행되는 PCM 샘플에 대한 비트율 제어 동작의 다른 예를 개략적으로 설명하는 플로우 차트이다.
도 5는 본 발명에 따라서 시그널링되는 PCM 모드에 대한 비트량 정보에 관하여 개략적으로 설명하는 도면이다.
도 6은 본 발명에 따라서 현재 블록의 주변 블록들 중 PCM 모드로 인코딩/디코딩된 블록의 정보를 이용하여 현재 블록의 PCM 샘플당 비트 깊이 값을 예측하는 방법을 개략적으로 설명하는 도면이다.
도 7은 본 발명에 따른 디코딩 장치에서 PCM 모드가 적용된 블록을 복원하는 방법을 개략적으로 설명하는 플로우 차트이다.
이하, 도면을 참조하여 본 발명의 실시예에 대하여 구체적으로 설명한다. 본 명세서의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우에는 해당 설명을 생략할 수도 있다.
본 명세서에서 어떤 구성 요소가 다른 구성 요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있는 것을 의미할 수도 있고, 중간에 다른 구성 요소가 존재하는 것을 의미할 수도 있다. 아울러, 본 명세서에서 특정 구성을 “포함”한다고 기술하는 내용은 해당 구성 이외의 구성을 배제하는 것이 아니며, 추가적인 구성이 본 발명의 실시 또는 본 발명의 기술적 사상의 범위에 포함될 수 있음을 의미한다.
제1, 제2 등의 용어는 다양한 구성들을 설명하는데 사용될 수 있지만, 상기 구성들은 상기 용어에 의해 한정되지 않는다. 상기 용어들은 하나의 구성을 다른 구성으로부터 구별하는 목적으로 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성은 제2 구성으로 명명될 수 있고, 유사하게 제2 구성도 제1 구성으로 명명될 수 있다.
또한 본 발명의 실시예에 나타나는 구성부들은 서로 다른 특징적인 기능을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성 단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 포함한 것으로 각 구성부 중 적어도 두 개의 구성부가 하나의 구성부를 이루거나, 하나의 구성부가 복수 개의 구성부로 나뉘어져 기능을 수행할 수 있다. 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리 범위에 포함된다.
도 1은 인코딩 장치의 일 실시예에 따른 기본 구성을 나타내는 블록도이다.
도 1을 참조하면, 인코딩 장치(100)는 인터 예측부(110), 인트라 예측부(120), 스위치(125), 감산기(130), 변환부(135), 양자화부(140), 엔트로피 인코딩부(150), 역양자화부(160), 역변환부(170), 가산기(175), 필터부(180) 및 픽처 버퍼(190)를 포함한다.
인코딩 장치(100)는 입력 영상에 대해 인트라(intra) 모드 또는 인터(inter) 모드로 인코딩을 수행하고 비트스트림(bitstream)을 출력할 수 있다. 인트라 모드인 경우 스위치(125)가 인트라로 전환되고, 인터 모드인 경우 스위치(125)가 인터로 전환된다. 인코딩 장치(100)는 입력 영상의 입력 블록에 대한 예측 블록을 생성한 후, 입력 블록과 예측 블록의 차분을 인코딩할 수 있다.
인트라 모드인 경우, 인트라 예측부(120)는 현재 블록 주변의 이미 인코딩된 블록의 화소값을 이용하여 공간적 예측을 수행하여 예측 블록을 생성할 수 있다.
인터 모드인 경우, 인터 예측부(110)는, 움직임 예측 과정에서 픽처 버퍼(190)에 저장되어 있는 참조 영상에서 입력 블록에 대응하는 영역을 찾아 움직임 벡터를 구할 수 있다. 인터 예측부(110)는 움직임 벡터와 픽처 버퍼(190)에 저장되어 있는 참조 영상을 이용하여 움직임 보상을 수행함으로써 예측 블록을 생성할 수 있다.
감산기(130)는 입력 블록과 생성된 예측 블록의 차분에 의해 레지듀얼 블록(residual block)을 생성할 수 있다. 변환부(135)는 레지듀얼 블록에 대해 변환(transform)을 수행하여 변환 계수(transform coefficient)를 출력할 수 있다. 그리고 양자화부(140)는 입력된 변환 계수를 양자화 파라미터에 따라 양자화하여 양자화된 계수(quantized coefficient)를 출력할 수 있다. 엔트로피 인코딩부(150)는, 양자화부(140)에서 산출된 값들 또는 인코딩 과정에서 산출된 인코딩 파라미터 값 등을 기초로, 양자화된 계수를 확률 분포에 따라 엔트로피 인코딩하여 비트스트림(bitstream)을 출력할 수 있다.
양자화된 계수는 역양자화부(160)에서 역양자화되고 역변환부(170)에서 역변환될 수 있다. 역양자화, 역변환된 계수는 가산기(175)를 통해 예측 블록과 더해지고 복원 블록이 생성될 수 있다.
복원 블록은 필터부(180)를 거치고, 필터부(180)는 디블록킹 필터(deblocking filter), SAO(Sample Adaptive Offset), ALF(Adaptive Loop Filter) 중 적어도 하나 이상을 복원 블록 또는 복원 픽쳐에 적용할 수 있다. 필터부(180)에서는 SAO가 적용된 경우에 ALF를 적용할지를 결정할 수도 있다. 필터부(180)를 거친 복원 블록은 픽처 버퍼(190)에 저장될 수 있다.
도 2는 디코딩 장치의 일 실시예에 따른 기본 구성을 나타내는 블록도이다.
도 2를 참조하면, 디코딩 장치(200)는 엔트로피 디코딩부(210), 역양자화부(220), 역변환부(230), 인트라 예측부(240), 인터 예측부(250), 필터부(260) 및 픽처 버퍼(270)를 포함한다.
디코딩 장치(200)는 인코딩 장치에서 출력된 비트스트림을 입력 받아 인트라 모드 또는 인터 모드로 디코딩을 수행하고 재구성된 영상, 즉 복원 영상을 출력할 수 있다. 인트라 모드인 경우 스위치가 인트라로 전환되고, 인터 모드인 경우 스위치가 인터로 전환될 수 있다.
디코딩 장치(200)는 입력 받은 비트스트림으로부터 복원된 레지듀얼 블록(residual block)을 얻고 예측 블록을 생성한 후 복원된 레지듀얼 블록과 예측 블록을 더하여 재구성된 블록, 즉 복원 블록을 생성할 수 있다.
엔트로피 디코딩부(210)는, 입력된 비트스트림을 확률 분포에 따라 엔트로피 디코딩한다. 엔트로피 디코딩에 의해, 양자화된 (변환) 계수가 생성될 수 있다.
양자화된 계수는 역양자화부(220)에서 역양자화되고 역변환부(230)에서 역변환되며, 양자화된 계수가 역양자화/역변환된 결과, 복원된 레지듀얼 블록(residual block)이 생성될 수 있다.
인트라 모드인 경우, 인트라 예측부(240)는 현재 블록 주변의 이미 인코딩된 블록의 화소값을 이용하여 공간적 예측을 수행하여 예측 블록을 생성할 수 있다. 인터 모드인 경우, 인터 예측부(250)는 움직임 벡터 및 픽처 버퍼(270)에 저장되어 있는 참조 영상을 이용하여 움직임 보상을 수행함으로써 예측 블록을 생성할 수 있다.
복원된 레지듀얼 블록과 예측 블록은 가산기(255)를 통해 더해지고, 더해진 블록은 필터부(260)를 거친다. 필터부(260)는 디블록킹 필터, SAO, ALF 중 적어도 하나를 복원 블록 또는 복원 픽쳐에 적용할 수 있다. 필터부(260)에서는 SAO가 적용된 경우에 ALF를 적용할지를 결정할 수도 있다. 필터부(260)는 재구성된 영상, 즉 복원 영상을 출력한다. 복원 영상은 픽처 버퍼(270)에 저장되어 화면 간 예측에 사용될 수 있다.
한편, 현재 블록에 대한 예측 모드가 인트라 모드인 경우에, 인코딩 장치 및 디코딩 장치는 무손실(lossless) 코딩을 위해 상술한 인트라 예측 모드 외에 PCM(Pulse Coding Modulation) 모드를 이용할 수 있다.
PCM 모드는 인코딩 대상 블록의 압축 비트량이 원본 비트량보다 커지는 것을 막기 위한 안전 장치로서, 예측/변환 과정을 거치지 않고, 샘플값을 직접 인코딩한다.
현재 블록에 대해 PCM 모드가 적용되는 경우, 인코딩 장치는 예측/변환 과정을 거치지 않고, PCM 모드가 적용된 현재 블록의 샘플값을 직접 인코딩하여 디코딩 장치로 전송할 수 있다.
디코딩 장치는 PCM 모드가 적용되는 블록에 대해서는 예측/변환 등을 수행하지 않을 수 있다. PCM 모드가 적용된 블록에 대해서, 디코딩 장치는 인코딩 장치로부터 전송된 비트스트림을 파싱한 후, 파싱된 픽셀 값을 기반으로 복원 블록(reconstructed block)을 구성할 수 있다.
PCM 모드가 적용되는 경우에, 인코딩 장치는 현재 블록에 대해 PCM 모드가 적용되는지를 지시하는 정보를 디코딩 장치로 전송할 수 있다. 디코딩 장치는 인코딩 장치로부터 수신한 정보를 기반으로 현재 블록에 PCM 모드를 적용할지를 결정할 수 있다. 이때, PCM 모드가 적용되는 블록은 CU, PU 또는 TU 중 어느 하나의 처리 유닛일 수도 있다. 또한, PCM 모드가 적용되는지를 지시하는 정보는 플래그(flag)로 전송될 수도 있다.
PCM 모드로 복원된 블록에 인루프 필터가 적용될 수도 있다, 예컨대, PCM 모드로 복원된 블록에, 디블록킹 필터, SAO 및/또는 ALF가 적용될 수 있다.
한편, 방송 환경과 같이 CBR(Constant Bit-Rate)가 적용되는 환경에서 영상 코딩을 수행할 경우에는, 각 화면 혹은 각 화면을 구성하는 블록에 할당되는 양자화 간격을 양자화 파라미터(Quantization Parameter: QP)를 조정함에 의해 제어함으로써, 고정 비트율 전송이 가능하도록 비트율을 제어한다.
하지만, PCM 모드의 경우에는 샘플 값을 양자화 과정 없이 직접 코딩하므로, 양자화 간격을 제어할 수 없다. 따라서, PCM 모드가 적용되는 블록 또는 픽처에 대하여는 양자화 간격 제어 외의 다른 방법으로 비트율을 제어할 수 있다.
구체적으로, 본 발명에 따라서 PCM 모드를 적용하는 경우에는, PCM 모드를 적용할 블록에 대하여 인코딩 장치가 샘플 비트 깊이(bit depth)를 디코딩 장치로 시그널링할 수 있다.
또한, 본 발명에 따라서 PCM 모드를 적용하는 경우에는 현재 블록에 적용되는 PCM 모드의 정보, 예컨대 비트 깊이에 관한 정보의 일부 또는 전부가 디코딩 장치에서 예측되도록 할 수도 있다. 비트 깊이 정보의 일부 또는 전부를 디코딩 장치에서 예측함으로써 PCM 모드가 적용된 블록의 샘플(설명의 편의를 위해, 이하 ‘PCM 샘플’이라 함)의 비트 깊이에 관한 정보를 전송하는데 필요한 비트량을 줄일 수 있다.
또한, 일반적인 비트율 제어는 QP 값 제어를 통해 정보 전송 시에 발생하는 발생 비트량을 제어하므로, 본 발명에 따라서 PCM 모드를 적용하는 경우에 QP와 PCM 샘플의 비트 깊이를 매핑함으로써, PCM 모드가 적용된 블록에 대해서도 QP를 이용한 비트율 제어가 수행되도록 할 수도 있다. 이때, 인코딩 장치가 PCM 샘플당 비트 깊이 정보를 전송하여 디코딩 장치가 QP를 도출하는 매핑 관계를 이용할 수도 있고, 인코딩 장치가 QP를 전송하여 디코딩 장치가 PCM 샘플당 비트 깊이 값을 도출하는 매핑 관계를 이용할 수도 있다.
이하, 도면과 표를 참조하여 본 발명에 대하여 구체적으로 설명한다.
PCM 모드로 부호화된 블록의 비트량을 조절하기 위해서, 인코딩 장치는 PCM 샘플당 비트 깊이에 관한 정보를 포함하는 비트스트림을 디코딩 장치에 전송한다. 디코딩 장치는 수신한 비트스트림을 파싱하여 PCM 샘플당 비트 깊이에 관한 정보를 획득한다. 디코딩 장치는 상기 PCM 샘플당 비트 깊이를 기반으로 PCM 모드가 적용된 블록을 복원할 수 있다.
여기서, PCM 샘플당 비트 깊이는 PCM 모드로 인코딩/디코딩할 때 루마 신호(luma component) 및/또는 크로마 신호(chroma component)의 샘플 값을 몇 비트로 나타낼 것인지를 지시한다.
인코딩 장치는 PCM 샘플당 비트 깊이를 지시하기 위해, PCM 샘플당 비트 깊이의 기준값(이하, 설명의 편의를 위해 ‘PCM 샘플당 비트 깊이 기준값’이라 함)을 설정할 수 있다. 인코딩 장치는 현재 블록에 PCM 모드가 적용되는 경우에, 설정된 PCM 샘플당 비트 깊이의 기준값과 현재 블록에 대한 PCM 샘플당 비트 깊이의 차이값을 전송할 수 있다. 디코딩 장치는 PCM 샘플당 비트 깊이 기준값 및 상기 기준값과 현재 블록에 대한 PCM 샘플당 비트 깊이 간의 차이값(이하, 설명의 편의를 위해 ‘PCM 샘플당 비트 깊이 차이값’이라고 함)을 인코딩 장치로부터 수신할 수 있다. 디코딩 장치는 수신한 상기 PCM 샘플당 비트 깊이 기준값과 상기 차이값에 기반하여 PCM 모드가 적용된 블록을 복원할 수 있다.
본 명세서에서는 설명의 편의를 위해, 루마 신호에 대하여 적용되는 방법 및 장치를 설명하지만, 크로마 신호에 대하여도 동일한 방법 및 장치를 통해서 적용될 수 있다.
도 3은 본 발명에 따라서 인코딩 장치에서 수행되는 PCM 샘플에 대한 비트율 제어 동작의 일 예를 개략적으로 설명하는 플로우 차트이다.
도 3을 참조하면, 인코딩 장치는 PCM 모드에 대한 샘플당 비트 깊이 기준값을 결정한다(S310).
인코딩 장치는 PCM 모드가 적용되는 블록의 PCM 샘플당 비트 깊이 값을 결정한다(S320).
인코딩 장치는 PCM 샘플당 비트 깊이 값에 관한 정보를 시그널링한다(S330). PCM 샘플당 비트 깊이 값에 관한 정보는 PCM 샘플당 비트 깊이 기준값 및 PCM 샘플당 비트 깊이 차이값을 포함한다. 인코딩 장치는 PCM 샘플당 비트 정보를 PCM 모드가 적용되는 블록마다 직접 시그널링하는 대신, 시그널링되는 비트량을 줄이기 위해 슬라이스, 픽처, 시퀀스와 같은 상위 레벨의 헤더에서 PCM 샘플당 비트 깊이 기준값을 시그널링하고, 하위 레벨에서 PCM 샘플당 비트 깊이 차이값을 시그널링할 수 있다.
여기서는 설명의 편의를 위해 인코딩 장치가 비트량을 제어하는 것으로 설명하였으나, 본 발명은 이에 한정되지 않는다. 예컨대, 도 1에 도시된 인코딩 장치의 내부 구성 중 S310 단계는 양자화부에서 수행되고, S320 단계는 엔트로피 인코딩부에서 수행될 수도 있다.
한편, 상술한 바와 같이, PCM 모드를 적용하는 경우에 QP와 PCM 샘플의 비트 깊이를 매핑함으로써, PCM 모드가 적용된 블록에 대해서도 QP를 이용한 비트율 제어가 수행되도록 할 수도 있다.
도 4는 본 발명에 따라서 인코딩 장치에서 수행되는 PCM 샘플에 대한 비트율 제어 동작의 다른 예를 개략적으로 설명하는 플로우 차트이다. 도 4의 경우에는, QP와 PCM 샘플의 비트 깊이를 매핑하여 PCM 모드가 적용되는 블록에 대하여 비트량 제어가 수행된다.
도 4의 예에서는, 도 3의 경우와 달리 우선적으로 QP와 PCM 샘플당 비트 깊이 정보를 매핑한다(S410). 인코딩 장치는 후술하는 바와 같이 매핑 테이블 또는 매핑 계산식을 이용하여 PCM 샘플당 비트 깊이 정보와 QP를 매핑할 수 있다. 인코딩 장치는 현재 블록에 적용될 샘플당 비트 깊이에 대응하는 QP에 매핑되는 PCM 샘플당 깊이 정보를 결정할 수 있다.
이어서, 인코딩 장치는 도 3에서와 같이, PCM 모드에 대한 샘플당 비트 깊이 기준값을 결정한다(S420).
인코딩 장치는 PCM 모드가 적용되는 블록의 PCM 샘플당 비트 깊이 값을 결정한다(S430).
인코딩 장치는 PCM 샘플당 비트 깊이 값에 관한 정보를 시그널링한다(S440).
PCM 샘플당 비트 깊이 값에 관한 정보는 PCM 샘플당 비트 깊이 기준값 및 PCM 샘플당 비트 깊이 차이값을 포함한다. 인코딩 장치는 PCM 샘플당 비트 정보를 PCM 모드가 적용되는 블록마다 직접 시그널링하는 대신, 시그널링되는 비트량을 줄이기 위해 슬라이스, 픽처, 시퀀스와 같은 상위 레벨의 헤더에서 PCM 샘플당 비트 깊이 기준값을 시그널링하고, 하위 레벨에서 PCM 샘플당 비트 깊이 차이값을 시그널링할 수 있다.
도 4에서는 QP 에 대응하는 PCM 샘플당 비트 깊이 정보를 전송하여 현재 블록의 PCM 샘플당 비트 깊이 값을 제어하는 것을 설명하였으나, 반대로 PCM 샘플당 비트 깊이를 결정하고, 대응하는 QP 값을 전송하여 PCM 샘플당 비트 깊이 값을 제어하도록 할 수도 있다. 이 경우에 전송되는 QP 값은 PCM 샘플당 비트 깊이 값을 제어하는 외에도 역양자화, 필터링 등에 이용될 수 있다.
도 4의 예에서도 설명의 편의를 위해 인코딩 장치가 비트량을 제어하는 것으로 설명하였으나, 본 발명은 이에 한정되지 않는다. 예컨대, 도 1에 도시된 인코딩 장치의 내부 구성 중, S410 단계 및 S420 단계는 양자화부에서 수행될 수 있고, S430 단계는 엔트로피 인코딩부에서 수행될 수도 있다.
도 3 및 도 4의 예에서와 같이, 본 발명에서는 PCM 샘플당 깊이 차이값을 시그널링해서 PCM 모드에 대한 비트량을 제어할 수 있다.
도 5는 본 발명에 따라서 시그널링되는 PCM 모드에 대한 비트량 정보에 관하여 개략적으로 설명하는 도면이다.
도 5를 참조하면, 상위 레벨의 시퀀스 파라미터 셋(SPS) 또는 픽처 파라미터 셋(PPS)에서 PCM 샘플당 비트 깊이 기준값(510)이 전송된다.
하위 레벨에서는 실제 적용되는 PCM 샘플당 비트 깊이값이 결정되어 전소될 수 있다. 예컨대 슬라이스 헤더에서 PCM 샘플당 비트 깊이값(520)이 결정되거나, CU, PU, TU 와 같은 처리 유닛 레벨에서 PCM 샘플당 비트 깊이 값(530)이 결정될 수 있다.
이때, 현재 블록의 PCM 샘플당 비트 깊이값은 PCM 샘플당 비트 깊이 기준값과의 차이값 형태로 전송될 수 있다.
예컨대, 처리 유닛(CU, PU,TU 등)의 PCM 샘플당 비트 깊이값(530)을 시그널링하고자 하는 경우에는, PCM 샘플당 비트 깊이 기준값(510)과의 차이값(530)을 처리 유닛 레벨에서 시그널링할 수 있다.
또한, 슬라이스 헤더 레벨의 PCM 샘플당 비트 깊이 값(520)을 매개하여, 처리 유닛 레벨의 PCM 샘플당 비트 깊이 값(530)을 전송할 수도 있다. 예컨대, 슬라이스 헤더 레벨의 PCM 샘플당 비트 깊이 값(520)을 PCM 샘플당 비트 깊이 기준값(510)과의 차이값(540)을 전송하여 지시할 수 있다. 처리 유닛 레벨에서의 PCM 샘플당 비트 깊이 값(530)는 슬라이스 헤더 레벨의 PCM 샘플당 비트 깊이 값(520)과의 차이값(550)을 전송하여 지시할 수 있다. 이때, 인코딩 장치와 디코딩 장치가 슬라이스 헤더 레벨의 PCM 샘플당 비트 깊이 값만을 송수신하거나, 이용하도록 설정된 경우에는, 슬라이스 헤더 레벨의 PCM 샘플당 비트 깊이 값(520)과의 차이값(550)을 전송하지 않을 수도 있다.
표 1은 각 레벨에서 전송되는 PCM 샘플당 비트 깊이에 관한 신택스의 일 예이다.
<표 1>
Figure PCTKR2012004807-appb-I000001
표 1을 참조하면, SPS 또는 PPS에서는 PCM 샘플당 비트 깊이 기준값이 전송된다. SPS 또는 PPS에서 전송되는 PCM 샘플당 비트 깊이 기준값은 해당 시퀀스 또는 해당 픽처에 공통적으로 적용된다.
본 발명에서는 슬라이스 헤더에서 PCM 샘플당 비트 깊이 차이값이 전송될 수 있다. PCM 샘플당 비트 깊이 차이값은 PCM 샘플당 비트 깊이 기준값과 합쳐져서 실제 PCM 샘플당 비트 깊이 값을 나타낼 수 있다. 슬라이스 헤더에서 전송되는 PCM 샘플당 비트 깊이 차이값은 해당 슬라이스에 공통적으로 적용된다.
본 발명에서는 CU, PU, TU 등의 처리 유닛 레벨에서 PCM 샘플당 비트 깊이 차이값이 전송될 수도 있다. PCM 샘플당 비트 깊이 차이값은 PCM 샘플당 비트 깊이 기준값과 합쳐져서 실제 PCM 샘플당 비트 깊이 값을 나타낼 수 있다. 처리 유닛 레벨에서 전송되는 PCM 샘플당 비트 깊이 차이값은 해당 처리 유닛 레벨에 공통적으로 적용된다.
표 1에서는 루마 성분에 관해서만 설명하고 있으나, 상술한 바와 같이 본 발명은 크로마 성분에도 동일하게 적용될 수 있다. 따라서, 크로마 성분에 대하여 SPS 또는 PPS 레벨에서 전송되는 PCM 샘플당 비트 깊이 기준값은 pcm_bit_depth_chroma 또는 pcm_bit_depth_cr/pcm_bit_depth_cb가 될 수 있다. 슬라이스 헤더 혹은 처리 유닛 레벨에서 전송되는 PCM 샘플당 비트 깊이 차이값은 pcm_bit_depth_delta_chroma 또는 pcm_bit_depth_delta_cr/pcm_bit_depth_delta_cb 가 될 수 있다.
표 1과 같은 PCM 샘플당 비트 깊이 기준값을 시그널링할 때, 이미 인코딩된 샘플당 비트 깊이 정보를 이용하여 시그널링 비트 수를 줄일 수도 있다.
예컨대, SPS의 정보를 통해 샘플당 비트 깊이 값이 bit_depth_luma_minus8로 전송되는 경우를 가정하자. 이 경우에는, PCM 샘플당 비트 깊이 기준값을 표 1과 같이 직접 시그널링하는 대신, 아래 표 2와 같이 이미 시그널링된 샘플당 비트 깊이와의 차이값을 시그널링할 수도 있다.
<표 2>
Figure PCTKR2012004807-appb-I000002
PCM 샘플당 비트 깊이에 관한 정보는 대상 블록에 PCM 모드가 적용되는 경우에만 시그널링될 수 있다. 예를 들어, 인코딩 장치는 표 3의 예와 같이, 현재 블록의 예측 모드가 인트라 예측 모드로서 PCM 모드가 적용되는 경우에, PCM 샘플당 비트 깊이 기준값(pcm_bit_depth_luma, pcm_bit_depth_cr, pcm_bit_depth_cbluma)을 전송할 수 있다.
<표 3>
Figure PCTKR2012004807-appb-I000003
이때, PCM 샘플당 비트 깊이 값은 PCM 샘플당 비트 깊이 차이값(pcm_bit_depth_delta_luma, pcm_bit_depth_delta_cr, pcm_bit_depth_delta_cb)을 통해서 표 4의 예와 같이 전송될 수 있다.
<표 4>
Figure PCTKR2012004807-appb-I000004
한편, 상위 레벨의 PCM 샘플당 비트 깊이 정보와의 차이값을 전송하는 대신, 이미 PCM 모드로 인코딩된 주변 블록의 PCM 샘플당 비트 깊이값을 이용하여 현재 블록의 PCM 샘플당 비트 깊이 값을 예측 인코딩 할 수도 있다.
도 6은 본 발명에 따라서 현재 블록의 주변 블록들 중 PCM 모드로 인코딩/디코딩된 블록의 정보를 이용하여 현재 블록의 PCM 샘플당 비트 깊이 값을 예측하는 방법을 개략적으로 설명하는 도면이다.
도 6과 같이 CU, PU 또는 TU가 분할되었고, 이미 블록 P1, P2, P3이 PCM 모드로 인코딩/디코딩 되었다고 하자. 현재 블록 X 즉, 예측 대상 블록 또는 인코딩/디코딩 대상 블록에 PCM 모드가 적용되는 경우에, 현재 블록 X의 PCM 샘플당 비트 깊이를 블록 P1, P2, P3 중 적4어도 하나의 PCM 샘플당 비트 깊이 값을 이용하여 예측할 수 있다. 따라서, 인코딩 장치는 현재 블록에 대한 PCM 샘플당 비트 깊이 값과 상기 예측값의 차이값만을 시그널링할 수 있다. 디코딩 장치는 현재 블록에 대한 PCM 샘플당 비트 깊이 값과 상기 예측값의 차이값을 수신하고, 예측값에 상기 차이값을 더하여 현재 블록에 대한 PCM 샘플당 비트 깊이 값을 도출할 수 있다.
예컨대, 도 6에서 이미 PCM 모드로 코딩된 블록들 중에서 코딩 순서상 현재 블록과 가장 가까운 블록을 이용하여 현재 블록의 PCM 샘플당 비트 깊이를 예측할 수 있다. 따라서, 인코딩 장치에서는 이미 PCM 모드로 인코딩 되었고, 인코딩 순서상 현재 블록과 가장 가까운 블록을 이용하여 현재 블록의 PCM 샘플당 비트 깊이를 예측할 수 있고, 디코딩 장치에서는 이미 PCM 모드로 디코딩 되었고, 디코딩 순서상 현재 블록과 가장 가까운 블록을 이용하여 현재 블록의 PCM 샘플당 비트 깊이를 예측 할 수 있다.
구체적으로, 인코딩 또는 디코딩 순서가 LCU 단위로 래스터 스캔의 순서이며, LCU 내에서는 깊이 우선 스캔이라면, 도 6에서 현재 블록 X의 PCM 샘플당 비트 깊이 값은 P3 블록의 PCM 샘플당 비트 깊이를 기반으로 예측될 수 있다.
즉, P2 블록에 적용된 PCM 샘플당 비트 깊이 값을 현재 블록 X에 대한 PCM 샘플당 비트 깊이 예측 값으로 할 수 있다. 인코딩 장치는 P2 블록에 적용된 PCM 샘플당 비트 깊이 값과 현재 블록의 PCM 샘플당 비트 깊이 값의 차이를 시그널링 할 수 있다. 디코딩 장치는 P2 블록에 적용된 PCM 샘플당 깊이 값을 현재 블록의 PCM 샘플당 비트 깊이 예측 값으로 하고, 인코딩 장치로부터 수신한 PCM 샘플당 비트 깊이의 차이값을 더해서 현재 블록에 대한 PCM 샘플당 비트 깊이 값을 도출할 수 있다.
현재 픽처 혹은 현재 슬라이스에서 현재 블록이 최초로 PCM 모드에 의해 인코딩되거나 디코딩되는 경우(예컨대, 도 6의 P1 블록)에는, 이미 PCM 모드로 인코딩되거나 디코딩된 주변 블록이 없으므로, 앞서 설명한 바와 같이 상위 레벨의 PCM 관련 정보(PCM 샘플당 비트 깊이 기준 값, 슬라이스 헤더의 PCM 샘플당 비트 깊이 값 등)을 일종의 예측 값으로 이용할 수 있다.
PCM 모드가 적용되는 현재 블록의 PCM 샘플당 비트 깊이 값이 구해지면, 이 비트 깊이를 이용하여 현재 블록의 샘플 값을 복원할 수 있다.
PCM 샘플 값 복원은 PCM 샘플당 비트 수로 표현된 PCM 샘플 값들을 복원되어야할 샘플당 비트 수에 맞도록 변환하는 과정이다.
표 5는 PCM 샘플 값을 복원하는 방법의 일 예를 나타낸 것이다.
<표 5>
Figure PCTKR2012004807-appb-I000005
ReconstructedLumaBlock[x][y]는 현재 블록 위치(x, y)에서의 복원된 루마 신호 값을 나타낸다. 각 신호 값은 BitDepthLuma 만큼의 비트 수로 표현된다.
PCMSampleLuma[i]는 현재 블록의 래스터 스캔 순서상 i 번째 위치에서의 PCM 루마 샘플 값을 나타낸다. 각 샘플 값은 PCMBitDepthLuma 만큼의 비트 수로 표현된다. 현재 블록에 대한 PCMBitDepthLuma 값은 현재 블록의 각 PCM 루마 샘플 값을 나타내기 위해 이용되는 비트 수이다.
표 5와 같은 변환 과정은 인코딩 장치와 디코딩 장치에서 동일하게 수행될 수 있다. 다만, 인코딩 장치에서는 표 5의 변환 과정에 앞서, 현재 블록의 샘플 값을 PCM 샘플값으로 변환하여 인코딩하는 과정이 추가될 수 있다.
표 6은 현재 블록의 샘플 값들 PCM 샘플값으로 변환하여 인코딩하는 방법의 일 예를 나타낸 것이다.
<표 6>
Figure PCTKR2012004807-appb-I000006
표 6의 예에서는 루마 블록의 픽셀 값을 샘플당 비트 깊이 값과 PCM 샘플당 비트 깊이 값의 차로 쉬프트 하여 PCM 샘플 값으로 변환하는 것을 방법을 나타내고 있다.
표 7은 현재 블록의 샘플 값을 PCM 샘플값으로 변환하여 인코딩하는 방법의 다른 예를 나타낸 것이다.
<표 7>
Figure PCTKR2012004807-appb-I000007
표 7의 예에서는 루마 블록의 픽셀 값을 샘플당 비트 깊이 값과 PCM 샘플당 비트 깊이 값의 차로 쉬프트 할 때, 라운딩 값을 고려하여 PCM 샘플 값으로 변환하는 것을 방법을 나타내고 있다.
한편, 상술한 바와 같이, 인코딩 장치와 디코딩 장치는 QP와 PCM 샘플당 비트 깊이 정보를 매핑해서 샘플의 비트량을 제어하는 방법을 사용할 수도 있다.
일반적인 비트율 제어 방법에 의하면, QP 값을 제어함으로써 샘플의 발생 비트량을 제어한다. 따라서, QP와 PCM 샘플 비트 깊이 정보 사이의 매핑 관계를 도입하면, QP를 할당하고 시그널링함으로써 PCM 모드 블록에 대한 발생 비트량도 제어할 수 있다. 또한, PCM 샘플당 비트 깊이를 결정하고 대응하는 QP를 할당하여 해당 QP를 통해 PCM 샘플당 비트 깊이를 제어할 수도 있다.
QP와 PCM 샘플당 비트 깊이 사이의 매핑 관계는 매핑 테이블을 이용하여 정의할 수 있다.
표 8은 QP와 PCM 샘플당 비트 깊이와의 매핑 관계를 나타내는 매핑 테이블의 일 예이다.
<표 8>
Figure PCTKR2012004807-appb-I000008
표 8에 나타난 것과 같이, QP와 비트 깊이 사이의 매핑 관계는 1 대 1뿐만 아니라, 다수 대 1, 1 대 다수, 다수 대 다수일 수 있다. 주어진 QP에 대하여, 대응하는 PCM 샘플당 비트 깊이를 이용하고자 하는 경우에, 대응하는 PCM 샘플당 비트 깊이가 다수 존재한다면, 인코딩 장치는 어떤 PCM 샘플당 비트 깊이를 사용할 것인지를 추가적으로 시그널링할 수 있다. 혹은 주어진 PCM 샘플당 비트 깊이에 대응하는 QP를 이용하고자 하는 경우에, 대응하는 QP가 여러 개라면, 마찬가지로 인코딩 장치는 어떤 QP를 이용할 것인지를 추가로 시그널링 할 수도 있다.
QP와 PCM 샘플당 비트 깊이와의 매핑 관계는 매핑 테이블이 아닌 계산식을 이용하여 정의할 수도 있다.
수식 1은 QP와 PCM 샘플당 비트 깊이와의 매핑 관계를 나타내는 식의 일 예이다.
<수식 1>
PCMSampleBitDepth = MAX(8-Max(QP-13,0)/6, 3)
QP와 PCM 샘플당 비트 깊이 값 사이의 매핑 관계가 미리 설정되어 있는 경우에, 인코딩 장치는 PCM 샘플당 비트 깊이 값 또는 QP 값을 매번 시그널링할 필요가 없다. 디코딩 장치는 시그널링된 QP 값을 기반으로 PCM 샘플당 비트 깊이 값을 도출하거나 시그널링된 PCM 샘플당 비트 깊이 값을 기반으로 QP 값을 도출할 수 있다.
QP와 PCM 샘플당 비트 깊이 값 사이의 매핑 관계는 인코딩 장치와 디코딩 장치 사이에 미리 동일하게 설정되어 있을 수 있다.
혹은, 인코딩 장치가 QP와 PCM 샘플당 비트 깊이 값 사이의 매핑 관계를 설정하는데 필요한 정보, 예컨대, 매핑 테이블 또는 매핑 식의 파라미터들을 시퀀스 파라미터 셋, 픽처 파라미터 셋, 슬라이스 파라미터 셋 등을 통해서 별도로 전송할 수도 있다.
또한, QP와 PCM 샘플당 비트 깊이 값 사이의 매핑 관계가 설정된다고 할 때, QP 값을 이용하여 구한 PCM 샘플당 비트 깊이 값을 현재 블록에 대한 PCM 샘플당 비트 깊이 예측값으로 하고, 시퀀스 파라미터 셋, 픽처 파라미터 셋, 슬라이스 헤더, 혹은 처리 유닛 레벨에서, PCM 모드가 적용된 현재 블록의 PCM 샘플당 비트 깊이 값과 예측값의 차이 값만을 전송할 수도 있다.
도 7은 본 발명에 따른 디코딩 장치에서 PCM 모드가 적용된 블록을 복원하는 방법을 개략적으로 설명하는 플로우 차트이다.
도 7을 참조하면, 디코딩 장치는 인코딩 장치로부터 PCM 샘플당 비트 깊이 값에 관한 정보를 수신한다(S710).
디코딩 장치가 수신하는 PCM 샘플당 비트 깊이 값에 관한 정보는 PCM 샘플당 비트 깊이 기준값과 PCM 샘플당 비트 깊이 차이값을 포함한다. PCM 샘플당 비트 깊이 기준값은 SPS 또는 PPS를 통해 전송될 수 있다. PCM 샘플당 비트 깊이 차이값은 처리 유닛 레벨에서 혹은 슬라이스 헤더와 처리 유닛 레벨에서 각각 전송될 수 있다.
또한, 디코딩 장치가 수신하는 PCM 샘플당 비트 깊이 값에 관한 정보는 현재 블록의 PCM 샘플당 비트 깊이값과 현재 블록의 PCM 샘플당 비트 깊이 예측값과의 차이값일 수도 있다. 현재 블록의 PCM 샘플당 비트 깊이 예측값은 현재 블록의 주변 블록 중 먼저 PCM 모드로 디코딩된 블록의 PCM 샘플당 비트 깊이 값이다. 디코딩 장치는 수신한 차이값을 PCM 샘플당 비트 깊이 예측값과 더하여 현재 블록의 PCM 샘플당 비트 깊이값을 도출할 수 있다. 주변의 PCM 모드로 디코딩된 블록들 중 어느 블록의 PCM 샘플당 비트 깊이값을 예측값으로 사용할 것인지는 미리 설정되어 있을 수도 있고, 인코딩 장치로부터 시그널링될 수도 있다. 예컨대, 현재 픽처 또는 현재 슬라이스에서 가장 먼저 PCM 모드로 디코딩된 블록의 PCM 샘플당 비트 깊이값을 PCM 모드가 적용되는 현재 블록의 PCM 샘플당 비트 깊이 예측 값으로 사용할 수 있다. 혹은, 현재 픽처 또는 현재 슬라이스에서 가장 먼저 PCM 모드로 디코딩된 블록들 중 스캐닝 순서상 혹은 디코딩 순서상 현재 블록에 가장 가까운 블록의 PCM 샘플당 비트 깊이값을 PCM 모드가 적용되는 현재 블록의 PCM 샘플당 비트 깊이 예측 값으로 사용할 수도 있다.
또한, 디코딩 장치가 수신하는 PCM 샘플당 비트 깊이 값은 현재 블록에 대한 PCM 샘플당 비트 깊이에 매핑되는 QP 값을 포함할 수도 있다.
디코딩 장치는 현재 블록의 PCM 샘플당 비트 깊이 값을 결정할 수 있다(S720). 디코딩 장치는 상술한 바와 같이 수신한 정보들을 기반으로 현재 블록의 PCM 샘플당 비트 깊이를 결정할 수 있다.
예컨대, PCM 샘플당 비트 깊이 기준값과 PCM 샘플당 비트 깊이 차이값을 수신한 경우에, 디코딩 장치는, PCM 샘플당 비트 깊이 기준값과 PCM 샘플당 비트 깊이 차이값을 더해서, 현재 블록에 대한 PCM 샘플당 비트 깊이를 도출할 수 있다.
현재 블록의 PCM 샘플당 비트 깊이값과 현재 블록의 PCM 샘플당 비트 깊이 예측값과의 차이값을 수신한 경우에, 디코딩 장치는 현재 블록의 PCM 샘플당 비트 깊이값과 현재 블록의 PCM 샘플당 비트 깊이 예측값과의 차이값을 더하여 현재 블록에 대한 PCM 샘플당 비트 깊이를 도출할 수 있다.
현재 블록에 대한 PCM 샘플당 비트 깊이에 매핑되는 QP 값을 수신한 경우에, 디코딩 장치는 수신한 QP 값에 기반해서 현재 블록의 PCM 샘플당 비트 깊이를 도출할 수 있다.
디코딩 장치는 현재 블록의 PCM 샘플당 비트 깊이를 기반으로 현재 블록을 복원할 수 있다(S730). PCM 샘플값을 현재 블록의 샘플 값으로 변환하는 방법으로서, 표 6 또는 표 7의 예에서 사용된 변환의 역변환을 이용할 수 있다.
도 7의 예에서는 설명의 편의를 위해, 각 단계를 디코딩 장치가 수행하는 것으로 설명하였으나, 본 발명은 이에 한정되지 않는다. 도 7의 각 단계는, 예컨대 도 2에 도시된 디코딩 장치의 내부 구성 유닛들에 의해 수행될 수도 있다. 예를 들어, PCM 모드가 적용된 경우에 S710 단계 및 S720 단계는 엔트로피 디코딩부에서 수행될 수 있고, S730 단계는 역양자화부에서 수행될 수도 있다.

본 명세서에서 어떤 정보를 시그널링 한다는 것은 인코딩 장치에서 해당 정보를 비트스트림에 삽입하여 디코딩 장치에서 알 수 있도록 한다는 것을 의미하며, 디코딩 장치에서는 비트스트림을 파싱하여 정보를 얻어낸다는 것을 의미한다.
또한, 상술한 예시적인 시스템에서, 방법들은 일련의 단계 또는 블록으로써 순서도를 기초로 설명되고 있지만, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 상술한 실시예들은 다양한 양태의 예시들을 포함한다. 예컨대, 각 실시예의 조합 역시 본 발명의 일 실시예로서 이해되어야 할 것이다.

Claims (16)

  1. PCM(Pulse Coding Modulation)이 적용되는 현재 블록에 대하여 PCM 샘플당 비트 깊이 값을 결정하는 단계; 및
    PCM 샘플당 비트 깊이에 관한 정보를 시그널링하는 단계를 포함하며,
    상기 PCM 샘플당 비트 깊이에 관한 정보는,
    상기 현재 블록에 대한 PCM 샘플당 비트 깊이의 기준값에 대한 차이값을 포함하는 것을 특징으로 하는 비디오 인코딩 방법.
  2. 제1항에 있어서,
    상기 기준값은 상위 레벨 신택스를 통해 전송되는 PCM 샘플당 비트 깊이 기준값인 것을 특징으로 하는 비디오 인코딩 방법.
  3. 제2항에 있어서, 상기 시그널링 단계에서는,
    상기 PCM 샘플당 비트 깊이 기준값을 시퀀스 파라미터 셋 또는 픽처 파라미터 셋을 통해서 전송하는 것을 특징으로 하는 비디오 인코딩 방법.
  4. 제2항에 있어서, 상기 시그널링 단계에서는,
    상기 차이값을 슬라이스 헤더 레벨 또는 처리 유닛 레벨에서 전송하는 것을 특징으로 하는 비디오 인코딩 방법.
  5. 제1항에 있어서,
    상기 기준값은 상기 현재 블록의 주변 블록들 중에서 PCM 모드가 적용된 블록의 PCM 샘플당 비트 깊이인 것을 특징으로 하는 비디오 인코딩 방법.
  6. 제5항에 있어서, 상기 기준값은,
    PCM 모드가 적용된 블록들 중에서, 상기 현재 블록이 속하는 슬라이스 또는 픽처의 첫 번째 블록의 PCM 샘플당 비트 깊이인 것을 특징으로 하는 비디오 인코딩 방법.
  7. 제5항에 있어서, 상기 기준값은
    PCM 모드가 적용된 블록들 중에서, 스캔 순서 또는 인코딩 순서상 현재 블록에 가장 가까운 블록의 PCM 샘플당 비트 깊이인 것을 특징으로 하는 비디오 인코딩 방법.
  8. PCM(Pulse Coding Modulation)이 적용되는 현재 블록에 대하여 PCM 샘플당 비트 깊이 값을 결정하는 단계; 및
    PCM 샘플당 비트 깊이에 관한 정보를 시그널링하는 단계를 포함하며,
    상기 PCM 샘플당 비트 깊이에 관한 정보는,
    상기 현재 블록에 대한 PCM 샘플당 비트 깊이에 매핑되는 QP(Quantization parameter)를 포함하는 것을 특징으로 하는 비디오 인코딩 방법.
  9. PCM(Pulse Coding Modulation)이 적용되는 현재 블록에 대한 PCM 샘플당 비트 깊이 정보를 수신하는 단계; 및
    상기 현재 블록에 대한 PCM 샘플당 비트 깊이 정보를 기반으로 현재 블록을 복원하는 단계를 포함하며,
    상기 현재 블록에 대한 PCM 샘플당 비트 깊이 정보는,
    상기 현재 블록에 대한 PCM 샘플당 비트 깊이의 기준값에 대한 차이값을 포함하는 것을 특징으로 하는 비디오 디코딩 방법.
  10. 제9항에 있어서, 상기 기준값은
    상위 레벨 신택스를 통해 전송된 PCM 샘플당 비트 깊이 기준값인 것을 특징으로 하는 비디오 디코딩 방법.
  11. 제10항에 있어서, 상기 PCM 샘플당 비트 깊이 기준값은 시퀀스 파라미터 셋 또는 픽처 파라미터 셋을 통해서 전송된 것을 특징으로 하는 비디오 디코딩 방법.
  12. 제10항에 있어서, 상기 차이값은 슬라이스 헤더 레벨 또는 처리 유닛 레벨에서 전송되는 것을 특징으로 하는 비디오 디코딩 방법.
  13. 제9항에 있어서, 상기 기준값은
    상기 현재 블록의 주변 블록들 중에서 PCM 모드가 적용된 블록의 PCM 샘플당 비트 깊이인 것을 특징으로 하는 비디오 디코딩 방법.
  14. 제13항에 있어서, 상기 기준값은,
    PCM 모드가 적용된 블록들 중에서, 상기 현재 블록이 속하는 슬라이스 또는 픽처의 첫 번째 블록의 PCM 샘플당 비트 깊이인 것을 특징으로 하는 비디오 디코딩 방법.
  15. 제13항에 있어서, 상기 기준값은
    PCM 모드가 적용된 블록들 중에서, 스캔 순서 또는 디코딩 순서상 현재 블록에 가장 가까운 블록의 PCM 샘플당 비트 깊이인 것을 특징으로 하는 비디오 인코딩 방법.
  16. PCM(Pulse Coding Modulation)이 적용되는 현재 블록에 대한 PCM 샘플당 비트 깊이 정보를 수신하는 단계; 및
    상기 현재 블록에 대한 PCM 샘플당 비트 깊이 정보를 기반으로 현재 블록을 복원하는 단계를 포함하며,
    상기 현재 블록에 대한 PCM 샘플당 비트 깊이 정보는,
    상기 현재 블록에 대한 PCM 샘플당 비트 깊이에 매핑되는 QP(Quantization parameter)를 포함하는 것을 특징으로 하는 비디오 디코딩 방법.
PCT/KR2012/004807 2011-06-17 2012-06-18 비디오 인코딩 및 디코딩 방법과 이를 이용한 장치 Ceased WO2012173449A2 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2011-0059293 2011-06-17
KR20110059293 2011-06-17
KR1020120065076A KR101998756B1 (ko) 2011-06-17 2012-06-18 비디오 인코딩 및 디코딩 방법과 이를 이용한 장치
KR10-2012-0065076 2012-06-18

Publications (2)

Publication Number Publication Date
WO2012173449A2 true WO2012173449A2 (ko) 2012-12-20
WO2012173449A3 WO2012173449A3 (ko) 2013-04-04

Family

ID=47357639

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2012/004807 Ceased WO2012173449A2 (ko) 2011-06-17 2012-06-18 비디오 인코딩 및 디코딩 방법과 이를 이용한 장치

Country Status (1)

Country Link
WO (1) WO2012173449A2 (ko)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100695158B1 (ko) * 2005-08-03 2007-03-14 삼성전자주식회사 영상 부호화장치 및 방법과 그 복호화장치 및 방법
US8432968B2 (en) * 2007-10-15 2013-04-30 Qualcomm Incorporated Scalable video coding techniques for scalable bitdepths
KR101664125B1 (ko) * 2009-09-22 2016-10-10 삼성전자주식회사 랜덤 액세스 가능한 영상 인코딩 시스템 및 방법

Also Published As

Publication number Publication date
WO2012173449A3 (ko) 2013-04-04

Similar Documents

Publication Publication Date Title
JP7735353B2 (ja) 映像復号化方法、映像符号化方法および記録媒体
KR101894971B1 (ko) 색차 성분 양자화 매개 변수 결정 방법 및 이러한 방법을 사용하는 장치
EP4024865A1 (en) Methods and apparatus for determining quantization parameter predictors from a plurality of neighboring quantization parameters
US20070189626A1 (en) Video encoding/decoding method and apparatus
KR20150141177A (ko) 인트라 예측 모드 부호화/복호화 방법 및 장치
KR20140010185A (ko) 합성 비디오에서의 무손실 코딩 및 관련 시그널링 방법
WO2013048033A1 (ko) 인트라 예측 모드 부호화/복호화 방법 및 장치
KR102110230B1 (ko) 비디오 인코딩 및 디코딩 방법과 이를 이용한 장치
CN115442608A (zh) 图像编码/解码方法及发送数据的方法
KR102020953B1 (ko) 카메라 영상의 복호화 정보 기반 영상 재 부호화 방법 및 이를 이용한 영상 재부호화 시스템
WO2012173449A2 (ko) 비디오 인코딩 및 디코딩 방법과 이를 이용한 장치
KR20140004018A (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: 12800803

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12800803

Country of ref document: EP

Kind code of ref document: A2