KR101768865B1 - Video Coding Method and Apparatus Using Weighted Prediction - Google Patents
Video Coding Method and Apparatus Using Weighted Prediction Download PDFInfo
- Publication number
- KR101768865B1 KR101768865B1 KR1020140075228A KR20140075228A KR101768865B1 KR 101768865 B1 KR101768865 B1 KR 101768865B1 KR 1020140075228 A KR1020140075228 A KR 1020140075228A KR 20140075228 A KR20140075228 A KR 20140075228A KR 101768865 B1 KR101768865 B1 KR 101768865B1
- Authority
- KR
- South Korea
- Prior art keywords
- prediction
- block
- unit
- image
- weight
- 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- 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/174—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 slice, e.g. a line of blocks or a group of 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
Abstract
본 발명의 일 실시예에 따르면, 현재 블록에 대한 제1 예측블록을 생성하고 상기 현재블록이 포함된 블록집합을 소정의 변환단위로 변환하여 제1 변환영상을 생성하고 상기 블록집합에 대한 예측블록들로 구성된 움직임보상 예측영상을 상기 소정의 변환단위로 변환하여 제2 변환영상을 생성하고 제1 변환영상 및 제2 변환영상 내의 동일 위치의 상기 소정의 변환단위별로 상기 제1 변환영상의 화소값과 상기 제2 변환영상의 화소값 사이의 관계에 기반하여 가중치예측 파라미터를 산출하고 상기 제2 변환영상에 상기 소정의 변환단위로 상기 가중치예측 파라미터를 적용하여 가중치적용 변환영상을 생성하고 상기 가중치적용 변환영상을 역변환하여 가중치적용 예측영상을 생성하고 상기 현재 블록에서 상기 가중치적용 예측영상 내의 예측블록을 감산하여 잔차 블록을 생성하여 상기 현재블록을 비트스트림으로 부호화하는 영상 부호화 장치 및 방법과 이로부터 발생한 비트스트림을 복호화하는 영상 복호화장치 및 그 방법을 제공한다.According to an embodiment of the present invention, a first predictive block for a current block is generated, a block set including the current block is transformed into a predetermined transform unit to generate a first transformed image, To generate a second transformed image by transforming the motion-compensated predicted image into a predetermined transform unit and outputting the pixel value of the first transformed image in the predetermined transform unit at the same position in the first transformed image and the second transformed image A weighted transformation image is generated by calculating a weighted prediction parameter based on a relationship between a pixel value of the first transformed image and a pixel value of the second transformed image, applying the weighted prediction parameter to the second transformed image in the predetermined transform unit, A weighted prediction image is generated by inversely transforming the transformed image, and a prediction block in the weighted prediction image is subtracted from the current block And generating a residual block to encode the current block into a bitstream, and a video decoding apparatus and method for decoding a bitstream generated from the video encoding apparatus and method.
Description
본 발명은 가중치예측을 이용한 영상 부호화/복호화 방법 및 장치에 관한 것이다. 상세하게는, B 픽처의 부호화, P 픽처의 부호화, 인터 예측 부호화 등에 있어서, 가중치 예측을 함으로써 현재 부호화할 블록 또는 현재 픽처의 움직임 보상을 정밀하게 부호화하고, 비트스트림으로부터 추출한 가중치 예측 파라미터 정보에 기초하여 현재 복호화할 블록 또는 픽처의 움직임 보상을 수행하여 복원함으로써 현재 블록 또는 픽처에 대한 복원 효율을 높일 수 있는 가중치예측을 이용한 영상 부호화/복호화 방법 및 장치에 관한 것이다.The present invention relates to an image encoding / decoding method and apparatus using weight prediction. More specifically, in the coding of a B-picture, the coding of a P-picture, and the inter-prediction coding, the motion compensation of the block to be coded or the current picture is precisely encoded by weighting prediction and based on the weighted prediction parameter information extracted from the bitstream Decoding of a block or a picture to be decoded by performing motion compensation on the current block or a picture, thereby improving the reconstruction efficiency of the current block or the picture.
이 부분에 기술된 내용은 단순히 본 발명의 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.The contents described in this section merely provide background information on the embodiment of the present invention and do not constitute the prior art.
MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)는 기존의 MPEG-4 Part 2와 H.263 표준안보다 더욱 우수하고 뛰어난 비디오 압축 기술을 개발하였다. 이 새로운 표준안은 H.264/AVC(Advanced Video Coding)라고 하며, MPEG-4 Part 10 AVC와 ITU-T Recommendation H.264로 공동 발표되었다.The Moving Picture Experts Group (MPEG) and the Video Coding Experts Group (VCEG) have developed superior video compression techniques that are superior to the existing MPEG-4
이와 같은 영상 압축 방식에서는 영상을 부호화하기 위해서 하나의 픽처(picture)를 소정의 영상 처리 단위 예를 들어, 소정 크기의 블록으로 나누고 인터 예측(inter prediction) 또는 인트라 예측(intra prediction)을 이용해서 각각의 블록을 부호화한다. 이때, 데이터 크기 및 블록의 왜곡 정도를 고려하여 최적의 부호화 모드를 선택하고, 선택된 모드에 따라 블록을 부호화한다.In such an image compression method, a picture is divided into predetermined image processing units, for example, blocks of a predetermined size in order to encode an image, and each of the blocks is subjected to inter prediction or intra prediction, As shown in FIG. At this time, the optimal encoding mode is selected in consideration of the data size and the degree of distortion of the block, and the block is encoded according to the selected mode.
인터 예측은 픽처들 사이의 시간적인 중복성을 제거하여 영상을 압축하는 방법으로 움직임 추정 부호화와 방법이 대표적인 예이다. 움직임 추정 부호화는 적어도 하나의 참조 픽처를 이용하여 현재 픽처의 움직임을 블록 단위로 추정하고, 움직임 추정 결과에 기초하여 각각의 블록을 예측한다.Inter prediction is a method of compressing an image by eliminating temporal redundancy between pictures, and a typical example is a motion estimation encoding method and a method. The motion estimation coding estimates the motion of the current picture on a block-by-block basis using at least one reference picture, and predicts each block based on the motion estimation result.
현재 블록의 예측을 위해 움직임 추정 부호화에서는 소정의 평가 함수를 이용하여 현재 블록과 가장 유사한 블록을 참조 픽처의 정해진 검색 범위에서 검색한다. 유사한 블록을 검색하여 움직임 벡터(Motion Vector)를 생성하고, 생성된 움직임 벡터를 이용한 움직임 보상을 수행하여 얻어진 예측 블록과 현재 블록 사이의 잔차(residual) 데이터만 DCT(Discrete Cosine Transform)변환하고, 양자화한 값과 움직임 정보를 엔트로피 부호화하여 전송함으로써 데이터의 압축률을 높인다.In motion estimation coding for prediction of a current block, a block most similar to the current block is searched in a predetermined search range of a reference picture using a predetermined evaluation function. (Motion Vector) is searched for similar blocks to perform DCT (Discrete Cosine Transform) conversion of residual data between a current block and a prediction block obtained by performing motion compensation using the generated motion vector, and quantization The entropy encoding and transmission of one value and motion information increases the compression rate of the data.
움직임 추정 및 움직임 보상은 예측 부호화 단위로 수행되며, 움직임 정보도 예측 부호화 단위로 전송된다.Motion estimation and motion compensation are performed in units of predictive encoding, and motion information is also transmitted in units of predictive encoding.
인터 예측은 움직임 추정을 통해 생성되는 현재 예측 부호화 블록의 움직임 벡터를 이용한 움직임 보상이 정확하게 보상되지 않는 경우에는 예측 블록과 현재 블록의 잔차 데이터의 부호화 비트가 커지게 되어 부호화 효율이 감소된다. 따라서, 보다 정확한 움직임 추정과 움직임 보상을 통해 예측 블록을 정확하게 생성하여 잔차 데이터를 작게 만들 수 있는 움직임 추정 방법과 움직임 보상 방법이 요구된다.In the inter prediction, when the motion compensation using the motion vector of the current predictive coding block generated through the motion estimation is not compensated correctly, the coding bits of the residual data of the prediction block and the current block become large, and the coding efficiency is reduced. Therefore, there is a need for a motion estimation method and a motion compensation method capable of accurately generating a prediction block through more accurate motion estimation and motion compensation to reduce residual data.
또한, 종래의 움직임 추정 및 움직임 보상을 이용하여 영상을 압축할 때 영상의 밝기를 예측하지 못하여 페이드 인(fade in) 또는 페이드 아웃(fade out)과 같이 밝기가 시간적으로 변화하는 영상을 부호화하는 경우 압축 효율이 감소하고 영상의 화질이 열화되는 단점이 있다.Also, in the case of encoding an image whose brightness changes temporally, such as fade in or fade out, because the brightness of the image can not be predicted when compressing the image using conventional motion estimation and motion compensation, There is a disadvantage in that the compression efficiency is reduced and the image quality of the image deteriorates.
전술한 문제점을 해결하기 위해 본 발명의 실시예는, B 픽처의 부호화, P 픽처의 부호화, 인터 예측 부호화 등에 있어서, 가중치 예측을 함으로써 현재 부호화할 블록 또는 현재 픽처의 움직임 보상을 정밀하게 부호화하고, 비트스트림으로부터 추출한 가중치 예측 파라미터 정보에 기초하여 현재 복호화할 블록 또는 픽처의 움직임 보상을 수행하여 복원함으로써 현재 블록 또는 픽처에 대한 복원 효율을 향상시키는 데 주된 목적이 있다.In order to solve the above-described problems, an embodiment of the present invention precisely encodes motion compensation of a current block or a current picture by performing weight prediction in coding of a B-picture, coding of a P-picture, inter- There is a main purpose of improving the restoration efficiency of a current block or a picture by performing motion compensation of a current block or a picture to be decoded based on the weighted prediction parameter information extracted from the bitstream.
본 발명의 일 측면에 따르면, 인터 예측을 이용한 영상 부호화 방법에 있어서, 최대 부호화 단위(coding unit)를 쿼드트리 구조로 분할함으로써, 부호화할 부호화 단위를 결정하는 단계; 상기 부호화 단위부터 분할되는 하나 이상의 예측 단위(prediction unit)들에 대한 움직임 정보를 결정하는 단계; 상기 움직임 정보를 이용하여 각 예측 단위에 해당하는 블록을 예측하여 상기 부호화 단위에 대한 예측 블록을 생성하는 단계; 및 상기 부호화 단위에 해당하는 블록으로부터 상기 예측 블록을 감산하여 잔차 블록을 생성하는 단계를 포함하는 영상 부호화 방법을 제공한다.According to an aspect of the present invention, there is provided a method of encoding an image using inter prediction, the method comprising: determining a coding unit to be coded by dividing a maximum coding unit into a quad tree structure; Determining motion information for one or more prediction units to be divided from the encoding unit; Generating a prediction block for the coding unit by predicting a block corresponding to each prediction unit using the motion information; And generating a residual block by subtracting the prediction block from a block corresponding to the coding unit.
본 발명의 일 측면에서, 각 상기 각 예측 단위에 해당하는 블록을 예측하는 것은, 상기 움직임 정보를 이용하여 어느 한 예측 단위에 해당하는 제1 예측블록을 생성하는 단계; 상기 제1 예측블록에 적용할 가중치 예측 파라미터(weighted prediction parameter)를 결정하는 단계; 및 상기 제1 예측블록에 상기 가중치 예측 파라미터를 적용하여 제2 예측블록을 생성하는 단계를 포함할 수 있다. 또한, 가중치 예측을 적용할지 여부를 결정하는 단계를 더 포함하고, 그 결정에 근거하여 상기 가중치 예측 파라미터를 결정하는 단계 및 상기 제2 예측블록의 생성하는 단계를 선택적으로 수행할 수도 있다. 상기 가중치 예측을 적용할지 여부는 픽처 단위로 결정될 수 있다. 또한, 가중치 예측 파라미터는 슬라이스(slice) 단위로 결정될 수 있다. 가중치 예측 파라미터는 상기 제1 예측블록을 구성하는 예측픽셀들에 곱해지는 스케일 인자(scale factor)에 대한 정보와 상기 스케일 인자가 곱해진 예측픽셀들에 더해질 오프셋 인자(offset factor)에 대한 정보를 포함한다.In one aspect of the present invention, predicting a block corresponding to each of the prediction units includes: generating a first prediction block corresponding to a prediction unit using the motion information; Determining a weighted prediction parameter to be applied to the first prediction block; And generating a second prediction block by applying the weight prediction parameter to the first prediction block. The method may further include determining whether or not to apply the weight prediction, and may selectively perform the step of determining the weight prediction parameter based on the determination and the step of generating the second prediction block. Whether or not to apply the weight prediction can be determined on a picture-by-picture basis. In addition, the weight prediction parameter may be determined on a slice basis. The weight prediction parameter includes information on a scale factor multiplied by the prediction pixels constituting the first prediction block and information on an offset factor to be added to the prediction pixels multiplied by the scale factor do.
본 발명의 일 측면에서, 상기 부호화 단위의 크기는 상기 최대 부호화 단위의 크기 및 최소 부호화 단위의 크기 사이에서 가변적으로 결정될 수 있다. In one aspect of the present invention, the size of the encoding unit may be variably determined between the size of the maximum encoding unit and the size of the minimum encoding unit.
상기 부호화 단위가 상기 하나 이상의 예측 단위들로 분할되는 타입은, 상기 부호화 단위가 1:3의 크기 비율을 갖는 두 개의 직사각형 블록으로 분할되는 타입을 포함한다.The type in which the coding unit is divided into the one or more prediction units includes a type in which the coding unit is divided into two rectangular blocks having a size ratio of 1: 3.
본 발명의 일 측면에서, 상기 잔차 블록을 복원하는 단계는, 상기 부호화 단위로부터 쿼드트리 구조로 분할되는 하나 이상의 변환 단위(transform unit)를 식별하는 단계; 각 변환 단위에 해당하는 변환 블록을 변환 및 양자화하는 단계; 및 변환 및 양자화된 변환블록들로부터 상기 부호화 단위에 대한 잔차 블록을 구성하는 단계를 포함할 수 있다. 여기서, 각 변환 단위의 크기는 상기 부호화 단위 내에서 각 변환 단위마다 가변적으로 결정될 수 있다.In one aspect of the present invention, the step of reconstructing the residual block includes the steps of: identifying one or more transform units to be divided into the quad-tree structure from the coding unit; Transforming and quantizing a transform block corresponding to each transform unit; And constructing a residual block for the encoding unit from the transformed and quantized transformed blocks. Here, the size of each conversion unit may be variably determined for each conversion unit in the encoding unit.
본 발명의 또 다른 측면에서, 인터 예측을 이용한 영상 복호화 방법에 있어서, 최대 부호화 단위(coding unit)로부터 쿼드트리 구조로 분할된 부호화 단위를 결정하는 단계; 상기 부호화 단위부터 분할되는 하나 이상의 예측 단위(prediction unit)들에 대한 움직임 정보를 비트스트림으로부터 복호화하는 단계; 상기 움직임 정보를 이용하여 각 예측 단위에 해당하는 블록을 예측하여 상기 부호화 단위에 대한 예측 블록을 생성하는 단계; 상기 비트스트림으로부터 잔차 블록을 복원하는 단계; 및 상기 예측 블록과 상기 잔차 블록을 가산하여 상기 부호화 단위에 해당하는 블록을 복원하는 단계를 포함하는 영상 복호화 방법을 제공한다.In another aspect of the present invention, there is provided a method of decoding an image using inter prediction, the method comprising: determining a coding unit divided from a maximum coding unit into a quad tree structure; Decoding motion information on one or more prediction units divided from the coding unit from a bitstream; Generating a prediction block for the coding unit by predicting a block corresponding to each prediction unit using the motion information; Reconstructing a residual block from the bitstream; And adding the prediction block and the residual block to reconstruct a block corresponding to the coding unit.
본 발명의 또 다른 측면에서, 상기 각 예측 단위에 해당하는 블록을 예측하는 것은, 상기 움직임 정보를 이용하여 어느 한 예측 단위에 해당하는 제1 예측블록을 생성하는 단계; 상기 비트스트림으로부터 상기 제1 예측블록에 적용할 가중치 예측 파라미터(weighted prediction parameter)를 복호화하는 단계; 및 상기 제1 예측블록에 상기 가중치 예측 파라미터를 적용하여 제2 예측블록을 생성하는 단계를 포함할 수 있다. 또한, 상기 가중치 예측 파라미터의 복호화 및 상기 제2 예측블록의 생성은, 상기 비트스트림으로부터 복호화되는 가중치 예측 플래그(weighted prediction flag)의 값에 따라 선택적으로 수행될 수 있으며, 가중치 예측 플래그는 픽처 단위로 비트스트림에 포함될 수 있다. 또한, 상기 가중치 예측 파라미터는 슬라이스(slice) 단위로 비트스트림에 포함될 수 있다. 상기 가중치 예측 파라미터는 상기 제1 예측블록을 구성하는 예측픽셀들에 곱해지는 스케일 인자(scale factor)에 대한 정보와 상기 스케일 인자가 곱해진 예측픽셀들에 더해질 오프셋 인자(offset factor)에 대한 정보를 포함한다.In another aspect of the present invention, the prediction of the block corresponding to each prediction unit may include generating a first prediction block corresponding to a prediction unit using the motion information; Decoding a weighted prediction parameter to be applied to the first prediction block from the bitstream; And generating a second prediction block by applying the weight prediction parameter to the first prediction block. The decoding of the weight prediction parameter and the generation of the second prediction block may be selectively performed according to the value of a weighted prediction flag decoded from the bit stream, May be included in the bitstream. In addition, the weight prediction parameter may be included in the bitstream in units of slices. Wherein the weight prediction parameter includes information on a scale factor multiplied by the prediction pixels constituting the first prediction block and information on an offset factor to be added to the prediction pixels multiplied by the scale factor .
본 발명의 또 다른 측면에서, 상기 부호화 단위의 크기는 상기 최대 부호화 단위의 크기 및 최소 부호화 단위의 크기 사이에서 가변적으로 결정될 수 있으며, 상기 부호화 단위가 상기 하나 이상의 예측 단위들로 분할되는 타입은 상기 부호화 단위가 1:3의 크기 비율을 갖는 두 개의 직사각형 블록으로 분할되는 타입을 포함할 수 있다.According to another aspect of the present invention, a size of the encoding unit may be variably determined between a size of the maximum encoding unit and a size of the minimum encoding unit, and a type in which the encoding unit is divided into the one or more prediction units, And a type in which an encoding unit is divided into two rectangular blocks having a size ratio of 1: 3.
본 발명의 또 다른 측면에서, 상기 잔차 블록을 복원하는 단계는, 상기 부호화 단위로부터 쿼드트리 구조로 분할되는 하나 이상의 변환 단위(transform unit)를 식별하는 단계; 각 변환 단위에 해당하는 변환 블록을 역영자화 및 역변환하는 단계; 및 역양자화 및 역변환된 변환블록들로부터 상기 부호화 단위에 대한 잔차 블록을 구성하는 단계를 포함할 수 있다. 여기서, 각 변환 단위의 크기는 상기 부호화 단위 내에서 각 변환 단위마다 가변적으로 결정될 수 있다.In another aspect of the present invention, the step of reconstructing the residual block includes the steps of: identifying one or more transform units to be divided into the quad-tree structure from the coding unit; Reversing and inverse transforming the transform block corresponding to each transform unit; And constructing a residual block for the encoding unit from the inversely quantized and inverse transformed transformed blocks. Here, the size of each conversion unit may be variably determined for each conversion unit in the encoding unit.
이상에서 설명한 바와 같이 본 발명에 의하면, B 픽처의 부호화, P 픽처의 부호화, 인터 예측 부호화 등에 있어서, 가중치 예측을 함으로써 현재 부호화할 블록 또는 현재 픽처의 움직임 보상을 정밀하게 부호화하고, 비트스트림으로부터 추출한 가중치 예측 파라미터 정보에 기초하여 현재 복호화할 블록 또는 픽처의 움직임 보상을 수행하여 복원함으로써 현재 블록 또는 픽처에 대한 복원 효율을 향상시킬 수 있다.As described above, according to the present invention, motion compensation of a block to be currently coded or a current picture is precisely encoded by predicting a weight in coding of a B-picture, coding of a P-picture, inter-prediction coding, The reconstruction efficiency for the current block or the picture can be improved by restoring motion compensation of the current block or picture to be decoded based on the weight prediction parameter information.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치를 간략하게 나타낸 블록 구성도이다.
도 2는 최대 부호화단위 블록의 분할 예시를 나타낸 도면이다.
도 3은 예측단위 블록의 예를 도시한 도면이다.
도 4는 가중치 예측 파라미터를 산출하고 적용하는 방법 중 하나를 간략하게 나타낸 순서도이다.
도 5는 참조 픽처 대신 움직임 보상 예측픽처(Motion Compensated Prediction Picture)를 이용하여 가중치 예측 파라미터를 산출하는 경우를 예시한 도면이다.
도 6은 변환을 이용한 가중치 예측 파라미터의 산출 예를 나타낸 도면이다.
도 7은 복수의 변환 방법 등을 이용하여 최적의 가중치 예측 플래그를 산출하기 위한 순서도이다.
도 8은 수학식 10에 의한 가중치 파라미터를 구하는 방법을 도식화한 도면이다.
도 9는 일정 간격의 주파수성분마다 주파수성분 가중치예측 파라미터가 발생되는 경우를 예시한 도면이다.
도 10은 본 발명의 일 실시예에 따른 영상 복호화 장치를 간략하게 나타낸 블록 구성도이다.1 is a block diagram schematically illustrating an image encoding apparatus according to an embodiment of the present invention.
2 is a diagram showing an example of division of a maximum encoding unit block.
3 is a diagram showing an example of a prediction unit block.
4 is a flowchart briefly showing one of methods for calculating and applying a weight prediction parameter.
5 is a diagram illustrating a case where a weighted prediction parameter is calculated using a motion compensated prediction picture (Motion Compensated Prediction Picture) instead of a reference picture.
6 is a diagram showing an example of calculation of a weighted prediction parameter using a transformation.
7 is a flowchart for calculating an optimum weight prediction flag using a plurality of conversion methods or the like.
FIG. 8 is a diagram illustrating a method of obtaining a weight parameter according to Equation (10).
9 is a diagram illustrating a case where a frequency component weight estimation parameter is generated for each frequency component at a predetermined interval.
FIG. 10 is a block diagram of a video decoding apparatus according to an embodiment of the present invention. Referring to FIG.
이하에서 후술할 영상 부호화 장치(Video Encoding Apparatus) 및 영상 복호화 장치(Video Decoding Apparatus)는 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 무선 단말기(Wireless Terminal), TV(Television), 휴대폰, 스마트폰(Samart Phone) 등일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 부호화하거나 복호화하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미한다.The Video Encoding Apparatus and the Video Decoding Apparatus to be described below may be implemented as a personal computer (PC), a notebook computer, a personal digital assistant (PDA), a portable multimedia player (PMP) Such as a portable multimedia player (PSP), a PlayStation Portable (PSP), a wireless terminal, a television (Television), a mobile phone, a smart phone (Samart Phone) A communication device such as a communication modem, a memory for storing various programs for coding or decoding an image and data, and a microprocessor for executing and controlling a program.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치를 간략하게 나타낸 블록 구성도이다.1 is a block diagram schematically illustrating an image encoding apparatus according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 영상 부호화 장치(100)는 영상을 부호화하는 장치로서, 영상부호화 장치(100)는 크게 블록분할부(101, Coding Tree Generator), 인트라예측부(102, Intra Predictor), 인터예측부(103, Inter Predictor), 변환부(104, Transformer), 양자화부(105, Quantizer), 엔트로피부호화부(107, Entropy Coder), 역양자화부(108, Inverse Quantizer), 역변환부(109, Inverse Tranformer), 메모리(110, Memory), 감산부(111, Subtractor), 가산부(112, Adder), 영상변환부(113), 가중치 산출부(114), 가중치 적용부(115) 및 영상역변환부(116)를 포함할 수 있다. 경우에 따라 파라미터 결정부(117)를 더 포함할 수도 있다.An image encoding
블록분할부(101)는 입력 영상을 부호화단위 블록으로 분할한다. 부호화단위 블록은 인트라예측/인터예측을 위해 분할되는 가장 기본적인 단위이고, 4개의 같은 크기(정사각형)의 블록으로 반복적으로 분할되는 구조이다. 예를 들어, 최대 부호화단위 블록은 64x64 크기로 정할 수 있고 최소 부호화단위 블록은 8x8 로 정할 수 있다. 도 2는 최대 부호화단위 블록의 분할 예시를 나타낸 도면이다. 각각의 부호화단위 블록은 예측 종류에 따라 도 3과 같이 1개 또는 그 이상의 예측단위 블록을 포함한다. 예측단위 블록은 예측 정보를 가지고 있는 가장 작은 단위이다. 보통 3-레벨 쿼드트리(Quadtree)를 이용하는데 그 이상의 레벨을 이용할 수도 있고, 일반적으로 루마(luma), 크로마(chroma)를 위한 최대 뎁스(depth)는 동일하다. 도 3에서, (201)은 부호화단위 블록이 그대로 예측단위 블록으로 사용되었을 경우를 나타낸다. (202), (203), (205), (206)은 동일한 크기의 예측단위 블록 2개를 포함하는 경우이며, (204)는 동일한 크기의 예측단위 블록 4개를 포함하는 경우이고, (207) 과 (208) 은 1:3 의 비율을 갖는 예측단위 블록 2개를 포함하는 경우이다. 도 3의 예시 이외에도 부호화단위 블록은 여러가지 모양으로 분할될 수 있다.The block dividing
본 발명의 예측부(106)는 인트라예측부(102) 및 인터예측부(103)를 포함할 수 있다.The
인트라예측부(102)는 현재 블록을 현재 픽쳐 내의 픽셀값을 이용하여 예측블록(Predicted Block)을 생성한다.The
인터예측부(103)는 현재 블록을 이전에 부호화되고 복호화된 픽쳐들의 정보를 이용하여 예측 블록을 생성한다. 예컨대, 스킵(Skip), 머지(Merge), 움직임 추정(Motion Estimation) 등의 방법에 따라 예측을 수행할 수 있다.The
예측부(106)에서는 다양한 방법의 예측 방법으로 예측을 수행하고 그 중에서 최적의 부호화 효율을 나타내는 방법으로 예측블록을 생성한다.The
이러한 인트라예측 및 인터예측 방법은 공지된 사항이므로 더 이상의 상세한 설명은 생략한다.The intra prediction and inter prediction methods are well known and will not be described in detail.
감산부(111)는 현재블록에서 예측부(106)에서 생성된 예측블록을 감산하여 잔차블록을 생성한다.The
변환부(104)는 잔차 블록을 변환하여 변환 블록을 생성한다. 변환 블록은 변환기와 양자화기 과정을 위해 사용되는 가장 작은 단위이다. 변환단위는 도 2처럼 부호화단위와 동일하게 분할될 수도 있으며, 다른 다양한 방법으로 분할하여 변환을 수행할 수도 있다. 변환부(104)는 잔차신호를 주파수 영역으로 변환하여 변환 계수를 가지는 변환 블록을 생성하여 출력한다. 여기서 잔차신호를 주파수 영역으로 변환하는 방법으로는 이산 코사인 변환(DCT: Discrete Cosine Transform)기반 변환, 이산 사인 변환(DST: Discreate Sine Transform), KLT(Karhunen Loeve Transform) 등, 다양한 변환 기법을 이용할 수 있으며, 이를 이용하여 잔차신호가 주파수 영역으로 변환되어 변환 계수로 변환된다. 변환 기법을 편하게 사용하기 위해 기저벡터(basis vector)를 이용하여 매트릭스(Matrix) 연산을 하게 되는데 예측 블록이 어떤 방식으로 부호화 되었느냐에 따라 매트릭스 연산시 변환기법들을 다양하게 섞어 사용할 수 있다. 예를 들어, 인트라예측시 예측모드에 따라 가로방향으로는 이산 코사인 변환을 사용하고 세로 방향으로는 이산 사인 변환을 사용할 수도 있다.The transforming
양자화부(105)는 변환 블록을 양자화하여 양자화된 변환 블록을 생성한다. 즉, 양자화부(105)는 변환부(104)로부터 출력되는 변환 블록의 변환 계수들을 양자화하여 양자화된 변환 계수를 가지는 양자화된 변환 블록(Quantized Transform Coefficient)를 생성하여 출력한다. 여기서, 양자화 방법으로는 데드존 균일 경계 양자화(DZUTQ: Dead Zone Uniform Threshold Quantization) 또는 양자화 가중치 메트릭스 (Quantization Weighted Matrix) 등이 이용될 수 있지만, 이를 개량한 양자화 등 다양한 양자화 방법이 이용될 수 있다.The
엔트로피부호화부(107)는 양자화된 변환 블록을 부호화 하여 비트스트림을 발생한다. 즉, 엔트로피부호화부(107)는 양자화부(105)로부터 출력되는 양자화된 변환 블록의 양자화된 변환계수를 지그재그 스캔 등 다양한 스캔 방식으로 스캔한 주파수 계수열을 엔트로피 부호화(Entropy Encoding) 등 다양한 부호화 기법을 이용하여 부호화하고, 후술하는 영상 복호화 장치에서 해당 블록을 복호화하는데 필요한 부가적인 정보들(예를 들면, 예측 모드에 대한 정보, 양자화 계수, 움직임 파라미터 등)을 포함하는 비트스트림을 생성한다.The
전술하였듯이, 위와 같은 과정을 거쳐 다양한 방법의 예측 방법으로 예측을 수행하고 부호화하여 그 중에서 최적의 부호화 효율을 나타내는 방법으로 예측블록을 생성한다. 이와 같이 생성된 예측 블록을 소정의 블록집합 단위로 모두 모아서 가중치예측 파라미터를 산출하고 이를 예측블록에 적용하여 가중치를 사용한 예측블록을 생성한다. 여기서 소정의 블록집합이란 하나의 블록, 예측의 단위 영역, 부호화 및 복호화의 단위인 매크로블록, 임의의 복수개의 블록의 집합, M×N 블록 단위, 슬라이스, 시퀀스, 픽처, GOP(Group of Picture) 등이 될 수 있으며, 본 실시예에서는 픽처단위로 가중치예측 파라미터를 산출하는 것을 예로 들어 설명한다. 가중치를 사용한 예측블록을 생성하는 과정은 이하에서 설명한다.As described above, prediction is performed by various methods of prediction through the above-described processes, and a prediction block is generated by a method indicating optimum coding efficiency among the predicted methods. The weighting prediction parameters are calculated by collecting the generated prediction blocks in a predetermined block set unit, and the weighting prediction parameters are applied to the prediction blocks to generate the weighted prediction blocks. Here, the predetermined block set includes a block, a predictive unit area, a macroblock which is a unit of coding and decoding, a set of arbitrary plural blocks, an MxN block unit, a slice, a sequence, a picture, a GOP (Group of Picture) And the like. In this embodiment, the calculation of the weight prediction parameter on a picture-by-picture basis will be described as an example. The process of generating the prediction block using the weight is described below.
가중치 예측 방법은 크게 명시적 모드(explicit mode)와 묵시적 모드(implicit mode)로 구분할 수 있다. 명시적 모드는 가중치 예측 파라미터(weighted prediction parameter)를 슬라이스 단위로 연산하여 각 슬라이스 마다 최적의 가중치 예측 파라미터를 산출하여 복호화기에 전송하는 방법이고, 묵시적 모드는 현재 블록의 예측에 이용되는 가중치를 별도로 산출하거나 부호화하지 않고 현재 영상와 참조 영상들 사이의 시간적 거리에 의해 부호화기와 복호화기가 약속된 동일한 방법을 통해 가중치를 계산하는 방법이다.The weight prediction method can be divided into an explicit mode and an implicit mode. In the explicit mode, a weighted prediction parameter is calculated for each slice to calculate an optimal weighted prediction parameter for each slice, and the weighted prediction parameter is transmitted to the decoder. In the implied mode, a weight used for prediction of the current block is separately calculated The weight is calculated through the same method in which the encoder and the decoder are promised by the temporal distance between the current image and the reference image without encoding.
인터예측부(103)에 포함된 움직임 보상기는 현재 예측 단위의 움직임 벡터를 이용하여 현재 예측 단위의 움직임 보상하여 움직임보상 예측 블록(Predicted Block)을 생성한다. 이때, 영상 부호화 장치는 참조 픽처에서 움직임 벡터를 이용하여 예측 블록을 생성할 수 있다. 하지만, 본 발명에서는 수학식 1의 가중치 예측을 이용하여 가중치 예측 블록(Weighted Predicted Block)을 생성한다.The motion compensator included in the
이때, P는 참조 픽처에서 움직임 벡터를 이용하여 생성한 예측 픽셀이고, w는 움직임보상 예측 블록과 가중치 예측 블록 사이의 비율관계를 나타내는 가중치 예측을 위한 스케일 인자(Scale Factor)이고, o는 가중치 예측을 위한 움직임보상 예측 블록과 가중치 예측 블록의 차이를 나타내는 오프셋 인자(Offset Factor)이고, P'는 가중치 예측 픽셀이다.P is a predictive pixel generated using a motion vector in a reference picture, w is a scale factor for weight prediction indicating a ratio relationship between a motion compensation prediction block and a weight prediction block, Is an offset factor indicating a difference between a motion compensation prediction block and a weight prediction block, and P 'is a weight prediction pixel.
여기서, 스케일 인자와 오프셋 인자는 가중치 예측 파라미터이다. 이 가중치 예측 파라미터는 임의의 단위로 결정되어 부호화 할 수 있다. 여기서 임의의 단위는 시퀀스, 픽처 및 슬라이스 등이 될 수 있다. 예를 들어, 슬라이스 단위로 최적의 가중치 예측 파라미터를 결정하고 명시적 모드인 경우, 슬라이스 헤더 또는 적응적 파라미터 헤더에 부호화 할 수 있다. 복호화기는 해당 헤더에서 추출한 가중치 예측 파라미터를 이용하여 가중치 예측 블록을 생성할 수 있다.Here, the scale factor and the offset factor are weight prediction parameters. This weight prediction parameter can be determined and encoded in an arbitrary unit. Here, the arbitrary unit may be a sequence, a picture, a slice, or the like. For example, an optimal weight prediction parameter may be determined in slice units, and in an explicit mode, it may be encoded in a slice header or an adaptive parameter header. The decoder may generate the weight prediction block using the weight prediction parameter extracted from the header.
또한, 수학식 1은 단방향 인터 예측을 한 경우이고, 양방향 예측을 하는 경우에는 수학식 2를 이용하여 가중치 예측 블록을 생성할 수 있다.In Equation (1), unidirectional inter prediction is performed, and in the case of bidirectional prediction, a weight prediction block can be generated using Equation (2).
이 때, P0는 List0의 참조 픽처에서 움직임 벡터를 이용하여 생성한 예측 픽셀이고, w0는 List0의 가중치 예측을 위한 스케일 인자(Scale Factor)이고, o0는 List0의 가중치 예측을 위한 오프셋 인자(Offset Factor)이고, P1은 List1의 참조 픽처에서 움직임 벡터를 이용하여 생성한 예측 픽셀이고, w1은 List1의 가중치 예측을 위한 스케일 인자(Scale Factor)이고, o1은 List1의 가중치 예측을 위한 오프셋 인자(Offset Factor)이고, P'는 가중치 예측 픽셀이다. 이러한 경우, 가중치 예측 파라미터는 List0와 List1이 각각의 최적의 가중치 예측 파라미터를 산출할 수 있으며, 명시적 모드인 경우에는 임의의 헤더에 부호화 할 수 있다.In this case, P 0 is a predictive pixel generated using a motion vector in a reference picture of List 0 , w 0 is a scale factor for predicting the weight of List 0 , o 0 is an offset factor for weight estimation of List 0 P 1 is a predictive pixel generated by using a motion vector in a reference picture of List 1 , w 1 is a scale factor for predicting the weight of List 1 , and o 1 is a weighting prediction of List 1 , And P 'is a weight prediction pixel. In this case,
또한, 수학식 3을 이용하여 양방향 예측을 위한 가중치 예측 블록을 생성할 수도 있다.Also, a weight prediction block for bidirectional prediction may be generated using Equation (3).
또한, 수학식 4를 이용하여 양방향 예측을 위한 가중치 예측 블록을 생성할 수도 있다.Further, a weight prediction block for bidirectional prediction may be generated using Equation (4).
이러한 경우, 가중치 예측 파라미터는 List0와 List1에서 생성한 예측 블록을 평균 낸 블록(이하, 평균 예측 블록)에 가중치 예측 파라미터를 적용하여 가중치 예측 블록을 생성할 수 있다. 이때, List0와 List1의 가중치 예측 파라미터가 각기 최적을 산출하거나 부호화하지 않고, 평균 예측 블록에 최적인 가중치 예측 파라미터를 산출하고 부호화한다.In this case, the weight prediction parameter may generate a weight prediction block by applying a weight prediction parameter to a block obtained by averaging the prediction blocks generated in List0 and List1 (hereinafter referred to as an average prediction block). At this time, the weight prediction parameters of List0 and List1 do not calculate optimum or encode each, and weight prediction parameters optimal for the average prediction block are calculated and encoded.
또는, 수학식 5를 이용하여 양방향 예측을 위한 가중치 예측 블록을 생성할 수 있다.Alternatively, a weight prediction block for bidirectional prediction can be generated using Equation (5).
이러한 경우 가중치 예측을 위한 스케일 인자는 List 별로 각기 최적의 스케일 인자를 산출하고 부호화하며, 오프셋 인자는 평균 예측 블록에 최적을 산출하고 부호화한다.In this case, the scale factor for predicting the weight calculates and encodes the optimal scale factor for each list, and the offset factor is calculated and optimized for the average prediction block.
도 4는 가중치 예측 파라미터를 산출하고 적용하는 방법 중 하나를 간략하게 나타낸 순서도이다.4 is a flowchart briefly showing one of methods for calculating and applying a weight prediction parameter.
도 4를 참조하면 현재 부호화할 픽처와 참조 픽처를 이용하여 가중치 예측 파라미터를 산출하고 산출된 가중치 예측 파라미터를 적용한다. 최적의 가중치 예측 파라미터를 산출하는 방법으로는 다양한 방법을 이용할 수 있다. 다양한 방법 중 하나로는 수학식 6을 이용하여 가중치 예측 파라미터를 산출하는 방법이 있다.Referring to FIG. 4, a weight prediction parameter is calculated using a current picture and a reference picture, and the calculated weight prediction parameter is applied. Various methods can be used as a method for calculating an optimal weight prediction parameter. One of various methods is to calculate the weight prediction parameter using Equation (6).
수학식 6에서, org(n)은 현재 부호화할 픽처의 n 번째 픽셀이고, ref(n)은 참조 픽처의 n 번째 픽셀이고, N은 픽처 내의 픽셀의 개수이다.In Equation (6), org (n) is the nth pixel of the current picture to be encoded, ref (n) is the nth pixel of the reference picture, and N is the number of pixels in the picture.
도 5는 참조 픽처 대신 움직임 보상 예측픽처(Motion Compensated Prediction Picture)를 이용하여 가중치 예측 파라미터를 산출하는 경우를 예시한 도면이다.FIG. 5 is a diagram illustrating a case where a weighted prediction parameter is calculated using a motion compensated prediction picture (Motion Compensated Prediction Picture) instead of a reference picture.
도 5처럼 참조 픽처 대신 움직임 보상 예측픽처(Motion Compensated Prediction Picture)를 이용하여 가중치 예측 파라미터를 산출할 수도 있다. 여기서 움직임 보상 예측픽처는 움직임 보상을 수행한 예측 블록들로 생성된 픽처이다.A weight prediction parameter may be calculated using a motion compensated prediction picture instead of a reference picture as shown in FIG. Here, the motion compensated prediction picture is a picture generated by the prediction blocks that have undergone motion compensation.
도 5의 경우, 수학식 7을 이용하여 가중치 예측 파라미터를 산출할 수 있다.In the case of FIG. 5, the weight prediction parameter can be calculated using Equation (7).
수학식 7에서, org(n)은 현재 부호화할 픽처의 n 번째 픽셀이고, mcp(n)은 움직임 보상 예측픽처의 n 번째 픽셀이고, N은 픽처 내의 픽셀의 개수이다.In Equation (7), org (n) is the nth pixel of the current picture to be coded, mcp (n) is the nth pixel of the motion compensated prediction picture, and N is the number of pixels in the picture.
도 6은 변환을 이용한 가중치 예측 파라미터의 산출 예를 나타낸 도면이다.6 is a diagram showing an example of calculation of a weighted prediction parameter using a transformation.
도 6에서 변환기의 기능은 영상변환부(113)가 수행할 수 있다.In FIG. 6, the function of the converter can be performed by the
영상변환부(113)는 우선 현재블록이 포함된 블록집합(예컨대, 현재 픽처)을 소정의 변환단위로 변환하여 제1 변환영상(예컨대, 제1 변환픽처)을 생성한다. 또한 영상변환부(113)는 현재픽처에 대한 제1 예측블록들로 구성된 움직임보상 예측영상(예컨대, 움직임보상 예측픽처), 즉, 현재 픽처에 포함된 모든 블록을 예측하여 생성된 예측블록들만으로 생성된 픽처를 소정의 변환단위로 변환하여 제2 변환영상(예컨대, 제2 변환픽처)를 생성한다. 여기서 소정의 변환단위는 8×8 또는 4×4 등 다양한 변환단위들 중에서 어느 하나를 사용할 수 있다.The
여기서 영상변환부(113)는 DCT, DST, 하다마드, KLT(Karhunen-Loeve Transform) 등을 이용하여 현재 픽처와 참조 픽처를 M×N 블록마다 변환한다. 여기서 M과 N은 서로 같거나 다를 수 있다.Here, the
가중치 산출부(114)는 제1 변환픽처 및 제2 변환픽처 내의 동일 위치의 소정의 변환단위별로 제1 변환픽처의 화소값과 제2 변환픽처의 화소값 사이의 관계에 기반하여 가중치예측 파라미터를 산출한다. 여기서, 변환 도메인 상에서 가중치 예측 파라미터 산출은 수학식 8을 이용할 수 있다.The
여기서, w(m,n)은 MxN 변환 블록 내의 (m,n) 위치의 주파수 계수를 위한 스케일 인자이고, ORGk(m,n) 현재 부호화할 픽처 내에서 k 번째 변환 블록의 (m,n) 위치의 주파수 계수이고, MCPk(m,n)는 움직임 보상 예측 픽처 내에서 k 번째 변환 블록의 (m,n) 위치의 주파수 계수이고, o(m,n)은 MxN 변환 블록 내의 (m,n) 위치의 주파수 계수를 위한 오프셋 인자이다. 오프셋 인자의 경우, 변환 도메인 상에서 사람 눈에 가장 민감한 주파수 계수인 저주파 계수인 (0,0)위치(즉 DC 위치)의 주파수 계수에만 적용할 수도 있다.Here, w (m, n) is a scale factor for the frequency coefficients of the position (m, n) in the MxN transform block, ORG k (m, n) of the k-th transform block in the picture to be currently coded (m, n ) is the frequency coefficient in position, MCP k (m, n) is the motion compensation prediction of the k-th transform block within a picture (a m, n) coefficients of the frequency of the position, o (m, n) are (m in the MxN transform block , n) is the offset factor for the frequency coefficient of the position. In the case of the offset factor, it may be applied only to the frequency coefficient at the (0, 0) position (i.e., the DC position), which is the low frequency coefficient which is the most sensitive frequency coefficient to the human eye on the conversion domain.
또한, 가중치 예측은 임의의 단위로 수행될 수 있다. 예를 들어, 픽처 단위로 가중치 예측을 모든 픽셀에 수행할 수도 있고, 슬라이스 단위로 가중치 예측을 모든 픽셀에 수행할 수도 있다. 또는 임의의 블록 단위로 적용할 수도 있는데, 이러한 경우 임의의 블록 단위의 가중치 예측 플래그를 부호화/복호화 해야 한다. 예를 들어, 예측 블록 단위로 가중치 예측 플래그를 부호화/복호화 하는 경우, 가중치 예측 플래그는 해당 예측 블록이 가중치 예측 블록으로 부호화/복호화할 것인지를 나타낸다.In addition, the weight prediction can be performed in arbitrary units. For example, weight prediction may be performed for all pixels on a picture-by-picture basis, or weight prediction may be performed for all pixels on a slice basis. Or in arbitrary block units. In this case, the weight prediction flag of any block unit should be encoded / decoded. For example, in the case of encoding / decoding the weight prediction flag in units of prediction blocks, the weight prediction flag indicates whether the corresponding prediction block is to be encoded / decoded by the weight prediction block.
도 7은 복수의 변환 방법 등을 이용하여 최적의 가중치 예측 플래그를 산출하기 위한 순서도이다.7 is a flowchart for calculating an optimum weight prediction flag using a plurality of conversion methods or the like.
영상 부호화 장치는 영상변환부(113)가 변환을 함에 있어서 복수개의 변환 알고리즘을 적용하고 가중치 산출부(114)가 이를 이용하여 복수개의 가중치예측 파라미터를 산출(S701)하면, 복수개의 가중치예측 파라미터 중에서 최적의 부호화 효율을 나타내는 가중치예측 파라미터를 선택(S702)하는 파라미터 결정부(117)를 포함할 수 있다.When the
영상변환부(113)가 변환을 함에 있어서 복수개의 크기의 변환단위를 적용하여 변환을 수행하고 가중치 산출부(114)가 이를 이용하여 복수개의 가중치예측 파라미터를 산출하면, 파라미터 결정부(117)는 복수개의 가중치예측 파라미터 중에서 최적의 부호화 효율을 나타내는 가중치예측 파라미터를 선택할 수도 있다.When the
이 경우, 가중치 정보에는 선택된 가중치예측 파라미터를 생성하기 위하여 영상변환부(113)가 수행한 변환에 대한 정보를 더 포함할 수 있다. 예컨대, 변환의 사이즈 또는 변환 알고리즘(DCT, DST 등)을 식별하는 정보일 수 있다.In this case, the weight information may further include information about the transform performed by the
또한, 도 7의 가중치 예측 파라미터 결정 단계(S702)에서 현재 부호화하는 픽처 전체에 적용될 수 있는 제1 가중치 예측 파라미터가 산출된 후, 파라미터 결정부(117)는 부호화 블록 단위마다 부호화 효율을 판단하여 제1 가중치 예측 파라미터를 이용한 가중치 예측을 수행할 것인지 또는 가중치 예측 파라미터를 사용하지 않고 예측블록을 생성할 것인지 여부를 결정한다. 이때, 부호화 효율의 판단 기준은 RDcost(Rate-Distortion cost), SSD(Sum Squared Distortion), SAD(Sum Absolute Distortion) 등을 이용할 수 있다.After the first weighted prediction parameter that can be applied to the entire current picture to be coded is calculated in the weighted prediction parameter determination step S702 of Fig. 7, the
부호화 블록 단위마다 제1 가중치 예측 파라미터를 이용한 가중치 예측을 수행할 것인지 여부를 판단한 후, 가중치 예측으로 수행하는 것으로 판단된 부호화 블록들의 픽셀들만을 이용하여 제2 가중치 예측 파라미터를 산출한다. 여기서 제2 가중치 예측 파라미터를 산출하는 방법은 제1 가중치 예측 파라미터를 산출하는 방법들 중에서 하나의 방법을 사용할 수 있다.After determining whether weight prediction using the first weight prediction parameter is to be performed for each coding block unit, the second weight prediction parameter is calculated using only pixels of the coding blocks determined to be weighted prediction. Here, the method of calculating the second weighted prediction parameter may use one of the methods of calculating the first weighted prediction parameter.
제2 가중치 예측 파라미터를 산출한 후, 픽처 단위로 제1 가중치 예측 파라미터를 이용한 예측블록 생성시의 부호화비용과 제2 가중치 예측 파라미터를 이용한 예측블록 생성시의 부호화비용 중 부호화비용이 낮은 가중치 예측 파라미터를 최적의 가중치 예측 파라미터로 결정한다. A weighting prediction parameter having a low coding cost out of the coding cost at the time of generating a prediction block using the coding cost at the time of generating a prediction block using the first weighting prediction parameter in units of pictures and the second weighting prediction parameter after calculating the second weighting prediction parameter, As an optimal weight prediction parameter.
여기서 제1 가중치예측 파라미터가 선택된 경우에는, 제1 가중치 예측 파라미터를 이용하여 가중치 예측을 수행하는 것으로 판단된 부호화블록에 대해서는 제1 가중치 예측 파라미터를 이용하여 예측 블록을 생성하고 제1 가중치 예측 파라미터를 이용하여 가중치 예측을 수행하지 않는 것이 더 나은 것으로 판단된 부호화블록에 대해서 가중치 예측 파라미터를 적용하지 않고 예측블록을 생성한다.Here, when the first weight prediction parameter is selected, a prediction block is generated using the first weight prediction parameter for the encoding block determined to perform the weight prediction using the first weight prediction parameter, and the first weight prediction parameter A prediction block is generated without applying a weighting prediction parameter to an encoding block determined to be better not to perform the weighting prediction.
만일 제2 가중치 예측 파라미터가 최적의 가중치 예측 파라미터로 선택된 경우, 제2 가중치 예측 파라미터를 산출한 방법과 동일한 방법으로 제3 가중치 예측 파라미터를 산출한다. 즉, 현재 픽처 내의 부호화 블록 단위마다 부호화 효율을 판단하여 제2 가중치 예측 파라미터를 이용한 가중치 예측을 수행할 것인지 또는 가중치 예측 파라미터를 사용하지 않고 예측블록을 생성할 것인지 여부를 결정한다.If the second weighted prediction parameter is selected as the optimal weighted prediction parameter, the third weighted prediction parameter is calculated in the same manner as the method for calculating the second weighted prediction parameter. That is, the coding efficiency is determined for each coding block unit in the current picture, and it is determined whether to perform weighting prediction using the second weighting prediction parameter or not to use the weighting prediction parameter.
부호화 블록 단위마다 제2 가중치 예측 파라미터를 이용한 가중치 예측을 수행할 것인지 여부를 판단한 후, 제2 가중치 예측 파라미터를 이용하여 가중치 예측으로 수행하는 것으로 판단된 부호화 블록들의 픽셀들만을 이용하여 제3 가중치 예측 파라미터를 산출한다. 여기서 제3 가중치 예측 파라미터를 산출하는 방법은 제1 가중치 예측 파라미터를 산출하는 방법들 중에서 하나의 방법을 사용할 수 있다.A weight prediction unit that determines whether weight prediction using the second weight prediction parameter is to be performed for each coded block unit and then uses only the pixels of the coded blocks determined to be weighted prediction based on the second weight prediction parameter, And calculates a parameter. Here, as a method of calculating the third weighted prediction parameter, one of the methods for calculating the first weighted prediction parameter may be used.
제3 가중치 예측 파라미터를 산출한 후, 픽처 단위로 제2 가중치 예측 파라미터를 이용한 예측블록 생성시의 부호화비용과 제3 가중치 예측 파라미터를 이용한 예측블록 생성시의 부호화비용 중 부호화비용이 낮은 가중치 예측 파라미터를 최적의 가중치 예측 파라미터로 결정한다.A weighting prediction parameter having a low coding cost out of a coding cost at the time of generating a prediction block and a coding cost at the time of generating a prediction block using the third weighting prediction parameter are calculated using the second weighting prediction parameter, As an optimal weight prediction parameter.
여기서 제2 가중치예측 파라미터가 선택된 경우에는, 제2 가중치 예측 파라미터를 이용하여 가중치 예측을 수행하는 것으로 판단된 부호화블록에 대해서는 제2 가중치 예측 파라미터를 이용하여 예측 블록을 생성하고 제2 가중치 예측 파라미터를 이용하여 가중치 예측을 수행하지 않는 것이 더 나은 것으로 판단된 부호화블록에 대해서 가중치 예측 파라미터를 적용하지 않고 예측블록을 생성한다.Here, when the second weight prediction parameter is selected, a prediction block is generated using the second weight prediction parameter for the encoding block determined to perform the weight prediction using the second weight prediction parameter, and the second weight prediction parameter A prediction block is generated without applying a weighting prediction parameter to an encoding block determined to be better not to perform the weighting prediction.
만일 제3 가중치 예측 파라미터가 최적의 가중치 예측 파라미터로 선택된 경우, 제3 가중치 예측 파라미터를 산출한 방법과 동일한 방법으로 제4 가중치 예측 파라미터를 산출하여 동일한 방법으로 순차적으로 추가적인 가중치 예측 파라미터를 생성하여 이전에 생성된 가중치 예측 파라미터가 새로 생성된 가중치 예측 파라미터보다 더 좋은 부호화효율을 나타내는 것으로 판단되는 경우 예측블록 생성에 사용되는 가중치 예측 파라미터는 이전에 생성된 가중치 예측 파라미터로 결정한다.If the third weighted prediction parameter is selected as the optimal weighted prediction parameter, the fourth weighted prediction parameter is calculated in the same manner as the method for calculating the third weighted prediction parameter, and an additional weighted prediction parameter is sequentially generated in the same manner, The weighting prediction parameter used for generating the prediction block is determined as a weighting prediction parameter that has been generated previously.
또한, 영상 부호화 장치는 부호화 블록 단위로 가중치 예측 파라미터를 적용하는 지 여부를 나타내는 가중치 예측 플래그를 부호화하여 가중치 예측 파라미터가 포함된 가중치 정보에 더 포함하여 비트스트림으로 생성하여 후술하는 영상 복호화 장치로 전송하고, 영상 복호화 장치는 비트스트림에 포함된 가중치 예측 플래그에 따라 부호화블록 단위로 가중치 예측 플래그에 따라 가중치 예측을 수행한다. 즉, 가중치 예측 플래그는 해당 부호화 블록이 가중치 예측을 수행하였는지 수행하지 않았는지를 나타낸다.In addition, the image encoding apparatus encodes a weighted prediction flag indicating whether or not a weighted prediction parameter is to be applied in units of coding blocks, and generates a bitstream by further encoding the weighted prediction flag in the weighted information including the weighted prediction parameter and transmitting the generated bitstream to a video decoding apparatus And the video decoding apparatus performs weight prediction based on the weight prediction flags in units of coded blocks in accordance with the weight prediction flags included in the bit stream. That is, the weight prediction flag indicates whether the corresponding encoding block has performed weight prediction or not.
만일, 도 6과 같이 변환을 이용하여 가중치 예측을 수행하는 경우에는 MxN 변환 블록 단위로 가중치 예측 플래그를 부호화/복호화 할 수 있다.If the weight prediction is performed using the transform as shown in FIG. 6, the weight prediction flag can be encoded / decoded in units of MxN transform blocks.
만일, 도 6과 같이 변환을 이용하여 가중치 예측을 수행하는 경우에는 첫번째 가중치 예측 파라미터는 DCT 8x8을 이용하여 가중치 예측 파라미터를 산출하고, 두번째 가중치 예측 파라미터는 DST 8x8을 이용하여 가중치 예측 파라미터를 산출한 후 두 가중치 예측 파라미터 중 최적의 가중치 예측 파라미터를 결정한다. 이 때, 부호화기는 변환의 정보를 헤더에 부호화한다. 이는 변환의 크기가 될 수도 있으면 변환의 종류가 될 수도 있고, 변환의 크기와 종류 모두를 의미할 수도 있다.6, the first weighted prediction parameter is calculated using the DCT 8x8, and the second weighted prediction parameter is calculated using the weighted prediction parameter DST 8x8 And determines an optimal weight prediction parameter from among the two weight prediction parameters. At this time, the encoder encodes the information of the conversion in the header. This can be the size of the transformation, the type of transformation, or both the size and type of the transformation.
가중치 예측 파라미터 적용 단계에서는 상기 설명한 가중치 예측 파라미터 결정 단계에서 결정된 최적의 가중치 예측 파라미터를 적용한다.In the weight prediction parameter application step, the optimal weight prediction parameter determined in the weight prediction parameter determination step described above is applied.
가중치 적용부(115)는 가중치 예측 파라미터 적용 단계에서, 제2 변환픽처에 소정의 변환단위로 산출된 가중치예측 파라미터를 적용하여 가중치적용 변환영상(예컨대, 가중치적용 변환픽처)을 생성한다.In the weight prediction parameter application step, the
또한, 도 6을 참조하여 변환 도메인 상에서 가중치 예측 파라미터를 산출하는 경우, 부호화 블록 또는 예측 단위가 아닌 M×N 변환 블록 단위로 가중치 예측 플래그를 결정하고 부호화/복호화 할 수 있다. 예를 들어, 가중치 예측이 부호화효율이 높은 경우에는 가중치 예측을 통하여 부호화를 수행하고 가중치예측을 의미하는 가중치 예측 플래그를 영상 복호화 장치로 전송할 수 있으며, 가중치 예측이 부호화효율이 낮은 경우에는 가중치 예측을 하지않은 상태로 부호화를 수행하고 가중치 예측이 아닌 일반예측을 의미하는 가중치 예측 플래그를 영상 복호화 장치로 전송할 수 있다.6, when the weight prediction parameter is calculated on the transform domain, the weight prediction flag can be determined and encoded / decoded on an M × N transform block basis instead of an encoding block or a prediction unit. For example, when weighting prediction has a high coding efficiency, a weighting prediction flag indicating weighting prediction may be transmitted to the image decoding apparatus by performing weighting prediction, and weighting prediction may be performed when weighting prediction is low. And transmit a weighted prediction flag indicating a general prediction rather than a weight prediction to the video decoding apparatus.
한편, 가중치 예측을 수행하는 경우 스케일 인자와 오프셋 인자를 부호화/복호화해야 한다. 도 4, 도 5, 도 7 등의 방법으로 가중치 예측을 수행하는 경우에는 w와 o를 임의의 헤더(즉, 가중치예측 단위를 나타내는 크기의 데이터의 헤더, 예컨대, 슬라이스, 픽처, 시퀀스 등의 헤더)에 부호화/복호화한다. 도 6의 방법을 이용하는 경우에는 M×N개의 w와 o를 해당 데이터의 헤더에 부호화/복호화한다. 또는 M×N개의 w와 저주파 계수를 위한 1개의 o를 헤더에 부호화/복호화할 수도 있다. Meanwhile, when the weight prediction is performed, the scale factor and the offset factor must be encoded / decoded. 4, 5, 7, and so on, when w and o are set to an arbitrary header (i.e., a header of data having a size indicating a weight prediction unit, e.g., a header of a slice, a picture, ). When the method of FIG. 6 is used, M × N w and o are encoded / decoded in the header of the corresponding data. Or MxN w and one o for the low-frequency coefficient may be encoded / decoded in the header.
이러한 경우 M×N 블록이 크다면 가중치 예측 파라미터를 부호화하는데 많은 비트를 소요하게 되므로 부호화 효율이 떨어질 수 있기 때문에 w와 o를 예측하거나 샘플링(Sampling)하여 부호화할 수 있다.In this case, if the number of M × N blocks is large, the encoding efficiency may be reduced because a large number of bits are required to encode the weight prediction parameter. Therefore, w and o can be predicted or sampled by coding.
예를 들어, 현재 슬라이스가 M×N개의 w와 1개의 o를 부호화하는 경우, M×N개의 w는 수학식 9 또는 수학식 10을 이용하여 예측 부호화할 수 있다.For example, when the current slice encodes M × N w and 1 o, M × N w can be predictively coded using Equation (9) or Equation (10).
여기서 wDiff(m,n)은 M×N 변환 블록 내의 (m,n)위치의 스케일 인자 차분값이자 부호화할 값이고, wPrevSlice(m,n)는 이전 슬라이스의 M×N 변환 블록 내의 (m,n)위치의 스케일 인자이고, wCurrSlice(m,n)는 이전 슬라이스의 M×N 변환 블록 내의 (m,n)위치의 스케일 인자이다.Where w Diff (m, n) is a M × N transform block in the (m, n) is a scale factor difference value and a value to be encoded in the location, w PrevSlice (m, n) is in the M × N transform block of a previous slice ( m, n) position, and w CurrSlice (m, n) is a scale factor of the position (m, n) in the MxN transform block of the previous slice.
따라서, 수학식 9에 의해 가중치 정보에는 이전 블록집합에 대한 가중치 파라미터에 대한 차분값으로 가중치정보 파라미터에 대한 정보가 포함됨을 알 수 있다.Therefore, it can be seen from Equation (9) that the weight information includes information on the weight information parameter as a difference value with respect to the weight parameter for the previous block set.
여기서 2q는 q 비트값으로 예측한 값이다.Here, 2 q is a value predicted by a q-bit value.
즉, 수학식 10의 경우는, DC성분에 대해서는 소정 값(예컨대, 가중치예측 파라미터가 가질 수 있는 최대값, 즉, 2q)을 예측값으로 하여 생성된 차분값과, 나머지 주파수성분에 대해서는 인접 주파수 성분의 가중치예측 파라미터에 대하여 생성된 차분값을 포함한다.That is, in the case of Equation (10), a difference value generated by using a predetermined value (for example, a maximum value that the weight prediction parameter can have, i.e., 2q ) as a predicted value for the DC component, And a difference value generated for the weight prediction parameter of the component.
도 8은 수학식 10에 의한 가중치 파라미터를 구하는 방법을 도식화한 도면이다.FIG. 8 is a diagram illustrating a method of obtaining a weight parameter according to Equation (10).
도 8에 도시하듯이, wDiff(0,0)값에 wCurrSlice(1,0)을 차분하여 wDiff(1,0)을 구한다. 차례로 wDiff(1,0)값에 wCurrSlice(2,0)을 차분하여 wDiff(2,0)을 구하는 방법으로 wDiff(m,0)을 구한다. 그 후, wDiff(0,0)값에 wCurrSlice(0,1)을 차분하여 wDiff(0,1)을 구한다. 차례로 wDiff(0,1)값에 wCurrSlice(0,2)을 차분하여 wDiff(0,2)을 구하는 방법으로 wDiff(0,n)을 구할 수 있다.As it is shown in Figure 8, w Diff (0,0) and the difference w CurrSlice (1,0) to calculate the value w Diff (1,0). W Diff (m, 0) is obtained by calculating w Diff (2,0) by dividing w CurrSlice (2,0) by w Diff (1,0) value in turn. Then, we subtract w CurrSlice (0,1) from w Diff (0,0) to obtain w Diff (0,1). W Diff (0, n) can be obtained by dividing w CurrSlice (0,2) by the w Diff (0,1) value and then finding w Diff (0,2)
수학식 11은 도 8을 이용했을 때 4×4 변환 블록의 wDiff를 산출하는 수학식이다. 이는 M×N 크기에도 동일하게 적용할 수 있다.Equation (11) is a mathematical expression for calculating w Diff of the 4x4 transform block using FIG. This is equally applicable to the M × N size.
수학식 11은 다시 수학식 12로 나타낼 수 있다.Equation (11) can be expressed by Equation (12) again.
도 9는 일정 간격의 주파수성분마다 주파수성분 가중치예측 파라미터가 발생되는 경우를 예시한 도면이다.9 is a diagram illustrating a case where a frequency component weight estimation parameter is generated for each frequency component at a predetermined interval.
M×N개의 가중치 예측 파라미터를 샘플링하여 부호화/복호화하는 경우, 도 9를 참조하여 샘플링 한 후 예측 부호화/복호화 할 수 있다.In the case of sampling and encoding / decoding the M × N weighted prediction parameters, it is possible to perform prediction and coding / decoding after sampling with reference to FIG.
즉, 가중치예측 파라미터는, 소정의 변환단위에 대하여 일정 간격의 주파수성분마다 주파수성분 가중치예측 파라미터가 발생되고, 일정 간격의 주파수성분 사이의 주파수성분의 가중치예측 파라미터는 보간된 값을 사용한다.That is, as the weight prediction parameter, a frequency component weight prediction parameter is generated for each frequency component at a predetermined interval with respect to a predetermined conversion unit, and an interpolated value is used as the weight prediction parameter of the frequency component between frequency components at predetermined intervals.
도 9를 참조하면, 부호화되는 가중치 정보에는 빗금친 블록 위치의 가중치 예측 파라미터가 포함되며, 하얀색 블록 위치의 가중치 예측 파라미터는 주변의 가중치 예측 파라미터를 이용하여 보간한 값을 해당 위치의 가중치 예측 파라미터로 이용한다.9, the encoded weight information includes a weight prediction parameter of the hatched block position, and the weight prediction parameter of the white block position includes a weighted prediction parameter of the corresponding position .
영상 역변환부(116)는 가중치적용 변환픽처를 역변환하여 가중치적용 예측영상(예컨대, 가중치적용 예측픽처)을 생성한다.The image
감산부(111)는 현재 블록에서 가중치적용 예측영상 내의 예측블록을 감산하여 잔차 블록을 생성한다.
이와 같이 현재 블록에서 가중치적용 예측영상 내의 예측블록을 감산하여 생성된 잔차블록은 변환부(104), 양자화부(105)를 거쳐 엔트로피부호화부(107)에서 부호화된다.The residual block generated by subtracting the prediction block in the weighted prediction image from the current block is encoded by the
즉, 변환부(104)는 현재 블록에서 가중치적용 예측영상 내의 예측블록을 감산하여 생성된 잔차 블록을 변환하여 변환 블록을 생성한다. 변환단위는 도 2처럼 부호화단위와 동일하게 분할될 수도 있으며, 다른 다양한 방법으로 분할하여 변환을 수행할 수도 있다. 여기서도 변환단위에 대한 정보도 부호화단위 블록과 마찬가지로 쿼드트리 구조를 이용할 수 있으며, 변환 단위는 여러 가지 크기를 가질 수 있다. 변환부(104)는 잔차신호를 주파수 영역으로 변환하여 변환 계수를 가지는 변환 블록을 생성하여 출력한다. 여기서 잔차신호를 주파수 영역으로 변환하는 방법으로는 이산 코사인 변환(DCT: Discrete Cosine Transform)기반 변환, 이산 사인 변환(DST: Discreate Sine Transform), KLT(Karhunen Loeve Transform) 등, 다양한 변환 기법을 이용할 수 있으며, 이를 이용하여 잔차신호가 주파수 영역으로 변환되어 변환 계수로 변환된다. 변환 기법을 편하게 사용하기 위해 기저벡터(basis vector)를 이용하여 매트릭스(Matrix) 연산을 하게 되는데 예측 블록이 어떤 방식으로 부호화 되었느냐에 따라 매트릭스 연산시 변환기법들을 다양하게 섞어 사용할 수 있다. 예를 들어, 인트라예측시 예측모드에 따라 가로방향으로는 이산 코사인 변환을 사용하고 세로 방향으로는 이산 사인 변환을 사용할 수도 있다. That is, the
또한 양자화부(105)는 현재 블록에서 가중치적용 예측영상 내의 예측블록을 감산하여 생성된 잔차 블록을 변환하는 변환부(104)의 변환 블록 출력을 수신하여 이를 양자화하여 양자화된 변환 블록을 생성한다. 즉, 양자화부(105)는 변환부(104)로부터 출력되는 변환 블록의 변환 계수들을 양자화하여 양자화된 변환 계수를 가지는 양자화된 변환 블록(Quantized Transform Coefficient)를 생성하여 출력한다. 여기서, 양자화 방법으로는 데드존 균일 경계 양자화(DZUTQ: Dead Zone Uniform Threshold Quantization) 또는 양자화 가중치 메트릭스 (Quantization Weighted Matrix) 등이 이용될 수 있지만, 이를 개량한 양자화 등 다양한 양자화 방법이 이용될 수 있다.The
엔트로피부호화부(107)는 양자화된 변환 블록을 부호화 하여 비트스트림을 발생한다. 즉, 엔트로피부호화부(107)는 양자화부(105)로부터 출력되는 양자화된 변환 블록의 양자화된 변환계수를 지그재그 스캔 등 다양한 스캔 방식으로 스캔한 주파수 계수열을 엔트로피 부호화(Entropy Encoding) 등 다양한 부호화 기법을 이용하여 부호화하고, 후술하는 영상 복호화 장치에서 해당 블록을 복호화하는데 필요한 부가적인 정보들(예를 들면, 예측 모드에 대한 정보, 양자화 계수, 움직임 파라미터 등)을 포함하는 비트스트림을 생성한다.The
역양자화부(108)는 양자화된 변환 블록을 역양자화하여 변환계수를 가지는 변환 블록을 복원한다. The
역변환부(109)는 역양자화된 변환 블록을 역변환하여 잔차신호를 가지는 잔차 블록을 복원한다.The
가산부(112, Adder)는 역변환된 잔차신호와, 인트라예측 또는 인터예측을 통하여 생성된 예측 영상을 가산하여 현재 블록을 복원한다.The
메모리(110)는 역변환된 잔차신호와, 인트라예측 또는 인터예측을 통하여 생성된 예측 영상을 가산하여 복원된 현재 블록을 저장하며, 다음 블록 또는 다음 픽쳐 등 다른 블록을 예측하는데 활용될 수 있다.The
도 10은 본 발명의 일 실시예에 따른 영상 복호화 장치를 예시한 블록도이다.10 is a block diagram illustrating an image decoding apparatus according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 영상 복호화 장치(400)는 비트스트림 복호부(401), 역양자화부(402), 역변환부(403), 예측부(405), 가산부(409, Adder), 메모리(408), 영상변환부(410), 가중치적용부(411) 및 영상역변환부(412)를 포함하여 구성될 수 있다.An
비트스트림 복호부(401)는 비트스트림으로부터 양자화된 주파수변환블록 및 가중치 정보를 추출한다. 즉, 비트스트림 복호부(401)는 입력되는 비트스트림으로부터 추출된 비트열을 복호화 하고 역 스캐닝하여 양자화된 변환 계수를 가지는 양자화된 변환 블록을 복원한다. 이때, 비트스트림 복호부(401)는 엔트로피부호화부(107)에서 이용한 엔트로피 부호화와 같은 부호화 기법을 이용하여 복호화할 수 있다. 또한, 비트스트림 복호부(401)에서는 인터예측의 경우, 비트스트림으로부터 부호화된 차분벡터 관련 정보를 추출하고 복호화하여 차분 벡터를 복원하고 움직임 파라미터를 복호화하여 현재 블록의 움직임 벡터를 복원할 수 있다. 인트라예측의 경우 비트스트림으로부터 부호화된 인트라예측모드 인덱스를 추출하고 복호화하여 현재 블록이 어떤 인트라예측모드를 사용하였는지 알려준다. 또한 영상 부호화 장치에서 부호화블록 단위로 가중치 예측 플래그를 비트스트림에 포함하여 전송하는 경우에는 추출되는 가중치 정보에 포함된 가중치 예측 플래그를 복호한다. 이 가중치 예측 플래그가 해당 부호화 블록이 가중치예측을 수행했음을 의미하면 예측부(405), 영상변환부(410), 가중치 적용부(411) 및 영상 역변환부(412) 등에서 가중치 예측을 수행하도록 하고 해당 부호화 블록이 가중치예측을 수행하지 않았음을 의미하면 예측부(405)에서 생성된 예측블록으로 복호화를 수행하도록 한다.The
역양자화부(402)는 양자화된 변환 블록을 역양자화 한다. 즉, 역양자화부(402)는 비트스트림 복호부(401)로부터 출력되는 양자화된 변환 블록의 양자화된 변환계수를 역양자화한다. 이때, 역양자화부(402)는 영상부호화 장치의 양자화부(105)를 이에서 이용한 양자화 기법을 역으로 수행하여 역양자화 한다.The
역변환부(403)는 역양자화부(402)로부터 출력되는 역양자화된 변환 블록을 역변환하여 잔차블록을 복원한다. 즉, 역변환부(403)는 역양자화부(402)로부터 출력되는 역양자화된 변환 블록의 역양자화된 변환 계수를 역변환함으로써 복원된 잔차 신호를 가지는 잔차 블록을 복원하는데, 영상 부호화 장치의 변환부(104)에서 이용한 변환 기법을 역으로 수행하여 역변환한다.The
예측부(405)는 인트라예측부(406) 및 인터예측부(407)를 포함할 수 있으며, 전술한 영상 부호화 장치의 인트라예측부(102) 및 인터예측부(103)과 각각 유사한 기능을 한다. 인터예측부(407)는 복원된 현재 움직임 벡터를 이용하여 복원하고자 하는 현재블록에 대한 예측 블록을 생성한다.The
영상변환부(410)는 현재블록이 포함된 블록집합을 소정의 변환단위로 변환하여 제1 변환영상을 생성하고 블록집합에 대한 예측블록들로 구성된 움직임보상 예측영상을 소정의 변환단위로 변환하여 제2 변환영상을 생성한다.The
가중치 적용부(411)는 제2 변환영상에 소정의 변환단위로 복원된 가중치 정보에 포함된 가중치예측 파라미터를 적용하여 가중치적용 변환영상을 생성한다. 가중치예측 파라미터를 적용하여 가중치적용 변환영상을 생성하는 방법은 영상 부호화장치의 가중치적용부(115)에서의 방법과 유사하다.The
영상 역변환부(412)는 가중치적용 변환영상을 역변환하여 가중치적용 예측영상을 생성한다. 가중치적용 변환영상을 역변환하여 가중치적용 예측영상을 생성하는 방법은 영상 부호화장치의 영상 역변환부(116)에서의 방법과 유사하다.The image
가산부(409, Adder)는 가중치적용 예측영상 내의 예측블록과 복원되는 잔차 블록을 가산하여 현재 화소 블록을 복원한다.The
메모리(408)는 영상 부호화 장치의 메모리(110)와 동일하게 복호된 영상을 저장하여 이후의 예측에 사용될 수 있다.The
인트라예측부(406)는 여기서 생성된 움직임 벡터를 이용하여 복원할 현재블록을 예측하는데에 사용한다.The
한편, 본 발명의 일 실시예에 따른 영상 부호화/복호화 장치는 도 1의 영상 부호화 장치의 비트스트림(부호화 데이터) 출력단을 도 10의 영상 복호화 장치의 비트스트림 입력단에 연결함으로써 구현할 수 있다.Meanwhile, the image encoding / decoding apparatus according to an embodiment of the present invention can be implemented by connecting the bit stream (encoded data) output end of the image encoding apparatus of FIG. 1 to the bit stream input end of the image decoding apparatus of FIG.
본 발명의 일 실시예에 따른 영상 부호화/복호화 장치는, 현재 블록에 대한 제1 예측블록을 생성하고 상기 현재블록이 포함된 블록집합을 소정의 변환단위로 변환하여 제1 변환영상을 생성하고 상기 블록집합에 대한 예측블록들로 구성된 움직임보상 예측영상을 상기 소정의 변환단위로 변환하여 제2 변환영상을 생성하고 제1 변환영상 및 제2 변환영상 내의 동일 위치의 상기 소정의 변환단위별로 상기 제1 변환영상의 화소값과 상기 제2 변환영상의 화소값 사이의 관계에 기반하여 가중치예측 파라미터를 산출하고 상기 제2 변환영상에 상기 소정의 변환단위로 상기 가중치예측 파라미터를 적용하여 가중치적용 변환영상을 생성하고 상기 가중치적용 변환영상을 역변환하여 가중치적용 예측영상을 생성하고 상기 현재 블록에서 상기 가중치적용 예측영상 내의 예측블록을 감산하여 잔차 블록을 생성하여 상기 현재블록을 비트스트림으로 부호화하는 영상 부호화 장치(100)(본 발명의 일 실시예에서의 영상 부호화/복호화 장치에서의 영상 부호화기를 구현) 및 비트스트림으로부터 양자화된 주파수변환블록 및 가중치 정보를 복호하고 현재블록에 대한 예측 블록을 생성하고 상기 현재블록이 포함된 블록집합을 소정의 변환단위로 변환하여 제1 변환영상을 생성하고 상기 블록집합에 대한 예측블록들로 구성된 움직임보상 예측영상을 상기 소정의 변환단위로 변환하여 제2 변환영상을 생성하고 상기 제2 변환영상에 상기 소정의 변환단위로 상기 가중치 정보에 포함된 가중치예측 파라미터를 적용하여 가중치적용 변환영상을 생성하고 상기 가중치적용 변환영상을 역변환하여 가중치적용 예측영상을 생성하고 상기 가중치적용 예측영상 내의 예측블록과 복원되는 잔차 블록을 가산하여 현재 블록을 복원하는 영상 복호화 장치(800)(본 발명의 일 실시예에서 따른 영상 부호화/복호화 장치에서의 영상 복호화기를 구현)를 포함한다.The image encoding / decoding apparatus according to an embodiment of the present invention generates a first predicted block for a current block, converts a block set including the current block into a predetermined conversion unit to generate a first converted image, A motion compensated predictive image including prediction blocks for a block set is transformed into the predetermined transform unit to generate a second transformed image, and the transformed image is transformed into a predetermined transform unit at the same position in the first transformed image and the second transformed image, 1 converted image and a pixel value of the second transformed image, and applying the weighted prediction parameter in the predetermined conversion unit to the second transformed image, And generates a weighted prediction image by inversely transforming the weighted transformation image to generate a weighted prediction image in the current block, (Which implements an image encoder in the image encoding / decoding apparatus according to an embodiment of the present invention) for encoding the current block into a bit stream by generating a residual block by subtracting a prediction block in the image and a bit Decoding a frequency transform block and weight information quantized from a stream, generating a prediction block for the current block, transforming the block set including the current block into a predetermined transform unit to generate a first transformed image, A second transformed image is generated by transforming a motion compensated prediction image composed of prediction blocks into the predetermined transform unit and a weighted prediction parameter included in the weighted information is applied to the second transformed image in the predetermined transform unit, And generates an adaptation transformed image and inversely transforms the weighted transformed image to generate a weighted prediction image (Which implements a video decoder in an image encoding / decoding apparatus according to an embodiment of the present invention) for reconstructing a current block by adding a prediction block in a weighted prediction image and a reconstructed residual block, .
본 발명의 일 실시예에 따른 영상을 부호화하는 방법은, 현재 블록에 대한 제1 예측블록을 생성하는 예측단계, 상기 현재블록이 포함된 블록집합을 소정의 변환단위로 변환하여 제1 변환영상을 생성하고 상기 블록집합에 대한 예측블록들로 구성된 움직임보상 예측영상을 상기 소정의 변환단위로 변환하여 제2 변환영상을 생성하는 영상변환단계, 제1 변환영상 및 제2 변환영상 내의 동일 위치의 상기 소정의 변환단위별로 상기 제1 변환영상의 화소값과 상기 제2 변환영상의 화소값 사이의 관계에 기반하여 가중치예측 파라미터를 산출하는 가중치 산출단계, 상기 제2 변환영상에 상기 소정의 변환단위로 상기 가중치예측 파라미터를 적용하여 가중치적용 변환영상을 생성하는 가중치 적용단계, 상기 가중치적용 변환영상을 역변환하여 가중치적용 예측영상을 생성하는 영상 역변환단계, 상기 현재 블록에서 상기 가중치적용 예측영상 내의 예측블록을 감산하여 잔차 블록을 생성하는 감산단계, 상기 잔차 블록을 변환하여 주파수변환블록을 생성하는 변환단계, 상기 주파수변환블록을 양자화하여 양자화된 주파수변환블록을 생성하는 양자화단계 및 상기 가중치예측 파라미터가 포함된 가중치 정보와 상기 양자화된 주파수변환블록을 비트스트림으로 부호화하는 엔트로피 부호화단계를 포함한다.A method of encoding an image according to an embodiment of the present invention includes generating a first predictive block for a current block, converting a block set including the current block into a predetermined conversion unit, And generating a second transformed image by transforming the motion-compensated predicted image composed of the prediction blocks for the block set into the predetermined transform unit; and a transforming step of transforming the first transformed image and the second transformed image, A weight calculating step of calculating a weighted prediction parameter based on a relationship between a pixel value of the first transformed image and a pixel value of the second transformed image in a predetermined conversion unit, A weight applying step of generating a weight applying transformed image by applying the weight predicting parameter, a weight applying step of inversely transforming the weight applying transformed image, A subtracting step of subtracting a prediction block in the weighted prediction image from the current block to generate a residual block, a transforming step of transforming the residual block to generate a frequency transforming block, And a quantization step of quantizing the quantized frequency transform block to generate a quantized frequency transform block; and an entropy encoding step of weighting information including the weight prediction parameter and encoding the quantized frequency transform block into a bit stream.
여기서 예측단계는 예측부(106)의 동작에 대응되고, 영상변환단계는 영상변환부(113)의 동작에 대응되고, 가중치 산출단계는 가중치 산출부(114)의 동작에 대응되고, 가중치 적용단계는 가중치 적용부(115)의 동작에 대응되고, 영상 역변환단계는 영상 역변환부(116)의 동작에 대응되고, 감산단계는 감산부(111)의 동작에 대응되고, 변환단계는 변환부(104)의 동작에 대응되고, 양자화단계는 양자화부(105)의 동작에 대응되고, 엔트로피 부호화단계는 엔트로피 부호화부(107)의 동작에 대응되므로 상세한 성명은 생략한다.Here, the prediction step corresponds to the operation of the
본 발명의 일 실시예에 따른 영상을 복호화하는 방법은, 비트스트림으로부터 양자화된 주파수변환블록 및 가중치 정보를 복호하는 비트스트림 복호단계, 상기 양자화된 주파수변환 블록을 역양자화하여 주파수변환블록을 생성하는 역양자화단계, 상기 주파수변환블록을 역변환하여 잔차 블록을 복원하는 역변환단계, 복원하고자 하는 현재블록에 대한 예측 블록을 생성하는 예측단계, 상기 현재블록이 포함된 블록집합을 소정의 변환단위로 변환하여 제1 변환영상을 생성하고 상기 블록집합에 대한 예측블록들로 구성된 움직임보상 예측영상을 상기 소정의 변환단위로 변환하여 제2 변환영상을 생성하는 영상변환단계, 상기 제2 변환영상에 상기 소정의 변환단위로 상기 가중치 정보에 포함된 가중치예측 파라미터를 적용하여 가중치적용 변환영상을 생성하는 가중치 적용단계, 상기 가중치적용 변환영상을 역변환하여 가중치적용 예측영상을 생성하는 영상 역변환단계 및 상기 가중치적용 예측영상 내의 예측블록과 상기 복원되는 잔차 블록을 가산하여 상기 현재 블록을 복원하는 가산단계를 포함한다.A method of decoding an image according to an embodiment of the present invention includes a bitstream decoding step of decoding a frequency transform block and weight information quantized from a bitstream, a step of generating a frequency transform block by inversely quantizing the quantized frequency transform block An inverse quantization step, an inverse transform step of inversely transforming the frequency transform block to reconstruct a residual block, a prediction step of generating a prediction block for a current block to be reconstructed, a transformation step of transforming a block set including the current block into a predetermined transform unit An image transformation step of generating a first transformed image and transforming a motion-compensated predicted image composed of prediction blocks for the block set into the predetermined transform unit to generate a second transformed image; Applying a weighted prediction parameter included in the weight information as a conversion unit, An inverse image transforming step of inversely transforming the weighted transformed image to generate a weighted predicted image, and an adding step of restoring the current block by adding the predicted block and the restored residual block in the weighted predicted image, .
여기서 비트스트림 복호단계는 비트스트림 복호부(401)의 동작에 대응되고, 역양자화단계는 역양자화부(402)의 동작에 대응되고, 역변환단계는 역변환부(403)의 동작에 대응되고, 예측단계는 예측부(405)의 동작에 대응되고, 영상변환단계는 영상변환부(410)의 동작에 대응되고, 가중치 적용단계는 가중치 적용부(411)의 동작에 대응되고, 영상 역변환단계는 영상 역변환부(412)의 동작에 대응되고, 가산단계는 가산부(409)에 대응되므로 상세한 성명은 생략한다.Here, the bitstream decoding step corresponds to the operation of the
본 발명의 일 실시예에 따른 영상 부호화/복호화 방법은, 본 발명의 일 실시예에 따른 영상 부호화 방법과 본 발명의 일 실시예에 따른 영상 복호화 방법을 결합하여 구현함으로써 실현할 수 있다.An image encoding / decoding method according to an embodiment of the present invention can be realized by combining an image encoding method according to an embodiment of the present invention and an image decoding method according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 영상 부호화/복호화 방법은, 현재 블록에 대한 제1 예측블록을 생성하고 상기 현재블록이 포함된 블록집합을 소정의 변환단위로 변환하여 제1 변환영상을 생성하고 상기 블록집합에 대한 예측블록들로 구성된 움직임보상 예측영상을 상기 소정의 변환단위로 변환하여 제2 변환영상을 생성하고 제1 변환영상 및 제2 변환영상 내의 동일 위치의 상기 소정의 변환단위별로 상기 제1 변환영상의 화소값과 상기 제2 변환영상의 화소값 사이의 관계에 기반하여 가중치예측 파라미터를 산출하고 상기 제2 변환영상에 상기 소정의 변환단위로 상기 가중치예측 파라미터를 적용하여 가중치적용 변환영상을 생성하고 상기 가중치적용 변환영상을 역변환하여 가중치적용 예측영상을 생성하고 상기 현재 블록에서 상기 가중치적용 예측영상 내의 예측블록을 감산하여 잔차 블록을 생성하여 상기 현재블록을 비트스트림으로 부호화하는 영상 부호화단계; 및 비트스트림으로부터 양자화된 주파수변환블록 및 가중치 정보를 복호하고 복원할 현재블록에 대한 예측 블록을 생성하고 상기 현재블록이 포함된 블록집합을 소정의 변환단위로 변환하여 제1 변환영상을 생성하고 상기 블록집합에 대한 예측블록들로 구성된 움직임보상 예측영상을 상기 소정의 변환단위로 변환하여 제2 변환영상을 생성하고 상기 제2 변환영상에 상기 소정의 변환단위로 상기 가중치 정보에 포함된 가중치예측 파라미터를 적용하여 가중치적용 변환영상을 생성하고 상기 가중치적용 변환영상을 역변환하여 가중치적용 예측영상을 생성하고 상기 가중치적용 예측영상 내의 예측블록과 복원되는 잔차 블록을 가산하여 화소 블록을 복원하는 영상 복호화단계를 포함한다.According to an embodiment of the present invention, there is provided a method of encoding / decoding an image, comprising: generating a first predictive block for a current block; transforming a block set including the current block into a predetermined conversion unit to generate a first transformed image; A motion compensated predictive image including prediction blocks for a block set is transformed into the predetermined transform unit to generate a second transformed image, and the transformed image is transformed into a predetermined transform unit at the same position in the first transformed image and the second transformed image, 1 converted image and a pixel value of the second transformed image, and applying the weighted prediction parameter in the predetermined conversion unit to the second transformed image, And generates a weighted prediction image by inversely transforming the weighted transformation image to generate a weighted prediction image in the current block, The image encoding method comprising: subtracting a predicted block in the encoding of the current block to generate a residual block into a bit stream; And generating a first transformed image by transforming a block set including the current block into a predetermined transform unit to generate a first transformed image by decoding the frequency transformed block and the weighted information quantized from the bitstream and generating a predicted block for the current block to be reconstructed, A motion compensated prediction image composed of prediction blocks for a block set is transformed into the predetermined conversion unit to generate a second transformed image and weighted prediction parameters included in the weighted information in the predetermined transform unit A weighted adaptation transformed image, an inverse transformed weighted transformed image to generate a weighted predicted image, and a reconstructed pixel block by adding a predicted block in the weighted predicted image and a reconstructed residual block, .
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현한 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록 매체, 캐리어 웨이브 매체 등이 포함될 수 있다.While the present invention has been described in connection with what is presently considered to be the most practical and preferred embodiment, it is to be understood that the invention is not limited to the disclosed embodiments. In addition, although all of the components may be implemented as one independent hardware, some or all of the components may be selectively combined to perform a part or all of the functions in one or a plurality of hardware. As shown in FIG. The codes and code segments constituting the computer program may be easily deduced by those skilled in the art. Such a computer program may be stored in a computer-readable storage medium, readable and executed by a computer, thereby implementing an embodiment of the present invention. As the storage medium of the computer program, a magnetic recording medium, an optical recording medium, a carrier wave medium, or the like may be included.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것이 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The foregoing description is merely illustrative of the technical idea of the present invention, and various changes and modifications may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.
이상에서 설명한 바와 같이 본 발명의 실시예는, B 픽처의 부호화, P 픽처의 부호화, 인터 예측 부호화 등에 있어서, 가중치 예측을 함으로써 현재 부호화할 블록 또는 현재 픽처의 움직임 보상을 정밀하게 부호화하고, 비트스트림으로부터 추출한 가중치 예측 파라미터 정보에 기초하여 현재 복호화할 블록 또는 픽처의 움직임 보상을 수행하여 복원함으로써 현재 블록 또는 픽처에 대한 복원 효율을 향상하는 효과를 발생하는 매우 유용한 발명이다.As described above, according to the embodiment of the present invention, motion compensation of a current block or a current picture is precisely encoded by predicting a weight in encoding a B-picture, encoding a P-picture, inter-predictive encoding, And compensates for motion compensation of a current block or picture to be decoded based on the weighted prediction parameter information extracted from the current block or picture, thereby improving the reconstruction efficiency for the current block or picture.
Claims (11)
비트스트림을 복호화하여 최대 부호화 단위(coding unit)으로부터 쿼드트리 구조로 분할된 부호화 단위를 결정하는 단계;
상기 부호화 단위로부터 분할된 하나 이상의 예측 블록들에 대한 움직임 정보를 상기 비트스트림으로부터 복호화하는 단계;
상기 움직임정보에 근거하여 상기 예측 블록 내의 픽셀들을 예측함으로써 상기 예측 블록들을 복원하는 단계;
상기 비트스트림으로부터 잔차 블록을 복원하는 단계; 및
상기 복원된 예측 블록들과 상기 복원된 잔차 블록을 가산함으로써, 상기 부호화 단위를 복원하는 단계를 포함하고,
상기 예측 블록들을 복원하는 단계는,
상기 움직임 정보를 이용하여 상기 예측 블록들 중 복원하고자 하는 예측 블록 내의 제1 예측 픽셀들을 생성하는 단계; 및
상기 복원하고자 하는 예측 블록 내의 제1 예측 픽셀들에 가중치 예측 파라미터(weighted prediction parameter)를 적용하여, 상기 복원하고자 하는 예측 블록 내의 제2 예측 픽셀들을 생성하는 단계를 포함하되,
상기 가중치 예측 파라미터에 대한 정보는 상기 비트스트림으로부터 복호화되고 스케일 인자(scale factor)의 차분값을 포함하며,
상기 제2 예측 픽셀들을 생성하는 단계는, 상기 스케일 인자와 상기 제1 예측 픽셀들을 곱하는 단계를 포함하는 것을 특징으로 하는 영상 복호화 방법.In an image decoding method using inter prediction,
Decoding a bitstream to determine a coding unit divided from a maximum coding unit into a quad tree structure;
Decoding motion information on one or more prediction blocks divided from the coding unit from the bitstream;
Reconstructing the prediction blocks by predicting pixels in the prediction block based on the motion information;
Reconstructing a residual block from the bitstream; And
And reconstructing the encoding unit by adding the reconstructed residual blocks to the reconstructed prediction blocks,
Wherein the step of restoring the prediction blocks comprises:
Generating first prediction pixels in a prediction block to be reconstructed among the prediction blocks using the motion information; And
And generating second prediction pixels in a prediction block to be restored by applying a weighted prediction parameter to first prediction pixels in the prediction block to be restored,
Wherein the information on the weight prediction parameter is decoded from the bitstream and includes a difference value of a scale factor,
Wherein the generating of the second prediction pixels comprises multiplying the scale factor and the first prediction pixels.
상기 부호화 단위의 크기는 상기 최대 부호화 단위의 크기 및 최소 부호화 단위의 크기 사이에서 가변적으로 결정되는 것을 특징으로 하는 영상 복호화 방법.The method according to claim 1,
Wherein the size of the encoding unit is variably determined between the size of the maximum encoding unit and the size of the minimum encoding unit.
상기 부호화 단위가 상기 하나 이상의 예측 단위들로 분할되는 타입은,
상기 부호화 단위가 1:3의 크기 비율을 갖는 두 개의 직사각형 블록으로 분할되는 타입을 포함하는 것을 특징으로 하는 영상 복호화 방법.The method according to claim 1,
Wherein the type of the encoding unit is divided into the one or more prediction units,
Wherein the coding unit is divided into two rectangular blocks having a size ratio of 1: 3.
상기 잔차 블록을 복원하는 단계는,
상기 부호화 단위로부터 쿼드트리 구조로 분할되는 하나 이상의 변환 단위(transform unit)를 식별하는 단계;
각 변환 단위에 해당하는 변환 블록을 변환 및 양자화하는 단계; 및
변환 및 양자화된 변환블록들로부터 상기 부호화 단위에 대한 잔차 블록을 구성하는 단계
를 포함하는 것을 특징으로 하는 영상 복호화 방법.The method according to claim 1,
Wherein the step of restoring the residual block comprises:
Identifying one or more transform units to be divided into the quad-tree structure from the coding unit;
Transforming and quantizing a transform block corresponding to each transform unit; And
And constructing a residual block for the encoding unit from the transformed and quantized transform blocks
And decoding the decoded image.
각 변환 단위의 크기는 상기 부호화 단위 내에서 각 변환 단위마다 가변적으로 결정되는 것을 특징으로 하는 영상 복호화 방법.5. The method of claim 4,
Wherein the size of each conversion unit is variably determined for each conversion unit in the encoding unit.
상기 가중치 예측 파라미터에 대한 정보는 상기 비트스트림으로부터 슬라이스(slice) 단위로 복호화되는 것을 특징으로 하는 영상 복호화 방법.The method according to claim 1,
And information on the weight prediction parameter is decoded in units of slices from the bit stream.
비트스트림을 복호화하여 최대 부호화 단위(coding unit)으로부터 쿼드트리 구조로 분할된 부호화 단위를 결정하는 단계;
상기 부호화 단위로부터 분할된 하나 이상의 예측 블록들에 대한 움직임 정보를 상기 비트스트림으로부터 복호화하는 단계;
상기 움직임정보에 근거하여 상기 예측 블록 내의 픽셀들을 예측함으로써 상기 예측 블록들을 복원하는 단계;
상기 비트스트림으로부터 잔차 블록을 복원하는 단계; 및
상기 복원된 예측 블록들과 상기 복원된 잔차 블록을 가산함으로써, 상기 부호화 단위를 복원하는 단계를 포함하고,
상기 예측 블록들을 복원하는 단계는,
상기 움직임 정보를 이용하여 상기 예측 블록들 중 복원하고자 하는 예측 블록 내의 제1 예측 픽셀들을 생성하는 단계; 및
상기 복원하고자 하는 예측 블록 내의 제1 예측 픽셀들에 가중치 예측 파라미터(weighted prediction parameter)를 적용하여, 상기 복원하고자 하는 예측 블록 내의 제2 예측 픽셀들을 생성하는 단계를 포함하되,
상기 가중치 예측 파라미터에 대한 정보는 상기 비트스트림으로부터 복호화되고 스케일 인자(scale factor)의 차분값 및 오프셋 인자(offset factor)를 포함하고,
상기 제2 예측 픽셀들을 생성하는 단계는,
상기 스케일 인자와 상기 제1 예측 픽셀들을 곱하는 단계; 및
상기 스케일 인자가 곱해진 제1 예측 픽셀들에 상기 오프셋 인자를 가산하는 단계를 포함하는 것을 특징으로 하는 영상 복호화 방법.In an image decoding method using inter prediction,
Decoding a bitstream to determine a coding unit divided from a maximum coding unit into a quad tree structure;
Decoding motion information on one or more prediction blocks divided from the coding unit from the bitstream;
Reconstructing the prediction blocks by predicting pixels in the prediction block based on the motion information;
Reconstructing a residual block from the bitstream; And
And reconstructing the encoding unit by adding the reconstructed residual blocks to the reconstructed prediction blocks,
Wherein the step of restoring the prediction blocks comprises:
Generating first prediction pixels in a prediction block to be reconstructed among the prediction blocks using the motion information; And
And generating second prediction pixels in a prediction block to be restored by applying a weighted prediction parameter to first prediction pixels in the prediction block to be restored,
Wherein the information on the weight prediction parameter is decoded from the bitstream and includes a difference value of a scale factor and an offset factor,
Wherein the generating the second prediction pixels comprises:
Multiplying the scale factor and the first prediction pixels; And
And adding the offset factor to first prediction pixels multiplied by the scale factor.
비트스트림으로부터 가중치 예측 플래그를 복호화하는 단계;
상기 비트스트림을 복호화하여 최대 부호화 단위(coding unit)으로부터 쿼드트리 구조로 분할된 부호화 단위를 결정하는 단계;
상기 부호화 단위로부터 분할된 하나 이상의 예측 블록들에 대한 움직임 정보를 상기 비트스트림으로부터 복호화하는 단계;
상기 움직임정보에 근거하여 상기 예측 블록 내의 픽셀들을 예측함으로써 상기 예측 블록들을 복원하는 단계;
상기 비트스트림으로부터 잔차 블록을 복원하는 단계; 및
상기 복원된 예측 블록들과 상기 복원된 잔차 블록을 가산함으로써, 상기 부호화 단위를 복원하는 단계를 포함하고,
상기 예측 블록들을 복원하는 단계는,
상기 움직임 정보를 이용하여 상기 예측 블록들 중 복원하고자 하는 예측 블록 내의 제1 예측 픽셀들을 생성하는 단계; 및
상기 가중치 예측 플래그가 가중치 예측이 적용됨을 지시할 때, 상기 복원하고자 하는 예측 블록 내의 제1 예측 픽셀들에 가중치 예측 파라미터(weighted prediction parameter)를 적용하여 상기 복원하고자 하는 예측 블록 내의 제2 예측 픽셀들을 생성하는 단계를 포함하되,
상기 가중치 예측 파라미터에 대한 정보는 상기 비트스트림으로부터 복호화되고 스케일 인자(scale factor)의 차분값을 포함하며,
상기 제2 예측 픽셀들을 생성하는 단계는, 상기 스케일 인자와 상기 제1 예측 픽셀들을 곱하는 단계를 포함하는 것을 특징으로 하는 영상 복호화 방법.In an image decoding method using inter prediction,
Decoding a weight prediction flag from the bit stream;
Decoding the bitstream to determine a coding unit divided from a maximum coding unit into a quad-tree structure;
Decoding motion information on one or more prediction blocks divided from the coding unit from the bitstream;
Reconstructing the prediction blocks by predicting pixels in the prediction block based on the motion information;
Reconstructing a residual block from the bitstream; And
And reconstructing the encoding unit by adding the reconstructed residual blocks to the reconstructed prediction blocks,
Wherein the step of restoring the prediction blocks comprises:
Generating first prediction pixels in a prediction block to be reconstructed among the prediction blocks using the motion information; And
When the weight prediction flag indicates that the weight prediction is to be applied, applying a weighted prediction parameter to the first prediction pixels in the prediction block to be restored, Comprising:
Wherein the information on the weight prediction parameter is decoded from the bitstream and includes a difference value of a scale factor,
Wherein the generating of the second prediction pixels comprises multiplying the scale factor and the first prediction pixels.
상기 가중치 예측 플래그는 픽처(picture) 단위로 상기 비트스트림으로부터 복호화되는 것을 특징으로 하는 영상 복호화 방법.9. The method of claim 8,
Wherein the weight prediction flag is decoded from the bit stream in picture units.
상기 스케일 인자의 차분값은 이전 슬라이스의 스케일 인자와의 차분이거나 또는 기결정된 값과의 차분인 것을 특징으로 하는 영상 복호화 방법.
The method according to claim 6,
Wherein the difference value of the scale factor is a difference between the scale factor of the previous slice or a predetermined value.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140075228A KR101768865B1 (en) | 2014-06-19 | 2014-06-19 | Video Coding Method and Apparatus Using Weighted Prediction |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140075228A KR101768865B1 (en) | 2014-06-19 | 2014-06-19 | Video Coding Method and Apparatus Using Weighted Prediction |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140009254A Division KR101456973B1 (en) | 2014-01-24 | 2014-01-24 | Video Coding Method and Apparatus Using Weighted Prediction |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140097056A KR20140097056A (en) | 2014-08-06 |
KR101768865B1 true KR101768865B1 (en) | 2017-08-18 |
Family
ID=51744728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140075228A KR101768865B1 (en) | 2014-06-19 | 2014-06-19 | Video Coding Method and Apparatus Using Weighted Prediction |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101768865B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220385934A1 (en) * | 2019-12-20 | 2022-12-01 | Lg Electronics Inc. | Image/video coding method and apparatus based on inter prediction |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2596496B (en) * | 2015-09-11 | 2022-05-18 | Kt Corp | Method and device for processing video signal |
CN117082237A (en) | 2016-04-29 | 2023-11-17 | 世宗大学校产学协力团 | Method and apparatus for encoding/decoding image signal |
CN109479142B (en) * | 2016-04-29 | 2023-10-13 | 世宗大学校产学协力团 | Method and apparatus for encoding/decoding image signal |
KR101974261B1 (en) | 2016-06-24 | 2019-04-30 | 한국과학기술원 | Encoding method and apparatus comprising convolutional neural network(cnn) based in-loop filter, and decoding method and apparatus comprising convolutional neural network(cnn) based in-loop filter |
WO2017222140A1 (en) * | 2016-06-24 | 2017-12-28 | 한국과학기술원 | Encoding and decoding methods and devices including cnn-based in-loop filter |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006303734A (en) * | 2005-04-18 | 2006-11-02 | Victor Co Of Japan Ltd | Moving picture encoder and program thereof |
-
2014
- 2014-06-19 KR KR1020140075228A patent/KR101768865B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006303734A (en) * | 2005-04-18 | 2006-11-02 | Victor Co Of Japan Ltd | Moving picture encoder and program thereof |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220385934A1 (en) * | 2019-12-20 | 2022-12-01 | Lg Electronics Inc. | Image/video coding method and apparatus based on inter prediction |
US11716484B2 (en) * | 2019-12-20 | 2023-08-01 | Lg Electronics Inc. | Image/video coding method and apparatus based on inter prediction |
Also Published As
Publication number | Publication date |
---|---|
KR20140097056A (en) | 2014-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101418096B1 (en) | Video Coding Method and Apparatus Using Weighted Prediction | |
KR101269116B1 (en) | Decoding method of inter coded moving picture | |
KR101830352B1 (en) | Method and Apparatus Video Encoding and Decoding using Skip Mode | |
KR101943049B1 (en) | Method and Apparatus for Image Encoding/Decoding | |
KR101431545B1 (en) | Method and apparatus for Video encoding and decoding | |
KR101947142B1 (en) | Methods of decoding using skip mode and apparatuses for using the same | |
RU2628212C1 (en) | Video coding device, video decoding device, video coding method and video decoding method | |
KR101768865B1 (en) | Video Coding Method and Apparatus Using Weighted Prediction | |
KR20130067280A (en) | Decoding method of inter coded moving picture | |
KR101432767B1 (en) | Inter Prediction Method and Apparatus Using Motion Information Based Adjacent Pixels and Video Coding Method and Apparatus Using Same | |
KR101943058B1 (en) | Method and Apparatus for Video Encoding/Decoding | |
KR101377529B1 (en) | Video Coding and Decoding Method and Apparatus Using Adaptive Motion Vector Coding/Encoding | |
KR101456973B1 (en) | Video Coding Method and Apparatus Using Weighted Prediction | |
KR101943425B1 (en) | Method and Apparatus for Image Encoding/Decoding using Efficient Non-fixed Quantization | |
KR101537767B1 (en) | Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock | |
KR101483495B1 (en) | Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock | |
KR101524664B1 (en) | Reference Frame Creating Method and Apparatus and Video Encoding/Decoding Method and Apparatus Using Same | |
KR101534014B1 (en) | Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock | |
KR101464949B1 (en) | Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock | |
KR101464944B1 (en) | Video Encoding/Decoding Method and Apparatus Using Arbitrary Pixel in Subblock | |
KR20180090975A (en) | Method and Apparatus for Image Encoding/Decoding | |
KR20110042602A (en) | Video coding method and apparatus by using filtering motion compensation frame | |
KR20150022952A (en) | Reference Frame Creating Method and Apparatus and Video Encoding/Decoding Method and Apparatus Using Same | |
KR20150022953A (en) | Reference Frame Creating Method and Apparatus and Video Encoding/Decoding Method and Apparatus Using Same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |