KR101997655B1 - Method and Apparatus for Image Encoding/Decoding - Google Patents
Method and Apparatus for Image Encoding/Decoding Download PDFInfo
- Publication number
- KR101997655B1 KR101997655B1 KR1020180090727A KR20180090727A KR101997655B1 KR 101997655 B1 KR101997655 B1 KR 101997655B1 KR 1020180090727 A KR1020180090727 A KR 1020180090727A KR 20180090727 A KR20180090727 A KR 20180090727A KR 101997655 B1 KR101997655 B1 KR 101997655B1
- Authority
- KR
- South Korea
- Prior art keywords
- block
- transform
- unit
- prediction
- inverse
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/625—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명의 실시예는 고정밀 필터를 이용한 영상 부호화/복호화 방법 및 장치에 관한 것이다.
본 발명의 일 실시예는, 현재 블록의 예측블록을 생성하고 상기 현재 블록에서 상기 예측 블록을 감산하여 생성된 잔차 블록을 변환하여 주파수변환블록을 생성하되 변환단위에 따라 다른 변환방법을 사용하여 상기 주파수변환블록을 생성한 후 양자화하여 비트스트림으로 부호화하는 영상 부호화단계와 비트스트림으로부터 양자화된 주파수변환 블록 및 변환단위에 대한 정보를 추출하고 상기 양자화된 주파수변환블록을 역 양자화하여 주파수변환블록을 복원하고 상기 주파수변환블록을 역 변환하여 잔차 블록을 복원하되 상기 추출된 변환단위에 따라 다른 역 변환방법을 사용하여 상기 주파수변환블록을 복원하고 움직임 벡터에 의해 참조되는 참조블록으로부터 예측블록을 생성하여 상기 복원되는 잔차 블록과 상기 예측 블록을 가산하여 현재 블록을 복원하는 영상 복호화단계를 포함하는 영상 부호화/복호화 방법을 제공한다.An embodiment of the present invention relates to a method and apparatus for image encoding / decoding using a high precision filter.
According to an embodiment of the present invention, a prediction block of a current block is generated and a residual block generated by subtracting the prediction block from the current block is generated to generate a frequency transform block using a different transform method according to a transform unit. After generating the frequency transform block, the video encoding step of quantizing and encoding the bitstream and extracting information about the quantized frequency transform block and the transform unit from the bitstream and inverse quantization of the quantized frequency transform block to restore the frequency transform block And restoring the residual block by inversely transforming the frequency transform block, and restoring the frequency transform block using another inverse transform method according to the extracted transform unit, and generating a prediction block from a reference block referred to by a motion vector. Adds the residual block to be recovered and the prediction block An image encoding / decoding method including an image decoding step of reconstructing a block is provided.
Description
본 발명의 실시예는 영상 부호화/복호화 방법 및 장치에 관한 것이다. 더욱 상세하게는, 변환단위에 따라 다른 변환방법 또는 다른 역변환방법을 사용하여 잔차블록을 변환 또는 주파수계수블록을 역변환함으로써 압축률을 향상시키기 위한 영상 부호화/복호화 방법 및 장치에 관한 것이다.An embodiment of the present invention relates to a method and apparatus for image encoding / decoding. More specifically, the present invention relates to an image encoding / decoding method and apparatus for improving a compression ratio by transforming a residual block or inversely transforming a frequency coefficient block using a different transform method or another inverse transform method according to a transform unit.
이 부분에 기술된 내용은 단순히 본 발명의 실시예에 대한 배경 정보를 제공할 뿐 반드시 종래기술을 구성하는 것은 아니다.The content described in this section merely provides background information on the embodiments of the present invention and does not necessarily constitute prior art.
MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)은 JCT-VC(Joint Collaborative Team on Video Coding)라는 MPEG과 VCEG의 공동 팀을 형성하여 기존의 H.264/AVC(Advanced video Coding)보다 우수하고 뛰어난 HEVC(High Efficiency Video Coding)이라는 새로운 표준안에 대한 표준화가 진행 중이다.Moving Picture Experts Group (MPEG) and Video Coding Experts Group (VCEG) have formed a joint team of MPEG and VCEG, called Joint Collaborative Team on Video Coding (JCT-VC), over existing H.264 / AVC (Advanced video Coding). Standardization is underway with a new standard called Excellent and Excellent High Efficiency Video Coding (HEVC).
HEVC에서는 동영상 부호화 단위로 CTB (Coding Tree Block)을 사용하며, 이 때 CTB는 다양한 정사각형 모양으로 정의된다. CTB는 주로 코딩단위(Coding Unit)라고 부른다. HEVC uses coding tree block (CTB) as a video coding unit, where CTB is defined by various square shapes. CTB is often called Coding Unit.
도 1은 통상적인 코딩단위(CU)의 크기와 모습을 나타낸다.1 shows the size and shape of a conventional coding unit (CU).
도 1을 참조하면, 코딩단위(CU)는 쿼드트리(Quad Tree)의 모습을 하고 있으며, 크기가 64×64인 최대 코딩단위(Largest Coding Unit)일 때 깊이를 0으로 하여 깊이가 3이 될 때까지, 즉 8×8크기의 코딩단위(CU)까지 재귀적(Recursive)으로 최적의 예측단위를 찾아 부호화를 수행한다.Referring to FIG. 1, the coding unit (CU) has a quad tree shape, and when the maximum coding unit (Largest Coding Unit) having a size of 64 × 64, the depth is set to 0 and the depth becomes 3. The coding is performed by finding the optimal prediction unit recursively until a coding unit (CU) of 8 × 8 size.
예측의 기본 단위는 예측단위(Prediction Unit)로 정의되며, 하나의 코딩단위(CU)는 다수개의 블록으로 분할되어 예측에 사용된다. The basic unit of prediction is defined as a prediction unit, and one coding unit (CU) is divided into a plurality of blocks and used for prediction.
도 2는 통상적인 예측단위(PU)의 종류와 하나의 코딩단위(CU)내에서 예측단위(PU)의 예측순서를 나타낸다.2 shows a type of a typical prediction unit (PU) and a prediction order of the prediction unit (PU) in one coding unit (CU).
도 2를 참조하면, 크기가 2N×2N인 한 코딩단위(CU) 내에서 스킵(Skip)모드를 수행한 이후에 인터 2N×2N 모드, 인터 2N×N 모드, 인터 N×2N 모드, 인터 N×N 모드, 인트라 2N×2N 모드, 인트라 N×N 모드 순서로 예측을 수행한다. 단, 크기가 8×8(2N×2N)인 코딩단위(CU)를 제외하고는 모든 코딩단위(CU)에서 인터 N×N 모드, 인트라 N×N 모드를 제외한 모든 나머지 예측단위(PU)에 대하여 예측을 수행한다.Referring to FIG. 2, after performing a skip mode in a coding unit (CU) having a size of 2N × 2N, an inter 2N × 2N mode, an inter 2N × N mode, an inter N × 2N mode, and an inter N Prediction is performed in the order of xN mode, intra 2N × 2N mode, and intra N × N mode. However, except for the coding unit (CU) having a size of 8 × 8 (2N × 2N), all the coding units (CU) are applied to all the remaining prediction units (PU) except the inter N × N mode and intra N × N mode. Perform predictions for
HEVC에서 영상 간 예측에 사용되는 움직임 추정(Motion Estimation)은 예측단위(Prediction Unit)로 수행된다. 움직임 추정은 동영상 부호화시에 시간적 중복성(Temporal Redundancy)을 제거하여 비트율(Bitrate)을 줄이기 위해 수행한다. 특히, HEVC는 코딩단위(CU)의 귀납적 과정과 다양한 크기의 예측단위(PU)를 사용함으로써 다양한 크기의 움직임 추정을 사용하게 되어 부호화 효율이 높다.Motion estimation used for inter-picture prediction in HEVC is performed in a prediction unit. Motion estimation is performed to reduce bitrate by removing temporal redundancy in video encoding. In particular, HEVC uses a large amount of motion estimation by using an inductive process of a coding unit (CU) and a prediction unit (PU) of various sizes, and thus has high coding efficiency.
움직임 벡터의 예측(Prediction)은 시간축을 기준으로 과거 영상을 참조하거나 과거 영상과 미래 영상을 모두 참조하여 수행된다. 현재 프레임을 부호화하거나 복호화하는데 참조되는 영상을 참조 영상이라고 한다. HEVC는 복수 개의 참조 영상(Multiple Reference Frame)을 지원하기 때문에 현재 블록과 중복성이 가장 많은 프레임의 블록을 참조 영상으로 선택하여 이전 프레임만을 참조 영상으로 사용할 때보다 더욱 큰 부호화 효율을 얻을 수 있다. 또한, 코딩단위(CU)에 포함된 스킵(Skip)모드와 인터 2N×2N 모드, 인터 2N×N 모드, 인터 N×2N 모드, 인터 N×N 모드, 인트라 2N×2N 모드, 인트라 N×N 모드 등 모든 가능한 부호화 모드 중에서 가장 최적의 모드를 선택하기 위해 율-왜곡 최적화(Rate-Distortion Optimization) 기술을 사용하여 HEVC의 부호화 효율을 더욱 향상시킨다. Prediction of a motion vector is performed by referring to a past image on the basis of a time axis or by referring to both a past image and a future image. An image referred to to encode or decode a current frame is called a reference image. Since HEVC supports multiple reference frames, a coding efficiency may be greater than that of using only the previous frame as a reference picture by selecting a block of a frame having the most overlap with the current block as the reference picture. In addition, a skip mode included in the coding unit (CU), inter 2N × 2N mode, inter 2N × N mode, inter N × 2N mode, inter N × N mode, intra 2N × 2N mode, intra N × N Rate-distortion optimization is further used to select the most optimal mode among all possible coding modes, including modes, further improving the coding efficiency of HEVC.
동영상 데이터를 부호화/복호화하기 위해 마련된 HEVC 표준에 따르면, 영상 간/내 예측을 수행한 후 블록 내 잔여 신호의 공간적 상관성을 줄이고 에너지의 압축률을 높이기 위한 방법으로 다양한 크기의 변환단위(Transform Unit)에 대한 변환 방법이 사용되며, 주파수계수에 대하여 압축률을 높이기 위한 방법으로 양자화 방법이 사용되며 변환의 크기에 상관없는 일정한 변환방법은 영상의 압축률을 떨어뜨리는 요인이 된다.According to the HEVC standard, which is designed to encode / decode video data, a transform unit of various sizes is used to reduce spatial correlation of residual signals in a block and increase compression ratio of energy after performing intra / intra prediction. A quantization method is used to increase the compression ratio with respect to the frequency coefficient, and a constant conversion method irrespective of the size of the transform becomes a factor of reducing the compression ratio of the image.
이러한 문제점을 해결하기 위해 본 발명의 실시예는, 변환단위에 따라 다른 변환방법 또는 다른 역변환방법을 사용하여 잔차블록을 변환 또는 주파수계수블록을 역변환함으로써 압축률을 향상시키는 데 주된 목적이 있다.In order to solve this problem, an embodiment of the present invention has a main object of improving a compression ratio by transforming a residual block or inversely transforming a frequency coefficient block using another transform method or another inverse transform method according to a transform unit.
전술한 목적을 달성하기 위해 본 발명의 일 실시예는, 영상을 부호화/복호화하는 장치에 있어서, 현재 블록의 예측블록을 생성하고 상기 현재 블록에서 상기 예측 블록을 감산하여 생성된 잔차 블록을 변환하여 주파수변환블록을 생성하되 변환단위에 따라 다른 변환방법을 사용하여 상기 주파수변환블록을 생성한 후 양자화하여 비트스트림으로 부호화하는 영상 부호화기; 및 비트스트림으로부터 양자화된 주파수변환 블록 및 변환단위에 대한 정보를 추출하고 상기 양자화된 주파수변환블록을 역 양자화하여 주파수변환블록을 복원하고 상기 주파수변환블록을 역 변환하여 잔차 블록을 복원하되 상기 추출된 변환단위에 따라 다른 역 변환방법을 사용하여 상기 주파수변환블록을 복원하고 움직임 벡터에 의해 참조되는 참조블록으로부터 예측블록을 생성하여 상기 복원되는 잔차 블록과 상기 예측 블록을 가산하여 현재 블록을 복원하는 영상 복호화기를 포함하는 것을 특징으로 하는 영상 부호화/복호화 장치를 제공한다.In order to achieve the above object, an embodiment of the present invention provides a device for encoding / decoding an image, generating a prediction block of a current block and converting a residual block generated by subtracting the prediction block from the current block. An image encoder for generating a frequency transform block and generating the frequency transform block by using a transform method according to a transform unit, and then quantizing and encoding the frequency transform block into a bitstream; And extracting information about the quantized frequency transform block and the transform unit from the bitstream, inversely quantizing the quantized frequency transform block, to restore the frequency transform block, and to inversely transform the frequency transform block to restore the residual block. An image reconstructing the frequency transform block using a different inverse transform method according to a transform unit, generating a prediction block from a reference block referred to by a motion vector, and adding the reconstructed residual block and the prediction block to reconstruct the current block. It provides a video encoding / decoding apparatus comprising a decoder.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 영상을 부호화하는 장치에 있어서, 현재 블록의 예측블록을 생성하는 예측부; 상기 현재 블록에서 상기 예측 블록을 감산하여 잔차 블록을 생성하는 감산부; 상기 잔차 블록을 변환하여 주파수변환블록을 생성하되 변환단위에 따라 다른 변환방법을 사용하여 상기 주파수변환블록을 생성하는 변환부; 상기 주파수변환블록을 양자화하여 양자화된 주파수변환블록을 생성하는 양자화부; 및 상기 양자화된 주파수변환블록을 비트스트림으로 부호화하는 비트스트림 생성부를 포함하는 것을 특징으로 하는 영상 부호화 장치를 제공한다.In addition, an embodiment of the present invention to achieve another object of the present invention, an apparatus for encoding an image, comprising: a prediction unit for generating a prediction block of the current block; A subtraction unit for generating a residual block by subtracting the prediction block from the current block; A transformer for generating the frequency transform block by transforming the residual block and generating a frequency transform block using a different transform method according to a transform unit; A quantizer configured to quantize the frequency transform block to generate a quantized frequency transform block; And a bitstream generator which encodes the quantized frequency transform block into a bitstream.
상기 변환부는, 변환단위(TU)의 크기로서 이용가능한 크기 중 최소 크기 변환단위의 변환 시에 이산정현변환(DST: Discrete Sine Transform) 기법을 이용하여 상기 잔차블록을 주파수변환블록으로 변환할 수 있다.The transform unit may convert the residual block into a frequency transform block by using a Discrete Sine Transform (DST) technique when converting the smallest transform unit among sizes available as a transform unit (TU). .
상기 최소 크기를 갖는 변환단위는, 4 x 4 크기일 수 있다.The transformation unit having the minimum size may be 4 × 4 size.
또한, 상기 변환부는, 상기 최소 크기 변환단위 이외의 변환단위에 대하여는 변환 시 이산여현변환(DCT: Discrete Cosine Transform) 기법을 이용하여 상기 잔차블록을 주파수변환블록으로 변환할 수 있다.The transform unit may convert the residual block into a frequency transform block using a Discrete Cosine Transform (DCT) technique for transform units other than the minimum size transform unit.
상기 변환부는, 예측모드가 인터 예측인 경우에 한하여 변환단위에 따라 다른 변환방법을 사용할 수 있다.The transform unit may use a different transform method according to a transform unit only when the prediction mode is inter prediction.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 영상을 복호화하는 장치에 있어서, 비트스트림으로부터 양자화된 주파수변환 블록 및 변환단위에 대한 정보를 추출하는 비트스트림 복호부; 상기 양자화된 주파수변환블록을 역 양자화하여 주파수변환블록을 복원하는 역양자화부; 상기 주파수변환블록을 역 변환하여 잔차 블록을 복원하되 상기 추출된 변환단위에 따라 다른 역 변환방법을 사용하여 상기 주파수변환블록을 복원하는 역변환부; 움직임 벡터에 의해 참조되는 참조블록으로부터 예측블록을 생성하는 예측부; 및 상기 복원되는 잔차 블록과 상기 예측 블록을 가산하여 상기 현재 블록을 복원하는 가산부를 포함하는 것을 특징으로 하는 영상 복호화 장치를 제공한다.In addition, to achieve another object of the present invention, an embodiment of the present invention, an apparatus for decoding an image, comprising: a bitstream decoding unit for extracting information about a quantized frequency transform block and transform unit from the bitstream; An inverse quantizer for restoring a frequency transform block by inversely quantizing the quantized frequency transform block; An inverse transform unit for restoring the residual block by inversely transforming the frequency transform block, and restoring the frequency transform block using another inverse transform method according to the extracted transform unit; A prediction unit generating a prediction block from a reference block referenced by the motion vector; And an adder configured to reconstruct the current block by adding the reconstructed residual block and the prediction block.
상기 역변환부는, 상기 추출된 변환단위로부터 식별되는 정보가 변환단위의 크기로서 이용가능한 크기 중 최소 크기 변환단위임을 의미하는 경우 역 이산정현변환(역 DST) 기법을 이용하여 상기 주파수변환블록을 복원할 수 있다.The inverse transform unit may restore the frequency transform block using an inverse discrete sine transform (inverse DST) technique when the information identified from the extracted transform unit is a minimum transform unit among sizes available as the transform unit size. Can be.
상기 최소 크기를 갖는 변환단위는, 4 x 4 크기일 수 있다.The transformation unit having the minimum size may be 4 × 4 size.
상기 역변환부는, 상기 최소 크기 변환단위 이외의 변환단위에 대하여는 역 이산여현변환(역 DCT) 기법을 이용하여 상기 주파수변환블록을 복원할 수 있다.The inverse transform unit may restore the frequency transform block to a transform unit other than the minimum size transform unit by using an inverse discrete cosine transform (inverse DCT) technique.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 영상을 부호화/복호화하는 방법에 있어서, 현재 블록의 예측블록을 생성하고 상기 현재 블록에서 상기 예측 블록을 감산하여 생성된 잔차 블록을 변환하여 주파수변환블록을 생성하되 변환단위에 따라 다른 변환방법을 사용하여 상기 주파수변환블록을 생성한 후 양자화하여 비트스트림으로 부호화하는 영상 부호화단계; 및 비트스트림으로부터 양자화된 주파수변환 블록 및 변환단위에 대한 정보를 추출하고 상기 양자화된 주파수변환블록을 역 양자화하여 주파수변환블록을 복원하고 상기 주파수변환블록을 역 변환하여 잔차 블록을 복원하되 상기 추출된 변환단위에 따라 다른 역 변환방법을 사용하여 상기 주파수변환블록을 복원하고 움직임 벡터에 의해 참조되는 참조블록으로부터 예측블록을 생성하여 상기 복원되는 잔차 블록과 상기 예측 블록을 가산하여 현재 블록을 복원하는 영상 복호화단계를 포함하는 것을 특징으로 하는 영상 부호화/복호화 방법을 제공한다.In addition, to achieve another object of the present invention, an embodiment of the present invention, in a method for encoding / decoding an image, generates a prediction block of a current block and subtracts the prediction block from the current block Generating a frequency transform block by transforming the block, and generating the frequency transform block using a different transform method according to a transform unit, and then quantizing and encoding the block into a bitstream; And extracting information about the quantized frequency transform block and the transform unit from the bitstream, inversely quantizing the quantized frequency transform block, to restore the frequency transform block, and to inversely transform the frequency transform block to restore the residual block. An image for reconstructing the frequency transform block by using an inverse transform method according to a transform unit, generating a prediction block from a reference block referred to by a motion vector, and adding the reconstructed residual block and the prediction block to reconstruct the current block. It provides a video encoding / decoding method comprising a decoding step.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 영상을 부호화하는 방법에 있어서, 현재 블록의 예측블록을 생성하는 예측단계; 상기 현재 블록에서 상기 예측 블록을 감산하여 잔차 블록을 생성하는 감산단계; 상기 잔차 블록을 변환하여 주파수변환블록을 생성하되 변환단위에 따라 다른 변환방법을 사용하여 상기 주파수변환블록을 생성하는 변환단계; 상기 주파수변환블록을 양자화하여 양자화된 주파수변환블록을 생성하는 양자화단계; 및 상기 양자화된 주파수변환블록을 비트스트림으로 부호화하는 비트스트림 생성단계를 포함하는 것을 특징으로 하는 영상 부호화 방법을 제공한다.In addition, to achieve another object of the present invention, an embodiment of the present invention, a method for encoding an image, comprising: a prediction step of generating a prediction block of the current block; Subtracting the prediction block from the current block to generate a residual block; Transforming the residual block to generate a frequency transform block, and generating the frequency transform block using a different transform method according to a transform unit; A quantization step of quantizing the frequency transform block to generate a quantized frequency transform block; And a bitstream generation step of encoding the quantized frequency transform block into a bitstream.
또한, 본 발명의 다른 목적을 달성하기 위해 본 발명의 일 실시예는, 영상을 복호화하는 방법에 있어서, 비트스트림으로부터 양자화된 주파수변환 블록 및 변환단위에 대한 정보를 추출하는 비트스트림 복호단계; 상기 양자화된 주파수변환블록을 역 양자화하여 주파수변환블록을 복원하는 역양자화단계; 상기 주파수변환블록을 역 변환하여 잔차 블록을 복원하되 상기 추출된 변환단위에 따라 다른 역 변환방법을 사용하여 상기 주파수변환블록을 복원하는 역변환단계; 움직임 벡터에 의해 참조되는 참조블록으로부터 예측블록을 생성하는 예측단계; 및 상기 복원되는 잔차 블록과 상기 예측 블록을 가산하여 상기 현재 블록을 복원하는 가산단계를 포함하는 것을 특징으로 하는 영상 복호화 방법을 제공한다.In addition, to achieve another object of the present invention, an embodiment of the present invention, a method for decoding an image, comprising: a bitstream decoding step of extracting information about a quantized frequency transform block and transform unit from the bitstream; An inverse quantization step of restoring a frequency transform block by inverse quantizing the quantized frequency transform block; An inverse transform step of restoring the residual block by inversely transforming the frequency transform block, and restoring the frequency transform block using another inverse transform method according to the extracted transform unit; A prediction step of generating a prediction block from a reference block referred to by the motion vector; And an addition step of reconstructing the current block by adding the reconstructed residual block and the prediction block.
이상에서 설명한 바와 같이 본 발명의 실시예에 의하면, 변환단위에 따라 다른 변환방법 또는 다른 역변환방법을 사용하여 잔차블록을 변환 또는 주파수계수블록을 역변환함으로써 압축률을 향상시키는 효과가 있다.As described above, according to the embodiment of the present invention, the compression ratio is improved by transforming the residual block or inversely transforming the frequency coefficient block by using another transform method or another inverse transform method according to the transform unit.
특히, 변환단위가 4x4의 크기와 같은 최소 변환단위인 경우에는 DST를 사용하고 그 이상의 변환단위에 대하여는 DCT를 사용함으로써 부호화 시의 압축률을 극대화하고, 복호화 시에도 유사한 방법으로 역변환 함으로써 비트스트림을 복호화할 수 있다.In particular, if the transform unit is the smallest transform unit such as 4x4 size, DST is used and DCT is used for the higher transform units to maximize the compression rate during encoding and to decode the bitstream by inverse transform in a similar manner when decoding. can do.
도 1은 코딩단위(CU)의 크기와 쿼드트리 형태를 나타낸 도면이다.
도 2는 한 코딩단위(CU)내에서 부호화되는 예측단위(PU)의 종류와 순서를 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 영상 부호화 장치를 간략하게 나타낸 블록 구성도이다.
도 4는 본 발명의 일 실시예에 따른 정수 정현 역변환의 개념을 도시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 영상 복호화 장치를 간략하게 나타낸 블록 구성도이다.
도 6은 본 발명의 일 실시예에 따른 영상 부호화 방법을 설명하기 위한 순서도이다.
도 7은 본 발명의 일 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도이다.1 is a diagram illustrating a size and a quadtree shape of a coding unit (CU).
FIG. 2 is a diagram illustrating the types and procedures of prediction units (PUs) encoded in one coding unit (CU).
3 is a block diagram schematically illustrating a video encoding apparatus according to an embodiment of the present invention.
4 illustrates a concept of an integer sine inverse transform according to an embodiment of the present invention.
5 is a block diagram schematically illustrating an image decoding apparatus according to an embodiment of the present invention.
6 is a flowchart illustrating an image encoding method according to an embodiment of the present invention.
7 is a flowchart illustrating an image decoding method according to an embodiment of the present invention.
이하에서 후술할 영상 부호화 장치(Video Encoding Apparatus), 영상 복호화 장치(Video Decoding Apparatus)는 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 무선 통신 단말기(Wireless Communication Terminal), 스마트폰(Smart Phone), TV 등과 같은 사용자 단말기이거나 응용 서버와 서비스 서버 등 서버 단말기일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 부호화하거나 복호화하거나 부호화 또는 복호화를 위해 인터 또는 인트라 예측하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미할 수 있다.A video encoding apparatus (Video Encoding Apparatus), a video decoding apparatus (Video Decoding Apparatus) to be described below is a personal computer (PC), notebook computer, personal digital assistant (PDA), portable multimedia player (PMP) It may be a user terminal such as a portable multimedia player (PSP), a PlayStation Portable (PSP), a wireless communication terminal, a smart phone, a TV, or a server terminal such as an application server or a service server. A communication device such as a communication modem for communicating with various devices or a wired / wireless communication network, a memory for storing various programs and data for encoding or decoding an image or inter or intra prediction for encoding or decoding, and executing a program And a microprocessor for controlling and the like. It can mean a variety of devices.
또한, 영상 부호화 장치에 의해 비트스트림으로 부호화된 영상은 실시간 또는 비실시간으로 인터넷, 근거리 무선 통신망, 무선랜망, 와이브로망, 이동통신망 등의 유무선 통신망 등을 통하거나 케이블, 범용 직렬 버스(USB: Universal Serial Bus) 등과 같은 다양한 통신 인터페이스를 통해 영상 복호화 장치로 전송되어 영상 복호화 장치에서 복호화되어 영상으로 복원되고 재생될 수 있다.In addition, the image encoded in the bitstream by the video encoding apparatus is real-time or non-real-time through the wired or wireless communication network, such as the Internet, local area wireless communication network, wireless LAN network, WiBro network, mobile communication network, or the like, or a cable, universal serial bus (USB: Universal) It may be transmitted to an image decoding apparatus through various communication interfaces such as a serial bus, and may be decoded by the image decoding apparatus to restore and reproduce the image.
통상적으로 동영상은 일련의 픽처(Picture)로 구성될 수 있으며, 각 픽처들은 프레임 또는 블록(Block)과 같은 소정의 영역으로 분할될 수 있다. 영상의 영역이 블록으로 분할되는 경우에는 분할된 블록은 부호화 방법에 따라 크게 인트라 블록(Intra Block), 인터 블록(Inter Block)으로 분류될 수 있다. 인트라 블록은 인트라 예측 부호화(Intra Prediction Coding) 방식을 사용하여 부호화되는 블록을 뜻하는데, 인트라 예측 부호화란 현재 부호화를 수행하는 현재 픽처 내에서 이전에 부호화되고 복호화되어 복원된 블록들의 화소를 이용하여 현재 블록의 화소를 예측함으로써 예측 블록을 생성하고 현재 블록의 화소와의 차분값을 부호화하는 방식이다. 인터 블록은 인터 예측 부호화(Inter Prediction Coding)를 사용하여 부호화되는 블록을 뜻하는데, 인터 예측 부호화란 하나 이상의 과거 픽처 또는 미래 픽처를 참조하여 현재 픽처 내의 현재 블록을 예측함으로써 예측 블록을 생성하고 현재 블록과의 차분값을 부호화하는 방식이다. 여기서, 현재 픽처를 부호화하거나 복호화하는데 참조되는 프레임을 참조 프레임(Reference Frame)이라고 한다.In general, a video may be composed of a series of pictures, and each picture may be divided into a predetermined area such as a frame or a block. When a region of an image is divided into blocks, the divided blocks may be classified into intra blocks and inter blocks according to an encoding method. An intra block refers to a block that is encoded by using an intra prediction coding method. An intra prediction coding is performed by using pixels of blocks previously encoded, decoded, and reconstructed in a current picture that performs current encoding. A prediction block is generated by predicting pixels of a block and a difference value with pixels of the current block is encoded. An inter block refers to a block that is encoded using inter prediction coding. Inter prediction coding generates a prediction block by predicting a current block within a current picture by referring to one or more past or future pictures, and then generates a current block. This is a method of encoding the difference value with. Here, a frame referred to for encoding or decoding the current picture is referred to as a reference frame.
도 3은 본 발명의 일 실시예에 따른 영상 부호화 장치를 간략하게 나타낸 블록 구성도이다.3 is a block diagram schematically illustrating a video encoding apparatus according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 영상 부호화 장치(300)는 영상의 현재 블록을 예측부(310)를 통해 예측 블록을 생성하여 현재 블록과 예측 블록과의 잔차신호를 생성하여 변환 및 양자화를 통해 영상을 부호화하는 장치로서, 도 3에 도시한 바와 같이, 예측부(310), 감산부(320), 변환부(330), 양자화부(340), 비트스트림 생성부(350), 역양자화부(360), 역변환부(370), 가산부(380) 및 프레임메모리(390)를 포함하여 구성될 수 있다.The
부호화하고자 하는 입력 영상은 코딩단위(Coding Unit)로 입력이 되는데, 본 발명에서, 코딩단위(Coding Unit)는 N×N 블록 형태이며 N은 2n의 크기를 가진다. 코딩단위는 쿼드트리(Quad Tree)의 형태로 이루어져 있으며 가장 큰 코딩단위(Largest Coding Unit)로부터 지정된 깊이까지 부호화를 수행한다.The input image to be encoded is input in a coding unit. In the present invention, the coding unit has a N × N block form and N has a size of 2 n . The coding unit is configured in the form of a quad tree and performs coding from the largest coding unit (Largest Coding Unit) to a specified depth.
하나의 코딩단위(CU)내에서 예측단위(Prediction Unit)별로 예측이 되는데, 이때, 영사 부호화 장치에서 예측단위(PU)는 NxM 블록 형태이며 N과 M은 각각 2n, 2m (n, m은 자연수)크기를 가진다. 하나의 코딩단위(CU) 내에서 예측의 종류는 도 2에 도시한 바와 같이 4개의 인터 예측단위(PU) 형태와 2개의 인트라 예측단위(PU) 형태를 가질 수 있으며, 모든 예측단위(PU)에 대해 코딩을 수행하여 압축효율이 가장 좋은 예측단위(PU)의 형태에 대한 정보를 영상 복호화 장치로 전송한다. 이때 압축효율에 대한 기준은 영상 정보 전송에 필요한 비트 수와 원본블록과 예측블록간의 차이값을 포함하는 율-왜곡 값(Rate Distortion cost)을 사용할 수 있다.Prediction is performed for each prediction unit within one coding unit (CU), where the prediction unit (PU) is in the form of an NxM block and N and M are 2 n , 2 m (n, m, respectively). Has a natural number). The type of prediction in one coding unit (CU) may have four inter prediction unit (PU) types and two intra prediction unit (PU) types, as shown in FIG. 2, and all prediction units (PUs). Coding is performed to transmit information on the type of prediction unit (PU) having the best compression efficiency to the image decoding apparatus. In this case, the criterion for the compression efficiency may be a rate distortion cost including a number of bits required for image information transmission and a difference value between an original block and a prediction block.
예측부(310)는 현재 코딩단위(CU)의 예측단위(PU)를 예측하기 위하여 다른 프레임을 이용하여 예측 블록을 생성하거나 이미 부호화된 화소값(예컨대 좌측, 좌측하단, 상단, 우측상단과 화소값)을 이용하여 예측블록을 생성한다. 즉, 영상 내 예측모드에서 예측부(310)는 이미 부호화 과정을 거치고 복원된 좌측, 좌측하단, 상단, 우측상단의 코딩단위(CU)정보를 이용하여 예측모드를 결정하고 이 예측모드를 이용하여 예측블록을 생성하는 반면, 영상 간 예측모드에서 예측부(310)는 이미 부호화 과정을 거치고 복원된 이전 프레임에서 움직임 추정을 통해 움직임 벡터를 생성하고 이 움직임 벡터를 이용한 움직임 보상 과정에서 예측 블록을 생성할 수 있다.The
감산부(320)는 현재 블록의 각 화소의 원 화소값과 예측부(310)가 생성한 예측값의 차이값을 계산하여 잔차신호를 생성한다.The
변환부(330)는 감산부(320)에 의해 생성된 잔차신호를 주파수 영역으로 변환한다. 변환부(330)는 변환단위(Transform Unit)별로 변환이 되는데, 변환단위(TU)는 N×N 블록 형태이며 N은 2n의 크기를 가진다. 변환부(330)에서 현재 예측단위(PU)에 대하여 예측이 수행된 직후에 변환단위(TU) 별로 변환이 수행되며, 변환단위(TU)의 크기는 해당 코딩단위(CU)의 크기보다 같거나 작으며, 해당 예측단위(PU)의 크기와는 무관하다. 변환단위(TU)는 코딩단위(CU)와 같은 쿼드트리 형태로 변환단위를 나누어 변환을 수행할 수 있으며, 코딩단위(CU)의 크기로부터 임의로 지정된 깊이까지 순차적으로 변환을 수행한다. 이때 최저 율-왜곡 값(RD cost)을 가지는 변환단위(TU)의 크기에 대한 정보로서 변환단위(TU)의 깊이별 분열변환플래그(split transform flag)를 영상 복호화 장치로 전송한다.The
여기서, 변환부(330)는 시간축의 화상 신호를 주파수축으로 변환하는 이산 여현 변환(DCT: Discrete Cosine Transform, 이하 'DCT 변환'이라 칭함) 등을 이용하여 잔차신호를 주파수 영역으로 변환할 수 있다. Here, the
특히, 본 발명의 일 실시예에 따르면, 예측부(310)에서 인터 예측으로 예측되고, 변환단위(TU)의 크기로서 이용가능한 크기 중 최소 크기(예컨대 4x4의 크기)인 경우, 예측을 통해 도출해낸 잔차신호를 아래 수학식 1 또는 수학식 2를 통해 상관 계수를 도출했을 때 -0.5에서 0.5 사이의 값을 가지는 경우가 확률적으로 많이 발생하게 된다. 따라서, 이 경우 DCT 변환과 비교하여 더 높은 압축 성능을 나타내는 이산 정현 변환(DST: Discrete Sine Transform)을 사용하여 부호화 성능을 향상시킬 수 있다. 만일, 변환단위가 변환단위(TU)의 크기로서 이용가능한 크기 중 최소 크기보다 큰 경우에는 DCT 변환을 사용할 수 있다.In particular, according to an embodiment of the present invention, when the
수학식 1 및 2에서 Bc는 현재 4x4 크기의 블록, Bs는 현재 블록을 수평 방향(오른쪽 또는 왼쪽)으로 1 화소 (Pixel) 위치 이동한 블록을 나타낸다. Bc x,y 는 현재 4x4 블록 내의 (x,y) 위치를 나타내며, BLS x,y와 BRS x,y는 각각 현재 4X4 블록에서 왼쪽과 오른쪽으로 1 화소 위치 이동된 4x4 블록 내에서의 (x,y) 위치를 나타내며, B'C와 B'LS 그리고 B'RS는 각각 Bc x,y , BLS x,y, BRS x,y에 해당하는 4x4 블록에서의 화소의 평균값을 나타낸다. 현재 4x4크기의 변환단위(TU)가 코딩유닛(CU) 내에서 가장 오른쪽에 위치한 변환단위(TU)라면, 수학식 1이 사용되고, 그렇지 않은 경우 수학식 2가 상관 계수 계산에 이용된다.In
양자화부(340)는 변환부(330)에 의해 주파수 영역으로 변환된 잔차신호로 이루어진 주파수변환블록을 양자화(Quantization)한다. 이 때 양자화된 변환계수가 모두 0 이 되는 휘도신호와 색차신호의 변환단위(TU)에 대하여 계수가 0임을 의미하는 부호화된 블록 플래그(cbf)를 전송한다. 양자화 방식으로는 데드존 균일 경계 양자화(DZUTQ: Dead Zone Uniform Threshold Quantization, 이하 'DZUTQ'라 칭함) 또는 양자화 가중치 매트릭스 (Quantization Weighted Matrix) 등과 같은 다양한 양자화 기법을 이용할 수 있다.The
비트스트림 생성부(350)는 양자화부(340)에 의해 양자화된 주파수 계수로 이루어진 양자화된 주파수변환블록을 비트스트림으로 부호화한다. 특히, 본 발명의 실시예에서는 인터 예측으로 예측되고, 변환단위(TU)의 크기로서 이용가능한 크기 중 최소 크기, 예컨대 4x4의 크기를 변환단위(TU)가 가지는 경우에 DST 변환을 사용하고, 나머지 8x8 TU, 16x16 TU, 32x32 TU 등에 대해서는 DCT 변환을 사용하므로 변환의 유형을 지시하는 어떠한 정보도 전송되지 않고 압축율의 향상을 얻을 수 있다. 이러한 부호화 기술로서는 엔트로피 부호화(Entropy Encoding) 기술이 사용될 수 있으나, 반드시 이에 한정하지 않고 다른 다양한 부호화 기술이 사용될 수도 있을 것이다.The
또한, 비트스트림 생성부(350)는 양자화 주파수 계수들을 부호화한 비트열뿐만 아니라 부호화된 비트열을 복호화하는 데 필요한 다양한 정보들을 부호화 데이터에 포함시킬 수 있다. 즉, 부호화 데이터는 부호화된 블록 형태(CBP: Coded Block Pattern), 델타 양자화 계수(Delta Quantization Parameter) 및 양자화 주파수 계수가 부호화 된 비트열이 포함되는 필드와 예측에 필요한 정보(예를 들어, 인트라 예측의 경우 인트라 예측 모드 또는 인터 예측의 경우 움직임 벡터 등)를 위한 비트가 포함되는 필드를 포함할 수 있다.In addition, the
역양자화부(360)는 변환 및 양자화된 잔차 블록(즉, 양자화된 주파수변환블록)을 역 양자화(Inverse Quantization)하여 주파수계수블록을 복원하고, 역변환부(370)는 복원된 주파수계수블록을 역 변환(Inverse Transform)하여 잔차 블록을 복원(Reconstruction)한다. 여기서, 역 양자화와 역 변환은 변환부(330)가 수행한 변환 과정과 양자화부(340)가 수행한 양자화 과정을 각각 역으로 수행함으로써 이루어질 수 있다. 특히, 본 발명의 실시예에서는 인터 예측으로 예측되고, 변환단위(TU)의 크기로서 이용가능한 크기 중 최소 크기, 예컨대 4x4의 크기를 변환단위(TU)가 가지는 경우 역 DST 변환을 사용하고, 기보다 큰 8x8 TU, 16x16 TU, 32x32 TU 등에 대하여 역 DCT 변환을 사용할 수 있다. 즉, 역양자화부(360) 및 역변환부(370)는 변환부(330) 및 양자화부(340)로부터 발생되어 전달되는 변환 및 양자화에 관한 정보(예를 들어, 변환 및 양자화 타입에 대한 정보)를 이용하여 역 양자화 및 역 변환을 수행할 수 있다.The
가산부(380)는 예측부(310)에서 생성된 예측 블록과 역변환부(370)에 의해 생성된 잔차 블록을 가산하여 복원된 블록을 생성한다.The
프레임 메모리(390)는 가산부(380)에서 복원된 블록을 저장하여 인트라 혹은 인터 예측 수행 시 예측 블록을 생성하기 위해 참조블록으로 사용된다.The
한편, 변환부(330)에서 이산 정현 변환은 수학식 3을 통해 계산될 수 있다.Meanwhile, the discrete sine transform in the
수학식 3의 X는 이산 정현 변환될 목적 영상을 나타내고, Y는 이산 정현 변환된 제2 영상 계수를 나타낸다. 또한 N은 이산 정현 변환의 크기를 나타낸다.X in
도 4는 본 발명의 일 실시예에 따른 이산 정현 변환의 개념을 도시한 도면이다.4 is a diagram illustrating the concept of discrete sine transform according to an embodiment of the present invention.
목적 영상이 4x4 크기라면, 수학식 1에서의 이산 정현 변환은 도 4에 도시된 실시예에 따라서 간단히 수행될 수 있다.If the target image is 4x4 in size, the discrete sine transform in
도 5는 본 발명의 일 실시예에 따른 영상 복호화 장치의 구성을 나타낸 블록 구성도이다.5 is a block diagram illustrating a configuration of an image decoding apparatus according to an embodiment of the present invention.
도 5에 도시한 바와 같이, 본 발명의 일 실시예에 따른 영상 복호화 장치(500)는 비트스트림 복호부(510), 역양자화부(520), 역변환부(530), 가산부(540) 및 예측부(550)를 포함하여 구성된다.As shown in FIG. 5, the
비트스트림 복호부(510)는 비트스트림을 복호화하여 양자화된 주파수변환블록을 추출한다.The
비트스트림 복호부(510)는 부호화 데이터를 복호화하여 양자화된 주파수변환블록뿐만 아니라 복호화에 필요한 정보들을 복호화하거나 추출할 수 있다. 복호화에 필요한 정보들은 부호화 데이터(즉, 비트스트림) 내의 부호화된 비트열을 복호화하는 데 필요한 정보들을 말하며, 예를 들어 블록 타입에 대한 정보, 움직임 벡터에 대한 정보, 변환 및 양자화 타입에 대한 정보 등이 될 수 있으며, 이외의 다양한 정보들이 될 수 있다.The
즉, 비트스트림 복호부(510)는 영상 부호화 장치(300)에 의해 부호화된 데이터인 비트스트림을 복호화하여 영상의 현재 블록에 대한 화소 정보를 포함하고 있는 양자화된 주파수변환 블록을 추출하고, 추출된 예측에 필요한 정보를 예측부(550)로 전달한다.That is, the
예측부(550)는 비트스트림 복호부(510)로부터 전달된 예측에 필요한 정보를 이용하여 영상 부호화 장치(300)의 예측부(310)와 동일한 방식으로 현재 블록을 예측할 수 있다.The
예측부(550)는 현재 블록의 움직임 벡터에 의해 참조되는 참조블록을 이용하여 예측블록을 생성한다.The
역양자화부(520)는 비트스트림 복호부(510)에 의해 비트스트림으로부터 추출된 양자화된 주파수변환 블록을 역 양자화한다.The
본 발명의 일 실시예에 따른 영상 복호화 장치(500)의 역변환부(530)는 도 3을 통해 전술한 영상 부호화 장치(300)의 역변환부(370)와 동일하게 현재블록이 인터 예측으로 예측되고, 변환단위(TU)가 4x4이면, 역 DST 변환을 이용하여 역 양자화된 주파수변환 블록을 화소 영역으로 역 변환하고, 나머지 다른 주파수변환 블록에 대해서는 역 DCT 변환을 이용하여 역 양자화된 주파수변환 블록을 화소 영역으로 역 변환할 수 있다. The
가산부(540)는 역변환부(530)에 의해 역 변환되어 복원된 잔차신호와 예측부(550)에 의해 예측된 예측 화소값을 더하여 현재 블록의 원 화소값을 복원한다.The
가산부(540) 또는 예측부(550)에 의해 복원된 현재 블록은 프레임 메모리(560)로 전달되어, 예측부(550)에서 다른 블록을 예측하는 데 활용될 수 있다.The current block reconstructed by the
프레임 메모리(560)는 복원된 영상을 저장하여 영상 내 예측 블록 및 영상 간 예측 블록 생성을 가능하게 한다.The
본 발명의 일 실시예에 따른 영상 부호화/복호화 장치는 도 3의 영상 부호화 장치(300)의 비트스트림 출력단을 도 4의 영상 복호화 장치(500)의 비트스트림 입력단에 연결하여 구성될 수 있다.An image encoding / decoding apparatus according to an embodiment of the present invention may be configured by connecting a bitstream output terminal of the
본 발명의 일 실시예에 따른 영상 부호화/복호화 장치는, 현재 블록의 예측블록을 생성하고 현재 블록에서 예측 블록을 감산하여 생성된 잔차 블록을 변환하여 주파수변환블록을 생성하되 변환단위에 따라 다른 변환방법을 사용하여 주파수변환블록을 생성한 후 양자화하여 비트스트림으로 부호화하는 영상 부호화기; 및 비트스트림으로부터 양자화된 주파수변환 블록 및 변환단위에 대한 정보를 추출하고 양자화된 주파수변환블록을 역 양자화하여 주파수변환블록을 복원하고 주파수변환블록을 역 변환하여 잔차 블록을 복원하되 추출된 변환단위에 따라 다른 역 변환방법을 사용하여 주파수변환블록을 복원하고 움직임 벡터에 의해 참조되는 참조블록으로부터 예측블록을 생성하여 복원되는 잔차 블록과 예측 블록을 가산하여 현재 블록을 복원하는 영상 복호화기를 포함한다.An image encoding / decoding apparatus according to an embodiment of the present invention generates a frequency transform block by generating a prediction block of a current block and subtracting the residual block generated by subtracting the prediction block from the current block, but converting the transform block according to a conversion unit. An image encoder for generating a frequency transform block using the method and quantizing the encoding block to encode the bitstream into a bitstream; Extract information about the quantized frequency transform block and the transform unit from the bitstream, inverse quantize the quantized frequency transform block, restore the frequency transform block, and inverse transform the frequency transform block to restore the residual block, Accordingly, an image decoder for reconstructing the frequency transform block using another inverse transform method, generating a prediction block from the reference block referenced by the motion vector, and adding the reconstructed residual block and the prediction block to reconstruct the current block.
여기서 영상 부호화기는 본 발명의 일 실시예에 따른 영상 부호화 장치(300)로 구현 가능하며, 영상 복호화기는 본 발명의 일 실시예에 따른 영상 복호화 장치(500)로 구현 가능하다.The image encoder may be implemented by the
도 6은 본 발명의 일 실시예에 따른 영상 부호화 방법을 설명하기 위한 순서도이다.6 is a flowchart illustrating an image encoding method according to an embodiment of the present invention.
즉, 영상 부호화 장치(300)는 영상의 현재 블록을 움직임 벡터 값을 이용하여 예측값을 생성하는 예측단계(S610), 현재 블록의 원 화소값과 예측 화소값의 차이값을 계산하여 잔차신호를 생성하는 감산단계(S620), 인터 예측을 통해 생성된 잔차신호가 4x4 변환단위(TU)일 때 DST 변환을 이용하고, 다른 크기의 변환단위일 때 DCT변환을 이용하여 주파수 영역으로 변환하는 변환단계(S630), 주파수 영역으로 변환된 잔차신호를 양자화하는 양자화단계(S640), 최적의 양자화된 주파수변환 잔차신호를 결정하여 비트스트림으로 부호화하는 비트스트림 생성단계(S650)를 거쳐 영상을 부호화한다.That is, the
여기서, 예측단계(S610)는 예측부(310)의 기능에, 감산단계(S620)는 감산부(320)의 기능에, 변환단계(S630)는 변환부(330)의 기능에, 양자화단계(S640)는 양자화부(340)의 기능에, 비트스트림 생성단계(S650)는 비트스트림 생성부(350)의 기능에 각각 대응되므로 상세한 설명은 생략한다.Here, the prediction step (S610) is the function of the
도 7은 본 발명의 일 실시예에 따른 영상 복호화 방법을 설명하기 위한 순서도이다.7 is a flowchart illustrating an image decoding method according to an embodiment of the present invention.
유무선 통신망 또는 케이블 등을 통해 영상에 대한 비트스트림을 수신하여 저장한 영상 복호화 장치(500)는 사용자의 선택 또는 실행 중인 다른 프로그램의 알고리즘에 따라 영상을 재생하기 위해, 영상의 현재 블록을 움직임 벡터 값을 이용하여 예측값을 생성하고 양자화된 주파수변환계수가 존재할 경우에만 역양자화되고 역변환된 잔차신호를 더한 원 화소값 영상을 복호화하여 복원한다.The
이를 위해, 영상 복호화 장치(500)는 비트스트림을 복호화하여 영상의 현재 블록의 화소값에 대한 정보를 나타내는 양자화된 주파수변환 블록을 추출하는 비트스트림 복호단계(S710). 양자화된 주파수변환 블록을 역 양자화하는 역양자화단계(S720), 역 양자화된 주파수변환 블록이 인터 예측으로 예측된 4x4변환단위(TU)일 때 역DST 변환을 이용하고 4x4변환단위보다 클때 역 DCT 변환을 하여 화소 영역으로 역변환하는 역변환단계(S730), 움직임 벡터 값을 이용하여 예측값을 생성하는 예측단계(S740), 단계 S730에서 복원된 현재 블록의 잔차신호와 단계 S740에서 예측된 현재 블록의 각 화소의 예측 화소값을 더하여 현재 블록의 원 화소값을 복원하는 가산단계(S750)를 거쳐 전송된 비트스트림을 복호화한다. 만일 양자화된 주파수변환 잔차신호가 없을 경우 예측단계(S740)의 결과가 현재 블록이 된다.To this end, the
여기서, 비트스트림 복호단계(S710)는 비트스트림 복호부(510)의 동작에 대응되며, 역양자화단계(S720)는 역양자화부(520)의 동작에 대응되며, 역변환단계(S730)는 역변환부(530)의 동작에 대응되며, 예측단계(S740)는 예측부(550)의 동작에 대응되며, 가산단계(S750)는 가산부(540)의 동작에 대응되므로 상세한 설명은 생략한다.Here, the bitstream decoding step S710 corresponds to the operation of the
본 발명의 일 실시예에 따른 영상 부호화/복호화 방법은, 본 발명의 일 실시예에 따른 영상 부호화 방법과 본 발명의 일 실시예에 따른 영상 복호화 방법을 결합하여 구현함으로써 실현할 수 있다.An image encoding / decoding method according to an embodiment of the present invention may be realized by combining the image encoding method according to an embodiment of the present invention and the image decoding method according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 영상 부호화/복호화 방법은, 현재 블록의 예측블록을 생성하고 상기 현재 블록에서 상기 예측 블록을 감산하여 생성된 잔차 블록을 변환하여 주파수변환블록을 생성하되 변환단위에 따라 다른 변환방법을 사용하여 상기 주파수변환블록을 생성한 후 양자화하여 비트스트림으로 부호화하는 영상 부호화단계 및 비트스트림으로부터 양자화된 주파수변환 블록 및 변환단위에 대한 정보를 추출하고 상기 양자화된 주파수변환블록을 역 양자화하여 주파수변환블록을 복원하고 상기 주파수변환블록을 역 변환하여 잔차 블록을 복원하되 상기 추출된 변환단위에 따라 다른 역 변환방법을 사용하여 상기 주파수변환블록을 복원하고 움직임 벡터에 의해 참조되는 참조블록으로부터 예측블록을 생성하여 상기 복원되는 잔차 블록과 상기 예측 블록을 가산하여 현재 블록을 복원하는 영상 복호화단계를 포함한다.In the image encoding / decoding method according to an embodiment of the present invention, a prediction block of a current block is generated and a residual block generated by subtracting the prediction block from the current block is generated to generate a frequency transform block according to a conversion unit. An image encoding step of generating the frequency transform block using another transform method and then quantizing and encoding the bit transform stream into bitstreams, extracting information about the quantized frequency transform block and transform unit from the bitstream, and inverting the quantized frequency transform block. Reconstruct the frequency transform block by quantization and inverse transform the frequency transform block to recover the residual block, and restore the frequency transform block using a different inverse transform method according to the extracted transform unit and refer to the reference block referred to by the motion vector. The reconstructed residual block by generating a prediction block from the By adding the prediction block and a picture decoding step of reconstructing the current block.
여기서 영상 부호화단계는 본 발명의 일 실시예에 따른 영상 부호화 단계로 구현 가능하며, 영상 복호화단계는 본 발명의 일 실시예에 따른 영상 복호화 단계로 구현 가능하다.The image encoding step may be implemented as an image encoding step according to an embodiment of the present invention, and the image decoding step may be implemented as an image decoding step according to an embodiment of the present invention.
본 발명의 실시예를 구성하는 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.Although all the components constituting the embodiment of the present invention may be implemented in one independent hardware, each of some or all of the components are selectively combined to some or all of the functions combined in one or a plurality of hardware. It may be implemented as a computer program having a program module for performing the operation. Codes and code segments constituting the computer program may be easily inferred by those skilled in the art. Such a computer program may be stored in a computer readable storage medium and read and executed by a computer, thereby implementing embodiments of the present invention. The storage medium of the computer program may include a magnetic recording medium, an optical recording medium, a carrier wave medium, and the like.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical idea of the present invention, and those skilled in the art to which the present invention pertains may make various modifications and changes without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention but to describe the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The protection scope of the present invention should be interpreted by the following claims, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of the present invention.
이상에서 설명한 바와 같이 본 발명의 실시예에 의하면, 변환단위에 따라 다른 변환방법 또는 다른 역변환방법을 사용하여 잔차블록을 변환 또는 주파수계수블록을 역변환함으로써 압축률을 향상시키는 효과를 발생하는 매우 유용한 발명이다.As described above, according to the embodiment of the present invention, it is a very useful invention to generate the effect of improving the compression ratio by transforming the residual block or inversely transforming the frequency coefficient block by using another transform method or another inverse transform method according to the transform unit. .
Claims (4)
비트스트림으로부터 양자화된 주파수변환블록을 생성하는 비트스트림 복호부;
상기 양자화된 주파수변환블록을 역 양자화하여 주파수변환블록을 복원하는 역양자화부;
상기 주파수변환블록을 역 변환하여 잔차 블록을 복원하되 변환단위의 크기에 대한 정보를 고려하여 역 변환방법을 선택하여, 상기 잔차 블록을 복원하는 역변환부;
인터 예측 또는 인트라 예측을 이용하여 예측블록을 생성하는 예측부; 및
상기 잔차 블록과 상기 예측 블록을 가산하여 현재 블록을 복원하는 가산부
를 포함하고,
상기 역변환부는,
상기 변환단위의 크기에 대한 정보가 변환단위의 크기에 대한 정보가 4 x 4 크기임을 의미하는 경우에만 DST 타입 변환 기법을 고려하고,
상기 DST 타입 변환 기법은
4개의 입력값들 {X(0), X(1), X(2), X(3)}과 이들 각각에 대응하는 계수들의 곱을 합산하여 4개의 출력값들 {X'(0), X'(1), X'(2), X'(3)}을 생성하는 변환이고,
상기 4개의 출력값들 {X'(0), X'(1), X'(2), X'(3)}을 생성하는 변환은
첫 번째 출력값 X'(0)을 구하는데 사용되는, 첫 번째 입력값 X(0)에 대응하는 계수, 두 번째 입력값 X(1)에 대응하는 계수 및 세 번째 입력값 X(2)에 대응하는 계수의 부호가 모두 양(+)이고,
두 번째 출력값 X'(1)을 구하는데 사용되는, 첫 번째 입력값 X(0)에 대응하는 계수 및 두 번째 입력값 X(1)에 대응하는 계수의 부호가 모두 양(+)이고,
세 번째 출력값 X'(2)을 구하는데 사용되는, 두 번째 입력값 X(1)에 대응하는 계수 및 세 번째 입력값 X(2)에 대응하는 계수의 부호가 모두 음(-)이고,
네 번째 출력값 X'(3)을 구하는데 사용되는, 두 번째 입력값 X(1)에 대응하는 계수의 부호는 음(-)이고 세 번째 입력값 X(2)에 대응하는 계수의 부호는 양(+)인 변환인 것을 특징으로 하는 영상 복호화 장치.In the apparatus for decoding an image,
A bitstream decoder for generating a quantized frequency transform block from the bitstream;
An inverse quantizer for restoring a frequency transform block by inversely quantizing the quantized frequency transform block;
An inverse transform unit for restoring the residual block by inversely transforming the frequency transform block, selecting an inverse transform method in consideration of information on the size of a transform unit, and restoring the residual block;
A prediction unit generating a prediction block using inter prediction or intra prediction; And
An adder which adds the residual block and the prediction block to reconstruct a current block;
Including,
The inverse transform unit,
Consider the DST type conversion method only when the information on the size of the conversion unit means that the information on the size of the conversion unit is 4 × 4 size.
The DST type conversion technique
Four inputs {X (0), X (1), X (2), X (3)} and the product of the coefficients corresponding to each of them are summed and the four outputs {X '(0), X' (1), X '(2), X' (3)}
The transformation that produces the four output values {X '(0), X' (1), X '(2), X' (3)}
The coefficient corresponding to the first input value X (0), the coefficient corresponding to the second input value X (1), and the third input value X (2), used to find the first output value X '(0). The signs of the coefficients are all positive,
The sign of the coefficient corresponding to the first input value X (0) and the coefficient corresponding to the second input value X (1), used to find the second output value X '(1), is both positive,
The sign of the coefficient corresponding to the second input value X (1) and the coefficient corresponding to the third input value X (2), used to find the third output value X '(2), is both negative (-),
The sign of the coefficient corresponding to the second input value X (1), used to obtain the fourth output value X '(3), is negative and the sign of the coefficient corresponding to the third input value X (2) is positive. The video decoding apparatus, characterized in that the conversion is (+).
상기 변환 단위는 코딩 단위로부터 쿼드트리 형태로 분할되고,
비트스트림 복호부는 상기 변환 단위의 깊이별 분열변환플래그(split transform flag)를 복호화하는 것을 특징으로 하는 영상 복호화 장치.The method according to claim 1,
The transform unit is divided into quadtree forms from coding units,
And a bitstream decoder to decode a split transform flag for each depth of the transform unit.
상기 비트스트림 복호부는,
상기 변환 단위에 상응하고, 양자화 계수가 모두 0임을 나타내는 부호화된 블록 플래그를 복호화하는 것을 특징으로 하는 영상 복호화 장치.The method according to claim 3,
The bitstream decoder,
And a coded block flag corresponding to the transform unit and indicating that all of the quantization coefficients are zero.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180090727A KR101997655B1 (en) | 2018-08-03 | 2018-08-03 | Method and Apparatus for Image Encoding/Decoding |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180090727A KR101997655B1 (en) | 2018-08-03 | 2018-08-03 | Method and Apparatus for Image Encoding/Decoding |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110064541A Division KR101943049B1 (en) | 2011-06-30 | 2011-06-30 | Method and Apparatus for Image Encoding/Decoding |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180090975A KR20180090975A (en) | 2018-08-14 |
KR101997655B1 true KR101997655B1 (en) | 2019-10-01 |
Family
ID=63230398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180090727A KR101997655B1 (en) | 2018-08-03 | 2018-08-03 | Method and Apparatus for Image Encoding/Decoding |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101997655B1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060039470A1 (en) * | 2004-08-19 | 2006-02-23 | Korea Electronics Technology Institute | Adaptive motion estimation and mode decision apparatus and method for H.264 video codec |
-
2018
- 2018-08-03 KR KR1020180090727A patent/KR101997655B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060039470A1 (en) * | 2004-08-19 | 2006-02-23 | Korea Electronics Technology Institute | Adaptive motion estimation and mode decision apparatus and method for H.264 video codec |
Also Published As
Publication number | Publication date |
---|---|
KR20180090975A (en) | 2018-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101997604B1 (en) | Method and Apparatus for Video Encoding/Decoding | |
KR101943049B1 (en) | Method and Apparatus for Image Encoding/Decoding | |
KR101830352B1 (en) | Method and Apparatus Video Encoding and Decoding using Skip Mode | |
KR101955374B1 (en) | Method and Apparatus for Image Encoding/Decoding By Fast Coding Unit Mode Decision | |
US9288495B2 (en) | Adaptive secondary prediction-based image encoding/decoding method, device and recording medium | |
KR101377660B1 (en) | Motion Vector Encoding/Decoding Method and Apparatus Using Multiple Motion Vector Estimation and Video Encoding/Decoding Method and Apparatus Using Same | |
KR101681303B1 (en) | Method and Apparatus for Encoding/Decoding of Video Data Using Partitioned-Block Prediction | |
KR101677480B1 (en) | Method and Apparatus for Encoding/Decoding of Video Data Using Efficient Selection of Intra Prediction Mode Set | |
KR20130085838A (en) | Video coding method and apparatus using weighted prediction | |
KR102072124B1 (en) | Method and Apparatus for Image Encoding/Decoding using detailed prediction unit | |
KR20120074534A (en) | Video encoding/decoding method and apparatus using feature vector of adjacent block | |
KR101418104B1 (en) | Motion Vector Coding Method and Apparatus by Using Motion Vector Resolution Combination and Video Coding Method and Apparatus Using Same | |
KR20120035804A (en) | Frequency transform block coding method and apparatus and image encoding/decoding method and apparatus using same | |
KR20120009861A (en) | Method and Apparatus for Encoding/Decoding of Video Data Using Expanded Skip Mode | |
KR20110032671A (en) | Video encoding/decoding method and apparatrus in consideration of low frequency component | |
KR101681301B1 (en) | Method and Apparatus for Encoding/Decoding of Video Data Capable of Skipping Filtering Mode | |
KR101943058B1 (en) | Method and Apparatus for Video Encoding/Decoding | |
KR20120066741A (en) | Code motion information generating/motion information reconstructing method and apparatus using motion information merge and image encoding/decoding method and apparatus using the same | |
KR101449683B1 (en) | Motion Vector Coding Method and Apparatus by Using Motion Vector Resolution Restriction and Video Coding Method and Apparatus Using Same | |
KR20120009618A (en) | Method and Apparatus for Partitioned-Coding of Frequency Transform Unit and Method and Apparatus for Encoding/Decoding of Video Data Thereof | |
KR101377529B1 (en) | Video Coding and Decoding Method and Apparatus Using Adaptive Motion Vector Coding/Encoding | |
KR101997655B1 (en) | Method and Apparatus for Image Encoding/Decoding | |
KR101997599B1 (en) | Method and Apparatus for Image Encoding/Decoding using Efficient Non-fixed Quantization | |
KR20110098089A (en) | Video encoding apparatus and method, and video decoding apparatus and method | |
KR101943425B1 (en) | Method and Apparatus for Image Encoding/Decoding using Efficient Non-fixed Quantization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |