KR101678654B1 - 효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치 - Google Patents

효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치 Download PDF

Info

Publication number
KR101678654B1
KR101678654B1 KR1020100055678A KR20100055678A KR101678654B1 KR 101678654 B1 KR101678654 B1 KR 101678654B1 KR 1020100055678 A KR1020100055678 A KR 1020100055678A KR 20100055678 A KR20100055678 A KR 20100055678A KR 101678654 B1 KR101678654 B1 KR 101678654B1
Authority
KR
South Korea
Prior art keywords
motion vector
representative
candidate
current block
representative motion
Prior art date
Application number
KR1020100055678A
Other languages
English (en)
Other versions
KR20110135761A (ko
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 KR1020100055678A priority Critical patent/KR101678654B1/ko
Priority to PCT/KR2011/004234 priority patent/WO2011155779A2/ko
Publication of KR20110135761A publication Critical patent/KR20110135761A/ko
Application granted granted Critical
Publication of KR101678654B1 publication Critical patent/KR101678654B1/ko

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/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치가 개시된다. 본 발명에 따른 움직임벡터 부호화 장치는, 후보 예측 움직임벡터 집합을 이루는 각 후보 예측 움직임벡터에 대하여 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하는 후보 예측 움직임벡터 분류부; 후보 예측 움직임벡터 분류부에 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정하고, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 대표 움직임벡터 중의 적어도 하나를 선택하는 대표 움직임벡터 선택부; 및 대표 움직임벡터 선택부에 의해 선택된 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화하는 움직임벡터 부호화부를 포함하는 것을 특징으로 한다.

Description

효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치 {Method and Apparatus of adaptive motion vector predictors selection for competition-based motion vector coding, and Recording Medium therefor}
본 발명의 실시예는 비디오 압축 및/또는 복원 장치에 있어서 블록 기반 움직임 예측 후에 얻어지는 움직임벡터(Motion Vector)를 효과적으로 압축하기 위해 현재블록의 움직임벡터와 가장 유사한 예측 움직임벡터(Predictive Motion Vector)를 제공하는 효율적인 움직임 후보 산출 기법과 이를 기반으로 한 움직임 벡터 부/복호화 장치에 관한 것으로, 비디오 데이터 압축 및/또는 복원의 성능을 향상시킴으로써 같은 비트 율에서 보다 우수한 복원 화질을 얻을 수 있는 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치에 관한 것이다.
비디오 데이터의 압축 장치에서 블록 기반 움직임 예측 후에 얻어지는 움직임 벡터의 부호화는, 기존의 H.264/AVC 문헌 1(ITU-T Recommendation H.264 and ISO/IEC 14496-10 AVC, “Advanced Video Coding for Generic Audiovisual Services”, version 3: 2005.)에서는, 주변 블록의 움직임 벡터들의 중앙값(Median)을 이용하여 예측 움직임 벡터를 생성하고, 부호화 할 움직임 벡터와 예측 움직임 벡터와의 차분을 가변 길이 부호화 (Variable Length Coding)함으로써 이루어진다.
하지만, 이러한 중앙값 예측치는 현재 블록의 움직임 벡터가 주변 움직임 벡터와 유사한 패턴을 갖는 경우에는 부호화해야 하는 잔여 움직임 벡터 값이 크게 줄어들어 그 성능이 우수한 반면에, 움직임이 다른 물체의 윤곽선을 포함한 블록과 같이, 주변 블록들이 가지는 움직임과 상이한 불규칙한 움직임 패턴을 갖는 경우에는 그 성능이 제한적이다.
이와 같은 불규칙한 움직임 패턴을 갖는 블록에서의 성능 제한 문제를 해결하기 위해, 문헌 2(S. D. Kim and J. B. Ra, "An efficient motion vector coding scheme based on minimum bitrate prediction," IEEE Trans. on Image. Proc., vol. 8, no. 8, pp. 1117?1120, Aug. 1999.)에서는 중앙값 예측치 대신 세 개의 주변 블록 움직임 벡터들 중에 현재 블록의 움직임 벡터와 가장 유사한 움직임 예측 후보를 선택하여 이를 예측치로 사용함으로써 잔여 움직임 벡터 값을 효율적으로 감소시킬 수 있는 경쟁 기반 움직임 벡터 코딩 기법을 제안하였다. 하지만, 비교적 규칙적인 움직임 패턴을 많이 포함하는 영상에서는 선택된 최적의 움직임 예측 후보를 인덱싱하는데 필요한 오버헤드가 잔여 움직임 벡터 값을 줄여 얻을 수 있는 성능 개선 량에 비해 커지게 되어 전체적인 압축 성능이 오히려 떨어질 수 있다는 한계를 갖는다.
문헌 3(J. Jung, G. Laroche, “Competition-based scheme for Motion Vector Selection and Coding”, VCEG Contribution VCEG-AC06, Klagenfurt, July 2006.)은, 이와 같은 한계를 해결하기 위해, 예측 후보를 두 개로 고정시켜 부가적인 인덱싱 비트의 증가를 최소화하고, 스킵 모드의 최적 움직임 예측 후보를 율-왜곡 관점에서 경쟁적으로 선택하는 기법을 포함하는 향상된 경쟁 기반의 움직임 벡터 코딩 기법을 제안함으로써 움직임 벡터 부호화 효율을 크게 향상 시켰다. 하지만, 이 기법은 실험적으로 선택한 두 개의 고정된 예측 후보를 사용하기 때문에, 카메라의 움직임이나 영상 내 물체의 배치, 크기, 움직임 등에 의한 영상의 특성에 따라 그 성능 개선의 정도가 매우 제한적인 경우들이 발생할 수 있다는 문제점이 있다.
본 발명은 전술한 종래 기술들의 부호화 성능 제한적 요소인 “후보 예측 움직임 벡터가 많아질수록 인덱싱 비트가 증가하는 문제”와 “고정된 움직임 예측 후보 문제”를 해결하기 위하여 창안된 것으로서, 다양한 특성을 갖는 다수의 후보 예측 움직임 벡터 중에 대표 후보 예측 움직임 벡터들을 가변적으로 산출하여 부가 인덱싱 비트를 최소화하면서 영상에 적응적으로 움직임 예측 후보를 제공할 수 있는 움직임 후보벡터 산출 장치 및 방법, 및 그것을 이용한 움직임벡터 부/복호화 장치 및 방법을 제공하는 것을 목적으로 한다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 영상 부호화/복호화 장치는, 현재블록의 움직임벡터를 결정하고, 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하며, 분류된 각각의 후보 집합으로부터 대표 움직임벡터를 선정하고, 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 결정된 움직임벡터와의 차분 값을 부호화하는 영상 부호화기; 및 비트스트림으로부터 추출되는 차분 값을 복호화하며, 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 제2 후보 집합으로 분류하고, 분류된 각각의 제2 후보 집합으로부터 제2 대표 움직임벡터를 선정하며, 선정된 각각의 제2 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하며 차분 값이 복호화된 차분 벡터를 가산하여 현재 움직임벡터를 복원하고, 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임벡터를 이용하여 예측 복호화하여 현재블록을 복원하는 영상 복호화기를 포함하는 것을 특징으로 한다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 영상 부호화 장치는, 현재블록의 움직임벡터를 결정하고, 결정되는 움직임벡터를 이용하여 현재블록을 예측 부호화하는 영상 부호화기; 및 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하고, 분류된 각각의 후보 집합으로부터 대표 움직임벡터를 선정하며, 선정된 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 현재블록의 움직임벡터와의 차분 값을 부호화하는 움직임벡터 부호화기를 포함하는 것을 특징으로 한다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 움직임벡터 부호화 장치는, 후보 예측 움직임벡터 집합을 이루는 각 후보 예측 움직임벡터에 대하여 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하는 후보 예측 움직임벡터 분류부; 후보 예측 움직임벡터 분류부에 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정하고, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 대표 움직임벡터 중의 적어도 하나를 선택하는 대표 움직임벡터 선택부; 및 대표 움직임벡터 선택부에 의해 선택된 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화하는 움직임벡터 부호화부를 포함하는 것을 특징으로 한다.
여기서, 대표 움직임벡터 선택부는, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하인 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 어느 하나를 대표 움직임벡터로 선택할 수 있다.
또한, 움직임벡터 부호화부는, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 부호화 비용이 최소인 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화할 수 있다.
또한, 후보 예측 움직임벡터 분류부는, 각 후보 예측 움직임벡터의 특성에 따라 규칙적인 움직임벡터 집합 및 불규칙적인 움직임벡터 집합으로 분류할 수 있다.
또한, 대표 움직임벡터 선택부는, 복수 개의 대표 움직임벡터들 중 율-왜곡 기반의 판별식에 기초하여 부호화 비용이 최소인 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화할 수 있다.
율-왜곡 기반의 판별식은 다음과 같이 표현될 수 있다.
Figure 112010037786534-pat00001
여기서,
Figure 112010037786534-pat00002
는 현재블록 X의 실제 움직임벡터를 의미하며,
Figure 112010037786534-pat00003
는 최적의 움직임벡터 인덱스이고,
Figure 112010037786534-pat00004
는 움직임 예측을 수행하고 얻어지는 실제 영상과 이전에 복원된 영상과의 SAD(Sum of Absolute Difference) 또는 SATD(Sum of Absolute Transformed Difference)값을 의미하며,
Figure 112010037786534-pat00005
Figure 112010037786534-pat00006
Figure 112010037786534-pat00007
의 균형을 조정하기 위한 라그랑지 승수를 나타낸다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 영상 복호화 장치는, 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하고, 분류된 각각의 후보 집합으로부터 대표 움직임벡터를 선정하며, 선정된 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 차분 값이 복호화된 차분 벡터를 가산하여 현재 움직임벡터를 복원하는 움직임벡터 복호화기; 및 비트스트림으로부터 추출되는 차분 값을 복호화하며, 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임벡터를 이용하여 예측 복호화하여 현재블록을 복원하는 영상 복호화기를 포함하는 것을 특징으로 한다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 움직임벡터 복호화 장치는, 후보 예측 움직임벡터 집합을 이루는 각 후보 예측 움직임벡터에 대하여 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하는 후보 예측 움직임벡터 분류부; 후보 예측 움직임벡터 분류부에 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정하고, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 대표 움직임벡터 중의 적어도 하나를 선택하는 대표 움직임벡터 선택부; 및 대표 움직임벡터 선택부에 의해 선택된 대표 움직임벡터에 비트스트림으로부터 추출된 차분 값이 복원된 차분 벡터를 가산하여 현재 움직임벡터를 복원하는 움직임벡터 복호화부를 포함하는 것을 특징으로 한다.
여기서, 대표 움직임벡터 선택부는, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하인 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 어느 하나를 대표 움직임벡터로 선택할 수 있다.
또한, 대표 움직임벡터 선택부는, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 율-왜곡 기반의 대표 움직임벡터에 차분 벡터를 가산하여 현재 움직임벡터를 복원할 수 있다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 영상 부호화/복호화 방법은, 현재블록의 움직임벡터를 결정하고, 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류하며, 분류된 각각의 후보 집합으로부터 대표 움직임벡터를 선정하고, 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 결정된 움직임벡터와의 차분 값을 부호화하는 단계; 및 비트스트림으로부터 추출되는 차분 값을 복호화하며, 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 제2 후보 집합으로 분류하고, 분류된 각각의 제2 후보 집합으로부터 제2 대표 움직임벡터를 선정하며, 선정된 각각의 제2 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하며 차분 값이 복호화된 차분 벡터를 가산하여 현재 움직임벡터를 복원하고, 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임벡터를 이용하여 예측 복호화하여 상기 현재블록을 복원하는 단계를 포함하는 것을 특징으로 한다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 영상 부호화 방법은, 현재블록의 움직임벡터를 결정하는 단계; 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하는 단계; 분류된 각각의 후보 집합으로부터 대표 움직임벡터를 선정하는 단계; 선정된 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 하나의 대표 움직임벡터를 선택하는 단계; 및 적응적으로 선택된 대표 움직임벡터와 현재블록의 움직임벡터와의 차분 값을 부호화하는 단계를 포함하는 것을 특징으로 한다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 움직임벡터 부호화 방법은, 후보 예측 움직임벡터 집합을 이루는 각 후보 예측 움직임벡터에 대하여 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하는 단계; 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정하는 단계; 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 대표 움직임벡터 중의 하나를 선택하는 단계; 및 선택된 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화하는 단계를 포함하는 것을 특징으로 한다.
바람직하게는, 각각의 상기 후보 집합으로부터 선정된 각각의 상기 대표 움직임벡터 사이의 차이가 상기 임계치 이하인 경우, 각각의 상기 후보 집합으로부터 선정된 상기 대표 움직임벡터들 중 어느 하나를 대표 움직임벡터로 선택한다.
또한, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 부호화 비용이 최소인 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화할 수 있다.
또한, 후보 예측 움직임벡터 분류단계는, 각 후보 예측 움직임벡터의 특성에 따라 규칙적인 움직임벡터 집합 및 불규칙적인 움직임벡터 집합으로 분류할 수 있다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 영상 복호화 방법은, 비트스트림으로부터 추출되는 차분 값을 복호화하는 단계; 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하는 단계; 분류된 각각의 후보 집합으로부터 대표 움직임벡터를 선정하는 단계; 선정된 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 차분 값이 복호화된 차분 벡터를 가산하여 현재 움직임벡터를 복원하는 단계; 및 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임벡터를 이용하여 예측 복호화하여 상기 현재블록을 복원하는 단계를 포함하는 것을 특징으로 한다.
전술한 목적을 달성하기 위한 본 발명의 실시예에 따른 움직임벡터 복호화 방법은, 후보 예측 움직임벡터 집합을 이루는 각 후보 예측 움직임벡터에 대하여 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하는 단계; 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정하는 단계; 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 대표 움직임벡터 중의 하나를 선택하는 단계; 및 선택된 대표 움직임벡터에 비트스트림으로부터 추출된 차분 값이 복원된 차분 벡터를 가산하여 현재 움직임벡터를 복원하는 단계를 포함하는 것을 특징으로 한다.
여기서, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하인 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 어느 하나를 대표 움직임벡터로 선택할 수 있다.
또한, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 율-왜곡 기반의 대표 움직임벡터에 차분 벡터를 가산하여 현재 움직임벡터를 복원할 수 있다.
본 발명의 실시예에 따르면, 후보 예측 움직임 벡터가 많아질수록 인덱싱 비트가 증가하는 문제를 최소화하면서도 고정된 움직임 예측 후보로 인한 부호화 효율 저하 문제를 동시에 해결하기 위해 다양한 특성을 갖는 후보 예측 움직임 벡터들 중에 대표 후보 예측 움직임 벡터들을 적응적으로 가변 산출함으로써 현재 블록의 움직임 벡터 부호화 성능을 크게 향상시켜 비디오 압축 장치의 압축 성능 혹은 복원 영상의 화질을 크게 향상시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치를 개략적으로 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 움직임벡터 부호화 장치를 개략적으로 도시한 도면이다.
도 3은 주변 블록의 움직임정보의 예를 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 따른 영상 부호화 방법을 나타낸 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 움직임벡터 부호화 방법을 나타낸 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 영상 복호화 장치를 개략적으로 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 움직임벡터 복호화 장치를 개략적으로 도시한 도면이다.
도 8은 본 발명의 일 실시예에 따른 영상 복호화 방법을 나타낸 흐름도이다.도 9는 본 발명의 일 실시예에 따른 움직임벡터 복호화 방법을 나타낸 흐름도이다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치를 개략적으로 도시한 도면이다. 본 발명의 일 실시예에 따른 영상 부호화 장치(100)는 영상을 부호화하는 장치로서, 움직임 벡터 부호화기(Motion Vector Encoder, 110)와 영상 부호화기(Video Encoder, 120)를 포함하여 구성될 수 있다.
움직임 벡터 부호화기(110)는 현재블록에 대한 주변블록(Neighbor Block)의 움직임정보(Motion Information)에 기초하는 복수 개의 후보 예측 움직임벡터들의 집합에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하고, 분류된 각각의 후보 집합으로부터 대표 움직임벡터를 선정하며, 선정된 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 현재블록의 움직임벡터와의 차이인 차분 벡터(Differential Motion Vector)를 부호화한다. 차분 벡터는 부호화되어 차분 벡터 데이터로서 생성된다. 따라서, 움직임 벡터 부호화기(110)는 차분 벡터 데이터를 포함하는 움직임 벡터 데이터를 생성한다.
여기서, 움직임 벡터 부호화기(110)는 차분 벡터를 생성하는 데 있어서, 영상 부호화기(120)에서 현재블록을 예측 부호화하기 위해 결정된 현재 움직임벡터를 이용한다. 움직임벡터 부호화기(110)에 대해서는 후술하는 과정에서 도 2를 통해 상세히 설명한다.
영상 부호화기(120)는 현재블록의 움직임벡터인 현재 움직임벡터를 결정하고, 결정된 현재 움직임벡터를 이용하여 현재블록을 예측 부호화한다. 이와 같이 현재 블록이 예측 부호화되어 영상 데이터가 생성된다.
이를 위해, 영상 부호화기(120)는 예측기(Predictor), 감산기(Subtracter), 변환기 및 양자화기(Transformer and Quantizer), 부호화기(Encoder)를 포함하여 구성될 수 있으며, 역 양자화기 및 역 변환기(Inverse Transformer and Inverse Quantizer), 가산기(Adder), 디블로킹 필터(Deblocking Filter), 메모리(Memory) 등을 추가로 포함할 수 있다. 여기서, 예측기는 현재 블록의 움직임을 추정하여 현재 움직임 벡터를 결정하고 현재 움직임 벡터를 이용하여 현재 블록의 움직임을 보상하여 예측 블록(Predicted Block)을 생성하며, 감산기는 현재 블록과 예측 블록을 감산하여 잔여 블록(Residual Block)을 생성하며, 변환기 및 양자화기는 잔여 블록을 변환 및 양자화하여 양자화된 변환 계수(Quantized Transform Coefficient)를 생성하며, 부호화기는 양자화된 변환 계수를 부호화하여 영상 데이터를 생성한다. 또한, 역 양자화기 및 역 변환기는 양자화된 변환 계수를 역 양자화 및 역 변환하여 잔여 블록을 복원하고 가산기는 예측 블록과 복원되는 잔여 블록을 복원하여 현재 블록을 복원하며, 복원된 현재 블록은 디블로킹 필터(Deblocking Filter)에 의해 디블로킹 필터링되어 메모리에 픽처 단위로 누적되어 참조 픽처로서 저장되고 다음 블록 또는 다음 픽처를 예측하는 데 활용된다. 영상 부호화기(120)의 각 구성요소에 대한 구체적인 설명은 본 발명의 요지를 벗어나는 것이므로, 여기서는 그 상세한 설명은 생략한다.
도 2는 본 발명의 일 실시예에 따른 움직임벡터 부호화 장치를 개략적으로 도시한 도면이다.
본 발명의 일 실시예에 따른 움직임 벡터 부호화 장치는, 도 1을 통해 전술한 영상 부호화 장치(100)의 움직임 벡터 부호화기(110)로 구현될 수 있다. 이하에서는 설명의 편의를 위해, 본 발명의 일 실시예에 따른 움직임 벡터 부호화 장치를 움직임 벡터 부호화기(110)라 명명한다.
움직임 벡터 부호화기(110)는 후보 예측 움직임벡터 분류부(112), 대표 움직임벡터 선택부(114) 및 움직임벡터 부호화부(116)를 포함하여 구성될 수 있다.
후보 예측 움직임벡터 분류부(112)는 현재블록에 대한 주변블록의 움직임정보에 기초하는 복수의 후보 예측 움직임벡터들의 집합에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류한다. 여기서, 현재 블록의 주변블록이란 현재블록이 포함된 현재 픽처에서 현재블록이 부호화되기 전에 이미 부호화되고 복호화되어 기 복원된 블록 중 현재블록의 주변에 위치한 블록을 말한다. 주변블록은 현재블록과 인접한 인접 블록이 될 수도 있지만 반드시 인접한 블록만으로 한정되지는 않는다. 또한, 주변블록의 움직임정보란 기 부호화되고 복호화되어 복원된 주변블록에 대해 움직임벡터와 관련하여 획득된 정보들을 말하며, 주변블록의 움직임 벡터와 예측 움직임 벡터 등이 될 수 있다.
도 3은 주변 블록의 움직임정보의 예를 나타낸 도면이다. 현재 블록의 주변에 위치한 블록들 중에서 현재 블록의 왼쪽에 인접한 블록을 블록 A, 위쪽에 인접한 블록을 블록 B, 위쪽 오른쪽에 인접한 블록을 블록 C라고 가정하면, 블록 A, 블록 B 및 블록 C가 현재 블록의 주변블록이 될 수 있다. 이때, 블록 A, 블록 B 및 블록 C는 모두 현재블록이 부호화되기 전에 이미 부호화되고 복호화되어 복원된 블록들이다. 도 3에는 블록 A, 블록 B 및 블록 C만이 현재 블록의 주변 블록인 것으로 도시하였지만, 이에 한정되지 않고 현재블록의 위쪽 왼쪽에 위치한 블록 등과 같이 다른 블록들도 주변 블록으로 이용될 수 있다.
도 3에서 mv264, mvext, mva, mvb, mvc , mv0은 블록 A, 블록 B 및 블록 C 각각의 움직임벡터 및 예측 움직임벡터를 예시적으로 나타낸다. 블록 A, 블록 B 및 블록 C의 움직임벡터 및 예측 움직임벡터는 각 블록을 부호화할 때 이미 결정되어 영상 부호화 장치(100) 또는 움직임 벡터 부호화기(110)의 버퍼 또는 메모리 등에 저장되어 있으므로, 영상 부호화 장치(100), 움직임 벡터 부호화기(110) 또는 후보 예측 움직임벡터 분류부(112)가 현재 블록을 부호화하거나 현재 블록의 움직임 벡터를 부호화할 때 언제든지 획득하여 이용할 수 있는 정보이다. 이 경우, 현재블록을 부호화할 때 이용할 수 있는 후보 예측 움직임벡터의 집합은 {mv264, mvext, mva, mvb, mvc, mv0}로 나타낼 수 있다.
후보 예측 움직임벡터 분류부(112)는, 이와 같은 현재블록에 대한 주변블록의 움직임정보에 기초하는 복수의 후보 예측 움직임벡터들의 집합 {mv264, mvext, mva, mvb, mvc , mv0}에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류한다.
일 예로, 후보 예측 움직임벡터 분류부(112)는 주변블록의 움직임정보를 이용하여 카메라의 움직임 여부를 판단하고, 판단되는 카메라의 움직임 여부를 기초하여 복수 개의 후보 예측 움직임벡터들의 집합 {mv264, mvext, mva, mvb, mvc , mv0}을 다소 규칙적인 움직임(uniform motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mv264, mvext}과, 불규칙한 움직임(irregular motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mva, mvb, mvc , mv0}로 분류할 수 있다.
대표 움직임벡터 선택부(114)는 후보 예측 움직임벡터 분류부(112)에 의해 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정하고, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 대표 움직임벡터 중의 적어도 하나를 선택한다.
예를 들어, 전술한 후보 집합 {mv264, mvext}을 집합 A라 하고, 후보 집합 {mva, mvb, mvc, mv0}을 집합 B라 하면, 대표 움직임벡터 선택부(114)는 집합 A에서는 카메라 움직임의 유무에 따라서 후보 예측 움직임벡터 mv264 나 mvext 중 하나를 대표 움직임벡터 mvA로 선정하고 집합 B에서는 영상 내에서 배경 부분과 객체의 경계 부분을 구분하는 척도에 따라서 {mva, mvb, mvc , mv0} 중에 적절한 하나의 후보 움직임벡터를 대표 움직임벡터 mvB로 선정할 수 있다.
또한, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정한 대표 움직임벡터 mvA와 mvB 사이의 차이를 임계치와 비교한다. 여기서, 임계치는 후보 예측 움직임벡터들에 대하여 후보 집합을 분류하는 후보 예측 움직임벡터의 특성을 고려하여 기 설정된 값으로서, 각 후보 예측 움직임벡터들 사이의 차이에 대한 평균치이거나 최저치, 또는 최고치 등이 설정될 수 있다. 그러나 임계치의 설정은 여기에 기재된 예에 한정되는 것이 아니며, 다양한 임계치 값이 설정될 수 있다. 또한, 임계치는 각각의 후보 집합으로부터 선정한 대표 움직임벡터 mvA와 mvB 사이의 차이에 대한 임계값에 한정되지 않으며, 다양한 측도 값으로 설정될 수도 있다.
대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하이면, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 하나를 대표 움직임벡터로 선택한다. 또한, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 모두를 선택할 수 있다. 예를 들어, 수학식 1에 나타낸 바와 같이, 집합 A로부터 선정된 대표 움직임벡터 mvA와 집합 B로부터 선정된 대표 움직임벡터 mvB의 차이가 임계치 이하인 경우, 집합 A로부터 선정된 대표 움직임벡터 mvA를 후보 예측 움직임벡터들 {mv264, mvext, mva, mvb, mvc , mv0}에 대한 대표 움직임벡터로 선택할 수 있다. 또는, 집합 A로부터 선정된 대표 움직임벡터 mvA와 집합 B로부터 선정된 대표 움직임벡터 mvB의 차이가 임계치보다 큰 경우, 집합 A로부터 선정된 대표 움직임벡터 mvA 및 집합 B로부터 선정된 대표 움직임벡터 mvB 모두를 선택할 수 있다.
Figure 112010037786534-pat00008
움직임벡터 부호화부(116)는 대표 움직임벡터 선택부(114)에 의해 선택된 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화한다. 이때, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 움직임벡터 부호화부(116)는 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 부호화 비용이 최소인 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화할 수 있다. 이 경우, 움직임벡터 부호화부(116)는 수학식 2와 같은 율-왜곡 기반의 판별식에 기초하여 부호화 비용이 최소인 대표 움직임벡터를 선택할 수 있다.
Figure 112010037786534-pat00009
여기서
Figure 112010037786534-pat00010
는 현재블록 X의 실제 움직임벡터를 의미하며,
Figure 112010037786534-pat00011
는 최적의 움직임벡터 인덱스이고,
Figure 112010037786534-pat00012
는 움직임 예측을 수행하고 얻어지는 실제 영상과 이전에 복원된 영상과의 SAD(Sum of Absolute Difference) 또는 SATD(Sum of Absolute Transformed Difference)값을 의미하며,
Figure 112010037786534-pat00013
Figure 112010037786534-pat00014
Figure 112010037786534-pat00015
의 균형을 조정하기 위한 라그랑지 승수를 나타낸다.
대표 움직임벡터 선택부(114)로부터 전송된 예측 움직임 후보 중 하나의 최적 예측 움직임 후보가 결정되면, 움직임벡터 부호화부(116)는 현재블록의 움직임벡터와 선택된 최적 예측 움직임벡터 사이의 차분 값을 부호화함으로써 부호화 비트스트림을 생성한다. 이와 같은 비트스트림 생성과정은 가변길이 부호화(Variable Length Coding) 및 허프만(Huffman), 산술 부호화(Arithmetic coding) 등의 다양한 에트로피 부호화 방법이 사용될 수 있다.
도 4는 본 발명의 일 실시예에 따른 영상 부호화 방법을 나타낸 흐름도이다. 도면을 참조하여 본 발명의 실시예에 따른 영상 부호화 장치의 기능 및 동작을 상세하게 설명한다.
영상 부호화기(120)는 현재블록의 움직임벡터를 결정하고, 결정된 움직임벡터를 이용하여 현재블록을 예측 부호화한다(S401).
움직임벡터 부호화기(110)의 후보 예측 움직임벡터 분류부(112)는 현재블록에 대한 주변블록의 움직임정보에 기초하는 복수의 후보 예측 움직임벡터들의 집합에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류한다(S403).
일 예로, 후보 예측 움직임벡터 분류부(112)는 주변블록의 움직임정보를 이용하여 카메라의 움직임 여부를 판단하고, 판단되는 카메라의 움직임 여부를 기초하여 전술한 복수 개의 후보 예측 움직임벡터들의 집합 {mv264, mvext, mva, mvb, mvc , mv0}을 다소 규칙적인 움직임(uniform motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mv264, mvext}과, 불규칙한 움직임(irregular motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mva, mvb, mvc , mv0}로 분류할 수 있다.
움직임벡터 부호화기(110)의 대표 움직임벡터 선택부(114)는 후보 예측 움직임벡터 분류부(112)에 의해 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정한다(S405). 예를 들어, 전술한 후보 집합 {mv264, mvext}을 집합 A라 하고, 후보 집합 mva, mvb, mvc , mv0}을 집합 B라 하면, 대표 움직임벡터 선택부(114)는 집합 A에서는 카메라 움직임의 유무에 따라서 후보 예측 움직임벡터 mv264 나 mvext 중 하나를 대표 움직임벡터 mvA로 선정하고 집합 B에서는 영상 내에서 배경 부분과 객체의 경계 부분을 구분하는 척도에 따라서 {mva, mvb, mvc , mv0} 중에 적절한 하나의 후보 움직임벡터를 대표 움직임벡터 mvB로 선정할 수 있다.
또한, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며(S407), 비교된 결과에 따라 각각의 대표 움직임벡터 중의 적어도 하나를 선택한다(S409). 이때, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정한 대표 움직임벡터들 사이의 차이를 임계치와 비교하며, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하이면, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 하나를 대표 움직임벡터로 선택할 수 있다. 또한, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 모두를 선택할 수 있다. 예를 들어, 전술한 집합 A로부터 선정된 대표 움직임벡터 mvA와 집합 B로부터 선정된 대표 움직임벡터 mvB의 차이가 임계치 이하인 경우, 집합 A로부터 선정된 대표 움직임벡터 mvA를 후보 예측 움직임벡터들 {mv264, mvext, mva, mvb, mvc, mv0}에 대한 대표 움직임벡터로 선택할 수 있다. 또는, 집합 A로부터 선정된 대표 움직임벡터 mvA와 집합 B로부터 선정된 대표 움직임벡터 mvB의 차이가 임계치보다 큰 경우, 집합 A로부터 선정된 대표 움직임벡터 mvA 및 집합 B로부터 선정된 대표 움직임벡터 mvB 모두를 선택할 수 있다.
움직임벡터 부호화부(116)는 대표 움직임벡터 선택부(114)에 의해 선택된 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화한다(S411). 이때, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 움직임벡터 부호화부(116)는 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 부호화 비용이 최소인 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화할 수 있다(S413). 이 경우, 움직임벡터 부호화부(116)는 전술한 수학식 2와 같은 율-왜곡 기반의 판별식에 기초하여 부호화 비용이 최소인 대표 움직임벡터를 선택할 수 있다.
대표 움직임벡터 선택부(114)로부터 전송된 예측 움직임 후보 중 하나의 최적 예측 움직임 후보가 결정되면, 움직임벡터 부호화부(116)는 현재블록의 움직임벡터와 선택된 최적 예측 움직임벡터 사이의 차분 값을 부호화함으로써 부호화 비트스트림을 생성한다. 이와 같은 비트스트림 생성과정은 가변길이 부호화(Variable Length Coding) 및 허프만(Huffman), 산술 부호화(Arithmetic coding) 등의 다양한 에트로피 부호화 방법이 사용될 수 있다.
도 5는 본 발명의 일 실시예에 따른 움직임벡터 부호화 방법을 나타낸 흐름도이다.
후보 예측 움직임벡터 분류부(112)는 현재블록에 대한 주변블록의 움직임정보에 기초하는 복수의 후보 예측 움직임벡터들의 집합에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류한다(S501).
일 예로, 후보 예측 움직임벡터 분류부(112)는 주변블록의 움직임정보를 이용하여 카메라의 움직임 여부를 판단하고, 판단되는 카메라의 움직임 여부를 기초하여 전술한 복수 개의 후보 예측 움직임벡터들의 집합 {mv264, mvext, mva, mvb, mvc , mv0}을 다소 규칙적인 움직임(uniform motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mv264, mvext}과, 불규칙한 움직임(irregular motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mva, mvb, mvc , mv0}로 분류할 수 있다.
움직임벡터 부호화기(110)의 대표 움직임벡터 선택부(114)는 후보 예측 움직임벡터 분류부(112)에 의해 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정한다(S503). 예를 들어, 전술한 후보 집합 {mv264, mvext}을 집합 A라 하고, 후보 집합 {mva, mvb, mvc , mv0}을 집합 B라 하면, 대표 움직임벡터 선택부(114)는 집합 A에서는 카메라 움직임의 유무에 따라서 후보 예측 움직임벡터 mv264 나 mvext 중 하나를 대표 움직임벡터 mvA로 선정하고 집합 B에서는 영상 내에서 배경 부분과 객체의 경계 부분을 구분하는 척도에 따라서 {mva, mvb, mvc , mv0} 중에 적절한 하나의 후보 움직임벡터를 대표 움직임벡터 mvB로 선정할 수 있다.
또한, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며(S505), 비교된 결과에 따라 각각의 대표 움직임벡터 중의 적어도 하나를 선택한다(S507). 이때, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정한 대표 움직임벡터들 사이의 차이를 임계치와 비교하며, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하이면, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 하나를 대표 움직임벡터로 선택할 수 있다. 또한, 대표 움직임벡터 선택부(114)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 모두를 선택할 수 있다(S511). 예를 들어, 전술한 집합 A로부터 선정된 대표 움직임벡터 mvA와 집합 B로부터 선정된 대표 움직임벡터 mvB의 차이가 임계치 이하인 경우, 집합 A로부터 선정된 대표 움직임벡터 mvA를 후보 예측 움직임벡터들 {mv264, mvext, mva, mvb, mvc , mv0}에 대한 대표 움직임벡터로 선택할 수 있다. 또는, 집합 A로부터 선정된 대표 움직임벡터 mvA와 집합 B로부터 선정된 대표 움직임벡터 mvB의 차이가 임계치보다 큰 경우, 집합 A로부터 선정된 대표 움직임벡터 mvA 및 집합 B로부터 선정된 대표 움직임벡터 mvB 모두를 선택할 수 있다.
움직임벡터 부호화부(116)는 대표 움직임벡터 선택부(114)에 의해 선택된 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화한다(S509). 이때, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 움직임벡터 부호화부(116)는 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 부호화 비용이 최소인 대표 움직임벡터와 현재블록의 움직임벡터의 차분 값을 부호화할 수 있다(S511). 이 경우, 움직임벡터 부호화부(116)는 전술한 수학식 2와 같은 율-왜곡 기반의 판별식에 기초하여 부호화 비용이 최소인 대표 움직임벡터를 선택할 수 있다.
대표 움직임벡터 선택부(114)로부터 전송된 예측 움직임 후보 중 하나의 최적 예측 움직임 후보가 결정되면, 움직임벡터 부호화부(116)는 현재블록의 움직임벡터와 선택된 최적 예측 움직임벡터 사이의 차분 값을 부호화함으로써 부호화 비트스트림을 생성한다. 이와 같은 비트스트림 생성과정은 가변길이 부호화(Variable Length Coding) 및 허프만(Huffman), 산술 부호화(Arithmetic coding) 등의 다양한 에트로피 부호화 방법이 사용될 수 있다.
도 6은 본 발명의 일 실시예에 따른 영상 복호화 장치를 개략적으로 도시한 도면이다. 본 발명의 일 실시예에 따른 영상 복호화 장치(700)는 움직임 벡터 복호화기(Motion Vector Decoder, 610) 및 영상 복호화기(Video Decoder, 620)를 포함하여 구성될 수 있다.
움직임벡터 복호화기(610)는 현재블록에 대한 주변블록의 움직임정보에 기초하는 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합을 분류하고, 분류된 각각의 후보집합으로부터 대표 움직임벡터를 선정하며, 선정된 각각의 대표 움직임벡터 사이의 차이에 따라 적응적으로 예측 움직임벡터를 선택하여 차분 값이 복호화된 차분 벡터를 가산하여 현재 움직임벡터를 복원한다. 움직임벡터 복호화기(610)에 대해서는 후술하는 과정에서 도 7을 통해 상세하게 설명한다.
영상 복호화기(620)는 비트스트림으로부터 추출되는 차분 값을 복호화하며, 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임벡터를 이용하여 예측 복호화하여 현재 블록을 복원한다. 이를 위해, 영상 복호화기(620)는 복호화기(Decoder), 역 양자화기 및 역 변환기, 예측기, 가산기, 디블로킹 필터, 메모리 등을 포함하여 구성될 수 있다. 여기서, 복호화기는 비트스트림으로부터 추출되는 영상 데이터를 복호화하여 양자화된 변환 계수를 복원하고, 역 양자화기 및 역 변환기는 복원되는 양자화된 변환 계수를 역 양자화 및 역 변환하여 잔여 블록을 복원하며, 예측기는 움직임 벡터 복호화기(610)에 의해 복원되는 현재 블록의 현재 움직임벡터를 이용하여 현재 블록의 움직임을 보상함으로써 예측 블록을 생성하며, 가산기는 복원되는 잔여 블록과 예측 블록을 가산하여 현재블록을 복원할 수 있다. 복원되는 현재블록은 디블로킹 필터에 의해 디블로킹 필터링되고 픽처 단위로 누적되어 복원 영상으로서 출력되거나 메모리에 저장되어 예측기가 다음 블록 또는 다음 픽처를 예측하는데 활용된다. 영상 복호화기(620)의 각 구성요소에 대한 구체적인 설명은 본 발명의 요지를 벗어나는 것이므로, 여기서는 그 상세한 설명은 생략한다.
도 7은 본 발명의 일 실시예에 따른 움직임벡터 복호화 장치를 개략적으로 도시한 도면이다.
본 발명의 일 실시예에 따른 움직임 벡터 복호화 장치는, 도 6을 통해 전술한 영상 복호화 장치(600)의 움직임 벡터 복호화기(610)로 구현될 수 있다. 이하에서는 설명의 편의를 위해, 본 발명의 일 실시예에 따른 움직임벡터 복호화 장치를 움직임벡터 복호화기(610)라 명명한다.
움직임 벡터 복호화기(610)는 후보 예측 움직임벡터 분류부(612), 대표 움직임벡터 선택부(614) 및 움직임벡터 복호화부(616)를 포함하여 구성될 수 있다.
후보 예측 움직임벡터 분류부(612)는 현재블록에 대한 주변블록의 움직임정보에 기초하는 복수의 후보 예측 움직임벡터들의 집합에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류한다. 후보 예측 움직임벡터 분류부(612)의 기능 및 동작은 도 2의 후보 예측 움직임벡터 분류부(112)의 기능 및 동작과 유사하므로 그 상세한 설명을 생략한다.
대표 움직임벡터 선택부(614)는 후보 예측 움직임벡터 분류부(612)에 의해 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정하고, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며, 비교된 결과에 따라 각각의 대표 움직임벡터 중의 적어도 하나를 선택한다. 대표 움직임벡터 선택부(614)의 기능 및 동작은 도 2의 대표 움직임벡터 선택부(614)의 기능 및 동작과 유사하므로 그 상세한 설명을 생략한다.
움직임벡터 복호화부(616)는 대표 움직임벡터 선택부(614)에 의해 선택된 대표 움직임벡터에 비트스트림으로부터 추출된 차분 값이 복원된 차분 벡터를 가산하여 현재 움직임벡터를 복원한다. 이때, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 움직임벡터 복호화부(616)는 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 율-왜곡 가반의 대표 움직임벡터를 선택하여 현재 움직임벡터를 복원할 수 있다.
도 8은 본 발명의 일 실시예에 따른 영상 복호화 방법을 나타낸 흐름도이다. 도면을 참조하여 본 발명의 실시예에 따른 영상 복호화 장치의 기능 및 동작을 상세하게 설명한다.
영상 복호화기(620)는 비트스트림으로부터 추출되는 차분 값을 복호화하여 차분 벡터를 복원한다(S801).
움직임벡터 복호화기(610)의 후보 예측 움직임벡터 분류부(612)는 현재블록에 대한 주변블록의 움직임정보에 기초하는 복수의 후보 예측 움직임벡터들의 집합에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류한다(S803).
일 예로, 후보 예측 움직임벡터 분류부(112)는 주변블록의 움직임정보를 이용하여 카메라의 움직임 여부를 판단하고, 판단되는 카메라의 움직임 여부를 기초하여 전술한 복수 개의 후보 예측 움직임벡터들의 집합 {mv264, mvext, mva, mvb, mvc , mv0}을 다소 규칙적인 움직임(uniform motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mv264, mvext}과, 불규칙한 움직임(irregular motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mva, mvb, mvc , mv0}로 분류할 수 있다.
움직임벡터 복호화기(610)의 대표 움직임벡터 선택부(614)는 후보 예측 움직임벡터 분류부(612)에 의해 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정한다(S805). 예를 들어, 전술한 후보 집합 {mv264, mvext}을 집합 A라 하고, 후보 집합 {mva, mvb, mvc , mv0}을 집합 B라 하면, 대표 움직임벡터 선택부(614)는 집합 A에서는 카메라 움직임의 유무에 따라서 후보 예측 움직임벡터 mv264 나 mvext 중 하나를 대표 움직임벡터 mvA로 선정하고 집합 B에서는 영상 내에서 배경 부분과 객체의 경계 부분을 구분하는 척도에 따라서 {mva, mvb, mvc , mv0} 중에 적절한 하나의 후보 움직임벡터를 대표 움직임벡터 mvB로 선정할 수 있다.
또한, 대표 움직임벡터 선택부(614)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며(S807), 비교된 결과에 따라 각각의 대표 움직임벡터 중의 하나를 선택한다(S809). 이때, 대표 움직임벡터 선택부(614)는 각각의 후보 집합으로부터 선정한 대표 움직임벡터들 사이의 차이를 임계치와 비교하며, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하이면, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 하나를 대표 움직임벡터로 선택할 수 있다. 또한, 대표 움직임벡터 선택부(614)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 율-왜곡 기반으로 비용이 최소인 대표 움직임벡터를 선택할 수 있다(S811).
움직임벡터 복호화부(616)는 대표 움직임벡터 선택부(614)에 의해 선택된 대표 움직임벡터에 복원된 차분 벡터를 가산하여 현재 움직임벡터를 복원한다(S813).
영상 복호화기(620)는 비트스트림으로부터 추출되는 영상 데이터를 복원되는 현재 움직임벡터를 이용하여 예측 복호화하여 현재블록을 복원한다(S815).
도 9는 본 발명의 일 실시예에 따른 움직임벡터 복호화 방법을 나타낸 흐름도이다.
후보 예측 움직임벡터 분류부(612)는 현재블록에 대한 주변블록의 움직임정보에 기초하는 복수의 후보 예측 움직임벡터들의 집합에 대하여, 각 후보 예측 움직임벡터의 특성에 따라 복수의 후보 집합으로 분류한다(S901).
일 예로, 후보 예측 움직임벡터 분류부(112)는 주변블록의 움직임정보를 이용하여 카메라의 움직임 여부를 판단하고, 판단되는 카메라의 움직임 여부를 기초하여 전술한 복수 개의 후보 예측 움직임벡터들의 집합 {mv264, mvext, mva, mvb, mvc , mv0}을 다소 규칙적인 움직임(uniform motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mv264, mvext}과, 불규칙한 움직임(irregular motion)을 나타내는 후보 예측 움직임벡터들의 후보 집합 {mva, mvb, mvc , mv0}로 분류할 수 있다.
움직임벡터 복호화기(610)의 대표 움직임벡터 선택부(614)는 후보 예측 움직임벡터 분류부(612)에 의해 분류된 각각의 후보 집합에 대하여 대표 움직임벡터를 선정한다(S903). 예를 들어, 전술한 후보 집합 {mv264, mvext}을 집합 A라 하고, 후보 집합 {mva, mvb, mvc , mv0}을 집합 B라 하면, 대표 움직임벡터 선택부(614)는 집합 A에서는 카메라 움직임의 유무에 따라서 후보 예측 움직임벡터 mv264 나 mvext 중 하나를 대표 움직임벡터 mvA로 선정하고 집합 B에서는 영상 내에서 배경 부분과 객체의 경계 부분을 구분하는 척도에 따라서 {mva, mvb, mvc , mv0} 중에 적절한 하나의 후보 움직임벡터를 대표 움직임벡터 mvB로 선정할 수 있다.
또한, 대표 움직임벡터 선택부(614)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이를 임계치와 비교하며(S905), 비교된 결과에 따라 각각의 대표 움직임벡터 중의 하나를 선택한다(S907). 이때, 대표 움직임벡터 선택부(614)는 각각의 후보 집합으로부터 선정한 대표 움직임벡터들 사이의 차이를 임계치와 비교하며, 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치 이하이면, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 하나를 대표 움직임벡터로 선택할 수 있다. 또한, 대표 움직임벡터 선택부(614)는 각각의 후보 집합으로부터 선정된 각각의 대표 움직임벡터 사이의 차이가 임계치보다 큰 경우, 각각의 후보 집합으로부터 선정된 대표 움직임벡터들 중 율-왜곡 기반으로 비용이 최소인 대표 움직임벡터를 선택할 수 있다(S909).
움직임벡터 복호화부(616)는 대표 움직임벡터 선택부(614)에 의해 선택된 대표 움직임벡터에 복원된 차분 벡터를 가산하여 현재 움직임벡터를 복원한다(S911).
이로써, 후보 예측 움직임 벡터가 많아질수록 인덱싱 비트가 증가하는 문제를 최소화하면서도 고정된 움직임 예측 후보로 인한 부호화 효율 저하 문제를 동시에 해결하기 위해 다양한 특성을 갖는 후보 예측 움직임 벡터들 중에 대표 후보 예측 움직임 벡터들을 적응적으로 가변 산출함으로써 현재 블록의 움직임 벡터 부호화 성능을 크게 향상시켜 비디오 압축 장치의 압축 성능 혹은 복원 영상의 화질을 크게 향상시킬 수 있게 된다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.
또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재할 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
이상에서 설명한 바와 같이 본 발명의 실시예는, 후보 예측 움직임 벡터가 많아질수록 인덱싱 비트가 증가하는 문제를 최소화하면서도 고정된 움직임 예측 후보로 인한 부호화 효율 저하 문제를 동시에 해결하기 위해 다양한 특성을 갖는 후보 예측 움직임 벡터들 중에 대표 후보 예측 움직임 벡터들을 적응적으로 가변 산출함으로써 현재 블록의 움직임 벡터 부호화 성능을 크게 향상시켜 비디오 압축 장치의 압축 성능 혹은 복원 영상의 화질을 크게 향상시킬 수 있는 효과를 발생하는 매우 유용한 발명이다.
100: 영상 부호화 장치
110: 움직임벡터 부호화기
112: 후보 예측 움직임벡터 분류부
114: 대표 움직임벡터 선택부
116: 움직임벡터 부호화부
120: 영상 부호화기
600: 영상 복호화 장치
610: 움직임벡터 복호화기
612: 후보 예측 움직임벡터 분류부
614: 대표 움직임벡터 선택부
616: 움직임벡터 복호화부
620: 영상 복호화기

