KR102111437B1 - Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes - Google Patents

Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes Download PDF

Info

Publication number
KR102111437B1
KR102111437B1 KR1020190091430A KR20190091430A KR102111437B1 KR 102111437 B1 KR102111437 B1 KR 102111437B1 KR 1020190091430 A KR1020190091430 A KR 1020190091430A KR 20190091430 A KR20190091430 A KR 20190091430A KR 102111437 B1 KR102111437 B1 KR 102111437B1
Authority
KR
South Korea
Prior art keywords
pixel
quarter
interpolation
unit
quarter pixel
Prior art date
Application number
KR1020190091430A
Other languages
Korean (ko)
Other versions
KR20190091431A (en
Inventor
정제창
이강준
Original Assignee
아이디어허브 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 아이디어허브 주식회사 filed Critical 아이디어허브 주식회사
Priority to KR1020190091430A priority Critical patent/KR102111437B1/en
Publication of KR20190091431A publication Critical patent/KR20190091431A/en
Application granted granted Critical
Publication of KR102111437B1 publication Critical patent/KR102111437B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]

Abstract

본 발명은 1/4 픽셀 해상도의 모션 추정 및 모션 보상에서 사용되는 1/4 픽셀 해상도의 영상 보간 기술에 관한 것이다. 인트라 모드를 이용한 쿼터 픽셀 해상도를 갖는 영상 보간 방법은, 복수의 인트라 모드 중에서 최적의 인트라 모드를 얻는 단계와, 입력 영상을 하프 픽셀 정밀도로 보간하는 단계와, 상기 하프 픽셀 정밀도로 보간된 영상으로부터 쿼터 픽셀 정밀도로 보간하기 전에, 쿼터 픽셀 위치에 대한 모든 주변 픽셀이 이미 복원되어 있으면 상기 쿼터 픽셀 위치를 제2 분류로, 그렇지 않으면 상기 쿼터 픽셀 위치를 제1 분류로 분류하는 분류하는 단계와, 상기 제1 분류에 속하는 쿼터 픽셀 위치에 속하는 쿼터 픽셀을 상기 최적의 인트라 모드와 상관없이 보간하는 단계와, 상기 제2 분류에 속하는 쿼터 픽셀 위치에 속하는 쿼터 픽셀을, 상기 최적의 인트라 모드가 나타내는 방향을 참조하여 보간하는 단계로 이루어진다.The present invention relates to an image interpolation technique of 1/4 pixel resolution used in motion estimation and motion compensation of 1/4 pixel resolution. An image interpolation method having a quarter pixel resolution using an intra mode includes: obtaining an optimal intra mode among a plurality of intra modes, interpolating an input image with half pixel precision, and quarter from an image interpolated with the half pixel precision Prior to interpolation with pixel precision, classifying the quarter pixel position into a second classification if all the neighboring pixels for the quarter pixel position have already been restored, or classifying the quarter pixel position into a first classification; Interpolating the quarter pixel belonging to the quarter pixel position belonging to the first classification regardless of the optimal intra mode, and referring to the direction indicated by the optimal intra mode to the quarter pixel belonging to the quarter pixel position belonging to the second classification. And interpolation.

Description

인트라 모드를 이용한 쿼터 픽셀 해상도를 갖는 영상 보간 방법 및 장치{Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes}Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes

본 발명은 비디오 압축 방법에 관한 것으로, 보다 상세하게는, 1/4 픽셀 해상도의 모션 추정 및 모션 보상에서 사용되는 1/4 픽셀 해상도의 영상 보간 기술에 관한 것이다.The present invention relates to a video compression method, and more particularly, to an image interpolation technique of 1/4 pixel resolution used in motion estimation and motion compensation of 1/4 pixel resolution.

인터넷을 포함한 정보통신 기술이 발달함에 따라 문자, 음성뿐만 아니라 화상통신이 증가하고 있다. 기존의 문자 위주의 통신 방식으로는 소비자의 다양한 욕구를 충족시키기에는 부족하며, 이에 따라 문자, 영상, 음악 등 다양한 형태의 정보를 수용할 수 있는 멀티미디어 서비스가 증가하고 있다. 멀티미디어 데이터는 그 양이 방대하여 대용량의 저장매체를 필요로 하며 전송 시에 넓은 대역폭을 필요로 한다. 따라서 문자, 영상, 오디오를 포함한 멀티미디어 데이터를 전송하기 위해서는 압축코딩기법을 사용하는 것이 필수적이다.With the development of information and communication technologies including the Internet, video communication as well as text and voice are increasing. Conventional text-oriented communication methods are not sufficient to satisfy various needs of consumers, and accordingly, multimedia services capable of accommodating various types of information such as text, video, and music are increasing. The amount of multimedia data is huge, requiring a large-capacity storage medium, and a wide bandwidth when transmitting. Therefore, in order to transmit multimedia data including text, video, and audio, it is essential to use a compression coding technique.

데이터를 압축하는 기본적인 원리는 데이터의 중복(redundancy) 요소를 제거하는 과정이다. 이미지에서 동일한 색이나 객체가 반복되는 것과 같은 공간적 중복이나, 동영상 프레임에서 인접 프레임이 거의 변화가 없는 경우나 오디오에서 같은 음이 계속 반복되는 것과 같은 시간적 중복, 또는 인간의 시각 및 지각 능력이 높은 주파수에 둔감한 것을 고려한 심리시각 중복을 제거함으로써 데이터를 압축할 수 있다.The basic principle of compressing data is to remove the redundancy factor of the data. Spatial redundancy, such as repeating the same color or object in an image, temporal overlapping, such as when the adjacent frames in a video frame change very little or the same sound is repeated in audio, or frequencies with high human visual and perceptive abilities The data can be compressed by removing the psycho-visual duplication considering the insensibility to.

이러한 동영상 압축 기법의 표준화를 위하여, MPEG(Moving Picture Experts Group)-2, MPEG-4, H.264 등 다양한 비디오 코딩 표준들이 등장하고 있다. 도 1에 도시된 바와 같이, 모든 비디오 코딩 기술들은 인접한 비디오 프레임들 간의 시간적 중복성을 제거하기 위하여 블록 모션 추정(block motion estimation)이라는 기법을 채택하고 있다. To standardize the video compression technique, various video coding standards such as Moving Picture Experts Group (MPEG) -2, MPEG-4, and H.264 are emerging. As shown in FIG. 1, all video coding techniques employ a technique called block motion estimation to remove temporal redundancy between adjacent video frames.

예를 들어, 현재 프레임(10) 내의 어떤 블록(12)을 부호화하기 위해서는, 현재 프레임(10)과 다른 시간적 위치에 있는 참조 프레임(15)에서 상기 블록(12)과 매칭되는 블록(17)을 찾는다. 이 후, 현재 프레임(10)의 블록(12)과 참조 프레임(15)의 블록(17) 간의 차분(residual)을 구한 후, 이 차분을 부호화함으로써 부호화 효율을 높이는 것이다. 여기서, 블록들 간의 변위는 모션 벡터로서 표시되며, 모션 벡터에 의하여 참조 프레임(15)에 관한 모션 보상이 이루어진다.For example, in order to encode a certain block 12 in the current frame 10, a block 17 matching the block 12 in the reference frame 15 at a different temporal position from the current frame 10 is used. Find. After that, after obtaining the difference between the block 12 of the current frame 10 and the block 17 of the reference frame 15, the coding efficiency is improved by encoding the difference. Here, the displacement between blocks is indicated as a motion vector, and motion compensation for the reference frame 15 is performed by the motion vector.

이와 같이 모션 보상된 프레임을 예측 영상으로 하여, 원래의 영상으로부터 이를 차분함으로써 코딩될 데이터의 크기를 감소시킬 수 있는 것이다.By using the motion compensated frame as a predictive image, the size of data to be coded can be reduced by differentiating it from the original image.

도 2는 종래의 H.264에 따른 1/4 픽셀 해상도의 영상 보간 방법을 설명하기 위한 도면이다. 도 2에서 x, y의 위치에 있는 총 16개의 픽셀 중에서 회색으로 표시된 픽셀은 정수 픽셀을, 붉은 색으로 표시된 픽셀은 하프 픽셀을, 그리고 노란색 또는 녹색으로 표시된 픽셀은 쿼터 픽셀을 각각 나타낸다.2 is a diagram for explaining a method of interpolating an image with a 1/4 pixel resolution according to a conventional H.264. In FIG. 2, among the total of 16 pixels at the positions of x and y, gray pixels represent integer pixels, red pixels half pixels, and yellow or green pixels indicate quarter pixels.

