KR20140142192A - Method and appratus for encoding images using motion prediction by multiple reference, and method and apparatus for decoding images using motion prediction by multiple reference - Google Patents

Method and appratus for encoding images using motion prediction by multiple reference, and method and apparatus for decoding images using motion prediction by multiple reference Download PDF

Info

Publication number
KR20140142192A
KR20140142192A KR1020140146432A KR20140146432A KR20140142192A KR 20140142192 A KR20140142192 A KR 20140142192A KR 1020140146432 A KR1020140146432 A KR 1020140146432A KR 20140146432 A KR20140146432 A KR 20140146432A KR 20140142192 A KR20140142192 A KR 20140142192A
Authority
KR
South Korea
Prior art keywords
predictor
candidate
information
current
predictors
Prior art date
Application number
KR1020140146432A
Other languages
Korean (ko)
Other versions
KR101590875B1 (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 KR1020140146432A priority Critical patent/KR101590875B1/en
Publication of KR20140142192A publication Critical patent/KR20140142192A/en
Application granted granted Critical
Publication of KR101590875B1 publication Critical patent/KR101590875B1/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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • 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/105Selection 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
    • 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/169Methods 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/17Methods 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/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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/169Methods 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/184Methods 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 bits, e.g. of the compressed video stream
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding

Abstract

The present invention relates to a method and apparatus for encoding images using motion prediction, and a method and apparatus for decoding images using motion prediction. According to an embodiment of the present invention, a method for encoding images includes determining, from a reference frame, at least one candidate estimator set including at least one candidate estimator in a candidate estimator range with a current estimator as the center on the reference frame, determining a reference estimator based on an error rate of assumed estimators determined by using the at least one candidate estimator included in each candidate estimator set, performing motion prediction for the current frame using a reference block and a current block corresponding to the determined reference estimator, and encoding image data including the current frame based on a result of motion prediction. Therefore, the inter prediction performance may be improved.

Description

복수 참조에 의한 움직임 예측을 이용한 부호화 방법 및 장치, 그리고 복수 참조에 의한 움직임 예측을 이용한 복호화 방법 및 장치{Method and appratus for encoding images using motion prediction by multiple reference, and method and apparatus for decoding images using motion prediction by multiple reference}[0001] The present invention relates to an encoding method and apparatus using motion prediction using multiple references, and a decoding method and apparatus using motion prediction using a plurality of references, and a decoding method and apparatus using motion prediction by multiple reference}

본 발명은 영상 부호화 방법 및 장치 그리고 영상 복호화 방법 및 장치에 관한 것으로, 보다 상세하게는 영상의 부호화 또는 영상의 복호화 중 화면 간 움직임 예측 방법 및 그 장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an image encoding method and apparatus, and an image decoding method and apparatus. More particularly, the present invention relates to a method and apparatus for predicting motion between images during image encoding or image decoding.

H.264는 종래의 동영상 압축 표준들에 비해 보다 다양하고 복잡한 기술들을 사용함으로써 압축률과 화질을 획기적으로 개선하고 있다. 이러한 이유로 종래의 동영상 압축 표준을 대체하여 디지털 멀티미디어 방송(Digital Multimedia Broadcasting: DMB), DVD 등에 응용 기술로 각광을 받고 있다.H.264 dramatically improves the compression ratio and image quality by using a variety of more complicated technologies compared to the conventional moving picture compression standards. For this reason, digital multimedia broadcasting (DMB), digital versatile disc (DVD), and so on have been attracting attention as an application technology instead of the conventional moving picture compression standard.

H.264 인코더의 움직임 예측(motion prediction)은, 인터 예측(inter prediction)과 인트라 예측(intra prediction)을 수행한다. 인트라 예측은, 이미 복호화된 후 디블로킹 필터링이 수행되어 버퍼에 저장되어 있는 참조 픽처(reference picture)를 이용하여, 현재 픽처의 블록 예측을 수행하는 것을 말한다. 즉, 픽처들간의 정보를 이용하여 예측을 수행한다. 인터 예측은, 이미 복호화된 픽처 내에서, 예측하고자 하는 블록에 인접한 블록의 픽셀 데이터를 이용하여 블록 예측을 수행한다. I 픽처, P 픽처, B 픽처 등의 픽처의 속성에 따라 인트라 예측 및/또는 인터 예측이 수행된다. Motion prediction of an H.264 encoder performs inter prediction and intra prediction. Intra prediction refers to performing block prediction on a current picture using a reference picture that has already been decoded and then subjected to deblocking filtering and stored in a buffer. That is, prediction is performed using information between pictures. In the inter prediction, block prediction is performed using pixel data of a block adjacent to a block to be predicted in a picture that has already been decoded. Intra prediction and / or inter prediction are performed according to the attributes of pictures such as I-pictures, P-pictures, and B-pictures.

움직임 추정(motion estimation, 이하 ME)은 소정의 측정 함수를 이용하여 현재 프레임 내의 매크로 블록과 가장 유사한 매크로 블록을 이전 프레임에서 탐색함으로써 양 매크로 블록의 이동 위치의 차이를 나타내는 움직임 벡터를 구하는 과정이다. 가장 유사한 매크로블록을 찾는 방법 중 대표적인 예로는, 탐색범위를 정해 그 범위 내에서 매크로 블록을 한 픽셀씩 움직여 가면서 소정의 측정방법에 의해 양 매크로 블록간의 유사한 정도를 계산하여 가장 유사한 매크로 블록을 찾는 방법이 있다. A motion estimation (ME) is a process of finding a motion vector indicating a difference between the movement positions of two macroblocks by searching a previous frame for a macroblock most similar to a macroblock in the current frame using a predetermined measurement function. A typical method of finding the most similar macroblocks is to find the most similar macroblocks by calculating the similarity between the two macroblocks by a predetermined measuring method while moving the macroblocks one pixel within the determined range of search, .

소정의 측정 방법의 예로는, 현재 프레임 내의 매크로 블록과 탐색 영역내의 매크로 블록의 대응하는 각 픽셀값 간의 차의 절대값을 취해 그 값들을 더한 값이 가장 작은 경우의 매크로 블록을 가장 유사한 매크로 블록으로 정하는 방법이 있다.An example of a predetermined measuring method is to take the absolute value of the difference between each corresponding pixel value of a macroblock in a current frame and a corresponding macroblock in a search area and add a macroblock having the smallest value to the most similar macroblock There is a way to decide.

보다 구체적으로, 과거 프레임과 현재 프레임의 매크로 블록의 유사도는 과거 및 현재 프레임의 매크로 블록에 포함된 픽셀값을 이용하여 계산되는 유사도값, 즉 정합 기준값을 이용하여 판단된다. 정합 기준값은 소정의 측정 함수를 이용하여 계산되며, 측정 함수로는 SAD(Sum of Absolute Difference), SATD(Sum of Absolute Transformed Difference) 또는 SSD(Sum of Squared Difference) 등이 사용될 수 있다.More specifically, the similarity of the macroblocks of the past frame and the current frame is determined using the similarity value calculated using the pixel values included in the macroblocks of the past and present frames, that is, the matching reference value. The matching reference value is calculated using a predetermined measurement function. The measurement function may be a sum of absolute difference (SAD), a sum of absolute transformed difference (SATD), or a sum of squared difference (SSD).

도 1a 은 H.264/AVC 에서 P 픽처를 이용한 움직임 예측을 도시한다.FIG. 1A shows motion prediction using a P picture in H.264 / AVC.

현재 픽처(110)가 P 픽처인 경우, 참조 픽처(100) 내의 참조 블록(105)을 이용하여 현재 픽처(110) 내의 현재 블록(115)에 대한 움직임 예측이 수행된다.If the current picture 110 is a P picture, motion prediction for the current block 115 in the current picture 110 is performed using the reference block 105 in the reference picture 100.

도 1b 는 H.264/AVC 에서 B 픽처를 이용한 움직임 예측을 도시한다.1B shows motion prediction using a B picture in H.264 / AVC.

B 픽처에 대한 움직임 예측은, 각각 다른 참조 픽처 상의 참조 블록을 이용하여 수행된다. 또한, 참조 픽처(150) 내의 두 참조 블록(153, 155)을 이용하여 현재 픽처(160) 내의 현재 블록(165)에 대한 움직임 예측이 수행될 수도 있다. 이 때 두 참조 블록에 대한 인덱스와 두 움직임 벡터가 부호화되어야 한다.Motion prediction for B pictures is performed using reference blocks on different reference pictures. Motion prediction for the current block 165 in the current picture 160 may also be performed using two reference blocks 153 and 155 in the reference picture 150. [ In this case, the index and two motion vectors for two reference blocks must be coded.

본 발명이 해결하고자 하는 과제는, 영상 부호화 방법 및 장치, 그리고 영상 복호화 방법 및 장치에서 복수 개의 블록을 참조하는 움직임 예측에 있어서, 정확한 참조 블록 또는 추정자를 결정하는 방법을 제안하는 데 있다. 또한, 복수 개의 참조 블록 또는 추정자가 이용되더라도 움직임 정보에 대한 추가적 정보를 최소화하는 방법이 제안된다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a method for determining an accurate reference block or predictor in motion prediction referring to a plurality of blocks in an image encoding method and apparatus and an image decoding method and apparatus. In addition, a method of minimizing additional information on motion information even when a plurality of reference blocks or estimators are used is proposed.

상기 해결하고자 하는 과제를 달성하기 위해, 본 발명의 일 실시예에 따른 움직임 예측을 이용한 부호화 방법은, 참조 프레임 상의 현재 추정자를 중심으로 하는 후보 추정자 범위 중 적어도 하나의 후보 추정자를 포함하는 적어도 하나의 후보 추정자 집합을 결정하는 단계; 각각의 상기 후보 추정자 집합의 후보 추정자를 이용하여 결정된 가설 추정자들의 오차율에 기초하여 참조 추정자를 결정하는 단계; 상기 참조 추정자에 대응되는 참조 블록 및 현재 블록을 이용하여 현재 프레임에 대한 움직임 예측을 수행하는 단계; 및 상기 움직임 예측 수행 결과에 기초하여 상기 현재 프레임을 포함하는 영상 데이터를 부호화하는 단계를 포함한다.According to an aspect of the present invention, there is provided a method of encoding motion estimation using at least one candidate predictor including at least one candidate predictor in a candidate predictor range centered around a current predictor on a reference frame, Determining a candidate predictor set; Determining a reference predictor based on error rates of hypothesis predictors determined using a candidate predictor of each of the candidate predictor sets; Performing motion prediction on a current frame using a reference block and a current block corresponding to the reference predictor; And encoding the image data including the current frame based on the motion prediction result.

일 실시예에 따른 영상 부호화 방법의 상기 참조 추정자 결정 단계는, 상기 후보 추정자 집합마다 결정된 가설 추정자들을 포함하는 가설 추정자 리스트를 생성하는 단계; 및 상기 생성된 가설 추정자 리스트의 가설 추정자의 오차율에 기초하여 참조 추정자를 결정하는 단계를 포함할 수 있다.The step of determining the reference predictor of the image encoding method according to an exemplary embodiment of the present invention includes generating a hypothesis predictor list including hypothesis predictors determined for each candidate predictor set; And determining a reference predictor based on the error rate of the hypothesis predictor of the generated hypothesis predictor list.

일 실시예에 따른 영상 부호화 방법의 상기 영상 데이터 부호화 단계는, 상기 결정된 참조 추정자의 인덱스를 부호화하는 단계를 포함할 수 있다.The image data encoding step of the image encoding method according to an exemplary embodiment may include encoding an index of the determined reference predictor.

일 실시예에 따른 영상 부호화 방법의 상기 후보 추정자 집합 결정 단계는, 상기 후보 추정자 범위가, 상기 현재 추정자로부터 1/4 화소 단위만큼 떨어진 위치의 추정자들을 포함하는 범위, 상기 현재 추정자로부터 1/2 화소 단위만큼 떨어진 위치의 추정자들을 포함하는 범위, 및 상기 현재 추정자로부터 정수 화소 단위만큼 떨어진 위치의 추정자들을 포함하는 범위 중 적어도 한 범위를 포함하고, 상기 현재 추정자를 포함하도록 결정할 수 있다.The candidate predictor set determination step of the image encoding method according to an exemplary embodiment may further include a step of determining a candidate predictor set range including a range including predictors at a position separated by a quarter pixel from the current predictor, And a range including predictors at positions separated by an integer pixel unit from the current predictor, and determine to include the current predictor.

일 실시예에 따른 영상 부호화 방법의 상기 후보 추정자 집합 결정 단계는, 상기 후보 추정자 집합이, 상기 후보 추정자 범위 중 한 후보 추정자를 포함하는 집합, 두 후보 추정자들을 포함하는 집합, 및 세 후보 추정자들을 포함하는 집합을 포함하도록 결정할 수 있다.The candidate predictor set determination step of the image encoding method according to an exemplary embodiment may include a case where the candidate predictor set includes a set including one candidate predictor in the candidate predictor range, a set including two candidate predictors, A set of < / RTI >

일 실시예에 따른 영상 부호화 방법의 상기 참조 추정자 결정 단계는, 상기 결정된 각각의 후보 추정자 집합마다, 상기 후보 추정자 집합 내의 후보 추정자의 평균 값을 상기 후보 추정자 집합에 대한 가설 추정자로 결정하는 단계; 및 상기 결정된 가설 추정자의 오차율을 비교하여 가장 작은 오차율을 갖는 가설 추정자를 참조 추정자로 결정하는 단계를 포함할 수 있다.The step of determining the reference predictor of the image encoding method according to an exemplary embodiment of the present invention includes the steps of: determining an average value of a candidate predictor in the candidate predictor set as a hypothesis predictor for the candidate predictor set for each of the determined sets of candidate predictors; And determining a hypothesis predictor having the smallest error rate as a reference predictor by comparing the error rates of the determined hypothesis predictors.

일 실시예에 따른 영상 부호화 방법의 상기 가설 추정자 리스트 생성 단계는, 상기 가설 추정자 리스트에, 상기 현재 추정자를 포함하는 후보 추정자 집합의 가설 추정자를 상기 현재 추정자를 포함하지 않는 후보 추정자 집합의 가설 추정자에 비해 높은 순위에 위치시킬 수 있다.In the hypothesis predictor list generation step of the image encoding method according to an exemplary embodiment, the hypothesis predictor of the candidate predictor set including the current predictor is added to the hypothesis predictor of the candidate predictor set that does not include the current predictor It can be placed in a higher ranking.

일 실시예에 따른 영상 부호화 방법의 상기 가설 추정자 리스트 생성 단계는, 상기 가설 추정자 리스트에, 후보 추정자의 개수가 적은 후보 추정자 집합의 가설 추정자를, 후보 추정자의 개수가 많은 후보 추정자 집합의 가설 추정자보다 높은 순위에 위치시킬 수도 있다.The hypothesis predictor list generation step of the image encoding method according to an exemplary embodiment may further include generating a hypothesis predictor list of a candidate predictor set having a small number of candidate predictors It may be placed in a higher rank.

일 실시예에 따른 영상 부호화 방법의 상기 참조 추정자 결정 단계는, 상기 각각의 가설 추정자를 이용한 움직임 예측 결과에 대한 평균 제곱 오차를 구하는 단계; 상기 평균 제곱 오차를 비교하여 가장 작은 평균 제곱 오차를 갖는 가설 추정자를 상기 참조 추정자로 결정하는 단계를 포함할 수 있다.The step of determining the reference predictor of the image encoding method according to an exemplary embodiment of the present invention includes: obtaining a mean square error of a motion prediction result using each hypothesis predictor; And comparing the mean square error to determine a hypothesis predictor having the smallest mean square error as the reference predictor.

일 실시예에 따른 영상 부호화 방법의 상기 후보 추정자 집합 결정 단계는, 상기 현재 추정자를 중심으로 소정 거리에 위치하는 상측, 하측, 좌측 및 우측의 네 추정자들 및 상기 현재 추정자를 중심으로 하는 두 대각선 중 각각의 대각선의 양쪽에 위치한 네 추정자들을 포함하는 후보 추정자 범위를 결정하는 단계; 및 상기 결정된 후보 추정자 범위 내의 후보 추정자들 중 상기 현재 추정자를 중심으로 서로 마주보는 두 후보 추정자들이 각각의 후보 추정자 집합을 구성하도록 결정하는 단계를 포함할 수 있다.The determining of the candidate predictor set of the image encoding method according to an exemplary embodiment may include determining a candidate predictor set of four predictors of upper, lower, left, and right located at a predetermined distance from the current predictor and two diagonal lines Determining a candidate predictor range including four predictors located on both sides of each diagonal; And determining that two candidate predictors facing each other around the current predictor among the candidate predictors within the determined candidate predictor range constitute a respective candidate predictor set.

일 실시예에 따른 영상 부호화 방법의 상기 영상 부호화 방법은, 상기 후보 추정자 범위의 소정 거리에 대한 정보 및 상기 후보 추정자 집합을 이루는 후보 추정자들의 방향에 대한 정보를 부호화 하는 단계를 더 포함할 수 있다. The image encoding method of the image encoding method may further include encoding information on a predetermined distance of the candidate predictor range and information on directions of candidate predictor sets forming the candidate predictor set.

상기 해결하고자 하는 과제를 달성하기 위해, 본 발명의 일 실시예에 따른 움직임 예측을 이용한 복호화 방법은, 수신된 영상 비트스트림으로부터 영상 데이터, 움직임 벡터 및 움직임 예측을 위한 추정자 정보를 추출하는 단계; 상기 추정자 정보를 이용하여 참조 프레임 상의 참조 추정자를 결정하는 단계; 상기 참조 추정자에 대응되는 참조 블록, 상기 추출된 영상 데이터 및 상기 움직임 벡터를 이용하여 상기 현재 프레임에 대한 움직임 예측을 수행하는 단계; 및 상기 움직임 예측 결과에 기초하여 상기 현재 프레임을 복원하는 단계를 포함하고, 상기 참조 추정자는, 상기 현재 블록에 대응되는 현재 추정자를 중심으로 하는 후보 추정자 범위 중 적어도 하나의 후보 추정자를 이용하여 결정된 가설 추정자들 중 가장 작은 오차율을 가진다.According to an aspect of the present invention, there is provided a decoding method using motion prediction, comprising: extracting predictor information for image data, a motion vector, and a motion prediction from a received image bitstream; Determining a reference predictor on a reference frame using the predictor information; Performing motion prediction on the current frame using a reference block corresponding to the reference predictor, the extracted image data, and the motion vector; And reconstructing the current frame based on the motion prediction result, wherein the reference predictor includes a hypothesis determined using at least one candidate predictor among a candidate predictor range centered around a current predictor corresponding to the current block, It has the smallest error rate among the predictors.

일 실시예에 따른 영상 복호화 방법의 상기 참조 추정자 결정 단계는, 상기 추정자 정보로부터 위치 정보를 추출하는 단계; 및 상기 참조 프레임 상의 상기 위치 정보에 위치하는 추정자를 상기 참조 추정자로 결정하는 단계를 포함할 수 있다.The step of determining the reference predictor of the image decoding method according to an exemplary embodiment of the present invention includes: extracting position information from the predictor information; And determining a predictor located in the position information on the reference frame as the reference predictor.

일 실시예에 따른 영상 복호화 방법의 상기 참조 추정자 결정 단계는, 상기 추정자 정보로부터, 거리 정보 및 방향 정보를 추출하는 단계; 상기 거리 정보를 이용하여, 상기 참조 프레임 상의 상기 현재 추정자로부터 상기 거리 정보에 따른 소정 거리에 배치되는 후보 추정자 범위를 결정하는 단계; 상기 방향 정보를 이용하여, 상기 후보 추정자 범위 중 상기 방향 정보에 따른 방향에 위치하는 후보 추정자들을 결정하는 단계; 및 상기 결정된 후보 추정자들을 이용하여 상기 최초 오차 추정자를 결정하는 단계를 포함할 수 있다.The step of determining the reference predictor of the image decoding method according to an exemplary embodiment of the present invention includes extracting distance information and direction information from the predictor information; Determining a candidate predictor range to be located at a predetermined distance in accordance with the distance information from the current predictor on the reference frame using the distance information; Determining candidate predictors located in a direction according to the direction information among the candidate predictor ranges using the direction information; And determining the initial error estimator using the determined candidate predictors.

상기 해결하고자 하는 과제를 달성하기 위해, 본 발명의 일 실시예에 따른 움직임 예측을 이용한 부호화 장치는, 참조 프레임 상의 현재 추정자를 중심으로 하는 후보 추정자 범위 중 적어도 하나의 후보 추정자를 포함하는 적어도 하나의 후보 추정자 집합을 결정하는 후보 추정자 집합 결정부; 각각의 상기 후보 추정자 집합의 후보 추정자를 이용하여 결정된 가설 추정자들의 오차율에 기초하여 참조 추정자를 결정하는 참조 추정자 결정부; 상기 참조 추정자에 대응되는 참조 블록 및 현재 블록을 이용하여, 현재 프레임에 대한 움직임 예측을 수행하는 움직임 예측 수행부; 및 상기 움직임 예측 수행 결과에 기초하여 상기 현재 프레임을 포함하는 영상 데이터를 부호화하는 부호화부를 포함한다.According to an aspect of the present invention, there is provided an apparatus for encoding motion estimation using at least one candidate predictor including at least one candidate predictor in a candidate predictor range centered on a current predictor on a reference frame, A candidate predictor set determination unit for determining a candidate predictor set; A reference predictor determining unit that determines a reference predictor based on error rates of hypothesis predictors determined using candidate predictors of each candidate predictor set; A motion prediction performing unit for performing motion prediction on a current frame using a reference block and a current block corresponding to the reference predictor; And an encoding unit encoding the image data including the current frame based on the motion prediction result.

일 실시예에 따른 영상 부호화 장치의 상기 참조 추정자 결정부는, 상기 후보 추정자 집합마다 결정된 가설 추정자들을 포함하는 가설 추정자 리스트를 생성하고, 상기 생성된 가설 추정자 리스트의 가설 추정자의 오차율에 기초하여 참조 추정자를 결정하는 참조 추정자를 결정할 수 있다.The reference predictor determining unit of the image encoding apparatus according to an exemplary embodiment generates a hypothesis predictor list including hypothesis predictors determined for each candidate predictor set and calculates a reference predictor based on the error rate of the hypothesis predictor of the generated hypothesis predictor list It is possible to determine a reference predictor to be determined.

일 실시예에 따른 영상 부호화 장치의 상기 부호화부는, 상기 결정된 참조 추정자의 인덱스를 부호화하는 추정자 인덱스 부호화부를 포함할 수 있다.The encoding unit of the image encoding apparatus according to an exemplary embodiment may include a predictor index encoding unit for encoding an index of the determined reference predictor.

일 실시예에 따른 영상 부호화 장치의 상기 부호화부는, 상기 움직임 예측 수행 결과에 기초하여 상기 현재 프레임을 포함하는 영상 데이터를 부호화하고, 상기 후보 추정자 범위의 소정 거리에 대한 정보 및 상기 현재 추정자를 중심으로 하는 상기 후보 추정자 집합을 이루는 후보 추정자들의 방향에 대한 정보를 부호화할 수 있다.The encoding unit of the image encoding apparatus according to an exemplary embodiment encodes image data including the current frame based on the motion prediction result, and encodes information on a predetermined distance in the candidate predictor range, The information on the direction of the candidate predictors constituting the candidate predictor set can be encoded.

상기 해결하고자 하는 과제를 달성하기 위해, 본 발명의 일 실시예에 따른 움직임 예측을 이용한 복호화 장치는, 수신된 영상 비트스트림으로부터 영상 데이터, 움직임 벡터 및 움직임 예측을 위한 추정자 정보를 추출하는 데이터 추출부; 상기 추정자 정보를 이용하여 참조 프레임 상의 참조 추정자를 결정하는 참조 추정자 결정부; 상기 참조 추정자에 대응되는 참조 블록, 상기 추출된 영상 데이터 및 상기 움직임 벡터를 이용하여 상기 현재 프레임에 대한 움직임 예측을 수행하는 움직임 예측 수행부; 및 상기 움직임 예측 결과에 기초하여 상기 현재 프레임을 복원하는 영상 복원부를 포함하고, 상기 참조 추정자는, 참조 프레임 상의 현재 추정자를 중심으로 하는 후보 추정자 범위 중 적어도 하나의 후보 추정자를 이용하여 결정된 가설 추정자들 중 가장 작은 오차율을 가진다.According to an aspect of the present invention, there is provided a decoding apparatus using motion prediction according to an embodiment of the present invention includes a data extracting unit for extracting, from a received image bitstream, image data, a motion vector, ; A reference predictor determining unit that determines a reference predictor on a reference frame using the predictor information; A motion prediction unit for performing motion prediction on the current frame using a reference block corresponding to the reference predictor, the extracted image data, and the motion vector; And an image reconstructing unit for reconstructing the current frame based on the motion prediction result, wherein the reference predictor comprises hypothesis predictors determined using at least one candidate predictor among a candidate predictor range centered around a current predictor on a reference frame, The smallest error rate.

일 실시예에 따른 영상 복호화 장치의 상기 참조 추정자 결정부는, 상기 추정자 정보로부터 위치 정보를 추출하고, 상기 참조 프레임 상의 상기 위치 정보에 위치하는 추정자를 상기 참조 추정자로 결정할 수 있다.The reference predictor determining unit of the image decoding apparatus according to an embodiment may extract position information from the predictor information and determine a predictor located in the position information on the reference frame as the reference predictor.

일 실시예에 따른 영상 복호화 장치의 상기 참조 추정자 결정부는, 상기 추정자 정보로부터, 거리 정보 및 방향 정보를 추출하고, 상기 거리 정보를 이용하여, 상기 참조 프레임 상의 상기 현재 추정자로부터 상기 거리 정보에 따른 소정 거리에 배치되는 후보 추정자 범위를 결정하고, 상기 방향 정보를 이용하여, 상기 후보 추정자 범위 중 상기 방향 정보에 따른 방향에 위치하는 후보 추정자들을 결정하고, 상기 결정된 후보 추정자들을 이용하여 상기 최초 오차 추정자를 결정할 수 있다.The reference predictor determining unit of the apparatus for decoding an image according to an exemplary embodiment extracts distance information and direction information from the predictor information and extracts, from the current predictor on the reference frame, Determining a candidate predictor range to be located at a predetermined distance from the candidate predictor range and using the direction information to determine candidate predictors positioned in a direction in accordance with the direction information among the candidate predictor ranges, You can decide.

본 발명은, 본 발명의 일 실시예에 따른 영상 부호화 방법을 구현하기 위한 프로그램이 수록된 컴퓨터로 판독 가능한 기록 매체를 포함한다.The present invention includes a computer-readable recording medium on which a program for implementing an image encoding method according to an embodiment of the present invention is recorded.

또한 본 발명은, 본 발명의 일 실시예에 따른 영상 복호화 방법을 구현하기 위한 프로그램이 수록된 컴퓨터 판독 가능한 기록 매체를 포함한다.The present invention also includes a computer-readable recording medium on which a program for implementing a video decoding method according to an embodiment of the present invention is recorded.

본 발명에 따른 움직임 예측을 이용한 부호화 방법 및 장치는 복수 개의 블록 또는 추정자를 조합함으로써 효과적이고 정확하게 움직임 예측을 할 수 있다. 또한, 복수 개의 참조 블록 또는 추정자를 나타내는 정보가 단순화되므로 압축률 및 통신 효율이 향상된다.The encoding method and apparatus using motion prediction according to the present invention can effectively and accurately perform motion prediction by combining a plurality of blocks or an estimator. In addition, information indicating a plurality of reference blocks or predictors is simplified, thereby improving the compression ratio and communication efficiency.

움직임 예측을 이용한 부호화 방법 및 장치는, 수신된 데이터스트림으로부터 최소 오차를 갖는 참조 블록에 대한 정보를 추출하여, 정확하고 효율적인 움직임 예측을 함으로써 화면 간 예측의 성능을 향상시킬 수 있다.The encoding method and apparatus using motion prediction can improve the performance of inter picture prediction by extracting information on a reference block having a minimum error from the received data stream and performing accurate and efficient motion prediction.

본 발명의 움직임 예측을 이용한 부호화 방법 및 장치, 그리고 움직임 예측을 이용한 복호화 방법 및 장치는 시간적 예측에 기반한 비디오 코덱 및 이 코덱을 사용하는 핸드폰, 캠코더, 디지털 카메라, 멀티미디어 플레이어, 차세대 디브이디, 소프트웨어 비디오 코덱 등에 사용될 수 있다.The encoding method and apparatus using motion prediction and the decoding method and apparatus using motion prediction according to the present invention can be applied to a video codec based on temporal prediction and a mobile phone, a camcorder, a digital camera, a multimedia player, a next generation DVD, And the like.

도 1a 은 H.264/AVC 에서 P 픽처를 이용한 움직임 예측을 도시한다.
도 1b 는 H.264/AVC 에서 B 픽처를 이용한 움직임 예측을 도시한다.
도 2a 는 본 발명의 일 실시예에 따른 영상 부호화 장치의 블록도를 도시한다.
도 2b 는 본 발명의 일 실시예에 따른 영상 복호화 장치의 블록도를 도시한다.
도 3 은 화소 단위에 따른 추정자들을 도시한다.
도 4 는 후보 추정자 범위의 일 실시예를 도시한다.
도 5 는 후보 추정자 집합의 일 실시예를 도시한다.
도 6 은 후보 추정자 집합의 다른 실시예를 도시한다.
도 7 은 후보 추정자 범위 및 후보 추정자 집합 결정 방법에 대해 설정된 코드의 일 실시예를 도시한다.
도 8 은 정수 화소 단위의 후보 추정자 범위가 사용되는 실시예를 도시한다.
도 9 는 1/2 화소 단위의 후보 추정자 범위가 사용되는 실시예를 도시한다.
도 10 은 1/4 화소 단위의 후보 추정자 범위가 사용되는 실시예를 도시한다.
도 11a 은 본 발명의 일 실시예에 따른 영상 부호화 방법의 흐름도를 도시한다.
도 11b 은 본 발명의 일 실시예에 따른 영상 복호화 방법의 흐름도를 도시한다.
FIG. 1A shows motion prediction using a P picture in H.264 / AVC.
1B shows motion prediction using a B picture in H.264 / AVC.
FIG. 2A is a block diagram of an image encoding apparatus according to an embodiment of the present invention.
FIG. 2B shows a block diagram of an image decoding apparatus according to an embodiment of the present invention.
FIG. 3 shows predictors according to a pixel unit.
Figure 4 illustrates one embodiment of a candidate predictor range.
Figure 5 shows an embodiment of a candidate predictor set.
Figure 6 shows another embodiment of a candidate predictor set.
7 shows an embodiment of a code set for a candidate predictor range and a candidate predictor set determination method.
Fig. 8 shows an embodiment in which a candidate predictor range of an integer pixel unit is used.
Fig. 9 shows an embodiment in which a candidate predictor range of 1/2 pixel unit is used.
Fig. 10 shows an embodiment in which a candidate predictor range of 1/4 pixel unit is used.
11A is a flowchart illustrating a method of encoding an image according to an embodiment of the present invention.
FIG. 11B shows a flowchart of a video decoding method according to an embodiment of the present invention.

도 2a 는 본 발명의 일 실시예에 따른 영상 부호화 장치의 블록도를 도시한다.FIG. 2A is a block diagram of an image encoding apparatus according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 영상 부호화 장치(200)는 후보 추정자 집합 결정부(210), 참조 추정자 결정부(220), 움직임 예측 수행부(230) 및 부호화부(240)를 포함한다.The image encoding apparatus 200 according to an exemplary embodiment of the present invention includes a candidate predictor set determination unit 210, a reference predictor determination unit 220, a motion prediction performance unit 230, and an encoding unit 240.

후보 추정자 집합 결정부(210)는 멀티 가설 예측 장치(200)로 입력된 참조 프레임에서, 현재 블록에 대응되는 참조 프레임 상의 현재 추정자를 중심으로 하는 후보 추정자 범위 중 적어도 하나의 후보 추정자를 포함하는 적어도 하나의 후보 추정자 집합을 결정하고, 결정된 후보 추정자 집합을 참조 추정자 결정부(220)로 출력한다.The candidate predictor set determination unit 210 determines at least one candidate predictor in the reference frame input to the multi-hypothesis prediction apparatus 200, which includes at least one candidate predictor in the candidate predictor range centered on the current predictor on the reference frame corresponding to the current block And outputs the determined candidate predictor set to the reference predictor determining unit 220. The reference predictor determining unit 220 determines the set of candidate predictors.

본 발명에서 추정자는 움직임 예측을 위한 블록 또는 픽셀들을 대표하는 위치의 픽셀을 의미할 수 있다. 즉, 참조 데이터를 찾기 위한 탐색점이다. 또한, 추정자는 부호화 또는 복호화될 현재 프레임의 현재 블록에 대한 참조 프레임 상에 존재한다.In the present invention, the predictor may refer to a block for motion prediction or a pixel at a position representative of the pixels. That is, it is a search point for searching for reference data. The estimator is also present on the reference frame for the current block of the current frame to be encoded or decoded.

후보 추정자 집합 결정부(210)는 현재 추정자를 위한 참조 추정자를 결정하기 위해, 영상 복호화 장치(200)로 입력된 참조 프레임에서 복수 개의 후보 추정자들을 포함하는 후보 추정자 범위를 결정한다. 후보 추정자 범위는 참조 프레임 상의 현재 추정자 및 현재 추정자로부터 소정 거리에 위치한 추정자들을 포함할 수 있다. 예를 들어, 후보 추정자 범위는 현재 추정자로부터 1/4 화소 단위, 1/2 화소 단위, 정수 화소 단위만큼 떨어진 위치의 추정자들을 포함하는 범위 중 적어도 하나로 결정할 수 있다.The candidate predictor set determination unit 210 determines a candidate predictor range including a plurality of candidate predictors in the reference frame input to the video decoding apparatus 200 to determine a reference predictor for the current predictor. The candidate predictor range may include the current predictor on the reference frame and the predictors located a predetermined distance from the current predictor. For example, the candidate predictor range may be determined as at least one of a range including the predictors at positions separated by a unit of a quarter pixel, a half pixel, or an integer pixel from the current predictor.

후보 추정자 집합 결정부(210)는 결정된 후보 추정자 범위 내의 적어도 하나의 후보 추정자를 포함하는 적어도 하나의 후보 추정자 집합을 결정한다. 즉, 하나의 후보 추정자 집합에는 적어도 하나의 후보 추정자가 포함될 수 있으며, 그러한 후보 추정자가 하나 이상 있을 수 있다. The candidate predictor set determination unit 210 determines at least one candidate predictor set including at least one candidate predictor within the determined candidate predictor range. That is, one candidate predictor set may include at least one candidate estimator, and there may be more than one such candidate estimator.

추정자 범위 내에서 후보 추정자 집합의 일 실시예는 후보 추정자 범위 중 한 후보 추정자를 포함하는 집합, 두 후보 추정자들을 포함하는 집합, 세 후보 추정자들을 포함하는 집합을 모두 포함할 수도 있다. 또한, 후보 추정자 집합은 한 후보 추정자의 집합만으로 구성될 수 있으며, 한 후보 추정자의 집합부터 N 개의 후보 추정자들을 포함하는 집합까지 모든 경우의 추정자 집합이 있을 수 있다. 이 때, N은 후보 추정자 범위 내의 총 후보 추정자 수보다 작거나 같다.One embodiment of the candidate predictor set within the range of the predictor may include a set including one candidate predictor in the candidate predictor range, a set including two candidate predictors, and a set including three candidate predictors. Also, the candidate predictor set can be composed of only one set of candidate predictors, and there can be a set of predictors in all cases from one set of candidate predictors to a set including N candidate predictors. In this case, N is equal to or less than the total number of candidate predictors in the candidate predictor range.

영상 부호화 장치(200)의 참조 추정자 결정부(220)는 후보 추정자 집합 결정부(210)로부터 후보 추정자 집합을 입력받아, 후보 추정자 집합의 후보 추정자를 이용하여 결정된 가설 추정자들의 오차율에 기초하여 참조 추정자를 결정하고, 결정된 참조 추정자를 영상 부호화 장치(200)의 움직임 예측 수행부(230)로 출력한다.The reference predictor determining unit 220 of the image encoding apparatus 200 receives the candidate predictor set from the candidate predictor set determining unit 210 and generates a reference predictor set based on the error rates of the hypothesis predictors determined using the candidate predictor set, And outputs the determined reference predictor to the motion prediction performing unit 230 of the image encoding apparatus 200. [

영상 부호화 장치(200)의 참조 추정자 결정부(220)는 후보 추정자 집합마다, 각각의 후보 추정자 집합 내의 후보 추정자를 이용하여 가설 추정자를 결정한다. 후보 추정자 집합에 대한 가설 추정자는 해당 후보 추정자 집합 내의 후보 추정자의 평균 값일 수 있다.The reference predictor determining unit 220 of the image encoding apparatus 200 determines a hypothesis predictor using a candidate predictor in each candidate predictor set for each candidate predictor set. The hypothesis predictor for the candidate predictor set may be an average value of the candidate predictors in the candidate predictor set.

영상 부호화 장치(200)의 참조 추정자 결정부(220)의 일 실시예는 후보 추정자 집합마다 결정된 가설 추정자들을 포함하는 가설 추정자 리스트를 생성할 수 있다. 가설 추정자 리스트 상에서는, 현재 추정자를 포함하는 후보 추정자 집합의 가설 추정자가, 현재 추정자를 포함하지 않는 후보 추정자 집합의 가설 추정자에 비해 높은 순위에 위치할 수 있다. 또한, 후보 추정자의 개수가 적은 후보 추정자 집합의 가설 추정자가 후보 추정자의 개수가 많은 후보 추정자 집합의 가설 추정자보다 높은 순위에 위치할 수 있다.One embodiment of the reference predictor determining unit 220 of the image encoding apparatus 200 may generate a hypothesis predictor list including hypothesis predictors determined for each candidate predictor set. The hypothesis predictor of the candidate predictor set including the current predictor and the hypothesis predictor of the candidate predictor set that does not include the current predictor may be positioned higher in the hypothesis predictor list. In addition, the hypothesis predictor of the candidate predictor set having a small number of candidate predictors may be positioned higher than the hypothesis predictor of the candidate predictor set having a large number of candidate predictors.

영상 부호화 장치(200)의 참조 추정자 결정부(220)는 가설 추정자들의 오차율에 기초하여 참조 추정자를 결정한다. 결정된 참조 추정자에 대응되는 블록이 현재 블록에 대한 참조 블록이 된다.The reference predictor determining unit 220 of the image encoding apparatus 200 determines the reference predictor based on the error rate of the hypothesis predictors. The block corresponding to the determined reference predictor becomes the reference block for the current block.

영상 부호화 장치(200)의 참조 추정자 결정부(230)는, 각각의 가설 추정자를 이용한 움직임 예측 결과에 대한 평균 제곱 오차(Mean Squared Error, MSE)를 구하고, 평균 제곱 오차를 비교하여 가장 작은 평균 제곱 오차를 갖는 가설 추정자를 참조 추정자로 결정한다.The reference predictor determining unit 230 of the image encoding apparatus 200 obtains a mean squared error (MSE) of the motion prediction result using each hypothesis predictor, compares the mean square error, The hypothesis predictor having an error is determined to be a reference predictor.

영상 부호화 장치(200)의 움직임 예측 수행부(230)는 참조 추정자 결정부(220)로부터 참조 추정자 정보를 입력받고, 참조 추정자에 대응되는 참조 블록 및 현재 블록을 이용하여, 현재 프레임에 대한 움직임 예측을 수행한다. The motion prediction performing unit 230 of the image encoding apparatus 200 receives the reference predictor information from the reference predictor determining unit 220 and receives the reference predictor information using the reference block corresponding to the reference predictor and the current block, .

부호화부(240)는 움직임 예측 수행부(230)의 움직임 예측 수행 결과에 기초하여 현재 프레임을 포함하는 영상 데이터를 부호화한다. 부호화부(240)의 일 실시예는 참조 추정자 결정부(220)로부터 입력된 참조 추정자의 위치 정보를 나타내는 인덱스를 부호화할 수도 있다. 또한, 후보 추정자 집합 결정부(210)로부터 입력된 후보 추정자 범위의 거리 정보, 후보 추정자 집합의 방향 정보 중 적어도 하나가 부호화될 수도 있다.The encoding unit 240 encodes the image data including the current frame based on the motion prediction result of the motion prediction performing unit 230. The embodiment of the encoding unit 240 may encode an index indicating the position information of the reference predictor input from the reference predictor determining unit 220. [ Also, at least one of the distance information of the candidate predictor range and the direction information of the candidate predictor set input from the candidate predictor set determination unit 210 may be encoded.

도 2b 는 본 발명의 일 실시예에 따른 영상 복호화 장치의 블록도를 도시한다.FIG. 2B shows a block diagram of an image decoding apparatus according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 영상 복호화 장치(250)는 데이터 추출부(260), 참조 추정자 결정부(270), 움직임 예측 수행부(280) 및 영상 복원부(290)를 포함한다.The image decoding apparatus 250 according to an embodiment of the present invention includes a data extracting unit 260, a reference predictor determining unit 270, a motion prediction performing unit 280, and an image restoring unit 290.

데이터 추출부(260)는 수신된 영상 비트스트림으로부터 영상 데이터, 움직임 벡터 및 움직임 예측을 위한 추정자 정보를 추출하고, 참조 추정자 결정부(270) 및 움직임 예측 수행부(280)로 출력한다. 추정자 정보는 최소 오차 추정자의 인덱스 정보, 후보 추정자 범위의 거리 정보, 후보 추정자 집합의 방향 정보 중 적어도 하나일 수 있다.The data extracting unit 260 extracts image data, a motion vector, and predictor information for motion prediction from the received image bitstream, and outputs the extracted predictor information to the reference predictor determining unit 270 and the motion prediction performing unit 280. The predictor information may be at least one of index information of a minimum error estimator, distance information of a candidate predictor range, and direction information of a candidate predictor set.

영상 복호화 장치(250)의 참조 추정자 결정부(270)는 추정자 정보를 이용하여 현재 블록에 대한 참조 추정자를 참조 프레임에서 결정한다. 참조 추정자는, 현재 블록에 대응되는 현재 추정자를 중심으로 하는 후보 추정자 범위 중 적어도 하나의 후보 추정자를 이용하여 결정된 가설 추정자들 중 가장 작은 오차율을 갖는 가설 추정자이다.The reference predictor determining unit 270 of the video decoding apparatus 250 determines the reference predictor for the current block in the reference frame using the predictor information. The reference predictor is a hypothesis predictor having the smallest error rate among hypothesis predictors determined using at least one candidate predictor among a candidate predictor range centered around the current predictor corresponding to the current block.

추정자 정보가 거리 정보, 방향 정보를 포함하는 경우, 참조 추정자 결정부(270)는 거리 정보를 이용하여, 현재 추정자로부터 거리 정보에 따른 소정 거리에 배치되는 후보 추정자 범위를 결정하고, 방향 정보를 이용하여, 후보 추정자 범위 중 방향 정보에 따른 방향에 위치하는 후보 추정자들을 결정할 수 있다. 결정된 후보 추정자들을 이용하여 최초 오차 추정자가 결정될 수 있다.When the predictor information includes distance information and direction information, the reference predictor determining unit 270 uses the distance information to determine a candidate predictor range that is located at a predetermined distance from the current predictor in accordance with the distance information, And determine candidate predictors located in a direction according to the direction information among the candidate predictor ranges. The initial error estimator can be determined using the determined candidate predictors.

추정자 정보로부터 위치 정보가 추출된다면, 참조 추정자 결정부(270)는 상기 위치 정보에 위치되는 추정자를 상기 참조 추정자로 결정할 수 있다. If the location information is extracted from the predictor information, the reference predictor determining unit 270 may determine the predictor located in the location information as the reference predictor.

영상 복호화 장치(250)의 움직임 예측 수행부(280)는 참조 추정자에 대응되는 참조 블록, 추출된 영상 데이터 및 움직임 벡터를 이용하여 현재 프레임에 대한 움직임 예측을 수행한다. The motion prediction unit 280 of the video decoding apparatus 250 performs motion prediction on the current frame using the reference block corresponding to the reference predictor, the extracted image data, and the motion vector.

또한, 복원부(290)는 예측 결과에 기초하여 현재 프레임을 복원하고, 전체 영상을 복호화한다.The restoring unit 290 restores the current frame based on the prediction result, and decodes the entire image.

도 3 은 화소 단위에 따른 추정자들을 도시한다.FIG. 3 shows predictors according to a pixel unit.

후보 추정자 집합 결정부(210)가 후보 추정자 범위에 포함시킬 현재 추정자(300)에 대한 후보 추정자의 후보는, 참조 프레임 상에서 현재 추정자(300)로부터 정수 화소 단위의 거리에 위치한 추정자들(312, 313, 314, 315), 1/2 화소 단위의 거리에 위치한 추정자들(322, 324, 326, 328), 1/4 화소 단위의 거리에 위치한 추정자들(331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342 등) 및 현재 추정자(300)일 수 있다.The candidate predictor candidate for the current predictor 300 to be included in the candidate predictor range by the candidate predictor set determiner 210 is a predictor candidate located at a distance of an integer pixel from the current predictor 300 on the reference frame, The predictors 322, 324, 326 and 328 located at a distance of ½ pixel unit and the predictors 331, 332, 333, 334, 335 and 336 located at a distance of ¼ pixel unit , 337, 338, 339, 340, 341, 342, etc.) and the current predictor 300.

후보 추정자 범위는 현재 추정자(300)로부터 소정 거리에 위치한 추정자들을 포함한다. 예를 들어, 후보 추정자 범위는 현재 추정자(300)로부터 정수 화소 단위의 거리에 위치한 추정자들(312, 313, 314, 315)만을 포함할 수 있다. 또한, 정수 화소 단위의 거리에 위치한 추정자들(312, 313, 314, 315), 1/2 화소 단위의 거리에 위치한 추정자들(322, 324, 326, 328), 1/4 화소 단위의 거리에 위치한 추정자들(331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342 등)을 모두 포함할 수도 있다. 또한, 동일 거리의 추정자들 중에서 일부 추정자만이 후보 추정자 범위로 선택될 수도 있다.The candidate predictor range includes predictors located at a predetermined distance from the current predictor 300. [ For example, the candidate predictor range may include only predictors 312, 313, 314, and 315 located at a distance of an integer pixel from the current predictor 300. The predictors 312, 313, 314 and 315 located at a distance of an integer pixel unit, the predictors 322, 324, 326 and 328 located at a distance of a half-pixel unit, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, etc.). Also, only some of the predictors of the same distance may be selected as the candidate predictor range.

도 3 에 도시된 후보 추정자 범위는 현재 추정자(300)로부터 1/4 화소 단위 거리에 위치하면서 현재 추정자(300)를 둘러싼 추정자들(335, 336, 337, 338, 339, 340, 341, 342) 및 현재 추정자의 추정자(300)를 포함한다.The candidate predictor range shown in FIG. 3 includes predictors 335, 336, 337, 338, 339, 340, 341, and 342 surrounding the current predictor 300, And a predictor 300 of the current estimator.

도 4 는 후보 추정자 범위의 일 실시예를 도시한다.Figure 4 illustrates one embodiment of a candidate predictor range.

도 4 에 도시된 후보 추정자 범위의 일 실시예는 현재 추정자(400) 및 현재 추정자(400)를 둘러싼 8개의 추정자들(410, 420, 430, 440 450, 460, 470, 480)을 포함한다. 추정자들 사이의 거리는 1/4 화소 단위, 1/2 화소 단위, 정수 화소 단위로 조절될 수 있다.One embodiment of the candidate predictor range shown in FIG. 4 includes the current predictor 400 and eight predictors 410, 420, 430, 440 450, 460, 470, 480 surrounding the current predictor 400. The distance between the predictors can be adjusted in units of a quarter pixel, a half pixel, or an integer pixel.

도 4 에 도시된 후보 추정자 범위의 거리가 1/4 화소 단위라면, 후보 추정자 범위의 추정자들은 현재 추정자(400)의 1/4 화소 단위 거리의 추정자들 중 현재 추정자(400)를 둘러 싼 추정자들(410, 420, 430, 440 450, 460, 470, 480) 및 현재 추정자(400)이다. If the distance of the candidate predictor range shown in FIG. 4 is a unit of a quarter pixel, the predictors in the candidate predictor range are predictors of the current predictor 400, (410, 420, 430, 440 450, 460, 470, 480) and the current predictor (400).

도 4 에 도시된 후보 추정자 범위의 거리가 1/2 화소 단위라면, 현재 추정자(400) 및 현재 추정자로부터 정수 화소 단위 거리의 추정자들(410, 420, 430, 440) 및 1/2 화소 단위 거리의 추정자들(450, 460, 470, 480) 및 현재 추정자(400)가 후보 추정자 범위에 포함된다. If the distance of the candidate predictor range shown in FIG. 4 is a half pixel unit, the predictors 410, 420, 430, and 440 of the integer pixel unit distance from the current predictor 400 and the current predictor, The predictors 450, 460, 470 and 480 of the current predictor 400 and the current predictor 400 are included in the candidate predictor range.

도 5 는 후보 추정자 집합의 일 실시예를 도시한다.Figure 5 shows an embodiment of a candidate predictor set.

후보 추정자 집합 결정부(210)는 후보 추정자 범위 내의 적어도 하나의 후보 추정자를 포함하는 후보 추정자 집합를 하나 이상 결정한다. 도 5 를 참조하면 후보 추정자 범위는, 현재 추정자(526)를 둘러싼 1/4 화소 단위의 거리에 위치한 추정자들(502, 506, 510, 522, 530, 542, 546, 550) 및 현재 추정자(526)까지 9개의 추정자들을 포함한다.The candidate predictor set determination unit 210 determines at least one candidate predictor set including at least one candidate predictor within the candidate predictor range. Referring to FIG. 5, the candidate predictor range includes predictors 502, 506, 510, 522, 530, 542, 546, and 550 located at a distance of a quarter pixel surrounding the current predictor 526, ). ≪ / RTI >

하나의 후보 추정자 집합은 후보 추정자 범위 중 N 개의 후보 추정자를 포함한다. N은 후보 추정자 범위 내의 총 후보 추정자 개수이다. 예를 들어, 도 5의 후보 추정자 범위에서는, 두 추정자(510, 522)를 포함하는 후보 추정자 집합(580)이 있을 수 있다. 후보 추정자 집합들이 포함하고 있는 모든 후보 추정자들이 동일하지 않다면, 서로 다른 후보 추정자 집합이다.One candidate predictor set includes N candidate predictors in the candidate predictor range. N is the total number of candidate predictors within the candidate predictor range. For example, in the candidate predictor range of Figure 5, there may be a candidate predictor set 580 that includes two predictors 510 and 522. [ If all the candidate predictors included in the candidate predictor sets are not the same, they are different candidate predictor sets.

한 후보 추정자 범위에서 생성될 수 있는 후보 추정자 집합의 일 실시예는, 후보 추정자 범위 중 한 후보 추정자를 포함하는 집합부터, 후보 추정자 범위 중 n 개의 후보 추정자를 포함하는 집합까지를 모두 포함할 수도 있다(이 때, n 은 1보다 크고 N보다 작거나 같은 정수). 예를 들어, N = 9이고 n = 3이면, 후보 추정자 집합은, 후보 추정자 범위 중 한 개의 후보 추정자를 포함하는 집합들, 후보 추정자 범위 중 두 개의 후보 추정자들을 포함하는 집합들, 후보 추정자 범위 중 세 개의 후보 추정자들을 포함하는 집합들을 포함할 수 있다.One embodiment of a candidate predictor set that can be generated in one candidate predictor range may include all of the sets including a candidate predictor in the candidate predictor range and a set including n candidate predictors in the candidate predictor range (Where n is an integer greater than 1 and less than or equal to N). For example, if N = 9 and n = 3, then the candidate predictor set is a set of candidate predictors that includes one candidate predictor, two sets of candidate predictors of the candidate predictor range, And may include sets containing three candidate predictors.

부호화 장치(200)의 참조 추정자 결정부(220)는 각각의 후보 추정자 집합 내의 후보 추정자를 이용하여 가설 추정자를 결정한다. 예를 들어 후보 추정자 집합 내의 후보 추정자들의 평균 위치를 가설 추정자로 결정한다. 가설 추정자 값은 후보 추정자 집합 내의 후보 추정자들의 픽셀 값의 평균이 된다. 1/4 화소 단위 거리의 두 추정자들(502, 506)의 후보 추정자 집합에 대해 결정되는 가설 추정자는, 두 추정자들(502, 506)의 평균 위치인 1/8 화소 단위 거리의 추정자(504)가 결정된다. The reference predictor determining unit 220 of the encoding apparatus 200 determines a hypothesis predictor using a candidate predictor in each candidate predictor set. For example, the average position of candidate predictors in the candidate predictor set is determined as a hypothesis predictor. The hypothesis predictor value is an average of the pixel values of the candidate predictors in the candidate predictor set. The hypothesis predictor determined for the candidate predictor set of the two predictors 502 and 506 at the distance of the unit of the quarter pixel is the predictor 504 of the distance of the 1/8 pixel unit which is the average position of the two predictors 502 and 506, Is determined.

마찬가지로 1/4 화소 단위의 두 추정자들(530, 550)의 후보 추정자 집합(570)에 대한 가설 추정자는 1/8 화소 단위 거리에 위치한 추정자(540)로 결정되므로, 본 발명에 일 실시예에 따른 영상 부호화 장치(200) 및 영상 복호화 장치(250)는 1/4 화소 단위 예측 기반의 H.264 환경에서도 1/8 화소 단위 예측이 가능해진다. Likewise, since the hypothesis predictor for the candidate predictor set 570 of the two predictors 530 and 550 in units of quarter pixels is determined as the predictor 540 located at a distance of one-eighth pixel unit, The image encoding apparatus 200 and the image decoding apparatus 250 according to the present invention can perform 1/8 pixel unit prediction even in the H.264 environment based on the 1/4 pixel unit prediction.

현재 추정자(526)는 현재 추정자(526)만을 후보 추정자로써 포함하는 후보 추정자 집합에 대해서는 가설 추정자가 되지만, 두 후보 추정자들(506, 546)를 포함하는 후보 추정자 집합(560)에 대해서는 두 후보 추정자들(506, 546)의 평균 위치인 가설 추정자가 될 수도 있다. 이렇게 후보 추정자 집합 내의 후보 추정자들의 개수가 많아지면서, 소정 위치의 추정자는 재정의되고 상세화될 수도 있다. The current predictor 526 is a hypothesis predictor for a candidate predictor set that includes only the current predictor 526 as a candidate predictor but for the candidate predictor set 560 including the two candidate predictors 506 and 546, (506, 546). As the number of candidate predictors in the candidate predictor set increases, the predictor at a predetermined position may be redefined and refined.

참조 추정자 결정부(220)가 가설 추정자 리스트를 생성하는 경우, 후보 추정자 수가 적은 후보 추정자 집합에 대한 가설 추정자로부터, 후보 추정자 수가 많은 후보 추정자 집합에 대한 가설 추정자 순서로 리스트에 수록된다. 리스트 상의 순서는 현재 블록에 대한 참조 추정자 결정을 위한 우선 순위일 수 있다.When the reference predictor determining unit 220 generates a hypothesis predictor list, the hypothesis predictor for a set of candidate predictors with a small number of candidate predictors is included in the list in the order of hypothesis predictors for a set of candidate predictors with a large number of candidate predictors. The order on the list may be a priority for determining the reference predictor for the current block.

또한, 동일한 개수의 후보 추정자를 보유하는 후보 추정자 집합에 대한 가설 추정자에 대해서는, 현재 추정자를 포함하는 후보 추정자 집합에 대한 가설 추정자가, 가설 추정자 리스트 상에서 현재 추정자를 보유하지 않은 후보 추정자 집합에 대한 가설 추정자에 비해 우선 순위를 차지한다.For the hypothesis predictor for the candidate predictor set having the same number of candidate predictors, the hypothesis predictor for the candidate predictor set including the current predictor, the hypothesis predictor for the candidate predictor set that does not have the current predictor on the hypothesis predictor list It takes precedence over the predictor.

참조 추정자 결정부(220)는 후보 추정자 집합들에 대한 가설 추정자들의 오차율이 가장 적은 최적의 가설 추정자를 참조 추정자로 결정한다. 참조 추정자 결정부(220)의 일 실시예는 오차율을 산정하기 위해, 각각의 가설 추정자들을 이용하여 움직임 보상을 한 결과, 각각의 가설 추정자들에 대한 평균 제곱 오차(MSE)를 비교하여, 최소 평균 제곱 오차를 발생시키는 가설 추정자를 참조 추정자, 즉 참조 추정자로 결정한다. 참조 추정자가 결정되면, 참조 추정자의 위치 등의 정보를 나타내는 인덱스가 전송될 수도 있다.The reference predictor determining unit 220 determines the optimal hypothesis predictor having the smallest error rate of the hypothesis predictors for the candidate predictor sets as the reference predictor. In an embodiment of the reference predictor determining unit 220, a motion compensation is performed using each hypothesis predictor in order to calculate an error rate. As a result, a mean square error (MSE) of each hypothesis predictor is compared, The hypothesis predictor generating the squared error is determined to be the reference predictor, i.e., the reference predictor. When the reference predictor is determined, an index indicating information such as the position of the reference predictor may be transmitted.

도 6 은 후보 추정자 집합의 다른 실시예를 도시한다.Figure 6 shows another embodiment of a candidate predictor set.

후보 추정자 범위 결정부(210)는, 후보 추정자 범위 내의 후보 추정자들 중 현재 추정자를 중심으로 서로 마주보는 두 후보 추정자들이 하나의 후보 추정자 집합을 구성하도록 결정할 수 있다. 이 경우 현재 추정자는 후보 추정자 집합에 포함되지 않는다.The candidate predictor range determination unit 210 can determine that two candidate predictors facing each other around the current predictor among the candidate predictors within the candidate predictor range constitute one candidate predictor set. In this case, the current predictor is not included in the candidate predictor set.

현재 추정자를 중심으로 가로, 세로 및 양 대각선 방향으로 마주보는 두 후보 추정자들마다 각각 후보 추정자 집합을 구성하도록 결정할 수 있다. 즉, 현재 추정자를 중심으로 수직 방향으로 마주 보는 후보 추정자들을 포함하는 후보 추정자 집합(방향 1), 수평 방향으로 마주 보는 후보 추정자들을 포함하는 후보 추정자 집합(방향 2), 오른쪽이 내려간 대각선 방향으로 마주 보는 후보 추정자들을 포함하는 후보 추정자 집합(방향 3), 왼쪽이 내려간 대각선 방향으로 마주 보는 후보 추정자들을 포함하는 후보 추정자 집합(방향 4)이 있을 수 있다.It can be determined to construct a candidate predictor set for each of two candidate predictors facing in the horizontal, vertical, and diagonal directions with respect to the current predictor. That is, a candidate predictor set (direction 1) including candidate predictors facing in the vertical direction around the current predictor, a candidate predictor set (direction 2) including candidate predictors in the horizontal direction facing each other, There may be a candidate predictor set (direction 3) that includes candidate predictors to view, and a candidate predictor set (direction 4) that includes diagonally opposite candidate predictors that are down left.

도 7 은 후보 추정자 범위 및 후보 추정자 집합 결정 방법에 대해 설정된 코드의 일 실시예를 도시한다.7 shows an embodiment of a code set for a candidate predictor range and a candidate predictor set determination method.

영상 부호화 장치(200)는 후보 추정자 범위 및 후보 추정자 집합 결정 방법에 대한 정보를 부호화할 수 있다. 영상 복호화 장치(250)는 후보 추정자 범위 및 후보 추정자 결정 방법에 대한 정보를 복호화함으로써, 참조 추정자에 대한 정보를 획득할 수 있다.The image encoding apparatus 200 may encode information on a candidate predictor range and a method of determining a candidate predictor set. The image decoding apparatus 250 can obtain information on the reference predictor by decoding information on the candidate predictor range and the candidate predictor determination method.

이하 후보 추정자 범위 및 후보 추정자 집합 결정 방법을, 도 6 에서 도시된 후보 추정자 범위 및 후보 추정자 집합을 참조하여 기술된다. 후보 추정자 범위는, 현재 추정자를 둘러싼 추정자 사이의 거리에 의해 정의될 수 있다. 예로 들면, 거리가 1/2 화소 단위라고 하면 현재 추정자를 둘러싼 정수 화소 단위의 추정자들 및 1/2 화소 단위의 추정자들이 후보 추정자 범위에 해당된다. 도 3 의 추정자 번호를 이용하여 설명하면, 정수 화소 단위의 추정자들(312, 313, 314, 315) 및 1/2 화소 단위의 추정자들(322, 324, 326, 328)이 후보 추정자 범위를 포함한다. Hereinafter, the candidate predictor range and the candidate predictor set determination method are described with reference to the candidate predictor range and the candidate predictor set shown in FIG. The candidate predictor range may be defined by the distance between the predictors surrounding the current predictor. For example, if the distance is a unit of 1/2 pixel, then the predictors in the unit of the integer pixel surrounding the current predictor and the predictors in the unit of 1/2 pixel correspond to the candidate predictor range. 3, the predictors 312, 313, 314, and 315 of the integer pixel unit and the predictors 322, 324, 326, and 328 of the half-pixel unit include the candidate predictor range do.

또한, 거리가 1/4 화소 단위라 하면, 현재 추정자로부터 1/4 화소 단위의 거리에 위치한 추정자들 중 현재 추정자를 둘러싼 추정자들이 후보 추정자 범위에 해당된다. 도 3 에서, 1/4 화소 단위의 추정자들(335, 336, 337, 338, 339, 340, 341, 342)이 후보 추정자 범위를 구성한다.If the distance is a unit of a quarter pixel, the predictors surrounding the current predictor among the predictors located at a distance of a quarter of a pixel from the current predictor correspond to the candidate predictor range. In Fig. 3, the predictor 335, 336, 337, 338, 339, 340, 341, and 342 in the quarter-pixel unit constitute the candidate predictor range.

후보 추정자 집합은, 도 6 과 같이 후보 추정자 집합의 결정 방법이 제한되어 있다면, 후보 추정자 집합들이 현재 추정자를 중심으로 서로 마주 보는 방향에 따라 정의될 수 있다. 즉, 방향 1, 방향 2, 방향 3, 방향 4로 후보 추정자 집합이 정의될 수 있다. The candidate predictor set can be defined according to the direction in which the candidate predictor sets are facing each other with respect to the current predictor as long as the determination method of the candidate predictor set is limited as shown in FIG. That is, a set of candidate predictors can be defined as direction 1, direction 2, direction 3, and direction 4.

전술한 바와 같이, 후보 추정자 범위의 거리와 후보 추정자 집합의 결정 방법에 대한 정보를 미리 부호화하면 그 유용성이 높아진다. 움직임 예측을 이용한 영상 부호화 장치(200)의 일 실시예는 현재 추정자로부터 후보 추정자 범위 내의 후보 추정자들까지의 소정 거리에 대한 정보를 거리 코드로 설정하는 거리 코드 설정부, 현재 추정자 중심으로 하는 후보 추정자 집합을 이루는 후보 추정자들의 방향의 종류에 정보를 방향 코드로 설정하는 방향 코드 설정부, 및 거리 코드 및 방향 코드를 출력하는 코드 출력부를 포함할 수 있다.As described above, if the information on the distance of the candidate predictor range and the method of determining the candidate predictor set are encoded in advance, the usefulness becomes high. One embodiment of the image encoding apparatus 200 using motion prediction includes a distance code setting unit that sets information on a predetermined distance from a current predictor to candidate predictors within a range of a candidate predictor to a distance code, A direction code setting unit for setting information as a direction code in the kind of direction of the candidate predictors forming the set, and a code output unit for outputting the distance code and direction code.

거리 코드 설정부는, 1/4 화소 거리를 거리 코드 0으로, 1/2 화소 거리를 거리 코드 1로 설정한다. 방향 코드 설정부는, 도 7 과 같이, 방향 1을 방향 코드 100, 방향 2를 방향 코드 101, 방향 3을 방향 코드 110, 방향 4를 방향 코드 111로 설정한다. 또한, 복수 개의 가설 추정자를 이용하지 않는 경우를 대비하여, 방향 코드 0을 설정한다. 단, 거리 코드 설정부는 방향 코드 0 이 아닌 경우에만 거리 코드를 설정한다.The distance code setting unit sets the distance of 1/4 pixels as the distance code 0 and the distance of 1/2 pixel as the distance code 1. The direction code setting unit sets direction 1 as direction code 100, direction 2 as direction code 101, direction 3 as direction code 110, and direction 4 as direction code 111, as shown in Fig. In addition, a direction code 0 is set for the case where a plurality of hypothesis predictors are not used. However, the distance code setting unit sets the distance code only when the direction code is not 0.

각각의 코드에 따라 후보 추정자 집합이 결정되므로, 영상 부호화 장치(200)에 의해 결정된 참조 추정자를 나타내는 방향 코드 및 거리 코드를 전송하면, 영상 복호화 장치(250)는 수신된 방향 코드 및 거리 코드만으로 참조 추정자를 알 수 있다. Since the candidate predictor set is determined according to each code, if the direction code and the distance code indicating the reference predictor determined by the image coding apparatus 200 are transmitted, the video decoding apparatus 250 decodes only the received direction code and distance code Estimator can be known.

도 8 은 정수 화소 단위의 후보 추정자 범위가 사용되는 실시예를 도시한다.Fig. 8 shows an embodiment in which a candidate predictor range of an integer pixel unit is used.

후보 추정자 범위가 정수 화소 단위로 결정된 경우, 추정자 X 는 구하기 위한 과정은 다음과 같다. If the candidate predictor range is determined in units of integer pixels, the process for obtaining the predictor X is as follows.

한 단위 거리의 이웃 추정자를 이용하는 경우에는, 추정자 X 는 X = ( M + N ) / 2 로 결정된다. 추정자 M 은 M = ( H0 + c ) / 2 로 결정되고, 추정자 N 은 N = ( H1 + c ) / 2 로 결정되므로, 추정자 X 는 X = ( M + N ) / 2 = ( H0 + 2c + H1 ) / 2 로 결정된다. H.264의 6 탭 필터 보간에 의해 추정자 H0 는 H0 = ( l - 5a + 20b + 20c - 5d + e ) / 32이고, 추정자 H1 는 H1 = ( a - 5b + 20c + 20d - 5e + f ) / 32 이다. 따라서, 추정자 X 는 X = ( H0 + 2c + H1 ) / 2 = ( l - 4a + 15b + 104c + 15d - 4e + f ) / 64 로 결정된다. 추정자 X 는 정수 화소 단위의 추정자들에 대한 7 탭 필터로 필터링 처리로 결정되는 효과가 발생한다. When a neighboring predictor with a unit distance is used, the predictor X is determined as X = (M + N) / 2. The predictor M is determined as M = (H0 + c) / 2 and the predictor N is determined as N = (H1 + c) / 2, H1) / 2. The predictor H0 is given by H1 = (a - 5b + 20c + 20d - 5e + f) where H0 = (l - 5a + 20b + 20c - 5d + e) / 32. Therefore, the predictor X is determined by X = (H0 + 2c + H1) / 2 = (l - 4a + 15b + 104c + 15d - 4e + f) / 64. The effect that the predictor X is determined by the filtering process with the 7-tap filter for the predictors of the integer pixel unit occurs.

두 단위 거리의 이웃 추정자를 이용하는 경우, 추정자 X 는 X = ( H0 + H1 ) / 2 로 결정되며, 전술된 추정자 H0 및 추정자 H1의 결정식을 대입하면 추정자 X 는 X = ( l - 4a + 15b + 40c + 15d - 4e + f ) / 64 로 결정된다. 이 경우도 정수 화소 단위의 추정자들에 대한 7 탭 필터로 필터링 처리로 추정자 X 가 결정되는 효과가 발생한다. When a neighboring predictor with a distance of two units is used, the predictor X is determined as X = (H0 + H1) / 2. When the predictor H0 and the determinant of the predictor H1 are substituted, the predictor X becomes X = (l - 4a + 15b + 40c + 15d - 4e + f) / 64. In this case also, the effect that the predictor X is determined by the filtering process with the 7-tap filter for the predictors of the integer pixel unit occurs.

따라서, 본 발명의 멀티 가설 예측 방법에 의하면, H.264의 고정적인 6 탭 필터링 또는 보간이 아닌, 상황에 따라 다양한 필터링 결과를 얻을 수 있다.Therefore, according to the multi-hypothesis prediction method of the present invention, it is possible to obtain various filtering results depending on the situation rather than the fixed 6-tap filtering or interpolation of H.264.

도 9 는 1/2 화소 단위의 후보 추정자 범위가 사용되는 실시예를 도시한다.Fig. 9 shows an embodiment in which a candidate predictor range of 1/2 pixel unit is used.

후보 추정자 범위가 1/2 화소 단위로 결정된 경우, 추정자 X 는 구하기 위한 과정은 다음과 같다. If the candidate predictor range is determined in units of 1/2 pixel, the process for obtaining the predictor X is as follows.

한 단위 거리의 이웃 추정자를 이용하는 경우에는, 추정자 X 는 X = ( M + N ) / 2 로 결정된다. 추정자 M은 M = ( c + H ) / 2 로 결정되고, 추정자 N은 N = ( d + H ) / 2 로 결정되므로, 추정자 X 는 X = ( M + N ) / 2 = ( c + 2H + d ) / 2 이다. 추정자 H 는 H.264의 6 탭 필터링에 의해 H = ( a - 5b + 20c + 20d - 5e + f + 16 ) / 32 로 결정되므로, 추정자 X 는 정수 화소 단위 추정자들인 추정자 c, 추정자 d, 추정자 H 에 대한 1:2:1 필터링이 수행되는 효과가 발생된다.When a neighboring predictor with a unit distance is used, the predictor X is determined as X = (M + N) / 2. The predictor M is determined as M = (c + H) / 2 and the predictor N is determined as N = (d + H) / 2. d) / 2. The predictor H is determined as H = (a - 5b + 20c + 20d - 5e + f + 16) / 32 by H.264 6-tap filtering. Therefore, the predictor X is the predictor c, the predictor d, H: 1: 2: 1 filtering is performed.

또한, 두 단위 거리의 이웃 추정자를 이용하는 경우, 추정자 X 는 X = ( c + d ) / 2 로 결정되므로, 추정자 c 및 추정자 d 에 대한 겹선형 필터링을 통해 추정자 X 가 결정될 수 있다.Further, in the case of using a neighboring predictor of two unit distances, since the predictor X is determined as X = (c + d) / 2, the predictor X can be determined through the double linear filtering on the predictor c and the predictor d.

따라서, 정수 화소 단위의 추정자에 대한 고정적인 6 탭 필터링이 아닌 다양한 필터링이 수행되는 효과가 발생된다.Therefore, various filtering operations are performed instead of the fixed 6-tap filtering for the predictor of an integer pixel unit.

도 10 은 1/4 화소 단위의 후보 추정자 범위가 사용되는 실시예를 도시한다.Fig. 10 shows an embodiment in which a candidate predictor range of 1/4 pixel unit is used.

후보 추정자 범위가 1/4 화소 단위로 결정된 경우, 추정자 X 는 구하기 위한 과정은 다음과 같다. If the candidate predictor range is determined on a quarter-pixel basis, the process for obtaining the predictor X is as follows.

한 단위 거리의 이웃 추정자를 이용하는 경우에는, 추정자 X 는 X = ( c + H1 ) / 2 로 결정된다. 이는 H.264 에서 1/4 화소 단위 추정자를 결정하기 위한 겹선형 필터링과 동일한 결과이다. When a neighboring predictor with a unit distance is used, the predictor X is determined as X = (c + H1) / 2. This is the same result as the folded linear filtering for determining the 1/4 pixel unit predictor in H.264.

