[go: up one dir, main page]

KR100978465B1 - 양-예측 부호화 방법 및 장치, 양-예측 복호화 방법 및 장치 및 기록매체 - Google Patents

양-예측 부호화 방법 및 장치, 양-예측 복호화 방법 및 장치 및 기록매체 Download PDF

Info

Publication number
KR100978465B1
KR100978465B1 KR1020100024553A KR20100024553A KR100978465B1 KR 100978465 B1 KR100978465 B1 KR 100978465B1 KR 1020100024553 A KR1020100024553 A KR 1020100024553A KR 20100024553 A KR20100024553 A KR 20100024553A KR 100978465 B1 KR100978465 B1 KR 100978465B1
Authority
KR
South Korea
Prior art keywords
motion vector
reference picture
calculated
prediction
encoding
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1020100024553A
Other languages
English (en)
Other versions
KR20100045959A (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 KR1020100024553A priority Critical patent/KR100978465B1/ko
Publication of KR20100045959A publication Critical patent/KR20100045959A/ko
Application granted granted Critical
Publication of KR100978465B1 publication Critical patent/KR100978465B1/ko
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/533Motion estimation using multistep search, e.g. 2D-log search or one-at-a-time search [OTS]
    • 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
    • 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/567Motion estimation based on rate distortion criteria
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures

Landscapes

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

Abstract

본 발명은 양-예측(Bi-prediction) 부호화 방법 및 장치, 양-예측(Bi-prediction) 복호화 방법 및 장치 및 기록매체에 관한 것이다. 본 발명에 따르면 영상압축의 양-예측 부호화의 구현상의 복잡도 문제를 해결하고, 움직임이 선형적으로 발생한다는 사실을 이용하여 보다 효율적으로 움직임 벡터를 전송함으로써 부호화 효율을 높일 수 있는 양-예측(Bi-prediction) 부호화 방법 및 장치, 양-예측(Bi-prediction) 복호화 방법 및 장치 및 기록매체가 제공된다.

Description

양-예측 부호화 방법 및 장치, 양-예측 복호화 방법 및 장치 및 기록매체{BI-PREDICTION CODING METHOD AND APPARATUS, BI-PREDICTION DECODING METHOD AND APPARATUS, AND RECORDING MIDIUM}
본 발명은 양-예측(Bi-prediction) 부호화 방법 및 장치, 양-예측(Bi-prediction) 복호화 방법 및 장치 및 기록매체에 관한 것으로서, 보다 상세하게는 동영상 압축에 있어 시간축 상관도를 줄일 수 있는 양-예측(Bi-prediction) 부호화 방법 및 장치, 양-예측(Bi-prediction) 복호화 방법 및 장치 및 기록매체에 관한 것이다.
영상 압축 국제표준으로 ISO/IEC JTC1에서 정한 MPEG-1, MPEG-2와 MPEG-4 및 ITU-T의 H.26x 표준에 따르면, 현재의 픽쳐(Picture)를 부호화(Coding)함에 있어 과거의 픽쳐(Picture)를 참조하는 P-픽쳐(P-Picture) 부호화 방법과, 과거 및 미래의 픽쳐(Picture) 두 개를 모두 참조하는 B-픽쳐(B-Picture) 부호화 방법을 채용하고 이를 기반으로 움직임 예측 부호화를 수행하도록 하고 있다.
또한, 움직임 벡터의 부호화 효율을 높이기 위해 현재 블록의 움직임 벡터를 그대로 부호화하는 것이 아니라 이웃한 블록들의 움직임 벡터들과의 연관성이 반영되도록 이웃 블록들의 움직임 벡터들을 이용하여 움직임 벡터의 예측 부호화를 수행하고 있다.
따라서 부호화 효율을 향상시키려면, 움직임 벡터의 정확도와 이에 따른 예측 에러의 최소화도 중요하지만 이와 함께 움직임 벡터 데이터의 압축 효율 또한 고려되어야 한다.
움직임 예측 에러의 최소화를 위해 양방향 예측 부호화 방법에서는 최적의 포워드 움직임 벡터(Forward motion vector, 이하 동일)와 백워드 움직임 벡터(Backward motion vector, 이하 동일) 쌍을 결정하기 위해 조인트 움직임 탐색(Joint Estimation)을 통하여 매우 정확한 움직임 벡터 쌍을 구함으로서 움직임 벡터의 정확도를 극대화하고 있다. 그러나 이러한 양방향 예측 부호화 방법은 매우 높은 복잡도가 요구되어 그 구현상에 많은 어려움이 있다.
이와 같은 구현상의 어려움을 피하기 위해 일반적으로 양방향 예측 부호화 방법은 포워드 움직임 벡터와 백워드 움직임 벡터의 탐색을 서로 독립적으로 수행한 다음, 상기에서 탐색된 최적의 포워드 움직임 벡터와 최적의 백워드 움직임 벡터를 이용하여, 양방향 예측 부호화를 수행한다.
그러나 일반적으로 영상의 많은 경우에는 움직임이 선형적으로 발생하는데, 이 경우에도 포워드 움직임 벡터와 백워드 움직임 벡터 두 개를 전송하는 것은, 움직임이 선형적이라는 사실을 충분히 이용하지 않고 포워드 움직임 벡터와 백워드 움직임 벡터 두 개 모두를 전송함으로써 움직임 벡터의 부호화 비트가 많이 발생하여 그만큼 부호화 성능이 저하될 수 있다.
종래의 영상 압축과 관련된 양방향 예측 부호화를 보다 상세히 설명하면, 종래의 양방향 예측 부호화는 [수학식 1] 및 [수학식 2]를 이용하여 소정의 예측 비용(Cost)값을 계산한 후, 이중 최소의 예측 비용(Cost)을 가지는 포워드 움직임 벡터 및 백워드 움직임 벡터를 양방향 예측 벡터로 선택하고, 이를 이용하여 최적의 양방향 예측 참조블록을 결정하였다.
[수학식 1]
Figure 112010017451283-pat00001

[수학식 2]
Figure 112010017451283-pat00002
여기서, [수학식 1]의
Figure 112010017451283-pat00003
는 비용(Cost)함수(Cost function)로 통상적으로 현재 블록과 예측 블록의 차이의 절대치 합(SAD)이나 비트율-왜곡 최적화 방법(Rate-Distortion Optimization) 등으로 결정된다.
또한,
Figure 112010017451283-pat00004
는 현재 부호화할 블록,
Figure 112010017451283-pat00005
는 [수학식 2]와 같이 포워드 참조픽춰 블록과 백워드 참조픽춰 블록의 가중합으로 만든 예측 블록이다. 그리고,
Figure 112010017451283-pat00006
Figure 112010017451283-pat00007
는 각각 포워드 움직임 벡터 및 백워드 움직임 벡터값이고,
Figure 112010017451283-pat00008
Figure 112010017451283-pat00009
는 포워드 탐색 크기와 백워드 탐색 크기이다.
[수학식 1]에서
Figure 112010017451283-pat00010
는 양방향 예측 부호화를 위한 최종 예측값이 된다. 여기서 양방향 예측 부호화를 위한 최종적인 포워드 움직임 벡터와 백워드 움직임 벡터를 찾기 위해서는 조인트 추정(Joint Estimation)을 수행하는데, 조인트 추정의 경우 움직임 탐색이
Figure 112010017451283-pat00011
×
Figure 112010017451283-pat00012
번 필요하여 매우 많은 연산량 및 참조픽춰 메모리 접근이 요구되므로, 실제 영상 압축 시스템에서 사용하기에는 현실적 문제가 많다.
이러한 상기 문제점으로 인하여, 일반적으로 양방향 예측 부호화는 [수학식 3]에 나타낸 것처럼 포워드 움직임 벡터와 백워드 움직임 벡터를 독립적으로 탐색한 다음, [수학식 4]와 같이 [수학식 3]에서 찾은 포워드 움직임 벡터와 백워드 움직임 벡터를 이용하여, 양방향 예측을 수행한다.
[수학식 3]
Figure 112010017451283-pat00013

[수학식 4]
Figure 112010017451283-pat00014

[수학식 3]에서
Figure 112010017451283-pat00015
Figure 112010017451283-pat00016
는 각각 포워드 참조픽춰의 움직임 벡터 위치의 블록 및 백워드 참조픽춰의 움직임 벡터 위치의 블록을 의미하고,
Figure 112010017451283-pat00017
Figure 112010017451283-pat00018
는 각각 포워드 참조픽춰에서 찾은 최종적인 움직임 벡터 위치의 블록 및 백워드 참조픽춰에서 찾은 최종적인 움직임 벡터 위치의 블록이다.
또한, [수학식 4]에서
Figure 112010017451283-pat00019
는 [수학식 3]에서 독립적으로 찾은 최적의 포워드 움직임 벡터와 백워드 움직임 벡터를 이용한 최적의 양방향 움직임 보상 블록을 나타낸다.
그런데, 상기와 같이 독립적으로 양방향 움직임 추정을 수행한 경우 필요한 탐색 횟수는
Figure 112010017451283-pat00020
+
Figure 112010017451283-pat00021
로 매우 낮은 복잡도가 요구되지만 대신 양방향 예측성능이 떨어지며 따라서 움직임 벡터 부호화시 비트 발생량이 많아진다.
상기의 문제점을 해결하기 위하여 개발된 종래의 기술은 중국 AVS (Advanced Video System) 표준이 채택하고 있는 양방향 예측에서의 대칭 모드(Symmetric Mode)이다. 대칭 모드 (Symmetric Mode)는 포워드 움직임 벡터만을 전송하고, 백워드 움직임 벡터는 디코더에서 소정의 계산식을 이용하여 산출하여 양방향 예측에 필요한 포워드 움직임 벡터와 백워드 움직임 벡터를 구한 다음 이를 이용하여, 양방향 예측 참조블록을 구한다.
이러한 대칭 모드에서 백워드 움직임 벡터는 포워드 움직임 벡터에 대칭되게 계산하여 사용하기 때문에 결국 포워드 움직임 벡터만을 전송하면 된다. 따라서 움직임 벡터 부호화에 들어가는 비트량을 줄일 수 있다.
포워드 움직임 벡터를 전송하고 이로 부터 벡워드 움직임 벡터를 산출하는 것이 그 반대의 경우보다 유리한 경우에는 상기 종래 기술이 부호화에 필요한 움직임 벡터의 비트량을 감소시키고, 포워드와 백워드의 조인트 움직임 탐색을 효과적으로 구현할 수 있어, 움직임 탐색의 매칭블록을 검색하는 복잡성을 거의 증가시키지 않으면서 양방향 예측방법의 제공이 가능하다.
그러나, 백워드 움직임 벡터를 전송하고 이로부터 포워드 움직임 벡터를 산출하는 것이 그 반대의 경우보다 유리한 경우도 있을 수 있는데, 이런 경우에도 상기의 종래기술은 포워드 움직임 벡터를 전송하고, 이로부터 백워드 움직임 벡터를 산출할 수밖에 없어 비효율성을 감수하여야 한다.
또한, 상기의 종래기술에 따른 양방향 대칭모드 부호화 방법에 따르면, 현재블록을 움직임 예측할 때 사용하는 참조블록의 하나는 포워드 참조픽춰에서, 그리고 다른 하나는 백워드 참조픽춰에서 가져오는데, 포워드 참조픽춰는 현재블록이 속한 현재픽춰보다 시간적으로 전이고, 백워드 참조픽춰는 시간적으로 후인 경우에만 적용되고 있다. 그러나, 현재블록을 움직임 예측할 때, 영상의 성질에 따라 포워드나 백워드 두 참조픽춰 모두가 현재블록이 속한 현재픽춰보다 시간적으로 앞서거나 시간적으로 뒤인 경우가 움직임 예측에 더욱 유리한 경우도 많다. 이런 경우에도 상기 종래기술에 따른 움직임 예측에서는 반듯이 시간적으로 각각 전,후로 위치된 참조픽춰만을 적용하게 됨으로써 압축효율의 저하를 감수하여야 하는 문제점이 있다.
따라서 본 발명의 첫 번째 목적은 영상압축의 양-예측(Bi-prediction) 부호화의 구현상의 복잡도 문제를 해결하고, 움직임이 선형적으로 발생한다는 사실을 이용하여 보다 효율적으로 움직임 벡터를 전송함으로써 부호화 효율을 높이고, 동영상의 압축과 관련된 종래의 양방향 예측 부호화 방법 중 하나인 대칭 모드(Symmetric mode) 부호화 방법이 포워드 움직임 벡터(Forward motion vector)만을 전송함에 따라 발생하는 부호화 성능 저하 문제를 개선하며, 움직임 벡터 부호화에 소요되는 비트량을 감소시키면서 실제 양-예측(Bi-prediction) 부호화를 수행할 때 조인트 추정이 용이하도록하여 보다 효율적인 부호화를 수행할 수 있는 양-예측(Bi-prediction) 부호화 방법 및 장치를 제공하는데 있다.
또한, 본 발명의 두 번째 목적은 상기와 같은 양-예측(Bi-prediction) 부호화 방법 및 장치에 따라 부호화된 데이터를 복호화하는데 있어 보다 효율적인 복호화의 수행이 가능한 양-예측(Bi-prediction) 복호화 방법 및 장치를 제공하는데 있다.
상기 첫 번째 목적은 복수개의 참조픽춰를 사용하는 양-예측(Bi-prediction) 부호화 방법에 있어서, (a) 부호화될 현재블록에 대한 제1 참조픽춰로부터 제1 선택 움직임 벡터를 선택하는 단계와; (b) 상기 제1 선택 움직임 벡터에 기초하여 제2 참조픽춰에 대한 제1 산출 움직임 벡터를 산출하는 단계와; (c) 상기 제1 선택 움직임 벡터, 상기 제1 산출 움직임 벡터, 상기 제1 선택 움직임 벡터에 대응하는 제1 선택 움직임 예측블록 및 상기 제1 산출 움직임 벡터에 대응하는 제2 산출 움직임 예측블록에 기초하여 제1 예측 부호화 비용을 산출하는 단계와; (d) 상기 (a) 단계, 상기 (b) 단계 및 상기 (c) 단계를 반복 수행하여 기 설정된 기준을 만족하는 제1 대표 선택 움직임 벡터와 제1 대표 산출 움직임 벡터와 상기 제1 대표 선택 움직임 벡터 및 상기 제1 대표 산출 움직임 벡터에 따른 제1 대표 예측 부호화 비용을 선정하는 단계와; (e) 상기 제2 참조픽춰로부터 제2 선택 움직임 벡터를 선택하는 단계와; (f) 상기 제2 선택 움직임 벡터에 기초하여 상기 제1 참조픽춰에 대한 제2 산출 움직임 벡터를 산출하는 단계와; (g) 상기 제2 선택 움직임 벡터, 상기 제2 산출 움직임 벡터, 상기 제2 선택 움직임 벡터에 대응하는 제2 선택 움직임 예측블록 및 상기 제2 산출 움직임 벡터에 대응하는 제2 산출 움직임 예측블록에 기초하여 제2 예측 부호화 비용을 산출하는 단계와; (h) 상기 (e) 단계, 상기 (f) 단계 및 상기 (g) 단계를 반복 수행하여 기 설정된 기준을 만족하는 제2 대표 선택 움직임 벡터와 제2 대표 산출 움직임 벡터와 상기 제2 대표 선택 움직임 벡터 및 상기 제2 대표 산출 움직임 벡터에 따른 제2 대표 예측 부호화 비용을 선정하는 단계와; (i) 상기 제1 대표 예측 부호화 비용이 상기 제2 대표 예측 부호화 비용보다 작은 경우 상기 제1 대표 선택 움직임 벡터를 부호화 대상 움직임 벡터로 상기 제1 대표 산출 움직임 벡터를 비부호화 대상 움직임 벡터로 선정하고, 상기 제2 대표 예측 부호화 비용이 상기 제1 대표 예측 부호화 비용보다 작은 경우 상기 제2 대표 선택 움직임 벡터를 상기 부호화 대상 움직임 벡터로 상기 제2 대표 산출 움직임 벡터를 상기 비부호화 대상 움직임 벡터로 선정하는 단계와; (j) 상기 부호화 대상 움직임 벡터를 부호화하는 단계를 포함하는 것을 특징으로 하는 양-예측(Bi-prediction) 부호화 방법에 의해서 달성된다.
여기서, 상기 (j) 단계는 부호화가 상기 양-예측(Bi-prediction) 부호화 방법에 의해 부호화된 양-예측(Bi-prediction) 부호화 모드임을 전달하기 위한 양-예측(Bi-prediction) 부호화 모드 정보를 부호화하는 단계를 포함할 수 있다.
그리고, 상기 (b) 단계에서 상기 제1 산출 움직임 벡터는 상기 현재블록이 속한 현재픽춰와 상기 제1 참조픽춰 및 상기 제2 참조픽춰 간의 상대적인 시간 상의 거리와 상기 제1 선택 움직임 벡터의 곱에 의해 산출되고; 상기 (f) 단계에서 상기 제2 산출 움직임 벡터는 상기 현재픽춰와 상기 제1 참조픽춰 및 상기 제2 참조픽춰 간의 상대적인 시간 상의 거리와 상기 제2 선택 움직임 벡터의 곱에 의해 산출될 수 있다.
여기서, 상기 제1 참조픽춰 및 상기 제2 참조픽춰가 상기 현재픽춰를 중심으로 시간상으로 전후에 각각 위치하는 경우, 상기 (b) 단계 및 상기 (f) 단계에서 상기 제1 산출 움직임 벡터 및 상기 제2 산출 움직임 벡터는 각각 수학식
Figure 112010017451283-pat00022
(여기서, mvcal는 상기 제1 산출 움직임 벡터 또는 상기 제2 산출 움직임 벡터이고, mvsel는 상기 제1 선택 움직임 벡터 또는 상기 제2 선택 움직임 벡터이고, TDB는 상기 제1 참조픽춰와 상기 제2 참조픽춰 중 상기 제1 선택 움직임 벡터 또는 상기 제2 선택 움직임 벡터가 선택된 어느 하나와 상기 현재픽춰 간의 시간상의 거리이고, TDC는 상기 제1 참조픽춰 및 상기 제2 참조픽춰 중 상기 제1 산출 움직임 벡터 또는 상기 제2 산출 움직임 벡터가 산출된 어느 하나와 상기 현재픽춰 간의 시간상의 거리이다)에 의해 산출될 수 있다.
또한, 상기 제1 참조픽춰 및 상기 제2 참조픽춰가 상기 현재픽춰로부터 시간상으로 전 또는 후에 함께 위치하는 경우, 상기 (b) 단계 및 상기 (f) 단계에서 상기 제1 산출 움직임 벡터 및 상기 제2 산출 움직임 벡터는 각각 수학식
Figure 112010017451283-pat00023
(여기서, mvcal는 상기 제1 산출 움직임 벡터 또는 상기 제2 산출 움직임 벡터이고, mvsel는 상기 제1 선택 움직임 벡터 또는 상기 제2 선택 움직임 벡터이고, TDB는 상기 제1 참조픽춰와 상기 제2 참조픽춰 중 상기 제1 선택 움직임 벡터 또는 상기 제2 선택 움직임 벡터가 선택된 어느 하나와 상기 현재픽춰 간의 시간상의 거리이고, TDC는 상기 제1 참조픽춰 및 상기 제2 참조픽춰 중 상기 제1 산출 움직임 벡터 또는 상기 제2 산출 움직임 벡터가 산출된 어느 하나와 상기 현재픽춰 간의 시간상의 거리이다)에 의해 산출될 수 있다.
또한, 상기 첫 번째 목적은 복수개의 참조픽춰를 사용하여 예측 부호화하는 양-예측(Bi-prediction) 부호화 장치에 있어서, 복수의 제1 참조픽춰로부터 부호화될 현재블록에 기초하여 기 설정된 움직임 탐색범위 내의 상기 각 제1 참조픽춰에 대응하는 제1 선택 움직임 벡터를 선택하는 제1 움직임 벡터 선택부와; 상기 각 제1 선택 움직임 벡터와 상기 각 제1 선택 움직임 벡터에 대응하는 제2 참조픽춰에 기초하여 상기 각 제1 선택 움직임 벡터에 대응하는 제1 산출 움직임 벡터를 산출하는 제1 움직임 벡터 산출부와; 상기 제1 선택 움직임 벡터, 상기 제1 산출 움직임 벡터, 상기 제1 선택 움직임 벡터에 대응하는 제1 선택 움직임 예측블록 및 상기 제1 산출 움직임 벡터에 대응하는 제1 산출 움직임 예측블록에 기초하여 상기 각 제1 선택 움직임 벡터에 각각 대응하는 제1 예측 부호화 비용을 산출하는 제1 부호화 비용 산출부와; 상기 각 제1 선택 움직임 벡터에 대응하여 산출된 상기 복수의 제1 예측 부호화 비용을 비교하여 기 설정된 조건을 만족하는 제1 대표 예측 부호화 비용을 선정하는 제1 부호화 비용 선정부와; 상기 각 제2 참조픽춰로부터 상기 각 제2 참조픽춰에 대응하는 제2 선택 움직임 벡터를 선택하는 제2 움직임 벡터 선택부와; 상기 각 제2 선택 움직임 벡터와 상기 각 제2 선택 움직임 벡터에 대응하는 상기 제1 참조픽춰에 기초하여 상기 각 제2 선택 움직임 벡터에 대응하는 제2 산출 움직임 벡터를 산출하는 제2 움직임 벡터 산출부와; 상기 제2 선택 움직임 벡터, 상기 제2 산출 움직임 벡터, 상기 제2 선택 움직임 벡터에 대응하는 제2 선택 움직임 예측블록 및 상기 제2 산출 움직임 벡터에 대응하는 제2 산출 움직임 예측블록에 기초하여 상기 각 제2 선택 움직임 벡터에 각각 대응하는 제2 예측 부호화 비용을 산출하는 제2 부호화 비용 산출부와; 상기 각 제2 선택 움직임 벡터에 대응하여 산출된 상기 복수의 제2 예측 부호화 비용을 비교하여 기 설정된 조건을 만족하는 제2 대표 예측 부호화 비용을 선정하는 제2 부호화 비용 선정부와; 상기 제1 대표 예측 부호화 비용이 상기 제2 대표 예측 부호화 비용보다 작은 경우 상기 제1 선택 움직임 벡터 중 상기 제1 대표 예측 부호화 비용에 대응하는 어느 하나를 부호화 대상 움직임 벡터로 선정하고, 상기 제2 대표 예측 부호화 비용이 상기 제1 대표 예측 부호화 비용보다 작은 경우 상기 제2 선택 움직임 벡터 중 상기 제2 대표 예측 부호화 비용에 대응하는 어느 하나를 부호화 대상 움직임 벡터로 선정하는 움직임 벡터 선정부와; 상기 부호화 대상 움직임 벡터를 부호화하는 움직임 벡터 부호화부를 포함하는 것을 특징으로 하는 양-예측(Bi-prediction) 부호화 장치에 의해서도 달성될 수 있다.
한편, 상기 두 번째 목적은 복수개의 참조픽춰를 사용하여 양-예측(Bi-prediction) 부호화된 데이터를 복호화하는 양-예측(Bi-prediction) 복호화 방법에 있어서, (a) 상기 부호화된 데이터를 분석하여 복호화될 현재블록이 양-예측(Bi-prediction) 부호화 모드인지 여부를 판단하는 단계와; (b) 상기 현재블록이 상기 양-예측(Bi-prediction) 부호화 모드인 것으로 판단된 경우, 상기 부호화된 데이터를 복호화하여 복호화 대상 움직임 벡터를 복원하는 단계와; (c) 상기 복원된 복호화 대상 움직임 벡터와, 상기 현재블록이 속한 현재픽춰와 상기 복호화 대상 움직임 벡터에 대응하는 제1 복호화 참조픽춰 간의 시간상의 거리와, 상기 현재픽춰와 제2 복호화 참조픽춰 간의 시간상의 거리에 기초하여 상기 제2 참조픽춰에 대응하는 비복호화 대상 움직임 벡터를 산출하는 단계와; (d) 상기 복원된 복호화 대상 움직임 벡터 및 상기 산출된 비복호화 대상 움직임 벡터에 기초하여 상기 현재블록에 대한 예측블록을 생성하고, 생성된 상기 예측블록에 기초하여 현재블록을 복원하는 단계를 포함하는 것을 특징으로 하는 양-예측(Bi-prediction) 복호화 방법에 의해서 달성된다.
여기서, 상기 (c) 단계에서 상기 비복호화 대상 움직임 벡터는 상기 현재픽춰와 상기 제1 참조픽춰 및 상기 제2 참조픽춰 간의 상대적인 시간 상의 거리와, 상기 복호화 대상 움직임 벡터의 곱에 의해 산출될 수 있다.
그리고, 상기 제1 참조픽춰 및 상기 제2 참조픽춰가 상기 현재픽춰를 중심으로 시간상으로 전후에 각각 위치하는 경우, 상기 (c) 단계에서 상기 비복호화 대상 움직임 벡터는 수학식
Figure 112010017451283-pat00024
(여기서, mvcal는 상기 비복호화 대상 움직임 벡터이고, mvsel는 상기 복호화 대상 움직임 벡터이고, TDB는 상기 제1 참조픽춰와 상기 현재픽춰 간의 시간상의 거리이고, TDC는 상기 제2 참조픽춰와 상기 현재픽춰 간의 시간상의 거리이다)에 의해 산출될 수 있다.
여기서, 상기 제1 참조픽춰 및 상기 제2 참조픽춰가 상기 현재픽춰로부터 시간상으로 전 또는 후에 함께 위치하는 경우, 상기 (c) 단계에서 상기 비복호화 대상 움직임 벡터는 수학식
Figure 112010017451283-pat00025
(여기서, mvcal는 상기 비복호화 대상 움직임 벡터이고, mvsel는 상기 복호화 대상 움직임 벡터이고, TDB는 상기 제1 참조픽춰와 상기 현재픽춰 간의 시간상의 거리이고, TDC는 상기 제2 참조픽춰와 상기 현재픽춰 간의 시간상의 거리이다)에 의해 산출될 수 있다.
또한, 상기 두 번째 목적은 복수개의 참조픽춰를 사용하여 양-예측(Bi-prediction) 부호화된 데이터를 복호화하는 양-예측(Bi-prediction) 복호화 장치에 있어서, 상기 부호화된 데이터를 엔트로피 복호화하는 엔트로피 복호화부와; 상기 복호화된 데이터를 분석하여 복호화될 현재블록이 양-예측(Bi-prediction) 부호화 모드에 의해 부호화되었는지 여부를 판단하는 복호화 제어부와; 상기 복호화 제어부에 의해 상기 양-예측(Bi-prediction) 부호화 모드로 판단된 경우, 상기 복호화된 데이터에서 복호화 대상 움직임 벡터를 복원하는 복호화 대상 움직임 벡터 복원부와; 상기 복원된 복호화 대상 움직임 벡터와, 상기 현재블록이 속한 현재픽춰와 상기 복호화 대상 움직임 벡터에 대응하는 제1 참조픽춰 간의 시간상의 거리와, 상기 현재픽춰와 제2 참조픽춰 간의 시간상의 거리에 기초하여 상기 제2 참조픽춰에 대응하는 비복호화 대상 움직임 벡터를 산출하는 비복호화 대상 움직임 벡터 산출부와; 상기 복원된 복호화 대상 움직임 벡터 및 상기 산출된 비복호화 대상 움직임 벡터에 기초하여 적어도 하나의 예측블록을 생성하는 움직임 보상부와; 상기 복호화된 데이터 및 상기 예측블록에 기초하여 상기 현재블록을 복원하는 현재블록 복원부를 포함하는 것을 특징으로 하는 양-예측(Bi-prediction) 복호화 장치에 의해서도 달성될 수 있다.
본 발명에 따르면, 현재블록에 대한 부호화 대상 움직임 벡터 및 비부호화 대상 움직임 벡터를 선정하는데 있어서 제1 참조픽춰에서 선택된 제1 선택 움직임 벡터를 기준으로 제2 참조픽춰에 대한 제1 산출 움직임 벡터를 산출하고, 제2 참조픽춰에서 선택된 제2 선택 움직임 벡터를 기준으로 제1 참조픽춰에 대한 제2 산출 움직임 벡터를 산출하여 부호화 효율이 좋을 것을 선택하여 부호화하므로, 전송하는 움직임 벡터의 부호화 효율을 더욱 증대할 수 있고, 예측에러의 부호화 효율을 높일 수 있다.
또한, 동영상의 압축과 관련된 종래의 양방향 예측 부호화 방법 중 하나인 대칭 모드(Symmetric mode) 부호화 방법이 포워드 움직임 벡터(Forward motion vector)만을 전송함에 따라 발생하는 부호화 성능 저하 문제가 개선되며, 움직임 벡터 부호화에 소요되는 비트량을 감소시키면서 실제 양-예측(Bi-prediction) 부호화를 수행할 때 조인트 추정이 용이하도록 하여 보다 효율적인 부호화를 수행할 수 있다.
도 1 및 도 2는 본 발명에 따른 양-예측(Bi-prediction) 부호화 방법을 설명하기 위한 도면이고,
도 3 내지 도 5는 본 발명에 따른 양-예측(Bi-prediction) 부호화 방법에서 현재픽춰와 제1 참조픽춰 및 제2 참조픽춰들 간의 시간상의 관계의 예들을 도시한 도면이고,
도 6은 본 발명에 따른 양-예측(Bi-prediction) 부호화 장치의 구성을 도시한 도면이고,
도 7은 도 6의 양-예측(Bi-prediction) 부호화 장치의 움직임 예측부의 구성의 일 예를 도시한 도면이고,
도 8은 본 발명에 따른 양-예측(Bi-prediction) 복호화 방법을 설명하기 위한 도면이고,
도 9는 본 발명에 따른 양-예측(Bi-prediction) 복호화 장치의 구성을 도시한 도면이고,
도 10은 도 9의 양-예측(Bi-prediction) 복호화 장치의 움직임 벡터 복호화부의 구성의 일 예를 도시한 도면이다.
이하에서는 첨부된 도면들을 참조하여 본 발명을 보다 상세하게 설명한다.
도 1 및 도 2는 본 발명에 따른 양-예측(Bi-prediction) 부호화 방법에 대한 흐름도이다. 도 1 및 도 2를 참조하여 설명하면, 먼저 부호화 대상이 되는 N×M 블록(이하, '현재블록'이라 함)이 입력되면(S10), 현재블록이 속한 현재픽춰에 기초하여 제1 참조픽춰 및 제2 참조픽춰가 결정된다. 여기서, 블록의 크기가 N×M 이라 한 것은 N이 M과 서로 같거나 틀린 경우를 포함할 수 있다.
그런 다음, 제1 참조픽춰로부터 기 설정된 움직임 탐색범위 내에서 움직임 벡터(이하, '제1 선택 움직임 벡터'라 함)가 선택된다(S11). 그리고, 제1 선택 움직임 벡터에 기초하여 제1 참조픽춰에 대응하는 제2 참조픽춰에 대한 움직임 벡터(이하, '제1 산출 움직임 벡터'라 함)가 산출된다(S12). 여기서, 제1 참조픽춰로부터 선택된 제1 선택 움직임 벡터는 후술할 과정에서 부호화 대상 움직임 벡터로 선정되는 경우 실제 부호화되어 전송되는 움직임 벡터이고, 제1 산출 움직임 벡터는 전송된 부호화 대상 움직임 벡터에 기초하여 복호화 과정에서 산출될 움직임 벡터로, 부호화 과정에서는 부호화되지 않는 움직임 벡터, 즉 전송되지 않는 움직임 벡터가 된다.
그런 다음, 제1 선택 움직임 벡터에 대한 제1 선택 움직임 예측블록이 생성되고, 제1 산출 움직임 벡터에 대한 제1 산출 움직임 예측블록이 생성된다(S13). 그리고, 제1 선택 움직임 벡터, 제1 산출 움직임 벡터, 제1 선택 움직임 예측블록 및 제1 산출 움직임 예측블록에 기초하여 예측 부호화 비용(이하, '제1 예측 부호화 비용'이라 함)이 산출된다(S14).
그런 다음, 선택된 제1 참조픽춰 및 제2 참조픽춰들에 대하여 S11 단계에서 S14 단계를 반복 수행하여 복수의 제1 예측 부호화 비용을 산출한다. 그리고, 제1 참조픽춰 및 제2 참조픽춰들에 대한 제1 예측 부호화 비용의 산출이 종료되면(S15), 산출된 복수의 제1 예측 부호화 비용 중 기 설정된 기준을 만족하는 제1 예측 부호화 비용을 선정한다. 여기서, 제1 예측 부호화 비용의 선정 기준은 부호화 비용이 가장 적은 어느 하나가 선정되도록 마련되는 것을 일 예로 한다.
그리고, 선정된 제1 예측 부호화 비용, 선정된 제1 예측 부호화 비용의 산출에 사용된 제1 선택 움직임 벡터 및 제1 산출 움직임 벡터를 각각 제1 대표 예측 부호화 비용, 제1 대표 선택 움직임 벡터 및 제1 대표 산출 움직임 벡터로 선정한다(S16).
한편, 상기와 같은 과정에 대응하여, 제2 참조픽춰에서 움직임 벡터(이하, '제2 선택 움직임 벡터'라 함)를 선택하고(S17), 선택된 제2 선택 움직임 벡터에 기초하여 제1 참조픽춰에 대한 움직임 벡터(이하, '제2 산출 움직임 벡터'라 함)를 산출한다(S18).
그런 다음, 제2 선택 움직임 벡터에 대한 제2 선택 움직임 예측블록가 생성되고, 제2 산출 움직임 벡터에 대한 제2 산출 움직임 예측블록이 생성된다(S19). 그리고, 제2 선택 움직임 벡터, 제2 산출 움직임 벡터, 제2 선택 움직임 예측블록 및 제2 산출 움직임 예측블록에 기초하여 예측 부호화 비용(이하, '제2 예측 부호화 비용'이라 함)이 산출된다(S20).
그리고, 제1 참조픽춰 및 제2 참조픽춰들에 대하여 S17 단계에서 S20 단계를 반복 수행하여 복수의 제2 예측 부호화 비용을 산출한다. 그런 다음, 제2 예측 부호화 비용의 산출이 종료되면(S21), 산출된 복수의 제2 예측 부호화 비용 중 기 설정된 기준을 만족하는 제2 예측 부호화 비용을 선정한다. 여기서, 제2 예측 부호화 비용의 선정 기준은 부호화 비용이 가장 적은 어느 하나가 선정되도록 마련되는 것을 일 예로 한다.
그리고, 선정된 제2 예측 부호화 비용, 선정된 제2 예측 부호화 비용의 산출에 사용된 제2 선택 움직임 벡터 및 제2 산출 움직임 벡터를 각각 제2 대표 예측 부호화 비용, 제2 대표 선택 움직임 벡터 및 제2 대표 산출 움직임 벡터로 선정한다(S22).
상기와 같은 과정을 통해, 제1 대표 예측 부호화 비용 및 제2 대표 예측 부호화 비용이 선정되면, 제1 대표 예측 부호화 비용과 제2 대표 예측 부호화 비용을 비교하여(S23) 제1 대표 예측 부호화 비용이 제2 대표 예측 부호화 비용보다 작은 경우 제1 대표 선택 움직임 벡터를 부호화 대상 움직임 벡터로 선정하고 제1 대표 산출 움직임 벡터를 비부호화 대상 움직임 벡터로 선정한다(S25).
반면, 제2 대표 예측 부호화 비용이 제1 대표 예측 부호화 비용보다 작은 경우 제2 대표 선택 움직임 벡터를 부호화 대상 움직임 벡터로 선정하고 제2 대표 산출 움직임 벡터를 비부호화 대상 움직임 벡터로 선정한다(S24).
상기와 같은 과정을 통해 부호화 대상 움직임 벡터 및 비부호화 대상 움직임 벡터의 선정이 완료되면, 선정된 부호화 대상 움직임 벡터 및 비부호화 대상 움직임 벡터를 이용하여 현재블록에 대한 예측블록이 생성된다. 그리고, 현재블록과 예측블록 간의 편차인 잉여블록이 생성된다(S26).
그런 다음, 부호화 대상 움직임 벡터와 잉여블록을 부호화한다(S27). 이 때 부호화 과정에서는 상술한 부호화 방법, 즉 본 발명에 따른 양-예측(Bi-prediction) 부호화 방법에 의해 영상이 부호화된 것임을 알리는 정보를 갖는 양-예측(Bi-prediction) 부호화 모드 정보가 함께 부호화되어 전송될 수 있다. 이를 통해 복호화 과정에서, 전송되는 부호화 대상 움직임 벡터를 이용하여 전송되지 않는 비부호화 대상 움직임 벡터를 산출하게 된다.
상기의 과정에서, 제1 참조픽춰 및 제2 참조픽춰는 각각 상호 대응하도록 결정될 수 있다. 제1 선택 움직임 벡터에 의해 산출되는 제1 산출 움직임 벡터가 속한 제2 참조픽춰에서 제2 선택 움직임 벡터가 선택되는 경우, 해당 제2 참조픽춰에서 선택된 제2 선택 움직임 벡터를 이용하여 제2 산출 움직임 벡터를 산출할 때 사용되는 제1 참조픽춰는 상기의 제1 선택 움직임 벡터가 속한 제1 참조픽춰가 될 수 있다.
이하에서는 도 3 내지 도 5를 참조하여 본 발명에 따른 양-예측(Bi-prediction) 부호화 방법에서 제1 산출 움직임 벡터 및 제2 산출 움직임 벡터를 산출하는 방법에 대해 상세히 설명한다.
본 발명에 따른 제1 산출 움직임 벡터는 현재블록이 속한 현재픽춰와 제1 참조픽춰 및 제2 참조픽춰 간의 상대적인 시간 상의 거리와 제1 선택 움직임 벡터의 곱에 의해 산출된다. 동일하게, 제2 산출 움직임 벡터는 현재블록이 속한 현재픽춰와 제1 참조픽춰 및 제2 참조픽춰 간의 상대적인 시간 상의 거리와 제2 선택 움직임 벡터의 곱에 의해 산출된다. 이하에서는 제1 선택 움직임 벡터와 제1 산출 움직임 벡터를 기준으로 하여 설명한다.
도 3의 (a) 및 (b)는 제1 참조픽춰 및 제2 참조픽춰가 현재픽춰를 중심으로 시간상으로 전후에 각각 위치하는 경우로, (a)는 제1 참조픽춰가 현재픽춰의 시간상으로 전에, 제2 참조픽춰가 현재픽춰의 시간상으로 후에 각각 위치하는 경우를 도시한 것이고, (b)는 그 반대의 경우를 도시한 것이다.
도 3에 도시된 바와 같이 제1 참조픽춰 및 제2 참조픽춰가 현재픽춰를 중심으로 시간상으로 전후에 각각 위치하는 경우, 제1 산출 움직임 벡터는 아래의 [수학식 5]을 통해 산출된다.
[수학식 5]
Figure 112010017451283-pat00026
여기서, mvcal는 제1 산출 움직임 벡터이고, mvsel는 제1 선택 움직임 벡터이고, TDB는 제1 참조픽춰와 현재픽춰 간의 시간상의 거리이고, TDC는 제2 참조픽춰와 현재픽춰 간의 시간상의 거리이다.
그리고, TDC는 아래의 [수학식 6]와 같이 표현될 수 있다.
[수학식 6]
Figure 112010017451283-pat00027
여기서, TDD는, 도 3에 도시된 바와 같이, 제1 참조픽춰와 제2 참조픽춰 간의 시간상의 거리이고, TDB는 현재픽춰와 제1 참조픽춰 간의 시간상의 거리이다.
한편, 도 4의 (a) 및 (b)는 제1 참조픽춰 및 제2 참조픽춰 모두가 현재픽춰로부터 시간상으로 전에 함께 위치하는 경우로, (a)는 제1 참조픽춰가 제2 참조픽춰로부터 시간상으로 후에 위치하는 경우를 도시한 것이고, (b)는 제2 참조픽춰가 제1 참조픽춰로부터 시간상을 후에 위치하는 경우를 도시한 것이다.
도 4에 도시된 바와 같이 제1 참조픽춰 및 제2 참조픽춰 모두가 현재픽춰로부터 시간상으로 전에 위치하는 경우, 제1 산출 움직임 벡터는 아래의 [수학식 7]을 통해 산출된다.
[수학식 7]
Figure 112010017451283-pat00028
여기서, mvcal는 제1 산출 움직임 벡터이고, mvsel는 제1 선택 움직임 벡터이고, TDB는 제1 참조픽춰와 현재픽춰 간의 시간상의 거리이고, TDC는 제2 참조픽춰와 현재픽춰 간의 시간상의 거리이다.
그리고, [수학식 7]의 TDC를 제1 참조픽춰와 제2 참조픽춰 간의 시간상의 거리인 TDD와, 현재픽춰와 제1 참조픽춰 간의 시간상의 거리인 TDB를 이용하여 표현하면, 도 4의 (a)의 경우에는 [수학식 8], 도 4의 (b)의 경우에는 [수학식 9]와 같이 나타낼 수 있다.
[수학식 8]
Figure 112010017451283-pat00029

[수학식 9]
Figure 112010017451283-pat00030
한편, 도 5의 (a) 및 (b)는 제1 참조픽춰 및 제2 참조픽춰 모두가 현재픽춰로부터 시간상으로 후에 함께 위치하는 경우로, (a)는 제1 참조픽춰가 제2 참조픽춰로부터 시간상으로 전에 위치하는 경우를 도시한 것이고, (b)는 제2 참조픽춰가 제1 참조픽춰로부터 시간상을 전에 위치하는 경우를 도시한 것이다.
도 5에 도시된 바와 같이 제1 참조픽춰 및 제2 참조픽춰 모두가 현재픽춰로부터 시간상으로 전에 위치하는 경우에도 제1 산출 움직임 벡터는 상기의 [수학식 7]을 통해 산출된다.
그리고, [수학식 7]의 TDC를 제1 참조픽춰와 제2 참조픽춰 간의 시간상의 거리인 TDD와, 현재픽춰와 제1 참조픽춰 간의 시간상의 거리인 TDB를 이용하여 표현하면, 도 5의 (a)의 경우에는 [수학식 8], 도 5의 (b)의 경우에는 [수학식 9]와 같이 나타낼 수 있다.
여기서, [수학식 5] 내지 [수학식 9]를 제2 산출 움직임 벡터를 산출하는 경우에 적용하게 되면, 제1 참조픽춰 및 제2 참조픽춰가 바뀌게 된다. 즉, [수학식 5] 내지 [수학식 9]에서의 제1 참조픽춰는 움직임 벡터가 선택되는 참조픽춰이고 제2 참조픽춰는 움직임 벡터가 산출되는 참조픽춰이다. 따라서, 제2 산출 움직임 벡터의 산출에서는 제2 참조픽춰에서 움직임 벡터가 선택되고 제1 참조픽춰에서 움직임 벡터가 산출되는 바, 제2 산출 움직임 벡터의 산출에서는 [수학식 5] 내지 [수학식 9]에서 제1 참조픽춰 및 제2 참조픽춰가 바뀌게 된다.
이하에서는, 도 6 및 도 7을 참조하여 본 발명에 따른 양-예측(Bi-prediction) 부호화 장치에 대해 상세히 설명한다.
도 6을 참조하여 설명하면, 본 발명에 따른 양-예측(Bi-prediction) 부호화 장치는 영상 입력부(10), 움직임 예측부(16), 움직임 보상부(17), 움직임 벡터 부호화부(18), 잉여데이터 부호화부(12), 잉여데이터 복호화부(13), 엔트로피 부호화부(14), 다중화부(19) 및 부호화 제어부(11)를 포함할 수 있다.
영상 입력부(10)로는 부호화 대상이 되는 영상으로 압축되지 않은 디지털 영상이 입력된다. 여기서, 영상 입력부(10)로 입력되는 영상 데이터는 소정 크기로 분할된 블록으로 구성된다. 영상 입력부(10)를 통해 입력된 영상 데이터는 움직임 보상부(17)로부터 출력되는 예측블록, 즉 보상치와 감산부를 통해 감산되어 잉여데이터 부호화부(12)로 출력된다.
부호화 제어부(11)는 영상 입력부(10)를 통해 영상 데이터가 입력되면, 입력되는 영상 데이터에 대해 움직임 보상을 수행할지 여부에 따른 코딩 타입, 예를 들어 인트라 코딩 및 인터 코딩을 결정하여 대응하는 제어 동작을 수행한다.
잉여데이터 부호화부(12)는 감산부로부터 출력되는 영상 데이터, 즉 잉여블록을 변환 부호화하여 얻어진 변환 계수값들을 기 설정된 양자화 과정에 따라 양자화하고, 양자화된 변환 계수값들로 구성된 2차원 데이터인 N×M 데이터를 생성한다. 여기서, 잉여데이터 부호화부(12)에서 적용되는 변환 방식의 예로는 이산 코사인 변환(DCT : Discrete Cosine Transform) 방식이 적용될 수 있다.
도 6을 참조하여 설명하면, 본 발명에 따른 양-예측(Bi-prediction) 부호화 장치는 영상 입력부(10), 움직임 예측부(16), 움직임 보상부(17), 움직임 벡터 부호화부(18), 잉여데이터 부호화부(12), 잉여데이터 복호화부(13), 엔트로피 부호화부(14), 다중화부(19) 및 부호화 제어부(11)를 포함할 수 있다.
영상 입력부(10)로는 부호화 대상이 되는 영상으로 압축되지 않은 디지털 영상이 입력된다. 여기서, 영상 입력부(10)로 입력되는 영상 데이터는 소정 크기로 분할된 블록으로 구성된다. 영상 입력부(10)를 통해 입력된 영상 데이터는 움직임 보상부(17)로부터 출력되는 예측블록, 즉 보상치와 감산부를 통해 감산되어 잉여데이터 부호화부(12)로 출력된다.
부호화 제어부(11)는 영상 입력부(10)를 통해 영상 데이터가 입력되면, 입력되는 영상 데이터에 대해 움직임 보상을 수행할지 여부에 따른 코딩 타입, 예를 들어 인트라 코딩 및 인터 코딩을 결정하여 대응하는 제어 동작을 수행한다.
잉여데이터 부호화부(12)는 감산부로부터 출력되는 영상 데이터, 즉 잉여블록을 변환 부호화하여 얻어진 변환 계수값들을 기 설정된 양자화 과정에 따라 양자화하고, 양자화된 변환 계수값들로 구성된 2차원 데이터인 도 6을 참조하여 설명하면, 본 발명에 따른 양-예측(Bi-prediction) 부호화 장치는 영상 입력부(10), 움직임 예측부(16), 움직임 보상부(17), 움직임 벡터 부호화부(18), 잉여데이터 부호화부(12), 잉여데이터 복호화부(13), 엔트로피 부호화부(14), 다중화부(19) 및 부호화 제어부(11)를 포함할 수 있다.
영상 입력부(10)로는 부호화 대상이 되는 영상으로 압축되지 않은 디지털 영상이 입력된다. 여기서, 영상 입력부(10)로 입력되는 영상 데이터는 소정 크기로 분할된 블록으로 구성된다. 영상 입력부(10)를 통해 입력된 영상 데이터는 움직임 보상부(17)로부터 출력되는 예측블록, 즉 보상치와 감산부를 통해 감산되어 잉여데이터 부호화부(12)로 출력된다.
부호화 제어부(11)는 영상 입력부(10)를 통해 영상 데이터가 입력되면, 입력되는 영상 데이터에 대해 움직임 보상을 수행할지 여부에 따른 코딩 타입, 예를 들어 인트라 코딩 및 인터 코딩을 결정하여 대응하는 제어 동작을 수행한다.
잉여데이터 부호화부(12)는 감산부로부터 출력되는 영상 데이터, 즉 잉여블록을 변환 부호화하여 얻어진 변환 계수값들을 기 설정된 양자화 과정에 따라 양자화하고, 양자화된 변환 계수값들로 구성된 2차원 데이터인 N×M 데이터를 생성한다. 여기서, 잉여데이터 부호화부(12)에서 적용되는 변환 방식의 예로는 이산 코사인 변환(DCT : Discrete Cosine Transform) 방식이 적용될 수 있다.
잉여데이터 부호화부(12)로 입력되어 부호화된 영상 데이터는 이후 또는 이전에 입력된 영상 데이터에 대한 움직임 보상을 위한 참조픽춰로 사용될 수 있으므로 잉여데이터 복호화부(13)를 통해 잉여데이터 부호화부(12)의 역과정인 역 양자화 및 역변환 부호화를 거치게 된다. 그리고, 잉여데이터 복호화부(13)로부터 출력되는 영상 데이터는 메모리부(15)에 저장되는데, 잉여데이터 복호화부(13)로부터 출력되는 영상 데이터가 차분 영상 데이터인 경우 움직임 보상부(17)의 출력 데이터 즉, 예측블록과 더해진 다음 메모리부(15)에 저장된다.
한편, 움직임 예측부(16)는 복수의 참조픽춰, 즉 상술한 제1 참조픽춰 및 제2 참조픽춰들을 이용하여 움직임을 예측한다. 움직임 예측부(16)는 상술한 양-예측(Bi-prediction) 부호화 방법을 통해 부호화 대상 움직임 벡터 및 비부호화 대상 움직임 벡터를 선정하고, 움직임 보상부(17)는 부호화 대상 움직임 벡터 및 비부호화 대상 움직임 벡터를 이용하여 현재블록에 대한 예측블록, 즉 보상치를 산출한다.
도 7은 본 발명에 따른 움직임 예측부(16)의 구성을 도시한 도면이다. 도 7을 참조하여 설명하면, 제1 움직임 벡터 선택부(110a)는 부호화될 현재블록에 기초하여 제1 참조픽춰들로부터 기 설정된 움직임 탐색범위 내에서 제1 참조픽춰에 각각 대응하는 제1 선택 움직임 벡터를 선택한다.
제1 움직임 벡터 산출부(111a)는 제1 움직임 벡터 선택부(110a)에 의해 선택된 제1 선택 움직임 벡터를 이용하여 제2 참조픽춰에 대응하는 제1 산출 움직임 벡터를 산출한다. 여기서, 제1 산출 움직임 벡터를 산출하는 과정은 상술한 [수학식 5] 내지 [수학식 9]가 사용될 수 있으며, 그 상세한 설명은 생략한다.
제2 움직임 벡터 선택부(110b)는 참조픽춰 추출부에 의해 추출된 제2 참조픽춰들로부터 제2 참조픽춰에 각각 대응하는 제2 선택 움직임 벡터를 선택한다. 그리고, 제2 움직임 벡터 산출부(111b)는 제2 움직임 벡터 선택부(110b)에 의해 선택된 제2 움직임 벡터를 이용하여 제1 참조픽춰에 대응하는 제2 산출 움직임 벡터를 산출한다. 여기서, 제2 산출 움직임 벡터의 산출과정은 상술한 [수학식 5] 내지 [수학식 9]가 사용될 수 있으며, 그 상세한 설명은 생략한다.
제1 움직임 예측블록 생성부(112a)는 제1 선택 움직임 벡터 및 제1 산출 움직임 벡터에 기초하여, 제1 선택 움직임 벡터에 대응하는 제1 선택 움직임 예측블록과 제1 산출 움직임 벡터에 대응하는 제1 산출 움직임 예측블록을 생성한다.
그리고, 제1 부호화 비용 산출부(113a)는 제1 선택 움직임 벡터, 제1 산출 움직임 벡터, 제1 선택 움직임 예측블록 및 제1 산출 움직임 예측블록을 이용하여 제1 예측 부호화 비용을 산출한다. 여기서, 제1 예측 부호화 비용은 복수의 제1 참조픽춰로부터 각각 선택된 제1 선택 부호화 비용 각각에 대해 산출된다.
여기서, 제1 부호화 비용 선정부(114a)는 제1 부호화 비용 산출부(113a)에 의해 산출된 제1 예측 부호화 비용들 중 기 설정된 조건을 만족하는 어느 하나를 선정하는데, 본 발명에서는 제1 예측 부호화 비용이 가장 적은 어느 하나가 선택되는 것을 일 예로 한다.
그리고, 제1 부호화 비용 선정부(114a)는 선정된 제1 예측 부호화 비용, 선정된 제1 예측 부호화 비용에 대한 제1 선택 움직임 벡터 및 제1 산출 움직임 벡터를 제1 대표 예측 부호화 비용, 제1 대표 선택 움직임 벡터 및 제1 대표 산출 움직임 벡터로 선정하게 된다.
동일한 방법으로, 제2 움직임 예측블록 생성부(112b)는 제2 선택 움직임 벡터 및 제2 산출 움직임 벡터에 기초하여, 제2 선택 움직임 벡터에 대응하는 제2 선택 움직임 예측블록과 제2 산출 움직임 벡터에 대응하는 제2 산출 움직임 예측블록을 생성한다.
그리고, 제2 부호화 비용 산출부(113b)는 각각의 제2 선택 움직임 벡터, 제2 산출 움직임 벡터, 제2 선택 움직임 예측블록 및 제2 산출 움직임 예측블록을 이용하여 복수의 제2 예측 부호화 비용을 산출한다.
여기서, 제2 부호화 비용 선정부(114b)는 제2 부호화 비용 산출부(113b)에 의해 산출된 제2 예측 부호화 비용들 중 기 설정된 조건을 만족하는 어느 하나를 선정하는데, 본 발명에서는 제2 예측 부호화 비용이 가장 적은 어느 하나가 선택되는 것을 일 예로 한다.
그리고, 제2 부호화 비용 선정부(114b)는 선정된 제2 예측 부호화 비용, 선정된 제2 예측 부호화 비용에 대한 제2 선택 움직임 벡터 및 제2 산출 움직임 벡터를 제2 대표 예측 부호화 비용, 제2 대표 선택 움직임 벡터 및 제2 대표 산출 움직임 벡터로 선정하게 된다.
제1 대표 부호화 비용 선정부 및 제2 대표 부호화 비용 선정부에 의해 선정된 제1 대표 예측 부호화 비용 및 제2 대표 예측 부호화 비용은 움직임 벡터 선정부(115)에 의해 비교된다. 그리고, 움직임 벡터 선정부(115)는 제1 대표 예측 부호화 비용이 제2 대표 예측 부호화 비용보다 작은 경우 제1 대표 선택 움직임 벡터를 부호와 대상 움직임 벡터로 선정하고 제1 대표 산출 움직임 벡터를 비부호화 대상 움직임 벡터로 선정한다.
반면, 움직임 벡터 선정부(115)는 제2 대표 예측 부호화 비용이 제1 대표 예측 부호화 비용보다 작은 경우 제2 대표 선택 움직임 벡터를 부호화 대상 움직임 벡터로 선정하고 제2 대표 산출 움직임 벡터를 비부호화 대상 움직임 벡터로 선정한다.
상기와 같은 과정을 통해 선정된 부호화 대상 움직임 벡터 및 비부호화 대상 움직임 벡터를 이용하여 움직임 보상부(17)는 움직임 보상을 수행하여 예측블록을 감산기로 출력하게 된다. 여기서, 움직임 보상부(17)는 부호화 대상 움직임 벡터 및 비부호화 대상 움직임 벡터에 기초하여 현재블록에 대한 예측블록을 결정하여 출력한다.
한편, 움직임 벡터 부호화부(18)는 움직임 예측부(16)에 의해 선정된 부호화 대상 움직임 벡터를 부호화하여 출력한다. 여기서, 움직임 벡터 부호화부(18)는 부호화된 움직임 벡터가 양-예측(Bi-prediction) 부호화 방법에 의해 부호화된 것임을 전달하기 위한 양-예측(Bi-prediction) 부호화 모드 정보를 함께 부호화할 수 있다.
그리고, 움직임 벡터 부호화부(18)에 의해 부호화된 데이터는 엔트로피 부호화부(14)에 의해 부호화된 영상 데이터와 함께 다중화부(19)에 입력되어 압축된 비트스트림 형태로 생성되어 전송된다.
이하에서는, 도 8을 참조하여 본 발명에 따른 양-예측(Bi-prediction) 복호화 방법에 대해 상세히 설명한다.
먼저, 부호화된 데이터인 압축된 비트스트림이 입력되면(S30), 입력되는 비트스트림에 대해 엔트로피 복호화가 수행된다(S31). 그럼 다음, 엔트로피 복호화된 데이터를 분석하여 복호화될 현재블록이 양-예측(Bi-prediction) 부호화 모드인지 여부를 판단한다(S32). 여기서, 양-예측(Bi-prediction) 부호화 모드인지 여부의 판단은 상술한 양-예측(Bi-prediction) 부호화 방법을 통해 부호화되는 과정에서 부호화된 양-예측(Bi-prediction) 부호화 모드 정보의 존재 여부를 통해 확인할 수 있다.
여기서, 양-예측(Bi-prediction) 부호화 모드인 것으로 판단된 경우, 엔트로피 복호화된 데이터 중 복호화 대상 움직임 벡터를 복원한다(S33). 여기서, 복호화 대상 움직임 벡터는 상술한 양-예측(Bi-prediction) 부호화 방법을 통해 부호화된 부호화 대상 움직임 벡터이다.
그런 다음, 복호화 대상이 되는 현재블록이 속한 현재픽춰와 복호화 대상 움직임 벡터에 대응하는 참조픽춰(이하, '제1 복호화 참조픽춰'라 함) 간의 시간 상의 거리, 현재픽춰와 다른 참조픽춰(이하, '제2 복호화 참조픽춰'라 함) 간의 시간 상의 거리, 및 복원된 복호화 대상 움직임 벡터를 이용하여 제2 복호화 참조픽춰에 대한 비복호화 대상 움직임 벡터를 산출한다(S34).
여기서, 비복호화 대상 움직임 벡터의 산출은 상술한 양-예측(Bi-prediction) 부호화 방법에서 제1 선택 움직임 벡터(또는 제2 선택 움직임 벡터)를 이용하여 제1 산출 움직임 벡터(또는 제2 산출 움직임 벡터)를 산출하는 방법, 즉 [수학식 5] 내지 [수학식 9]를 이용하여 산출된다.
여기서, 양-예측(Bi-prediction) 복호화 방법에서의 복호화 움직임 벡터, 제1 복호화 참조픽춰 및 제2 복호화 참조픽춰는 각각 양-예측(Bi-prediction) 부호화 방법에서의 제1 선택 움직임 벡터, 제1 선택 움직임 벡터가 선택되는 제1 참조픽춰, 산출되는 제1 산출 움직임 벡터에 대응하는 제2 참조픽춰에 각각 대응하여 [수학식 5] 내지 [수학식 9]에 적용됨으로써, 비복호화 움직임 벡터가 산출된다.
상기와 같이, 비복호화 움직임 벡터가 산출되면, 복호화 움직임 벡터 및 비복호화 움직임 벡터를 이용하여 예측블록이 생성된다(S35). 여기서, 예측블록은 제1 복호화 참조픽춰 및 제2 복호화 참조픽춰 각각에 대응하여 한 쌍의 예측블록이 생성될 수 있다.
그리고, 예측블록이 생성되면, 부호화된 데이터가 엔트로피 복호화 과정 및 잉여 데이터 복호화 과정을 거쳐 현재블록에 대한 잉여블록이 생성되고, 잉여블록 및 예측블록이 합산되어 현재블록의 복원영상이 생성된다(S36).
한편, S32 단계에서 입력되는 데이터가 양-예측(Bi-prediction) 부호화 모드가 아닌 경우, 기 설정된 복호화 과정, 예컨대, 기 공지된 복호화 방법을 통해 복호화가 수행된다(S37).
이하에서는 도 9를 참조하여 본 발명에 따른 양-예측(Bi-prediction) 복호화 장치에 대해 상세히 설명한다. 도 9에 도시된 바와 같이, 본 발명에 따른 양-예측(Bi-prediction) 복호화 장치는 엔트로피 복호화부(30), 잉여데이터 복호화부(31), 움직임 벡터 복호화부(35), 움직임 보상부(34), 메모리부(33) 및 복호화 제어부(32)를 포함할 수 있다.
엔트로피 복호화부(30)는 부호화되어 입력되는 데이터를 엔트로피 복호화하여 출력한다. 여기서, 엔트로피 복호화부(30)에는 엔트로피 부호화된 양자화 변환 계수값들, 복호화 대상 움직임 벡터, 움직임 벡터에 대한 정보 등이 엔트로피 복호화되어 출력된다.
잉여데이터 복호화부(31)는 엔트로피 복호화된 변환 계수값들을 역양자화 및 역변환하여 영상 데이터를 복호화한다.
복호화 제어부(32)는 부호화되어 입력되는 데이터의 부호화 타입을 엔트로피 복호화부(30)에 의해 복호화된 데이터에서 추출한다. 여기서, 부호화되어 입력되는 데이터가 상술한 양-예측(Bi-prediction) 부호화 방법에 의해 부호화된 데이터인 경우에는 양-예측(Bi-prediction) 부호화 과정에서 함께 부호화된 양-예측(Bi-prediction) 부호화 모드 정보가 수신되며, 복호화 제어부(32)는 양-예측(Bi-prediction) 부호화 모드 정보의 수신에 기초하여 해당 데이터가 양-예측(Bi-prediction) 부호화 방법을 통해 부호화된 것임을 인지하게 된다.
움직임 벡터 복호화부(35)는 복호화 제어부(32)에 의해 양-예측(Bi-prediction) 부호화 모드인 것으로 판단되는 경우, 엔트로피 복호화부(30)에 의해 복호화된 데이터 중 복호화 대상 움직임 벡터를 복원한다. 도 10을 참조하여 설명하면, 움직임 벡터 복호화부(35)는 복호화 대상 움직임 벡터 복원부(130) 및 비복호화 대상 움직임 벡터 산출부(133)를 포함할 수 있다.
복호화 대상 움직임 벡터 복원부(130)는 복호화 제어부(32)에 의해 양-예측(Bi-prediction) 부호화 모드인 것으로 판단되는 경우, 엔트로피 복호화부(30)에 의해 복호화된 움직임 벡터가 복호화 대상 움직임 벡터로 인식한다.
그리고, 비복호화 대상 움직임 벡터 산출부(133)는 복호화 대상 움직임 벡터와 메모리부(33)에 저장되어 있는 제1 복호화 참조픽춰 및 제2 복호화 참조픽춰 들의 현재픽춰와의 시간상 거리를 이용하여 비복호화 대상 움직임 벡터를 산출한다. 여기서, 비복호화 대상 움직임 벡터의 산출은 상술한 양-예측(Bi-prediction) 복호화 방법에서 설명되었는 바, 그 상세한 설명은 생략한다.
한편, 움직임 보상부(34)는 움직임 벡터 복호화부(35)로부터 출력되는 복호화 대상 움직임 벡터 및 비복호화 대상 움직임 벡터를 이용하여 예측블록을 생성한다. 여기서, 예측블록은 제1 복호화 참조픽춰 및 제2 복호화 참조픽춰 각각에 대응하여 한 쌍의 예측블록이 생성될 수 있음은 전술한 바와 같다.
그리고, 움직임 보상부(34)에 의해 생성된 예측블록은 엔트로피 복호화 과정 및 잉여 데이터 복호화 과정을 거쳐 출력되는 잉여블록과 합산기를 통해 합산되어 현재블록의 복원영상이 생성된다(S36). 또한, 생성된 현재블록의 복원영상은 움직임 보상을 위해 메모리부(33)에 저장된다.
이상에서 본 발명의 바람직한 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.

Claims (11)

  1. 양-예측(Bi-prediction) 부호화 방법에 있어서,
    (a) 부호화될 현재블록에 대한 제1 참조픽춰로부터 제1 선택 움직임 벡터를 선택하는 단계와;
    (b) 상기 제1 선택 움직임 벡터에 기초하여 제2 참조픽춰에 대한 제1 산출 움직임 벡터를 산출하는 단계와;
    (c) 상기 제1 선택 움직임 벡터, 상기 제1 산출 움직임 벡터, 상기 제1 선택 움직임 벡터에 대응하는 제1 선택 움직임 예측블록 및 상기 제1 산출 움직임 벡터에 대응하는 제2 산출 움직임 예측블록에 기초하여 제1 예측 부호화 비용을 산출하는 단계와;
    (d) 상기 (a) 단계, 상기 (b) 단계 및 상기 (c) 단계를 반복 수행하여 기 설정된 기준을 만족하는 제1 대표 선택 움직임 벡터와 제1 대표 산출 움직임 벡터와 상기 제1 대표 선택 움직임 벡터 및 상기 제1 대표 산출 움직임 벡터에 따른 제1 대표 예측 부호화 비용을 선정하는 단계와;
    (e) 상기 제2 참조픽춰로부터 제2 선택 움직임 벡터를 선택하는 단계와;
    (f) 상기 제2 선택 움직임 벡터에 기초하여 상기 제1 참조픽춰에 대한 제2 산출 움직임 벡터를 산출하는 단계와;
    (g) 상기 제2 선택 움직임 벡터, 상기 제2 산출 움직임 벡터, 상기 제2 선택 움직임 벡터에 대응하는 제2 선택 움직임 예측블록 및 상기 제2 산출 움직임 벡터에 대응하는 제2 산출 움직임 예측블록에 기초하여 제2 예측 부호화 비용을 산출하는 단계와;
    (h) 상기 (e) 단계, 상기 (f) 단계 및 상기 (g) 단계를 반복 수행하여 기 설정된 기준을 만족하는 제2 대표 선택 움직임 벡터와 제2 대표 산출 움직임 벡터와 상기 제2 대표 선택 움직임 벡터 및 상기 제2 대표 산출 움직임 벡터에 따른 제2 대표 예측 부호화 비용을 선정하는 단계와;
    (i) 상기 제1 대표 예측 부호화 비용이 상기 제2 대표 예측 부호화 비용보다 작은 경우 상기 제1 대표 선택 움직임 벡터를 부호화 대상 움직임 벡터로 상기 제1 대표 산출 움직임 벡터를 비부호화 대상 움직임 벡터로 선정하고, 상기 제2 대표 예측 부호화 비용이 상기 제1 대표 예측 부호화 비용보다 작은 경우 상기 제2 대표 선택 움직임 벡터를 상기 부호화 대상 움직임 벡터로 상기 제2 대표 산출 움직임 벡터를 상기 비부호화 대상 움직임 벡터로 선정하는 단계와;
    (j) 상기 부호화 대상 움직임 벡터를 부호화하는 단계를 포함하는 것을 특징으로 하는 양-예측(Bi-prediction) 부호화 방법.
  2. 제1항에 있어서,
    상기 (j) 단계는 부호화가 상기 양-예측(Bi-prediction) 부호화 방법에 의해 부호화된 양-예측(Bi-prediction) 부호화 모드임을 전달하기 위한 양-예측(Bi-prediction) 부호화 모드 정보를 부호화하는 단계를 포함하는 것을 특징으로 하는 양-예측(Bi-prediction) 부호화 방법.
  3. 제2항에 있어서,
    상기 (b) 단계에서 상기 제1 산출 움직임 벡터는 상기 현재블록이 속한 현재픽춰와 상기 제1 참조픽춰 및 상기 제2 참조픽춰 간의 상대적인 시간 상의 거리와 상기 제1 선택 움직임 벡터의 곱에 의해 산출되고;
    상기 (f) 단계에서 상기 제2 산출 움직임 벡터는 상기 현재픽춰와 상기 제1 참조픽춰 및 상기 제2 참조픽춰 간의 상대적인 시간 상의 거리와 상기 제2 선택 움직임 벡터의 곱에 의해 산출되는 것을 특징으로 하는 양-예측(Bi-prediction) 부호화 방법.
  4. 제3항에 있어서,
    상기 제1 참조픽춰 및 상기 제2 참조픽춰가 상기 현재픽춰를 중심으로 시간상으로 전후에 각각 위치하는 경우, 상기 (b) 단계 및 상기 (f) 단계에서 상기 제1 산출 움직임 벡터 및 상기 제2 산출 움직임 벡터는 각각 수학식
    Figure 112010017451283-pat00031
    (여기서, mvcal는 상기 제1 산출 움직임 벡터 또는 상기 제2 산출 움직임 벡터이고, mvsel는 상기 제1 선택 움직임 벡터 또는 상기 제2 선택 움직임 벡터이고, TDB는 상기 제1 참조픽춰와 상기 제2 참조픽춰 중 상기 제1 선택 움직임 벡터 또는 상기 제2 선택 움직임 벡터가 선택된 어느 하나와 상기 현재픽춰 간의 시간상의 거리이고, TDC는 상기 제1 참조픽춰 및 상기 제2 참조픽춰 중 상기 제1 산출 움직임 벡터 또는 상기 제2 산출 움직임 벡터가 산출된 어느 하나와 상기 현재픽춰 간의 시간상의 거리이다)에 의해 산출되는 것을 특징으로 하는 양-예측(Bi-prediction) 부호화 방법.
  5. 제3항에 있어서,
    상기 제1 참조픽춰 및 상기 제2 참조픽춰가 상기 현재픽춰로부터 시간상으로 전 또는 후에 함께 위치하는 경우, 상기 (b) 단계 및 상기 (f) 단계에서 상기 제1 산출 움직임 벡터 및 상기 제2 산출 움직임 벡터는 각각 수학식
    Figure 112010017451283-pat00032
    (여기서, mvcal는 상기 제1 산출 움직임 벡터 또는 상기 제2 산출 움직임 벡터이고, mvsel는 상기 제1 선택 움직임 벡터 또는 상기 제2 선택 움직임 벡터이고, TDB는 상기 제1 참조픽춰와 상기 제2 참조픽춰 중 상기 제1 선택 움직임 벡터 또는 상기 제2 선택 움직임 벡터가 선택된 어느 하나와 상기 현재픽춰 간의 시간상의 거리이고, TDC는 상기 제1 참조픽춰 및 상기 제2 참조픽춰 중 상기 제1 산출 움직임 벡터 또는 상기 제2 산출 움직임 벡터가 산출된 어느 하나와 상기 현재픽춰 간의 시간상의 거리이다)에 의해 산출되는 것을 특징으로 하는 양-예측(Bi-prediction) 부호화 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 따른 양-예측(Bi-prediction) 부호화 방법을 수행하기 위한 프로그램 코드가 기록된 컴퓨터가 판단 가능한 기록매체.
  7. 양-예측(Bi-prediction) 부호화 장치에 있어서,
    복수의 제1 참조픽춰로부터 부호화 될 현재블록에 기초하여 기 설정된 움직임 탐색범위 내의 상기 각 제1 참조픽춰에 대응하는 제1 선택 움직임 벡터를 선택하는 제1 움직임 벡터 선택부와;
    상기 각 제1 선택 움직임 벡터와 상기 각 제1 선택 움직임 벡터에 대응하는 제2 참조픽춰에 기초하여 상기 각 제1 선택 움직임 벡터에 대응하는 제1 산출 움직임 벡터를 산출하는 제1 움직임 벡터 산출부와;
    상기 제1 선택 움직임 벡터, 상기 제1 산출 움직임 벡터, 상기 제1 선택 움직임 벡터에 대응하는 제1 선택 움직임 예측블록 및 상기 제1 산출 움직임 벡터에 대응하는 제1 산출 움직임 예측블록에 기초하여 상기 각 제1 선택 움직임 벡터에 각각 대응하는 제1 예측 부호화 비용을 산출하는 제1 부호화 비용 산출부와;
    상기 각 제1 선택 움직임 벡터에 대응하여 산출된 상기 복수의 제1 예측 부호화 비용을 비교하여 기 설정된 조건을 만족하는 제1 대표 예측 부호화 비용을 선정하는 제1 부호 화 비용 선정부와;
    상기 각 제2 참조픽춰로부터 상기 각 제2 참조픽춰에 대응하는 제2 선택 움직임 벡터를 선택하는 제2 움직임 벡터 선택부와;
    상기 각 제2 선택 움직임 벡터와 상기 각 제2 선택 움직임 벡터에 대응하는 상기 제1 참조픽춰에 기초하여 상기 각 제2 선택 움직임 벡터에 대응하는 제2 산출 움직임 벡터를 산출하는 제2 움직임 벡터 산출부와;
    상기 제2 선택 움직임 벡터, 상기 제2 산출 움직임 벡터, 상기 제2 선택 움직임 벡터에 대응하는 제2 선택 움직임 예측블록 및 상기 제2 산출 움직임 벡터에 대응하는 제2 산출 움직임 예측블록에 기초하여 상기 각 제2 선택 움직임 벡터에 각각 대응하는 제2 예측 부호화 비용을 산출하는 제2 부호화 비용 산출부와;
    상기 각 제2 선택 움직임 벡터에 대응하여 산출된 상기 복수의 제2 예측 부호화 비용을 비교하여 기 설정된 조건을 만족하는 제2 대표 예측 부호화 비용을 선정하는 제2 부호화 비용 선정부와;
    상기 제1 대표 예측 부호화 비용이 상기 제2 대표 예측 부호화 비용보다 작은 경우 상기 제1 선택 움직임 벡터 중 상기 제1 대표 예측 부호화 비용에 대응하는 어느 하나를 부호화 대상 움직임 벡터로 선정하고, 상기 제2 대표 예측 부호화 비용이 상기 제1 대표 예측 부호화 비용보다 작은 경우 상기 제2 선택 움직임 벡터 중 상기 제2 대표 예측 부호화 비용에 대응하는 어느 하나를 부호화 대상 움직임 벡터로 선정하는 움직임 벡터 선정부와;
    상기 부호화 대상 움직임 벡터를 부호화하는 움직임 벡터 부호화부를 포함하는 것을 특징으로 하는 양-예측(Bi-prediction) 부호화 장치.
  8. 제7항에 있어서,
    상기 움직임 벡터 부호화부는,
    상기 부호화 대상 움직임 벡터의 부호화가 양-예측(Bi-prediction) 부호화 방법에 의해 부호화된 양-예측(Bi-prediction) 부호화 모드임을 전달하기 위한 양-예측(Bi-prediction) 부호화 모드 정보를 부호화하는 것을 특징으로 하는 양-예측(Bi-prediction) 부호화 장치.
  9. 제8항에 있어서,
    상기 제1 움직임 벡터 산출부는 상기 현재블록이 속한 현재픽춰와 상기 제1 참조픽춰 및 상기 제2 참조픽춰 간의 상대적인 시간 상의 거리와 상기 제1 선택 움직임 벡터의 곱에 의해 상기 제 1 산출 움직임 벡터를 산출하고;
    상기 제2 움직임 벡터 산출부는 상기 현재블록이 속한 현재픽춰와 상기 제1 참조픽춰 및 상기 제2 참조픽춰 간의 상대적인 시간 상의 거리와 상기 제2 선택 움직임 벡터의 곱에 의해 상기 제2 산출 움직임 벡터를 산출하는 것을 특징으로 하는 양-예측(Bi-prediction) 부호화 장치.
  10. 제9항에 있어서,
    상기 제1 참조픽춰 및 상기 제2 참조픽춰가 상기 현재픽춰를 중심으로 시간상으로 전후에 각각 위치하는 경우, 상기 제1 움직임 벡터 산출부 및 상기 제2 움직임 벡터 산출부는 상기 제1 산출 움직임 벡터 및 상기 제2 산출 움직임 벡터를 각각 수학식
    Figure 112010017451283-pat00033
    (여기서, mvcal는 상기 제1 산출 움직임 벡터 또는 상기 제2 산출 움직임 벡터이고, mvsel는 상기 제1 선택 움직임 벡터 또는 상기 제2 선택 움직임 벡터이고, TDB는 상기 제1 참조픽춰와 상기 제2 참조픽춰 중 상기 제1 선택 움직임 벡터 또는 상기 제2 선택 움직임 벡터가 선택된 어느 하나와 상기 현재픽춰 간의 시간상의 거리이고, TDC는 상기 제1 참조픽춰 및 상기 제2 참조픽춰 중 상기 제1 산출 움직임 벡터 또는 상기 제2 산출 움직임 벡터가 산출된 어느 하나와 상기 현재픽춰 간의 시간상의 거리이다)에 의해 산출하는 것을 특징으로 하는 양-예측(Bi-prediction) 부호화 장치.
  11. 제9항에 있어서,
    상기 제1 참조픽춰 및 상기 제2 참조픽춰가 상기 현재픽춰로부터 시간상으로 전 또는 후에 함께 위치하는 경우, 상기 제1 움직임 벡터 산출부 및 상기 제2 움직임 벡터 산출부는 상기 제1 산출 움직임 벡터 및 상기 제2 산출 움직임 벡터를 각각 수학식
    Figure 112010017451283-pat00034
    (여기서, mvcal는 상기 제1 산출 움직임 벡터 또는 상기 제2 산출 움직임 벡터이고, mvsel는 상기 제1 선택 움직임 벡터 또는 상기 제2 선택 움직임 벡터이고, TDB는 상기 제1 참조픽춰와 상기 제2 참조픽춰 중 상기 제1 선택 움직임 벡터 또는 상기 제2 선택 움직임 벡터가 선택된 어느 하나와 상기 현재픽춰 간의 시간상의 거리이고, TDC는 상기 제1 참조픽춰 및 상기 제2 참조픽춰 중 상기 제1 산출 움직임 벡터 또는 상기 제2 산출 움직임 벡터가 산출된 어느 하나와 상기 현재픽춰 간의 시간상의 거리이다)에 의해 산출하는 것을 특징으로 하는 양-예측(Bi-prediction) 부호화 장치.
KR1020100024553A 2010-03-19 2010-03-19 양-예측 부호화 방법 및 장치, 양-예측 복호화 방법 및 장치 및 기록매체 Expired - Fee Related KR100978465B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100024553A KR100978465B1 (ko) 2010-03-19 2010-03-19 양-예측 부호화 방법 및 장치, 양-예측 복호화 방법 및 장치 및 기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100024553A KR100978465B1 (ko) 2010-03-19 2010-03-19 양-예측 부호화 방법 및 장치, 양-예측 복호화 방법 및 장치 및 기록매체

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020080014672A Division KR100955396B1 (ko) 2007-06-15 2008-02-19 양-예측 부호화 방법 및 장치, 양-예측 복호화 방법 및장치 및 기록매체

Publications (2)

Publication Number Publication Date
KR20100045959A KR20100045959A (ko) 2010-05-04
KR100978465B1 true KR100978465B1 (ko) 2010-08-26

Family

ID=42273502

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100024553A Expired - Fee Related KR100978465B1 (ko) 2010-03-19 2010-03-19 양-예측 부호화 방법 및 장치, 양-예측 복호화 방법 및 장치 및 기록매체

Country Status (1)

Country Link
KR (1) KR100978465B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10687053B2 (en) 2015-11-19 2020-06-16 Electronics And Telecommunications Research Institute Method and apparatus for image encoding/decoding
US12101470B2 (en) 2015-11-19 2024-09-24 Electronics And Telecommunications Research Institute Method and apparatus for image encoding/decoding

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112954349B (zh) 2018-06-21 2024-08-23 株式会社Kt 用于处理视频信号的方法和设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050042275A (ko) * 2002-10-04 2005-05-06 엘지전자 주식회사 모션벡터 결정방법
KR20050122496A (ko) * 2004-06-24 2005-12-29 삼성전자주식회사 B-픽쳐의 효율적인 부호화 및 복호화 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050042275A (ko) * 2002-10-04 2005-05-06 엘지전자 주식회사 모션벡터 결정방법
KR20050042274A (ko) * 2002-10-04 2005-05-06 엘지전자 주식회사 모션벡터 결정방법
KR20050122496A (ko) * 2004-06-24 2005-12-29 삼성전자주식회사 B-픽쳐의 효율적인 부호화 및 복호화 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10687053B2 (en) 2015-11-19 2020-06-16 Electronics And Telecommunications Research Institute Method and apparatus for image encoding/decoding
US11039128B2 (en) 2015-11-19 2021-06-15 Electronics And Telecommunications Research Institute Method and apparatus for image encoding/decoding
US11683475B2 (en) 2015-11-19 2023-06-20 Electronics And Telecommunications Research Institute Method and apparatus for image encoding/decoding
US12101470B2 (en) 2015-11-19 2024-09-24 Electronics And Telecommunications Research Institute Method and apparatus for image encoding/decoding

Also Published As

Publication number Publication date
KR20100045959A (ko) 2010-05-04

Similar Documents

Publication Publication Date Title
KR100955396B1 (ko) 양-예측 부호화 방법 및 장치, 양-예측 복호화 방법 및장치 및 기록매체
KR101366242B1 (ko) 움직임 모델 파라메터의 부호화, 복호화 방법 및 움직임모델 파라메터를 이용한 영상의 부호화, 복호화 방법 및장치
JP5580453B2 (ja) 直接モード符号化及び復号化装置
US10104393B2 (en) Video prediction encoding device, video prediction encoding method, video prediction encoding program, video prediction decoding device, video prediction decoding method, and video prediction decoding program
US9628815B2 (en) Method and apparatus for encoding/decoding the motion vectors of a plurality of reference pictures, and apparatus and method for image encoding/decoding using same
US8948243B2 (en) Image encoding device, image decoding device, image encoding method, and image decoding method
US20100310184A1 (en) Dual prediction video encoding and decoding method and device
KR20090095012A (ko) 연속적인 움직임 추정을 이용한 영상 부호화, 복호화 방법및 장치
GB2487200A (en) Video encoding and decoding with improved error resilience
US20090016443A1 (en) Inter mode determination method for video encoding
US20250184479A1 (en) Bi-prediction coding method and apparatus, bi-prediction decoding method and apparatus, and recording medium
KR20120025111A (ko) 참조 화소들의 특성을 이용하여 예측모드 정보의 전송을 생략할 수 있는 화면 내 예측 부호화/복호화 장치 및 그 방법
KR100978465B1 (ko) 양-예측 부호화 방법 및 장치, 양-예측 복호화 방법 및 장치 및 기록매체
US9723307B2 (en) Estimation of motion at the level of the decoder by matching of models
JP2006517369A (ja) ビデオデータストリームを符号化するための装置
KR100728011B1 (ko) 영상 부호화 및 복호화 장치와, 그 방법, 및 이를 수행하기위한 프로그램이 기록된 기록 매체
KR20210119388A (ko) 비디오 인코딩 및 비디오 디코딩
US20250294178A1 (en) Decoder-side motion vector refinement with affine model
JP2006324888A (ja) 動画像符号化装置
KR20120035769A (ko) 움직임 정보 부호화 및 복호화 방법과 이를 이용한 장치
JP2008017304A (ja) 画像符号化装置、画像復号装置、画像符号化方法、及び画像符号化するプログラム
Zheng Side information exploitation, quality control and low complexity implementation for distributed video coding
JP2010288096A (ja) 動画像符号化方法、動画像符号化装置及び動画像符号化プログラム

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
PA0107 Divisional application

St.27 status event code: A-0-1-A10-A16-div-PA0107

St.27 status event code: A-0-1-A10-A18-div-PA0107

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

Fee payment year number: 1

St.27 status event code: A-2-2-U10-U11-oth-PR1002

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R11-asn-PN2301

St.27 status event code: A-5-5-R10-R13-asn-PN2301

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R11-asn-PN2301

St.27 status event code: A-5-5-R10-R13-asn-PN2301

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

FPAY Annual fee payment

Payment date: 20130530

Year of fee payment: 4

PR1001 Payment of annual fee

Fee payment year number: 4

St.27 status event code: A-4-4-U10-U11-oth-PR1001

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

FPAY Annual fee payment

Payment date: 20140617

Year of fee payment: 5

PR1001 Payment of annual fee

Fee payment year number: 5

St.27 status event code: A-4-4-U10-U11-oth-PR1001

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

Not in force date: 20150821

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

St.27 status event code: A-4-4-U10-U13-oth-PC1903

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PC1903 Unpaid annual fee

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20150821

St.27 status event code: N-4-6-H10-H13-oth-PC1903

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R11-asn-PN2301

St.27 status event code: A-5-5-R10-R13-asn-PN2301

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000