코딩 효율의 향상을 위하여, H.264의 모션 추정 및 보상은 전술한 바와 같이 1/4 픽셀 해상도에 기초하고 있다. 따라서, 모션 보상 예측을 수행하기 위하여는, 참조 영상은 1/4 픽셀 해상도로 보간되어야 한다. 이러한 과정에서, H.264에서는 6탭의 위너(Wiener) 보간 필터가 사용된다.To improve coding efficiency, motion estimation and compensation of H.264 are based on 1/4 pixel resolution as described above. Therefore, in order to perform motion compensation prediction, the reference image must be interpolated with 1/4 pixel resolution. In this process, a 6-tap Wiener interpolation filter is used in H.264.

상기 보간 과정은, 두 개의 단계로 수행되는데, 도 2를 참조하면, 먼저 제1 단계에서는, B(x, y-2), B(x, y-1), B(x, y), B(x, y+1), B(x, y+2), B(x, y+3)과, H(x-1, x), H(x, y), H(x+1, y), H(x+2, y), H(x+3, y)가 6탭의 위너 필터를 사용하여 계산된다. 그 다음, J(x, y)는 동일한 위너 보간 필터를 사용하여 B(x, y-2), B(x, y-1), B(x, y), B(x, y+1), B(x, y+2), B(x, y+3)을 필터링함으로써 생성된다.The interpolation process is performed in two steps. Referring to FIG. 2, first, in the first step, B (x, y-2), B (x, y-1), B (x, y), B (x, y + 1), B (x, y + 2), B (x, y + 3), H (x-1, x), H (x, y), H (x + 1, y ), H (x + 2, y), H (x + 3, y) are calculated using a 6-tap Wiener filter. Then, J (x, y) is B (x, y-2), B (x, y-1), B (x, y), B (x, y + 1) using the same Wiener interpolation filter. , B (x, y + 2), B (x, y + 3).

A(x, y), C(x, y) 및 I(x, y), K(x, y)는 인접한 정수 픽셀 또는 하프 픽셀 위치의 샘플들을 이용하여 수평으로 보간된다. 그리고, D(x, y), F(x, y), L(x, y), N(x, y)는 수직으로 보간된다. A (x, y), C (x, y) and I (x, y), K (x, y) are horizontally interpolated using samples of adjacent integer pixel or half pixel positions. Then, D (x, y), F (x, y), L (x, y), and N (x, y) are interpolated vertically.

마지막으로, E(x, y), G(x, y), M(x, y), O(x, y)는 대각선 방향으로 보간된다.Finally, E (x, y), G (x, y), M (x, y), and O (x, y) are interpolated diagonally.

이러한 간단한 보간 과정이 H.264에서 사용되기 때문에 계산의 복잡성은 상당히 감소될 수 있는 것이다. 그러나, 상기 참조 영상의 지역적인 특성이 고려되고 있지 않기 때문에, 상기 예측 효율은 감소될 수밖에 없다. Since this simple interpolation process is used in H.264, the computational complexity can be significantly reduced. However, since the local characteristics of the reference image are not considered, the prediction efficiency is inevitably reduced.

따라서, 본 발명은 4x4 인트라 예측으로부터의 정보에 기초하여 적응적인 보간 기술을 제안하고자 한다. 따라서, 본 발명은 최적의 인트라 모드가 픽셀들 간의 방향성과 매우 높은 연관성을 가질 가능성이 높다는 가정을 바탕으로 한다.Accordingly, the present invention intends to propose an adaptive interpolation technique based on information from 4x4 intra prediction. Therefore, the present invention is based on the assumption that the optimal intra mode is highly likely to have a very high association with the directionality between pixels.

본 발명은 상기한 필요성을 감안하여 창안된 것으로, 보다 높은 정확성을 가지면서도 연산량을 그다지 증가시키지 않는 1/4 픽셀 해상도의 모션 보간 방법 및 장치를 제공하는 것을 목적으로 한다.The present invention was devised in view of the above-described need, and an object of the present invention is to provide a method and apparatus for motion interpolation with 1/4 pixel resolution that does not significantly increase a computation amount while having higher accuracy.

본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The technical problems of the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the following description.

상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 인트라 모드를 이용한 쿼터 픽셀 해상도를 갖는 영상 보간 방법은, (a) 복수의 인트라 모드 중에서 최적의 인트라 모드를 얻는 단계; (b) 입력 영상을 하프 픽셀 정밀도로 보간하는 단계; (c) 상기 하프 픽셀 정밀도로 보간된 영상으로부터 쿼터 픽셀 정밀도로 보간하기 전에, 쿼터 픽셀 위치에 대한 모든 주변 픽셀이 이미 복원되어 있으면 상기 쿼터 픽셀 위치를 제2 분류로, 그렇지 않으면 상기 쿼터 픽셀 위치를 제1 분류로 분류하는 분류하는 단계; (d) 상기 제1 분류에 속하는 쿼터 픽셀 위치에 속하는 쿼터 픽셀을 상기 최적의 인트라 모드와 상관없이 보간하는 단계; 및 (e) 상기 제2 분류에 속하는 쿼터 픽셀 위치에 속하는 쿼터 픽셀을, 상기 최적의 인트라 모드가 나타내는 방향을 참조하여 보간하는 단계를 포함한다.An image interpolation method having a quarter pixel resolution using an intra mode according to an embodiment of the present invention for achieving the above technical problem includes: (a) obtaining an optimal intra mode among a plurality of intra modes; (b) interpolating the input image with half pixel precision; (c) before interpolation with the quarter pixel precision from the image interpolated with the half pixel precision, if all the surrounding pixels for the quarter pixel position have already been restored, the quarter pixel position is classified into a second classification, otherwise the quarter pixel position is Classifying the first classification; (d) interpolating the quarter pixel belonging to the quarter pixel position belonging to the first classification regardless of the optimal intra mode; And (e) interpolating the quarter pixel belonging to the quarter pixel position belonging to the second classification with reference to a direction indicated by the optimal intra mode.

상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 인트라 모드를 이용한 쿼터 픽셀 해상도를 갖는 영상 보간 장치는, 복수의 인트라 모드 중에서 최적의 인트라 모드를 얻는 인트라 예측부; 입력 영상을 하프 픽셀 정밀도로 보간하는 하프 픽셀 보간부; 상기 하프 픽셀 정밀도로 보간된 영상으로부터 쿼터 픽셀 정밀도로 보간하기 전에, 쿼터 픽셀 위치에 대한 모든 주변 픽셀이 이미 복원되어 있으면 상기 쿼터 픽셀 위치를 제2 분류로, 그렇지 않으면 상기 쿼터 픽셀 위치를 제1 분류로 분류하는 분류하는 쿼터 픽셀 분류부; 상기 제1 분류에 속하는 쿼터 픽셀 위치에 속하는 쿼터 픽셀을 상기 최적의 인트라 모드와 상관없이 보간하는 제1 보간부; 및 상기 제2 분류에 속하는 쿼터 픽셀 위치에 속하는 쿼터 픽셀을, 상기 최적의 인트라 모드가 나타내는 방향을 참조하여 보간하는 제2 보간부를 포함한다.An image interpolation apparatus having a quarter pixel resolution using an intra mode according to an embodiment of the present invention for achieving the above technical problem includes: an intra prediction unit to obtain an optimal intra mode among a plurality of intra modes; A half pixel interpolator for interpolating the input image with half pixel precision; Before interpolation with the quarter pixel precision from the image interpolated with the half pixel precision, if all the surrounding pixels for the quarter pixel position have already been restored, the quarter pixel position is classified into the second classification, otherwise the quarter pixel position is classified into the first classification. Quarter pixel classifier to classify as; A first interpolation unit for interpolating quarter pixels belonging to the quarter pixel positions belonging to the first classification regardless of the optimal intra mode; And a second interpolation unit for interpolating the quarter pixel belonging to the quarter pixel position belonging to the second classification with reference to a direction indicated by the optimal intra mode.