또한, 두 단위 거리의 이웃 추정자를 이용하는 경우, 추정자 M은 M = ( c + H0 ) / 2 으로 결정되고, 추정자 N은 N = ( d + H1 ) / 2로 결정되므로, 추정자 X 는 X = ( M + N ) / 2 = ( H0 + c + H1 + d ) / 4 로 결정된다. 따라서, 전술된 H.264 에서의 추정자 H0 및 추정자 H1에 대한 결정식을 이용하면, 추정자 X 는 X = ( M + N ) / 2 = ( l - 4a + 15b + 72c + 47d - 4e + f ) / 64 로 결정되고, 정수 화소 단위의 추정자들에 대한 7 탭 필터링의 결과가 발생된다. 다양한 필터링이 수행되는 효과가 발생된다.The predictor M is determined as M = (c + H0) / 2 and the predictor N is determined as N = (d + H1) / 2 when the two-unit distance neighbor predictor is used. M + N) / 2 = (H0 + c + H1 + d) / 4. Therefore, by using the predictor H0 and the determinant for the predictor H1 in H.264 described above, the predictor X can be expressed by X = (M + N) / 2 = (1-4a + 15b + 72c + 47d - 4e + f) / 64, and the result of the 7-tap filtering for the predictors in the integer pixel unit is generated. Various filtering effects are performed.

