KR101697456B1 - 동화상 복호 장치 및 동화상 복호 방법 - Google Patents

동화상 복호 장치 및 동화상 복호 방법 Download PDF

Info

Publication number
KR101697456B1
KR101697456B1 KR1020160024336A KR20160024336A KR101697456B1 KR 101697456 B1 KR101697456 B1 KR 101697456B1 KR 1020160024336 A KR1020160024336 A KR 1020160024336A KR 20160024336 A KR20160024336 A KR 20160024336A KR 101697456 B1 KR101697456 B1 KR 101697456B1
Authority
KR
South Korea
Prior art keywords
group
decoding
information
time
block
Prior art date
Application number
KR1020160024336A
Other languages
English (en)
Other versions
KR20160031469A (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 KR20160031469A publication Critical patent/KR20160031469A/ko
Application granted granted Critical
Publication of KR101697456B1 publication Critical patent/KR101697456B1/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/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/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • 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/115Selection of the code volume for a coding unit prior to 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/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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/146Data rate or code amount at the encoder output
    • 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/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • 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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • 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/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/18Methods 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 a set of transform coefficients
    • 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
    • H04N19/37Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability with arrangements for assigning different transmission priorities to video input data or to video coded data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • 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
    • 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

Landscapes

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

Abstract

그룹 단위로 언더플로우가 발생한 경우에 적절하게 처리한다. 동화상 부호화 장치이며, 복수의 블록에 대하여, 각 블록이 속하는 그룹을 결정하는 결정부와, 각 블록이 속하는 그룹 정보를 출력 스트림에 부가하는 부가부와, 그룹마다 표시 시각을 산출하여 출력 스트림에 부가하는 결정부와, 그룹에 포함되는 모든 블록의 복호에 필요한 데이터가, 소정의 전송 레이트로 복호 장치에 전송된 경우에, 표시 시각에 의해 표현되는 시각까지 복호 장치의 수신 버퍼에 도달하도록 부호량을 제어하는 부호량 제어부와, 그룹에 포함되는 모든 블록의 복호에 필요한 데이터가 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않는 경우에는, 다음 픽처의 최초의 데이터가 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않도록 제어하는 정보량 제어부를 구비한다.

Description

동화상 복호 장치 및 동화상 복호 방법{VIDEO IMAGE DECODING DEVICE AND VIDEO IMAGE DECODING METHOD}
본 발명은, 동화상 데이터에 포함되는 픽처를 복수의 블록으로 분할하여 블록마다 부호화하는 동화상 부호화 장치, 동화상 부호화 방법, 동화상 복호 장치 및 동화상 복호 방법에 관한 것이다.
동화상 데이터는, 일반적으로 매우 큰 데이터량을 갖는다. 그로 인해, 동화상 데이터를 취급하는 장치는, 동화상 데이터를 다른 장치로 송신하고자 하는 경우, 혹은 동화상 데이터를 기억 장치에 기억하고자 하는 경우, 동화상 데이터를 부호화함으로써 압축한다.
대표적인 동화상의 부호화 표준 기술로서, ISO/IEC(International Standardization Organization/International Electrotechnical Co㎜ission)에서 책정된 MPEG(Moving Picture Experts Group phase)-2, MPEG-4, 혹은 MPEG-4 AVC/H.264(H.264 MPEG-4 Advanced Video Coding)가 널리 이용되고 있다.
이러한 부호화 표준 기술에서는, 부호화 대상의 픽처와, 그 전후의 픽처의 정보를 사용하여, 부호화 대상의 픽처를 부호화하는 인터 부호화 방법 및 부호화 대상 픽처가 갖는 정보만을 사용하여 부호화하는 인트라 부호화 방법이 채용되어 있다.
일반적으로, 인터 부호화 방법으로 부호화된 픽처 또는 블록의 부호량은, 인트라 부호화 방법으로 부호화된 픽처 또는 블록의 부호량에 비하여 작다. 이와 같이, 선택된 부호화 모드에 의해, 시퀀스 내에서 픽처의 부호량의 치우침이 발생한다. 마찬가지로, 선택된 부호화 모드에 의해, 픽처 내에서 블록의 부호량의 치우침이 발생한다.
따라서, 부호량이 시간적으로 변동되어도, 일정한 전송 레이트로 부호화된 동화상을 포함하는 데이터 스트림을 전송할 수 있도록, 전송원의 장치에 데이터 스트림용 송신 버퍼가 준비되고, 또한 전송처의 장치에 데이터 스트림용 수신 버퍼가 준비된다.
이들 버퍼에 의한 지연(이후, 버퍼 지연이라고 칭함)이, 부호화 장치에 있어서의 각 픽처의 입력부터, 복호 장치에 있어서의 복호한 각 픽처의 표시까지의 지연(이후, 코덱 지연이라고 칭함)의 주요인으로 된다. 코덱 지연에는, 복호에 관한 지연인 복호 지연과, 표시(출력)에 관한 지연인 표시 지연을 포함한다.
버퍼의 크기를 작게 함으로써 버퍼 지연 및 코덱 지연은 감소한다. 그러나, 버퍼의 크기가 작아질수록, 픽처마다의 부호량 배분의 자유도도 감소하여, 그 결과 재생되는 동화상의 화질이 열화된다. 부호량 배분의 자유도는, 부호량의 변동 정도를 의미한다.
MPEG-2 및 MPEG-4 AVC/H.264에서는, 각각 VBV(Video Buffering Verifier)와 CPB(Coded Picture Buffer)라고 불리는, 이상적인 복호 장치에 있어서의 수신 버퍼의 동작을 규정하고 있다. 이후, 이상적인 복호 장치를 이상 복호 장치라고 칭한다.
동화상 부호화 장치는, 이상 복호 장치의 수신 버퍼를 오버플로우 및 언더플로우시키지 않도록 부호량을 제어한다. 이상 복호 장치는, 복호 처리에 필요로 하는 시간이 0인 순간 복호를 행한다고 규정되어 있다. 예를 들어, VBV에 관한 동화상 부호화 장치의 제어를 행하는 기술이 있다(예를 들어, 특허문헌 1 참조).
동화상 부호화 장치는, 이상 복호 장치의 수신 버퍼가 오버플로우 및 언더플로우하지 않도록, 이상 복호 장치가 있는 픽처를 복호하는 시각에 그 픽처의 데이터가 수신 버퍼에 저장되어 있는 것을 보증하도록 부호량을 제어한다.
수신 버퍼의 언더플로우는, 동화상 부호화 장치가 일정한 전송 레이트로 스트림을 송신한 경우에, 각 픽처의 부호량이 많아, 동화상 복호 장치가 복호, 표시해야 할 시각까지, 픽처의 복호에 필요한 데이터의 전송이 완료되지 못하는 경우에 발생한다. 즉, 수신 버퍼의 언더플로우는, 복호 장치의 수신 버퍼 내에 픽처를 복호하기 위하여 필요 데이터가 존재하지 않는 것이다. 이 경우, 동화상 복호 장치는 복호 처리를 행할 수 없기 때문에, 프레임 스킵이 발생하게 된다.
동화상 복호 장치는, 수신 버퍼의 언더플로우를 일으키지 않고 복호 처리하기 위해, 수신 시각으로부터 소정의 시간만큼 스트림을 지연시키고 나서 픽처를 표시한다.
상술한 바와 같이, 이상 복호 장치에서는, 처리 시간 0에서, 순간적으로 복호 처리가 완료된다고 규정된다. 그로 인해, 동화상 부호화 장치에의 i번째 픽처(이후, P(i)로도 표기한다)의 입력 시각을 t(i), 이상 복호 장치에 있어서의, P(i)의 복호 시각을 dt(i)로 하면, 그 픽처가 표시 가능하게 되는 시각은, 복호 시각과 마찬가지이므로 dt(i)로 된다.
모든 픽처에 있어서 픽처의 표시 기간 {t(i+1)-t(i)}와 {dt(i+1)-dt(i)}가 동등해지므로, 복호 시각 dt(i)는, 입력 시각 t(i)로부터 고정 시간 dly만큼 지연시킨 시각 {dt(i)=t(i)+dly}로 된다. 따라서, 동화상 부호화 장치는, 시각 dt(i)까지 복호에 필요한 데이터를 동화상 복호 장치의 수신 버퍼에 전송 완료시켜야 한다.
도 1은, 종래 기술에 의한 수신 버퍼의 버퍼 점유량의 천이예를 도시하는 도면이다. 도 1에 도시된 예에서는, 횡축은 시각을 나타내고, 종축은 수신 버퍼의 버퍼 점유량을 나타낸다. 실선의 그래프(10)는, 각 시각에 있어서의 버퍼 점유량을 나타낸다.
수신 버퍼에서는, 소정의 전송 레이트로 버퍼 점유량이 회복되어, 각 픽처의 복호 시각에 그 픽처를 복호하기 위하여 사용되는 만큼의 데이터가 버퍼로부터 인발된다. 도 1에 도시된 예에서는 P(i)의 데이터가, 시각 at(i)부터 수신 버퍼에 입력 개시되고, P(i)의 마지막 데이터가 시각 ft(i)에 입력된다. 이상 복호 장치는 시각 dt(i)에서 P(i)의 복호를 완료하여, 그 시각 dt(i)에 있어서 P(i)가 표시 가능하게 된다.
이상 복호 장치가 순간 복호를 행하는 한편, 실제의 동화상 복호 장치는 소정의 복호 처리 시간을 필요로 한다. 일반적으로는 1 픽처의 복호 처리 시간은, 픽처의 표시 기간보다도 짧지만, 픽처의 표시 기간에 가까운 시간으로 된다.
시각 at(i)부터 ft(i)까지 P(i)의 데이터가 수신 버퍼에 입력되지만, 각 블록의 복호에 필요한 데이터가 at(i)부터 ft(i) 중 어느 시각에 도착하는지 보증되지 않는다. 그로 인해, 실제의 동화상 복호 장치는, 시각 ft(i)부터 P(i)의 복호 처리를 개시하게 된다. 따라서, 1 픽처의 복호 처리에 필요한 최악의 처리 시간을 ct로 하면, 실제의 동화상 복호 장치는, 시각 ft(i)+ct에만 복호 처리를 완료하는 것을 보증할 수 있다.
동화상 부호화 장치가 보증하고 있는 것은, 시각 dt(i)까지, P(i)의 복호에 필요한 데이터가 수신 버퍼에 도착하고 있는 것, 즉, ft(i)≤dt(i)로 되는 것이다. 그로 인해, ft(i)가 가장 느려지는 경우, ft(i)는 dt(i)와 동등해진다.
이때, P(i) 전체의 복호 처리가 완료되는 것이 보증되는 시각은, dt(i)+ct로 된다. 표시하는 픽처의 간격이 일정해지도록, 모든 픽처를 표시하기 위해서는, 동화상 복호 장치는, 각 픽처의 표시 시각을 이상 복호 장치보다도 적어도 시간 ct만큼 지연시켜야 한다.
MPEG-2의 VBV 및 MPEG-4 AVC/H.264의 CPB에서는, 동화상 복호 장치에 있어서의 각 부호화 픽처의 도착 시각과, 복호한 각 부호화 픽처의 표시 시각의 차는, (ft(i)-at(i)+ct)로 된다. 즉, 부호화 장치에의 각 픽처 입력부터, 복호화 장치에서의 해당 픽처 출력까지의 코덱 지연을 시간 ct 미만으로 하는 것은 곤란하다. 즉, 시간 ct는 통상 1 픽처 처리 시간이므로, 1 픽처 처리 시간 미만의 코덱 지연을 달성하는 것은 곤란하다.
일본 특허 공개 제2003-179938호 공보
JCTVC-H1003, "High-Efficiency Video Coding(HEVC) text specification draft 6", Joint Collaborative Team on Video Coding of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, February 2012. MPEG-2 Test Model 5. April 1993. ISO-IEC/JTC1/SC29/WG11/NO400(http://www.mpeg.org/MPEG/MSSG/tm5/)
종래 기술에서는, 코덱 지연을 1 픽처 처리 시간으로 하는 것은 곤란하지만, 코덱 지연을 1 픽처 처리 시간 미만으로 하기 위해서는, 다음 방법이 있다. 예를 들어, 이 방법은, 픽처 내의 각 블록을, N개의 그룹의 어느 하나에 할당하고, 또한 각 그룹에 복호 개시 시각을 할당한다. 그룹은, 예를 들어 1블록 라인이다. 블록 라인은, 픽처의 수평 방향의 블록열을 나타낸다.
각 그룹의 발생 정보량을 균일하게 할 수 있으면, 연속하는 그룹의 복호 개시 시각의 차는 그룹당 처리 시간과 일치하고, 또한 시간 ct는 그룹당 처리 시간 ct/N으로 된다. 그 때문에, 결과적으로 코덱 지연을 그룹당 처리 시간으로까지 작게 하는 것이 가능하게 된다.
도 2는 그룹 분할에 의해 코덱 지연을 1 픽처 시간 미만으로 한 예를 나타내는 도면이다. 도 2에 도시된 그래프(17)는, 종래 방식의 버퍼 점유량의 시간 천이를 나타낸다. 한편, 도 2에 도시된 그래프(15)는, 그룹 분할에 의한 버퍼 점유량의 시간 천이를 나타낸다.
그룹 분할 방식에 의해, P(i)의 n번째의 그룹(이후 G(i, n)이라고도 표기한다)의 복호 개시 시각 dgt(i, n)가 규정되고, 버퍼 점유량이 작아진다. 각 그룹은, 대응하는 복호 개시 시각부터, 부호 16이 나타내는 그룹 복호 시간 ct/N을 필요로 하여 복호됨으로써, 각 그룹의 표시 가능 시각의 지연이 단축된다.
그룹 분할 방식은, 각 그룹의 발생 정보량을 거의 균일하게 함으로써, 코덱 지연을 그룹당 시간으로까지 작게 한다. 이 코덱 지연은, 그룹 내에서의 각 블록의 발생 정보량이 극단적으로 치우친 경우인 최악값이지만, 실제로는 적절한 레이트 제어에 의해, 그룹 내의 각 블록의 발생 정보량의 치우침을 작게 할 수 있다. 이 경우, 코덱 지연을 더욱 경감시키는 것이 이론상 가능하지만, 블록 분할 방법으로는 실현하는 것은 곤란하다. 이 이유를 도 3 내지 도 6을 사용하여 설명한다.
도 3은 동화상 복호 장치의 수신 버퍼의 모습을 도시하는 도면이다. 도 3에 도시된 예에서는, 수신 버퍼에의 부호화 데이터의 도착량 누적값과, 복호 처리에 의해 소비된 부호화 데이터의 누적값을 사용하여 표현한 것이다.
도 3에 도시된 그래프(20)는, 부호화 데이터의 도착량 누적값을 나타낸다. 부호화 데이터는, 일정한 레이트 R로 동화상 부호화 장치로부터 동화상 복호 장치로 전송된다. 도 3에 도시된 예에서는, 동화상 복호 장치의 수신 버퍼에의 최초의 비트의 도착 시각, 즉 at(0)을 0으로 하고 있다.
도 3에 도시된 그래프(21)는, 픽처 단위의 순간 복호 처리에 의해 소비된 부호화 데이터의 누적값이다. 초기 지연 dly 후에, i번째의 픽처 P(i)(i=0, …)를 순서대로, dt(i)에서 순간 복호한다. 연속하는 2개의 픽처의 순간 복호 시각의 차dt(i+1)-dt(i)는 일정하다. P(i)의 부호화 정보량은, b(i)로 나타낸다.
at(i) 및 ft(i)는 각각 P(i)의 부호화 데이터의 선두 비트 및 최종 비트가 동화상 복호 장치에 도착하는 시각을 나타낸다. 동화상 복호 장치의 수신 버퍼를 언더플로우시키지 않기 위해서는, dt(i)에서 P(i)의 전체 부호화 데이터가 도착해야 한다. 즉, dt(i)≥ft(i) 및 dt(i-1)≥at(i)가 만족되어 있는 것을 필요로 한다.
각 시각에서의 수신 버퍼의 용량은, 각 시각에서의 그래프(20)와 그래프(21)의 차분에 대응한다. 예를 들어 시각 dt(0)에서의 P(0)의 순간 복호 후의 수신 버퍼의 용량은, 부호 25로 나타낸 비트량으로 된다.
도 4는 1개의 P(i)에 주목한 수신 버퍼의 모습을 도시하는 도면이다. 도 4는, 도 3의 일부를 확대하여 설명한다. 특히, 도 4에 도시된 예에서는, 픽처 단위로 순간 복호한 경우에 동화상 복호 장치의 수신 버퍼가 언더플로우하지 않고, 또한 at(i) 및 ft(i)가 가장 느린 시각의 경우, 즉 dt(i)=ft(i) 및 dt(i-1)=at(i)의 경우를 나타내고 있다. 도 4에 도시된 예에서는, 그룹수 N은 4로 하고, 각 그룹에 포함되는 블록수 및 발생 정보량, dgt(i, n+1)-dgt(i, n)은 균일한 것으로 한다.
도 4에 도시된 그래프(30)는, 동화상 복호 장치의 수신 버퍼에의 부호화 데이터의 도착량 누적값을 나타낸다. 그래프(31)는, 픽처 단위로 순간 복호한 경우의, 소비된 부호화 데이터의 누적값이다.
그래프(32)는, dgt(i, n)에서 P(i)의 n번째의 그룹 G(i, n)의 순간 복호를 행한 경우의, 소비된 부호화 데이터의 누적값이다.
그룹 분할 방식은, 각 그룹의 발생 정보량이, 픽처 내에서 평균화되어 있다고 하는 것을 전제로 한다. 즉, P(i)의 각 그룹에 있어서의 각 블록의 발생 정보량의 총합이 b(i)/N으로 된다는 것이다. b(i)는, P(i)의 발생 정보량으로 한다.
P(i)의 그룹 내의 각 블록의 발생 정보량의 최소값은 0이며, 최대값은 b(i)/N으로 된다. P(i) 내의 각 블록을 dt(i-1)부터 dt(i)까지의 사이에서 등간격으로 순간 복호한 경우, 소비된 부호화 데이터의 누적값 그래프 f(t)는, 부호 35 내지 38로 나타내는 사각형 영역의 내부에 존재하게 된다.
각 블록의 발생 정보량이 균일한 경우, f(t)는, 부호 35 내지 38로 나타내는 사각형 영역의 좌측하단 정점과 우측상단 정점을 연결하는 직선(그래프(30)와 일치)으로 된다. 선두 블록에서 그룹 전체의 비트량이 발생하는 경우에는, f(t)는 각 사각형의 좌측 단부선 및 상측 단부선을 연결한 선으로 된다. 후자는 버퍼 지연의 관점에서 최악의 경우가 된다.
도 4에 도시된 예에서는, dt(i-1)부터 dt(i)까지의 시각 사이에, P(i)의 각 블록의 비트가 도착한다. x번째의 비트(x=[1, b(i)])의 도착 시각 g(x)는, 이하의 식으로 나타낸다.
Figure 112016019768035-pat00001
실제의 동화상 복호 장치의 거동을 감안하여, P(i)의 각 블록을 dt(i-1)부터 dt(i)까지 사이에서 등간격으로 순간 복호한 경우를 생각한다. 픽처 내의 블록 총 수를 M으로 한 경우, P(i) 내의 m번째의 블록의 이상 순간 복호 시각 P(i, m)은, 이하의 식으로 나타낸다.
Figure 112016019768035-pat00002
f(t)의 형상에 따라서는, f(t)가 그래프(30)보다도 상측으로 된다. 즉, f(p(i, m))<g(f(p(i, m)))으로 되고, 블록의 복호에 필요해지는 모든 비트가 동화상 복호 장치의 수신 버퍼에 닿지 않아, 언더플로우가 발생한다. 각 블록의 비트량이 균일한 경우에는, f(p(i, m))=g(f(p(i, m)))으로 되어 언더플로우는 발생하지 않으나, 버퍼 지연의 관점에서 최악의 케이스이다.
선두 블록에서 그룹 전체의 비트량이 발생하는 경우에는, 선두 블록의 복호에 필요한 전체 비트의 도착 시각이 dgt(i, n+1)-dtg(i, n)만큼 지연되게 된다.
그룹 분할 방식에서는, 동화상 복호 장치가 f(t)의 형상을 알 수 없다. 따라서, G(i, n)의 선두 블록의 비트 도착 지연이, 최악값인 dgt(i, n)-dgt(i, n-1)의 경우로 된 경우에도 언더플로우의 발생 회피를 보증하도록 한다. 그러면, G(i, n) 내의 전체 블록의 순간 복호 시각을 dgt(i, n)까지 늦추는 것이 요구된다. 즉, P(i)의 선두 블록의 복호 개시 시각은, dgt(i, 1)로 되어, 종래 기술에는, 코덱 지연의 한층 더한 경감을 행할 수 없다는 첫번째 과제가 있었다.
또한, 종래 기술에서는, 복호 시간 ct/N에서 복호한 후, 순간적으로 표시 가능한 것을 가정하고 있다. 그러나, 비특허문헌 1에서는, 픽처를 수평뿐만 아니라, 수직으로 분할하는 것도 허용하는 타일이라고 불리는 부호화 방법이 채용되고 있다. 그로 인해, 복호 시간 ct/N에서 복호한 후에도, 순간적으로 표시 가능하지 않은 경우가 존재한다. 순간적으로 표시 가능하지 않은 경우의 예를, 도 5를 사용하여 설명한다.
도 5는 순간적으로 표시 가능하지 않은 경우의 일례를 나타내는 도면이다. 비특허문헌 1에 있어서, 픽처를 수평뿐만 아니라, 수직으로 분할한 각각의 영역은, 타일이라고 불린다. 도 5에 도시된 예에서는, 픽처를 4개의 타일로 분할하고 있다.
좌측상단, 우측상단, 좌측하단, 우측하단의 순으로, 타일 0(t40), 타일 1(t41), 타일 2(t42), 타일 3(t43)으로 하고, 타일은 이 순서대로 처리된다.
또한, 각각의 타일의 내부에서, 복수 블록을 갖는 몇 개의 그룹을 포함한다. 도 5에 도시된 예에서는, 그룹 0부터 3까지가 s41 내지 s44로 나타나 있다. 이때, 복호는, 그룹의 순서대로 처리되고, sc41부터 sc42로 나타낸 바와 같은 스캔순 또는 복호순으로 된다.
이 복호순에 대하여, 표시순은, 디스플레이에 따라서는 래스터 스캔인 경우가 있고, 그때, 부호 sc43으로 나타낸 바와 같은 순서로 된다. 이때, 그룹은 복호 처리가 끝나도, 순간적으로 표시 가능하지 않게 되는 경우가 존재한다.
예를 들어, 그룹 0(s41)의 복호가 끝난 직후를 생각한다. 이때, 타일 0(t40)에 포함되는 픽처 상단의 좌측 절반의 CTB, 예를 들어 블록 b41, 블록 b42는, 그룹 0(s41)에 속해 있기 때문에 표시 가능하다. 그러나, 타일 1(t41)에 포함되는 픽처 상단의 우측 절반에 포함되어 있는 CTB, 예를 들어 블록 b45, 블록 b46은 그룹 2(s43)에 속해 있기 때문에, 복호되어 있지 않아, 따라서 표시 가능하지 않다.
디스플레이가 래스터 스캔인 경우, 화면 좌측 단부부터 우측 단부까지 순서대로 표시하는 구조로 되어 있기 때문에, 픽처 상단을 표시하고자 했을 때, 그룹 2(s43)에 속하는 블록도 표시해야 되고, 따라서, 그룹 2(s43)가 복호되어, 표시 가능하게 될 때까지 대기할 필요가 있다.
그룹 2(s43)의 복호 완료까지 필요한 시간은, 스캔순으로 sc41과 sc42가 통과하는 블록이 모두 복호된 시간으로 된다.
그룹 분할 방식에 있어서는, 복호를 빨리 할 수는 있지만, 표시 가능 시각에 관하여 아무것도 고려하지 않는다. 그로 인해, 종래 기술에는, 픽처가 표시되는 것을 보증하기 위해, 결국 1 픽처분의 시간을 대기할 필요가 있다는 두번째 과제가 있었다.
또한, 비특허문헌 1에서는, 버퍼에 누적 가능한 비트량보다도, 픽처가 복잡한 경우 등, 픽처의 복호에 필요한 비트량이 더 클 때의 동작을 규정하고 있다.
도 6은 픽처의 복호에 필요한 비트량이 더 클 때의 동작을 설명하기 위한 도면이다. 동화상 부호화 장치는, 도 6에 도시한 그래프(50)와 같이 결정된 레이트(51)로 나타낸 레이트 R의 누적을, 픽처의 인발 비트량의 누적(52)을 초과하지 않도록 부호량의 조정을 행한다.
그러나, 픽처가 복잡하거나 하여, 부호화에 필요한 비트량이 버퍼에 누적되어 있는 비트량으로는 충분하지 않아, 언더플로우를 일으켜 버리는 경우가 있다. 예를 들어, 도 6에 도시한 그래프(53)와 같은 경우이다.
언더플로우를 일으킬 때는, 도 6에 도시한 그래프(54)와 같이, 복호 장치는, 애초의 픽처의 복호 시각 dt(0)에서는 복호를 개시하지 않고, 복호에 필요한 비트가 버퍼에 수신된 시각 dt'에 복호를 실행한다.
그리고, 일반적으로, 지연된 픽처의 표시 타이밍은, 원래 그 다음 픽처가 표시되어야 할 타이밍 dt(1)로 된다. 그리고, 원래 dt(1)의 시각에 표시되어야 할 픽처는, 복호는 행해지지만 표시는 스킵된다.
그러나, 비특허문헌 1에 있어서, 그룹 단위로 언더플로우가 발생한 경우의 규정에 대해서는, 명확하게 정의되어 있지 않다고 하는 세번째 과제가 있었다.
따라서, 이하에 개시된 기술은, 상기 세번째의 과제를 적어도 해결하도록, 그룹 단위로 언더플로우가 발생한 경우에 적절하게 처리할 수 있는 동화상 부호화 장치, 동화상 부호화 방법, 동화상 복호 장치 및 동화상 복호 방법을 제공하는 것을 목적으로 한다.
개시의 일 형태에 있어서의 동화상 부호화 장치는, 동화상 데이터에 포함되는 각 픽처를 복수의 블록으로 분할하여 부호화하는 동화상 부호화 장치이며, 복수의 블록에 대하여, 각 블록이 속하는 그룹을 결정하는 그룹 구성 결정부와, 상기 각 블록이 속하는 그룹 정보를 출력 스트림에 부가하는 그룹 정보 부가부와, 상기 그룹마다 복호 시각을 산출하여 출력 스트림에 부가하는 복호 시각 결정부와, 상기 그룹마다 표시 시각을 산출하여 출력 스트림에 부가하는 출력 시각 결정부와, 그룹에 포함되는 모든 블록의 복호에 필요한 데이터가, 소정의 전송 레이트로 복호 장치로 전송된 경우에, 상기 출력 시각 결정부로부터 산출된 표시 시각에 의해 표현되는 시각까지 복호 장치의 수신 버퍼에 도달하도록 부호량을 제어하는 부호량 제어부와, 상기 부호량 제어 수단의 제어 정보에 기초하여 부호화를 행하는 부호화 처리부와, 그룹에 포함되는 모든 블록의 복호에 필요한 데이터가 상기 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않는 경우에는, 다음 픽처의 최초의 데이터가 상기 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않도록 제어하는 정보량 제어부를 구비한다.
개시의 기술에 의하면, 그룹 단위로 언더플로우가 발생한 경우에 적절하게 처리할 수 있다.
도 1은 종래 기술에 의한 수신 버퍼의 버퍼 점유량의 천이예를 도시하는 도면.
도 2는 그룹 분할에 의해 코덱 지연을 1 픽처 시간 미만으로 한 예를 나타내는 도면.
도 3은 동화상 복호 장치의 수신 버퍼의 모습을 도시하는 도면.
도 4는 1개의 P(i)에 주목한 수신 버퍼의 모습을 도시하는 도면.
도 5는 순간적으로 표시 가능하지 않은 경우의 일례를 나타내는 도면.
도 6은 픽처의 복호에 필요한 비트량이 더 클 때의 동작을 설명하기 위한 도면.
도 7은 실시예 1에 의한 동화상 부호화 장치의 개략 구성의 일례를 나타내는 블록도.
도 8은 P(i)에 주목한 경우의 부호화 데이터의 누적값을 도시하는 도면.
도 9는 표시 지연을 설명하기 위한 도면.
도 10은 수신 버퍼에 도착한 부호화 데이터의 비트량의 누적값과, P(i) 내의 각 블록에서의 발생 정보량의 누적값의 관계를 도시하는 도면.
도 11은 그룹 출력 시각 정보의 산출을 설명하기 위한 도면.
도 12는 실시예 1에 있어서의 동화상 부호화 처리의 일례를 나타내는 흐름도.
도 13은 실시예 1에 있어서의 출력 처리의 일례를 나타내는 흐름도.
도 14는 실시예 2에 있어서의 동화상 복호 장치의 개략 구성의 일례를 나타내는 블록도.
도 15는 실시예 2에 있어서의 동화상 복호 처리의 일례를 나타내는 흐름도.
도 16은 실시예 2에 있어서의 출력 처리의 일례를 나타내는 흐름도.
도 17은 실시예 3에 있어서의 동화상 부호화 장치의 개략 구성의 일례를 나타내는 블록도.
도 18은 언더플로우의 발생을 설명하기 위한 도면.
도 19는 언더플로우 발생 시의 처리를 설명하기 위한 도면.
도 20은 실시예 3에 있어서의 동화상 부호화 장치의 처리의 일례를 나타내는 흐름도.
도 21은 실시예 4에 있어서의 동화상 복호 장치의 개략 구성의 일례를 나타내는 블록도.
도 22는 실시예 4에 있어서의 동화상 복호 장치의 처리의 일례를 나타내는 흐름도.
도 23은 실시예 5에 있어서의 동화상 처리 장치의 개략 구성의 일례를 나타내는 블록도.
이하, 첨부 도면을 참조하면서 각 실시예에 대하여 상세하게 설명한다. 실시예에서 설명하는 동화상 부호화 장치는, 동화상 데이터에 포함되는 각 픽처를 그룹 단위로 부호화하고, 부호화 데이터로서 비트 스트림을 출력한다.
또한, 픽처는, 프레임 또는 필드의 어느 것이든 좋다. 프레임은, 동화상 데이터 중 하나의 정지 화상이며, 한편, 필드는 프레임으로부터 홀수행의 데이터 혹은 짝수행의 데이터만을 취출함으로써 얻어지는 정지 화상이다.
또한, 부호화 대상의 동화상은, 컬러 동화상이어도 좋고, 또는 모노크롬 동화상이어도 좋다.
<실시예 1>
<구성>
도 7은 실시예 1에 의한 동화상 부호화 장치(100)의 개략 구성의 일례를 나타내는 블록도이다. 동화상 부호화 장치(100)는, 부호화 처리부(110)와, 부호량 제어부(120)와, 그룹 결정부(130)와, 복호 시각 결정부(140)와, 출력 시각 결정부(150)를 갖는다.
부호화 처리부(110)는, 직교 변환부(111)와, 양자화부(112)와, 엔트로피 부호화부(113)를 갖는다.
부호량 제어부(120)는, 양자화값 산출부(121)와, 버퍼 점유량 산출부(122)와, 비트 카운터(123)를 갖는다.
부호량 제어부(120)는, 그룹에 포함되는 모든 블록의 출력에 필요한 데이터가, 소정의 전송 레이트로 복호 장치에 전송된 경우에, 산출된 출력 시각으로 결정된 출력 지연에 의해 표현되는 시각까지 출력 장치의 복호 버퍼에 도달하도록 부호량을 제어한다.
그룹 결정부(130)는, 그룹 구성 결정부(131)와, 그룹 정보 부가부(132)를 갖는다.
복호 시각 결정부(140)는, 그룹 복호 시각 산출부(141)와, 그룹 복호 지연 결정부(142)와, 그룹 복호 지연 정보 부가부(143)를 갖는다.
출력 시각 결정부(150)는, 그룹 출력 시각 산출부(151)와, 그룹 출력 지연 결정부(152)와, 그룹 출력 지연 정보 부가부(153)를 갖는다.
동화상 부호화 장치(100)가 갖는 이들 각 부는, 각각, 별개의 회로로서 동화상 부호화 장치(100)에 실장된다. 혹은, 동화상 부호화 장치(100)가 갖는 이들 각 부는, 그 각 부의 기능을 실현하는 회로가 집적된 하나의 집적 회로로서 동화상 부호화 장치(100)에 실장되어도 좋다. 혹은 또한, 동화상 부호화 장치(100)가 갖는 이들 각 부는, 동화상 부호화 장치(100)가 갖는 프로세서 상에서 실행되는 컴퓨터 프로그램에 의해 실현되는 기능 모듈이어도 좋다.
동화상 데이터에 포함되는 부호화 대상 픽처는, 도시하지 않은 제어부에 의해 블록 단위로 분할되고, 블록마다 직교 변환부(111)에 입력된다. 각 블록은, 예를 들어 16×16 화소를 갖는다.
직교 변환부(111)는, 도시하지 않은 프레임 메모리에 축적된 국소 복호 완료 픽처로부터 인트라 예측값 혹은 인터 예측값을 산출하고, 입력 블록의 차분 연산을 행하여 블록 예측 오차를 산출한다. 또한 블록 예측 오차에 대하여 직교 변환을 행한다.
양자화부(112)는, 직교 변환한 블록 예측 오차에 대하여 양자화 연산을 행한다. 양자화 연산에 있어서의 양자화 파라미터(제어 정보)는, 양자화값 산출부(121)로부터 부여된다. 이 결과인, 양자화 직교 변환 계수 및 인트라 예측 혹은 인터 예측의 파라미터(인트라 예측 방향, 움직임 벡터 정보 등)는, 블록 압축 데이터로서 엔트로피 부호화부(113)에 출력된다. 양자화된 직교 변환 계수는, 도시하지 않은 국소 복호부에 의해, 역양자화·역직교 변환을 행한 후, 인트라 예측값 혹은 인터 예측값을 가산하여 국소 복호 블록을 생성 후, 도시하지 않은 프레임 메모리에 축적한다.
엔트로피 부호화부(113)는, 양자화부(112)로부터 출력되는 블록 압축 데이터에 대하여 엔트로피 부호화를 행한다.
양자화값 산출부(121)는, 버퍼 점유량 산출부(122)로부터 출력되는, 이상 복호 장치의 수신 버퍼의 상태 및 다음에 부호화하는 블록의 발생 정보량 상한으로부터 각 블록의 양자화값을 계산한다.
버퍼 점유량 산출부(122)는, 비트 카운터(123)로부터 출력되는, 부호화 데이터의 비트량 누적값과, 그룹 구성 결정부(131)로부터 출력되는 그룹 정보, 그룹 복호 지연 결정부(142)로부터 출력되는 그룹의 복호 시각 및 그룹의 복호 지연으로부터, 이상 복호 장치의 수신 버퍼의 상태 및 다음에 부호화하는 블록의 발생 정보량 상한을 계산한다.
비트 카운터(123)는, 엔트로피 부호화부(113)의 출력 비트수를 카운트하고, 부호화 데이터의 누적값을 출력한다.
그룹 구성 결정부(131)는, 복수의 블록에 대하여, 각 블록이 속하는 그룹을 결정한다. 그룹 구성 결정부(131)는, 예를 들어 부호화 처리 중의 블록이 속하는 그룹을, 도시하지 않은 제어부로부터 수취한 블록 카운트 정보와 도시하지 않은 제어부로부터 수취한 부호화 방법 지정 정보를 사용하여 소정 방법에 따라 결정한다.
블록 카운트 정보는, 픽처에 포함되는 각 블록의 번호를 나타내는 정보이며, 예를 들어 픽처의 좌측상단부의 블록에 대한 번호가 1로 설정되고, 래스터 스캔순에 따라 각 블록에 번호가 할당된다. 그리고, 픽처의 우측하단부의 블록에 대하여, 최대의 번호가 할당된다. 또한, 블록 카운트 정보는, 다른 순서에 따라 각 블록에 할당된 번호를 포함해도 좋다.
그룹 구성 결정부(131)는, 그룹마다의 복호 처리 시간을 균등화하기 위해, 각 그룹에 포함되는 블록의 수가 가능한 한 동등해지도록 복수의 그룹을 결정하는 것이 바람직하다.
예를 들어, 그룹 구성 결정부(131)는, 블록 라인 단위로 각 블록을 그룹으로 분할하면, 임의의 픽처 크기에 있어서 각 그룹에 포함되는 블록의 수를 동등하게 할 수 있다.
예를 들어, 픽처 크기가, 고정밀도 텔레비전 방송(High Definition Television, HDTV) 상당의 1920화소×1088화소이며, 블록 사이즈가 16화소×16화소이면, 블록 라인수는 68이다. 따라서, 이 경우, 부호화 대상 픽처에 포함되는 각 블록은, 68개의 그룹 중 어느 하나로 분류된다.
그룹에 포함되는 블록의 수는, 1부터 화면 전체의 블록수까지 사이의 값으로 설정해도 좋다.
그룹 구성 결정부(131)는, 부호화 대상 블록이 속하는 그룹의 식별 정보를 버퍼 점유량 산출부(122)에 통지한다. 그룹 구성 결정부(131)는, 각 그룹에 포함되는 블록의 정보를 그룹 복호 시각 산출부(141)와 그룹 출력 시각 산출부(151)로 통지한다. 또한, 그룹 구성 결정부(131)는, 각 그룹의 선두에 위치하는 블록의 인덱스를 그룹 복호 시각 산출부(141)와 그룹 출력 시각 산출부(151)로 통지해도 좋다.
그룹 정보 부가부(132)는, 픽처 내의 그룹수와 각 그룹 내의 블록 정보를 나타내는 그룹 정보를 부호화 데이터에 부가한다.
그룹 복호 시각 산출부(141)는, 그룹 구성 결정부(131)로부터 출력되는 그룹 정보로부터 각 그룹의 복호 시각을 산출하여, 그룹 복호 지연 결정부(142)로 통지한다.
그룹 복호 지연 결정부(142)는, 각 그룹의 복호 지연을 결정하고, 각 그룹의 복호 시각과 함께 버퍼 점유량 산출부(122)와 그룹 복호 지연 정보 부가부(143)로 통지한다. 결정된 복호 지연은, 지연 정보로서 통지된다.
그룹 복호 지연 정보 부가부(143)는, 그룹의 복호 시각과 복호 지연을 수취하여, 그룹 복호 지연 정보로서 부호화 데이터에 부가한다.
그룹 출력 시각 산출부(151)는, 도시하지 않은 제어부로부터 수취한 부호화 방법 지정 정보와, 그룹 구성 결정부(131)로부터 출력되는 그룹 정보로부터, 각 그룹의 출력 시각(표시 시각이라고도 칭함)을 산출하여, 출력 시각 정보를 그룹 출력 지연 결정부(152)로 통지한다.
그룹 출력 지연 결정부(152)는, 각 그룹의 출력 시각으로부터, 각 그룹의 출력 지연을 결정하여, 출력 지연 정보를 그룹 출력 지연 정보 부가부(153)로 통지한다.
그룹 출력 지연 정보 부가부(153)는, 각 그룹의 출력 시각과 출력 지연을 수취하여, 그룹 출력 지연 정보로서 부호화 데이터에 부가한다.
《복호 지연》
i번째의 픽처 P(i) 내의 각 블록을 dt(i-1)부터 dt(i)까지 사이에서 등간격으로 순간 복호한 경우를 생각한다. 이 경우, 소비된 부호화 데이터의 누적값 그래프 f(t)는, 블록당 정보량의 하한·상한을 설정하는 등의 적절한 레이트 제어에 의해, 블록 전송 지연을 작게 하는 것이 가능하다. 또한, 이 정보를 동화상 복호 장치에 통지함으로써, 블록의 복호 개시의 가장 빠른 시각을 더 빠르게 하는 것이 가능하다. 도 8을 사용하여 설명한다.
도 8은 P(i)에 주목한 경우의 부호화 데이터의 누적값을 도시하는 도면이다. 그래프(60)는, 레이트가 R인 부호화 데이터의 도착량 누적값이다. 그래프(61)는, 픽처 단위로 순간 복호한 경우의 소비된 부호화 데이터의 누적값이다.
부호 62 내지 66은, 부호 67 내지 71로 나타내는 각 그룹(G0 내지 G4)에서 복호를 위하여 소비된 부호화 데이터의 누적값이다.
각 그룹의 존재 범위와 그래프(60)의 관계를 보면, G(1) 내지 G(4)에 있어서는, 항상 레이트가 부호화 데이터의 누적값보다 위이기 때문에, G(1) 내지 G(4)의 각 블록의 순간 복호를 dt(i-1)부터 dgt(i, 1) 사이에서 등간격으로 행한 경우에도 언더플로우는 발생하지 않는다.
G(0)에 있어서는, G(0)의 부호화 데이터의 누적값이 레이트를 초과해 버리기 때문에, 언더플로우가 발생한다. 이 언더플로우를 피하기 위해서는, 부호화 데이터의 누적값이 레이트를 초과하지 않으면 되며, 그 최소값은 간격 Δt로 된다.
Δt는, 어느 그룹에서 발생해도 dgt(i, n)-dgt(i, n-1)보다도 작아진다. 동화상 복호 장치는, P(i)에 있어서의, 각각의 그룹의 Δt의 최대값을 사용하여, P(i)의 선두 블록의 복호 개시 시각을 dt(i-1)+Δt(i)로 함으로써, 전체 블록을 언더플로우하지 않고, 등간격으로 순간 복호할 수 있다.
시퀀스 전체에서는, 전체 픽처의 Δt(i)의 최대값 Δt로부터, 최초의 픽처의 선두 블록 복호 개시 시각 dinit를 이하의 식과 같이 함으로써, 전체 픽처의 전체 블록을 언더플로우하지 않고, 등간격으로 순간 복호할 수 있다.
Figure 112016019768035-pat00003
또한 P(i) 내에서 n번째의 그룹의 복호 개시가 가능하게 되는 시각의 가장 빠른 값 r(i, n)은, 이하의 식으로 나타낸다.
Figure 112016019768035-pat00004
동화상 부호화 장치에서, Δt가 dgt(i, n)-dgt(i, n-1)보다 작은 값으로 되도록 각 픽처, 각 그룹의 발생 정보량을 제어하여, Δt의 값을 명시적으로 동화상 복호 장치에 전송한다. 동화상 복호 장치에서, 그룹 G(i, n)의 순간 복호 시각을 r(i, n)로 함으로써, 확실하게 각 블록의 복호 개시 시각을 보증할 수 있다.
동화상 복호 장치측의 그룹은, 동화상 부호화 장치로부터 통지된 그룹과 반드시 일치하지 않아도 좋다. 동화상 복호 장치측의 그룹이, 동화상 부호화 장치로부터 통지된 그룹과 일치하는 경우에는 r(i, n)=dgt(i, n)로 된다.
《표시 지연》
대상으로 하는 그룹의 표시 지연을 명시적으로 부가 확장 정보로 함으로써, 복호 장치 쪽에 가장 빠른 표시 타이밍을 통지할 수 있어, 표시 지연을 최소의 것으로 할 수 있다. 예를 들어, 도 5에 도시한 바와 같은 타일 분할이나 그룹 분할인 경우의 표시 지연의 지정 방법을 도 5와 도 9를 사용하여 설명한다.
도 5에 도시된 경우, 가장 표시 지연이 커지는 것은, 그룹 0(s41)의 최상단의 표시이다. 그룹 0(s41)의 최상단의 표시를 개시하기 위해서는, 적어도 그룹 2(s43)의 픽처 최상단의 화소값의 복호가 끝날 필요가 있다. 따라서, 표시 지연을 명시적으로 부가 확장 정보로서 통지한다.
도 9는 표시 지연을 설명하기 위한 도면이다. 그룹 0(s41)의 최상단의 표시가 가능해지는 시각은 도 9에 도시된 ogt(0)으로 된다. ogt(0)은 그룹 2의 인발 시각 dgt(2)보다도, 그 복호에 걸리는 시간이 느리게 설정되어 있다. 이 때의 표시 시각은 픽처의 복호가 어느 일정한 속도로 행해진다고 하여 이하의 식으로 나타낸다.
Figure 112016019768035-pat00005
L은 s43으로 나타내는 그룹 2 내의 수직 방향의 총 라인 수, l은 s43으로 나타내는 그룹 2 내에서 픽처 우측상단부가 몇 라인째인지를 나타낸다. l/L(dgt(3)-dgt(2))는, 그룹을 복호하기 위해, 1그룹 시간 걸린다고 가정했을 때, s43으로 나타내는 그룹 2의 픽처 우측상단부의 복호가 완료되는 시각을 나타낸다.
즉, 표시 가능 시각은, s41로 나타내는 그룹 0의 복호 시각 dgt(0)에 대하여, s41로 나타내는 그룹 0의 순간 복호 시각부터 s43으로 나타내는 그룹 2의 순간 복호 시각까지의 시간을 더한다. 또한, 표시 가능 시각은, 그룹 2의 픽처 우측상단부의 복호가 완료될 때까지 실제로 걸리는 시간을 더한 것이다.
동화상 부호화 장치측에서는, 상기 식으로 나타내는 시간을 명시적으로 부가 확장 정보로서 송신함으로써, 복호 장치측에, 실제로 복호 시간까지 고려한 적절한 시각을 통지하는 것이 가능하게 되어, 지연이 적은 표시를 보증할 수 있다.
또한, 상기의 예에서, 표시 시각 중 그룹 2의 픽처 우측상단부의 복호가 완료되는 시각의 부분을, s43으로 나타내는 그룹 2 모든 복호가 실제로 완료되는 시간 dgt(3)-dgt(2)로 해도, 1 픽처의 복호가 완료된 시각을 표시 가능 시각으로 하는 것보다도 빠른 시각을 통지할 수 있기 때문에, 지연이 적은 표시를 보증할 수 있다.
《복호 시각의 산출》
실시예 1에 있어서의 그룹 복호 시각 정보의 산출 방법을 설명한다. 이후의 설명은, 부호화 대상 픽처에 포함되는 총 블록수를 M으로 한다.
그룹 복호 시각 산출부(141)는, 우선, 부호화 순서로 i번째의 픽처 P(i)의 입력 시각 t(i)로부터 소정의 지연 시간 dly만큼 지연시킨 P(i)의 복호 시각 dt(i) {=t(i)+dly}에 기초하여, 픽처 P(i)의 n번째의 그룹 G(i, n)이 복호되는 시각을 나타내는 복호 시각 dgt(i, n)을 산출한다. 또는, 그룹 복호 시각 산출부(141)는, 복호 시각으로서, dgt(i, n) 대신에 dgt(i, n)과 등가의 {dgt(i, n)-dgt(i, n-1)}을 산출해도 좋다. 또한, 그룹 복호 시각 산출부(141)는 복호 시각을 적당한 단위, 예를 들어 1/90000초 단위의 배수로 되도록 사사오입해도 좋다.
그룹 복호 시각 산출부(141)는, 각 그룹의 복호 시각을, 각 그룹에 포함되는 각 블록의 복호 처리에 필요로 하는 시간을 균등하게 하기 위해, 1 픽처당 복호 처리에 필요로 하는 시간을 그룹수 N으로 등분할하도록 결정한다. 이 경우, G(i, n)(n=1, 2, …, N)의 복호 시각 dgt(i, n)은, 다음 식에 따라 산출된다.
Figure 112016019768035-pat00006
또한, dt(i)는 P(i)의 복호 시각이다. d(i+1)-d(i)는 i와 상관없이 일정하며, 이후 s로 나타낸다.
또한 그룹 복호 시각 산출부(141)는, 2번째 이후에 부호화·복호되는 그룹의 복호 시각 dgt(i, n)(n≥2)를, 다음 식과 같이 결정해도 좋다.
Figure 112016019768035-pat00007
또한, 그룹 복호 시각 결정부(141)는, 2번째 이후에 부호화·복호되는 그룹의 복호 시각 dgt(i, n)(n≥2)를, 다음 식과 같이 결정해도 좋다.
Figure 112016019768035-pat00008
그룹 복호 지연 결정부(142)는, 픽처 전체의 블록 지연 최대값 Δt를 부호화 개시 전에 결정한다. Δt는 다음 식으로 나타내는 범위의 값으로 한다.
<조건식 1>
Figure 112016019768035-pat00009
버퍼 점유량 산출부(122)는 이상 복호 장치의 수신 버퍼의 버퍼 점유량 및 다음에 부호화하는 블록의 발생 정보량 상한을, 이하와 같이 계산한다.
도 10은 P(i)의 부호화 처리에 있어서의, 이상 복호 장치의 수신 버퍼에 도착한 부호화 데이터의 비트량의 누적값과, P(i) 내의 각 블록에서의 발생 정보량의 누적값의 관계를 도시하는 도면이다.
그래프(72)는, 이상 복호 장치의 수신 버퍼에 도착한 부호화 데이터의 비트량의 누적값 R(t)이다. 그래프(75)는, 그래프(72)를 Δt만큼 좌측으로 어긋나게 한 것이며, R'(t)로 한다. R'(t)=R(t+Δt)의 관계가 있다.
도 10에 도시된 B(i)는, P(0)부터 P(i)까지의 발생 부호화 데이터의 누적값을 나타낸다. b(i)는 P(i) 전체의 발생 정보량을 나타내고, B(i)-B(i-1)과 동일하다.
그래프(73)는, 시각 dt(i-1)에서의 값이 B(i-1), 시각 dt(i)에서의 값이 B(i)이며, 기울기가 b(i)/s로 되는 직선 V(t)이다. s는 1 픽처 시간이며, dt(i)-dt(i-1)과 동일하다.
그래프(73)는, 시각 dt(i-1)부터 dt(i)까지 사이에, 각 블록을 균등 간격으로 복호화하고, 또한 발생 정보량이 동등하게 b(i)/M으로 되는 경우의, 블록 단위의 부호화 데이터의 소비 곡선 f(t)에 상당한다.
그래프(74)는, 실제의 블록 단위의 부호화 데이터의 소비 곡선 f(t)이며, 점(77)은, m번째의 블록까지 복호한 경우의 블록 단위의 부호화 데이터의 소비량 누적값이다.
이상 복호 장치가, 그룹 복호 시각 정보로부터 산출되는 그룹 복호 개시의 빠른 시각 r(i, n)에 그룹 n을 복호했을 때에 수신 버퍼의 언더플로우를 발생시키지 않기 위해서는, 이하의 조건을 만족할 필요가 있다. 양자화값 산출부(121)는, 항상 이하의 조건이 만족되도록 양자화값을 산출한다.
<조건식 2>
Figure 112016019768035-pat00010
영역(76)은, f(t)가, 시각 dtg(i, u-1)부터 dtg(i, u)까지 사이에서 취하는 것이 허용되는 범위를 나타낸다.
《양자화값 산출》
양자화값 산출부(121)에 있어서의, 블록 m의 양자화값 산출 방법을 이하에 설명한다. 실시예 1에서는, 각 그룹에 포함되는 블록수는 동등하게 M/N으로 하고 있다.
블록 m이 속하는 n번째의 그룹G(i, n)의 선두 블록의 처리를 개시하는 데 있어서, G(i, n)의 목표 정보량 T(i, n)을 이하의 식에 따라 계산한다. 여기에서 n=Ceil(m*N/M)이다.
Figure 112016019768035-pat00011
T(i)는 P(i) 전체의 목표 정보량이며, T'(i, n)은 G(i, n)의 실제 발생 정보량이다. T(i)는, 공지의 방식을 사용하여, P(0)부터 P(i-1)까지의 실제 발생 정보량의 총합에 의해 결정된다.
양자화값 산출부(121)는 예를 들어, MPEG-2에 있어서의 표준화 단체 참조 소프트웨어 Test Mode15(비특허문헌 2를 참조)에 있어서의 양자화값 산출 방법에 따라, G(i, n)의 실제 발생 정보량이 T(i, n)에 근접하도록 양자화값을 산출한다.
다음에 양자화값 산출부(121)는, G(i, n) 전체의 부호화 처리가 종료되었을 때의 P(i) 내의 발생 정보량 누적값의 기대값 b'(i, n)과, n번째의 그룹을 엔트로피 부호화하기 전의 P(i) 내의 발생 정보량 누적값 B(i, n-1)의 차 d1을 소정의 임계값 DTH1과 비교한다.
b'(i, n)은 이하의 식으로 계산된다.
Figure 112016019768035-pat00012
임계값 DTH1은, 다음 식으로 나타낸다.
Figure 112016019768035-pat00013
b0은 양자화값을 그 취할 수 있는 값의 범위 중 최대값으로 한 경우에, 각 블록에서 발생하는 최대의 부호량이다. ((M/N)-m)은, G(i, m)으로 부호화 처리가 종료되지 않은 블록수에 상당한다. offset은 마진 항이다.
d1<DTH1로 되는 경우에는, 양자화값 산출부(121)는, 양자화값을 최대값으로 한다.
또한 b0는, 주파수 계수를 모두 0으로 했을 때의 블록의 부호량을 사용해도 좋다. d1<DTH1로 되는 경우에는, 양자화값 산출부(121)는, 부호화 대상 블록의 모든 주파수 계수가 0으로 양자화되도록 양자화값을 결정한다. 이 제어에 의해, 그룹 내의 부호화 처리가 완료되지 않은 나머지 블록의 부호량의 평균값이 b0을 초과하지 않으면, T(i, n)≥T'(i, n), 즉 f(dtg(i, n))≤V(dtg(i, n))이 보증된다. 그리고 이상 복호 장치의 수신 버퍼가 언더플로우하지 않는 것이 보증된다.
이상에 의해, 양자화값 산출부(121)는, 동화상 부호화 장치(100)로부터의 출력 스트림을 실제로 소정의 레이트 R에 따라 동화상 복호 장치로 전송하면, 동화상 복호 장치의 수신 버퍼가 언더플로우하지 않도록 동화상 데이터의 부호량을 제어하는 것이 가능하게 된다.
양자화값 산출부(121)는, 구한 양자화값을 양자화부(112)로 통지한다.
《출력 시각 산출》
이어서, 실시예 1에 있어서의, 그룹 출력 시각 정보의 산출 방법에 대하여 설명한다. 도 11은 그룹 출력 시각 정보의 산출을 설명하기 위한 도면이다.
이후의 설명은, 부호화 대상 픽처에 포함되는 총 블록수를 M으로 한다. 또한, 픽처의 폭과 높이, 타일의 폭과 높이, CTB의 폭과 높이를 각각 (widthp, heightp), (widtht, heightt), (widthc, heightc)로 한다. 여기서, 모든 타일(t80 내지 t83)의 크기는 동등하게, 타일은 래스터 스캔순 sc83으로 처리되게 한다. 즉, 도 11에 도시된 예에서는, 타일 0(t80), 타일 1(t81), 타일 2(t82), 타일 3(t83)의 순서대로 처리된다.
또한, 도 11에 도시된 예에서는, 그룹은 17개의 CTB를 갖는 것으로 하고, 모든 그룹에서, CTB의 개수는 동등한 것으로 한다. 이때, 그룹 0(s81)은 픽처 내의 CTB의 인덱스 0부터 3열째의 4행째까지로 된다.
이렇게 생각하면 우측상단의 타일 1(t81)의 최상단의 CTB열은 그룹 2(s83)에 포함되게 된다. 그로 인해, 디스플레이가 래스터 스캔순으로 표시되는 경우, 적어도, 그룹 0(s81)은 그룹 2(s83)가 복호된 후에만 표시할 수 있다.
그룹 2(s83)가 복호된 후 표시하는 경우, 우선, 순간 복호인 것을 가정하여, 그룹 k의 인발 타이밍을 d(k)로 하면, 그룹 0(s81)의 출력 시각 ogt(0)은 다음 식과 같이 나타낸다.
Figure 112016019768035-pat00014
또한, 복호에 1 픽처 시간 s가 걸리고, 픽처 내의 그룹의 수를 N으로 하는 경우, 그룹의 복호에 필요한 시간은, s/N이 된다. 즉, 순간 복호 시의 복호 시각 dgt를 이용하면, 그룹 2의 복호가 완료되는 시각 dgt'(2)와 그룹 0(s81)의 표시 시각 ogt(0)은 다음 식과 같이 나타낸다.
Figure 112016019768035-pat00015
여기서, 동화상 부호화 장치(100)는, 전체 복호 픽처의 복호 시각으로부터, 그룹의 출력 시각을 감산한 출력 지연 시간을 복호 장치에 통지함으로써, 복호 장치측에 있어서, 표시 시각을 보증할 수 있다.
또한, 비특허문헌 1에서 개시되는 HEVC에 있어서의 디블록킹 필터와 같은, 포스트 필터에 있어서도, 당해 그룹을 표시하기 위해, 당해 그룹에 후에 복호되는 그룹의 복호를 대기해야 하는 경우가 존재한다. 그와 같은 경우에도, 후에 복호되는 그룹의 복호 시각을 고려하여, 적절하게 표시 지연을 설정함으로써, 1 픽처 시간 미만의 표시 지연을 달성하는 것이 가능하다.
《출력 스트림》
동화상 부호화 장치(100)는, 동화상 복호 장치와, 각 블록이 속하는 그룹, 그룹 복호 지연 및 그룹 출력 지연을 공유하기 위해, 적어도, 각 그룹에 속하는 블록을 나타내는 그룹 정보, 그룹 복호 지연 정보 및 그룹 출력 지연 정보를 출력 데이터 스트림에 부가하여, 동화상 복호 장치에 통지한다. 출력 데이터 스트림은, 간단히 출력 스트림이라고도 칭한다.
따라서, 그룹 복호 지연 정보 부가부(143)는, 예를 들어 그룹 복호 지연을, 각 픽처 혹은 소정의 픽처 간격으로, 출력 데이터 스트림의 헤더 정보에 부가한다.
또한, 그룹 출력 지연 정보 부가부(153)는, 예를 들어 그룹 출력 지연을, 각 픽처 혹은 소정의 픽처 간격으로, 출력 데이터 스트림의 헤더 정보에 부가한다.
또한, 그룹 정보 부가부(132)는, 예를 들어 그룹 정보를, 각 픽처 혹은 소정의 픽처 간격으로, 출력 데이터 스트림의 헤더 정보에 부가한다.
헤더 정보는, 예를 들어 MPEG-2에 규정되는, 시퀀스 헤더(Sequence Header) 또는 H.264에 규정되는 시퀀스 파라미터 세트(Sequence Parameter Set) 혹은Supplemental Enhancement Information으로 할 수 있다. 또한, 그룹마다의 복호 시각은, MPEG-2에 규정되는 픽처 헤더(Picture Header) 또는 H.264에 규정되는 슬라이스 헤더(Slice Header) 등, 각 픽처에 반드시 부수되는 헤더 정보에 부가되어도 좋다.
각 그룹에 포함되는 블록의 수가 동등해지도록 그룹이 결정되어 있는 경우, 동화상 부호화 장치(100)는 동화상 복호 장치에 전체 블록이 N개의 그룹으로 등분할된 것을 통지한다. 그 때문에, 그룹 구성 결정부(131)로부터, 그룹 정보 부가부(132)에, 그룹 정보로서 그룹수 N이 통지된다.
그룹 정보 부가부(132)는, 그 그룹 정보를 부호화한다. MPEG-2 및 H.264에서는, 매크로 블록이라고 불리는 16×16화소의 블록 단위로 부호화가 행해지고 있으며, 이 블록수는 통상 20bit로 표현 가능한 범위를 초과하지 않는다. 그룹의 수 N의 최대값은, 겨우 블록수의 최대값과 동등한 점에서, N의 부호화도 고정 비트 길이로 부호화하면 된다.
또한, 각 그룹에 포함되는 블록의 수가 동등하다고 제한하지 않는 경우, 그룹 구성 결정부(131)로부터 그룹 정보 부가부(132)에 대하여, 그룹수 N과 함께, 각 그룹의 선두 블록의 인덱스 정보가 그룹 정보로서 통지된다.
그룹 정보 부가부(132)는, 우선, 그룹수 N을 부호화하고, 순차 각 그룹의 선두 블록의 인덱스 정보를 부호화한다. 선두 블록의 인덱스 정보에 대한 부호화 방법도, 예를 들어 고정 비트 길이의 부호화 방식이 사용된다. 또한, 그룹 정보 부가부(132)는, 그룹수 N 및 각 그룹의 선두 블록의 인덱스 정보를 부호화하기 위해서, 하프맨 부호와 같은 가변장 부호화 방식 등, 다른 부호화 방식을 사용해도 좋다.
<동작>
이어서, 실시예 1에 있어서의 동화상 부호화 장치(100)의 동작에 대하여 설명한다. 도 12는 실시예 1에 있어서의 동화상 부호화 처리의 일례를 나타내는 흐름도이다.
스텝 S100에서, 시퀀스의 부호화 동작 개시에 있어서, 우선 그룹 복호 지연 Δt가 결정된다. Δt는 시퀀스 내에서 내포하는 블록수가 최소로 되는 그룹의 시간보다 작아지도록 결정된다.
스텝 S101에서, 그룹 복호 지연 정보 부가부(143)는, 그룹 정보, 그룹 복호 시각 지연 정보를 데이터 스트림에 부가한다.
스텝 S102에서, 그룹 구성 결정부(131)는, 각 픽처의 부호화 개시에 있어서, 우선 픽처 내의 그룹을 결정한다. 시퀀스 내의 각 픽처에 있어서의 그룹수 및 각 그룹이 내포하는 블록수는 픽처마다 결정하는 것이 가능하다. 또는 시퀀스 내의 전체 픽처에서 동일한 그룹수로 하고, 또한 각 그룹이 내포하는 블록수를 균등하게 해도 좋다.
스텝 S103에서, 그룹 복호 지연 결정부(142)는, 그룹마다 그룹 복호 지연을 산출한다(스텝 S103).
스텝 S104에서, 버퍼 점유량 산출부(122)는, 각 그룹의 복호 개시 시에, 이상 복호 장치의 수신 버퍼의 버퍼 상태 및 다음에 부호화하는 그룹의 발생 정보량 상한을 추정한다.
스텝 S105에서, 양자화값 산출부(121)는, 수신 버퍼의 버퍼 상태 및 다음에 부호화하는 그룹의 발생 정보량 상한을 바탕으로, 그룹의 복호 개시의 가장 빠른 시각까지 그룹의 전체 데이터가 수신 버퍼에 도착하도록 블록의 양자화값을 계산한다.
스텝 S106에서, 부호화 처리부(110)는, 계산한 양자화값을 사용하여 블록의 부호화를 행한다.
이어서, 실시예 1에 있어서의 동화상 부호화 장치(100)의 출력 처리에 대하여 설명한다. 도 13은 실시예 1에 있어서의 출력 처리의 일례를 나타내는 흐름도이다.
스텝 S200에서, 출력 시각 결정부(150)는, 그룹 정보를 데이터 스트림으로부터 추출한다.
스텝 S201에서, 그룹 출력 지연 결정부(152)는, 그룹 출력 지연 정보를 결정한다. 그룹 출력 지연 시각은, 상술한 바와 같이 하여 결정할 수 있다.
스텝 S202에서, 그룹 출력 지연 정보 부가부(153)는, 그룹 출력 지연 정보를 데이터 스트림에 부가한다.
이상, 실시예 1에 의하면, 1 픽처 시간 미만의 코덱 지연을 실현할 때, 그룹의 복호 또는 출력을 빠르게 함으로써, 한층 더한 저지연화를 실현할 수 있다.
<실시예 2>
이어서, 실시예 2에 있어서의 동화상 복호 장치에 대하여 설명한다. 실시예 2에서는, 실시예 1에 있어서의 동화상 부호화 장치(100)에 의해 부호화된 스트림을 적절하게 복호한다.
<구성>
도 14는 실시예 2에 있어서의 동화상 복호 장치(200)의 개략 구성의 일례를 도시하는 블록도이다. 동화상 복호 장치(200)는, 수신 버퍼(205)와, 블록 복호부(210)와, 프레임 메모리(211)와, 그룹 출력부(212)와, 복호 시각 산출부(220)와, 출력 시각 산출부(230)와, 그룹 정보 추출부(240)를 갖는다.
그룹 정보 추출부(240)는, 입력한 스트림(입력 스트림이라고도 칭함)으로부터, 각 블록을 소정의 간격으로 분할한 그룹을 나타내는 그룹 정보를 추출한다.
복호 시각 산출부(220)는, 그룹 복호 지연 정보 추출부(221)와, 그룹 복호 시각 산출부(222)를 갖는다.
출력 시각 산출부(230)는, 그룹 출력 지연 정보 추출부(231)와, 그룹 출력 시각 산출부(232)를 갖는다.
동화상 복호 장치(200)가 갖는 이들 각 부는, 각각, 별개의 회로로서 동화상 복호 장치(200)에 실장된다. 혹은, 동화상 복호 장치(200)가 갖는 이들 각 부는, 그 각 부의 기능을 실현하는 회로가 집적된 1개의 집적 회로로서 동화상 복호 장치(200)에 실장되어도 좋다. 혹은 또한, 동화상 복호 장치(200)가 갖는 이들 각 부는, 동화상 복호 장치(200)가 갖는 프로세서 상에서 실행되는 컴퓨터 프로그램에 의해 실현되는 기능 모듈이어도 좋다.
수신 버퍼(205)는, 동화상 부호화 장치(100)에 의해 송신된 스트림을 수신하여, 버퍼링한다.
블록 복호부(210)는, 그룹 복호 시각 산출부(222)로부터 출력되는 그룹의 복호 개시 시각에, 수신 버퍼(205)로부터 데이터를 취득하고, 선두 블록부터 순서대로 복호 처리를 행하여, 복호한 블록을 순차 출력한다. 복호 개시 시각은, 간단히 복호 시각이라고도 칭한다.
프레임 메모리(211)는, 블록 복호부(210)로부터 출력되는 복호 블록을 보존한다. 프레임 메모리(211)는, 예를 들어 출력 대상 그룹이 출력되기 전에 버퍼링되는 복호 버퍼로서도 기능한다. 또한, 복호 버퍼는, 프레임 메모리(211)와는 상이한 구성이어도 좋다.
그룹 출력부(212)는, 그룹 출력 시각 산출부(232)로부터 출력되는 그룹 출력 시각에, 해당 그룹의 출력을 행한다.
그룹 복호 지연 정보 추출부(221)는, 부호화 데이터인 입력 스트림으로부터, 그룹 복호 지연 정보를 추출한다.
그룹 복호 시각 산출부(222)는, 그룹 정보 추출부(240)로부터 출력되는 그룹 정보와, 그룹 복호 지연 정보 추출부(221)로부터 출력되는 그룹 복호 지연 정보로부터 각 그룹의 복호 개시 시각을 산출한다.
그룹 복호 시각 산출부(222)는, 예를 들어 i번째의 픽처 P(i)의 선두 블록의 복호 개시 시각 dtb(i)를, 이하의 식으로 계산한다.
Figure 112016019768035-pat00016
그룹 출력 지연 정보 추출부(231)는, 부호화 데이터인 입력 스트림으로부터, 그룹 출력 지연 정보를 추출한다.
그룹 출력 시각 산출부(232)는, 그룹 정보 추출부(240)로부터 출력되는 그룹 정보와, 그룹 출력 지연 정보 추출부(221)로부터 출력되는 그룹 출력 지연 정보로부터 각 그룹의 출력 시각을 산출한다.
동화상 복호 장치(200)는, 통지된 그룹수 N, 그룹의 복호 지연 정보에 기초하여, 각 복호 그룹의 복호 개시 시각을 산출한다. 또한, 통지된 그룹수 N, 그룹의 출력 지연 정보에 기초하여, 각 복호 그룹의 출력 시각을 산출한다.
<동작>
이어서, 실시예 2에 있어서의 동화상 복호 장치(200)의 동작에 대하여 설명한다. 도 15는 실시예 2에 있어서의 동화상 복호 처리의 일례를 나타내는 흐름도이다. 도 15에 도시하는 스텝 S300에서, 그룹 정보 추출부(240)는, 각 픽처의 복호 개시에 있어서, 우선, 그룹 정보를 데이터 스트림으로부터 추출한다.
스텝 S301에서, 그룹 복호 지연 정보 추출부(221)는, 그룹 복호 지연 정보를 데이터 스트림으로부터 추출한다.
스텝 S302에서, 그룹 복호 시각 산출부(222)는, 선두 그룹의 복호 개시 시각을 산출한다.
시퀀스 내의 각 픽처에 있어서의 복호 그룹수 및 각 복호 그룹이 내포하는 블록수는 픽처마다 결정하는 것이 가능하다. 또는 시퀀스 내의 전체 픽처에서 동일한 복호 그룹수로 하고, 또한 각 복호 그룹이 내포하는 블록수를 균등하게 해도 좋다. 또한, 복호 그룹은, 블록 복호 시각 정보에 기술되어 있는 그룹과 동일하게 해도 좋다.
스텝 S303에서, 블록 복호부(210)는, 그룹 복호 루프 내에서, 그룹의 복호 시각까지 대기한다.
스텝 S304에서, 블록 복호부(210)는, 수신 버퍼(205)로부터 데이터를 취득하여, 각 블록을 복호한다.
스텝 S305에서, 그룹 복호 시각 산출부(222)는, 다음 그룹의 복호 개시 시각을 계산한다.
스텝 S306에서, 블록 복호부(210)는, 복호된 복호 블록을 프레임 메모리에 출력한다.
이어서, 실시예 2에 있어서의 동화상 복호 장치(200)의 출력 처리에 대하여 설명한다. 도 16은 실시예 2에 있어서의 출력 처리의 일례를 나타내는 흐름도이다.
스텝 S400에서, 그룹 복호 지연 정보 추출부(221)는, 각 픽처의 복호 개시에 있어서, 우선 그룹 출력 지연 정보를 데이터 스트림으로부터 추출한다.
스텝 S401에서, 그룹 복호 시각 산출부(222)는, 이어서, 그룹 출력 지연 정보로부터, P(i)의 선두 그룹의 출력 개시 시각을 산출한다.
스텝 S402에서, 그룹 출력 시각 산출부(232)는, 그룹의 출력 개시 시간을 산출 스텝 S403에서, 블록 복호부(210)는, 그룹의 출력 개시 시각에 따라, 그룹에 속하는 복호 블록을 산출한다.
이상, 실시예 2에 의하면, 실시예 1에 있어서의 동화상 부호화 장치(100)에 의해 부호화된 스트림을 적절하게 복호할 수 있다.
<실시예 3>
이어서, 실시예 3에 있어서의 동화상 부호화 장치에 대하여 설명하는, 실시예 3에서는, 그룹 단위로 언더플로우가 발생하는 경우에, 어떤 처리를 행할지 규정한다.
<구성>
도 17은 실시예 3에 의한 동화상 부호화 장치(300)의 개략 구성의 일례를 나타내는 블록도이다. 동화상 부호화 장치(300)는, 부호화 처리부(310)와, 부호량 제어부(320)와, 그룹 결정부(330)와, 복호 시각 결정부(340)와, 출력 시각 결정부(350)를 갖는다.
부호화 처리부(310), 그룹 결정부(330), 복호 시각 결정부(340), 출력 시각 결정부(350)는, 도 7에 도시된 부호화 처리부(110), 그룹 결정부(130), 복호 시각 결정부(140), 출력 시각 결정부(150)와 마찬가지의 처리를 행한다.
부호량 제어부(320)는, 양자화값 산출부(321)와, 버퍼 점유량 산출부(322)와, 비트 카운터(323)와, 필러 부가부(324)를 갖는다.
부호량 제어부(320)는, 그룹에 포함되는 모든 블록의 복호에 필요한 데이터가, 소정의 전송 레이트로 복호 장치에 전송된 경우에, 결정된 표시 시각에 의해 나타내는 시각까지 복호 장치의 수신 버퍼에 도달하도록 부호량을 제어한다.
양자화값 산출부(321), 비트 카운터(323)는, 도 7에 도시된 양자화값 산출부(121), 비트 카운터(123)와 마찬가지의 처리를 행한다.
버퍼 점유량 산출부(322)는, 도 7에 도시된 버퍼 점유량 산출부(122)의 동작 외에, 그룹의 발생 정보량이 목표값을 상회하여, 복호 개시 시각까지 그룹의 전체 데이터가 이상 복호 장치의 수신 버퍼에 도달하지 않는, 버퍼 언더플로우 상태가 되는지의 여부를 조사한다.
버퍼 언더플로우 상태를 검출한 경우, 필러 부가부(324)에 대하여 처리 픽처 마지막에 더미 데이터를 넣도록 지시함과 함께, 도시하지 않은 전체 제어부에 대하여 버퍼 언더플로우 상태를 통지한다. 도시하지 않은 전체 제어부는 버퍼 언더플로우 상태를 통지받은 경우, 다음에 부호화하는 픽처의 부호화 처리를 스킵하도록 제어한다.
필러 부가부(324)는, 처리 픽처의 마지막에 더미 데이터를 삽입한다. 삽입하는 더미 데이터의 양은 버퍼 점유량 산출부(322)로부터 지시된다.
필러 부가부(324)는, 그룹에 포함되는 모든 블록의 복호에 필요한 데이터가 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않는 경우에는, 출력 스트림에 필러 데이터를 부가한다. 또한, 필러 부가부(324)는, 필러 데이터를 부가함으로써, 그룹을 포함하는 픽처 마지막 블록의 복호에 필요한 데이터가, 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않도록 제어한다.
또한, 본 실시예에서는, 픽처 내의 그룹에 있어서 언더플로우가 발생한 경우에, 필러 데이터를 삽입하는 예를 기재했지만, 도 17의 양자화값 산출부(321)에 의해 양자화값을 제어함으로써, 해당 픽처 전체의 정보량을 증가시켜, 해당 픽처를 고의로 언더플로우시키는 것도 가능하다.
구체적으로는, 도 18과 같이, 픽처가 4개의 그룹으로 구성되어 있는 것으로 하자. 여기에서 최초의 그룹이 dgt(0)에서 언더플로우를 일으킨 경우, 양자화 산출부에서는, 픽처의 발생 정보량을 제어하여, 다음 픽처의 도착 시각 dt(0)=dgt(3)에서 픽처가 언더플로우를 일으키도록, 그룹 1 내지 3의 양자화기를 제어한다. 마찬가지로, 제n 그룹에서 언더플로우를 일으킨 경우에는, 제(n+1)번째 이후의 그룹의 양자화기를 적절하게 제어함으로써, 해당 픽처가 언더플로우를 일으키도록 한다.
이와 같이, 본 실시예에서는, 어느 한 픽처 내의 그룹 중 1개의 그룹이라도 언더플로우가 발생한 경우에, 해당 픽처 전체가 언더플로우가 되도록, 해당 픽처의 발생 정보량을 제어한다.
상기와 같이, 필러 부가부(324)는, 정보량 제어부로서의 기능을 갖고, 그룹에 포함되는 모든 블록의 복호에 필요한 데이터가 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않는 경우에는, 다음 픽처의 최초의 데이터가 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않도록 제어한다.
《언더플로우 일시의 처리》
우선, 도 18을 사용하여, 픽처 내의 그룹에 있어서, 언더플로우가 일어난 경우를 생각한다. 도 18은 언더플로우의 발생을 설명하기 위한 도면이다. 도 18에 도시한 그래프(90)와 같이, 기본적으로, 그룹 단위의 복호 시각을 정의했을 때도, 부호화 장치측은 SEI 메시지 등의 추가 정보에 의해 복호 장치에 보내는 정보대로 스케줄링된 복호 시각에 복호할 수 있도록 부호량의 조정을 행한다.
그러나, 도 18에 도시한 그래프(91)와 같이, dgt(0)에 있어서, 최초의 그룹의 언더플로우가 발생한 경우, 복호에 필요한 비트가 버퍼에 수신될 때까지 복호를 행하지 않는 것은 상기와 마찬가지이다.
유의해야 할 것은, 1 픽처의 표시가 보증될 필요가 있고, 그룹의 언더플로우가 발생한 경우에도, 표시를 1 픽처 늦추어야 하는 것이다. 왜냐하면, 그룹의 언더플로우가 발생한 경우, 1그룹의 복호에 필요한 비트가 버퍼에 수신될 때까지 대기하기 위해서이다. 다음 복호 타이밍은, 도 18에 도시한 그래프(91)에 나타내는 dgt'로 된다.
이 경우, 그 후의 복호 시각도 그 만큼 지연되어 버리기 때문에, 그 그룹이 속하는 픽처가 복호되어, 표시되는 시각 dt(0)으로 되어도, 모든 그룹의 복호가 완료되지 않게 되므로, 1 픽처 표시를 늦춘다.
여기서, 그룹으로서는 언더플로우를 일으켜도, 픽처로서는 언더플로우를 일으키지 않는 경우를 생각한다. 그룹 단위에서는 언더플로우를 일으키고 있기 때문에, 그룹 복호를 늦추면서, 또한 1 픽처 표시를 늦추어, 다음 픽처를 스킵하고자 한다.
그러나, 픽처 단위에서는 언더플로우를 일으키지 않기 때문에, 통상의 시각에서 픽처 표시를 행하고자 한다는 모순된 상황이 발생한다. 이 경우, 그룹의 복호가 느려지기 때문에, 통상의 픽처의 타이밍에서는 복호가 종료되지 않아, 적절한 픽처를 출력할 수 없다.
또한, 그 다음 픽처의 표시 타이밍에서도, 그 다음 픽처에 필요한 복호가 종료되지 않아, 적절한 픽처를 출력할 수 없다. 그와 같이, 픽처의 표시 타이밍에 적절한 픽처가 복호되지 않게 된다.
따라서, 도 19에 도시한 바와 같이, 그룹에서 언더플로우가 일어난 경우에는, 픽처로서도, 언더플로우가 일어나도록 해당 픽처의 발생 정보량을 제어하여, 1 픽처 표시를 늦추어, 그 다음에 표시되어야 할 픽처를 스킵시킨다. 이에 의해, 그룹 단위로 복호한 경우와, 픽처 단위로 복호한 경우에 동일한 픽처를 스킵시킬 수 있기 때문에, 그룹 단위의 복호와 픽처 단위의 복호에 의해 각 픽처간의 표시 간격을 동일하게 할 수 있다.
도 19는 언더플로우 발생 시의 처리를 설명하기 위한 도면이다. 예를 들어, 도 19에 도시하는 예에 있어서, dgt(1)에서 언더플로우가 일어난 경우, dt(1)에서 복호되어야 할 픽처의 양은 부호 95로 나타낸 바와 같이, 부호화 스트림 도착 레이트(96)보다도 작음에도 불구하고, dt(1)에 있어서 언더플로우가 일어난 것으로 한다. 이에 의해, 1 픽처 표시를 늦추어, dt(1)로 표시되는 픽처를 dt(2)로 표시하고, dt(2)로 표시되어야 할 픽처를 스킵한다.
또한 부호화 장치측에 있어서도, 그룹에서 언더플로우가 일어난 경우에는, 픽쳐의 부호화 데이터에 해당 픽처의 다음 그룹 이후에서의 양자화 제어나 필러 데이터 추가 등을 행하여, 해당 픽처에서 언더플로우를 고의로 일으킴으로써, 그룹 단위와 픽처 단위 모두로 복호한 경우에 동일한 픽처를 스킵할 수 있기 때문에, 양자에서 각 픽처간의 스킵까지 포함한 표시 간격을 동일하게 하여, 정합성을 취하는 것이 가능하다.
《언더플로우 검출, 픽처 정보량 제어》
실시예 3에 의한 동화상 부호화 장치에 있어서의, 언더플로우 검출 방법 및 픽처의 발생 정보량 제어 방법을 이하에 기재한다.
우선, 부호량 제어부(320)는, 실시예 1의 경우와 마찬가지의 동작을 행하기로 한다. 언더플로우는, 버퍼 점유량 산출부(322)에 있어서 검출된다. 이때, 적어도 하나의 그룹에서, 상기의 조건 (2)에 기재된 조건이 만족되지 않는 경우, 당해 픽처에 포함되는 그룹에서, 언더플로우가 발생했다고 검출된다.
이때, 버퍼 점유량 산출부(322)는, 필러 부가부(324)에 언더플로우 발생 정보를 통지한다. 필러 부가부(324)는, 언더플로우 발생 정보를 수취하여, 언더플로우가 발생한 것을 확인했을 때, 픽처의 표시가 스킵되는 처리를 행한다.
예를 들어, 필러 데이터를 출력 스트림에 부여함으로써, 픽처 단위에 의한 언더플로우를 고의로 발생시켜, 픽처의 표시를 스킵시킨다. 필러 데이터의 부가 방법은, 용이하게 유추할 수 있기 때문에, 여기에서는 설명을 생략한다.
혹은, 버퍼 점유량 산출부(322)에 의해, 어느 한 픽처의 어느 한 그룹에서 언더플로우를 검출한 경우에는, 해당 픽처 내의 해당 그룹의 다음 그룹 이후에서, 해당 픽처가 언더플로우하도록, 양자화값 산출부에 의해 양자화값을 제어하고 픽처 전체의 발생 정보량을 제어하여, 해당 픽처의 언더플로우를 고의로 발생시킨다.
이상의 처리를 행함으로써, 픽처의 표시를 스킵시킴으로써, 픽처의 표시 순서가 어긋나는 것을 방지할 수 있다.
<동작>
이어서, 실시예 3에 있어서의 동화상 부호화 장치(300)의 동작에 대하여 설명한다. 도 20은 실시예 3에 있어서의 동화상 부호화 장치의 처리의 일례를 나타내는 흐름도이다.
스텝 S500에서, 버퍼 점유량 산출부(322)는, 복호 장치의 수신 버퍼의 버퍼 점유량에 기초하여, 그룹 단위로 언더플로우할지 여부를 확인한다.
스텝 S501에서, 버퍼 점유량 산출부(322)는, 그룹 단위로 언더 플로우가 발생한다고 판단하면, 픽처 단위로도 언더플로우하도록, 픽처의 발생 정보량의 제어를 행한다. 그 제어의 예로서는, 예를 들어 필러 부가부(324)에 의해 출력 스트림에 필러를 부하하거나, 혹은, 양자화값을 제어하는 등의 방법이 있다. 언더플로우를 일으킨 픽처는, 빅 픽처라고도 불린다.
이상, 실시예 3에 의하면, 그룹 단위로 언더플로우가 발생하는 경우에도 적절하게 처리할 수 있다.
<실시예 4>
이어서, 실시예 4에 있어서의 동화상 복호 장치에 대하여 설명하는, 실시예 4에서는, 실시예 3에 있어서의 동화상 부호화 장치에 의해 부호화된 부호화 데이터를 적절하게 복호할 수 있다.
<구성>
도 21은 실시예 4에 있어서의 동화상 복호 장치(400)의 개략 구성의 일례를 나타내는 블록도이다. 동화상 복호 장치(400)는, 수신 버퍼(405)와, 그룹 복호 지연 정보 추출부(421)와, 그룹 출력 지연 정보 추출부(431)와, 그룹 복호 시각 산출부(422)와, 그룹 출력 시각 산출부(432)와, 그룹 정보 추출부(440)와, 블록 복호부(410)와, 프레임 메모리(411)와, 그룹 출력부(412)와, 표시 제어부(413)를 갖는다.
동화상 복호 장치(400)가 갖는 이들 각 부는, 각각, 별개의 회로로서 동화상 복호 장치(400)에 실장된다. 혹은, 동화상 복호 장치(400)가 갖는 이들 각 부는, 그 각 부의 기능을 실현하는 회로가 집적된 하나의 집적 회로로서 동화상 복호 장치(400)에 실장되어도 좋다. 혹은 또한, 동화상 복호 장치(400)가 갖는 이들 각 부는, 동화상 복호 장치(400)가 갖는 프로세서 상에서 실행되는 컴퓨터 프로그램에 의해 실현되는 기능 모듈이어도 좋다.
《언더플로우 검출, 스트림 편집》
실시예 4에 의한 동화상 복호 장치(400)에 있어서의, 언더플로우 검출 방법 및 비트 스트림 편집 방법을 설명한다.
우선, 블록 복호부(410)는, 실시예 1의 경우와 마찬가지의 동작을 행하기로 한다. 언더플로우는, 블록 복호부(410)에 있어서 검출된다. 블록 복호부(410)는, 도시하지 않은 엔트로피 복호부로부터의 비트량 정보를 수취한다.
이때, 적어도 하나의 그룹에서, 상기의 조건 (2)에 기재하는 조건이 만족되지 않는 경우, 당해 픽처에 포함되는 그룹에서, 언더플로우가 발생했다고 검출된다. 예를 들어, 도 18에 도시한 그래프(91)에 있어서는, dgt(1)에서 언더플로우가 발생하고 있는 것을 나타내고 있다.
이때, 블록 복호부(410)는, 표시 제어부(413)에 언더플로우 발생 정보를 통지한다. 표시 제어부(413)는, 언더플로우 발생 정보를 수취함으로써 언더플로우가 발생한 것을 확인하여, 픽처의 표시를 스킵하는 처리를 행한다.
즉, 복호 시각이 dt(k)인 당해 픽처의 그룹 dgt(1)에 있어서 언더플로우가 발생한 경우, dt(k)에 픽처로서는 복호 가능한 비트량이 버퍼에 축적되어 있어도, dt(k)는 dt(k+1)에 표시된다. 또한, 원래 dt(k+1)에 표시되어야 할 픽처는 스킵된다.
예를 들어, 도 19에 나타내는 예에서는, dt(1)에 표시되어야 할 픽처는 dt(2)에 표시되고, dt(2)에 표시되어야 할 픽처는 스킵된다. 또한, 이 예에서는 복호는 순간으로 하고 또한 출력(표시)은 복호와 동시에 행할 수 있는 것으로 하고 있다.
이에 의해, 픽처의 표시를 스킵시킴으로써, 픽처의 표시 순서가 어긋나는 것을 방지할 수 있다.
<동작>
이어서, 실시예 4에 있어서의 동화상 복호 장치(400)의 동작에 대하여 설명한다. 도 22는 실시예 4에 있어서의 동화상 복호 장치(400)의 처리의 일례를 나타내는 흐름도이다.
스텝 S600에서, 블록 복호부(410)는, 수신 버퍼(405)의 버퍼 점유량에 기초하여, 그룹 단위로 언더플로우할지 여부를 확인한다.
스텝 S601에서, 블록 복호부(410)는, 그룹 단위로 언더플로우가 발생하고 있다고 판단하면, 표시 제어부(413)에 언더플로우 발생 정보를 통지한다. 표시 제어부(413)는, 언더플로우 발생 정보가 통지되면, 표시 픽처의 타이밍이 정확하도록 수정한다.
이상, 실시예 4에 의하면, 실시예 3에 있어서의 동화상 부호화 장치(300)에 의해 부호화된 부호화 데이터를 적절하게 복호할 수 있다.
<실시예 5>
도 23은 동화상 처리 장치(500)의 개략 구성의 일례를 나타내는 블록도이다. 동화상 처리 장치(500)는, 각 실시예에서 설명한 동화상 부호화 장치, 또는 동화상 복호 장치의 일례이다. 도 23에 도시한 바와 같이, 동화상 처리 장치(500)는, 제어부(501), 주기억부(502), 보조 기억부(503), 드라이브 장치(504), 네트워크 I/F부(506), 입력부(507), 표시부(508)를 포함한다. 이들 각 구성은, 버스를 통하여 서로 데이터 송수신 가능하게 접속되어 있다.
제어부(501)는, 컴퓨터 중에서, 각 장치의 제어나 데이터의 연산, 가공을 행하는 CPU이다. 또한, 제어부(501)는, 주기억부(502)나 보조 기억부(503)에 기억된 프로그램을 실행하는 연산 장치이며, 입력부(507)나 기억 장치로부터 데이터를 수취하여, 연산, 가공한 후, 표시부(508)나 기억 장치 등에 출력한다.
주기억부(502)는, ROM(Read Only Memory)이나 RAM(Random Access Memory) 등이며, 제어부(501)가 실행하는 기본 소프트웨어인 OS나 어플리케이션 소프트웨어 등의 프로그램이나 데이터를 기억 또는 일시 보존하는 기억 장치이다.
보조 기억부(503)는, HDD(Hard Disk Drive) 등이며, 어플리케이션 소프트웨어 등에 관련된 데이터를 기억하는 기억 장치이다.
드라이브 장치(504)는, 기록 매체(505), 예를 들어 플렉시블 디스크로부터 프로그램을 판독하여, 기억 장치에 인스톨한다.
또한, 기록 매체(505)는, 소정의 프로그램을 저장한다. 이 기록 매체(505)에 저장된 프로그램은, 드라이브 장치(504)를 통하여 동화상 처리 장치(500)에 인스톨된다. 인스톨된 소정의 프로그램은, 동화상 처리 장치(500)에 의해 실행 가능하게 된다.
네트워크 I/F부(506)는, 유선 및/또는 무선 회선 등의 데이터 전송로에 의해 구축된 LAN(Local Area Network), WAN(Wide Area Network) 등의 네트워크를 통하여 접속된 통신 기능을 갖는 주변 기기와 동화상 처리 장치(500)의 인터페이스이다.
입력부(507)는, 커서 키, 숫자 입력 및 각종 기능키 등을 구비한 키보드, 표시부(508)의 표시 화면 상에서 키의 선택 등을 행하기 위한 마우스나 슬라이드 패드 등을 갖는다. 또한, 입력부(507)는, 유저가 제어부(501)에 조작 지시를 내리거나, 데이터를 입력하거나 하기 위한 사용자 인터페이스이다.
표시부(508)는, LCD(Liquid Crystal Display) 등을 갖고, 제어부(501)로부터 입력되는 표시 데이터에 따른 표시가 행해진다. 또한, 표시부(508)는, 외부에 설치되어도 좋고, 그 경우는, 동화상 처리 장치(500)는, 표시 제어부를 갖는다.
이와 같이, 전술한 각 실시예에서 설명한 동화상 부호화 처리 또는 동화상 복호 장치는, 컴퓨터에 실행시키기 위한 프로그램으로서 실현되어도 좋다. 이 프로그램을 서버 등으로부터 인스톨하여 컴퓨터에 실행시킴으로써, 전술한 동화상 부호화 처리 또는 동화상 복호 장치를 실현할 수 있다.
또한, 이 동화상 부호화 프로그램 또는 동화상 복호 프로그램을 기록 매체(505)에 기록하고, 이 프로그램이 기록된 기록 매체(505)를 컴퓨터나 휴대 단말기에 판독시켜 전술한 처리를 실현시키는 것도 가능하다.
또한, 기록 매체(505)는, CD-ROM, 플렉시블 디스크, 광자기 디스크 등과 같이 정보를 광학적, 전기적 혹은 자기적으로 기록하는 기록 매체, ROM, 플래시 메모리 등과 같이 정보를 전기적으로 기록하는 반도체 메모리 등, 여러 타입의 기록 매체를 사용할 수 있다. 또한, 기록 매체(505)에는, 반송파는 포함되지 않는다.
동화상 처리 장치(500)에 의해 실행되는 프로그램은, 각 실시예에서 설명한 각 부를 포함하는 모듈 구성으로 되어 있다. 실제의 하드웨어로서는, 제어부(501)가 보조 기억부(503)로부터 프로그램을 판독하여 실행함으로써 상기 각 부 중 1개 또는 복수의 각 부가 주기억부(502) 상에 로드되어, 1개 또는 복수의 각 부가 주기억부(502) 상에 생성되도록 되어 있다.
또한, 전술한 각 실시예에서 설명한 동화상 부호화 처리는, 1개 또는 복수의 집적 회로에 실장해도 좋다.
상술한 각 실시예에 의한 동화상 부호화 장치는, 여러 용도에 이용된다. 예를 들어, 이 동화상 부호화 장치 또는 동화상 복호 장치는, 비디오 카메라, 영상 송신 장치, 영상 수신 장치, 텔레비전 전화 시스템, 컴퓨터 혹은 휴대 전화기에 내장된다.
여기에 예시한 모든 예 및 특정한 용어는, 독자가, 본 발명 및 당해 기술의 촉진에 대한 본 발명자에 의해 기여된 개념을 이해하는 것을 돕는, 교시적인 목적에 있어서 의도된 것이며, 본 발명의 우위성 및 열등성을 나타내는 것에 관한, 본 명세서의 어떤 예의 구성, 그러한 특정하게 예시한 예 및 조건에 한정하지 않도록 해석되어야 할 것이다. 본 발명의 실시 형태는 상세하게 설명되어 있지만, 본 발명의 정신 및 범위로부터 벗어나지 않고, 여러 변형, 치환 및 수정을 이것에 가하는 것이 가능한 것이 이해되길 바란다.
이상, 각 실시예에 대하여 상세하게 설명했지만, 특정한 실시예에 한정되는 것은 아니며, 특허 청구 범위에 기재된 범위 내에 있어서, 다양한 변형 및 변경이 가능하다. 또한, 전술한 실시예의 구성 요소를 전부 또는 복수를 조합하는 것도 가능하다.
또한, 이상의 각 실시예에 관한 것으로, 이하의 부기를 더 개시한다.
(부기 1)
동화상 데이터에 포함되는 각 픽처를 복수의 블록으로 분할하여 부호화하는 동화상 부호화 장치로서,
복수의 블록에 대하여, 각 블록이 속하는 그룹을 결정하는 그룹 구성 결정부와,
상기 각 블록이 속하는 그룹 정보를 출력 스트림에 부가하는 그룹 정보 부가부와,
상기 그룹마다 복호 시각을 산출하여 출력 스트림에 부가하는 복호 시각 결정부와,
상기 그룹마다 표시 시각을 산출하여 출력 스트림에 부가하는 출력 시각 결정부와,
그룹에 포함되는 모든 블록의 복호에 필요한 데이터가, 소정의 전송 레이트로 복호 장치에 전송된 경우에, 상기 출력 시각 결정부로부터 산출된 표시 시각에 의해 표현되는 시각까지 복호 장치의 수신 버퍼에 도달하도록 부호량을 제어하는 부호량 제어부와,
상기 부호 길이 제어 수단의 제어 정보에 기초하여 부호화를 행하는 부호화 처리부와,
그룹에 포함되는 모든 블록의 복호에 필요한 데이터가 상기 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않는 경우에는, 다음 픽처의 최초의 데이터가 상기 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않도록 제어하는 정보량 제어부를 구비하는 동화상 부호화 장치.
(부기 2)
동화상 데이터에 포함되는 각 픽처를 복수의 블록으로 분할하여 부호화하는 동화상 부호화 방법으로서,
복수의 블록에 대하여, 각 블록이 속하는 그룹을 결정하고,
상기 각 블록이 속하는 그룹 정보를 출력 스트림에 부가하고,
상기 그룹마다 복호 시각을 산출하여 출력 스트림에 부가하고,
상기 그룹마다 표시 시각을 산출하여 출력 스트림에 부가하고,
그룹에 포함되는 모든 블록의 복호에 필요한 데이터가, 소정의 전송 레이트로 복호 장치에 전송된 경우에, 상기 표시 시각에 의해 표현되는 시각까지 복호 장치의 수신 버퍼에 도달하도록 부호량을 제어하고,
상기 제어된 부호량에 기초하여 부호화를 행하고,
그룹에 포함되는 모든 블록의 복호에 필요한 데이터가 상기 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않는 경우에는, 다음 픽처의 최초의 데이터가 상기 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않도록 정보량을 제어하는 처리를 컴퓨터가 실행하는 동화상 부호화 방법.
(부기 3)
동화상 데이터에 포함되는 각 픽처를 복수의 블록으로 분할하여 부호화한 부호화 데이터를 나타내는 입력 스트림을 복호하는 동화상 복호 장치로서,
상기 입력 스트림으로부터 그룹 정보를 추출하는 그룹 정보 추출부와,
그룹마다 복호 시각 정보를 산출하는 복호 시각 산출부와,
상기 그룹마다 출력 시각을 산출하는 출력 시각 산출부와,
상기 입력 스트림을 수취하고, 복호를 행하여, 복호 블록을 출력하는 블록 복호부와,
상기 복호 블록을 보존하는 프레임 메모리와,
상기 프레임 메모리에 보존된 상기 그룹 내의 각 복호 블록을 출력하는 그룹 출력부와,
상기 그룹의 표시를 제어하는 표시 제어부를 구비하고,
상기 블록 복호부는, 상기 그룹의 복호 시각에 복호에 필요한 전체 데이터가 도달하고 있는지 여부를 확인하고,
상기 표시 제어부는, 상기 그룹의 복호 시각에 복호에 필요한 전체 데이터가 도달하지 않는 경우에는, 해당 그룹의 각 복호 블록 대신에 상기 프레임 메모리에 보존된 다른 복호 블록을 표시하도록 그룹 출력부를 제어하는 동화상 복호 장치.
(부기 4)
동화상 데이터에 포함되는 각 픽처를 복수의 블록으로 분할하여 부호화한 부호화 데이터를 나타내는 입력 스트림을 복호하는 동화상 복호 방법으로서,
상기 입력 스트림으로부터 그룹 정보를 추출하고,
그룹마다 복호 시각 정보를 산출하고,
상기 그룹마다 출력 시각을 산출하고,
상기 출력 스트림을 수취하고, 복호를 행하여, 복호 블록을 출력하고,
상기 복호 블록을 프레임 메모리에 보존하고,
상기 프레임 메모리에 보존된 상기 그룹 내의 각 복호 블록을 출력하고,
상기 그룹의 표시를 제어하는 처리를 컴퓨터가 실행하고,
상기 복호를 행하는 처리는, 상기 그룹의 복호 시각에 복호에 필요한 전체 데이터가 도달하고 있는지 여부를 확인하고,
상기 표시를 제어하는 처리는, 상기 그룹의 복호 시각에 복호에 필요한 전체 데이터가 도달하지 않은 경우에는, 해당 그룹의 각 복호 블록 대신에 상기 프레임 메모리에 보존된 다른 복호 블록을 표시하도록 제어하는 동화상 복호 방법.
100, 300: 동화상 부호화 장치
200, 400: 동화상 복호 장치
500: 동화상 처리 장치
110: 부호화 처리부
120: 부호량 제어부
130: 그룹 결정부
140: 복호 시각 결정부
142: 그룹 복호 지연 결정부
143: 그룹 복호 지연 정보 부가부
150: 출력 시각 결정부
152: 그룹 출력 지연 결정부
153: 그룹 출력 지연 정보 부가부
210: 블록 복호부
212: 그룹 출력부
221: 그룹 복호 지연 정보 추출부
222: 그룹 복호 시각 산출부
231: 그룹 출력 지연 정보 추출부
232: 그룹 출력 시각 산출부
324: 필러 부가부
413: 표시 제어부

Claims (8)

  1. 동화상 데이터에 포함되는 각 픽처를 복수의 블록으로 분할하여 부호화하며, 부호화된 부호화 데이터를 나타내는 입력 스트림을 취득하여 복호하는 부호화 복호화 시스템으로서,
    복수의 블록에 대하여, 각 블록이 속하는 그룹을 결정하는 그룹 구성 결정부와,
    상기 각 블록이 속하는 그룹 정보를 출력 스트림에 부가하는 그룹 정보 부가부와,
    상기 그룹마다 복호 시각을 산출하여 출력 스트림에 부가하는 복호 시각 결정부와,
    상기 그룹마다 표시 시각을 산출하여 출력 스트림에 부가하는 출력 시각 결정부와,
    그룹에 포함되는 전체 블록의 복호에 필요한 데이터가, 소정의 전송 레이트로 복호 장치에 전송된 경우에, 상기 출력 시각 결정부로부터 산출된 표시 시각에 의해 표현되는 시각까지 복호 장치의 수신 버퍼에 도달하도록 부호량을 제어하는 부호량 제어부와,
    상기 부호량 제어부의 제어 정보에 기초하여 부호화를 행하는 부호화 처리부와,
    그룹에 포함되는 전체 블록의 복호에 필요한 데이터가 상기 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않는 경우에는, 해당 픽처의 정보량을 늘리는 것에 의해, 다음 픽처의 최초의 데이터가 상기 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않도록 제어하는 정보량 제어부
    를 구비한 동화상 부호화 장치에 의해 부호화를 행하고,
    상기 입력 스트림으로부터, 복수의 각 블록을 소정의 간격으로 분할한 그룹을 나타내는 그룹 정보를 추출하는 그룹 정보 추출부와,
    그룹마다 복호 시각 정보를 산출하는 복호 시각 산출부와,
    상기 그룹마다 출력 시각을 산출하는 출력 시각 산출부와,
    상기 출력 스트림을 수취하고, 복호 블록의 비트량 정보와 상기 그룹마다 산출되는 복호 시각 정보에 기초하여 상기 그룹의 복호 시각에 복호에 필요한 전체 데이터가 도달하고 있는지를 확인하는 것과 함께, 복호를 행하여, 복호 블록을 출력하는 블록 복호부와,
    상기 복호 블록을 보존하는 프레임 메모리와,
    상기 프레임 메모리에 보존된 상기 그룹 내의 각 복호 블록을 출력하는 그룹 출력부와,
    상기 그룹의 복호 시각에 그룹의 복호에 필요한 전체 데이터가 도달하고 있지 않은 경우, 해당 그룹을 포함하는 픽처의 각 복호 블록 대신에, 상기 프레임 메모리에 보존된 다른 복호 블록을 표시하도록 그룹 출력부를 제어하는 표시 제어부
    를 구비한 동화상 복호 장치에 의해 복호를 행하는 부호화 복호화 시스템.
  2. 동화상 데이터에 포함되는 각 픽처를 복수의 블록으로 분할하여 부호화하며, 부호화된 부호화 데이터를 나타내는 입력 스트림을 취득하여 복호하는 부호화 복호화 방법으로서,
    복수의 블록에 대하여, 각 블록이 속하는 그룹을 결정하고,
    상기 각 블록이 속하는 그룹 정보를 출력 스트림에 부가하고,
    상기 그룹마다 복호 시각을 산출하여 출력 스트림에 부가하고,
    상기 그룹마다 표시 시각을 산출하여 출력 스트림에 부가하고,
    그룹에 포함되는 전체 블록의 복호에 필요한 데이터가, 소정의 전송 레이트로 복호 장치에 전송된 경우에, 출력 시각 결정부로부터 산출된 표시 시각에 의해 표현되는 시각까지 복호 장치의 수신 버퍼에 도달하도록 부호량을 제어하고,
    부호량 제어부의 제어 정보에 기초하여 부호화를 행하고,
    그룹에 포함되는 전체 블록의 복호에 필요한 데이터가 상기 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않는 경우에는, 해당 픽처의 정보량을 늘리는 것에 의해, 다음 픽처의 최초의 데이터가 상기 표시 시각까지 복호 장치의 수신 버퍼에 도달하지 않도록 제어하는 처리를 동화상 부호화 장치에 의해 실행하고,
    상기 입력 스트림으로부터, 복수의 각 블록을 소정의 간격으로 분할한 그룹을 나타내는 그룹 정보를 추출하고,
    그룹마다 복호 시각 정보를 산출하고,
    상기 그룹마다 출력 시각을 산출하고,
    상기 출력 스트림을 수취하고, 복호 블록의 비트량 정보와 상기 그룹마다 산출되는 복호 시각 정보에 기초하여 상기 그룹의 복호 시각에 복호에 필요한 전체 데이터가 도달하고 있는지를 확인하는 것과 함께, 복호를 행하여, 복호 블록을 출력하고,
    상기 복호 블록을 프레임 메모리에 보존하고,
    상기 프레임 메모리에 보존된 상기 그룹 내의 각 복호 블록을 출력하고,
    상기 그룹의 복호 시각에 그룹의 복호에 필요한 전체 데이터가 도달하고 있지 않은 경우, 해당 그룹을 포함하는 픽처의 각 복호 블록 대신에, 상기 프레임 메모리에 보존된 다른 복호 블록을 표시하도록 그룹 출력부를 제어하는 처리를 동화상 복호 장치에 의해 실행하는, 부호화 복호화 방법.
  3. 동화상 데이터에 포함되는 각 픽처를 복수의 블록으로 분할하여 부호화한 부호화 데이터를 나타내는 입력 스트림을 복호하는 동화상 복호 장치로서,
    상기 입력 스트림으로부터, 픽처 내의 그룹수와 각 그룹 내의 블록 정보를 포함하는 그룹 정보를 추출하는 그룹 정보 추출부와,
    상기 입력 스트림으로부터 그룹 복호 지연 정보를 추출하는 그룹 복호 지연 정보 추출부와,
    상기 입력 스트림으로부터 그룹 출력 지연 정보를 추출하는 그룹 출력 지연 정보 추출부와,
    상기 그룹 정보 및 상기 그룹 복호 지연 정보에 기초하여 그룹마다 복호 시각 정보를 산출하는 복호 시각 산출부와,
    상기 그룹 정보 및 상기 그룹 출력 지연 정보에 기초하여 상기 그룹마다 출력 시각을 산출하는 출력 시각 산출부와,
    상기 입력 스트림을 수취하고, 복호를 행하여, 복호 블록을 출력하는 블록 복호부와,
    상기 복호 블록을 보존하는 프레임 메모리와,
    상기 프레임 메모리에 보존된 상기 그룹 내의 각 복호 블록을 출력하는 그룹 출력부와,
    상기 그룹의 표시를 제어하는 표시 제어부를 구비하고,
    상기 블록 복호부는, 상기 그룹의 복호 시각에 그룹의 복호에 필요한 전체 데이터가 도달하고 있는지 여부를, 상기 그룹 정보에 기초하여 취득되는 블록 정보에 의해 확인하고,
    상기 표시 제어부는, 상기 그룹의 복호 시각에 복호에 필요한 전체 데이터가 도달하지 않는 경우에는, 해당 그룹의 각 복호 블록 대신에, 상기 프레임 메모리에 보존된 다른 복호 블록을 표시하도록 그룹 출력부를 제어하는, 동화상 복호 장치.
  4. 동화상 데이터에 포함되는 각 픽처를 복수의 블록으로 분할하여 부호화한 부호화 데이터를 나타내는 입력 스트림을 복호하는 동화상 복호 방법으로서,
    상기 입력 스트림으로부터 픽처 내의 그룹 수와 각 그룹 내의 블록 정보를 포함하는 그룹 정보를 추출하고,
    상기 입력 스트림으로부터 그룹 복호 지연 정보를 추출하고,
    상기 입력 스트림으로부터 그룹 출력 지연 정보를 추출하고,
    상기 그룹 정보 및 상기 그룹 복호 지연 정보에 기초하여 그룹마다 복호 시각 정보를 산출하고,
    상기 그룹 정보 및 상기 그룹 출력 지연 정보에 기초하여 상기 그룹마다 출력 시각을 산출하고,
    상기 입력 스트림을 수취하고, 복호를 행하여, 복호 블록을 출력하고,
    상기 복호 블록을 프레임 메모리에 보존하고,
    상기 프레임 메모리에 보존된 상기 그룹 내의 각 복호 블록을 출력하고,
    상기 그룹의 표시를 제어하는 처리를 컴퓨터가 실행하고,
    상기 복호를 행하는 처리는, 상기 그룹의 복호 시각에 그룹의 복호에 필요한 전체 데이터가 도달하고 있는지 여부를, 상기 그룹 정보에 기초하여 취득되는 블록 정보에 의해 확인하고,
    상기 표시를 제어하는 처리는, 상기 그룹의 복호 시각에 복호에 필요한 전체 데이터가 도달하지 않는 경우에는, 해당 그룹의 각 복호 블록 대신에 상기 프레임 메모리에 보존된 다른 복호 블록을 표시하도록 제어하는 동화상 복호 방법.
  5. 동화상 데이터에 포함되는 각 픽처를 복수의 블록으로 분할하여 부호화한 부호화 데이터를 나타내는 입력 스트림을 복호하는 동화상 복호 장치로서,
    상기 입력 스트림으로부터 픽처 내의 그룹 수와 각 그룹 내의 블록 정보를 포함하는 그룹 정보를 추출하는 그룹 정보 추출부와,
    상기 입력 스트림으로부터 그룹 복호 지연 정보를 추출하는 그룹 복호 지연 정보 추출부와,
    상기 입력 스트림으로부터 그룹 출력 지연 정보를 추출하는 그룹 출력 지연 정보 추출부와,
    상기 그룹 정보 및 상기 그룹 복호 지연 정보에 기초하여 그룹마다 복호 시각 정보를 산출하는 복호 시각 산출부와,
    상기 그룹 정보 및 상기 그룹 출력 지연 정보에 기초하여 상기 그룹마다 출력 시각을 산출하는 출력 시각 산출부와,
    상기 입력 스트림을 수취하고, 복호를 행하여, 복호 블록을 출력하는 블록 복호부와,
    상기 복호 블록을 보존하는 프레임 메모리와,
    상기 프레임 메모리에 보존된 상기 그룹 내의 각 복호 블록을 출력하는 그룹 출력부와,
    상기 그룹의 표시를 제어하는 표시 제어부를 구비하고,
    상기 블록 복호부는, 그룹의 복호 시각에 그룹의 복호에 필요한 전체 데이터가 도달하고 있는지 여부를, 상기 그룹 정보에 기초하여 취득되는 불록 정보에 의해 확인하고,
    상기 표시 제어부는, 상기 그룹의 복호 시각에 복호에 필요한 전체 데이터가 도달하지 않는 경우에는, 해당 그룹의 각 복호 블록의 표시 시각을 1 프레임만큼 늦추어 표시하도록 그룹 출력부를 제어하는, 동화상 복호 장치.
  6. 동화상 데이터에 포함되는 각 픽처를 복수의 블록으로 분할하여 부호화한 부호화 데이터를 나타내는 입력 스트림을 복호하는 동화상 복호 방법으로서,
    상기 입력 스트림으로부터 픽처 내의 그룹 수와 각 그룹 내의 블록 정보를 포함하는 그룹 정보를 추출하고,
    상기 입력 스트림으로부터 그룹 복호 지연 정보를 추출하고,
    상기 입력 스트림으로부터 그룹 출력 지연 정보를 추출하고,
    상기 그룹 정보 및 상기 그룹 복호 지연 정보에 기초하여 그룹마다 복호 시각 정보를 산출하고,
    상기 그룹 정보 및 상기 그룹 출력 지연 정보에 기초하여 상기 그룹마다 출력 시각을 산출하고,
    상기 입력 스트림을 수취하고, 복호를 행하여, 복호 블록을 출력하고,
    상기 복호 블록을 프레임 메모리에 보존하고,
    상기 프레임 메모리에 보존된 상기 그룹 내의 각 복호 블록을 출력하고,
    상기 그룹의 표시를 제어하는 처리를 컴퓨터가 실행하고,
    상기 복호를 행하는 처리는, 그룹의 복호 시각에 그룹의 복호에 필요한 전체 데이터가 도달하고 있는지 여부를, 상기 그룹 정보에 기초하여 취득되는 블록 정보에 의해 확인하고,
    상기 표시를 제어하는 처리는, 상기 그룹의 복호 시각에 복호에 필요한 전체 데이터가 도달하지 않는 경우에는, 해당 그룹의 각 복호 블록의 표시 시각을 1 프레임만큼 늦추어 표시하도록 제어하는 동화상 복호 방법.
  7. 동화상 데이터에 포함되는 각 픽처를 복수의 블록으로 분할하여 부호화한 부호화 데이터를 나타내는 입력 스트림을 복호하는 동화상 복호 장치로서,
    상기 입력 스트림으로부터 픽처 내의 그룹 수와 각 그룹 내의 블록 정보를 포함하는 그룹 정보를 추출하는 그룹 정보 추출부와,
    상기 입력 스트림으로부터 그룹 복호 지연 정보를 추출하는 그룹 복호 지연 정보 추출부와,
    상기 입력 스트림으로부터 그룹 출력 지연 정보를 추출하는 그룹 출력 지연 정보 추출부와,
    상기 그룹 정보 및 상기 그룹 복호 지연 정보에 기초하여 그룹마다 복호 시각 정보를 산출하는 복호 시각 산출부와,
    상기 그룹 정보 및 상기 그룹 출력 지연 정보에 기초하여 상기 그룹마다 출력 시각을 산출하는 출력 시각 산출부와,
    상기 입력 스트림을 수취하고, 복호를 행하여, 복호 블록을 출력하는 블록 복호부와,
    상기 복호 블록을 보존하는 프레임 메모리와,
    상기 프레임 메모리에 보존된 상기 그룹 내의 각 복호 블록을 출력하는 그룹 출력부와,
    상기 그룹의 표시를 제어하는 표시 제어부를 구비하고,
    상기 블록 복호부는, 상기 그룹의 복호 시각에 그룹의 복호에 필요한 전체 데이터가 도달하고 있는지 여부를, 상기 그룹 정보에 기초하여 취득되는 블록 정보에 의해 확인하고,
    상기 표시 제어부는, 상기 그룹의 복호 시각에 복호에 필요한 전체 데이터가 도달하지 않는 경우에는, 해당 그룹의 각 복호 블록의 표시 시각을 1 프레임만큼 늦추고, 또한, 다음 프레임에서 표시할 예정의 프레임 데이터의 표시를 스킵하도록 그룹 출력부를 제어하는, 동화상 복호 장치.
  8. 동화상 데이터에 포함되는 각 픽처를 복수의 블록으로 분할하여 부호화한 부호화 데이터를 나타내는 입력 스트림을 복호하는 동화상 복호 방법으로서,
    상기 입력 스트림으로부터 픽처 내의 그룹 수와 각 그룹 내의 블록 정보를 포함하는 그룹 정보를 추출하고,
    상기 입력 스트림으로부터 그룹 복호 지연 정보를 추출하고,
    상기 입력 스트림으로부터 그룹 출력 지연 정보를 추출하고,
    상기 그룹 정보 및 상기 그룹 복호 지연 정보에 기초하여 그룹마다 복호 시각 정보를 산출하고,
    상기 그룹 정보 및 상기 그룹 출력 지연 정보에 기초하여 상기 그룹마다 출력 시각을 산출하고,
    상기 입력 스트림을 수취하고, 복호를 행하여, 복호 블록을 출력하고,
    상기 복호 블록을 프레임 메모리에 보존하고,
    상기 프레임 메모리에 보존된 상기 그룹 내의 각 복호 블록을 출력하고,
    상기 그룹의 표시를 제어하는 처리를 컴퓨터가 실행하고,
    상기 복호를 행하는 처리는, 상기 그룹의 복호 시각에 그룹의 복호에 필요한 전체 데이터가 도달하고 있는지 여부를, 상기 그룹 정보에 기초하여 취득되는 블록 정보에 의해 확인하고,
    상기 표시를 제어하는 처리는, 상기 그룹의 복호 시각에 복호에 필요한 전체 데이터가 도달하지 않는 경우에는, 해당 그룹의 각 복호 블록의 표시 시각을 1 프레임만큼 늦추고, 또한, 다음 프레임에서 표시할 예정의 프레임 데이터의 표시를 스킵하도록 제어하는 동화상 복호 방법.
KR1020160024336A 2012-04-27 2016-02-29 동화상 복호 장치 및 동화상 복호 방법 KR101697456B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012104003A JP5994367B2 (ja) 2012-04-27 2012-04-27 動画像符号化装置、動画像符号化方法
JPJP-P-2012-104003 2012-04-27

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020130045248A Division KR20130121733A (ko) 2012-04-27 2013-04-24 동화상 부호화 장치, 동화상 부호화 방법, 동화상 복호 장치 및 동화상 복호 방법

Publications (2)

Publication Number Publication Date
KR20160031469A KR20160031469A (ko) 2016-03-22
KR101697456B1 true KR101697456B1 (ko) 2017-02-01

Family

ID=48190102

Family Applications (5)

Application Number Title Priority Date Filing Date
KR1020130045248A KR20130121733A (ko) 2012-04-27 2013-04-24 동화상 부호화 장치, 동화상 부호화 방법, 동화상 복호 장치 및 동화상 복호 방법
KR1020140097202A KR20140106483A (ko) 2012-04-27 2014-07-30 동화상 복호 장치 및 동화상 복호 방법
KR1020140097198A KR101461856B1 (ko) 2012-04-27 2014-07-30 동화상 부호화 장치 및 동화상 부호화 방법
KR1020140097205A KR20140106484A (ko) 2012-04-27 2014-07-30 동화상 복호 장치 및 동화상 복호 방법
KR1020160024336A KR101697456B1 (ko) 2012-04-27 2016-02-29 동화상 복호 장치 및 동화상 복호 방법

Family Applications Before (4)

Application Number Title Priority Date Filing Date
KR1020130045248A KR20130121733A (ko) 2012-04-27 2013-04-24 동화상 부호화 장치, 동화상 부호화 방법, 동화상 복호 장치 및 동화상 복호 방법
KR1020140097202A KR20140106483A (ko) 2012-04-27 2014-07-30 동화상 복호 장치 및 동화상 복호 방법
KR1020140097198A KR101461856B1 (ko) 2012-04-27 2014-07-30 동화상 부호화 장치 및 동화상 부호화 방법
KR1020140097205A KR20140106484A (ko) 2012-04-27 2014-07-30 동화상 복호 장치 및 동화상 복호 방법

Country Status (9)

Country Link
US (5) US20130287118A1 (ko)
EP (2) EP3217666B1 (ko)
JP (1) JP5994367B2 (ko)
KR (5) KR20130121733A (ko)
CN (5) CN105812810A (ko)
BR (1) BR102013010166A2 (ko)
CA (2) CA2812653C (ko)
MX (3) MX341030B (ko)
TW (1) TWI477124B (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10237321B2 (en) * 2012-10-18 2019-03-19 Vid Scale, Inc Decoding complexity for mobile multimedia streaming
EP2988466B1 (en) * 2014-08-18 2017-05-24 Alcatel Lucent Methods and devices for transmission of media content
CN108694995B (zh) * 2015-12-17 2020-10-20 广州宝荣科技应用有限公司 一种医疗诊断系统及方法
JP6288129B2 (ja) * 2016-03-07 2018-03-07 富士通株式会社 動画像復号装置及び動画像復号方法
CN110073269B (zh) 2016-12-20 2022-03-01 Ev 集团 E·索尔纳有限责任公司 用于曝光光敏层的设备和方法
US11460777B2 (en) 2016-12-20 2022-10-04 Ev Group E. Thallner Gmbh Method and device for exposure of photosensitive layer
US10666955B2 (en) * 2017-02-23 2020-05-26 Panasonic Intellectual Property Management, Co., Ltd. Still image generating apparatus and information recording medium used in still image generating apparatus
CN112839229A (zh) * 2019-11-25 2021-05-25 合肥杰发科技有限公司 计算解码耗时的方法、计算编码耗时的方法及其相关装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008032660A1 (en) * 2006-09-11 2008-03-20 Panasonic Corporation Image decoding device, image decoding method, image decoding system, and system lsi
JP2010232720A (ja) * 2009-03-25 2010-10-14 Toshiba Corp 画像符号化方法および画像復号化方法
WO2012042916A1 (ja) 2010-09-30 2012-04-05 富士通株式会社 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3969776B2 (ja) * 1997-01-21 2007-09-05 沖電気工業株式会社 伝送画像復号装置
DE60123664D1 (de) * 2001-01-22 2006-11-16 St Microelectronics Asia Verfahren und gerät zur regelung der über-/unterlaufvermeidung eines virtuellen speichers
JP4276420B2 (ja) 2002-11-05 2009-06-10 三菱電機株式会社 動き補償方法
US7020201B2 (en) * 2002-11-20 2006-03-28 National Chiao Tung University Method and apparatus for motion estimation with all binary representation
US7047991B2 (en) * 2002-12-10 2006-05-23 J.T. Posey Company Bed enclosure
US7266147B2 (en) * 2003-03-31 2007-09-04 Sharp Laboratories Of America, Inc. Hypothetical reference decoder
JP4379779B2 (ja) * 2003-04-28 2009-12-09 Kddi株式会社 映像配信方式
FR2872974A1 (fr) * 2004-07-06 2006-01-13 Thomson Licensing Sa Procede ou dispositif de codage adaptatif
US7234825B2 (en) * 2004-07-29 2007-06-26 Wei Meng Curved rearview system for vehicles
US20060104351A1 (en) * 2004-11-15 2006-05-18 Shu-Wen Teng Video/image processing devices and methods
WO2007058113A1 (ja) * 2005-11-21 2007-05-24 Pioneer Corporation デジタル放送受信用の信号処理装置、信号処理方法および信号処理プログラム並びにデジタル放送受信装置
TW200619985A (en) * 2006-03-03 2006-06-16 Univ Chang Gung A new cellular search algorithm of video image coding
JP4762052B2 (ja) * 2006-05-31 2011-08-31 パナソニック株式会社 ストリームデータ処理装置及びストリームデータ処理方法
JP5162939B2 (ja) * 2007-03-30 2013-03-13 ソニー株式会社 情報処理装置および方法、並びにプログラム
KR100923961B1 (ko) * 2007-07-09 2009-10-29 세종대학교산학협력단 저지연 영상 통신 시스템 및 방법
US7650455B2 (en) * 2007-07-27 2010-01-19 International Business Machines Corporation Spider web interconnect topology utilizing multiple port connection
JP2009105477A (ja) * 2007-10-19 2009-05-14 Canon Inc 再生装置及び再生方法
JP2009111932A (ja) * 2007-10-31 2009-05-21 Panasonic Corp 動画像復号化装置
US8467444B2 (en) * 2008-06-16 2013-06-18 Canon Kabushiki Kaisha Information processing system, information processing apparatus, information processing method, and program
JP2010166140A (ja) * 2009-01-13 2010-07-29 Hitachi Kokusai Electric Inc 画像復号装置および画像データ出力方法
JP5343703B2 (ja) * 2009-05-22 2013-11-13 ソニー株式会社 復号処理装置、復号処理方法、およびプログラム
JP2011217082A (ja) * 2010-03-31 2011-10-27 Jvc Kenwood Corp 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラム
JP5521940B2 (ja) * 2010-09-22 2014-06-18 富士通株式会社 符号化方法、復号化方法、符号化装置及び復号化装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008032660A1 (en) * 2006-09-11 2008-03-20 Panasonic Corporation Image decoding device, image decoding method, image decoding system, and system lsi
JP2010232720A (ja) * 2009-03-25 2010-10-14 Toshiba Corp 画像符号化方法および画像復号化方法
WO2012042916A1 (ja) 2010-09-30 2012-04-05 富士通株式会社 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム

Also Published As

Publication number Publication date
KR101461856B1 (ko) 2014-11-14
US20130287118A1 (en) 2013-10-31
US20170054981A1 (en) 2017-02-23
BR102013010166A2 (pt) 2015-06-30
CN105744276A (zh) 2016-07-06
CA2812653A1 (en) 2013-10-27
CA2812653C (en) 2018-02-20
EP2658257A2 (en) 2013-10-30
CN105812809B (zh) 2018-12-07
CA2899536C (en) 2017-11-07
EP3217666A1 (en) 2017-09-13
EP2658257B1 (en) 2019-08-28
KR20140106482A (ko) 2014-09-03
CN105744276B (zh) 2019-03-01
EP3217666B1 (en) 2019-09-04
CN103379337B (zh) 2016-08-03
MX2013004678A (es) 2013-10-28
EP2658257A3 (en) 2014-09-03
US20170054980A1 (en) 2017-02-23
CN105812809A (zh) 2016-07-27
KR20140106483A (ko) 2014-09-03
TW201345270A (zh) 2013-11-01
MX364616B (es) 2019-05-02
CN103379337A (zh) 2013-10-30
US20170054978A1 (en) 2017-02-23
KR20130121733A (ko) 2013-11-06
CA2899536A1 (en) 2013-10-27
KR20140106484A (ko) 2014-09-03
CN105812808A (zh) 2016-07-27
US20170054979A1 (en) 2017-02-23
TWI477124B (zh) 2015-03-11
KR20160031469A (ko) 2016-03-22
MX341030B (es) 2016-08-03
JP2013232801A (ja) 2013-11-14
MX344920B (es) 2017-01-10
JP5994367B2 (ja) 2016-09-21
CN105812810A (zh) 2016-07-27

Similar Documents

Publication Publication Date Title
KR101697456B1 (ko) 동화상 복호 장치 및 동화상 복호 방법
US9648337B2 (en) Video image encoding device and video image encoding method
JP6234659B2 (ja) 動画像復号装置
JP5772623B2 (ja) 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム
JP6194973B2 (ja) 動画像復号装置及び動画像復号方法
JP6394766B2 (ja) 動画像符号化装置及び動画像符号化方法
JP6146502B2 (ja) 動画像符号化復号システム及び動画像符号化復号方法
JP6249040B2 (ja) 動画像復号方法
JP6194974B2 (ja) 動画像復号装置及び動画像復号方法
JP6164324B2 (ja) 動画像復号方法
JP6288129B2 (ja) 動画像復号装置及び動画像復号方法

Legal Events

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

Payment date: 20191217

Year of fee payment: 4