본 발명에 따르면, 이미 구해져 있는 인트라 모드를 그대로 이용하기 때문에, 종래의 H.264에서의 쿼터 픽셀 해상도의 모션 보간 기법에 비하여, 연산량을 그다지 증가시키지 않으면서도 보다 높은 정확성을 갖는 쿼터 픽셀 해상도의 모션 보간이 가능하게 된다.According to the present invention, since the already obtained intra mode is used as it is, compared with the conventional motion interpolation technique of quarter pixel resolution in H.264, it is possible to achieve higher accuracy of quarter pixel resolution without significantly increasing the amount of computation. Motion interpolation becomes possible.

도 1은 통상의 블록 모션 추정의 개념을 보여주는 도면.
도 2는 종래의 H.264에 따른 1/4 픽셀 해상도의 영상 보간 방법을 설명하기 위한 도면.
도 3은 본 발명의 일 실시예에 따른 쿼터 픽셀 해상도의 영상 보간 장치를 도시하는 블록도.
도 4는 H.264의 9개의 인트라 모드를 보여주는 도면.
도 5는 제2 분류에 속하는 쿼터 픽셀 및 그 주변 픽셀들을 보여주는 도면.
도 6은 본 발명의 일 실시예에 따른 비디오 인코더의 구성을 도시한 블록도.
도 7은 본 발명의 일 실시예에 따른 비디오 디코더의 구성을 도시한 블록도.
1 is a diagram showing the concept of a conventional block motion estimation.
2 is a diagram for explaining a method of interpolating a picture with a 1/4 pixel resolution according to a conventional H.264.
FIG. 3 is a block diagram showing an image interpolation apparatus with quarter pixel resolution according to an embodiment of the present invention.
4 is a diagram showing nine intra modes of H.264.
5 is a diagram showing a quarter pixel belonging to the second classification and its surrounding pixels.
6 is a block diagram showing the configuration of a video encoder according to an embodiment of the present invention.
7 is a block diagram showing the configuration of a video decoder according to an embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. Advantages and features of the present invention, and methods for achieving them will be clarified with reference to embodiments described below in detail together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but will be implemented in various different forms, and only the embodiments allow the disclosure of the present invention to be complete, and the ordinary knowledge in the technical field to which the present invention pertains. It is provided to fully inform the holder of the scope of the invention, and the invention is only defined by the scope of the claims. The same reference numerals refer to the same components throughout the specification.

도 3은 본 발명의 일 실시예에 따른 쿼터 픽셀 해상도의 영상 보간 장치(100)를 도시하는 블록도이다. 영상 보간 장치(100)는 인트라 예측부(105), 하프 픽셀 보간부(110), 쿼터 픽셀 분류부(120), 제1 보간부(130), 제2 보간부(140) 및 픽셀 버퍼(150)를 포함하여 구성될 수 있다.3 is a block diagram illustrating an image interpolation apparatus 100 with quarter pixel resolution according to an embodiment of the present invention. The image interpolation apparatus 100 includes an intra prediction unit 105, a half pixel interpolation unit 110, a quarter pixel classification unit 120, a first interpolation unit 130, a second interpolation unit 140, and a pixel buffer 150 ).

인트라 예측부(105)는 현재 블록에 대한 최적의 방향적 인트라 모드(이하, 인트라 모드라고 함)를 예측한다. 구체적으로 최적의 인트라 모드는 율-왜곡(rate-distortion)에 기반하여 수학식 1과 같은 비용 함수(C)에 기초하여 계산될 수 있다. 여기서, E는 부호화된 비트를 디코딩하여 복원된 신호와 원 신호와의 차이를 의미하고, B는 각각의 코딩에 있어서 소요되는 비트량을 의미한다. 또한, λ는 라그랑지안 계수로서 E와 B의 반영 비율을 조절할 수 있는 계수를 의미한다.The intra prediction unit 105 predicts an optimal directional intra mode (hereinafter referred to as an intra mode) for the current block. Specifically, the optimal intra mode may be calculated based on a cost function (C) such as Equation 1 based on rate-distortion. Here, E denotes the difference between the reconstructed signal and the original signal by decoding the coded bits, and B denotes the amount of bits required for each coding. In addition, λ is a Lagrangian coefficient, which means a coefficient capable of adjusting the reflection ratios of E and B.

[수학식 1][Equation 1]

C = E + λ×BC = E + λ × B

H.264에서는 인트라 모드는 도 4와 같은 총 9개의 모드가 존재한다. 즉, 현재 블록에 인접한 픽셀들(A 내지 M의 최대 13개의 픽셀)로부터 다양한 인트라 모드로 예측을 수행하여 상기 비용 함수를 구한 후, 상기 비용 함수가 최소로 되는 인트라 모드를 상기 현재 블록의 인트라 모드로 결정하는 것이다. 이와 같이 결정된 인트라 모드는 대응되는 방향으로 픽셀들 간의 연관성이 가장 높다는 것을 말해준다. 예를 들어, 모드 0의 경우에는 수직 방향으로 픽셀들 간의 연관성이 가장 높다는 것을 의미한다.In H.264, there are a total of nine modes of intra mode as shown in FIG. 4. That is, after obtaining the cost function by performing prediction in various intra modes from pixels adjacent to the current block (up to 13 pixels of A to M), the intra mode in which the cost function is minimized is the intra mode of the current block Is to decide. The intra mode determined as described above indicates that the association between pixels in the corresponding direction is highest. For example, in the case of mode 0, it means that the association between pixels in the vertical direction is highest.

이와 같이, 비디오 인코더에서 영상 보간을 수행하는 경우라면 이와 같이 최적의 인트라 모드를 계산하여야 하지만, 비디오 디코더에서 영상 보간을 수행하는 경우라면 별도의 인트라 모드 계산은 불필요하고, 비디오 인코더로부터 제공된 인트라 모드 정보를 이용하면 된다.As described above, if the video encoder performs image interpolation, the optimal intra mode should be calculated as described above. However, if the video decoder performs image interpolation, separate intra mode calculation is unnecessary, and intra mode information provided from the video encoder You can use

하프 픽셀 보간부(110)는 정수 픽셀 해상도를 갖는 입력 영상을 하프 픽셀 해상도를 갖는 영상으로 보간한다. 이러한 보간은 도 2에서 회색의 정수픽셀로부터 붉은 색의 하프 픽셀을 보간하는 과정으로서 종래의 H.264에서와 동일한 6탭의 위너 필터를 사용하여도 무방하다.The half pixel interpolation unit 110 interpolates an input image having an integer pixel resolution to an image having a half pixel resolution. This interpolation is a process of interpolating a red half pixel from a gray integer pixel in FIG. 2, and the same 6-tap Wiener filter may be used as in conventional H.264.

쿼터 픽셀 분류부(120)는 쿼터 픽셀 해상도로 보간을 수행하기 이전에 쿼터 픽셀들의 종류(위치)에 따라서 제1 분류에 속하는 쿼터 픽셀과 제2 분류에 속하는 쿼터 픽셀로 분류한다. 상기 제1 분류에 속하는 쿼터 픽셀 위치는 제1 보간부(130)에 제공되고 상기 제2 분류에 속하는 쿼터 픽셀 위치는 제2 보간부(140)에 제공된다.The quarter pixel classifying unit 120 classifies the quarter pixel belonging to the first classification and the quarter pixel belonging to the second classification according to the type (position) of the quarter pixels before performing interpolation with the quarter pixel resolution. The quarter pixel position belonging to the first classification is provided to the first interpolation unit 130, and the quarter pixel position belonging to the second classification is provided to the second interpolation unit 140.

상기 제1 분류는 해당 쿼터 픽셀을 둘러싼 주변 픽셀들(예: 8개의 픽셀) 중에 복원되지 않는 픽셀이 존재하는 경우를 나타내고, 상기 제2 분류는 해당 쿼터 픽셀을 둘러싼 상기 주변 픽셀들이 모두 복원되어 있는 경우를 나타낸다.The first classification represents a case in which non-reconstructed pixels exist among surrounding pixels (for example, 8 pixels) surrounding the corresponding quarter pixel, and the second classification includes all the surrounding pixels surrounding the corresponding quarter pixel are reconstructed. Case.

