KR20160084864A - 동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램 - Google Patents

동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램 Download PDF

Info

Publication number
KR20160084864A
KR20160084864A KR1020167018431A KR20167018431A KR20160084864A KR 20160084864 A KR20160084864 A KR 20160084864A KR 1020167018431 A KR1020167018431 A KR 1020167018431A KR 20167018431 A KR20167018431 A KR 20167018431A KR 20160084864 A KR20160084864 A KR 20160084864A
Authority
KR
South Korea
Prior art keywords
motion vector
block
candidate list
vector candidate
predicted
Prior art date
Application number
KR1020167018431A
Other languages
English (en)
Other versions
KR101742449B1 (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
Priority claimed from JP2012043272A external-priority patent/JP5807588B2/ja
Priority claimed from JP2012043273A external-priority patent/JP5682582B2/ja
Application filed by 가부시키가이샤 제이브이씨 켄우드 filed Critical 가부시키가이샤 제이브이씨 켄우드
Priority claimed from PCT/JP2012/001503 external-priority patent/WO2012120870A1/ja
Publication of KR20160084864A publication Critical patent/KR20160084864A/ko
Application granted granted Critical
Publication of KR101742449B1 publication Critical patent/KR101742449B1/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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/57Motion estimation characterised by a search window with variable size or shape
    • 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/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

Abstract

제1 예측 벡터 후보 리스트 생성부(130)는, 부호화 대상 블록에 인접하는 부호화 종료 블록의 움직임 벡터에서 제1 예측 움직임 벡터 후보 리스트를 생성한다.제 2 예측 벡터 후보 리스트 생성부(132)는 부호화 종료 화상에 있어서, 부호화 대상 블록과 동일 위치의 블록 및 동일 위치의 블록에 인접하는 블록의 움직임 벡터에서 제2 예측 움직임 벡터 후보 리스트를 생성한다. 결합 판정부(131)는 부호화 대상 블록의 블록 사이즈와 문턱 사이즈의 비교에 의해, 제1 및 제2 예측 벡터 후보 리스트를 결합한 제3 예측 벡터 후보 리스트를 생성하는지 아닌지를 판정한다. 예측 벡터 후보 리스트 결정부(133)는 부호화 대상 블록의 블록 사이즈가 문턱 사이즈보다도 작은 경우, 제2 예측 벡터 후보 리스트를 결합시키지 않고, 제1 예측 벡터 후보 리스트에서 제3 예측 벡터 후보 리스트를 생성한다.

Description

동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램{VIDEO ENCODING DEVICE, VIDEO ENCODING METHOD, VIDEO ENCODING PROGRAM, VIDEO DECODING DEVICE, VIDEO DECODING METHOD, AND VIDEO DECODING PROGRAM}
본 발명은 움직임 보상 예측을 이용한 동화상 부호화 및 복호 기술에 관한 것이고, 특히 움직임 보상 예측으로 이용하는 움직임 벡터의 부호화 및 복호 기술에 관한 것이다.
일반적인 동화상 압축 부호화에는 움직임 보상 예측이 이용된다. 움직임 보상 예측은, 대상 화상을 작은 블록으로 분할하고, 복호 종료의 화상을 참조 화상으로 움직임 벡터에서 나타내는 움직임 방향으로 움직인 양만큼 대상 화상의 대상 블록과 동일한 위치에서 이동한 위치의 참조 화상을 예측 신호로서 생성하는 기술이다. 움직임 보상 예측에는 1개의 움직임 벡터를 이용해서 단일 방향으로 실행하는 것과, 2개의 움직임 벡터를 이용하여 쌍방향으로 실행하는 것이 있다.
또, 움직임 벡터에 대해서도 처리 대상 블록에 인접하는 부호화 종료 블록의 움직임 벡터를 예측 움직임 벡터("예측 벡터"라고도 함)로 하고, 처리 대상 블록의 움직임 벡터와 예측 벡터와의 차분을 구하고, 차분 벡터를 부호화 벡터로서 전송함으로써 압축 효율을 향상시키고 있다.
MPEG-4AVC에서는, MPEG-2보다도 움직임 보상 예측의 블록 사이즈를 작고 다양하게 함으로써 움직임 보상 예측의 효율을 향상시키고 있다.
한편, 블록 사이즈를 작게 함으로써 움직임 벡터수가 증가하기 때문에, 부호화 벡터의 부호량이 문제가 되었다.
그 때문에, MPEG-2에서는 단순히 처리 대상 블록의 좌측에 인접하는 블록의 움직임 벡터를 예측 벡터로 하고 있었지만(비특허문헌 1), MPEG-4AVC에서는 복수의 인접 블록의 움직임 벡터의 중앙값을 예측 벡터로 함으로써 예측 벡터의 정보를 향상시키고, 부호화 벡터의 부호량의 증가를 억제하고 있다(비특허문헌 2). 단지, MPEG-4AVC에 있어서, 부호화 종료된 다른 화상의 움직임 벡터를 이용해서, 부호화 벡터의 부호화 효율을 향상시키는 기술이 알려져 있다.
ISO/IEC 13818-2 Information technology-Generic coding of moving pictures and associated audio information:Video ISO/IEC 14496-10 Information technology-Coding of audio-visual objects-Part 10:Advanced Video Coding
비특허문헌 1 및 2 중 어느 하나에 기재된 방법에 있어서도, 예측 벡터는 한 가지만 얻을 수 있기 때문에 예측 정도가 나쁘고, 부호화 효율이 좋지 않게 되는 문제가 있다. 본 발명자들은 예측 벡터의 후보를 복수 이용하는 방법을 취하는 것을 생각했지만, 이 경우, 예측 벡터의 후보를 식별하기 위한 인덱스를 부호화하는 것이 필요하게 되고, 인덱스의 부호량이 증가한다는 문제가 있는 것을 인식하는데 이르렀다.
본 발명은 이러한 상황에 비추어 이루어진 것이며, 그 목적은 움직임 벡터의 예측 정도와 부호화 효율을 향상시킬 수 있는 동화상 부호화 및 복호 기술을 제공하는 것에 있다.
상기 과제를 해결하기 위해, 본 발명의 일 양태의 동화상 부호화 장치는 블록 단위로 움직임 보상 예측을 실행하는 동화상 부호화 장치이고, 부호화 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 부호화 종료 화상에 있는 블록에서 예측 움직임 벡터 후보를 도출하고, 상기 부호화 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 도출하지 않는 예측 움직임 벡터 후보 생성부(133)를 구비한다.
본 발명의 다른 양태도 동화상 부호화 장치이다. 이 장치는, 블록 단위로 움직임 보상 예측을 실행하는 동화상 부호화 장치이고, 부호화 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 부호화 종료 화상에 있는 블록에서 얻어지는 예측 움직임 벡터 후보를 예측 움직임 벡터 후보 리스트에 포함하고, 상기 부호화 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 상기 예측 움직임 벡터 후보 리스트에 포함하지 않는 예측 움직임 벡터 후보 리스트 생성부(133)와, 상기 예측 움직임 벡터 후보 리스트에서 상기 부호화 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택부(121)와, 상기 예측 움직임 벡터 후보 리스트에서 상기 선택된 예측 움직임 벡터의 위치를 나타내는 정보를 부호화하는 부호화부(104)를 구비한다.
본 발명의 또 다른 양태도 동화상 부호화 장치이다. 이 장치는, 블록 단위로 움직임 보상 예측을 실행하는 동화상 부호화 장치이고, 부호화 대상 블록에 인접하는 블록에서 공간 예측 움직임 벡터 후보를 도출하는 공간 예측 움직임 벡터 후보 생성부(130)와, 부호화 종료 화상에 있는 블록에서 시간 예측 움직임 벡터 후보를 도출하는 시간 예측 움직임 벡터 후보 생성부(132)와, 시간 예측 움직임 벡터의 이용을 허가하는지 아닌지를 나타내는 이용 허가 정보가 허가함을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보와 상기 시간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하고, 상기 이용 허가 정보가 허가하지 않음을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하는 예측 움직임 벡터 후보 리스트 생성부(133)와, 상기 예측 움직임 벡터 후보 리스트에서 상기 부호화 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택부(121)와, 상기 예측 움직임 벡터 후보 리스트에서 상기 선택된 예측 움직임 벡터의 위치를 나타내는 정보를 부호화 하는 부호화부(104)를 구비한다.
본 발명의 또 다른 양태도 동화상 부호화 장치이다. 이 장치는, 복수의 블록 사이즈로 움직임 보상 예측을 실행하는 동화상 부호화 장치이고, 부호화 대상 블록에 인접하는 부호화 종료의 1개 이상의 블록의 움직임 벡터에서 제1 예측 움직임 벡터의 후보를 포함하는 제1 예측 벡터 후보 리스트를 생성하는 제1 예측 벡터 후보 리스트 생성부(130)와, 부호화 종료 화상에서 상기 부호화 대상 블록과 동일 위치의 블록 및 상기 동일 위치의 블록에 인접하는 1개 이상의 블록의 움직임 벡터에서 제2 예측 움직임 벡터의 후보를 포함하는 제2 예측 벡터 후보 리스트를 생성하는 제2 예측 벡터 후보 리스트 생성부(132)와, 상기 부호화 대상 블록의 블록 사이즈와 소정의 문턱 사이즈와의 비교 결과에 의해, 상기 제1 예측 벡터 후보 리스트와 상기 제2 예측 벡터 후보 리스트를 결합한 제3 예측 벡터 후보 리스트를 생성하는지 아닌지를 판정하는 결합 판정부(131)와, 상기 부호화 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈보다도 작은 경우, 상기 제2 예측 벡터 후보 리스트를 결합하지 않고, 상기 제1 예측 벡터 후보 리스트에서 상기 제3 예측 벡터 후보 리스트를 생성하는 제3 예측 벡터 후보 리스트 생성부(133)와, 상기 제3 예측 벡터 후보 리스트에서 상기 부호화 대상 블록의 예측 움직임 벡터를 선택하는 예측 벡터 선택부(121)와, 상기 제3 예측 벡터 후보 리스트에서 상기 선택된 예측 움직임 벡터의 위치를 나타내는 정보를 부호화하는 부호화부(104)를 구비한다.
본 발명의 또 다른 양태도 동화상 부호화 장치이다. 이 장치는, 복수의 블록 사이즈로 움직임 보상 예측을 실행하는 동화상 부호화 장치이고, 부호화 종료 블록의 움직임 벡터를 최소 블록 사이즈 단위로 할당된 메모리 영역에 격납하여 관리하는 제1 움직임 벡터 기억부(111)와, 상기 제1 움직임 벡터 기억부(111)를 참조하여, 부호화 대상 블록에 인접하는 부호화 종료의 1개 이상의 블록의 움직임 벡터에서 제1 예측 움직임 벡터의 후보를 포함하는 제1 예측 벡터 후보 리스트를 생성하는 제1 예측 벡터 후보 리스트 생성부(130)와, 부호화 종료 화상의 최소 블록 사이즈 단위의 움직임 벡터를 소정의 압축 사이즈로 정리하여 1개의 대표 움직임 벡터로 치환하고, 압축 사이즈 단위로 할당된 메모리 영역에 격납하여 관리하는 제2 움직임 벡터 기억부(302)와, 상기 제2 움직임 벡터 기억부(302)를 참조하여, 부호화 종료 화상에서 상기 부호화 대상 블록과 동일 위치의 블록 및 상기 동일 위치의 블록에 인접하는 1개 이상의 블록의 움직임 벡터에서 제2 예측 움직임 벡터의 후보를 포함하는 제2 예측 벡터 후보 리스트를 생성하는 제2 예측 벡터 후보 리스트 생성부(132)와, 상기 부호화 대상 블록의 블록 사이즈와, 소정의 문턱 사이즈와의 비교 결과에 의해, 상기 제1 예측 벡터 후보 리스트와 상기 제2 예측 벡터 후보 리스트를 결합한 제3 예측 벡터 후보 리스트를 생성하는지 아닌지를 판정하는 결합 판정부(131)와, 상기 부호화 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈보다도 작은 경우, 상기 제2 예측 벡터 후보 리스트를 결합시키지 않고, 상기 제1 예측 벡터 후보 리스트에서 상기 제3 예측 벡터 후보 리스트를 생성하는 제3 예측 벡터 후보 리스트 생성부(133)와, 상기 제3 예측 벡터 후보 리스트에서 상기 부호화 대상 블록의 예측 움직임 벡터를 선택하는 예측 벡터 선택부(121)와, 상기 제3 예측 벡터 후보 리스트에서 상기 선택된 예측 움직임 벡터의 위치를 나타내는 정보를 부호화하는 부호화부(104)를 구비한다.
본 발명의 또 다른 양태는, 동화상 부호화 방법이다. 이 방법은, 블록 단위로 움직임 보상 예측을 실행하는 동화상 부호화 방법이고, 부호화 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 부호화 종료 화상에 있는 블록에서 예측 움직임 벡터 후보를 도출하고, 상기 부호화 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 도출하지 않는 예측 움직임 벡터 후보 생성 단계를 구비한다.
본 발명의 또 다른 양태도 동화상 부호화 방법이다. 이 방법은, 블록 단위로 움직임 보상 예측을 실행하는 동화상 부호화 방법이고, 부호화 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 부호화 종료 화상에 있는 블록에서 얻어지는 예측 움직임 벡터 후보를 예측 움직임 벡터 후보 리스트에 포함하고, 상기 부호화 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 상기 예측 움직임 벡터 후보 리스트에 포함하지 않는 예측 움직임 벡터 후보 리스트 생성 단계와, 상기 예측 움직임 벡터 후보 리스트에서 상기 부호화 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택 단계와, 상기 예측 움직임 벡터 후보 리스트에서 상기 선택된 예측 움직임 벡터의 위치를 나타내는 정보를 부호화하는 부호화 단계를 구비한다.
본 발명의 또 다른 양태도, 동화상 부호화 방법이다. 이 방법은, 블록 단위로 움직임 보상 예측을 실행하는 동화상 부호화 방법이고, 부호화 대상 블록에 인접하는 블록에서 공간 예측 움직임 벡터 후보를 도출하는 공간 예측 움직임 벡터 후보 생성 단계와, 부호화 종료 화상에 있는 블록에서 시간 예측 움직임 벡터 후보를 도출하는 시간 예측 움직임 벡터 후보 생성 단계와, 시간 예측 움직임 벡터의 이용을 허가하는지 아닌지를 나타내는 이용 허가 정보가 허가함을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보와 상기 시간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하고, 상기 이용 허가 정보가 허가하지 않음을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하는 예측 움직임 벡터 후보 리스트 생성 단계와, 상기 예측 움직임 벡터 후보 리스트에서 상기 부호화 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택 단계와, 상기 예측 움직임 벡터 후보 리스트에서 상기 선택된 예측 움직임 벡터의 위치를 나타내는 정보를 부호화하는 부호화 단계를 구비한다.
본 발명의 어느 양태의 동화상 복호 장치는, 블록 단위로 움직임 보상 예측을 실행하는 동화상 복호 장치이고, 복호 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록도에서 예측 움직임 벡터 후보를 도출하고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하인 경우, 상기 예측 움직임 벡터 후보를 도출하지 않는 예측 움직임 벡터 후보 생성부(133)를 구비한다.
본 발명의 다른 양태도 동화상 복호 장치이다. 이 장치는, 블록 단위로 움직임 보상 예측을 실행하는 동화상 복호 장치이고, 복호 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록에서 얻어지는 예측 움직임 벡터 후보를 예측 움직임 벡터 후보 리스트에 포함하고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 상기 예측 움직임 벡터 후보 리스트에 포함하지 않는 예측 움직임 벡터 후보 리스트 생성부(133)와, 상기 예측 움직임 벡터 후보 리스트에서 참조해야하는 예측 움직임 벡터의 위치를 나타내는 정보를 복호하는 복호부(201)와, 상기 예측 움직임 벡터 후보 리스트에서 참조해야하는 예측 움직임 벡터의 위치를 나타내는 정보에 기초하여 상기 예측 움직임 벡터 후보 리스트에서 상기 복호 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택부(221)를 구비한다.
본 발명의 또 다른 양태도 동화상 복호 장치이다. 이 장치는, 블록 단위로 움직임 보상 예측을 실행하는 동화상 복호 장치이고, 예측 움직임 벡터 후보 리스트에서 참조해야하는 예측 움직임 벡터의 위치를 나타내는 정보를 복호하는 복호부(201)와, 복호 대상 블록에 인접하는 블록에서 공간 예측 움직임 벡터 후보를 도출하는 공간 예측 움직임 벡터 후보 생성부(130)와, 복호 종료 화상에 있는 블록에서 시간 예측 움직임 벡터 후보를 도출하는 시간 예측 움직임 벡터 후보 생성부(132)와, 시간 예측 움직임 벡터의 이용을 허가하는지 아닌지를 나타내는 이용 허가 정보가 허용함을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보와 상기 시간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하고, 상기 이용 허가 정보가 허가하지 않음을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하는 예측 움직임 벡터 후보 리스트 생성부(133)와, 상기 예측 움직임 벡터의 위치를 나타내는 정보에 기초하여 상기 예측 움직임 벡터 후보 리스트에서 상기 복호 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택부(221)를 구비한다.
본 발명의 또 다른 양태도 동화상 복호 장치이다. 이 장치는, 복수의 블록 사이즈로 움직임 보상 예측을 실행하는 동화상 복호 장치이고, 예측 벡터 후보 리스트에서 참조해야하는 예측 움직임 벡터의 위치를 나타내는 정보를 복호하는 복호부(201)와, 복호 대상 블록에 인접하는 복호 종료의 1개 이상의 블록의 움직임 벡터에서 제1 예측 움직임 벡터의 후보를 포함하는 제1 예측 벡터 후보 리스트를 생성하는 제1 예측 벡터 후보 리스트 생성부(130)와, 복호 종료 화상에서 상기 복호 대상 블록과 동일 위치의 블록 및 상기 동일 위치의 블록에 인접하는 1개 이상의 블록의 움직임 벡터에서 제2 예측 움직임 벡터의 후보를 포함하는 제2 예측 벡터 후보 리스트를 생성하는 제2 예측 벡터 후보 리스트 생성부(132)와, 상기 복호 대상 블록의 블록 사이즈와 소정의 문턱 사이즈와의 비교 결과에 의해, 상기 제1 예측 벡터 후보 리스트와 상기 제2 예측 벡터 후보 리스트를 결합한 제3 예측 벡터 후보 리스트를 생성하는지 아닌지를 판정하는 결합 판정부(131)와, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈보다도 작은 경우, 상기 제2 예측 벡터 후보 리스트를 결합하지 않고, 상기 제1 예측 벡터 후보 리스트에서 상기 제3 예측 벡터 후보 리스트를 생성하는 제3 예측 벡터 후보 리스트 생성부(133)와, 상기 참조해야 하는 예측 움직임 벡터의 위치를 나타내는 정보에 기초하여 상기 제3 예측 벡터 후보 리스트에서 상기 복호 대상 블록의 예측 움직임 벡터를 선택하는 예측 벡터 선택부(221)를 구비한다.
본 발명의 또 다른 양태도 동화상 복호 장치이다. 이 장치는, 복수의 블록 사이즈로 움직임 보상 예측을 실행하는 동화상 복호 장치이고, 예측 벡터 후보 리스트에서 참조해야하는 예측 움직임 벡터의 위치를 나타내는 정보를 복호하는 복호부(201)와, 복호 종료의 블록의 움직임 벡터를 최소 블록 사이즈 단위로 할당된 메모리 영역에 격납하여 관리하는 제1 움직임 벡터 기억부(207)와, 상기 제1 움직임 벡터 기억부(207)를 참조하여 복호 대상 블록에 인접하는 복호 종료의 1개 이상의 블록의 움직임 벡터에서 제1 예측 움직임 벡터의 후보를 포함하는 제1 예측 벡터 후보 리스트를 생성하는 제1 예측 벡터 후보 리스트 생성부(130)와, 복호 종료 화상의 최소 블록 사이즈 단위의 움직임 벡터를 소정의 압축 사이즈로 정리하여 1개의 대표 움직임 벡터로 치환하고, 압축 사이즈 단위로 할당된 메모리 영역에 격납하여 관리하는 제2 움직임 벡터 기억부(402)와 상기 제2 움직임 벡터 기억부(402)를 참조하여, 복호 종료 화상에서 상기 복호 대상 블록과 동일 위치의 블록 및 상기 동일 위치의 블록에 인접하는 1개 이상의 블록의 움직임 벡터에서 제2 예측 움직임 벡터의 후보를 포함하는 제2 예측 벡터 후보 리스트를 생성하는 제2 예측 벡터 후보 리스트 생성부(132)와, 상기 복호 대상 블록의 블록 사이즈와 소정의 문턱 사이즈와의 비교 결과에 의해, 상기 제1 예측 벡터 후보 리스트와 상기 제2 예측 벡터 후보 리스트를 결합한 제3 예측 벡터 후보 리스트를 생성하는지 아닌지를 판정하는 결합 판정부(131)와, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈보다도 작은 경우, 상기 제2 예측 벡터 후보 리스트를 결합하지 않고, 상기 제1 예측 벡터 후보 리스트에서 상기 제3 예측 벡터 후보 리스트를 생성하는 제3 예측 벡터 후보 리스트 생성부(133)와, 상기 참조해야 하는 예측 움직임 벡터의 위치를 나타내는 정보에 기초하여 상기 제3 예측 벡터 후보 리스트에서 상기 복호 대상 블록의 예측 움직임 벡터를 선택하는 예측 벡터 선택부(221)를 구비한다.
본 발명의 또 다른 양태는, 동화상 복호 방법이다. 이 방법은, 블록 단위로 움직임 보상 예측을 실행하는 동화상 복호 방법이고, 복호 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록에서 예측 움직임 벡터 후보를 도출하고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 도출하지 않는 예측 움직임 벡터 후보 생성 단계를 구비한다.
본 발명의 또 다른 양태도 동화상 복호화 방법이다. 이 방법은, 블록 단위로 움직임 보상 예측을 실행하는 동화상 복호 방법이고, 복호 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록에서 얻어지는 예측 움직임 벡터 후보를 예측 움직임 벡터 후보 리스트에 포함하고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 상기 예측 움직임 벡터 후보 리스트에 포함하지 않는 예측 움직임 벡터 후보 리스트 생성 단계와, 상기 예측 움직임 벡터 후보 리스트에서 참조 해야하는 예측 움직임 벡터의 위치를 나타내는 정보를 복호하는 복호 단계와, 상기 예측 움직임 벡터 후보 리스트에서 참조해야 하는 예측 움직임 벡터의 위치를 나타내는 정보에 기초하여 상기 예측 움직임 벡터 후보 리스트에서 상기 복호 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택 단계를 구비한다.
본 발명의 또 다른 양태도 동화상 복호 방법이다. 이 방법은, 블록 단위로 움직임 보상 예측을 실행하는 동화상 복호 방법이고, 예측 움직임 벡터 후보 리스트에서 참조해야 하는 예측 움직임 벡터의 위치를 나타내는 정보를 복호하는 복호 단계와, 복호 대상 블록에 인접하는 블록에서 공간 예측 움직임 벡터 후보를 도출하는 공간 예측 움직임 벡터 후보 생성 단계와, 복호 종료 화상에 있는 블록에서 시간 예측 움직임 벡터 후보를 도출하는 시간 예측 움직임 벡터 후보 생성 단계와, 시간 예측 움직임 벡터의 이용을 허가하는지 아닌지를 나타내는 이용 허가 정보가 허가함을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보와 상기 시간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하고, 상기 이용 허가 정보가 허가하지 않음을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하는 예측 움직임 벡터 후보 리스트 생성 단계와, 상기 예측 움직임 벡터 위치를 나타내는 정보에 기초하여 상기 예측 움직임 벡터 후보 리스트에서 상기 복호 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택 단계를 구비한다.
또한, 이상의 구성 요소의 임의의 조합, 본 발명의 표현을 방법, 장치, 시스템, 기록 매체, 컴퓨터 프로그램 등의 사이에서 변환한 것도 본 발명의 양태로서 유효하다.
본 발명에 의하면, 움직임 벡터의 예측 정도와 부호화 효율을 향상시킬 수 있다.
도 1은 제1 실시형태의 동화상 부호화 장치의 구성을 설명하는 도면이다.
도 2는 도 1의 제1 움직임 정보 메모리와 제2 움직임 정보 메모리에서 움직임 벡터와 참조 화상 인덱스의 관리 방법을 설명하는 도면이다.
도 3은 도 1의 움직임 정보 생성부의 구성을 설명하는 도면이다.
도 4는 제1 후보 블록군을 설명하는 도면이다.
도 5는 제2 후보 블록군을 설명하는 도면이다.
도 6은 도 3은 예측 벡터 후보 리스트 생성부의 구성을 설명하는 도면이다.
도 7은 제1 실시형태의 동화상 부호화 장치의 부호화의 동작을 설명하는 플로차트이다.
도 8은 도 1의 움직임 정보 생성부의 동작을 설명하는 플로차트이다.
도 9는 도 6의 예측 벡터 후보 리스트 생성부의 동작을 설명하는 플로차트이다.
도 10은 도 6의 제1 예측 벡터 후보 리스트 생성부와 제2 예측 벡터 후보 리스트 생성부의 동작을 설명하는 플로차트이다.
도 11은 제1 후보 블록군에 대해서의 각 방향의 검사를 설명하는 도면이다.
도 12는 제2 후보 블록군에 대해서의 각 방향의 검사를 설명하는 도면이다.
도 13은 제1 실시형태의 동화상 복호 장치를 설명하는 도면이다.
도 14는 도 13의 움직임 정보 재생부의 구성을 설명하는 도면이다.
도 15는 제1 실시형태의 동화상 복호 장치의 복호 동작을 설명하는 플로차트이다.
도 16은 도 14의 움직임 정보 재생부의 동작을 설명하는 플로차트이다.
도 17은 제1 실시형태의 확장예에 의한 예측 벡터 후보 리스트 생성부의 구성을 설명하는 도면이다.
도 18은 제1 실시형태의 확장예에 의한 예측 벡터 후보 리스트 생성부의 동작을 설명하는 플로차트이다.
도 19는 제1 실시형태의 확장예에 의한 POC차에 의한 소정 문턱 사이즈를 설명하는 도면이다.
도 20은 제1 실시형태의 확장예에 의한 예측 벡터 후보 리스트 생성부의 동작을 설명하는 플로차트이다.
도 21은 제2 실시형태의 동화상 부호화 장치의 구성을 설명하는 도면이다.
도 22는 도 21의 움직임 정보 압축부와 움직임 정보 신장부에 의한 움직임 정보의 압축과 신장을 설명하는 도면이다.
도 23은 제2 실시형태의 SPS의 신택스의 일부를 설명하는 도면이다.
도 24는 제2 실시형태의 동화상 부호화 장치의 부호화의 동작을 설명하는 플로차트이다.
도 25는 제2 실시형태의 예측 벡터 후보 리스트 생성부의 동작을 설명하는 플로차트이다.
도 26은 제2 실시형태의 동화상 복호 장치를 설명하는 도면이다.
도 27은 제2 실시형태의 동화상 복호 장치의 복호의 동작을 설명하는 플로차트이다.
도 28은 예측 부호화 모드를 설명하는 도면이다.
도 29는 화상을 최대 부호화 블록으로 분할하는 예를 설명하는 도면이다.
도 30은 부호화 블록을 설명하는 도면이다.
도 31은 예측 블록을 설명하는 도면이다.
도 32는 예측 블록 사이즈를 설명하는 도면이다.
도 33은 예측 블록의 신택스의 일례를 설명하는 도면이다.
도 34는 Truncated Unary 부호열을 설명하는 도면이다.
먼저, 본 발명의 실시형태의 전제가 되는 기술을 설명한다.
현재, MPEG(Moving Picture Experts Group) 등의 부호화 방식에 준거한 장치 및 시스템이 보급되고 있다. 그와 같은 부호화 방식에서는 시간축상에 연속하는 복수의 화상을 디지털 신호의 정보로서 처리한다. 그때, 효율이 높은 정보의 방송, 전송 또는 축적 등을 목적으로 하고, 시간 방향의 용장성을 이용한 움직임 벡터 보상 예측 및 공간 방향의 용장성을 이용한 이산 코사인 변환 등의 직교 변환을 이용해서 압축 부호화한다.
*1995년에는 MPEG-2비디오(ISO/IEC13818-2)부호화 방식이 범용의 영상 압축 부호화 방식으로서 제정되고, DVD(Digital Versatile Disk) 및 D-VHS(등록 상표) 규격의 디지털 VTR에 의한 자기 테이프 등의 축적 미디어 및 디지털 방송 등의 애플리케이션으로서 널리 이용되고 있다.
또한, 2003년에 국제표준화기구(ISO)와 국제전기표준회의(IEC)의 조인트 기술의원회(ISO/IEC)와, 국제전기통신연합 전기통신표준화부문(ITU-T)의 공동 작업에 의해 MPEG-4 AVC/H. 264로 불리는 부호화 방식(ISO/IEC에는 14496-10, ITU-T에는 H.264의 규격 번호가 붙어 있다. 이하, 이것을 MPEG-4AVC로 부른다)이 국제 표준으로서 제정되었다.
현재, 국제표준화기구(ISO)와 국제전기표준회의(IEC)의 조인트 기술위원회(ISO/IEC)와 국제전기통신연합 전기통신표준화부문(ITU-T)의 공동 작업에 의해 HEVC로 불리는 부호화 방식의 표준화가 검토되고 있다.
(예측 부호화 모드)
본 발명의 실시형태에는, 움직임 보상 예측의 방향이나 부호화 벡터수를 여러 가지 블록 사이즈로 전환하는 것이 가능하게 되어 있다.
여기서, 움직임 보상 예측의 방향과 부호화 벡터수를 연관 지은 예측 부호화 모드의 일례에 대해 도 28을 이용하여 간단하게 설명한다.
움직임 보상 예측의 방향이 단일 방향이고, 부호화 벡터수가 1인 단일 방향 모드(UniPred), 움직임 보상 예측의 방향이 쌍방향이고 부호화 벡터수가 2인 쌍방향 모드(BiPred), 움직임 보상 예측의 방향이 쌍방향이고 부호화 벡터수가 0인 시간 다이렉트 모드(Temporal Direct)와 공간 다이렉트 모드(Spatial Dierct)가 있다. 또, 움직임 보상 예측을 실시하지 않는 예측 부호화 모드인 인트라 모드(Intra)도 있다.
(참조 화상 인덱스)
본 발명의 실시형태에는, 움직임 보상 예측의 정도 향상을 위해, 움직임 보상 예측에서 복수의 참조 화상 중에서 최적인 참조 화상을 선택하는 것을 가능하게 한다. 그 때문에, 움직임 보상 예측에서 이용한 참조 화상을 참조 화상 인덱스로서 부호화 벡터와 함께 부호화 스트림 안에 부호화한다. 움직임 보상 예측에서 이용하는 참조 화상 인덱스는 0 이상의 수치가 된다.
(부호화 블록)
본 발명의 실시형태에는, 입력된 화상 신호를 도 29와 같이 최대 부호화 블록 단위로 분할하고, 분할한 부호화 블록을 래스터 스캔 순서로 처리한다.
부호화 블록은 계층 구조로 되어 있고, 부호화 효율 등을 고려하여 순차 균등하게 4분할함으로써 보다 작은 부호화 블록으로 할 수 있다. 또한, 4분할된 부호화 블록은 지그재그 스캔 순으로 부호화된다. 이 이상 작게 할 수 없는 부호화 블록을 최소 부호화 블록이라고 칭한다. 부호화 블록은 부호화의 단위가 되고, 최대 부호화 블록도 분할 수가 0인 경우는 부호화 블록이 된다.
본 실시형태에는, 최대 부호화 블록을 64화소×64화소, 최소 부호화 블록을 8화소×8화소로 한다.
도 30에 최대 부호화 블록의 분할의 일례를 나타낸다. 도 30의 예에는, 부호화 블록이 10개로 분할되어 있다. CU0, CU1, CU9는 32화소×32화소의 부호화 블록, CU2, CU3, CU8은 16화소×16화소의 부호화 블록, CU4, CU5, CU6은 8화소×8화소의 부호화 블록으로 되어 있다.
(예측 블록)
본 발명의 실시형태에는, 부호화 블록은 추가로 예측 블록으로 분할된다. 예측 블록의 분할의 패턴을 도 31에 도시한다. 부호화 블록을 분할하지 않는 2N×2N, 수평 방향으로 분할하는 2N×N, 수직 방향으로 분할하는 N×2N, 수평과 수직으로 분할하는 N×N이 있다. 즉, 예측 블록 사이즈는 도 32에 도시하는 바와 같이, CU 분할 수가 0이고 최대의 예측 블록 사이즈인 64화소×64화소에서 CU분할 수가 3이고 최소의 예측 블록 사이즈인 4화소×4화소까지의 13의 예측 블록 사이즈가 존재하게 된다.
본 발명의 실시형태에는, 최대 부호화 블록을 64화소×64화소, 최소 부호화 블록을 8화소×수직(8)으로 하지만, 이 조합에 한정되지 않는다. 또, 예측 블록의 분할의 패턴을 도 31로 했지만, 1 이상으로 분할되면 좋고 이것에 한정되지 않는다.
(예측 벡터 인덱스)
HEVC에서는, 더 예측 벡터의 정도를 향상시키기 위해, 복수의 예측 벡터의 후보 중에서 최적의 예측 벡터를 선택하고, 선택한 예측 벡터를 나타내기 위한 예측 벡터 인덱스를 부호화하는 것이 검토된다. 또, 예측 벡터의 후보로서 다른 화상의 움직임 벡터를 이용하는 것도 검토되고 있다. 종래의 동화상 압축 부호화에서는, 다른 화상의 움직임 벡터는 움직임 보상 예측에서 이용되는 경우는 있어도, 예측 벡터로서 이용되는 경우는 없었다.
본 발명의 실시형태에서는, 상기의 예측 벡터 인덱스를 도입하고, 또한 예측 벡터의 후보로서 다른 화상의 움직임 벡터를 이용한다.
(인계 방향 인덱스)
HEVC에서는, 더 부호화 효율을 향상시키기 위해, 복수의 인접 블록의 후보 중에서 최적의 인접 블록을 선택하고, 선택한 인접 블록을 나타내기 위한 인계 방향 인덱스(머지 인덱스(Merge Index))를 부호화 및 복호하는 것이 검토되어 있다. 이것은 선택된 머지 인덱스를 나타내는 블록의 움직임 정보(움직임 벡터, 참조 화상 인덱스 및 움직임 보상 예측의 방향)를 처리 대상 블록으로 그대로 이용하는 방법이다. 이 방법에서도, 예측 벡터 인덱스와 동일하게 다른 화상의 처리 종료의 블록을 이용하는 것이 검토되어 있다.
(신택스(syntax))
본 실시형태에 의한 예측 블록의 신택스의 일례를 도 33을 이용해서 설명한다. 예측 블록이 인트라인지 인터인지는 상위의 부호화 블록에 의해 지정되어 있고, 도 33은 예측 블록이 인터의 경우의 신택스를 도시한다. 인계 방향 플래그(merge_flag), 인계 방향 인덱스(merge_idx), 움직임 보상예측의 방향(bipred_flag), 참조 인덱스(ref_idx_l0과 ref_idx_l1), 차분 움직임 벡터(mvd_l0[0], mvd_l0[1], mvd_l1[0], mvd_l1[1]), 예측 벡터 인덱스(mvp_idx_l0 및 mvp_idx_l1)가 설치되어 있다.
*도 33에서는 예측 벡터 인덱스의 복호(부호화)의 전단에 예측 벡터의 후보수를 산출하는 함수인 NumMvpCands()가 마련되어 있다. 이것은 주변 블록의 상황에 따라서 예측 벡터의 후보수가 예측 블록마다 변화하기 때문이다.
또한, 예측 벡터의 후보 후보수가 1인 경우는 예측 벡터 인덱스를 복호(부호화)하지 않는다. 예측 벡터의 후보수가 1인 경우는 지정하지 않아도 일의로 결정할 수 있기 때문에다. NumMvpCands()의 상세에 대해서는 후술한다.
또, 예측 벡터 인덱스의 부호열에 대해 도 34를 이용해서 설명한다. 본 실시형태에는, 예측 벡터 인덱스의 부호열로서 Truncated Unary 부호열을 이용한다. 도 34(a)는 예측 벡터의 후보수가 2개인 경우의 Truncated Unary 부호열에 의한 예측 벡터 인덱스의 부호열을, 도 34(b)는 예측 벡터의 후보수가 3개의 경우의 Truncated Unary 부호열에 의한 예측 벡터 인덱스의 부호열을, 도 34(c)는 예측 벡터의 후보수가 4개의 경우의 Truncated Unary 부호열에 의한 예측 벡터 인덱스의 부호열을 나타낸다.
도 34에서 같은 예측 벡터 인덱스의 값을 부호화하는 경우에도, 예측 벡터의 후보수가 적을수록 예측 벡터 인덱스에 할당되는 부호 비트가 작아지는 것을 알 수 있다. 예컨대, 예측 벡터 인덱스가 1인 경우, 예측 벡터의 후보수가 2개이면, "1" 의 1 비트이지만, 예측 벡터의 후보수가 3개이면, "10"의 2 비트가 된다.
이와 같이, 예측 벡터의 부호수는 적을수록 예측 벡터 인덱스의 부호화 효율은 향상한다. 반면, 예측 벡터의 후보수가 예측 블록마다 변화하기 때문에, 예측 벡터 인덱스를 복호하기 위해서는 예측 벡터의 후보수를 사전에 산출해 놓을 필요가 있다.
종래의 동화상 부호화에서는 다른 화상의 움직임 벡터에 대한 메모리 액세스는 움직임 보상 예측을 실행하는 경우뿐이었지만, 본 발명의 실시형태에는 상술과 같이 예측 벡터 인덱스의 산출에 있어서도 사전에 예측 벡터의 후보수를 산출해 놓을 필요가 있기 때문에, 움직임 벡터 메모리에 대한 액세스 양이 크게 증가한다.
(POC)
본 발명의 실시형태에는, 화상의 시간 정보(거리 정보)로서 POC(Picture Order Count)를 이용한다. POC는 MPEG-4AVC로 정의된 화상의 표시 순서를 나타내는 카운터(counter)이다. 화상의 표시 순서가 1 증가하면 POC도 1 증가한다. 따라서, 화상 간의 POC차에서 화상 간의 시간차(거리)를 취득할 수 있다.
(인접 블록의 움직임 벡터의 특성)
일반적으로 처리 대상 블록의 움직임 벡터와 처리 대상 블록에 인접하는 블록의 움직임 벡터의 상간도가 높은 것은, 처리 대상 블록과 처리 대상 블록에 인접하는 블록이 같은 움직임을 하고 있는 경우, 예컨대, 처리 대상 블록과 처리 대상 블록에 인접하는 블록을 포함한 영역이 평행 이동하고 있는 경우이다.
(다른 화상의 움직임 벡터의 특성)
한편, 일반적으로 시간 다이렉트 모드나 공간 다이렉트 모드로 이용되고 있는 복호 종료의 다른 화상 상에서 처리 대상 블록과 동일 위치인 블록(동일 위치 블록)과 처리 대상 블록의 상관도가 높은 것은, 동일 위치 블록과 처리 대상 블록이 정지 상태이거나, 동일 위치 블록과 처리 대상 블록이 평행 이동하고 있는 경우이다.
(작은 블록의 움직임 벡터의 특성)
또, 일반적으로 블록의 크기가 작아지는 것은, 처리 대상 블록의 움직임(움직임 벡터)와 인접 블록의 움직임(움직임 벡터)의 상관도가 낮은 경우 즉, 움직임이 복잡하다고 생각되어, 이 경우는 또 처리 대상 블록과 다른 화상의 움직임 벡터의 동일 위치 블록이 정지 상태이거나 처리 대상 블록과 동일 위치 블록이 평행 이동하고 있는 가능성은 낮다.
이하, 도면과 함께 본 발명에 따른 동화상 부호화 장치, 동화상 부호화 방법, 동화상 부호화 프로그램의 적절한 실시형태에 대해 상세하게 설명한다. 또한, 도면의 설명에는 동일 요소에는 동일 부호를 붙이고, 중복되는 설명을 생략한다.
[제1 실시형태]
(동화상 부호화 장치(100)의 구성)
도 1은 본 발명의 제1 실시형태의 동화상 부호화 장치(100)의 구성을 도시한다. 동화상 부호화 장치(100)는, 동화상 신호를 움직임 보상 예측을 실시하는 예측 블록 단위로 부호화하는 장치이다. 부호화 블록의 분할, 예측 블록 사이즈의 결정, 예측 부호화 모드의 결정은 상위의 부호화 제어부로 결정되어 있는 것으로 한다. 동화상 부호화 장치(100)는, CPU(Central Processing Unit), 프레임 메모리, 하드디스크 등을 구비하는 정보처리장치 등의 하드웨어에 의해 실현된다. 동화상 부호화 장치(100)는, 상기 구성 요소가 동작하는 것에 의해, 이하에 설명하는 기능적인 구성 요소를 실현한다.
또한, 처리 대상의 예측 블록의 위치 정보, 예측 블록 사이즈, 참조 화상 인덱스, 움직임 보상 예측의 방향에 관해서는 동화상 부호화 장치(100) 내에서 공유하고 있는 것으로 하고, 도시하지 않는다.
본 실시형태의 동화상 부호화 장치(100)는 예측 블록 화상 취득부(101), 감산부(102), 예측 오차 부호화부(103), 부호열 생성부(104), 예측 오차 복호부(105), 움직임 보상부(106), 가산부(107), 움직임 벡터 검출부(108), 움직임 정보 생성부(109), 프레임 메모리(110), 제1 움직임 정보 메모리(111) 및 제2 움직임 정보 메모리(112)를 포함한다.
(동화상 부호화 장치(100)의 기능)
이하, 각부의 기능에 대해 설명한다.
예측 블록 화상 취득부(101)는, 예측 블록의 위치 정보와 예측 블록 사이즈에 기초하여 단자(10)에 의해 공급되는 화상 신호에서 처리 대상의 예측 블록의 화상 신호를 취득하고, 예측 블록의 화상 신호를 감산부(102)와 움직임 벡터 검출부(108)에 공급한다.
감산부(102)는 예측 블록 화상 취득부(101)에 의해 공급되는 화상 신호와 움직임 보상부(106)에 의해 공급되는 예측 신호를 감산하여 예측 오차 신호를 산출하고, 예측 오차 신호를 예측 오차 부호화부(103)에 공급한다.
예측 오차 부호화부(103)는, 감산부(102)에 의해 공급되는 예측 오차 신호를 양자화나 직교 변환 등의 처리를 실행하고 예측 오차 부호화 데이터를 생성하고, 예측 오차 부호화 데이터를 부호열 생성부(104) 및 예측 오차 복호부(105)에 공급한다.
부호열 생성부(104)는, 예측 오차 부호화부(103)에 의해 공급되는 예측 오차 부호화 데이터 및 움직임 정보 생성부(109)에 의해 공급되는 차분 벡터와 예측 벡터 인덱스를 움직임 보상 예측의 방향, 참조 인덱스와 함께 신택스에 따라 엔트로피 부호화하여 부호열을 생성하고, 부호열을 단자(11)에 공급한다.
또한, 본 실시형태에는 상기와 같이 예측 벡터 인덱스의 부호화에 Truncated Unary 부호열을 이용했지만, 예측 벡터 인덱스가 예측 벡터의 후보수가 작을수록 적은 비트로 부호화할 수 있는 부호열이라면 이것에 한정되지 않는다.
예측 오차 복호부(105)는, 예측 오차 부호화부(103)에 의해 공급되는 예측 오차 부호화 데이터를 역양자화나 역직교 변환 등의 처리를 실행해서 예측 오차 신호를 생성하고, 예측 오차 신호를 가산부(107)에 공급한다.
움직임 보상부(106)는, 프레임 메모리(110) 내의 참조 화상을 움직임 벡터 검출부(108)에 의해 공급되는 움직임 벡터만 움직임 보상하여 예측 신호를 생성한다. 움직임 보상 예측의 방향이 쌍방향이면, 각각 방향의 예측 신호를 평균화한 것을 예측 신호로 하고, 예측 신호를 가산부(107)에 공급한다.
가산부(107)는, 예측 오차 복호부(105)에 의해 공급되는 예측 오차 신호와 움직임 보상부(106)에 의해 공급되는 예측 신호를 가산하여 복호 화상 신호를 생성하고, 복호 화상 신호를 프레임 메모리(110)에 공급한다.
움직임 벡터 검출부(108)는, 예측 블록 화상 취득부(101)에 의해 공급되는 화상 신호와 시간이 다른 화상 신호에서 움직임 벡터를 검출하고, 움직임 벡터를 움직임 보상부(106)에 공급한다. 또한, 움직임 보상 예측의 방향이 쌍방향이면, 각각의 방향의 움직임 벡터를 검출하고, 움직임 벡터를 움직임 보상부(106)에 공급한다.
일반적인 움직임 벡터의 검출 방법은, 화상 신호와 동일 위치에 의해 소정의 이동량만 이동시킨 위치가 다른 화상 신호에 대해 오차 평가값을 산출하고, 오차 평가값이 최소가 되는 이동량을 움직임 벡터로 한다. 오차 평가값으로는, 절대 차분화를 나타내는 SAD(sum of Absolute diference)나 제곱 오차 평균을 나타내는 MSE(Mean Square Error) 등을 이용하는 것이 가능하다.
움직임 정보 생성부(109)는, 움직임 벡터 검출부(108)에 의해 공급되는 움직임 벡터와, 제1 움직임 정보 메모리(111)에 의해 공급되는 제1 후보 블록군과, 제2 움직임 정보 메모리(112)에 의해 공급되는 제2 후보 블록군에서 차분 벡터와 예측 벡터 인덱스를 생성하고, 차분 벡터와 예측 벡터 인덱스를 부호열 생성부(104)에 공급한다.
움직임 정보 생성부(109)의 상세한 설명에 대해서는 후술한다.
프레임 메모리(110)는, 가산부(107)에 의해 공급되는 복호 화상 신호를 기억한다. 또, 화상 전체의 복호가 완료한 복호 화상에 대해서는 참조 화상으로서 1 이상의 소정 화상 수 기억하고, 참조 화상 신호를 움직임 보상부(106)에 공급한다. 참조 화상을 기억하는 기억 영역은, FIFO(First In First Out) 방식으로 제어된다.
제1 움직임 정보 메모리(111)는, 움직임 벡터 검출부(108)에 의해 공급되는 움직임 벡터와 참조 화상 인덱스를 최소의 예측 블록 사이즈 단위로 1 화상분 기억하고, 처리 대상의 예측 블록의 인접 블록의 정보를 제1 후보 블록군으로서 움직임 정보 생성부(109)에 공급한다. 또, 제1 움직임 정보 메모리(111)는, 화상 전체의 처리가 종료하면, 기억하고 있는 움직임 벡터와 참조 화상 인덱스를 제2 움직임 정보 메모리(112)에 이동시킨다.
제2 움직임 정보 메모리(112)는, 제1 움직임 정보 메모리(111)에 의해 공급되는 움직임 벡터와 참조 화상 인덱스를 소정 화상 수만큼 기억하고, 처리 대상의 예측 블록과 동일 위치의 ColPic상의 블록과 그 주변 블록을 제2 후보 블록군으로서 움직임 정보 생성부(109)에 공급한다. 움직임 벡터와 참조 화상 인덱스를 기억하는 기억 영역은 프레임 메모리(110)와 동기하고 있으며, FIFO(First In First Out) 방식으로 제어된다. ColPic이란, 처리 대상의 예측 블록과는 다른 복호 종료의 화상이고, 프레임 메모리(110)에 참조 화상으로서 기억되어 있다. 본 실시형태에는, ColPic은 직전에 복호한 참조 화상으로 한다. 또한, 본 실시형태에는, ColPic은 직전에 복호한 참조 화상으로 했지만, 표시 순으로 직전의 참조 화상이나 표시 순으로 직후의 참조 화상으로 하거나 복호화 스트림 중에서 임의의 참조 화상을 지정하는 것도 가능하다.
여기서, 제1 움직임 정보 메모리(111)와 제2 움직임 정보 메모리(112)에서 움직임 벡터와 참조 화상 인덱스의 관리 방법에 대해 도 2를 이용해서 설명한다. 움직임 벡터와 참조 화상 인덱스는 최소의 예측 블록 단위로 각 메모리 영역에 기억된다. 도 2는 처리 대상의 예측 블록 사이즈가 16화소×16화소인 경우의 모양을 나타내고 있다. 이 경우, 이 예측 블록의 움직임 벡터와 참조 화상 인덱스는 도 2의 사선부의 16개의 메모리 영역에 격납된다.
또한, 예측 부호화 모드가 인트라 모드인 경우, 움직임 벡터로서 (0, 0)이 기억되고, 참조 화상 인덱스로서 -1이 기억된다. 또한, 참조 화상 인덱스의 -1은 움직임 보상 예측을 실시하지 않는 모드인 것이 판정할 수 있다면 어떠한 값이어도 좋다.
이 이후는 특히 거절하지 않는 이상 단순히 블록으로 표현하는 경우에는, 최소의 예측 블록 단위의 것을 나타내기로 한다.
이어서, 본 실시형태의 특징이 되는 움직임 정보 생성부(109)의 상세한 구성에 대해 도 3을 이용해서 설명한다. 도 3은 움직임 정보 생성부(109)의 구성을 나타낸다.
움직임 정보 생성부(109)는, 예측 벡터 후보 리스트 생성부(120)와 예측 벡터 선택부(121)와 감산부(122)를 포함한다. 단자(12)는 제1 움직임 정보 메모리(111)에 단자(13)는 제2 움직임 정보 메모리(112)에, 단자(14)는 움직임 벡터 검출부(108)에, 단자(15)는 부호열 생성부(104)에 접속되어 있다.
예측 벡터 후보 리스트 생성부(120)는, 본 실시형태에 의한 동화상 부호화 장치에 의해 생성된 부호열을 복호하는 동화상 복호 장치에도 동일하게 설치되어 동화상 부호화 장치와 동화상 복호 장치에 의해 모순 없는 예측 벡터 후보 리스트가 생성된다.
또한, 신택스로 설명한 NumMvpCands()는, 예측 벡터 후보 리스트 생성부(120)에 의해 생성된 예측 벡터 후보 리스트에 포함되는 예측 벡터 후보수를 되돌린다.
이하, 각부의 기능에 대해 설명한다.
예측 벡터 후보 리스트 생성부(120)는, 단자(12)에 의해 공급되는 제1 후보 블록군과 단자(13)에 의해 공급되는 제2 후보 블록군에서 예측 벡터 후보 리스트를 생성하고, 예측 벡터 후보 리스트를 예측 벡터 선택부(121)에 공급한다.
(후보 불록군)
여기서, 제1 후보 블록군에 대해 도 4를 이용해서 설명한다. 도 4는 처리 대상의 예측 블록 사이즈가 16화소×16화소인 경우의 모양을 도시하고 있다. 도 4에 도시하는 바와 같이, 처리 대상의 예측 블록의 인접 블록을, 좌측에 위치하는 블록(A1), 블록(A2, A3, A4), 위에 위치하는 블록(B1), 블록(B2), 블록(B3), 블록(B4), 우측 위에 위치하는 블록(C), 좌측 위에 위치하는 블록(D), 좌측 아래에 위치하는 블록(E)으로서, 이들을 제1 후보 블록군이라고 한다.
본 실시형태에서는, 제1 후보 블록군을 도 4로 했지만, 본 발명의 실시형태에는, 제1 후보 블록군은, 처리 대상의 예측 블록에 인접하는 적어도 1 이상의 처리 종료의 블록이면 좋고, 도 4에 한정되지 않는다. 예컨대, 각 방향에서 1개씩 선택해서 블록(A1), 블록(C), 블록(D) 및 블록(B1), 블록(E) 등으로 해도 좋다.
다음으로, 제2 후보 블록군에 대해 도 5를 이용해서 설명한다. 도 5는 처리 대상의 예측 블록 사이즈가 16화소×16화소인 경우의 모양을 도시하고 있다. 도 5에 도시하는 바와 같이, 처리 대상의 예측 블록과 동일 위치에 있는 ColPic 상의 예측 블록 내의 블록과 그 주변 블록을 제2 후보 블록군으로 한다. 구체적으로는, 처리 대상의 예측 블록과 동일 위치인 ColPic 상의 예측 블록 내의 블록(I1)에서 블록(I16), 좌측에 위치하는 블록(A1)에서 블록(A4), 위에 위치하는 블록(B1)에서 블록(B4), 우측 위에 위치하는 블록(C), 좌측 위에 위치하는 블록(D), 좌측 아래에 위치하는 블록(E), 우측에 위치하는 블록(F1)에서 블록(F4), 아래에 위치하는 G1에서 G4, 우측 아래에 위치하는 H로 하고, 이들의 블록을 제2 후보 블록군이라고 한다.
본 실시형태에는, 제2 후보 블록군을 ColPic 상의 블록(I1)에서 블록(I16), 블록(A1)에서 블록(A4), 블록(B1)에서 블록(B4), 블록(C), 블록(D), 블록(E), 블록(F1)에서 블록(F4), 블록(G1)에서 블록(G4), 블록(H)로 했지만, 본 발명의 실시형태에는, 제2 후보 블록군은 처리 대상의 예측 블록과는 다른 복호 종료의 화상 상의 적어도 1 이상의 블록이면 좋고, 상기에 한정되지 않는다. 제2 후보 블록군을 블록으로 해도 좋고 예컨대, 블록 (I1)의 1 블록만큼, 블록(H)의 1 블록만큼으로 해도 좋다.
예측 벡터 선택부(121)는, 예측 벡터 후보 리스트 생성부(120)에 의해 공급되는 예측 벡터 후보 리스트 중에서, 단자(14)에 의해 공급되는 움직임 벡터에 대응하는 예측 벡터를 선택하고, 예측 벡터를 감산부(122)에 공급하면서 선택된 예측 벡터를 나타내는 정보인 예측 벡터 인덱스를 단자(15)로 출력한다.
감산부(122)는, 단자(14)에 의해 공급되는 움직임 벡터에서 예측 벡터 선택부(121)에 의해 공급되는 예측 벡터를 감산하여 차분 벡터를 산출하고, 차분 벡터를 단자(15)에 공급한다.
도 6은 예측 벡터 후보 리스트 생성부(120)의 구성을 도시한다.
예측 벡터 후보 리스트 생성부(120)는, 제1 예측 벡터 후보 리스트 생성부(130)와 결합 판정부(131)와 제2 예측 벡터 후보 리스트 생성부(132)와 예측 벡터 후보 리스트 결정부(133)를 포함한다. 단자(16)는 예측 벡터 선택부(121)에 접속되어 있다.
이하, 각부의 기능에 대해 설명한다.
제1 예측 벡터 후보 리스트 생성부(130)는, 단자(12)에 의해 공급되는 제1 후보 블록군에서 1 이상의 움직임 벡터를 포함하는 제1 예측 벡터 후보 리스트를 생성하고, 제1 예측 벡터 후보 리스트를 예측 벡터 후보 리스트 결정부(133)에 공급한다.
결합 판정부(131)는, 처리 대상의 예측 블록의 예측 블록의 사이즈에서 결합 판정 결과를 도출하고, 결합 판정 결과를 예측 벡터 후보 리스트 결정부(133)에 공급한다.
*
*제2 예측 벡터 후보 리스트 생성부(132)는, 단자(13)에서 공급되는 제2 후보 블록군에서 0 이상의 움직임 벡터를 포함하는 제2 예측 벡터 후보 리스트를 생성하고, 제2 예측 벡터 후보 리스트를 예측 벡터 후보 리스트 결정부(133)에 공급한다.
예측 벡터 후보 리스트 결정부(133)는, 결합 판정부(131)에 의해 공급되는 결합 판정 결과에 기초하여 제1 예측 벡터 후보 리스트 생성부(130)에 의해 공급되는 제1 예측 벡터 후보 리스트와 제2 예측 벡터 후보 리스트 생성부(132)에 의해 공급되는 제2 예측 벡터 리스트에서 제3의 예측 벡터 후보 리스트를 결정하고, 제3의 예측 벡터 후보 리스트를 단자(16)에 공급한다.
(동화상 부호화 장치(100)의 동작)
이어서, 도 7의 플로차트를 이용해서 본 실시형태의 동화상 부호화 장치(100)에서 부호화의 동작을 설명한다.
예측 블록 화상 취득부(101)는, 예측 블록의 위치 정보와 예측 블록 사이즈에 기초하여 단자(10)에 의해 공급되는 화상 신호에서 처리 대상의 예측 블록의 화상 신호를 취득한다(단계(S100)).
움직임 벡터 검출부(108)는, 예측 블록 화상 취득부(101)에 의해 공급되는 화상 신호와 프레임 메모리(110)에 의해 공급되는 참조 화상 신호에서 움직임 벡터를 검출한다(단계(S101)).
움직임 정보 생성부(109)는, 움직임 벡터 검출부(108)에 의해 공급되는 움직임 벡터와, 제1 움직임 정보 메모리(111)에 의해 공급되는 제1 후보 블록군과, 제2 움직임 정보 메모리(112)에 의해 공급되는 제2 후보 블록군에서 차분 벡터와 예측 벡터 인덱스를 생성한다(단계(S102)).
움직임 보상부(106)는 프레임 메모리(110) 내의 참조 화상을 움직임 벡터 검출부(108)에 의해 공급되는 움직임 벡터에 기초하여 움직임 보상해서 예측 신호를 생성한다(단계(S103)).
감산부(102)는, 예측 블록 화상 취득부(101)에 의해 공급되는 화상 신호와 움직임 보상부(106)에 의해 공급되는 예측 신호를 감산하여 예측 오차 신호를 산출한다(단계(S104)).
예측 오차 부호화부(103)는, 감산부(102)에 의해 공급되는 예측 오차 신호를 양자화나 직교 변환 등의 처리를 실행해서 예측 오차 부호화 데이터를 생성한다(단계(S105)).
부호열 생성부(104)는, 예측 오차 부호화부(103)에 의해 공급되는 예측 오차 부호화 데이터 및 움직임 정보 생성부(109)에 의해 공급되는 차분 벡터와 예측 벡터 인덱스를 움직임 보상 예측의 방향, 참조 인덱스와 함께 신택스에 따라 엔트로피 부호화하여 부호열을 생성한다(단계(S106)).
가산부(107)는, 예측 오차 복호부(105)에 의해 공급되는 예측 오차 신호와 움직임 보상부(106)에 의해 공급되는 예측 신호를 가산하여 복호 화상 신호를 생성한다(단계(S107)).
프레임 메모리(110)는, 가산부(107)에 의해 공급되는 복호 화상 신호를 기억한다(단계S108).
제1 움직임 정보 메모리(111)는, 움직임 벡터 검출부(108)에 의해 공급되는 움직임 벡터를 최소의 예측 블록 사이즈 단위로 1 화상분 기억한다(단계S109).
화상 전체의 처리가 종료되면(단계(S110)의 YES), 제1 움직임 정보 메모리(207)는 제2 움직임 정보 메모리(208)에 기억되어 있는 1 화면 분의 움직임 벡터를 이동시키고, 제2 움직임 정보 메모리(112)는, 제1 움직임 정보 메모리(111)에 의해 공급되는 움직임 벡터를 소정 화상 수만큼 기억한다(단계(S111)). 또한, 본 실시형태에는 단계(S111)를 화상 전체의 처리가 종료했을 때로 했지만, 처리 대상의 예측 블록마다 실행하는 것도 가능하다.
이어서, 도 8의 플로차트를 이용해서 움직임 정보 생성부(109)의 동작을 설명한다.
예측 벡터 후보 리스트 생성부(120)는, 단자(12)에 의해 공급되는 제1 후보 블록군과 단자(13)에 의해 공급되는 제2 후보 블록군에서 예측 벡터 후보 리스트를 생성한다(단계(S120)).
예측 벡터 선택부(121)는 예측 벡터 후보 리스트 생성부(120)에 의해 공급되는 예측 벡터 후보 리스트 중에서, 단자(14)에 의해 공급되는 움직임 벡터에 대응하는 예측 벡터를 결정한다(단계(S121)). 여기서 예측 벡터의 결정 방법에 대해 설명한다. 움직임 벡터와 예측 벡터 후보 리스트에 포함되는 각 예측 벡터 후보의 수평 성분과 수직 성분의 절대 차분 합을 구하고, 절대 차분 합이 최소가 되는 예측 벡터 후보를 예측 벡터로서 결정한다. 이것은 부호화 벡터의 부호량이 최소가 되는 것을 기대할 수 있기 때문이다. 또한, 부호화 벡터의 부호량이 최소가 되는 방법은, 이 방법에 한정되지 않는다.
감산부(122)는, 단자(14)에 의해 공급되는 움직임 벡터에서 예측 벡터 선택부(121)에 의해 공급되는 예측 벡터를 감산하여 차분 벡터를 산출한다(단계(S122)).
이어서, 도 9의 플로차트를 이용해서, 예측 벡터 후보 리스트 생성부(120)의 동작을 설명한다.
제1 예측 벡터 후보 리스트 생성부(130)는, 단자(12)에 의해 공급되는 제1 후보 블록군에서 1 이상의 움직임 벡터를 포함하는 제1 예측 벡터 후보 리스트를 생성한다(단계(S130)).
제 예측 벡터 후보 리스트 생성부(132)는, 단자(13)에 의해 공급되는 제2 후보 리스트 블록군에서 0 이상의 움직임 벡터를 포함하는 제2 예측 벡터 후보 리스트를 생성한다(단계(S131)).
결합 판정부(131)는, 처리 대상의 예측 블록의 예측 블록의 사이즈와, 소정 문턱 사이즈에서 결합 판정 결과를 도출한다(단계(S132)).
결합 판정 결과의 도출은, 처리 대상 블록의 예측 블록 사이즈를 미리 정해진 소정 문턱 사이즈와 비교하는 것에 의해 실행된다. 처리 대상 블록의 예측 블록 사이즈가 소정 문턱 사이즈 이상이라면 결합 판정 결과를 1로, 그 이외에는 0으로 한다. 또한, 본 실시형태의 결합 판정은, 처리 대상 블록의 예측 블록 사이즈를 미리 정해진 소정 문턱 사이즈와 비교하는 것에 의해 실행되기 때문에, 처리 대상 블록의 예측 블록 사이즈가 소정 문턱 사이즈에 의해 크면 결합 판정 결과를 1로, 그 외에는 0으로 해도 좋다.
본 실시형태에는, 미리 정해진 소정 문턱 사이즈를 최대의 예측 블록 사이즈의 1/4인 16화소×16화소에 설정한다. 미리 정해진 소정 문턱 사이즈는 이것에 한정되지 않고, 하드웨어의 제약 등에 의해 설정되어도 좋다.
예측 벡터 후보 리스트 결정부(133)는, 결합 판정부(131)에 의해 공급되는 결합 판정 결과가 1이면(단계(S132)의 YES), 제1 예측 벡터 후보 리스트 생성부(130)에 의해 공급되는 제1 예측 벡터 후보 리스트와 제2 예측 벡터 후보 리스트 생성부(132)에 의해 공급되는 제2 예측 벡터 후보 리스트를 결합하여 예측 벡터 후보 리스트로 한다(단계(S133)).
예측 벡터 후보 리스트 결정부(133)는, 결합 판정부(131)에 의해 공급되는 결합 판정 결과가 0이면(단계(S132)의 NO), 제1 예측 벡터 후보 리스트 생성부(130)에 의해 공급되는 제1 예측 벡터 후보 리스트를 예측 벡터 후보 리스트로 한다(단계(S134)). 즉, 결합 판정부(131)에 의해 공급되는 결합 판정 결과가 0이면, 제2 예측 벡터 후보 리스트 생성부(132)에 의해 공급되는 제2 예측 벡터 후보 리스트에 포함되는 예측 벡터 후보는, 예측 벡터 후보 리스트에는 포함되지 않는다.
예측 벡터 후보 리스트 결정부(133)는, 예측 벡터 후보 리스트에 포함되는 예측 벡터 후보를 순차 검사하여 동일한 움직임 벡터를 검출하고, 동일하게 검출된 일방의 예측 벡터 후보를 예측 벡터 후보 리스트에서 삭제하고, 예측 벡터 후보가 중복되지 않도록 하여, 예측 벡터 후보 리스트를 갱신하여 용장의 예측 벡터 후보를 삭제한다(단계(S135)).
본 실시형태에는, 예측 벡터 인덱스의 부호화 효율을 향상시키기 위해 단계(S135)를 실시했지만, 단계(S135)를 생략할 수도 있다.
또, 본 실시형태에는, 설명을 용이하게 하기 위해 단계(S131)를 단계(S132)보다도 먼저 실시하기로 했지만 단계(S132)를 먼저 실행하고, 결합 판정 결과가 0의 경우에는, 단계(S131)를 생략할 수도 있다.
이어서, 도 10의 플로차트를 이용해서 제1 예측 벡터 후보 리스트 생성부(130)의 동작을 설명한다. 도 10 내의 제N은 제1이 된다.
먼저, 제1 예측 벡터 후보 리스트의 등록 수를 0으로 하여 제1 예측 벡터 후보 리스트가 초기화된다(단계(S140)).
다음으로, 제1 후보 블록군에 대해 검사 방향으로서 수평 방향(방향 1)과 수직 방향(방향 2)의 2 방향을 정의하여, 이하의 처리가 실행된다(단계(S141)). 제1 후보 블록군에 대해서의 각 방향의 검사에 대해서는 도 11을 이용하여 설명한다.
수평 방향의 검사는 블록(C)에서 블록(B1), 블록(B2), 블록(B3), 블록(B4), 블록(D)까지 순차적으로 실행된다. 수직 방향의 검사는, 블록(E)에서 블록(A1), 블록(A2), 블록(A3), 블록(A4)까지 순차적으로 실행된다.
다음으로, 제1 예측 벡터 후보 리스트에 추가하는지 아닌지를 검사하는 검사 개수가 결정된다(단계(S142)).
본 실시형태에는, 수평 방향으로 검사하는 최대수를 최대의 예측 블록 사이즈의 절반인 8개에 블록(C)과 블록(D)을 더한 10개로 하고, 수직 방향으로 검사하는 최대수를 최대의 예측 블록 사이즈의 절반인 8개에 블록(E)을 더한 9개로 한다. 그러나 블록(C), 블록(D) 및 블록(E)는 처리 대상의 예측 블록의 위치에 따라 존재하지 않는 가능성이 있다. 블록(C), 블록(D) 및 블록(E)가 존재하지 않는 경우에는, 검사하는 최대수에서 존재하지 않는 블록수를 줄여 놓는다. 그리고 제1 후보 블록군에 포함되는 각 방향의 후보 블록수가 검사하는 최대수를 넘는 경우에는 검사 개수를 최대수로 제한한다.
다음으로, 제1 후보 블록군의 각 방향에 포함되는 각 후보 블록에 대해 검사 개수만큼 이하의 처리가 반복 실시된다(단계(S143)).
후보 블록의 참조 인덱스가 -1이 아닌 것 즉, 인트라 모드가 아닌지 판정된다(단계(S144)).
후보 블록이 인트라 모드가 아니라면(단계(S114)의 YES), 후보 블록의 참조 인덱스가 처리 대상의 예측 블록의 참조 화상 인덱스와 동일한지 판정된다(단계(S145)).
후보 블록의 참조 인덱스가 처리 대상의 예측 블록의 참조 화상 인덱스와 동일하면(단계(S145))의 YES), 제1 예측 벡터 후보 리스트에 후보 블록의 움직임 벡터가 추가된다(단계(S146)).
후보 블록의 참조 인덱스가 -1이거나(단계(S114)의 NO), 후보 블록의 참조 인덱스가 처리 대상의 예측 블록의 참조 화상 인덱스와 동일하지 않으면(단계(S145)의 NO), 다음 후보 블록이 검사된다(단계(S147)).
후보 블록의 참조 인덱스가 처리 대상의 예측 블록의 참조 화상 인덱스와 동일하거나, 각 방향의 검사 개수만큼 처리되기까지 상기의 처리가 반복된다(단계(S148)).
다음으로, 제1 예측 벡터 후보 리스트의 등록수가 0인지가 검사된다(단계(S149)).
제1 예측 벡터 후보 리스트의 등록수가 0이면(단계(S149)의 YES), 제1 예측 벡터 후보 리스트에 움직임 벡터(0, 0)가 추가되고(단계(S150) 처리를 종료한다.
제1 예측 벡터 후보 리스트의 등록수가 0이 아니라면(단계(S149)의 NO), 처리를 종료한다. 이와 같이, 제1 예측 벡터 후보 리스트에 추가되는 움직임 벡터가 도출된다.
이어서, 도 10의 플로차트를 이용해서 제2 예측 벡터 후보 리스트 생성부(132)의 동작을 설명한다. 도 10 내의 제N은 제2가 된다.
제2 후보 블록군에 대한 각 방향의 검사 순서를 도 12에 도시한다.
제1 예측 벡터 후보 리스트 생성부(130)의 동작과의 제1 차이점은, 검사 방향으로서 동일 위치 방향(방향 0)을 갖는 것이고, 검사 방향은 동일 위치 방향, 수평 방향, 수직 방향의 순서대로 실시된다. 동일 위치 방향의 후보 블록은 도 12의 I1에서 I16에 해당하고, 동일 위치 방향의 검사는 래스터 스캔 순서로 실시된다.
제1 예측 벡터 후보 리스트 생성부(130)의 동작과의 제2 차이점은, 단계(S149)와 단계(S150)가 실시되지 않는 것이다. 이것은 제1 예측 벡터 후보 리스트와 제2 예측 벡터 후보 리스트 중에서 또는 예측 벡터 후보 리스트에 1 이상의 예측 벡터 후보를 추가하기 위해 이루어지기 때문에, 제1 예측 벡터 후보 리스트 생성부(130) 또는 제2 예측 벡터 후보 리스트 생성부(132) 중에서 실행되어도 좋고, 또한 예측 벡터 리스트 결정부(133)로 실행되어도 좋다.
본 실시예에서는, 메모리 액세스 양을 저감하기 위해, 검사하는 최대수를 9개로 제한했지만, 특히 제한을 마련하지 않아도 좋다.
본 실시형태에서는, 처리 속도를 우선으로 하고, 단계(S146)에서 후보 블록의 참조 인덱스가 처리 대상의 예측 블록의 참조 화상 인덱스와 동일하면 다음 방향의 검사로 했지만, 각 방향의 검사 개수만큼 처리될 때까지 반복해도 좋다.
본 실시예에서는, 제1 후보 블록군에 대해서의 각 방향의 검사 방법을 도 11로 했지만, 전체 방향의 합계의 검사수가 1 이상이면 좋고, 이 검사 방법에 한정되지 않는다. 예컨대, 방향(1)을 블록(C), 블록(B1), 블록(D), 방향(2)를 블록(E), 블록(A1)만으로 해도 좋다.
본 실시예에서는, 제2 후보 블록군에 대해서의 각 방향의 검사 방법을 도 12로 했지만, 전체 방향의 합계의 검사수가 1 이상이면 좋고, 이 검사 방법에 한정되지 않는다. 예컨대, 방향(2)의 블록(H)만으로 해도 좋고, 블록(H)과 블록(I)의 2 블록으로 해도 좋다.
(동화상 복호 장치(200)의 구성)
다음으로, 본 실시형태의 동화상 복호 장치를 설명한다. 도 13에 본 실시형태의 동화상 복호 장치(200)를 나타낸다. 동화상 복호 장치(200)는, 동화상 부호 장치(100)에 의해 부호화된 부호열을 복호하여 재생 화상을 생성하는 장치이다.
동화상 복호 장치(200)는, CPU(Central Processing Unit), 프레임 메모리, 하드 디스크 등을 구비하는 정보 처리 장치 등의 하드웨어에 의해 실현된다. 동호상 복호 장치(200)는 상기의 구성 요소가 동작하는 것에 의해, 이하에 설명하는 기능적인 구성 요소를 실현한다.
또한, 복호 대상의 예측 블록의 위치 정보, 예측 블록 사이즈, 참조 화상 인덱스, 움직임 보상 예측의 방향에 관해서는 동화상 복호 장치(200) 내에서 공유하는 것으로 하고 도시하지 않는다.
본 실시형태의 동화상 복호 장치(200)는, 부호열 해석부(201), 예측 오차 복호부(202), 가산부(203), 움직임 정보 재생부(204), 움직임 보상부(205), 프레임 메모리(206), 제1 움직임 정보 메모리(207), 제2 움직임 정보 메모리(208)로 구성된다.
(동화상 복호 장치(200)의 기능)
이하, 각부의 기능에 대해 설명한다.
부호열 해석부(201)는, 단자(20)에 의해 공급된 부호열을 복호하여 예측 오차 부호화 데이터, 움직임 보상 예측의 방향, 참조 화상 인덱스, 차분 벡터 및 예측 벡터 인덱스를 신택스에 따라 복호하고, 예측 오차 부호화 데이터를 예측 오차 복호화(202)에 차분 벡터 및 예측 벡터 인덱스를 움직임 정보 재생부(204)에 공급한다.
예측 오차 복호부(202)는, 부호열 해석부(201)에 의해 공급되는 예측 오차 부호화 데이터를 역양자화나 역직교 변환 등의 처리를 실행해서 예측 오차 신호를 생성하고, 예측 오차 신호를 가산부(203)에 공급한다.
가산부(203)는, 예측 오차 복호부(202)에 의해 공급되는 예측 오차 신호와 움직임 보상부(205)에 의해 공급되는 예측 신호를 가산하여 복호 화상 신호를 생성하고, 복호 화상 신호를 프레임 메모리(206)에 공급한다.
움직임 정보 재생부(204)는, 부호열 해석부(201)에 의해 공급되는 차분 벡터와 예측 벡터 인덱스와, 제1 움직임 정보 메모리(207)에 의해 공급되는 제1 후보 블록군과, 제2 움직임 정보 메모리(208)에 의해 공급되는 제2 후보 블록군에서 움직임 벡터를 재생하고, 움직임 벡터를 움직임 보상부(205)에 공급한다.
움직임 정보 재생부(204)의 상세한 구성에 대해서는 후술한다.
움직임 보상부(205)는, 프레임 메모리(206) 내의 참조 화상을, 움직임 정보 재생부(204)에 의해 공급되는 움직임 벡터만큼 움직임 보상하고 예측 신호를 생성한다. 움직임 보상 예측의 방향이 쌍방향이면, 각각의 방향의 예측 신호를 평균화한 것을 예측 신호로 하고, 예측 신호를 가산부(203)에 공급한다.
프레임 메모리(206), 제1 움직임 정보 메모리(207), 제2 움직임 정보 메모리(208)는, 각각 프레임 메모리(110), 제1 움직임 정보 메모리(111), 제2 움직임 정보 메모리(112)와 동일한 기능을 갖는다.
이어서, 본 실시형태의 특징이 되는 움직임 정보 재생부(204)의 상세한 구성에 대해서 도 14를 이용해서 설명한다. 도 14는, 움직임 정보 재생부(204)의 구성을 도시한다.
움직임 정보 재생부(204)는, 예측 벡터 후보 리스트 생성부(220)와 예측 벡터 결정부(221)와 가산부(222)를 포함한다. 단자(22)는 제1 움직임 정보 메모리(207)에, 단자(23)는 제2 움직임 정보 메모리(208)에, 단자(24)는 부호열 해석부(201)에, 단자(25)는 움직임 보상부(205)에 접속되어 있다.
이하, 각부의 기능에 대해 설명한다.
예측 벡터 후보 리스트 생성부(220)는 예측 벡터 후보 리스트 생성부(120)와 동일한 기능을 갖는다.
예측 벡터 결정부(221)는, 예측 벡터 후보 리스트 생성부(220)에 의해 공급되는 예측 벡터 후보 리스트와, 단자(24)에 의해 공급되는 예측 벡터 인덱스에서 예측 벡터를 결정하여 가산부(222)에 공급한다.
가산부(222)는, 단자(24)에 의해 공급되는 차분 벡터와 예측 벡터 결정부(221)에 의해 공급되는 예측 벡터를 가산하여 움직임 벡터를 산출하고, 움직임 벡터를 단자(25)에 공급한다.
*
*(복호 장치의 동작)
이어서, 도 15의 플로차트를 이용해서, 본 실시형태의 동화상 복호 장치(200)에서 복호의 동작을 설명한다.
부호열 해석부(201)는 단자(20)에 의해 공급된 부호열을 복호하여 예측 오차 부호화 데이터, 움직임 보상 예측의 방향, 참조 화상 인덱스, 차분 벡터 및 예측 벡터 인덱스를 신택스에 따라 복호한다(단계(S100)).
움직임 정보 재생부(204)는, 부호열 해석부(201)에 의해 공급되는 차분 벡터와 예측 벡터 인덱스와, 제1 움직임 정보 메모리(207)에 의해 공급되는 제1 후보 블록군과, 제2 움직임 정보 메모리(208)에 의해 공급되는 제2 후보 블록군에서 움직임 벡터를 재생한다(단계(S201)).
움직임 보상부(205)는, 프레임 메모리(206) 내의 참조 화상을 움직임 정보 재생부(204)에 의해 공급되는 움직임 벡터에 기초하여 움직임 보상하여 예측 신호를 생성한다(단계(S202)).
예측 오차 복호부(202)는, 부호열 해석부(201)에 의해 공급되는 예측 오차 부호화 데이터를 역양자화나 역직교 변환 등의 처리를 실행해서 예측 오차 신호를 생성한다(단계(S203)).
가산부(203)는, 예측 오차 복호부(202)에 의해 공급되는 예측 오차 신호와 움직임 보상부(205)에 의해 공급되는 예측 신호를 가산하여 복호 화상 신호를 생성한다(단계(S204)).
프레임 메모리(206)는, 가산부(203)에 의해 공급되는 복호 화상 신호를 기억한다(단계(S206)).
제1 움직임 정보 메모리(207)는, 움직임 정보 재생부(204)에 의해 공급되는 움직임 벡터를 최소의 예측 블록 사이즈 단위로 1화상 분 기억한다(단계(S207)).
화상 전체의 처리가 종료하면(단계(S208)의 YES), 제1 움직임 정보 메모리(207)는 제2 움직임 정보 메모리(208)에 기억하고 있는 1화면 분의 움직임 벡터를 이동시키고, 제2 움직임 정보 메모리(208)는, 제1 움직임 정보 메모리(207)에 의해 공급되는 움직임 벡터를 소정 화상 수만큼 기억한다(단계(S209)).
이어서, 도 16의 플로차트를 이용해서 움직임 정보 재생부(204)의 동작을 설명한다.
예측 벡터 후보 리스트 생성부(220)는, 단자(22)에 의해 공급되는 제1 후보 블록군과 단자(23)에 의해 공급되는 제2 후보 블록군에서 예측 벡터 후보 리스트를 생성한다(단계(S220)).
예측 벡터 결정부(221)는, 예측 벡터 후보 리스트 생성부(220)에 의해 공급되는 예측 벡터 후보 리스트의 예측 벡터 후보수가 1보다 큰지를 판정한다(단계(S221)).
예측 벡터 결정부(221)는, 예측 벡터 후보수가 1보다 크면(단계(S221)의 YES), 부호열 해석부(201)에 의해 공급되는 예측 벡터 인덱스를 취득한다(단계(S222)). 그리고 예측 벡터 후보 리스트 중에서 예측 벡터 인덱스에서 나타내는 예측 벡터 후보를 예측 벡터로서 선택한다(단계(S223)).
예측 벡터 결정부(221)는, 예측 벡터 후보수가 1이면(단계(S221)의 NO), 예측 벡터 후보 리스트에 포함되는 유일한 예측 벡터 후보를 예측 벡터로서 선택한다(단계(S224).
가산부(222)는, 단자(24)에 의해 공급되는 차분 벡터와 예측 벡터 결정부(221)에 의해 공급되는 예측 벡터를 가산하여 움직임 벡터를 산출한다(단계(S225)).
(제1 실시형태의 확장예)
또한, 본 실시형태는 이하와 같이 확장할 수 있다.
(소정 문턱 사이즈)
본 실시형태에는, 미리 정해진 소정 문턱 사이즈를 최대의 예측 블록 사이즈의 1/4인 16화소×16화소로 설정했지만, 소정 문턱 사이즈는 최소의 예측 블록 사이즈 이상이고 최대의 예측 블록 사이즈 이하라면 예컨대, 32×16이나 4×8 등의 비대칭 블록이어도 좋다. 또, 소정 문턱 사이즈가 최대의 예측 블록 사이즈인 경우에, 모든 예측 블록 사이즈에서 결합 판정 결과가 0이 되도록 해도 좋다. 이 경우, 모든 예측 블록 사이즈에서 결합 판정 결과가 0이기 때문에, 결과적으로 제2 예측 벡터 후보 리스트에 포함되는 ColPic 상의 움직임 벡터는 예측 벡터로서 이용되지 않는다.
또한, 본 실시형태에서는, 소정 문턱 사이즈를 미리 정의했지만, 소정 문턱 사이즈를 부호열로 부호화하여 복호함으로써 부호화 장치에서 동화상의 특성 등에 따라 적응적으로 설정할 수 있다. 예컨대, 화면 사이즈가 커지는 만큼 크게 하고, 움직임이 큰 만큼 커지도록 적응적으로 설정할 수 있다.
여기서는, 소정 문턱 사이즈 부호열에 부호화하여 복호하기로 했지만, 소정 문턱 사이즈가 부호화 측과 복호 측에서 공유되면 좋고, 이것에 한정되지 않는다. 예컨대, 고정의 소정 문턱 사이즈(4×4, 8×8 등)를 나타내는 플래그를 부호열에 부호화하여 복호하고, 부호화 측과 복호 측에서 소정 문턱 사이즈를 나타내는 플래그가 0이면, 고정의 소정 문턱 사이즈가 설정되고, 소정 문턱 사이즈를 나타내는 플래그가 1이면, 소정 문턱 사이즈가 설정되지 않도록 해도 실현할 수 있다. 또한, 소정 문턱 사이즈가 설정되지 않는 경우에는, 제1 예측 벡터 후보 리스트와 제2 예측 벡터 후보 리스트가 결합되어 예측 벡터 후보 리스트가 생성되도록 해도 좋다.
또, 소정 문턱 사이즈를 최대의 예측 블록 사이즈에 설정하여 동화상의 특성 등에 따라 적응적으로 설정하는 것은, 소정 문턱 사이즈가 최대의 예측 블록 사이즈인 것을 나타내는 정보(이하, 시간 부호 이용 플래그)를 시퀀스마다나 픽처마다 부호열로 부호화하여 복호하고, 시간 후보 이용 플래그가 0이면, 부호화 측과 복호 측에서 제2 예측 벡터 후보 리스트에 포함되는 ColPic 상의 움직임 벡터를 예측 벡터로서 이용하지 않도록 하고, 시간 후보 이용 플래그가 1인 경우 부호화측과 복호화측에서 제2 예측 벡터 후보 리스트에 포함되는 ColPic 상의 움직임 벡터를 예측 벡터로서 이용하도록 하는 것으로도 실현할 수 있다.
또, 무선 전송 등과 같이, 전송 에러 등이 발생하기 쉬운 경우에는, 소정 문턱 사이즈를 최대의 예측 블록 사이즈로 설정하고, 항상 제2 예측 벡터 후보 리스트에 포함되는 ColPic 상의 움직임 벡터를 예측 벡터로서 이용하지 않도록 함으로써, ColPic이 손실한 경우에도 예측 움직임 벡터를 취득할 수 있도록 하고, 부호화 스트림을 복호 할 수 없는 심각한 에러를 회피할 수 있다.
(거리 의존)
본 실시형태에서는, 소정 문턱 사이즈를 미리 정의했지만, 처리 대상의 예측 블록이 존재하는 처리 대상 화상과 제2 후보 블록군이 존재하는 다른 복호 종료의 화상과의 거리(시간차)에 의해, 화상 간의 거리가 커질수록 상기 소정 문턱 사이즈가 커지도록 제어하는 것도 가능하다. 이것은 화상 간의 거리가 커질수록 화상 간의 움직임 정보의 상관성이 감소하기 때문에 실행된다.
이 경우의 예측 벡터 후보 리스트 생성부(120)의 구성과 동작을 각각 도 17과 도 18에 나타낸다. 본 실시형태의 확장예에 의한 예측 벡터 후보 리스트 생성부(120)에는, 결합 판정부(131)에 단자(17) 및 단자(18)가 접속되어 있다. 단자(17)에서는 처리 대상 화상의 시간 정보가, 단자(18)에서는 다른 복호 종료의 화상의 시간 정보가 공급된다. 결합 판정부(131)는, 단자(17)에 의해 공급되는 처리 대상 화상의 시간 정보와 단자(18)에 의해 공급되는 다른 복호 종료의 화상의 시간 정보에 따라, 화상 간의 거리가 커질수록 상기 소정 문턱 사이즈가 커지도록 소정 문턱 사이즈를 설정한다(단계(S1136)). 본 실시예에서는, 시간 정보로서 POC를 이용한다. 도 19에 POC차가 커질수록 소정 문턱 사이즈가 커지도록 제어한 일례를 나타낸다. 또, POC차가 소정값 이상이면, 소정 문턱 사이즈가 항상 최대의 예측 블록 사이즈로서 작용하도록 할 수 있다.
(예측 벡터의 우선 순위)
본 실시형태에는, 결합 판정 결과가 1이면, 제1 예측 벡터 후보 리스트와 제2 예측 벡터 후보 리스트를 결합하여 예측 벡터 후보 리스트를 생성하는 것으로 했다. 일반적으로 처리 대상의 예측 블록 사이즈를 포함함 주변 영역이 평행 이동이나 정지하고 있는 경우 즉, 처리 대상의 예측 블록 사이즈가 큰 경우에는, 처리 대상의 예측 블록과는 다른 화상의 움직임 벡터가 유효해지기 때문에, 제2 예측 벡터 후보 리스트를 우선(優先)하고, 그 후에 제1 예측 벡터 후보 리스트를 추가할 수 있다. 제1 예측 벡터 후보 리스트와 제2 예측 벡터 후보 리스트를 결합한 예측 벡터 후보 리스트에서 우선하는 위치에 있는 것만큼 인덱스에 짧은 부호 길이의 부호를 할당하여 부호화하기 때문에, 인덱스의 부호화 효율을 향상시킬 수 있다.
또, 본 실시형태에는 결합 판정 결과가 1이면, 제1 예측 벡터 후보 리스트와 제2 예측 벡터 후보 리스트를 결합하여 예측 벡터 후보 리스트를 생성하고, 결합 판정 결과가 0이면, 제1 예측 벡터 후보 리스트에서 예측 벡터 후보 리스트를 생성하려고 했다. 본 실시형태에 의하면, 처리 대상 블록이 소정 문턱 사이즈 이상인 경우에 다른 복호 종료의 화상의 움직임 벡터를 우선하면 좋고, 결합 판정 결과가 1이면, 제2 예측 벡터 후보 리스트와 제1 예측 벡터 후보 리스트를 순차 결합하여 예측 벡터 후보 리스트를 생성하고, 결합 판정 결과가 0이면, 제1 예측 벡터 후보 리스트와 제2 예측 벡터 후보 리스트를 순차 결합하여 예측 벡터 후보 리스트를 생성할 수 있다.
본 실시형태의 확장예에 의한 예측 벡터 후보 리스트 생성부(120)의 동작을 설명하는 플로차트를 도 20에 도시한다. 제1 실시형태와의 차이는, 단계(S133)의 대신에 제2 예측 벡터 후보 리스트와 제1 예측 벡터 후보 리스트를 순차 결합하여 예측 벡터 후보 리스트로 하고 (단계(S136)), 단계(S134)의 대신에 제1 예측 벡터 후보 리스트와 제2 예측 벡터 후보 리스트를 순차 결합하여 예측 벡터 후보 리스트로 하는 것이다(단계(S136)).
(부호화 제어)
본 실시형태에는, 결합 판정 결과가 1이면, 제1 예측 벡터 후보 리스트와 제2 예측 후보 리스트를 결합하여 예측 벡터 후보 리스트를 생성하고, 결합 판정 결과가 0이면, 제1 예측 벡터 후보 리스트에서만 예측 벡터 후보 리스트를 생성하려고 했다. 이것은 부호화와 복호에서 공통 동작을 정의함으로써 예측 벡터 인덱스의 부호량을 삭감하기 위해 실행한 처리이다.
연산량을 삭감하는 목적뿐이라면, 결합 판정 결과와 달리, 제1 예측 벡터 후보 리스트와 제2 예측 벡터 후보 리스트를 결합하여 예측 벡터 후보 리스트를 생성하고, 부호화 장치에서 예측 벡터 인덱스의 선택시에 결합 판정 결과가 0이면, 제2 예측 벡터 후보 리스트에 포함되는 움직임 벡터를 예측 벡터로서 선택하지 않도록 제어할 수도 있다. 이 경우의 동화상 부호화 장치는 이하와 같은 특징을 갖는다.
복수의 블록 사이즈로 움직임 보상 예측을 실행하는 동화상 부호화 장치로서,
부호화 대상 블록에 인접하는 부호화 종료의 1개 이상의 블록의 움직임 벡터에서 제1 예측 움직임 벡터의 후보를 포함하는 제1 예측 벡터 후보 리스트를 생성하는 제1 예측 벡터 후보 리스트 생성부와,
부호화 종료 화상에서 상기 부호화 대상 블록과 동일 위치의 블록 및 상기 동일 위치의 블록에 인접하는 1개 이상의 블록의 움직임 벡터에서 제2 예측 움직임 벡터의 후보를 포함하는 제2 예측 벡터 후보 리스트를 생성하는 제2 예측 벡터 후보 리스트 생성부와,
상기 제1 예측 벡터 후보 리스트와 상기 제2 예측 벡터 후보 리스트를 결합한 제3 예측 벡터 후보 리스트를 생성하는 제3 예측 벡터 후보 리스트 생성부와,
상기 부호화 대상 블록의 블록 사이즈와 소정의 문턱 사이즈의 비교 결과에 의해, 상기 제2 예측 벡터 후보 리스트를 이용하는지 아닌지를 판정하는 결합 판정부와,
상기 부호화 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈보다도 작은 경우, 상기 제3 예측 벡터 후보 리스트 중 상기 제2 예측 벡터 후보 리스트를 선택 대상으로 하지 않고, 상기 제3 예측 벡터 후보 리스트 중 상기 제1 예측 벡터 후보 리스트에서 예측 움직임 벡터를 선택하는 예측 벡터 선택부와,
상기 제3 예측 벡터 후보 리스트에서 상기 선택된 예측 움직임 벡터의 위치를 나타내는 정보를 부호화하는 부호화부를 구비한다.
(후보 리스트 생성의 확장)
본 실시형태에는, 후보 리스트의 생성 대상을 움직임 벡터로서 예측 벡터 인덱스의 부호화 및 복호에 대해 설명했다. 본 실시형태에 의하면, 후보 리스트의 생성 대상은 움직임 벡터에 한정되지 않고, 처리 대상 블록에 인접하는 처리 종료의 블록의 정보에서 제1 후보 리스트를 생성하고, 이미 처리 종료 화상의 처리 대상 블록과 동일 위치에 인접하는 블록의 정보에서 제2 후보 리스트를 생성하고, 제1 후보 리스트와 제2 후보 리스트에서 생성한 제3의 후보 리스트를 생성하고, 제3의 후보 리스트에서 부호화 및 복호하는 인덱스를 결정하는 방법이면 좋다. 예컨대, 본 실시형태는, 움직임 정보를 인계하는 방향을 나타내는 인계 방향 인덱스(머지 인덱스)에 적용할 수 있다.
이 경우, 제1 후보 리스트, 제2 후보 리스트, 제3의 후보 리스트에서는 움직임 벡터에 더해 참조 화상 인덱스 및 움직임 보상 예측의 방향이 동일하게 관리되고, 인계 방향 인덱스에 의해 나타낸 블록의 움직임 정보로서 움직임 벡터, 참조 화상 인덱스 및 움직임 보상 예측의 방향이 처리 대상 블록의 움직임 정보로서 이용된다. 즉, 본 실시형태에서 설명한 예측 벡터가 그대로 움직임 벡터로서 이용된다. 또한, 신택스에서 설명한 NumMergeCands()는 NumMvpCands()와 동일하게 후보 리스트에 포함되는 후보수를 되돌린다. 또, 인계 방향 인덱스의 부호열에는 예측 벡터 인덱스의 부호열과 동일하게 Truncated Unary 부호열이 이용된다.
(제1 실시형태의 효과)
이와 같이, 처리 대상의 예측 블록 사이즈를 포함한 주변 영역이 평행 이동하고 있거나 정지하고 있을 가능성이 낮은 경우 즉, 처리 대상의 예측 블록 사이즈가 작은 경우에, 처리 대상의 예측 블록과는 다른 화상의 움직임 벡터를 예측 움직임 벡터 후보에 더하지 않도록 제어함으로써, 예측 벡터 후보수가 삭감되고, 예측 벡터 인덱스의 부호량을 삭감할 수 있고, 움직임 보상 예측의 효율의 저하를 억제하는 동화상 부호화 장치를 실현할 수 있다. 한편, 처리 대상의 예측 블록 사이즈가 큰 경우에, 처리 대상의 예측 블록과는 다른 화상의 움직임 벡터를 예측 움직임 벡터 후보에 더함으로써, 예측 벡터의 정도를 향상시킬 수 있다.
예측 벡터 후보수가 삭감됨으로써 움직임 벡터 메모리에 대한 액세스량이 억제되고, 처리량이 삭감되는 효과도 있다. 예컨대, 다른 화상의 움직임 벡터가 외부 메모리 등에 소재하는 경우에, 움직임 벡터 메모리에 대한 액세스량을 억제하는 효과는 크다.
또, 처리 대상의 예측 블록이 존재하는 처리 대상 화상과 제2 후보 블록군이 존재하는 대상 처리 화상과는 다른 복호 종료의 화상과의 거리(시간차)가 커지는 즉, 움직임 정보의 상관도는 작아지는 경우에, 다른 화상의 움직임 벡터를 예측 움직임 벡터 후보에 더하지 않도록 억제함으로써 상기와 동일한 결과를 실현할 수 있다.
이와 같은 효과는 화면 사이즈가 클수록 현저하게 된다.
[제2 실시형태]
도 21은, 본 발명의 제2 실시형태의 동화상 부호화 장치(300)의 구성을 도시한다. 본 발명의 제2 실시형태의 동화상 부호화 장치(300)의 구성은, 단자(30)의 설정과 움직임 정보 압축부(301), 제2 움직임 정보 메모리(302), 움직임 정보 신장부(303) 및 움직임 정보 생성부(109)이고, 제1 실시형태의 동화상 부호화 장치(100)의 구성과 동일하다.
이하, 본 실시형태에서 단자(30)의 설정과 움직임 정보 압축부(301), 제2 움직임 정보 메모리(302), 움직임 정보 신장부(303), 움직임 정보 생성부(109)의 기능에 대해 제1 실시형태와의 차이를 설명한다.
단자(30)에 의해 움직임 정보 메모리 압축률(α)과 시간 벡터 이용 제한 레벨(β)이 공급되고, 움직임 정보 메모리 압축률(α)은 움직임 정보 생성부(109), 움직임 정보 압축부(301) 및 움직임 정보 신장부(303)에 공급되고, 시간 벡터 이용 제한 레벨(β)은 움직임 정보 생성부(109)에 공급된다.
움직임 정보 압축부(301)는, 제1 움직임 정보 메모리(111)에 의해 공급되는 움직임 벡터와 참조 화상 인덱스를 움직임 정보 메모리 압축률(α)에 기초하여 1/2α의 메모리 영역에 압축하고, 제2 움직임 정보 메모리(302)에 공급한다.
제2 움직임 정보 메모리(302)는, 제1 실시형태의 제2 움직임 정보 메모리(112)의 1/2α의 메모리 용량을 갖고, 움직임 정보 압축부(301)에 의해 공급되는 움직임 벡터와 참조 화상 인덱스를 소정 화상수만 기억한다.
움직임 정보 신장부(303)는, 움직임 정보 메모리 압축률(α)에 기초하여 제2 움직임 정보 메모리(302)에 의해 공급되는 움직임 벡터와 참조 화상 인덱스를 신장하여 움직임 정보 생성부(109)에 공급한다.
움직임 정보 메모리 압축률(α)에 대해 설명한다. 움직임 정보 메모리 압축률(α)은 제2 움직임 정보 메모리(302)의 메모리 용량을 삭감하기 위해 설정되는 것으로, 수평, 수직 방향 각각에 대해 2α의 사이즈("압축 사이즈"라고 함)의 움직임 정보 메모리 영역가 하나의 메모리 영역에 압축된다. 이때, 2α의 사이즈의 메모리 영역에 격납되어 있던 움직임 정보를 정리하여 하나의 대표값으로 치환하고, 대표값은 1/2α로 압축된 블록 사이즈 단위로 할당된 메모리 영역에 격납된다. 예컨대, 2α의 사이즈의 메모리 영역에 격납되어 있던 움직임 벡터는 평균값을 취하는 등에 의해, 하나의 움직임 벡터로 치환되고, 1/2α로 압축된 메모리 영역에 격납된다. 본 실시형태에는 α를 5로 가정한다.
도 22를 이용해서 움직임 정보의 압축과 신장에 대해 설명한다. 도 22(a)는 압축 전의 제1 움직임 정보 메모리(111)의 메모리 영역(0)에서 메모리 영역(63)까지의 64개의 메모리 영역를 도시한다. 본 실시예에서는 64개의 메모리 영역의 대표값을 메모리 영역(0)에 격납된 값으로 한다. 도 22(b)는 압축 후의 제2 움직임 정보 메모리(302)의 1개의 메모리 영역에 제1 움직임 정보 메모리(111)의 메모리 영역(0)의 값이 기억되어 있는 모양을 나타낸다. 도 22(c)는 신장 후의 움직임 정보 생성부(109)에 공급되는 64개의 메모리 영역에 제2 움직임 정보 메모리(302)의 1개의 메모리 영역의 값이 복제되어 기억되어 있는 모양을 나타낸다.
본 실시형태에서는 움직임 정보 메모리 압축률(α)을 5로 했지만, 움직임 정보 메모리 압축률(α)은 0 이상이면 좋다. 또, 메모리 영역의 대표값을 메모리 영역(0)로 했지만, 중앙에 위치하는 메모리 영역(27)나 그 인접 블록 영역로 해도 좋고, 메모리 영역(0)에서 메모리 영역(63)의 평균값이나 중앙값이어도 좋다.
움직임 정보 생성부(109)에는, 움직임 정보 메모리 압축률(α)과 시간 벡터 이용 제한 레벨(β)이 공급되고, 예측 벡터 후보 리스트 생성부(120) 내의 결합 판정부(131)의 기능만 제1 실시형태와 다르다.
이하, 결합 판정부(131)에 대해 설명한다. 본 실시예에서 결합 판정 결과의 도출은, 제1 실시형태의 결합 판정 결과의 도출과는 기준값이 되는 소정 문턱 사이즈를 이하의 결합 허가 사이즈로 치환한 것과 동일하다.
본 실시예에서 결합 판정 결과의 도출은, 처리 대상 블록의 예측 블록 사이즈가 움직임 정보 메모리 압축률(α)과 시간 벡터 이용 제한 레벨(β)에 의해 도출되는 결합 허가 사이즈와 비교하는 것에 의해 실행된다. 처리 대상 블록의 예측 블록 사이즈가 움직임 정보 메모리 압축률(α)과 시간 벡터 이용 제한 레벨(β)에 의해 결정되는 결합 허가 사이즈 이상이면 결합 판정 결과를 1로 가정하고, 그 이외에는 0으로 가정한다.
결합 허가 사이즈는 수평 방향, 수직 방향 모두 2α (β≤α)로 한다. β=0으로 하면, 결합 허가 사이즈는 움직임 정보 메모리 압축률에 의해 결정되는 메모리 영역 사이즈(즉, 상술의 압축 사이즈)와 동일하게 되고, β=α로 하면, 결합 허가 사이즈는 1이 되기 때문에, 모든 예측 블록 사이즈에 대해 결합을 허가하는 것이 된다. 본 실시형태에는 β=0으로 한다. 즉, 결합 허가 사이즈는 32화소×32화소가 된다.
본 실시형태에 의한 동화상 부호화 장치(100)에서는, 상위의 SPS에서 도 23의 신택스에 따라 움직임 정보 메모리 압축률(α과 시간 벡터 이용 제한 레벨(β)이 부호화되어 부호열이 된다. 도 23의 신택스에서는, 움직임 정보 메모리 압축률(α(mv_compression_ratio))와 시간 벡터 이용 제한 레벨(β(temporal_mv_restrict_idc))을 SPS(Sequence Parameter Set)의 일부에 설정하고 있지만, SPS보다도 하위 계층의 PPS(Picture Parameter Set)나 슬라이스 헤더 등에 설치할 수도 있다. 또한, 움직임 정보 메모리 압축률(α)과 시간 벡터 이용 제한 레벨(β)은 메모리 영역 사이즈와 결합 허가 사이즈가 도출되면 좋고, 도 23의 형식에는 한정되지 않는다. 예컨대, 움직임 정보 메모리 압축률(α)이나 시간 벡터 이용 제한 레벨(β)을 도 32에서 도시하는 CU 분할수로 도시할 수 있다. 또, 수평 방향과 수직 방향으로 나누어 움직임 정보 메모리 압축률(α)과 시간 벡터 이용 제한 레벨(β)을 설정할 수 있다.
(부호화 장치의 동작)
이어서, 도 24의 플로차트를 이용해서 본 실시형태의 동화상 부호화장치(300)에서 부호화 동작을 설명한다. 제1 실시형태와의 차이에 대해 설명한다.
먼저, 상위의 SPS에서 움직임 정보 메모리 압축률(α)과 시간 벡터 이용 제한 레벨(β)이 부호화된다.
그리고 모든 예측 블록의 처리의 종료 후(단계(S110)의 YES), 움직임 정보 압축부(301)는 제1 움직임 정보 메모리(111)에 의해 공급되는 움직임 벡터와 참조 화상 인덱스를 움직임 정보 메모리 압축률(α)에 기초하여 1/2α의 메모리 영역에 압축한다(단계(S300)).
또, 단계(S101)의 후에, 움직임 정보 신장부(303)는 움직임 정보 메모리 압축률(α)에 기초하여 제2 움직임 정보 메모리(302)에 의해 공급되는 움직임 벡터와 참조 화상 인덱스를 신장하고, 움직임 정보 생성부(109)에 공급한다(단계(S301)).
이어서, 도 25의 플로차트를 이용해서 본 실시형태의 예측 벡터 후보 리스트 생성부(120) 내의 결합 판정부(131)의 동작에 대해 제1 실시형태와의 차이점에 대해 설명한다. 도 25는 예측 벡터 후보 리스트 생성부(120)의 동작을 나타낸다.
먼저, 결합 판정부(131)는, 움직임 정보 메모리 압축률(α)과 시간 벡터 이용 제한 레벨(β)에 의해 결합 허가 사이즈를 도출한다(단계(S330)).
결합 판정부(131)는, 처리 대상의 예측 블록의 예측 블록의 사이즈와 결합 허가 사이즈에서 결합 판정 결과를 도출한다(단계(S132).
(복호 장치의 구성과 기능)
다음으로, 본 실시형태의 동화상 복호 장치를 설명한다. 도 26에 본 실시형태의 동화상 복호 장치(400)를 도시한다. 동화상 복호 장치(400)는, 동화상 부호화 장치(300)에 의해 부호화된 부호열을 복호하여 재생 화상을 생성하는 장치이다.
본 발명의 제2 실시형태의 동화상 복호 장치(400)의 구성은, 움직임 정보 압축부(401), 제2 움직임 정보 메모리(402), 움직임 정보 신장부(403), 움직임 정보 재생부(204)를 제외하고 제1 실시형태의 동화상 복호 장치(200)의 구성과 동일하다.
이하, 본 실시형태에서 움직임 정보 압축부(401), 제2 움직임 정보 메모리(402), 움직임 정보 신장부(403), 움직임 정보 재생부(204)의 기능에 대해 제1 실시형태와의 차이를 설명한다.
본 실시형태에 의한 동화상 복호 장치(400)에는, 상위의 SPS에서 도 23의 신택스에 따라 움직임 정보 메모리 압축률(α)과 시간 벡터 이용 제한 레벨(β)이 부호열에서 복호되고, 단자(40)에 의해 공급된다. 단자(40)에 의해 움직임 정보 메모리 압축률(α)이 움직임 정보 압축부(401), 움직임 정보 신장부(403), 움직임 정보 재생부(204)에 공급되고, 시간 벡터 이용 제한 레벨(β)이 움직임 정보 재생부(204)에 공급된다.
움직임 정보 압축부(401), 제2 움직임 정보 메모리(402), 움직임 정보 신장부(403)의 기능은, 본 실시예의 동화상 부호화 장치(300)의 움직임 정보 압축부(301), 제2 움직임 정보 메모리(302), 움직임 정보 신장부(303)와 동일하다.
움직임 정보 재생부(204)에는, 움직임 정보 메모리 압축률(α)과 시간 벡터 이용 제한 레벨(β)이 공급되고, 예측 벡터 후보 리스트 생성부(120) 내의 결합 판정부(131)의 기능만이 다르다. 예측 벡터 후보 리스트 생성부(120) 내의 결합 판정부(131)의 기능은, 본 실시예의 동화상 부호화 장치(300)와 동일하다.
(복호 장치의 동작)
이어서, 도 27의 플로차트를 이용해서, 본 실시형태의 동화상 복호 장치(400)에서 복호의 동작을 설명한다. 제1 실시형태와의 차이에 대해 설명한다.
먼저, 상위의 SPS에서 움직임 정보 메모리 압축률(α)과 시간 벡터 이용 제한 레벨(β)이 복호된다.
그리고 모든 예측 블록의 처리의 종료 후(단계(S205)의 YES), 움직임 정보 압축부(401)는 제1 움직임 정보 메모리(207)에 의해 공급되는 움직임 벡터와 참조 화상 인덱스를 움직임 정보 메모리 압축률(α)에 기초하여 1/2α의 메모리 영역에 압축한다(단계(S400)).
또, 단계(S201) 전에, 움직임 정보 신장부(403)는 움직임 정보 메모리 압축률(α)에 기초하여, 제2 움직임 정보 메모리(402)에 의해 공급되는 움직임 벡터와 참조 화상 인덱스를 신장하고, 움직임 정보 재생부(204)에 공급한다(단계(S401).
(제2 실시형태의 변형예)
또한, 본 실시형태는 이하의 변형예를 적용할 수 있다.
본 실시형태에는 제2 움직임 정보 메모리에 기억된 압축된 움직임 벡터와 참조 인덱스를 움직임 정보 신장부에 의해 신장하고, 신장한 움직임 벡터와 참조 인덱스를 움직임 정보 생성부나 움직임 정보 재생부에 공급하고 있지만, 본 실시형태는 압축된 움직임 벡터와 참조 인덱스를 압축이나 신장을 하지 않아도 동일하게 실시할 수 있다.
예컨대, 움직임 정보 신장부 대신에 메모리 어드레스 변환부를 설치하고, 신장된 메모리 영역에서 참조되는 메모리 어드레스를 압축된 메모리 영역의 메모리 어드레스로 변환함으로써, 신장하지 않고 움직임 정보에 액세스할 수도 있다.
예컨대, 도 22와 같이 수평(8) 블록, 수직(8) 블록의 64개의 메모리 영역의 대표값을 메모리 영역(0)에 격납된 값으로 하는 경우에는, 신장된 메모리 영역에서 참조되는 메모리 어드레스의 수평 위치와 수직 위치를 각각 blkX, blkY, 압축된 메모리 영역의 어드레스의 수평 위치와 수직 위치를 각각 rblkX, rblkY로 하면, 식 1과 식 2에 의해 산출할 수 있다. 여기서, Floor 함수는 입력값에서 끝수를 잘라 버리고 정수로 하는 함수로 한다.
rblkX=Floor(blkX08); (식 1)
rblkY=Floor(blkY08); (식 2)
또, 움직임 정보 압축부(301)를 생략하고, 움직임 정보 신장부 대신에 메모리 어드레스 변환부를 설치하고, 참조되는 메모리 어드레스를 움직임 정보의 대표값이 격납되어 있는 메모리 어드레스에 변환하는 것으로도 실현할 수 있다. 예컨대, 도 22와 같이 수평(8) 블록, 수직(8) 블록의 64개의 메모리 영역의 대표값을 메모리 영역(0)에 격납된 값으로 하는 경우에는, 참조되는 메모리 어드레스의 수평 위치와 수직 위치를 각각 blkX, blkY, 대표값이 격납되어 있는 메모리 어드레스의 수평 위치와 수직 위치를 각각 rblkX, rblkY로 하면, 식 3과 식 4에 의해 산출할 수 있다.
rblkX=Floor(blkX/8)*8; (식 3)
rblkY=Floor(blkY/8)*8; (식 4)
메모리 어드레스 변환함으로써, 메모리 용량을 삭감할 수는 없지만, 압축이나 신장하는 처리를 삭감할 수 있다.
(제2 실시형태의 효과)
이와 같이, 처리 대상의 예측 블록 사이즈가 작은 경우, 압축된 다른 화상의 움직임 벡터를 예측 움직임 벡터 후보에 더하지 않도록 제어함으로써, 본래의 움직임 정도와는 다른 움직임 정보의 이용을 제한하여 움직임 보상 예측의 정도의 저하를 억제하면서 연산량을 삭감하고, 예측 벡터 후보수를 삭감하여 예측 벡터 인덱스의 부호량을 삭감할 수 있는 동화상 부호화 장치를 실현할 수 있다.
또, 예컨대 압축된 다른 화상의 움직임 벡터가 외부 메모리 등에 소재하는 경우에는, 움직임 벡터 메모리에 대한 액세스량을 억제하는 효과도 있다.
또, 예측 벡터로서 다른 화상의 움직임 벡터의 이용을 제한하는 조건을 나타내는 정보를 복호하는 경우에는, 움직임 정보 메모리 압축률의 정의도 합해서 복호함으로써, 다른 화상의 움직임 벡터의 이용이 제한된 경우에는 움직임 정보 메모리의 압축을 촉구하고, 효율적인 움직임 정보 메모리의 이용이 실현될 수 있다. 또, 플래그를 공용함으로써, 보다 저위계층에서 다른 화상의 움직임 벡터의 이용의 제한이나 움직임 정보 메모리 압축률의 정의에서 플래그의 부호량의 증가를 억제할 수 있다.
이상 진술한 실시형태의 동화상 부호화 장치가 출력하는 동화상의 부호화 스트림은, 실시형태에서 이용된 부호화 방법에 따라 복호할 수 있도록 특정한 데이터 포맷을 갖고 있으며, 동화상 부호화 장치에 대응하는 동화상 복호 장치가 이 특정한 데이터 포맷의 부호화 스트림을 복호 할 수 있다.
동화상 부호화 장치와 동화상 복호 장치의 사이에서 부호화 스트림을 주고 밭기 위해, 유선 또는 무선의 네트워크가 사용되는 경우, 부호화 스트림을 통신로의 전송 형태에 적당한 데이터 형식으로 변환하여 전송해도 좋다. 그 경우, 동화상 부호화 장치가 출력하는 부호화 스트림을 통신로의 전송 형태에 적당한 데이터 형식의 부호화 데이터로 변환하여 네트워크에 송신하는 동화상 송신 장치와, 네트워크에서 부호화 데이터를 수신하여 부호화 스트림에 복원하여 동화상 복호 장치에 공급하는 동화상 수신 장치가 마련되어 있다.
동화상 송신 장치는, 동화상 부호화 장치가 출력하는 부호화 스트림을 버퍼하는 메모리와, 부호화 스트림을 패킷화하는 패킷 처리부와, 패킷화된 부호화 데이터를 네트워크를 통해 송신하는 송신부를 포함한다. 동화상 수신 장치는, 패킷화된 부호화 데이터를 네트워크를 통해 수신하는 수신부와, 수신된 부호화 데이터를 버퍼하는 메모리와, 부호화 데이터를 패킷 처리하여 부호화 스트림을 생성하고, 동화상 복호 장치에 제공하는 패킷 처리부를 포함한다.
이상의 부호화 및 복호에 관한 처리는, 하드웨어를 이용한 전송, 축적, 수신 장치로서 실현할 수 있는 것은 당연하며, ROM(리드·온리·메모리)나 플래시 메모리 등에 기억되어 있는 펌웨어나 컴퓨터 등의 소프트웨어에 의해서도 실현할 수 있다. 그 펌웨어 프로그램, 소프트웨어 프로그램을 컴퓨터 등으로 읽을 수 있는 기록 매체에 기록하여 제공하는 것도, 유선 또는 무선의 네트워크를 통해 서버에서 제공하는 것도, 지상파 또는 위성 디지털 방송의 데이터 방송으로 제공하는 것도 가능하다.
이상, 본 발명을 실시형태를 기초로 설명했다. 실시형태는 예시이고, 그들의 각 구성 요소나 각 처리 프로세스의 조합에 여러 가지 변형예가 가능한 것, 또 그러한 변형예도 본 발명의 범위에 있는 것은 당업자에게 이해되는 바이다.
*본 발명은 이하의 양태로 구성되어도 좋다.
[항목1]
블록 단위로 움직임 보상 예측을 실행하는 동화상 부호화 장치로,
부호화 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 부호화 종료 화상에 있는 블록에서 예측 움직임 벡터 후보를 도출하고, 상기 부호화 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 도출하지 않는 예측 움직임 벡터 후보 생성부를 구비하는 것을 특징으로 하는 동화상 부호화 장치.
[항목2]
블록 단위로 움직임 보상 예측을 실행하는 동화상 부호화 장치로,
부호화 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 부호화 종료 화상에 있는 블록에서 얻어지는 예측 움직임 벡터 후보를 예측 움직임 벡터 후보 리스트에 포함시키고, 상기 부호화 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 상기 예측 움직임 벡터 후보 리스트에 포함하지 않는 예측 움직임 벡터 후보 리스트 생성부와,
상기 예측 움직임 벡터 후보 리스트에서 상기 부호화 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택부와,
상기 예측 움직임 벡터 후보 리스트에서 상기 선택된 예측 움직임 벡터의 위치를 나타내는 정보를 부호화하는 부호화부를 구비하는 것을 특징으로 하는 동화상 부호화 장치.
[항목3]
상기 부호화 종료 화상에 있는 블록은 상기 부호화 대상 블록과 동일 위치의 블록 또는 상기 동일 위치의 블록의 주변에 있는 블록인 것을 특징으로 하는 항목1 또는 항목2에 기재된 동화상 부호화 장치.
[항목4]
상기 부호화부는, 상기 소정의 문턱 사이즈를 나타내는 정보를 부호화하는 것을 특징으로 하는 항목1 내지 항목3 중 어느 하나에 기재된 동화상 부호화 장치.
[항목5]
상기 부호화 종료 화상에 있는 블록의 움직임 벡터는, 소정 영역마다 소정 영역 내의 어느 하나의 블록의 움직임 벡터로 설정된 것을 특징으로 하는 항목1 내지 항목4 중 어느 하나에 기재된 동화상 부호화 장치.
[항목6]
상기 소정의 문턱 사이즈는 상기 소정 영역보다도 작아지도록 설정되는 것을 특징으로 하는 항목5에 기재된 동화상 부호화 장치.
[항목7]
상기 부호화 대상 블록을 포함하는 화상과 상기 부호화 종료 화상과의 시간차가 길어지면, 상기 소정의 문턱 사이즈가 커지도록 제어하는 것을 특징으로 하는 항목1 내지 항목6 중 어느 하나에 기재된 동화상 부호화 장치.
[항목8]
블록 단위로 움직임 보상 예측을 실행하는 동화상 부호화 장치로,
부호화 대상 블록에 인접하는 블록에서 공간 예측 움직임 벡터 후보를 도출하는 공간 예측 움직임 벡터 후보 생성부와,
부호화 종료 화상에 있는 블록에서 시간 예측 움직임 벡터 후보를 도출하는 시간 예측 움직임 벡터 후보 생성부와,
시간 예측 움직임 벡터의 이용을 허가하는지 아닌지를 나타내는 이용 허가 정보가 허가함을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보와 상기 시간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하고, 상기 이용 허가 정보가 허가하지 않음을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하는 예측 움직임 벡터 후보 리스트 생성부와,
상기 예측 움직임 벡터 후보 리스트에서 상기 부호화 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택부와,
상기 예측 움직임 벡터 후보 리스트에서 상기 선택된 예측 움직임 벡터의 위치를 나타내는 정보를 부호화하는 부호화부를 구비하는 것을 특징으로 하는 동화상 부호화 장치.
[항목9]
상기 부호화 종료 화상에 있는 블록은, 상기 부호화 대상 블록과 동일 위치의 블록 또는 상기 동일 위치의 블록의 주변에 있는 블록인 것을 특징으로 하는 항목8에 기재된 동화상 부호화 장치.
[항목10]
상기 부호화부는, 상기 이용 허가 정보를 부호화하는 것을 특징으로 하는 항목8 또는 항목9에 기재된 동화상 부호화 장치.
[항목11]
상기 부호화 종료 화상에 있는 블록의 움직임 벡터는, 소정 영역마다 소정 영역 내의 어느 하나의 블록의 움직임 벡터에 설정되는 것을 특징으로 하는 항목8 내지 항목10 중 어느 하나에 기재된 동화상 부호화 장치.
[항목12]
복수의 블록 사이즈로 움직임 보상 예측을 실행하는 동화상 부호화 장치로,
부호화 대상 블록에 인접하는 부호화 종료의 1개 이상의 블록의 움직임 벡터에서 제1 예측 움직임 벡터의 후보를 포함하는 제1 예측 벡터 후보 리스트를 생성하는 제1 예측 벡터 후보 리스트 생성부와,
부호화 종료 화상에서 상기 부호화 대상 블록과 동일 위치의 불록 및 상기 동일 위치의 블록에 인접하는 1개 이상의 블록의 움직임 벡터에서 제2 예측 움직임 벡터의 후보를 포함하는 제2 예측 벡터 후보 리스트를 생성하는 제2 예측 벡터 후보 리스트 생성부와,
상기 부호화 대상 블록의 블록 사이즈와 소정의 문턱 사이즈와의 비교 결과에 의해, 상기 제1 예측 벡터 후보 리스트와 상기 제2 예측 벡터 후보 리스트를 결합한 제3 예측 벡터 후보 리스트를 생성하는지 아닌지를 판정하는 결합 판정부와,
상기 부호화 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈보다도 작은 경우, 상기 제2 예측 벡터 후보 리스트를 결합시키지 않고, 상기 제1 예측 벡터 후보 리스트에서 상기 제3 예측 벡터 후보 리스트를 생성하는 제3 예측 벡터 후보 리스트 생성부와,
상기 제3 예측 벡터 후보 리스트에서 상기 부호화 대상 블록의 예측 움직임 벡터를 선택하는 예측 벡터 선택부와,
상기 제3 예측 벡터 후보 리스트에서 상기 선택된 예측 움직임 벡터의 위치를 나타내는 정보를 부호화하는 부호화부를 구비하는 것을 특징으로 하는 동화상 부호화 장치.
[항목13]
복수의 블록 사이즈로 움직임 보상 예측을 실행하는 동화상 부호화 장치로,
부호화 종료의 블록의 움직임 벡터를 최소 블록 사이즈 단위로 할당된 메모리 영역에 격납하여 관리하는 제1 움직임 벡터 기억부와,
상기 제1 움직임 벡터 기억부를 참조하여, 부호화 대상 블록에 인접하는 부호화 종료의 1개 이상의 블록의 움직임 벡터에서 제1 예측 움직임 벡터의 후보를 포함하는 제1 예측 벡터 후보 리스트를 생성하는 제1 예측 벡터 후보 리스트 생성부와,
부호화 종료 화상의 최소 블록 사이즈 단위의 움직임 벡터를 소정의 압축 사이즈로 정리하여 1개의 대표 움직임 벡터로 치환하고, 압축 사이즈 단위로 할당된 메모리 영역에 격납하여 관리하는 제2 움직임 벡터 기억부와,
상기 제2 움직임 벡터 기억부를 참조하여, 부호화 종료 화상에서 상기 부호화 대상 블록과 동일 위치의 블록 및 상기 동일 위치의 블록에 인접하는 1개 이상의 블록의 움직임 벡터에서 제2 예측 움직임 벡터의 후보를 포함하는 제2 예측 벡터 후보 리스트를 생성하는 제2 예측 벡터 후보 리스트 생성부와,
상기 부호화 대상 블록의 블록 사이즈와 소정의 문턱 사이즈와의 비교 결과에 의해, 상기 제1 예측 벡터 후보 리스트와 상기 제2 예측 벡터 후보 리스트를 결합한 제3 예측 벡터 후보 리스트를 생성하는지 아닌지를 판정하는 결합 판정부와,
상기 부호화 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈보다도 작은 경우, 상기 제2 예측 벡터 후보 리스트를 결합하지 않고, 상기 제1 예측 벡터 후보 리스트에서 상기 제3 예측 벡터 후보 리스트를 생성하는 제3 예측 벡터 후보 리스트 생성부와,
상기 제3 예측 벡터 후보 리스트에서 상기 부호화 대상 블록의 예측 움직임 벡터를 선택하는 예측 벡터 선택부와,
상기 제3 예측 벡터 후보 리스트에서 상기 선택된 예측 움직임 벡터의 위치를 나타내는 정보를 부호화하는 부호화부를 구비하는 것을 특징으로 하는 동화상 부호화 장치.
[항목14]
블록 단위로 움직임 보상 예측을 실행하는 동화상 부호화 방법으로,
부호화 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 부호화 종료 화상에 있는 블록에서 예측 움직임 벡터 후보를 도출하고, 상기 부호화 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 도출하지 않는 예측 움직임 벡터 후보 생성 단계를 구비하는 것을 특징으로 하는 동화상 부호화 방법.
[항목15]
블록 단위로 움직임 보상 예측을 실행하는 동화상 부호화 방법으로,
부호화 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 부호화 종료 화상에 있는 블록에서 얻어지는 예측 움직임 벡터 후보를 예측 움직임 벡터 후보 리스트에 포함하고, 상기 부호화 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 상기 예측 움직임 벡터 후보 리스트에 포함하지 않는 예측 움직임 벡터 후보 리스트 생성 단계와,
상기 예측 움직임 벡터 후보 리스트에서 상기 부호화 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택 단계와,
상기 예측 움직임 벡터 후보 리스트에서 상기 선택된 예측 움직임 벡터의 위치를 나타내는 정보를 부호화하는 부호화 단계를 구비하는 것을 특징으로 하는 둥화상 부호화 방법.
[항목16]
블록 단위로 움직임 보상 예측을 실행하는 동화상 부호화 방법으로,
부호화 대상 블록에 인접하는 블록에서 공간 예측 움직임 벡터 후보를 도출하는 공간 예측 움직임 벡터 후보 생성 단계와,
부호화 종료 화상에 있는 블록에서 시간 예측 움직임 벡터 후보를 도출하는 시간 예측 움직임 벡터 후보 생성 단계와,
시간 예측 움직임 벡터의 이용을 허가하는지 아닌지를 나타내는 이용 허가 정보가 허가함을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보와 상기 시간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하고, 상기 이용 허가 정보가 허가하지 않음을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하는 예측 움직임 벡터 후보 리스트 생성 단계와,
상기 예측 움직임 벡터 후보 리스트에서 상기 부호화 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택 단계와,
상기 예측 움직임 벡터 후보 리스트에서 상기 선택된 예측 움직임 벡터의 위치를 나타내는 정보를 부호화하는 부호화 단계를 구비하는 것을 특징으로 하는 동화상 부호화 방법.
[항목17]
블록 단위로 움직임 보상 예측을 실행하는 동화상 부호화 프로그램으로,
부호화 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 부호화 종료 화상에 있는 블록에서 예측 움직임 벡터 후보를 도출하고, 상기 부호화 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 도출하지 않는 예측 움직임 벡터 후보 생성 단계를 컴퓨터로 실행하는 것을 특징으로 하는 동화상 부호화 프로그램.
[항목18]
블록 단위로 움직임 보상 예측을 실행하는 동화상 부호화 프로그램으로,
부호화 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 부호화 종료 화상에 있는 블록에서 얻어지는 예측 움직임 벡터 후보를 예측 움직임 벡터 후보 리스트에 포함하고, 상기 부호화 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 상기 예측 움직임 벡터 후보 리스트에 포함하지 않는 예측 움직임 벡터 후보 리스트 생성 단계와,
상기 예측 움직임 벡터 후보 리스트에서 상기 부호화 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택 단계와,
상기 예측 움직임 벡터 후보 리스트에서 상기 선택된 예측 움직임 벡터의 위치를 나타내는 정보를 부호화하는 부호화 단계를 컴퓨터에 실행시키는 것을 특징으로 하는 동화상 부호화 프로그램.
[항목19]
블록 단위로 움직임 보상 예측을 실행하는 동화상 부호화 프로그램으로,
부호화 대상 블록에 인접하는 블록에서 공간 예측 움직임 벡터 후보를 도출하는 공간 예측 움직임 벡터 후보 생성 단계와,
부호화 종료 화상에 있는 블록에서 시간 예측 움직임 벡터 후보를 도출하는 시간 예측 움직임 벡터 후보 생성 단계와,
시간 예측 움직임 벡터의 이용을 허가하는지 아닌지를 나타내는 이용 허가 정보가 허가함을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보와 상기 시간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하고, 상기 이용 허가 정보가 허가하지 않음을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하는 예측 움직임 벡터 후보 리스트 생성 단계와,
상기 예측 움직임 벡터 후보 리스트에서 상기 부호화 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택 단계와,
상기 예측 움직임 벡터 후보 리스트에서 상기 선택된 예측 움직임 벡터의 위치를 나타내는 정보를 부호화하는 부호화 단계를 컴퓨터에 실행시키는 것을 특징으로 하는 동화상 부호화 프로그램.
[항목20]
블록 단위로 움직임 보상 예측을 실행하는 동화상 복호 장치로,
복호 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록에서 예측 움직임 벡터 후보를 도출하고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 도출하지 않는 예측 움직임 벡터 후보 생성부를 구비하는 것을 특징으로 하는 동화상 복호 장치.
[항목21]
블록 단위로 움직임 보상 예측을 실행하는 동화상 복호 장치로.
복호 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록에서 얻어지는 예측 움직임 벡터 후보를 예측 움직임 벡터 후보 리스트에 포함하고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 상기 예측 움직임 벡터 후보 리스트에 포함하지 않는 예측 움직임 벡터 후보 리스트 생성부와,
상기 예측 움직임 벡터 후보 리스트에서 참조해야하는 예측 움직임 벡터의 위치를 나타내는 정보를 복호하는 복호부와,
상기 예측 움직임 벡터 후보 리스트에서 참조해야하는 예측 움직임 벡터의 위치를 나타내는 정보에 기초하여 상기 예측 움직임 벡터 후보 리스트에서 상기 복호 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택부를 구비하는 것을 특징으로 하는 동화상 복호 장치.
[항목22]
상기 복호 종료 화상에 있는 블록은 상기 복호 대상 블록과 동일 위치의 블록 또는 상기 동일 위치의 블록의 주변에 있는 블록인 것을 특징으로 하는 항목20 또는 항목21에 기재된 동화상 복호 장치.
[항목23]
상기 복호부는, 상기 소정의 문턱 사이즈를 나타내는 정보를 복호하고, 상기 소정의 문턱 사이즈를 얻는 것을 특징으로 하는 항목20 내지 항목22 중 어느 하나에 기재된 동화상 복호 장치.
[항목24]
상기 복호 종료 화상에 있는 블록의 움직임 벡터는, 소정 영역마다 소정 영역 내 중 어느 하나의 블록의 움직임 벡터로 설정되는 것을 특징으로 하는 항목20 내지 항목23 중 어느 하나에 기재된 동화상 복호 장치.
[항목25]
상기 소정의 문턱 사이즈는 상기 소정 영역보다도 작아지도록 설정되는 것을 특징으로 하는 항목24에 기재된 동화상 복호 장치.
[항목26]
상기 복호 대상 블록을 포함하는 화상과 상기 복호 종료 화상과의 시간 차가 길어지면, 상기 소정의 문턱 사이즈가 커지도록 제어하는 것을 특징으로 하는 항목20 내지 항목25 중 어느 하나에 기재된 동화상 복호 장치.
[항목27]
블록 단위로 움직임 보상 예측을 실행하는 동화상 복호 장치로,
예측 움직임 벡터 후보 리스트에서 참조해야 하는 예측 움직임 벡터의 위치를 나타내는 정보를 복호하는 복호부와,
복호 대상 블록에 인접하는 블록에서 공간 예측 움직임 벡터 후보를 도출하는 공간 예측 움직임 벡터 후보 생성부와,
복호 종료 화상에 있는 블록에서 시간 예측 움직임 벡터 후보를 도출하는 시간 예측 움직임 벡터 후보 생성부와,
시간 예측 움직임 벡터의 이용을 허가하는지 아닌지를 나타내는 이용 허가 정보가 허가함을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보와 상기 시간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하고, 상기 이용 허가 정보가 허가하지 않음을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하는 예측 움직임 벡터 후보 리스트 생성부와,
상기 예측 움직임 벡터의 위치를 나타내는 정보에 기초하여 상기 예측 움직임 벡터 후보 리스트에서 상기 후보 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택부를 구비하는 것을 특징으로 하는 동화상 복호 장치.
[항목28]
상기 복호 종료 화상에 있는 블록은, 상기 복호 대상 블록과 동일 위치의 블록 또는 상기 동일 위치 블록의 주변에 있는 블록인 것을 특징으로 하는 항목27에 기재된 동화상 복호 장치.
[항목29]
상기 복호부는 상기 이용 허가 정보를 복호하는 것을 특징으로 하는 항목27 또는 항목28에 기재된 동화상 복호 장치.
[항목30]
상기 복호 종료 화상에 있는 블록의 움직임 벡터는, 소정 영역마다 소정 영역 내 중 어느 하나의 블록의 움직임 벡터로 설정되는 것을 특징으로 하는 항목27 내지 항목29 중 어느 하나에 기재된 동화상 복호 장치.
[항목31]
복수의 블록 사이즈로 움직임 보상 예측을 실행하는 동화상 복호 장치로,
예측 벡터 후보 리스트에서 참조해야 하는 예측 움직임 벡터의 위치를 나타내는 정보를 복호하는 복호부와,
복호 대상 블록에 인접하는 복호 종료의 1개 이상의 블록의 움직임 벡터에서 제1 예측 움직임 벡터의 후보를 포함하는 제1 예측 벡터 후보 리스트를 생성하는 제1 예측 벡터 후보 리스트 생성부와,
복호 종료 화상에서 상기 복호 대상 블록과 동일 위치의 블록 및 상기 동일 위치의 블록에 인접하는 1개 이상의 블록의 움직임 벡터에서 제2 예측 움직임 벡터의 후보를 포함하는 제2 예측 벡터 후보 리스트를 생성하는 제2 예측 벡터 후보 리스트 생성부와,
상기 복호 대상 블록의 블록 사이즈와 소정의 문턱 사이즈와의 비교 결과에 의해, 상기 제1 예측 벡터 후보 리스트와 상기 제2 예측 벡터 후보 리스트를 결합한 제3 예측 벡터 후보 리스트를 생성하는지 아닌지를 판정하는 결합 판정부와,
상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈보다도 작은 경우, 상기 제2 예측 벡터 후보 리스트를 결합하지 않고, 상기 제1 예측 벡터 후보 리스트에서 상기 제3 예측 벡터 후보 리스트를 생성하는 제3 예측 벡터 후보 리스트 생성부와,
상기 참조해야 하는 예측 움직임 벡터의 위치를 나타내는 정보에 기초하여 상기 제3 예측 벡터 후보 리스트에서 상기 복호 대상 블록의 예측 움직임 벡터를 선택하는 예측 벡터 선택부를 구비하는 것을 특징으로 하는 동화상 복호 장치.
[항목32]
복수의 블록 사이즈로 움직임 보상 예측을 실행하는 동화상 복호 장치로,
예측 벡터 후보 리스트에서 참조해야하는 예측 움직임 벡터의 위치를 나타내는 정보를 복호하는 복호부와,
복호 종료의 블록의 움직임 벡터를 최소 블록 사이즈 단위로 할당된 메모리 영역에 격납하여 관리하는 제1 움직임 벡터 기억부와,
상기 제1 움직임 벡터 기억부를 참조하여, 복호 대상 블록에 인접하는 복호 종료의 1개 이상의 블록의 움직임 벡터에서 제1 예측 움직임 벡터의 후보를 포함하는 제1 예측 벡터 후보 리스트를 생성하는 제1 예측 벡터 후보 리스트 생성부와,
복호 종료 화상의 최소 블록 사이즈 단위의 움직임 벡터를 소정의 압축 사이즈로 정리하여 1개의 대표 움직임 벡터로 치환하고, 압축 사이즈 단위로 할당된 메모리 영역에 격납하여 관리하는 제2 움직임 벡터 기억부와,
상기 제2 움직임 벡터 기억부를 참조하여 복호 종료 화상에서 상기 복호 대상 블록과 동일 위치의 블록 및 상기 동일 위치의 블록에 인접하는 1개 이상의 블록의 움직임 벡터에서 제2 예측 움직임 벡터의 후보를 포함하는 제2 예측 벡터 후보 리스트를 생성하는 제2 예측 벡터 후보 리스트 생성부와,
상기 복호 대상 블록의 블록 사이즈와 소정의 문턱 사이즈와의 비교 결과에 의해, 상기 제1 예측 벡터 후보 리스트와 상기 제2 예측 벡터 후보 리스트를 결합한 제3 예측 벡터 후보 리스트를 생성하는지 아닌지를 판정하는 결합 판정부와,
상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈보다도 작은 경우, 상기 제2 예측 벡터 후보 리스트를 결합하지 않고, 상기 제1 예측 벡터 후보 리스트에서 상기 제3 예측 벡터 후보 리스트를 생성하는 제3 예측 벡터 후보 리스트 생성부와,
상기 참조해야하는 예측 움직임 벡터의 위치를 나타내는 정보에 기초하여 상기 제3 예측 벡터 후보 리스트에서 상기 후보 대상 블록의 예측 움직임 벡터를 선택하는 예측 벡터 선택부를 구비하는 것을 특징으로 하는 동화상 복호 장치.
[항목33]
블록 단위로 움직임 보상 예측을 실행하는 동화상 복호 방법으로,
복호 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록에서 예측 움직임 벡터 후보를 도출하고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 도출하지 않는 예측 움직임 벡터 후보 생성 단계를 구비하는 것을 특징으로 하는 동화상 복호 방법.
[항목34]
블록 단위로 움직임 보상 예측을 실행하는 동화상 복호 방법으로,
복호 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록에서 얻어지는 예측 움직임 벡터 후보를 예측 움직임 벡터 후보 리스트에 포함하고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 상기 예측 움직임 벡터 후보 리스트에 포함하지 않는 예측 움직임 벡터 후보 리스트 생성 단계와,
상기 예측 움직임 벡터 후보 리스트에서 참조해야 하는 예측 움직임 벡터의 위치를 나타내는 정보를 복호하는 복호 단계와,
상기 예측 움직임 벡터 후보 리스트에서 참조해야하는 예측 움직임 벡터의 위치를 나타내는 정보에 기초하여 상기 예측 움직임 벡터 후보 리스트에서 상기 복호 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택 단계를 구비하는 것을 특징으로 하는 동화상 복호 방법.
[항목35]
블록 단위로 움직임 보상 예측을 실행하는 동화상 복호 방법으로,
예측 움직임 벡터 후보 리스트에서 참조해야 하는 예측 움직임 벡터의 위치를 나타내는 정보를 복호하는 복호 단계와,
복호 대상 블록에 인접하는 블록에서 공간 예측 움직임 벡터 후보를 도출하는 공간 예측 움직임 벡터 후보 생성 단계와,
복호 종료 화상에 있는 블록에서 시간 예측 움직임 벡터 후보를 도출하는 시간 예측 움직임 벡터 후보 생성 단계와,
시간 예측 움직임 벡터의 이용을 허가하는지 아닌지를 나타내는 이용 허가 정보가 허가함을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보와 상기 시간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하고, 상기 이용 허가 정보가 허가하지 않음을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하는 예측 움직임 벡터 후보 리스트 생성 단계와,
상기 예측 움직임 벡터의 위치를 나타내는 정보에 기초하여 상기 예측 움직임 벡터 후보 리스트에서 상기 복호 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택 단계를 구비하는 것을 특징으로 하는 동화상 복호 방법.
[항목36]
블록 단위로 움직임 보상 예측을 실행하는 동화상 복호 프로그램으로,
복호 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록에서 예측 움직임 벡터 후보를 도출하고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 도출하지 않는 예측 움직임 벡터 후보 생성 단계를 컴퓨터에 실행시키는 것을 특징으로 하는 동화상 복호 프로그램.
[항목37]
블록 단위로 움직임 보상 예측을 실행하는 동화상 복호 프로그램으로,
복호 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록에서 얻어지는 예측 움직임 벡터 후보를 예측 움직임 벡터 후보 리스트에 포함하고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하의 경우, 상기 예측 움직임 벡터 후보를 상기 예측 움직임 벡터 후보 리스트에 포함하지 않는 예측 움직임 벡터 후보 리스트 생성 단계와,
상기 예측 움직임 벡터 후보 리스트에서 참조해야 하는 예측 움직임 벡터의 위치를 나타내는 정보를 복호하는 복호 단계와,
상기 예측 움직임 벡터 후보 리스트에서 참조해야 하는 예측 움직임 벡터의 위치를 나타내는 정보에 기초하여 상기 예측 움직임 벡터 후보 리스트에서 상기 복호 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택 단계를 컴퓨터로 실행시키는 것을 특징으로 하는 동화상 복호 프로그램.
[항목38]
블록 단위로 움직임 보상 예측을 실행하는 동화상 복호 프로그램으로,
예측 움직임 벡터 후보 리스트에서 참조해야 하는 예측 움직임 벡터의 위치를 나타내는 정보를 복호하는 복호 단계와,
복호 대상 블록에 인접하는 블록에서 공간 예측 움직임 벡터 후보를 도출하는 공간 예측 움직임 벡터 후보 생성 단계와,
복호 종료 화상에 있는 블록에서 시간 예측 움직임 벡터 후보를 도출하는 시간 예측 움직임 벡터 후보 생성 단계와,
시간 예측 움직임 벡터의 이용을 허가하는지 아닌지를 나타내는 이용 허가 정보가 허가함을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보와 상기 시간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하고, 상기 이용 허가 정보가 허가하지 않음을 나타내는 경우, 상기 공간 예측 움직임 벡터 후보에서 예측 움직임 벡터 후보 리스트를 생성하는 예측 움직임 벡터 후보 리스트 생성 단계와,
상기 예측 움직임 벡터의 위치를 나타내는 정보에 기초하여 상기 예측 움직임 벡터 후보 리스트에서 상기 복호 대상 블록의 예측 움직임 벡터를 선택하는 예측 움직임 벡터 선택 단계를 컴퓨터로 실행시키는 것을 특징으로 하는 동화상 복호 프로그램.
본 발명은 움직임 보상 예측을 이용한 동화상 부호화 기술로 이용할 수 있다.
100: 동화상 부호화 장치
101: 예측 블록 화상 취득부
102: 감산부
103: 예측 오차 부호화부
104: 부호열 생성부
105: 예측 오차 복호부
106: 움직임 보상부
107: 가산부
108: 움직임 벡터 검출부
109: 움직임 정보 생성부
110: 프레임 메모리
111: 제1 움직임 정보 메모리
112: 제2 움직임 정보 메모리
120: 예측 벡터 후보 리스트 생성부
121: 예측 벡터 선택부
122: 감산부
130: 제1 예측 벡터 후보 리스트 생성부
131: 결합 판정부
132: 제2 예측 벡터 후보 리스트 생성부
133: 예측 벡터 후보 리스트 결정부
200: 동화상 복호 장치
201: 부호열 해석부
202: 예측 오차 복호부
203: 가산부
204: 움직임 정보 재생부
205: 움직임 보상부
206: 프레임 메모리
207: 제1 움직임 정보 메모리
208: 제2 움직임 정보 메모리
220: 예측 벡터 후보 리스트 생성부
221: 예측 벡터 결정부
222: 가산부
300: 동화상 부호화 장치
301: 움직임 정보 압축부
302: 제2 움직임 정보 메모리
303: 움직임 정보 신장부
400: 동화상 복호 장치
401: 움직임 정보 압축부
402: 제2 움직임 정보 메모리
403: 움직임 정보 신장부

Claims (3)

  1. 블록 단위로 움직임 보상 예측을 하는 동화상 복호 장치에 있어서,
    복호 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록으로부터 도출한 예측 움직임 벡터 후보를 예측 움직임 벡터 후보 리스트에 포함시키고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하인 경우, 상기 예측 움직임 벡터 후보 리스트를 변경하지 않는 예측 움직임 벡터 후보 생성부;
    상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록으로부터 도출한 움직임 정보 후보를 움직임 정보 후보 리스트에 포함시키고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하인 경우, 상기 움직임 정보 후보 리스트를 변경하지 않는 움직임 정보 후보 생성부;
    머지 인덱스(Merge Index) 또는 예측 움직임 벡터 인덱스 중의 어느 것을 복호하는지를 나타내는 머지 플래그를 복호하고, 상기 머지 플래그가 상기 머지 인덱스를 복호하는 경우, 상기 움직임 정보 후보 리스트에 있어서의 위치를 나타내는 상기 머지 인덱스를 복호하고, 상기 머지 플래그가 상기 예측 움직임 벡터 인덱스를 복호하는 경우, 상기 예측 움직임 벡터 후보 리스트에 있어서의 위치를 나타내는 상기 예측 움직임 벡터 인덱스를 복호하는 복호부;
    상기 머지 플래그가 상기 머지 인덱스를 복호하는 경우, 상기 복호 대상 블록의 움직임 정보를 상기 움직임 정보 후보 리스트에서 상기 머지 인덱스로 표시되는 위치에 기초하여 선택하는 움직임 정보 선택부; 및
    상기 머지 플래그가 상기 예측 움직임 벡터 인덱스를 복호하는 경우, 상기 복호 대상 블록의 예측 움직임 벡터를 상기 예측 움직임 벡터 후보 리스트에서 상기 예측 움직임 벡터 인덱스로 표시되는 위치에 기초하여 선택하는 예측 움직임 벡터 선택부를 구비하고,
    상기 복호 종료 화상에 있는 블록의 움직임 벡터는, 소정 영역마다, 소정 영역 내의 어느 1개의 블록의 움직임 벡터로 설정되고,
    상기 소정 영역은 수평 및 수직 방향이 2의 승수(乘數)인 것을 특징으로 하는 동화상 복호 장치.
  2. 블록 단위로 움직임 보상 예측을 하는 동화상 복호 방법에 있어서,
    복호 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록으로부터 도출한 예측 움직임 벡터 후보를 예측 움직임 벡터 후보 리스트에 포함시키고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하인 경우, 상기 예측 움직임 벡터 후보 리스트를 변경하지 않는 예측 움직임 벡터 후보 생성 스텝;
    상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록으로부터 도출한 움직임 정보 후보를 움직임 정보 후보 리스트에 포함시키고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하인 경우, 상기 움직임 정보 후보 리스트를 변경하지 않는 움직임 정보 후보 생성 스텝;
    머지 인덱스 또는 예측 움직임 벡터 인덱스 중의 어느 것을 복호하는지를 나타내는 머지 플래그를 복호하고, 상기 머지 플래그가 상기 머지 인덱스를 복호하는 경우, 상기 움직임 정보 후보 리스트에 있어서의 위치를 나타내는 상기 머지 인덱스를 복호하고, 상기 머지 플래그가 상기 예측 움직임 벡터 인덱스를 복호하는 경우, 상기 예측 움직임 벡터 후보 리스트에 있어서의 위치를 나타내는 상기 예측 움직임 벡터 인덱스를 복호하는 복호 스텝;
    상기 머지 플래그가 상기 머지 인덱스를 복호하는 경우, 상기 복호 대상 블록의 움직임 정보를 상기 움직임 정보 후보 리스트에서 상기 머지 인덱스로 표시되는 위치에 기초하여 선택하는 움직임 정보 선택 스텝; 및
    상기 머지 플래그가 상기 예측 움직임 벡터 인덱스를 복호하는 경우, 상기 복호 대상 블록의 예측 움직임 벡터를 상기 예측 움직임 벡터 후보 리스트에서 상기 예측 움직임 벡터 인덱스로 표시되는 위치에 기초하여 선택하는 예측 움직임 벡터 선택 스텝을 포함하고,
    상기 복호 종료 화상에 있는 블록의 움직임 벡터는, 소정 영역마다, 소정 영역 내의 어느 1개의 블록의 움직임 벡터로 설정되고,
    상기 소정 영역은 수평 및 수직 방향이 2의 승수인 것을 특징으로 하는 동화상 복호 방법.
  3. 블록 단위로 움직임 보상 예측을 하는 동화상 복호 프로그램을 기록한 기록 매체에 있어서,
    상기 동화상 복호 프로그램은,
    복호 대상 블록의 블록 사이즈가 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록으로부터 도출한 예측 움직임 벡터 후보를 예측 움직임 벡터 후보 리스트에 포함시키고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하인 경우, 상기 예측 움직임 벡터 후보 리스트를 변경하지 않는 예측 움직임 벡터 후보 생성 스텝;
    상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈보다 큰 경우, 복호 종료 화상에 있는 블록으로부터 도출한 움직임 정보 후보를 움직임 정보 후보 리스트에 포함시키고, 상기 복호 대상 블록의 블록 사이즈가 상기 소정의 문턱 사이즈 이하인 경우, 상기 움직임 정보 후보 리스트를 변경하지 않는 움직임 정보 후보 생성 스텝;
    머지 인덱스 또는 예측 움직임 벡터 인덱스 중의 어느 것을 복호하는지를 나타내는 머지 플래그를 복호하고, 상기 머지 플래그가 상기 머지 인덱스를 복호하는 경우, 상기 움직임 정보 후보 리스트에 있어서의 위치를 나타내는 상기 머지 인덱스를 복호하고, 상기 머지 플래그가 상기 예측 움직임 벡터 인덱스를 복호하는 경우, 상기 예측 움직임 벡터 후보 리스트에 있어서의 위치를 나타내는 상기 예측 움직임 벡터 인덱스를 복호하는 복호 스텝;
    상기 머지 플래그가 상기 머지 인덱스를 복호하는 경우, 상기 복호 대상 블록의 움직임 정보를 상기 움직임 정보 후보 리스트에서 상기 머지 인덱스로 표시되는 위치에 기초하여 선택하는 움직임 정보 선택 스텝; 및
    상기 머지 플래그가 상기 예측 움직임 벡터 인덱스를 복호하는 경우, 상기 복호 대상 블록의 예측 움직임 벡터를 상기 예측 움직임 벡터 후보 리스트에서 상기 예측 움직임 벡터 인덱스로 표시되는 위치에 기초하여 선택하는 예측 움직임 벡터 선택 스텝을 컴퓨터에 실행시키고,
    상기 복호 종료 화상에 있는 블록의 움직임 벡터는, 소정 영역마다, 소정 영역 내의 어느 1개의 블록의 움직임 벡터로 설정되고,
    상기 소정 영역은 수평 및 수직 방향이 2의 승수인 것을 특징으로 하는 기록 매체.
KR1020167018431A 2011-03-08 2012-03-05 동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램 KR101742449B1 (ko)

Applications Claiming Priority (13)

Application Number Priority Date Filing Date Title
JP2011050118 2011-03-08
JPJP-P-2011-050118 2011-03-08
JPJP-P-2011-050119 2011-03-08
JP2011050119 2011-03-08
JP2011118340 2011-05-26
JPJP-P-2011-118339 2011-05-26
JPJP-P-2011-118340 2011-05-26
JP2011118339 2011-05-26
JP2012043272A JP5807588B2 (ja) 2011-03-08 2012-02-29 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、並びに、送信装置、送信方法及び送信プログラム
JPJP-P-2012-043272 2012-02-29
JP2012043273A JP5682582B2 (ja) 2011-03-08 2012-02-29 動画像復号装置、動画像復号方法及び動画像復号プログラム、並びに、受信装置、受信方法及び受信プログラム
JPJP-P-2012-043273 2012-02-29
PCT/JP2012/001503 WO2012120870A1 (ja) 2011-03-08 2012-03-05 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、並びに動画像復号装置、動画像復号方法及び動画像復号プログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020157012956A Division KR101640357B1 (ko) 2011-03-08 2012-03-05 동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020177014024A Division KR101832682B1 (ko) 2011-03-08 2012-03-05 동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램

Publications (2)

Publication Number Publication Date
KR20160084864A true KR20160084864A (ko) 2016-07-14
KR101742449B1 KR101742449B1 (ko) 2017-05-31

Family

ID=49653005

Family Applications (5)

Application Number Title Priority Date Filing Date
KR1020167018431A KR101742449B1 (ko) 2011-03-08 2012-03-05 동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램
KR1020157012956A KR101640357B1 (ko) 2011-03-08 2012-03-05 동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램
KR1020177014024A KR101832682B1 (ko) 2011-03-08 2012-03-05 동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램
KR1020157032881A KR101637142B1 (ko) 2011-03-08 2012-03-05 동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램
KR1020137026250A KR101571947B1 (ko) 2011-03-08 2012-03-05 동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램

Family Applications After (4)

Application Number Title Priority Date Filing Date
KR1020157012956A KR101640357B1 (ko) 2011-03-08 2012-03-05 동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램
KR1020177014024A KR101832682B1 (ko) 2011-03-08 2012-03-05 동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램
KR1020157032881A KR101637142B1 (ko) 2011-03-08 2012-03-05 동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램
KR1020137026250A KR101571947B1 (ko) 2011-03-08 2012-03-05 동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램

Country Status (3)

Country Link
US (5) US9204147B2 (ko)
KR (5) KR101742449B1 (ko)
CN (6) CN105915902B (ko)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6398257B2 (ja) * 2013-06-27 2018-10-03 株式会社リコー 通信管理システム、通信端末、通信システム、およびプログラム
US10009629B2 (en) 2013-10-11 2018-06-26 Sony Corporation Video coding system with search range and method of operation thereof
US10003818B2 (en) 2013-10-11 2018-06-19 Sony Corporation Video coding system with intra prediction mechanism and method of operation thereof
CN106464905B (zh) 2014-05-06 2019-06-07 寰发股份有限公司 用于块内复制模式编码的块向量预测方法
US10283091B2 (en) * 2014-10-13 2019-05-07 Microsoft Technology Licensing, Llc Buffer optimization
US10560718B2 (en) 2016-05-13 2020-02-11 Qualcomm Incorporated Merge candidates for motion vector prediction for video coding
US10602180B2 (en) 2017-06-13 2020-03-24 Qualcomm Incorporated Motion vector prediction
KR20200095463A (ko) * 2017-11-01 2020-08-10 브이아이디 스케일, 인크. 병합 모드를 위한 서브-블록 모션 도출 및 디코더측 모션 벡터 정교화
KR102391834B1 (ko) * 2017-11-17 2022-04-27 에프쥐 이노베이션 컴퍼니 리미티드 조정된 인트라 모드 목록에 기초한 비디오 데이터를 코딩하기 위한 디바이스 및 방법
US10735758B2 (en) * 2017-12-07 2020-08-04 Tencent America LLC Method and apparatus for video coding
CN111919447A (zh) * 2018-03-14 2020-11-10 韩国电子通信研究院 用于对图像进行编码/解码的方法和装置以及存储有比特流的记录介质
WO2019192491A1 (en) * 2018-04-02 2019-10-10 Mediatek Inc. Video processing methods and apparatuses for sub-block motion compensation in video coding systems
CN112119637B (zh) * 2018-05-17 2024-03-22 松下电器(美国)知识产权公司 编码装置、解码装置
TWI750486B (zh) 2018-06-29 2021-12-21 大陸商北京字節跳動網絡技術有限公司 運動資訊共用的限制
CA3106440A1 (en) * 2018-07-16 2020-01-23 Electronics And Telecommunications Research Institute Image encoding/decoding method and apparatus, and recording medium in which bitstream is stored
EP3833020A4 (en) * 2018-07-27 2022-04-27 Samsung Electronics Co., Ltd. METHOD AND DEVICE FOR ENCODING THE IMAGE, AND METHOD AND DEVICE FOR DECODING THE IMAGE BASED ON SUB-BLOCKS
US11245922B2 (en) 2018-08-17 2022-02-08 Mediatek Inc. Shared candidate list
CN112567750A (zh) * 2018-08-17 2021-03-26 联发科技股份有限公司 用于视频编解码的简化合并候选列表的方法和装置
WO2020035029A1 (en) * 2018-08-17 2020-02-20 Mediatek Inc. Method and apparatus of simplified sub-mode for video coding
CN110876058B (zh) * 2018-08-30 2021-09-21 华为技术有限公司 一种历史候选列表更新方法与装置
CN110933439B (zh) * 2018-09-20 2022-05-31 杭州海康威视数字技术股份有限公司 运动信息候选者列表构建方法、装置及可读存储介质
US11317099B2 (en) 2018-10-05 2022-04-26 Tencent America LLC Method and apparatus for signaling an offset in video coding for intra block copy and/or inter prediction
WO2020085235A1 (ja) * 2018-10-22 2020-04-30 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
US11470340B2 (en) * 2018-12-10 2022-10-11 Tencent America LLC Simplified merge list construction for small coding blocks
CN113615176A (zh) * 2018-12-31 2021-11-05 北京达佳互联信息技术有限公司 用于在视频编解码中信令发送运动合并模式的系统和方法
US11122260B2 (en) * 2019-02-22 2021-09-14 Mediatek Inc. Method and apparatus of Merge list generation for Intra Block Copy mode
CA3132582A1 (en) * 2019-03-07 2020-09-10 Digitalinsights Inc. Image encoding/decoding method and apparatus
CA3119653A1 (en) 2019-03-08 2020-09-17 Jvckenwood Corporation Video encoding device, video encoding method, video encoding program, video decoding device, video decoding method, and video decoding program
CN111698506B (zh) * 2019-03-11 2022-04-26 杭州海康威视数字技术股份有限公司 运动信息候选者列表构建方法、三角预测解码方法及装置
CN111726632B (zh) * 2019-03-18 2022-08-26 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及其设备

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5608458A (en) * 1994-10-13 1997-03-04 Lucent Technologies Inc. Method and apparatus for a region-based approach to coding a sequence of video images
KR0180171B1 (ko) * 1995-06-28 1999-05-01 배순훈 블록 움직임 추정 방법
JP3363039B2 (ja) * 1996-08-29 2003-01-07 ケイディーディーアイ株式会社 動画像内の移動物体検出装置
KR100499144B1 (ko) * 2003-03-06 2005-07-04 삼성전자주식회사 적응적 양방향 움직임 추정 방법을 이용한 내삽 영상의움직임 벡터 생성 방법 및 장치
US20070009050A1 (en) * 2005-04-11 2007-01-11 Nokia Corporation Method and apparatus for update step in video coding based on motion compensated temporal filtering
JP4542107B2 (ja) * 2005-07-22 2010-09-08 三菱電機株式会社 画像復号装置及び画像復号方法
US20080092005A1 (en) * 2006-09-26 2008-04-17 Huott William V Scan Testing Interface
JP2008154015A (ja) * 2006-12-19 2008-07-03 Hitachi Ltd 復号化方法および符号化方法
CN100568977C (zh) * 2007-02-15 2009-12-09 孟智平 视频编码中运动矢量预测方法
KR101712915B1 (ko) * 2007-10-16 2017-03-07 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
PT104083A (pt) * 2008-06-02 2009-12-02 Inst Politecnico De Leiria Método para transcodificar imagens de vídeo h.264/avc em mpeg-2
TWI491258B (zh) * 2008-06-20 2015-07-01 Mstar Semiconductor Inc 決定移動向量的方法及其相關裝置
JP2011259204A (ja) 2010-06-09 2011-12-22 Sony Corp 画像復号化装置と画像符号装置およびその方法とプログラム
US9300970B2 (en) * 2010-07-09 2016-03-29 Samsung Electronics Co., Ltd. Methods and apparatuses for encoding and decoding motion vector
US9532066B2 (en) * 2011-01-21 2016-12-27 Qualcomm Incorporated Motion vector prediction

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ISO/IEC 13818-2 Information technology-Generic coding of moving pictures and associated audio information:Video
ISO/IEC 14496-10 Information technology-Coding of audio-visual objects-Part 10:Advanced Video Coding

Also Published As

Publication number Publication date
CN106851271B (zh) 2019-10-18
US20170041614A1 (en) 2017-02-09
KR101640357B1 (ko) 2016-07-15
CN105915901B (zh) 2017-09-19
KR20170066664A (ko) 2017-06-14
KR101742449B1 (ko) 2017-05-31
CN103430547B (zh) 2017-03-29
CN105915901A (zh) 2016-08-31
CN105915902B (zh) 2017-09-22
CN105915903B (zh) 2017-09-22
KR20150135545A (ko) 2015-12-02
CN103430547A (zh) 2013-12-04
US9781444B2 (en) 2017-10-03
US9667973B2 (en) 2017-05-30
US20170188044A1 (en) 2017-06-29
CN106851271A (zh) 2017-06-13
US20160050412A1 (en) 2016-02-18
US9204147B2 (en) 2015-12-01
US20140044171A1 (en) 2014-02-13
US9516318B2 (en) 2016-12-06
CN106028030A (zh) 2016-10-12
US20170188043A1 (en) 2017-06-29
KR20130137674A (ko) 2013-12-17
KR101832682B1 (ko) 2018-02-26
US9800890B2 (en) 2017-10-24
KR101571947B1 (ko) 2015-11-25
CN105915903A (zh) 2016-08-31
CN105915902A (zh) 2016-08-31
KR101637142B1 (ko) 2016-07-06
KR20150064218A (ko) 2015-06-10
CN106028030B (zh) 2017-12-19

Similar Documents

Publication Publication Date Title
KR101742449B1 (ko) 동화상 부호화 장치, 동화상 부호화방법 및 동화상 부호화 프로그램, 및 동화상 복호 장치, 동화상 복호 방법 및 동화상 복호 프로그램
JP5862823B2 (ja) 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム
JP6065088B2 (ja) 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム
JP5725006B2 (ja) 動画像復号装置、動画像復号方法、及び動画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム
WO2012120870A1 (ja) 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、並びに動画像復号装置、動画像復号方法及び動画像復号プログラム
JP5880742B2 (ja) 動画像復号装置、動画像復号方法及び動画像復号プログラム、並びに、受信装置、受信方法及び受信プログラム
JP5725009B2 (ja) 動画像復号装置、動画像復号方法、及び動画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム
JP5842803B2 (ja) 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム
JP2013021505A (ja) 動画像復号装置、動画像復号方法及び動画像復号プログラム
JP2013021504A (ja) 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム

Legal Events

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