Claims (25)

  1. 삭제
  2. 삭제
  3. 현재블록의 움직임벡터를 부호화하는 장치에 있어서,
    상기 현재블록의 주변블록에 기반한 움직임벡터들 중 제1 움직임벡터 집합에서 제1 대표 움직임벡터를 선택하고 제2 움직임벡터 집합에서 제2 대표 움직임벡터를 선택하며, 상기 제1 움직임벡터 집합으로부터 선택된 제1 대표 움직임벡터와 상기 제2 움직임벡터 집합으로부터 선택된 제2 대표 움직임벡터를 서로 비교하고, 비교 결과에 근거하여 상기 제1 대표 움직임벡터와 상기 제2 대표 움직임벡터 중 하나를 포함하는 예측 움직임벡터 후보를 구성하거나 또는 상기 제1 대표 움직임벡터와 상기 제2 대표 움직임벡터 모두를 포함하는 예측 움직임벡터 후보를 구성하는 대표 움직임벡터 선택부; 및
    상기 예측 움직임벡터 후보 중에서 상기 현재블록의 움직임벡터에 대한 예측 움직임벡터를 선택하고, 상기 선택된 예측 움직임벡터와 상기 현재블록의 움직임벡터의 차분 값을 부호화하는 움직임벡터 부호화부
    를 포함하는 것을 특징으로 하는 움직임벡터 부호화 장치.
  4. 제 3항에 있어서,
    상기 대표 움직임벡터 선택부는,
    상기 제1 및 제2 대표 움직임벡터 간의 차이가 임계치 이하인 경우, 상기 제1 및 제2 대표 움직임벡터 중 하나를 상기 예측 움직임벡터 후보로 포함시키는 것을 특징으로 하는 움직임벡터 부호화 장치.
  5. 제 3항에 있어서,
    상기 대표 움직임벡터 선택부는,
    상기 제1 및 제2 대표 움직임벡터 간의 차이가 임계치보다 큰 경우, 상기 제1 및 제2 대표 움직임벡터 모두를 상기 예측 움직임벡터 후보로 포함시키는 것을 특징으로 하는 움직임벡터 부호화 장치.
  6. 제 3항에 있어서,
    상기 움직임벡터 부호화부는,
    상기 예측 움직임벡터 후보들 중에서 상기 예측 움직임벡터를 식별하기 위한 인덱스 정보를 생성하는 것을 특징으로 하는 움직임벡터 부호화 장치.
  7. 제 3항에 있어서,
    상기 움직임벡터 부호화부는, 상기 예측 움직임벡터 후보들 중 율-왜곡 기반의 판별식에 기초하여 부호화 비용이 최소인 후보를 상기 예측 움직임벡터로서 결정하는 것을 특징으로 하는 움직임벡터 부호화 장치.
  8. 제 3항에 있어서,
    상기 주변블록은 상기 현재블록을 포함하는 현재 픽처 내에서 상기 현재블록에 주변에 위치한 블록인 것을 특징으로 하는 움직임벡터 부호화 장치.
  9. 제 8항에 있어서,
    상기 주변블록은 상기 현재블록의 좌측, 상단, 좌상단 및 우상단에 위치하는 블록을 포함하는 것을 특징으로 하는 움직임벡터 부호화 장치.
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 현재블록의 움직임벡터를 복호화하는 방법에 있어서,
    상기 현재블록의 주변블록에 기반한 움직임벡터들 중 제1 움직임벡터 집합에서 제1 대표 움직임벡터를 선택하고 제2 움직임벡터 집합에서 제2 대표 움직임벡터를 선택하는 단계;
    상기 제1 움직임벡터 집합으로부터 선택된 제 1 대표 움직임벡터와 상기 제2 움직임벡터 집합으로부터 선택된 제2 대표 움직임벡터를 서로 비교하고, 비교 결과에 근거하여 상기 제1 및 제2 대표 움직임벡터 중 하나를 포함하는 예측 움직임벡터 후보를 구성하거나 또는 상기 제1 및 제2 대표 움직임벡터 모두를 포함하는 예측 움직임벡터 후보를 구성하는 단계; 및
    비트스트림으로부터 차분 벡터를 복호화하고, 상기 예측 움직임벡터 후보 중에서 상기 현재블록의 움직임벡터에 대한 예측 움직임벡터를 선택하며, 상기 차분 벡터와 상기 선택된 예측 움직임벡터를 가산하여 상기 현재블록의 움직임벡터를 복원하는 단계
    를 포함하는 것을 특징으로 하는 움직임벡터 복호화 방법.
  21. 제 20항에 있어서,
    상기 예측 움직임벡터 후보를 구성하는 단계는,
    상기 제1 및 제2 대표 움직임벡터 간의 차이가 임계치 이하인 경우, 상기 제1 및 제2 대표 움직임벡터 중 하나를 상기 예측 움직임벡터 후보로 포함시키는 것을 특징으로 움직임벡터 복호화 방법.
  22. 제 20항에 있어서,
    상기 예측 움직임벡터 후보를 구성하는 단계는,
    상기 제1 및 제2 대표 움직임벡터 간의 차이가 임계치보다 큰 경우, 상기 제1 및 제2 대표 움직임벡터 모두를 상기 예측 움직임벡터 후보로 포함시키는 것을 특징으로 하는 움직임벡터 복호화 방법.
  23. 제 20항에 있어서,
    상기 예측 움직임벡터는 인덱스 정보에 의해 상기 예측 움직임벡터 후보들 중에서 선택하는 것을 특징으로 하는 움직임벡터 복호화 방법.
  24. 제 20항에 있어서,
    상기 주변블록은 상기 현재블록을 포함하는 현재 픽처 내에서 상기 현재블록에 주변에 위치한 블록인 것을 특징으로 하는 움직임벡터 복호화 방법.
  25. 제 24항에 있어서,
    상기 주변블록은 상기 현재블록의 좌측, 상단, 좌상단 및 우상단에 위치하는 블록을 포함하는 것을 특징으로 하는 움직임벡터 복호화 방법.
