WO2014084671A2 - 트랜스폼을 이용한 영상 부호화/복호화 방법 및 장치 - Google Patents

트랜스폼을 이용한 영상 부호화/복호화 방법 및 장치 Download PDF

Info

Publication number
WO2014084671A2
WO2014084671A2 PCT/KR2013/011020 KR2013011020W WO2014084671A2 WO 2014084671 A2 WO2014084671 A2 WO 2014084671A2 KR 2013011020 W KR2013011020 W KR 2013011020W WO 2014084671 A2 WO2014084671 A2 WO 2014084671A2
Authority
WO
WIPO (PCT)
Prior art keywords
quantization
transform
scanning
residual signal
encoding
Prior art date
Application number
PCT/KR2013/011020
Other languages
English (en)
French (fr)
Other versions
WO2014084671A3 (ko
Inventor
곽재희
권령희
이영렬
홍성욱
고재현
유영환
Original Assignee
인텔렉추얼 디스커버리 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인텔렉추얼 디스커버리 주식회사 filed Critical 인텔렉추얼 디스커버리 주식회사
Priority to KR1020157018918A priority Critical patent/KR20150105348A/ko
Publication of WO2014084671A2 publication Critical patent/WO2014084671A2/ko
Publication of WO2014084671A3 publication Critical patent/WO2014084671A3/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/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/18Methods 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 a set of transform coefficients
    • 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/124Quantisation
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • 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

Definitions

  • the present invention relates to a method and apparatus for image encoding / decoding, and more particularly, to a method for performing transformation using a transform having +1 and -1 during encoding and decoding.
  • a residual signal is generated using intra prediction and inter prediction.
  • the reason for obtaining the residual signal is that when coding with the residual signal, the amount of data is small and the data compression ratio is high, and the better the prediction, the smaller the value of the residual signal.
  • the intra prediction method predicts data of the current block by using pixels around the current block.
  • the difference between the actual value and the predicted value is called the residual signal block.
  • the intra prediction method is increased from 35 prediction modes as shown in FIG. 1 to 9 prediction modes used in the existing H.264 / AVC to further refine the prediction (however, the planar prediction mode and the DC prediction mode are shown in FIG. Invisible from 1).
  • the most similar block is found by comparing the current block with blocks in neighboring pictures.
  • the position information (Vx, Vy) of the found block is called a motion vector.
  • the difference between pixel values in a block between the current block and the prediction block predicted by the motion vector is called a residual signal block (motion-compensated residual block).
  • intra prediction and inter prediction are further subdivided to reduce the amount of data of the residual signal, and a video encoding and decoding method having a small amount of computation is required without degrading codec performance by using an efficient transform.
  • An embodiment of the present invention provides a video encoding and decoding method having a good performance with a small operation amount in a transform coding process of a video codec, and an apparatus therefor.
  • an image encoding method comprises the steps of: transforming the residual signal to a transform coefficient by applying a Hadamard transform to the residual signal; Quantizing the transform coefficients; Scanning the quantized transform coefficients; And performing entropy coding on the scanned transform coefficients, wherein the quantization step applies a different quantization level by dividing a residual signal block into a plurality of portions according to a scanning order.
  • An image encoding apparatus a transform unit for applying a Hadamard transform to the residual signal to configure the transform coefficients; A quantizer for quantizing the transform coefficients; A scanning unit scanning the quantized transform coefficients; And an entropy coding unit for performing entropy coding on the scanned transform coefficients, wherein the quantization unit divides the residual signal block into a plurality of parts according to a scanning order and applies different quantization levels.
  • the image decoding method comprises the steps of: performing inverse scanning on the video signal to be decoded to construct a quantized residual signal block; Performing inverse quantization on the quantized residual signal block; And performing inverse transform using Hadamard transform on the dequantized residual signal block, wherein the inverse quantization step divides the residual signal block into a plurality of parts according to quantization information transmitted from an encoding apparatus. Apply different levels of quantization.
  • an image decoding apparatus includes an inverse scanning unit configured to perform inverse scanning on a video signal to be decoded to configure a quantized residual signal block; An inverse quantization unit performing inverse quantization on the quantized residual signal block; And an inverse transform unit configured to perform inverse transform using a Hadamard transform on the inversed quantized residual signal block, wherein the inverse quantization unit divides the residual signal block into a plurality of parts according to quantization information transmitted from an encoding apparatus. Apply different levels of quantization.
  • the image encoding and decoding method may be implemented as a computer readable recording medium having recorded thereon a program for execution by a computer.
  • a video encoding and decoding method having a good performance with a small amount of computation in a transform coding process of a video codec, and an apparatus therefor can be provided.
  • the video encoding efficiency can be further improved, and the coding efficiency can be improved by dividing the quantization into a plurality of sections in the scanning order.
  • 1 is a diagram illustrating examples for intra prediction modes.
  • FIG. 2 is a block diagram illustrating a configuration of an encoding apparatus according to an embodiment of the present invention.
  • FIG 3 is a view for explaining a first embodiment of a scanning method suitable for transforms according to the present invention.
  • FIG. 4 is a view for explaining a second embodiment of a scanning method suitable for transforms according to the present invention.
  • FIG. 5 is a view for explaining a third embodiment of a scanning method suitable for a transform according to the present invention.
  • FIG. 6 is a view for explaining a fourth embodiment of a scanning method suitable for a transform according to the present invention.
  • FIG. 7 is a view for explaining an embodiment of a quantization method suitable for transforms according to the present invention.
  • the term “combination of these” included in the expression of the makushi form means one or more mixtures or combinations selected from the group consisting of the constituents described in the expression of the makushi form, wherein the constituents It means to include one or more selected from the group consisting of.
  • MPEG Moving Picture Experts Group
  • VCEG Video Coding Experts Group
  • Encoding may be performed by using high efficiency video coding (HEVC).
  • HEVC high efficiency video coding
  • the image encoding and decoding method according to an embodiment of the present invention may apply a transform having a kernel of +1 and -1 to a residual block.
  • the present invention relates to a scanning method applied when a Hadamard transform is used in using a transform method, which is a technique applied to video encoding / decoding.
  • the scanning order and method are applied differently according to the characteristics of the Hadamard transform, and this is predicted by using the information that can be obtained from the surroundings such as the signaling method and the surrounding mode information of the decoder / decoder. It can include all methods that can be decoded without signaling.
  • another embodiment of the present invention relates to a video encoding and decoding method using a Hadamard Transform having kernels of +1 and -1 and performing N-level quantization, and an apparatus therefor.
  • interpolation is performed using a DCT-IF (DCT-based interpolation filter) when interpolating subsample values for a chrominance signal.
  • DCT-IF DCT-based interpolation filter
  • the reason is that motion prediction using sub-integer pixel sub-integer 8-point FIR filter in sub-integer pixel rather than integer pixel motion prediction compensation for Luma block to reduce residual signal further. Compensation is performed (for chroma blocks, motion prediction compensation is performed using a 4-point FIR filter in 1/8 pixel units in the YUV 4: 2: 0 color format).
  • 1/8 or 1/16 interpolation can be used for Luma for more sophisticated motion prediction and compensation.
  • the video encoding and decoding method uses a transform having kernels of + 1 / -1 rather than using an integer transform using DCT or DST. .
  • the kernels are configured with + 1 / -1, the operation amount is reduced compared to other kernels.
  • Hadamard transforms are matrices of +1 and -1. Hadamard transform is configured as shown in Equation 1 below.
  • Equation 1 refers to one-dimensional forward Hadamard transform and inverse Hadamard transform. Since the Hadamard transform is a separable transform, a two-dimensional transform can be easily implemented by applying a one-dimensional transform horizontally and then vertically (or horizontally after vertical application).
  • N 4, 8 in Equation 2
  • N 4x4 residual block and 8x8 residual block
  • FIG. 2 is a block diagram illustrating a configuration of an image encoding apparatus according to an embodiment of the present invention.
  • the encoding apparatus includes an encoding process and a decoding process
  • the decoding apparatus includes a decoding process.
  • the decoding process of the decoding apparatus is the same as the decoding process of the encoding apparatus. Therefore, the following description focuses on the encoding apparatus.
  • an image encoding apparatus includes coding units and structures, inter prediction, intra prediction, interpolation, filtering, and transformation. It includes a variety of new algorithms, including
  • the apparatus for encoding an image may include an encoding mode determiner 110, an intra predictor 120, a motion compensator 130, a motion estimator 131, a transform encoder / quantizer 140, and an entropy encoding.
  • the unit 150 includes an inverse quantization / conversion decoder 160, a deblocking filtering unit 170, a picture storage unit 180, a subtraction unit 190, and an adder 200.
  • the encoding mode determiner 110 analyzes the input video signal, divides the picture into coding blocks having a predetermined size, and determines an encoding mode for the divided coding blocks having a predetermined size.
  • the encoding mode includes intra prediction encoding and inter prediction encoding.
  • the picture is composed of a plurality of slices, and the slice is composed of a plurality of largest coding units (LCUs).
  • the LCU may be divided into a plurality of coding units (CUs), and the encoder may add information (flag) indicating whether to divide the bitstream.
  • the decoder can recognize the location of the LCU using the address LcuAddr.
  • the coding unit (CU) in the case where splitting is not allowed is regarded as a prediction unit (PU), and the decoder may recognize the location of the PU using a PU index.
  • the prediction unit PU may be divided into a plurality of partitions.
  • the prediction unit PU may include a plurality of transform units (TUs).
  • the encoding mode determiner 110 transmits the image data to the subtractor 190 in a block unit (for example, PU unit or TU unit) of a predetermined size according to the determined encoding mode.
  • a block unit for example, PU unit or TU unit
  • the transform encoding / quantization unit 140 converts the residual block calculated by the subtraction unit 190 from the spatial domain to the frequency domain. For example, two-dimensional discrete cosine transform (DCT) or discrete sine transform (DST) based transforms are performed on the residual block.
  • DCT discrete cosine transform
  • DST discrete sine transform
  • the transform encoding / quantization unit 140 determines a quantization step size for quantizing the transform coefficient, and quantizes the transform coefficient using the determined quantization step size.
  • the quantization matrix may be determined according to the determined quantization step size and the encoding mode.
  • the quantized two-dimensional transform coefficients are transformed into one-dimensional quantized transform coefficients by one of a predetermined scanning method.
  • the transformed sequence of one-dimensional quantized transform coefficients is supplied to the entropy encoder 150.
  • the inverse quantization / transform decoding unit 160 inverse quantizes the quantization coefficients quantized by the transform encoding / quantization unit 140. Furthermore, the inverse quantization coefficient obtained by inverse quantization is inversely transformed. Accordingly, the residual block transformed into the frequency domain may be restored to the residual block in the spatial domain.
  • the deblocking filtering unit 170 receives inverse quantized and inversely transformed image data from the inverse quantization / conversion encoder 160 and performs filtering to remove a blocking effect.
  • the picture storage unit 180 receives the filtered image data from the deblocking filtering unit 170 and restores and stores the image in picture units.
  • the picture may be an image in a frame unit or an image in a field unit.
  • the picture storage unit 180 includes a buffer (not shown) that can store a plurality of pictures. A number of pictures stored in the buffer are provided for intra prediction and motion estimation.
  • the pictures provided for intra prediction or motion estimation are called reference pictures.
  • the motion estimation unit 131 receives at least one reference picture stored in the picture storage unit 180 and performs motion estimation to output motion data including a motion vector, an index indicating a reference picture, and a block mode. do.
  • the motion vector is determined with fractional pixel precision, for example 1/2 or 1/4 pixel precision. Since the motion vector may have fractional pixel precision, the motion compensation unit 130 applies an interpolation filter for calculating the pixel value of the fractional pixel position to the reference picture, whereby the pixel value of the fractional pixel position from the pixel value of the integer pixel position. To calculate.
  • the motion compensator 130 corresponds to a block to be encoded from a reference picture used for motion estimation among a plurality of reference pictures stored in the picture storage unit 180 according to the motion data input from the motion estimator 131.
  • the prediction block is extracted and output.
  • the motion compensator 130 determines the filter characteristics of the adaptive interpolation filter required for the motion compensation with decimal precision.
  • the filter characteristics are, for example, information indicating the filter type of the adaptive interpolation filter, information indicating the size of the adaptive interpolation filter, and the like.
  • the size of the filter is, for example, the number of taps that is the number of filter coefficients of the adaptive interpolation filter.
  • the motion compensator 130 may determine one of a split type and a non split type adaptive filter as the adaptive interpolation filter. The determined number of taps of the adaptive interpolation filter, and the value of each filter coefficient are then determined. The value of the filter coefficient may be determined differently for each position of the decimal pixel relative to the integer pixel.
  • the motion compensation unit 130 may use a plurality of non-adaptive interpolation filters having a fixed filter coefficient.
  • the motion compensator 130 may set the characteristics of the interpolation filter in a predetermined processing unit. For example, it can be set in a decimal pixel unit, a coding basic unit (encoding unit), a slice unit, a picture unit, or a sequence unit. In addition, one characteristic may be set for one video data.
  • the motion compensator 130 since the same filter characteristic is used in the predetermined processing unit, the motion compensator 130 includes a memory for temporarily holding the filter characteristic. This memory retains filter characteristics, filter coefficients, and the like as necessary. For example, the motion compensator 130 may determine filter characteristics for each I picture and determine filter coefficients in units of slices.
  • the motion compensator 130 receives the reference picture from the picture storage unit 180 and applies a filter process using the determined adaptive interpolation filter to generate a predictive reference image with a small precision.
  • the prediction block is generated by performing motion compensation with decimal pixel precision based on the generated reference image and the motion vector determined by the motion estimation unit 131.
  • the subtractor 190 receives a block in a reference picture corresponding to the input block from the motion compensator 130 and performs a difference operation with the input macroblock when the input block to be encoded is predictively encoded between the pictures. Output the (residue signal).
  • the intra predictor 120 performs intra prediction encoding by using the reconstructed pixel value inside the picture on which the prediction is performed.
  • the intra prediction unit receives the current block to be predictively encoded and selects one of a plurality of preset intra prediction modes according to the size of the current block to perform intra prediction.
  • the intra predictor 120 determines an intra prediction mode of the current block by using previously encoded pixels adjacent to the current block, and generates a prediction block corresponding to the determined mode.
  • the previously encoded region of the region included in the current picture is decoded again for use by the intra prediction unit 120 and stored in the picture storage unit 180.
  • the intra predictor 120 generates a prediction block of the current block by using pixels adjacent to the current block or non-adjacent but applicable pixels in a previously encoded region of the current picture stored in the picture storage unit 180.
  • the intra predictor 120 may adaptively filter adjacent pixels to predict an intra block.
  • the encoder may transmit information indicating whether to filter.
  • filtering may be determined based on the intra prediction mode of the current block and the size information of the current block.
  • the prediction type used by the image encoding apparatus depends on whether the input block is encoded in the intra mode or the inter mode by the encoding mode determiner.
  • the switching between the intra mode and the inter mode is controlled by the intra / inter switch.
  • the entropy encoder 150 entropy encodes the quantized coefficient quantized by the transform encoder / quantizer 140 and the motion information generated by the motion estimator 131.
  • intra prediction mode, control data eg, quantization step size, etc.
  • the filter coefficients determined by the motion compensator 130 are also encoded and output as a bit stream.
  • the encoding apparatus uses + 1 / -1 instead of an integer 8x8 DCT, 16x16 DCT, 32x32 DCT, or 4x4 DST used in a transform process of an existing HEVC encoder. It is constructed using the proposed transform with 4x4, 8x8, 16x16, 32x32 kernels configured.
  • the proposed transform when used in any video encoder, the proposed inverse transform is applied to the decoding process.
  • the configuration of the image decoding apparatus may be derived from the configuration of the image encoding apparatus illustrated in FIG. 2, for example, the inverse of the encoding process as described with reference to FIG. 2. By performing the process, the image can be decoded.
  • An embodiment of the present invention relates to a scanning method applied when a Hadamard transform is used in using a transform method, which is a technique applied to video encoding / decoding.
  • the scanning order and method are applied differently according to the characteristics of the Hadamard transform, and this is predicted by using the information that can be obtained from the surroundings such as the signaling method and the surrounding mode information of the decoder / decoder. This includes all methods that can be decoded without signaling.
  • the coefficient to which the Hadamard transform is applied is quantized to generate a bitstream through entropy coding according to a scanning method.
  • the scanning method using the Hadamard transform can be performed as the following example.
  • FIG. 3 is a view illustrating a first embodiment of a scanning method suitable for a transform according to the present invention, and shows an example of a scanning method for an 8x8 block. This can be applied to all of the various block sizes.
  • the scanning method goes from the upper left to the lower right, the scanning method goes from the lower right to the upper left, and scanning is applicable to various methods according to the mode information.
  • the above four scanning methods are simple examples, and various scanning methods may be equally applied to encoding and decoding.
  • Hadamard transform uses a kernel composed of 1, -1. The amount of calculation can be reduced.
  • the Hadamard transform may have similar characteristics, such as integer DCT and DST, and are divided into DC and AC accordingly.
  • the reason for using the Hadamard transform is that the predicted value is very small. This eliminates multiplication and uses a transform with improved performance.
  • the optimal scanning method should be selected by varying the scanning method applied in entropy coding through various scanning methods.
  • vertical scanning may be applied in a horizontal prediction related mode, horizontal scanning in a vertical prediction related mode, and the best scanning method may be determined in terms of rate-distortion, and information about the scanning method may be signaled to a decoder. have.
  • FIG. 4 shows an example of a method of scanning the inside of a block of 8x8 units divided into four scanning methods.
  • This method also includes both methods of signaling to a decoder / decoder to transmit a form, or scanning to a promised form using surrounding information.
  • FIG. 5 is a view for explaining an embodiment of a method of scanning an inside of a block of 8x8 units into four sub-blocks, and when a coefficient exists at a position as shown in FIG. This is an example of 4x4 scanning that can improve performance by dividing the block into four.
  • the distribution points in FIG. 5 indicate positions where coefficients that have been transformed and quantized exist. In this way, when coefficients exist in various places from the upper left, the entropy coding is performed by performing a scanning method by dividing. It can bring a performance improvement.
  • FIG. 6 shows a case in which all coefficients are distributed in the upper left corner.
  • the scanning is performed at 8x8 size of the entire block without dividing the block, the performance improvement is high or the performance is better than the dividing method. Includes all optional methods.
  • the present invention refers to a method of improving performance through a scanning method that does not divide or divide according to the distribution of coefficients.
  • the present invention relates to a scanning method applicable when the Hadamard transform is used.
  • all scanning methods refer to a method of transmitting information to a decoder / decoder through signaling, and a surrounding encoding environment (mode without signaling). Information, MV information, and the like).
  • Transform coefficients generally tend to have larger values in the upper left corner and smaller values in the remaining coefficients.
  • Scanning includes Diagonal Scanning, Horizontal Scanning and Vertical Scanning. All three methods first scan the upper left corner with large transform coefficients.
  • the quantization is divided into three sections in the scanning order as follows, the encoding compression ratio may be increased.
  • N-level quantization and N-value indicating how many sections are quantized are signaled by the decoder.
  • the transform coefficients marked in white are the weakest portions of the quantization.
  • the transform coefficients, denoted by bold hatches, are the parts that make the quantization stronger than the white transform coefficients.
  • the transform coefficients, denoted by thin hatches, are the strongest quantization parts. The lower part of the scanning order is quantized weakly and the higher part of the scanning order is quantized strongly.
  • scanning first scans the portion with the largest quantized transform coefficient.
  • the 8x8 block is divided into four and used when the scanning method is performed. For example, the vicinity of the white conversion coefficient is first scanned, the vicinity of the conversion coefficient indicated by a thin hatched line, and the portion of the conversion coefficient indicated by a thin hatched line is scanned.
  • the quantization method as shown in the upper side of FIG. 7 may be used.
  • the quantization method as shown in the center of FIG. 7 may be applied when using the horizontal scanning method as shown in the lower right of FIG. 4.
  • quantization method as shown in the lower side of FIG. 7 may be applied when using the longitudinal scanning method as shown in the lower left of FIG. 4.
  • N-level quantization is not used. That is, all transform coefficients in the block are quantized to the same size. If the flag is 1, N-level quantization is performed.
  • the number N of intervals divided based on quantization is transmitted to the decoder.
  • the number N of quantization intervals is determined based on the rate-distortion value, and the decoder side receives N and performs N-level quantization.
  • the method according to the present invention described above may be stored in a computer-readable recording medium that is produced as a program for execution on a computer, and examples of the computer-readable recording medium include ROM, RAM, CD-ROM, magnetic tape , Floppy disks, optical data storage devices, and the like, and also include those implemented in the form of carrier waves (eg, transmission over the Internet).
  • the computer readable recording medium can be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
  • functional programs, codes, and code segments for implementing the method can be easily inferred by programmers in the art to which the present invention belongs.