제1 보간부(130)는 상기 제1 분류에 속하는 쿼터 픽셀 위치를 참조하여, 상기 제1 분류에 속하는 쿼터 픽셀을 종래의 방식에 따라 보간한다. 도 2를 참조하면, 쿼터 픽셀들(전술한 바와 같이 노란색 또는 녹색으로 표시된 픽셀들) 중에서 노란색으로 표시된 픽셀들, 즉 A(x, y), C(x, y), D(x, y), F(x, y), I(x, y), K(x, y), L(x, y) 및 N(x, y)는 그 픽셀들을 보간하기 전에 주변의 8개의 픽셀이 모두 복원되어 있지 않으므로, 본 발명에서 제안하는 인트라 모드를 적용하기가 용이하지 않다. 따라서, 이러한 픽셀들에 대해서는 예를 들어, 종래의 H.264에서와 마찬가지의 방식으로 보간을 수행하는 것이다.The first interpolation unit 130 interpolates the quarter pixels belonging to the first classification according to a conventional method by referring to the position of the quarter pixels belonging to the first classification. Referring to FIG. 2, among the quarter pixels (pixels indicated in yellow or green as described above), pixels indicated in yellow, that is, A (x, y), C (x, y), D (x, y) , F (x, y), I (x, y), K (x, y), L (x, y) and N (x, y) all 8 pixels around are reconstructed before interpolating them. Since it is not, it is not easy to apply the intra mode proposed in the present invention. Therefore, for these pixels, interpolation is performed in the same manner as in the conventional H.264, for example.

즉, A(x, y), C(x, y) 및 I(x, y), K(x, y)는 인접한 정수 픽셀 또는 하프 픽셀 위치의 샘플들을 이용하여 수평으로 보간되고, D(x, y), F(x, y), L(x, y), N(x, y)는 인접한 정수 픽셀 또는 하프 픽셀 위치의 샘플들을 이용하여 수직으로 보간된다.That is, A (x, y), C (x, y) and I (x, y), K (x, y) are horizontally interpolated using samples of adjacent integer pixel or half pixel positions, and D (x , y), F (x, y), L (x, y), and N (x, y) are vertically interpolated using samples of adjacent integer pixel or half pixel positions.

한편, 제2 보간부(140)는 상기 제2 분류에 속하는 쿼터 픽셀 위치를 참조하여, 상기 제2 분류에 속하는 쿼터 픽셀을 이미 계산된 인트라 모드에 따른 방향성을 고려하여 보간한다. 예를 들어, 도 2에서 녹색으로 표시된 픽셀인 E(x, y), G(x, y), M(x, y) 및 O(x, y)는 이미 주변의 9개의 픽셀이 모두 복원되어 있기 때문에, 방향성을 고려한 보간이 가능하다. 이러한 제2 분류에 속하는 쿼터 픽셀의 위치는 하나의 정수 픽셀을 기준으로 보면 상기 정수 픽셀의 4개의 모서리 위치에 있는 주변 픽셀의 위치라고도 볼 수 있다.On the other hand, the second interpolation unit 140 interpolates the quarter pixels belonging to the second classification in consideration of the directionality according to the already calculated intra mode by referring to the position of the quarter pixels belonging to the second classification. For example, in FIG. 2, the green pixels E (x, y), G (x, y), M (x, y), and O (x, y) have already been restored to all nine pixels Therefore, interpolation considering directionality is possible. The position of the quarter pixel belonging to the second classification can be regarded as the position of the surrounding pixels at the four corner positions of the integer pixel based on one integer pixel.

그런데, 비디오 인코더의 경우에는 특정 픽셀이 인터 매크로블록에 속하든지 인트라 매크로블록에 속하든지 상관없이 최적의 인트라 모드가 계산되므로 상기 계산된 정보를 항상 이용할 수 있지만, 비디오 디코더의 경우에는 특정 픽셀이 인트라 매크로블록에 속하는 경우에만 이와 같은 방향성을 고려한 보간이 가능함은 물론이다.However, in the case of a video encoder, since the optimal intra mode is calculated regardless of whether a specific pixel belongs to an inter macroblock or an intra macroblock, the calculated information can be always used, but in the case of a video decoder, a specific pixel is intra Of course, interpolation considering such directionality is possible only when it belongs to a macroblock.

구체적으로 제2 분류에 속하는 쿼터 픽셀을 보간하는 구체적인 방법은 도 5를 참조하여 설명된다.Specifically, a specific method of interpolating the quarter pixels belonging to the second classification is described with reference to FIG. 5.

도 5에서 보간하고자 하는 쿼터 픽셀 중에서 E(x, y)의 주변에는 총 8개의 픽셀들이 둘러싸고 있다. 이 때, 만약, x, y의 위치에 있는 정수 픽셀, 즉 P(x, y)의 인트라 모드를 P_mode(x,y)라고 표시한다면, 쿼터 픽셀 E(x, y)는 다음의 표 1과 같은 의사 코드에 의하여 보간될 수 있다.In FIG. 5, a total of 8 pixels surround E (x, y) among the quarter pixels to be interpolated. At this time, if the integer mode at the position of x, y, i.e., the intra mode of P (x, y) is expressed as P_mode (x, y), the quarter pixel E (x, y) is shown in Table 1 below. It can be interpolated by the same pseudo code.

If(P_mode(x,y)=1, 6 or 8)
E(x,y) = [D(x,y)+F(x,y)]/2
Else If(P_mode(x,y)=0, 5 or 7)
E(x,y) = [A(x,y)+I(x,y)]/2
Else If(P_mode(x,y)=4)
E(x,y) = [P(x,y)+J(x,y)]/2
Else If(P_mode(x,y)=3)
E(x,y) = [B(x,y)+H(x,y)]/2
Else
E(x,y) = [A(x,y)+D(x,y)+F(x,y)+I(x,y)]/4
If (P_mode (x, y) = 1, 6 or 8)
E (x, y) = [D (x, y) + F (x, y)] / 2
Else If (P_mode (x, y) = 0, 5 or 7)
E (x, y) = [A (x, y) + I (x, y)] / 2
Else If (P_mode (x, y) = 4)
E (x, y) = [P (x, y) + J (x, y)] / 2
Else If (P_mode (x, y) = 3)
E (x, y) = [B (x, y) + H (x, y)] / 2
Else
E (x, y) = [A (x, y) + D (x, y) + F (x, y) + I (x, y)] / 4

즉, 인트라 모드가 1(horizontal), 6(horizontal down) 또는 8(horizontal up)인 경우에는 픽셀들 간에는 수평 방향으로 연관성이 높다고 볼 수 있으므로, 주변 픽셀들 중에서 좌우의 픽셀들의 평균에 의하여 현재 쿼터 픽셀을 보간한다.인트라 모드가 0(vertical), 5(vertical right) 또는 7(vertical left)인 경우에는 픽셀들 간에는 수직 방향으로 연관성이 높다고 볼 수 있으므로 주변 픽셀들 중에서 상하의 픽셀들의 평균에 의하여 현재 쿼터 픽셀을 보간한다.That is, when the intra mode is 1 (horizontal), 6 (horizontal down), or 8 (horizontal up), it can be considered that there is a high correlation in the horizontal direction between pixels, and thus the current quarter is based on the average of the left and right pixels among the surrounding pixels. Interpolate pixels.In case of intra mode of 0 (vertical), 5 (vertical right) or 7 (vertical left), it can be considered that there is a high correlation in the vertical direction between pixels. Interpolate quarter pixels.

인트라 모드가 4(diagonal down-right)인 경우에는 픽셀들 간에는 우하 대각선 방향으로 연관성이 높다고 볼 수 있으므로 주변 픽셀들 중에서 좌상 및 우하의 픽셀 간의 평균에 의하여 현재 쿼터 픽셀을 보간한다.When the intra mode is 4 (diagonal down-right), it can be considered that there is a high correlation between the pixels in the lower right and the diagonal directions, so that the current quarter pixel is interpolated by the average between the upper left and lower right pixels among the surrounding pixels.

인트라 모드가 3(diagonal down-left)인 경우에는 픽셀들 간에는 수평 방향으로 연관성이 높다고 볼 수 있으므로 주변 픽셀들 중에서 우상 및 좌하의 픽셀 간의 평균에 의하여 현재 쿼터 픽셀을 보간한다.When the intra mode is 3 (diagonal down-left), it can be considered that there is a high correlation in the horizontal direction between pixels, and thus the current quarter pixel is interpolated by the average between the upper right and lower left pixels among the surrounding pixels.