도 11a 은 본 발명의 일 실시예에 따른 영상 부호화 방법의 흐름도를 도시한다.11A is a flowchart illustrating a method of encoding an image according to an embodiment of the present invention.

단계 1110에서, 현재 블록에 대응되는 현재 추정자를 중심으로 하는 후보 추정자 범위 중 적어도 하나의 후보 추정자를 포함하는 적어도 하나의 후보 추정자 집합이 참조 프레임에서 결정된다.At step 1110, at least one candidate predictor set comprising at least one candidate predictor in the candidate predictor range centered around the current predictor corresponding to the current block is determined in the reference frame.

단계 1120에서, 각각의 후보 추정자 집합의 후보 추정자를 이용하여 결정된 가설 추정자들의 오차율에 기초하여 참조 추정자가 결정된다. 후보 추정자 집합마다 결정된 가설 추정자들을 포함하는 가설 추정자 리스트가 생성될 수 있다. 가설 추정자는 각각의 후보 추정자 집합 내의 후보 추정자의 평균 값으로 결정될 수 있다.In step 1120, the reference predictor is determined based on the error rates of the hypothesis predictors determined using the candidate predictors of each candidate predictor set. A hypothesis predictor list including hypothesis predictors determined for each candidate predictor set can be generated. The hypothesis predictor may be determined as the average value of the candidate predictors in each candidate predictor set.