Abstract

본 발명의 영상을 부호화/복호화하는 방법 및 장치에 관한 것으로, 그 부호화 방법은 잔차 신호에 대해 하다마드 트랜스폼(hadamard transform)을 적용하여 변환 계수로 변환하는 단계; 변환 계수를 양자화하는 단계; 양자화된 변환 계수들을 스캐닝하는 단계; 및 스캐닝된 변환 계수들에 대해 엔트로피 코딩을 수행하는 단계를 포함하고, 양자화 단계는 스캐닝 순서에 따라 잔차 신호 블록을 복수의 부분들로 나누어 서로 다른 양자화 레벨을 적용한다.

Description

트랜스폼을 이용한 영상 부호화/복호화 방법 및 장치
본 발명은 영상 부호화/복호화 방법 및 장치에 관한 것으로, 더욱 상세하게는 부호화 및 복호화 시 +1, -1을 갖는 트랜스폼을 이용하여 변환을 수행하는 방법에 관한 것이다.
일반적으로 비디오 코딩 시, 인트라 예측과 인터 예측을 이용하여 잔차 신호(residual signal)를 만든다. 잔차 신호를 구하는 이유는 잔차 신호를 가지고 코딩을 했을 때 데이터의 양이 작아서 데이터 압축률이 높아지고, 예측이 좋을수록 잔차 신호의 값이 작게 된다.
인트라 예측 방법은 현재 블록의 주변의 픽셀을 이용하여 현재 블록의 데이터를 예측한다. 실제 값과 예측 값의 차이를 잔차 신호 블록이라고 한다. HEVC의 경우는 인트라 예측 방법이 기존 H.264/AVC에서 사용되던 9개의 예측모드에서 도 1과 같이 35개의 예측모드로 증가하여 더욱 세분화하여 예측을 한다(단 Planar 예측모드 및 DC예측모드는 도 1에서 안보임).
인터 예측 방법의 경우는 현재 블록을 주변의 픽쳐들 내의 블록들과 비교하여 가장 비슷한 블록을 찾는다. 이때 찾은 블록에 대한 위치정보(Vx, Vy)를 모션 벡터라고 한다. 현재블록과 모션 벡터에 의하여 예측된 예측블록간의 블록내 화소 값들의 차이를 잔차 신호(residual signal) 블록이라고 한다 (motion-compensated residual block).
이와 같이 인트라 예측과 인터 예측이 더 세분화 되어 잔차 신호의 데이터 양이 줄어들고 있으며, 효율적인 트랜스폼(transform)을 사용하여 코덱 성능이 떨어지지 않으면서 연산량이 적은 비디오 부호화 및 복호화 방법이 필요하다.
본 발명의 실시 예는 비디오 코덱의 트랜스폼 코딩과정에서 적은 연산량으로 좋은 성능을 가지는 비디오 부호화 및 복호화 방법과, 이를 위한 장치를 제공한다.
다만, 본 발명의 실시 예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 실시예에 따른 영상 부호화 방법은 잔차 신호에 대해 하다마드 트랜스폼(hadamard transform)을 적용하여 변환 계수로 변환하는 단계; 상기 변환 계수를 양자화하는 단계; 상기 양자화된 변환 계수들을 스캐닝하는 단계; 및 상기 스캐닝된 변환 계수들에 대해 엔트로피 코딩을 수행하는 단계를 포함하고, 상기 양자화 단계는 스캐닝 순서에 따라 잔차 신호 블록을 복수의 부분들로 나누어 서로 다른 양자화 레벨을 적용한다.
본 발명의 실시예에 따른 영상 부호화 장치는, 잔차 신호에 대해 하다마드 트랜스폼을 적용하여 변환 계수를 구성하는 변환부; 상기 변환 계수를 양자화하는 양자화부; 상기 양자화된 변환 계수들을 스캐닝하는 스캐닝부; 및 상기 스캐닝된 변환 계수들에 대해 엔트로피 코딩을 수행하는 엔트로피 코딩부를 포함하고, 상기 양자화부는 스캐닝 순서에 따라 잔차 신호 블록을 복수의 부분들로 나누어 서로 다른 양자화 레벨을 적용한다.
또한, 본 발명의 실시예에 따른 영상 복호화 방법은, 복호화하고자 하는 영상 신호에 대해 역스캐닝을 수행하여 양자화된 잔차 신호 블록을 구성하는 단계; 상기 양자화된 잔차 신호 블록에 대해 역양자화를 수행하는 단계; 및 상기 역양화된 잔차 신호 블록에 대해 하다마드 트랜스폼을 이용한 역변환을 수행하는 단계를 포함하고, 상기 역양자화 단계는 부호화 장치로부터 전달되는 양자화 정보에 따라 상기 잔차 신호 블록을 복수의 부분들로 나누어 서로 다른 양자화 레벨을 적용한다.
또한, 본 발명의 실시예에 따른 영상 복호화 장치는, 복호화하고자 하는 영상 신호에 대해 역스캐닝을 수행하여 양자화된 잔차 신호 블록을 구성하는 역스캐닝부; 상기 양자화된 잔차 신호 블록에 대해 역양자화를 수행하는 역양자화부; 및 상기 역양화된 잔차 신호 블록에 대해 하다마드 트랜스폼을 이용한 역변환을 수행하는 역변환부를 포함하고, 상기 역양자화부는 부호화 장치로부터 전달되는 양자화 정보에 따라 상기 잔차 신호 블록을 복수의 부분들로 나누어 서로 다른 양자화 레벨을 적용한다.
한편, 상기 영상 부호화 및 복호화 방법은 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.
본 발명에 따르면, 비디오 코덱의 트랜스폼 코딩과정에서 적은 연산량으로 좋은 성능을 가지는 비디오 부호화 및 복호화 방법과, 이를 위한 장치를 제공할 수 있다.
또한, 하다마드 트랜스폼에 특징에 맞추어 스캐닝 순서를 및 방법을 다르게 적용함으로써, 비디오 부호화 효율을 보다 향상시킬 수 있으며, Quantization을 Scanning 순서대로 복수의 구간들로 나누어 부호화 효율을 향상시킬 수 있다.
도 1은 인트라 예측 모드들에 대한 예들을 나타내는 도면이다.
도 2는 본 발명의 일실시예에 따른 부호화 장치의 구성을 나타내는 블록도이다.
도 3은 본 발명에 따른 트랜스폼에 적합한 스캐닝 방법에 대한 제1 실시예를 설명하기 위한 도면이다.
도 4는 본 발명에 따른 트랜스폼에 적합한 스캐닝 방법에 대한 제2 실시예를 설명하기 위한 도면이다.
도 5는 본 발명에 따른 트랜스폼에 적합한 스캐닝 방법에 대한 제3 실시예를 설명하기 위한 도면이다.
도 6은 본 발명에 따른 트랜스폼에 적합한 스캐닝 방법에 대한 제4 실시예를 설명하기 위한 도면이다.
도 7은 본 발명에 따른 트랜스폼에 적합한 양자화 방법에 대한 일실시예를 설명하기 위한 도면이다.
아래에서는 첨부한 도면을 참조하여 본원이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본원의 실시 예를 상세히 설명한다. 그러나 본원은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본원을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본원 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부재가 다른 부재 “상에” 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함" 한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다. 본원 명세서 전체에서 사용되는 정도의 용어 "약", "실질적으로" 등은 언급된 의미에 고유한 제조 및 물질 허용오차가 제시될 때 그 수치에서 또는 그 수치에 근접한 의미로 사용되고, 본원의 이해를 돕기 위해 정확하거나 절대적인 수치가 언급된 개시 내용을 비양심적인 침해자가 부당하게 이용하는 것을 방지하기 위해 사용된다. 본원 명세서 전체에서 사용되는 정도의 용어 "~(하는) 단계" 또는 "~의 단계"는 "~ 를 위한 단계"를 의미하지 않는다.
본원 명세서 전체에서, 마쿠시 형식의 표현에 포함된 “이들의 조합”의 용어는 마쿠시 형식의 표현에 기재된 구성 요소들로 이루어진 군에서 선택되는 하나 이상의 혼합 또는 조합을 의미하는 것으로서, 상기 구성 요소들로 이루어진 군에서 선택되는 하나 이상을 포함하는 것을 의미한다.
실제 영상과 그것의 깊이 정보 맵을 부호화하는 방법의 일예로, 현재까지 개발된 비디오 부호화 표준 중에서 최고의 부호화 효율을 가지는 MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)에서 공동으로 표준화를 진행 중인 HEVC(High Efficiency Video Coding)를 이용하여 부호화를 수행할 수 있다.
본 발명의 실시예에 따른 영상 부호화 및 복호화 방법은 +1 및 -1의 커널(kernel)을 갖는 트랜스폼(transform)을 잔차블록에 적용할 수 있다.
본 발명은 동영상 부호화/복호화에 적용되는 기술인 변환(Transform)방법을 사용함에 있어, 하다마드 트랜스폼(Hadamard Transform)을 사용하는 경우 적용되는 스캐닝(Scanning) 방법에 관한 것이다.
상세히 설명하면, 하다마드 트랜스폼에 특징에 맞추어 스캐닝 순서를 및 방법을 다르게 적용하며, 이를 복호화/복호기로 Signaling을 하는 방법과 주변의 모드(mode)정보 등의 주변에서 가져올 수 있는 정보를 이용해 예측하여 Signaling없이도 복호화가 가능한 방법을 모두 포함할 수 있다.
또한, 본 발명의 또 다른 실시예는, +1 및 -1의 커널(kernel)을 갖는 Hadamard Transform을 사용하고 그에 따른 N레벨 Quantization을 하는 비디오 부호화 및 복호화 방법과, 이를 위한 장치에 관한 것이다.
HEVC에서는 색차신호에 대한 서브샘플 값을 보간할 때 DCT-IF (DCT-based interpolation filter)를 이용하여 보간한다. 그 이유는 잔차신호를 더 줄이기 위하여 Luma 블록에 대하여 정수화소(integer pixel) 단위의 움직임 예측보상보다 정교한 1/4 화소단위의 부화소 (sub-integer pixel) 단위 8-point FIR 필터를 이용한 움직임 예측보상을 수행한다(Chroma 블록들에 대하여는 YUV 4:2:0 color format 에서는 1/8 화소단위의 4-point FIR 필터를 이용한 움직임 예측보상을 수행).
그리고, 더욱 정교한 움직임 예측 및 보상을 위하여 Luma에 대하여 1/8 또는 1/16 보간도 사용 가능하다.
현재 인트라 예측과 인터 예측은 더 세분화 되어 잔차 신호의 데이터 양이 줄어들고 있으며, 더욱 정교한 예측방법이 시도되고 있다. 그러므로, 본 발명의 일 실시예에 따른 비디오 부호화 및 복호화 방법은 기존에 사용되는 DCT 또는 DST를 이용한 정수형 트랜스폼 (Integer Transform)을 이용하는 것 보다 +1/-1로 구성된 커널들을 갖는 트랜스폼을 이용한다. 이에 의해 코덱의 성능차이가 없고, 또한 +1/-1로 구성된 커널들을 사용하므로 다른 커널에 비해 연산 량이 줄어든다.
+1/-1로 구성된 커널들의 트랜스폼의 예시로는 하다마드 트랜스폼(Hadamard Transform)이 있다. 하다마드 트랜스폼이란 +1과-1들로 이루어진 행렬이다. 하다마드 트랜스폼은 다음의 수학식 1과 같이 구성된다.
수학식 1
Figure PCTKR2013011020-appb-M000001
수학식 1은 1차원 포워드(forward) 하다마드 트랜스폼 및 인버스(inverse) 하다마드 트랜스폼을 의미한다. 하다마드 트랜스폼은 분리가능 트랜스폼(separable transform)이기 때문에 1차원 트랜스폼을 수평으로 적용 후, 수직으로 적용함으로써 (또는 수직 적용 후 수평으로 적용) 2차원 트랜스폼을 쉽게 구현할 수 있다.
다음 수학식 2는 1차원 4-point, 8-point 하다마드 트랜스폼 (N=4,8)을 나타낸다.
수학식 2
Figure PCTKR2013011020-appb-M000002
상기 수학식 2는 각각의 행(기초벡터, basis vector)끼리 내적을 하면 0 이 나오는 직교 벡터(orthogonal vector)를 나타낸다. 즉 A-1=AT가 된다. 또한 커널들이 상수를 제외하곤 +1, -1로 구성된다.
행의 순서를 0-4-6-2-3-7-5-1 (basis vector의 배치 순서)로 바꾸어 사용할 수도 있고 있는 그대로 사용할 수도 있다.
수학식 2에서 N의 값은(수학식 2에서 N=4, 8) 후에 스케일링(scaling)만 하면 된다. 위의 예는 4x4 잔차블록 및 8x8 잔차블록에 대한 트랜스폼 적용의 예이지만, 위와 마찬가지로 16x16, 32x32 잔차블록에 제안된 트랜스폼을 적용할 수 있다 (N=2n, n은 양의 정수의 경우).
본 발명의 일 실시 예에 따르면, +1/-1로 구성된 커널들을 갖는 트랜스폼을 비디오코덱에서 트랜스폼 코딩 과정에서 사용하면 적은 연산량으로 좋은 성능을 내는 것이 가능해진다.
도 2는 본 발명의 일실시예에 따른 영상 부호화 장치의 구성을 블록도로 도시한 것이다.
통상, 부호화 장치는 인코딩 과정과 디코딩 과정을 포함하고, 복호화 장치는 디코딩 과정을 구비한다. 복호화 장치의 디코딩 과정은 부호화 장치의 디코딩 과정과 동일하다. 따라서, 이하에서는 부호화 장치를 위주로 설명하기로 한다.
도 2에서와 같이, 본 발명의 일실시예에 따른 영상 부호화 장치에는 부호화 단위 및 구조, 화면 간(Inter) 예측, 화면 내(Intra) 예측, 보간(Interpolation), 필터링(filtering), 변환(Transform) 방법 등 다양한 새로운 알고리즘들을 포함하고 있다.
도 2를 참조하면, 영상 부호화 장치는 부호화 모드 결정부(110), 인트라 예측부(120), 움직임 보상부(130), 움직임 추정부(131), 변환부호화/양자화부(140), 엔트로피 부호화부(150), 역양자화/변환복호화부(160), 디블록킹 필터링부(170), 픽쳐 저장부(180), 감산부(190) 및 가산부(200)를 포함한다.
부호화 모드 결정부(110)는 입력되는 비디오 신호를 분석하여 픽쳐를 소정 크기의 부호화 블록으로 분할하고, 분할된 소정 크기의 부호화 블록에 대한 부호화 모드를 결정한다. 상기 부호화 모드는 인트라 예측 부호화 및 인터 예측 부호화를 포함한다.
픽쳐는 복수의 슬라이스로 구성되고, 슬라이스는 복수개의 최대 부호화 단위(Largest coding unit: LCU)로 구성된다. 상기 LCU는 복수개의 부호화 단위(CU)로 분할될 수 있고, 부호기는 분할여부를 나타내는 정보(flag)를 비트스트림에 추가할 수 있다. 복호기는 LCU의 위치를 어드레스(LcuAddr)를 이용하여 인식할 수 있다. 분할이 허용되지 않는 경우의 부호화 단위(CU)는 예측 단위(Prediction unit: PU)로 간주되고, 복호기는 PU의 위치를 PU 인덱스를 이용하여 인식할 수 있다.
예측 단위(PU)는 복수개의 파티션으로 나뉠 수 있다. 또한 예측 단위(PU)는 복수개의 변환 단위(Transform unit: TU)로 구성될 수 있다.
부호화 모드 결정부(110)는 결정된 부호화 모드에 따른 소정 크기의 블록 단위(예를 들면, PU 단위 또는 TU 단위)로 영상 데이터를 감산부(190)로 보낸다.
변환부호화/양자화부(140)는 감산부(190)에 의해 산출된 잔차 블록을 공간 영역으로부터 주파수 영역으로 변환 한다. 예를 들면, 잔차 블록에 대해서 2차원의 이산 코사인 변환(DCT) 또는 이산 사인 변환(DST) 기반의 변환을 실행한다.
또한, 변환부호화/양자화부(140)는 변환 계수를 양자화하기 위한 양자화 스텝 사이즈를 결정하고, 결정된 양자화 스텝 사이즈를 이용하여 변환 계수를 양자화한다. 결정된 양자화 스텝 사이즈 및 부호화 모드에 따라 양자화 매트릭스가 결정될 수 있다.
양자화된 2차원의 변환 계수는 미리 정해진 스캐닝 방법 중 하나에 의해 1차원의 양자화 변환 계수로 변환된다. 상기 변환된 1차원의 양자화 변환 계수의 시퀀스는 엔트로피 부호화부(150)로 공급된다.
역양자화/변환복호화부(160)는 변환부호화/양자화부(140)에 의해 양자화된 양자화 계수를 역양자화한다. 또한, 역양자화에 의해 얻어지는 역양자화 계수를 역변환한다. 이에 따라, 주파수 영역으로 변환된 잔차 블록을 공간 영역의 잔차 블록으로 복원할 수 있다.
디블록킹 필터링부(170)는 역양자화/변환부호화부(160)로부터 역양자화 및 역변환된 영상 데이터를 입력 받아 블록킹(blocking) 효과를 제거하기 위한 필터링을 수행한다.
픽쳐 저장부(180)는 필터링된 영상 데이터를 디블록킹 필터링부(170)로부터 입력 받아 픽쳐(picture) 단위로 영상을 복원하여 저장한다. 픽쳐는 프레임 단위의 영상이거나 필드 단위의 영상일 수 있다. 픽쳐 저장부(180)는 다수의 픽쳐를 저장할 수 있는 버퍼(도시되지 않음)를 구비한다. 버퍼에 저장된 다수의 픽쳐는 인트라 예측 및 움직임 추정을 위해 제공된다.
인트라 예측 또는 움직임 추정을 위해 제공되는 상기 픽쳐들은 참조 픽쳐로 불리운다.
움직임 추정부(131)는 상기 픽쳐 저장부(180)에 저장된 적어도 하나의 참조 픽쳐를 제공받아 움직임 추정을 수행하여 움직임 벡터, 참조 픽쳐를 나타내는 인덱스 및 블록 모드를 포함한 모션 데이터(Motion Data)를 출력한다.
예측 정밀도를 최적화하기 위해서, 소수 화소 정밀도, 예를 들면, 1/2 또는 1/4 화소 정밀도로 움직임 벡터를 결정한다. 움직임 벡터가 소수 화소 정밀도를 가질 수 있으므로, 움직임 보상부(130)는 소수 화소 위치의 화소 값을 산출하기 위한 보간 필터를 참조 픽쳐에 적용함으로써, 정수 화소 위치의 화소값으로부터 소수 화소 위치의 화소값을 산출한다.
움직임 보상부(130)는 움직임 추정부(131)로부터 입력된 모션 데이터에 따라, 픽쳐 저장부(180)에 저장된 다수의 참조 픽쳐들 중 움직임 추정에 이용된 참조 픽쳐로부터, 부호화하고자 하는 블록에 대응하는 예측 블록을 추출하여 출력한다.
움직임 보상부(130)는 소수 정밀도의 움직임 보상에 필요한 적응적 보간 필터의 필터 특성을 결정한다. 필터 특성은, 예를 들면, 적응적 보간 필터의 필터 타입을 나타내는 정보, 및, 적응적 보간 필터의 사이즈를 나타내는 정보 등이다.
필터의 사이즈는, 예를 들면, 적응적 보간 필터의 필터 계수의 수인 탭 수 등이다.
구체적으로, 움직임 보상부(130)는 적응적 보간 필터로서, 분리형 및 비분리형 적응적 필터 중 어느 하나를 결정할 수 있다. 그리고 나서, 결정된 적응적 보간 필터의 탭 수, 및, 각 필터 계수의 값을 결정한다. 필터 계수의 값은, 정수 화소와의 상대적인 소수 화소의 위치마다 다르게 결정될 수 있다. 또한, 움직임 보상부(130)는, 필터 계수가 고정인 복수개의 비적응적 보간 필터를 이용할 수도 있다.
움직임 보상부(130)는, 보간 필터의 특성을 소정의 처리 단위로 설정할 수 있다. 예를 들면, 소수 화소 단위, 부호화 기본 단위(부호화 유닛), 슬라이스 단위, 픽쳐 단위, 또는, 시퀀스 단위로 설정할 수 있다. 또한, 1개의 영상 데이터에 대해서, 1개의 특성을 설정해도 된다.
따라서, 소정의 처리 단위 내에서는, 동일한 필터 특성을 이용하므로, 움직임 보상부(130)는 필터 특성을 일시적으로 유지하는 메모리를 구비한다. 이 메모리는 필요에 따라, 필터 특성 및 필터 계수 등을 유지한다. 예를 들면, 움직임 보상부(130)는, I픽쳐마다 필터 특성을 결정하고, 슬라이스 단위로 필터 계수를 결정할 수 있다.
움직임 보상부(130)는, 픽쳐 저장부(180)로부터 참조 픽쳐를 수신하고, 결정된 적응적 보간 필터를 이용하여 필터 처리를 적용함으로써, 소수 정밀도의 예측 참조 화상을 생성한다.
그리고, 생성된 참조 화상과, 움직임 추정부(131)에 의해 결정된 움직임 벡터에 의거하여 소수 화소 정밀도의 움직임 보상을 행함으로써, 예측 블록을 생성한다.
감산부(190)는 부호화하고자 하는 입력 블록을 픽쳐 간 예측 부호화하는 경우, 움직임 보상부(130)로부터 입력 블록에 대응하는 참조 픽쳐 내의 블록을 입력받아 입력 매크로 블록과의 차분 연산을 수행하여 잔차 신호(residue signal)를 출력한다.
인트라 예측부(120)는 예측이 수행되는 픽처 내부의 재구성된 화소값을 이용하여 인트라 예측 부호화를 수행한다. 인트라 예측부는 예측 부호화할 현재 블록을 입력 받아 현재 블록의 크기에 따라 미리 설정된 복수개의 인트라 예측 모드 중에 하나를 선택하여 인트라 예측을 수행한다. 인트라 예측부(120)는 현재 블록에 인접한 이전에 부호화된 화소들을 이용해 현재 블록의 인트라 예측 모드를 결정하고, 상기 결정된 모드에 대응하는 예측 블록을 생성한다.
현재 픽처에 포함된 영역 중에서 이전에 부호화된 영역은 인트라 예측부(120)가 이용할 수 있도록 다시 복호화되어 픽쳐 저장부(180) 에 저장되어 있다. 인트라 예측부(120)는 픽쳐 저장부(180)에 저장되어 있는 현재 픽처의 이전에 부호화된 영역에서 현재 블록에 인접한 화소 또는 인접하지 않지만 적용 가능한 화소들을 이용하여 현재 블록의 예측 블록을 생성한다.
인트라 예측부(120)는 인트라 블록을 예측하기 위하여 인접 화소를 적응적으로 필터링할 수 있다. 복호기에서의 동일한 동작을 위해 부호기에서 필터링 여부를 알려주는 정보를 전송할 수 있다. 또는 현재 블록의 인트라 예측 모드 및 현재 블록의 크기 정보에 기초하여 필터링 여부를 결정할 수 있다.
영상 부호화 장치에 의해 사용되는 예측 타입은 상기 부호화 모드 결정부에 의해 입력 블록이 인트라 모드 또는 인터 모드로 부호화되는지 여부에 의존한다.
인트라 모드와 인터 모드의 전환은, 인트라/인터 전환 스위치에 의해 제어된다.
엔트로피 부호화부(150)는 변환부호화/양자화부(140)에 의해 양자화된 양자화 계수와 움직임 추정부(131)에 의해 생성된 움직임 정보를 엔트로피 부호화한다. 또한, 인트라 예측 모드, 제어 데이터(예를 들면, 양자화 스텝 사이즈 등) 등도 부호화될 수 있다. 또한, 움직임 보상부(130)에 의해 결정된 필터 계수도 부호화되어 비트 스트림으로서 출력한다.
도 2를 참조하면, 본 발명의 일실시예에 따른 부호화 장치는 기존 HEVC 인코더의 트랜스폼(Transform) 과정에 사용되는 정수형 8x8 DCT, 16x16 DCT, 32x32 DCT 나 4x4 DST 대신, +1/-1로 구성된 4x4, 8x8, 16x16, 32x32 커널들을 갖는 제안된 트랜스폼을 이용하여 구성된다.
또한 제안된 트랜스폼이 인코더에 적용된 경우, 디코더에서는 트랜스폼의 역연산 과정에서도 +1/-1로 구성된 제안된 커널들을 갖는 인버스 트랜스폼(inverse Transform, A-1=AT)을 적용한다.
여기서, 도 2에 따른 부호화 장치에서 제안된 트랜스폼을 사용한 경우, 디코딩 과정에서 제안된 인버스 트랜스폼(inverse transform)을 적용한다.
또 다른 예로서, 임의의 비디오 인코더(encoder)에서 제안된 트랜스폼을 사용한 경우, 디코딩 과정에 제안된 인버스 트랜스폼(inverse transform)을 적용시킨다.
상기한 바와 같이, 본 발명의 일실시예에 따른 영상 복호화 장치의 구성은 도 2에 도시된 영상 부호화 장치의 구성으로부터 도출될 수 있으며, 예를 들어 도 2를 참조하여 설명한 바와 같은 부호화 과정의 역과정을 수행함으로써 영상을 복호화할 수 있다.
본 발명의 실시예는 동영상 부호화/복호화에 적용되는 기술인 변환(트랜스폼 : Transform)방법을 사용함에 있어, 하다마드 트랜스폼(Hadamard Transform)을 사용하는 경우 적용되는 스캐닝(Scanning) 방법에 관한 것이다.
상세히 설명하면, 하다마드 트랜스폼에 특징에 맞추어 스캐닝 순서를 및 방법을 다르게 적용하며, 이를 복호화/복호기로 Signaling을 하는 방법과 주변의 모드(mode)정보 등의 주변에서 가져올 수 있는 정보를 이용해 예측하여 Signaling없이도 복호화가 가능한 방법을 모두 포함할다.
하다마드 트랜스폼을 적용한 계수는 양자화(Quantization)과정을 거쳐 Scanning 방법에 따라 Entropy coding을 통해 비트스트림이 생성된다. 여기서 하다마드 트랜스폼을 통해 스캐닝을 수행하는 방법은 아래와 같은 예와 같이 수행 할 수 있다.
도 3은 본 발명에 따른 트랜스폼에 적합한 스캐닝 방법에 대한 제1 실시예를 설명하기 위해 도시한 것으로, 8x8 블록에 관한 스캐닝 방법에 대한 예를 나타낸 것이다. 이는 다양한 블록 크기에 모두 적용될 수 있다.
도 3에 도시된 바와 같이 왼쪽 상단부터 오른쪽 하단으로 가는 스캐닝 방법, 오른쪽 하단에서 왼쪽 상단으로 가는 스캐닝 방법을 모두 포함하며, 모드 정보에 따라 다양한 방법에 스캐닝이 적용가능 하다.
위 4가지 스캐닝 방법은 간단한 예시이며, 다양한 순서의 스캐닝 방법을 부호화 및 복호화에 동일하게 적용 가능하다.
예측(prediction) 성능이 향상되어, 하다마드 트랜스폼을 하게 되면 기존의 정수형 DCT 및 정수형 DST에 비하여 양자화 시 더욱 적은 transformed 계수가 존재할 것이므로, 하다마드 트랜스폼은 1,-1로 구성된 커널을 사용함으로써 연산량을 줄일 수 있다.
즉, 하다마드 트랜스폼은 정수형 DCT, DST와 같이 유사한 특성을 가질 수 있으며, 그에 따라 DC와 AC로 나뉘는 특징을 가지지만, 하다마드 트랜스폼을 사용하는 이유는 예측을 마친 값이 매우 적다는 가정을 통해 곱셈연산을 없애고 성능이 향상된 트랜스폼을 사용하는데 있다.
이렇게 잔차 신호가 작은 경우 트랜스폼을 마친 계수가 매우 적은 수로 분포할 경우가 발생한다. 이럴 때 다양한 스캐닝 방법을 통해서 엔트로피 코딩시 적용되는 스캐닝 방법을 다양하게 함으로써 최적의 스캐닝 방법을 선택해야 한다.
예를 들어, 인트라 블록에서 수평예측 관련 모드이면 vertical scanning, 수직예측 관련 모드이면 horizontal scanning, 그 외에는 rate-distortion 측면에서 가장 좋은 scanning 방식 결정하여 적용하고 해당 스캐닝 방식에 대한 정보를 디코더로 signalling할 수 있다.
도 4는 8x8단위의 블록의 내부를 4개의 스캐닝 방법으로 나누어 스캐닝하는 방법의 예를 나타낸다.
이 방법 또한 복호화/복호기로 Signaling하여 형태를 전달하거나, 주변 정보를 활용해 약속된 형태로 스캐닝하는 방법을 모두 포함 한다.
도 5는 8x8단위의 블록의 내부를 4개의 서브-블록으로 나누어 스캐닝하는 방법에 대한 일실시예를 설명하기 위한 도면으로, 도 5에 도시된 바와 같은 위치에 계수가 존재 할 때, 8x8단위의 블록을 4개로 나누어 4x4 스캐닝을 통해서 성능 향상을 가져올 수 있는 예를 나타낸다.
도 5에서 분포하는 점은 트랜스폼과 양자화를 마친 계수가 존재하는 위치를 나타내며, 이와 같이 계수의 분포가 왼쪽 상단부터 계수가 곳곳에 존재하는 경우, 분할하는 방법을 통해서 스캐닝을 수행함으로써 엔트로피코딩의 성능 향상 효과를 가져 올 수 있다.
이 경우, 엔트로피 코딩에서는 시작되는 계수와 끝나는 계수의 위치가 성능에 매우 중요한 역할을 한다.
도 6은 좌측 상단에 모든 계수가 분포하는 경우를 나타내며, 이와 같은 경우는 블록을 분할하지 않고 전체 블록의 크기 8x8로 스캐닝하는 경우가 성능 향상이 높거나 혹은 분할 방법과 비교하여 성능이 좋은 방법을 선택적으로 사용할 수 있는 방법을 모두 포함한다.
즉, 본 발명은 계수의 분포에 따라 분할 혹은 분할을 하지 않는 스캐닝 방법을 통해서 성능 향상을 가져오는 방법을 말한다.
본 발명은 하다마드 트랜스폼을 사용하였을 때 적용 가능한 스캐닝 방법에 관한 것이며, 모든 스캐닝 방법은 위에서 언급한 바와 같이 이는 Signaling을 통해 복호화/복호기로 정보를 전달하는 방법과 Signaling없이 주변의 부호화 환경(모드 정보, MV 정보 등)을 통해서 복호화가 가능한 방법을 모두 포함한다.
Transform 이후, Quantization, Scanning, Entropy Encoding 순으로 인코딩은 진행된다. Transform 계수는 일반적으로 좌측 상단의 계수가 큰 값을 가지고 나머지 계수들은 적은 값을 가지는 경향이 있다.
Scanning은 Diagonal Scanning, Horizontal Scanning, Vertical Scanning이 있다. 세 방법 모두 Transform 계수가 큰 좌측 상단을 먼저 Scanning한다.
따라서 Quantization을 아래와 같이 Scanning 순서대로 세 구간으로 나눈다면 인코딩 압축률이 높아질 수 있다.
도 7은 N 레벨 양자화 방법에 대한 일실시예를 도시한 것으로, Scanning 순서에 따라 N (= 2, 3, …) 구간으로 나눌 수 있다.
Hadamard Transform 한 후, N레벨 양자화, 몇 구간으로 양자화하였는지를 나타내는 N값은 디코더로 Signaling해 준다.
도 7을 참조하면, 백색으로 표기된 변환 계수는 양자화를 가장 약하게 한 부분이다. 굵은 빗금으로 표기된 변환 계수는 양자화를 백색 변환 계수보다 강하게 한 부분이다. 얇은 빗금으로 표기된 변환 계수는 양자화를 가장 강하게 한 부분이다. 스캐닝 순서가 낮은 부분은 약하게 양자화를 하고 스캐닝 순서가 높은 부분은 강하게 양자화한다.
일반적으로 스캐닝은 양자화된 변환계수가 가장 큰 부분을 먼저 스캐닝한다.
도 7의 상측에 도시된 바와 같은 양자화의 경우에 있어서, 8x8블록을 4개로 나누어서 스캐닝 방법을 하였을 경우 사용한다. 예를 들어, 백색 변환계수 부근을 먼저 스캐닝하고, 얇은 빗금으로 표기된 변환계수 부근을 스캐닝하고, 얇은 빗금으로 표기된 변환 계수 부분을 스캐닝한다.
예를 들어, 도 4에 도시된 바와 같이 8X8 블록의 내부를 4개로 나누어서 스캐닝하는 경우 도 7의 상측에 도시된 바와 같은 양자화 방법이 사용될 수 있다.
같은 원리로, 도 7의 중앙에 도시된 바와 같은 양자화 방법은 도 4의 우측 하단에 도시된 바와 같은 가로방향 스캐닝 방법을 사용할 경우에 적용될 수 있다.
또한, 도 7의 하측에 도시된 바와 같은 양자화 방법은 도 4의 좌측 하단에 도시된 바와 같은 세로 방향 스캐닝 방법을 사용할 경우에 적용될 수 있다.
한편, 상기한 바와 같은 N 레벨 양자화의 경우 다음과 같은 세 가지 경우가 발생할 수 있다.
(1) 하나의 플래그를 두고 0일 경우 N레벨 양자화를 쓰지 않는다. 즉, 블록 내 모든 변환계수를 같은 크기로 양자화한다. 플래그가 1일 경우 N레벨 양자화를 한다.
(2) 양자화를 기준으로 나눈 구간의 수 N을 디코더로 전송한다. 인코더 측에서는 율-왜곡 값을 기준으로 양자화 구간의 수 N을 정하고, 디코더 측에서는 N을 받아서 N레벨 양자화를 수행한다.
(3) 항상 정해진 N레벨 양자화를 수행한다.
상술한 본 발명에 따른 방법은 컴퓨터에서 실행되기 위한 프로그램으로 제작되어 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다.
컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형 실시가 가능한 것은 물론이고, 이러한 변형 실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해 되어서는 안될 것이다.