KR1020100055678A 2010-06-11 2010-06-11 효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치 KR101678654B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020100055678A KR101678654B1 (ko) 2010-06-11 2010-06-11 효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치
PCT/KR2011/004234 WO2011155779A2 (ko) 2010-06-11 2011-06-09 효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100055678A KR101678654B1 (ko) 2010-06-11 2010-06-11 효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020150091382A Division KR101671507B1 (ko) 2015-06-26 2015-06-26 움직임벡터를 부호화 또는 복호화하기 위한 방법과 장치

Publications (2)

Publication Number Publication Date
KR20110135761A KR20110135761A (ko) 2011-12-19
KR101678654B1 true KR101678654B1 (ko) 2016-11-22

Family

ID=45098541

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100055678A KR101678654B1 (ko) 2010-06-11 2010-06-11 효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치

Country Status (2)

Country Link
KR (1) KR101678654B1 (ko)
WO (1) WO2011155779A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019209050A1 (ko) * 2018-04-25 2019-10-31 엘지전자 주식회사 변환 타입에 기초하여 비디오 신호를 처리하는 방법 및 장치

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102546142B1 (ko) * 2016-03-18 2023-06-21 로즈데일 다이나믹스 엘엘씨 비디오 코딩 시스템에서 블록 구조 도출 방법 및 장치

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990005282A (ko) * 1997-06-30 1999-01-25 배순훈 웨이브렛 변환 영역에서의 패턴 분류를 이용한 계층적 움직임 추정 방법
EP1407613A1 (en) * 2001-07-06 2004-04-14 Koninklijke Philips Electronics N.V. Methods of and units for motion or depth estimation and image processing apparatus provided with such motion estimation unit
KR101217627B1 (ko) * 2006-02-02 2013-01-02 삼성전자주식회사 블록 기반의 움직임 추정 방법 및 장치
KR20090022377A (ko) * 2007-08-30 2009-03-04 삼성전자주식회사 움직임 추정과 움직임 보상을 이용한 동영상의 프레임률변환 시스템 및 방법
KR101364195B1 (ko) * 2008-06-26 2014-02-21 에스케이텔레콤 주식회사 움직임벡터 부호화/복호화 방법 및 그 장치

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JOEL JUNG et al., "Competition-based scheme for motion vector selection and coding". VCEG 29th meeting, 18, July, 2006, VCEG-AC06.*
김성제외 2명, "효율적 경쟁 기반 스킵모드 부호화를 위한 적응적 문맥 기반 움직임 예측 후보 선택 기법", 한국통신학회논문지, Vol35., No. 5, 2010. 05.*

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019209050A1 (ko) * 2018-04-25 2019-10-31 엘지전자 주식회사 변환 타입에 기초하여 비디오 신호를 처리하는 방법 및 장치