각각의 가설 추정자를 이용한 움직임 예측 결과에 대한 평균 제곱 오차를 비교하여, 가장 작은 평균 제곱 오차를 갖는 가설 추정자가 참조 추정자로 결정될 수 있다.The hypothesis predictor having the smallest mean square error can be determined as the reference predictor by comparing the mean square error with the motion prediction result using each hypothesis predictor.

단계 1130에서, 참조 추정자에 대응되는 참조 블록 및 현재 블록을 이용하여, 현재 프레임에 대한 움직임 예측이 수행된다.In step 1130, motion prediction for the current frame is performed using the reference block and the current block corresponding to the reference predictor.

단계 1140에서, 움직임 예측 수행 결과에 기초하여 현재 프레임을 포함하는 영상 데이터가 부호화된다. 참조 추정자의 인덱스가 부호화되어 전송될 수 있다. 후보 추정자 범위의 거리 정보, 후보 추정자 집합의 방향 정보가 부호화되어 전송될 수도 있다.In step 1140, the image data including the current frame is encoded based on the motion prediction execution result. The index of the reference predictor can be encoded and transmitted. The distance information of the candidate predictor range, and the direction information of the candidate predictor set may be encoded and transmitted.

도 11b 은 본 발명의 일 실시예에 따른 영상 복호화 방법의 흐름도를 도시한다.FIG. 11B shows a flowchart of a video decoding method according to an embodiment of the present invention.

단계 1160에서, 수신된 영상 비트스트림으로부터 영상 데이터, 움직임 벡터 및 움직임 예측을 위한 추정자 정보가 추출된다. 추정자 정보는 참조 추정자에 대한 위치 정보일 수 있다. 또한, 추정자 정보는 참조 추정자를 결정하기 위한 후보 추정자 범위의 거리 정보 및 후보 추정자 집합의 방향 정보 중 적어도 하나일 수 있다.In step 1160, predictor information for image data, motion vectors, and motion prediction is extracted from the received image bitstream. The predictor information may be location information for the reference predictor. The predictor information may be at least one of distance information of a candidate predictor range for determining a reference predictor and direction information of a candidate predictor set.

단계 1170에서, 추정자 정보를 이용하여 현재 블록에 대한 참조 추정자가 결정된다. 참조 추정자는, 현재 블록에 대응되는 현재 추정자를 중심으로 하는 후보 추정자 범위 중 적어도 하나의 후보 추정자를 이용하여 결정된 가설 추정자들 중 가장 작은 오차율을 갖는 추정자로 결정된다.In step 1170, the reference predictor for the current block is determined using the predictor information. The reference predictor is determined as the predictor having the smallest error rate among the hypothesis predictors determined using at least one candidate predictor among the candidate predictor ranges centered around the current predictor corresponding to the current block.