Claims (12)

  1. 영상을 부호화하는 방법에 있어서,
    잔차 신호에 대해 하다마드 트랜스폼(hadamard transform)을 적용하여 변환 계수로 변환하는 단계;
    상기 변환 계수를 양자화하는 단계;
    상기 양자화된 변환 계수들을 스캐닝하는 단계; 및
    상기 스캐닝된 변환 계수들에 대해 엔트로피 코딩을 수행하는 단계를 포함하고,
    상기 양자화 단계는
    스캐닝 순서에 따라 잔차 신호 블록을 복수의 부분들로 나누어 서로 다른 양자화 레벨을 적용하는 영상 부호화 방법.
  2. 제1항에 있어서, 상기 양자화 단계는
    상기 스캐닝 순서가 빠를 수록 약한 양자화 레벨을 적용하는 영상 부호화 방법.
  3. 제1항에 있어서, 상기 스캐닝 단계는
    잔차 신호 블록을 복수의 서브-블록들로 분할하여 각각의 분할된 서브-블록별로 스캐닝을 수행하는 영상 부호화 방법.
  4. 제3항에 있어서,
    상기 서로 다른 양자화 레벨이 적용되는 부분들은 상기 분할된 서브-블록들에 대응되도록 나누어지는 영상 부호화 방법.
  5. 제1항에 있어서,
    상기 서로 다른 양자화 레벨들이 적용된 양자화 방식에 대한 정보를 복호화 장치로 시그널링하는 단계를 더 포함하는 영상 부호화 방법.
  6. 제5항에 있어서, 상기 양자화 방식에 대한 정보는
    상기 서로 다른 양자화 레벨들의 적용여부를 나타내는 플래그 정보, 상기 나누어진 부분들의 개수 정보 및 상기 서로 다른 양자화 레벨들에 대한 정보 중 적어도 하나를 포함하는 영상 부호화 방법.
  7. 영상을 부호화하는 장치에 있어서,
    잔차 신호에 대해 하다마드 트랜스폼을 적용하여 변환 계수를 구성하는 변환부;
    상기 변환 계수를 양자화하는 양자화부;
    상기 양자화된 변환 계수들을 스캐닝하는 스캐닝부; 및
    상기 스캐닝된 변환 계수들에 대해 엔트로피 코딩을 수행하는 엔트로피 코딩부를 포함하고,
    상기 양자화부는
    스캐닝 순서에 따라 잔차 신호 블록을 복수의 부분들로 나누어 서로 다른 양자화 레벨을 적용하는 영상 부호화 장치.
  8. 제7항에 있어서, 상기 양자화부는
    상기 스캐닝 순서가 빠를 수록 약한 양자화 레벨을 적용하는 영상 부호화 장치.
  9. 영상을 복호화하는 방법에 있어서,
    복호화하고자 하는 영상 신호에 대해 역스캐닝을 수행하여 양자화된 잔차 신호 블록을 구성하는 단계;
    상기 양자화된 잔차 신호 블록에 대해 역양자화를 수행하는 단계; 및
    상기 역양화된 잔차 신호 블록에 대해 하다마드 트랜스폼을 이용한 역변환을 수행하는 단계를 포함하고,
    상기 역양자화 단계는
    부호화 장치로부터 전달되는 양자화 정보에 따라 상기 잔차 신호 블록을 복수의 부분들로 나누어 서로 다른 양자화 레벨을 적용하는 영상 복호화 방법.
  10. 제9항에 있어서, 상기 역양자화 단계는
    상기 스캐닝 순서가 빠를 수록 약한 양자화 레벨을 적용하는 영상 복호화 방법.
  11. 제9항에 있어서, 상기 양자화 정보는
    상기 서로 다른 양자화 레벨들의 적용여부를 나타내는 플래그 정보, 상기 나누어진 부분들의 개수 정보 및 상기 서로 다른 양자화 레벨들에 대한 정보 중 적어도 하나를 포함하는 영상 복호화 방법.
  12. 영상을 복호화하는 장치에 있어서,
    복호화하고자 하는 영상 신호에 대해 역스캐닝을 수행하여 양자화된 잔차 신호 블록을 구성하는 역스캐닝부;
    상기 양자화된 잔차 신호 블록에 대해 역양자화를 수행하는 역양자화부; 및
    상기 역양화된 잔차 신호 블록에 대해 하다마드 트랜스폼을 이용한 역변환을 수행하는 역변환부를 포함하고,
    상기 역양자화부는
    부호화 장치로부터 전달되는 양자화 정보에 따라 상기 잔차 신호 블록을 복수의 부분들로 나누어 서로 다른 양자화 레벨을 적용하는 영상 복호화 장치.
PCT/KR2013/011020 2012-11-29 2013-11-29 트랜스폼을 이용한 영상 부호화/복호화 방법 및 장치 WO2014084671A2 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020157018918A KR20150105348A (ko) 2012-11-29 2013-11-29 트랜스폼을 이용한 영상 부호화/복호화 방법 및 장치

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2012-0136762 2012-11-29
KR20120136762 2012-11-29
KR10-2013-0047108 2013-04-29
KR20130047108 2013-04-29

Publications (2)

Publication Number Publication Date
WO2014084671A2 true WO2014084671A2 (ko) 2014-06-05
WO2014084671A3 WO2014084671A3 (ko) 2014-10-23

Family

ID=50828572

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2013/011020 WO2014084671A2 (ko) 2012-11-29 2013-11-29 트랜스폼을 이용한 영상 부호화/복호화 방법 및 장치

Country Status (2)

Country Link
KR (1) KR20150105348A (ko)
WO (1) WO2014084671A2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10694184B2 (en) 2016-03-11 2020-06-23 Digitalinsights Inc. Video coding method and apparatus
CN111785262A (zh) * 2020-06-23 2020-10-16 电子科技大学 一种基于残差网络及融合特征的说话人年龄性别分类方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018062921A1 (ko) * 2016-09-30 2018-04-05 엘지전자 주식회사 영상 코딩 시스템에서 블록 분할 및 인트라 예측 방법 및 장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060119736A (ko) * 2005-05-19 2006-11-24 엘지전자 주식회사 영상 신호의 인코딩 방법
US20090297054A1 (en) * 2008-05-27 2009-12-03 Microsoft Corporation Reducing dc leakage in hd photo transform
KR20110001895A (ko) * 2009-06-30 2011-01-06 씨케이디 가부시키 가이샤 소형전자밸브
US20120082211A1 (en) * 2010-09-30 2012-04-05 Madhukar Budagavi Low Complexity Large Transform
KR20120082960A (ko) * 2011-01-15 2012-07-25 에스케이 텔레콤주식회사 양방향 인트라 예측을 이용한 영상 부호화/복호화 방법 및 장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060119736A (ko) * 2005-05-19 2006-11-24 엘지전자 주식회사 영상 신호의 인코딩 방법
US20090297054A1 (en) * 2008-05-27 2009-12-03 Microsoft Corporation Reducing dc leakage in hd photo transform
KR20110001895A (ko) * 2009-06-30 2011-01-06 씨케이디 가부시키 가이샤 소형전자밸브
US20120082211A1 (en) * 2010-09-30 2012-04-05 Madhukar Budagavi Low Complexity Large Transform
KR20120082960A (ko) * 2011-01-15 2012-07-25 에스케이 텔레콤주식회사 양방향 인트라 예측을 이용한 영상 부호화/복호화 방법 및 장치

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10694184B2 (en) 2016-03-11 2020-06-23 Digitalinsights Inc. Video coding method and apparatus
US11438591B2 (en) 2016-03-11 2022-09-06 Digitalinsights Inc. Video coding method and apparatus
US11838509B2 (en) 2016-03-11 2023-12-05 Digitalinsights Inc. Video coding method and apparatus
CN111785262A (zh) * 2020-06-23 2020-10-16 电子科技大学 一种基于残差网络及融合特征的说话人年龄性别分类方法
CN111785262B (zh) * 2020-06-23 2022-08-05 电子科技大学 一种基于残差网络及融合特征的说话人年龄性别分类方法

