KR100622306B1 - Method for decoding video and apparatus thereof - Google Patents
Method for decoding video and apparatus thereof Download PDFInfo
- Publication number
- KR100622306B1 KR100622306B1 KR1020050090688A KR20050090688A KR100622306B1 KR 100622306 B1 KR100622306 B1 KR 100622306B1 KR 1020050090688 A KR1020050090688 A KR 1020050090688A KR 20050090688 A KR20050090688 A KR 20050090688A KR 100622306 B1 KR100622306 B1 KR 100622306B1
- Authority
- KR
- South Korea
- Prior art keywords
- quantization
- macroblock
- quantization weighting
- matrix
- matrices
- 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/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- 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/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
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명은 개선된 동영상 부호화 방법에 관한 것으로서, 본 발명에 따른 복수개의 양자화 행렬을 사용하는 동영상 부호화 방법은 입력 영상의 특성에 기초하여 매크로블록 단위로 상기 복수개의 양자화 행렬 중 하나를 선택하는 단계와, 상기 입력 영상에 대해 영상 변환을 수행하는 단계와, 상기 영상 변환된 데이터에 대해, 상기 선택된 양자화 행렬을 사용하여 양자화를 수행하는 단계를 포함한다.The present invention relates to an improved video encoding method. The video encoding method using a plurality of quantization matrices according to the present invention includes selecting one of the plurality of quantization matrices in units of macroblocks based on characteristics of an input image; And performing image transformation on the input image, and performing quantization on the image transformed data using the selected quantization matrix.
Description
도 1은 종래의 MPEG 부호화 및 복호화 장치를 도시하는 블록도1 is a block diagram showing a conventional MPEG encoding and decoding apparatus.
도 2는 평균이 0이 아닌 영상에 적용되는 근사화된 일반화 위너 필터를 도시하는 도면2 illustrates an approximated generalized Wiener filter applied to an image whose mean is not zero.
도 3은 평균이 0이 아닌 영상에 대한 DCT 영역에서의 근사화된 일반화 위너 필터을 나타내는 도면3 shows an approximated generalized Wiener filter in the DCT region for non-average images.
도 4(a)(b)(c)는 인트라 블록의 부호화에 적용되는 필터의 구성을 도시하는 도면4 (a) (b) (c) are diagrams showing the configuration of a filter applied to encoding of an intra block.
도 5는 인터 블록의 부호화에 적용되는 일반적인 비디오 부호화기를 도시하는 도면.5 is a diagram illustrating a general video encoder applied to encoding of an inter block.
도 6은 본 발명의 일실시예에 따른 동영상 부호화기를 도시하는 도면6 illustrates a video encoder according to an embodiment of the present invention.
도 7은 본 발명의 일 실시예에 따른 동영상 부호화기를 도시하는 도면 7 is a diagram illustrating a video encoder according to an embodiment of the present invention.
도 8은 본 발명의 일 실시예에 따른 동영상 복호화기를 도시하는 도면8 illustrates a video decoder according to an embodiment of the present invention.
본 발명은 동영상 부호화 및 복호화 방법과 그 장치에 관한 것으로서, 특히 동영상 부호화기에 입력되는 영상의 특성에 기초하여, 양자화 행렬을 적응적으로 선택하여 동영상 부호화 효율을 향상시키기 위한 부호화 및 복호화 방법과 그 장치에 관한 것이다.The present invention relates to a video encoding and decoding method and apparatus, and more particularly, to an encoding and decoding method and apparatus for improving video encoding efficiency by adaptively selecting a quantization matrix based on characteristics of an image input to a video encoder. It is about.
도 1은 일반적인 동영상 부호화를 위한 인코더(120) 및 디코더(140)를 도시하는 블록도이다.1 is a block diagram illustrating an
VOD 서비스나 동영상 통신을 위해, 인코더(120)는 압축 기술에 의해 부호화된 비트 스트림을 생성하고, 디코더(140)는 입력된 비트 스트림으로부터 영상을 복원하는 기능을 수행한다.For VOD service or video communication, the
먼저, DCT(Discrete Cosine Transform)부(110)는 공간적 상관성을 제거하기 위해 8 ×8 화소 블록 단위로 입력되는 영상 데이터에 대해 DCT 연산을 수행하고, 양자화부(Quantization: Q)(120)는 DCT부(110)에서 얻어진 DCT 계수에 대해 양자화를 수행하여, 몇 개의 대표 값으로 표현함으로써, 고효율 손실 압축을 수행한다. First, the DCT (Discrete Cosine Transform) unit 110 performs a DCT operation on image data input in units of 8 × 8 pixel blocks to remove spatial correlation, and the quantization unit (Q) 120 performs a DCT. A high efficiency lossy compression is performed by performing quantization on the DCT coefficients obtained by the unit 110 and expressing them as some representative values.
역양자화부(Inverse Quantization: IQ)(130)는 양자화부(120)에서 양자화된 영상 데이터를 역양자화한다. IDCT부(140)는 역양자화부(130)에서 역양자화된 영상 데이터에 대해 IDCT(Inverse Discrete Cosine Transform) 변환을 수행한다. 프레임 메모리부(150)는 IDCT부(140)에서 IDCT 변환된된 영상 데이터를 프레임 단위로 저장한다. The inverse quantization unit (IQ) 130 inversely quantizes the image data quantized by the
움직임 추정 및 보상부(Motion Estimation and Compensation: ME/MC)(160)는 입력되는 현재 프레임의 영상 데이터와 프레임 메모리부(150)에 저장된 이전 프레 임의 영상 데이터를 이용하여 매크로 블록당 움직임 벡터(MV)와 블록정합오차(block matching error)에 해당하는 SAD(sum of absolute difference)를 추정한다.The motion estimation and compensation unit (ME / MC) 160 uses the image data of the input current frame and the previous frame random image data stored in the
가변 길이 부호화부(variable length coding: VLC)(170)는 움직임 추정부(160)에서 추정된 움직임 벡터(MV)에 따라 DCT 및 양자화 처리된 데이터에서 통계적 중복성을 제거한다.The variable length coding unit VLC 170 removes statistical redundancy from the DCT and quantized data according to the motion vector MV estimated by the motion estimator 160.
인코더(120)에 의해 부호화된 비트 스트림은 가변 길이 복호화부(142), 역양자화부(144), IDCT부(146), 프레임 메모리부(148), 및 움직임 보상부(150)로 이루어진 디코더(140)에 의해 복호화 된다.The bit stream encoded by the
이러한, 동영상 부호화기는 미국특허공보 제6,480,539호에도 또한 개시되어 있다.Such a video encoder is also disclosed in US Pat. No. 6,480,539.
최근 아날로그 지상파 방송을 수신하여 이를 MPEG 2, MPEG 4와 같은 압축 방식을 이용해 부호화하여 저장하는 셋탑 박스 등이 선보이고 있다. 그러나, 지상파 방송의 경우, 수신단에서의 영상이 채널에 의해 노이즈로 왜곡되어 있는 경우가 많다. 예를 들어, 영상 전체에 화이트 가우시안(white gaussian) 노이즈가 더해져 있는 듯한 현상이 보이는 경우가 있다. 이러한 영상을 그대로 압축할 경우, 노이즈의 영향으로 압축 효율이 떨어지게 된다.Recently, set-top boxes that receive analog terrestrial broadcasting and encode and store them using compression methods such as MPEG 2 and MPEG 4 have been introduced. However, in the case of terrestrial broadcasting, the video at the receiving end is often distorted with noise by the channel. For example, there may be a case where white gaussian noise is added to the entire image. If such an image is compressed as it is, the compression efficiency is lowered due to noise.
따라서, 종래의 동영상 부호화 방법에서는 노이즈를 제거하기 위해 인코더의 입력단에 전처리 필터를 적용하였다. 하지만, 전처리 필터를 사용하는 경우, 동영상 부호화를 위해 부가적인 연산 과정이 필요하게 된다는 문제점이 있었다.Therefore, in the conventional video encoding method, a preprocessing filter is applied to an input of an encoder to remove noise. However, when using a preprocessing filter, there is a problem that an additional operation process is required for video encoding.
또한, 종래의 동영상 부호화 방법에서는 입력 영상의 특성과 무관하게 결정 되는 양자화 행렬을 픽쳐(picture) 단위로 적용하여 양자화를 수행하였다. 하지만, 이러한 경우 동영상 부호화가 효율적으로 수행되지 못한다는 문제점이 있었다.In addition, in the conventional video encoding method, quantization is performed by applying a quantization matrix determined in a picture unit irrespective of characteristics of an input image. However, in this case, there is a problem that video encoding is not performed efficiently.
본 발명은 상기와 같은 종래의 동영상 부호화 및 복호화 방법을 개선하여, 동영상 압축 효율 및 성능이 향상된 동영상 부호화 및 복호화 방법과 그 장치를 제공하는 것을 목적으로 한다.An object of the present invention is to improve a conventional video encoding and decoding method as described above, and to provide a video encoding and decoding method and apparatus for improving video compression efficiency and performance.
또한, 본 발명은 상기와 같은 종래의 동영상 부호화 및 복호화 방법을 개선하여, 별도의 연산량의 증가 없이 노이즈를 제거하여 동영상 부호화 및 복호화를 수행하는 동영상 부호화 및 복호화 방법과 그 장치를 제공하는 것을 목적으로 한다.Another object of the present invention is to provide a video encoding and decoding method and apparatus for improving the conventional video encoding and decoding method and performing video encoding and decoding by removing noise without increasing an amount of computation. do.
상기 목적은 본 발명에 따른 복수개의 양자화 행렬을 사용하는 동영상 부호화 방법에 있어서, 입력 영상의 특성에 기초하여 매크로블록 단위로 상기 복수개의 양자화 행렬 중 하나를 선택하는 단계와, 상기 입력 영상에 대해 영상 변환을 수행하는 단계와, 상기 영상 변환된 데이터에 대해, 상기 선택된 양자화 행렬을 사용하여 양자화를 수행하는 단계를 포함하는 부호화 방법에 의해 달성된다.In the video encoding method using a plurality of quantization matrix according to the present invention, the step of selecting one of the plurality of quantization matrix in macroblock units based on the characteristics of the input image, and the image for the input image And performing a transformation and performing quantization on the image transformed data using the selected quantization matrix.
또한, 상기 목적은 복수개의 양자화 행렬을 사용하는 동영상 복호화 방법에 있어서, 입력된 부호화된 영상 데이터를 가변 길이 복호화하는 단계와, 상기 가변 길이 복호화된 영상 데이터로부터 입력 영상의 특성과 연관하여 분류된 상기 복수개의 양자화 행렬 중 하나를 특정하는 인덱스 정보를 매크로블록 단위로 추출하는 단계와, 상기 추출된 인덱스 정보를 사용하여 상기 복수개의 양자화 행렬 중 하나를 선택하는 단계와, 상기 선택된 양자화 행렬을 사용하여, 상기 가변 길이 복호화된 영상 데이터에 대해 매크로블록 단위로 역양자화를 수행하는 단계를 포함하는 것을 특징으로 하는 복호화 방법에 의해서 달성된다.The present invention also provides a video decoding method using a plurality of quantization matrices, the method comprising: variable length decoding input coded image data, and classifying the input coded image data in association with characteristics of an input image from the variable length decoded image data. Extracting index information specifying one of a plurality of quantization matrices in macroblock units, selecting one of the plurality of quantization matrices using the extracted index information, and using the selected quantization matrix, And performing inverse quantization on a macroblock basis for the variable length decoded image data.
또한, 상기 목적은 복수개의 양자화 행렬을 사용하는 동영상 부호화 장치에 있어서, 입력 영상의 특성에 기초하여 상기 복수개의 양자화 행렬 중 하나를 매크로블록 단위로 선택하고, 상기 선택된 양자화 행렬을 표시하는 인덱스 정보를 매크로블록 단위로 생성하는 양자화 행렬 결정부와, 영상의 특성과 연관하여 분류된 복수개의 양자화 행렬이 저장되고, 상기 양자화 행렬 결정부에서 생성된 인덱스 정보에 기초하여, 매크로블록 단위로 양자화 행렬을 출력하는 양자화 행렬 저장부와, 상기 입력 영상에 대해 영상 변환을 수행하는 영상 변환부와, 상기 영상 변환된 영상 데이터에 대해, 상기 양자화 행렬 저장부에서 출력된 양자화 행렬을 사용하여 해당 매크로블록에 대해 양자화를 수행하는 양자화부를 포함하는 부호화 장치에 의해서 달성된다.In addition, the above object is to provide a video encoding apparatus using a plurality of quantization matrix, to select one of the plurality of quantization matrix in macroblock units based on the characteristics of the input image, and to obtain index information indicating the selected quantization matrix A quantization matrix determiner generated in units of macroblocks and a plurality of quantization matrices classified in association with characteristics of an image are stored, and the quantization matrixes are output in macroblock units based on index information generated in the quantization matrix determiner. A quantization matrix storage unit, an image transformation unit performing image transformation on the input image, and a quantization matrix output from the quantization matrix storage unit on the image-converted image data to quantize the macroblock. It is achieved by an encoding device including a quantization unit for performing the operation.
또한, 상기 목적은 복수개의 양자화 행렬을 사용하는 동영상 복호화 장치에 있어서, 부호화된 영상 스트림을 입력받아, 이를 가변 길이 복호화하고, 입력 영상의 특성과 연관하여 분류된 상기 복수개의 양자화 행렬 중 하나를 특정하는 인덱스 정보를 매크로블록 단위로 추출하는 가변 길이 복호화부와, 상기 복수개의 양자화 행렬을 저장하고, 상기 가변 길이 복호화부에서 추출된 인덱스 정보를 사용하여 상기 저장된 복수개의 양자화 행렬 중 하나를 선택하여, 출력하는 양자화 행렬 저장 부와, 상기 양자화 행렬 저장부에서 출력된 양자화 행렬을 사용하여, 상기 가변 길이 복호화된 영상 데이터에 대해 매크로블록 단위로 역양자화를 수행하는 역양자화부를 포함하는 복호화 장치에 의해 달성된다.The present invention also provides a video decoding apparatus using a plurality of quantization matrices, wherein the encoded video stream is input, variable length decoded, and one of the plurality of quantization matrices classified in association with characteristics of the input image is identified. A variable length decoder for extracting index information in units of macroblocks, the plurality of quantization matrices, and selecting one of the stored plurality of quantization matrices using the index information extracted by the variable length decoder, Achieved by a decoding apparatus including an output quantization matrix storage unit and an inverse quantization unit for performing inverse quantization of the variable length decoded image data in macroblock units using the quantization matrix output from the quantization matrix storage unit do.
이하에서는, 도 2 내지 도 5를 참조하여, 본 발명에 따른 동영상 부호화 방법에 사용되는 노이즈 제거 방식을 설명한다.Hereinafter, a noise removing method used in the video encoding method according to the present invention will be described with reference to FIGS. 2 to 5.
동영상 부호화에 있어서, 전처리 필터링은 영상에 섞여 있는 노이즈를 제거함으로써, 부호화 효율을 향상시킨다는 점에서 매우 중요하다. 노이즈 제거를 위한 종래의 전처리 필터링은 대부분 공간 화소 영역에서 이루어진 것과 달리, 본 발명에 따른 노이즈 제거 방식은 부호기내의 DCT 영역에서 이루어지는 것을 특징으로 한다.In video encoding, preprocessing filtering is very important in that encoding efficiency is improved by removing noise mixed in an image. Unlike conventional preprocessing filtering for noise removal, which is performed mostly in the spatial pixel region, the noise removing method according to the present invention is characterized in that it is performed in the DCT region in the encoder.
본 발명에 사용되는 노이즈 제거 방식을 설명하기 위한 실시예에서는 이를 위해 근사화된 일반화 위너 필터링(approximated generalized Wiener filtering)을 사용한다. 여기에서, 근사화된 일반화 위너 필터링이란 DCT와 같은 고속 유니터리 변환(fast unitary transformation)을 사용함으로써, 근사적으로 위너 필터링을 구현할 수 있도록 하는 필터링 방법을 의미한다. 또한, 선택적으로 근사화된 위너 필터링 이외에, DCT 영역에서의 필터링을 위해 다른 필터링 기법을 사용하는 것도 가능하다.An embodiment for explaining the noise cancellation method used in the present invention uses approximated generalized Wiener filtering. Here, the approximated generalized Wiener filtering refers to a filtering method that enables to implement Wiener filtering by using fast unitary transformation such as DCT. In addition to selectively approximated Wiener filtering, it is also possible to use other filtering techniques for filtering in the DCT domain.
도 2는 평균값이 0이 아닌 영상 데이터를 위한 근사화된 일반화 위너 필터링 블록도를 도시한다.2 shows an approximated generalized Wiener filtering block diagram for image data whose mean value is not zero.
도 2에서 입력 v는 노이즈가 포함된 영상 블록을 의미하여, 출력 은 필터 링된 영상 블록의 행-정렬된 열 벡터(row-ordered column vector)를 의미한다. 입력 영상 v는 보통 0이 아닌 평균을 갖는 영상 블록이므로, 평균값 예측부(210)에서는 해당 블록의 평균값 을 예측하고, 감산부(220)에서는 입력 영상 v로부터 예측된 평균값 을 감산한다.In FIG. 2, the input v denotes an image block including noise, and thus an output. Denotes a row-ordered column vector of the filtered image block. Since the input image v is usually an image block having an average other than 0, the
감산부(220)에서의 출력값 z는 필터링부(230)에 의해 필터링되고, 필터링부(230)는 필터링된 데이터 를 출력한다. 가산부(240)는 필터링된 데이터 에 평균값 계산부(210)에 의해 계산된 해당 블록의 평균값 를 가산하여 원하는 필터링된 데이터를 출력한다.The output value z in the
이하에서는, 평균값이 0인 영상 모델에 대한 일반화 위너 필터링 방식을 설명한다.Hereinafter, a generalized Wiener filtering method for an image model having an average value of 0 will be described.
평균값이 0인 영상 모델에 대한 일반화 위너 필터링은 아래 수학식 1과 같이 기술될 수 있다.Generalized Wiener filtering for an image model having an average value of 0 may be described as in
여기에서, , ,, Z=Az이고, 은 노이즈 분산값(noise variance)이다. 또한, A는 유니터리 변환을 의미하는데, 본 실시예에서는 DCT 변환을 사용하므로, 본 실시예의 경우에는 A는 DCT 변환을 의미한다. 또한, 가 8×8 DCT 행렬을 의미하고,가 크로네크(kronecker) 곱 연산자를 의미한다고 할 때, A = ()으로 표현할 수 있다.From here, , , , Z = Az, Is a noise variance. In addition, A means unitary conversion. In this embodiment, since DCT conversion is used, A means DCT conversion in this embodiment. Also, Denotes an 8 × 8 DCT matrix, Is a kronecker multiplication operator, A = ( Can be expressed as
이 대부분의 유니터리 변환에서 근사적으로 대각화(diagonal)되기 때문에, 수학식 1은 아래의 수학식 2로 표현될 수 있다.
여기에서, From here,
이다. to be.
따라서, 수학식 2를 8 ×8 블록에 적용시키면, 아래 수학식 3을 얻을 수 있다.Therefore, by applying
여기에서, 은 수학식 4와 같다.From here, Is the same as Equation 4.
은 의 대각선에 놓이는 정규화된 요소값들이며, 은 원 영상 y의 분산값을 의미한다. 하지만, 일반적으로 을 알 수 없으므로, z의 분산값에서 노이즈 분산값을 뺀 값을 으로 대체한다. silver Normalized element values on the diagonal of, Denotes the variance of the original image y. But generally Since we don't know, the variance of z minus the noise variance Replace with
수학식 3을 보면, 평균이 0인 영상 블록에 대해, 근사화된 일반화 위너 필터 링은 2 차원 DCT 계수들에 을 곱함으로써 이루어짐을 알 수 있다. 일단, 이 결정되면, 최종 필터링된 영상은 에 평균값 을 더함으로써 얻어진다.Equation 3 shows that for an averaged zero image block, the approximated generalized Wiener filtering is applied to two-dimensional DCT coefficients. It can be seen that by multiplying. First, Once this is determined, the final filtered image Average value on It is obtained by adding
이하에서는, 평균값이 0이 아닌 영상 모델에 대한 일반화 위너 필터링 방식을 설명한다.Hereinafter, a generalized Wiener filtering scheme for an image model whose average value is not 0 will be described.
평균 블록이 노이즈가 섞인 입력 DCT 블록에 S(k,l)을 곱함으로써 얻어진다고 가정, 즉 수학식 5가 성립한다고 가정하는 경우, 도 3은 DCT 영역에서의 평균값의 더하기와 빼기를 포함한 구조로서 도 4와 같이 재구성될 수 있다.Assuming that the average block is obtained by multiplying S (k, l) by the noisy input DCT block, i.e., Equation 5 holds, Figure 3 is a structure including addition and subtraction of the mean value in the DCT domain. It may be reconfigured as shown in FIG.
위 가정에 따른 수학식 5와 수학식 3을 이용하면, DCT 영역에서의 필터링된 영상 블록은 다음 수학식 6과 같이 표현될 수 있다.Using Equations 5 and 3 according to the above assumptions, the filtered image block in the DCT region may be expressed as Equation 6 below.
여기에서, F(k,l)은 다음 수학식 7과 같이 표현된다.Here, F (k, l) is expressed as in Equation 7 below.
즉, 수학식 6으로부터 전체 필터링 과정이 F(k,l)과 하나의 곱연산으로 단일화됨을 알 수 있다. 수학식 7에서 F(k,l)은 신호대 노이즈비(signal to noise ratio: SNR), 공분산 행렬(covariance matrix), 및 평균 행렬에 의해 결정됨을 알 수 있다.That is, it can be seen from Equation 6 that the entire filtering process is unified with F (k, l) and one multiplication. In Equation 7, F (k, l) is determined by a signal to noise ratio (SNR), a covariance matrix, and an average matrix.
일단, 평균 행렬 S(k,l)을 구하는 것이 필요한데, 본 실시예에서는 수학식 5를 만족시키는 S(k,l)을 선택한다. 본 실시예에서는, 이중 가장 간단한 방법인, DCT 블록에서 다음 수학식 8에서와 같이 DC 값을 취한다.First, it is necessary to find the average matrix S (k, l). In this embodiment, S (k, l) that satisfies the expression (5) is selected. In this embodiment, the DC value is taken from the DCT block, which is the simplest method, as shown in Equation 8 below.
이하에서는 도 4 및 도 5를 참조하여, 동영상 부호화기에서의 전처리 과정을 설명한다.Hereinafter, the preprocessing process in the video encoder will be described with reference to FIGS. 4 and 5.
상기에서는 입력 영상의 평균이 0이 아닌 영상 블록에 대해서도 근사화된 일반화 위너 필터링이 DCT 계수에 대한 곱연산으로 수행될 수 있음을 설명하였다.In the above description, the generalized Wiener filtering, which is approximated even for an image block whose average of the input image is not 0, may be performed as a multiplication of DCT coefficients.
도 4에서는 근사화된 일반화 위너 필터링 방식이 동영상 부호화기에 적용된 것을 보여준다. 도 4는 인트라 블록(intra block)을 위한 부호화기 구조를 도시한다. 도 4(a) 및 4(b)는 인트라 블록의 경우, DCT 영역에서의 필터링 수행후, IDCT 과정을 수행할 필요없이 바로 양자화 및 VLC를 수행하면 된다는 것을 보여준다. 4 shows that the approximated generalized Wiener filtering scheme is applied to a video encoder. 4 shows an encoder structure for an intra block. 4 (a) and 4 (b) show that in the case of an intra block, quantization and VLC may be performed immediately after performing filtering in the DCT region without performing an IDCT process.
즉, DCT 계수들에 F(k,l)을 곱함으로써 필터링이 완료되는 것을 보여준다. 한편, 양자화 과정도 또한 DCT 계수들 각각을 양자화 테이블에 따라 특정값으로 곱해주는 (나누어주는) 작업이다. 따라서, F(k,l)을 DCT 계수 각각에 곱해주는 작업과 양자화 작업은 도 4(c)에서와 같이 하나의 작업으로 합쳐 질 수 있다.That is, the filtering is completed by multiplying the DCT coefficients by F (k, l). On the other hand, the quantization process is also a task of multiplying each of the DCT coefficients by a specific value according to the quantization table. Therefore, the operation of multiplying F (k, l) by each of the DCT coefficients and the quantization operation may be combined into one operation as shown in FIG.
도 4에 적용된 개념은 도 5에 도시된 바와 같이, 움직임 보상에 의한 예측 블록 정보 p(m,n)은 이미 노이즈가 제거되었다는 가정 아래, 인터 블록(inter block)들에 대해서도 동일하게 적용될 수 있다.The concept applied to FIG. 4 may be equally applied to inter blocks under the assumption that the noise prediction block information p (m, n) by motion compensation has already been removed, as shown in FIG. 5. .
일반적으로 공분산(covariance) ψ(k,l)은 입력 영상 블록이 인터 블록인지 인트라 블록인지 여부에 따라 정해지므로, 수학식 7의 F(k,l) 또한 블록 모드에 따라 변경되어 적용된다.In general, since the covariance ψ (k, l) is determined according to whether the input image block is an inter block or an intra block, F (k, l) of Equation 7 is also changed and applied according to the block mode.
이하에서는, 평균값이 감산된 인트라 및 인터 블록들에 대해 분산 예측값을 구하는 방법을 수학식 9를 참조하여 설명한다. S가 평균이 감산된 N ×N (N=8) 블록인 경우, 해당 블록의 분산 행렬은 수학식 9에 의해 구해질 수 있다.Hereinafter, a method of obtaining the variance prediction value for the intra and inter blocks in which the average value is subtracted will be described with reference to Equation (9). When S is an N × N (N = 8) block in which the mean is subtracted, the variance matrix of the block can be obtained by Equation (9).
상기 수학식 9는 1999년 6월에 반포된 IEEE Trans. Circ. Syst. for Video Technol.의 W. Niehsen 및 M Brunig에 의한 "Covariance analysis of motion-compensated frame differences"에 기재되어 있다.Equation 9 is IEEE Trans. Circ. Syst. "Covariance analysis of motion-compensated frame differences" by W. Niehsen and M Brunig, for Video Technol.
한편, 수학식 9를 적용하여 여러 실험 영상들에 적용하여 분산 예측값을 구 할 수 있다. 인트라 블록의 경우, 원 영상을 8 ×8 블록으로 나누어 처리하고, 인터 블록의 경우에는 전역 탐색 방법을 사용하여, 인터 블록으로 선택된 블록들 만을 모아서 수학식 9를 적용하여 분산 예측값을 계산한다.Meanwhile, the variance prediction value may be obtained by applying Equation 9 to various experimental images. In the case of the intra block, the original image is divided into 8 × 8 blocks, and in the case of the inter block, the global prediction method is used to collect only the blocks selected as the inter blocks and apply Equation 9 to calculate the variance prediction value.
계산된 분산 예측값으로부터 을 구하고, 다시 R을 DCT 변환하여 가 얻어진다.From the calculated variance prediction And then again convert DCT to R Is obtained.
이하에서는, 수학식 7의 를 구하는 방법을 설명한다.In the following, How to obtain.
에서 노이즈 분산값 은 노이즈 예측기로부터 얻어질 수 있다. 또한, 노이즈와 원 영상 화소들은 랜덤 변수(random variable)이라고 가정할 때 통상 독립적인 것으로 간주되므로, 원 영상의 분산값 의 예측치 은 아래 수학식 10을 사용하여 예측된다. Noise variance Can be obtained from a noise predictor. In addition, since the noise and the original image pixels are generally regarded as independent when a random variable is assumed, the variance value of the original image Estimate Is predicted using Equation 10 below.
여기에서, 은 매크로블록(macro block: MB)의 분산값으로서, 통상의 동영상 부호화기에서는 은 매크로블록 단위로 계산된다. 본 실시예에서는 동일 매크로블록에 포함된 8 ×8 블록들은 동일한 분산값을 갖는 것으로 가정한다. 따라서, 분산값 계산을 위해 별도의 연산량을 요구하지는 않는다.From here, Is a variance value of a macro block (MB). In a typical video encoder, Is calculated in macroblock units. In this embodiment, it is assumed that 8 x 8 blocks included in the same macroblock have the same dispersion value. Therefore, it does not require a separate calculation amount for calculating the variance value.
도 6은 본 발명에 따른 입력 영상의 특성을 고려한 동영상 부호기의 일실시 예를 도시하는 도면이다.6 is a diagram illustrating an embodiment of a video encoder in consideration of characteristics of an input image according to the present invention.
본 실시예에서는 입력 영상의 특성 중 입력 영상에 포함된 노이즈 정도를 고려하여 양자화 행렬을 적응적으로 적용한다.In the present embodiment, the quantization matrix is adaptively applied in consideration of the degree of noise included in the input image among the characteristics of the input image.
이하에서는, 도 1 및 도 6을 참조하여 본 발명의 일 실시예를 설명한다.Hereinafter, an embodiment of the present invention will be described with reference to FIGS. 1 and 6.
본 발명에 따른 노이즈 제거 방식을 채용한 동영상 부호기는 도 1의 일반적인 동영상 부호기에, 노이즈 예측부(noise estimation unit)(680) 및 양자화 가중치 행렬 결정부(692)와 양자화 가중치 행렬 저장부(694)를 포함한다.The video encoder employing the noise elimination scheme according to the present invention is provided in the general video encoder of FIG. 1 by a
DCT부(610), IDCT부(640), 프레임 메모리부(650), 및 움직임 예측 및 보상부(660)는 도 1의 일반적인 동영상 부호화기에서의 대응하는 기능부와 동일한 동작을 수행하므로, 설명의 간단을 위해 상세한 설명은 생략한다.The
양자화 가중치 행렬 결정부(692)는 노이즈 예측부(680)로부터 전송된 노이즈 분산값 와 움직임 예측 및 보상부(660)로부터 전송된 에 기초하여, 해당 매크로블록에 대응하는 양자화 가중치 행렬을 결정하고, 이에 대응하는 인덱스 정보를 양자화 가중치 행렬 저장부(694) 및 가변 길이 부호화부(variable length coding unit: VLC)(670)로 전송한다.The quantization
이하에서는, 양자화 가중치 행렬 결정부(692)에서 노이즈 예측부(680)로부터 전송된 노이즈 분산값 와 움직임 예측 및 보상부(660)로부터 전송된 에 기초하여 각각의 매크로블록에 대응하는 양자화 가중치 행렬을 결정하는 과정을 설명한다.Hereinafter, the noise variance value transmitted from the
수학식 8 및 상기 도 4 및 도 5와 관련된 설명에 따라, F(k,l)은 수학식 7에 의해 결정된다. F(k,l)이 결정되면, 도 4(c)에 도시된 바와 같이, 8 ×8 블록의 DCT 변환된 계수들 V(k,l)은 각각 해당 F(k,l)과 곱해지고, 그 결과인 은 양자화 과정에서 양자화 가중치 행렬에 의해 나누어진다. In accordance with Equation 8 and the description associated with FIGS. 4 and 5 above, F (k, l) is determined by Equation 7. Once F (k, l) is determined, as shown in Fig. 4 (c), the DCT transformed coefficients V (k, l) of the 8x8 block are each multiplied by the corresponding F (k, l), As a result Is divided by the quantization weight matrix in the quantization process.
본 발명에 따른 동영상 부호화 장치에서는 DCT 변환된 계수들 V(k,l)에 F(k,l)을 곱하고, 을 양자화 가중치 행렬로 나누는 과정을 하나의 과정으로 합쳐서 수행한다. 즉, 양자화 가중치 행렬(QT)의 (k,l) 위치 성분을 Q(k,l)이라고 하는 경우, 새로운 양자화 가중치 행렬(QT')의 (k,l)의 위치 성분은 Q(k,l)/F(k,l)이 된다.In the video encoding apparatus according to the present invention, the DCT transformed coefficients V (k, l) are multiplied by F (k, l), The process of dividing into a quantization weight matrix is performed by combining the process into one process. That is, when the (k, l) position component of the quantization weight matrix QT is called Q (k, l), the position component of (k, l) of the new quantization weight matrix QT 'is Q (k, l). ) / F (k, l).
본 실시예에서는, 상기 두가지 과정을 하나의 과정으로 합치는 방법을 이용하여,와 에 따른 여러 개의 F 행렬들을 미리 계산하여, 이에 다른 새로운 양자화 가중치 행렬(QT')들을 계산하여 양자화 가중치 행렬 저장부(694)에 저장한다.In this embodiment, by using the method of combining the two processes into one process, Wow Calculate a plurality of F matrices in advance, calculate other new quantization weight matrices QT ', and store them in the quantization weight
본 실시예에서는,와 에 따른 5개의 새로운 양자화 가중치 행렬 (QT')이 양자화 가중치 행렬 저장부(694)에 저장된다. 와 이 결정되면, 수학식 10을 사용하여 을 구할 수 있다.In this embodiment, Wow Five new quantization weighting matrices QT 'are stored in the quantization weighting
수학식 7을 참조하면, F(k,l)은 S(k,l), Ψ(k,l), 및 에 의해 결정되는데, S(k,l)은 수학식 8에 의해 결정되고, Ψ(k,l)은 입력 영상이 인터 블록인 지 인트라 블록인지 여부에 따라 결정되는 블록 모드에 따라 변경되어 적용된다. 따라서, F(k,l)을 결정하기 위한 유일한 변수는 이다. 본 실시예에서는, 을 5가지 경우로 분류하여, 다섯개의 새로운 양자화 가중치 행렬(QT')를 생성하여, 이를 양자화 가중치 행렬 저장부(694)에 저장한다.Referring to Equation 7, F (k, l) is S (k, l), Ψ (k, l), and S (k, l) is determined by Equation 8, and Ψ (k, l) is changed and applied according to a block mode determined according to whether an input image is an inter block or an intra block. . Thus, the only variable for determining F (k, l) is to be. In this embodiment, Are classified into five cases, and five new quantization weighting matrices QT 'are generated and stored in the quantization weighting
양자화 가중치 행렬 결정부(692)는 노이즈 예측부(680)로부터 입력된 해당 매크로블록의 와 움직임 예측 및 보상부(660)로부터 입력된 해당 매크로블록의 에 기초하여 를 양자화한다. 이때, 양자화된 값은 해당 매크로블록에 대응하는 양자화 행렬의 인덱스 정보로서 양자화 가중치 행렬 저장부(692) 및 가변 길이 부호화부(670)로 전송된다. The quantization
예를 들어, 양자화 가중치 행렬 저장부(694)에 저장된 양자화 가중치 행렬이 에 기초해서 5가지 경우로 분류되는 경우, 상기 양자화는 5 단계로 양자화 되고, 인덱스도 0, 1, 2, 3, 4 중 하나의 값이 된다.For example, the quantization weight matrix stored in the quantization weight
한편, 노이즈가 많은 영상, 즉 노이즈 분산값이 큰 영상에서 분산값이 작은 블록들의 경우 이 매우 커지게 된다. 이 매우 큰 값을 갖는 경우, 수학식 7 및 8로부터 알 수 있는 바와 같이, 대부분의 F(k,l)이 0에 가까운 수가 되어 블록화 현상이 심화되는 경향이 있다. 따라서, 이런 현상을 막아주기 위해 아래 수학식 11에서와 같이 TCutoff를 사용한다.Meanwhile, in the case of blocks having a small variance value in an image having a high noise, that is, a large noise variance value, This becomes very large. In the case of having this very large value, as can be seen from equations (7) and (8), most of F (k, l) becomes a number close to zero, and the blocking phenomenon tends to be intensified. Therefore, T Cutoff is used as shown in Equation 11 to prevent this phenomenon.
통상적으로, TCutoff는 1 ∼ 2 정도의 값을 사용한다.Usually, T Cutoff uses the value of about 1-2.
양자화 가중치 행렬 저장부(694)는 양자화 가중치 행렬 결정부(692)로부터 입력된 인덱스 정보를 사용하여, 해당 양자화 가중치 행렬을 양자화부(620) 및 역양자화부(630)로 전송한다.The quantization weight
양자화부(620)는 입력된 해당 양자화 가중치 행렬을 사용하여 해당 매크로블록에 대해 양자화를 수행한다. The
역양자화부(630)도 또한 입력된 해당 양자화 가중치 행렬을 사용하여 해당 매크로블록에 대해 역양자화를 수행한다.The
가변 길이 부호화부(670)는 양자화부(620)에서 양자화된 입력 영상 데이터를 가변 길이 부호화하고, 또한 양자화 가중치 행렬 결정부(692)로부터 입력된 해당 매크로블록에 대응하는 양자화 가중치 행렬의 인덱스 정보를 매크로블록 헤더(macroblock header)에 삽입한다. The
본 실시예에서는 해당 양자화 가중치 행렬의 인덱스를 매크로블록 헤더에 삽입하여 전송한다. 이 경우, 양자화 가중치 행렬 저장부(694)에 저장되는 행렬의 수가 10개 인 경우, 매크로블록 당 4 비트의 추가 정보량이 필요하다.In this embodiment, the index of the quantization weight matrix is inserted into the macroblock header and transmitted. In this case, when the number of matrices stored in the quantization weight
인접 매크로블록들은 입력 영상의 특성이 유사하여, 인덱스 값들이 연관성이 있다. 따라서, 이를 이용하여 선택적으로 현재 인덱스과 인접 매크로블록의 인덱 스를 뺀 차이 값을 인덱스 정보로 사용하는 것도 가능하다. 전체 시퀀스에 대해 동일한 양자화 가중치 행렬을 사용하는 경우, 전송되는 인덱스 정보의 양을 상당히 감소시키는 것이 가능하다.Adjacent macroblocks have similar characteristics of the input image, so that index values are related. Therefore, it is also possible to selectively use the difference value obtained by subtracting the index of the current index and the neighboring macroblock as index information. When using the same quantization weight matrix for the entire sequence, it is possible to significantly reduce the amount of index information transmitted.
본 실시예에서는 양자화 가중치 행렬 저장부(694)에 저장된 복수개의 양자화 가중치 행렬 정보는 복호화부에도 저장되어 있는 것으로 가정하였다. 하지만, 선택적으로 픽쳐 확장 헤더(picture extension header)를 통해 픽쳐 단위로 복수개의 양자화 가중치 행렬 정보를 복호화부로 전송하거나, 또는 시퀀스 확장 헤더(sequence extension header)를 통해 시퀀스 단위로 복수개의 양자화 가중치 행렬 정보를 복호화부로 전송하여, 픽쳐 단위 또는 시퀀스 단위로 전송된 양자화 가중치 행렬을 사용하는 것도 가능하다.In the present embodiment, it is assumed that a plurality of quantization weight matrix information stored in the quantization weight
이와 같이, 입력 영상의 특성 중 입력 영상에 포함된 노이즈 정도를 고려하여 양자화 행렬을 매크로블록 단위로 적응적으로 적용함으로써, 노이즈를 제거함과 동시에 부호화 효율을 향상시키는 것이 가능하다.As described above, by adaptively applying the quantization matrix in macroblock units in consideration of the degree of noise included in the input image among the characteristics of the input image, it is possible to remove the noise and improve the coding efficiency.
또한, 새로운 양자화 가중치 행렬들은 사용자가 임의로 정하는 것이 가능하다. 본 실시예에서는 입력 영상 블록의 Y 성분에 대한 DCT 영역에서의 노이즈 제거 방식을 도시하고 있지만, Y 성분 이외의 U 및 V 성분에 대해서도 동일한 장치를 적용하는 것도 가능하다. 이때, U 및 V 성분을 위한 별도의 가중치 매트릭스가 필요하다.In addition, the new quantization weight matrices can be arbitrarily determined by the user. Although the present embodiment shows a noise canceling method in the DCT region with respect to the Y component of the input image block, the same apparatus can be applied to the U and V components other than the Y component. At this time, separate weight matrices for the U and V components are needed.
도 7은 본 발명에 따른 입력 영상의 특성을 고려한 동영상 부호화기의 또 다른 실시예를 도시하는 도면이다.7 is a diagram illustrating another embodiment of a video encoder in consideration of characteristics of an input video according to the present invention.
본 실시예에서 고려되는 입력 영상의 특성은 입력되는 영상의 각각의 매크로블록에서의 에지 특성이다.The characteristic of the input image considered in this embodiment is the edge characteristic in each macroblock of the input image.
본 실시예에 따른 동영상 부호기는 도 1의 일반적인 동영상 부호기에, 양자화 행렬 결정부(780) 및 양자화 행렬 저장부(790)를 더 포함한다. DCT부(710), IDCT부(740), 프레임 메모리부(750), 움직임 예측 및 보상부(760), 가변 길이 부호화부(770)는 도 1의 일반적인 동영상 부호화기와 동일한 기능을 수행하므로, 설명의 간단을 위해 상세한 설명은 생략한다.The video encoder according to the present embodiment further includes a
양자화 행렬 결정부(780)는 입력 영상의 특성에 기초하여 매크로블록 단위로 최적의 양자화 행렬을 선택하고, 선택된 양자화 행렬에 대응하는 인덱스 정보를 양자화 행렬 저장부(790) 및 가변 길이 부호화부(770)로 전송한다.The
본 실시예에서는 양자화 행렬 결정부(780)는 소정의 개수의 양자화 행렬들 중 하나를 선택하는 기준으로 매크로블록의 에지 특성을 고려한다.In the present embodiment, the
이하에서는, 매크로블록의 에지 특성에 기초하여 양자화 행렬을 선택하는 방식을 상세히 설명한다.Hereinafter, a method of selecting a quantization matrix based on the edge characteristics of the macroblock will be described in detail.
우선, 입력 영상의 해당 매크로블록이 인트라 블록인 경우, 소벨 오퍼레이터(sobel operator)와 같은 기존의 알려진 에지 검출기(edge detector)를 사용하여, 매크로블록 내의 화소 당 에지 크기를 계산하고, 블록내 에지의 방향도 함께 계산한다. 소벨 오퍼레이터는 아래 수학식 12와 같다.First, if the corresponding macroblock of the input image is an intra block, an existing known edge detector such as a sobel operator is used to calculate the edge size per pixel in the macroblock, and the The direction is also calculated. The Sobel operator is shown in Equation 12 below.
양자화 행렬 결정부(780)에서는 수학식 12를 이용하여 수직 방향 에지 크기 및 수평 방향 에지 크기를 계산하고, 이를 이용하여 에지의 세기 및 매크로블록에서의 에지의 방향을 계산한다. 계산된 해당 매크로블록의 에지의 세기 및 방향에 기초하여 소정의 개수의 양자화 행렬들 중 부호화 효율을 고려하여 하나를 선택한다. 즉, 세로 방향 에지가 있는 매크로블록이나, 또는 가로 방향 에지가 있는 매크로블록에 대해서는 이러한 에지를 살리면서 양자화를 수행할 수 있는 양자화 행렬을 선택한다.The
한편, 인터 블록의 경우에도 동일하게 소벨과 같은 에지 검출기를 이용하여 에지 크기 및 방향을 구하는 것이 가능하다.On the other hand, in the case of the inter block, it is also possible to obtain the edge size and direction using an edge detector such as Sobel.
본 실시예에서는 해당 매크로블록의 에지 특성, 즉 에지의 세기 및 방향성을 계산하기 위해 소벨 검출기를 사용하였지만, 선택적으로 차분 필터(difference filter), 로버츠 필터(roberts filter)와 같은 다른 임의의 공간 필터를 사용하는 것도 가능하다.In this embodiment, the Sobel detector is used to calculate the edge characteristics of the macroblock, that is, the strength and directionality of the edges. However, other arbitrary spatial filters such as a difference filter and a Roberts filter may be selectively used. It is also possible to use.
또한, 본 실시예에서는 입력 영상의 특성으로서 해당 매크로블록의 에지의 세기 및 방향을 고려하여, 양자화 행렬을 선택한다. 하지만, 선택적으로 부호화 효율 측면이나, 화질 개선 측면에서 입력 영상의 또 다른 특성들을 고려하여 소정의 양자화 행렬들을 매크로블록 단위로 적응적으로 선택하는 것도 가능하다.In the present embodiment, the quantization matrix is selected in consideration of the strength and the direction of the edge of the macroblock as characteristics of the input image. However, it is also possible to selectively select predetermined quantization matrices in macroblock units in consideration of other characteristics of the input image in terms of encoding efficiency or quality improvement.
양자화 행렬 저장부(790)는 양자화 행렬 결정부(780)로부터 입력된 양자화 행렬 인덱스 정보에 기초하여, 해당 양자화 행렬을 선택하여 양자화부(720) 및 역양자화부(730)로 전송한다.The quantization
양자화부(720)는 입력된 해당 양자화 행렬을 사용하여 양자화를 수행한다. The
역양자화부(730)도 또한 입력된 해당 양자화 행렬을 사용하여 역양자화를 수행한다.The
가변 길이 부호화부(770)는 양자화부(720)에서 양자화된 입력 영상 데이터를 가변 길이 부호화하고, 또한 양자화 가중치 행렬 결정부(780)로부터 입력된 해당 매크로블록에 대응하는 양자화 행렬의 인덱스를 가변 길이 부호화한다. 이때, 인덱스 정보는 매크로블록 헤더에 삽입된다. The
본 실시예에서는 해당 양자화 가중치 행렬의 인덱스를 매크로블록 헤더에 삽입하여 전송한다. 하지만, 선택적으로 현재 인덱스과 인접 매크로블록의 인덱스를 뺀 차이 값을 인덱스 정보로 사용하는 것도 가능하다. In this embodiment, the index of the quantization weight matrix is inserted into the macroblock header and transmitted. However, it is also possible to selectively use the difference value obtained by subtracting the index of the current index and the adjacent macroblock as index information.
본 실시예에서는 양자화 행렬 저장부(790)에 저장된 복수개의 양자화 가중치 행렬 정보는 복호화부에도 저장되어 있는 것으로 가정하였다. 하지만, 선택적으로 픽쳐 확장 헤더를 통해 픽쳐 단위로 복수개의 양자화 가중치 행렬 정보를 복호화부로 전송하거나, 또는 시퀀스 확장 헤더를 통해 시퀀스 단위로 복수개의 양자화 가중치 행렬 정보를 복호화부로 전송하여, 이를 사용하는 것도 가능하다.In the present embodiment, it is assumed that a plurality of quantization weight matrix information stored in the
도 8은 본 발명의 일 실시예에 따른 동영상 복호화기를 도시하는 도면이다.8 is a diagram illustrating a video decoder according to an embodiment of the present invention.
본 발명에 따른 동영상 복호기는 도 1의 일반적인 동영상 복호기(140)에 양 자화 가중치 행렬 저장부(860)를 더 포함한다.The video decoder according to the present invention further includes a quantization weight
IDCT부(830), 프레임 메모리(840), 및 움직임 보상부(850)는 도 1에서의 일반적인 동영상 복호화기와 동일한 기능을 수행하므로, 설명의 간단을 위해 상세한 설명은 생략한다.Since the
가변 길이 복호화부(variable length decoding unit: VLD)(810)는 입력 스트림을 가변 길이 복호화하고, 입력 스트림의 매크로블록 블록 헤더로부터 해당 매크로블록에 대응하는 양자화 가중치 행렬의 인덱스 정보를 추출하고, 추출된 인덱스 정보를 양자화 가중치 행렬 저장부(860)로 출력한다. The variable length decoding unit (VLD) 810 variable length decodes the input stream, extracts index information of the quantization weight matrix corresponding to the macroblock from the macroblock block header of the input stream, and extracts the index information. The index information is output to the quantization weight
양자화 가중치 행렬 저장부(860)는 입력된 인덱스 정보에 기초하여, 해당 인덱스에 대응하는 양자화 가중치 행렬을 역양자화부(820)로 출력한다. 여기에서, 양자화 가중치 행렬 저장부(860)에는 부호화부에서 처리된 입력 영상의 특성, 예를 들어 노이즈 분산값과 입력 영상 분산값 사이의 비와 같은 노이즈 정도, 입력 영상의 에지 정도와 같은 공간적 특성에 따라 분류된 복수개의 가중치 행렬이 저장되어 있다.The quantization weight
선택적으로, 양자화 가중치 행렬 저장부(860)에 저장되는 복수개의 양자화 가중치 행렬 정보는 픽쳐 확장 헤더를 통해 픽쳐 단위로 전송되거나, 또는 시퀀스 확장 헤더를 통해 시퀀스 단위로 전송되는 것도 가능하다. 이때, 전송된 복수개의 양자화 가중치 행렬 정보는 도 8에서 점선으로 표시된 바와 같이 가변 길이 부호화부(810)로부터 양자화 가중치 행렬 저장부(860)로 입력된다.Optionally, the plurality of quantization weight matrix information stored in the quantization weight
본 발명은 상술한 실시예에 한정되지 않으며, 본 발명의 사상내에서 당업자 에 의한 변형이 가능함은 물론이다. 특히, 본 발명은 MPEG-1, MPEG-2, MPEG 4 등과 같은 모든 동영상 부호화 및 복호화 방법과 그 장치에 적용될 수 있다.The present invention is not limited to the above-described embodiment, and of course, modifications may be made by those skilled in the art within the spirit of the present invention. In particular, the present invention can be applied to all video encoding and decoding methods and apparatuses such as MPEG-1, MPEG-2, MPEG 4, and the like.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 하드디스크, 플로피디스크, 플래쉬 메모리, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브 (예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로서 저장되고 실행될 수 있다.The invention can also be embodied as computer readable code on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, hard disk, floppy disk, flash memory, optical data storage, and also carrier wave (for example, transmission over the Internet). It also includes the implementation in the form of. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
상술한 바와 같이 본 발명에 따른 동영상 부호화 및 복호화 방법에서는, 입력 영상의 특성에 기초하여 매크로블록 단위로 양자화 행렬을 적응적으로 적용함으로써, 부호화 효율 및 성능을 개선하는 것이 가능하다는 효과가 있다.As described above, in the video encoding and decoding method according to the present invention, it is possible to improve coding efficiency and performance by adaptively applying a quantization matrix on a macroblock basis based on characteristics of an input image.
Claims (6)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050090688A KR100622306B1 (en) | 2005-09-28 | 2005-09-28 | Method for decoding video and apparatus thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050090688A KR100622306B1 (en) | 2005-09-28 | 2005-09-28 | Method for decoding video and apparatus thereof |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20030002371A Division KR100584552B1 (en) | 2003-01-14 | 2003-01-14 | Method for encoding and decoding video and apparatus thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050098216A KR20050098216A (en) | 2005-10-11 |
KR100622306B1 true KR100622306B1 (en) | 2006-09-14 |
Family
ID=37277774
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050090688A KR100622306B1 (en) | 2005-09-28 | 2005-09-28 | Method for decoding video and apparatus thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100622306B1 (en) |
-
2005
- 2005-09-28 KR KR1020050090688A patent/KR100622306B1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR20050098216A (en) | 2005-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100584552B1 (en) | Method for encoding and decoding video and apparatus thereof | |
KR20040058929A (en) | Advanced method for encoding video based on DCT and apparatus thereof | |
KR100708118B1 (en) | Apparatus for encoding and decoding video based on a plurality of modified multiplication factor table and method thereof, and recording medium storing a program for implementing the method | |
KR100708206B1 (en) | Method for decoding video and apparatus thereof | |
KR100622305B1 (en) | Method for decoding video and apparatus thereof | |
KR100694166B1 (en) | Method for encoding video and apparatus thereof | |
KR100677616B1 (en) | Method for encoding and decoding video and apparatus thereof | |
KR100677615B1 (en) | Method for encoding and decoding video and apparatus thereof | |
KR100622306B1 (en) | Method for decoding video and apparatus thereof | |
KR100584622B1 (en) | Method for encoding and decoding video and apparatus thereof | |
KR100622304B1 (en) | Method for decoding video and apparatus thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120830 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20130829 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20140828 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20150828 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20160830 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20170830 Year of fee payment: 12 |
|
FPAY | Annual fee payment |
Payment date: 20180830 Year of fee payment: 13 |
|
FPAY | Annual fee payment |
Payment date: 20190829 Year of fee payment: 14 |