그 이외 경우, 즉 인트라 모드가 2(DC)인 경우에는 픽셀들 간에는 방향성이 없다고 볼 수 있으므로 현재 쿼터 픽셀에 가장 근접한 4개의 픽셀의 평균에 의하여 현재 쿼터 픽셀을 보간한다.In other cases, that is, when the intra mode is 2 (DC), since there is no directionality between pixels, the current quarter pixel is interpolated by the average of the four pixels closest to the current quarter pixel.

이상에서는 E(x,y)의 보간에 대하여 설명하였지만, 나머지 G(x, y), M(x, y) 및 O(x, y)도 동일한 방식으로 주변의 8개의 픽셀들로부터 보간될 수 있음은 물론이다.Although the interpolation of E (x, y) has been described above, the remaining G (x, y), M (x, y) and O (x, y) can also be interpolated from the surrounding 8 pixels in the same manner. Yes, of course.

마지막으로 픽셀 버퍼(150)는 원래의 입력 영상으로부터 얻어지는 정수 픽셀, 하프 픽셀 보간부(110)로부터 얻어지는 하프 픽셀 및 제1 보간부(130)와 제2 보간부(140)로부터 얻어지는 쿼터 픽셀을 조합하여 쿼터 픽셀 해상도를 갖는 보간된 영상을 생성한다.Finally, the pixel buffer 150 combines integer pixels obtained from the original input image, half pixels obtained from the half pixel interpolation unit 110, and quarter pixels obtained from the first interpolation unit 130 and the second interpolation unit 140. To generate an interpolated image with quarter pixel resolution.

다음의 도 6 및 7은 본 발명에 따른 쿼터 픽셀 보간 방법이 적용될 수 있는 실질적인 환경에 대해서 설명하기 위한 도면이다. 이 중에서 도 6은 비디오 인코더에 관한 블록도이고, 도 7은 비디오 디코더에 관한 블록도이다.6 and 7 are diagrams for explaining a practical environment to which the quarter pixel interpolation method according to the present invention can be applied. Among them, FIG. 6 is a block diagram of a video encoder, and FIG. 7 is a block diagram of a video decoder.

도 6은 본 발명의 일 실시예에 따른 비디오 인코더(200)의 구성을 도시한 블록도이다.6 is a block diagram showing the configuration of a video encoder 200 according to an embodiment of the present invention.

비디오 인코더(200)는 인트라 예측부(210), 공간적 변환부(220), 양자화부(230), 엔트로피 부호화부(240), 모션 추정부(250), 모션 보상부(260), 선택부(280), 역 양자화부(271), 역 공간적 변환부(272), 인트라 복원부(273)와 본 발명의 일 실시예에 따른 영상 보간 장치(100)를 포함하여 구성될 수 있다.The video encoder 200 includes an intra prediction unit 210, a spatial transformation unit 220, a quantization unit 230, an entropy encoding unit 240, a motion estimation unit 250, a motion compensation unit 260, and a selection unit ( 280), an inverse quantization unit 271, an inverse spatial transform unit 272, an intra reconstruction unit 273, and an image interpolation apparatus 100 according to an embodiment of the present invention.

선택부(280)는 인트라 예측 및 인터 예측 중에서 유리한 예측 방법을 선택한다. 통상 이러한 선택은 매크로블록 단위로 이루어진다. 선택부(280)는 두 가지 예측 방법에 실제 부호화를 수행하여 그 비용(cost)이 더 낮은 예측 방법을 선택하게 된다. 여기서, 비용(C)은 여러 가지 방식으로 정의될 수 있는데, 대표적으로 전술한 율-왜곡에 기반한 비용 함수로 정의될 수 있다.The selector 280 selects an advantageous prediction method from intra prediction and inter prediction. Usually this selection is made on a macroblock basis. The selector 280 performs actual encoding on two prediction methods to select a prediction method having a lower cost. Here, the cost (C) can be defined in a number of ways, typically it can be defined as a cost function based on the rate-distortion described above.

인트라 예측부(210)는 첫 번째 단계로, 9개의 인트라 모드 중에서 현재 블록(예: 4x4 블록)에 대한 최적의 인트라 모드를 결정한다. 이러한 인트라 모드의 결정 또한 전술한 율-왜곡 비용의 관점에서 결정될 수 있다. 인트라 예측부(210)는 결정된 인트라 모드에 의하여 예측 블록을 생성하고, 현재 블록을 상기 예측 블록과 차분하여 얻어지는 잔차 블록(residual block)을 얻는다.The intra prediction unit 210 determines the optimal intra mode for the current block (eg, 4x4 block) among 9 intra modes as the first step. The determination of the intra mode can also be determined in view of the rate-distortion cost described above. The intra prediction unit 210 generates a prediction block according to the determined intra mode, and obtains a residual block obtained by differentiating the current block from the prediction block.

상기 잔차 블록은 DCT 등과 같은 공간적 변환을 수행하기 위하여 공간적 변환부(220)에 제공한다.The residual block is provided to the spatial transformation unit 220 to perform spatial transformation such as DCT.

한편, 이러한 인트라 예측과 상보적으로 사용되는 인터 예측과 관련된 동작에 있어서 영상 보간 장치(100)가 사용될 수 있다.Meanwhile, the image interpolation apparatus 100 may be used in operations related to intra prediction and inter prediction used as complementary.

모션 추정부(250)는 입력 비디오 프레임 중에서, 참조 프레임을 기준으로 현재 프레임의 모션 추정을 수행하고 모션 벡터를 구한다. 이러한 움직임 추정을 위해 널리 사용되는 알고리즘은 블록 매칭(block matching) 알고리즘이다. 그런데, H.264와 같은 표준 코덱에서는 쿼터 픽셀 해상도의 모션 추정을 수행하기 때문에 현재 프레임의 블록과 참조 프레임의 탐색 영역은 각각 쿼터 픽셀 해상도로 보간되어야 한다. 영상 보간 장치(100)는 도 3의 실시예에서와 같은 방식으로 이러한 쿼터 픽셀 해상도의 보간을 수행한다. 물론, 도 6과 같이 비디오 인코더(200)에 별도의 인트라 예측부(210)가 구비되어 있는 경우에는 도 3의 인트라 예측부(105)는 생략될 수 있다. 모션 추정부(250)는 모션 추정 결과 구해지는 모션 벡터, 모션 블록의 크기, 참조 프레임 번호 등의 모션 데이터를 엔트로피 부호화부(240)에 제공한다.The motion estimator 250 performs motion estimation of a current frame based on a reference frame among input video frames, and obtains a motion vector. A widely used algorithm for motion estimation is a block matching algorithm. However, in a standard codec such as H.264, motion estimation with quarter pixel resolution is performed, so that the search area of the block of the current frame and the reference frame must be interpolated with the quarter pixel resolution, respectively. The image interpolation apparatus 100 performs interpolation of the quarter pixel resolution in the same manner as in the embodiment of FIG. 3. Of course, if the video encoder 200 has a separate intra prediction unit 210 as shown in FIG. 6, the intra prediction unit 105 of FIG. 3 may be omitted. The motion estimation unit 250 provides motion data, such as a motion vector, a motion block size, and a reference frame number, obtained as a result of motion estimation, to the entropy encoding unit 240.

모션 보상부(260)는 상기 입력 비디오 프레임의 시간적 중복성을 감소시킨다. 이 경우 모션 보상부(260)는 상기 모션 추정부(250)에서 계산된 모션 벡터를 이용하여 참조 프레임에 대하여 모션 보상(motion compensation)을 수행함으로써 현재 프레임에 대한 인터 예측 프레임을 생성한다. H.264에서는 상기 모션 보상 과정에 있어서도 쿼터 픽셀 해상도의 보간을 필요로 한다. 따라서, 영상 보간 장치(100)는 모션 보상 과정에서도 마찬가지로 쿼터 픽셀 해상도의 보간을 수행할 수 있다. 물론, 모션 추정과 보상을 단일의 과정(즉, 모션 추정에서 보간된 영상을 메모리에 저장하고 모션 보상시 이를 읽어와서 사용하는 방식)으로 처리하는 경우에는 모션 보상에 있어서 별도의 보간은 불필요할 수도 있다.The motion compensation unit 260 reduces temporal redundancy of the input video frame. In this case, the motion compensation unit 260 generates an inter prediction frame for the current frame by performing motion compensation on the reference frame using the motion vector calculated by the motion estimation unit 250. In H.264, interpolation of quarter pixel resolution is also required in the motion compensation process. Accordingly, the image interpolation apparatus 100 may perform interpolation with quarter pixel resolution in the motion compensation process as well. Of course, in the case of processing motion estimation and compensation in a single process (ie, the method that stores the image interpolated in motion estimation in memory and uses it when reading motion compensation), additional interpolation may not be necessary in motion compensation. have.

