KR20110070687A - Encoding apparatus and method capable of multi-dimension transforming and quantization, and decoding apparatus and method - Google Patents
Encoding apparatus and method capable of multi-dimension transforming and quantization, and decoding apparatus and method Download PDFInfo
- Publication number
- KR20110070687A KR20110070687A KR1020100033283A KR20100033283A KR20110070687A KR 20110070687 A KR20110070687 A KR 20110070687A KR 1020100033283 A KR1020100033283 A KR 1020100033283A KR 20100033283 A KR20100033283 A KR 20100033283A KR 20110070687 A KR20110070687 A KR 20110070687A
- Authority
- KR
- South Korea
- Prior art keywords
- quantization
- coefficient values
- difference image
- integer
- unit
- 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/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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- 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/172—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 picture, frame or field
-
- 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
본 발명은 다차원 변환 및 양자화가 가능한 부호화 장치 및 방법, 그리고, 복호화 장치 및 방법에 관한 것으로서, 적어도 3차원 변환 및 정수형 양자화에 의하여 효율적인 비디오 데이터 압축 및 복원이 가능하다. The present invention relates to a coding apparatus and method capable of multi-dimensional transformation and quantization, and to a decoding apparatus and method, which enables efficient video data compression and reconstruction by at least three-dimensional transformation and integer quantization.
본 발명은 방송통신위원회의 IT원천기술개발의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2008-F-011-01, 과제명: 차세대 DTV 핵심기술개발].The present invention is derived from the research conducted as part of the IT source technology development of the Korea Communications Commission [Task Management Number: 2008-F-011-01, Task name: Development of next-generation DTV core technology].
멀티미디어에 대한 수요가 증가하고 있는 시점에서 영상을 압축하는 기술은 매우 중요하다. 그러나, 최근 고화질, 고해상도의 영상 시장이 확대됨에 따라서 높은 효율을 가지는 코덱을 위한 연구가 진행되고 있다.When the demand for multimedia is increasing, the technology of compressing video is very important. However, as the market for high-definition and high-resolution images has recently expanded, research for codecs with high efficiency has been conducted.
일반적으로 동영상 압축을 위해서 세계 표준화 기구에 의해 제정된 H.264/AVC 표준이 광범위하게 사용되고 있다. 동영상 데이터 압축 표준인 H.264/AVC는 적용된 블록 크기가 기존의 표준에 적용된 블록보다 작은 4x4블록 단위의 변환을 적용하고 있다. 이는, 차영상 에러를 감소시킬 수 있으나, 공간적 중복도를 감소시키기에는 비효율적이다. 또한, 4x4블록 단위의 변환 이외에 H.264/AVC 표준에서 High profile 이상에서 쓸 수 있는 8x8블록 단위의 변환은 블록 크기가 4x4블록보다 커서 공간적 중복도를 효율적으로 줄일 수 있는 반면에 차영상 에러는 커지는 문제가 있다.In general, the H.264 / AVC standard established by the World Standards Organization for video compression is widely used. H.264 / AVC, a video data compression standard, applies transformation of 4x4 block unit whose block size is smaller than that of the existing standard. This can reduce the difference image error, but is inefficient to reduce the spatial redundancy. In addition, in the H.264 / AVC standard, in addition to the 4x4 block unit, the 8x8 block unit that can be used in the high profile or higher can reduce the spatial redundancy while the block size is larger than that of the 4x4 block. There is a growing problem.
또한, 압축과정에서 변환에 따라 양자화 과정도 영향을 받는다. 즉, 변환으로 주로 사용되는 DCT 방식은 소숫점 연산과정을 수행하며, 이로써, 엔코더와 엔코더 사이에 만들어진 데이터간에 서로 값이 맞지 않는 Miss match 현상이 발생한다.In addition, the quantization process is also affected by the transformation in the compression process. That is, the DCT method, which is mainly used as a transformation, performs a decimal point operation, and thus a miss match phenomenon occurs in which values between the encoder and the encoder do not match each other.
따라서, 상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 차영상 에러를 줄이고, 영상 특성상 인접한 블록 간의 공간적 상관도가 높은 특성을 이용하여 공간적 중복도를 줄이기 위하여 다차원 변환 및 양자화가 가능한 부호화 장치 및 방법, 그리고, 복호화 장치 및 방법을 제공하는 것이다.Accordingly, an object of the present invention to solve the above problems is to encode a multi-dimensional transformation and quantization in order to reduce the difference image error, and to reduce the spatial redundancy by using a feature of high spatial correlation between adjacent blocks on the image characteristics and A method, and a decoding apparatus and method.
제안되는 일 실시예에 따른 다차원 변환 및 양자화가 가능한 부호화 장치는, 원영상으로부터 인터 예측에 의해 생성되는 예측영상을 제거하여 생성되는 차영상을 적어도 두 번 변환하여 적어도 3차원 변환하는 변환부; 및 상기 적어도 3차원 변환된 차영상에 대해 정수형 양자화를 적용하는 양자화부를 포함할 수 있다.According to an embodiment of the present invention, an encoding apparatus capable of multi-dimensional transformation and quantization includes: a transformer configured to at least two-dimensionally transform a difference image generated by removing a prediction image generated by inter prediction from an original image, at least twice; And a quantization unit applying integer quantization to the at least three-dimensional transformed difference image.
상기 양자화부는 매크로블록 단위로 상기 정수형 양자화를 수행하며, 현재 부호화할 양자화 계수값이 1인 경우, 이전에 부호화된 양자화 계수값이 0인 양자화 계수를 고려하여, 상기 매크로블록의 부호화 여부를 결정할 수 있다.The quantization unit performs the integer quantization in units of macroblocks. When the quantization coefficient value to be currently encoded is 1, the quantization unit may determine whether to encode the macroblock in consideration of a quantization coefficient having a previously encoded quantization coefficient value of 0. have.
상기 양자화부는, 상기 차영상의 양자화 계수값들 중 상위 고주파에 해당하는 계수값들에 양자화 오프셋값을 적용한 후 반올림 또는 반내림에 의해 상기 정수형 양자화를 적용할 수 있다.The quantization unit may apply the integer quantization by applying rounding or rounding after applying a quantization offset value to coefficient values corresponding to upper high frequencies among the quantization coefficient values of the difference image.
상기 양자화부는, 상기 차영상의 양자화 계수값들 중 하위 저주파에 해당하는 계수값들에 양자화 오프셋값을 적용한 후 반올림 또는 반내림에 의해 상기 정수형 양자화를 적용할 수 있다. The quantization unit may apply the integer quantization by applying rounding or rounding after applying a quantization offset value to coefficient values corresponding to lower low frequencies among the quantization coefficient values of the difference image.
상기 양자화부는, 상기 차영상의 양자화 계수값들 중 하위 M개의 저주파에 해당하는 계수값들에는 1/M의 양자화 오프셋을 적용하며, 상위 N(N<M)개의 고주파에 해당하는 계수값들에는 1/N의 양자화 오프셋을 적용하여 양자화 계수의 구간길이(△)를 조정할 수 있다.The quantization unit applies a quantization offset of 1 / M to coefficient values corresponding to lower M low frequencies among quantization coefficient values of the difference image, and applies coefficient values corresponding to upper N (N <M) high frequencies. The interval length Δ of the quantization coefficient may be adjusted by applying a quantization offset of 1 / N.
상기 양자화부는 상기 양자화 계수값들 중 상위 M개 및 하위 N개의 계수값들을 제외한 나머지 계수값들에는 인터 프레임의 부호화시 사용되는 양자화 오프셋값을 적용할 수 있다.The quantization unit may apply a quantization offset value used in encoding an inter frame to remaining coefficient values except for upper M and lower N coefficient values among the quantization coefficient values.
상기 양자화부는 16×8 수평모드에 대해서는 상기 수평모드의 방향인 수평방향에 수직하는 방향으로 주사방식을 적용하며, 8×16 수직모드에 대해서는 상기 수직모드의 방향인 수직방향에 수직하는 방향으로 주사방식을 적용할 수 있다.The quantization unit applies a scanning method in a direction perpendicular to a horizontal direction that is a direction of the horizontal mode for a 16 × 8 horizontal mode, and scans in a direction perpendicular to a vertical direction that is a direction of the vertical mode for an 8 × 16 vertical mode. The method can be applied.
한편, 제안되는 일 실시예에 따른 다차원 변환 및 양자화가 가능한 부호화 방법은, 원영상으로부터 인터 예측에 의해 생성되는 예측영상을 제거하여 생성되는 차영상을 다차원 변환하는 단계; 및 상기 다차원 변환된 차영상에 대해 정수형 양자화하는 단계를 포함할 수 있다.On the other hand, the encoding method capable of multi-dimensional transformation and quantization according to an embodiment of the present invention comprises the steps of: multi-dimensional transformation of the difference image generated by removing the prediction image generated by inter prediction from the original image; And an integer quantization of the multi-dimensional transformed difference image.
한편, 제안되는 실시예에 따른 복호화 장치는, 입력되는 비트스트림을 엔트로피 복호화하여 정수형의 양자화된 계수값 및 움직임 벡터를 추출하는 엔트로피 디코딩부; 상기 추출된 정수형의 양자화된 계수값에 대해 정수형 역양자화를 적용하여 차영상의 계수값을 생성하는 역양자화부; 및 상기 생성되는 차영상의 계수값을 다차원 역변환하여 차영상을 생성하는 역변환부를 포함할 수 있다.On the other hand, the decoding apparatus according to the present embodiment, an entropy decoding unit for extracting the integer quantized coefficient value and the motion vector by entropy decoding the input bitstream; An inverse quantizer for generating coefficient values of a difference image by applying integer inverse quantization to the extracted integer quantized coefficient values; And an inverse transform unit generating a difference image by performing multi-dimensional inverse transformation on the coefficient value of the generated difference image.
한편, 제안되는 실시예에 따른 복호화 방법은, 입력되는 비트스트림을 엔트로피 복호화하여 정수형의 양자화된 계수값을 추출하는 단계; 상기 추출된 정수형의 양자화된 계수값에 대해 정수형 역양자화를 적용하여 차영상의 계수값을 생성하는 단계; 및 상기 생성되는 차영상의 계수값을 다차원 역변환하여 차영상을 생성하는 단계를 포함할 수 있다.On the other hand, the decoding method according to the present embodiment, entropy decoding the input bitstream to extract an integer quantized coefficient value; Generating coefficient values of a difference image by applying integer inverse quantization to the extracted integer quantized coefficient values; And generating a difference image by multi-dimensional inverse transformation of the coefficient value of the generated difference image.
제안되는 본 발명의 일 실시예에 따르면, 차영상 에러를 줄이고 공간적 중복도를 줄이는 3차원 변환과 3차원 변환에 대응되는 양자화 및 부호화를 통해 3차원 변환의 효율을 높이고, 결과적으로, 비디오 데이터 압축 성능을 향상시킬 수 있다.According to an embodiment of the present invention, the efficiency of three-dimensional transform is increased by quantization and encoding corresponding to three-dimensional transform and three-dimensional transform, which reduce difference image error and reduce spatial redundancy, and consequently, compress video data. It can improve performance.
또한, 본 발명의 실시예에 따르면, H.264/AVC high profile에서 사용하는 4×4 변환 혹은 8×8 변환을 사용하는 것보다, 4×4 변환인 2차원 변환과 4×1 변환인 1차원 변환을 함께 사용함으로써 보다 효율적인 압축 성능을 제공할 수 있다.In addition, according to an embodiment of the present invention, two-dimensional and four-by-one transforms, which are 4x4 transforms and 4x1 transforms, are used rather than the 4x4 transforms or 8x8 transforms used in the H.264 / AVC high profile. Using dimensional transformations together can provide more efficient compression performance.
또한, 본 발명의 실시예에 따르면, 3차원 변환 및 그 특성에 맞춰 임계값을 조정하고, 3차원 변환의 모드에 따른 주사방식, 정수형 3차원 양자화를 통하여 비트 절감 및 정수화에 따른 빠른 부호화 방법을 제공할 수 있다.In addition, according to an embodiment of the present invention, the threshold value is adjusted according to the three-dimensional transform and its characteristics, and the fast encoding method according to the bit reduction and integerization through the scanning method according to the mode of the three-dimensional transform and integer three-dimensional quantization Can provide.
도 1은 본 발명의 실시예에 따른 다차원 변환 및 양자화가 가능한 부호화 장치를 포함하는 비디오 데이터 압축 장치를 도시한 블록도,
도 2는 본 발명의 실시예에 따른 변환부에서 수행되는 3차원 변환을 설명하기 위한 도면,
도 3은 변환부의 3차원 변환에 따라 대응하는 정수형 양자화 테이블,
도 4는 양자화부에서 사용되는 양자화 오프셋을 8×8 블록에 있는 4개의 4×4 블록에 적용한 경우를 설명하기 위한 도면,
도 5a 및 도 5b는 변환부 및 양자화부에서 3차원 변환 및 양자화를 수행한 후, 8×8 블록 단위로 엔트로피 부호화를 하기 전, 16×8 모드와 8×16 모드에 대해서 주사방식을 달리한 예를 보여주는 도면,
도 6은 본 발명의 실시예에 따른 다차원 변환 및 양자화가 가능한 부호화 방법을 설명하기 위한 흐름도,
도 7은 제안되는 실시예에 따른 정수형 역양자화 및 다차원 역변환이 가능한 복호화 장치를 포함하는 비디오 데이터 복원 장치를 도시한 블록도, 그리고,
도 8은 본 발명의 일 실시예에 따른 비디오 복호화 방법을 설명하기 위해 제공되는 흐름도이다. 1 is a block diagram illustrating a video data compression apparatus including an encoding apparatus capable of multidimensional transformation and quantization according to an embodiment of the present invention;
2 is a view for explaining a three-dimensional transform performed in the transform unit according to an embodiment of the present invention;
3 is an integer quantization table corresponding to a three-dimensional transform of the transform unit;
FIG. 4 is a diagram for explaining the case where the quantization offset used in the quantization unit is applied to four 4x4 blocks in an 8x8 block.
5A and 5B illustrate different scanning schemes for 16x8 mode and 8x16 mode after performing 3D transform and quantization in the transform unit and the quantizer and before entropy encoding is performed in 8x8 block units. Drawing showing an example,
6 is a flowchart illustrating a coding method capable of multidimensional transformation and quantization according to an embodiment of the present invention;
7 is a block diagram illustrating a video data reconstruction apparatus including a decoding apparatus capable of integer inverse quantization and multi-dimensional inverse transformation according to a proposed embodiment;
8 is a flowchart provided to explain a video decoding method according to an embodiment of the present invention.
이하 첨부된 도면을 참조하여 본 발명의 실시예를 설명한다. 본 발명을 설명함에 있어서, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고, 본 명세서에서 사용되는 용어(terminology)들은 본 발명의 바람직한 실시예를 적절히 표현하기 위해 사용된 용어들로서, 이는 사용자, 운용자의 의도 또는 본 발명이 속하는 분야의 관례 등에 따라 달라질 수 있다. 따라서, 본 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. In describing the present invention, when it is determined that detailed descriptions of related known functions or configurations may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. Terminology used herein is a term used to properly express a preferred embodiment of the present invention, which may vary according to a user, an operator's intention, or a custom in the field to which the present invention belongs. Therefore, the definitions of the terms should be made based on the contents throughout the specification.
도 1은 본 발명의 실시예에 따른 다차원 변환 및 양자화가 가능한 부호화 장치를 포함하는 비디오 데이터 압축 장치를 도시한 블록도이다.1 is a block diagram illustrating a video data compression apparatus including an encoding apparatus capable of multidimensional transformation and quantization according to an embodiment of the present invention.
도 1을 참조하면, 비디오 데이터 압축 장치(100)는 인트라 예측부(110), 움직임 추정부(120), 움직임 보상부(130), 제1차분기(140), 부호화부(150), 역양자화 및 역변환부(160), 제2차분기(170), 필터(180) 및 프레임 메모리(190)를 포함한다.Referring to FIG. 1, the video
인트라 예측부(110)는 현재 프레임(Fn)에서 주변의 재구성된(RECONSTRUCTED) 픽셀을 이용하여 인트라 예측한다. 즉, 인트라 예측부(110)는 현재 영상의 블록을 부호화하기 위해서 공간적으로 인접한 픽셀 값을 이용하여 부호화하고자 하는 매크로블록을 예측하여 부호화한다.The
움직임 추정부(120)는 부호화하려는 현재 프레임과 과거 프레임을 이용하여 움직임 벡터를 추정하고, 움직임 보상부(130)는 움직임 추정부(120)에서 추정된 움직임 벡터에 기초하여 현재블록의 예측값인 예측블록을 생성한다. 움직임 추정부(120)는 BMA(Block Matching Algorithm), 위상 상관(Phase Correlation), HSBMA 등의 다양한 움직임 추정 알고리즘을 이용하여 움직임을 추정할 수 있다.The
스위치(S)는 인트라 예측부(110) 또는 움직임 보상부(130)로부터 출력되는 예측 블록을 제1차분기(140)로 제공한다. 스위치(140)는 인트라 예측과 인터 예측 중 우수한 예측을 선택할 수 있다.The switch S provides the
제1차분기(140)는 현재블록에서 예측블록을 감산하여 차분블록을 생성한다.The
부호화부(150)는 인트라 예측부(110)에서 결정된 인트라 예측 방향 또는 움직임 보상부(130)에서 예측된 인터 예측 중 하나에 기초하여 현재 블록에 대해 인트라 예측 또는 인터 예측 부호화를 수행하여 비트스트림을 생성한다. 이를 위하여, 부호화부(150)는 변환부(151), 양자화부(153), 재정렬부(155) 및 엔트로피 코딩부(157)를 포함한다.The
변환부(151)는 제1차분기(140)에서 생성된 차분 블록을 이산 코사인 변환(DCT: Discrete cosine transform)한다. 특히, 변환부(151)는 원 영상에서 예측 영상을 제거하여 생성되는 차영상을 적어도 두 번 변환하여 최소 3차원 변환을 수행할 수 있다. 원 영상은 현재 프레임의 현재 블록, 예측 영상은 예측 블록일 수 있다.The
또한, 변환부(151)는 변환방식의 효율을 높이기 위하여, 인트라 예측된 블록에 대해서는 3차원 변환을 적용하지 않고, 인터 예측된 블록, 즉, 인터 예측에 의해 생성되는 차영상에 대해서는 3차원 변환을 적용할 수 있다. 특히, 변환부(151)는 DCT 과정에서 소수점 연산을 피하기 위해 정수형 DCT를 수행하며, 이는 변환부(151)에서의 3차원 변환은 정수형 DCT를 기반으로 함을 의미한다.In order to increase the efficiency of the transformation method, the
양자화부(153)는 DCT된 블록 또는 3차원 변환방식에 의해 변환된 차영상을 매크로블록 단위로 정수화 양자화하여 양자화 계수를 생성한다. 또한, 변환부(151)가 차영상을 적어도 3차원 변환을 수행하는 경우, 양자화부(153)는 적어도 3차원 변환된 차영상에 대해 양자화 오프셋을 이용하여 정수형 양자화를 적용할 수 있다.The
예를 들어, 인터 예측이 선택되어 변환부(151)가 차영상을 두 번 변환하는 3차원 변환을 적용하는 경우, 양자화부(153)는 3차원 변환에 대응되도록 3차원 변환에 의해 획득된 계수값을 정수형으로 양자화하며, 이로써 압축 성능이 향상된다. 변환부(151)는 DCT 과정에서 소수점 연산을 피하기 위해 정수형 DCT를 수행한다. 즉, 변환부(151)에서의 3차원 변환은 정수형 DCT를 기반으로 하므로, 양자화부(153)는 정수형 DCT에 적합한 도 3과 같은 양자화 테이블 또는 도 4의 양자화 오프셋을 이용하여 정수형 양자화를 수행할 수 있다.For example, when inter prediction is selected and the
양자화된 결과는 인코딩을 위하여 재정렬부(155)에서 재정렬된다. The quantized results are rearranged in
엔트로피 코딩부(157)는 양자화된 변환계수, 움직임 벡터 등의 부호화 정보를 엔트로피 부호화하여 비트스트림을 생성한다.The
역양자화 및 역변환부(160)는 DCT 및 양자화부(153)에서 양자화된 차분블록을 다음에 부호화되는 프레임의 예측에 이용하기 위해 역양자화하고, 역이산 코사인 변환하여 부호화 이전의 차분블록을 복원한다. The inverse quantization and
제2차분기(170)는 복원된 차분블록과 움직임 보상부(130)에서 생성된 예측블록을 가산하여 부호화 이전의 현재블록을 복원한다. 복원된 블록 또는 복원된 프레임은 필터(180)를 거쳐 프레임 메모리(190)에 저장되었다가 다음 블록 또는 다음 프레임에 대하여 인터 예측시 사용된다.The
도 2는 제안되는 실시예에 따른 변환부에서 수행되는 3차원 변환을 설명하기 위한 도면이다. 도 2를 참조하면, 변환부(151)는 매크로블록 내에 포함된 4개의 8x8 블록의 서브 블록인 4x4 블록을 2차원 변환(A-->B)하고, 2차원 변환된 4개의 블록 중 동일한 주파수 위치에 있는 4개의 계수값을 모아, 추가적으로 4x1블록 단위로 1차원 변환(B->C)하여 16개의 차영상을 어레이할 수 있다. 즉, 도 2에 의하면, 변환부(151)는 차영상을 효과적으로 코딩하기 위하여, 정수형 변환을 최소 두 번 수행한다.2 is a view for explaining a three-dimensional transform performed in the transform unit according to the proposed embodiment. Referring to FIG. 2, the
또한, 변환부(151)는 3차원 변환을 위해 모드에 따라 인접한 4개의 4x4 블록을 다른 방법으로 모을 수 있다. 특히, 16x8 모드의 경우, 변환부(151)는 인접블록의 상관도를 높이기 위해 16x4 블록단위로 4개의 4x4블록을 가져온다. 또한, 8x16 모드의 경우, 변환부(151)는 4x16 블록단위로 4개의 4x4 블록을 가져온다. 이때 블록간의 모으는 형태를 반영하여 도 5a 및 도 5b에서 후술할 주사방식이 적응적으로 적용된다.In addition, the
도 3은 변환부의 3차원 변환에 따라 제안되는 양자화부에서 사용하는 정수형 양자화 테이블이다. 3 is an integer quantization table used in the quantization unit proposed according to the three-dimensional transformation of the transform unit.
변환부(151)에서 3차원 변환을 적용하면 동작범위(Dynamic range)는 H.264/AVC 표준과 다를 수 있다. 변환부(151)는 4x4 변환, 즉 2차원 변환에서 커널과 차영상 에러값의 동작범위를 15비트로 환산할 수 있다. 3차원 변환은 4x4변환에 추가적으로 1차원 변환을 수행하므로, 결과적으로 한 번 더 1차원 커널을 승산하는 것이 된다. 따라서, 동작범위는 17비트로 환산된다. 그러므로, 양자화부(153)가 양자화 과정에서 사용하는 양자화 비트값(qbits)은 (17 + QP/6) 이 된다. [수학식 1]은 이를 수식으로 표기한 예이다.When the 3D transform is applied by the
3차원 변환은 2차원 변환에 추가적으로 1차원 변환을 더 수행하므로, 도 3에 도시된 바와 같이 MF 테이블 값과 V 테이블 값이 변경되며, 각각 2개씩 존재할 수 있다. 도 3에서 세로축은 QP(Quantization Parameter)이며, 가로축은 4x4 블록 위치에 따라 3가지로 묶어서 표기한다. MF 테이블 값과 V 테이블은 H.264에서 양자화 시 사용되는 테이블이다. Since the 3D transformation further performs a 1D transformation in addition to the 2D transformation, as shown in FIG. 3, the MF table value and the V table value are changed, and two may exist. In FIG. 3, the vertical axis is QP (Quantization Parameter), and the horizontal axis is grouped and labeled according to the position of 4 × 4 blocks. The MF table values and the V table are tables used for quantization in H.264.
4x4 블록 내에서 화소의 x, y 위치를 좌표(x,y)로 표기하는 경우, 테이블(A~D)에서 r=0은 (0,0), (0,2), (2,0), (2,2)의 위치, r=1은 (1,1), (1,3), (3,1) 및(3,3)의 위치, r=2는 4x4 블록 중 나머지 위치에 해당한다. 양자화부(153)는 8x8 블록 내의 b0, b2(도 4) 위치의 4x4블록에 테이블(A, C)를 적용하고, 8x8블록내의 b1, b3(도 4) 위치의 4x4블록에 테이블(B, D)을 적용하여 정수형 양자화를 수행한다. If the x and y position of a pixel in a 4x4 block is represented by coordinates (x, y), then r = 0 in the table (A ~ D) is (0,0), (0,2), (2,0) , The position of (2,2), r = 1 is the position of (1,1), (1,3), (3,1) and (3,3), and r = 2 corresponds to the rest of the 4x4 block do. The
도 4는 양자화부에서 사용되는 양자화 오프셋을 8x8 블록에 있는 4개의 4x4블록에 적용한 경우를 설명하기 위한 도면이다. FIG. 4 is a diagram for explaining a case where the quantization offset used in the quantization unit is applied to four 4x4 blocks in an 8x8 block.
변환부(151)에서 3차원 변환을 위해, 변환을 2번(2차원 변환 후 1차원 변환) 수행하였으므로, 양자화부(153)는, 중요도가 큰 DC 위치의 계수값은 데드존(dead zone) 크기를 줄여서 0값이 적게 나오게 하며, 중요도가 작은 고주파 위치의 계수값은 데드존 크기를 늘여서 0값이 많이 나오게 할 수 있다.Since the
자세히 설명하면, 양자화부(153)는 차영상의 양자화 계수값들 중 하위 M개의 저주파 위치에 해당하는 계수값들에 양자화 오프셋값을 적용한 후 반올림 또는 반내림에 의해 정수형 양자화를 적용하며, 따라서, 데드존(dead zone)을 감소시켜 0값이 적게 나오도록 할 수 있다. 양자화부(153)는 하위 M개의 저주파 위치에 해당하는 계수값들에는 양자화 오프셋으로서 1/M을 적용할 수 있다. 데드존은 계수값 0을 포함하는 구간의 길이로서, 양자화부(153)는 양자화 오프셋을 적용하여 구간 길이를 조절할 수 있다.In detail, the
또한, 양자화부(153)는 변환부(151)에서 다차원 변환된 차영상의 양자화 양자화 계수값들 중 상위 N개의 고주파 위치에 해당하는 계수값들에 양자화 오프셋값을 적용한 후 반올림 또는 반내림에 의해 정수형 양자화를 적용하며, 따라서, 데드존(dead zone)을 증가시켜 0값이 많이 나오도록 할 수 있다. 양자화부(153)는 상위 N개의 계수값들에는 양자화 오프셋으로서 1/N을 적용할 수 있다. 이 때, M=3, N=9이다.In addition, the
또한, 양자화부(153)는 양자화 계수값들 중 상위 M개 및 하위 N개의 계수값들을 제외한 나머지 계수값들에는 인터 프레임의 부호화시 사용되는 양자화 오프셋값을 적용할 수 있다.In addition, the
일 예를 들어, H.264/AVC와 같은 알고리즘의 인터 부호화시 양자화부(153)에서 사용되는 양자화 오프셋은 3차원 변환 특성에 맞춰 적용될 수 있다. 양자화부(153)는 변환부(151)에서 2차원 변환된 후 추가로 1차원 변환되어 생성되는 DC자리 3개의 계수값의 양자화 오프셋을 1/3로 적용하며, 1차원 변환에 의해 출력되는 가장 높은 주파수 9개의 계수값의 양자화 오프셋을 1/9로 적용할 수 있다. 양자화부(153)는 그 외 위치의 계수값에 대해서는 H.264/AVC 표준에서 인터 프레임을 부호화하는데 사용하는 양자화 오프셋값인 1/6을 적용할 수 있다.For example, the quantization offset used in the
도 4의 경우, 도 2에서 설명한 바와 같이, 변환부(151)는 4x4블록 단위로 2차원 변환을 수행하고, 4개의 인접 4x4블록 중 동일한 주파수 위치의 계수값을 1차원 변환한다. 또한, 양자화부(153)는 (C)로부터 출력되는 계수값을 양자화하는 중 DC위치 1,2,3의 계수값의 양자화 오프셋을 1/3로 적용하고, 1차원 변환한 후 가장 높은 주파수 위치 5,8,9,11,12,13,14,15의 계수값의 양자화 오프셋은 1/9로 적용한다. 양자화부(153)는 그 외 위치의 계수값에 대해서는 H.264/AVC 표준에서 인터 프레임을 부호화 하는데 쓰이는 양자화 오프셋값인 1/6을 적용한다. In the case of FIG. 4, as described with reference to FIG. 2, the
도 5a 및 도 5b는 변환부 및 양자화부에서 3차원 변환 및 양자화하고 8x8 블록 단위로 엔트로피 부호화를 하기 전, 양자화부 또는 재정렬부가 16x8 모드와 8x16 모드에 대해서 주사방식을 다르게 적용한 예를 보여주는 도면이다.5A and 5B are diagrams illustrating an example in which the quantization unit or the rearrangement unit applies the scanning method differently to the 16x8 mode and the 8x16 mode before performing the 3D transform and quantization in the transform unit and the quantization unit and performing entropy encoding on an 8x8 block basis. .
변환부(151)는 차영상을 4x4 블록단위로 2차원 변환하고, 인접 4개의 4x4 블록을 16x8, 8x16 모드일 때 각각 16x4, 4x16 블록형태로 생성한 후, 재정렬부(155)가 4개의 같은 주파수 위치의 계수값을 모아서 부호화하므로, 주사방식도 모드에 따른 변환 부호화의 방향성을 따를 수 있다. The
또한, 양자화부(153)는 16×8 수평모드에 대해서는 수평모드의 방향인 수평방향에 수직하는 방향으로 주사방식을 적용하며, 8×16 수직모드에 대해서는 수직모드의 방향인 수직방향에 수직하는 방향으로 주사방식을 적용할 수 있다. In addition, the
예를 들어, 도 5a를 참조하면, 변환부(151) 및 양자화부(153)는 16x8 수평모드의 특성에 맞는 인접 4×4 블록 4개를 모아 3차원 변환 및 양자화하며, 그 후, 재정렬부(155)는 16×4 블록 내에 적혀있는 순서대로 주파수 계수값을 가져와서 8×8 블록 내에 지그재그 주사방식 순서대로 배열한다.For example, referring to FIG. 5A, the
도 5b를 참조하면, 변환부(151) 및 양자화부(153)는 8×16 수직모드의 특성에 맞는 인접 4×4 블록 4개를 모아 3차원 변환 및 양자화하며, 그 후, 재정렬부(155)는 4×16 블록 내에 적혀있는 순서대로 주파수 계수값을 가져와서 8×8 블록 내에 지그재그 주사방식 순서대로 배열한다.Referring to FIG. 5B, the
또한, 양자화부(153)는 상술한 바와 같이 매크로블록 단위로 정수형 양자화를 수행하며, 현재 부호화할 양자화 계수값이 1인 경우, 이전에 부호화된 양자화 계수값이 0인 양자화 계수를 고려하여 매크로블록의 부호화 여부를 결정할 수 있다.In addition, the
이하에서는 [수학식 2] 및 [수학식 3]을 참조하여, 8x8 매크로블록단위로 차영상을 변환 후 양자화된 계수값이 1이며, 양자화된 계수값이 1인 개수가 상당히 적을 때 임계값에 따라 엔트로피 부호화 여부를 정하는 일 예를 설명한다.Hereinafter, referring to [Equation 2] and [Equation 3], the quantized coefficient value is 1 after transforming the difference image in 8x8 macroblock units, and when the number of quantized coefficient values is 1 is very small, An example of determining whether entropy is encoded will be described.
[수학식 2] 및 [수학식 3]은, 8×8 블록단위로 차영상을 변환 및 양자화한 계수값이 1이며, 그 수가 상당히 적은 경우, 차영상을 부호화하지 않고 전송하는 경우를 보여준다. c(ii,jj)는 0, 1, 2, 3, …, ∞ 중 하나, coeff(ii,jj)는 3차원 변환 및 양자화가 된 계수값, ii는 8x8 블록 인덱스, jj 는 8x8 블록 좌표를 일차원인 64개로 표시한 것이다. rr은 현재 부호화할 양자화 계수값이 1인 경우, 그 이전에 부호화된 계수값 0이 연속적으로 카운팅된 개수를 의미한다. [Equation 2] and [Equation 3] show the case where the coefficient value obtained by transforming and quantizing the difference image in 8 × 8 block units is 1, and the number thereof is considerably small, and is transmitted without encoding the difference image. c (ii, jj) is 0, 1, 2, 3,... , Coeff (ii, jj) is a coefficient value that has been three-dimensionally transformed and quantized, ii is an 8x8 block index, and jj is an 8-dimensional 8x8 block coordinate. rr denotes the number of continuous counting of the
[수학식 2]에서, 양자화가 된 계수값이 1 이상일 경우, 그에 대응하는 코스트 c(ii,jj)는 무한대이므로, 조건에서 벗어나게 된다. 이러한 경우, 엔트로피 코딩부(157)는 8x8 매크로블록의 양자화된 계수값을 부호화하여 전송한다. 양자화된 계수값이 1인 경우, 양자화부(153)는 rr 값에 따라 3, 2, 1 또는 0값을 코스트로 부여한다.In
[수학식 3]을 참조하면, 양자화부(153)는 8×8 매크로블록 내에서 나온 코스트 c(ii,jj)를 더한 결과가 임계값 2 이하이면, 8×8 매크로블록 전체의 양자화된 계수값을 0으로 판단하고, 엔트로피 코딩부(157)는 매크로블록의 계수값을 부호화하지 않으며, 따라서, 전송하지 않는다. 이로써, 동일 PSNR 대비 비트레이트는 향상될 수 있다.Referring to
상술한 본 발명의 실시예에 의하면, 변환부(151)는 인터 예측이 선택되는 경우, 차영상을 두 번 변환하는 3차원 변환을 적용하고, 양자화부(153)는 3차원 변환에 대응되도록 3차원 변환에 의해 획득된 계수값을 정수형으로 양자화함으로써 압축 성능을 향상시킬 수 있다.According to the above-described embodiment of the present invention, when the inter prediction is selected, the
도 6은 본 발명의 실시예에 따른 다차원 변환 및 양자화가 가능한 부호화 방법을 설명하기 위한 흐름도이다.6 is a flowchart illustrating an encoding method capable of multidimensional transformation and quantization according to an embodiment of the present invention.
도 6은 8×8 크기의 매크로블록 내에 4개의 4×4 크기의 서브 매크로블록이포함되는 경우, 3차원 변환 및 양자화하는 일 예에 대해 설명한다. 6 illustrates an example of three-dimensional transformation and quantization when four 4x4 submacroblocks are included in an 8x8 macroblock.
610단계에서, 제1차분기(140)는 현재 영상의 현재 블록에서 인터 예측에 의해 생성되는 예측 블록을 제거하여 차영상을 생성할 수 있다. 인터 예측은 움직임 추정부(120) 및 움직임 보상부(130)에 의해 수행되는 예측 모드이다.In
620단계에서, 변환부(151)는 생성된 차영상을 2차원 변환할 수 있다. 예를 들어, 변환부(151)는 8×8 크기의 블록에 포함된 4개의 4×4 블록을 도 2에 도시된 바와 같이 2차원 변환(A-->B)하여 계수값을 생성할 수 있다.In
630단계에서, 변환부(151)는 2차원 변환된 차영상을 1차원 변환하여 적어도 2번 변환할 수 있다. 예를 들어, 변환부(151)는 2차원 변환된 4개의 블록 중 동일한 주파수 위치에 있는 4개의 계수값을 모아, 도 2에 도시된 바와 같이, 추가적으로 4x1 블록 단위로 1차원 변환할 수 있다.In
640단계에서, 양자화부(153)는 3차원 변환된 차영상의 계수값에 대해 양자화 오프셋을 이용하여 정수형 양자화를 한다. 구체적으로, 640단계에서, 양자화부(153)는 차영상의 전체 계수값들 중 상위 고주파에 해당하는 계수값들에 양자화 오프셋값을 적용한 후 반올림 또는 반내림에 의해 정수형 양자화를 적용하며, 하위 저주파에 해당하는 계수값들에 양자화 오프셋값을 적용한 후 반올림 또는 반내림에 의해 정수형 양자화를 적용할 수 있다. 이 때, 양자화부(153)는 하위 M개의 저주파에 해당하는 계수값들에는 1/M의 양자화 오프셋을 적용하며, 상위 N(N<M)개의 고주파에 해당하는 계수값들에는 1/N의 양자화 오프셋을 적용하여 양자화 계수의 구간길이(△)를 조정한다. 또한, 640단계에서, 양자화부(153)는 전체 계수값들 중 상위 M개 및 하위 N개의 계수값들을 제외한 나머지 계수값들에는 인터 프레임의 부호화시 사용되는 양자화 오프셋값을 적용한다.In
또한, 양자화 단계에서, 양자화부(153)는 양자화된 차영상의 계수값을 도 5a 또는 도 5b를 참조하여 설명한 주사방식을 차영상에 적용할 수 있다. 예를 들어, 양자화부(153)는 16×8 수평모드에 대해서는 수직방향으로 주사방식을 적용하며, 8×16 수직모드에 대해서는 수평 방향으로 주사방식을 적용할 수 있다.In addition, in the quantization step, the
또한, 양자화 단계에서, 양자화부(153)는 현재 부호화할 양자화 계수값이 1인 경우, 이전에 부호화된 양자화 계수값이 0인 양자화 계수를 고려하여, 차영상 중 현재 부호화할 매크로블록의 부호화 여부를 결정할 수 있다.In addition, in the quantization step, when the quantization coefficient value to be currently encoded is 1, the
650단계에서, 재정렬부(155)는 양자화된 차영상의 계수값을 재정렬하고, 엔트로피 코딩부(157)는 재정렬된 차영상의 계수값들을 부호화하여 압축한다. 도 5a 또는 도 5b를 참조하여 설명한 주사과정은 양자화부(153) 또는 재정렬부(155)에서 수행될 수 있다.In
상술한 본 발명의 실시예에 따르면, 부호화 장치(150)의 변환부(151)에서 수행되는 3차원 변환은 4×4 크기의 블록단위로 정수형 DCT, 즉, 2차원 변환하고, 인접한 4개의 4×4 블록 중 동일한 주파수에 해당하는 계수값을 모아서 4x1크기의 블록단위로 정수형 DCT를 수행하는 1차원 변환을 한다. 이 때, 블록 크기가 작은 4x4 블록이므로, 차영상 에러를 줄일 수 있으며, 변환을 두 번 함으로써 공간적 중복도를 줄일 수 있다. 따라서, 변환부(151)은 차영상 에러의 변화가 적은 인터 예측에서는 3차원 변환하고, 양자화부(153)는 정수형으로 양자화함으로써 압축 성능을 개선시킨다.According to the above-described embodiment of the present invention, the three-dimensional transform performed by the
이상에서는 다차원 변환 및 정수형 양자화에 의하여 비디오 데이터를 압축하는 부호화 장치 및 방법에 대해서 설명하였으며, 복호화 장치 및 방법 역시 정수형 역양자화 및 다차원 역변환에 의해 비트스트림을 복호화할 수 있다.The encoding apparatus and method for compressing video data by multidimensional transform and integer quantization have been described above. The decoding apparatus and method may also decode a bitstream by integer dequantization and multidimensional inverse transform.
도 7은 제안되는 실시예에 따른 정수형 역양자화 및 다차원 역변환이 가능한 복호화 장치를 포함하는 비디오 데이터 복원 장치를 도시한 블록도이다. 7 is a block diagram illustrating a video data reconstruction apparatus including a decoding apparatus capable of integer inverse quantization and multi-dimensional inverse transformation according to a proposed embodiment.
도 7에 도시된 복호화 장치(이하, "복호화부"라 한다)(710)는 상술한 부호화부(150)에 대응하여 부호화된 영상을 복원한다. The decoding apparatus (hereinafter, referred to as a "decoder") 710 illustrated in FIG. 7 reconstructs an image encoded corresponding to the
일례로, 복호화부(710)는, 압축 장치(100)로부터 수신된 비트스트림에 포함된 정수형 양자화 정보와 다차원 변환 정보를 이용하여 현재 복원할 비트스트림을 적응적으로 복원할 수 있다. 또한, 복호화부(710)는 압축 장치(100)로부터 수신된 모드 정보에 해당하는 복호화 크기로 현재 영상을 복호화할 수 있다.For example, the
이때, 복호화부(710)에서 역양자화 및 역변환하는 동작은 압축 장치(100)의 부호화부(150)에서의 다차원 변환 및 정수형 양자화 동작과 실질적으로 동일하고, 복호화부(710)에서 모드 정보를 이용하여 복호화를 수행하는 동작은 부호화부(150)에서 부호화 모드를 이용하여 현재 영상에 대해 부호화를 수행하는 동작과 실질적으로 동일하므로 중복되는 설명은 생략하기로 한다.In this case, the inverse quantization and inverse transform operation in the
도 7을 참조하면, 비디오 데이터 복원 장치(700)는 복호화부(710), 인트라 예측부(720), 움직임 보상부(730), 가산부(740), 필터(750) 및 메모리(760)를 포함할 수 있다.Referring to FIG. 7, the video
복호화부(710)는 입력되는 비트스트림을 복호화하여 영상을 복원한다. 이를 위하여, 복호화부(710)는 엔트로피 디코딩부(711), 재정렬부(713), 역양자화부(715) 및 역변환부(717)를 포함한다.The
엔트로피 디코딩부(711)는 입력되는 비트스트림을 엔트로피 복호화하여 차영상의 양자화된 계수값, 움직임 벡터, 모드 정보 등의 부호화 정보를 추출할 수 있다. 엔트로피 복호화에 의해 추출된 차영상의 양자화된 계수값은 1과 같은 정수형이다. 또한, 모드 정보는, 부호화부(150)에서, 현재 영상에 대해 프레임 단위, GOP, 슬라이스, 또는 매크로 블록 단위로 결정 또는 변경된 부호화 모드에 대응되는 복호화 모드를 포함할 수 있다. The
재정렬부(713)는 추출된 차영상의 양자화된 계수값을 재정렬한다. 재정렬된 양자화 계수값은 정수형을 갖는다.The
역양자화부(715)는 재정렬된 정수형 양자화 계수값을 매크로블록 단위로 역양자화할 수 있다. 따라서, 역양자화부(715)는 정수형 양자화 계수값을 역양자화하여 다차원 역변환에 대응하는 차영상의 계수값을 생성한다. 역양자화부(715)는 정수형 이산 코사인 역변환(IDCT: Invert Discrete cosine transform)에 적합한 역양자화 테이블 또는 역양자화 오프셋을 이용하여 정수형 역양자화를 수행할 수 있다.The
역양자화의 종류는 주파수 영역 스칼라 역양자화, 공간 영역 스칼라 역양자화, 주파수 영역 벡터 역양자화, 및 공간 영역 벡터 역양자화를 포함할 수 있다.Types of inverse quantization may include frequency domain scalar inverse quantization, spatial domain scalar inverse quantization, frequency domain vector inverse quantization, and spatial domain vector inverse quantization.
비트스트림이 압축 장치(100)에서 3차원 변환된 경우, 역양자화부(715)는 정수형 양자화 계수값에 대해 역양자화 오프셋을 이용하여 정수형 역양자화를 적용함으로써, 3차원 변환된 차영상의 계수값을 생성한다.When the bitstream is three-dimensionally transformed by the
역변환부(717)는 생성된 차영상의 계수값을 이산 코사인 역변환하여 차영상을 획득할 수 있다. 역양자화부(715) 및 역변환부(717)는 입력되는 비트스트림에 포함된 매크로 블록들 또는 서브 블록들 각각에 대해 서로 다른 역양자화 및 역변환을 수행할 수 있다. The
특히, 역변환부(717)는 IDCT 과정에서 소수점 연산을 피하기 위해 다차원 정수형 IDCT를 수행하며, 이는, 역변환부(717)에서의 다차원 역변환(예를 들어, 3차원 변환)은 정수형 IDCT를 기반으로 함을 의미한다.In particular, the
인트라 예측부(720)는 엔트로피 복호화된 영상의 블록을 부호화하기 위해서 공간적으로 인접한 픽셀 값을 이용하여 복호화하고자 하는 매크로 블록을 예측하여 복호화할 수 있다. 일례로, 인트라 예측부(325)는 화면 내 예측을 수행하여 예측 블록을 생성할 수 있다.The
움직임 보상부(730)는 엔트로피 디코딩부(711)에서 추출된 움직임 벡터를 이용하여 현재 블록의 예측 블록을 생성할 수 있다. 일례로, 움직임 보상부(730)는 화면 간 예측을 수행하여 예측 블록을 생성할 수 있다.The
가산부(740)는 차영상(즉, 차분 블록)과 예측 블록을 더하여 현재 블록 또는 현재 프레임을 복원할 수 있다. 차영상은 역변환부(717)로부터 가산부(740)로 입력되며, 예측 블록은 인트라 예측부(720) 또는 움직임 보상부(730)로부터 가산부(550)로 입력될 수 있다.The
복원된 블록 또는 복원된 프레임은 필터(750)를 거쳐 메모리(760)에 저장되었다가 움직임 보상부(730)로 입력되어, 다음 블록 또는 다음 프레임에 대하여 인터 예측시 사용된다.The reconstructed block or reconstructed frame is stored in the
도 8은 본 발명의 일 실시예에 따른 비디오 복호화 방법을 설명하기 위해 제공되는 흐름도이다. 8 is a flowchart provided to explain a video decoding method according to an embodiment of the present invention.
810단계에서, 복호화 장치는, 부호화 장치로부터 수신된 비트스트림을 엔트로피 복호화하여 차영상의 양자화된 계수값, 움직임 벡터, 모드 정보 등의 부호화 정보를 추출할 수 있다. 추출된 차영상의 양자화된 계수값은 정수형을 갖는다.In
820단계에서, 복호화 장치는, 차출된 차영상의 양자화된 계수값을 재정렬한다.In
830단계에서, 복호화 장치는, 재정렬된 정수형 양자화 계수값을 매크로블록 단위로 역양자화할 수 있다. 830단계는, IDCT에 적합한 역양자화 테이블 또는 역양자화 오프셋을 이용하여 역양자화를 수행할 수 있다.In
840단계에서, 복호화 장치는, 생성된 차영상의 계수값을 IDCT하여 차영상을 생성할 수 있다. 840단계는, IDCT 과정을 2번 수행하는 다차원 정수형 IDCT를 수행할 수 있다.In
840단계에 의해 획득되는 차영상은 예측 블록에 가산되어 현재 블록 또는 현재 프레임으로 복원될 수 있다. 예측 블록은 인트라 예측 또는 움직임 보상에 의해 인터 예측된 블록일 수 있다. The difference image acquired in
본 발명에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the present invention can be implemented in the form of program instructions that can be executed by various computer means and recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. The medium may be a transmission medium such as an optical or metal line, a wave guide, or the like, including a carrier wave for transmitting a signal designating a program command, a data structure, or the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described by way of limited embodiments and drawings, but the present invention is not limited to the above embodiments, and those skilled in the art to which the present invention pertains various modifications and variations from such descriptions. This is possible.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined not only by the claims below but also by the equivalents of the claims.
100: 비디오 데이터 압축 장치
110: 인트라 예측부 120: 움직임 추정부
130: 움직임 보상부 140: 제1차분기
150: 부호화부 160: 역양자화 및 역변환부
170: 제2차분기 180: 필터
190: 프레임 메모리100: video data compression device
110: intra prediction unit 120: motion estimation unit
130: motion compensation unit 140: first quarter
150: encoder 160: inverse quantization and inverse transform unit
170: second quarter 180: filter
190: frame memory
Claims (10)
상기 다차원 변환된 차영상에 대해 정수형 양자화를 적용하는 양자화부;
를 포함하는 다차원 변환과 양자화가 가능한 부호화 장치.A transform unit which multi-dimensionally transforms the difference image generated by removing the predicted image generated by the inter prediction from the original image; And
A quantization unit applying integer quantization to the multi-dimensional transformed difference image;
Encoding apparatus capable of multi-dimensional transformation and quantization comprising a.
상기 양자화부는, 매크로블록 단위로 상기 정수형 양자화를 수행하며, 현재 부호화할 양자화 계수값이 1인 경우, 이전에 부호화된 양자화 계수값이 0인 양자화 계수를 고려하여, 상기 매크로블록의 부호화 여부를 결정하는 다차원 변환과 양자화가 가능한 부호화 장치.The method of claim 1,
The quantization unit performs the integer quantization in units of macroblocks. When the quantization coefficient value to be encoded is 1, the quantization unit determines whether to encode the macroblock in consideration of a quantization coefficient having a previously encoded quantization coefficient value of 0. An encoding device capable of multidimensional transformation and quantization.
상기 양자화부는, 상기 차영상 중 매크로블록의 양자화 계수값들 중 상위 고주파 위치에 해당하는 계수값들에 양자화 오프셋값을 적용한 후 반올림 또는 반내림에 의해 상기 정수형 양자화를 적용하여 데드존(Dead Zone)을 증가시키는 다차원 변환과 양자화가 가능한 부호화 장치.The method of claim 1,
The quantizer is a dead zone by applying the integer quantization by rounding up or down after applying a quantization offset value to coefficient values corresponding to upper high frequency positions among quantization coefficient values of a macroblock of the difference image. A coding apparatus capable of multi-dimensional transformation and quantization that increases a value.
상기 양자화부는, 상기 차영상 중 매크로블록의 양자화 계수값들 중 하위 저주파 위치에 해당하는 계수값들에 양자화 오프셋값을 적용한 후 반올림 또는 반내림에 의해 상기 정수형 양자화를 적용하여 데드존(Dead Zone)을 감소시키는 다차원 변환과 양자화가 가능한 부호화 장치.The method of claim 1,
The quantizer is a dead zone by applying the integer quantization by rounding up or down after applying a quantization offset value to coefficient values corresponding to lower low frequency positions among quantization coefficient values of a macroblock of the difference image. A coding apparatus capable of multi-dimensional transform and quantization to reduce the noise.
상기 양자화부는, 상기 양자화 계수값들 중 하위 M개의 저주파에 해당하는 계수값들에는 1/M의 양자화 오프셋을 적용하며, 상위 N(N<M)개의 고주파에 해당하는 계수값들에는 1/N의 양자화 오프셋을 적용하여 양자화 계수 중 데드존(Dead Zone)을 조정하는 다차원 변환과 양자화가 가능한 부호화 장치.The method according to claim 3 or 4,
The quantization unit applies a quantization offset of 1 / M to coefficient values corresponding to lower M low frequencies among the quantization coefficient values, and 1 / N to coefficient values corresponding to upper N (N <M) high frequencies. A coding apparatus capable of multidimensional transformation and quantization by adjusting a dead zone among quantization coefficients by applying a quantization offset of.
상기 양자화부는 상기 양자화 계수값들 중 상위 M개 및 하위 N개의 계수값들을 제외한 나머지 계수값들에는 인터 프레임의 부호화시 사용되는 양자화 오프셋값을 적용하는 다차원 변환과 양자화가 가능한 부호화 장치.The method of claim 5,
The quantization unit is capable of multi-dimensional transformation and quantization to apply the quantization offset value used in the encoding of the inter frame to the remaining coefficient values except the upper M and lower N coefficient values of the quantization coefficient values.
상기 양자화부는 16×8 수평모드에 대해서는 상기 수평모드의 방향인 수평방향에 수직하는 방향으로 주사방식을 적용하며, 8×16 수직모드에 대해서는 상기 수직모드의 방향인 수직방향에 수직하는 방향으로 주사방식을 적용하는 다차원 변환과 양자화가 가능한 부호화 장치.The method of claim 1,
The quantization unit applies a scanning method in a direction perpendicular to a horizontal direction that is a direction of the horizontal mode for a 16 × 8 horizontal mode, and scans in a direction perpendicular to a vertical direction that is a direction of the vertical mode for an 8 × 16 vertical mode. A coding apparatus capable of multi-dimensional transformation and quantization using a scheme.
상기 다차원 변환된 차영상에 대해 정수형 양자화하는 단계;
를 포함하는 다차원 변환과 양자화가 가능한 부호화 방법.Multi-dimensional transforming the difference image generated by removing the prediction image generated by the inter prediction from the original image; And
Integer quantization of the multi-dimensional transformed difference image;
A coding method capable of multidimensional transformation and quantization comprising a.
상기 추출된 정수형의 양자화된 계수값에 대해 정수형 역양자화를 적용하여 차영상의 계수값을 생성하는 역양자화부; 및
상기 생성되는 차영상의 계수값을 다차원 역변환하여 차영상을 생성하는 역변환부;
를 포함하는 복호화 장치.An entropy decoding unit for entropy decoding the input bitstream to extract integer quantized coefficient values and motion vectors;
An inverse quantizer for generating coefficient values of a difference image by applying integer inverse quantization to the extracted integer quantized coefficient values; And
An inverse transform unit generating a difference image by multi-dimensional inverse transform of coefficient values of the generated difference image;
Decoding apparatus comprising a.
상기 추출된 정수형의 양자화된 계수값에 대해 정수형 역양자화를 적용하여 차영상의 계수값을 생성하는 단계; 및
상기 생성되는 차영상의 계수값을 다차원 역변환하여 차영상을 생성하는 단계;
를 포함하는 복호화 방법.Entropy decoding the input bitstream to extract an integer quantized coefficient value;
Generating coefficient values of a difference image by applying integer inverse quantization to the extracted integer quantized coefficient values; And
Generating a difference image by multi-dimensional inverse transformation of the coefficient values of the generated difference image;
Decryption method comprising a.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20090127093 | 2009-12-18 | ||
KR1020090127093 | 2009-12-18 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20110070687A true KR20110070687A (en) | 2011-06-24 |
Family
ID=44402160
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100033283A KR20110070687A (en) | 2009-12-18 | 2010-04-12 | Encoding apparatus and method capable of multi-dimension transforming and quantization, and decoding apparatus and method |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20110070687A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101370706B1 (en) * | 2012-06-29 | 2014-03-12 | 인텔렉추얼디스커버리 주식회사 | Apparatus and method for preprocessing of video coder |
CN104331495A (en) * | 2014-11-19 | 2015-02-04 | 北京国电软通江苏科技有限公司 | Data compressing method |
-
2010
- 2010-04-12 KR KR1020100033283A patent/KR20110070687A/en not_active Application Discontinuation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101370706B1 (en) * | 2012-06-29 | 2014-03-12 | 인텔렉추얼디스커버리 주식회사 | Apparatus and method for preprocessing of video coder |
CN104331495A (en) * | 2014-11-19 | 2015-02-04 | 北京国电软通江苏科技有限公司 | Data compressing method |
CN104331495B (en) * | 2014-11-19 | 2018-07-06 | 北京国电软通江苏科技有限公司 | A kind of data compression method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10687075B2 (en) | Sub-block transform coding of prediction residuals | |
KR102129046B1 (en) | Apparatus and method for coding/decoding image selectivly using descrete cosine/sine transtorm | |
TWI469644B (en) | Method for coding videos using dictionaries | |
KR20210157464A (en) | Video encoding apparatus for performing intra-prediction based on directionality of neighboring block, video decoding apparatus and video decoding method for performing the same | |
KR101088375B1 (en) | apparatus and method for adaptive variable block-size transform and the appartus and the method for video encoding/decoding thereof. | |
KR101418096B1 (en) | Video Coding Method and Apparatus Using Weighted Prediction | |
KR101215614B1 (en) | Apparatus for encoding and decoding image, and method theroff, and a recording medium storing program to implement the method | |
GB2434050A (en) | Encoding at a higher quality level based on mixed image prediction factors for different quality levels | |
KR20090097688A (en) | Method and apparatus of encoding/decoding image based on intra prediction | |
KR20110083368A (en) | Method and apparatus for encoding and decoding image using large transform unit | |
KR20110112224A (en) | Method and apparatus for encdoing/decoding information regarding encoding mode | |
KR20110017300A (en) | Method and apparatus for encoding and decoding image using large transform unit | |
KR20090099234A (en) | Method and apparatus for video encoding and decoding | |
KR20080026463A (en) | Apparatus and method for encoding and decoding using alternative converter according to the correlation of residual signal | |
US9124901B2 (en) | Method and apparatus for encoding/decoding images considering low frequency components | |
KR20110000438A (en) | Video encoding/decoding method and apparatus by using multiple dimensional integer transform | |
KR101768865B1 (en) | Video Coding Method and Apparatus Using Weighted Prediction | |
EP2252059B1 (en) | Image encoding and decoding method and device | |
WO2011102735A1 (en) | Video encoder/ decoder, method and computer program product | |
KR101673025B1 (en) | Apparatus and Method for Intra Prediction Encoding/Decoding based on All Direction | |
EP1841235A1 (en) | Video compression by adaptive 2D transformation in spatial and temporal direction | |
KR101432779B1 (en) | Video Coding Method and Apparatus by Using Motion Compensation Frame Selective Filtering and Inter Prediction Method and Apparatus Therefor | |
KR20100035243A (en) | Quantization parameter determination method and apparatus and video encoding/decoding method and apparatus | |
KR20110070687A (en) | Encoding apparatus and method capable of multi-dimension transforming and quantization, and decoding apparatus and method | |
KR101943425B1 (en) | Method and Apparatus for Image Encoding/Decoding using Efficient Non-fixed Quantization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
WITN | Withdrawal due to no request for examination |