KR20200096474A - Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus - Google Patents
Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus Download PDFInfo
- Publication number
- KR20200096474A KR20200096474A KR1020200098329A KR20200098329A KR20200096474A KR 20200096474 A KR20200096474 A KR 20200096474A KR 1020200098329 A KR1020200098329 A KR 1020200098329A KR 20200098329 A KR20200098329 A KR 20200098329A KR 20200096474 A KR20200096474 A KR 20200096474A
- Authority
- KR
- South Korea
- Prior art keywords
- block
- transform
- difference
- size
- prediction
- 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- 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/124—Quantisation
-
- 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/134—Methods 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
- H04N19/136—Incoming video signal characteristics or properties
-
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
본 발명은 입력 영상을 복수의 블록으로 분할하고, 분할된 블록들 중 부호화 블록을 계층적으로 분할하여 변환 부호화하는 기술에 관한 것이다. The present invention relates to a technique of dividing an input image into a plurality of blocks and transcoding by hierarchically dividing a coding block among the divided blocks.
일반적으로, 화면간 예측 부호화를 수행하는 경우, 변환 부호화 방법은 예측 분할 블록에 모두 동일한 4×4 또는 8×8 변환 블록을 적용하여 변환 부호화한다.In general, when inter prediction encoding is performed, the transcoding method applies the same 4×4 or 8×8 transform blocks to all of the predictive split blocks to perform transcoding.
예를 들어, 종래의 변환 부화화 방법은 16×16, 16×8, 8×16, 8×8, 4×8, 4×4 블록 모드에 대해 움직임 예측을 수행하여 차분 블록을 생성할 수 있다. 그리고, 4×4 또는 8×8 변환 블록을 이용하여 차분 블록을 변환 부호화할 수 있다. 이처럼, 종래의 변환 부호화 방법은 예측 모드에 관계없이 차분 블록에 모두 동일하게 변환 부호화를 수행함에 따라, 부호화 효율을 감소시킬 수 있다.For example, the conventional transformation and encoding method may generate a differential block by performing motion prediction for 16×16, 16×8, 8×16, 8×8, 4×8, and 4×4 block modes. . In addition, the difference block may be transcoded using a 4×4 or 8×8 transform block. As described above, the conventional transcoding method performs transcoding in the same manner for all of the difference blocks regardless of the prediction mode, thereby reducing coding efficiency.
특히, 8×8 변환 블록을 이용하는 경우, 종래의 변환 부화화 방법은 예측 모드가 16×16, 16×8, 8×16, 8×8인 경우에만 변환 부호화를 수행할 수 있다는 한계가 존재한다.In particular, in the case of using an 8×8 transform block, there is a limitation in that the conventional transform and encoding method can perform transcoding only when the prediction mode is 16×16, 16×8, 8×16, and 8×8. .
이에 따라, 영상의 특성에 따라 변환 부호화를 다르게 적용하여 부호화 효율을 향상시킬 수 있는 기술이 요구된다.Accordingly, there is a need for a technique capable of improving encoding efficiency by applying transcoding differently according to characteristics of an image.
본 발명은 부호화 블록의 크기에 맞는 변환 타입 정보를 생성하고, 변환 타입 정보에 기초하여 차분 블록을 변환 부호화하는 방법 및 장치, 복호화 방법 및 장치를 제공한다.The present invention provides a method and apparatus for generating transform type information suitable for the size of a coded block and transcoding a difference block based on the transform type information, and a decoding method and apparatus.
본 발명의 일실시예에 따른 부호화 방법은, 부호화 블록을 복수의 예측 모드 정보에 따라 예측 부호화하여 복수의 예측 블록들을 생성하는 단계, 상기 부호화 블록과 상기 복수의 예측 블록들을 이용하여 복수의 차분 블록들을 생성하는 단계, 미리 정의된 변환 타입 정보 또는 적응적으로 결정된 변환 타입 정보에 따라 상기 차분 블록들을 각각 변환하는 단계 상기 변환된 차분 블록들 중 어느 하나를 최종 블록으로 결정하는 단계를 포함할 수 있다.An encoding method according to an embodiment of the present invention includes predictive encoding a coded block according to a plurality of prediction mode information to generate a plurality of prediction blocks, and a plurality of difference blocks using the coding block and the plurality of prediction blocks. Generating, transforming each of the difference blocks according to predefined transformation type information or adaptively determined transformation type information, determining any one of the transformed difference blocks as a final block. .
또한, 상기 최종 블록으로 결정하는 단계는, 상기 변환된 차분 블록들 중 부호화 성능이 가장 좋은 어느 하나를 최종 블록으로 결정할 수 있다.In the determining as the final block, one of the transformed difference blocks having the best coding performance may be determined as the final block.
또한, 상기 변환된 차분 블록들의 율-왜곡 비용을 각각 계산하는 단계를 더 포함할 수 있다. 그러면, 상기 최종 블록으로 결정하는 단계는, 상기 계산된 율-왜곡 비용에 기초하여 상기 최종 블록을 결정할 수 있다.Further, it may further include calculating the rate-distortion cost of the transformed difference blocks, respectively. Then, in the determining of the final block, the final block may be determined based on the calculated rate-distortion cost.
또한, 상기 최종 블록으로 결정하는 단계는, 상기 계산된 율-왜곡 비용이 최소인 차분 블록을 최종 블록으로 결정하는 단계, 및 상기 최종 블록에 적용된 변환 타입 정보 및 예측 모드 정보의 전송 여부를 결정하는 단계를 포함할 수 있다.In addition, the determining as the final block may include determining a difference block having the minimum calculated rate-distortion cost as a final block, and determining whether to transmit transformation type information and prediction mode information applied to the final block. It may include steps.
또한, 상기 최종 블록에 적용된 변환 타입 정보 및 예측 모드 정보의 전송 여부를 결정하는 단계는, 상기 최종 블록에 적용된 변환 타입 정보 및 예측 모드 정보와, 부호화 블록에 인접한 주변 블록의 변환 타입 정보 및 예측 모드 정보에 기초하여 상기 최종 블록에 적용된 변환 타입 정보 및 예측 모드 정보를 전송할지 여부를 결정할 수 있다.In addition, determining whether to transmit the transform type information and prediction mode information applied to the final block may include transform type information and prediction mode information applied to the final block, transform type information and prediction mode of neighboring blocks adjacent to the coding block. Based on the information, it may be determined whether to transmit information on a transform type and information on a prediction mode applied to the final block.
또한, 상기 최종 블록으로 결정하는 단계는, 상기 최종 블록에 적용된 변환 타입 정보 및 예측 모드 정보와, 부호화 블록의 패턴 정보(Coded Block Pattern: CBP)를 결합하여 부가 정보를 생성할 수 있다.In the determining of the final block, additional information may be generated by combining transform type information and prediction mode information applied to the final block and coded block pattern (CBP) information.
또한, 상기 차분 블록들을 각각 변환하는 단계는, 단위 블록의 크기, 부호화 블록의 크기, 및 주변 블록의 양자화 정보 중 적어도 하나를 이용하여 적응적으로 변환 깊이를 결정하는 단계, 및 상기 부호화 블록의 크기를 기준으로 상기 변환 깊이 마다 변환 블록의 크기를 결정하는 단계를 포함할 수 있다.In addition, the transforming of the difference blocks may include adaptively determining a transformation depth using at least one of a size of a unit block, a size of a coding block, and quantization information of a neighboring block, and a size of the coding block It may include determining a size of a transform block for each transform depth based on.
또한, 상기 최종 블록에 적용된 예측 모드 정보에 기초하여 상기 부호화 블록을 예측 부호화하여 최종 예측 블록을 생성하는 단계, 상기 최종 예측 블록과 상기 부호화 블록을 이용하여 최종 차분 블록을 생성하는 단계, 상기 최종 블록에 적용된 변환 타입 정보에 기초하여 상기 최종 차분 블록을 변환하는 단계, 및 상기 변환된 최종 차분 블록을 양자화 및 엔트로피 부호화하는 단계를 더 포함할 수 있다.In addition, generating a final prediction block by predicting and encoding the coding block based on prediction mode information applied to the final block, generating a final difference block using the final prediction block and the coding block, the final block It may further include transforming the final difference block based on the transform type information applied to, and quantizing and entropy encoding the transformed final difference block.
본 발명에 따르면, 부호화 블록의 크기에 맞는 변환 타입 정보에 기초하여 차분 블록을 변환 부호화 함에 따라 부호화 효율을 향상시킬 수 있다.According to the present invention, encoding efficiency may be improved by transcoding a difference block based on transform type information suitable for the size of the coding block.
본 발명에 따르면, 부호화 블록에 대해 미리 정의된 변환 타입 정보에 따라 차분 블록을 고정적으로 변환 부호화할 수 있다.According to the present invention, a difference block may be fixedly transformed and coded according to transform type information predefined for the coding block.
본 발명에 따르면, 부호화 블록에 따라 적응적으로 생성된 변환 타입 정보에 따라 차분 블록을 적응적으로 변환 부호화 할 수 있다.According to the present invention, a difference block may be adaptively transformed and coded according to transform type information adaptively generated according to the coding block.
도 1은 본 발명의 일실시예에 따른 변환 부호화 방법을 설명하기 위해 제공되는 흐름도이다.
도 2는 본 발명의 일실시예에 따른 부호화 장치에서 최종 블록을 결정하는 구성을 설명하기 위해 제공되는 흐름도이다.
도 3은 본 발명의 일실시예에 따른 부호화 장치에서 최종 블록의 변환 타입 정보에 기초하여 변환된 최종 차분 블록을 부호화하는 구성을 설명하기 위해 제공되는 흐름도이다.
도 4는 본 발명의 일실시예에 따른 부호화 장치에서 부호화 블록에 적용 가능한 변환 타입 정보를 도시한 도면이다.
도 5는 본 발명의 일실시예에 따른 부호화 장치에서 변환 블록의 크기가 예측 블록의 크기보다 큰 변환 블록을 적용하는 경우의 변환 타입 정보를 도시한 도면이다.
도 6은 본 발명의 일실시예에 따른 부호화 장치의 세부 구성을 도시한 블록도이다.
도 7은 본 발명의 일실시예에 따른 변환 복호화 방법을 설명하기 위해 제공되는 흐름도이다.
도 8은 본 발명의 일시시예에 따른 복호화 장치의 세부 구성을 도시한 블록도이다.
도 9는 본 발명의 일시시예에 따른 부호화 블록의 패턴 정보(CBP)를 이용하는 구성을 설명하기 위해 제공되는 도면이다.1 is a flowchart provided to explain a transcoding method according to an embodiment of the present invention.
2 is a flow chart provided to explain a configuration for determining a final block in an encoding apparatus according to an embodiment of the present invention.
3 is a flowchart illustrating a configuration of encoding a final difference block transformed based on transform type information of the final block in an encoding apparatus according to an embodiment of the present invention.
4 is a diagram illustrating transform type information applicable to a coding block in an encoding apparatus according to an embodiment of the present invention.
5 is a diagram illustrating transform type information when a transform block having a size of a transform block larger than that of a prediction block is applied in the encoding apparatus according to an embodiment of the present invention.
6 is a block diagram showing a detailed configuration of an encoding apparatus according to an embodiment of the present invention.
7 is a flowchart provided to explain a transform decoding method according to an embodiment of the present invention.
8 is a block diagram showing a detailed configuration of a decoding apparatus according to a temporary example of the present invention.
9 is a diagram provided to explain a configuration using pattern information (CBP) of a coding block according to a temporary example of the present invention.
이하에서, 첨부된 도면을 참조하여 본 발명에 따른 실시예들을 상세히 설명한다. 그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 또한, 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, the present invention is not limited or limited by the embodiments. In addition, the same reference numerals shown in each drawing denote the same member.
도 1은 본 발명의 일실시예에 따른 변환 부호화 방법을 설명하기 위해 제공되는 흐름도이다.1 is a flowchart provided to explain a transcoding method according to an embodiment of the present invention.
도 1에 따르면, 101 단계에서, 부호화 장치는, 입력 영상을 복수의 블록들로 분할할 수 있다. 예를 들어, 부호화 장치는, 입력 영상을 복수의 단위 블록으로 분할할 수 있다. 여기서, 단위 블록은 부호화 블록 들 중 최대 크기를 갖는 블록으로서, 최상위 부호화 블록을 의미할 수 있다.Referring to FIG. 1, in
이어, 102 단계에서, 부호화 장치는, 최대 변환 크기 및 분할 깊이를 결정할 수 있다.Subsequently, in
일례로, 부호화 장치는 단위 블록과 단위 블록의 예측 블록을 이용하여 생성한 차분 블록에 적용할 부호화 블록의 최대 변환 크기 및 분할 깊이를 결정할 수 있다. 이때, 부호화 장치는, 단위 블록의 크기에 기초하여 최대 변환 크기와 분할 깊이를 결정할 수 있다. 또한, 부호화 장치는, 주변 블록의 양자화 정보를 이용하여 최대 변환 크기와 분할 깊이를 결정할 수도 있다.For example, the encoding apparatus may determine a maximum transform size and a split depth of a coding block to be applied to a difference block generated by using the unit block and the prediction block of the unit block. In this case, the encoding apparatus may determine a maximum transform size and a split depth based on the size of the unit block. In addition, the encoding apparatus may determine the maximum transform size and split depth using quantization information of neighboring blocks.
그리고, 103 단계에서, 부호화 장치는, 단위 블록을 복수의 부호화 블록으로 분할 할 수 있다. 이때, 부호화 장치는, 최대 변환 크기 및 분할 깊이에 기초하여 단위 블록을 복수의 부호화 블록들로 분할할 수 있다.Then, in
이어, 104 단계에서, 부호화 장치는, 부호화 블록에 대한 복수의 예측 블록을 생성할 수 있다. 이때, 부호화 장치는, 복수의 예측 모드에 따라 부호화 블록을 예측 부호화하여 복수의 예측 블록을 생성할 수 있다.Subsequently, in
일례로, 부호화 장치는, 화면간 예측 모드 또는 화면내 예측 모드를 이용하여 부호화 블록을 예측 부호화하여 예측 블록을 생성할 수 있다. 여기서, 화면간 예측 모드는, 32×32, 16×16, 16×8, 8×16, 8×8, 8×4, 4×8 및 4×4 등의 예측 모드를 포함할 수 있다. 그리고, 화면내 예측 모드는 DC 예측 모드, 수직(Vertical) 예측 모드, 수평(Horizontal) 예측 모드 등 다양한 방향성 예측 모드들을 포함할 수 있다.For example, the encoding apparatus may predictively encode a coded block using an inter prediction mode or an intra prediction mode to generate a prediction block. Here, the inter prediction mode may include prediction modes such as 32×32, 16×16, 16×8, 8×16, 8×8, 8×4, 4×8, and 4×4. In addition, the intra prediction mode may include various directional prediction modes such as a DC prediction mode, a vertical prediction mode, and a horizontal prediction mode.
먼저, 화면간 예측 모드를 이용하는 경우, 부호화 장치는 16×16 예측 모드를 적용한 경우의 예측 블록, 16×8 예측 모드를 이용한 경우의 예측 블록, … , 4×4 예측 모드를 이용한 경우의 예측 블록을 생성할 수 있다. 그리고, 화면내 예측 모드를 이용하는 경우, 부호화 장치는 DC 예측 모드를 이용한 경우의 예측 블록, 수직 예측 모드를 이용한 경우의 예측 블록, 수평 예측 모드를 이용한 경우의 예측 블록 등을 생성할 수 있다.First, in the case of using the inter prediction mode, the encoding apparatus is a prediction block when a 16×16 prediction mode is applied, a prediction block when a 16×8 prediction mode is used, ... , A prediction block in the case of using the 4×4 prediction mode can be generated. In addition, when the intra prediction mode is used, the encoding apparatus may generate a prediction block when the DC prediction mode is used, a prediction block when a vertical prediction mode is used, a prediction block when a horizontal prediction mode is used, and the like.
그리고, 105 단계에서, 부호화 장치는 예측 블록과 부호화 블록을 이용하여 차분 블록을 생성할 수 있다. 이때, 부호화 장치는 각 예측 블록과 부호화 블록의 차를 통해 차분 블록을 생성할 수 있다.Then, in
일례로, 5개의 예측 모드가 이용되어 5개의 예측 블록이 생성된 경우, 부호화 장치는, 부호화 블록에서 예측 블록 1을 감산하여 차분 블록 1을 생성하고, 부호화 블록에서 예측 블록 2를 감산하여 차분 블록 2를 생성하고, … 부호화 블록에서 예측 블록 5를 감산하여 차분 블록 5를 생성할 수 있다.For example, when 5 prediction blocks are generated by using 5 prediction modes, the encoding apparatus generates a difference block 1 by subtracting the prediction block 1 from the coding block, and subtracts the prediction block 2 from the coding block to generate a difference block. 2, and… A difference block 5 may be generated by subtracting the prediction block 5 from the coding block.
이어, 106 단계에서, 부호화 장치는 미리 정의된 변환 타입 정보 또는 적응적으로 결정된 변환 타입 정보에 따라 복수의 차분 블록들을 각각 변환할 수 있다. 여기서, 변환 타입 정보는 변환 블록의 크기 및 변환 깊이를 포함할 수 있다. 이때, 변환 타입 정보는 단위 블록의 크기, 부호화 블록의 크기, 및 주변 블록의 양자화 정보 중 적어도 하나에 기초하여 미리 정의될 수도 있고, 적응적으로 결정될 수도 있다. 여기서, 주변 블록은 부호화 블록과 인접하게 위치하는 블록을 의미한다.Subsequently, in
또한, 변환 타입 정보는 단일 변환 타입으로 미리 정의되거나, 적응적으로 결정될 수도 있고, 복수의 변환 타입으로 미리 정의되거나, 적응적으로 결정될 수도 있다. 이때, 변환 타입은 트리 구조 또는 계층적 구조를 가질 수 있다.Also, the transformation type information may be predefined as a single transformation type, may be adaptively determined, may be predefined as a plurality of transformation types, or may be adaptively determined. In this case, the transformation type may have a tree structure or a hierarchical structure.
일례로, 단일 변환 타입으로 미리 정의된 변환 타입 정보를 이용하는 경우, 16×16 예측 모드에 대응하는 변환 블록의 크기가 16×16, 변환 깊이가 1로 미리 정의될 수 있다. 그러면, 부호화 장치는 차분 블록을 16×16 변환 블록을 이용하여 변환할 수 있다.For example, in the case of using pre-defined transform type information as a single transform type, a size of a transform block corresponding to a 16x16 prediction mode may be predefined as 16x16 and a transform depth of 1. Then, the encoding apparatus may transform the difference block using a 16×16 transform block.
다른 예로, 복수의 변환 타입으로 미리 정의된 변환 타입 정보를 이용하는 경우, 16×16 예측 모드에 대응하는 변환 블록의 크기가 16×16, 16×8, 8×16, 8×8, 변환 깊이가 2로 미리 정의될 수 있다. 그러면, 부호화 장치는, 차분 블록을 16×16 변환 블록을 이용하여 변환하고, 차분 블록을 16×8 변환 블록을 이용하여 변환하고, 차분 블록을 8×16 변환 블록을 이용하여 변환할 수 있다. 이외에, 부호화 블록이 64×64인 경우, 변환 블록의 크기가 64×64, 변환 깊이가 3 또는 변환 블록의 크기가 32×32, 변환 깊이가 2, 등으로 미리 정의될 수 있다. 그리고, 부호화 블록이 32×32인 경우, 변환 블록의 크기가 16×16, 변환 깊이가 2 또는 변환 블록의 크기가 8×8, 변환 깊이가 1, 등으로 미리 정의될 수 있다.As another example, when using predefined transformation type information as a plurality of transformation types, the size of the transformation block corresponding to the 16×16 prediction mode is 16×16, 16×8, 8×16, 8×8, and the transformation depth is It can be predefined as 2. Then, the encoding apparatus may transform the difference block using a 16×16 transform block, transform the difference block using a 16×8 transform block, and transform the difference block using an 8×16 transform block. In addition, when the coding block is 64×64, the size of the transform block may be 64×64, the transform depth is 3, or the size of the transform block is 32×32, the transform depth is 2, and so on. In addition, when the coding block is 32×32, the size of the transform block may be 16×16, the transform depth is 2, or the size of the transform block is 8×8, the transform depth is 1, and so on.
또 다른 예로, 부호화 장치는, 단위 블록의 크기, 부호화 블록의 크기, 및 주변 블록의 양자화 정보 중 적어도 하나에 기초하여 변환 깊이를 적응적으로 결정할 수 있다. 그리고, 부호화 장치는 부호화 블록의 크기를 기준으로 변환 깊이마다 변환 블록의 크기를 결정할 수 있다. 이때, 부호화 장치는 부호화 블록 내의 화소값 변화 또는 움직임 정보에 기초하여 적응적으로 변환 깊이 및 변환 블록의 크기를 결정할 수 있다. 예를 들어, 부호화 장치는, 부호화 블록내의 화소값 변화가 크거나, 또는 움직임이 많을수록 작은 블록 사이즈를 변환 블록의 크기로 결정할 수 있다. 그리고, 부호화 장치는, 부호화 블록내의 화소값 변화가 작거나, 또는 움직임이 적을수록 큰 블록 사이즈를 변환 블록의 크기로 결정할 수 있다. 이처럼, 부호화 장치는, 영상의 특성에 따라 적응적으로 변환 블록의 크기를 결정할 수 있다. 이어, 결정된 변환 블록을 이용하여 차분 블록을 변환할 수 있다.As another example, the encoding apparatus may adaptively determine a transformation depth based on at least one of a size of a unit block, a size of a coding block, and quantization information of a neighboring block. In addition, the encoding apparatus may determine the size of the transform block for each transform depth based on the size of the coding block. In this case, the encoding apparatus may adaptively determine the transform depth and the size of the transform block based on a change in pixel value or motion information in the encoding block. For example, the encoding apparatus may determine a smaller block size as the size of the transform block as the pixel value change in the encoding block increases or the movement increases. In addition, the encoding apparatus may determine a larger block size as the size of the transform block as the pixel value change in the encoding block is smaller or the motion is smaller. In this way, the encoding apparatus may adaptively determine the size of the transform block according to the characteristics of the image. Then, the difference block may be transformed using the determined transform block.
그리고, 107 단계에서, 부호화 장치는, 복수의 차분 블록들 중에서 어느 하나를 최종 블록으로 결정할 수 있다. 이때, 부호화 장치는 차분 블록의 부호화 성능에 기초하여 복수의 차분블록들 중 어느 하나를 최종 블록으로 결정할 수 있다.Then, in
예를 들어, 부호화 장치는, 차분 블록의 율-왜곡 비용, 차분 블록의 차분값, 및 차분 블록의 변환 계수값 중 적어도 하나를 이용하여 최종 블록을 결정할 수 있다.For example, the encoding apparatus may determine the final block by using at least one of a rate-distortion cost of the difference block, a difference value of the difference block, and a transform coefficient value of the difference block.
이어, 108 단계에서, 부호화 장치는, 최종 블록에 적용된 예측 모드 정보 및 변환 타입 정보를 전송할지 여부를 결정할 수 있다.Subsequently, in
이때, 부호화 장치는, 주변 블록의 변환 타입 정보와, 최종 블록의 변환 타입 정보에 기초하여 최종 블록의 변환 타입 정보를 복호화 장치로 전송할지 여부를 결정할 수 있다. 마찬가지로, 부호화 장치는, 주변 블록의 예측 모드 정보와 최종 블록의 예측 모드 정보에 기초하여 최종 블록의 예측 모드 정보를 복호화 장치로 전송할지 여부를 결정할 수 있다. 여기서, 최종 블록은, 부호화 블록이다.In this case, the encoding apparatus may determine whether to transmit the transformation type information of the final block to the decoding apparatus based on the transformation type information of the neighboring block and the transformation type information of the final block. Similarly, the encoding apparatus may determine whether to transmit prediction mode information of the final block to the decoding apparatus based on prediction mode information of the neighboring block and prediction mode information of the final block. Here, the final block is a coded block.
일례로, 부호화 장치는, 부호화 블록의 변환 타입 정보와 주변 블록의 변환 타입 정보를 비교하여 일치 여부를 판단할 수 있다. 이때, 일치하는 경우, 부호화 장치는, 부호화 블록의 변환 타입 정보를 복호화 장치로 전송하지 않을 수 있다. 마찬가지로, 부호화 장치는 부호화 블록의 예측 모드 정보와 주변 블록의 예측 모드 정보를 비교하여 일치 여부를 판단할 수 있다. 이때, 일치하는 경우, 부호화 장치는 부호화 블록의 예측 모드 정보를 복호화 장치로 전송하지 않을 수 있다. 그러면, 복호화 장치는 주변 블록의 변환 타입 정보 및 예측 모드 정보를 이용하여 부호화 블록을 복원할 수 있다.As an example, the encoding apparatus may compare transformation type information of an encoding block with transformation type information of a neighboring block to determine whether they match. In this case, if they match, the encoding device may not transmit the transformation type information of the encoding block to the decoding device. Likewise, the encoding apparatus may compare prediction mode information of a coding block with prediction mode information of a neighboring block to determine whether they match. In this case, if they match, the encoding device may not transmit the prediction mode information of the encoding block to the decoding device. Then, the decoding apparatus may reconstruct the coded block by using the information on the transformation type and the prediction mode of the neighboring block.
이때, 부호화 블록의 변환 타입 정보 및 예측 모드 정보와 주변 블록의 변환 타입 정보 및 예측 모드 정보가 일치하지 않는 경우, 부호화 장치는, 부호화 블록의 변환 타입 정보 및 예측 모드 정보를 복호화 장치로 전송할 수 있다.In this case, when the transformation type information and prediction mode information of the encoding block and the transformation type information and prediction mode information of the neighboring block do not match, the encoding apparatus may transmit transformation type information and prediction mode information of the encoding block to the decoding apparatus. .
이어, 109 단계에서, 부호화 장치는, 부가 정보(Side Information)를 생성하여 전송할 수 있다. Subsequently, in
일례로, 부호화 블록의 변환 타입 정보 및 예측 모드 정보와 주변 블록의 변환 타입 정보 및 예측 모드 정보가 일치하지 않는 경우, 부호화 장치는, 부호화 블록의 패턴 정보(Coded Block Pattern: CBP)와, 최종 블록에 적용된 변환 타입 정보 및 예측 모드 정보를 결합하여 부가 정보를 생성할 수 있다. 그리고, 부호화 장치는, 생성된 부가 정보를 복호화 장치로 전송할 수 있다. As an example, when the transformation type information and prediction mode information of a coding block and the transformation type information and prediction mode information of a neighboring block do not match, the encoding device includes the coded block pattern (CBP) and the final block. Additional information may be generated by combining transformation type information and prediction mode information applied to. Then, the encoding device may transmit the generated additional information to the decoding device.
이처럼, 부호화 장치는, CBP 정보와, 변환 타입 정보 및 예측 모드 정보를 결합함으로써 부가 정보의 양을 감소시킬 수 있다. 이때, 단일 변환 타입을 이용하는 경우, 부호화 장치는, 번호나 타입을 나타내는 부가 정보를 복호화 장치로 전송하지 않을 수 있다. 예를 들어, 변환 블록의 크기가 N×N이고, 변환 깊이가 1인 경우, 단일 변환 타입만을 사용하므로 부호화 장치는 부호화 블록의 변환 타입 정보 및 부호화 블록의 예측 모드 정보를 포함하는 부가 정보를 복호화 장치로 전송하지 않아도 된다.As such, the encoding apparatus may reduce the amount of additional information by combining CBP information, transformation type information, and prediction mode information. In this case, when a single transform type is used, the encoding device may not transmit additional information indicating a number or type to the decoding device. For example, if the size of the transform block is N×N and the transform depth is 1, only a single transform type is used, so the encoding apparatus decodes additional information including information about the transform type of the coding block and information about the prediction mode of the coding block. You don't have to send it to the device.
도 2는 본 발명의 일실시예에 따른 부호화 장치에서 최종 블록을 결정하는 구성을 설명하기 위해 제공되는 흐름도이다.2 is a flow chart provided to explain a configuration for determining a final block in an encoding apparatus according to an embodiment of the present invention.
도 2에 따르면, 201 단계에서, 부호화 장치는 차분 블록들 각각의 부호화 성능을 결정할 수 있다. 이때, 부호화 장치는, 부호화 성능을 결정하기 위해, 율-왜곡 비용, 차분값, 변환 계수값 등을 이용할 수 있다.Referring to FIG. 2, in
그리고, 202 단계에서, 부호화 장치는, 결정된 부호화 성능에 기초하여 변환된 복수의 차분 블록들 중 어느 하나를 최종 블록으로 결정할 수 있다.Then, in
일례로, 율-왜곡 비용을 이용하는 경우, 부호화 장치는 변환된 복수의 차분 블록들 각각의 율-왜곡 비용을 계산할 수 있다. 그리고, 부호화 장치는, 율-왜곡 비용이 최소인 차분 블록을 최종 블록으로 결정할 수 있다.For example, when using the rate-distortion cost, the encoding apparatus may calculate the rate-distortion cost of each of the plurality of transformed difference blocks. In addition, the encoding apparatus may determine a difference block having a minimum rate-distortion cost as the final block.
예를 들어, 변환된 차분 블록이 3개인 경우, 부호화 장치는 변환된 차분 블록 1의 율-왜곡 비용 1을 계산하고, 변환된 차분 블록 2의 율-왜곡 비용 2를 계산하고, 변환된 차분 블록 3의 율-왜곡 비용 3을 계산할 수 있다. 이어, 부호화 장치는 율-왜곡 비용 1 내지 3 중에서 최소인 율-왜곡 비용을 선택할 수 있다. 그리고, 부호화 장치는, 선택된 율-왜곡 비용에 해당하는 변환된 차분 블록을 최종 블록으로 결정할 수 있다.For example, if there are 3 transformed difference blocks, the encoding apparatus calculates the rate-distortion cost 1 of the transformed difference block 1, calculates the rate-distortion cost 2 of the transformed difference block 2, and the transformed difference block A rate-distortion cost of 3 can be calculated. Subsequently, the encoding apparatus may select the minimum rate-distortion cost among rate-distortion costs 1 to 3. In addition, the encoding apparatus may determine a transformed difference block corresponding to the selected rate-distortion cost as the final block.
다른 예로, 차분값을 이용하는 경우, 부호화 장치는, 변환된 복수의 차분 블록들 각각의 차분값을 계산할 수 있다. 그리고, 부호화 장치는, 계산된 차분값에 기초하여 최종 블록을 결정할 수 있다.As another example, when using the difference value, the encoding apparatus may calculate a difference value of each of the plurality of transformed difference blocks. Then, the encoding device may determine the final block based on the calculated difference value.
또 다른 예를, 변환 계수값을 이용하는 경우, 부호화 장치는, 변환된 복수의 차분 블록들 각각의 변환 계수값을 계산할 수 있다. 그리고, 부호화 장치는, 계산된 변환 계수값에 기초하여 최종 블록을 결정할 수 있다.As another example, when using the transform coefficient value, the encoding apparatus may calculate a transform coefficient value of each of the plurality of transformed difference blocks. Then, the encoding device may determine the final block based on the calculated transform coefficient value.
도 3은 본 발명의 일실시예에 따른 부호화 장치에서 최종 블록의 변환 타입 정보에 기초하여 변환된 최종 차분 블록을 부호화하는 구성을 설명하기 위해 제공되는 흐름도이다.3 is a flowchart illustrating a configuration of encoding a final difference block transformed based on transform type information of the final block in an encoding apparatus according to an embodiment of the present invention.
도 3에 따르면, 먼저, 301 단계에서, 부호화 장치는, 최종 블록에 적용된 예측 모드 정보에 기초하여 예측 블록을 생성할 수 있다.Referring to FIG. 3, first, in
이어, 302 단계에서, 부호화 장치는 상기 생성된 예측 블록과 부호화 블록을 이용하여 최종 차분 블록을 생성할 수 있다. Subsequently, in
그리고, 303 단계에서, 부호화 장치는, 최종 블록에 적용된 변환 타입 정보에 기초하여 최종 차분 블록을 변환할 수 있다.Then, in
이어, 304 단계에서, 부호화 장치는, 변환된 최종 차분 블록을 양자화하고, 양자화된 최종 차분 블록을 엔트로피 부호화할 수 있다. 그리고, 부호화 장치는, 엔트로피 부호화를 통해 생성된 비트스트림을 복호화 장치로 전송할 수 있다.Subsequently, in
도 3에서는, 최종 블록에 적용된 예측 모드 정보에 기초하여 최종 예측 블록을 생성하고, 최종 블록에 적용된 변환 타입 정보에 기초하여 최종 차분 블록을 변환하고, 변환된 최종 차분 블록을 양자화 및 엔트로피 부호화하는 구성에 대해 설명하였으나, 이는 실시예에 해당되며, 부호화 장치는 최종 예측 블록을 생성 및 최종 차분 블록을 변환하는 구성을 생략하고, 최종 블록을 바로 양자화 및 엔트로피 부호화할 수도 있다. 다시 말해, 부호화 성능 결정을 위해 율-왜곡 비용을 이용하는 경우, 변환된 차분 블록들의 율-왜곡 비용을 비교하는 과정에서, 부호화 장치는, 율-왜곡 비용이 최소인 차분 블록을 최종 블록으로 결정하고, 결정된 최종 블록을 양자화하고, 양자화된 최종 블록을 엔트로피 부호화할 수 있다.In FIG. 3, a configuration for generating a final prediction block based on prediction mode information applied to the final block, transforming a final difference block based on transform type information applied to the final block, and quantizing and entropy encoding the transformed final difference block Has been described, but this corresponds to an embodiment, and the encoding apparatus may omit the configuration of generating the final prediction block and transforming the final difference block, and directly quantize and entropy encode the final block. In other words, when using the rate-distortion cost for determining the coding performance, in the process of comparing the rate-distortion cost of the transformed difference blocks, the encoding apparatus determines the difference block with the minimum rate-distortion cost as the final block. , The determined final block may be quantized, and the quantized final block may be entropy-coded.
도 4는 본 발명의 일실시예에 따른 부호화 장치에서 부호화 블록에 적용 가능한 변환 타입 정보를 도시한 도면이다. 도 4에서, 단위 블록의 크기는 8N×8N이고, 분할 깊이가 3이다.4 is a diagram illustrating transform type information applicable to a coding block in an encoding apparatus according to an embodiment of the present invention. In FIG. 4, the size of the unit block is 8N×8N, and the division depth is 3.
도 4에 따르면, 분할 깊이가 3인 경우, 단위 블록(410)은 4N×4N 부호화 블록들로 분할되고, 4N×4N 부호화 블록은 2N×2N 부호화 블록들로 분할되고, 2N×2N 부호화 블록은 N×N 부호화 블록들로 분할될 수 있다.According to FIG. 4, when the splitting depth is 3, the
먼저, 4N×4N 부호화 블록(430)에 대해 최대 변환 크기가 4N×4N, 변환 깊이가 3으로 미리 정의된 경우, 4N×4N 부호화 블록(430)에 적용 가능한 변환 타입은 431과 같을 수 있다. 이때, 4N×4N 부호화 블록(430)에 대해 최대 변환 크기가 2N×2N, 변환 깊이가 2로 미리 정의된 경우, 4N×4N 부호화 블록(430)에 적용 가능한 변환 타입은 432와 같을 수 있다.First, when the maximum transform size is defined as 4Nx4N and the transform depth is 3 for the
그리고, 2N×2N 부호화 블록(440)에 대해 최대 변환 크기가 2N×2N, 변환 깊이가 2로 미리 정의된 경우, 2N×2N 부호화 블록(440)에 적용 가능한 변환 타입은 441과 같을 수 있다. In addition, when the maximum transform size is defined as 2N×2N and the transform depth is 2 for the 2N×
그리고, N×N 부호화 블록(450)에 대해 최대 변환 크기가 N×N, 변환 깊이가 1로 미리 정의된 경우, N×N 부호화 블록(450)에 적용 가능한 변환 타입은 451과 같을 수 있다. 다시 말해, N×N 부호화 블록(450)에 적용 가능한 변환 블록의 크기가 4개일 수 있다.In addition, when the maximum transform size for the N×
도 5는 본 발명의 일실시예에 따른 부호화 장치에서 변환 블록의 크기가 예측 블록의 크기보다 큰 변환 블록을 적용하는 경우의 변환 타입 정보를 도시한 도면이다.5 is a diagram illustrating transform type information when a transform block having a size of a transform block larger than that of a prediction block is applied in the encoding apparatus according to an embodiment of the present invention.
도 5에 따르면, 4N×4N 부호화 블록(510)은 3개의 2N×2N 블록들과 4개의 N×N 블록들로 분할될 수 있다. 이때, 4N×4N 부호화 블록(510)에 대해 최대 변환 크기가 4N×4N, 변환 깊이가 3으로 미리 정의된 경우, 4N×4N 부호화 블록(510)에 적용 가능한 변환 타입은 520과 같을 수 있다.Referring to FIG. 5, a 4N×
도 6은 본 발명의 일실시예에 따른 부호화 장치의 세부 구성을 도시한 블록도이다.6 is a block diagram showing a detailed configuration of an encoding apparatus according to an embodiment of the present invention.
도 6에 따르면, 부호화 장치(600)는 예측 블록 생성부(610), 차분 블록 생성부(620), 변환부(630), 최종 블록 결정부(640), 양자화부(650), 및 엔트로피 부호화부(660)를 포함할 수 있다.6, the
먼저, 예측 블록 생성부(610)는 부호화 블록을 복수의 예측 모드 정보에 따라 예측 부호화하여 복수의 예측 블록들을 생성할 수 있다. First, the prediction
여기서, 예측 모드 정보는 화면간 예측 모드, 화면내 예측 모드를 포함할 수 있다. 그리고, 화면간 예측 모드는 16×16, 16×8, 8×16, 8×8, 8×4, 4×8 및 4×4 등의 예측 모드를 포함할 수 있다. 그리고, 화면내 예측 모드는 DC 예측 모드, 수직(Vertical) 예측 모드, 수평(Horizontal) 예측 모드 등을 포함할 수 있다.Here, the prediction mode information may include an inter prediction mode and an intra prediction mode. In addition, the inter prediction mode may include prediction modes such as 16×16, 16×8, 8×16, 8×8, 8×4, 4×8, and 4×4. In addition, the intra prediction mode may include a DC prediction mode, a vertical prediction mode, a horizontal prediction mode, and the like.
차분 블록 생성부(620)는 부호화 블록과 복수의 예측블록들을 이용하여 복수의 차분 블록들을 생성할 수 있다. 예를 들어, 차분 블록 생성부(620)는 부호화 블록과 복수의 예측블록들 각각을 감산하여 복수의 차분 블록들을 생성할 수 있다.The difference
변환부(630)는 미리 정의된 변환 타입 정보 또는 적응적으로 결정된 변환 타입 정보에 따라 차분 블록들을 각각 변환할 수 있다. 이때, 변환부(630)는 단위 블록의 크기, 부호화 블록의 크기, 및 주변 블록의 양자화 정보 중 적어도 하나를 이용하여 미리 정의되거나 결정된 변환 타입 정보에 따라 차분 블록들을 각각 변환할 수 있다.The
여기서, 변환 타입 정보는 변환 블록의 크기 및 변환 깊이를 포함할 수 있다. 그리고, 변환 타입 정보는 단일 변환 타입 또는 복수의 변환 타입으로 미리 정의되거나, 결정될 수 있다. 이때, 복수의 변환 타입을 이용하는 경우, 변환 타입 정보는 트리 구조 또는 계층적 구조를 가질 수 있다.Here, the transformation type information may include a size of a transformation block and a transformation depth. In addition, the transformation type information may be predefined or determined as a single transformation type or a plurality of transformation types. In this case, when a plurality of transformation types are used, the transformation type information may have a tree structure or a hierarchical structure.
일례로, 변환부(630)는 단위 블록의 크기, 부호화 블록의 크기, 및 주변 블록의 양자화 정보 중 적어도 하나를 이용하여 변환 깊이를 결정할 수 있다. 그리고, 변환부(630)는 부호화 블록의 크기를 기준으로 변환 깊이마다 변환 블록의 크기를 결정할 수 있다. 이어, 변환부(630)는 결정된 변환 블록의 크기를 이용하여 부호화 블록을 변환할 수 있다.For example, the
최종 블록 결정부(640)는 변환된 차분 블록들 각각의 부호화 성능을 결정할 수 있다. 예를 들어, 최종 블록 결정부(640)는 율-왜곡 비용, 차분값, 변환 계수값 등을 이용하여 부호화 성능을 결정할 수 있다. 그리고, 최종 블록 결정부(640)는 부호화 성능이 가장 좋은 차분 블록을 최종 블록으로 결정할 수 있다.The
일례로, 율-왜곡 비용을 이용하는 경우, 최종 블록 결정부(640)는 변환된 차분 블록들 각각의 율-왜곡 비용을 계산할 수 있다. 이때, 최종 블록 결정부(640)는 율-왜곡 비용이 작을수록 부호화 성능이 좋은 것으로 결정할 수 있다. 그러면, 최종 블록 결정부(640)는 율-왜곡 비용이 최소인 차분 블록을 최종 블록으로 결정할 수 있다.For example, in the case of using the rate-distortion cost, the
그러면, 최종 블록이 결정된 경우, 예측 블록 생성부(610)는 최종 블록에 적용된 예측 모드 정보에 따라 부호화 블록을 예측 부호화하여 최종 예측 블록을 생성할 수 있다. 그리고, 차분 블록 생성부(620)는 생성된 예측 블록과 부호화 블록을 감산하여 최종 차분 블록을 생성할 수 있다. 그러면, 변환부(630)는 최종 차분 블록을 최종 블록에 적용된 변환 타입 정보에 따라 변환할 수 있다.Then, when the final block is determined, the
이어, 양자화부(650)는 변환된 최종 차분 블록을 양자화할 수 있다. 그리고, 엔트로피 부호화부(650)는 양자화된 최종 차분 블록을 엔트로피 부호화하여 비트스트림을 출력할 수 있다.Subsequently, the
한편, 최종 블록 결정부(640)는 부호화 블록의 예측 모드 정보 및 부호화 블록의 변환 타입 정보를 복호화 장치로 전송할지 여부를 결정할 수 있다.Meanwhile, the
예를 들어, 최종 블록 결정부(640)는 부호화 블록의 변환 타입 정보 및 예측 모드 정보와, 주변 블록의 변환 타입 정보 및 예측 모드 정보가 일치하는지 여부를 비교할 수 있다. 그리고, 일치하는 경우, 최종 블록 결정부(640)는 부호화 블록의 변환 타입 정보 및 예측 모드 정보를 복호화 장치로 전송하지 않을 수 있다. 그리고, 일치하지 않는 경우, 최종 블록 결정부(640)는 부호화 블록의 변환 타입 정보 및 예측 모드 정보를 복호화 장치로 전송할 수 있다. 이때, 복호화 장치로 전송되는 부가 정보의 비트량을 감소시키기 위해, 부호화 장치는 부호화 블록의 변환 타입 정보 및 예측 모드 정보와, 부호화 블록의 패턴 정보(CBP)를 결합하여 부가 정보를 생성할 수 있다. 이어, 부호화 장치는 생성된 부가 정보를 복호화 장치로 전송할 수 있다.For example, the
이처럼, 변환 타입은 예측 블록의 크기에 따라 고정된 것이 아니라, 차분 블록을 계층적으로 가변 블록 변환함에 따라 영상의 변환에 유연하게 적응할 수 있다. 예를 들어, 도 10을 참조하면, 16×16 부호화 블록 내에서 4×4, 8×8 변환 타입이 혼합되어 적용되거나, 8×16 변환 타입이 적용되는 등과 같이 가변 블록 변환(1020)이 가능하다. 다시 말해, 16×16 부호화 블록 내에서 변환 타입이 4×4, 8×8 두 종류로만 고정되어 분할 변환(1010)하지 않고, 영상의 특성에 따라 다양한 크기로 가변 블록 변환할 수 있다.As described above, the transform type is not fixed according to the size of the prediction block, but can be flexibly adapted to the transformation of an image by hierarchically transforming the difference block into a variable block. For example, referring to FIG. 10,
도 7은 본 발명의 일실시예에 따른 변환 복호화 방법을 설명하기 위해 제공되는 흐름도이다.7 is a flowchart provided to explain a transform decoding method according to an embodiment of the present invention.
도 7에 따르면, 먼저, 701단계에서, 복호화 장치는 부호화 장치로부터 비트스트림을 수신할 수 있다.Referring to FIG. 7, first, in
이어, 702 단계에서, 복호화 장치는 부호화 블록의 변환 타입 정보 및 예측 모드 정보를 획득할 수 있다. 여기서, 부호화 블록의 변환 타입 정보는, 최종 블록에 적용된 변환 타입 정보이고, 부호화 블록의 예측 모드 정보는, 최종 블록에 적용된 예측 모드 정보일 수 있다.. 그리고, 변환 타입 정보는 변환 블록의 크기 및 변환 깊이를 포함할 수 있다. Subsequently, in
일례로, 복호화 장치는 부호화 장치로부터 부가 정보를 수신할 수 있다. 여기서, 부가 정보는 부호화 블록의 변환 타입 정보 및 부호화 블록의 예측 모드 정보와, 부호화 블록의 패턴 정보가 결합된 형태일 수 있다. 그러면, 복호화 장치는 부가 정보로부터 부호화 블록의 변환 타입 정보 및 부호화 블록의 예측 모드 정보를 획득할 수 있다. For example, the decoding device may receive additional information from the encoding device. Here, the additional information may be a form in which information on a transformation type of a coding block, information on a prediction mode of a coding block, and information on a pattern of a coding block are combined. Then, the decoding apparatus may obtain information on a transformation type of a coding block and information on a prediction mode of the coding block from the additional information.
다른 예로, 부호화 블록의 변환 타입 정보 및 예측 모드 정보와, 주변 블록의 변환 타입 정보 및 예측 모드 정보가 일치하여, 부호화 장치로부터 부호화 블록의 변환 타입 정보 및 예측 모드 정보가 수신되지 않은 경우, 복호화 장치는 주변 블록의 변환 타입 정보 및 예측 모드 정보를 획득할 수 있다.As another example, when transformation type information and prediction mode information of a coding block and transformation type information and prediction mode information of a neighboring block match, and the transformation type information and prediction mode information of the coding block are not received from the encoding device, the decoding device May obtain transformation type information and prediction mode information of neighboring blocks.
이어, 703 단계에서, 복호화 장치는, 획득된 변환 타입 정보 및 예측 모드 정보를 이용하여 차분 블록을 복원할 수 있다. 이때, 복호화 장치는, 최종 블록의 변환 타입 정보 및 예측 모드 정보를 이용하여 차분 블록을 복원할 수 있다. 또한, 복호화 장치는, 주변 블록의 변환 타입 정보 및 예측 모드 정보를 이용하여 차분 블록을 복원할 수도 있다.Subsequently, in
일례로, 복호화 장치는 엔트로피 복호화된 블록을 역양자화할 수 있다. 그리고, 복호화 장치는, 역양자화된 블록을 상기 획득된 변환 타입 정보에 따라 역변환하여 차분 블록을 복원할 수 있다.For example, the decoding apparatus may inverse quantize the entropy-decoded block. In addition, the decoding apparatus may recover the difference block by inverse transforming the inverse quantized block according to the obtained transform type information.
그리고, 704 단계에서, 복호화 장치는, 상기 획득된 예측 모드 정보를 이용하여 엔트로피 복호화된 블록의 예측 블록을 생성할 수 있다. Then, in
이어, 705 단계에서, 복호화 장치는 복호화 블록의 예측 블록과, 역변환을 통해 생성된 차분 블록을 더하여 부호화 블록을 복원할 수 있다.Subsequently, in
도 8은 본 발명의 일시시예에 따른 복호화 장치의 세부 구성을 도시한 블록도이다.8 is a block diagram showing a detailed configuration of a decoding apparatus according to a temporary example of the present invention.
도 8에 따르면, 복호화 장치는, 엔트로피 복호화부(810), 정보 획득부(820), 역양자화 및 역 변환부(830), 예측 블록 생성부(840), 및 복원부(850)를 포함할 수 있다.Referring to FIG. 8, the decoding apparatus includes an
엔트로피 복호화부(810)는 부호화 장치로부터 수신한 비트스트림을 엔트로피 복호화할 수 있다.The
그러면, 정보 획득부(820)는 엔트로피 복호화된 블럭으로부터 최종 블록의 변환 타입 정보 및 최종 블록의 예측 모드 정보를 획득할 수 있다. 여기서, 변환 타입 정보는 변환 블록의 크기 및 변환 깊이를 포함할 수 있다. Then, the
역양자화 및 역변환부(830)는 엔트로피 복호화된 블록을 역양자화할 수 있다. 그리고, 역양자화 및 역변환부(830)는 역양자화된 블록을 최종 블록의 변환 타입 정보에 따라 역변환하여 차분 블록을 복원할 수 있다.The inverse quantization and
그리고, 예측 블록 생성부(840)는 최종 블록의 예측 모드 정보에 기초하여 엔트로피 복호화된 블록의 예측 블록을 생성할 수 있다.In addition, the
그러면, 복원부(850)는 생성된 예측 블록과 복원된 차분 블록을 더하여 부호화 블록을 복원할 수 있다.Then, the
한편, 정보 획득부(820)는 단위 블록의 크기, 부호화 블록의 크기, 및 주변 블록의 양자화 정보 중 적어도 하나에 기초하여 변환 타입 정보를 적응적으로 결정할 수도 있다. 이때, 변환 타입 정보는 단위 블록의 크기, 부호화 블록의 크기, 및 주변 블록의 양자화 정보 중 적어도 하나에 기초하여 미리 정의될 수도 있다. 그러면, 정보 획득부(820)는 미리 정의되거나, 또는 적응적으로 결정된 변환 타입 정보에 기초하여 최종 블록의 변환 타입 정보와 최종 블록의 예측 모드 정보를 획득할 수 있다.Meanwhile, the
이때, 부호화 장치에서 최종 블록의 변환 타입 정보 및 예측 모드 정보와, 부호화 블록의 패턴 정보(CBP)를 결합하여 생성한 부가 정보를 전송한 경우, 정보 획득부(820)는 부가 정보에서 부호화 블록의 패턴 정보(CBP)를 분리하여 최종 블록의 변환 타입 정보 및 예측 모드 정보를 획득할 수도 있다. 예를 들어, 정보 획득부(820)는 아래의 표 1과 같이 부호화 블록의 패턴 정보를 추출함에 따라 최종 블록의 변환 타입 정보 및 예측 모드 정보를 획득할 수 있다.In this case, when the encoding apparatus transmits additional information generated by combining transformation type information and prediction mode information of a final block and pattern information (CBP) of a coding block, the
{
if(cbp&(1<<j))
{
T8_flag[j] = T8_flag;
}else{
T8_flag[j] = 0;
}
}for(j=0; j<4; j++)
{
if(cbp&(1<<j))
{
T8_flag[j] = T8_flag;
}else{
T8_flag[j] = 0;
}
}
표 1에서, j는 변환 블록의 번호(0: 도 9의 좌측 위쪽, 3: 도 9의 우측 아래쪽 블록), T8_flag는 부호화 장치에서 전송된 부가 정보에 포함된 변환 타입 정보, T8_flag[]는 부호화 블록의 패턴 정보(CBP)를 이용하여 각 8×8 블록에 해당하는 변환 타입 정보이다.In Table 1, j is the number of a transform block (0: upper left of FIG. 9, 3: lower right of FIG. 9), T8_flag is transform type information included in additional information transmitted from the encoding device, and T8_flag[] is encoded. This is transform type information corresponding to each 8×8 block by using block pattern information (CBP).
표 1에 따르면, 전송된 2비트 부가 정보가 부호화 블록의 패턴 정보를 이용하여 각 변환 블록에 대해 총 4비트로 복원될 수 있다. According to Table 1, the transmitted 2-bit side information may be reconstructed into a total of 4 bits for each transform block using pattern information of a coding block.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, although the present invention has been described by limited embodiments and drawings, the present invention is not limited to the above embodiments, and various modifications and variations from these descriptions will be made by those skilled in the art to which the present invention pertains. This is possible.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention is limited to the described embodiments and should not be defined, but should be defined by the claims to be described later, as well as those equivalent to the claims.
610: 예측 블록 생성부
620: 차분 블록 생성부
630: 변환부
640: 최종 블록 결정부
650: 양자화부
660: 엔트로피 부호화부610: prediction block generation unit
620: difference block generation unit
630: conversion unit
640: final block decision section
650: quantization unit
660: entropy encoding unit
Claims (3)
상기 부호화 블록과 상기 예측 블록에 기초하여 상기 부호화 블록에 대한 차분 블록을 생성하는 차분 블록 생성부; 및
상기 차분 블록을 부호화하는 부호화부를 포함하고,
상기 부호화부는,
상기 차분 블록에 대한 변환을 생략하지 않는 경우, 상기 변환을 수행하기 위한 변환 타입 정보에 기초하여 상기 변환을 수행하고, 상기 차분 블록에 대해 양자화를 수행하고, 상기 차분 블록에 대해 엔트로피 부호화를 수행하며,
상기 변환 타입 정보는 변환 블록의 크기를 포함하고,
상기 변환 블록의 크기는 상기 부호화 블록의 크기에 기초하여 결정되고,
상기 변환 블록의 크기는 상기 변환 블록의 가로 및 세로 중 적어도 하나를 포함하는 영상 부호화 장치.A prediction block generator for generating a prediction block by performing prediction on the coded block;
A difference block generator configured to generate a difference block for the coding block based on the coding block and the prediction block; And
Includes an encoding unit for encoding the difference block,
The encoding unit,
When the transformation for the difference block is not omitted, the transformation is performed based on transformation type information for performing the transformation, quantization is performed on the difference block, and entropy coding is performed on the difference block. ,
The transform type information includes a size of a transform block,
The size of the transform block is determined based on the size of the coding block,
The size of the transform block includes at least one of a width and a height of the transform block.
상기 부호화 블록에 대해 예측을 수행하여 예측 블록을 생성하는 예측 블록 생성부; 및
상기 복호화된 차분 블록과 상기 생성된 예측 블록에 기초하여 상기 부호화 블록을 복원하는 복원부를 포함하고,
상기 차분 블록에 대해 엔트로피 복호화를 수행하고, 상기 차분 블록에 대해 역양자화를 수행하고, 상기 차분 블록에 대한 역변환을 생략하지 않는 경우, 변환 타입 정보에 기초하여 상기 역변환을 수행하며,
상기 변환 타입 정보는 변환 블록의 크기를 포함하고,
상기 변환 블록의 크기는 상기 부호화 블록의 크기에 기초하여 결정되고,
상기 변환 블록의 크기는 상기 변환 블록의 가로 및 세로 중 적어도 하나를 포함하는 영상 복호화 장치.A decoder for obtaining a coded difference block for a coded block from a bitstream and decoding the coded difference block;
A prediction block generator for generating a prediction block by performing prediction on the coded block; And
A reconstruction unit for restoring the coded block based on the decoded difference block and the generated prediction block,
When entropy decoding is performed on the difference block, inverse quantization is performed on the difference block, and inverse transformation on the difference block is not omitted, the inverse transformation is performed based on transformation type information,
The transform type information includes a size of a transform block,
The size of the transform block is determined based on the size of the coding block,
The size of the transform block includes at least one of a width and a height of the transform block.
부호화 블록에 대해 예측을 수행하여 예측 블록을 생성하는 예측 블록 생성부;
상기 부호화 블록과 상기 예측 블록에 기초하여 상기 부호화 블록에 대한 차분 블록을 생성하는 차분 블록 생성부; 및
상기 차분 블록을 부호화하는 부호화부를 포함하고,
상기 부호화부는,
상기 차분 블록에 대한 변환을 생략하지 않는 경우, 상기 변환을 수행하기 위한 변환 타입 정보에 기초하여 상기 변환을 수행하고, 상기 차분 블록에 대해 양자화를 수행하고, 상기 차분 블록에 대해 엔트로피 부호화를 수행하며,
상기 변환 타입 정보는 변환 블록의 크기를 포함하고,
상기 변환 블록의 크기는 상기 부호화 블록의 크기에 기초하여 결정되고,
상기 변환 블록의 크기는 상기 변환 블록의 가로 및 세로 중 적어도 하나를 포함하는 컴퓨터 판독 가능한 기록 매체.
A computer-readable recording medium storing a bitstream generated by a video encoding device, wherein the video encoding device comprises:
A prediction block generator for generating a prediction block by performing prediction on the coded block;
A difference block generator configured to generate a difference block for the coding block based on the coding block and the prediction block; And
Includes an encoding unit for encoding the difference block,
The encoding unit,
When the transformation for the difference block is not omitted, the transformation is performed based on transformation type information for performing the transformation, quantization is performed on the difference block, and entropy coding is performed on the difference block. ,
The transform type information includes a size of a transform block,
The size of the transform block is determined based on the size of the coding block,
The size of the conversion block includes at least one of a width and a height of the conversion block.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210168055A KR102453953B1 (en) | 2010-07-16 | 2021-11-30 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100069214 | 2010-07-16 | ||
KR20100069214 | 2010-07-16 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180137027A Division KR20180123466A (en) | 2010-07-16 | 2018-11-09 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210168055A Division KR102453953B1 (en) | 2010-07-16 | 2021-11-30 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20200096474A true KR20200096474A (en) | 2020-08-12 |
Family
ID=45613445
Family Applications (8)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110048082A KR101791158B1 (en) | 2010-07-16 | 2011-05-20 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
KR1020170137412A KR101820348B1 (en) | 2010-07-16 | 2017-10-23 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
KR1020180004900A KR101918956B1 (en) | 2010-07-16 | 2018-01-15 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
KR1020180004901A KR101918957B1 (en) | 2010-07-16 | 2018-01-15 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
KR1020180004902A KR101918958B1 (en) | 2010-07-16 | 2018-01-15 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
KR1020180137027A KR20180123466A (en) | 2010-07-16 | 2018-11-09 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
KR1020200098329A KR20200096474A (en) | 2010-07-16 | 2020-08-06 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
KR1020210168055A KR102453953B1 (en) | 2010-07-16 | 2021-11-30 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
Family Applications Before (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110048082A KR101791158B1 (en) | 2010-07-16 | 2011-05-20 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
KR1020170137412A KR101820348B1 (en) | 2010-07-16 | 2017-10-23 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
KR1020180004900A KR101918956B1 (en) | 2010-07-16 | 2018-01-15 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
KR1020180004901A KR101918957B1 (en) | 2010-07-16 | 2018-01-15 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
KR1020180004902A KR101918958B1 (en) | 2010-07-16 | 2018-01-15 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
KR1020180137027A KR20180123466A (en) | 2010-07-16 | 2018-11-09 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210168055A KR102453953B1 (en) | 2010-07-16 | 2021-11-30 | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus |
Country Status (1)
Country | Link |
---|---|
KR (8) | KR101791158B1 (en) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230156805A (en) | 2018-06-06 | 2023-11-14 | 엘지전자 주식회사 | Method for performing transform index coding on basis of intra prediction mode, and device therefor |
CN108881913B (en) * | 2018-08-03 | 2020-09-22 | 西安万像电子科技有限公司 | Method and apparatus for image encoding |
WO2020159316A1 (en) | 2019-02-01 | 2020-08-06 | 엘지전자 주식회사 | Image coding method based on secondary transform and apparatus therefor |
WO2021006697A1 (en) * | 2019-07-10 | 2021-01-14 | 엘지전자 주식회사 | Image decoding method for residual coding and apparatus therefor |
WO2021040487A1 (en) | 2019-08-31 | 2021-03-04 | 엘지전자 주식회사 | Image decoding method for residual data coding in image coding system, and apparatus therefor |
US20220210476A1 (en) * | 2019-08-31 | 2022-06-30 | Lg Electronics Inc. | Method for decoding video using simplified residual data coding in video coding system and device therefor |
US12081775B2 (en) | 2019-08-31 | 2024-09-03 | Lg Electronics Inc. | Video or image coding method and device therefor |
CN117939136A (en) | 2019-08-31 | 2024-04-26 | Lg电子株式会社 | Decoding device, encoding device, and transmitting device |
MX2022003650A (en) | 2019-09-25 | 2022-05-10 | Lg Electronics Inc | Image encoding/decoding method and apparatus for signaling residual coding method used for encoding block to which bdpcm is applied, and method for transmitting bitstream. |
EP4044595A4 (en) * | 2019-11-01 | 2023-01-18 | LG Electronics Inc. | Transform-based image coding method and device for same |
AU2020375518B2 (en) * | 2019-11-01 | 2024-02-29 | Lg Electronics Inc. | Image coding method based on transform, and device therefor |
KR20220070509A (en) * | 2019-11-01 | 2022-05-31 | 엘지전자 주식회사 | Video coding method and apparatus based on transformation |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100846769B1 (en) * | 2002-02-19 | 2008-07-16 | 삼성전자주식회사 | Method for encoding motion image having fixed computational complexity and apparatus thereof |
JP2004129055A (en) | 2002-10-04 | 2004-04-22 | Rohm Co Ltd | Data compression device and data expansion device |
JP2004361420A (en) | 2004-09-27 | 2004-12-24 | Kazuhiro Okada | Angular velocity sensor |
KR100703770B1 (en) * | 2005-03-25 | 2007-04-06 | 삼성전자주식회사 | Video coding and decoding using weighted prediction, and apparatus for the same |
JP2011075418A (en) | 2009-09-30 | 2011-04-14 | Yamaha Corp | Vibration type physical quantity sensor |
-
2011
- 2011-05-20 KR KR1020110048082A patent/KR101791158B1/en active IP Right Grant
-
2017
- 2017-10-23 KR KR1020170137412A patent/KR101820348B1/en active IP Right Grant
-
2018
- 2018-01-15 KR KR1020180004900A patent/KR101918956B1/en active IP Right Grant
- 2018-01-15 KR KR1020180004901A patent/KR101918957B1/en active IP Right Grant
- 2018-01-15 KR KR1020180004902A patent/KR101918958B1/en active IP Right Grant
- 2018-11-09 KR KR1020180137027A patent/KR20180123466A/en active Application Filing
-
2020
- 2020-08-06 KR KR1020200098329A patent/KR20200096474A/en not_active IP Right Cessation
-
2021
- 2021-11-30 KR KR1020210168055A patent/KR102453953B1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR101820348B1 (en) | 2018-01-19 |
KR20170122158A (en) | 2017-11-03 |
KR20210150337A (en) | 2021-12-10 |
KR101918957B1 (en) | 2018-11-15 |
KR20120008436A (en) | 2012-01-30 |
KR101918958B1 (en) | 2018-11-15 |
KR20180008844A (en) | 2018-01-24 |
KR20180123466A (en) | 2018-11-16 |
KR101918956B1 (en) | 2018-11-15 |
KR101791158B1 (en) | 2017-10-27 |
KR20180008843A (en) | 2018-01-24 |
KR20180008845A (en) | 2018-01-24 |
KR102453953B1 (en) | 2022-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102453953B1 (en) | Encoding method and apparatus for transformming hierarchical variable block and decoding method and apparatus | |
US9386325B2 (en) | Method and apparatus for encoding and decoding image by using large transformation unit | |
JP5537681B2 (en) | Multiple sign bit concealment in the conversion unit | |
KR20110112168A (en) | Method and apparatus for video encoding based on internal bitdepth increment, method and apparatus for video decoding based on internal bitdepth increment | |
KR20110135787A (en) | Image/video coding and decoding system and method using edge-adaptive transform | |
KR101377529B1 (en) | Video Coding and Decoding Method and Apparatus Using Adaptive Motion Vector Coding/Encoding | |
KR20130041038A (en) | Method and apparatus for encoding and decoding image using large transform unit | |
KR20130041039A (en) | Method and apparatus for encoding and decoding image using large transform unit | |
KR20130097958A (en) | Device and method for encoding/decoding motion information |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
X091 | Application refused [patent] | ||
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
X601 | Decision of rejection after re-examination |