차분기(215)는 현재 프레임과 상기 인터 예측 프레임을 차분함으로써 비디오의 시간적 중복성을 제거한다. 차분기(215)에서의 출력, 즉 인터 예측에서의 잔차 블록은 공간적 변환부(220)에 제공된다.The difference 215 removes temporal redundancy of video by differentiating the current frame from the inter prediction frame. The output from the difference 215, that is, the residual block in inter prediction is provided to the spatial transform unit 220.

공간적 변환부(220)는 인트라 예측부(210) 또는 차분기(215)로부터 제공된 잔차 블록에 대하여, 공간적 변환법을 사용하여 공간적 중복성를 제거한다. 이러한 공간적 변환법으로는 주로 DCT(Discrete Cosine Transform)가 사용되는데, 공간적 변환 결과 구해지는 계수들을 변환 계수라고 한다.The spatial transform unit 220 removes spatial redundancy using a spatial transform method on the residual block provided from the intra prediction unit 210 or the difference 215. DCT (Discrete Cosine Transform) is mainly used as the spatial transformation method, and the coefficients obtained as a result of the spatial transformation are called transform coefficients.

양자화부(230)는 공간적 변환부(220)에서 구한 변환 계수를 양자화한다. 양자화(quantization)란 임의의 실수 값으로 표현되는 상기 변환 계수를 일정 구간으로 나누어 불연속적인 값(discrete value)으로 나타내고, 이를 소정의 인덱스로 매칭(matching)시키는 작업을 의미한다.The quantization unit 230 quantizes the transform coefficients obtained by the spatial transform unit 220. Quantization refers to an operation of dividing the transform coefficient represented by an arbitrary real value into a certain section and displaying it as a discrete value, and matching it with a predetermined index.

엔트로피 부호화부(240)는 양자화부(230)에 의하여 양자화된 변환 계수와, 모션 추정부(250)에 의하여 제공되는 모션 데이터 또는 인트라 예측부(210)로부터 제공되는 인트라 모드를 무손실 부호화하고 비트스트림을 생성한다. 이러한 무손실 부호화 방법으로는, 산술 부호화(arithmetic coding), 가변 길이 부호화(variable length coding), 허프만 부호화 등이 사용될 수 있다.The entropy encoding unit 240 losslessly encodes the transform coefficients quantized by the quantization unit 230 and the motion data provided by the motion estimation unit 250 or the intra mode provided by the intra prediction unit 210 and bitstreams Produces Arithmetic coding, variable length coding, Huffman coding, etc. may be used as the lossless coding method.

한편, 비디오 인코더(200)가 인코더 단과 디코더 단 간의 드리프팅 에러(drifting error)를 감소하기 위해서 통상 폐루프 비디오 인코딩(closed-loop video encoding) 기법을 사용한다. 이를 위해서는, 역양자화부(271), 역 공간적 변환부(272), 인트라 복원부(273) 등이 더 구비되어야 한다.On the other hand, the video encoder 200 usually uses a closed-loop video encoding technique to reduce drifting errors between the encoder stage and the decoder stage. To this end, an inverse quantization unit 271, an inverse spatial conversion unit 272, an intra restoration unit 273, and the like should be further provided.

역 양자화부(271)는 양자화부(230)에서 양자화된 계수를 역 양자화한다. 이러한 역 양자화 과정은 양자화 과정의 역에 해당되는 과정이다. 역 공간적 변환부(272)는 상기 역양자화 결과를 역 공간적 변환하고 이를 가산기(225) 또는 인트라 복원부(273)에 제공한다. 이 경우, 상기 역 공간적 변환된 결과 복원되는 잔차 영상은 원래 인트라 예측에 의하여 생성된 프레임이면 인트라 복원부(273)에 제공하고, 인터 예측에 의하여 생성된 영상이면 가산기(225)에 제공한다.The inverse quantization unit 271 inverse quantizes the coefficients quantized by the quantization unit 230. This inverse quantization process is a process corresponding to the inverse of the quantization process. The inverse spatial transform unit 272 inversely transforms the inverse quantization result and provides it to the adder 225 or the intra restoration unit 273. In this case, the residual image reconstructed as a result of the inverse spatial transformation is provided to the intra reconstructor 273 if the frame is originally generated by intra prediction, and is provided to the adder 225 if the image is generated by inter prediction.

가산기(225)는 역 공간적 변환부(272)로부터 제공되는 잔차 영상과, 모션 보상부(260)로부터 제공되어 프레임 버퍼(미도시됨)에 저장된 이전 프레임을 가산하여 비디오 프레임을 복원하고, 복원된 비디오 프레임을 모션 추정부(250)에 참조 프레임으로서 제공한다.The adder 225 reconstructs the video frame by adding the residual image provided from the inverse spatial transform unit 272 and the previous frame provided from the motion compensation unit 260 and stored in the frame buffer (not shown), and reconstructed The video frame is provided to the motion estimation unit 250 as a reference frame.

인트라 복원부(273)는 상기 잔차 영상을 구성하는 잔차 블록과, 인트라 모드의 값을 이용하여, 주변에 기 생성된 블록으로부터 얻어지는 예측 블록으로부터 현재 블록을 복원한다. 현재 블록은 간단히 잔차 블록과 예측 블록의 합에 의하여 복원될 수 있는데, 상기 예측 블록을 구할 때 인트라 모드의 값이 이용되는 것이다. 결정된 인트라 모드를 기준으로 예측 블록을 구하는 과정은 인트라 예측부(210)에서와 동일하다.The intra reconstruction unit 273 reconstructs the current block from the prediction block obtained from the pre-generated block by using the residual block constituting the residual image and the value of the intra mode. The current block can be simply restored by adding the residual block and the prediction block, and the value of the intra mode is used when obtaining the prediction block. The process of obtaining a prediction block based on the determined intra mode is the same as that of the intra prediction unit 210.

도 7은 본 발명의 일 실시예에 따른 비디오 디코더(500)의 구성을 도시한 블록도이다.7 is a block diagram showing the configuration of a video decoder 500 according to an embodiment of the present invention.

비디오 디코더(500)는 엔트로피 복호화부(510), 역 양자화부(520), 역 공간적 변환부(530), 인트라 복원부(540), 모션 보상부(550) 및 영상 보간 장치(100)를 포함하여 구성될 수 있다.The video decoder 500 includes an entropy decoding unit 510, an inverse quantization unit 520, an inverse spatial transform unit 530, an intra restoration unit 540, a motion compensation unit 550, and an image interpolation device 100 Can be configured.

엔트로피 복호화부(510)는 엔트로피 부호화 방식의 역으로 무손실 복호화를 수행하여, 인터 예측에 있어서의 모션 데이터(모션 벡터 및 참조 프레임 등), 인트라 예측에 있어서의 인트라 모드 및 텍스쳐 데이터 등을 추출한다. 텍스쳐 데이터는 역 양자화부(520)에 제공하고, 모션 데이터는 모션 보상부(550)에 제공하며, 상기 인트라 모드는 인트라 복원부(540)에 제공한다.The entropy decoding unit 510 performs lossless decoding in the reverse of the entropy encoding method, and extracts motion data (such as motion vectors and reference frames) in inter prediction, and intra mode and texture data in intra prediction. The texture data is provided to the inverse quantization unit 520, the motion data is provided to the motion compensation unit 550, and the intra mode is provided to the intra restoration unit 540.

역 양자화부(520)는 엔트로피 복호화부(510)로부터 전달된 텍스쳐 데이터를 역 양자화한다. 역 양자화 과정은 인코더(200) 단에서 소정의 인덱스로 표현하여 전달한 값으로부터 이와 매칭되는 양자화된 계수를 찾는 과정이다.The inverse quantization unit 520 inversely quantizes the texture data transmitted from the entropy decoding unit 510. The inverse quantization process is a process of finding a quantized coefficient matching this from a value expressed by a predetermined index in the encoder 200 and transmitted.