Also Published As

Publication number Publication date
WO2011155779A3 (ko) 2012-05-03
WO2011155779A2 (ko) 2011-12-15
KR20110135761A (ko) 2011-12-19

Similar Documents

Publication Publication Date Title
KR101441905B1 (ko) 후보 예측 움직임 벡터 집합 선택을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR101316060B1 (ko) 인터 예측 부호화된 동영상 복호화 방법
KR101444675B1 (ko) 영상 부호화 및 복호화 방법과 장치
KR101830352B1 (ko) 스킵모드를 이용한 동영상 부호화 및 복호화 방법 및 장치
CN106803956B (zh) 对图像进行解码的方法
KR101365575B1 (ko) 인터 예측 부호화, 복호화 방법 및 장치
KR101459714B1 (ko) 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
JP5061179B2 (ja) 照明変化補償動き予測符号化および復号化方法とその装置
KR101449679B1 (ko) 영상 부호화/복호화 장치 및 방법, 및 참조픽처 인덱싱 장치 및 방법
US8948243B2 (en) Image encoding device, image decoding device, image encoding method, and image decoding method
KR20090095012A (ko) 연속적인 움직임 추정을 이용한 영상 부호화, 복호화 방법및 장치
KR20130085838A (ko) 가중치예측을 이용한 영상 부호화/복호화 방법 및 장치
KR20130110122A (ko) 예측 움직임 벡터 유도 방법 및 이러한 방법을 사용하는 장치
US20170366807A1 (en) Coding of intra modes
KR102027474B1 (ko) 이전 블록의 움직임 벡터를 현재 블록의 움직임 벡터로 이용하는 영상 부호화, 복호화 방법 및 장치
KR20110045950A (ko) 복수의 프레임을 참조하여 영상을 부호화, 복호화하는 방법 및 장치
KR101456491B1 (ko) 복수의 참조 픽처에 기초한 영상 부호화, 복호화 방법 및장치
KR101432767B1 (ko) 움직임 정보 기반의 인접 화소를 이용한 인터 예측 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR101449683B1 (ko) 움직임 벡터 해상도 제한을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR101527148B1 (ko) 인터 예측 장치 및 그를 이용한 영상 부호화/복호화 장치와방법
KR20190117352A (ko) 영상 부호화 또는 복호화 장치 및 방법
KR101678654B1 (ko) 효율적인 움직임 벡터 부호화/복호화를 위한 적응적 경쟁기반 움직임 후보 벡터 산출 기법 및 이를 이용한 움직임 벡터 부/복호화 장치
KR101432779B1 (ko) 움직임 보상 프레임의 선택적 필터링을 이용한 영상 부호화/복호화 방법 및 장치와 그를 위한 인터 예측 방법 및 장치
KR101671507B1 (ko) 움직임벡터를 부호화 또는 복호화하기 위한 방법과 장치
KR101543313B1 (ko) 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치

Legal Events

Date Code Title Description
A107 Divisional application of patent
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
GRNT Written decision to grant
X701 Decision to grant (after re-examination)