단계 1180에서, 참조 추정자에 대응되는 참조 블록, 추출된 영상 데이터 및 움직임 벡터를 이용하여 현재 프레임에 대한 움직임 예측이 수행된다.In step 1180, motion prediction for the current frame is performed using the reference block corresponding to the reference predictor, the extracted image data, and the motion vector.

단계 1190에서, 움직임 예측 결과에 기초하여 현재 프레임이 복원된다.In step 1190, the current frame is restored based on the motion prediction result.

한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다.
The above-described embodiments of the present invention can be embodied in a general-purpose digital computer that can be embodied as a program that can be executed by a computer and operates the program using a computer-readable recording medium. The computer readable recording medium may be a magnetic storage medium such as a ROM, a floppy disk, a hard disk, etc., an optical reading medium such as a CD-ROM or a DVD and a carrier wave such as the Internet Lt; / RTI > transmission).

이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.The present invention has been described with reference to the preferred embodiments. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. Therefore, the disclosed embodiments should be considered in an illustrative rather than a restrictive sense. The scope of the present invention is defined by the appended claims rather than by the foregoing description, and all differences within the scope of equivalents thereof should be construed as being included in the present invention.

Claims (8)

움직임 예측을 이용한 복호화 방법에 있어서,
비트스트림으로부터 추정자 정보 및 영상 데이터를 획득하는 단계;
상기 추정자 정보를 이용하여, 참조 프레임 상의 현재 추정자의 위치로부터 소정거리 이격된 참조 추정자의 위치를 결정하는 단계; 및
상기 참조 추정자의 위치에 대응되는 상기 참조 프레임의 참조 블록 및 상기 영상 데이터를 이용하여 현재 블록에 대한 움직임 예측을 수행하는 단계를 포함하는 것을 특징으로 하는 영상 복호화 방법.
A decoding method using motion prediction,
Obtaining predictor information and image data from a bitstream;
Using the predictor information to determine a position of a reference predictor spaced a predetermined distance from a position of a current predictor on a reference frame; And
And performing motion prediction on a current block using the reference block of the reference frame and the image data corresponding to the position of the reference predictor.
제 1 항에 있어서,
상기 추정자 정보를 이용하여, 참조 프레임 상의 현재 추정자의 위치로부터 소정거리 이격된 참조 추정자의 위치를 결정하는 단계는,
상기 추정자 정보로부터 추정자 방향 정보 및 추정자 거리 정보를 결정하는 단계; 및
상기 참조 프레임 상의 현재 추정자의 위치로부터 상기 추정자 방향 정보에 따른 방향으로 상기 추정자 거리 정보에 따른 거리에 위치하는 참조 추정자의 위치를 결정하는 단계를 포함하는 것을 특징으로 하는 영상 복호화 방법.
The method according to claim 1,
Wherein the step of determining the position of the reference predictor spaced a predetermined distance from the position of the current estimator on the reference frame using the predictor information comprises:
Determining predictor direction information and predictor distance information from the predictor information; And
And determining a position of a reference predictor located at a distance in accordance with the predictor distance information in a direction in accordance with the predictor direction information from a current predictor position on the reference frame.
제 2 항에 있어서, 상기 참조 프레임 상의 현재 추정자의 위치로부터 상기 추정자 방향 정보에 따른 방향으로 상기 추정자 거리 정보에 따른 거리에 위치하는 참조 추정자의 위치를 결정하는 단계는,
상기 거리 정보를 이용하여, 상기 참조 프레임 상의 상기 현재 추정자로부터 상기 거리 정보에 따른 소정 거리에 배치되는 후보 추정자 범위를 결정하는 단계;
상기 방향 정보를 이용하여, 상기 후보 추정자 범위 중 상기 방향 정보에 따른 방향에 위치하는 후보 추정자들을 결정하는 단계; 및
상기 결정된 후보 추정자들을 이용하여 상기 참조 추정자를 결정하는 단계를 포함하는 것을 특징으로 하는 영상 복호화 방법.
3. The method of claim 2, wherein the step of determining a position of a reference predictor located at a distance in accordance with the predictor distance information in a direction in accordance with the predictor direction information from a current predictor position on the reference frame,
Determining a candidate predictor range to be located at a predetermined distance in accordance with the distance information from the current predictor on the reference frame using the distance information;
Determining candidate predictors located in a direction according to the direction information among the candidate predictor ranges using the direction information; And
And determining the reference predictor using the determined candidate predictors.
제 2 항에 있어서, 상기 참조 추정자는, 상기 참조 프레임 상의 상기 현재 추정자를 중심으로 하는 후보 추정자 범위 중 적어도 하나의 후보 추정자를 이용하여 결정된 가설 추정자들 중 가장 작은 오차율을 갖는 것을 특징으로 하는 영상 복호화 방법.3. The image decoding apparatus according to claim 2, wherein the reference predictor has the smallest error rate among hypothesis predictors determined using at least one candidate predictor in the candidate predictor range centered on the current predictor on the reference frame Way. 움직임 예측을 이용한 복호화 장치에 있어서,
비트스트림으로부터 추정자 정보 및 영상 데이터를 획득하는 데이터 추출부;
상기 추정자 정보를 이용하여, 참조 프레임 상의 현재 추정자의 위치로부터 소정거리 이격된 참조 추정자의 위치를 결정하는 참조 추정자 결정부; 및
상기 참조 추정자의 위치에 대응되는 상기 참조 프레임의 참조 블록 및 상기 영상 데이터를 이용하여 현재 블록에 대한 움직임 예측을 수행하는 움직임 예측 수행부를 포함하는 것을 특징으로 하는 영상 복호화 장치.
A decoding apparatus using motion prediction,
A data extracting unit for obtaining predictor information and image data from the bitstream;
A reference predictor determining unit that determines a position of a reference predictor spaced a predetermined distance from a current predictor position on a reference frame by using the predictor information; And
And a motion prediction performing unit for performing motion prediction on a current block using the reference block of the reference frame and the image data corresponding to the position of the reference predictor.
제 5 항에 있어서,
상기 참조 추정자 결정부는 상기 추정자 정보로부터 추정자 방향 정보 및 추정자 거리 정보를 획득하고, 상기 참조 프레임 상의 현재 추정자의 위치로부터 상기 추정자 방향 정보에 따른 방향으로 상기 추정자 거리 정보에 따른 거리에 위치하는 참조 추정자의 위치를 결정하는 것을 특징으로 하는 영상 복호화 장치.
6. The method of claim 5,
Wherein the reference predictor determining unit obtains the predictor direction information and the predictor distance information from the predictor information and extracts the reference predictor from the position of the current predictor on the reference frame in a direction in accordance with the predictor direction information, And determines a position of the image.
제 6 항에 있어서, 상기 참조 추정자 결정부는,
상기 거리 정보를 이용하여, 상기 참조 프레임 상의 상기 현재 추정자로부터 상기 거리 정보에 따른 소정 거리에 배치되는 후보 추정자 범위를 결정하고,
상기 방향 정보를 이용하여, 상기 후보 추정자 범위 중 상기 방향 정보에 따른 방향에 위치하는 후보 추정자들을 결정하고,
상기 결정된 후보 추정자들을 이용하여 상기 참조 추정자를 결정하는 것을 특징으로 하는 영상 복호화 장치.
7. The apparatus of claim 6, wherein the reference-
Determines a candidate predictor range to be located at a predetermined distance from the current predictor on the reference frame in accordance with the distance information using the distance information,
Determining candidate predictors located in the direction of the direction information among the candidate predictor ranges using the direction information,
And the reference predictor is determined using the determined candidate predictors.
제 1 항 내지 제 4 항 중 어느 하나의 영상 복호화 방법을 구현하기 위한 프로그램이 수록된 컴퓨터 판독 가능한 기록 매체.A computer-readable recording medium containing a program for implementing the video decoding method according to any one of claims 1 to 4.
KR1020140146432A 2014-10-27 2014-10-27 Method and appratus for encoding images using motion prediction by multiple reference, and method and apparatus for decoding images using motion prediction by multiple reference KR101590875B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140146432A KR101590875B1 (en) 2014-10-27 2014-10-27 Method and appratus for encoding images using motion prediction by multiple reference, and method and apparatus for decoding images using motion prediction by multiple reference

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140146432A KR101590875B1 (en) 2014-10-27 2014-10-27 Method and appratus for encoding images using motion prediction by multiple reference, and method and apparatus for decoding images using motion prediction by multiple reference

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020080019642A Division KR20090094595A (en) 2008-03-03 2008-03-03 Method and appratus for encoding images using motion prediction by multiple reference, and method and apparatus for decoding images using motion prediction by multiple reference

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020150124951A Division KR101650056B1 (en) 2015-09-03 2015-09-03 Method and appratus for encoding images using motion prediction by multiple reference, and method and apparatus for decoding images using motion prediction by multiple reference

Publications (2)

Publication Number Publication Date
KR20140142192A true KR20140142192A (en) 2014-12-11
KR101590875B1 KR101590875B1 (en) 2016-02-04

Family

ID=52459844

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140146432A KR101590875B1 (en) 2014-10-27 2014-10-27 Method and appratus for encoding images using motion prediction by multiple reference, and method and apparatus for decoding images using motion prediction by multiple reference

Country Status (1)

Country Link
KR (1) KR101590875B1 (en)

Also Published As

Publication number Publication date
KR101590875B1 (en) 2016-02-04

Similar Documents

Publication Publication Date Title
TWI717586B (en) Deriving motion vector information at a video decoder
KR20090094595A (en) Method and appratus for encoding images using motion prediction by multiple reference, and method and apparatus for decoding images using motion prediction by multiple reference
CN113709465B (en) Encoding and decoding method, device and equipment
JP2019080321A (en) Adaptive motion vector resolution signaling for video coding
CN110809887A (en) Motion vector modification for multi-reference prediction
TW201742465A (en) Affine motion prediction for video coding
TW201924345A (en) Coding affine prediction motion information for video coding
TW201715891A (en) Improved bi-directional optical flow for video coding
JP2011501542A (en) Method and apparatus for interframe predictive coding
JP7257524B2 (en) Side motion refinement in video encoding/decoding systems
JP2015111774A (en) Video coding device and video coding program
KR101650056B1 (en) Method and appratus for encoding images using motion prediction by multiple reference, and method and apparatus for decoding images using motion prediction by multiple reference
KR101590875B1 (en) Method and appratus for encoding images using motion prediction by multiple reference, and method and apparatus for decoding images using motion prediction by multiple reference
JP2014007488A (en) Moving image coding device, moving image coding method and program
JP2008028882A (en) Moving image encoding apparatus

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
A107 Divisional application of patent
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
FPAY Annual fee payment

Payment date: 20181227

Year of fee payment: 4