역 공간적 변환부(530)는 공간적 변환을 역으로 수행하여, 상기 역 양자화 결과 생성된 계수들(주파수 영역)을 공간적 영역에서의 잔차 블록으로 변환한다. 예를 들어, 비디오 인코더 단에서 DCT 방식으로 공간적 변환된 경우에는 역 DCT 변환이 수행될 것이다.The inverse spatial transform unit 530 performs a spatial transform inversely, and transforms coefficients (frequency domain) generated as a result of the inverse quantization into a residual block in the spatial domain. For example, in the case of spatial conversion in the DCT scheme at the video encoder stage, inverse DCT transformation will be performed.

인트라 복원부(540)는 엔트로피 복호화부(510)로부터 전달되는 인트라 모드의 값과, 역 공간적 변환부(530)로부터 제공되는 잔차 블록을 이용하여, 이미 생성된 주변의 블록으로부터 얻어지는 예측 블록으로부터 현재 블록을 복원한다. 현재 블록은 간단히 잔차 블록과 예측 블록의 합에 의하여 복원될 수 있는데, 상기 예측 블록을 구할 때 인트라 모드의 값이 이용되는 것이다. 결정된 인트라 모드의 값을 기준으로 예측 블록을 구하는 과정은 비디오 인코더(200)에서의 인트라 예측부(210)에서와 동일하다.The intra reconstruction unit 540 uses the value of the intra mode transmitted from the entropy decoding unit 510 and the residual block provided from the inverse spatial transform unit 530, and is currently used from the prediction block obtained from the neighboring blocks already generated. Restore the block. The current block can be simply restored by adding the residual block and the prediction block, and the value of the intra mode is used when obtaining the prediction block. The process of obtaining a prediction block based on the determined intra mode value is the same as that of the intra prediction unit 210 in the video encoder 200.

한편, 인터 예측으로부터의 복원을 위하여, 모션 보상부(550)가 이용된다. 모션 보상부(550)는 엔트로피 복호화부(510)로부터 제공되는 모션 데이터를 이용하여, 기 복원된 프레임을 모션 보상하여 모션 보상 프레임을 생성한다. Meanwhile, a motion compensation unit 550 is used for reconstruction from inter prediction. The motion compensation unit 550 uses the motion data provided from the entropy decoding unit 510 to motion compensate the previously reconstructed frame to generate a motion compensation frame.

그런데, H.264와 같은 표준 코덱에서는 쿼터 픽셀 해상도의 모션 추정을 수행하기 때문에 이와 같은 모션 보상에 있어서 쿼터 픽셀 해상도의 보간이 필요하다. 영상 보간 장치(100)는 도 3의 실시예에서와 같은 방식으로 이러한 쿼터 픽셀 해상도의 보간을 수행한다. 물론, 비디오 디코더(500)의 경우에는 별도의 인트라 예측부(도 3의 105)는 불필요하고, 단순히 엔트로피 복호화부(510)로부터 제공되는 인트라 모드에 관한 정보만 영상 보간 장치(100)에 제공되면 된다. However, since a standard codec such as H.264 performs motion estimation of quarter pixel resolution, interpolation of quarter pixel resolution is required for such motion compensation. The image interpolation apparatus 100 performs interpolation of the quarter pixel resolution in the same manner as in the embodiment of FIG. 3. Of course, in the case of the video decoder 500, a separate intra prediction unit (105 in FIG. 3) is unnecessary, and only information on the intra mode provided from the entropy decoding unit 510 is provided to the image interpolation apparatus 100 do.

가산기(515)는 역 공간적 변환부에서 복원되는 잔차 블록이 인터 예측에 의하여 생성된 것일 때에는, 상기 잔차 블록과 모션 보상부(550)로부터 제공되는 모션 보상된 프레임을 가산하여 현재 블록을 복원한다.The adder 515 restores the current block by adding the residual block and the motion compensated frame provided from the motion compensation unit 550 when the residual block restored by the inverse spatial transform unit is generated by inter prediction.

결국, 인트라 복원부(540)에서 복원된 블록 및 가산기(515)에서 복원된 블록의 조합에 의하여 하나의 복원된 프레임이 생성될 수 있는 것이다.As a result, one reconstructed frame can be generated by a combination of a block reconstructed by the intra reconstructor 540 and a block reconstructed by the adder 515.

지금까지 도 3, 6 및 7의 각 구성요소는 소프트웨어(software) 또는, FPGA(field-programmable gate array)나 ASIC(application-specific integrated circuit)과 같은 하드웨어(hardware)를 의미할 수 있다. 그렇지만 상기 구성요소들은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 어드레싱(addressing)할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다. 상기 구성요소들 안에서 제공되는 기능은 더 세분화된 구성요소에 의하여 구현될 수 있으며, 복수의 구성요소들을 합하여 특정한 기능을 수행하는 하나의 구성요소로 구현할 수도 있다.So far, each component of FIGS. 3, 6 and 7 may mean software or hardware such as a field-programmable gate array (FPGA) or an application-specific integrated circuit (ASIC). However, the above components are not limited to software or hardware, and may be configured to be stored in an addressable storage medium or may be configured to execute one or more processors. The functions provided in the above components may be implemented by more subdivided components, or may be implemented as one component that performs a specific function by combining a plurality of components.

본 발명에 따른 보간 알고리즘을 시뮬레이션하기 위하여 JM 12.4 인코더를 사용하였고, CIF 크기의 비디오 시퀀스들(Akiyo, Bus, Paris, Mobile, Stefan 등)에 대하여 테스트하였다. 본 발명에 따른 보간 알고리즘의 율왜곡 성능을 평가하기 위하여, 본 발명은 H.264와 비교된다. 여기서, 모션 검색 범위는 32로 선택되었고, 참조 프레임의 수는 1로 선택되었다. 또한 율왜곡 최적화 및 CAVLC(context-adaptive variable length coding)이 적용되었으며, GOP(group of pictures)의 구조는 IPPP를 사용하였다. 상기 CIF 시퀀스들은 양자화 파라미터(QP)가 28, 32 및 36인 경우에 대하여 각각 테스트되었다. 표 2에서, ΔPSNR 및 ΔBitrate는 H.264와 비교하였을 때의 PSNR의 변화량 및 비트율의 변화량을 각각 나타낸다.To simulate the interpolation algorithm according to the present invention, a JM 12.4 encoder was used, and CIF-sized video sequences (Akiyo, Bus, Paris, Mobile, Stefan, etc.) were tested. In order to evaluate the rate distortion performance of the interpolation algorithm according to the present invention, the present invention is compared with H.264. Here, the motion search range was selected as 32, and the number of reference frames was selected as 1. Also, rate distortion optimization and context-adaptive variable length coding (CAVLC) were applied, and IPPP was used for the structure of the group of pictures (GOP). The CIF sequences were tested for the case where the quantization parameter (QP) is 28, 32 and 36, respectively. In Table 2, [Delta] PSNR and [Delta] Bitrate indicate the amount of change in the PSNR and the bit rate in comparison with H.264, respectively.

QPQP SequenceSequence ?PSNR (dB)? PSNR (dB) ?Bitrate (%)? Bitrate (%) 2828 BusBus 0.010.01 -0.04-0.04 ParisParis 0.010.01 -0.14-0.14 MobileMobile -0.01-0.01 -0.91-0.91 StefanStefan 0.010.01 -0.31-0.31 3232 BusBus 00 0.060.06 ParisParis 00 -0.19-0.19 MobileMobile -0.01-0.01 -1.61-1.61 StefanStefan 00 -0.18-0.18 3636 BusBus -0.01-0.01 0.250.25 ParisParis -0.01-0.01 -0.08-0.08 MobileMobile 00 -1.41-1.41 StefanStefan 0.010.01 0.310.31 평균Average 00 -0.354-0.354