Also Published As

Publication number Publication date
WO2014084671A3 (ko) 2014-10-23
KR20150105348A (ko) 2015-09-16

Similar Documents

Publication Publication Date Title
WO2012018197A2 (ko) 인트라 예측 복호화 장치
WO2012018198A2 (ko) 예측 블록 생성 장치
WO2018174402A1 (ko) 영상 코딩 시스템에서 변환 방법 및 그 장치
WO2013062197A1 (ko) 영상 복호화 장치
WO2012134085A2 (ko) 인트라 예측 모드에서의 영상 복호화 방법
WO2013062191A1 (ko) 인트라 예측 모드에서의 영상 부호화 방법 및 장치
WO2012002785A2 (ko) 화면내 예측 부호화를 위한 영상 부호화/복호화 장치 및 방법
WO2016148438A2 (ko) 비디오 신호의 처리 방법 및 이를 위한 장치
WO2013062192A1 (ko) 인트라 예측 정보 부호화 방법 및 장치
WO2012023762A2 (ko) 인트라 예측 복호화 방법
WO2011145819A2 (ko) 영상 부호화/복호화 장치 및 방법
WO2017052000A1 (ko) 영상 코딩 시스템에서 움직임 벡터 정제 기반 인터 예측 방법 및 장치
WO2011099792A2 (ko) 비디오 신호의 처리 방법 및 장치
WO2012008790A2 (en) Method and apparatus for encoding and decoding image through intra prediction
WO2011133002A2 (ko) 영상 부호화 장치 및 방법
WO2013025065A2 (ko) 정밀한 단위의 필터 선택을 적용한 영상 부호화/복호화 장치 및 방법
WO2009110753A2 (en) Method and apparatus for image intra prediction
WO2012057528A2 (ko) 적응적 화면내 예측 부호화 및 복호화 방법
WO2011087271A2 (ko) 비디오 신호의 처리 방법 및 장치
WO2011126285A2 (ko) 부호화 모드에 대한 정보를 부호화, 복호화하는 방법 및 장치
WO2009113791A2 (ko) 영상 부호화장치 및 영상 복호화장치
WO2013062198A1 (ko) 영상 복호화 장치
WO2011096662A2 (ko) 율-왜곡 최적화를 위한 영상 부호화/복호화 방법 및 이를 수행하는 장치
WO2020251260A1 (ko) Block dpcm 예측 방법을 사용하는 비디오 신호 처리 방법 및 장치
WO2014178563A1 (ko) 인트라 예측 방법 및 장치

Legal Events

Date Code Title Description
ENP Entry into the national phase in:

Ref document number: 20157018918

Country of ref document: KR

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 13859088

Country of ref document: EP

Kind code of ref document: A2