KR20090086610A - 움직임 벡터 계산방법 - Google Patents

움직임 벡터 계산방법 Download PDF

Info

Publication number
KR20090086610A
KR20090086610A KR1020097013226A KR20097013226A KR20090086610A KR 20090086610 A KR20090086610 A KR 20090086610A KR 1020097013226 A KR1020097013226 A KR 1020097013226A KR 20097013226 A KR20097013226 A KR 20097013226A KR 20090086610 A KR20090086610 A KR 20090086610A
Authority
KR
South Korea
Prior art keywords
motion vector
picture
block
reference picture
referring
Prior art date
Application number
KR1020097013226A
Other languages
English (en)
Other versions
KR100931746B1 (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 KR20090086610A publication Critical patent/KR20090086610A/ko
Application granted granted Critical
Publication of KR100931746B1 publication Critical patent/KR100931746B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/127Prioritisation of hardware or computational resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/16Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter for a given display mode, e.g. for interlaced or progressive display mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • 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
    • 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
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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/58Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
    • 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/583Motion compensation with overlapping blocks
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream

Abstract

직접 모드에 있어서 움직임 벡터가 참조되는 블록(MB22)이 다수의 움직임 벡터를 갖고 있는 경우에, 상기 다수의 움직임 벡터의 평균 또는 어느 한쪽을 구하여 얻어지는 값에 대해 스케일링을 실시함으로써, 부호화 대상의 픽처(P23)의 픽처간 예측에 이용하는 2개의 움직임 벡터(MV23) 및 움직임 벡터(MV24)를 결정한다.

Description

움직임 벡터 계산방법{MOTION VECTOR CALCULATING METHOD}
본 발명은 동화상의 부호화 방법 및 복호화 방법에 관한 것으로, 특히 이미 부호화가 끝난 표시 시간순으로 전방에 있는 다수의 픽처 또는 표시 시간순으로 후방에 있는 다수의 픽처 또는 표시 시간순으로 전방 및 후방의 양쪽에 있는 다수의 픽처를 참조하여 예측 부호화를 행하는 방법에 관한 것이다.
일반적으로 동화상의 부호화에서는 시간방향 및 공간방향의 용장성을 삭감함으로써 정보량의 압축을 행한다. 여기서 시간적인 용장성의 삭감을 목적으로 하는 픽처간 예측 부호화에서는 전방 또는 후방의 픽처를 참조하여 블록 단위로 움직임 검출 및 움직임 보상을 행하고, 얻어진 예측화상과 현재의 픽처와의 차분치에 대해 부호화를 행한다.
현재 표준화중인 동화상 부호화 방법인 H. 26L에서는 픽처내 예측 부호화만을 행하는 픽처(I 픽처) 및 1매의 픽처를 참조하여 픽처간 예측 부호화를 행하는 픽처(이하, P 픽처), 또한 표시 시간순으로 전방에 있는 2매의 픽처 또는 표시 시간순으로 후방에 있는 2매의 픽처 또는 표시 시간순으로 전방 및 후방에 있는 각각 1매씩의 픽처를 참조하여 픽처간 예측 부호화를 행하는 픽처(이하, B 픽처)가 제안 되어 있다.
도 1은 상기의 동화상 부호화 방법에 있어서의 각 픽처와, 이에 따라 참조되는 픽처와의 참조 관계의 예를 도시하는 도면이다.
픽처 I1은 참조 픽처를 가지지 않고 픽처내 예측 부호화를 행하고, 픽처 P10는 표시 시간순으로 전방에 있는 P7를 참조하여 픽처간 예측 부호화를 행하고 있다. 또한, 픽처 B6는 표시 시간순으로 전방에 있는 2개의 픽처를 참조하고, 픽처 B12는 표시 시간순로 후방에 있는 2개의 픽처를 참조하며, 픽처 B18는 표시 시간순으로 전방 및 후방에 있는 각각 1매씩의 픽처를 참조하여 픽처간 예측 부호화를 행하고 있다.
표시 시간순으로 전방 및 후방에 있는 각각 1매씩의 픽처를 참조하여 픽처간 예측 부호화를 하는 2방향 예측의 하나의 예측 모드로서 직접 모드가 있다. 직접 모드에서는 부호화 대상의 블록에 직접적으로는 움직임 벡터를 갖게 하지 않고, 표시 시간순으로 근방에 있는 부호화 완료 픽처내의 동일한 위치에 있는 블록의 움직임 벡터를 참조함으로써, 실제로 움직임 보상을 행하기 위한 2개의 움직임 벡터를 산출하여 예측 화상을 작성한다.
도 2는 직접 모드에 있어서 움직임 벡터를 결정하기 위해 참조한 부호화 완료 픽처가, 표시 시간순으로 전방에 있는 1매의 픽처만을 참조하는 움직임 벡터를 가진 경우의 예를 도시한 것이다. 동 도면에 있어서, 수직 방향의 선분으로 표시하는 「P」는 픽처 타입과는 관계없이, 단순한 픽처를 표시하고 있다. 동 도면에서는 예를 들면, 픽처 P83이 현재 부호화의 대상으로 되어 있는 픽처이고 픽처 P82 및 픽처 P84를 참조 픽처로 하여 2방향 예측을 행한다. 이 픽처 P83에 있어서 부호화를 행하는 블록을 블록 MB81로 하면, 블록 MB81의 움직임 벡터는 부호화 완료의 후방 참조 픽처인 픽처 P84의 같은 위치에 있는 블록 MB82가 가지는 움직임 벡터를 이용하여 결정된다. 이 블록 MB82는 움직임 벡터로서 움직임 벡터 MV81 1개만을 가지므로, 구하는 두 개의 움직임 벡터 MV82 및 움직임 벡터 MV83은 식 1(a) 및 (b)에 따라서 직접, 움직임 벡터 MV81 및 시간간격 TR81에 대해 스케일링을 적용함으로써 산출된다.
MV82= MV81/TR81×TR82 …식 1(a)
MV83=-MV81/TR81×TR83 …식 1(b)
또, 이 때 시간간격 TR81은 픽처 P84로부터 픽처 P82까지, 즉, 픽처 P84로부터, 움직임 벡터 MV81가 지시하는 참조 픽처까지의 시간의 간격을 표시하고 있다. 또한, 시간간격 TR82은 픽처 P83으로 부터, 움직임 벡터 MV82가 지시하는 참조 픽처까지의 시간의 간격을 표시하고 있다. 또한, 시간간격 TR83은 픽처 P83으로부터, 움직임 벡터 MV83이 지시하는 참조 픽처까지의 시간의 간격을 표시하고 있다.
또한, 직접 모드에는 이미 설명한 시간적 예측과, 공간적 예측의 2개의 방법이 있는데, 이하에서는 공간적 예측에 관해서 설명한다. 직접 모드의 공간적 예측에서는 예를 들면, 16화소×16화소로 구성되는 매크로 블록을 단위로 하여 부호화를 행하고, 부호화 대상 매크로 블록의 주변 3매크로 블록의 움직임 벡터 중, 부호화 대상 픽처로부터 표시 시간순으로 가장 가까운 거리에 있는 픽처를 참조하여 구해진 움직임 벡터 1개를 선택하고, 선택된 움직임 벡터를 부호화 대상 매크로 블록의 움직임 벡터로 한다. 3개의 움직임 벡터가 전부 같은 픽처를 참조하고 있는 경우는 이들 중앙값을 선택한다. 3개중 2개가 부호화 대상 픽처로부터 표시 시간순으로 가장 가까운 거리에 있는 픽처를 참조하고 있는 경우에는 나머지 1개를 「0」 벡터로 간주하여, 이들 중앙값을 선택한다. 또한, 1개만이 부호화 대상 픽처로부터 표시 시간순으로 가장 가까운 거리에 있는 픽처를 참조하고 있는 경우에는 그 움직임 벡터를 선택한다. 이와 같이 직접 모드에서는 부호화 대상의 매크로 블록에 대해 움직임 벡터를 부호화하지 않고, 다른 매크로 블록이 갖는 움직임 벡터를 이용하여 움직임 예측을 행한다.
도 3(a)는 종래의 직접 모드의 공간적 예측방법을 이용하여, B 픽처에 있어서 표시 시간순으로 전방의 픽처를 참조하는 경우의 움직임 벡터 예측방법의 일례를 도시하는 도면이다. 동 도면에 있어서, P는 P픽처, B는 B픽처를 표시하고, 우측 네 픽처의 픽처 타입에 붙어 있는 숫자는 각 픽처가 부호화된 순서를 표시하고 있다. 여기서는, 픽처 B4에 있어서 사선을 붙인 매크로 블록이 부호화 대상으로 되어 있는 것으로 한다. 부호화 대상 매크로 블록의 움직임 벡터를, 직접 모드의 공간적 예측방법을 이용하여 계산하는 경우, 우선, 부호화 대상 매크로 블록의 주변에서, 3개의 부호화 완료 매크로 블록(파선부)을 선택한다. 여기서는, 주변 3개의 매크로 블록의 선택방법은 설명을 생략한다. 부호화 완료의 3개의 매크로 블록의 움직임 벡터는 이미 계산되어 유지되어 있다. 이 움직임 벡터는 동일 픽처 중의 매크로 블록이라도, 매크로 블록마다 다른 픽처를 참조하여 구해지는 경우가 있 다. 이 주변 3매크로 블록이, 각각 어느 픽처를 참조했는지는 각 매크로 블록을 부호화할 때에 이용한 참조 픽처의 참조 인덱스에 의해 알 수 있다. 참조 인덱스에 대한 상세한 것은 후술한다.
그리고, 예를 들면, 도 3(a)에 도시한 부호화 대상 매크로 블록에 대해, 주변 3매크로 블록이 선택되고, 각 부호화 완료 매크로 블록의 움직임 벡터가 각각 움직임 벡터 a, 움직임 벡터 b 및 움직임 벡터 c였다고 한다. 이에 있어서, 움직임 벡터 a와 움직임 벡터 b는 픽처번호(11)가 「11」인 P 픽처를 참조하여 구해지고, 움직임 벡터 c는 픽처번호(11)가 「8」인 P 픽처를 참조하여 구해진 것으로 한다. 이 경우, 이들 움직임 벡터 a, b 및 c 중, 부호화 대상 픽처로부터 표시 시간순으로 가장 가까운 거리에 있는 픽처를 참조한 움직임 벡터인 움직임 벡터 a, b의 2개가 부호화 대상 매크로 블록의 움직임 벡터의 후보로 된다. 이 경우, 움직임 벡터 c를 「0」으로 간주하고, 움직임 벡터 a, 움직임 벡터 b 및 움직임 벡터 c의 3개중의 중앙값을 선택하여, 부호화 대상 매크로 블록의 움직임 벡터로 한다.
단, MPEG-4 등의 부호화 방식에서는 픽처내의 각 매크로 블록을 인터레이스를 행하는 필드 구조로 부호화해도 되고, 인터레이스를 행하지 않는 프레임 구조로 부호화를 행해도 된다. 따라서, MPEG-4 등에서는 참조 프레임 1프레임 중에, 필드 구조로 부호화된 매크로 블록과, 프레임 구조로 부호화된 매크로 블록이 혼재하는 경우가 생긴다. 이러한 경우라도, 부호화 대상 매크로 블록의 주변 3매크로 블록이 모두 부호화 대상 매크로 블록과 같은 구조로 부호화되어 있으면, 전술의 직접 모드의 공간적 예측방법을 이용하여 문제없이 부호화 대상 매크로 블록의 움직임 벡터를 1개 도출할 수 있다. 즉, 프레임 구조로 부호화되는 부호화 대상 매크로 블록에 대해, 주변 3매크로 블록도 또한 프레임 구조로 부호화되어 있는 경우, 또는, 필드 구조로 부호화되는 부호화 대상 매크로 블록에 대해, 주변 3매크로 블록도 또한 필드 구조로 부호화되어 있는 경우이다. 전자의 경우는 이미 설명한 대로이다. 또한, 후자의 경우는 부호화 대상 매크로 블록의 탑(top) 필드에 대응해서는, 주변 3매크로 블록의 탑 필드에 대응한 3개의 움직임 벡터를 이용함으로써, 또한, 부호화 대상 매크로 블록의 하위(bottom) 필드에 대응해서는 주변 3매크로 블록의 하위 필드에 대응한 3개의 움직임 벡터를 이용함으로써, 탑 필드와 하위 필드의 각각에 대해, 전술의 방법으로, 부호화 대상 매크로 블록의 움직임 벡터를 도출할 수 있다.
그러나, 직접 모드의 시간적 예측의 경우, 픽처간 예측 부호화를 행하는 블록이 직접 모드에 의해서 움직임 보상을 할 때, 움직임 벡터가 참조되는 블록이 도 1의 B6과 같은 B픽처에 속해 있을 때, 상기 블록은 다수의 움직임 벡터를 갖기 때문에 식 1에 의거한 스케일링에 의한 움직임 벡터의 산출을 직접 적용할 수 없다는 문제가 발생한다. 또한, 움직임 벡터의 산출후에 제산 연산을 하기 때문에, 움직임 벡터값의 정확도(예를 들면 1/2화소나 1/4화소 정확도)가 미리 정해진 정확도에 일치하지 않는 경우가 생긴다.
또한, 공간적 예측의 경우, 부호화 대상 매크로 블록과 주변 매크로 블록 중 어느 하나가 다른 구조로 부호화되어 있는 경우, 부호화 대상 매크로 블록을 필드 구조 및 프레임 구조중 어느 쪽 구조로 부호화할지는 규정되어 있지 않고, 또한, 필드 구조로 부호화된 것과 프레임 구조로 부호화된 것이 혼재하는 주변 매크로 블록의 움직임 벡터중에서, 부호화 대상 매크로 블록의 움직임 벡터를 선택하는 방법도 규정되어 있지 않다.
본 발명의 제1의 목적은 움직임 벡터가 참조되는 블록이 B 픽처에 속하는 블록인 경우라도, 직접 모드에 있어서 정확도가 좋은 시간방향의 움직임 벡터 예측방법을 제공하는 것이다.
또한, 본 발명의 제2의 목적은 움직임 벡터가 참조되는 블록이 B 픽처에 속하는 블록인 경우라도, 직접 모드에 있어서 정확도가 좋은 공간방향의 움직임 벡터 예측방법을 제공하는 것이다.
상기 목적을 달성하기 위해 본 발명의 화상 복호화 방법은, 복호화 대상 블록이 참조하는 참조 픽쳐를 결정하여, 복호화 대상 블록을 예측 복호화하는 화상 복호화 방법으로서, 복호화 대상 블록의 주변의 소정의 위치에 존재하는 복수의 주변 블록이 참조하는 픽쳐이며, 복호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 전방에 있는 참조 픽쳐에 우선해 작은 식별 번호가 부여되는 제1 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제1 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 복호화 대상 블록의 제1 참조 픽쳐로 하고, 상기 복수의 주변 블록이 참조하는 픽쳐이며, 상기 복호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 후방에 있는 참조 픽쳐에 우선해 작은 식별 번호가 부여되는 제2 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제2 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 복호화 대상 블록의 제2 참조 픽쳐로 하고, 상기 제1 참 조 픽쳐와 상기 제2 참조 픽쳐를 참조해 상기 복호화 대상 블록을 예측 복호화한다.
또한, 본 발명의 화상 복호화 장치는 복호화 대상 블록이 참조하는 참조 픽쳐를 결정하여, 복호화 대상 블록을 예측 복호화하는 화상 복호화 장치로서, 복호화 대상 블록의 주변의 소정의 위치에 존재하는 복수의 주변 블록이 참조하는 픽쳐이며, 복호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 전방에 있는 참조 픽쳐에 우선해 작은 식별 번호가 부여되는 제1 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제1 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 복호화 대상 블록의 제1 참조 픽쳐로 하고, 상기 복수의 주변 블록이 참조하는 픽쳐이며, 상기 복호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 후방에 있는 참조 픽쳐에 우선해 작은 식별 번호가 부여되는 제2 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제2 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 복호화 대상 블록의 제2 참조 픽쳐로 하는 참조 픽쳐 결정 수단과, 상기 제1 참조 픽쳐와 상기 제2 참조 픽쳐를 참조해 상기 복호화 대상 블록을 예측 복호화하는 복호화 수단을 가진다.
또한, 본 발명의 화상 부호화 방법은, 부호화 대상 블록이 참조하는 참조 픽쳐를 결정하여, 부호화 대상 블록을 예측 부호화하는 화상 부호화 방법으로서, 부호화 대상 블록의 주변의 소정의 위치에 존재하는 복수의 주변 블록이 참조하는 픽쳐이며, 부호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 전방에 있는 참조 픽쳐에 우선해 작은 식별 번호가 부여되는 제1 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제1 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 부호화 대상 블록의 제1 참조 픽쳐로 하고, 상기 복수의 주변 블록이 참조하는 픽쳐이며, 상기 부호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 후방에 있는 참조 픽쳐에 우선해 작은 식별 번호가 부여되는 제2 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제2 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 부호화 대상 블록의 제2 참조 픽쳐로 하고, 상기 제1 참조 픽쳐와 상기 제2 참조 픽쳐를 참조해 상기 부호화 대상 블록을 예측 부호화한다.
또한, 본 발명의 화상 부호화 장치는 부호화 대상 블록이 참조하는 참조 픽쳐를 결정하여, 부호화 대상 블록을 예측 부호화하는 화상 부호화 장치로서, 부호화 대상 블록의 주변의 소정의 위치에 존재하는 복수의 주변 블록이 참조하는 픽쳐이며, 부호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 전방에 있는 참조 픽쳐에 우선해 작은 식별 번호가 부여되는 제1 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제1 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 부호화 대상 블록의 제1 참조 픽쳐로 하고, 상기 복수의 주변 블록이 참조하는 픽쳐이며, 상기 부호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 후방에 있는 참조 픽쳐에 우선하여 작은 식별 번호가 부여되는 제2 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제2 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 부호화 대상 블록의 제2 참조 픽쳐로 하는 참조 픽쳐 결정 수단과, 상기 제1 참조 픽쳐와 상기 제2 참조 픽쳐를 참조해 상기 부호화 대상 블록을 예측 부호화하는 부호화 수단을 가진다.
또, 이 명세서는 전의 일본국 특허출원 「특원 2002-118598」,「특원 2002-121053」,「특원 2002-156266」,「특원 2002-177889」,「특원 2002-193027」,「특원 2002-204713」,「특원 2002-262151」,「특원 2002-290542」,「특원 2002-323096」,미국 가출원「60/378643」및「60/378954」의 내용을 포함한다.
본 발명에 관한 화상 부호화 장치는 통신 기능을 구비하는 퍼스널 컴퓨터, PDA, 디지털 방송의 방송국 및 휴대 전화기 등에 구비되는 화상 부호화 장치로서 유용하다.
또한, 본 발명에 관한 화상 복호화 장치는 통신 기능을 구비하는 퍼스널 컴퓨터, PDA, 디지털 방송을 수신하는 STB 및 휴대 전화기 등에 구비되는 화상 복호화 장치로서 유용하다.
본 발명은 종래의 기술의 문제점을 해결하는 것으로, 직접 모드에 있어서, 움직임 벡터를 참조하는 블록이 B 픽처에 속하는 경우라도 모순없이 움직임 보상에 이용하는 움직임 벡터를 결정하는 것을 가능하게 하는 동화상의 부호화 방법 및 복호화 방법을 제안하는 것을 목적으로 한다. 여기서, 우선 참조 인덱스에 관해서 설명한다.
도 3(b)는 각 부호화 대상 픽처에 작성되는 참조 픽처 리스트(10)의 일례를 도시하는 도면이다. 도 3(b)에 도시하는 참조 픽처 리스트(10)에는 1개의 B 픽처를 중심으로 하여, 시간적으로 그 전후에 표시되고, 그 B 픽처가 참조 가능한 주변 픽처와, 이들 픽처 타입, 픽처번호(11), 제1 참조 인덱스(12) 및 제2 참조 인덱스(13)가 표시되어 있다. 픽처번호(11)는 예를 들면, 각 픽처가 부호화된 순서를 표시하는 번호이다. 제1 참조 인덱스(12)는 부호화 대상 픽처에 대한 주변 픽처의 상대적 위치관계를 표시하는 제1의 인덱스이고, 예를 들면 주로 부호화 대상 픽처가 표시 시간순으로 전방의 픽처를 참조하는 경우의 인덱스로서 이용된다. 이 제1 참조 인덱스(12)의 리스트는 「참조 인덱스 리스트 0(list 0)」또는「제1 참조 인덱스 리스트」라고 불린다. 또한, 참조 인덱스는 상대 인덱스라고도 불린다. 도 3(b)의 참조 픽처 리스트(10)에서는 제1 참조 인덱스(12)의 값에는 우선, 부호화 대상 픽처보다 전의 표시시간을 가지는 참조 픽처에 대해, 부호화 대상 픽처에 표시 시간순으로 가까운 순으로 「0」부터 「1」씩 증가하는 정수값이 할당된다. 부호화 대상 픽처보다 전의 표시 시각을 가지는 참조 픽처 전체에 대해 「0」부터 「1」씩 증가하는 값이 할당되면, 다음에 부호화 대상 픽처보다 후의 표시 시각을 가지는 참조 픽처에 대해, 부호화 대상 픽처에 표시 시간순으로 가까운 순으로 연속하는 값이 할당된다.
제2 참조 인덱스(13)는 부호화 대상 픽처에 대한 주변 픽처의 상대적 위치관계를 표시하는 제2의 인덱스이고, 예를 들면 주로 부호화 대상 픽처가 표시 시간순으로 후방의 픽처를 참조하는 경우의 인덱스로서 이용된다. 이 제2 참조 인덱스(13)의 리스트는 「참조 인덱스 리스트1(list 1)」또는「제2 참조 인덱스 리스트」라고 불린다. 제2 참조 인덱스(13)의 값에는 우선, 부호화 대상 픽처보다 후의 표시 시각을 가지는 참조 픽처에 대해, 부호화 대상 픽처에 표시 시간순으로 가까 운 순으로, 「0」부터「1」씩 증가하는 정수값이 할당된다. 부호화 대상보다 후의 표시 시각을 가지는 참조 픽처 전체에 대해 「0」부터「1」씩 증가하는 값이 할당되면, 다음에 부호화 대상 픽처보다 전의 표시 시각을 가지는 참조 픽처에 대해, 부호화 대상 픽처에 표시 시간순으로 가까운 순으로 연속된 값이 할당된다. 따라서, 이 참조 픽처 리스트를 보면, 제1 참조 인덱스(12), 제2 참조 인덱스(13)는 참조 인덱스의 값이 작은 참조 픽처일수록 부호화 대상 픽처에 표시 시간순으로 근접해 있는 것을 알 수 있다. 이상에서는 참조 인덱스의 초기 상태에서의 번호의 할당 방법에 대해 설명했는데, 참조 인덱스의 번호 할당방법은 픽처 단위나 슬라이스 단위로 변경하는 것이 가능하다. 참조 인덱스의 번호 할당방법은 예를 들면, 표시 시간순으로 먼 픽처에 대해 작은 번호를 할당하는 것도 가능하지만, 이러한 참조 인덱스는 예를 들면, 표시 시간순으로 먼 픽처를 참조하는 쪽이, 부호화 효율이 향상되는 경우에 이용된다. 즉, 블록 중의 참조 인덱스는 가변길이 부호어에 의해 표현되고, 값이 작을수록 짧은 부호 길이의 코드가 할당되므로, 참조함으로써 부호화 효율이 향상되는 픽처에 대해, 보다 작은 참조 인덱스를 할당하여, 참조 인덱스의 부호량을 삭감하고 부호화 효율의 향상을 행하는 것이다.
도 4는 픽처번호와 참조 인덱스의 설명도이다. 도 4는 참조 픽처 리스트의 예를 도시하고, 중앙의 B 픽처(파선인 것)를 부호화할 때 이용하는 참조 픽처 및 그 픽처 번호와 참조 인덱스를 도시한 것이다. 도 4(A)는 도 3을 이용하여 설명한, 초기 상태에서의 참조 인덱스의 할당 방법에 의해, 참조 인덱스를 할당한 경우를 나타내고 있다.
도 5는 종래의 화상 부호화 장치에 의한 화상 부호화 신호 포맷의 개념도이다. 픽처(Picture)는 1픽처분의 부호화 신호, 헤더(Header)는 픽처 선두에 포함되는 헤더 부호화 신호, 블록(Block) 1은 직접 모드에 의한 블록의 부호화 신호, 블록 2는 직접 모드 이외의 보간 예측에 의한 블록의 부호화 신호, Ridx0, Ridx1은 각각 제1 참조 인덱스와 제2 참조 인덱스, MV0, MV1은 각각 제1 움직임 벡터와 제2 움직임 벡터를 표시한다. 부호화 블록 2에서는 보간에 사용하는 2개의 참조 픽처를 표시하기 위한 2개의 참조 인덱스 Ridx0, Ridx1를 부호화 신호중에 이 순서로 갖는다. 또한, 부호화 블록 Block2의 제1 움직임 벡터 MV0와, 제2 움직임 벡터 MV1는 부호화 블록 Block2의 부호화 신호내에 이 순서로 부호화된다. 참조 인덱스 Ridx0, Ridx1중 어느 것을 사용할지는 PredType에 따라 판단할 수가 있다. 또한, 제1 움직임 벡터 MV0가 참조하는 픽처(제1 참조 픽처)를 제1 참조 인덱스 Ridx0로 표시하고, 제2 움직임 벡터 MV1가 참조하는 픽처(제2 참조 픽처)를 제2 참조 인덱스 Ridx1로 표시한다. 예를 들면, 움직임 벡터 MV0와 MV1의 2방향에서 픽처를 참조하는 것이 표시되는 경우는 Ridx0와 Ridx1가 이용되고, 움직임 벡터 MV0 또는 MV1의 어느 1방향에서 픽처를 참조하는 것이 표시되는 경우는 그 움직임 벡터에 따른 참조 인덱스인 Ridx0 또는 Ridx1이 이용되며, 직접 모드가 표시되는 경우는 Ridx0, Ridx1 모두 이용되지 않는다. 제1 참조 픽처는 제1 참조 인덱스에 의해 지정되고, 일반적으로는 부호화 대상 픽처보다 전의 표시 시각을 가지는 픽처이고, 제2 참조 픽처는 제2 참조 인덱스에 의해 지정되고, 일반적으로는 부호화 대상 픽처보다 후의 표시 시각을 가지는 픽처이다. 단, 도 4의 참조 인덱스의 부여 방법 예로부터 알 수 있듯이, 제1 참조 픽처가 부호화 대상 픽처보다 후의 표시 시각을 가지는 픽처이고, 제2 참조 픽처가 부호화 대상 픽처보다 전의 표시 시각을 가지는 픽처인 경우도 있다. 제1 참조 인덱스 Ridx0는 블록 Block2의 제1 움직임 벡터 MV0가 참조한 제1 참조 픽처를 표시하는 참조 인덱스이고, 제2 참조 인덱스 Ridx1는 블록 Block2의 제2 움직임 벡터 MV1가 참조한 제2 참조 픽처를 표시하는 참조 인덱스이다.
한편, 부호화 신호중의 버퍼 제어 신호(도 5 헤더 내의 RPSL)를 이용하여 명시적으로 지시함으로써, 참조 인덱스에 대한 참조 픽처의 할당을 임의로 변경할 수 있다. 이 할당의 변경에 의해, 제2 참조 인덱스가「0」인 참조 픽처를 임의의 참조 픽처로 하는 것도 가능하고, 예를 들면, 도 4(b)에 도시하는 바와 같이 픽처 번호에 대한 참조 인덱스의 할당을 변경할 수 있다.
이와같이, 참조 인덱스에 대한 참조 픽처의 할당을 임의로 변경할 수가 있으므로, 또한, 이 참조 인덱스에 대한 참조 픽처의 할당의 변경은 통상, 참조 픽처로서 선택함으로써 부호화 효율이 높아지는 픽처에 대해 보다 작은 참조 인덱스를 할당하기 때문에, 움직임 벡터가 참조하는 참조 픽처의 참조 인덱스의 값이 가장 작아지는 움직임 벡터를 직접 모드에 있어서 사용하는 움직임 벡터로 하면 부호화 효율을 높일 수 있다.
(실시의 형태1)
본 발명의 실시의 형태 1의 동화상 부호화 방법을 도 6에 도시한 블록도를 이용하여 설명한다.
부호화 대상이 되는 동화상은 시간순으로 픽처 단위로 프레임 메모리(101)에 입력되고, 또한 부호화가 행해지는 순으로 바꾸어 배열된다. 각각의 픽처는 블록이라고 불리는, 예를 들면 수평 16×수직 16화소의 그룹으로 분할되어, 블록 단위로 이후의 처리가 행해진다.
프레임 메모리(101)로부터 읽어진 블록은 움직임 벡터 검출부(106)에 입력된다. 여기서는 프레임 메모리(105)에 축적되어 있는 부호화 완료의 픽처를 복호화한 화상을 참조 픽처로서 이용하여, 부호화 대상으로 하고 있는 블록의 움직임 벡터 검출을 한다. 이 때, 모드 선택부(107)에서는 움직임 벡터 검출부(106)에서 얻어진 움직임 벡터나, 움직임 벡터 기억부(108)에 기억되어 있는 부호화 완료의 픽처로 이용한 움직임 벡터를 참조하면서, 알맞은 예측 모드를 결정한다. 모드 선택부(107)에서 얻어진 예측 모드와 그 예측 모드에서 이용하는 움직임 벡터에 의해서 결정된 예측 화상이 차분 연산부(109)에 입력되고, 부호화 대상의 블록과의 차분을 구함으로써 예측 잔차(殘差) 화상이 생성되고, 예측 잔차 부호화부(102)에서 부호화가 행해진다. 또한, 모드 선택부(107)에서 얻어진 예측 모드에서 이용하는 움직임 벡터는 후의 블록이나 픽처의 부호화로 이용하기 위해서, 움직임 벡터 기억부(108)에 기억된다. 이상의 처리의 흐름은 픽처간 예측 부호화가 선택된 경우의 동작인데, 스위치(111)에 의해서 픽처내 예측 부호화와의 교체가 이루어진다. 마지막에, 부호열 생성부(103)에 의해서, 움직임 벡터 등의 제어정보 및 예측 잔차 부호화부(102)로부터 출력되는 화상 정보 등에 대해, 가변길이 부호화를 실시하여 최종적으로 출력되는 부호열이 생성된다.
이상 부호화 흐름의 개요를 도시했는데, 움직임 벡터 검출부(106) 및 모드 선택부(107)의 처리의 상세에 관해서 이하에 설명한다.
움직임 벡터의 검출은 블록마다 또는 블록을 분할한 영역마다 행해진다. 부호화의 대상으로 하고 있는 화상에 대해 표시 시간순으로 전방 및 후방에 위치하는 부호화 완료의 픽처를 참조 픽처로 하여, 그 픽처 내의 탐색영역에서 최적이라고 예측되는 위치를 표시하는 움직임 벡터 및 예측 모드를 결정함으로써 예측 화상을 작성한다.
표시 시간순으로 전방 및 후방에 있는 2매의 픽처를 참조하여, 픽처간 예측 부호화를 행하는 2방향 예측의 하나로서, 직접 모드가 있다. 직접 모드에서는 부호화 대상의 블록에, 직접적으로는 움직임 벡터를 갖게 하지 않고, 표시 시간순으로 근방에 있는 부호화 완료 픽처 내의 같은 위치에 있는 블록의 움직임 벡터를 참조함으로써, 실제로 움직임 보상을 하기위한 2개의 움직임 벡터를 산출하여, 예측 화상을 작성한다.
도 7은 직접 모드에 있어서 움직임 벡터를 결정하기 위해서 참조한 부호화 완료 블록이, 표시 시간순으로 전방에 있는 2매의 픽처를 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 나타낸 것이다. 픽처 P23가 현재 부호화의 대상으로 하고 있는 픽처이고, 픽처 P22 및 픽처 P24를 참조 픽처로 하여 2방향 예측을 하는 것이다. 부호화를 행하는 블록을 블록 MB21로 하면, 이 때 필요로 되는 2개의 움직임 벡터는 부호화 완료의 후방 참조 픽처(제2 참조 인덱스로 지정되는 제2 참조 픽처)인 픽처 P24의 같은 위치에 있는 블록 MB22가 가지는 움직임 벡터를 이용하여 결정된다. 이 블록 MB22는 움직임 벡터로서 움직임 벡터 MV21 및 움직임 벡터 MV22의 2개를 갖기 때문에, 구하는 2개의 움직임 벡터 MV23 및 움직임 벡터 MV24를 식 1과 같이 직접 스케일링을 적용함으로써 산출하는 것은 불가능하다. 그래서 식 2와 같이, 스케일링을 적용하는 움직임 벡터로서 움직임 벡터 MV_REF를 블록 MB22가 가지는 2개의 움직임 벡터의 평균치로부터 산출하고, 그 때의 시간간격 TR_REF를 마찬가지로 평균치로부터 산출한다. 그리고, 식 3에 의거해 움직임 벡터 MV_REF 및 시간간격 TR_REF에 대해 스케일링을 적용함으로써 움직임 벡터 MV23 및 움직임 벡터 MV24를 산출한다. 이 때 시간간격 TR21은 픽처 P24부터 픽처 P21까지, 즉 움직임 벡터 MV21가 참조하는 픽처까지의 시간의 간격을 표시하고, 시간간격 TR22는 움직임 벡터 MV22가 참조하는 픽처까지의 시간의 간격을 표시하고 있다. 또한, 시간간격 TR23은 움직임 벡터 MV23가 참조하는 픽처까지의 시간의 간격을 표시하고, 시간간격 TR24는 움직임 벡터 MV24가 참조하는 픽처까지의 시간의 간격을 표시하고 있다. 이들 픽처간 시간간격은 예를 들면 각 픽처에 부가되는 표시시간이나 표시순서를 표시하는 정보, 또는 그 정보의 차에 따라서 결정할 수 있다. 또한, 도 7의 예에서는 부호화의 대상으로 하는 픽처는 이웃하는 픽처를 참조하고 있는데, 이웃하지 않는 픽처를 참조한 경우라도 마찬가지로 취급하는 것이 가능하다.
MV_REF=(MV21+MV22)/2 …식 2(a)
TR_REF=(TR21+TR22)/2 …식 2(b)
MV23= MV_REF/TR_REF×TR23 …식 3(a)
MV24=-MV_REF/TR_REF×TR24 …식 3(b)
이상과 같이 상기 실시의 형태에서는 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 전방에 있는 픽처를 참조하는 다수의 움직임 벡터를 갖는 경우에, 상기 다수의 움직임 벡터를 이용하여 1개의 움직임 벡터를 생성하고, 스케일링을 적용하여 실제로 움직임 보상에 사용하기 위한 2개의 움직임 벡터를 결정함으로써, 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 B 픽처에 속하는 경우에 있어서도 모순없이 직접 모드를 이용한 픽처간 예측 부호화를 가능하게 하는 부호화 방법을 나타냈다.
또, 도 7에 있어서의 2개의 움직임 벡터 MV23 및 움직임 벡터 MV24를 구할 때, 스케일링을 실시하는 대상이 되는 움직임 벡터 MV_REF 및 시간간격 TR_REF를 산출하기 위해서, 움직임 벡터 MV21와 움직임 벡터 MV22와의 평균치 및 시간간격 TR21과 시간간격 TR22의 평균치를 구하는 방법으로서, 식 2대신에 식 4를 이용하는 것도 가능하다. 우선, 식 4(a)와 같이 움직임 벡터 MV21에 대해 시간간격이 움직임 벡터 MV22와 같아지도록 스케일링을 실시하여 움직임 벡터 MV21’를 산출한다. 그리고 움직임 벡터 MV21’와 움직임 벡터 MV22와의 평균을 구하여 움직임 벡터 MV_REF가 결정된다. 이 때 시간간격 TR_REF는 시간간격 TR22을 그대로 이용하게 된다. 또, 움직임 벡터 MV21에 대해 스케일링을 실시하여 움직임 벡터 MV21’로 하는 대신에 움직임 벡터 MV22에 대하여 스케일링을 실시하여 움직임 벡터 MV22’로 하는 경우도 마찬가지로 취급하는 것이 가능하다.
MV21’= MV21/TR21×TR22 …식 4(a)
MV_REF=(MV21’+MV22)/2 …식 4(b)
TR_REF= TR22 …식 4(c)
또, 도 7에 있어서의 2개의 움직임 벡터 MV23 및 움직임 벡터 MV24를 산출할 때에, 스케일링을 실시하는 대상이 되는 움직임 벡터 MV_REF 및 시간간격 TR_REF로서, 식 2와 같이 2개의 움직임 벡터의 평균치를 이용하는 대신에, 식 5와 같이 움직임 벡터를 참조하는 픽처 P24에 대한 시간간격이 짧은 쪽의 픽처 P22를 참조하는 움직임 벡터 MV22 및 시간간격 TR22을 직접 이용하는 것도 가능하다. 마찬가지로, 식 6과 같이 시간간격이 긴 쪽의 픽처 P21를 참조하는 움직임 벡터 MV21 및 시간간격 TR21을 움직임 벡터 MV_REF 및 시간간격 TR_REF로서 직접 이용하는 것도 가능하다. 이 방법에 의해, 움직임 벡터가 참조되는 픽처 P24에 속하는 각각의 블록은 2개의 움직임 벡터중의 한쪽만을 기억해 두어 움직임 보상을 실현할 수 있으므로, 부호화 장치에 있어서의 움직임 벡터 기억부의 용량을 작게 억제하는 것이 가능해진다.
MV_REF= MV22 …식 5(a)
TR_REF= TR22 …식 5(b)
MV_REF= MV21 …식 6(a)
TR_REF= TR21 …식 6(b)
또한, 도 7에 있어서의 2개의 움직임 벡터 MV23 및 움직임 벡터 MV24를 산출할 때, 스케일링을 실시하는 대상이 되는 움직임 벡터 MV_REF 및 시간간격 TR_REF로서, 식 2와 같이 2개의 움직임 벡터의 평균치를 이용하는 대신에, 부호화되는 순서가 먼저인 픽처를 참조하는 움직임 벡터를 직접 이용하는 것도 가능하다. 도 8(a)은 도 7과 마찬가지로 동화상으로서 표시되는 순서에서의 픽처의 배열 방법의 참조 관계를 도시한 것이고, 도 8(b)에서는 도 6의 프레임 메모리(101)에 있어서 부호화되는 순서로 바꿔 배열하는 일례를 도시하고 있다. 또, 픽처 P23이 직접 모드에 의해서 부호화를 행하는 픽처, 픽처 P24가 그 때에 움직임 벡터를 참조하는 픽처를 나타내고 있다. 도 8(b)와 같이 바꿔 배열했을 때, 부호화되는 순서가 먼저인 픽처를 참조하는 움직임 벡터를 직접 이용함으로써, 식 5와 같이 움직임 벡터 MV_REF 및 시간간격 TR_REF로서 움직임 벡터 MV22 및 시간간격 TR22이 직접 적용된다. 마찬가지로, 부호화되는 순서가 후인 픽처를 참조하는 움직임 벡터를 직접 이용하는 것도 가능하다. 이 경우는, 식 6과 같이 움직임 벡터 MV_REF 및 시간간격 TR_REF로서 움직임 벡터 MV21 및 시간간격 TR21이 직접 적용된다. 이 방법에 의해, 움직임 벡터를 참조하는 픽처 P24에 속하는 각각의 블록은 2개의 움직임 벡터 중의 한쪽만을 기억해 두어 움직임 보상을 실현할 수 있으므로, 부호화 장치에 있어서의 움직임 벡터 기억기의 용량을 작게 억제하는 것이 가능해진다.
또, 본 실시의 형태에 있어서는 참조하는 움직임 벡터에 대해 픽처간 시간적 거리를 이용하여 스케일링함으로써, 직접 모드에 있어서 이용하는 움직임 벡터를 계산하는 경우에 대해 설명했는데, 이를 참조하는 움직임 벡터를 정수배하여 계산해도 된다. 여기서, 정수배에 사용되는 정수는 다수 블록 단위 또는 다수 픽처 단위로 부호화 또는 복호화하는 경우에, 변경 가능하게 해도 된다.
또한, 식 2(a) 또는 식 4(b)에 있어서, 움직임 벡터 MV_REF를 계산할 때는, 식 2(a) 또는 식 4(b)의 우변을 계산한 후, 소정의 움직임 벡터의 정확도(예를 들 면, 1/2화소 정확도의 움직임 벡터이면, 0.5화소 단위의 값)로 반올림 또는 올림 해도 된다. 움직임 벡터의 정확도로서는, 1/2화소 정확도에 한정되지 않는다. 또한, 이 움직임 벡터의 정확도는 예를 들면, 블록 단위, 픽처 단위, 시퀀스 단위로 결정할 수 있다. 또한, 식3(a), 식3(b), 식4(a)에 있어서, 움직임 벡터 MV23, 움직임 벡터 MV24, 움직임 벡터 MV21’를 계산할 때는 식 3(a),식 3(b),식 4(a)의 우변을 계산한 후, 소정의 움직임 벡터의 정확도로 반올림 또는 올림해도 된다.
(실시의 형태 2)
도 6에 의거한 부호화 처리의 개요는 실시의 형태 1과 완전히 동등하다. 여기서는 직접 모드에 있어서의 2방향 예측의 동작에 대해 도 9를 이용하여 그 상세를 설명한다.
도 9는 직접 모드에 있어서 움직임 벡터를 결정하기 위해서 참조한 블록이 표시 시간순으로 후방에 있는 2매의 픽처를 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 도시한 것이다. 픽처 P43이 현재 부호화의 대상으로 하고 있는 픽처이고 픽처 P42 및 픽처 P44를 참조 픽처로 하여 2방향 예측을 하는 것이다. 부호화를 행하는 블록을 블록 MB41로 하면, 이 때 필요로 되는 2개의 움직임 벡터는 부호화 완료의 후방 참조 픽처(제2 참조 인덱스로 지정되는 제2 참조 픽처)인 픽처 P44의 같은 위치에 있는 블록 MB42가 가지는 움직임 벡터를 이용하여 결정된다. 이 블록 MB42는 움직임 벡터로서 움직임 벡터 MV45 및 움직임 벡터 MV46의 2개를 갖기 때문에, 구하는 2개의 움직임 벡터 MV43 및 움직임 벡터 MV44를 식 1과 마찬가지로 직접 스케일링을 적용함으로써 산출하는 것은 불가능하다. 그래서 식 7과 같이, 스케일링을 적용하는 움직임 벡터로서 움직임 벡터 MV_REF를 블록 MB42가 가지는 2개의 움직임 벡터의 평균치로부터 결정하고, 이 때의 시간간격 TR_REF를 마찬가지로 평균치로부터 결정한다. 그리고, 식 8에 따라서 움직임 벡터 MV_REF 및 시간간격 TR_REF에 대해 스케일링을 적용함으로써 움직임 벡터 MV43 및 움직임 벡터 MV44를 산출한다. 이 때 시간간격 TR45는 픽처 P44부터 픽처 P45까지, 즉 움직임 벡터 MV45가 참조하는 픽처까지의 시간의 간격을 표시하고, 시간간격 TR46은 움직임 벡터 MV46가 참조하는 픽처까지의 시간의 간격을 표시하고 있다. 또한, 시간간격 TR43은 움직임 벡터 MV43가 참조하는 픽처까지의 시간의 간격을 표시하고, 시간간격 TR44는 시간간격 MV44가 참조하는 픽처까지의 시간 간격을 표시하는 것이다. 이들의 픽처간 시간간격은 실시의 형태 1에서 설명한 것과 마찬가지로, 예를 들면 각 픽처에 부여되는 표시 시간이나 표시 순서를 나타내는 정보, 또는 그 정보의 차에 따라서 결정할 수 있다. 또한, 도 9의 예에서는 부호화의 대상으로 하는 픽처는 이웃하는 픽처를 참조하고 있는데, 이웃하지 않는 픽처를 참조한 경우라도 마찬가지로 취급하는 것이 가능하다.
MV_REF=(MV45+MV46)/2 …식 7(a)
TR_REF=(TR45+TR46)/2 …식7(b)
MV43=-MV_REF/TR_REF×TR43 …식8(a)
MV44= MV_REF/TR_REF×TR44 …식8(b)
이상과 같이 상기 실시의 형태에서는 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 후방에 있는 픽처를 참조하는 다수의 움직임 벡터 를 갖는 경우에, 상기 다수의 움직임 벡터를 이용하여 1개의 움직임 벡터를 생성하고, 스케일링을 적용하여 실제로 움직임 보상에 사용하기 위한 2개의 움직임 벡터를 결정함으로써, 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 B 픽처에 속하는 경우에 있어서도 모순없이 직접 모드를 이용한 픽처간 예측 부호화를 가능하게 하는 부호화 방법을 나타낸다.
또, 도 9에 있어서의 2개의 움직임 벡터 MV43 및 움직임 벡터 MV44를 구할 때, 스케일링을 실시하는 대상이 되는 움직임 벡터 MV_REF 및 시간간격 TR_REF를 산출하기 위해, 움직임 벡터 MV45와 움직임 벡터 MV46의 평균치 및 시간간격 TR45와 시간간격 TR46의 평균치를 구하는 방법으로서, 식 7대신에 식 9를 이용하는 것도 가능하다. 우선, 식 9(a)와 같이 움직임 벡터 MV46에 대해 시간간격이 움직임 벡터 MV45와 같아지도록 스케일링을 실시하여 움직임 벡터 MV46’를 산출한다. 그리고 움직임 벡터 MV46’와 움직임 벡터 MV45의 평균을 구하여 움직임 벡터 MV_REF가 결정된다. 이 때 시간간격 TR_REF는 시간간격 TR41를 그대로 이용하게 된다. 또, 움직임 벡터 MV46에 대해 스케일링을 실시하여 움직임 벡터 MV46’로 하는 대신에 움직임 벡터 MV45에 대해 스케일링을 실시하여 움직임 벡터 MV45’로 하는 경우도 마찬가지로 취급하는 것이 가능하다.
MV46’= MV46/TR46×TR45 …식9(a)
MV_REF=(MV46’+MV45)/2 …식9(b)
TR_REF= TR45 …식9(c)
또, 도 9에 있어서의 2개의 움직임 벡터 MV43 및 움직임 벡터 MV44를 산출할 때에, 스케일링을 실시하는 대상이 되는 움직임 벡터 MV_REF 및 시간간격 TR_REF로서, 식 7과 같이 2개의 움직임 벡터의 평균치를 이용하는 대신에, 식 10과 같이 움직임 벡터를 참조하는 픽처 P44에 대해 시간간격이 짧은 쪽의 픽처 P45를 참조하는 움직임 벡터 MV45 및 시간간격 TR45을 직접 이용하는 것도 가능하다. 마찬가지로, 식 11과 같이 시간간격이 긴 쪽의 픽처 P46를 참조하는 움직임 벡터 MV46 및 시간간격 TR46을 움직임 벡터 MV_REF 및 시간간격 TR_REF로서 직접 이용하는 것도 가능하다. 이 방법에 의해, 움직임 벡터가 참조되는 픽처 P44에 속하는 각각의 블록은 2개의 움직임 벡터 중의 한쪽만을 기억해 두어 움직임 보상을 실현할 수 있으므로, 부호화 장치에 있어서의 움직임 벡터 기억기의 용량을 작게 억제하는 것이 가능해진다.
MV_REF= MV45 …식 10(a)
TR_REF=TR45 …식 10(b)
MV_REF=MV46 …식 11(a)
TR_REF=TR46 …식 11(b)
또한, 도 9에 있어서의 2개의 움직임 벡터 MV43 및 움직임 벡터 MV44를 산출할 때에, 스케일링을 실시하는 대상이 되는 움직임 벡터 MV_REF 및 시간간격 TR_REF로서, 식 7과 같이 2개의 움직임 벡터의 평균치를 이용하는 대신에, 부호화되는 순서가 먼저인 픽처를 참조하는 움직임 벡터를 직접 이용하는 것도 가능하다. 도 10(a)는 도 9와 마찬가지로 동화상으로서 표시되는 순서에서의 픽처의 배열 방법의 참조 관계를 도시하는 것이고, 도 10(b)에서는 도 6의 프레임 메모리(101)에 있어서 부호화되는 순서로 바꿔 배열된 일례를 도시하고 있다. 또, 픽처 P43이 직접 모드에 의해서 부호화를 하는 픽처, 픽처 P44가 이 때에 움직임 벡터가 참조되는 픽처를 도시하고 있다. 도10(b)와 같이 바꿔 배열했을 때, 부호화되는 순서가 먼저인 픽처를 참조하는 움직임 벡터를 직접 이용함으로써, 식 11과 같이 움직임 벡터 MV_REF 및 시간간격 TR_REF로서 움직임 벡터 MV46 및 시간간격 TR46이 직접 적용된다. 마찬가지로, 부호화되는 순서가 후인 픽처를 참조하는 움직임 벡터를 직접 이용하는 것도 가능하다. 이 경우는, 식 10과 같이 움직임 벡터 MV_REF 및 시간간격 TR_REF로서 움직임 벡터 MV45 및 시간간격 TR45가 직접 적용된다. 이 방법에 의해, 움직임 벡터가 참조되는 픽처 P44에 속하는 각각의 블록은 2개의 움직임 벡터 중 한쪽만을 기억해 두어 움직임 보상을 실현할 수 있기 때문에, 부호화 장치에 있어서의 움직임 벡터 기억기의 용량을 작게 억제하는 것이 가능해진다.
또, 직접 모드에 있어서 움직임 벡터를 결정하기 위해서 참조한 픽처가 표시 시간순으로 후방에 있는 2매의 픽처를 참조하는 2개의 움직임 벡터를 가지고 있는 경우, 구하는 2개의 움직임 벡터 MV43 및 움직임 벡터 MV44를 「0」으로 하여 움직임 보상을 하는 것도 가능하다. 이 방법에 의해, 움직임 벡터가 참조되는 픽처 P44에 속하는 각각의 블록은 움직임 벡터를 기억해 둘 필요가 없기 때문에 부호화 장치에 있어서의 움직임 벡터 기억기의 용량을 작게 억제하는 것이 가능해지고, 또한 움직임 벡터 산출을 위한 처리를 생략하는 것이 가능해진다.
또, 직접 모드에 있어서 움직임 벡터를 결정하기 위해 참조한 픽처가 표시 시간순으로 후방에 있는 2매의 픽처를 참조하는 2개의 움직임 벡터를 가지고 있는 경우, 움직임 벡터의 참조를 금지하고, 직접 모드 이외의 예측 부호화만을 적용시키는 것도 가능하다. 도 9의 픽처 P44와 같이 표시 시간순으로 후방에 있는 2매의 픽처를 참조하는 경우는, 표시 시간순으로 전방에 있는 픽처와의 상관이 낮은 가능성을 생각할 수 있으므로, 직접 모드를 금지하여 별도의 예측 방법을 선택함으로써, 보다 정확한 예측 화상을 생성하는 것이 가능해진다.
또, 본 실시의 형태에 있어서는 참조하는 움직임 벡터에 대해 픽처간 시간적 거리를 이용하여 스케일링함으로써, 직접 모드에서 이용하는 움직임 벡터를 계산하는 경우에 대해 설명했는데, 이는 참조하는 움직임 벡터를 정수배하여 계산해도 된다. 여기서, 정수배에 사용되는 정수는 다수 블록 단위 또는 다수 픽처 단위로 부호화 또는 복호화하는 경우에, 변경 가능하게 해도 된다.
또한, 식 7(a), 식 9(b)에 있어서, 움직임 벡터 MV_REF를 계산할 때는 식 7(a), 식 9(b)의 우변을 계산한 후, 소정의 움직임 벡터의 정확도로 반올림 또는 올림해도 된다. 움직임 벡터의 정확도로서는, 1/2 화소, 1/3 화소, 1/4 화소 정확도 등이 있다. 또한 이 움직임 벡터의 정확도는 예를 들면, 블록 단위, 픽처 단위, 시퀀스 단위로 결정할 수 있다. 또한, 식 8(a), 식 8(b), 식 9(a)에 있어서, 움직임 벡터 MV43, 움직임 벡터 MV44, 움직임 벡터 MV46’를 계산할 때에는, 식8(a), 식8(b), 식9(a)의 우변을 계산한 후, 소정의 움직임 벡터의 정확도로 반올림 또는 올림해도 된다.
(실시의 형태 3)
본 발명의 실시의 형태 3의 동화상 복호화 방법을 도 11에 도시한 블록도를 이용하여 설명한다. 단, 실시의 형태 1의 동화상 부호화 방법에서 생성된 부호열이 입력되는 것으로 한다.
우선 입력된 부호열에서 부호열 해석기(601)에 의해서 예측 모드, 움직임 벡터 정보 및 예측 잔차 부호화 데이터 등의 각종의 정보가 추출된다.
예측 모드나 움직임 벡터 정보는 예측 모드/움직임 벡터 복호화부(608)에 대해 출력되고, 예측 잔차 부호화 데이터는 예측 잔차 복호화부(602)에 출력된다. 예측 모드/움직임 벡터 복호화부(608)에서는 예측 모드의 복호화와, 그 예측 모드로 이용하는 움직임 벡터의 복호화를 행한다. 움직임 벡터의 복호화시에는 움직임 벡터 기억부(605)에 기억되는 복호화 완료의 움직임 벡터를 이용한다. 복호화된 예측 모드 및 움직임 벡터는 움직임 보상 복호부(604)에 대해 출력된다. 또한, 복호화된 움직임 벡터는 후의 블록의 움직임 벡터의 복호화로 이용하기 위해, 움직임 벡터 기억부(605)에 기억된다. 움직임 보상 복호부(604)에서는 프레임 메모리(603)에 축적되어 있는 복호화 완료의 픽처 복호화 화상을 참조 픽처로 하여, 입력된 예측 모드나 움직임 벡터 정보에 따라서 예측 화상을 생성한다. 이와 같이 하여 생성된 예측 화상은 가산 연산부(606)에 입력되고, 예측 잔차 복호화부(602)에서 생성된 예측 잔차 화상과의 가산을 행함으로써 복호화 화상이 생성된다. 이상의 실시의 형태는 픽처간 예측 부호화가 행해지는 부호열에 대한 동작인데, 스위치(607)에 의해서 픽처내 예측 부호화가 이루어지는 부호열에 대한 복호화 처리와의 교체가 이루어진다.
이상 복호화의 흐름의 개요를 나타냈는데, 움직임 보상 복호부(604)에서의 처리의 상세에 관해서 이하에 설명한다.
움직임 벡터 정보는 블록마다 또는 블록을 분할한 영역마다 부가되어 있다. 복호화의 대상으로 하고 있는 픽처에 대해 표시 시간순으로 전방 및 후방에 위치하는 복호화 완료의 픽처를 참조 픽처로 하고, 복호화된 움직임 벡터에 의해 그 픽처 내에서 움직임 보상을 하기 위한 예측 화상을 작성한다.
표시 시간순으로 전방 및 후방에 있는 각각 1매씩의 픽처를 참조하여 픽처간 예측 부호화를 행하는 2방향 예측의 하나로서 직접 모드가 있다. 직접 모드에서는 복호화 대상의 블록이 움직임 벡터를 직접 가지지 않는 부호열을 입력으로 하기 때문에, 표시 시간순으로 근방에 있는 복호화 완료 픽처내의 동일한 위치에 있는 블록의 움직임 벡터를 참조함으로써, 실제로 움직임 보상을 행하기 위한 2개의 움직임 벡터를 산출하여 예측 화상을 작성한다.
도 7은 직접 모드에 있어서 움직임 벡터를 결정하기 위해서 참조한 복호화 완료의 픽처가, 표시 시간순으로 전방에 있는 2매의 픽처를 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 도시한 것이다. 픽처 P23이 현재 복호화의 대상으로 하고 있는 픽처이고, 픽처 P22 및 픽처 P24를 참조 픽처로 하여 2방향 예측을 행하는 것이다. 복호화를 하는 블록을 블록 MB21로 하면, 이 때 필요로 되는 2개의 움직임 벡터는 복호화 완료의 후방 참조 픽처(제2 참조 인덱스로 지정되는 제2 참조 픽처)인 픽처 P24의 같은 위치에 있는 블록 MB22가 가지는 움직임 벡터를 이용하여 결정된다. 이 블록 MB22는 움직임 벡터로서 움직임 벡터 MV21 및 움직임 벡터 MV22의 2개를 가지므로, 구하는 2개의 움직임 벡터 MV23 및 움직임 벡터 MV24 를 식 1과 마찬가지로 직접 스케일링을 적용함으로써 산출하는 것은 불가능하다. 그래서 식 2와 같이, 스케일링을 적용하는 움직임 벡터로서 움직임 벡터 MV_REF를 블록 MB22가 가지는 2개의 움직임 벡터의 평균치로부터 산출하고, 그 때의 시간간격 TR_ REF를 마찬가지로 평균치로부터 산출한다. 그리고, 식 3에 의거해 움직임 벡터 MV_REF 및 시간간격 TR_REF에 대해 스케일링을 적용함으로써 움직임 벡터 MV23 및 움직임 벡터 MV24를 산출한다. 이 때 시간간격 TR21은 픽처 P24에서 픽처 P21까지, 즉 움직임 벡터 MV21가 참조하는 픽처까지의 시간의 간격을 표시하고, 시간간격 TR22는 움직임 벡터 MV22가 참조하는 픽처까지의 시간의 간격을 표시하고 있다. 또한, 시간간격 TR23은 움직임 벡터 MV23가 참조하는 픽처까지의 시간의 간격을 표시하고, 시간간격 TR24는 움직임 벡터 MV24가 참조하는 픽처까지의 시간의 간격을 표시하고 있다. 이들 픽처간 시간간격은 예를 들면 각 픽처에 부여되는 표시 시간이나 표시 순서를 표시하는 정보, 또는 그 정보의 차에 따라서 결정할 수 있다. 또한, 도 7의 예에서는 복호화의 대상으로 하는 픽처는 이웃하는 픽처를 참조하고 있지만, 이웃하지 않는 픽처를 참조한 경우라도 마찬가지로 취급하는 것이 가능하다.
이상과 같이 상기 실시의 형태에서는 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 전방에 있는 픽처를 참조하는 복수의 움직임 벡터를 갖는 경우에, 상기 다수의 움직임 벡터를 이용하여 1개의 움직임 벡터를 생성하고, 스케일링을 적용하여 실제로 움직임 보상에 사용하기 위한 2개의 움직임 벡터를 결정함으로써, 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 B 픽처에 속 하는 경우에 있어서도 모순없이 직접 모드를 이용한 픽처간 예측 복호화를 가능하게 하는 복호화 방법을 나타냈다.
또, 도 7에 있어서의 2개의 움직임 벡터 MV23 및 움직임 벡터 MV24를 구할 때에, 스케일링을 실시하는 대상이 되는 움직임 벡터 MV_REF 및 시간간격 TR_REF를 산출하기 위해서, 움직임 벡터 MV21와 움직임 벡터 MV22와의 평균치 및 시간간격 TR21과 시간간격 TR22의 평균치를 구하는 방법으로서, 식 2대신에 식 4를 이용하는 것도 가능하다. 우선, 식 4(a)와 같이 움직임 벡터 MV21에 대해 시간간격이 움직임 벡터 MV22와 같아지도록 스케일링을 실시하여 움직임 벡터 MV21’를 산출한다. 그리고 움직임 벡터 MV21’와 움직임 벡터 MV22의 평균을 구하여 움직임 벡터 MV_REF가 결정된다. 이 때 시간간격 TR_REF는 시간간격 TR22을 그대로 이용하게 된다. 또한, 움직임 벡터 MV21에 대해 스케일링을 실시해 움직임 벡터 MV21’로 하는 대신에 움직임 벡터 MV22에 대해 스케일링을 실시해 움직임 벡터 MV22’로 하는 경우도 마찬가지로 취급하는 것이 가능하다.
또, 도 7에 있어서의 2개의 움직임 벡터 MV23 및 움직임 벡터 MV24를 산출할 때에, 스케일링을 실시하는 대상이 되는 움직임 벡터 MV_REF 및 시간간격 TR_REF로서, 식 2와 같이 2개의 움직임 벡터의 평균치를 이용하는 대신에, 식 5와 같이 움직임 벡터를 참조하는 픽처 P24에 대해 시간간격이 짧은 쪽의 픽처 P22를 참조하는 움직임 벡터 MV22 및 TR22을 직접 이용하는 것도 가능하다. 마찬가지로, 식 6과 같이 시간간격이 긴 쪽의 픽처 P21를 참조하는 움직임 벡터 MV21 및 시간간격 TR21을 움직임 벡터 MV_REF 및 시간간격 TR_REF로서 직접 이용하는 것도 가능하다. 이 방법에 의해, 움직임 벡터가 참조되는 픽처 P24에 속하는 각각의 블록은 2개의 움직임 벡터중 한쪽만을 기억해 두어 움직임 보상을 실현할 수 있으므로, 복호화 장치에 있어서의 움직임 벡터 기억부의 용량을 작게 억제하는 것이 가능해진다.
또, 도 7에 있어서의 2개의 움직임 벡터 MV23 및 움직임 벡터 MV24를 산출할 때에, 스케일링을 실시하는 대상이 되는 움직임 벡터 MV_REF 및 시간간격 TR_REF로서, 식 2와 같이 2개의 움직임 벡터의 평균치를 이용하는 대신에, 복호화되는 순서가 먼저인 픽처를 참조하는 움직임 벡터를 직접 이용하는 것도 가능하다. 도 8(a)는 도 7과 마찬가지로 동화상으로서 표시되는 순서에서의 픽처의 배열방법에 있어서의 참조 관계를 도시한 것이고, 도 8(b)에서는 입력된 부호열의 순서, 즉 복호화 되는 순서의 일례를 도시하고 있다. 또, 픽처 P23이 직접 모드에 의해 복호화를 행하는 픽처, 픽처 P24가 그 때에 움직임 벡터가 참조되는 픽처를 표시하고 있다.
도 8(b)와 같은 배열 순서를 생각했을 때, 복호화 되는 순서가 먼저인 픽처를 참조하는 움직임 벡터를 직접 이용함으로써, 식 5와 같이 움직임 벡터 MV_REF 및 시간간격 TR_REF로서 움직임 벡터 MV22 및 시간간격 TR22이 직접 적용된다. 마찬가지로, 복호화되는 순서가 후인 픽처를 참조하는 움직임 벡터를 직접 이용하는 것도 가능하다. 이 경우는, 식 6과 같이 움직임 벡터 MV_REF 및 시간간격 TR_REF로서 움직임 벡터 MV21 및 시간간격 TR21이 직접 적용된다. 이 방법에 의해, 움직임 벡터가 참조되는 픽처 P24에 속하는 각각의 블록은, 2개의 움직임 벡터중 한쪽만을 기억해 두어 움직임 보상을 실현할 수 있으므로, 복호화 장치에 있어서의 움직임 벡터 기억부의 용량을 작게 억제하는 것이 가능해진다.
또한, 본 실시의 형태에 있어서는, 참조하는 움직임 벡터에 대해 픽처간 시간적 거리를 이용하여 스케일링함으로써, 직접 모드에 있어서 이용하는 움직임 벡터를 계산하는 경우에 대해 설명했는데, 이는 참조하는 움직임 벡터를 정수배하여 계산해도 된다. 여기서, 정수배에 사용되는 정수는 다수 블록 단위 또는 다수 픽처 단위로 부호화 또는 복호화하는 경우에, 변경 가능하게 해도 된다.
(실시의 형태 4)
도 11에 의거한 복호화 처리의 개요는 실시의 형태 3과 완전히 동등하다. 여기서는 직접 모드에 있어서의 2방향 예측의 동작에 관해서 도 9를 이용하여 그 상세를 설명한다. 단, 실시의 형태 2의 동화상 부호화 방법으로 생성된 부호열이 입력되는 것으로 한다.
도 9는 직접 모드에 있어서 움직임 벡터를 결정하기 위해서 참조한 픽처가, 표시 시간순으로 후방에 있는 2매의 픽처를 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 도시한 것이다. 픽처 P43이 현재 복호화 대상으로 하고 있는 픽처이고, 픽처 P42 및 픽처 P44를 참조 픽처로 하여 2방향 예측을 행하는 것이다. 복호화를 행하는 블록을 블록 MB41로 하면, 이 때 필요로 되는 2개의 움직임 벡터는 복호화 완료의 후방 참조 픽처(제2 참조 인덱스로 지정되는 제2 참조 픽처)인 픽처 P44의 같은 위치에 있는 블록 MB42가 가지는 움직임 벡터를 이용하여 결정된다. 이 블록 MB42는 움직임 벡터로서 움직임 벡터 MV45 및 움직임 벡터 MV46의 2개를 가지므로, 구하는 2개의 움직임 벡터 MV43 및 움직임 벡터 MV44를 식 1과 마찬가지로 직접 스케일링을 적용함으로써 산출하는 것은 불가능하다. 그래서 식 7과 같이, 스케일링을 적용하는 움직임 벡터로서 움직임 벡터 MV_REF를 움직임 벡터 MB42가 가지는 2개의 움직임 벡터의 평균치로부터 결정하고, 이 때의 시간간격 TR_REF를 마찬가지로 평균치로부터 결정한다. 그리고, 식 8에 의거해 움직임 벡터 MV_REF 및 시간간격 TR_REF에 대해 스케일링을 적용함으로써 움직임 벡터 MV43 및 움직임 벡터 MV44를 산출한다. 이 때 시간간격 TR45은 픽처 P44부터 픽처 P45까지, 즉 움직임 벡터 MV45가 참조하는 픽처까지의 시간의 간격을, 시간간격 TR46은 움직임 벡터 MV46가 참조하는 픽처까지의 시간의 간격을, 시간간격 TR43은 움직임 벡터 MV43이 참조하는 픽처까지의 시간의 간격을, 시간간격 TR44는 움직임 벡터 MV44가 참조하는 픽처까지의 시간의 간격을 표시한 것이다. 또, 도 9의 예에서 복호화의 대상으로 하는 픽처는 이웃하는 픽처를 참조하고 있는데, 이웃하지 않는 픽처를 참조한 경우라도 마찬가지로 취급하는 것이 가능하다.
이상과 같이 상기 실시의 형태에서는 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 후방에 있는 픽처를 참조하는 다수의 움직임 벡터를 갖는 경우에, 상기 다수의 움직임 벡터를 이용하여 1개의 움직임 벡터를 생성하고, 스케일링을 적용하여 실제로 움직임 보상에 사용하기 위한 2개의 움직임 벡터를 결정함으로써, 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 B 픽처에 속하는 경우에 있어서도 모순없이 직접 모드를 이용한 픽처간 예측 복호화를 가능하게 하는 복호화 방법을 나타냈다.
또한, 도 9에 있어서의 2개의 움직임 벡터 MV43 및 움직임 벡터 MV44를 구할 때에, 스케일링을 실시하는 대상이 되는 움직임 벡터 MV_REF 및 시간간격 TR_REF를 산출하기 위해, 움직임 벡터 MV45와 움직임 벡터 MV46의 평균치 및 시간간격 TR45와 시간간격 TR46의 평균치를 구하는 방법으로서, 식 7대신에 식 9를 이용하는 것도 가능하다. 우선, 식 9(a)와 같이 움직임 벡터 MV46에 대해 시간간격이 움직임 벡터 MV45와 같아지도록 스케일링을 실시하여 움직임 벡터 MV46’을 산출한다. 그리고 움직임 벡터 MV46’과 움직임 벡터 MV45의 평균을 구하여 움직임 벡터 MV_REF가 결정된다. 이 때 시간간격 TR_ REF는 시간간격 TR45를 그대로 이용하게 된다. 또한, 움직임 벡터 MV46에 대해 스케일링을 실시해 움직임 벡터 MV46’으로 하는 대신에 움직임 벡터 MV45에 대해 스케일링을 실시해 움직임 벡터 MV45’로 하는 경우도 마찬가지로 취급하는 것이 가능하다.
또, 도 9에 있어서의 2개의 움직임 벡터 MV43 및 움직임 벡터 MV44를 산출할 때에, 스케일링을 실시하는 대상이 되는 움직임 벡터 MV_REF 및 시간간격 TR_REF로서, 식 7과 같이 2개의 움직임 벡터의 평균치를 이용하는 대신에, 식 10과 같이 움직임 벡터를 참조하는 픽처 P44에 대해 시간간격이 짧은 쪽의 픽처 P45를 참조하는 움직임 벡터 MV45 및 시간간격 TR45을 직접 이용하는 것도 가능하다. 마찬가지로, 식 11과 같이 시간간격이 긴 쪽의 픽처 P46을 참조하는 움직임 벡터 MV46 및 시간간격 TR46을 움직임 벡터 MV_REF 및 시간간격 TR_REF로서 직접 이용하는 것도 가능하다. 이 방법에 의해, 움직임 벡터가 참조되는 픽처 P44에 속하는 각각의 블록은 2개의 움직임 벡터중의 한쪽만을 기억해 두어 움직임 보상을 실현할 수 있으므로, 복호화 장치에 있어서의 움직임 벡터 기억부의 용량을 작게 억제하는 것이 가능해진다.
또, 도 9에 있어서의 2개의 움직임 벡터 MV43 및 움직임 벡터 MV44를 산출할 때에, 스케일링을 실시하는 대상이 되는 움직임 벡터 MV_REF 및 시간간격 TR_REF로서, 식 7과 같이 2개의 움직임 벡터의 평균치를 이용하는 대신에, 복호화되는 순서가 먼저인 픽처를 참조하는 움직임 벡터를 직접 이용하는 것도 가능하다. 도 10(a)는 도 9와 마찬가지로 동화상으로서 표시되는 순서에서의 픽처의 배열방법에 있어서의 참조 관계를 도시한 것이고, 도 10(b)에서는 입력된 부호열의 순서, 즉 복호화되는 순서의 일례를 도시하고 있다. 또, 픽처 P43이 직접 모드에 의해서 부호화를 행하는 픽처, 픽처 P44가 이 때에 움직임 벡터가 참조되는 픽처를 표시하고 있다. 도 10(b)와 같은 배열 순서를 생각했을 때, 복호화되는 순서가 먼저인 픽처를 참조하는 움직임 벡터를 직접 이용하는 것으로부터, 식 11과 같이 움직임 벡터 MV_REF 및 시간간격 TR_REF로서 움직임 벡터 MV46 및 시간간격 TR46이 직접 적용된다. 마찬가지로, 복호화되는 순서가 후인 픽처를 참조하는 움직임 벡터를 직접 이용하는 것도 가능하다. 이 경우는, 식 10과 같이 움직임 벡터 MV_REF 및 시간간격 TR_REF로서 움직임 벡터 MV45 및 시간간격 TR45가 직접 적용된다. 이 방법에 의해, 움직임 벡터가 참조되는 픽처 P44에 속하는 각각의 블록은 2개의 움직임 벡터 중의 한쪽만을 기억해 두어 움직임 보상을 실현할 수 있으므로, 복호화 장치에 있어서의 움직임 벡터 기억부의 용량을 작게 억제하는 것이 가능해진다.
또, 직접 모드에 있어서 움직임 벡터를 결정하기 위해서 참조한 블록이 표시 시간순으로 후방에 있는 2매의 픽처를 참조하는 2개의 움직임 벡터를 가진 경우, 구하는 2개의 움직임 벡터 MV43 및 움직임 벡터 MV44를 「0」으로 하여 움직임 보 상을 행하는 것도 가능하다. 이 방법에 의해, 움직임 벡터가 참조되는 픽처 P44에 속하는 각각의 블록은 움직임 벡터를 기억해 둘 필요가 없으므로 복호화 장치에 있어서의 움직임 벡터 기억부의 용량을 작게 억제하는 것이 가능해지고, 또한 움직임 벡터 산출을 위한 처리를 생략하는 것이 가능해진다.
또, 본 실시의 형태에 있어서는, 참조하는 움직임 벡터에 대해 픽처간 시간적 거리를 이용하여 스케일링함으로써, 직접 모드에 있어서 이용하는 움직임 벡터를 계산하는 경우에 대해 설명했는데, 이는 참조하는 움직임 벡터를 정수배하여 계산해도 된다. 여기서, 정수배에 사용되는 정수는 다수 블록 단위 또는 다수 픽처 단위로 부호화 또는 복호화하는 경우에, 변경 가능하게 해도 된다.
(실시의 형태 5)
상기 실시의 형태 1 내지 실시의 형태 4에 나타낸 부호화 방법 또는 복호화 방법에 한정되지 않고, 이하에 나타내는 움직임 벡터 계산방법을 이용하여 부호화 방법 또는 복호화 방법을 실현할 수 있다.
도 12는 직접 모드에 있어서 움직임 벡터를 계산하기 위해서 참조하는 부호화 완료 블록 또는 복호화 완료 블록이, 표시 시간순으로 전방에 있는 2매의 픽처를 참조하는 2개의 움직임 벡터를 가지는 경우의 동작을 도시한 것이다. 픽처 P23이 현재 부호화 또는 복호화의 대상으로 하고 있는 픽처이다. 부호화 또는 복호화를 행하는 블록을 블록 MB1로 하면, 이 때 필요로 되는 2개의 움직임 벡터는 부호화 완료 또는 복호화 완료의 후방 참조 픽처(제2 참조 인덱스로 지정되는 제2 참조 픽처) P24의 같은 위치에 있는 블록 MB2가 가지는 움직임 벡터를 이용하여 결정된 다. 또, 도 12에 있어서, 블록 MB1이 처리 대상 블록이고, 블록 MB1와 블록 MB2는 픽처상에서 서로 동 위치에 있는 블록이며, 움직임 벡터 MV21와 움직임 벡터 MV22는 블록 MB2을 부호화 또는 복호화할 때 이용한 움직임 벡터이고, 각각 픽처 P21, 픽처 P22를 참조하고 있다. 또한, 픽처 P21, 픽처 P22, 픽처 P24는 부호화 완료 픽처 또는 복호화 완료 픽처이다. 또한, 시간간격 TR21은 픽처 P21과 픽처 P24간의 시간간격, 시간간격 TR22는 픽처 P22와 픽처 P24간의 시간간격, 시간간격 TR21’은 픽처 P21과 픽처 P23간의 시간간격, 시간간격 TR24’는 픽처 P23과 픽처 P24간의 시간간격을 표시한다.
움직임 벡터 계산방법으로는 도 12에 도시하는 바와같이 참조 픽처 P24에 있어서의 블록 MB2의 움직임 벡터 중 먼저 부호화 또는 복호화된 전방향 움직임 벡터(제1 움직임 벡터) MV21만을 이용하여, 블록 MB1의 움직임 벡터 MV21’, 움직임 벡터 MV24’는 이하의 식에 의해 계산된다.
MV21’= MV21×TR21’/TR21
MV24’=-MV21×TR24’/TR21
그리고 움직임 벡터 MV21’,움직임 벡터 MV24’를 이용하여 픽처 P21, 픽처 P24로부터 2방향 예측을 행한다. 또한, 움직임 벡터 MV21만을 이용하여 블록 MB1의 움직임 벡터 MV21’와 움직임 벡터 MV24’를 계산하는 대신에, 참조 픽처 P24에 있어서의 블록 MB2의 움직임 벡터중 후에 부호화 또는 복호화된 움직임 벡터(제2 움직임 벡터) MV22만을 이용하여 블록 MB1의 움직임 벡터를 계산해도 된다. 또한, 실시의 형태 1 내지 실시의 형태 4에 나타낸 바와 같이, 움직임 벡터 MV21과 움직 임 벡터 MV22의 양자를 이용하여, 블록 MB1의 움직임 벡터를 결정해도 된다. 어느 것이나 움직임 벡터 MV21와 움직임 벡터 MV22중 어느 한쪽을 선택하는 경우에, 어느 것을 선택할지는, 시간적으로 먼저 부호화 또는 복호화된 블록의 움직임 벡터를 선택하도록 해도 되고, 부호화 장치, 복호화 장치로 어느 것을 선택할지 미리 임의로 설정해 두어도 된다. 또한, 픽처 P21이 단시간 메모리(Short Term Buffer)에 있거나 장시간 메모리(Long Term Buffer)에 있어도, 어느 쪽이나 움직임 보상하는 것은 가능하다. 단시간 메모리, 장시간 메모리에 대해서는 후술한다.
도 13은 직접 모드에 있어서 움직임 벡터를 계산하기 위해서 참조하는 부호화 완료 블록 또는 복호화 완료 블록이, 표시 시간순으로 후방에 있는 2매의 픽처를 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 도시한 것이다. 픽처 P22가 현재 부호화 또는 복호화의 대상으로 하고 있는 픽처이다. 부호화 또는 복호화를 행하는 블록을 블록 MB1로 하면, 이 때 필요로 되는 2개의 움직임 벡터는 부호화 완료의 또는 복호화 완료의 후방 참조 픽처(제2 참조 픽처) P23의 동일한 위치에 있는 블록 MB2가 가지는 움직임 벡터를 이용하여 결정된다. 또한, 도 13에 있어서, 블록 MB1이 처리 대상 블록이고, 블록 MB1과 블록 MB2는 픽처상에서 서로 동 위치에 있는 블록이며, 움직임 벡터 MV24와 움직임 벡터 MV25는 블록 MB2를 부호화 또는 복호화할 때 이용한 움직임 벡터이고, 각각 픽처 P24, 픽처 P25를 참조하고 있다. 또한, 픽처 P21, 픽처 P23, 픽처 P24, 픽처 P25는 부호화 완료 픽처 또는 복호화 완료 픽처이다. 또한, 시간간격 TR24는 픽처 P23과 픽처 P24간의 시간간격, 시간간격 TR25는 픽처 P23과 픽처 P25간의 시간간격, 시간간격 TR24’는 픽처 P22와 픽처 P24간의 시간간격, 시간간격 TR21’은 픽처 P21과 픽처 P22간의 시간간격을 표시한다.
움직임 벡터 계산방법으로는 도 13에 도시하는 바와 같이 참조 픽처 P23에 있어서의 블록 MB2의 픽처 P24에의 움직임 벡터 MV24만을 이용하여, 블록 MB1의 움직임 벡터 MV21’, 움직임 벡터 MV24’는 이하의 식에 의해 계산된다.
MV21’=-MV24×TR21’/TR24
MV24’= MV24×TR24’/TR24
그리고 움직임 벡터 MV21’, 움직임 벡터 MV24’를 이용하여 픽처 P21, 픽처 P24로부터 2방향 예측을 행한다.
또, 도 14에 도시하는 바와 같이 참조 픽처 P23에 있어서의 블록 MB2의 픽처 P25로의 움직임 벡터 MV25만을 이용한 경우, 블록 MB1의 움직임 벡터 MV21’, 움직임 벡터 MV25’는 이하의 식에 의해 계산된다. 또, 시간간격 TR24는 픽처 P23과 픽처 P24간의 시간간격, 시간간격 TR25는 픽처 P23과 픽처 P25간의 시간간격, 시간간격 TR25’는 픽처 P22와 픽처 P25간의 시간간격, 시간간격 TR21’은 픽처 P21과 픽처 P22간의 시간간격을 표시한다.
MV21’=-MV25×TR21’/TR25
MV25’= MV25×TR25’/TR25
그리고 움직임 벡터 MV21’, 움직임 벡터 MV25’를 이용하여 픽처 P21, 픽처 P24로부터 2방향 예측을 행한다.
도 15는 직접 모드에 있어서 움직임 벡터를 계산하기 위해서 참조하는 부호 화 완료 블록 또는 복호화 완료 블록이, 표시 시간순으로 전방에 있는 1매의 픽처를 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 도시한 것이다. 픽처 P23은 현재 부호화 또는 복호화의 대상으로 하고 있는 픽처이다. 부호화 또는 복호화를 행하는 블록을 블록 MB1으로 하면, 이 때 필요로 되는 2개의 움직임 벡터는 부호화 완료 또는 복호화 완료의 후방 참조 픽처(제2 참조 인덱스로 지정되는 제2 참조 픽처) P24의 같은 위치에 있는 블록 MB2가 가지는 움직임 벡터를 이용하여 결정된다. 또, 도 15에 있어서, 블록 MB1이 처리 대상 블록이고, 블록 MB1과 블록 MB2는 픽처상에서 서로 동 위치에 있는 블록이다. 움직임 벡터 MV21A와 움직임 벡터 MV21B는 블록 MB2을 부호화 또는 복호화할 때에 이용한 전방향 움직임 벡터로, 모두 픽처 P21를 참조하고 있다. 또한, 픽처 P21, 픽처 P22, 픽처 P24는 부호화 완료 픽처 또는 복호화 완료 픽처이다. 또한, 시간간격 TR21A, 시간간격 TR21B는 픽처 P21과 픽처 P24간의 시간간격, 시간간격 TR21’은 픽처 P21과 픽처 P23간의 시간간격, 시간간격 TR24’는 픽처 P23과 픽처 P24간의 시간간격을 표시한다.
움직임 벡터 계산방법으로는 도 15에 도시하는 바와 같이 참조 픽처 P24에 있어서의 블록 MB2의 픽처 P21에의 전방향 움직임 벡터 MV21A만을 이용하고, 블록 MB1의 움직임 벡터 MV21A’, MV24’는 이하의 식에 의해 계산된다.
MV21A’=MV21A×TR21’/TR21A
MV24’=-MV21A×TR24’/TR21A
그리고 움직임 벡터 MV21A’, 움직임 벡터 MV24’를 이용하여 픽처 P21, 픽 처 P24로부터 2방향 예측을 행한다.
또, 참조 픽처 P24에 있어서의 블록 MB2의 픽처 P21에의 전방향 움직임 벡터 MV21B만을 이용하여, 블록 MB1의 움직임 벡터를 계산해도 된다. 또한, 실시의 형태1 내지 실시의 형태4에 나타낸 바와같이, 전방향 움직임 벡터 MV21A와 전방향 움직임 벡터 MV21B의 양자를 이용하여, 블록 MB1에 대한 움직임 벡터를 결정해도 된다. 어느 것이나, 전방향 움직임 벡터 MV21A와 전방향 움직임 벡터 MV21B중 어느 한쪽을 선택하는 경우에, 어느 것을 선택할지는, 시간적으로 먼저 부호화 또는 복호화되어 있는(부호열중에 먼저 기술되어 있다) 움직임 벡터를 선택하도록 해도 되고, 부호화 장치, 복호화 장치로 임의로 설정해도 된다. 여기서, 시간적으로 먼저 부호화 또는 복호화되어 있는 움직임 벡터는 제1 움직임 벡터를 의미한다. 또한, 픽처 P21이 단시간 메모리(Short Term Buffer)에 있거나 장시간 메모리(Long Term Buffer)에 있더라도, 어느 쪽이나 움직임 보상하는 것은 가능하다. 단시간 메모리, 장시간 메모리에 대해서는 후술한다.
또, 본 실시의 형태에 있어서는 참조하는 움직임 벡터에 대해 픽처간의 시간적 거리를 이용하여 스케일링함으로써, 직접 모드에서 이용하는 움직임 벡터를 계산하는 경우에 대해 설명했는데, 이는 참조하는 움직임 벡터를 정수배하여 계산해도 된다. 여기서, 정수배에 사용되는 정수는 다수 블록 단위 또는 다수 픽처 단위로 부호화 또는 복호화하는 경우에, 변경 가능하게 해도 된다.
또한, 상기의 움직임 벡터 MV21’, 움직임 벡터 MV24’, 움직임 벡터 MV25’ 및 움직임 벡터 MV21A’의 계산식에 있어서는 각 식의 우변을 계산한 후, 소정의 움직임 벡터의 정확도로 반올림 또는 올림해도 된다. 움직임 벡터의 정확도로서는 1/2화소, 1/3화소, 1/4화소 정확도 등이 있다. 또한 이 움직임 벡터의 정확도는 예를 들면, 블록 단위, 픽처 단위, 시퀀스 단위로 결정할 수 있다.
(실시의 형태 6)
본 실시의 형태 6에 있어서는, 직접 모드에 있어서 대상 움직임 벡터를 결정하기 위해서 이용한 참조 픽처가 표시 시간순으로 전방에 있는 2매의 픽처를 참조하는 2개의 전방향 움직임 벡터를 가지는 경우에, 2개의 전방향 움직임 벡터 중 한쪽만을 스케일링하여 대상 움직임 벡터를 계산할 수 있는 방법에 대해 도 16 내지 도 18을 이용하여 설명한다. 또한, 블록 MB1이 처리 대상 블록이고, 블록 MB1과 블록 MB2는 픽처상에서 서로 동 위치에 있는 블록이며, 움직임 벡터 MV21과 움직임 벡터 MV22는 블록 MB2을 부호화 또는 복호화할 때 이용한 전방향 움직임 벡터이고, 각각 픽처 P21, 픽처 P22를 참조하고 있다. 또한, 픽처 P21, 픽처 P22, 픽처 P24는 부호화 완료 픽처 또는 복호화 완료 픽처이다. 또한, 시간간격 TR21은 픽처 P21과 픽처 P24간의 시간간격, 시간간격 TR22는 픽처 P22와 픽처 P24간의 시간간격, 시간간격 TR21’은 픽처 P21과 픽처 P23간의 시간간격, 시간간격 TR22’는 픽처 P22와 픽처 P23간의 시간간격을 표시한다.
제1 방법으로는 도 16에 도시하는 바와 같이 참조 픽처 P24에 있어서의 블록 MB2가, 픽처 P21에의 전방향 움직임 벡터 MV21과, 픽처 P22에의 전방향 움직임 벡터 MV22의 2개의 전방향 움직임 벡터를 가질 때, 대상 픽처 P23에 표시 시간순으로 가까운 픽처 P22에의 움직임 벡터 MV22만을 이용하고, 블록 MB1의 움직임 벡터 MV22’는 이하의 식에 의해 계산된다.
MV22’= MV22×TR22’/TR22
그리고 움직임 벡터 MV22’를 이용하여 픽처 P22로부터 움직임 보상을 행한다.
제2 방법으로는 도 17에 도시하는 바와 같이 참조 픽처 P24에 있어서의 블록 MB2가 픽처 P21에의 전방향 움직임 벡터 MV21과 픽처 P22에의 전방향 움직임 벡터 MV22의 2개의 전방향 움직임 벡터를 가질 때, 대상 픽처 P23에 표시 시간순으로 먼 픽처 P21에의 움직임 벡터 MV21만을 이용하고, 블록 MB1의 움직임 벡터 MV21’는 이하의 식에 의해 계산된다.
MV21’= MV21×TR21’/TR21
그리고 움직임 벡터 MV21’를 이용하여 픽처 P21로부터 움직임 보상을 행한다.
이들 제1, 제2 방법에 의해, 움직임 벡터가 참조되는 참조 픽처 P24에 속하는 블록 MB2는 2개의 움직임 벡터중의 한쪽만을 기억해 두어 움직임 보상을 실현할 수 있으므로, 움직임 벡터 기억부의 용량을 작게 억제하는 것이 가능해진다.
또, 전방향 움직임 벡터 MV21를 이용하면서, 실시의 형태 1과 마찬가지로 표시 시간순으로 근방의 픽처인 픽처 P22로부터 움직임 보상을 행하는 것도 가능하다. 이 때 이용하는 움직임 벡터 MVN(도시하지 않음)는 이하의 식에 의해 계산된다.
MVN= MV21×TR22’/TR21
또, 제3 방법으로서, 도 18에 도시하는 바와 같이 상기에서 구한 움직임 벡터 MV21’와 움직임 벡터 MV22’를 이용하여 각각 픽처 P21과 픽처 P22로부터 움직임 보상 블록을 취득하여, 그 평균 화상을 움직임 보상에 있어서의 보간 화상으로 한다.
이 제3 방법에 의해, 계산량은 증가하지만, 움직임 보상의 정확도는 향상된다.
또한, 상기 움직임 벡터 MVN과 움직임 벡터 MV22’를 이용하여 픽처 P22로부터 움직임 보상 블록을 취득하고, 그 평균 화상을 움직임 보상에 있어서의 보간 화상으로 하는 것도 가능하다.
또한, 본 실시의 형태에 있어서는 참조하는 움직임 벡터에 대해 픽처간 시간적 거리를 이용하여 스케일링함으로써, 직접 모드에 있어서 이용하는 움직임 벡터를 계산하는 경우에 대해 설명했는데, 이는 참조하는 움직임 벡터를 정수배하여 계산해도 된다. 여기서, 정수배에 사용되는 정수는 다수 블록 단위 또는 다수 픽처 단위로 부호화 또는 복호화 하는 경우에, 변경 가능하게 해도 된다.
또, 상기의 움직임 벡터 MV21’, 움직임 벡터 MV22’, 움직임 벡터 MVN의 계산식에 있어서는, 각 식의 우변을 계산한 후, 소정의 움직임 벡터의 정확도로 반올림 또는 올림해도 된다. 움직임 벡터의 정확도로서는 1/2화소, 1/3화소, 1/4화소 정확도 등이 있다. 또한 이 움직임 벡터의 정확도는 예를 들면, 블록 단위, 픽처 단위, 시퀀스 단위로 결정할 수 있다.
(실시의 형태 7)
상기 실시의 형태 6에서는 직접 모드에 있어서 부호화 또는 복호화 대상 블록의 움직임 벡터를 결정하기 위해서 이용한 참조 픽처가, 표시 시간순으로 전방에 있는 2매의 픽처를 참조하는 2개의 전방향 움직임 벡터를 가지고 있는 경우에 대해 기술했는데, 표시 시간순으로 후방에 있는 2매의 픽처를 참조하는 2개의 후방향 움직임 벡터(제2 참조 인덱스로 참조 픽처가 지정되는 제2 움직임 벡터)를 가지는 경우에 대해서도 마찬가지로, 2개의 후방향 움직임 벡터 중 한쪽만을 스케일링하여 대상 움직임 벡터를 계산할 수 있다. 이하, 도 19 내지 도 22를 이용하여 설명한다. 또한, 블록 MB1이 처리 대상 블록이고, 블록 MB1와 블록 MB2는 픽처상에서 서로 동 위치에 있는 블록이고, 움직임 벡터 MV24와 움직임 벡터 MV25는 움직임 벡터 MB2를 부호화 또는 복호화할 때 이용한 후방향 움직임 벡터(제2 참조 인덱스로 참조 픽처가 지정되는 제2 움직임 벡터)이다. 또한, 픽처 P21, 픽처 P23, 픽처 P24 및 픽처 P25는 부호화 완료 픽처 또는 복호화 완료 픽처이다. 또한, 시간간격 TR24는 픽처 P23과 픽처 P24간의 시간간격, 시간간격 TR25는 픽처 P23과 픽처 P25간의 시간간격, 시간간격 TR24’는 픽처 P22와 픽처 P24간의 시간간격, 시간간격 TR25’는 픽처 P22와 픽처 P25간의 시간간격을 표시한다.
제1 방법으로는 도 19에 도시하는 바와같이 참조 픽처 P23에 있어서의 블록 MB2가 픽처 P24에의 후방향 움직임 벡터 MV24와 픽처 P25에의 후 방향 움직임 벡터 MV25의 2개의 후방향 움직임 벡터를 가질 때, 대상 픽처 P22에 표시 시간순으로 가까운 픽처 P24에의 후방향 움직임 벡터 MV24만을 이용하고, 블록 MB1의 움직임 벡터 MV24’는 이하의 식에 의해 계산된다.
MV24’= MV24×TR24’/TR24
그리고 움직임 벡터 MV24’를 이용하여 픽처 P24로부터 움직임 보상을 행한다.
또한, 후방향 움직임 벡터 MV24를 이용하면서, 실시의 형태 1과 마찬가지로 표시 시간순으로 근방의 픽처인 픽처 P23으로부터 움직임 보상을 행하는 것도 가능하다. 이 때 이용하는 움직임 벡터 MVN1(도시하지 않음)은 이하의 식에 의해 계산된다.
MVN1= MV24×TRN1/TR24
제2 방법으로는 도 20에 도시하는 바와 같이 참조 픽처 P23에 있어서의 블록 MB2이 픽처 P24에의 후방향 움직임 벡터 MV24와 픽처 P25에의 후방향 움직임 벡터 MV25의 2개의 후방향 움직임 벡터를 가질 때, 대상 픽처 P23에 표시 시간순으로 먼 픽처 P25에의 후방향 움직임 벡터 MV25만을 이용하고, 블록 MB1의 움직임 벡터 MV25’는 이하의 식에 의해 계산된다.
MV25’= MV25×TR25’/TR25
그리고 움직임 벡터 MV25’를 이용하여 픽처 P25로부터 움직임 보상을 행한다.
이들 제1, 제2 방법에 의해, 움직임 벡터가 참조되는 참조 픽처 P23에 속하는 블록 MB2는 2개의 움직임 벡터중 한쪽만을 기억해 두어 움직임 보상을 실현할 수 있으므로, 움직임 벡터 기억부의 용량을 작게 억제하는 것이 가능해진다.
또한, 후방향 움직임 벡터 MV25를 이용하면서, 실시의 형태 1과 마찬가지로 표시 시간순으로 근방의 픽처인 픽처 P23으로부터 움직임 보상을 행하는 것도 가능하다. 이 때에 이용하는 움직임 벡터 MVN2(도시하지 않음)는 이하의 식에 의해 계산된다.
MVN2= MV25×TRN1/TR25
또한, 제3 방법으로서, 도 21에 도시하는 바와같이 상기에서 구한 움직임 벡터 MV24’와 움직임 벡터 MV25’를 이용하여 각각 픽처 P24와 픽처 P25로부터 움직임 보상 블록을 취득하고, 그 평균 화상을 움직임 보상에 있어서의 보간 화상으로 한다.
이 제3 방법에 의해, 계산량은 증가하지만, 대상 픽처 P22의 정확도는 향상된다.
또, 상기 움직임 벡터 MVN1와 움직임 벡터 MVN2를 이용하여 픽처 P24로부터 움직임 보상 블록을 취득하고, 그 평균 화상을 움직임 보상에 있어서의 보간 화상으로 하는 것도 가능하다.
또한, 도 22에 도시하는 바와 같이 직접 모드에 있어서 대상 움직임 벡터를 결정하기 위해서 이용한 참조 픽처가 표시 시간순으로 후방에 있는 1매의 픽처를 참조하는 1개의 후방향 움직임 벡터를 가지고 있는 경우는, 예를 들면 이하의 식에 의해 움직임 벡터 MV24’가 계산된다.
MV24’= MV24×TR24’/TR24
그리고 움직임 벡터 MV24’를 이용하여 픽처 P24로부터 움직임 보상을 행한다.
또, 후방향 움직임 벡터 MV25를 이용하면서, 실시의 형태 1과 마찬가지로 표시 시간순으로 근방의 픽처인 픽처 P23로부터 움직임 보상을 행하는 것도 가능하다. 이 때 이용하는 움직임 벡터 MVN3(도시하지 않음)는 이하의 식에 의해 계산된다.
MVN3= MV24×TRN1/TR24
또, 본 실시의 형태에 있어서는, 도 19에서 도 22를 이용하여, 표시 시간순으로 후방에 있는 2매의 픽처를 참조하는 2개의 후방향 움직임 벡터를 가지고 있는 경우 및 표시 시간순으로 후방에 있는 1매의 픽처를 참조하는 1개의 후방향 움직임 벡터를 가지고 있는 경우에, 그 후방향 움직임 벡터를 스케일링하여 대상 움직임 벡터를 계산하는 경우에 대해 설명했는데, 이는 후방 움직임 벡터를 이용하지 않고, 동일 픽처내의 주변 블록의 움직임 벡터를 참조하여 대상 움직임 벡터를 계산해도 되고, 픽처내 부호화가 행해지는 경우에 동일 픽처내의 주변 블록의 움직임 벡터를 참조하여 대상 움직임 벡터를 계산해도 된다. 우선, 제1의 계산 방법에 대해 기술한다. 도 23은 이 때에 참조하는 움직임 벡터와 대상 블록과의 위치 관계를 도시한 것이다. 블록 MB1이 대상블록이고, A, B, C의 위치관계에 있는 3개의 화소를 포함하는 블록의 움직임 벡터를 참조한다. 단, 화소 C의 위치가 화면외이거나, 부호화/복호화가 끝나지 않은 상태여서 참조 불가능하게 되는 경우에는, 화소 C를 포함하는 블록 대신에 화소 D를 포함하는 블록의 움직임 벡터를 이용하는 것으로 한다. 참조의 대상이 된 A, B, C의 화소를 포함하는 3개의 블록이 가지는 움직임 벡터의 중앙값을 구함으로써, 실제로 직접 모드에서 사용하는 움직임 벡터 로 한다. 3개의 블록이 가지는 움직임 벡터의 중앙값을 구함으로써, 3개의 움직임 벡터중 어느 움직임 벡터를 선택했는가라는 부가정보를 부호열중에 기술할 필요가 없고, 또한 블록 MB1의 실제 움직임에 가까운 움직임을 표현하는 움직임 벡터를 얻을 수 있다. 이 경우, 결정한 움직임 벡터를 이용하여, 전방 참조(제1 참조 픽처에의 참조)만으로 움직임 보상해도 되고, 그 결정한 움직임 벡터와 평행한 움직임 벡터를 이용하여, 2방향 참조(제1 참조 픽처 및 제2 참조 픽처에의 참조)로 움직임 보상해도 된다.
다음에, 제2의 계산방법에 대해 기술한다.
제2의 계산방법에서는 제1의 계산방법과 같이 중앙값을 구하지 않고, 참조의 대상이 된 A, B, C의 화소를 포함하는 3개의 블록이 가지는 움직임 벡터 중에서, 부호화 효율이 제일 높아지는 움직임 벡터를 구하여 실제로 직접 모드에서 사용하는 움직임 벡터로 한다. 이 경우, 결정한 움직임 벡터를 이용하여, 전방 참조(제1 참조 픽처에의 참조)만으로 움직임 보상해도 되고, 그 결정한 움직임 벡터와 평행한 움직임 벡터를 이용하여, 2방향 참조(제1 참조 픽처와 제2 참조 픽처를 이용한 참조)로 움직임 보상해도 된다. 부호화 효율이 가장 높은 움직임 벡터를 표시하는 정보는 예를 들면 도 24(a)에 도시하는 바와 같이, 모드 선택부(107)로부터 출력되는 직접 모드를 표시하는 정보와 함께, 부호열 생성부(103)에 의해서 생성되는 부호열에서의 블록의 헤더 영역에 부가된다. 또한, 도 24(b)에 도시하는 바와 같이 부호화 효율이 제일 높은 벡터를 표시하는 정보는 매크로 블록의 헤더 영역에 부가해도 된다. 또한, 부호화 효율이 제일 높은 움직임 벡터를 표시하는 정보란, 예를 들면, 참조의 대상이 된 화소를 포함하는 블록을 식별하는 번호이고, 블록마다 주어지는 식별 번호이다. 또한, 식별 번호로 블록이 식별될 때, 블록마다 부여한 식별 번호를 1개만 이용하여, 그 1개의 식별 번호에 대응하는 블록을 부호화했을 때에 이용한 움직임 벡터 중 한쪽만을 이용하여 부호화 효율이 가장 높아지는 움직임 벡터를 표시하도록 하거나, 움직임 벡터가 다수 있을 때에 다수의 움직임 벡터를 이용하여 부호화 효율이 가장 높아지는 움직임 벡터를 표시하도록 해도 된다. 또는, 2방향 참조(제1 참조 픽처 및 제2 참조 픽처에의 참조)의 각각의 움직임 벡터마다 블록마다 주어진 식별 번호를 이용하여, 부호화 효율이 가장 높아지는 움직임 벡터를 표시하도록 해도 된다. 이러한 움직임 벡터의 선택 방법을 이용함으로써, 반드시 부호화 효율이 가장 높아지는 움직임 벡터를 구할 수 있다. 단, 어느 움직임 벡터를 선택할지를 표시하는 부가 정보를 부호열중에 기술하지 않으면 안되므로, 이를 위한 부호량은 여분으로 필요해진다. 또한, 제3의 계산 방법에 대해 기술한다.
제3의 계산 방법에서는 움직임 벡터가 참조하는 참조 픽처의 참조 인덱스의 값이 가장 작아지는 움직임 벡터를 직접 모드에서 사용하는 움직임 벡터로 한다. 참조 인덱스가 최소라는 것은 일반적으로는 표시 시간순으로 가까운 픽처를 참조하고 있는, 또는 부호화 효율이 가장 높아지는 움직임 벡터이다. 따라서, 이러한 움직임 벡터의 선택 방법을 이용함으로써, 표시 시간순으로 가장 가까운 또는 부호화 효율이 가장 높아지는 픽처를 참조하는 움직임 벡터를 이용하여, 직접 모드로 이용하는 움직임 벡터를 생성하게 되어, 부호화 효율의 향상을 도모할 수 있다.
또한, 3개의 움직임 벡터 중 3개 모두 동일한 참조 픽처를 참조하고 있는 경우는, 3개의 움직임 벡터의 중앙값을 구하도록 하면 된다. 또한, 3개의 움직임 벡터 중 참조 인덱스의 값이 가장 작은 참조 픽처를 참조하는 움직임 벡터가 2개 있는 경우는 예를 들면, 2개의 움직임 벡터 중, 어느 한쪽을 고정적으로 선택하도록 하면 된다. 도 23을 이용하여 예를 나타내면, 화소 A, 화소 B 및 화소 C를 포함하는 3개의 블록이 가지는 움직임 벡터 중, 화소 A 및 화소 B를 포함하는 2개의 블록이 참조 인덱스의 값이 가장 작고, 또한 동일한 참조 픽처를 참조하는 경우, 화소 A를 포함하는 블록이 가지는 움직임 벡터를 구하도록 하면 된다. 단, 각각 화소 A, 화소 B, 화소 C를 포함하는 3개의 블록이 가지는 움직임 벡터 중, 화소 A, 화소 C를 포함하는 2개의 블록이 참조 인덱스의 값이 가장 작고, 또한 동일한 참조 픽처를 참조하는 경우, 블록 BL1에 위치 관계에서 가까운 화소 A를 포함하는 블록이 가지는 움직임 벡터를 구하도록 하면 된다.
또한, 상기 중앙값은 각 움직임 벡터의 수평방향 성분과 수직방향 성분 각각에 대해 중앙값을 구하도록 해도 되고, 각 움직임 벡터의 크기(절대치)에 대해 중앙값을 구하도록 해도 된다.
또한, 움직임 벡터의 중앙값은 도 25에 도시하는 것과 같은 경우, 후방의 참조 픽처에 있어서 블록 BL1과 동 위치에 있는 블록과, 화소 A, 화소 B, 화소 C 각각을 포함하는 블록과, 또한 도 25에 도시하는 화소 D를 포함하는 블록, 이들 합계 5개의 블록이 갖는 움직임 벡터의 중앙값을 구하도록 해도 된다. 이와같이 부호화 대상 화소의 주변에 가까운, 후방의 참조 픽처에 있어서 블록 BL1와 동 위치에 있 는 블록을 이용했을 때는, 블록수를 홀수로 하기 위해서 화소 D를 포함하는 블록을 이용하면, 움직임 벡터의 중앙값을 산출하는 처리를 간단하게 하는 것이 가능하다. 또한, 후방의 참조 픽처에 있어서 블록 BL1와 동 위치에 있는 영역에 다수의 블록이 걸쳐있는 경우, 이 다수의 블록 중 블록 BL1과 겹치는 영역이 가장 큰 블록에 있어서의 움직임 벡터를 이용하여 블록 BL1의 움직임 보상을 해도 되고, 혹은 블록 BL1을 후방의 참조 픽처에 있어서의 다수의 블록의 영역에 대응하여 나누고, 나눈 블록마다 블록 BL1를 움직임 보상하도록 해도 된다.
또한, 구체적인 예를 들어 설명한다.
도 26이나 도 27에 도시하는 바와같이 화소 A, 화소 B, 화소 C를 포함하는 블록 전체가 부호화 대상 픽처보다 전방의 픽처를 참조하는 움직임 벡터인 경우, 상기 제1의 계산방법부터 제3의 계산 방법까지, 어느 것을 이용해도 된다.
마찬가지로, 도 28이나 도 29에 도시하는 바와같이 화소 A, 화소 B, 화소 C를 포함하는 블록 전체가 부호화 대상 픽처보다 후방의 픽처를 참조하는 움직임 벡터인 경우, 상기 제1의 계산방법부터 제3의 계산방법까지, 어느 것을 이용해도 된다.
다음에, 도 30에 도시하는 경우에 대해 설명한다. 도 30은 화소 A, 화소 B, 화소 C 각각을 포함하는 블록 모두가 부호화 대상 픽처보다 전방과 후방의 픽처를 참조하는 움직임 벡터를 1개씩 갖는 경우를 도시한다.
상기 제1의 계산방법에 의하면, 블록 BL1의 움직임 보상에 이용하는 전방의 움직임 벡터는 움직임 벡터 MVAf, 움직임 벡터 MVBf, 움직임 벡터 MVCf의 중앙값에 의해 선택되고, 블록 BL1의 움직임 보상에 이용하는 후방의 움직임 벡터는 움직임 벡터 MVAb, 움직임 벡터 MVBb, 움직임 벡터 MVCb의 중앙값에 의해 선택된다. 또한, 움직임 벡터 MVAf는 화소 A를 포함하는 블록의 전방향 움직임 벡터, 움직임 벡터 MVAb는 회소 A를 포함하는 블록의 후방향 움직임 벡터, 움직임 벡터 MVBf는 화소 B를 포함하는 블록의 전방향 움직임 벡터, 움직임 벡터 MVBb는 화소 B를 포함하는 블록의 후방향 움직임 벡터, 움직임 벡터 MVCf는 화소 C를 포함하는 블록의 전방향 움직임 벡터, 움직임 벡터 MVCb는 화소 C를 포함하는 블록의 후방향 움직임 벡터이다. 또한, 움직임 벡터 MVAf 등은 도시하는 것과 같은 픽처를 참조하는 경우에 한정되지 않는다. 이들은 이하의 설명에서도 동일하다.
상기 제2의 계산방법에 의하면, 움직임 벡터 MVAf, 움직임 벡터 MVBf, 움직임 벡터 MVCf의 전방 참조의 움직임 벡터 중에서 부호화 효율이 가장 높아지는 움직임 벡터와, 움직임 벡터 MVAb, 움직임 벡터 MVBb, 움직임 벡터 MVCb의 후방 참조의 움직임 벡터 중에서 부호화 효율이 가장 높아지는 움직임 벡터를 구함으로써 실제로 직접 모드에서 사용하는 움직임 벡터로 한다. 이 경우, 움직임 벡터 MVAf, 움직임 벡터 MVBf, 움직임 벡터 MVCf의 전방 참조의 움직임 벡터 중에서 부호화 효율이 가장 높아지는 움직임 벡터를 이용하여, 전방 참조만으로 움직임 보상해도 되고, 그 결정된 움직임 벡터와 평행한 움직임 벡터를 이용하여, 2방향 참조로 움직임 보상해도 된다. 또, 부호화 효율이 가장 높아지도록, 전방 참조와 후방 참조의 움직임 벡터 각각에 대해 선택하지 않고, 1개의 블록을 선택하고, 그 블록이 갖는 전방 참조와 후방 참조의 움직임 벡터를 이용하여 움직임 보상해도 된다. 이 때, 부호화 효율이 가장 높아지도록 선택된 전방 참조의 움직임 벡터를 갖는 화소를 갖는 블록과, 부호화 효율이 가장 높아지도록 선택된 후방 참조의 움직임 벡터를 갖는 화소를 갖는 블록을 표시하는 정보를 선택하는 경우에 비해, 선택을 표시하는 정보가 적어도 되므로, 부호화 효율을 향상시킬 수 있다. 또한, 이 1개의 블록의 선택은 ① 전방 참조의 움직임 벡터가 참조하는 픽처의 참조 인덱스의 값이 가장 작아지는 움직임 벡터를 갖는 화소를 포함하는 블록으로 한다, ② 각 화소를 갖는 블록의 전방 참조의 움직임 벡터가 참조하는 픽처의 참조 인덱스의 값과, 후방 참조의 움직임 벡터가 참조하는 픽처의 참조 인덱스의 값을 가산하여, 가산한 값이 최소가 되는 블록으로 한다, ③ 전방 참조의 움직임 벡터가 참조하는 픽처의 참조 인덱스의 중앙값을 구하고, 중앙값을 갖는 전방 참조의 움직임 벡터를 갖는 화소를 포함하는 블록으로 하고, 후방 참조의 움직임 벡터는 이 블록이 갖는 후방 참조의 움직임 벡터로 한다, ④ 후방 참조의 움직임 벡터가 참조하는 픽처의 참조 인덱스의 중앙값을 구하고, 중앙값을 갖는 후방 참조의 움직임 벡터를 갖는 화소를 포함하는 블록으로 하고, 전방 참조의 움직임 벡터는 이 블록이 갖는 전방 참조의 움직임 벡터로 하는 것 중 어느 하나를 채용하면 된다. 또, 후방 참조의 움직임 벡터가 모두 동일한 픽처를 참조하고 있는 경우는 상기 ①과 ③의 블록의 선택방법이 적합하다.
상기 제3의 계산방법에서는 움직임 벡터 MVAf, 움직임 벡터 MVBf, 움직임 벡터 MVCf의 전방 참조의 움직임 벡터가 참조하는 참조 픽처의 참조 인덱스의 값이 가장 작아지는 움직임 벡터를 직접 모드에서 사용하는 전방 참조(제1의 참조)의 움 직임 벡터로 한다. 또는, 움직임 벡터 MVAb, 움직임 벡터 MVBb, 움직임 벡터 MVCb의 후방 참조의 움직임 벡터가 참조하는 참조 픽처의 참조 인덱스의 값이 가장 작아지는 움직임 벡터를 직접 모드에서 사용하는 후방 참조(제2의 참조)의 움직임 벡터로 한다. 또한, 제3의 계산방법에서는, 참조 픽처의 참조 인덱스의 값이 가장 작아지는 전방 참조의 움직임 벡터를 블록 BL1의 전방 참조의 움직임 벡터로 하고, 참조 픽처의 참조 인덱스의 값이 가장 작아지는 후방 참조의 움직임 벡터를 블록 BL1의 후방 참조의 움직임 벡터로 했는데, 참조 픽처의 참조 인덱스의 값이 가장 작아지는 전방 또는 후방중 어느 한쪽을 이용하여 블록 BL1의 2개의 움직임 벡터를 도출하고, 도출된 움직임 벡터를 이용하여 블록 BL1을 움직임 보상해도 된다.
다음에, 도 31에 도시하는 경우에 대해 설명한다. 도 31은 화소 A가 전방과 후방의 픽처를 참조하는 움직임 벡터를 1개씩 가지고, 화소 B가 전방의 픽처를 참조하는 움직임 벡터만을 가지고, 화소 C가 후방의 픽처를 참조하는 움직임 벡터만을 갖는 경우를 도시한다.
이와 같이 한쪽 픽처를 참조하는 움직임 벡터만 갖는 화소를 포함하는 블록이 있을 때, 이 블록의 다른쪽 픽처를 참조하는 움직임 벡터가 0인 것으로 하여, 움직임 보상하기 위해서 상기 도 30에서의 계산방법을 이용하면 된다. 구체적으로는 도 30에서의 제1의 계산방법 또는 제3의 계산방법을 이용하여, MVCf=MVBb=0으로 계산하면 된다. 즉, 제1의 계산방법에서는 블록 BL1의 전방향 움직임 벡터를 계산할 때에는, 화소 C가 전방의 픽처를 참조하는 움직임 벡터 MVCf를 MVCf=0으로 하고, 움직임 벡터 MVAf, 움직임 벡터 MVBf 및 움직임 벡터 MVCf의 중앙값을 계산 한다. 또한, 블록 BL1의 후방향 움직임 벡터를 계산할 때에는, 화소 B가 후방의 픽처를 참조하는 움직임 벡터 MVBb를 MVBb=0으로 하여, 움직임 벡터 MVAb, 움직임 벡터 MVBb 및 움직임 벡터 MVCb의 중앙값을 계산한다.
제3의 계산 방법에서는 화소 C가 전방의 픽처를 참조하는 움직임 벡터 MVCf와 화소 B가 후방의 픽처를 참조하는 움직임 벡터 MVBb를 MVCf=MVBb=0으로 하고, 블록 BL1의 움직임 벡터가 참조하는 참조 픽처의 참조 인덱스의 값이 가장 작아지는 움직임 벡터를 계산한다. 예를 들면, 화소 A를 포함하는 블록이 제1 참조 인덱스 「0」의 픽처를 참조하고, 화소 B를 포함하는 블록이 제1 참조 인덱스 「1」의 픽처를 참조하는 경우, 최소의 제1 참조 인덱스의 값은 「0」이다. 따라서, 화소 B를 포함하는 블록의 전방의 픽처를 참조하는 움직임 벡터 MVBf만이, 최소의 제1 참조 인덱스를 갖는 픽처를 참조하고 있으므로, 움직임 벡터 MVBf를 블록 BL1의 전방향 움직임 벡터로 한다. 또한, 예를 들면, 화소 A, 화소 C중 어느 것이 제2 참조 인덱스가 최소인, 예를 들면 제2 참조 인덱스가 「0」인 후방 픽처를 참조하는 경우, 화소 B가 후방의 픽처를 참조하는 움직임 벡터 MVBb를 MVBb=0으로 하고, 움직임 벡터 MVAb, 움직임 벡터 MVBb 및 움직임 벡터 MVCb의 중앙값을 계산한다. 계산의 결과 얻어진 움직임 벡터를 블록 BL1의 후방향 움직임 벡터로 한다.
다음에, 도 32에 도시하는 경우에 대해 설명한다. 도 32는 화소 A가 전방과 후방의 픽처를 참조하는 움직임 벡터를 1개씩 가지고, 화소 B가 전방의 픽처를 참조하는 움직임 벡터만을 가지며, 화소 C가 움직임 벡터를 갖지 않고, 화면내 부호화되는 경우를 도시한다.
이와 같이, 참조 대상이 된 화소 C를 포함하는 블록이 화면내 부호화되어 있을 때, 이 블록의 전방과 후방의 픽처를 참조하는 움직임 벡터를 모두 「0」인 것으로 하여, 움직임 보상하기 위해서 상기 도 30에서의 계산 방법을 이용하면 된다. 구체적으로는 MVCf=MVCb=0으로 하여 계산하면 된다. 또한, 도 30의 경우는 MVBb=0이다.
마지막에, 도 33에 도시하는 경우에 대해 설명한다. 도 33은 화소 C가 직접 모드에 의해서 부호화되어 있는 경우에 대해 도시하고 있다.
이와 같이, 참조 대상이 된 화소에, 직접 모드에 의해서 부호화되어 있는 블록이 있을 때, 직접 모드에 의해 부호화되어 있는 블록이 부호화될 때에 이용된 움직임 벡터를 이용한 다음에, 상기 도 30에서의 계산방법을 이용하여 블록 BL1의 움직임 보상을 하면 된다.
또한, 움직임 벡터가 전방 참조와 후방 참조의 어느 쪽인지는 참조되는 픽처와 부호화되는 픽처, 각각의 픽처가 갖는 시간 정보에 따라 결정된다. 따라서, 전방 참조와 후방 참조를 구별한 후에, 움직임 벡터를 도출하는 경우는 각각의 블록이 갖는 움직임 벡터가, 전방 참조와 후방 참조중 어느 쪽인지를, 각각의 픽처가 갖는 시간 정보에 의해 판단한다.
또한, 상기에서 설명한 계산 방법을 조합한 예에 대해 설명한다. 도 34는 직접 모드에서 사용하는 움직임 벡터를 결정하는 순서를 도시하는 도면이다. 도 34는 참조 인덱스를 이용하여 움직임 벡터를 결정하는 방법의 일례이다. 또한, 도 34에 도시하는 Ridx0, Ridx1는 상기에서 설명한 참조 인덱스이다. 도 34(a)는 제1 참조 인덱스 Ridx0에 의해 움직임 벡터를 결정하는 순서를 도시하고, 도 34(b)는 제2 참조 인덱스 Ridx1에 의해서 움직임 벡터를 결정하는 순서를 도시하고 있다. 우선, 도 34(a)에 대해 설명한다.
단계 S3701에서 화소 A를 포함하는 블록, 화소 B를 포함하는 블록 및 화소 C를 포함하는 블록 중, 제1 참조 인덱스 Ridx0을 이용하여 픽처를 참조하는 블록의 수를 계산한다.
단계 S3701에서 계산된 블록의 수가 「0」이면, 나아가 단계 S3702에서 제2 참조 인덱스 Ridx1를 이용하여 픽처를 참조하는 블록의 수를 계산한다. 단계 S3702에서 계산된 블록의 수가 「0」이면, S3703에서 부호화 대상 블록의 움직임 벡터를 「0」으로 하여 부호화 대상 블록을 2방향에서 움직임 보상을 한다. 한편 단계 S3702에서 계산된 블록의 수가 「1」이상이면, S3704에서 제2 참조 인덱스 Ridx1이 존재하는 블록의 수에 따라 부호화 대상 블록의 움직임 벡터를 결정한다. 예를 들면, 제2 참조 인덱스 Ridx1이 존재하는 블록의 수에 따라 결정된 움직임 벡터를 이용하여 부호화 대상 블록의 움직임 보상을 행한다.
단계 S3701에서 계산된 블록의 수가 「1」이면, S3705에서 제1 참조 인덱스 Ridx0가 존재하는 블록의 움직임 벡터를 사용한다.
단계 S3701에서 계산된 블록의 수가 「2」이면, S3706에서 제1 참조 인덱스 Ridx0가 존재하지 않는 블록에 대해 임시로 제1 참조 인덱스 Ridx0에 MV=0의 움직임 벡터가 있는 것으로 하여, 3개의 움직임 벡터의 중앙값에 해당하는 움직임 벡터를 사용한다.
단계 S3701에서 계산된 블록의 수가 「3」이면, S3707에서 3개의 움직임 벡터의 중앙값에 해당하는 움직임 벡터를 사용한다. 또, 단계 S3704에서의 움직임 보상은 1개의 움직임 벡터를 이용하여 2방향의 움직임 보상을 해도 된다. 여기서의 2방향의 움직임 보상은 1개의 움직임 벡터와 동일 방향의 움직임 벡터와 반대 방향의 움직임 벡터를, 이 1개의 움직임 벡터를 예를 들면 스케일링함으로써 구한 다음에 행해도 되고, 혹은 1개의 움직임 벡터와 동일 방향의 움직임 벡터와 움직임 벡터가 「0」인 움직임 벡터를 이용하여 행해도 된다. 다음에, 도 34(b)에 대해 설명한다.
단계 S3711에서 제2 참조 인덱스 Ridx1이 존재하는 블록의 수를 계산한다.
단계 S3711에서 계산된 블록의 수가 「0」이면, 나아가 단계 S3712에서 제1 참조 인덱스 Ridx0가 존재하는 블록의 수를 계산한다. 단계 S3712에서 계산된 블록의 수가 「0」이면, S3713에서 부호화 대상 블록의 움직임 벡터를 「0」으로 하여 부호화 대상 블록을 2방향에서 움직임 보상한다. 한편 단계 S3712에서 계산된 블록의 수가 「1」이상이면, S3714에서 제1 참조 인덱스 Ridx0가 존재하는 블록의 수에 따라 부호화 대상 블록의 움직임 벡터를 결정한다. 예를 들면, 제1 참조 인덱스 Ridx0가 존재하는 블록의 수에 따라 결정된 움직임 벡터를 이용하여 부호화 대상 블록의 움직임 보상을 행한다.
단계 S3711에서 계산된 블록의 수가 「1」이면, S3715에서 제2 참조 인덱스 Ridx1가 존재하는 블록의 움직임 벡터를 사용한다.
단계 S3711에서 계산된 블록의 수가 「2」이면, S3716에서 제2 참조 인덱스 Ridx1가 존재하지 않는 블록에 대해 임시로 제2 참조 인덱스 Ridx1에 MV=0인 움직임 벡터가 있는 것으로 하여, 3개의 움직임 벡터의 중앙값에 해당하는 움직임 벡터를 사용한다.
단계 S3711에서 계산된 블록의 수가 「3」이면, S3717에서 3개의 움직임 벡터의 중앙값에 대응하는 움직임 벡터를 사용한다. 또한, 단계 S3714에 있어서의 움직임 보상은 1개의 움직임 벡터를 이용하여 2방향의 움직임 보상을 해도 된다. 여기서의 2방향의 움직임 보상은 1개의 움직임 벡터와 동일 방향의 움직임 벡터와 반대 방향의 움직임 벡터를, 이 1개의 움직임 벡터를 예를 들면 스케일링함으로써 구한 다음에 행해도 되고, 혹은 1개의 움직임 벡터와 동일 방향의 움직임 벡터와 움직임 벡터가 「0」인 움직임 벡터를 이용하여 행해도 된다.
또한, 도 34(a)와 도 34(b) 각각에 대해 설명했는데, 양쪽의 처리를 이용해도 되고, 한쪽 처리만을 이용해도 된다. 단, 한쪽 처리를 이용하는 경우, 예를 들면, 도 34(a)에 도시하는 단계 S3701로부터 시작되는 처리를 행하는 경우에, 또한 단계 S3704의 처리에 도달하는 경우는 도 34(b)에 도시하는 S3711의 처리 이하를 행해도 좋다. 또한, 이와 같이, S3704의 처리에 도달하는 경우는, 단계 S3711 이하의 처리중 단계 S3712이하의 처리를 행하지 않으므로, 움직임 벡터를 하나로 결정할 수 있다. 또한, 도 34(a)와 도 34(b)의 양쪽 처리를 이용하는 경우, 어느 쪽의 처리를 먼저 해도 되고, 또한 함께 행해도 된다. 또한, 부호화 대상 블록의 주위에 있는 블록이 직접 모드에 의해 부호화되어 있는 블록일 때, 직접 모드에 의해 부호화되어 있는 블록이 부호화되었을 때에 이용된 움직임 벡터가 참조하는 픽처의 참조 인덱스를, 직접 모드에 의해서 부호화되어 있는 블록으로서 부호화 대상 블록의 주위에 있는 블록이 갖고 있는 것으로 해도 된다.
이하, 구체적인 블록의 예를 이용하여 움직임 벡터의 결정방법에 대해 상세히 설명한다. 도 35는 부호화 대상 블록 BL1이 참조하는 블록의 각각이 갖는 움직임 벡터의 종류를 도시하는 도면이다. 도 35(a)에 있어서, 화소 A를 갖는 블록은 화면내 부호화되는 블록이고, 화소 B를 갖는 블록은 움직임 벡터를 1개 가지고, 이 1개의 움직임 벡터로 움직임 보상되는 블록이고, 화소 C를 갖는 블록은 움직임 벡터를 2개 가지고 2방향에서 움직임 보상되는 블록이다. 또한, 화소 B를 갖는 블록은 제2 참조 인덱스 Ridx1로 표시되는 움직임 벡터를 갖고 있다. 화소 A를 갖는 블록은 화면내 부호화되는 블록이므로, 움직임 벡터를 갖지 않고, 즉 참조 인덱스도 갖지 않는다.
단계 S3701에서 제1 참조 인덱스 Ridx0가 존재하는 블록의 수를 계산한다. 도 35에 도시하는 바와 같이 제1 참조 인덱스 Ridx0가 존재하는 블록의 수는 2개이므로, 단계 S3706에서 제1 참조 인덱스 Ridx0가 존재하지 않는 블록에 대해 임시로 제1 참조 인덱스 Ridx0에 MV=0인 움직임 벡터가 있는 것으로 하여, 3개의 움직임 벡터의 중앙값에 해당하는 움직임 벡터를 사용한다. 이 움직임 벡터만을 이용하여 부호화 대상 블록을 2방향의 움직임 보상을 행해도 되고, 또는, 이하에 나타내는 바와 같이 제2 참조 인덱스 Ridx1를 이용하여 별도의 움직임 벡터를 이용하여, 2방향의 움직임 보상을 해도 된다.
단계 S3711에서 제2 참조 인덱스 Ridx1가 존재하는 블록의 수를 계산한다. 도 35에 도시하는 바와 같이 제2 참조 인덱스 Ridx1가 존재하는 블록의 수는 1개이므로, 단계 S3715에서 제2 참조 인덱스 Ridx1가 존재하는 블록의 움직임 벡터를 사용한다.
또한, 상기에서 설명한 계산방법을 조합한 별도의 예에 대해 설명한다. 도 36은 화소 A, B, C 각각을 갖는 블록이 갖는 움직임 벡터가 참조하는 픽처를 표시하는 참조 인덱스의 값에 의해, 부호화 대상 블록의 움직임 벡터를 결정하는 순서를 도시하는 도면이다. 도 36(a)(b)는 제1 참조 인덱스 Ridx0를 기준으로 움직임 벡터를 결정하는 순서를 도시하는 도면이고, 도 36(c)(d)는 제2 참조 인덱스 Ridx1를 기준으로 움직임 벡터를 결정하는 순서를 도시하는 도면이다. 또한, 도 36(a)가 제1 참조 인덱스 Ridx0를 기준으로 한 순서를 도시하는 것을, 도 36(c)는 제2 참조 인덱스 Ridx1를 기준으로 한 순서를 도시하고, 도 36(b)가 제1 참조 인덱스 Ridx0를 기준으로 한 순서를 도시하고 있는 것을, 도 36(d)는 제2 참조 인덱스 Ridx1를 기준으로 한 순서를 도시하므로, 이하의 설명에서는 도 36(a)와 도 36(b)에 대해서만 설명한다. 우선 도 36(a)에 대해 설명한다.
단계 S3801에서 유효한 제1 참조 인덱스 Ridx0 중에서 최소의 제1 참조 인덱스 Ridx0를 1개 선택할 수 있는지 판단한다.
단계 S3801에서 유효한 제1 참조 인덱스 Ridx0 중에서 최소의 제1 참조 인덱스 Ridx0를 1개 선택할 수 있는 경우, 단계 S3802에서 선택된 움직임 벡터를 사용한다.
단계 S3801에서 유효한 제1 참조 인덱스 Ridx0 중에서 최소의 제1 참조 인덱 스 Ridx0가 다수 있는 경우, 단계 S3803에서 우선 순위에 의해서 선택된 블록이 갖는 움직임 벡터를 사용한다. 여기서, 우선 순위란, 예를 들면 화소 A를 갖는 블록, 화소 B를 갖는 블록, 화소 C를 갖는 블록의 순으로 부호화 대상 블록의 움직임 보상에 사용하는 움직임 벡터를 결정한다.
단계 S3801에서 유효한 제1 참조 인덱스 Ridx0가 없는 경우, 단계 S3804에서 S3802나 S3803과는 다른 처리를 한다. 예를 들면, 도 34(b)에서 설명한 단계 S3711 이하의 처리를 하면 된다. 다음에, 도 36(b)에 대해 설명한다. 도 36(b)가 도 36(a)와 다른 점은 도 36(a)에 있어서의 단계 S3803과 단계 S3804에 있어서의 처리를 도 36(b)에 도시하는 단계 S3813으로 한 점이다.
단계 S3811에서 유효한 제1 참조 인덱스 Ridx0 중에서 최소의 제1 참조 인덱스 Ridx0를 1개 선택할 수 있는지 판단한다.
단계 S3811에서 유효한 제1 참조 인덱스 Ridx0 중에서 최소의 제1 참조 인덱스 Ridx0를 1개 선택할 수 있는 경우, 단계 S3812에서 선택된 움직임 벡터를 사용한다.
단계 S3811에서 유효한 제1 참조 인덱스 Ridx0가 없는 경우, 단계 S3813에서 S3812와는 다른 처리를 행한다. 예를 들면, 도 34(b)에서 설명한 단계 S3711 이하의 처리를 하면 된다.
또, 상기에서 나타낸 유효한 제1 참조 인덱스 Ridx0란 도 35(b)에서 「O」가 표기되어 있는 제1 참조 인덱스 Ridx0 이고, 움직임 벡터를 갖고 있는 것이 나타나는 참조 인덱스이다. 또한, 도 35(b)중, 「×」가 표기되어 있는 곳은, 참조 인덱 스가 할당되지 않은 것을 의미한다. 또한, 도 36(c)에 있어서의 단계 S3824, 도 36(d)에 있어서의 단계 S3833에서는 도 34(a)에서 설명한 단계 S3701 이하의 처리를 하면 된다.
이하, 구체적인 블록의 예를 이용하여 움직임 벡터의 결정방법에 대해 도 35를 이용하여 자세히 설명한다.
단계 S3801에서 유효한 제1 참조 인덱스 Ridx0 중에서 최소의 제1 참조 인덱스 Ridx0를 1개 선택할 수 있을지 판단한다.
도 35에 도시하는 경우, 유효한 제1 참조 인덱스 Ridx0는 2개 있지만, 단계 S3801에서 유효한 제1 참조 인덱스 Ridx0 중에서 최소의 제1 참조 인덱스 Ridx0를 1개 선택할 수 있는 경우, 단계 S3802에서 선택된 움직임 벡터를 사용한다.
단계 S3801에서 유효한 제1 참조 인덱스 Ridx0 중에서 최소의 제1 참조 인덱스 Ridx0가 다수 있는 경우, 단계 S3803에서 우선 순위에 의해 선택된 블록이 갖는 움직임 벡터를 사용한다. 여기서, 우선 순위란, 예를 들면 화소 A를 갖는 블록, 화소 B를 갖는 블록, 화소 C를 갖는 블록의 순으로 부호화 대상 블록의 움직임 보상에 사용하는 움직임 벡터를 결정한다. 화소 B를 갖는 블록과 화소 C를 갖는 블록에서 동일한 제1 참조 인덱스 Ridx0를 갖는 경우, 우선 순위에 의해 화소 B를 갖는 블록에 있어서의 제1 참조 인덱스 Ridx0가 채용되고, 이 화소 B를 갖는 블록에 있어서의 제1 참조 인덱스 Ridx0에 대응한 움직임 벡터를 이용하여 부호화 대상 블록 BL1의 움직임 보상이 이루어진다. 이 때, 결정된 움직임 벡터만을 이용하여 부호화 대상 블록 BL1을 2방향에서 움직임 보상해도 되고, 이하에 나타내는 바와 같 이 제2 참조 인덱스 Ridx1를 이용하여 별도의 움직임 벡터를 이용하여, 2방향의 움직임 보상을 해도 된다.
단계 S3821에서 유효한 제2 참조 인덱스 Ridx1 중에서 최소의 제2 참조 인덱스 Ridx1를 1개 선택할 수 있을지 판단한다.
도 35에 도시하는 경우, 유효한 제2 참조 인덱스 Ridx1는 1개이므로, 단계 S3822에서 화소 C를 갖는 블록에 있어서의 제2 참조 인덱스 Ridx1에 대응한 움직임 벡터를 사용한다.
또, 상기에서 참조 인덱스를 갖지 않는 블록에 대해, 움직임 벡터의 크기가 「0」인 움직임 벡터를 갖고 있는 것으로 하여, 합계 3개의 움직임 벡터의 중앙값을 구하도록 한 점에 관해서는, 움직임 벡터의 크기가 「0」인 움직임 벡터를 갖고 있는 것으로 하고, 합계 3개의 움직임 벡터의 평균값을 구하도록 하거나, 참조 인덱스를 갖는 블록이 갖는 움직임 벡터의 평균치를 구하도록 해도 된다.
또, 상기에서 설명한 우선 순위를, 예를 들면 화소 B를 갖는 블록, 화소 A를 갖는 블록, 화소 C를 갖는 블록의 순으로 하여, 부호화 대상 블록의 움직임 보상에 사용하는 움직임 벡터를 결정하도록 해도 된다.
이와 같이, 참조 인덱스를 이용하여 부호화 대상 블록을 움직임 보상을 할 때에 이용하는 움직임 벡터를 결정함으로써, 움직임 벡터를 하나로 결정할 수 있다. 또한, 상술의 예에 의하면, 부호화 효율의 향상도 도모하는 것이 가능하다. 또한, 시각 정보를 이용하여 움직임 벡터가 전방 참조인지 후방 참조인지를 판단할 필요가 없으므로, 움직임 벡터를 결정하기 위한 처리를 간략화시킬 수 있다. 또 한, 블록마다의 예측 모드, 움직임 보상으로 이용되는 움직임 벡터 등을 고려하면 많은 패턴이 존재하지만, 상술과 같이 일련의 흐름에 의해서 처리할 수 있어 유익하다.
또, 본 실시의 형태에 있어서는, 참조하는 움직임 벡터에 대해 픽처간 시간적 거리를 이용하여 스케일링 함으로써, 직접 모드에서 이용하는 움직임 벡터를 계산하는 경우에 대해 설명했는데, 이는 참조하는 움직임 벡터를 정수배하여 계산해도 된다. 여기서, 정수배에 사용되는 정수는 다수 블록단위 또는 다수 픽처단위로 부호화 또는 복호화 하는 경우에, 변경 가능하게 해도 된다.
또한, 참조 인덱스 Ridx0, Ridx1를 이용한 움직임 벡터의 계산방법은 중앙값을 이용한 계산방법뿐만 아니라, 다른 계산방법과 조합해도 된다. 예를 들면, 전술의 제3의 계산방법에 있어서, 각각 화소 A, 화소 B, 화소 C를 포함하는 블록 중, 참조 인덱스가 최소가 되는 동일한 픽처를 참조하는 움직임 벡터가 다수 있는 경우에, 반드시 이들 움직임 벡터의 중앙값을 계산할 필요는 없고, 이들 평균치를 계산하고, 얻어진 움직임 벡터를, 블록 BL1의 직접 모드에서 이용하는 움직임 벡터로 해도 된다. 혹은, 참조 인덱스가 최소가 되는 다수의 움직임 벡터 중에서, 예를 들면, 부호화 효율이 가장 높아지는 움직임 벡터를 1개 선택하는 것으로 해도 된다.
또한, 블록 BL1의 전방향 움직임 벡터와 후방향 움직임 벡터를 각각 독립하여 계산해도 되고, 관련지어 계산해도 된다. 예를 들면, 전방향 움직임 벡터와 후방향 움직임 벡터를 동일한 움직임 벡터로부터 계산해도 된다.
또한, 계산의 결과 얻어진 전방향 움직임 벡터와 후방향 움직임 벡터 중 어느 한쪽을 블록 BL1의 움직임 벡터로 해도 된다.
(실시의 형태 8)
본 실시의 형태에서는 참조 픽처의 참조 블록 MB가 장시간 메모리에 보존되어 있는 참조 픽처를 제1 참조 픽처로서 참조하는 전방향(제1) 움직임 벡터와, 단시간 메모리에 보존되어 있는 참조 픽처를 제2 참조 픽처로서 참조하는 후방향(제2) 움직임 벡터를 갖고 있다.
도 37은 장시간 메모리에 참조 픽처가 1개만 보존되어 있는 경우의 직접 모드에 있어서의 2방향 예측을 도시하는 도면이다.
실시의 형태 8이 지금까지의 다수의 실시 형태와 다른 점은 참조 픽처의 블록 MB2의 전방향(제1) 움직임 벡터 MV21가 장시간 메모리에 보존되어 있는 참조 픽처를 참조하고 있는 점이다.
단시간 메모리는 일시적으로 참조 픽처를 보존하기 위한 메모리이고, 예를 들면 픽처가 메모리에 보존된 순서(즉 부호화 또는 복호화의 순서)로 픽처가 보존되어 있다. 그리고, 픽처를 단시간 메모리에 새롭게 보존할 때에 메모리 용량이 부족한 경우에는, 가장 오래 메모리에 보존된 픽처부터 순서대로 삭제한다.
장시간 메모리에서는 반드시 단시간 메모리와 같이 시각의 순서로 픽처가 보존되어 있는 것으로 한정되지 않는다. 예를 들면, 화상을 보존하는 순서로서 화상의 시각의 순서를 대응시켜도 되고, 화상이 보존되어 있는 메모리의 어드레스의 순서를 대응시켜도 된다. 따라서, 장시간 메모리에 보존되어 있는 픽처를 참조하는 움직임 벡터 M21을 시간간격에 의거해 스케일링하는 것은 불가능하다.
장시간 메모리는 단기간 메모리와 같이 일시적으로 참조 픽처를 보존하기 위한 것이 아니라, 계속적으로 참조 픽처를 보존하기 위한 것이다. 따라서, 장시간 메모리에 보존되어 있는 움직임 벡터에 대응하는 시간간격은 단시간 메모리에 보존되어 있는 움직임 벡터에 대응하는 시간간격보다 상당히 크다.
도 37에서, 장시간 메모리와 단시간 메모리의 경계는 도시한대로, 세로 점선으로 표시되어 있고, 이보다 좌측의 픽처에 관한 정보는 장시간 메모리에 보존되고, 이보다 우측의 픽처에 대한 정보는 단시간 메모리에 보존된다. 여기서 픽처 P23의 블록 MB1이 대상 블록이다. 또한, 블록 MB2는 블록 MB1과 참조 픽처 P24내에서 동일한 위치에 있는 참조 블록이다. 참조 픽처 P24의 블록 MB2의 움직임 벡터중 전방향(제1) 움직임 벡터 MV21는 장시간 메모리에 보존되어 있는 픽처 P21를 제1 참조 픽처로 하여 참조하는 제1 움직임 벡터이고, 후방향(제2) 움직임 벡터 MV25는 단시간 메모리에 보존되어 있는 픽처 P25를 제2 참조 픽처로서 참조하는 제2 움직임 벡터이다.
전술과 같이, 픽처 P21과 픽처 P24와의 시간간격 TR21은 장시간 메모리에 보존되어 있는 픽처를 참조하는 움직임 벡터 MV21에 대응하고, 픽처 P24와 픽처 P25와의 시간간격 TR25는 단시간 메모리에 보존되어 있는 픽처를 참조하는 움직임 벡터 MV25에 대응하고, 픽처 P21과 픽처 P24와의 시간간격 TR21은 픽처 P24와 픽처 P25와의 시간간격 TR25보다 상당히 크거나, 정해지지 않는 경우가 있다.
따라서, 지금까지의 실시의 형태와 같이 참조 픽처 P24의 블록 MB2의 움직임 벡터를 스케일링하여 대상 픽처 P23의 블록 MB1의 움직임 벡터를 구하지 않고, 이하와 같은 방법으로 대상 픽처 P23의 블록 MB1의 움직임 벡터를 계산한다.
MV21=MV21’
MV24’=0
위의 식은 참조 픽처 P24의 블록 MB2의 움직임 벡터중 장시간 메모리에 보존되어 있는 제1 움직임 벡터 MN21를 그대로 대상 픽처의 제1 움직임 벡터 MV21’로 하는 것을 나타내고 있다.
아래 식은 단시간 메모리에 보존되어 있는 픽처 P24에의, 대상 픽처 P23의 블록 MB1의 제2 움직임 벡터 MV24’는 제1 움직임 벡터 MV21’보다도 충분히 작으므로, 무시할 수 있다는 것을 나타내고 있다. 제2 움직임 벡터 MV24’는 “0”으로서 취급된다.
이상과 같이 하여, 장시간 메모리에 보존되어 있는 참조 픽처를 제1 참조 픽처로서 참조하는 1개의 움직임 벡터와 단시간 메모리에 보존되어 있는 참조 픽처를 제2의 참조 픽처로서 참조하는 1개의 움직임 벡터를 참조 블록 MB가 갖는 경우, 참조 픽처 블록의 움직임 벡터 중, 장시간 메모리에 보존된 움직임 벡터를 그대로 사용하여 대상 픽처 블록의 움직임 벡터로서 2방향 예측을 한다.
또한, 장시간 메모리에 보존된 참조 픽처는 제1 참조 픽처 또는 제2 픽처중 어느 쪽 픽처이어도 되고, 장시간 메모리에 보존된 참조 픽처를 참조하는 움직임 벡터 MV21는 후방향 움직임 벡터여도 된다. 또한, 제2 참조 픽처가 장시간 메모리에 보존되고, 제1 참조 픽처가 단시간 메모리에 보존되어 있는 경우에는, 제1 참조 픽처를 참조하는 움직임 벡터에 스케일링을 적용하여, 대상 픽처의 움직임 벡터를 계산한다.
이에 따라, 장시간 메모리의 상당히 큰, 또는 정해지지 않는 시간을 이용하지 않고 2방향 예측의 처리를 행할 수 있다.
또, 참조하는 움직임 벡터를 그대로 사용하지 않고, 그 움직임 벡터를 정수배하여 2방향 예측을 해도 된다.
또한, 정수배에 사용되는 정수는 다수 블록 단위 또는 다수 픽처 단위로 부호화 또는 복호화하는 경우에, 변경 가능하게 해도 된다.
(실시의 형태 9)
본 실시의 형태에서는 참조 픽처의 참조 블록 MB가 장시간 메모리에 보존되어 있는 참조 픽처를 참조하는 2개의 전방향 움직임 벡터를 갖고 있는 경우의 직접 모드에 있어서의 2방향 예측을 나타낸다.
도 38은 참조 블록 MB가 장시간 메모리에 보존된 참조 픽처를 참조하는 2개의 움직임 벡터를 갖는 경우의 직접 모드에 있어서의 2방향 예측을 도시하는 도면이다.
실시의 형태 9가 실시의 형태 8과 다른 점은 참조 픽처의 블록 MB2의 움직임 벡터 MV21와 움직임 벡터 MV22 양쪽이 장시간 메모리에 보존되어 있는 픽처를 참조하는 점이다.
도 38에서, 장시간 메모리와 단시간 메모리의 경계는 도시한 대로, 세로의 점선으로 표시되어 있고, 이보다 좌측의 픽처에 관한 정보는 장시간 메모리에 보존 되고, 이보다 우측의 픽처에 대한 정보는 단시간 메모리에 보존된다. 참조 픽처 P24의 블록 MB2의 움직임 벡터 MV21 및 움직임 벡터 MV22는 2개 모두 장시간 메모리에 보존된 픽처를 참조하고 있다. 참조 픽처 P21에는 움직임 벡터 MB21가 대응하고, 참조 픽처 P22에는 움직임 벡터 MV22가 대응하고 있다.
장시간 메모리에 보존되어 있는 픽처 P22를 참조하는 움직임 벡터 MV22에 대응하여 픽처 P22와 P24와의 시간간격 TR22은 단시간 메모리에 보존되어 있는 픽처 P24와 픽처 P25와의 시간간격 TR25보다 상당히 큰, 또는 정해지지 않는 경우가 있다.
도 38에서, 움직임 벡터 MV22에 대응하는 픽처 P22, 움직임 벡터 MV21에 대응하는 픽처 P21의 순으로 순서가 할당되고, 픽처 P21, 픽처 P22가 장시간 메모리에 보존되어 있다. 도 38에서는 이하와 같이 대상 픽처의 블록 MB1의 움직임 벡터를 계산한다.
MV22’= MV22
MV24’= 0
위의 식은 참조 픽처 P24의 블록 MB2의 움직임 벡터 중, 가장 할당된 순서가 작은 픽처 P21를 참조하는 움직임 벡터 MN22를 그대로 대상 픽처 P23의 블록 MB1의 움직임 벡터 MV22’로 하는 것을 표시한다.
아래 식은 단시간 메모리에 보존되어 있는 대상 픽처 P23의 블록 MB1의 후방향 움직임 벡터 MV24’가 움직임 벡터 MV21’보다도 훨씬 작기 때문에, 무시할 수 있다는 것을 표시하고 있다. 후방향 움직임 벡터 MV24’는 “0”으로서 취급된다.
이상과 같이 하여, 장시간 메모리에 보존된 참조 픽처 블록의 움직임 벡터 중 가장 할당된 순서가 작은 픽처를 참조하는 움직임 벡터를 그대로 사용하여 대상 픽처 블록의 움직임 벡터로 함으로써, 장시간 메모리의 상당히 큰, 또는 정해지지 않는 시간을 이용하지 않고 2방향 예측의 처리를 행할 수 있다.
또, 참조하는 움직임 벡터를 그대로 사용하지 않고, 그 움직임 벡터를 정수배하여 2방향 예측을 해도 된다.
또한, 정수배에 사용되는 정수는 다수 블록단위 또는 다수 픽처단위로 부호화 또는 복호화 하는 경우에, 변경 가능하게 해도 된다.
또한, 참조 픽처의 블록 MB2의 움직임 벡터 MV21와 움직임 벡터 MV22의 양쪽이 장시간 메모리에 보존되어 있는 픽처를 참조하는 경우, 제1 참조 픽처를 참조하는 움직임 벡터를 선택하는 것으로 해도 된다. 예를 들면, MV21이 제1 참조 픽처를 참조하는 움직임 벡터이고, MV22가 제2 참조 픽처를 참조하는 움직임 벡터인 경우, 블록 MB1의 움직임 벡터는 픽처 P21에 대한 움직임 벡터 MV21와 픽처 P24에 대한 움직임 벡터“0”를 이용하게 된다.
(실시의 형태 10)
본 실시의 형태에서는 실시의 형태 5부터 실시의 형태 9에 기재된 직접 모드에 있어서의 움직임 벡터 계산방법에 대해 설명을 한다. 이 움직임 벡터 계산방법은 화상의 부호화 또는 복호화시 어디에나 적용된다. 여기서는, 부호화 또는 복호화의 대상의 블록을 대상 블록 MB라고 한다. 또한, 대상 블록 MB의 참조 픽처중에 서 대상 블록과 같은 위치에 있는 블록을 참조 블록으로 한다.
도 39는 본 실시의 형태에 관한 움직임 벡터 계산방법의 처리의 흐름을 도시하는 도면이다.
우선, 대상 블록 MB의 후방의 참조 픽처 중의 참조 블록 MB가 움직임 벡터를 갖는지 여부가 판정된다(단계 S1). 참조 블록 MB가 움직임 벡터를 갖고 있지 않으면(단계 S1 ; No), 움직임 벡터가 “0”으로서 2방향 예측되어 (단계 S2) 움직임 벡터를 계산하는 처리가 종료한다.
참조 블록 MB가 움직임 벡터를 갖고 있으면(단계 S1 ; Yes), 참조 블록 MB가 전방향 움직임 벡터를 갖는지 여부가 판정된다(단계 S3).
참조 블록 MB가 전방향 움직임 벡터를 갖지 않는 경우(단계 S3 ; No), 참조 블록 MB는 후방향 움직임 벡터밖에 갖고 있지 않으므로, 그 후방향 움직임 벡터의 수가 판정된다(단계 S14). 참조 블록 MB의 후방향 움직임 벡터의 수가 “2”인 경우, 도 19, 도 20, 도 21 및 도 22에서 기재된 어느 하나의 계산방법에 따라서 스케일링된 2개의 후방향 움직임 벡터를 이용하여 2방향 예측이 행해진다(단계 S15).
한편, 참조 블록 MB의 후방향 움직임 벡터의 수가 “1”인 경우, 참조 블록 MB가 갖는 유일한 후방향 움직임 벡터를 스케일링하고, 스케일링된 후방향 움직임 벡터를 이용하여 움직임 보상이 행해진다(단계 S16). 단계 S15 또는 단계 S16의 2방향 예측이 종료하면, 움직임 벡터의 계산방법의 처리가 종료한다.
또한, 참조 블록 MB가 전방향 움직임 벡터를 갖는 경우(단계 S3; Yes), 참조 블록 MB의 전방향 움직임 벡터의 수가 판정된다(단계 S4).
참조 블록 MB의 전방향 움직임 벡터의 수가 “1”인 경우, 참조 블록 MB의 전방향 움직임 벡터에 대응하는 참조 픽처가 장시간 메모리 또는 단시간 메모리중 어디에 보존되어 있는지가 판정된다(단계 S5).
참조 블록 MB의 전방향 움직임 벡터에 대응하는 참조 픽처가 단시간 메모리에 보존되어 있는 경우, 참조 블록 MB의 전방향 움직임 벡터를 스케일링하고, 스케일링된 전방향 움직임 벡터를 이용하여 2방향 예측이 행해진다(단계 S6).
참조 블록 MB의 전방향 움직임 벡터에 대응하는 참조 픽처가 장시간 메모리에 보존되어 있는 경우, 도 37에 도시된 움직임 벡터 계산방법에 따라서, 참조 블록 MB의 전방향 움직임 벡터가 스케일링되지 않고 그대로 이용되고, 후방향 움직임 벡터 제로로서 2방향 예측이 행해진다(단계 S7). 단계 S6 또는 단계 S7의 2방향 예측이 종료하면, 움직임 벡터의 계산방법의 처리가 종료한다.
참조 블록 MB의 전방향 움직임 벡터의 수가 “2”인 경우, 참조 블록 MB의 전방향 움직임 벡터중, 장시간 메모리에 보존되어 있는 참조 픽처에 대응하는 전방향 움직임 벡터의 수가 판정된다(단계 S8).
장시간 메모리에 보존되어 있는 참조 픽처에 대응하는 전방향 움직임 벡터의 수가 단계 S8에서 “0”인 경우, 도 16에 도시한 움직임 벡터 계산방법에 따라서, 대상 블록 MB가 속하는 대상 픽처에 표시 시간순으로 가까운 움직임 벡터를 스케일링하고, 스케일링된 움직임 벡터를 이용하여 2방향 예측이 행해진다(단계 S9).
장시간 메모리에 보존되어 있는 참조 픽처에 대응하는 전방향 움직임 벡터의 수가 단계 S8에서 “1”인 경우, 단시간 메모리에 보존된 픽처를 움직임 벡터를 스케일링하고, 스케일링된 움직임 벡터를 이용하여 2방향 예측이 행해진다(단계 S10).
장시간 메모리에 보존되어 있는 참조 픽처에 대응하는 전방향 움직임 벡터의 수가 단계 S8에서 “2”인 경우, 2개의 전방향 움직임 벡터 양쪽에 의해, 장시간 메모리 내의 동일한 픽처가 참조되는지가 판정된다(단계 S11). 2개의 전방향 움직임 벡터 양쪽에 의해 장시간 메모리 내의 동일한 픽처가 참조되는 경우(단계 S11; Yes), 도 15에 기재한 움직임 벡터 계산방법에 따라서, 장시간 메모리 내의 2개의 전방향 움직임 벡터에 참조되는 픽처 중에서 먼저 부호화 또는 복호화된 움직임 벡터를 이용하여 2방향 예측이 행해진다(단계 S12).
2개의 전방향 움직임 벡터 양쪽에 의해서 장시간 메모리 내의 동일한 픽처가 참조되지 않은 경우(단계 S11; No), 도 38에 기재된 움직임 벡터 계산방법에 따라서, 장시간 메모리에 보존된 픽처에 할당된 순서가 작은 픽처에 대응하는 전방향 움직임 벡터를 이용하여 2방향 예측이 행해진다(단계 S13). 장시간 메모리에서는 실제의 화상의 시각과는 관계없이 참조 픽처가 보존되어 있으므로, 각 참조 픽처에 할당된 순서에 따라서 2방향 예측에 이용되어야 하는 전방향 움직임 벡터가 선택되게 되어 있다. 또한, 장시간 메모리에 보존되는 참조 픽처의 순서는 화상의 시각과 일치하는 경우도 있지만, 단순히 메모리의 어드레스 순서와 일치시켜도 된다. 즉, 장시간 메모리에 보존되는 화상의 순서는 반드시 화상의 시각과 일치하지 않아도 된다. 단계 S12, 13의 2방향 예측이 종료하면, 움직임 벡터의 계산방법의 처리 가 종료한다.
(실시의 형태 11)
이하, 본 발명의 실시의 형태 11에 대해 도면을 이용하여 상세히 설명한다. 도 40은 본 발명의 실시형태 11에 관한 동화상 부호화 장치(100)의 구성을 도시하는 블록도이다. 동화상 부호화 장치(100)는 필드 구조로 부호화된 블록과 프레임 구조로 부호화된 블록이 혼재하는 경우에도 직접 모드의 공간적 예측방법을 적용하여 동화상의 부호화를 행할 수 있는 동화상 부호화 장치로서, 프레임 메모리(101), 차분 연산부(102), 예측오차 부호화부(103), 부호열 생성부(104), 예측오차 복호화부(105), 가산 연산부(106), 프레임 메모리(107), 움직임 벡터 검출부(108), 모드 선택부(109), 부호화 제어부(110), 스위치(111), 스위치(112), 스위치(113), 스위치(114), 스위치(115) 및 움직임 벡터 기억부(116)를 구비한다.
프레임 메모리(101)는 입력 화상을 픽처 단위로 유지하는 화상 메모리이다. 차분 연산부(102)는 프레임 메모리(101)로부터의 입력 화상과, 움직임 벡터에 의거하여 복호화 화상으로부터 구해진 참조 화상과의 차분인 예측 오차를 구하여 출력한다. 예측 오차 부호화부(103)는 차분 연산부(102)에서 구해진 예측 오차로 주파수 변환을 실시하고, 양자화하여 출력한다. 부호열 생성부(104)는 예측 오차 부호화부(103)로부터의 부호화 결과를 가변길이 부호화한 후, 출력용의 부호화 비트 스트림의 포맷으로 변환하고, 부호화된 예측 오차의 관련 정보를 기술한 헤더 정보 등의 부가 정보를 붙여 부호열을 생성한다. 예측 오차 복호화부(105)는 예측 오차 부호화부(103)로부터의 부호화 결과를 가변길이 복호화하고, 역양자화한 후, IDCT 변환 등의 역주파수 변환을 실시하여, 예측 오차로 복호화한다. 가산 연산부(106)는 복호화 결과인 예측오차에 상기 참조 화상을 가산하고, 부호화 및 복호화를 거친 화상 데이터로 입력 화상과 동일한 1픽처의 화상을 표시한 참조 화상을 출력한다. 프레임 메모리(107)는 참조 화상을 픽처 단위로 유지하는 화상 메모리이다.
움직임 벡터 검출부(108)는 부호화 대상 프레임의 부호화 단위마다, 움직임 벡터를 검출한다. 모드 선택부(109)는 움직임 벡터를 직접 모드로 계산할지 다른 모드로 계산할지를 선택한다. 부호화 제어부(110)는 프레임 메모리(101)에 입력된 시간순으로 격납되어 있는 입력 화상의 픽처를, 부호화되는 순으로 교체한다. 또한, 부호화 제어부(110)는 부호화 대상 프레임의 소정 크기의 단위마다 필드 구조로 부호화를 행할지, 프레임 구조로 부호화를 행할지를 판정한다. 여기서 소정 크기의 단위는 매크로 블록(예를 들면 수평 16화소, 수직 16화소)을 세로 방향으로 2개 연결한 것(이하에서는 매크로 블록 페어라고 부른다)으로 한다. 필드 구조로 부호화하는 것이면 프레임 메모리(101)로부터 인터레이스에 대응하여 1수평 주사선 걸러 화소값을 읽어내고, 프레임 단위로 부호화하는 것이면 프레임 메모리(101)로부터 순차, 입력 화상의 각 화소값을 읽어내고, 읽어낸 각 화소값이 필드 구조 또는 프레임 구조에 대응한 부호화 대상 매크로 블록 페어를 구성하도록 메모리상에 배치한다. 움직임 벡터 기억부(116)는 부호화 완료 매크로 블록의 움직임 벡터와, 그 움직임 벡터가 참조하는 프레임의 참조 인덱스를 유지한다. 참조 인덱스에 대해서는 부호화 완료 매크로 블록 페어 중의 각 매크로 블록의 각각에 대해 유지한다.
다음에, 이상과 같이 구성된 동화상 부호화 장치(100)의 동작에 대해 설명한다. 입력화상은 시간순으로 픽처 단위로 프레임 메모리(101)에 입력된다. 도 41(a)는 동화상 부호화 장치(100)에 시간순으로 픽처 단위로 입력되는 프레임의 순서를 도시하는 도면이다. 도 41(b)는 도 41(a)에 도시한 픽처의 배열을 부호화의 순으로 바꿔 배열한 경우의 순서를 도시하는 도면이다. 도 41(a)에서, 세로선은 픽처를 표시하고, 각 픽처의 우측 밑에 표시하는 기호는 첫문자째의 알파벳이 픽처 타입(I, P 또는 B)을 나타내고, 두 번째 문자 이후의 숫자가 시간순의 픽처 번호를 표시하고 있다. 또한, 도 42는 실시의 형태 11을 설명하기 위한, 참조 프레임 리스트(300)의 구조를 나타내는 도면이다. 프레임 메모리(101)에 입력된 각 픽처는 부호화 제어부(110)에 의해 부호화순으로 바꿔 배열된다. 부호화순으로의 배열 교체는 픽처간 예측 부호화에 있어서의 참조 관계에 따라서 행해지고, 참조 픽처로서 이용되는 픽처가 참조 픽처로서 이용하는 픽처보다도 먼저 부호화되도록 바꿔 배열된다.
예를 들면, P 픽처는 표시 시간순으로 전방에 있는 근방의 I 또는 P 픽처 3매 중 1매를 참조 픽처로서 이용하는 것으로 한다. 또한, B 픽처는 표시 시간순으로 전방에 있는 근방의 I 또는 P 픽처 3매 중 1매와, 표시 시간순으로 후방에 있는 근방의 I 또는 P 픽처의 1매를 참조 픽처로서 이용하는 것으로 한다. 구체적으로는 도 41(a)에서 픽처 B5 및 픽처 B6의 후방에 입력되어 있던 픽처 P7는 픽처 B5 및 픽처 B6에 의해 참조되므로, 픽처 B5 및 픽처 B6의 전에 바꿔 배열된다. 마찬가지로, 픽처 B8 및 픽처 B9의 후방에 입력되어 있던 픽처 P10는 픽처 B8 및 픽처 B9의 전방에, 픽처 B11 및 픽처 B12의 후방에 입력되어 있던 픽처 P13은 픽처 B11 및 픽처 B12의 전방에 바꿔 배열된다. 이에 따라, 도 41(a)의 픽처를 바꿔 배열한 결과는 도 41(b)와 같이 된다.
프레임 메모리(101)에서 바꿔 배열한 각 픽처는 매크로 블록을 수직 방향으로 2개 연결한 매크로 블록 페어의 단위로 읽어내지는 것으로 하고, 각 매크로 블록은 수평 16화소×수직 16화소의 크기인 것으로 한다. 따라서, 매크로 블록 페어는 수평 16화소×수직 32화소의 크기로 된다. 이하, 픽처 B11의 부호화 처리에 대해 설명한다. 또, 본 실시의 형태에 있어서의 참조 인덱스의 관리, 즉 참조 프레임 리스트의 관리는 부호화 제어부(110)에서 행하는 것으로 한다.
픽처 B11은 B픽처이므로, 2방향 참조를 이용한 픽처간 예측 부호화를 행한다. 픽처 B11은 표시 시간순으로 전방에 있는 픽처 P10, P7, P4와 표시 시간순으로 후방에 있는 픽처 P13중의 2개의 픽처를 참조 픽처로서 이용하는 것으로 한다. 이들 4개의 픽처 중, 어느 2개의 픽처를 선택할지는 매크로 블록 단위로 지정할 수 있는 것으로 한다. 또한, 여기서 참조 인덱스는 초기 상태의 방법으로 할당하는 것으로 한다. 즉 픽처 B11의 부호화시에 있어서의 참조 프레임 리스트(300)는 도 42에 도시하는 대로이다. 이 경우의 참조 화상은, 제1의 참조 픽처는 도 42의 제1 참조 인덱스에 의해 지정하고, 제2의 참조 픽처는 도 42의 제2 참조 인덱스에 의해 지정하는 것으로 된다.
픽처 B11의 처리에서 부호화 제어부(110)는 스위치(113)가 온, 스위치(114)와 스위치(115)가 오프가 되도록 각 스위치를 제어하는 것으로 한다. 따라서, 프 레임 메모리(101)로부터 읽어진 픽처 B11의 매크로 블록 페어는 움직임 벡터 검출부(108), 모드 선택부(109) 및 차분 연산부(102)에 입력된다. 움직임 벡터 검출부(108)에서는 프레임 메모리(107)에 축적된 픽처 P10, 픽처 P7, 픽처 P4 및 픽처 P13의 복호화 화상 데이터를 참조 픽처로서 이용함으로써, 매크로 블록 페어에 포함되는 각 매크로 블록의 제1의 움직임 벡터와 제2의 움직임 벡터의 검출을 행한다. 모드 선택부(109)에서는 움직임 벡터 검출부(108)에서 검출된 움직임 벡터를 이용하여 매크로 블록 페어의 부호화 모드를 결정한다. 여기서, B 픽처의 부호화 모드는 예를 들면, 픽처내 부호화, 일방향 움직임 벡터를 이용한 픽처간 예측 부호화, 2방향 움직임 벡터를 이용한 픽처간 예측 부호화 및 직접 모드로부터 선택할 수 있는 것으로 한다. 또한, 직접 모드 이외의 부호화 모드를 선택하는 경우에는, 매크로 블록 페어를 프레임 구조로 부호화할지, 필드 구조로 부호화할지도 함께 결정한다.
여기서는, 직접 모드의 공간적 예측방법을 이용하여 움직임 벡터를 계산하는 방법에 대해 설명한다. 도 43(a)은 필드 구조로 부호화되는 매크로 블록 페어와 프레임 구조로 부호화되는 매크로 블록 페어가 혼재하는 경우의 직접 모드 공간적 예측방법을 이용한 움직임 벡터 계산순서의 일례를 도시하는 플로우 챠트이다. 도 43(b)는 부호화 대상 매크로 블록 페어가 프레임 구조로 부호화되는 경우에 있어서 본 발명이 적용되는 주변 매크로 블록 페어의 배치의 일례를 도시하는 도면이다. 도 43(c)는 부호화 대상 매크로 블록 페어가 필드 구조로 부호화되는 경우에 있어서 본 발명이 적용되는 주변 매크로 블록 페어의 배치의 일례를 도시하는 도면이 다. 도 43(b) 및 도 43(c)에 사선으로 표시하는 매크로 블록 페어는 부호화 대상 매크로 블록 페어이다.
부호화 대상 매크로 블록 페어가 직접 모드의 공간적 예측을 이용하여 부호화되는 경우, 당해 부호화 대상 매크로 블록 페어의 주변의 3개의 부호화 완료 매크로 블록 페어가 선택된다. 이 경우, 부호화 대상 매크로 블록 페어는 필드 구조 또는 프레임 구조중 어느 것으로 부호화되어도 된다. 따라서, 부호화 제어부(110)는 우선, 부호화 대상 매크로 블록 페어를 필드 구조로 부호화할지, 프레임 구조로 부호화할지를 결정한다. 예를 들면, 주변 매크로 블록 페어 중 필드 구조로 부호화된 것이 많은 경우, 부호화 대상 매크로 블록 페어를 필드 구조로 부호화하고, 프레임 구조로 부호화된 것이 많은 경우, 프레임 구조로 부호화한다. 이와 같이, 부호화 대상 매크로 블록 페어를 프레임 구조로 부호화할지, 필드 구조로 부호화할지를, 주변 블록의 정보를 이용하여 결정함으로써, 부호화 대상 매크로 블록 페어를 어느 쪽 구조로 부호화했는지를 표시하는 정보를 부호열 중에 기술할 필요가 없어지고, 또한 주위의 매크로 블록 페어로부터 구조를 예측하고 있으므로, 알맞은 구조를 선택할 수 있다.
이어서, 움직임 벡터 검출부(108)는 부호화 제어부(110)의 결정에 따라서, 부호화 대상 매크로 블록 페어의 움직임 벡터를 계산한다. 우선, 움직임 벡터 검출부(108)는 부호화 제어부(110)가 필드 구조로 부호화하는 것으로 결정했는지, 프레임 구조로 부호화하는 것으로 결정했는지를 조사하고(S 301), 프레임 구조로 부호화하는 것으로 결정되는 경우는 부호화 대상 매크로 블록 페어의 움직임 벡터를 프레임 구조로 검출하고(S 302), 필드 구조로 부호화하는 것으로 결정되는 경우는 부호화 대상 매크로 블록 페어의 움직임 벡터를 필드 구조로 검출한다(S 303).
도 44는 프레임 구조로 부호화하는 경우의 매크로 블록 페어의 데이터 구성과 필드 구조로 부호화하는 경우의 매크로 블록 페어의 데이터 구성을 도시하는 도면이다. 동 도면에서, 흰색 원은 홀수 수평 주사선상의 화소를 표시하고, 사선으로 해칭(hatching)한 흑색 원은 짝수 수평 주사선상의 화소를 표시하고 있다. 입력 화상을 표시하는 각 프레임으로부터 매크로 블록 페어를 잘라낸 경우, 도 44 중앙에 도시하는 바와 같이, 홀수 수평 주사선상의 화소와 짝수 수평 주사선상의 화소는 수직 방향으로 번갈아 배치되어 있다. 이러한 매크로 블록 페어를 프레임 구조로 부호화하는 경우, 당해 매크로 블록 페어는 2개의 매크로 블록 MB1 및 매크로 블록 MB2마다 처리되고, 매크로 블록 페어를 구성하는 2개의 매크로 블록 MB1와 매크로 블록 MB2의 각각에 대해 움직임 벡터가 구해진다. 또한, 필드 구조로 부호화하는 경우, 당해 매크로 블록 페어는 수평 주사선 방향으로 인터레이스한 경우의 탑 필드를 표시하는 매크로 블록 TF와 하위 필드를 표시하는 매크로 블록 BF로 나누어지고, 그 움직임 벡터는 매크로 블록 페어를 구성하는 2개의 필드에 각각 1개가 구해진다.
이러한 매크로 블록 페어를 전제로 하여, 도 43(b)에 도시하는 바와같이, 부호화 대상 매크로 블록 페어를 프레임 구조로 부호화하는 경우에 대해 설명한다. 도 45는 도 43에 도시한 단계 S302에 있어서의, 보다 상세한 처리순서를 도시하는 플로우 챠트이다. 또, 동 도면에 있어서, 매크로 블록 페어를 MBP, 매크로 블록을 MB로 표기한다.
모드 선택부(109)는 우선, 부호화 대상 매크로 블록 페어를 구성하는 1개의 매크로 블록 MB1(상부의 매크로 블록)에 대해, 1개의 움직임 벡터를 직접 모드의 공간적 예측을 이용하여 계산한다. 우선, 모드 선택부(109)는 주변 매크로 블록 페어가 참조하는 픽처의 인덱스 중의 최소치를 제1 움직임 벡터와 제2 움직임 벡터의 인덱스의 각각에 대해 구한다(S501). 단 이 경우, 주변 매크로 블록 페어가 프레임 구조로 부호화되는 경우에는, 부호화 대상 매크로 블록에 인접하는 매크로 블록만을 이용하여 결정한다. 다음에, 주변 매크로 블록 페어가 필드 구조로 부호화되어 있는지 여부를 조사하고(S502), 필드 구조로 부호화되어 있는 경우에는 또한, 당해 주변 매크로 블록 페어를 구성하는 2개의 매크로 블록에 의해 참조된 필드 중, 몇개의 필드가 최소의 인덱스가 부가된 필드인지를, 도 42의 참조 프레임 리스트에서 조사한다(S503).
단계 S503에서 조사한 결과, 2개의 매크로 블록에 의해서 참조된 필드가 어느 것이나 최소의 인덱스(즉 동일한 인덱스)가 부가된 필드인 경우에는 2개의 매크로 블록의 움직임 벡터의 평균값을 구하여, 당해 주변 매크로 블록 페어의 움직임 벡터로 한다(S504). 이는 인터레이스 구조로 생각한 경우, 프레임 구조의 부호화 대상 매크로 블록에는 필드 구조의 주변 매크로 블록 페어의 2개의 매크로 블록이 인접하기 때문이다.
단계 S503에서 조사한 결과, 1개의 매크로 블록에 의해 참조된 필드만이 최소의 인덱스가 부가된 필드인 경우에는 그 1개의 매크로 블록의 움직임 벡터를 당 해 주변 매크로 블록 페어의 움직임 벡터로 한다(S504A). 어느 것이나, 참조된 필드가 최소의 인덱스가 부가되지 않은 필드인 경우에는, 당해 주변 매크로 블록 페어의 움직임 벡터를「0」으로 한다(S505).
상기에 있어서, 주변 매크로 블록의 움직임 벡터 중, 참조하는 필드가 최소인 인덱스가 부가되는 필드의 움직임 벡터만을 이용함으로써, 보다 부호화 효율이 높은 움직임 벡터를 선택할 수 있다. S505의 처리는 예측에 알맞은 움직임 벡터가 없다고 판단하는 것을 나타낸다.
단계 S502에서 조사한 결과, 당해 주변 매크로 블록 페어가 프레임 구조로 부호화되어 있는 경우에는, 당해 주변 매크로 블록 페어 중, 부호화 대상 매크로 블록에 인접하는 매크로 블록의 움직임 벡터를 당해 주변 매크로 블록 페어의 움직임 벡터로 한다(S506).
모드 선택부(109)는 상기 단계 S501에서 단계 S506까지의 처리를, 선택된 3개의 주변 매크로 블록 페어에 대해 반복한다. 이 결과, 부호화 대상 매크로 블록 페어 내의 1개의 매크로 블록, 예를 들면, 매크로 블록 MB1에 대해, 3개의 주변 매크로 블록 페어의 움직임 벡터가 각각 1개씩 구해지게 된다.
이어서, 모드 선택부(109)는 3개의 주변 매크로 블록 페어 중, 인덱스가 최소인 프레임 또는 그 프레임 내의 필드를 참조하는 것이 1개인지 여부를 조사한다(S507).
이 경우, 모드 선택부(109)는 3개의 주변 매크로 블록 페어의 참조 인덱스를 참조 프레임 인덱스 또는 참조 필드 인덱스중 어느 것에 통일하여 비교한다. 도 42에 도시한 참조 프레임 리스트에는 프레임마다 참조 인덱스가 부가되어 있을 뿐인데, 이 참조 프레임 인덱스와, 필드마다 인덱스가 부가되어 있는 참조 필드 인덱스는 일정한 관계에 있으므로, 참조 프레임 리스트 또는 참조 필드 리스트의 한쪽에 의한 계산에 의해 다른쪽의 참조 인덱스로 변환할 수 있다.
도 46은 참조 필드 인덱스와 참조 프레임 인덱스의 관계를 나타내는 관계 표시도이다.
이 도 46에 도시하는 바와 같이, 참조 필드 리스트에는 제1 필드 f1 및 제2 필드 f2에 의해 표시되는 프레임이 시계열에 따라 몇 개 존재하고, 각 프레임에는 부호화 대상 블록을 포함하는 프레임(도 46중에서 표시하는 프레임)을 기준으로, 0, 1, 2, …라는 참조 프레임 인덱스가 할당되어 있다. 또한, 각 프레임의 제1 필드 f1 및 제2 필드 f2에는 부호화 대상 블록을 포함하는 프레임의 제1 필드 f1를 기준으로(제1 필드가 부호화 대상 필드인 경우), 0, 1, 2, …라는 참조 필드 인덱스가 할당되어 있다. 또한, 이 참조 필드 인덱스는 부호화 대상 필드에 가까운 프레임의 제1 필드 f1 및 제2 필드 f2로부터, 부호화 대상 블록이 제1 필드 f1이면 제1 필드 f1를 우선시키고, 부호화 대상 블록이 제2 필드 f2이면 제2 필드 f2를 우선시켜 할당된다.
예를 들면, 프레임 구조로 부호화된 주변 매크로 블록이 참조 프레임 인덱스 「1」의 프레임을 참조하고 있고, 필드 구조로 부호화된 주변 블록이 참조 필드 인덱스 「2」의 제1 필드 f1를 참조하고 있을 때는 상기 주변 매크로 블록은 어느 것이나 동일 픽처를 참조하는 것으로 취급된다. 즉, 1개의 주변 매크로 블록에 의해 서 참조되는 프레임의 참조 프레임 인덱스가, 다른 1개의 주변 매크로 블록의 참조 필드에 할당된 참조 필드 인덱스의 2분의 1값과 같다는 (소수점 이하는 잘라버림) 전제 조건을 만족할 때에, 그 주변 매크로 블록은 동일한 픽처를 참조하는 것으로 취급된다.
예를 들면, 도 46중의 △로 표시하는 제1 필드 f1에 포함되는 부호화 대상 블록이 참조 필드 인덱스 「2」의 제1 필드 f1를 참조하고, 프레임 구조인 주변 매크로 블록이 참조 프레임 인덱스 「1」의 프레임을 참조하고 있을 때에는, 상기 전제조건을 만족하기 때문에, 상기 주변 블록은 동일한 픽처를 참조하고 있는 것으로 취급된다. 한편, 어느 주변 매크로 블록이 참조 필드 인덱스 「2」의 제1 필드를 참조하고 있고, 다른 주변 매크로 블록이 참조 프레임 인덱스 「3」의 프레임을 참조하고 있을 때에는, 상기 전제 조건을 만족하지 않으므로, 그 주변 블록은 동일한 픽처를 참조하지 않는 것으로 취급된다.
상기한 바와 같이, 단계 S507에서 조사한 결과, 1개이면, 인덱스가 최소의 프레임 또는 그 프레임 내의 필드를 참조한 주변 매크로 블록 페어의 움직임 벡터를 부호화 대상 매크로 블록의 움직임 벡터로 한다(S508). 단계 S507에서 조사한 결과, 1개가 아니면, 또한, 3개의 주변 매크로 블록 페어 중, 인덱스가 최소인 프레임 또는 그 프레임 내의 필드를 참조한 주변 매크로 블록 페어가 2개 이상 있는지 여부를 조사하고(S509), 2개 이상 있으면, 그 중에서 또한 인덱스가 최소인 프레임 또는 그 프레임 내의 필드를 참조하지 않는 주변 매크로 블록 페어가 있으면 그 움직임 벡터를 「0」으로 한 다음(S510), 주변 매크로 블록 페어의 3개의 움직 임 벡터의 중앙값을 부호화 대상 매크로 블록의 움직임 벡터로 한다(S511). 또한, 단계 S509에서 조사한 결과, 2개 미만이면, 인덱스가 최소의 프레임 또는 그 프레임 내의 필드를 참조한 주변 매크로 블록 페어의 수는 「0」이므로, 부호화 대상 매크로 블록의 움직임 벡터를 「0」으로 한다(S512).
이상의 처리 결과, 부호화 대상 매크로 블록 페어를 구성하는 1개의 매크로 블록 예를 들면, MB1에 대해, 1개의 움직임 벡터 MV1이 계산 결과로서 얻어진다. 모드 선택부(109)는 상기 처리를, 제2의 참조 인덱스를 갖는 움직임 벡터에 대해서도 행하고, 얻어진 2개의 움직임 벡터를 이용하여 2방향 예측에 의해 움직임 보상을 행한다. 단, 주변 매크로 블록 페어 중, 제1 또는 제2의 움직임 벡터를 갖는 주변 매크로 블록이 존재하지 않는 경우에는 그 방향의 움직임 벡터는 이용하지 않고, 1방향만의 움직임 벡터에 의해 움직임 보상을 행한다. 또한, 부호화 대상 매크로 블록 페어내의 또 다른 1개의 매크로 블록, 예를 들면, 매크로 블록 MB2에 대해서도 동일한 처리를 반복한다. 이 결과, 1개의 부호화 대상 매크로 블록 페어에 있어서의 2개의 각 매크로 블록에 대해, 직접 모드에 의한 움직임 보상을 행한 것이 된다.
다음에, 도 43(c)와 같이, 부호화 대상 매크로 블록 페어를 필드 구조로 부호화하는 경우에 대해 설명한다. 도 47은 도 43에 도시한 단계 S303에 있어서의, 보다 상세한 처리순서를 도시하는 플로우 챠트이다. 모드 선택부(109)는 부호화 대상 매크로 블록 페어를 구성하는 1개의 매크로 블록, 예를 들면, 당해 매크로 블록 페어의 탑 필드에 대응하는 매크로 블록 TF에 대해, 1개의 움직임 벡터 MVt를 직접 모드의 공간적 예측을 이용하여 계산한다. 우선, 모드 선택부(109)는 주변 매크로 블록 페어가 참조하는 픽처의 인덱스 중 최소값을 구한다(S601). 단, 주변 매크로 블록 페어가 필드 구조로 처리되어 있는 경우에는, 부호화 대상 매크로 블록과 동일 필드(탑 필드 또는 하위 필드)의 매크로 블록에 대해서만 생각한다. 이어서, 주변 매크로 블록 페어가 프레임 구조로 부호화되어 있는지 여부를 조사하고(S602), 프레임 구조로 부호화되어 있는 경우에는 또한, 당해 주변 매크로 블록 페어 내의 2개의 매크로 블록에 의해서 참조된 프레임이 어느 것이나 모두 최소의 인덱스가 부가된 프레임인지 여부를, 참조 프레임 리스트(300)에 의해서 각 프레임에 부여된 인덱스의 값을 기초로 판단한다(S603).
단계 S603에서 조사한 결과, 2개의 매크로 블록에 의해 참조된 프레임이 어느 것이나 최소의 인덱스인 경우에는, 2개의 매크로 블록의 움직임 벡터의 평균값을 구하여, 당해 주변 매크로 블록 페어의 움직임 벡터로 한다(S604). 단계 S603에서 조사한 결과, 한쪽 또는 양쪽 모두, 참조한 프레임이 최소의 인덱스를 갖지 않는 프레임인 경우에는, 또한, 어느 하나의 매크로 블록에 의해 참조된 프레임이 최소의 인덱스를 갖고 있는지 여부를 조사하고(S605), 조사한 결과, 어느 한쪽의 매크로 블록이 참조한 프레임에 최소의 인덱스가 부가되어 있는 경우에는, 그 매크로 블록의 움직임 벡터를 당해 주변 매크로 블록 페어의 움직임 벡터로 하고(S606), 단계 S605에서 조사한 결과, 어느 쪽의 매크로 블록도 참조한 프레임에 최소의 인덱스가 부가되어 있지 않은 경우에는, 당해 주변 매크로 블록 페어의 움직임 벡터를 「0」으로 한다(S607). 상기에 있어서, 주변 매크로 블록의 움직임 벡터 중, 참조하는 프레임이 최소의 인덱스가 부가되는 프레임의 움직임 벡터만을 이용함으로써, 보다 부호화 효율이 높은 움직임 벡터를 선택할 수 있다. S607의 처리는 예측에 적합한 움직임 벡터가 없다고 판단하는 것을 나타낸다.
또한, 단계 S602에서 조사한 결과, 당해 주변 매크로 블록 페어가 필드 구조로 부호화되어 있는 경우에는, 당해 주변 매크로 블록 페어 전체의 움직임 벡터를, 당해 주변 매크로 블록 페어에 있어서, 부호화 대상 매크로 블록 페어내의 대상 매크로 블록에 대응하는 매크로 블록의 움직임 벡터로 한다(S608). 모드 선택부(109)는 상기 단계 S601에서 단계 S608까지의 처리를, 선택된 3개의 주변 매크로 블록 페어에 대해 반복한다. 이 결과, 부호화 대상 매크로 블록 페어 내의 1개의 매크로 블록, 예를 들면, 매크로 블록 TF에 대해, 3개의 주변 매크로 블록 페어의 움직임 벡터가 각각 1개씩 구해지게 된다.
이어서, 움직임 벡터 검출부(108)는 3개의 주변 매크로 블록 페어 중, 인덱스가 최소인 프레임을 참조하는 것이 1개인지 여부를 조사하고(S609), 1개이면, 인덱스가 최소인 프레임을 참조한 주변 매크로 블록 페어의 움직임 벡터를, 부호화 대상 매크로 블록의 움직임 벡터로 한다(S610). 단계 S609에서 조사한 결과, 1개가 아니면, 또한, 3개의 주변 매크로 블록 페어 중, 인덱스가 최소인 프레임을 참조한 주변 매크로 블록 페어가 2개 이상 있는지 여부를 조사하고(S611), 2개 이상 있으면, 그 중에서 또한 인덱스가 최소인 프레임을 참조하지 않은 주변 매크로 블록 페어의 움직임 벡터를 「0」으로 한 다음에(S612), 주변 매크로 블록 페어의 3개의 움직임 벡터의 중앙값을 부호화 대상 매크로 블록의 움직임 벡터로 한 다(S613). 또한, 단계 S611에서 조사한 결과, 2개 미만이면, 인덱스가 최소인 프레임을 참조한 주변 매크로 블록 페어의 수는 「0」이므로, 부호화 대상 매크로 블록의 움직임 벡터를 「0」으로 한다(S614).
이상의 처리 결과, 부호화 대상 매크로 블록 페어를 구성하는 1개의 매크로 블록 예를 들면, 탑 필드에 대응하는 매크로 블록 TF에 대해, 1개의 움직임 벡터 MVt가 계산결과로서 얻어진다. 모드 선택부(109)는 상기 처리를 제2의 움직임 벡터(제2의 참조 인덱스에 대응)에 대해서도 반복한다. 이에 따라, 매크로 블록 TF에 대해 2개의 움직임 벡터가 얻어지고, 이들 움직임 벡터를 이용하여 2방향 예측에 의한 움직임 보상을 행한다. 단, 주변 매크로 블록 페어 중, 제1 또는 제2의 움직임 벡터를 갖는 주변 매크로 블록이 존재하지 않는 경우에는, 그 방향의 움직임 벡터는 이용하지 않고, 1방향만의 움직임 벡터에 의해 움직임 보상을 한다. 이는, 주변 매크로 블록 페어가 1방향으로 밖에 참조하지 않는다는 것은 부호화 대상 매크로 블록에 대해서도 1방향만을 참조하는 쪽이 부호화 효율이 높아진다고 생각할 수 있기 때문이다.
또한, 부호화 대상 매크로 블록 페어 내의 또 하나의 매크로 블록, 예를 들면, 하위 필드에 대응하는 매크로 블록 BF에 대해서도 동일한 처리를 반복한다. 이 결과, 1개의 부호화 대상 매크로 블록 페어에 있어서의 2개의 각 매크로 블록, 예를 들면, 매크로 블록 TF와 매크로 블록 BF에 대해, 직접 모드에 의한 처리를 행하게 된다.
또, 여기서는 부호화 대상 매크로 블록 페어의 부호화 구조와 주변 매크로 블록 페어의 부호화 구조가 다른 경우에는 주변 매크로 블록 페어내의 2개의 매크로 블록의 움직임 벡터의 평균치를 구하는 등의 처리를 하여 계산했는데, 본 발명은 이에 한정되지 않고, 예를 들면, 부호화 대상 매크로 블록 페어와 주변 매크로 블록 페어에서 부호화 구조가 같은 경우에만, 그 주변 매크로 블록 페어의 움직임 벡터를 이용하고, 부호화 대상 매크로 블록 페어와 주변 매크로 블록 페어에서 부호화 구조가 다른 경우에는, 부호화 구조가 다른 주변 매크로 블록 페어의 움직임 벡터를 이용하지 않아도 된다. 보다 구체적으로는 우선, ① 부호화 대상 매크로 블록 페어가 프레임 구조로 부호화되는 경우, 프레임 구조로 부호화되어 있는 주변 매크로 블록 페어의 움직임 벡터만을 이용한다. 이 때, 프레임 구조로 부호화되어 있는 주변 매크로 블록 페어의 움직임 벡터 중, 인덱스가 최소인 프레임을 참조한 것이 없는 경우, 부호화 대상 매크로 블록 페어의 움직임 벡터를 「0」으로 한다. 또한, 주변 매크로 블록 페어가 필드 구조로 부호화되어 있는 경우, 그 주변 매크로 블록 페어의 움직임 벡터를 「0」으로 한다. 다음에 ② 부호화 대상 매크로 블록 페어가 필드 구조로 부호화되는 경우, 필드 구조로 부호화되어 있는 주변 매크로 블록 페어의 움직임 벡터만을 이용한다. 이 때에, 필드 구조로 부호화되어 있는 주변 매크로 블록 페어의 움직임 벡터 중, 인덱스가 최소인 프레임을 참조한 것이 없는 경우, 부호화 대상 매크로 블록 페어의 움직임 벡터를 「0」으로 한다. 또한, 주변 매크로 블록 페어가 프레임 구조로 부호화되어 있는 경우, 그 주변 매크로 블록 페어의 움직임 벡터를 「0」으로 한다. 이렇게 하여 각 주변 매크로 블록 페어의 움직임 벡터를 계산한 후, ③ 이들 움직임 벡터 중, 최소의 인덱스를 갖 는 프레임 또는 그 필드를 참조하여 얻어진 것이 1개뿐인 경우는, 그 움직임 벡터를 직접 모드에 있어서의 부호화 대상 매크로 블록 페어의 움직임 벡터로 하고, 그렇지 않은 경우에는 3개의 움직임 벡터의 중앙값을 직접 모드에 있어서의 부호화 대상 매크로 블록 페어의 움직임 벡터로 한다.
또한, 상기 설명에서는 부호화 대상 매크로 블록 페어를 필드 구조로 부호화할지 프레임 구조로 부호화할지를, 부호화 완료의 주변 매크로 블록 페어의 부호화 구조의 다수결로 결정했는데, 본 발명은 이에 한정되지 않고, 예를 들면, 직접 모드에서는 반드시 프레임 구조로 부호화하는, 또는 반드시 필드 구조로 부호화하는 것으로 고정적으로 정해둘 수도 있다. 이 경우, 예를 들면, 부호화 대상이 되는 프레임마다 필드 구조로 부호화할지 또는 프레임 구조로 부호화할지를 바꾸는 경우에는, 부호열 전체의 헤더 또는 프레임 마다의 프레임 헤더 등에 기술하도록 해도 된다. 교체 단위는 예를 들면, 시퀀스, GOP, 픽처, 슬라이스 등이어도 되고, 이 경우에는 각각 부호열중의 대응하는 헤더 등에 기술해 두면 된다. 이와 같이 한 경우라도, 부호화 대상 매크로 블록 페어와 주변 매크로 블록 페어에서 부호화 구조가 동일한 경우에만, 그 주변 매크로 블록 페어의 움직임 벡터를 이용하는 방법으로, 직접 모드에 있어서의 부호화 대상 매크로 블록 페어의 움직임 벡터를 계산할 수 있는 것은 말할 것도 없다. 또한, 패킷 등으로 전송하는 경우는 헤더부와 데이터부를 분리하여 별도로 전송해도 된다. 이 경우는 헤더부와 데이터부가 1개의 비트 스트림으로 되지 않는다. 그러나, 패킷의 경우는 전송하는 순서가 다소 전후하는 것이 있어도, 대응하는 데이터부에 대응하는 헤더부가 별도의 패킷으로 전송될 뿐이고, 1개의 비트 스트림으로 되어있지 않아도 마찬가지이다. 이와 같이, 프레임 구조를 이용할지 필드 구조를 이용할지를 고정적으로 정함으로써, 주변 블록의 정보를 이용하여 구조를 결정하는 처리가 없어져, 처리의 간략화를 도모할 수 있다.
또한, 직접 모드에 있어서, 부호화 대상 매크로 블록 페어를 프레임 구조와 필드 구조의 양자에서 처리하고, 부호화 효율이 높은 구조를 선택하는 방법을 이용해도 된다. 이 경우, 프레임 구조와 필드 구조중 어느 것을 선택했는지는, 부호열 중의 매크로 블록 페어의 헤더부에 기술하면 된다. 이와 같이 한 경우라도, 부호화 대상 매크로 블록 페어와 주변 매크로 블록 페어에서 부호화 구조가 같은 경우에만, 그 주변 매크로 블록 페어의 움직임 벡터를 이용하는 방법으로, 직접 모드에 있어서의 부호화 대상 매크로 블록 페어의 움직임 벡터를 계산할 수 있는 것은 말할 것도 없다. 이러한 방법을 이용함으로써, 프레임 구조와 필드 구조중 어느 것을 선택했는지를 나타내는 정보가 부호열중에 필요해지는데, 움직임 보상의 잔차 신호를 보다 삭감하는 것이 가능해져, 부호화 효율의 향상을 도모할 수 있다.
또한 상기의 설명에 있어서는, 주변 매크로 블록 페어가 매크로 블록의 크기를 단위로 하여 움직임 보상되어 있는 경우에 대해 설명했는데, 이것은 다른 크기를 단위로 하여 움직임 보상되어 있어도 된다. 이 경우, 도 48(a),(b)에 도시하는 바와 같이, 부호화 대상 매크로 블록 페어의 각각의 매크로 블록에 대해, a, b, c에 위치하는 화소를 포함하는 블록의 움직임 벡터를 주변 매크로 블록 페어의 움직임 벡터로 한다. 여기서 도 48(a)는 상부의 매크로 블록을 처리하는 경우를 도시 하고, 도 48(b)는 하부의 매크로 블록을 처리하는 경우를 도시하고 있다. 여기서, 부호화 대상 매크로 블록 페어와 주변 매크로 블록 페어의 프레임/필드 구조가 다른 경우, 도 49(a),(b)에 도시하는 a, b, c의 위치의 화소를 포함하는 블록과 위치 a’, b’, c’의 화소를 포함하는 블록을 이용하여 처리를 한다. 여기서 위치 a’, b’, c’는 화소 a, b, c의 위치에 대응하는 동일 매크로 블록 페어 내의 다른 한쪽의 매크로 블록에 포함되는 블록이다. 예를 들면 도 49(a)의 경우, 부호화 대상 매크로 블록 페어와 주변 매크로 블록 페어의 프레임/필드 구조가 다른 경우, 상부의 부호화 대상 매크로 블록의 좌측 블록의 움직임 벡터는 BL1과 BL2의 움직임 벡터를 이용하여 결정한다. 또한, 도 49(b)의 경우, 부호화 대상 매크로 블록 페어와 주변 매크로 블록 페어와의 프레임/필드 구조가 다른 경우, 상부의 부호화 대상 매크로 블록의 좌측 블록의 움직임 벡터는 BL3과 BL4의 움직임 벡터를 이용하여 결정한다. 이러한 처리방법을 이용함으로써, 주변 매크로 블록이 매크로 블록의 크기와는 다른 단위로 움직임 보상되어 있는 경우라도, 프레임·필드의 차를 고려한 직접 모드의 처리를 행하는 것이 가능해진다.
또한, 주변 매크로 블록 페어가 매크로 블록의 크기와는 다른 크기를 단위로 하여 움직임 보상되어 있는 경우에는, 매크로 블록에 포함되는 블록의 움직임 벡터의 평균값을 구함으로써, 그 매크로 블록의 움직임 벡터로 해도 된다. 주변 매크로 블록이 매크로 블록의 크기와는 다른 단위로 움직임 보상되어 있는 경우라도, 프레임·필드의 차를 고려한 직접 모드의 처리를 하는 것이 가능해진다.
그런데, 상기한 바와 같이, 움직임 벡터가 검출되고, 검출된 움직임 벡터에 따라서 픽처간 예측 부호화가 행해진 결과, 움직임 벡터 검출부(108)에 의해서 검출된 움직임 벡터, 부호화된 예측 오차 화상은 매크로 블록마다 부호열 중에 격납된다. 단, 직접 모드로 부호화된 매크로 블록의 움직임 벡터에 대해서는, 단순히 직접 모드로 부호화된 것이 기술될 뿐이고, 움직임 벡터 및 참조 인덱스는 부호열에 기술되지 않는다. 도 50은 부호열 생성부(104)에 의해서 생성되는 부호열(700)의 데이터 구성의 일례를 도시하는 도면이다. 동 도면과 같이, 부호열 생성부(104)에 의해서 생성된 부호열(700)에는 픽처 마다 헤더가 형성되어 있다. 이 헤더에는, 예를 들면, 참조 프레임 리스트(10)의 변경을 표시하는 항목 RPSL 및 당해 픽처의 픽처 타입을 표시하는 도시하지 않은 항목 등이 형성되어 있고, 항목 RPSL에는 참조 프레임 리스트(10)의 제1 참조 인덱스(12) 및 제2 참조 인덱스(13) 값의 할당법에 초기 설정으로부터 변경이 있는 경우, 변경후의 할당법이 기술된다.
한편, 부호화된 예측 오차는 매크로 블록마다 기록된다. 예를 들면, 어느 매크로 블록이 직접 모드의 공간적 예측을 이용하여 부호화되는 경우에는 그 매크로 블록에 대응하는 예측 오차를 기술하는 항목 Block1에 있어서, 당해 매크로 블록의 움직임 벡터는 기술되지 않고, 당해 매크로 블록의 부호화 모드를 표시하는 항목 PredType에 부호화 모드가 직접 모드인 것을 표시하는 정보가 기술된다. 또한, 당해 매크로 블록 페어가 프레임 구조 또는 필드 구조중 어느 것으로 부호화할지를 전술의 부호화 효율의 관점에서 선택하는 경우에는 프레임 구조 또는 필드 구조중 어느 것이 선택되었는지를 표시하는 정보가 기술된다. 이에 연속해, 부호화된 예측 오차가 항목 CodedRes에 기술된다. 또한, 별도의 매크로 블록이 픽처간 예측 부호화 모드로 부호화된 매크로 블록인 경우, 그 매크로 블록에 대응하는 예측 오차를 기술하는 항목 Block2중의 부호화 모드를 표시하는 항목 PredType에, 당해 매크로 블록의 부호화 모드가 픽처간 예측 부호화 모드인 것이 기술된다. 이 경우, 부호화 모드 외에, 또한, 당해 매크로 블록의 제1 참조 인덱스(12)가 항목 Ridx0에, 제2 참조 인덱스(13)가 항목 Ridx1에 기입된다. 블록 중의 참조 인덱스는 가변길이 부호어에 의해 표현되고, 값이 작을수록 짧은 부호 길이의 코드가 할당되어 있다. 또한, 연속해서, 당해 매크로 블록의 전방 프레임 참조시의 움직임 벡터가 항목 MVO에, 후방 프레임 참조시의 움직임 벡터가 항목 MV1에 기술된다. 이에 연속해, 부호화된 예측 오차가 항목 CodedRes에 기술된다.
도 51은 도 50에 도시한 부호열(700)을 복호화하는 동화상 복호화 장치(800)의 구성을 도시하는 블록도이다. 동화상 복호화 장치(800)는 직접 모드로 부호화된 매크로 블록을 포함한 예측 오차가 기술되어 있는 부호열(700)을 복호화하는 동화상 복호화 장치로서, 부호열 해석부(701), 예측 오차 복호화부(702), 모드 복호부(703), 움직임 보상 복호부(705), 움직임 벡터 기억부(706), 프레임 메모리(707), 가산 연산부(708), 스위치(709) 및 스위치(710), 움직임 벡터 복호화부(711)를 구비한다. 부호열 해석부(701)는 입력된 부호열(700)으로부터 각종 데이터를 추출한다. 여기서 말하는 각종 데이터란, 부호화 모드의 정보 및 움직임 벡터에 관한 정보 등이다. 추출된 부호화 모드의 정보는 모드 복호부(703)에 출력된다. 또한, 추출된 움직임 벡터 정보는 움직임 벡터 복호화부(711)에 출력된다. 또한, 추출된 예측오차 부호화 데이터는 예측오차 복호화부(702)에 대해 출력된다. 예측오차 복호화부(702)는 입력된 예측오차 부호화 데이터의 복호화를 하여, 예측 오차 화상을 생성한다. 생성된 예측 오차 화상은 스위치(709)에 대해 출력된다. 예를 들면, 스위치(709)가 단자 b에 접속되어 있을 때에는 예측 오차 화상은 가산기(708)에 대해 출력된다.
모드 복호부(703)는 부호열에서 추출된 부호화 모드 정보를 참조하여, 스위치(709)와 스위치(710)의 제어를 행한다. 부호화 모드가 픽처내 부호화인 경우에는 스위치(709)를 단자 a에 접속하고, 스위치(710)를 단자 c에 접속하도록 제어한다.
부호화 모드가 픽처간 부호화인 경우에는 스위치(709)를 단자 b에 접속하고, 스위치(710)를 단자 d에 접속하도록 제어한다. 또한, 모드 복호부(703)에서는 부호화 모드의 정보를 움직임 보상 복호부(705)와 움직임 벡터 복호화부(711)에 대해서도 출력한다. 움직임 벡터 복호화부(711)는 부호열 해석부(701)로부터 입력된, 부호화된 움직임 벡터에 대해, 복호화 처리를 행한다. 복호화된 참조 픽처번호와 움직임 벡터는 움직임 벡터 기억부(706)에 유지되는 동시에, 움직임 보상 복호부(705)에 대해 출력된다.
부호화 모드가 직접 모드인 경우에는 모드 복호부(703)는 스위치(709)를 단자 b에 접속하고, 스위치(710)를 단자 d에 접속하도록 제어한다. 또한, 모드 복호부(703)에서는 부호화 모드의 정보를 움직임 보상 복호부(705)와 움직임 벡터 복호화부(711)에 대해서도 출력한다. 움직임 벡터 복호화부(711)는 부호화 모드가 직 접 모드인 경우, 움직임 벡터 기억부(706)에 기억되어 있는 주변 매크로 블록 페어의 움직임 벡터와 참조 픽처 번호를 이용하여, 직접 모드로 이용하는 움직임 벡터를 결정한다. 이 움직임 벡터의 결정방법은 도 40의 모드 선택부(109)의 동작으로 설명한 내용과 동일하므로, 여기서는 설명은 생략한다.
복호화된 참조 픽처번호와 움직임 벡터에 따라서, 움직임 보상 복호부(705)는 프레임 메모리(707)로부터 매크로 블록마다 움직임 보상 화상을 취득한다. 취득된 움직임 보상화상은 가산 연산부(708)에 출력된다. 프레임 메모리(707)는 복호화 화상을 프레임마다 유지하는 메모리이다. 가산 연산부(708)는 입력된 예측 오차 화상과 움직임 보상 화상을 가산하여, 복호화 화상을 생성한다. 생성된 복호화 화상은 프레임 메모리(707)에 대해 출력된다.
이상과 같이, 본 실시의 형태에 의하면, 직접 모드의 공간적 예측방법에 있어서, 부호화 대상 매크로 블록 페어에 대한 부호화 완료 주변 매크로 블록 페어에, 프레임 구조로 부호화된 것과 필드 구조로 부호화된 것이 혼재하는 경우에 있어서도, 용이하게 움직임 벡터를 구할 수 있다.
또, 상기의 실시의 형태에 있어서 각 픽처는 매크로 블록을 수직 방향으로 2개 연결한 매크로 블록 페어의 단위로, 프레임 구조 또는 필드구조 중 어느 것을 이용하여 처리되는 경우에 대해 설명했는데, 이는 다른 단위, 예를 들면 매크로 블록 단위로 프레임 구조 또는 필드 구조를 바꿔 처리해도 된다.
또한, 상기의 실시의 형태에 있어서는 B 픽처 중의 매크로 블록을 직접 모드로 처리하는 경우에 대해 설명했는데, 이는 P픽처라도 같은 처리를 행할 수 있다. P 픽처의 부호화·복호화시에 있어서는 각 블록은 1개의 픽처로부터만 움직임 보상을 하고, 또한 참조 프레임 리스트는 1개밖에 없다. 이 때문에, P 픽처라도 본 실시의 형태와 동일한 처리를 행하기 위해서는 본 실시의 형태에 있어서 부호화·복호화 대상 블록의 2개의 움직임 벡터(제1의 참조 프레임 리스트와 제2의 참조 프레임 리스트)를 구하는 처리를, 1개의 움직임 벡터를 구하는 처리로 하면 된다.
또한, 상기의 실시의 형태에 있어서는 3개의 주변 매크로 블록 페어의 움직임 벡터를 이용하여, 직접 모드로 이용하는 움직임 벡터를 예측 생성하는 경우에 대해 설명했는데, 이용하는 주변 매크로 블록 페어의 수는 다른 값이어도 된다. 예를 들면, 좌측 이웃의 주변 매크로 블록 페어의 움직임 벡터만을 이용하는 것과 같은 경우를 생각할 수 있다.
(실시의 형태 12)
또한, 상기 각 실시의 형태에서 나타낸 화상 부호화 방법 및 화상 복호화 방법의 구성을 실현하기 위한 프로그램을, 플렉서블 디스크 등의 기억매체에 기록하도록 함으로써, 상기 각 실시의 형태에서 나타낸 처리를, 독립된 컴퓨터 시스템에서 간단히 실시하는 것이 가능해진다.
도 52는 상기 실시의 형태1부터 실시의 형태11의 화상 부호화 방법 및 화상 복호화 방법을 컴퓨터 시스템에 의해 실현하기 위한 프로그램을 격납하기 위한 기억매체에 대한 설명도이다.
도 52(b)는 플렉서블 디스크의 정면에서 본 외관, 단면구조 및 플렉서블 디스크를 도시하고, 도 52(a)는 기록매체본체인 플렉서블 디스크의 물리 포맷의 예를 도시하고 있다. 플렉서블 디스크(FD)는 케이스(F)내에 내장되고, 상기 디스크 표면에는 동심원상으로 외주로부터 내주로 향해 다수의 트랙(Tr)이 형성되고, 각 트랙은 각도 방향으로 16의 섹터(Se)로 분할되어 있다. 따라서, 상기 프로그램을 격납한 플렉서블 디스크에서는 상기 플렉서블 디스크(FD)상에 할당된 영역에, 상기 프로그램으로서의 화상 부호화 방법 및 화상 복호화 방법이 기록되어 있다.
또한, 도 52(c)는 플렉서블 디스크(FD)에 상기 프로그램의 기록재생을 행하기 위한 구성을 도시한다. 상기 프로그램을 플렉서블 디스크(FD)에 기록하는 경우는 컴퓨터 시스템(Cs)에서 상기 프로그램으로서의 화상 부호화 방법 및 화상 복호화 방법을 플렉서블 디스크 드라이브를 통해 기입한다. 또한, 플렉서블 디스크 내의 프로그램에 의해 상기 화상 부호화 방법 및 화상 복호화 방법을 컴퓨터 시스템 중에 구축하는 경우는 플렉서블 디스크 드라이브에 의해 프로그램을 플렉서블 디스크로부터 읽어내, 컴퓨터 시스템에 전송한다.
또, 상기 설명에서는 기록매체로서 플렉서블 디스크를 이용하여 설명을 했는데, 광 디스크를 이용하더라도 동일하게 행할 수 있다. 또한, 기록매체는 이에 한정되지 않고, CD-ROM, 메모리 카드, ROM 카셋 등, 프로그램을 기록할 수 있는 것이면 동일하게 실시할 수 있다.
또한 여기서, 상기 실시의 형태에서 나타낸 화상 부호화 방법이나 화상 복호화 방법의 응용예와 이를 이용한 시스템을 설명한다.
도 53은 컨텐츠 설치 서비스를 실현하는 컨텐츠 공급 시스템(ex100)의 전체 구성을 도시하는 블록도이다. 통신 서비스의 제공 에어리어를 원하는 크기로 분할 하고, 각 셀내에 각각 고정 무선국인 기지국(ex107∼ex110)이 설치되어 있다.
이 컨텐츠 공급 시스템(ex100)은 예를 들면, 인터넷(ex101)에 인터넷 서비스 공급(ex102) 및 전화망(ex104) 및 기지국(ex107∼ex110)을 통해 컴퓨터(ex11), PDA(personal digital assistant)(ex112), 카메라(ex113), 휴대전화(ex114), 카메라 부착 휴대전화(ex115) 등의 각 기기가 접속된다.
그러나, 컨텐츠 공급 시스템(ex100)은 도 53과 같은 조합에 한정되지 않고, 어느 것을 조합하여 접속해도 된다. 또한, 고정 무선국인 기지국(ex107∼ex110)을 통하지 않고, 각 기기가 전화망(ex104)에 직접 접속되어도 된다.
카메라(ex113)는 디지털 비디오 카메라 등의 동화상 촬영이 가능한 기기이다. 또한, 휴대전화는 PDC(Personal Digital Communications)방식, CDMA(Code Division Multiple Access)방식, W-CDMA(Wideband-Code Division Multiple Access)방식, 혹은 GSM(Global System for Mobile Communications)방식의 휴대 전화기, 또는 PHS(Personal Handyphone System) 등으로, 어느 것이나 상관없다.
또한, 스트리밍 서버(ex103)는 카메라(ex113)로부터 기지국(ex109), 전화망(ex104)을 통해 접속되어 있고, 카메라(ex113)를 이용하여 사용자가 송신하는 부호화 처리된 데이터에 의거한 라이브 설치 등이 가능해진다. 촬영한 데이터의 부호화 처리는 카메라(ex113)로 행하거나, 데이터의 송신처리를 하는 서버 등으로 행해도 된다. 또한, 카메라(ex116)로 촬영한 동화상 데이터는 컴퓨터(ex111)를 통해 스트리밍 서버(ex103)에 송신되어도 된다. 카메라(ex116)는 디지털 카메라 등의 정지화상, 동화상이 촬영 가능한 기기이다. 이 경우, 동화상 데이터의 부호화는 카메라(ex116)로 행하거나 컴퓨터(ex111)로 행하거나 어느 쪽이나 좋다. 또한, 부호화 처리는 컴퓨터(ex111)나 카메라(ex116)가 갖는 LSI(ex117)에서 처리하게 된다. 또, 화상 부호화·복호화용의 소프트웨어를 컴퓨터(ex111) 등으로 읽을 수 있는 기록매체인 어떠한 축적 미디어(CD-ROM, 플렉서블 디스크, 하드 디스크 등)에 조합해도 된다. 또한, 카메라 부착 휴대전화(ex115)로 동화상 데이터를 송신해도 된다. 이 때의 동화상 데이터는 휴대전화(ex115)가 갖는 LSI에서 부호화 처리된 데이터이다.
이 컨텐츠 공급 시스템(ex100)에서는 사용자가 카메라(ex113), 카메라(ex116) 등으로 촬영하는 컨텐츠(예를 들면, 음악 라이브를 촬영한 영상 등)를 상기 실시의 형태와 동일하게 복호화 처리하여 스트리밍 서버(ex103)에 송신하는 한편, 스트리밍 서버(ex103)는 요구가 있는 클라이언트에 대해 상기 컨텐츠 데이터를 스트림 설치한다. 클라이언트로서는 상기 부호화 처리된 데이터를 복호화하는 것이 가능한, 컴퓨터(ex111), PDA(ex112), 카메라(ex113), 휴대전화(ex114) 등이 있다. 이와같이 함으로써 컨텐츠 공급 시스템(ex100)은 부호화된 데이터를 클라이언트에 있어서 수신하여 재생할 수 있고, 또한 클라이언트에 있어서 리얼 타임으로 수신하여 복호화하여 재생함으로써, 개인 방송도 실현 가능하게 되는 시스템이다.
이 시스템을 구성하는 각 기기의 부호화, 복호화에는 상기 각 실시의 형태에서 나타낸 화상 부호화 장치 혹은 화상 복호화 장치를 이용하도록 하면 된다.
그 일례로서 휴대전화에 대해 설명한다.
도 54는 상기 실시의 형태에서 설명한 화상 부호화 방법과 화상 복호화 방법 을 이용한 휴대전화(ex115)를 도시하는 도면이다. 휴대전화(ex115)는 기지국(ex110)과의 사이에서 전파를 송수신하기 위한 안테나(ex201), CCD 카메라 등의 영상, 정지화상을 찍는 것이 가능한 카메라부(ex203), 카메라부(ex203)로 촬영한 영상, 안테나(ex201)로 수신한 영상 등이 복호화된 데이터를 표시하는 액정 디스플레이 등의 표시부(ex202), 조작 키(ex204)군으로 구성되는 본체부, 음성출력을 하기 위한 스피커 등의 음성 출력부(ex208), 음성입력을 하기위한 마이크 등의 음성 입력부(ex205), 촬영한 동화상 또는 정지화상의 데이터, 수신한 메일의 데이터, 동화상 데이터 또는 정지화상 데이터 등, 부호화된 데이터 또는 복호화된 데이터를 저장하기 위한 기록 미디어(ex207), 휴대전화(ex115)에 기록 미디어(ex207)를 장착 가능하게 하기위한 슬롯부(ex206)를 갖고 있다. 기록 미디어(ex207)는 SD 카드 등의 플래스틱 케이스내에 전기적으로 개서나 소거가 가능한 불휘발성 메모리인 EEPR0M(Electrically Erasable and Programmable Read Only Memory)의 일종인 플래시 메모리소자를 격납한 것이다.
또한, 휴대전화(ex115)에 대해 도 55를 이용하여 설명한다. 휴대전화(ex115)는 표시부(ex202) 및 조작 키(ex204)를 구비한 본체부의 각 부를 총괄적으로 제어하도록 이루어진 주 제어부(ex311)에 대해, 전원 회로부(ex310), 조작 입력 제어부(ex304), 화상 부호화부(ex312), 카메라 인터페이스부(ex303), LCD(Liquid Crystal Display) 제어부(ex302), 화상 복호화부(ex309), 다중 분리부(ex308), 기록 재생부(ex307), 변복조 회로부(ex306) 및 음성 처리부(ex305)가 동기 버스(ex313)를 통해 서로 접속되어 있다.
전원 회로부(ex310)는 사용자의 조작에 의해 통화 종료 및 전원 키가 온 상태로 되면, 배터리 팩으로부터 각 부에 대해 전력을 공급함으로써 카메라 부착 디지털 휴대전화(ex115)를 동작 가능한 상태로 기동한다.
휴대전화(ex115)는 CPU, ROM 및 RAM 등으로 이루어지는 주제어부(ex311)의 제어에 따라서, 음성통화 모드시에 음성 입력부(ex205)에서 집음한 음성신호를 음성 처리부(ex305)에 의해서 디지털 음성 데이터로 변환하고, 이를 변복조 회로부(ex306)에서 스펙트럼 확산 처리하고, 송수신 회로부(ex301)에서 디지털 아날로그 변환처리 및 주파수 변환처리를 실시한 후에 안테나(ex201)를 통해 송신한다. 또한 휴대 전화기(ex115)는 음성통화 모드시에 안테나(ex201)에서 수신한 수신 데이터를 증폭하여 주파수 변환처리 및 아날로그 디지털 변환처리를 실시하고, 변복조 회로부(ex306)에서 스펙트럼 역확산 처리하여, 음성 처리부(ex305)에 의해서 아날로그 음성 데이터로 변환한 후, 이를 음성 출력부(ex208)를 통해 출력한다.
또한, 데이터 통신 모드시에 전자 메일을 송신하는 경우, 본체부의 조작 키(ex204)의 조작에 의해서 입력된 전자 메일의 텍스트 데이터는 조작 입력 제어부(ex304)를 통해 주 제어부(ex311)에 송출된다. 주 제어부(ex311)는 텍스트 데이터를 변복조 회로부(ex306)에서 스펙트럼 확산 처리하고, 송수신 회로부(ex301)에서 디지털 아날로그 변환처리 및 주파수 변환처리를 실시한 후에 안테나(ex201)를 통해 기지국(ex110)으로 송신한다.
데이터 통신 모드시에 화상 데이터를 송신하는 경우, 카메라부(ex203)에서 촬상된 화상 데이터를 카메라 인터페이스부(ex303)를 통해 화상 부호화부(ex312)에 공급한다. 또한, 화상 데이터를 송신하지 않은 경우에는 카메라부(ex203)에서 촬상한 화상 데이터를 카메라 인터페이스부(ex303) 및 LCD 제어부(ex302)를 통해 표시부(ex202)에 직접 표시하는 것도 가능하다.
화상 부호화부(ex312)는 본원 발명에서 설명한 화상 부호화 장치를 구비한 구성이고, 카메라부(ex203)로부터 공급된 화상 데이터를 상기 실시형태에서 나타낸 화상 부호화 장치에 이용한 부호화 방법에 의해서 압축 부호화함으로써 부호화 화상 데이터로 변환하고, 이를 다중 분리부(ex308)에 송출한다. 또한, 이 때 동시에 휴대 전화기(ex115)는 카메라부(ex203)에서 촬상중에 음성 입력부(ex205)에서 집음한 음성을 음성 처리부(ex305)를 통해 디지털의 음성 데이터로서 다중 분리부(ex308)에 송출한다.
다중 분리부(ex308)는 화상 부호화부(ex312)로부터 공급된 부호화 화상 데이터와 음성 처리부(ex305)로부터 공급된 음성 데이터를 소정의 방식으로 다중화하고, 그 결과 얻어지는 다중화 데이터를 변복조 회로부(ex306)에서 스펙트럼 확산 처리하여, 송수신 회로부(ex301)에서 디지털 아날로그 변환처리 및 주파수 변환처리를 실시한 후에 안테나(ex201)를 통해 송신한다.
데이터 통신 모드시에 홈 페이지 등에 링크된 동화상 파일의 데이터를 수신하는 경우, 안테나(ex201)를 통해 기지국(ex110)으로부터 수신한 수신 데이터를 변복조 회로부(ex306)에서 스펙트럼 역확산 처리하고, 그 결과 얻어지는 다중화 데이터를 다중 분리부(ex308)에 송출한다.
또한, 안테나(ex201)를 통해 수신된 다중화 데이터를 복호화하기 위해서는, 다중 분리부(ex308)는 다중화 데이터를 분리함으로써 화상 데이터의 비트 스트림과 음성 데이터의 비트 스트림으로 나누고, 동기 버스(ex313)를 통해 당해 부호화 화상 데이터를 화상 복호화부(ex309)에 공급하는 동시에 당해 음성 데이터를 음성 처리부(ex305)에 공급한다.
다음에, 화상 복호화부(ex309)는 본원 발명에서 설명한 화상 복호화 장치를 구비한 구성으로, 화상 데이터의 비트 스트림을 상기 실시의 형태에서 나타낸 부호화 방법에 대응한 복호화 방법으로 복호함으로써 재생 동화상 데이터를 생성하고, 이를 LCD 제어부(ex302)를 통해 표시부(ex202)에 공급하고, 이에 따라, 예를 들면 홈 페이지에 링크된 동화상 파일에 포함되는 동화상 데이터가 표시된다. 이 때 동시에 음성 처리부(ex305)는 음성 데이터를 아날로그 음성 데이터로 변환한 후, 이를 음성 출력부(ex208)에 공급하고, 이에 따라, 예를 들면 홈 페이지에 링크된 동화상 파일에 포함하는 음성 데이터가 재생된다.
또, 상기 시스템의 예에 한정되지 않고, 최근은 위성, 지상파에 의한 디지털 방송이 화제가 되고 있고, 도 56에 도시하는 바와 같이 디지털 방송용 시스템에도 상기 실시의 형태의 적어도 화상 부호화 장치 또는 화상 복호화 장치중 어느 것을 조합할 수 있다. 구체적으로는 방송국(ex409)에서는 영상 정보의 비트 스트림이 전파를 통해 통신 또는 방송위성(ex410)에 전송된다. 이를 받은 방송위성(ex410)은 방송용 전파를 발신하고, 이 전파를 위성방송 수신설비를 갖는 가정의 안테나(ex406)로 수신하며, 텔레비전(수신기)(ex401) 또는 셋 탑 박스(STB)(ex407) 등의 장치에 의해 비트 스트림을 복호화하여 이를 재생한다. 또한, 기록매체인 CD나 DVD 등의 축적 미디어(ex402)에 기록한 비트 스트림을 읽어내고, 복호화하는 재생장치(ex403)에도 상기 실시의 형태에서 나타낸 화상 복호화 장치를 설치하는 것이 가능하다. 이 경우, 재생된 영상신호는 모니터(ex404)에 표시된다. 또한, 케이블 텔레비젼용의 케이블(ex405) 또는 위성/지상파 방송의 안테나(ex406)에 접속된 셋 탑 박스(ex407)내에 화상 복호화 장치를 설치하고, 이를 텔레비전의 모니터(ex408)로 재생하는 구성도 생각할 수 있다. 이 때 셋 탑 박스가 아니라, 텔레비전 내에 화상 복호화 장치를 조합해도 된다. 또한, 안테나(ex411)를 갖는 차(ex412)로 위성(ex410)으로부터 또는 기지국(ex107) 등으로부터 신호를 수신하여, 차(ex412)가 갖는 카 네비게이션(ex413) 등의 표시장치에 동화상을 재생하는 것도 가능하다.
또한, 화상신호를 상기 실시의 형태에서 나타낸 화상 부호화 장치로 부호화하고, 기록매체에 기록하는 것도 가능하다. 구체예로는 DVD 디스크(ex421)에 화상신호를 기록하는 DVD 리코더나, 하드 디스크에 기록하는 디스크 리코더 등의 리코더(ex420)가 있다. 또한 SD 카드(ex422)에 기록하는 것도 가능하다. 리코더(ex420)가 상기 실시의 형태에서 나타낸 화상 복호화 장치를 구비하고 있으면, DVD 디스크(ex421)나 SD 카드(ex422)에 기록한 화상 신호를 재생하여, 모니터(ex408)로 표시할 수 있다.
또, 카 네비게이션(ex413)의 구성은 예를 들면 도 55에 도시하는 구성 중, 카메라부(ex203)와 카메라 인터페이스부(ex303), 화상 부호화부(ex312)를 제외한 구성을 생각할 수 있고, 동일한 것이 컴퓨터(ex111)나 텔레비전(수신기)(ex401) 등으로도 생각할 수 있다.
또한, 상기 휴대전화(ex114) 등의 단말은 부호화기·복호화기를 양쪽모두 가지는 송수신형의 단말 이외에, 부호화기만의 송신단말, 복호화기만의 수신단말의 3가지의 설치형식을 생각할 수 있다.
이와 같이, 상기 실시의 형태에서 나타낸 동화상 부호화 방법 혹은 동화상 복호화 방법을 상술한 어느 하나의 기기·시스템에 이용하는 것이 가능하고, 그렇게 함으로써, 상기 실시의 형태에서 설명한 효과를 얻을 수 있다.
또한, 본 발명은 이러한 상기 실시형태에 한정되지 않고, 본 발명의 범위를 일탈하지 않고 다양한 변형 또는 수정이 가능하다.
도 1은 종래예의 픽처의 참조관계를 설명하기 위한 모식도,
도 2는 종래예의 직접 모드의 동작을 설명하기 위한 모식도,
도 3(a)는 종래의 직접 모드의 공간적 예측방법을 이용하여, B 픽처에 있어서 시간적 전방 픽처를 참조하는 경우의 움직임 벡터 예측방법의 일례를 도시하는 도면,
도 3(b)는 각 부호화 대상 픽처에 작성되는 참조 리스트의 일례를 도시하는 도면,
도 4는 픽처번호와 참조 인덱스의 설명도,
도 5는 종래의 화상 부호화 장치에 의한 화상 부호화 신호 포맷의 개념을 도시하는 도면,
도 6은 본 발명의 실시의 형태1 및 실시의 형태2에 의한 부호화의 동작을 설명하기 위한 블록도,
도 7은 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 전방을 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 설명하기 위한 모식도,
도 8은 표시 순서 및 부호화의 순서에 있어서의 픽처의 참조관계를 비교하기 위한 모식도,
도 9는 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 후방을 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 설명하기 위한 모식도,
도 10은 표시의 순서 및 부호화의 순서에 있어서의 픽처의 참조관계를 비교하기 위한 모식도,
도 11은 본 발명의 실시의 형태5 및 실시의 형태6에 의한 복호화 동작을 설명하기 위한 블록도,
도 12는 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 전방을 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 설명하기 위한 모식도,
도 13은 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 후방을 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 설명하기 위한 모식도,
도 14는 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 후방을 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 설명하기 위한 모식도,
도 15는 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 전방을 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 설명하기 위한 모식도,
도 16은 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 전방을 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 설명하기 위한 모식도,
도 17은 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 전방을 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 설명하기 위한 모식도,
도 18은 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 전방을 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 설명하기 위한 모식도,
도 19는 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 후방을 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 설명하기 위한 모식도,
도 20은 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 후방을 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 설명하기 위한 모식도,
도 21은 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 후방을 참조하는 2개의 움직임 벡터를 가지고 있는 경우의 동작을 설명하기 위한 모식도,
도 22는 직접 모드에 있어서 움직임 벡터가 참조되는 블록이 표시 시간순으로 후방을 참조하는 1개의 움직임 벡터를 가지고 있는 경우의 동작을 설명하기 위한 모식도,
도 23은 직접 모드에 있어서 주변 블록의 움직임 벡터를 참조하는 경우의 동작을 설명하기 위한 모식도,
도 24는 부호화열을 도시하는 도면,
도 25는 부호화 대상 블록과 부호화 대상 블록 주위의 블록의 관계를 도시하는 도면,
도 26은 부호화 대상 블록의 주위 블록이 갖는 움직임 벡터를 도시하는 도면,
도 27은 부호화 대상 블록의 주위 블록이 갖는 움직임 벡터를 도시하는 도면,
도 28은 부호화 대상 블록의 주위 블록이 갖는 움직임 벡터를 도시하는 도면,
도 29는 부호화 대상 블록의 주위 블록이 갖는 움직임 벡터를 도시하는 도면,
도 30은 부호화 대상 블록의 주위 블록이 갖는 움직임 벡터를 도시하는 도면,
도 31은 부호화 대상 블록의 주위 블록이 갖는 움직임 벡터를 도시하는 도면,
도 32는 부호화 대상 블록의 주위 블록이 갖는 움직임 벡터를 도시하는 도면,
도 33은 부호화 대상 블록의 주위 블록이 갖는 움직임 벡터를 도시하는 도면,
도 34는 직접 모드에서 사용하는 움직임 벡터를 결정하는 순서를 도시하는 도면,
도 35는 부호화 대상 블록과 부호화 대상 블록의 주위 블록의 관계를 도시하는 도면,
도 36은 참조 인덱스의 값에 의해서 부호화 대상 블록의 움직임 벡터를 결정하는 순서를 도시하는 도면,
도 37은 장시간 메모리에 보존되어 있는 픽처를 참조하는 움직임 벡터가 1개만인 경우의 직접 모드에 있어서의 2방향 예측을 도시하는 도면,
도 38은 장시간 메모리에 보존되어 있는 픽처를 참조하는 움직임 벡터가 2개있는 경우의 직접 모드에 있어서의 2방향 예측을 도시하는 도면,
도 39는 움직임 벡터 계산방법의 처리의 흐름을 도시하는 도면,
도 40은 본 발명의 실시형태 11에 관한 동화상 부호화 장치(100)의 구성을 도시하는 블록도,
도 41(a)는 동화상 부호화 장치(100)에 시간순으로 픽처 단위로 입력되는 프레임의 순서를 도시하는 도면,
도 41(b)는 도 41(a)에 도시한 프레임의 배열을 부호화의 순으로 바꿔 배열한 경우의 순서를 도시하는 도면,
도 42는 제1의 실시의 형태를 설명하기 위한, 참조 픽처 리스트의 구조를 도시하는 도면,
도 43(a)는 필드 구조로 부호화되는 매크로 블록 페어와 프레임 구조로 부호화되는 매크로 블록 페어가 혼재하는 경우의 직접 모드 공간적 예측방법을 이용한 움직임 벡터 계산순서의 일례를 도시하는 플로우 챠트,
도 43(b)는 부호화 대상 매크로 블록 페어가 프레임 구조로 부호화되는 경우에 있어서 본 발명이 적용되는 주변 매크로 블록 페어의 배치의 일례를 도시하는 도면,
도 43(c)는 부호화 대상 매크로 블록 페어가 필드 구조로 부호화되는 경우에 있어서 본 발명이 적용되는 주변 매크로 블록 페어의 배치의 일례를 도시하는 도면,
도 44는 프레임 구조로 부호화하는 경우의 매크로 블록 페어의 데이터 구성과 필드 구조로 부호화하는 경우의 매크로 블록 페어의 데이터 구성을 도시하는 도면,
도 45는 도 43에 도시한 단계 S302에 있어서의, 보다 상세한 처리순서를 도시하는 플로우 챠트,
도 46은 참조 필드 인덱스와 참조 프레임 인덱스의 관계를 표시하는 관계 표시도,
도 47은 도 43에 도시한 단계 S303에 있어서의, 보다 상세한 처리순서를 도시하는 플로우 챠트,
도 48은 제1의 실시의 형태를 설명하기 위한, 부호화 대상 매크로 블록 페어와 주변 매크로 블록 페어의 위치관계를 도시하는 도면,
도 49는 제1의 실시의 형태를 설명하기 위한, 부호화 대상 매크로 블록 페어와 주변 매크로 블록 페어의 위치관계를 도시하는 도면,
도 50은 부호열 생성부(104)에 의해서 생성되는 부호열(700)의 데이터 구성의 일례를 도시하는 도면,
도 51은 도 50에 도시한 부호열(700)을 복호화하는 동화상 복호화 장치(800)의 구성을 도시하는 블록도,
도 52(a)는 기록매체 본체인 플렉서블 디스크의 물리 포맷의 예를 도시하는 도면,
도 52(b)는 플렉서블 디스크의 정면에서 본 외관, 단면 구조 및 플렉서블 디스크를 도시하는 도면,
도 52(c)는 플렉서블 디스크(FD)에 상기 프로그램의 기록재생을 하기위한 구성을 도시하는 도면,
도 53은 컨텐츠 배치 서비스를 실현하는 컨텐츠 공급 시스템의 전체구성을 도시하는 블록도,
도 54는 휴대전화의 외관의 일례를 도시하는 도면,
도 55는 휴대전화의 구성을 도시하는 블록도,
도 56은 상기 실시의 형태에서 도시한 부호화 처리 또는 복호화 처리를 행하는 기기 및 이 기기를 이용한 시스템을 설명하는 도면이다.

Claims (12)

  1. 복호화 대상 블록이 참조하는 참조 픽쳐를 결정하여, 복호화 대상 블록을 예측 복호화하는 화상 복호화 방법으로서,
    복호화 대상 블록의 주변의 소정의 위치에 존재하는 복수의 주변 블록이 참조하는 픽쳐이며, 복호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 전방에 있는 참조 픽쳐에 우선해 작은 식별 번호가 부여되는 제1 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제1 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 복호화 대상 블록의 제1 참조 픽쳐로 하고,
    상기 복수의 주변 블록이 참조하는 픽쳐이며, 상기 복호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 후방에 있는 참조 픽쳐에 우선해 작은 식별 번호가 부여되는 제2 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제2 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 복호화 대상 블록의 제2 참조 픽쳐로 하고,
    상기 제1 참조 픽쳐와 상기 제2 참조 픽쳐를 참조해 상기 복호화 대상 블록을 예측 복호화하는 것을 특징으로 하는 화상 복호화 방법.
  2. 청구항 1에 있어서,
    상기 복수의 주변 블록 가운데, 상기 제1 참조 픽쳐를 참조하는 주변 블록이 1개일 때, 당해 유일한 주변 블록이 상기 제1 참조 픽쳐를 참조하기 위한 움직임 벡터를, 상기 복호화 대상 블록이 상기 제1 참조 픽쳐를 참조하기 위한 제 1 움직임 벡터로 하고,
    상기 복수의 주변 블록 가운데, 상기 제2 참조 픽쳐를 참조하는 주변 블록이 1개일 때, 당해 유일한 주변 블록이 상기 제2 참조 픽쳐를 참조하기 위한 움직임 벡터를, 상기 복호화 대상 블록이 상기 제2 참조 픽쳐를 참조하기 위한 제2 움직임 벡터로 하고,
    상기 제1 움직임 벡터와 상기 제2 움직임 벡터를 이용하여, 상기 복호화 대상 블록을 예측 복호화하는 것을 특징으로 하는 화상 복호화 방법.
  3. 청구항 1에 있어서,
    상기 복수의 주변 블록 가운데, 상기 제1 참조 픽쳐를 참조하는 블록이 복수 존재할 때는, 상기 복수의 주변 블록의 움직임 벡터 가운데, 상기 제1 참조 픽쳐 리스트로부터 선택된 픽쳐를 참조하기 위한 움직임 벡터의 중앙값을, 상기 복호화 대상 블록이 상기 제1 참조 픽쳐를 참조하기 위한 제1 움직임 벡터로서 결정하고,
    상기 복수의 주변 블록 가운데, 상기 제2 참조 픽쳐를 참조하는 블록이 복수 존재할 때는, 상기 복수의 주변 블록의 움직임 벡터 가운데, 상기 제2 참조 픽쳐 리스트로부터 선택된 픽쳐를 참조하기 위한 움직임 벡터의 중앙값을, 상기 복호화 대상 블록이 상기 제2 참조 픽쳐를 참조하기 위한 제2 움직임 벡터로서 결정하고,
    상기 제1 움직임 벡터와 상기 제2 움직임 벡터를 이용하여, 상기 복호화 대상 블록을 예측 복호화하는 것을 특징으로 하는 화상 복호화 방법.
  4. 복호화 대상 블록이 참조하는 참조 픽쳐를 결정하여, 복호화 대상 블록을 예측 복호화하는 화상 복호화 장치로서,
    복호화 대상 블록의 주변의 소정의 위치에 존재하는 복수의 주변 블록이 참조하는 픽쳐이며, 복호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 전방에 있는 참조 픽쳐에 우선해 작은 식별 번호가 부여되는 제1 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제1 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 복호화 대상 블록의 제1 참조 픽쳐로 하고,
    상기 복수의 주변 블록이 참조하는 픽쳐이며, 상기 복호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 후방에 있는 참조 픽쳐에 우선해 작은 식별 번호가 부여되는 제2 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제2 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 복호화 대상 블록의 제2 참조 픽쳐로 하는 참조 픽쳐 결정 수단과,
    상기 제1 참조 픽쳐와 상기 제2 참조 픽쳐를 참조해 상기 복호화 대상 블록을 예측 복호화하는 복호화 수단을 가지는 것을 특징으로 하는 화상 복호화 장치.
  5. 청구항 4에 있어서,
    상기 화상 복호화 장치는,
    상기 복수의 주변 블록 가운데, 상기 제1 참조 픽쳐를 참조하는 주변 블록이 1개일 때, 당해 유일한 주변 블록이 상기 제1 참조 픽쳐를 참조하기 위한 움직임 벡터를, 상기 복호화 대상 블록이 상기 제1 참조 픽쳐를 참조하기 위한 제1 움직임 벡터로 하고, 상기 복수의 주변 블록 가운데, 상기 제2 참조 픽쳐를 참조하는 주변 블록이 1개일 때, 당해 유일한 주변 블록이 상기 제2 참조 픽쳐를 참조하기 위한 움직임 벡터를, 상기 복호화 대상 블록이 상기 제2 참조 픽쳐를 참조하기 위한 제2 움직임 벡터로 하는 움직임 벡터 결정 수단을 가지고,
    상기 복호화 수단은, 상기 제1 움직임 벡터와 상기 제2 움직임 벡터를 이용하여, 상기 복호화 대상 블록을 예측 복호화하는 것을 특징으로 하는 화상 복호화 장치.
  6. 청구항 4에 있어서,
    상기 화상 복호화 장치는,
    상기 복수의 주변 블록 가운데, 상기 제1 참조 픽쳐를 참조하는 블록이 복수 존재할 때는, 상기 복수의 주변 블록의 움직임 벡터 가운데, 상기 제1 참조 픽쳐 리스트로부터 선택된 픽쳐를 참조하기 위한 움직임 벡터의 중앙값을, 상기 복호화 대상 블록이 상기 제1 참조 픽쳐를 참조하기 위한 제1 움직임 벡터로 하고,
    상기 복수의 주변 블록 가운데, 상기 제2 참조 픽쳐를 참조하는 블록이 복수 존재할 때는, 상기 복수의 주변 블록의 움직임 벡터 가운데, 상기 제2 참조 픽쳐 리스트로부터 선택된 픽쳐를 참조하기 위한 움직임 벡터의 중앙값을, 상기 복호화 대상 블록이 상기 제2 참조 픽쳐를 참조하기 위한 제2 움직임 벡터로 하는 움직임 벡터 결정 수단을 가지고,
    상기 복호화 수단은, 상기 제1 움직임 벡터와 상기 제2 움직임 벡터를 이용하여, 상기 복호화 대상 블록을 예측 복호화하는 것을 특징으로 하는 화상 복호화 장치.
  7. 부호화 대상 블록이 참조하는 참조 픽쳐를 결정하여, 부호화 대상 블록을 예측 부호화하는 화상 부호화 방법으로서,
    부호화 대상 블록의 주변의 소정의 위치에 존재하는 복수의 주변 블록이 참조하는 픽쳐이며, 부호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 전방에 있는 참조 픽쳐에 우선해 작은 식별 번호가 부여되는 제1 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제1 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 부호화 대상 블록의 제1 참조 픽쳐로 하고,
    상기 복수의 주변 블록이 참조하는 픽쳐이며, 상기 부호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 후방에 있는 참조 픽쳐에 우선해 작은 식별 번호가 부여되는 제2 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제2 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 부호화 대상 블록의 제2 참조 픽쳐로 하고,
    상기 제1 참조 픽쳐와 상기 제2 참조 픽쳐를 참조해 상기 부호화 대상 블록을 예측 부호화하는 것을 특징으로 하는 화상 부호화 방법.
  8. 청구항 7에 있어서,
    상기 복수의 주변 블록 가운데, 상기 제1 참조 픽쳐를 참조하는 주변 블록이 1개일 때, 당해 유일한 주변 블록이 상기 제1 참조 픽쳐를 참조하기 위한 움직임 벡터를, 상기 부호화 대상 블록이 상기 제1 참조 픽쳐를 참조하기 위한 제1 움직임 벡터로 하고,
    상기 복수의 주변 블록 가운데, 상기 제2 참조 픽쳐를 참조하는 주변 블록이 1일 때, 당해 유일한 주변 블록이 상기 제2 참조 픽쳐를 참조하기 위한 움직임 벡터를, 상기 부호화 대상 블록이 상기 제2 참조 픽쳐를 참조하기 위한 제2 움직임 벡터로 하고,
    상기 제1 움직임 벡터와 상기 제2 움직임 벡터를 이용하여, 상기 부호화 대상 블록을 예측 부호화하는 것을 특징으로 하는 화상 부호화 방법.
  9. 청구항 7에 있어서,
    상기 복수의 주변 블록 가운데, 상기 제1 참조 픽쳐를 참조하는 블록이 복수 존재할 때는, 상기 복수의 주변 블록의 움직임 벡터 가운데, 상기 제1 참조 픽쳐 리스트로부터 선택된 픽쳐를 참조하기 위한 움직임 벡터의 중앙값을, 상기 부호화 대상 블록이 상기 제1 참조 픽쳐를 참조하기 위한 제1 움직임 벡터로서 결정하고,
    상기 복수의 주변 블록 가운데, 상기 제2 참조 픽쳐를 참조하는 블록이 복수 존재할 때는, 상기 복수의 주변 블록의 움직임 벡터 가운데, 상기 제2 참조 픽쳐 리스트로부터 선택된 픽쳐를 참조하기 위한 움직임 벡터의 중앙값을, 상기 부호화 대상 블록이 상기 제2 참조 픽쳐를 참조하기 위한 제2 움직임 벡터로서 결정하고,
    상기 제1 움직임 벡터와 상기 제2 움직임 벡터를 이용하여, 상기 부호화 대상 블록을 예측 부호화하는 것을 특징으로 하는 화상 부호화 방법.
  10. 부호화 대상 블록이 참조하는 참조 픽쳐를 결정하여, 부호화 대상 블록을 예측 부호화하는 화상 부호화 장치로서,
    부호화 대상 블록의 주변의 소정의 위치에 존재하는 복수의 주변 블록이 참조하는 픽쳐이며, 부호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 전방에 있는 참조 픽쳐에 우선해 작은 식별 번호가 부여되는 제1 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제1 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 부호화 대상 블록의 제1 참조 픽쳐로 하고,
    상기 복수의 주변 블록이 참조하는 픽쳐이며, 상기 부호화 대상 픽쳐를 기준으로 하여 표시 시간순서로 후방에 있는 참조 픽쳐에 우선하여 작은 식별 번호가 부여되는 제2 참조 픽쳐 리스트로부터 선택된 픽쳐 가운데, 상기 제2 참조 픽쳐 리스트에 있어서 가장 식별 번호가 작은 픽쳐를, 상기 부호화 대상 블록의 제2 참조 픽쳐로 하는 참조 픽쳐 결정 수단과,
    상기 제1 참조 픽쳐와 상기 제2 참조 픽쳐를 참조해 상기 부호화 대상 블록을 예측 부호화하는 부호화 수단을 가지는 것을 특징으로 하는 화상 부호화 장치.
  11. 청구항 10에 있어서,
    상기 화상 부호화 장치는,
    상기 복수의 주변 블록 가운데, 상기 제1 참조 픽쳐를 참조하는 주변 블록이 1개일 때, 당해 유일한 주변 블록이 상기 제1 참조 픽쳐를 참조하기 위한 움직임 벡터를, 상기 부호화 대상 블록이 상기 제1 참조 픽쳐를 참조하기 위한 제1 움직임 벡터로 하고, 상기 복수의 주변 블록 가운데, 상기 제2 참조 픽쳐를 참조하는 주변 블록이 1개일 때, 당해 유일한 주변 블록이 상기 제2 참조 픽쳐를 참조하기 위한 움직임 벡터를, 상기 부호화 대상 블록이 상기 제2 참조 픽쳐를 참조하기 위한 제2 움직임 벡터로 하는 움직임 벡터 결정 수단을 가지고,
    상기 부호화 수단은, 상기 제1 움직임 벡터와 상기 제2 움직임 벡터를 이용하여, 상기 부호화 대상 블록을 예측 부호화하는 것을 특징으로 하는 화상 부호화 장치.
  12. 청구항 10에 있어서,
    상기 화상 부호화 장치는,
    상기 복수의 주변 블록 가운데, 상기 제1 참조 픽쳐를 참조하는 블록이 복수 존재할 때, 상기 복수의 주변 블록의 움직임 벡터 가운데, 상기 제1 참조 픽쳐 리스트로부터 선택된 픽쳐를 참조하기 위한 움직임 벡터의 중앙값을, 상기 부호화 대상 블록이 상기 제1 참조 픽쳐를 참조하기 위한 제1 움직임 벡터로 하고,
    상기 복수의 주변 블록 가운데, 상기 제2 참조 픽쳐를 참조하는 블록이 복수 존재할 때, 상기 복수의 주변 블록의 움직임 벡터 가운데, 상기 제2 참조 픽쳐 리스트로부터 선택된 픽쳐를 참조하기 위한 움직임 벡터의 중앙값을, 상기 부호화 대 상 블록이 상기 제2 참조 픽쳐를 참조하기 위한 제2 움직임 벡터로 하는 움직임 벡터 결정 수단을 가지고,
    상기 부호화 수단은, 상기 제1 움직임 벡터와 상기 제2 움직임 벡터를 이용하여, 상기 부호화 대상 블록을 예측 부호화하는 것을 특징으로 하는 화상 부호화 장치.
KR1020097013226A 2002-04-19 2003-04-16 움직임 벡터 계산방법 KR100931746B1 (ko)

Applications Claiming Priority (23)

Application Number Priority Date Filing Date Title
JP2002118598 2002-04-19
JPJP-P-2002-118598 2002-04-19
JP2002121053 2002-04-23
JPJP-P-2002-121053 2002-04-23
US37864302P 2002-05-09 2002-05-09
US60/378,643 2002-05-09
US37895402P 2002-05-10 2002-05-10
US60/378,954 2002-05-10
JPJP-P-2002-156266 2002-05-29
JP2002156266 2002-05-29
JPJP-P-2002-177889 2002-06-19
JP2002177889 2002-06-19
JP2002193027 2002-07-02
JPJP-P-2002-193027 2002-07-02
JPJP-P-2002-204713 2002-07-12
JP2002204713 2002-07-12
JPJP-P-2002-262151 2002-09-06
JP2002262151 2002-09-06
JP2002290542 2002-10-02
JPJP-P-2002-290542 2002-10-02
JPJP-P-2002-323096 2002-11-06
JP2002323096 2002-11-06
PCT/JP2003/004805 WO2003090473A1 (fr) 2002-04-19 2003-04-16 Procede de calcul de vecteurs de mouvement

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020087006472A Division KR100931750B1 (ko) 2002-04-19 2003-04-16 움직임 벡터 계산방법

Publications (2)

Publication Number Publication Date
KR20090086610A true KR20090086610A (ko) 2009-08-13
KR100931746B1 KR100931746B1 (ko) 2009-12-14

Family

ID=29255790

Family Applications (4)

Application Number Title Priority Date Filing Date
KR10-2003-7014885A KR20040099100A (ko) 2002-04-19 2003-04-16 움직임 벡터 계산 방법
KR1020097013226A KR100931746B1 (ko) 2002-04-19 2003-04-16 움직임 벡터 계산방법
KR1020087006472A KR100931750B1 (ko) 2002-04-19 2003-04-16 움직임 벡터 계산방법
KR1020097025003A KR101011849B1 (ko) 2002-04-19 2003-04-16 움직임 벡터 계산방법

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR10-2003-7014885A KR20040099100A (ko) 2002-04-19 2003-04-16 움직임 벡터 계산 방법

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020087006472A KR100931750B1 (ko) 2002-04-19 2003-04-16 움직임 벡터 계산방법
KR1020097025003A KR101011849B1 (ko) 2002-04-19 2003-04-16 움직임 벡터 계산방법

Country Status (12)

Country Link
US (24) US7940845B2 (ko)
EP (3) EP3525466B1 (ko)
KR (4) KR20040099100A (ko)
CN (2) CN1277419C (ko)
AU (2) AU2003235174A1 (ko)
CA (2) CA2451571A1 (ko)
ES (5) ES2745058T3 (ko)
HU (8) HUE053955T2 (ko)
MX (1) MXPA03011334A (ko)
MY (1) MY155930A (ko)
PT (3) PT3525464T (ko)
WO (2) WO2003090475A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011093688A2 (ko) * 2010-02-01 2011-08-04 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
US9516314B2 (en) 2011-06-30 2016-12-06 JVC Kenwood Corporation Picture decoding device with a motion compensation prediction
KR20210091356A (ko) * 2011-06-30 2021-07-21 가부시키가이샤 제이브이씨 켄우드 화상 부호화 장치, 화상 부호화 방법, 화상 부호화 프로그램, 화상 복호 장치, 화상 복호 방법 및 화상 복호 프로그램

Families Citing this family (152)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7266150B2 (en) 2001-07-11 2007-09-04 Dolby Laboratories, Inc. Interpolation of video compression frames
US8111754B1 (en) 2001-07-11 2012-02-07 Dolby Laboratories Licensing Corporation Interpolation of video compression frames
US20030099294A1 (en) * 2001-11-27 2003-05-29 Limin Wang Picture level adaptive frame/field coding for digital video content
US7003035B2 (en) 2002-01-25 2006-02-21 Microsoft Corporation Video coding methods and apparatuses
PT3525464T (pt) 2002-04-19 2021-04-06 Panasonic Ip Corp America Método e sistema de codificação e descodificação de imagem
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
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
CN1312927C (zh) * 2002-07-15 2007-04-25 株式会社日立制作所 动态图像编码方法及解码方法
US7154952B2 (en) 2002-07-19 2006-12-26 Microsoft Corporation Timestamp-independent motion vector prediction for predictive (P) and bidirectionally predictive (B) pictures
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
ES2653437T3 (es) 2002-08-08 2018-02-07 Godo Kaisha Ip Bridge 1 Procedimiento de descodificación de imágenes en movimiento
KR100506864B1 (ko) 2002-10-04 2005-08-05 엘지전자 주식회사 모션벡터 결정방법
ES2496979T3 (es) * 2002-11-01 2014-09-22 Panasonic Intellectual Property Corporation Of America Procedimiento de codificación de imágenes en movimiento y procedimiento de decodificación de imágenes en movimiento
KR100693669B1 (ko) * 2003-03-03 2007-03-09 엘지전자 주식회사 피일드 매크로 블록의 레퍼런스 픽쳐 결정 방법
US20050013498A1 (en) 2003-07-18 2005-01-20 Microsoft Corporation Coding of motion vector information
CN1875637A (zh) * 2003-08-26 2006-12-06 汤姆森特许公司 最小化用于相互编码的参考画面数目的方法和装置
US8064520B2 (en) 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
US7616692B2 (en) * 2003-09-07 2009-11-10 Microsoft Corporation Hybrid motion vector prediction for interlaced forward-predicted fields
US7724827B2 (en) 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7623574B2 (en) * 2003-09-07 2009-11-24 Microsoft Corporation Selecting between dominant and non-dominant motion vector predictor polarities
US7567617B2 (en) * 2003-09-07 2009-07-28 Microsoft Corporation Predicting motion vectors for fields of forward-predicted interlaced video frames
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
US7379608B2 (en) * 2003-12-04 2008-05-27 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung, E.V. Arithmetic coding for transforming video and picture data units
EP1667464B1 (en) * 2003-12-22 2013-03-06 NEC Corporation Method and apparatus for encoding moving pictures
US7480334B2 (en) * 2003-12-23 2009-01-20 Genesis Microchip Inc. Temporal motion vector filtering
CN1321534C (zh) * 2003-12-31 2007-06-13 中国科学院计算技术研究所 固定参考帧数编码方式下获取图像参考块的方法
CN1225128C (zh) * 2003-12-31 2005-10-26 中国科学院计算技术研究所 直接编码模式下确定参考图像块的方法
US7599435B2 (en) * 2004-01-30 2009-10-06 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Video frame encoding and decoding
US8036271B2 (en) * 2004-02-24 2011-10-11 Lsi Corporation Method and apparatus for determining a second picture for temporal direct-mode block prediction
US7586924B2 (en) 2004-02-27 2009-09-08 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for coding an information signal into a data stream, converting the data stream and decoding the data stream
US9743078B2 (en) 2004-07-30 2017-08-22 Euclid Discoveries, Llc Standards-compliant model-based video encoding and decoding
TWI268715B (en) 2004-08-16 2006-12-11 Nippon Telegraph & Telephone Picture encoding method, picture decoding method, picture encoding apparatus, and picture decoding apparatus
KR20060043118A (ko) * 2004-10-07 2006-05-15 엘지전자 주식회사 영상 신호의 인코딩 및 디코딩 방법
US7813432B2 (en) * 2004-12-30 2010-10-12 Intel Corporation Offset buffer for intra-prediction of digital video
JP2009514592A (ja) * 2005-11-03 2009-04-09 チェフェル カンパニー リミテッド 調理容器用オーバーフロー防止蓋
JP4616765B2 (ja) * 2005-12-15 2011-01-19 富士通株式会社 動画像符号化装置
KR100904442B1 (ko) 2006-01-09 2009-06-24 엘지전자 주식회사 영상 신호의 레이어 간 예측 방법
KR20070074453A (ko) * 2006-01-09 2007-07-12 엘지전자 주식회사 영상 신호의 인코딩 및 디코딩 방법
EP1806930A1 (en) * 2006-01-10 2007-07-11 Thomson Licensing Method and apparatus for constructing reference picture lists for scalable video
US8306118B1 (en) * 2006-03-01 2012-11-06 Maxim Integrated, Inc. High quality low bitrate video coding by enabling and disabling a non-residual mode
JP4720543B2 (ja) * 2006-03-01 2011-07-13 ソニー株式会社 データ処理装置、データ処理方法およびデータ処理プログラム、記録媒体、ならびに、再生装置、再生方法および再生プログラム
JP4527677B2 (ja) * 2006-03-15 2010-08-18 富士通株式会社 動画像符号化方法、動画像符号化装置、動画像符号化プログラム
US8208553B2 (en) * 2006-05-04 2012-06-26 Altera Corporation Methods and apparatus for quarter-pel refinement in a SIMD array processor
US8559510B2 (en) * 2006-08-10 2013-10-15 Canon Kabushiki Kaisha Image decoding apparatus
US8767830B2 (en) * 2006-09-13 2014-07-01 Vixs Systems, Inc Neighbor management module for use in video encoding and methods for use therewith
AU2014210664A1 (en) * 2006-10-16 2014-08-28 Nokia Technologies Oy System and method for implementing efficient decoded buffer management in multi-view video coding
US7907217B2 (en) * 2006-10-31 2011-03-15 Siemens Medical Solutions Usa, Inc. Systems and methods of subtraction angiography utilizing motion prediction
US20080137726A1 (en) * 2006-12-12 2008-06-12 General Instrument Corporation Method and Apparatus for Real-Time Video Encoding
WO2008075663A1 (ja) * 2006-12-21 2008-06-26 Ajinomoto Co., Inc. 大腸癌の評価方法、ならびに大腸癌評価装置、大腸癌評価方法、大腸癌評価システム、大腸癌評価プログラムおよび記録媒体
JP4427086B2 (ja) * 2006-12-27 2010-03-03 パナソニック株式会社 動画像復号化装置
KR100809354B1 (ko) * 2007-02-02 2008-03-05 삼성전자주식회사 복원된 프레임의 프레임율을 업컨버팅하는 장치 및 방법
KR100906243B1 (ko) * 2007-06-04 2009-07-07 전자부품연구원 Rgb 색 공간 신호의 영상 부호화 방법
US8254455B2 (en) 2007-06-30 2012-08-28 Microsoft Corporation Computing collocated macroblock information for direct mode macroblocks
US8817878B2 (en) * 2007-11-07 2014-08-26 Broadcom Corporation Method and system for motion estimation around a fixed reference vector using a pivot-pixel approach
CN101453656B (zh) * 2007-11-29 2011-06-01 华为技术有限公司 视频编码、解码方法及装置和视频编解码系统
US20090225227A1 (en) * 2008-03-05 2009-09-10 Panasonic Corporation Motion vector detecting device
ES2812473T3 (es) 2008-03-19 2021-03-17 Nokia Technologies Oy Vector de movimiento combinado y predicción de índice de referencia para la codificación de vídeo
US8355443B2 (en) 2008-03-27 2013-01-15 CSR Technology, Inc. Recursive motion for motion detection deinterlacer
WO2010017166A2 (en) 2008-08-04 2010-02-11 Dolby Laboratories Licensing Corporation Overlapped block disparity estimation and compensation architecture
JP5578775B2 (ja) 2008-09-02 2014-08-27 富士通株式会社 符号化装置および復号装置
KR101377527B1 (ko) * 2008-10-14 2014-03-25 에스케이 텔레콤주식회사 복수 개의 참조 픽처의 움직임 벡터 부호화/복호화 방법 및장치와 그를 이용한 영상 부호화/복호화 장치 및 방법
KR101590511B1 (ko) 2009-01-23 2016-02-02 에스케이텔레콤 주식회사 움직임 벡터 부호화/복호화 장치 및 방법과 그를 이용한 영상 부호화/복호화 장치 및 방법
US8189666B2 (en) 2009-02-02 2012-05-29 Microsoft Corporation Local picture identifier and computation of co-located information
EP3567853B8 (en) 2009-03-23 2024-01-03 Ntt Docomo, Inc. Image predictive decoding device and image predictive decoding method
ES2850074T3 (es) * 2009-06-18 2021-08-25 Toshiba Kk Aparato de decodificación de vídeo y procedimiento de decodificación de vídeo
US9628794B2 (en) * 2009-06-18 2017-04-18 Kabushiki Kaisha Toshiba Video encoding apparatus and a video decoding apparatus
US9060176B2 (en) * 2009-10-01 2015-06-16 Ntt Docomo, Inc. Motion vector prediction in video coding
AU2013202014A1 (en) * 2010-01-14 2013-04-18 Samsung Electronics Co., Ltd Method and apparatus for encoding and decoding motion vector
KR101522850B1 (ko) * 2010-01-14 2015-05-26 삼성전자주식회사 움직임 벡터를 부호화, 복호화하는 방법 및 장치
JP5248632B2 (ja) 2010-01-14 2013-07-31 インテル コーポレイション 動き推定のための技術
US20110176611A1 (en) * 2010-01-15 2011-07-21 Yu-Wen Huang Methods for decoder-side motion vector derivation
CN102131091B (zh) * 2010-01-15 2013-01-23 联发科技股份有限公司 解码端运动向量导出方法
MX2012010863A (es) * 2010-04-01 2012-10-15 Sony Corp Dispositivo y metodo de procesamiento de imagenes.
KR101752418B1 (ko) * 2010-04-09 2017-06-29 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
EP2580912B1 (en) 2010-07-09 2017-01-25 Samsung Electronics Co., Ltd Method for decoding video by using block merging
US9124898B2 (en) * 2010-07-12 2015-09-01 Mediatek Inc. Method and apparatus of temporal motion vector prediction
ES2785606T3 (es) 2010-07-20 2020-10-07 Ntt Docomo Inc Dispositivo de decodificación predictiva de imágenes, método de decodificación predictiva de imágenes
US9602813B2 (en) * 2010-08-18 2017-03-21 Sk Telecom Co., Ltd. Image encoding/decoding device and method, and reference picture indexing device and method
DK3001686T3 (da) * 2010-10-06 2020-03-23 Ntt Docomo Inc Indretning, fremgangsmåde og program til biprædiktiv billedafkodning
RU2010144450A (ru) 2010-10-29 2012-05-10 ЭлЭсАй Корпорейшн (US) Оценка движения для видео транскодера
WO2012070235A1 (ja) * 2010-11-24 2012-05-31 パナソニック株式会社 動きベクトル算出方法、画像符号化方法、画像復号方法、動きベクトル算出装置および画像符号化復号装置
US10778969B2 (en) 2010-12-17 2020-09-15 Sun Patent Trust Image coding method and image decoding method
ES2934221T3 (es) * 2010-12-22 2023-02-20 Lg Electronics Inc Método de intrapredicción y aparato que utiliza el método
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
KR102292708B1 (ko) 2011-01-07 2021-08-23 엘지전자 주식회사 영상 정보 부호화 방법 및 복호화 방법과 이를 이용한 장치
CN106851306B (zh) 2011-01-12 2020-08-04 太阳专利托管公司 动态图像解码方法和动态图像解码装置
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
JP5323273B2 (ja) * 2011-02-10 2013-10-23 パナソニック株式会社 動画像符号化方法、及び動画像符号化装置
WO2012114694A1 (ja) 2011-02-22 2012-08-30 パナソニック株式会社 動画像符号化方法、動画像符号化装置、動画像復号方法、および、動画像復号装置
US10171813B2 (en) 2011-02-24 2019-01-01 Qualcomm Incorporated Hierarchy of motion prediction video blocks
JP5883431B2 (ja) * 2011-02-25 2016-03-15 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 画像符号化方法および画像復号化方法
WO2012117728A1 (ja) 2011-03-03 2012-09-07 パナソニック株式会社 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、及び動画像符号化復号装置
GB2488816A (en) * 2011-03-09 2012-09-12 Canon Kk Mapping motion vectors from a plurality of reference frames to a single reference frame
CN102685479A (zh) * 2011-03-11 2012-09-19 华为技术有限公司 视频编解码处理方法和装置
US9648334B2 (en) 2011-03-21 2017-05-09 Qualcomm Incorporated Bi-predictive merge mode based on uni-predictive neighbors in video coding
PL3136727T3 (pl) 2011-04-12 2018-11-30 Sun Patent Trust Sposób kodowania ruchomych obrazów i urządzenie do kodowania ruchomych obrazów
WO2012160803A1 (ja) 2011-05-24 2012-11-29 パナソニック株式会社 画像符号化方法、画像符号化装置、画像復号方法、画像復号装置、および、画像符号化復号装置
CA2834123C (en) 2011-05-27 2020-02-11 Panasonic Corporation Image coding method, image coding apparatus, image decoding method, image decoding apparatus, and image coding and decoding apparatus
US9485518B2 (en) 2011-05-27 2016-11-01 Sun Patent Trust Decoding method and apparatus with candidate motion vectors
SG194746A1 (en) 2011-05-31 2013-12-30 Kaba Gmbh Image encoding method, image encoding device, image decoding method, image decoding device, and image encoding/decoding device
EP4270953A3 (en) 2011-05-31 2023-11-22 Sun Patent Trust Video decoding method, video decoding device
JP5786478B2 (ja) * 2011-06-15 2015-09-30 富士通株式会社 動画像復号装置、動画像復号方法、及び動画像復号プログラム
USRE47366E1 (en) 2011-06-23 2019-04-23 Sun Patent Trust Image decoding method and apparatus based on a signal type of the control parameter of the current block
MX2013013508A (es) 2011-06-23 2014-02-27 Panasonic Corp Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodificacion de imagenes.
TWI581615B (zh) 2011-06-24 2017-05-01 Sun Patent Trust A decoding method, a coding method, a decoding device, an encoding device, and a coding / decoding device
EP2725792B1 (en) 2011-06-24 2018-08-22 Sun Patent Trust Image decoding method and image decoding device
AU2012277214B2 (en) 2011-06-27 2016-05-05 Sun Patent Trust Decoding method, coding method, decoding apparatus, coding apparatus, and coding and decoding apparatus
WO2013001765A1 (ja) 2011-06-28 2013-01-03 パナソニック株式会社 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置
EP2728875B1 (en) 2011-06-28 2019-01-09 LG Electronics Inc. Method for setting motion vector list
WO2013001767A1 (ja) 2011-06-29 2013-01-03 パナソニック株式会社 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置
KR102060619B1 (ko) 2011-06-30 2019-12-30 선 페이턴트 트러스트 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치 및 화상 부호화 복호 장치
AU2012277220B2 (en) 2011-06-30 2016-08-11 Sun Patent Trust Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
KR101900986B1 (ko) 2011-06-30 2018-09-20 선 페이턴트 트러스트 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치, 및, 화상 부호화 복호 장치
US9232233B2 (en) * 2011-07-01 2016-01-05 Apple Inc. Adaptive configuration of reference frame buffer based on camera and background motion
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.
CN106851295B (zh) 2011-07-11 2019-10-18 太阳专利托管公司 编码方法及编码装置
EP2741499A4 (en) 2011-08-03 2014-12-10 Panasonic Ip Corp America VIDEO CODING METHOD, VIDEO CODING METHOD, VIDEO CODING DEVICE, VIDEO ENCODING DEVICE AND VIDEO ENCODING / DECODING DEVICE
CN103858428B (zh) 2011-10-19 2018-07-03 太阳专利托管公司 图像编码方法、图像编码装置、图像解码方法及图像解码装置
KR102365524B1 (ko) 2011-11-02 2022-02-23 타지반 투 엘엘씨 동화상 부호화 방법, 동화상 부호화 장치, 동화상 복호 방법, 동화상 복호 장치, 및, 동화상 부호화 복호 장치
JP5485969B2 (ja) * 2011-11-07 2014-05-07 株式会社Nttドコモ 動画像予測符号化装置、動画像予測符号化方法、動画像予測符号化プログラム、動画像予測復号装置、動画像予測復号方法及び動画像予測復号プログラム
AU2015201551B2 (en) * 2011-11-08 2015-06-18 Samsung Electronics Co., Ltd. Method and device for determining motion vector for video coding or video decoding
RU2566957C2 (ru) 2011-11-08 2015-10-27 Самсунг Электроникс Ко., Лтд. Способ и устройство для определения вектора движения в кодировании или декодировании видео
WO2013099031A1 (ja) * 2011-12-28 2013-07-04 株式会社安川電機 エンジニアリングツール
US20130177084A1 (en) * 2012-01-10 2013-07-11 Qualcomm Incorporated Motion vector scaling in video coding
TWI580259B (zh) * 2012-01-18 2017-04-21 Jvc Kenwood Corp Dynamic image decoding device, dynamic image decoding method, and dynamic image decoding program
PL2805511T3 (pl) 2012-01-20 2019-09-30 Sun Patent Trust Sposoby i urządzenie do kodowania i dekodowania wideo przy użyciu predykcji wektora ruchu w czasie
JPWO2013111596A1 (ja) * 2012-01-26 2015-05-11 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 動画像符号化方法および動画像符号化装置
CA2827194C (en) 2012-02-03 2018-01-16 Panasonic Corporation Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
EP2824920A4 (en) 2012-03-06 2016-02-17 Panasonic Ip Corp America VIDEO CODING METHOD, VIDEO CODING METHOD, VIDEO COORDING DEVICE, VIDEO CODING DEVICE AND VIDEO CODING / DECODING DEVICE
US10200709B2 (en) 2012-03-16 2019-02-05 Qualcomm Incorporated High-level syntax extensions for high efficiency video coding
US9247196B1 (en) * 2012-08-30 2016-01-26 Ambarella, Inc. High efficiency video coding for video with interlaced and progressive content using lookahead
CN104704827B (zh) 2012-11-13 2019-04-12 英特尔公司 用于下一代视频的内容自适应变换译码
US9106793B2 (en) 2013-01-03 2015-08-11 Cisco Technology, Inc. Method and apparatus for motion based participant switching in multipoint video conferences
EP3085085A4 (en) * 2014-01-29 2017-11-08 MediaTek Inc. Method and apparatus for adaptive motion vector precision
US10091507B2 (en) 2014-03-10 2018-10-02 Euclid Discoveries, Llc Perceptual optimization for model-based video encoding
US10097851B2 (en) 2014-03-10 2018-10-09 Euclid Discoveries, Llc Perceptual optimization for model-based video encoding
US9621917B2 (en) * 2014-03-10 2017-04-11 Euclid Discoveries, Llc Continuous block tracking for temporal prediction in video encoding
KR101635111B1 (ko) * 2014-05-15 2016-06-30 삼성전자주식회사 움직임 벡터를 부호화, 복호화하는 방법 및 장치
JP2016066922A (ja) * 2014-09-25 2016-04-28 ソニー株式会社 信号処理装置、撮像装置、および、それらにおける信号処理方法。
FR3029055B1 (fr) * 2014-11-24 2017-01-13 Ateme Procede d'encodage d'image et equipement pour la mise en oeuvre du procede
US10148965B2 (en) * 2015-03-04 2018-12-04 Panasonic Intellectual Property Management Co., Ltd. Moving image coding apparatus and moving image coding method
CN106303544B (zh) * 2015-05-26 2019-06-11 华为技术有限公司 一种视频编解码方法、编码器和解码器
US20190014326A1 (en) * 2017-07-06 2019-01-10 Intel Corporation Imu enhanced reference list management and encoding
US10602178B1 (en) * 2017-12-21 2020-03-24 Mozilla Corporation Systems and methods for frame context selection
CN116647695A (zh) 2018-09-06 2023-08-25 Lg电子株式会社 图像解码设备、图像编码设备和数据发送设备
CN111083491A (zh) 2018-10-22 2020-04-28 北京字节跳动网络技术有限公司 细化运动矢量的利用
WO2020098655A1 (en) 2018-11-12 2020-05-22 Beijing Bytedance Network Technology Co., Ltd. Motion vector storage for inter prediction
CN117319644A (zh) 2018-11-20 2023-12-29 北京字节跳动网络技术有限公司 基于部分位置的差计算
WO2020103870A1 (en) * 2018-11-20 2020-05-28 Beijing Bytedance Network Technology Co., Ltd. Inter prediction with refinement in video processing
CN117119181B (zh) * 2019-02-20 2024-03-26 北京达佳互联信息技术有限公司 用于视频编码和视频解码的方法、计算设备和存储介质
JP2022521554A (ja) 2019-03-06 2022-04-08 北京字節跳動網絡技術有限公司 変換された片予測候補の利用
US11601656B2 (en) * 2021-06-16 2023-03-07 Western Digital Technologies, Inc. Video processing in a data storage device

Family Cites Families (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US38563A (en) * 1863-05-19 Improvement jn lighting gas by electricity
US5086439A (en) * 1989-04-18 1992-02-04 Mitsubishi Denki Kabushiki Kaisha Encoding/decoding system utilizing local properties
JPH0420088A (ja) 1990-05-14 1992-01-23 Victor Co Of Japan Ltd フレーム間符号化装置
JP3031638B2 (ja) 1991-01-30 2000-04-10 富士通株式会社 蓄積用動画像符号化方式における補間フレームのベクトル探索方法
JPH05137131A (ja) 1991-11-13 1993-06-01 Sony Corp フレーム間動き予測方法
JPH0662391A (ja) 1992-08-10 1994-03-04 Nippon Telegr & Teleph Corp <Ntt> 動画像予測符号化方法
US5329365A (en) * 1993-07-07 1994-07-12 Rca Thomson Licensing Corporation Method and apparatus for providing compressed non-interlaced scanned video signal
KR0148154B1 (ko) 1994-06-15 1998-09-15 김광호 움직임크기에 따른 동영상데이타의 부호화방법 및 장치
JP3513277B2 (ja) 1995-08-29 2004-03-31 シャープ株式会社 映像符号化装置及び映像復号化装置
US5724446A (en) * 1995-04-18 1998-03-03 Advanced Micro Devices, Inc. Video decoder apparatus using non-reference frame as an additional prediction source and method therefor
US5809173A (en) * 1995-04-18 1998-09-15 Advanced Micro Devices, Inc. Method and apparatus for improved video decompression using previous frame DCT coefficients
EP1274254B1 (en) * 1995-08-29 2011-07-06 Sharp Kabushiki Kaisha Video coding device and video decoding device with a motion compensated interframe prediction
JP2001224036A (ja) * 1995-10-18 2001-08-17 Sharp Corp 動画像符号化装置
JP2872109B2 (ja) * 1996-05-14 1999-03-17 株式会社グラフィックス・コミュニケーション・ラボラトリーズ 動画像符号化方法および装置
JP3344577B2 (ja) 1996-09-09 2002-11-11 ソニー株式会社 画像符号化装置および画像符号化方法、画像復号化装置および画像復号化方法、並びに記録方法
JP3263807B2 (ja) * 1996-09-09 2002-03-11 ソニー株式会社 画像符号化装置および画像符号化方法
JP3019787B2 (ja) 1996-09-20 2000-03-13 日本電気株式会社 動きベクトル検出装置
JPH10126787A (ja) 1996-10-14 1998-05-15 Nec Eng Ltd Pピクチャの予測ベクトルをオフセットベクトルとした双方向予測ベクトル検出回路
US5991447A (en) 1997-03-07 1999-11-23 General Instrument Corporation Prediction and coding of bi-directionally predicted video object planes for interlaced digital video
US6005980A (en) * 1997-03-07 1999-12-21 General Instrument Corporation Motion estimation and compensation of video object planes for interlaced digital video
JP3776735B2 (ja) 1997-04-09 2006-05-17 松下電器産業株式会社 画像予測復号化方法,画像予測復号化装置,画像予測符号化方法,画像予測符号化装置,及びデータ記憶媒体
SG65064A1 (en) * 1997-04-09 1999-05-25 Matsushita Electric Ind Co Ltd Image predictive decoding method image predictive decoding apparatus image predictive coding method image predictive coding apparatus and data storage media
DE69838281T2 (de) 1997-06-25 2008-05-15 Nippon Telegraph And Telephone Corp. Bewegungsprädiktives bildkodierungsverfahren sowie speichermedium zur speicherung des entsprechenden programms
JPH1169356A (ja) * 1997-08-25 1999-03-09 Mitsubishi Electric Corp 動画像符号化方式及び動画像復号方式
US6807231B1 (en) * 1997-09-12 2004-10-19 8×8, Inc. Multi-hypothesis motion-compensated video image predictor
US6249318B1 (en) * 1997-09-12 2001-06-19 8×8, Inc. Video coding/decoding arrangement and method therefor
US6396874B1 (en) * 1997-11-12 2002-05-28 Sony Corporation Decoding method and apparatus and recording method and apparatus for moving picture data
JP3523481B2 (ja) 1998-02-23 2004-04-26 シャープ株式会社 映像符号化装置及び映像復号化装置並びに映像符号化方法及び映像復号化方法
JP3724204B2 (ja) * 1998-03-10 2005-12-07 ソニー株式会社 符号化装置および方法、並びに記録媒体
US6274537B1 (en) * 1998-08-05 2001-08-14 Samsung Electronics Co., Ltd. Use of alkoxy N-hydroxyalkyl alkanamide as resist removing agent, composition for removing resist, method for preparing the same and resist removing method using the same
GB2360662B (en) 1999-05-13 2002-01-09 Nec Corp Picture coding apparatus
JP3329768B2 (ja) 1999-07-05 2002-09-30 日本電信電話株式会社 画像符号化データの再符号化方法およびそのプログラム記録媒体
JP2001045475A (ja) 1999-07-27 2001-02-16 Matsushita Electric Ind Co Ltd 映像信号階層化符号化装置と映像信号階層化復号化装置及びプログラム記録媒体
JP2001086508A (ja) * 1999-09-13 2001-03-30 Victor Co Of Japan Ltd 動画像復号方法及び動画像復号装置
JP3757088B2 (ja) * 1999-10-26 2006-03-22 日本電気株式会社 動画像符号化装置および方法
US7253831B2 (en) * 2000-05-10 2007-08-07 Polycom, Inc. Video coding using multiple buffers
GB2362532B (en) * 2000-05-15 2004-05-05 Nokia Mobile Phones Ltd Video coding
US7027711B2 (en) * 2000-06-26 2006-04-11 Matsushita Electric Industrial Co., Ltd. Editing apparatus for an optical disk, computer-readable storage medium, and computer program
JP4245790B2 (ja) 2000-08-29 2009-04-02 オリンパス株式会社 超音波処置具
US6738980B2 (en) * 2001-11-15 2004-05-18 Industrial Technology Research Institute Methods and systems for video streaming with VCR functionality
CA2468087C (en) * 2001-11-21 2013-06-25 General Instrument Corporation Macroblock level adaptive frame/field coding for digital video content
EP2268041A1 (en) 2001-11-21 2010-12-29 General Instrument Corporation Picture level adaptive frame/field coding for digital video content
US6980596B2 (en) * 2001-11-27 2005-12-27 General Instrument Corporation Macroblock level adaptive frame/field coding for digital video content
US7003035B2 (en) * 2002-01-25 2006-02-21 Microsoft Corporation Video coding methods and apparatuses
JP2004088722A (ja) 2002-03-04 2004-03-18 Matsushita Electric Ind Co Ltd 動画像符号化方法および動画像復号化方法
PT3525464T (pt) * 2002-04-19 2021-04-06 Panasonic Ip Corp America Método e sistema de codificação e descodificação de imagem
KR100506864B1 (ko) 2002-10-04 2005-08-05 엘지전자 주식회사 모션벡터 결정방법

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011093688A2 (ko) * 2010-02-01 2011-08-04 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
WO2011093688A3 (ko) * 2010-02-01 2012-01-05 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
US9516314B2 (en) 2011-06-30 2016-12-06 JVC Kenwood Corporation Picture decoding device with a motion compensation prediction
US9681149B1 (en) 2011-06-30 2017-06-13 JVC Kenwood Corporation Picture encoding device, picture encoding method, picture encoding program, picture decoding device, picture decoding method, and picture decoding program
US9686564B2 (en) 2011-06-30 2017-06-20 JVC Kenwood Corporation Picture encoding device, picture encoding method, picture encoding program, picture decoding device, picture decoding method, and picture decoding program
US9693075B2 (en) 2011-06-30 2017-06-27 JVC Kenwood Corporation Picture encoding device, picture encoding method, picture encoding program, picture decoding device, picture decoding method, and picture decoding program
US9854266B2 (en) 2011-06-30 2017-12-26 JVC Kenwood Corporation Picture encoding device, picture encoding method, picture encoding program, picture decoding device, picture decoding method, and picture decoding program
US10009624B2 (en) 2011-06-30 2018-06-26 JVC Kenwood Corporation Picture encoding device, picture encoding method, picture encoding program, picture decoding device, picture decoding method, and picture decoding program
KR20180112125A (ko) * 2011-06-30 2018-10-11 가부시키가이샤 제이브이씨 켄우드 화상 부호화 장치, 화상 부호화 방법, 화상 부호화 프로그램, 화상 복호 장치, 화상 복호 방법 및 화상 복호 프로그램
KR20190087670A (ko) * 2011-06-30 2019-07-24 가부시키가이샤 제이브이씨 켄우드 화상 부호화 장치, 화상 부호화 방법, 화상 부호화 프로그램, 화상 복호 장치, 화상 복호 방법 및 화상 복호 프로그램
KR20200042955A (ko) * 2011-06-30 2020-04-24 가부시키가이샤 제이브이씨 켄우드 화상 부호화 장치, 화상 부호화 방법, 화상 부호화 프로그램, 화상 복호 장치, 화상 복호 방법 및 화상 복호 프로그램
KR20210005997A (ko) * 2011-06-30 2021-01-15 가부시키가이샤 제이브이씨 켄우드 화상 부호화 장치, 화상 부호화 방법, 화상 부호화 프로그램, 화상 복호 장치, 화상 복호 방법 및 화상 복호 프로그램
KR20210091356A (ko) * 2011-06-30 2021-07-21 가부시키가이샤 제이브이씨 켄우드 화상 부호화 장치, 화상 부호화 방법, 화상 부호화 프로그램, 화상 복호 장치, 화상 복호 방법 및 화상 복호 프로그램
KR20220025216A (ko) * 2011-06-30 2022-03-03 가부시키가이샤 제이브이씨 켄우드 화상 부호화 장치, 화상 부호화 방법, 화상 부호화 프로그램, 화상 복호 장치, 화상 복호 방법 및 화상 복호 프로그램

Also Published As

Publication number Publication date
EP1411729A4 (en) 2007-03-07
KR20100005233A (ko) 2010-01-14
EP1411729A1 (en) 2004-04-21
US8958480B2 (en) 2015-02-17
KR20040099100A (ko) 2004-11-26
HUE045566T2 (hu) 2020-01-28
US20170048544A1 (en) 2017-02-16
HUE053922T2 (hu) 2021-07-28
US7940845B2 (en) 2011-05-10
US9693074B2 (en) 2017-06-27
AU2003231356B2 (en) 2009-10-01
EP1441537A1 (en) 2004-07-28
US10440386B2 (en) 2019-10-08
US20100202539A1 (en) 2010-08-12
US20190014341A1 (en) 2019-01-10
PT3525465T (pt) 2021-05-10
HUE044739T2 (hu) 2019-11-28
HUE044582T2 (hu) 2019-11-28
US20170324976A1 (en) 2017-11-09
ES2742799T3 (es) 2020-02-17
US20140064376A1 (en) 2014-03-06
US20040136461A1 (en) 2004-07-15
US9723323B2 (en) 2017-08-01
US20160112716A1 (en) 2016-04-21
US9723325B2 (en) 2017-08-01
US20170085907A1 (en) 2017-03-23
US9948947B2 (en) 2018-04-17
US8964848B2 (en) 2015-02-24
US20170048546A1 (en) 2017-02-16
US20080063075A1 (en) 2008-03-13
AU2003235174A1 (en) 2003-11-03
US10404995B2 (en) 2019-09-03
PT3525467T (pt) 2021-04-08
US20170048547A1 (en) 2017-02-16
US20170302955A1 (en) 2017-10-19
US9955181B2 (en) 2018-04-24
US20180376162A1 (en) 2018-12-27
US8929453B2 (en) 2015-01-06
EP3525466A1 (en) 2019-08-14
KR20080031519A (ko) 2008-04-08
US20170302956A1 (en) 2017-10-19
CA2451568A1 (en) 2003-10-30
ES2745058T3 (es) 2020-02-27
US20140064375A1 (en) 2014-03-06
CN1518834A (zh) 2004-08-04
ES2743606T3 (es) 2020-02-20
HUE053955T2 (hu) 2021-08-30
ES2745044T3 (es) 2020-02-27
US20120328024A1 (en) 2012-12-27
US9723324B2 (en) 2017-08-01
US8290049B2 (en) 2012-10-16
EP3525466B1 (en) 2022-02-09
KR101011849B1 (ko) 2011-01-31
CN1290341C (zh) 2006-12-13
HUE044584T2 (hu) 2019-11-28
US20150172701A1 (en) 2015-06-18
HUE044616T2 (hu) 2019-11-28
MXPA03011334A (es) 2004-04-20
KR100931746B1 (ko) 2009-12-14
US8971411B2 (en) 2015-03-03
US9485519B2 (en) 2016-11-01
US20150131736A1 (en) 2015-05-14
US20170048545A1 (en) 2017-02-16
US20190020891A1 (en) 2019-01-17
US9083980B2 (en) 2015-07-14
US9729896B2 (en) 2017-08-08
EP1411729B1 (en) 2016-03-23
ES2745059T3 (es) 2020-02-27
CN1518833A (zh) 2004-08-04
US20140072047A1 (en) 2014-03-13
US10097855B2 (en) 2018-10-09
PT3525464T (pt) 2021-04-06
CN1277419C (zh) 2006-09-27
CA2451568C (en) 2012-08-21
AU2003231356A1 (en) 2003-11-03
US20160100185A1 (en) 2016-04-07
US20140072046A1 (en) 2014-03-13
US10397602B2 (en) 2019-08-27
US9516338B2 (en) 2016-12-06
MY155930A (en) 2015-12-31
US9948948B2 (en) 2018-04-17
WO2003090475A1 (fr) 2003-10-30
CA2451571A1 (en) 2003-10-30
WO2003090473A1 (fr) 2003-10-30
HUE054106T2 (hu) 2021-08-30
US7733960B2 (en) 2010-06-08
KR100931750B1 (ko) 2009-12-14
US9264730B2 (en) 2016-02-16
US20170302957A1 (en) 2017-10-19
EP1441537A4 (en) 2006-06-07
US8605789B2 (en) 2013-12-10

Similar Documents

Publication Publication Date Title
KR100931746B1 (ko) 움직임 벡터 계산방법
KR101068707B1 (ko) 움직임 벡터 계산방법
KR100967237B1 (ko) 동화상 부호화 방법 및 동화상 복호화 방법
KR100948714B1 (ko) 동화상 부호화 방법 및 동화상 복호화 방법
KR100985366B1 (ko) 움직임 보상 방법, 화상 부호화 방법 및 화상 복호화 방법
JP5167233B2 (ja) 動きベクトル符号化方法、装置およびデータ記憶媒体
JP4114859B2 (ja) 動きベクトル符号化方法および動きベクトル復号化方法
JP2004208259A (ja) 動きベクトル計算方法
JP2004208258A (ja) 動きベクトル計算方法
JP4672752B2 (ja) 動きベクトル符号化方法
JP3878591B2 (ja) 動画像符号化方法および動画像復号化方法
JP3884472B2 (ja) 動画像符号化方法および動画像復号化方法
JP2006187039A (ja) 動画像符号化方法および動画像復号化方法
BRPI0304534B1 (pt) método e aparelho para determinar o vetor de movimento

Legal Events

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

Payment date: 20121119

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20131119

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20141117

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20151118

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20161123

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20171114

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20181121

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20191119

Year of fee payment: 11