표 2의 결과로부터, 본 발명에 따르면, 기존의 H.264에 비하여 평균적으로 PSNR은 변화가 없는 데에 비하여, 비트율은 평균 0.354%가 감소되는 효과가 제공됨을 알 수 있다. 이와 같은 비트율의 감소는 전체적인 비트스트림의 관점에서는 그다지 크지 않을 수 있으나 쿼터 픽셀의 보간 과정만 고려한다면 상당한 감소 효과를 나타낸 것으로 볼 수 있다. 특히, 하나의 정수 픽셀로부터 총 15개의 서브 픽셀로 보간함에 있어서 4개의 쿼터 픽셀에만 변경된 방식을 적용한 점을 감안하면 그 효과는 상당하다고 볼 수 있다.이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야 한다.From the results of Table 2, it can be seen that according to the present invention, the PSNR is not changed on average compared to the existing H.264, and the bit rate is reduced by an average of 0.354%. This reduction in bit rate may not be very large in terms of the overall bitstream, but it can be considered that it has shown a significant reduction effect if only the interpolation process of quarter pixels is considered. Particularly, considering that the changed method is applied to only four quarter pixels in interpolation from one integer pixel to a total of 15 sub-pixels, the effect can be regarded as significant. With reference to the accompanying drawings, embodiments of the present invention Although described, those skilled in the art to which the present invention pertains will appreciate that the present invention may be implemented in other specific forms without changing its technical spirit or essential features. Therefore, it should be understood that the above-described embodiments are illustrative in all respects and not restrictive.

100: 영상 보간 장치 105: 인트라 예측부
110: 하프 픽셀 보간부 120: 쿼터 픽셀 분류부
130: 제1 보간부 140: 제2 보간부
150: 픽셀 버퍼
100: video interpolation device 105: intra prediction unit
110: half pixel interpolation unit 120: quarter pixel classification unit
130: first interpolation unit 140: second interpolation unit
150: pixel buffer

Claims (3)

영상 디코딩 장치의 디코딩 방법에 있어서,
비트스트림에 포함된 현재 블록의 방향성 정보를 복호화하는 단계;
상기 방향성 정보에 기초하여 구하고자 하는 현재 픽셀에 인접한 적어도 2개의 인접 픽셀을 결정하는 단계; 및
상기 적어도 2개의 인접 픽셀에 기초하여 상기 현재 픽셀의 값을 결정하는 단계를 포함하고,
상기 방향성 정보가 수평 방향을 나타내는 경우, 상기 적어도 2개의 인접 픽셀은 상기 현재 픽셀의 좌측 픽셀 및 상기 현재 픽셀의 우측 픽셀을 포함하는 디코딩 방법.
In the decoding method of the video decoding apparatus,
Decoding directional information of the current block included in the bitstream;
Determining at least two adjacent pixels adjacent to a current pixel to be obtained based on the directional information; And
Determining a value of the current pixel based on the at least two adjacent pixels,
When the directional information indicates a horizontal direction, the at least two adjacent pixels include a left pixel of the current pixel and a right pixel of the current pixel.
영상 인코딩 장치의 인코딩 방법에 있어서,
현재 블록의 방향성 정보를 결정하는 단계;
상기 방향성 정보를 비트스트림으로 부호화하는 단계;
상기 방향성 정보에 기초하여 구하고자 하는 현재 픽셀에 인접한 적어도 2개의 인접 픽셀을 결정하는 단계; 및
상기 적어도 2개의 인접 픽셀에 기초하여 상기 현재 픽셀의 값을 결정하는 단계를 포함하고,
상기 방향성 정보가 수평 방향을 나타내는 경우, 상기 적어도 2개의 인접 픽셀은 상기 현재 픽셀의 좌측 픽셀 및 상기 현재 픽셀의 우측 픽셀을 포함하는 인코딩 방법.
In the encoding method of the video encoding device,
Determining directional information of the current block;
Encoding the directional information into a bitstream;
Determining at least two adjacent pixels adjacent to a current pixel to be obtained based on the directional information; And
Determining a value of the current pixel based on the at least two adjacent pixels,
When the directional information indicates a horizontal direction, the at least two adjacent pixels include a left pixel of the current pixel and a right pixel of the current pixel.
영상 디코딩 장치에 의해 수신되고 복호화되어 영상을 복원하는데 이용되는 비트스트림을 저장한 컴퓨터 판독가능한 기록 매체로서, 상기 비트스트림은 현재 블록의 방향성 정보를 포함하고,
상기 방향성 정보는 복호화되어, 구하고자 하는 현재 픽셀에 인접한 적어도 2개의 인접 픽셀을 결정하기 위해 이용되고,
상기 적어도 2개의 인접 픽셀은 상기 현재 픽셀의 값을 결정하기 위해 이용되고,
상기 방향성 정보가 수평 방향을 나타내는 경우, 상기 적어도 2개의 인접 픽셀은 상기 현재 픽셀의 좌측 픽셀 및 상기 현재 픽셀의 우측 픽셀을 포함하는 컴퓨터 판독 가능한 기록 매체.
A computer readable recording medium storing a bitstream received and decoded by an image decoding apparatus and used to reconstruct an image, wherein the bitstream includes directional information of a current block,
The directional information is decoded, and is used to determine at least two adjacent pixels adjacent to the current pixel to be obtained.
The at least two adjacent pixels are used to determine the value of the current pixel,
When the directional information indicates a horizontal direction, the at least two adjacent pixels include a left pixel of the current pixel and a right pixel of the current pixel.
KR1020190091430A 2019-07-29 2019-07-29 Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes KR102111437B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190091430A KR102111437B1 (en) 2019-07-29 2019-07-29 Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190091430A KR102111437B1 (en) 2019-07-29 2019-07-29 Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020180170285A Division KR20190004247A (en) 2018-12-27 2018-12-27 Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes

Publications (2)

Publication Number Publication Date
KR20190091431A KR20190091431A (en) 2019-08-06
KR102111437B1 true KR102111437B1 (en) 2020-05-15

Family

ID=67612820

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190091430A KR102111437B1 (en) 2019-07-29 2019-07-29 Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes

Country Status (1)

Country Link
KR (1) KR102111437B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100804451B1 (en) 2006-09-25 2008-02-20 광운대학교 산학협력단 1/4 quarter pixel interpolation method for imaging process and processor thereof
WO2009044356A2 (en) 2007-10-05 2009-04-09 Nokia Corporation Video coding with pixel-aligned directional adaptive interpolation filters

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101601848B1 (en) * 2009-12-01 2016-03-10 에스케이 텔레콤주식회사 Apparatus and method for generating inter prediction frame and reference frame interpolation apparatus and method therefor
KR20140013145A (en) * 2012-07-19 2014-02-05 현대모비스 주식회사 An efficient interpolation algorithm using intra prediction information in h.264/avc

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100804451B1 (en) 2006-09-25 2008-02-20 광운대학교 산학협력단 1/4 quarter pixel interpolation method for imaging process and processor thereof
WO2009044356A2 (en) 2007-10-05 2009-04-09 Nokia Corporation Video coding with pixel-aligned directional adaptive interpolation filters

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ITU-T Recommendation H.264 - Advanced video coding for generic audiovisual services. Mar. 2005, pp.1-324*

Also Published As

Publication number Publication date
KR20190091431A (en) 2019-08-06

Similar Documents

Publication Publication Date Title
US9473777B2 (en) Video encoding device and encoding method thereof, video decoding device and decoding method thereof, and directional intra-prediction method to be used thereto
US20150049818A1 (en) Image encoding/decoding apparatus and method
US20150139317A1 (en) Method and apparatus for encoding image, and method and apparatus for decoding image
US20060120450A1 (en) Method and apparatus for multi-layered video encoding and decoding
US20100118945A1 (en) Method and apparatus for video encoding and decoding
US20030156646A1 (en) Multi-resolution motion estimation and compensation
US20070237222A1 (en) Adaptive B-picture quantization control
CN111801941B (en) Method and apparatus for image filtering using adaptive multiplier coefficients
CN113728629A (en) Motion vector derivation in video coding
KR101700410B1 (en) Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes
JP7384974B2 (en) Method and apparatus for image filtering using adaptive multiplication coefficients
JP2023073286A (en) Device and method for intra-prediction
KR101562343B1 (en) Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes
KR102111437B1 (en) Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes
KR101934840B1 (en) Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes
KR101810198B1 (en) Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes
KR101700411B1 (en) Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes
US20130195180A1 (en) Encoding an image using embedded zero block coding along with a discrete cosine transformation
KR20190084929A (en) Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes
KR20190004247A (en) Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes
KR20190004246A (en) Method and apparatus for image interpolation having quarter pixel accuracy using intra prediction modes
US20240031580A1 (en) Method and apparatus for video coding using deep learning based in-loop filter for inter prediction
US11889121B2 (en) Filters for motion compensation interpolation with reference down-sampling
JP4153774B2 (en) Video encoding method, decoding method thereof, and apparatus thereof
EP4268460A1 (en) Temporal filter

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