KR20060004627A - 비디오 복호화 방법 및 장치 - Google Patents

비디오 복호화 방법 및 장치 Download PDF

Info

Publication number
KR20060004627A
KR20060004627A KR1020050127856A KR20050127856A KR20060004627A KR 20060004627 A KR20060004627 A KR 20060004627A KR 1020050127856 A KR1020050127856 A KR 1020050127856A KR 20050127856 A KR20050127856 A KR 20050127856A KR 20060004627 A KR20060004627 A KR 20060004627A
Authority
KR
South Korea
Prior art keywords
frame
vector
encoded
motion
prediction
Prior art date
Application number
KR1020050127856A
Other languages
English (en)
Other versions
KR100658181B1 (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 가부시끼가이샤 도시바
Publication of KR20060004627A publication Critical patent/KR20060004627A/ko
Application granted granted Critical
Publication of KR100658181B1 publication Critical patent/KR100658181B1/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/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/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/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/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Abstract

본 발명의 비디오 복호화 방법은, 부호화시에 복수의 참조 모션벡터로부터 선택된 하나의 참조벡터를 스케일링 팩터에 의해 스케일링함으로써 생성된 부호화된 프레임과 예측벡터를 포함하는 부호화된 비디오 데이터를 수신하는 단계와, 상기 예측벡터를 추출하기 위해 상기 부호화된 비디오 데이터를 복호화하는 단계, 복호화된 상기 예측벡터로부터 모션벡터를 생성하는 단계 및, 비디오를 재생하기 위해 상기 생성된 모션벡터를 이용하여 모션보상 예측에 의해 상기 부호화된 프레임을 복호화하는 단계를 구비하여 이루어지고, 상기 참조 모션벡터는 상기 부호화 대상 영역과 공간적으로 같은 위치에 있는 참조프레임 중 하나의 참조영역의 원래의 영역을 부호화할 때, 모션보상 예측을 위해 상기 부호화된 프레임으로부터 선택된 몇개의 참조프레임에 관해 생성된다.

Description

비디오 복호화 방법 및 장치 {VIDEO DECODING METHOD AND APPARATUS}
도 1은 본 발명의 1실시형태에 따른 비디오 부호화 장치의 구성을 나타낸 블록도이고,
도 2는 동 실시형태에 따른 비디오 복호화 장치의 구성을 나타낸 블록도,
도 3은 동 실시형태에서의 모션벡터 예측 부호화 방법의 제1예를 나타낸 도면,
도 4는 동 실시형태에서의 모션벡터 예측 부호화 방법의 제2예를 나타낸 도면,
도 5는 동 실시형태에서의 모션벡터 예측 부호화 방법의 제3예를 나타낸 도면,
도 6은 동 실시형태에서의 모션벡터 예측 부호화 방법의 제4예를 나타낸 도면,
도 7은 동 실시형태에서의 프레임간의 모션량을 부호화하는 방법을 설명하는 도면,
도 8은 동 실시형태에서의 프레임간의 모션량을 부호화하는 방법을 설명하는 도면,
도 9는 동 실시형태에서의 프레임간의 모션량을 부호화하는 방법을 설명하는 도면,
도 10은 동 실시형태에서의 모션벡터 예측 부호화 방법의 제5예를 나타낸 도면,
도 11은 동 실시형태에서의 모션벡터 예측 부호화 방법의 제6예를 나타낸 도면,
도 12는 부호화 대상의 매크로블록과 주위의 매크로블록의 위치관계를 설명하는 도면,
도 13은 동 실시형태에서의 모션벡터 예측 부호화 방법의 제7예를 나타낸 도면이다.
본 발명은 압축 부호화된 데이터를 복호화하여 원래의 비디오 신호를 재생하는 비디오 복호화 방법과 비디오 복호화 장치에 관한 것이다.
비디오 화상의 압축 부호화 시스템으로서, MPEG-1(ISO/IEC 11172-2), MPEG-2(ISO/IEC 13818-2), MPEG-4(ISO/IEC 14496-2), ITU-TH.263 등이 널리 실용화되고 있다. 이들 부호화 시스템에서는, 모션보상 예측 부호화는 프레임내 부호화 영상(intra-frame encoded picture: I영상), 전방 예측 프레임간 부호화 영상(forward prediction interframe encoded picture: P영상), 양방향 예측 프레임간 부호화 영상(bi-directional prediction encoded picture: B영상)의 조합에 의한 모션보상 예측 부호화가 행해진다. P영상은 직전의 P영상 또는 I영상을 참조프레임(reference frame)으로 이용하여 부호화된다. B영상은 직전 및 직후의 P영상 또는 I영상을 참조프레임으로 이용하여 부호화된다.
MPEG 방식에서는, 비디오 화상의 1개의 프레임 또는 복수의 프레임으로부터 매크로블록마다 예측 화상을 생성하는 것이 가능하다. P영상에서는 통상은 1개의 참조프레임으로부터 매크로블록 단위로 예측 영상을 생성한다. B영상에서는 전방 및 후방 영상으로 구성된 참조프레임의 어느 하나를 이용하여 예측 영상을 생성한다. 혹은, 전방 및 후방 참조프레임으로부터 참조 매크로블록을 추출한다. 매크로블록의 평균치로부터 예측 영상을 재생한다. 예측모드를 나타내는 예측모드 정보는 매크로블록마다 부호화 데이터에 매립된다.
B영상의 양방향 예측에 있어서는, 전방 및 후방의 참조프레임으로부터 각각 모션보상 예측을 행한다. 따라서, 모션보상을 행하는 단위영역(예컨대, 매크로블록이나 매크로블록을 분할한 소영역)마다 전방 및 후방의 영상 각각에 대응한 2개의 모션벡터가 필요하여, 1개의 모션벡터를 이용하는 전방예측에 비해 모션벡터의 부호화 비트수가 많다는 문제가 있다. 마찬가지로, 전방 혹은 후방의 복수의 프레임으로부터 모션보상 예측을 행하는 경우도, 각각의 참조프레임에 대응한 모션벡터가 필요하게 되어, 모션벡터의 부호화 비트수가 증대한다는 문제가 있다.
상술한 바와 같이, 종래의 B영상에서의 양방향 예측과 같이 복수의 참조프레임으로부터의 모션보상예측을 행하는 비디오 부호화 방식에 있어서는, 복수의 참조 프레임에 대응한 모션벡터가 필요하다. 이 때문에, 이들 모션벡터를 부호화하면 모션벡터의 부호화 비트수가 많아진다는 문제가 있다.
본 발명은 복수의 참조프레임으로부터 모션보상 예측을 행하는데 필요한 모션벡터의 부호화 비트수를 저감시킬 수 있는 비디오 복호화 방법 및 비디오 복호화 장치를 제공하는 것을 목적으로 한다.
본 발명의 한 태양(態樣)에 따르면, 부호화시에 복수의 참조 모션벡터로부터 선택된 하나의 참조벡터를 스케일링 팩터에 의해 스케일링함으로써 생성된 부호화된 프레임과 예측벡터를 포함하는 부호화된 비디오 데이터를 수신하는 단계와, 상기 예측벡터를 추출하기 위해 상기 부호화된 비디오 데이터를 복호화하는 단계, 복호화된 상기 예측벡터로부터 모션벡터를 생성하는 단계 및, 비디오를 재생하기 위해 상기 생성된 모션벡터를 이용하여 모션보상 예측에 의해 상기 부호화된 프레임을 복호화하는 단계를 구비하여 이루어지되, 상기 참조 모션벡터가, 상기 부호화 대상 영역과 공간적으로 같은 위치에 있는 참조프레임 중 하나의 참조영역의 원래의 영역을 부호화할 때, 모션보상 예측을 위해 상기 부호화된 프레임으로부터 선택된 몇개의 참조프레임에 관해 생성되도록 된 것을 특징으로 하는 비디오 복호화 방법이 제공된다.
본 발명의 다른 태양에 따르면, 부호화시에 복수의 참조 모션벡터로부터 선택된 하나의 참조벡터를 스케일링 팩터에 의해 스케일링함으로써 생성된 부호화된 프레임과 예측벡터를 포함하는 부호화된 비디오 데이터를 수신하는 수신수단과, 상 기 예측벡터를 추출하기 위해 상기 부호화된 비디오 데이터를 복호화하는 제1복호화수단, 복호화된 상기 예측벡터로부터 상기 모션벡터를 생성하는 생성수단 및, 비디오를 재생하기 위해 상기 생성된 모션벡터를 이용하여 모션보상 예측에 의해 상기 부호화된 프레임을 복호화하는 제2복호화수단을 갖추어 구성되되, 상기 참조 모션벡터가, 상기 부호화 대상 영역과 공간적으로 같은 위치에 있는 참조프레임 중 하나의 참조프레임의 참조영역의 원래의 영역을 부호화할 때, 모션보상 예측을 위해 상기 부호화된 프레임으로부터 선택된 몇개의 참조프레임에 관해 생성되도록 된 것을 특징으로 하는 비디오 복호화 장치가 제공된다.
(발명의 실시형태)
이하, 도면을 참조하여 본 발명의 실시형태에 대해 설명한다.
부호화(Encoding)
도 1에 나타낸 비디오 부호화 장치는 하드웨어로 실현해도 좋고, 컴퓨터를 이용하여 소프트웨어에 의해 실행해도 좋다. 또, 일부 처리를 하드웨어로 실현하고, 그 외의 처리를 소프트웨어에 의해 실행해도 좋다.
도 1에 있어서, 입력화상신호(100)는 프레임 단위로 감산기(110)에 입력되어, 입력화상신호(100)에 대한 예측영상신호(104)의 오차인 예측오차신호(101)를 생성한다. 예측영상신호(104)는 참조프레임 메모리세트(FMA; 118)에 일시적으로 보존된 적어도 1개의 참조프레임 영상신호(또는, 참조영상신호)로부터 모션보상 예측기(MC; 111)에 의해 생성된다. 참조프레임 메모리세트(118)는 복수의 프레임 메모리에 의해 구성된다.
모션보상 예측기(111)는 참조프레임의 선택과 예측벡터의 생성 및 모션보상 예측을 행한다. 예측오차신호(101)는 이산 코사인 변환기(DCT; 112), 양자화기(Q; 113) 및 가변길이 부호화기(VLC; 114)를 거쳐 부호화된다. 가변길이 부호화기(11 4)로부터 출력되는 부호화 데이터(106)에는 모션보상 예측에 사용한 참조프레임을 특정하는 인덱스와 양자화 DCT 계수의 부호화 데이터(102)뿐만 아니라 사이드 데이터(side data)로 칭해지는 데이터(105)도 부가된다. 사이드 데이터는 모션보상 예측에 이용한 모션벡터를 예측하여 생성되는 예측벡터의 생성에 관한 정보를 매크로블록 단위로 부호화함으로써 생성된다. 부호화 데이터(106)는 축적계(蓄積系) 또는 전송계(도시하지 않음)로 송출된다.
양자화기(113)의 출력은 역양자화기(IQ; 115)에도 입력된다. 역양자화기 (115) 및 역이산 코사인 변환기(IDCT; 116)를 거친 양자화 출력은 예측영상신호 (104)에 가산됨으로써, 복호화 영상신호(103)를 생성한다. 복호화 영상신호(103)는 참조프레임 메모리세트(118)에 참조프레임으로서 일시적으로 보존된다.
참조프레임 메모리세트(118)에 있어서는, 예컨대 새로운 복호화 영상신호가 참조프레임으로서 순차적으로 기입된다. 게다가, 참조프레임 메모리세트(118)에 이미 보존되어 있는 참조프레임은 가장 오래된 참조프레임으로부터 순차적으로 삭제되거나 후술하는 프레임 출력순서가 가장 작은 값을 나타내는 참조프레임으로부터 삭제된다. 즉, 참조프레임 메모리세트(118)는 소위 FIFO(First-In First-Out)형으로 제어된다. 복호화 영상신호(103)에 대해 프레임 단위마다, 매크로블록마다, 복수 매크로블록의 그룹(슬라이스)마다 또는 프레임이나 슬라이스의 그룹마다 참조프레임으로서 이용할지의 여부를 나타내는 플래그 등의 부가정보를 부가해도 좋다. 이 경우, 부가정보에 의해 참조프레임으로서 이용되는 복호화 영상신호만을 참조프레임 메모리세트(118)에 참조프레임의 영상신호로서 기입하여 후속 프레임의 모션보상 예측에 이용하도록 한다.
복호화(Decoding)
도 2는 본 실시형태에 따른 도 1에 나타낸 비디오 부호화 장치에 대응하는 비디오 복호화 장치의 구성을 나타낸 블록도이다. 비디오 복호화 장치는 하드웨어로 실현해도 좋고, 컴퓨터를 이용하여 소프트웨어에 의해 실행해도 좋다. 또, 일부 처리를 하드웨어로 실현하고, 그 외의 처리를 소프트웨어에 의해 실행해도 좋다.
도 2에 나타낸 비디오 복호화 장치에는, 도 1에 나타낸 비디오 부호화 장치에 의해 출력된 부호화 데이터가 축적계 또는 전송계(도시하지 않음)를 거쳐 입력된다. 입력된 부호화 데이터(200)는 가변길이 복호화기(VLD; 214)에 의해 가변길이 복호화가 행해져, 양자화 DCT 계수 데이터(201)와 사이드 데이터(202)가 출력된다.
가변길이 복호화기(214)로부터의 출력중 양자화 DCT 계수 데이터(201)는 역양자화기(IQ; 215) 및 역이산 코사인 변환기(IDCT; 216)를 거쳐 복호되어 예측오차신호(204)가 생성된다.
가변길이 복호화기(214)로부터의 출력중 매크로블록마다 부호화된 모션벡터 및 모션보상 예측에 사용한 참조프레임을 특정하는 인덱스를 포함하는 사이드 데이터(202)는 모션보상 예측기(MC; 211)에 입력된다. 모션보상 예측기(211)는 사이드 데이터(202)에 따라 참조프레임의 선택, 예측벡터의 생성 및 모션보상 예측을 행함으로써 예측영상신호(203)를 생성한다. 이 예측영상신호(203)는 역이산 코사인 변환기(216)로부터 출력되는 예측오차신호(204)에 가산되어 복호화 영상신호(205)를 생성한다.
복호화 영상신호(205)는 참조프레임 메모리세트(FMA; 218)에 참조프레임으로서 일시적으로 보존된다. 참조프레임 메모리세트(218)는 부호화시와 마찬가지로 FIFO형으로 제어되어도 좋다. 부가정보에 따라 참조프레임 메모리세트(218)에 기입된 복호화 영상신호(205)는 후속의 복호화 대상 프레임의 모션보상 예측에 이용되어도 좋다. 부가정보는, 예컨대 복호화 영상신호(205)에 부가되어 있고 참조프레임으로서 이용할지의 여부를 나타내는 플래그를 포함한다.
본 실시형태에 따른 비디오 부호화 장치 및 복호화 장치에서는, 전방 및 후방 프레임으로부터의 모션보상 예측을 행하는 양방향 예측이나, 전방 혹은 후방 프레임으로부터의 모션보상 예측과 같이 복수의 모션벡터를 이용하여 모션보상 예측을 행할 때에 모션벡터를 직접 부호화하지 않고 그 모션벡터를 예측부호화함으로써 부호화 비트수를 삭감한다.
여기에서, 모션벡터 예측 부호화 방법에는, [Ⅰ] 부호화된 프레임의 모션벡터를 참조벡터로 하는 예측 부호화 방법과, [Ⅱ] 부호화 대상 프레임내의 부호화 대상 블록의 주위의 부호화된 매크로블록의 모션벡터를 참조벡터로 하는 예측 부호 화 방법의 2가지가 있다.
[Ⅰ]의 예측 부호화 방법에서는, 모션보상 예측기(111)에 있어서 선택된 참조프레임내의 소영역을 부호화할 때에 모션보상 예측에 이용된 모션벡터를 참조벡터로서 이용하여 부호화 대상 모션벡터를 예측함으로써 예측벡터를 생성한다.
한편, 도 2에 나타낸 비디오 복호화 장치에 있어서는, 모션보상 예측기(211)에 있어서 선택된 참조프레임내의 소영역을 부호화할 때에 모션보상 예측에 이용된 모션벡터를 참조벡터로서 이용하여 부호화 대상 모션벡터를 예측함으로써 예측벡터를 생성한다.
[Ⅱ]의 예측 부호화 방법에서는, 모션보상 예측기(111)에 있어서 부호화 대상 프레임내의 부호화 대상 소영역 주위의 복수의 부호화된 소영역을 부호화할 때에 모션보상 예측에 이용된 복수의 모션벡터를 참조벡터로서 이용하여 제1 및 제2부호화 대상 모션벡터를 예측함으로써 예측벡터를 생성한다.
한편, 도 2에 나타낸 비디오 복호화 장치에 있어서는, 모션보상 예측기(211)에 있어서 부호화 대상 프레임내의 부호화 대상 소영역 주위의 복수의 부호화된 소영역을 부호화할 때에 모션보상 예측에 이용된 복수의 모션벡터를 참조벡터로서 이용하여 제1 및 제2부호화 대상 모션벡터를 예측함으로써 예측벡터를 생성한다.
이하, [Ⅰ]의 예측 부호화 방법에 대해 도 3∼도 8을 이용하여 설명하고, [Ⅱ]의 예측 부호화 방법에 대해 도 9∼도 11을 이용하여 설명한다.
부호화된 프레임의 모션벡터를 참조벡터로 하는 모션벡터 예측 부호화 방법 [Ⅰ]에 대해:
도 3∼도 6은 이미 부호화된 프레임에서 이용된 모션벡터(참조벡터라 칭함)를 스케일링(scaling)하여 예측벡터를 생성하는 예를 나타낸다. 이 경우, 참조벡터와 예측벡터간의 차분벡터를 부호화함으로써, 모션벡터의 부호화 비트수를 삭감할 수 있다. 예측벡터를 이용함으로써, 모션벡터의 부호화를 생략해도 좋다. 이 경우, 모션벡터의 부호화 비트수를 더 삭감할 수 있다. 상술한 차분벡터를 부호화함으로써 얻은 데이터(제4데이터)를 도 1에 나타낸 비디오 부호화 장치에 의해 출력되는 부호화 데이터(106)에 포함시키는 경우에는, 가변길이 복호화기(214)를 매개로 도 2에 나타낸 비디오 복호화 장치에 입력되는 부호화 데이터(200)의 사이드 데이터 (202)의 일부로서 차분벡터의 데이터를 복호화한다. 그리고, 차분벡터를 예측벡터에 가산함으로써 얻은 모션벡터를 이용하여 모션보상 예측을 행한다.
도 3∼도 6에 있어서, "current"는 부호화하고자 하는 현 프레임, 즉 부호화 대상 프레임을 나타낸다. rf0, rf1, rf2, rb0은 부호화된 프레임에 대응하는 참조프레임을 나타낸다. rf0, rf1은 과거의 참조프레임을 나타낸다. rb0은 미래의 참조프레임을 나타낸다.
curMB는 부호화 대상 프레임내의 부호화 대상 매크로블록을 나타낸다. coMB는 참조프레임(rb0)내에서 블록(curMB)과 공간적으로 같은 위치에 있는 부호화된 매크로블록(참조 매크로블록)을 나타낸다.
참조프레임(rf0, rf1, rf2, rb0)중 어느 것을 모션보상 예측에 이용할지는 각 참조프레임(rf0, rf1, rf2, rb0)을 지시하는 인덱스(참조프레임 인덱스)를 부호화함으로써 나타내어진다.
도 3∼도 6의 예에서는 2매의 참조프레임(rf0, rf2)을 예측에 이용하고 있기 때문에, 이들 참조프레임(rf0, rf2)에 대응한 2개의 참조프레임 인덱스(ref_idx_f, ref_idx_b)의 조합을 나타내는 인덱스값을 부호화한다. 참조프레임 인덱스(ref_ idx_f, ref_idx_b)에 대응하는 모션벡터는 각각 MV(ref_idx_f) 및 MV(ref_idx_b)로 나타내어져 있다. 이것들이 본 실시형태에 있어서 예측 부호화되어야 할 모션벡터이다.
인덱스 ref_idx_f ref_idx_b
0 rf0 rb0
1 rf1 rf0
2 rf2 rf1
3 rb0 rf2
표 1은 참조프레임 인덱스(ref_idx_f, ref_idx_b)와 참조프레임 및 인덱스값의 대응관계를 나타낸다. 인덱스값을 이하와 같이 설정함으로써, 예측에 이용되는 참조프레임(rf0, rf2)을 지시한다.
ref_idx_f=0
ref_idx_b=3
표 1은 2개의 참조프레임 인덱스(ref_idx_f, ref_idx_b)간에서 참조프레임이 다른 예를 나타낸다. 그러나, 참조프레임은 표 2에 나타낸 바와 같이 2개의 참조프레임 인덱스(ref_idx_f, ref_idx_b)간에서 동일하게 해도 좋다.
인덱스 ref_idx_f ref_idx_b
0 rf0 rf0
1 rf1 rf1
2 rf2 rf2
3 rb0 rb0
<동일한 참조프레임 인덱스에 대응한 모션벡터를 예측에 이용하는 예>
도 3의 예에서는, 동일한 참조프레임 인덱스에 대응한 참조프레임으로부터의 모션벡터(참조벡터)를 스케일링하여 예측 모션벡터를 생성한다. 참조벡터 RMV(ref _idx_f) 및 RMV(ref_idx_b)는, 참조 매크로블록(coMB)을 부호화할 때에 이용된 참조프레임 인덱스(ref_idx_f, ref_idx_b)에 대응하는 참조프레임으로부터의 모션벡터이다.
도 3에서는 부호화 대상 프레임(current)부터 참조프레임 인덱스(ref_ idx_f, ref_idx_b)로 나타내어지는 참조프레임(rf0, rf2)까지의 시간거리를 FD1 및 FD2로 한다. 참조 매크로블록(coMB)이 있는 참조프레임(rb0)부터 참조프레임 인덱스(ref_idx_f, ref_idx_b)로 나타내어지는 참조프레임(rf1, rf0)까지의 시간거리를 RFD1 및 RFD2로 한다. 한편, 이하의 설명에서는 상술한 시간거리(FD1, FD2, RFD1, RFD2)를 프레임간 거리, 프레임 출력 순서차 또는 영상 출력 순서차라고도 부른다.
이 경우, 모션벡터 MV(ref_idx_f) 및 MV(ref_idx_b)는 참조벡터 RMV(ref _idx_f) 및 RMV(ref_idx_b)를 프레임간 거리에 따라 이하와 같이 스케일링함으로써 예측벡터로서 구해진다.
MV(ref_idx_f)=S1*RMV(ref_idx_f), S1=FD1/RFD1
MV(ref_idx_b)=S2*RMV(ref_idx_b), S2=FD2/RFD2
여기에서, S1, S2를 스케일링 팩터(factor)라 칭한다.
동일한 참조프레임 인덱스에 대응하는 참조프레임내에서 같은 공간위치에 있는 참조 매크로블록(coMB)의 부호화에 이용한 2개의 모션벡터중 하나를 선택하여 예측벡터를 생성해도 좋다. 도 4 및 도 5를 이용하여 이러한 예측벡터의 생성법에 대해 설명한다.
<동일한 참조프레임 인덱스에 대응하는 참조벡터중 하나를 모션벡터의 예측에 이용하는 예>
도 4에 있어서, 참조프레임 인덱스(ref_idx_b)에 대응하는 참조벡터 RMV(ref_idx_b)가 존재하면, 즉 모션벡터 RMV(ref_idx_b)가 참조프레임(rb0)의 부호화에 이용되면, 벡터 RMV(ref_idx_b)가 참조모션벡터로서 선택된다. 이 참조모션벡터를 스케일링하여 이하의 예측벡터를 생성한다.
MV(ref_idx_f)=S1*RMV(ref_idx_b), S1=FD1/RFD1
MV(ref_idx_b)=S2*RMV(ref_idx_b), S2=FD2/RFD2
상기의 경우를 제외하고, 즉 참조벡터 RMV(ref_idx_b)는 존재하지 않지만 참조프레임 인덱스(ref_idx_f)에 대응하는 참조벡터 RMV(ref_idx_f)가 존재하면, 더욱 상세하게는 참조프레임(rb0)의 부호화시에 모션벡터 RMV(ref_idx_b)는 이용되지 않지만 모션벡터 RMV(ref_idx_f)가 이용되면, 참조프레임 인덱스(ref_idx_f)에 대응하는 참조벡터 RMV(ref_idx_f)가 참조모션벡터로서 선택된다. 이 참조모션벡터를 스케일링하여 이하와 같이 예측벡터를 생성해도 좋다.
MV(ref_idx_f)=S1*RMV(ref_idx_f), S1=FD1/RFD1
MV(ref_idx_b)=S2*RMV(ref_idx_f), S2=FD2/RFD2
<동일한 참조프레임 인덱스에 대응하는 참조벡터중 부호화 대상 프레임과의 시간거리가 가까운 참조벡터를 모션벡터의 예측에 이용하는 예>
도 5에 나타낸 바와 같이, 프레임간 거리에 있어서 부호화된 프레임으로부터 시간적으로 가까운 2개의 참조프레임중 하나의 참조프레임의 예측에 이용된 참조벡터를 스케일링하여 예측벡터를 생성한다. 도 5의 예에서는, 참조 매크로블록(coMB)의 부호화시에 2매의 참조프레임(rf1, rf0)이 예측에 이용된다. 그러나, 참조프레임(rf0)이 프레임간 거리에 있어서 참조프레임(rf1)보다 참조 매크로블록(coMB)이 있는 참조프레임(rb0)에 더 가깝기 때문에, 참조벡터 RMV(ref_idx_b)를 스케일링하여 예측벡터를 생성한다.
도 5의 변형으로서, 인덱스값이 보다 작은 참조벡터를 예측에 이용해도 좋다. 표 2의 참조프레임 인덱스를 이용한 경우, 참조 매크로블록(coMB)에 있어서는 인덱스값은 ref_idx_b=0, ref_idx_b=2이다. ref_idx_b가 값이 작기 때문에, ref_idx_b에 대응하는 참조벡터 RMV(ref_idx_b)를 스케일링하여 예측벡터를 생성한다.
부호화 순서가 부호화 대상 프레임에 가까운 참조프레임의 참조벡터를 예측에 이용해도 좋다. 프레임의 부호화 순서가 rf2, rf1, rf0, rb0, current라고 하면, 참조 매크로블록(coMB)의 부호화에 이용된 2매의 참조프레임(rf0, rf1)에 있어서, 프레임(rf0)이 coMB가 있는 참조프레임(rb0)에 가깝기 때문에, 참조프레임 (rb0)에 대응하는 참조벡터 RMV(ref_idx_b)를 예측에 이용한다.
<2개의 참조벡터의 평균치를 모션벡터의 예측에 이용하는 예>
도 6에 나타낸 바와 같이, 2개의 참조벡터의 평균치를 스케일링하여 예측벡터를 생성한다. 2개의 참조벡터의 평균치(평균참조벡터) 및 부호화된 프레임(rb0)과 2매의 참조프레임과의 시간거리의 평균치(평균프레임간 거리)를 이하와 같이 계산한다.
평균참조벡터: MRMV=(RMV(ref_idx_f)+RMV(ref_idx_b))/2
평균프레임간 거리: MRFD=(RFD1+RFD2/2)
이와 같이 계산된 평균참조벡터(MRMV)를 예측벡터로서 이용해도 좋다. 혹은, 이들 평균참조벡터 및 평균프레임간 거리로부터, 예측벡터를 이하의 계산에 의해 생성한다.
MV(ref_idx_f)=S1*MRMV, S1=FD1/MRFD
MV(ref_idx_b)=S2*MRMV, S2=FD2/MRFD
변형으로서, 이하와 같이 계산을 간략화해도 동일한 예측벡터를 생성할 수 있다.
MRMV=RMV(ref_idx_f)+RMV(ref_idx_b)
MRFD=MFD1+MFD2
MV(ref_idx_f)=S1*MRMV, S1=FD1/MRFD
MV(ref_idx_b)=S2*MRMV, S2=FD2/MRFD
이하와 같이 2개의 참조벡터의 가중 가산치를 예측벡터로 해도 좋다.
가중가산 참조벡터: WSRMV=w1 ×RMV(ref_idx_f) + w2 ×MV(ref_idx_b)
가중가산 프레임간 거리: WSRFD=w1 ×RFD1 + w2 ×RFD2
여기에서, w1과 w2는 가중팩터(weighting factor)이다. 이것들은 미리 정해진 팩터로 해도 좋고, 또한 사이드 정보로서 부호화해도 좋다. 계산된 가중가산 참조벡터(WSRMV)를 그대로 예측벡터로서 이용해도 좋다.
이하와 같이 예측벡터를 계산해도 좋다.
MV(ref_idx_f)=S1*WSRMV, S1=FD1/WSRFD
MV(ref_idx_b)=S2*WSRMV, S2=FD2/WSRFD
혹은, 이하와 같이 부호화 대상 프레임과 참조프레임의 프레임간 거리를 기초로 가중가산을 행한다.
계산된 벡터(WSRMV)를 예측벡터로서 이용해도 좋다.
WSRMV=w1 ×RMV(ref_idx_f) + w2 ×MV(ref_idx_b)
w1=FD1/(FD1+FD2), w2=FD1/(FD1+FD2)
<프레임간 거리 및 스케일링 팩터에 대해>
도 3∼도 6의 예에 있어서, 프레임간 거리(FD1-FD2, RFD1-RFD2)는 뒤에 설명되는 각 프레임의 시간적 위치나 프레임 출력순서(영상출력순서)로부터 계산해도 좋다. 프레임(rf2, rf1, rf0, current, rb1)이 TRf2, TRf1, TRf0, TRc, TRb1의 프레임 출력순서로 출력되면, 프레임간 거리는 FD1=TRc-TRf0, FD2=TRf2, RFD1=TRb0-TRf1, RFD2=TRb0-TRf0로서 계산된다. 프레임 출력순서(영상출력순서)에 대해, 그것을 나타내는 정보(프레임 순서 또는 영상순서)를 명시적으로 부호화해도 좋다. 혹은, 프레임간 거리를 명시적으로 부호화해도 좋다.
더욱이, 스케일링 팩터(S1, S2)를 직접 부호화해도 좋다. 스케일링 팩터(S1 , S2)와 부호화된 프레임에서 이용된 스케일링 팩터의 차분을 부호화해도 좋다.
이들 프레임의 프레임 출력순서(TRf2, TRf1, TRf0, TRc, TRb1), 프레임간 거리(FD1, FD2, RFD1, RFD2) 및 스케일링 팩터(S1, S2) 등의 파라미터를 부호화할 때, 이 파라미터를 매크로블록마다 부호화하는 것이 아니라, 영상마다, 프레임마다, 필드마다, 영상그룹마다, 혹은 슬라이스마다 등과 같이 소정의 단위마다 부호화해도 좋다. 비디오 부호화의 최초로 나타내어지는 부호화 모드 등을 나타내는 정보와 함께 부호화해도 좋다. 전송레이어나 파일포맷 등 다른 수단에 의해 전송되는 각 프레임의 시간정보를 기초로 프레임의 시간위치와 프레임간 거리를 구하여 스케일링에 이용해도 좋다.
도 3∼도 6의 예와 같이, 많은 참조프레임의 후보중에서 부호화에 이용하는 참조프레임을 선택하는 경우에는, 모든 참조프레임의 후보에 대해 동일한 프레임간 거리 혹은 동일한 스케일링 팩터를 이용해도 좋다. 참조프레임을 개별적으로 부호화해도 좋다. 또, 참조프레임의 후보중에서 선택된 몇개의 후보를 부호화해도 좋다. 이 경우, 영상마다, 프레임마다, 필드마다, 영상그룹마다, 혹은 슬라이스마다 등과 같이 소정의 단위마다 부호화를 행함으로써 부호화 비트수를 삭감할 수 있다.
<쌍방향 예측의 모션벡터>
도 3∼도 6에서, 참조 매크로블록(coMB) 및 현 매크로블록(curMB)의 양자에 대해 이용되는 2매의 참조프레임은 과거의 프레임(프레임 순서가 작은 프레임)이다. 그러나, 본 발명은 미래의 참조프레임(프레임 순서가 큰 프레임)을 이용하는 예측이나, 과거와 미래의 참조프레임을 이용하는 예측(쌍방향 예측)에도 대응가능하다. 이 경우, 프레임간 거리가 부(負)의 값과 정(正)의 값 모두를 취할 수 있으면, 참조프레임이 과거(더 빠른 프레임 출력순서)인지 미래(더 늦은 프레임 출력순서)인지, 또는 2매의 참조프레임이 같은 방향에 있는지 반대 방향에 있는지(프레임 출력순서에서)는 부의 값과 정의 값의 +부호나 -부호로부터 결정될 수 있다.
(a) 프레임 순서(TRf2, TRf1, TRf0, TRc, TRb1)나 프레임간 거리(FD1, FD2, RFD1, RFD2)를 부호화하여, 프레임간 거리의 정부(正負)에 의해 참조프레임이 과거ㆍ미래 어느 쪽에 있는지를 구별한다.
(b) 스케일링 팩터(S1, S2)를 부호화하여, 부호화된 팩터의 정부에 의해 참조프레임이 과거ㆍ미래 어느 쪽에 있는지를 구별한다.
도 10은 상기 동작을 설명하기 위한 도면이다. 도 10의 예에서는, 부호화 대상 매크로블록(curMB)은 쌍방향 예측이 행해지고, 참조 매크로블록(coMB)은 과거 2매의 참조프레임을 이용하여 예측된다. 매크로블록(curM)에 대해, 참조프레임 인덱스(ref_idx_f)에 대응하는 참조프레임(rb0)은 현 프레임(current)보다 미래에 있다. 도 3과 마찬가지로, 마찬가지의 참조프레임에 대응하는 참조벡터를 스케일링하기 위한 처리를 설명한다.
상기 (a)의 경우: 참조프레임 인덱스(ref_idx_f)에 대응하는 참조프레임 (rb0)의 프레임 순서(TRb0)는 부호화 대상 프레임(current)의 프레임 순서보다 더 큰 값을 나타내고, 프레임간 거리(FD1=TRc-TRb0)는 부의 값으로 된다. 따라서, 참조프레임 인덱스(ref_idx_f)에 대응하는 참조프레임이 현 프레임보다 미래에 있고, 즉 참조프레임이 프레임 순서가 프레임 출력에서 후방에 있거나 더 늦은 프레임임을 알 수 있다. 한편, 참조프레임 인덱스(ref_idx_b)에 대응하는 참조프레임(rf 2)의 프레임 순서(TRf2)는 부호화 대상 프레임(current)의 프레임 순서보다 더 작은 값을 나타낸다. 프레임간 거리(FD2=TRc-TRf2)는 정의 값을 나타낸다. 따라서, 참조프레임 인덱스(ref_idx_b)에 대응하는 참조프레임(rf2)이 현 프레임보다 더 과거에 있고, 즉 프레임 순서가 프레임 출력순서에서 전방에 있거나 더 빠름을 알 수 있다. 게다가, 2개의 프레임간 거리의 부호를 서로 비교함으로써, 2매의 대응하는 참조프레임이 프레임 출력순서에서 같은 방향에 있는지 반대 방향에 있는지를 결정할 수 있다. 도 10의 예에서는, FD1이 부의 값을 나타내고, FD2가 정의 부호와 다른 부호를 나타내기 때문에, 참조프레임 인덱스(ref_idx_f)와 참조프레임 인덱스 (ref_idx_b)에 대응하는 2매의 참조프레임은 반대 방향에 있음을 알 수 있다. 마찬가지로, 참조모션벡터에 대한 방향을 결정할 수 있다. 예컨대, coMB가 있는 프레임(rb0)과 RMV(ref_idx_f)로 나타내어지는 프레임(rf0)간의 프레임간 거리 (RFD1=TRb0-TRf1)는 정의 값이다. 한편, MV(ref_idx_f)에 대응하는 프레임간 거리 (FD1)는 부의 값이기 때문에, 모션벡터 MV(ref_idx_f)=FD1/RFD1*RMV(ref_idx_f)는 참조벡터 RMV(ref_idx_f)와 반대의 방향을 나타내게 된다. 그 결과, 미래의 참조프레임으로부터의 예측에 대응하는 예측벡터는 도 10에 나타낸 바와 같이 얻어진다.
상기 (b)의 경우: 스케일링 팩터(S1)를 부의 값으로 하면, 모션벡터 MV(ref_ idx_f)=S1*RMV(ref_idx_f)는 벡터 RMV(ref_idx_f)와 반대의 방향을 나타내게 된다. 즉, 미래의 참조프레임으로부터 예측된 예측벡터는 도 10에 나타낸 바와 같이 얻어진다.
<모션량 보상팩터를 스케일링에 이용하는 예>
상술한 예에서는, 예측벡터를 생성할 때의 참조벡터의 스케일링에, 프레임의 시간위치, 프레임 출력순서(영상출력순서)나 프레임간 거리(시간간격)를 이용하고 있다. 프레임간의 모션량에 관한 정보(모션보상 팩터)를 이용하여 참조벡터를 스케일링함으로써 예측벡터를 생성해도 좋다. 도 7∼도 9는 이러한 예를 설명하는 도면이다.
도 7에는 부호화 대상 프레임(current)과 참조프레임(rf, rb)의 물체위치를 실선원으로 나타내고 있다. 각 프레임 아래에는 그 프레임의 시각(디스플레이 시각)을 나타내고 있다. 실선원으로 나타내어지는 물체는 프레임내 좌측 위로부터 우측 아래로 움직이고 있다. 그 모션은 비등속(非等速) 운동, 즉 모션량이 시간에 비례하지 않는 것이라고 한다.
도 8은 도 7에 나타낸 프레임간의 시간간격에 기초하여 참조벡터를 스케일링하는 예를 나타낸 것이다. 도 8에 있어서, 부호 C, F, B는 각각 현 프레임(current), 참조프레임(rf), 참조프레임(rb)에서의 물체위치를 나타내고 있다. 부호화 대상 프레임의 모션벡터(MV)는 참조프레임(rb)을 부호화했을 때에 참조프레임(rf)으로부터의 예측에 이용한 참조벡터(RMV)를 상기 시간간격에 기초하여 스케일링함으로써 예측벡터로서 구해진다. 도 7의 예에서는 부호화 대상 프레임 (current)의 시각은 200msec, 참조프레임(rf, rb)의 시각은 각각 100msec 및 300msec이기 때문에, 모션벡터(MV)는 모션벡터(RMV)로부터 이하와 같이 계산된다:
MV=RMV*(300-100)/200=RMV/2
도 8에 있어서, 부호 R은 모션벡터를 시간간격에 기초하여 스케일링하여 구한 물체위치를 나타내고 있다. 도 7에 나타낸 바와 같이, 물체의 모션은 비등속 운동을 하고 있기 때문에, 모션보상 예측된 물체(R)는 위치가 실제 물체(C)로부터 벗어나고 있다. 따라서, 정확한 모션보상 예측을 행할 수 없다.
도 9는 프레임간의 모션량을 고려한 정보를 이용하여 모션벡터의 스케일링을 행한 예이다. 부호 C, F, B, R의 의미는 도 8과 같다. 참조프레임(rb)의 부호화시에 참조프레임(rf)으로부터의 예측에 이용한 참조벡터(RMV)를 참조벡터로서 스케일링함으로써, 부호화 대상 프레임(current)의 모션벡터(MV)가 예측벡터로서 얻어진다. 이 경우, 모션량에 따라 벡터를 스케일링함으로써 보다 정확한 예측벡터를 구할 수 있다.
프레임간의 모션량에 관계되는 정보는 직접 부호화해도 좋고, 또는 프레임마다 위치정보를 부호화해도 좋다. 더욱이, 각 프레임의 모션위치와 규칙적으로 정해진 기준의 모션위치간의 각 프레임의 차분을 부호화해도 좋다. 이하, 이들 처리를 설명한다.
(a) 프레임간의 모션량에 관계되는 정보를 직접 부호화한다:
부호화해야 할 프레임간의 모션량에 관계되는 정보는 이하와 같다.
MFcf: 프레임(rf)으로부터 프레임(current)으로의 모션량
MFbf: 프레임(rf)으로부터 프레임(rb)으로의 모션량
모션벡터(MV)는 참조벡터(RMV)로부터 이하의 계산에 따라 예측벡터로서 이용된다.
MV=RMV*MFcf/MFbf
혹은, 프레임의 시각을 기초로 모션량 정보를 결정해도 좋다. 이 경우, 스케일링에 의해 생성되는 벡터의 정밀도는 떨어진다. 그러나, 모션량을 계산할 필요가 없기 때문에 처리가 간략화된다. 프레임(rf, current, rb)의 시각을 각각 TRf, TRc, TRb로 하면, 이하와 같이 설정해도 좋다.
MFcf=a*(TRc-TRf), MFcf=a*(TRb-TRf)
여기에서, a는 상수이다. a=1로 하면, 이하와 같이 모션량 정보는 프레임 간격과 동일하게 된다.
MFcf=TRc-TRf, MFcf=TRb-TRf
프레임간 거리로부터 모션량 정보를 결정해도 좋다. 부호화 대상 프레임(cu rrent)과 프레임(rf)간의 시간간격을 FDcf, 프레임(b)과 프레임(f)간의 시간간격을 FDbf로 하면, 모션량 정보를 이하와 같이 계산한다:
MFcf=a*FDcf, MFcf=a*FDbf
프레임(rb)은 프레임(rf)을 이용하여 참조프레임으로서 이미 부호화되어 있기 때문에, 프레임(rf)으로부터 프레임(rb)으로의 모션량(MFbf)은 프레임(rb) 부호화시에 부호화된 값을 사용해도 좋다. 그 결과, 부호화 대상 프레임에서 모션량 (MFbf)을 부호화할 필요가 없게 되어 부호화 비트수가 삭감된다.
복수의 참조프레임(혹은, 그 후보)이 있는 경우에는, 그 각각 혹은 몇개의 선택된 참조프레임에 대응하는 프레임간의 모션량을 부호화해도 좋다.
(b) 프레임마다 모션위치정보를 부호화한다:
각 프레임에서 물체의 모션위치에 상당하는 정보(모션위치정보)를 부호화한다. 즉, 프레임(rf, rb, current)을 부호화할 때에 각각 모션위치정보(MTf, MTb, MTc)를 부호화한다. 모션벡터(MV)는 참조벡터로부터 이하의 식에 의해 예측벡터로서 계산된다:
MV=RMV*(MTf-MTc)/(MTf-MTb)
모션위치정보(MTf, MTb, MTc)는 각 프레임 부호화시에 참조프레임으로부터의 모션량을 계산하여 아래 식과 같이 설정된다:
MTc=MTf+MFcf
MTb=MTf+MFrb
MFcf: 프레임(rf)으로부터 프레임(current)으로의 모션량
MFbf: 프레임(rf)으로부터 프레임(rb)으로의 모션량.
부호화 대상 모션위치정보에 대해, 디스플레이 시각이 후방(미래)에 있는 프레임의 모션위치정보는 전방(과거)에 있는 프레임의 모션위치정보보다 작게 한다는 제약조건을 붙여도 좋다. 도 7의 예에서는, 프레임(rf, rb, current)의 디스플레이 시각의 위치관계로부터, 프레임(rf, rb, current)의 디스플레이 시각(TRf, TRb, TRc)에는 다음의 관계가 성립한다:
TRf〈 TRc〈 TRb
이 경우, 각 프레임의 모션위치정보에는 이하의 제약을 부과하게 된다.
MTf〈 MTc〈 MTb
이러한 조건을 붙임으로써 스케일링을 위한 모션정보뿐만 아니라, 모션위치정보간의 대소관계로부터 부호화 대상 프레임의 (디스플레이 시각의) 시간적 전후관계를 나타내는 것도 가능하게 된다. 혹은, 프레임의 시각을 기초로 모션위치정보를 결정해도 좋다. 이 경우, 모션량을 기초로 모션위치정보를 결정하는 경우에 비해 스케일링된 모션벡터의 정밀도는 떨어진다. 그러나, 모션량을 계산할 필요가 없기 때문에, 처리가 간략화된다. 프레임(rf, current, rb)의 시각을 각각 TRf, TRc, TRb로 하면, 이하와 같이 설정해도 좋다.
MTf=a*TRf
MTc=a*TRc
MTb=a*TRb
여기에서, a는 상수이다. 예컨대 a=1로 하면 이하와 같이 모션위치정보는 각 프레임의 시각과 동일하게 된다:
MTf=TRf, MTc=TRc, MTb=TRb
혹은, 각 프레임의 시각을 모션위치에 의해 보정한 정보를 이용해도 좋다.
(c) 규칙적으로 정해진 기준의 모션위치와의 차분을 부호화한다:
각 프레임의 모션위치는 프레임의 디스플레이 시각과의 상관이 강하다. 이 때문에, 디스플레이 시각으로부터 예측된 모션위치를 기준의 모션위치로서 이용해서 각 프레임의 모션위치와 기준의 모션위치의 차분을 부호화해도 좋다. 구체적으로는, 프레임(rf, rb, current)의 모션정보를 각각 MTf, MTb, MTc로 하고, 디스플레이 시각을 TRf, TRb, TRc로 하면, 이하의 차 정보(DMTf, DMTb, DMTc)를 부호화한다.
DMTf=MTf-r*TRf
DMTb=MTb-r*TRb
DMTc=MTc-r*TRc
여기에서, r은 미리 정해진 상수이다.
모션벡터(MV)는 참조벡터로부터 이하의 계산에 의해 예측벡터로서 생성된다.
MV=RMV*((DMTf+r*TRf)-(DMTc+r*TRc))/((DMTf+r*TRf)-(DMTb+r*TRb))
시간정보로서는, 전송로나 시스템 등의 수단에 의해 얻어진 시간정보나 미리 정해진 규칙에 따라 계산된 시간정보를 이용해도 좋다. 혹은, 프레임간의 모션량 정보를 디스플레이 시각의 시간간격으로부터 예측하고, 그 예측 차를 부호화해도 좋다.
<스케일링 금지모드>
상술한 바와 같이, 참조 매크로블록(coMB)의 모션벡터를 스케일링하여 얻은 모션벡터를 부호화 대상 매크로블록(curMB)의 모션벡터의 예측벡터로서 이용하면, 모션벡터의 부호화 비트수는 삭감된다. 그러나, 부호화된 프레임의 모션벡터를 기억해 둘 필요가 있어 메모리용량은 증가한다. 특히, 부호화된 매크로블록에 있어서, 쌍방향 모션보상이나 과거 혹은 미래의 복수의 모션벡터를 이용하여 모션보상을 행한 경우에는 복수의 모션벡터를 메모리에 기억해 둘 필요가 있다.
이 때문에, 부호화된 매크로블록에 있어서, 예컨대 2개 이상 등, 미리 정해진 수 이상의 모션벡터를 이용하는 부호화 모드가 선택되어 있는 경우에는 이러한 스케일링을 금지해도 좋다. 그 결과, 항상 스케일링하여 예측벡터를 생성하는 경우와 비교하여 부호화 효율은 저하한다. 그러나, 메모리용량의 증가를 방지할 수 있다.
[Ⅱ] 부호화 대상 프레임내의 부호화 대상 블록 주위의 부호화된 매크로블록의 모션벡터를 참조벡터로서 이용하는 모션벡터의 예측부호화 방법에 대해:
상술한 [Ⅰ]의 예측부호화 방법에서는 부호화된 프레임의 모션벡터를 이용하여 모션벡터를 예측부호화하고 있다. 그러나, 부호화 대상 프레임내에서 이미 부호화된 매크로블록에서 이용된 모션벡터를 참조벡터로서 이용하여 예측벡터를 생성해도 좋다.
이 경우에 있어서, 참조벡터와 예측벡터의 차분벡터를 부호화함으로써, 모션벡터의 부호화 비트수를 삭감해도 좋다. 예측벡터를 그대로 이용함으로써 모션벡터의 부호화를 생략하여 모션벡터의 부호화 비트수를 더 삭감하도록 해도 좋다. 상술한 바와 같이, 차분벡터의 부호화된 데이터(제4데이터)를 도 1에 나타낸 비디오 부호화 장치에 의해 출력되는 부호화 데이터(106)에 포함시키는 경우에는, 도 2에 나타낸 비디오 복호화 장치에 있어서 입력되는 부호화 데이터(200)에 포함되는 사이드 데이터(202)의 일부로서 차분벡터 데이터를 가변길이 복호화기(214)에 의해 복호화하고, 차분벡터를 예측벡터에 가산함으로써 얻은 모션벡터를 이용하여 모션보상 예측을 행한다.
이하, 도 11∼도 13을 이용하여 제6실시형태의 모션보상 예측 부호화 방법을 설명한다.
도 11은 부호화 대상 블록 주위의 부호화된 매크로블록의 모션벡터를 참조벡터로서 이용하여 부호화 대상 블록의 모션벡터를 예측하는 제1예를 설명하는 도면이다. 도 11에 있어서, current는 부호화 대상 프레임, rf0, rf1, rf2는 참조프레임, E는 부호화 대상 매크로블록을 나타낸다.
MV(ref_idx_f) 및 MV(ref_idx_b)는 각각 참조프레임 인덱스(ref_idx_f, ref_idx_b)로 지시되는 참조프레임(rf0, rf1)으로부터의 부호화 대상 매크로블록 (E)의 모션벡터이고, 즉 예측부호화되어야 할 부호화 대상 벡터이다. A, B, C, D는 부호화 대상 매크로블록(E) 주위에 있는 부호화된 매크로블록이다. 도 12는 매크로블록(A, B, C, D, E)의 공간적 위치관계를 나타낸 것이다.
부호화 대상 매크로블록(E) 주위의 부호화된 매크로블록(A, B, C, D)이 모션보상예측을 이용하여 부호화된 경우에는, 이들 각 매크로블록(A, B, C, D)의 모션벡터를 참조벡터로서 이용해 부호화 대상 매크로블록(E)의 모션벡터를 예측하여 예측벡터를 생성한다. 예측벡터로는 부호화된 매크로블록(A, B, C, D)의 모션벡터(참조벡터)의 평균치를 이용해도 좋고, 이들 벡터의 중앙값을 이용해도 좋다. 부호화 대상 매크로블록(E)에 대한 2개의 모션벡터 MV(ref_idx_f) 및 MV(ref_idx_b)는 부호화된 매크로블록(A, B, C, D)의 같은 참조프레임 인덱스(ref_idx_f, ref_idx _b)에 대응하는 참조벡터(참조프레임 인덱스 ref_idx_f 및 ref_idx_b로 지시되는 참조프레임으로부터의 모션벡터)를 이용하여 예측된다.
도 11의 예에서는, 매크로블록(A)은 1개의 참조벡터 RAMV(ref_idx_f)를 이용하여 부호화되고, 매크로블록(C)은 2개의 참조벡터 RCMV(ref_idx_f) 및 RCMV(ref_ idx_b)를 이용하여 부호화되며, 매크로블록(B, D)은 모션벡터를 이용하지 않는 부호화 모드(예컨대, 프레임내 부호화 모드)에 의해 부호화되고 있다. 참조프레임 인덱스(ref_idx_f) 벡터에 대응하는 참조벡터는 RAMV(ref_idx_f) 및 RCMV(ref_ idx_f)이기 때문에, 이들 2개의 참조벡터를 이용하여 모션벡터 MV(ref_idx_f)를 예측한다. 한편, 참조프레임 인덱스(ref_idx_b)에 대응하는 참조벡터는 RCMV(ref_ idx_b)뿐이기 때문에, 이 참조벡터를 이용하여 모션벡터 MV(ref_idx_b)를 예측한다.
도 13은 부호화 대상 매크로블록 주위의 부호화된 매크로블록의 모션벡터를 이용하여 부호화 대상 매크로블록의 모션벡터의 예측을 행하는 제2예를 나타내고 있다. 이 예에서는, 과거의 프레임뿐만 아니라, 미래의 프레임도 이용하는 쌍방향 모션보상이 이용되고 있다. 도면중, MV(ref_idx_b) 및 RCMV(ref_idx_b)는 미래의 프레임(rf0)으로부터의 모션벡터를 나타낸다.
이와 같이 쌍방향 모션보상을 이용하는 경우에도, 참조프레임이 디스플레이 시간적으로 과거인지 미래인지에 관계없이 도 11과 마찬가지로 참조프레임 인덱스와 모션벡터간의 관계를 규정함으로써 모션벡터의 예측을 행한다. 즉, 모션벡터 MV(ref_idx_f)는 주위의 부호화된 매크로블록의 참조프레임 인덱스(ref_idx_f)에 대응하는 모션벡터(RAMV(ref_idx_f) 및 RCMV(ref_idx_f))에 의해 예측된다. 모션벡터 MV(ref_idx_b)는 주위의 매크로블록의 참조프레임 인덱스(ref_idx_b)에 대응하는 모션벡터(RCMV(ref_idx_b))에 의해 예측된다.
이와 같이, 참조프레임이 디스플레이 시간적으로 과거인지 미래인지에 관계없이 참조프레임을 참조프레임 인덱스에 따라 예측에 이용하는 모션벡터를 결정하는 것이 종래의 MPEG-1/2/4 등의 비디오 부호화 방식과 다르다. 이러한 모션벡터 예측을 행하면, 참조프레임이 부호화 대상프레임보다 과거인지 미래인지를 판정할 필요가 없어 처리가 간략화된다. 각 프레임의 시간적 위치관계를 나타내는 정보가 부호화되지 않아, 전송레이어나 파일 포맷 등의 다른 수단으로부터도 이 정보를 얻는 것이 곤란한 경우에도, 참조프레임이 과거인지 미래인지를 판정하지 않고 모션벡터를 예측하는 것이 가능하다.
도 11 및 도 13의 예에 있어서, 부호화 대상 매크로블록 주위의 부호화된 매크로블록이 프레임내 부호화되어 있거나, 공간적으로 프레임 밖에 위치한다는 이유로 대응하는 참조벡터가 존재하지 않으면, 예컨대 부호화된 매크로블록을 제로벡터로서 이용하여 예측벡터를 생성해도 좋고, 부호화된 매크로블록에 인접하는 다른 매크로블록의 모션벡터를 이용해도 좋다.
도 11 및 도 13의 예에 있어서, 인접하는 복수의 매크로블록의 참조벡터중에서 참조프레임 인덱스로 나타내어지는 값이나 대응하는 참조프레임에 따라 선택된 참조벡터를 이용하여 예측 모션벡터를 생성해도 좋다. 예컨대, 예측부호화하는 모션벡터와 같은 참조프레임을 모션보상 예측에 이용하고 있는 참조벡터만을 모션벡터의 예측에 이용해도 좋다. 혹은, 대응하는 참조프레임 인덱스(ref_idx_f, ref_ idx_b)의 값이 같은 참조벡터만을 모션벡터의 예측에 이용해도 좋다. 혹은, 참조모션벡터에 대응하는 참조프레임 인덱스가 어떤 특정의 값(예컨대, 인덱스 값=0 등)을 나타내는 경우에는 참조프레임 인덱스를 예측에 이용해도 좋다. 반대로, 참조프레임 인덱스가 어떤 특정의 값을 나타내지 않는 경우에는 참조프레임 인덱스를 예측에 이용할 필요가 없다. 혹은, 참조모션벡터에 대응하는 참조프레임이 직전에 부호화한 프레임, 시간적으로 미래의 프레임, 1매전의 프레임 등의 특정한 프레임인 경우에는, 참조프레임을 예측에 이용하거나 혹은 예측에 이용하지 않아도 좋다.
도 13을 이용하여 이 예를 설명한다. 부호화 대상 모션벡터 및 한쪽의 참조벡터와 다른쪽의 참조프레임과의 대응관계를 표 3에 나타낸다.
모션벡터/참조벡터 참조프레임
MV(ref_idx_f) rf0
RAMV(ref_idx_f) rf1
RCMV(ref_idx_f) rf0
MV(ref_idx_b) rb0
RCMV(ref_idx_b) rb0
표 3에 의하면, 모션벡터 MV(ref_idx_f)와 같은 참조프레임 인덱스(ref_ idx_f)가 이용되고, 같은 참조프레임(rf0)을 이용하는 참조벡터는 RCMV(ref_ idx_f)이기 때문에, 모션벡터 MV(ref_idx_f)는 RCMV(ref_idx_f)를 이용하여 예측부호화된다. 또, 모션벡터 MV(ref_idx_b)와 같은 참조프레임 인덱스(ref_idx_b)가 이용되고, 같은 참조프레임(rb0)을 이용하는 참조벡터는 RCMV(ref_idx_b)이기 때문에, 모션벡터 MV(ref_idx_b)는 RCMV(ref_idx_b)를 이용하여 예측부호화된다.
도 11 및 도 13의 예에 있어서, 부호화 대상 매크로블록 주위의 부호화된 매크로블록의 참조벡터를, 예컨대 참조프레임으로부터의 시간간격에 따라 스케일링하여 예측벡터로 이용해도 좋다. 도 11의 예에서는, 부호화 대상 매크로블록의 모션벡터 MV(ref_idx_f)는 1프레임전의 참조프레임(rf0)에 의해 예측된다. 반대로, 매크로블록(A)의 모션벡터 RAMV(ref_idx_f)는 3프레임전의 참조프레임(rf2)에 의해 예측된다. 매크로블록(C)의 모션벡터 RCMV(ref_idx_f)는 2프레임전의 참조프레임 (rf2)에 의해 예측된다.
이와 같이, 이용된 참조프레임이 다른 경우에는, 부호화 대상 프레임과 주위 매크로블록에 의해 모션벡터를 스케일링하는데 모션보상 예측이 효과적이다. 이 모션벡터의 스케일링시에는, 스케일링 팩터를 명시적으로 부호화해도 좋다. 참조프레임과의 시간간격을 나타내는 정보를 부호화하고, 이 정보를 기초로 스케일링 팩터를 계산해도 좋다. 혹은, 각 프레임의 시간위치를 나타내는 정보를 기초로 스케일링 팩터를 계산해도 좋다.
도 11을 이용하여 상기 처리를 이하에 설명한다.
(1) 스케일링 팩터를 부호화하는 경우:
RAMV(ref_idx_f) 및 RCMV(ref_idx_f)로부터의 스케일링 팩터(SAf, SCf)를 명시적으로 부호화한다.
참조벡터를 이하와 같이 스케일링한다:
RAMV(ref_idx_f)*SAf
RCMV(ref_idx_f)*SCf
이들 스케일링된 모션벡터를 기초로 예측벡터를 계산한다.
(2) 참조프레임과의 시간간격을 부호화하는 경우:
MV(ref_idx_f), RAMV(ref_idx_f) 및 RCMV(ref_idx_f)에 대응하는 참조프레임 (rf0, rf2, rf0)과 부호화 대상 프레임(current)간의 프레임간 거리(FDf0, FDf2, FDf2)를 부호화한다.
참조벡터를 이하와 같이 프레임간 거리에 따라 스케일링한다:
RAMV(ref_idx_f)*FDf2/FDf0
RCMV(ref_idx_f)*FDf1/FDf0
이들 스케일링된 모션벡터를 기초로 예측벡터를 계산한다.
(3) 각 프레임의 시간위치로부터 스케일링 팩터와 프레임 출력순서를 나타내는 값을 이용하는 경우:
프레임(current, rf0, rf1, rf2)의 시간위치를 각각 TRc, TRf0, TRf1, TRf2로 설정하거나, 그 프레임 출력순서를 나타내는 값을 TRc, TRf0, TRf1, TRf2로 설정한다.
참조벡터를 시간위치로부터 계산되는 프레임간 거리에 따라 스케일링한다:
RAMV(ref_idx_f)*(TRc-TRf2)/(TRc-TRf0)
RCMV(ref_idx_f)*(TRc-TRf1)/(TRc-TRf0)
이들 스케일링된 모션벡터를 기초로 예측벡터를 계산한다.
상기 처리에 있어서, 스케일링 팩터(SAf, SCf), 프레임간 거리(FDf0, FDf2, FDf2) 및 시간위치(TRc, TRf0, TRf1, TRf2)에 대한 파라미터는, 각 매크로블록마다 부호화해도 좋다. 그러나, 프레임마다 또는 슬라이스마다 등과 같이 정리된 부호화 단위마다 파라미터를 부호화함으로써 보다 정보량을 삭감하도록 해도 좋다.
상기 실시형태의 비디오 부호화에 있어서, 비디오의 복수의 부호화된 프레임은 메모리에 저장되고 있다. 부호화 대상 프레임은 적어도 하나의 부호화된 영역과 적어도 하나의 부호화 대상 영역을 포함하는 복수의 영역으로 분할된다. 부호화 대상 프레임의 부호화 대상 영역의 예측벡터는 복수의 모션벡터를 복수의 참조벡터로서 이용하여 생성된다. 모션벡터는, 부호화 대상 프레임의 부호화 대상 영역 주위의 부호화된 영역의 원래의 영역을 부호화할 때 모션보상 예측을 위한 부호화된 프레임중에서 선택된 적어도 하나의 참조프레임에 관해 생성된다. 부호화 대상 프레임은 부호화된 비디오 데이터를 생성하기 위해 부호화된다.
상기 실시형태의 비디오 부호화 장치에 있어서, 메모리 세트에는 비디오의 복수의 부호화된 프레임과, 적어도 하나의 부호화된 영역과 적어도 하나의 부호화 대상 영역을 포함하는 복수의 영역으로 분할되어 있는 부호화 대상 프레임이 저장된다. 모션보상 예측기는 복수의 모션벡터를 복수의 참조벡터로서 이용하여 부호화 대상 영역의 예측벡터를 생성한다. 모션벡터는, 부호화 대상 프레임의 부호화 대상 영역 주위의 부호화된 영역의 원래의 영역을 부호화할 때 모션보상 예측을 위한 부호화된 프레임중에서 선택된 적어도 하나의 참조프레임에 관해 생성된다. 부호화기는 부호화된 비디오 데이터를 생성하기 위해 부호화 대상 프레임을 부호화한다.
상기 실시형태의 비디오 복호화에 있어서, 부호화된 비디오 데이터는 부호화시에 복수의 모션벡터를 복수의 참조벡터로서 이용하여 생성된 부호화된 프레임과 예측벡터를 포함한다. 모션벡터는, 부호화 대상 프레임의 부호화 대상 영역 주위의 부호화된 영역의 원래의 영역을 부호화할 때, 예측벡터를 추출하기 위해 부호화된 비디오 데이터를 복호화할 때 모션보상 예측을 위한 부호화된 프레임중에서 선택된 적어도 하나의 참조프레임에 관해 생성된다. 모션벡터는 예측벡터로부터 생성된다. 부호화된 프레임은 비디오를 재생하기 위해 생성된 모션벡터를 이용하는 모션보상 예측에 의해 복호화된다.
상기 실시형태의 비디오 복호화 장치에 있어서, 비디오 복호화 장치는 부호화시에 복수의 모션벡터를 복수의 참조벡터로서 이용하여 생성된 부호화된 프레임과 예측벡터를 포함하는 부호화된 비디오 데이터를 수신한다. 모션벡터는, 부호화 대상 프레임의 부호화 대상 영역 주위의 부호화된 영역의 원래의 영역을 부호화할 때 모션보상 예측을 위한 부호화된 프레임중에서 선택된 적어도 하나의 참조프레임에 관해 생성된다. 복호화기는 예측벡터를 추출하기 위해 부호화된 비디오 데이터를 복호화한다. 모션보상 예측기는 복호화된 예측벡터로부터 모션벡터를 생성한다. 복호화기는 비디오를 재생하기 위해 생성된 모션벡터를 이용하는 모션보상 예측에 의해 부호화된 프레임을 복호화한다.
상기 실시형태에 있어서, 2개의 참조프레임 인덱스는 ref_idx_f와 ref_idx_b로 나타내어진다. 그러나, 그것들을 각각 ref_idx_10과 ref_idx_11 또는 refIdxL0와 refIdxL1로 나타내어도 좋다. 혹은, ref_idx_f를 ref_idx_11과 refIdxL1로 나타내거나 ref_idx_b를 ref_idx_10과 refIdxL0로 나타내어도 좋다. 게다가, 2개의 모션벡터가 MV(ref_idx_f)와 MV(ref_idx_b)로 나타내어지더라도, 그것들은 각각 mvL0와 mvL1로 나타내어도 좋다. 마찬가지로, 도 11의 예에서의 참조모션 벡터(RAMV, RCMV)는 각각 mvLXA와 mvLXC로 나타내어도 좋다. 참조모션 벡터가 2개의 참조프레임 인덱스(ref_idx_10, ref_idx_11)중 어느 하나에 대응하는 리스트 인덱스(LX)를 L0와 L1으로 묘사함으로써 나타내어진다.
상술한 바와 같이 본 발명에 따르면, 예컨대 전방으로부터의 모션보상 예측이나 복수의 후방 프레임 또는 복수의 전방 프레임으로부터의 모션보상을 행하는 쌍방향 예측 등 복수의 모션벡터가 필요한 모션보상에 있어서는, 모션벡터를 직접 부호화하지 않고, 이미 부호화된 모션벡터를 이용하여 예측부호화한다. 그 결과, 모션벡터의 전송에 필요한 부호화 비트수를 삭감하여 보다 적은 부호화 비트수로 비디오 신호의 복호화를 행할 수 있다.
또한, 본 발명은 여러 가지의 특정한 실시예와 관련하여 설명했지만, 이에 한정되지 않고, 발명의 요지를 이탈하지 않는 범위내에서 여러 가지로 변형하여 실시할 수 있음은 물론이다.
이상 설명한 바와 같이 본 발명에 의하면, 복수의 참조프레임으로부터 모션보상 예측을 행하는데 필요한 모션벡터의 부호화 비트수를 저감시킬 수 있는 비디오 복호화 방법 및 비디오 복호화 장치를 제공할 수 있다.

Claims (10)

  1. 부호화시에 복수의 참조 모션벡터로부터 선택된 하나의 참조벡터를 스케일링 팩터에 의해 스케일링함으로써 생성된 부호화된 프레임과 예측벡터를 포함하는 부호화된 비디오 데이터를 수신하는 단계와,
    상기 예측벡터를 추출하기 위해 상기 부호화된 비디오 데이터를 복호화하는 단계,
    복호화된 상기 예측벡터로부터 모션벡터를 생성하는 단계 및,
    비디오를 재생하기 위해 상기 생성된 모션벡터를 이용하여 모션보상 예측에 의해 상기 부호화된 프레임을 복호화하는 단계를 구비하여 이루어지되,
    상기 참조 모션벡터가, 상기 부호화 대상 영역과 공간적으로 같은 위치에 있는 참조프레임 중 하나의 참조영역의 원래의 영역을 부호화할 때, 모션보상 예측을 위해 상기 부호화된 프레임으로부터 선택된 몇개의 참조프레임에 관해 생성되도록 된 것을 특징으로 하는 비디오 복호화 방법.
  2. 제1항에 있어서, 상기 예측벡터가, 상기 부호화 대상 프레임으로부터 상기 참조프레임까지의 거리와 상기 참조영역의 참조프레임으로부터 상기 참조프레임까지의 거리에 의해 정의되는 스케일링 팩터에 의해 상기 선택된 하나의 모션벡터를 스케일링함으로써 생성되는 것을 특징으로 하는 비디오 복호화 방법.
  3. 제1항 또는 제2항에 있어서, 상기 부호화된 프레임으로부터 선택된 참조프레임이 적어도 하나의 미래 프레임과 적어도 하나의 과거 프레임을 포함하는 것을 특징으로 하는 비디오 복호화 방법.
  4. 제1항 또는 제2항에 있어서, 상기 부호화된 비디오 데이터를 복호화하는 단계가 상기 부호화된 비디오 데이터로부터 적어도 2매의 참조프레임의 조합을 나타내는 참조프레임 인덱스를 추출하는 단계를 포함하고, 상기 부호화된 프레임을 복호화하는 단계가 상기 예측벡터와 상기 참조프레임 인덱스에 대응하는 상기 참조프레임을 이용하여 상기 부호화된 프레임을 복호화하는 단계를 포함하는 것을 특징으로 하는 비디오 복호화 방법.
  5. 제1항에 있어서, 상기 예측벡터가 상기 참조벡터에 대응하는 상기 참조프레임과 상기 부호화 대상 프레임간의 시간간격에 따라 상기 부호화된 영역의 상기 선택된 하나의 참조벡터를 스케일링함으로써 생성되는 것을 특징으로 하는 비디오 복호화 방법.
  6. 부호화시에 복수의 참조 모션벡터로부터 선택된 하나의 참조벡터를 스케일링 팩터에 의해 스케일링함으로써 생성된 부호화된 프레임과 예측벡터를 포함하는 부호화된 비디오 데이터를 수신하는 수신수단과,
    상기 예측벡터를 추출하기 위해 상기 부호화된 비디오 데이터를 복호화하는 제1복호화수단,
    복호화된 상기 예측벡터로부터 상기 모션벡터를 생성하는 생성수단 및,
    비디오를 재생하기 위해 상기 생성된 모션벡터를 이용하여 모션보상 예측에 의해 상기 부호화된 프레임을 복호화하는 제2복호화수단을 갖추어 구성되되,
    상기 참조 모션벡터가, 상기 부호화 대상 영역과 공간적으로 같은 위치에 있는 참조프레임 중 하나의 참조프레임의 참조영역의 원래의 영역을 부호화할 때, 모션보상 예측을 위해 상기 부호화된 프레임으로부터 선택된 몇개의 참조프레임에 관해 생성되도록 된 것을 특징으로 하는 비디오 복호화 장치.
  7. 제6항에 있어서, 상기 예측벡터가, 상기 부호화 대상 프레임으로부터 상기 참조프레임까지의 거리와 상기 참조영역의 참조프레임으로부터 상기 참조프레임까지의 거리에 의해 정의되는 스케일링 팩터에 의해 상기 선택된 하나의 모션벡터를 스케일링함으로써 생성되는 것을 특징으로 하는 비디오 복호화 장치.
  8. 제6항 또는 제7항에 있어서, 상기 제2복호화수단이 적어도 하나의 미래 프레임과 적어도 하나의 과거 프레임을 생성하는 것을 특징으로 하는 비디오 복호화 장치.
  9. 제6항 또는 제7항에 있어서, 상기 제1복호화수단이 상기 부호화된 비디오 데이터로부터 적어도 2매의 참조프레임의 조합을 나타내는 참조프레임 인덱스를 추출 하는 추출수단을 포함하고, 상기 제2복호화수단이 상기 예측벡터와 상기 참조프레임 인덱스에 대응하는 상기 참조프레임을 이용하여 상기 부호화된 프레임을 복호화하는 복호화기를 포함하는 것을 특징으로 하는 비디오 복호화 장치.
  10. 제6항에 있어서, 상기 제2복호화수단이 상기 예측벡터를 생성하기 위해 상기 참조벡터에 대응하는 상기 참조프레임과 상기 부호화 대상 프레임간의 시간간격에 따라 상기 부호화된 영역의 상기 선택된 하나의 참조벡터를 스케일링하는 스케일링 수단을 포함하는 것을 특징으로 하는 비디오 복호화 장치.
KR1020050127856A 2002-06-17 2005-12-22 비디오 복호화 방법 및 장치 KR100658181B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2002-00175919 2002-06-17
JP2002175919A JP2004023458A (ja) 2002-06-17 2002-06-17 動画像符号化/復号化方法及び装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR20030038760A Division KR100604392B1 (ko) 2002-06-17 2003-06-16 비디오 부호화 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20060004627A true KR20060004627A (ko) 2006-01-12
KR100658181B1 KR100658181B1 (ko) 2006-12-15

Family

ID=29717449

Family Applications (2)

Application Number Title Priority Date Filing Date
KR20030038760A KR100604392B1 (ko) 2002-06-17 2003-06-16 비디오 부호화 방법 및 장치
KR1020050127856A KR100658181B1 (ko) 2002-06-17 2005-12-22 비디오 복호화 방법 및 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR20030038760A KR100604392B1 (ko) 2002-06-17 2003-06-16 비디오 부호화 방법 및 장치

Country Status (5)

Country Link
US (2) US20040008784A1 (ko)
EP (1) EP1377067A1 (ko)
JP (1) JP2004023458A (ko)
KR (2) KR100604392B1 (ko)
CN (2) CN100459658C (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180039599A (ko) * 2010-05-26 2018-04-18 항조우 힉비젼 디지털 테크놀로지 컴퍼니 리미티드 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치

Families Citing this family (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TR201802625T4 (tr) * 2001-11-06 2018-03-21 Panasonic Ip Corp America Hareketli resim kodlama usulü ve hareketli resim kod çözme usulü.
JP4015934B2 (ja) * 2002-04-18 2007-11-28 株式会社東芝 動画像符号化方法及び装置
US7474327B2 (en) 2002-02-12 2009-01-06 Given Imaging Ltd. System and method for displaying an image stream
JP2004023458A (ja) * 2002-06-17 2004-01-22 Toshiba Corp 動画像符号化/復号化方法及び装置
US7088776B2 (en) 2002-07-15 2006-08-08 Apple Computer, Inc. Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding
US6728315B2 (en) 2002-07-24 2004-04-27 Apple Computer, Inc. Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding with reduced requirements for division operations
EP2320659B1 (en) 2002-08-08 2014-10-01 Panasonic Intellectual Property Corporation of America Moving picture encoding method and decoding method
JP4373702B2 (ja) 2003-05-07 2009-11-25 株式会社エヌ・ティ・ティ・ドコモ 動画像符号化装置、動画像復号化装置、動画像符号化方法、動画像復号化方法、動画像符号化プログラム及び動画像復号化プログラム
WO2005022923A2 (en) * 2003-08-26 2005-03-10 Thomson Licensing S.A. Method and apparatus for minimizing number of reference pictures used for inter-coding
US7400681B2 (en) * 2003-11-28 2008-07-15 Scientific-Atlanta, Inc. Low-complexity motion vector prediction for video codec with two lists of reference pictures
JP5018085B2 (ja) * 2004-06-29 2012-09-05 ソニー株式会社 動き予測補償方法及び動き予測補償装置
US7675872B2 (en) 2004-11-30 2010-03-09 Broadcom Corporation System, method, and apparatus for displaying pictures
JP2006279573A (ja) * 2005-03-29 2006-10-12 Sanyo Electric Co Ltd 符号化装置と方法、ならびに復号装置と方法
ZA200805337B (en) 2006-01-09 2009-11-25 Thomson Licensing Method and apparatus for providing reduced resolution update mode for multiview video coding
FR2896118A1 (fr) * 2006-01-12 2007-07-13 France Telecom Codage et decodage adaptatifs
BRPI0600823B1 (pt) * 2006-03-14 2018-02-14 Whirlpool S.A. Sistema de programação de equipamentos eletrodomésticos e método de programação de equipamentos eletrodomésticos programáveis em linha de montagem
ES2439444T3 (es) 2006-10-30 2014-01-23 Nippon Telegraph And Telephone Corporation Método de codificación y método de descodificación de vídeo, aparatos para los mismos, programas para los mismos y medios de almacenamiento que almacenan los programas
KR101277713B1 (ko) * 2007-02-08 2013-06-24 삼성전자주식회사 비디오 부호화 장치 및 그 방법
KR101366242B1 (ko) * 2007-03-29 2014-02-20 삼성전자주식회사 움직임 모델 파라메터의 부호화, 복호화 방법 및 움직임모델 파라메터를 이용한 영상의 부호화, 복호화 방법 및장치
KR101712915B1 (ko) 2007-10-16 2017-03-07 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
CN101360243A (zh) * 2008-09-24 2009-02-04 腾讯科技(深圳)有限公司 基于反馈参考帧的视频通信系统及方法
JP5325638B2 (ja) 2008-11-26 2013-10-23 日立コンシューマエレクトロニクス株式会社 画像復号化方法
WO2010072946A2 (fr) * 2008-12-22 2010-07-01 France Telecom Prediction d'images par repartionnement d'une portion de zone causale de reference, codage et decodage utilisant une telle prediction
JP2009290889A (ja) * 2009-08-07 2009-12-10 Ntt Docomo Inc 動画像符号化装置、動画像復号化装置、動画像符号化方法、動画像復号化方法、動画像符号化プログラム及び動画像復号化プログラム
US9060176B2 (en) * 2009-10-01 2015-06-16 Ntt Docomo, Inc. Motion vector prediction in video coding
KR101611437B1 (ko) * 2009-10-28 2016-04-26 삼성전자주식회사 복수의 프레임을 참조하여 영상을 부호화, 복호화하는 방법 및 장치
KR20110068792A (ko) * 2009-12-16 2011-06-22 한국전자통신연구원 적응적 영상 부호화 장치 및 방법
WO2011077524A1 (ja) * 2009-12-24 2011-06-30 株式会社 東芝 動画像符号化装置及び動画像復号装置
KR101522850B1 (ko) * 2010-01-14 2015-05-26 삼성전자주식회사 움직임 벡터를 부호화, 복호화하는 방법 및 장치
BR112012019680A2 (pt) 2010-02-09 2016-05-03 Nippon Telegraph & Telephone método de codificação preditiva de vetor de movimento, método de decodificação preditiva de vetor de movimento, aparelho de codificação de imagem em movimento, aparelho de decodificação de imagem em movimento e programas destes.
TWI450592B (zh) 2010-02-09 2014-08-21 Nippon Telegraph & Telephone 動向量預測編碼方法、動向量預測解碼方法、動畫像編碼裝置、動畫像解碼裝置及其程式
US8682142B1 (en) * 2010-03-18 2014-03-25 Given Imaging Ltd. System and method for editing an image stream captured in-vivo
JP5368631B2 (ja) 2010-04-08 2013-12-18 株式会社東芝 画像符号化方法、装置、及びプログラム
KR101752418B1 (ko) 2010-04-09 2017-06-29 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
EP2559243B1 (en) 2010-04-13 2014-08-27 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. A video decoder and a video encoder using motion-compensated prediction
US9060673B2 (en) 2010-04-28 2015-06-23 Given Imaging Ltd. System and method for displaying portions of in-vivo images
WO2012008040A1 (ja) * 2010-07-15 2012-01-19 株式会社 東芝 画像符号化方法及び画像復号化方法
US9398308B2 (en) * 2010-07-28 2016-07-19 Qualcomm Incorporated Coding motion prediction direction in video coding
ES2773774T3 (es) 2010-10-06 2020-07-14 Ntt Docomo Inc Dispositivo, método y programa de codificación bipredictiva de imágenes, y dispositivo, método y programa de decodificación bipredictiva de imágenes
US9066102B2 (en) 2010-11-17 2015-06-23 Qualcomm Incorporated Reference picture list construction for generalized P/B frames in video coding
KR102080449B1 (ko) 2010-11-24 2020-02-21 벨로스 미디어 인터내셔널 리미티드 움직임 벡터 산출 방법, 화상 부호화 방법, 화상 복호 방법, 움직임 벡터 산출 장치 및 화상 부호화 복호 장치
WO2012073481A1 (ja) * 2010-11-29 2012-06-07 パナソニック株式会社 動画像符号化方法および動画像復号化方法
WO2012081225A1 (ja) * 2010-12-14 2012-06-21 パナソニック株式会社 画像符号化方法、及び画像復号方法
US10778969B2 (en) 2010-12-17 2020-09-15 Sun Patent Trust Image coding method and image decoding method
JPWO2012090495A1 (ja) * 2010-12-27 2014-06-05 パナソニック株式会社 画像符号化方法および画像復号方法
US9049455B2 (en) 2010-12-28 2015-06-02 Panasonic Intellectual Property Corporation Of America Image coding method of coding a current picture with prediction using one or both of a first reference picture list including a first current reference picture for a current block and a second reference picture list including a second current reference picture for the current block
WO2012090478A1 (ja) * 2010-12-28 2012-07-05 パナソニック株式会社 動画像符号化方法、および、動画像復号化方法
CN102595110B (zh) * 2011-01-10 2015-04-29 华为技术有限公司 视频编码方法、解码方法及终端
GB2487200A (en) 2011-01-12 2012-07-18 Canon Kk Video encoding and decoding with improved error resilience
KR101820997B1 (ko) 2011-01-12 2018-01-22 선 페이턴트 트러스트 동화상 부호화 방법 및 동화상 복호화 방법
WO2012098866A1 (ja) * 2011-01-18 2012-07-26 パナソニック株式会社 動画像符号化方法および動画像復号化方法
US9532050B2 (en) * 2011-01-25 2016-12-27 Sun Patent Trust Moving picture coding method and moving picture decoding method
TW201246943A (en) * 2011-01-26 2012-11-16 Panasonic Corp Video image encoding method, video image encoding device, video image decoding method, video image decoding device, and video image encoding and decoding device
WO2012114717A1 (ja) * 2011-02-22 2012-08-30 パナソニック株式会社 動画像符号化方法および動画像復号化方法
WO2012114694A1 (ja) * 2011-02-22 2012-08-30 パナソニック株式会社 動画像符号化方法、動画像符号化装置、動画像復号方法、および、動画像復号装置
JP5358746B2 (ja) * 2011-03-03 2013-12-04 パナソニック株式会社 動画像符号化方法、動画像符号化装置及びプログラム
US9288501B2 (en) * 2011-03-08 2016-03-15 Qualcomm Incorporated Motion vector predictors (MVPs) for bi-predictive inter mode in video coding
US9485517B2 (en) * 2011-04-20 2016-11-01 Qualcomm Incorporated Motion vector prediction with motion vectors from multiple views in multi-view video coding
JPWO2012172668A1 (ja) * 2011-06-15 2015-02-23 株式会社東芝 動画像符号化方法及び装置並びに動画復号化方法及び装置
US9131239B2 (en) * 2011-06-20 2015-09-08 Qualcomm Incorporated Unified merge mode and adaptive motion vector prediction mode candidates selection
GB2492337B (en) * 2011-06-27 2018-05-09 British Broadcasting Corp Video encoding and decoding using reference pictures
HUE056547T2 (hu) 2011-06-28 2022-02-28 Lg Electronics Inc Eljárás mozgásvektor-prediktor levezetésére
MX341889B (es) * 2011-06-30 2016-09-07 Sony Corp Dispositivo de procesamiento de imagenes y metodo de procesamiento de imagenes.
US10536701B2 (en) * 2011-07-01 2020-01-14 Qualcomm Incorporated Video coding using adaptive motion vector resolution
MX2014000159A (es) 2011-07-02 2014-02-19 Samsung Electronics Co Ltd Metodo y aparato para la codificacion de video, y metodo y aparato para la decodificacion de video acompañada por inter prediccion utilizando imagen co-localizada.
GB2493755B (en) 2011-08-17 2016-10-19 Canon Kk Method and device for encoding a sequence of images and method and device for decoding a sequence of images
MX365013B (es) * 2011-08-29 2019-05-20 Ibex Pt Holdings Co Ltd Metodo para generar un bloque de prediccion en modo de prediccion de vector de movimiento avanzada (amvp).
KR20130050149A (ko) 2011-11-07 2013-05-15 오수미 인터 모드에서의 예측 블록 생성 방법
BR112014012187A2 (pt) * 2011-11-21 2017-05-30 Motorola Mobility Llc determinação implícita e determinação implícita e explícita combinadas de imagem colocalizada para predição temporal
JP2012138947A (ja) * 2012-03-12 2012-07-19 Ntt Docomo Inc 動画像符号化装置、動画像復号化装置、動画像符号化方法、動画像復号化方法、動画像符号化プログラム及び動画像復号化プログラム
US9503720B2 (en) 2012-03-16 2016-11-22 Qualcomm Incorporated Motion vector coding and bi-prediction in HEVC and its extensions
US10200709B2 (en) 2012-03-16 2019-02-05 Qualcomm Incorporated High-level syntax extensions for high efficiency video coding
US9860555B2 (en) * 2012-05-22 2018-01-02 Lg Electronics Inc. Method and apparatus for processing video signal
RU2647674C1 (ru) * 2012-07-02 2018-03-16 Самсунг Электроникс Ко., Лтд. Способ и устройство для кодирования видео и способ и устройство для декодирования видео, определяющие список опорных изображений внешнего прогнозирования в зависимости от размера блока
JP5638581B2 (ja) * 2012-09-19 2014-12-10 株式会社Nttドコモ 動画像符号化装置、方法及びプログラム、並びに動画像復号装置、方法及びプログラム
JP5705948B2 (ja) * 2013-11-15 2015-04-22 株式会社Nttドコモ 動画像符号化装置、動画像復号化装置、動画像符号化方法、動画像復号化方法、動画像符号化プログラム及び動画像復号化プログラム
CN111193930B (zh) 2013-12-16 2021-11-30 浙江大学 一种前向双假设编码图像块的编解码方法和装置
US10462482B2 (en) * 2017-01-31 2019-10-29 Google Llc Multi-reference compound prediction of a block using a mask mode
CN107483949A (zh) * 2017-07-26 2017-12-15 千目聚云数码科技(上海)有限公司 增加svac svc实用性的方法及系统
JP6514307B2 (ja) * 2017-12-05 2019-05-15 株式会社東芝 動画像符号化装置及び方法
US10638130B1 (en) * 2019-04-09 2020-04-28 Google Llc Entropy-inspired directional filtering for image coding
US11164339B2 (en) * 2019-11-12 2021-11-02 Sony Interactive Entertainment Inc. Fast region of interest coding using multi-segment temporal resampling
CN112532984B (zh) * 2020-11-20 2022-04-15 北京浑元数字科技有限公司 自适应运动向量检测系统
US11722658B2 (en) * 2021-06-25 2023-08-08 Tencent America LLC Method and apparatus for video coding

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0730896A (ja) * 1993-06-25 1995-01-31 Matsushita Electric Ind Co Ltd 動きベクトル符号化及び復号化方法
DE69535800D1 (de) * 1994-06-08 2008-09-11 Matsushita Electric Ind Co Ltd Bildumsetzungsvorrichtung
JP3347954B2 (ja) * 1995-11-02 2002-11-20 三菱電機株式会社 動画像符号化装置及び動画像復号化装置
JP3604864B2 (ja) * 1997-04-25 2004-12-22 シャープ株式会社 動画像符号化装置
JP4191385B2 (ja) * 1998-05-05 2008-12-03 トムソン ライセンシング Mpeg符号化信号のトリックプレイ再生
US6519287B1 (en) * 1998-07-13 2003-02-11 Motorola, Inc. Method and apparatus for encoding and decoding video signals by using storage and retrieval of motion vectors
GB2343319B (en) * 1998-10-27 2003-02-26 Nokia Mobile Phones Ltd Video coding
IT1313382B1 (it) * 1999-03-18 2002-07-23 St Microelectronics Srl Stima del moto ricorsiva spazio temporale con sottocampionamento ad 1/2 di macroblocco e ad 1/4 di pixel
JP2000308062A (ja) * 1999-04-15 2000-11-02 Canon Inc 動画像処理方法
JP2003513565A (ja) * 1999-10-29 2003-04-08 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ビデオ符号化方法
US6771704B1 (en) * 2000-02-28 2004-08-03 Intel Corporation Obscuring video signals for conditional access
US6765963B2 (en) * 2001-01-03 2004-07-20 Nokia Corporation Video decoder architecture and method for using same
US20030099294A1 (en) * 2001-11-27 2003-05-29 Limin Wang Picture level adaptive frame/field coding for digital video content
JP2004208258A (ja) * 2002-04-19 2004-07-22 Matsushita Electric Ind Co Ltd 動きベクトル計算方法
JP4130783B2 (ja) * 2002-04-23 2008-08-06 松下電器産業株式会社 動きベクトル符号化方法および動きベクトル復号化方法
US20040001546A1 (en) * 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
JP2004023458A (ja) * 2002-06-17 2004-01-22 Toshiba Corp 動画像符号化/復号化方法及び装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180039599A (ko) * 2010-05-26 2018-04-18 항조우 힉비젼 디지털 테크놀로지 컴퍼니 리미티드 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR20180039600A (ko) * 2010-05-26 2018-04-18 항조우 힉비젼 디지털 테크놀로지 컴퍼니 리미티드 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치
KR20180039598A (ko) * 2010-05-26 2018-04-18 항조우 힉비젼 디지털 테크놀로지 컴퍼니 리미티드 다중 참조를 허용하는 비디오 코덱에서 모션 벡터를 예측하는 방법, 및 그 방법을 이용한 모션 벡터 부호화/복호화 장치

Also Published As

Publication number Publication date
CN1832575A (zh) 2006-09-13
KR100604392B1 (ko) 2006-07-25
KR100658181B1 (ko) 2006-12-15
CN100502506C (zh) 2009-06-17
KR20040002582A (ko) 2004-01-07
US20040008784A1 (en) 2004-01-15
JP2004023458A (ja) 2004-01-22
CN1469632A (zh) 2004-01-21
EP1377067A1 (en) 2004-01-02
CN100459658C (zh) 2009-02-04
US20070211802A1 (en) 2007-09-13

Similar Documents

Publication Publication Date Title
KR100658181B1 (ko) 비디오 복호화 방법 및 장치
US9154789B2 (en) Motion vector predictive encoding and decoding method using prediction of motion vector of target block based on representative motion vector
KR100774296B1 (ko) 움직임 벡터 부호화 방법, 복호화 방법 및 그 장치
JP2962012B2 (ja) 動画像符号化装置及びその復号装置
US20150373360A1 (en) Moving picture encoding apparatus, moving picture decoding apparatus, moving picture encoding method, moving picture decoding method, moving picture encoding program, and moving picture decoding program
US6415055B1 (en) Moving image encoding method and apparatus, and moving image decoding method and apparatus
CN101690234B (zh) 视频图像编码方法及解码方法、其装置
US7088772B2 (en) Method and apparatus for updating motion vector memories
JPH1023423A (ja) 画像符号化装置および画像復号化装置
JPH10322705A (ja) 動き検出及び動き補償予測回路
EP1819173B1 (en) Motion vector predictive encoding apparatus and decoding apparatus
JPH0846969A (ja) 映像信号符号化方式
JP2006304350A (ja) 動画像復号化方法及び装置
JP3700801B2 (ja) 画像符号化装置および画像符号化方法
KR100240620B1 (ko) 양방향의 반화소 움직임 추정을 위한 대칭 탐색 윈도우를 형성하는 방법 및 장치
KR100774297B1 (ko) 움직임 벡터 복호화 방법 및 그 장치
KR100293445B1 (ko) 움직임벡터코딩방법
JP4061505B2 (ja) 画像符号化装置および方法
KR100774299B1 (ko) 움직임 벡터 복호화 방법 및 그 장치
KR100774298B1 (ko) 움직임 벡터 복호화 방법 및 그 장치
KR100774300B1 (ko) 움직임 벡터 복호화 방법 및 그 장치
JPH11112993A (ja) 動画像符号化装置及びその方法
KR20070029109A (ko) 비디오 인코딩 방법 및 디바이스
JP2002330438A (ja) 符号化方式変換装置
JP2003070003A (ja) 動き補償フレーム間予測符号化方法/復号化方法および動き補償フレーム間予測符号化/復号化装置

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20091127

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee