KR101157059B1 - 복호 장치 및 복호 방법 - Google Patents

복호 장치 및 복호 방법 Download PDF

Info

Publication number
KR101157059B1
KR101157059B1 KR1020117005996A KR20117005996A KR101157059B1 KR 101157059 B1 KR101157059 B1 KR 101157059B1 KR 1020117005996 A KR1020117005996 A KR 1020117005996A KR 20117005996 A KR20117005996 A KR 20117005996A KR 101157059 B1 KR101157059 B1 KR 101157059B1
Authority
KR
South Korea
Prior art keywords
data
cabac
macroblock
output
information
Prior art date
Application number
KR1020117005996A
Other languages
English (en)
Other versions
KR20110044298A (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 KR20110044298A publication Critical patent/KR20110044298A/ko
Application granted granted Critical
Publication of KR101157059B1 publication Critical patent/KR101157059B1/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/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/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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • 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/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/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/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

Abstract

일정한 처리 시간을 보증하는 화상 정보 부호화 장치 및 복호화 장치를 제공한다. CABAC 부호화부 및 복호화부로부터 입출력되는 데이터의 양을, 하나의 픽처, 슬라이스, 매크로블록 또는 블록 등의 부호화 단위를 기초로 하여 제한하고, 비압축된 화상 데이터를 부호화함으로써, 일정한 처리 시간을 보증하는 화상 정보 부호화 장치 및 복호화 장치를 제공할 수 있다. 이에 의하면, 처리 시간을 보증할 수 있는 장치를 실장할 수 있다.

Description

복호 장치 및 복호 방법 {DECODING APPARATUS AND DECODING METHOD}
본 발명은 최근에 개발된 표준 JVT(ITU-T Rec.H.264|ISO/IEC 14496-10 AVC) 등의 형태로, 이산 코사인 변환 또는 카루넨 루베 변환(Karhunen Loeve transformation) 등의 직교 변환(orthogonal transformation)과 움직임 보상(motion compensation)에 의해 압축된 화상 정보(비트 스트림)를, 위성방송, 케이블 TV 또는 인터넷 등의 네트워크 미디어를 통하여 수신할 때, 또는 광디스크, 자기 디스크 또는 플래시 메모리 등의 기억 미디어 상에서 처리할 때, 이용되는 화상 정보 부호화 방법, 장치 및 프로그램과, 화상 정보 복호 방법, 장치 및 프로그램에 관한 것이다.
최근, 화상 정보를 디지털로서 취급하여, 정보를 효율적으로 전송 및 저장하기 위하여, 화상 정보 특유의 용장성(redundancy)을 이용하는 이산 코사인 변환 등의 직교 변환과 움직임 보상에 의해 화상 정보를 압축하는 MPEG 등의 방식을 채택하는 장치가, 방송국 등에서의 정보 분배와 일반 가정에서의 정보 수신을 위하여 보급하고 있다.
특히, MPEG2(ISO/IEC 13818-2)는 범용의 화상 부호화 방식으로서 정의되어 있고, 비월 주사 화상 및 순차적 주사 화상과, 표준 해상도 화상 및 고정밀 화상을 취급할 수 있는 표준으로서, 전문가용 및 일반 사용자용의 광범위한 애플리케이션에 널리 이용되고 있다. MPEG2 압축 방식을 사용함으로써, 예를 들면 720×480 화소를 가지는 표준 해상도의 비월 주사 화상이면 4~8 Mbps의 비트 전송률(bit rate), 1920×1088 화소를 가지는 고해상도의 비월 주사 화상이면, 18~22 Mbps의 비트 전송률을 할당함으로써, 높은 압축률과 양호한 화질의 실현이 가능하다.
MPEG2는 주로 방송용에 적합한 고화질 부호화를 대상으로 하고 있지만, MPEG1보다 낮은 비트 전송률, 즉 더 높은 압축률을 갖는 부호화 방식에는 사용할 수 없었다. 그러나, 휴대 단말기의 보급에 의하여, 향후 그와 같은 부호화 방식의 요구는 높아질 것이 예상되기 때문에, 이에 대응하여 MPEG4 부호화 방식이 표준화되었다. 화상 부호화 방식에 관해서는, 1998년 12월에 ISO/IEC 14496-2의 규격이 국제 표준으로 승인되었다.
또한, 최근, 텔레비전 회의용의 화상 부호화를 목적으로 하여, JVT(ITU-T Rec.H.264|ISO/IEC 14496-10 AVC)라는 표준의 규격화가 진행되고 있다. JVT는, MPEG2나 MPEG4와 같은 종래의 부호화 방식에 비하여, 그 부호화 및 복호화에 많은 연산량이 요구되지만, 더 높은 부호화 효율을 실현할 수 있는 것으로 알려져 있다. 여기서, 이산 코사인 변환 또는 카루넨 루베 변환 등의 직교 변환과 움직임 보상에 의해 화상 압축을 실현하는 화상 정보 부호화 장치의 개략 구성을, 도 8에 나타낸다. 도 8에 나타낸 바와 같이, 화상 정보 부호화 장치(100)는 A/D 변환부(101), 화면 재배치 버퍼(102), 가산기(103), 직교 변환부(104), 양자화부(105), 가역 부호화부(106), 저장 버퍼(107), 역양자화부(108), 역직교 변환부(109), 프레임 메모리(110), 움직임 예측/보상부(111), 및 레이트 제어장치(112)에 의해 구성되어 있다.
도 8에 있어서, A/D 변환부(101)는 입력된 화상 신호를 디지털 신호로 변환한다. 그리고, 화면 재배치 버퍼(102)는 A/D 변환부(101)로부터 공급되는 화상 압축 정보의 GOP(Group of Pictures) 구조에 따라, 프레임의 정렬을 행한다. 여기서, 화면 재배치 버퍼(102)는 인트라(화상내) 부호화를 행하는 화상에 대하여, 프레임 전체의 화상 정보를 직교 변환부(104)에 공급한다. 직교 변환부(104)는 화상 정보에 대하여 이산 코사인 변환 또는 카루넨 루베 변환 등의 직교 변환을 행하고, 변환 계수를 양자화부(105)에 공급한다. 양자화부(105)는 직교 변환부(104)로부터 공급되는 변환 계수에 대하여 양자화 처리를 행한다.
가역 부호화부(106)는 양자화부(105)로부터 공급되는 양자화된 변환 계수나 양자화 스케일(quantization scale) 등으로부터 부호화 모드를 결정하고, 이 부호화 모드에 대하여 가변 길이 부호화 또는 산술 부호화 등의 가역 부호화(reverse encoding)를 행하고, 화상 부호화 단위로 헤더부에 삽입되는 정보를 형성한다. 부호화된 부호화 모드를 저장 버퍼(107)에 공급하여 저장한다. 이 부호화된 부호화 모드는 화상 압축 정보로서 출력된다.
또, 가역 부호화부(106)는 양자화된 변환 계수에 대하여 가변 길이 부호화 또는 산술 부호화 등의 가역 부호화를 행하고, 부호화된 변환 계수를 저장 버퍼(107)에 공급하여 저장한다. 이 부호화된 변환 계수는 화상 압축 정보로서 출력된다.
양자화부(105)의 동작은 레이트 제어장치(112)에 의해 제어된다. 또, 양자화부(105)는 양자화 후의 변환 계수를 역양자화부(108)에 공급하고, 역양자화부(108)는 그 변환 계수를 역양자화한다. 역직교 변환부(109)는 역양자화된 변환 계수에 대하여 역직교 변환 처리를 수행하여 복호 화상 정보를 생성하고, 그 정보를 프레임 메모리(110)에 공급하여 저장한다.
한편, 화면 재배치 버퍼(102)는 인터(화상간) 부호화를 행하는 화상에 대하여, 화상 정보를 움직임 예측/보상부(111)에 공급한다. 움직임 예측/보상부(111)는 참조되는 화상 정보를 프레임 메모리(110)로부터 가져와서, 움직임 예측/보상 처리를 행하여, 참조 화상 정보를 생성한다. 움직임 예측/보상부(111)는 참조 화상 정보를 가산기(103)에 공급한다. 가산기(103)는 참조 화상 정보를 당해 화상 정보와의 차분 신호(differential signal)로 변환한다. 이와 동시에, 움직임 예측/보상부(111)는 움직임 벡터 정보를 가역 부호화부(106)에 공급한다.
가역 부호화부(106)는 양자화부(105)로부터 공급되는 양자화된 변환 계수나 양자화 스케일, 또는 움직임 예측/보상부(111)로부터 공급되는 움직임 벡터 정보 등으로부터 부호화 모드를 결정하고, 이 부호화 모드에 대하여 가변 길이 부호화 또는 산술 부호화 등의 가역 부호화를 행하며, 화상 부호화 단위로 헤더부에 삽입되는 정보를 형성한다. 부호화된 부호화 모드를 저장 버퍼(107)에 공급되어 저장된다. 이 부호화된 부호화 모드는 화상 압축 정보로서 출력된다.
또, 가역 부호화부(106)는 그 움직임 벡터 정보에 대하여 가변 길이 부호화 또는 산술 부호화 등의 가역 부호화 처리를 가하여, 화상 부호화 단위로 헤더부에 삽입되는 정보를 형성한다.
인트라 부호화(화상내 부호화)와 달리, 인터 부호화(화상간 부호화)의 경우에는, 직교 변환부(104)에 입력되는 화상 정보가 가산기(103)로부터 얻어진 차분 신호이다. 그리고, 그 외의 처리에 대하여는, 인트라 부호화를 행하는 화상 압축 정보와 같기 때문에, 설명을 생략한다.
다음으로, 상기 설명한 화상 정보 부호화 장치(100)에 대응하는 화상 정보 복호 장치의 개략 구성을 도 9에 나타낸다. 도 9에 나타낸 바와 같이, 화상 정보 복호 장치(120)는 저장 버퍼(121), 가역 복호화부(122), 역양자화부(123), 역직교 변환부(124), 가산기(125), 화면 재배치 버퍼(126), D/A 변환부(127), 움직임 예측/보상부(128) 및 프레임 메모리(129)에 의해 구성되어 있다.
저장 버퍼(121)는 입력된 화상 압축 정보를 일시적으로 저장한 후, 가역 복호화부(122)에 전송한다. 가역 복호화부(122)는 정해진 화상 압축 정보의 포맷에 기초하여, 화상 압축 정보에 대하여 가변 길이 복호 또는 산술 복호 등의 처리를 실시하여, 헤더부에 저장된 부호화 모드 정보를 취득하여 역양자화부(123) 등에 공급한다. 마찬가지로, 양자화된 변환 계수를 취득하여 역양자화부(123)에 공급한다. 또, 가역 복호화부(122)는 당해 프레임이 인터 부호화된 것인 경우에는, 화상 압축 정보의 헤더부에 저장된 움직임 벡터 정보 대하여 복호화하고, 그 정보를 움직임 예측/보상부(128)에 공급한다.
역양자화부(123)는 가역 복호화부(122)로부터 공급되는 양자화 후의 변환 계수를 역양자화하고, 변환 계수를 역직교 변환부(124)에 공급한다. 역직교 변환부(124)는 정해진 화상 압축 정보의 포맷에 따라, 변환 계수에 대하여 역이산 코사인 변환 또는 역카루넨 루베 변환 등의 역직교 변환을 행한다.
여기서, 당해 프레임이 인트라(화상내) 부호화된 것이라면, 역직교 변환 처리가 행해진 화상 정보가 화면 재배치 버퍼(126)에 저장되고, D/A 변환부(127)에 있어서의 D/A 변환 처리의 다음에 출력된다.
한편, 당해 프레임이 인터(화상간) 부호화된 것이라면, 움직임 예측/보상부(128)는 가역 복호 처리가 행해진 움직임 벡터 정보와, 프레임 메모리(129)에 저장된 화상 정보에 따라 참조 화상을 생성하여, 가산기(125)에 공급한다. 가산기(125)는 참조 화상과 역직교 변환부(124)의 출력을 합성한다. 그리고, 그 외의 처리에 대해서는, 인트라 부호화된 프레임과 같기 때문에, 설명을 생략한다.
여기서, JVT에 있어서의 가역 부호화부(106)에 대하여 상세하게 설명한다. JVT의 가역 부호화부(106)에서는, 양자화부(105)나 움직임 예측/보상부(111)로부터 입력된 모드 정보, 움직임 정보, 양자화된 계수 정보 등의 기호에 대하여, 도 10에 나타낸 바와 같이, CABAC(Context-based Adaptive Binary Arithmetic Coding)라는 산술 부호화(이하, CABAC라고 함) 또는 CAVLC(Context-based Adaptive Variable Length Coding)라는 가변 길이 부호화(이하, CAVLC라고 함) 중 어느 한쪽의 가역 부호화를 적용하여, 화상 압축 정보(비트 스트림)가 출력된다. 어느 쪽의 가역 부호화가 적용되는지에 대해서는, 도 10에 있어서의 CABAC/CAVLC 선택 정보에 의해 결정할 수 있으며, 이 CABAC/CAVLC 선택 정보는 화상 정보 부호화 장치(10O)에 의해 결정되어, 헤더 정보로서 비트 스트림에 삽입되어 출력된다.
먼저, 도 11은 가역 부호화부(106)에 있어서의 CABAC의 구성도를 나타낸다. 도 11에서는, 양자화부(105)와 움직임 예측/보상부(111)로부터 입력된 모드 정보, 움직임 정보 및 양자화된 변환 계수 정보가, 다중값 기호(multi-valued symbols)로서 이진화 장치(binarization unit)(131)에 입력된다. 이진화 장치(131)에서는, 입력된 다중값 기호를, 미리 결정된 소정의 규칙에 의거하여 임의의 길이를 갖는 이진 기호의 열로 변환한다. 이 이진 기호열은 CABAC 부호화기(133)에 입력되고, CABAC 부호화기(133)에서는, 입력된 이진 기호에 대하여 이진 기호 산술 부호화가 적용되어 그 결과를 비트 스트림으로 출력하고, 저장 버퍼(107)에 입력한다. 그리고, 컨텍스트(context) 연산기(132)에서는, 이진화 장치(131)에 입력된 기호 정보와 이진화 장치(131)로부터의 출력인 이진 기호를 기초로 하여 컨텍스트의 계산을 행하고, CABAC 부호화기(133)에 입력한다. 컨텍스트 연산기(132)에 있어서의 컨텍스트 메모리 그룹(135)에는, 부호화 처리 중에 수시로 갱신되는 컨텍스트와 리셋 등에 이용되는 컨텍스트의 초기 상태가 보존된다.
다음에, 도 12에 가역 부호화부(106)에 있어서의 CAVLC의 구성을 나타낸다. 도 12에서는, 양자화부(105)와 움직임 예측/보상부(111)로부터 입력된 모드 정보, 움직임 정보 및 양자화된 변환 계수 정보가 다중값 기호로서 CAVLC 부호화기(140)에 입력된다. CAVLC 부호화기(140)에서는, 종래의 MPEG 등에 의해 채용되는 가변 길이 부호화와 마찬가지로, 입력된 다중값 기호에 대하여 가변 길이 부호 테이블을 적용하여, 비트 스트림을 출력한다. 여기서, 컨텍스트 보존기(141)에서는, CAVLC 부호화기(140)에서 이미 부호화된 정보, 예를 들면, 처리 중의 블록뿐만 아니라 이미 처리된 블록에 있어서의 각 블록 내의 비제로(non-zero) 계수의 수나 직전에 부호화된 계수의 값 등이 보존된다. CAVLC 부호화기(140)는 이 컨텍스트 보존기(141)로부터의 정보를 기초로 하여, 기호에 적용하는 가변 길이 부호 테이블을 변경할 수 있다. 그리고, 컨텍스트 보존기(141)에는 리셋할 때 등에 이용되는 컨텍스트의 초기 상태도 보존된다. 이 출력된 비트 스트림은 저장 버퍼(107)에 입력된다.
마찬가지로, JVT에 있어서의, 가역 복호화부(122)에 대하여 상세하게 설명한다. JVT의 가역 복호화부(122)에서는 가역 부호화부(106)와 마찬가지로, 입력된 비트 스트림에 대하여, 도 13에 나타낸 바와 같이, CABAC 또는 CAVLC 중 한쪽의 가역 복호화가 적용된다. 어느 쪽의 가역 복호화가 적용되는지에 대해서는, 입력된 비트 스트림의 헤더 정보에 삽입된 CABAC/CAVLC 선택 정보를 판독함으로써 행해지며, CABAC와 CAVLC 중 하나가 적용된다.
도 14에 가역 복호화부(122)에 있어서의 CABAC의 구성을 나타낸다. 도 14에서는, 저장 버퍼(121)로부터 입력된 비트 스트림에 대하여 CABAC 복호화기(161)에서 이진 기호 산술 복호화가 적용되어 그 결과가 이진 기호열로서 출력된다. 이 이진 기호열은 역이진화 장치(163)에 입력되고, 역이진화 장치(163)에서 미리 결정된 일정 규칙에 의거하여 다중값 기호로 변환된다. 역이진화 장치(163)로부터 출력되는 다중값 기호는 모드 정보, 움직임 벡터 및 양자화된 계수 정보로서, 역이진화 장치(163)로부터 출력되고, 역양자화부(123), 움직임 예측/보상부(128)에 입력된다. 그리고, 컨텍스트 연산기(162)에서는, 역이진화 장치(163)에 입력된 이진화 기호열과 역이진화 장치(163)로부터의 출력인 다중값 기호를 기초로 컨텍스트의 계산을 행하고, CABAC 복호화기(161)에 입력한다. 컨텍스트 연산기(162)에 있어서의 컨텍스트 메모리 그룹(165)에는, 복호화 처리 중에 수시로 갱신되는 컨텍스트와 리셋할 때 등에 이용되는 컨텍스트의 초기 상태가 보존된다.
다음에, 도 15에 가역 복호화부(122)에 있어서의 CAVLC의 구성을 나타낸다. 도 15에서는 저장 버퍼(121)로부터 입력된 비트 스트림이 CAVLC 복호화기(170)에 입력된다. CAVLC 복호화기(170)에서는, 종래의 MPEG 등에 채용되는 가변 길이 복호화와 마찬가지로, 입력된 비트 스트림에 대하여 가변 길이 복호 테이블을 적용하여, 모드 정보, 움직임 정보 및 양자화된 변환 계수 정보를 출력한다. 이들 출력 정보는 가역 양자화부(123)와 움직임 예측/보상부(128)에 입력된다. 컨텍스트 보존기(171)에서는, 이미 CAVLC 복호화기(170)에서 복호화된 정보, 예를 들면 처리가 이루어지고 있는 블록뿐만 아니라 이미 처리된 블록에 있어서의 각 블록 내의 비제로(non-zero) 계수의 수나 직전에 복호화된 계수의 값 등이 보존된다. CAVLC 복호화기(170)는 컨텍스트 보존기(171)로부터의 정보를 기초로 하여 기호에 적용하는 가변 길이 복호 테이블을 변경할 수 있다. 그리고, 컨텍스트 보존기(171)에는 리셋할 때 등에 이용되는 컨텍스트의 초기 상태도 보존된다.
도 11 및 도 14에 나타낸 CABAC의 상세 동작으로서, 이하에 Final Committee Draft ISO/IEC 14496-10:2002(제9.2 절)에 기재된 CABAC의 설명을, 본 명세서에 참조로서 첨부한다.
본 발명의 출원인은 기존의 부호화 및 복호화 시스템에서의 문제점을 인식했으며, 그 개량에 대하여 이하 설명한다.
화상 정보 부호화 장치(100)에서 하나의 픽처(picture)를 부호화할 때, 그 부호화 단위로서, 하나의 픽처, 슬라이스, 매크로블록 또는 블록 중 하나로 하더라도, 부호화 단위에 포함되며, 도 11의 이진화 장치(131)에 입력되는 기호의 수는, 입력되는 화상 신호나 부호화 조건에 따라 달라지므로, 고정적이지 않다.
또, 이진화 장치(131)에 입력된 하나의 기호에 대해 출력되는 이진 데이터 열의 길이는 JVT FCD 제9.2.1 절에 개시되어 있는 바와 같이, 일정한 길이로 정해져 있지 않다. 예를 들면, JVT FCD 제9.2.1.5 절 Table 9-20에 있는 바와 같이, I slice에 있어서의 mb_type1 Symbo1에 대한 이진 데이터 열의 길이는, 최소 1(Intra_4×4의 시점에서), 최대 6으로 된다. 이와 같이, 1개의 기호에 대한 이진화 장치(131)의 출력 이진 데이터 길이도 정해져 있지 않다.
이와 같은 이유로부터, 입력 화상 신호의 임의의 부호화 단위에 포함되는 기호에 대하여, 이진화 장치(131)에서 출력되는 이진 데이터의 수는 고정적이지 않고 정해지지 않은 것으로 되어, 입력 데이터와 부호화 조건에 따라서는, 매우 많은 이진 데이터가 이진화 장치(131)로부터 출력될 가능성이 있다.
여기서, 이진화 장치(131)로부터 출력된 이진 데이터는 CABAC 부호화기(133)에 입력된다. 그러나, CABAC 부호화기(133)는 입력된 1개의 이진 데이터를 처리하는데 실질적으로 1클록 이상의 처리 시간이 필요하기 때문에, CABAC 부호화기(133)에 입력되는 이진 데이터의 수가 많아지게 되면, 그만큼의 처리 시간이 필요하게 된다. 또한, 상기 설명한 바와 같이, CABAC 부호화기(133)에 입력되는 이진 데이터의 수는 정해지지 않았으므로, 최악의 경우(처리에 최장의 시간이 걸리는 경우)를 예측하는 것이 곤란해진다.
그러므로, 화상 정보 부호화 장치(100)에 있어서, 실시간 처리나 어느 일정한 처리 속도를 보증할 필요가 있는 경우에, CABAC 부호화기(133)에 입력되는 이진 데이터가 매우 많거나 또는 일정하지 않으면, 보증을 할 수 없게 된다.
또, 이진화 장치(131)에 입력된 하나의 기호에 대하여 출력된 이진 데이터 열에 대한 CABAC 부호화기(133)의 출력 비트 길이는 일정하지 않다. 이것은 CABAC가 입력 이진 데이터의 발생 확률에 따라, 출력 비트 길이를 가변으로 제어하기 때문이다. 그러므로, CABAC 부호화기(133)에 입력되는 1개의 이진 데이터는, 그 발생 확률에 따라, 1비트 이하의 비트 스트림 데이터도 될 수 있고, 수 비트 이상의 비트 스트림 데이터도 될 수 있다.
CABAC 부호화기(133)는 출력되는 1개의 비트 데이터를 처리하는데 실질적으로 1클록 이상의 처리 시간을 필요로 하기 때문에, CABAC 부호화기(133)로부터 출력되는 비트 데이터가 많아지면, 그만큼의 처리 시간이 필요해지고, 부호화기를 실장한 경우에 처리 시간이 많이 걸리게 된다. 또, 상기 설명한 바와 같이, CABAC 부호화기(133)로부터 출력되는 비트 데이터의 수는 고정적이지 않기 때문에, 처리 시간이 가장 길어지게 되는 최악의 경우를 추측하는 것이 곤란하게 된다.
그러므로, 화상 정보 부호화 장치(100)에서, 실시간 처리나 일정한 처리 시간을 보증할 필요가 있는 경우에, CABAC 부호화기(133)로부터 출력되는 비트 데이터의 수가 많거나 또는 비트 데이터의 수가 일정하지 않으면, 그 보증이 불가능하게 된다.
이상 설명한 바와 같이, CABAC 부호화기(133)에 입/출력되는 이진 데이터나 비트 데이터의 개수가 하나의 픽처, 픽처 내의 슬라이스, 매크로블록 또는 블록 중 하나로 하는 부호화 단위 내에서, 비트 데이터의 수가 일정하지 않고, 그 수가 많게 될 수 있다는 것은, 실장할 때에 그 부호화 단위로 일정한 처리 시간을 보증할 수 없게 될 수 있다는 것이다.
또한, 화상 정보 복호화 장치(120)에서 하나의 픽처를 부호화할 때, 그 부호화 단위를 하나의 픽처, 슬라이스, 매크로블록 또는 블록 중 하나로 한 경우라도, 그 부호화 단위에 포함되고 CABAC 복호화기(161)에 입력되는 비트 스트림의 비트 수는 입력되는 비트 스트림에 따라 달라지므로, 일정하지 않게 된다.
여기서, CABAC 복호화기(161)는 입력되는 1개의 비트 데이터를 처리하는데 실질적으로 1클록 이상의 처리 시간이 필요하기 때문에, CABAC 복호화기(161)에 입력되는 비트 데이터가 많으면, 그만큼 처리 시간이 길어지게 된다. 또, 상기 설명한 바와 같이, CABAC 복호화기(161)에 입력되는 비트 데이터의 수는 고정적이지 않기 때문에, 처리 속도가 가장 오래 걸리는 최악의 경우를 추측하는 것이 곤란하게 된다.
그러므로, 화상 정보 복호화 장치(120)에 있어서, 실시간 처리나 어느 일정한 처리 시간을 보증할 필요가 있는 경우에, CABAC 복호화기(161)에 입력되는 비트 데이터의 수가 많거나 또는 비트 데이터의 수가 일정하지 않으면, 그 보증이 불가능하게 된다. 특히, 화상 정보 복호화 장치(120)는, 화상 정보 부호화 장치(100)에 비하여, 화상 정보를 실시간으로 복호화 및 표시하여야 하는 요구가 높기 때문에, 실시간 처리를 보증할 수 없는 것은 문제점이 된다.
이에 따라, 본 발명은 상기 문제점을 해결하는 것을 하나의 목적으로 한다. 본 발명에서는 상기 문제점을 감안하여, CABAC 부호화기 및 복호화기에서 입출력되는 데이터량을 하나의 픽처, 슬라이스, 매크로블록 또는 블록 등의 부호화 단위로 제한하고, 이러한 제한에 대한 수단을 화상 정보 부호화기, 복호화기 및 비트 스트림에 적용한다.
*또, 본 발명에서는, 상기 문제점을 감안하여, 비압축(umcompressed) 화상 데이터를 부호화하고, 그 수단을 화상 정보 부호화기, 복호화기 및 비트 스트림에 적용한다.
또, 본 발명에서는, 상기 문제점을 감안하여, CABAC 뿐만 아니라 CAVLC에 대하여도, 동일한 방법을 적용한다.
본 발명에서의 CABAC 부호화기 및 복호화기에 있어서의 입출력 데이터량의 제한과 비압축 데이터의 부호화에 의하여 화상 정보 부호화 장치나 복호화 장치에 있어서의 일정한 처리 시간을 보증하는 것이 가능해져, 그 처리 시간을 보증한 장치를 실현하는 것이 가능해진다. 또, CABAC와 CAVLC에 대해서 유사한 효과를 얻을 수 있게 된다.
본 발명의 더 완전한 이해와 이에 부속하는 많은 장점들은 첨부 도면을 참조하여 이하의 상세한 설명에 의하여 명백해질 것이다.
도 1은 본 발명의 화상 정보 부호화 장치의 구성예를 나타내는 도면.
도 2는 본 발명의 화상 정보 부호화 장치의 구성예를 나타내는 도면.
도 3은 본 발명의 화상 정보 부호화 장치의 구성예를 나타내는 도면.
도 4는 본 발명의 화상 정보 부호화 장치의 구성예를 나타내는 도면.
도 5는 본 발명의 화상 정보 부호화 장치의 구성예를 나타내는 도면.
도 6은 본 발명의 화상 정보 복호화 장치의 구성예를 나타내는 도면.
도 7은 본 발명의 매크로블록 처리부의 구성예를 나타내는 도면.
도 8은 종래의 화상 정보 부호화 장치의 구성예를 나타내는 도면.
도 9는 종래의 화상 정보 복호화 장치의 구성예를 나타내는 도면.
도 10은 종래의 JVT에서 가변 길이 부호화부의 구성예를 나타내는 도면.
도 11은 종래의 JVT에서 CABAC 부호화부의 구성예를 나타내는 도면.
도 12는 종래의 JVT에서 CAVLC 부호화부의 구성예를 나타내는 도면.
도 13은 종래의 JVT에서 가변 길이 복호화부의 구성예를 나타내는 도면.
도 14는 종래의 JVT에서 CABAC 복호화부의 구성예를 나타내는 도면.
도 15는 종래의 JVT에서 CAVLC 복호화부의 구성예를 나타내는 도면.
본 발명의 실시예에 대하여, 첨부 도면을 참조하여 설명한다. 유사한 도면부호는 동일 또는 유사한 구성요소를 의미한다.
도 1은 본 발명에 있어서의 화상 부호화 장치의 실시예를 나타낸다. 도 1의 장치(10)에서는 부호화하고자 하는 화상 신호가 입력되고, 부호화된 비트 스트림이 출력된다. 장치(10)는 입력 버퍼(11), 변환 처리부(12), CABAC 처리부(13), 제한 감시기(14) 및 출력 버퍼(15)에 의해 구성된다. 입력 버퍼(11)에서는, 입력 화상을 매크로블록 단위로 분할하여 출력하고, 후단에서 매크로블록의 처리가 끝날 때마다 다음 매크로블록을 출력한다. 변환 처리부(12)에서는, 입력된 매크로블록 화상에 대하여 처리를 행하고, 헤더 정보나 양자화된 계수 정보를 CABAC 처리부(13)에 출력한다. 구체적으로는, 파라미터 설정기(16)에 의하여, 매크로블록의 모드 정보, 움직임 벡터 정보, 양자화 파라미터 등의 헤더 정보를 설정하고, 그 값(기호)을 예측기(17), DCT 장치(18), 양자화기(19) 및 CABAC 처리부(13)에 출력한다. 여기서, 파라미터 설정기(16)는 매크로블록의 헤더 정보뿐만 아니라, 슬라이스나 픽처의 헤더 정보도 설정 및 출력하는 것을 가능하게 하기 때문에, 이들 정보를 총칭하여 헤더 정보라고 한다. 그리고, 예측기(17)에서는 움직임 보상이, DCT 장치(18)에서는 DCT 변환이, 양자화기(19)에서는 양자화 처리가, 각각 전단(former stage)으로부터의 입력 신호에 대하여, 파라미터 설정기(16)로부터의 입력 신호를 참조하여 적용된다.
CABAC 처리부(13)에는 헤더 정보와 양자화된 계수 정보가 기호 데이터로서 입력되고, 산술 부호화가 적용되어, 비트 데이터로서 출력된다. 구체적으로는, 입력된 기호 데이터를 이진화 장치(20)에 의해 이진 데이터 열로 변환하고, 그 이진 데이터를 컨텍스트 연산기(21)로부터의 컨텍스트 정보를 기초로 하여, CABAC 부호화기(22)에서 엔트로피 부호화(entropy-coded)한다. 컨텍스트 연산기(21)에서는 이진화 장치(20)에 입력되는 기호 데이터와, 이진화 장치(20)로부터 출력되는 이진 데이터를 기초로 하여 컨텍스트를 갱신하고, 또한 그 컨텍스트 정보를 CABAC 부호화부(22)에 출력한다.
제한 감시기(14)는, CABAC 부호화기(22)에 입력되는 이진 데이터의 개수의 카운터와 출력되는 비트 데이터의 개수의 카운터(비트 카운터(25))를 각각 독립적으로 구비하여, CABAC 부호화기(22)에 이진 데이터가 입력될 때마다 전자의 카운터를 1개씩 증가시키고, CABAC 부호화기(22)로부터 비트 데이터가 출력될 때마다 후자의 카운터를 1개씩 증가시킨다. 이 카운터는, 각각 매크로블록의 선두의 처리를 개시할 때마다 제로(O)로 리셋된다. 이에 의하면, 각 매크로블록에 있어서의 CABAC 부호화기(22)의 입력 데이터와 출력 데이터의 각각의 개수를 카운트하는 것이 가능해진다.
제한 감시기(14)에서는, 이들 카운터 중의 어느 한쪽에서라도, 미리 설정된 임계값을 초과하였을 경우, 그 부호화 데이터는 무효라는 것을 나타내는 신호(이하, '재부호화 신호'라 한다)를 출력 버퍼(15), 컨텍스트 연산기(21) 및 파라미터 설정기(16)에 출력한다. 이 재부호화 신호를 수신한 파라미터 설정기(16)는 임계값을 다시 초과하지 않도록 주의하여 부호화 파라미터를 다시 설정하고, 부호화 대상이 되는 매크로블록 데이터를 재부호화 처리한다. 또한, 컨텍스트 연산기(21)는 컨텍스트 메모리 그룹(23)을 포함하고, 이 컨텍스트 메모리 그룹(23)은 종래 기술인 도 11에 도시된 종래의 컨텍스트 메모리 그룹(135)과 마찬가지로, 부호화 처리 중에 수시로 갱신되는 컨텍스트와 리셋할 때 등에 이용되는 컨텍스트의 초기 상태가 보존되지만, 이와 함께 매크로블록을 데이터 처리하기 직전의 컨텍스트 상태로 보존하여 두는 것이 가능하다. 이에 의하면, 재부호화 신호를 수신한 컨텍스트 연산기(16)는 내부의 컨텍스트 상태를, 새롭게 부가된 메모리에 보존되어 있는 컨텍스트의 값에 재기입함으로써, 부호화 대상의 매크로블록의 데이터에 의해 갱신되기 직전의 컨텍스트 상태로 복원할 수 있다. 또, 재부호화 신호를 수신한 출력 버퍼(15)는 내부에 축적된 부호화 대상인 매크로블록의 비트 데이터를 모두 삭제하고, 새로운 부호화 파라미터로 부호화된 매크로블록 데이터의 입력을 기다린다. 또한, 대상이 되는 매크로블록의 부호화 처리를 완료하였을 때, 제한 감시기(14)의 어느 카운터도 미리 설정된 임계값을 초과하지 않았으면, 출력 버퍼(15) 내의 매크로블록의 비트 데이터를 비트 스트림으로 출력할 수 있다.
상기 설명한 도 1의 장치(10)에서, 제한 감시기(14)에 있는 카운터가 매크로블록의 선두에서 리셋되는 것은, 매크로블록 단위로 CABAC 부호화기(22)에 입력되는 이진 데이터와 출력되는 비트 데이터의 개수를 감시하여 제한하는 것을 의미하지만, 이 리셋의 타이밍을 매크로블록 내의 블록 단위로 설정하면, 각 블록 단위에서의 상기 데이터 개수를 감시하고 제한하는 것이 가능하게 된다. 마찬가지로, 슬라이스(slice) 단위로 리셋을 하면, 슬라이스 단위로 상기 데이터 개수를 감시하고 제한하는 것이 가능하게 되며, 픽처(picture) 단위로 리셋하면, 픽처 단위로 상기 데이터 개수를 감시하여 제한하는 것이 가능해진다. 또, 이러한 형태로 상기 데이터 개수를 감시 및 제한하는 부호화 단위를 변경하는 경우에는, 동시에 컨텍스트 연산기(21)에 있어서의 컨텍스트 메모리 그룹(23)에 그 부호화 단위의 직전의 컨텍스트 값이 보존되기 때문에, 컨텍스트 상태도 그 부호화 단위의 직전 상태로 복원된다. 또, 출력 버퍼(15)의 비트 데이터의 삭제도 부호화 단위로 행해지게 된다. 그리고, 이러한 복원 시에는, 컨텍스트 메모리 그룹(23)에 보존되어 있는 부호화 단위의 직전의 컨텍스트 값이 아니라, 컨텍스트 메모리 그룹(23)에 보존되어 있는 미리 정해진 초기값으로 복원하는 것도 가능하다.
여기까지 설명한 도 1의 장치(10)에서는, 제한 감시기(14)에 2개의 카운터가 설정되어 있지만, 이들 카운터로 설정하는 임계값은 각각 독립적인 값을 설정하는 것이 가능하며, 또 2개 중에서 한쪽에만 대응하는 데이터 카운트만을 감시하고, 다른 데이터 카운트는 무시할 수 있으며, 또는 카운터 자체를 가지지 않는 구성으로 하는 경우도 가능하다.
이 장치(10)에 의하여, 1회의 매크로블록 처리에서, CABAC 부호화기에 입력 및 출력되는 데이터량의 상한을 제한할 수 있으므로 요구된 매크로블록 1회의 처리 시간을 만족시키는 것이 가능하게 된다. 또, 요구된 처리 시간에 복호화 처리가 가능한 비트 스트림을 출력하는 것이 가능하게 된다.
이하의 설명을 위하여, 도 7은 도 1에 있어서의 변환 처리부(12)와 CABAC 처리부(13)를 표현하는 장치, 매크로블록 처리부(29)를 나타낸다. 이하의 기재에 있어서의 매크로블록 처리부(29)는 도 1에 있어서의 변환 처리부(12)와 CABAC 처리부(13)를 직렬로 연결한 장치로서, 동일한 처리를 수행하는 것으로 한다.
도 1에 나타낸 장치(10)에서는, 제한 감시기(14)가 재부호화 신호를 출력할 때마다, 변환 처리부(12)는 다시 새로운 부호화 파라미터를 설정하여 매크로블록의 부호화를 행하여야 하고, 다시 설정된 파라미터에 의해 얻어진 데이터에 의하여, 다시 제한 감시기(14)의 카운터가 임계값을 초과하는 것이 반복될 가능성도 있다. 그러므로, 1개의 매크로블록에 대하여 여러 번 부호화 처리를 연속적으로 적용하여야 하며, 그만큼 1 픽처의 부호화 시간이 많이 소요된다.
그러므로, 본 발명에 있어서의 화상 부호화 장치의 다른 실시예에서는, 대상이 되는 매크로블록에 대하여 상이한 부호화 파라미터를 적용하는 부호화를 병렬로 실시하는 예를 제2 실시예로서 도 2에 나타낸다.
도 2의 장치(30)에서는, 도 1의 장치(10)와 마찬가지로, 부호화하고자 하는 화상 신호가 입력되고, 부호화된 비트 스트림이 출력된다. 도 2의 장치(30)는 입력 버퍼(31)와, N개의 상이한 부호화 파라미터에 의한 N단의 병렬 부호화 처리를 가능하게 하는 매크로블록 처리부(32-1 ~ 32-N)와, 이에 대응하는 출력 버퍼(33-1 ~ 33-N)와, 제한 감시/경로 선택기(34)와, 스위치(35)에 의해 구성된다.
도 2의 장치(30)에서는, 부호화 대상이 되는 매크로블록에 대하여, N개의 상이한 부호화 파라미터를 설정하고, 각각의 부호화 파라미터에 의한 부호화 처리를 매크로블록 처리부(32-1 ~ 32-N)에서 병렬로 행하고, 그 출력을 출력 버퍼(33-1 ~ 33-N)에 축적한다.
제한 감시/경로 선택기(34)는 매크로블록 처리부(32-1 ~ 32-N) 각각에 대응하는 CABAC 부호화기에 대한 2개의 입출력 데이터 카운터(비트 카운터(36))를 구비하며, N단의 병렬 경로 중에서 카운터가 임계값을 초과하지 않고, 또한 부호화 효율이 가장 우수한 부호화 경로를 선택하며, 스위치(35)에 의해 출력하는 계통을 선택한다.
도 2의 장치(30)에 대한 그 외의 상세한 동작 및 부호화 단위 등의 변동은 도 1의 장치(10)와 동일한 것으로 한다.
이 장치(30)에 의하면, 부호화할 때에 CABAC 부호화기에 입력 및 출력되는 데이터량의 상한을 제한할 수 있으므로, 요구되는 부호화 처리 시간을 만족스럽게 하는 것이 가능하게 된다. 또, 요구된 처리 시간에 복호화 처리가 가능한 비트 스트림을 출력하는 것이 가능하게 된다.
다음에, 도 3에 본 발명에 있어서의 화상 부호화 장치의 다른 실시예를 나타낸다. 이 실시예는, 도 1의 실시예에 추가로, 비압축 부호화 데이터, 즉 입력된 매크로블록에 대하여, 압축하지 않는 순수 데이터를 그대로 부호화하는 경로를 가지고 있다.
도 3의 장치(40)와 도 1의 장치(10)의 차이는, 매크로블록 화상 데이터가 매크로블록 처리부(41)만이 아니라, 비압축 부호화부(43)에도 입력된다는 것이다. 비압축 부호화부(43)에서는 입력된 화상 정보에 대하여 모든 변환 처리와 엔트로피 부호화를 하지 않는 데이터, 즉 순수 데이터가 출력 버퍼(B44)에 출력된다. 제한 감시/경로 선택기(47)는, 도 1에 있어서의 제한 감시기(14)의 동작과 마찬가지로, 비트 카운터(49)에 의해 CABAC 부호화기의 입출력의 데이터량을 감시하고, 또한 감시하고 있는 데이터가 미리 설정되어 있는 임계값을 초과하였을 경우에는, 스위치(46)가 출력 버퍼(B44)로부터의 입력을 선택하여 출력하도록 한다. 반대로, 임계값을 초과하지 않은 경우에는, 출력 버퍼(A42)와 출력 버퍼(B44) 중 어느 쪽의 출력도 선택할 수 있다.
여기서, 제한 감시/경로 선택기(45)가 출력 버퍼(B44), 즉 순수 데이터를 선택한 경우에는, 이 선택이 매크로블록 처리부(41)에 있는 컨텍스트 연산기에도 통지되어, 컨텍스트 연산기 내의 컨텍스트 값이 컨텍스트 메모리 그룹에 보존된 매크로블록을 처리하기 직전의 컨텍스트의 값을 사용하여, 그 순수 데이터로서 처리된 매크로블록을 처리하기 직전 상태로 복원된다.
그리고, 매크로블록이 순수 데이터로서 처리되었을 경우의 컨텍스트의 복원 방법으로서, 미리 결정된 초기 상태에 복원하는 경우도 가능하다.
여기서, 매크로블록이 순수 데이터로서 부호화된 것인지 여부를 나타내기 위하여, 출력된 비트 스트림의 헤더 정보에는 이를 위한 데이터가 삽입된다.
순수 데이터가 부호화되었을 때는, CABAC 부호화부가 순수 데이터를 비트 스트림으로 출력하기 전에 CABAC의 종단 처리를 수행한다.
또, 비압축 부호화기(45)는 순수 데이터를 출력하는 비압축 처리 장치만이 아니라, DPCM 부호화 장치 등 다양한 압축 장치로 치환하는 것이 가능하다.
도 3의 장치(40)에 대하여, 그 외의 상세한 동작 및 부호화 단위 등의 변동은 도 1의 장치(10)와 동일한 것으로 한다.
이 장치(40)에 의하면, 부호화할 때에 CABAC 부호화기에 입력 및 출력되는 데이터량의 상한을 제한할 수 있으므로, 요구되는 부호화 처리 시간을 만족시키는 것이 가능하게 된다. 또, 요구된 처리 시간에 복호화 처리가 가능한 비트 스트림을 출력하는 것이 가능하게 된다.
다음에, 도 4는 본 발명에 있어서의 화상 부호화 장치의 다른 실시예의 장치(50)를 나타낸다. 이 실시예에서는, 도 2의 장치(30)에 추가로, 비압축 부호화 데이터, 즉 입력된 매크로블록에 대하여 압축하지 않은 순수 데이터를 그대로 부호화하는 경로를 가지고 있다.
도 4의 장치와 도 2의 장치의 공통 부분의 동작은, 도 1의 장치와 거의 동일하기 때문에, 차이점만을 구체적으로 나타내면, 매크로블록 화상 데이터가 매크로블록 처리부(51-1 ~ 51-N)만이 아니라, 비압축 부호화부(58)에도 입력된다. 비압축 부호화부(58)에서는 입력된 화상 정보에 대하여 모든 변환 처리와 엔트로피 부호화를 하지 않은 데이터, 즉 순수 데이터로서 출력 버퍼(B59)에 출력된다. 제한 감시/경로 선택기(53)는, 도 2에 있어서의 제한 감시/경로 선택기(34)와 마찬가지로, 비트 카운터(55)를 감시하고, 모든 경로(1~N)에 있어서의 비트 카운터(2개 중 임의의 하나)가 미리 설정되어 있는 임계값을 초과하였을 경우에, 신호 선택기(54)가 출력 버퍼(B59)로부터의 입력을 선택하여 출력하도록 한다. 반대로, 임계값을 초과하지 않은 경우에는, 출력 버퍼(A52-1 ~ 52-N)와 출력 버퍼(B59)의 어느 쪽의 출력도 선택할 수 있게 된다.
그리고, 출력 버퍼(B59)로부터의 순수 데이터가 신호 선택부(54)에서 선택되는 경우에는, 매크로블록 처리부(51-1 ~ 51-N)에 있는 컨텍스트 연산부의 컨텍스트 상태가, 컨텍스트 메모리 그룹에 기억된 매크로블록을 처리하기 직전의 컨텍스트 상태로 복원된다. 그리고, 이 복원 시에는, 도 1의 장치(10)에서도 설명했던 바와 같이, 미리 정해진 초기값으로 복원하는 것도 가능하다.
반대로, 출력 버퍼로부터 순수 데이터가 아닌, 출력 버퍼(A52-1 ~ 52-N) 중의 하나인 출력 버퍼(A52-1)가 신호 선택부(54)에서 선택되었을 경우에는, 매크로블록 처리부(51-1)의 컨텍스트 연산부의 컨텍스트 상태가 다른 매크로블록 처리부(51-1 ~ 51-N)에 있는 컨텍스트 연산부에 복제된다. 이것은, 나중에 매크로블록의 부호화를 시작할 때에 모든 컨텍스트 연산부의 컨텍스트 상태가 동일하여야 하기 때문이다. 비압축 부호화부(58)는 순수 데이터를 출력하는 비압축 처리 장치만이 아니라, DPCM 부호화 장치 등 다양한 압축 장치로 치환하는 것이 가능하다.
도 4의 장치(50)에 대한 그 외의 상세한 동작 및 부호화 단위 등의 변동은 도 1의 장치(10)와 동일한 것으로 한다.
이 장치(50)에 의하여, 부호화할 때에 CABAC 부호화기에 입력 및 출력되는 데이터량의 상한을 제한할 수 있으므로, 요구되는 부호화 처리 시간을 만족시키는 것이 가능하게 된다. 또, 요구된 처리 시간에 복호화 처리가 가능한 비트 스트림을 출력하는 것이 가능하게 된다.
다음에, 도 5는 도 8의 가역 부호화부(106)로서 CABAC가 아닌 CAVLC를 적용하는 장치(60)를 나타낸다. 이 장치(60)는 도 1의 장치(10)의 CABAC 처리부(13)를 CAVLC 처리기(63)로 치환한 것이며, CAVLC 처리기(63)와 제한 감시기(64) 외에는, 동일하기 때문에, 여기서는 CAVLC 처리기(63)와 제한 감시기(64)의 동작에 대해서만 설명을 한다.
CAVLC 처리기(63)에는, 헤더 정보와 양자화된 계수 정보가 기호 데이터로서 입력되고, 종래의 MPEG2 등과 유사한, 가변 길이 테이블을 사용하는 가변 길이 부호화가 적용되어 비트 데이터로서 출력된다. CAVLC 처리기(63)는 종래 기술의 도 12에서 설명한 CAVLC 부호화기와 컨텍스트 보존기로 이루어지고, 종래의 보존기와 마찬가지로, CAVLC 부호화기로 부호화된 정보, 예를 들면 처리 중의 블록뿐만이 아니라 이미 처리된 블록에 있어서의 각 블록 내의 비제로(non-zero) 계수의 개수나 직전에 부호화된 계수의 값 등이 보존되는 것에 더하여, 본 발명에 있어서의 CAVLC 처리기(63)에서, 재부호화 신호가 수신된 때에 매크로블록을 부호화하기 직전 상태로 복원될 수 있는 것처럼, 매크로블록을 부호화하기 직전의 컨텍스트 상태를 보존하는 것이 가능하다. CAVLC 부호화기는 이 컨텍스트 보존기로부터의 정보를 기초로, 기호에 적용하는 가변 길이 부호 테이블을 변경할 수 있다. 그리고, 컨텍스트 보존기에는 리셋할 때 등에 이용되는 컨텍스트의 초기 상태도 보존된다.
제한 감시기(64)는 CAVLC 처리기(63)로부터 출력되는 비트 데이터의 개수의 카운터(비트 카운터 75)를 1개 포함하기 때문에, CAVLC 처리기(63)로부터 비트 데이터가 출력될 때마다 카운터를 1개씩 증가시킨다. 이 카운터는 매크로블록의 선두의 처리를 개시할 때 제로(0)로 리셋된다. 이에 의하면, 각 매크로블록에 있어서의, CAVLC 처리기(63)로부터의 출력 데이터의 개수를 카운트하는 것이 가능해진다.
이 제한 감시기(64)에서는, 카운터(75)가 미리 설정된 임계값을 초과하였을 경우, 그 부호화 데이터가 무효라는 것을 나타내는 신호(이하, 재부호화 신호)를 출력 버퍼(65)와 파라미터 설정기(66)에 출력한다. 이 재부호화 신호를 수신한 파라미터 설정기(66)는 다시 이 임계값을 초과하지 않도록 주의하여 부호화 파라미터를 다시 설정하고, 부호화 대상이 되는 매크로블록 데이터를 재부호화 처리한다. 또, 재부호화 신호를 수신한 출력 버퍼(65)는 내부에 축적된 부호화 대상이 되는 매크로블록의 비트 데이터를 모두 삭제하고, 새로운 부호화 파라미터로 부호화된 매크로블록 데이터의 입력을 기다린다.
도 5의 장치(60)에 대한 그 외의 상세한 동작 및 부호화 단위 등의 변동은 도 1의 장치(10)와 동일한 것으로 한다.
이 장치(60)에 의하여, 1회의 매크로블록 처리에 있어서, CAVLC 부호화기로부터 출력되는 데이터량의 상한을 제한할 수 있으므로, 요구된 매크로블록 1회의 처리 시간을 만족시키는 것이 가능하게 된다. 또, 요구된 처리 시간에 복호화 처리가 가능한 비트 스트림을 출력하는 것이 가능하게 된다.
또, 도 1의 장치뿐만 아니라, 도 2 내지 도 4의 장치에 대하여도, CABAC 처리부를 CAVLC 처리부로 치환하는 것이 가능하며, 그 동작은 본 실시예에 대해 이하 설명하는 것과 동일한 것으로 한다. 단, CAVLC 처리기는 매크로블록이 순수 데이터로서 부호화되면, 그 매크로블록의 컨텍스트를 가질 수 없게 되므로, 그와 같은 경우를 위해 순수 데이터가 부호화되었을 때의 컨텍스트의 갱신의 방법을 정의해 둘 필요가 있다. 이 정의의 방법은 부호화 장치와 복호화 장치 사이에서 동기가 취해져 있으면 어떤 것이라도 된다. 예를 들면, 순수 데이터로서 부호화된 매크로블록 내의 블록에 존재하고 있는 비제로 계수의 개수는 15로 간주하는 등이다. 그 장치에 의하여, 부호화할 때에 CAVLC 부호화기로부터 출력되는 데이터량의 상한을 제한할 수 있으므로 요구된 부호화 처리 시간을 만족시키는 것이 가능하게 된다. 또, 요구된 처리 시간에 복호화 처리가 가능한 비트 스트림을 출력하는 것이 가능하게 된다.
다음에, 도 1 내지 도 4의 장치에 대응하는 본 발명에 있어서의 화상 정보 복호화 장치에 해당하는 장치(80)를, 도 6을 이용하여 나타낸다. 그리고, 도 1 및 도 2의 장치에 있어서는, 비압축 부호화부와 그 경로가 없기 때문에, 도 6의 장치( 80)에 있어서, 비압축 복호화부(88)로의 경로는 선택되지 않는다. 이것이 분명한 경우에는, 이러한 비압축 복호화부(88)로의 경로를 제공하지 않는 것도 가능하다. 도 6의 장치(80)에서는 복호화하고자 하는 비트 스트림이 입력되고, 복호화된 화상 신호가 출력된다. 도 6의 장치(80)는 경로 선택기(81, 85), 부호화 방식 판정기(84), 역변환 처리부(83), CABAC 처리부(82), 제한 감시기(86) 및 비압축 복호화기(88)에 의해 구성된다.
먼저, 각 매크로블록의 처리를 시작하면, 경로 선택기(81, 85)는 CABAC 처리부(82)의 경로를 선택한다. CABAC 처리부(82)에서는, 입력된 비트 스트림으로부터 매크로블록을 복호화하기 전에, 비트 스트림에 삽입된 매크로블록이 순수 데이터인지 여부를 나타내는 기호를 복호화하고, 부호화 방식 판정기(84)에서 순수 데이터인 것으로 판정된 경우, 경로 선택기(81, 85)는 비압축 복호화부(88)의 경로를 선택하며, 비압축 복호화부(88)로부터의 출력을 화상 신호로서 출력하게 된다. 비압축 복호화부(88)에서는 고정 길이 복호화를 실시하여 화상 데이터를 취득한다. 비압축 부호화부(88)가 선택된 경우에, CABAC 처리부(82)의 컨텍스트 연산부(92) 내의 컨텍스트 상태는 변경하지 않아도 되고, 미리 결정된 값으로 초기화해도 된다. 또한, 그 외의 규칙을 사용하여 변경해도 되며, 부호화 장치 측의 CABAC 처리부의 동작과 동기되어 있으면 된다. 또, 이 때, 동일 픽처 내의 다음 복호화되는 매크로블록의 복호화에 이용되는 예측기는 미리 결정된 값으로 설정된다. 예를 들면, 비압축 복호화된 매크로블록의 움직임 벡터는 제로(0)로 설정되고, 매크로블록 타입은 인트라 부호화로 설정된다. 이 예측기의 값도 부호화기 측과 동기되어 있으면 어떤 값을 설정해도 된다.
부호화 방식 판정기(84)에 의하여, 매크로블록 데이터가 CABAC 처리부(82)에 의해 처리되는 것으로 선택된 경우, 입력 비트 스트림은 CABAC 처리부(82)에 계속해서 입력된다.
CABAC 처리부(82)에서는, 입력 비트 스트림으로부터 헤더 정보와 양자화된 계수 정보가 기호 데이터로서 복호화되어 출력된다. 구체적으로는, 입력된 비트 스트림을, 컨텍스트 연산기(92)로부터의 컨텍스트 정보를 기초로 하여, CABAC 복호화기(90)에서 엔트로피 복호화하고, 거기서 출력된 이진 기호열을 역이진화 장치(91)에 의하여, 기호 데이터로 변환한다. 컨텍스트 연산기(92)에서는, 역이진화 장치(91)에 입력되는 이진 데이터와 역이진화 장치(91)로부터 출력되는 기호 데이터를 기초로 하여 컨텍스트를 갱신하고, 또한 컨텍스트 정보를 CABAC 복호화기(90)에 출력한다. 이 CABAC 처리부(88)의 동작은, '배경 기술'에서 설명한 JVT FCD 제9.2 절의 설명에 준거하는 것으로 한다.
역변환 처리부(83)에서는, 입력된 헤더 정보나 양자화된 계수 정보를 역양자화, 역DCT, 움직임 보상함으로써 화상 신호를 복호화하여 출력한다.
제한 감시기(86)는 CABAC 복호화기(90)에 입력되는 비트 데이터의 개수의 카운터와 출력된 이진 데이터의 개수의 카운터(비트 카운터(93))를 각각 독립적으로 가져, CABAC 복호화기(90)에 비트 데이터가 입력될 때마다 전자의 카운터를 1개씩 증가시키고, CABAC 복호화기(90)에서 이진 데이터가 출력될 때마다 후자의 카운터를 1개씩 증가시킨다. 이 카운터는 각각 매크로블록의 선두의 처리를 개시할 때에 제로(0)로 리셋된다. 이에 의하면, 각 매크로블록에 있어서의, CABAC 복호화기(90)에서의 입력 데이터와 출력 데이터의 각각의 개수를 카운트하는 것이 가능해진다.
제한 감시부(86)에서는, 이들 카운터 중의 어느 한쪽이 미리 설정된 임계값을 초과하였을 경우에, 에러 처리를 실행한다. 에러 처리로서는, 복호화 처리를 일단 중지하고, 다음 슬라이스 헤더나 픽처 헤더를 기다려서, 복호화 처리를 다시 개시하거나, 단순히 경고만을 발행하는 것만으로 복호화 처리는 계속 수행된다. 또, 에러 처리를 하지 않고, 복호화 처리를 계속 수행하는 경우도 가능하다.
장치(80)에 의하여, 복호화할 때에 CABAC 복호화기(90)에 입력 및 출력되는 데이터량을 감시할 수 있으므로, 상한을 넘는 데이터량이 입력 또는 출력되었다고 해도, 요구된 복호화 처리 시간을 만족시키도록 에러 처리 등을 하는 것이 가능하게 된다.
또, 장치(80)에는 반드시 제한 감시부(86)가 실장되어야 하는 것은 아니다. 그 경우에는, CABAC 부호화기(90)에 있어서 입출력되는 데이터량은 감시되지 않게 된다.
그리고, 장치(80)에서는 엔트로피 복호화로서 CABAC를 적용하는 경우의, 본 발명에 있어서의 화상 정보 복호화 장치의 실시예를 나타내고 있으나, 화상 부호화 장치의 실시예에도 나타낸 바와 같이, CABAC 처리부는 CAVLC 처리부로 치환 가능하다. 부호화 장치의 실시예에서 설명한 바와 같이, 실제의 처리에 대한 설명은, 장치가 매우 유사하기 때문에 생략한다. 즉, 부호화 장치와 마찬가지로, 매크로블록이 순수 데이터로 부호화된 때의 CAVLC의 컨텍스트의 갱신 방법을 미리 정의한다.
다음에, 본 발명에 있어서의 부호화된 비트 스트림의 실시예에 대하여 나타낸다. 여기까지의 설명에서 나타낸 바와 같이, 본 발명에서는 비트 스트림 내에 압축한 데이터에서도, 순수 데이터에서도 부호화할 수 있다. 이 때문에, 본 발명의 비트 스트림에서는, 매크로블록 헤더에 있어서, 그 매크로블록이 순수 데이터로서 부호화되어 있는지 그렇지 않은지를 명시적으로 나타낸 헤더 정보를 부가하고, 그 헤더 정보의 뒤에 순수 데이터 또는 압축된 비트 데이터 중 하나를 연결한다. 여기서, 순수 데이터로서 부호화되어 있는지 그렇지 않은지를 명시적으로 나타내기 위하여, 매크로블록 헤더 정보의 하나인 매크로블록 타입(macro block type)에 의해 명시한다. 반대로 말하면, 본 발명에 있어서의 비트 스트림은 상이한 부호화 방식에서 처리되는 매크로블록을 포함할 수 있다.
또 여기서는, 매크로블록의 헤더 정보로서 그 매크로블록의 부호화 방식을 지정하는 정보가 내장하고 있는 경우를 나타내고 있으나, 이 지정 정보를 슬라이스 헤더나 픽처 헤더에 삽입하면, 그들의 단위로 부호화 방식의 조합 및 지정을 행하는 것이 가능해진다.
본 발명에 있어서의 비트 스트림에는, 헤더 정보(예를 들면, 매크로블록 타입)가 CABAC 부호화되고, 이어서 순수 데이터(즉, 고정 길이 비트열)가 부호화되는 경우에, 순수 데이터를 부호화하기 전에, CABAC의 종단 처리를 행한 비트가 삽입된다.
또, 본 발명에 있어서의 비트 스트림은 CABAC로 부호화된 경우에, 지금까지의 실시예에서도 설명한 바와 같이, CABAC 부호화기 및 복호화기의 입력과 출력의 비트 카운터 중 어느 한쪽에서도 미리 설정된 임계값을 초과하지 않는 데이터에 의해 구성된다. 또, CAVLC로 부호화된 경우에는, CAVLC 부호화기의 출력 및 복호화기의 입력의 비트 카운터가, 미리 설정된 임계값을 초과하지 않는 데이터에 의해 구성된다. 이로부터, 본 발명에 있어서의 비트 스트림에 의하여, 화상 정보 부호화기 및 화상 정보 복호화기에 대하여, 어느 일정한 복호화 처리 시간을 보증하는 것을 가능하게 하고 있다.
본 발명에 있어서의, CABAC 부호화기 및 복호화기에 있어서의 입출력 데이터량을 제한하고 및 비압축 데이터를 부호화함으로써, 화상 정보 부호화 장치와 복호화 장치가 일정한 처리 시간을 보증하는 것이 가능해져, 그 결과 처리 시간을 보증하는 장치를 구현하는 것이 가능해진다. 또, CABAC가 아니고 CAVLC를 사용한 경우라도 마찬가지의 효과를 얻을 수 있다.
11: 입력 버퍼
12: 변환 처리부
13, 82: CABAC 처리부
14: 제한 검사기
15: 출력 버퍼
29: 매크로블록 처리부
45: 비압축 부호화기
63: CAVLC 처리기
64: 제한 감시기
88: 비압축 복호화부
90: CABAC 복호화기

Claims (3)

  1. 비트 스트림을 CABAC(Context-based Adaptive Binary Arithmetic Coding) 복호 처리하는 복호 장치에 있어서,
    매크로블록 타입이 비압축의 화소 정보를 포함하는 매크로블록인 것을 나타내는 경우에, 상기 비압축의 화소 정보를 포함하는 매크로블록에 대하여 CABAC 복호 처리를 종료 또는 초기화시키는 복호 수단
    을 구비하는 복호 장치.
  2. 비트 스트림을 CABAC(Context-based Adaptive Binary Arithmetic Coding) 복호 처리하는 복호 방법에 있어서,
    매크로블록 타입이 비압축의 화소 정보를 포함하는 매크로블록인 것을 나타내는 경우에, 상기 비압축의 화소 정보를 포함하는 매크로블록에 대하여 CABAC 복호 처리를 종료 또는 초기화시키는 복호 단계
    를 포함하는 복호 방법.


  3. 삭제
KR1020117005996A 2002-10-10 2003-10-09 복호 장치 및 복호 방법 KR101157059B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2002332901A JP4240283B2 (ja) 2002-10-10 2002-10-10 復号装置及び復号方法
JPJP-P-2002-332901 2002-10-10
PCT/JP2003/012969 WO2004034330A1 (en) 2002-10-10 2003-10-09 Video-information encoding method and video-information decoding method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020107026207A Division KR101142988B1 (ko) 2002-10-10 2003-10-09 부호화 장치 및 부호화 방법

Related Child Applications (4)

Application Number Title Priority Date Filing Date
KR1020117018578A Division KR101156996B1 (ko) 2002-10-10 2003-10-09 복호 장치 및 복호 방법
KR1020117018579A Division KR101156997B1 (ko) 2002-10-10 2003-10-09 부호화 장치 및 부호화 방법
KR1020117018577A Division KR101157058B1 (ko) 2002-10-10 2003-10-09 부호화 장치 및 부호화 방법
KR1020117018580A Division KR101157055B1 (ko) 2002-10-10 2003-10-09 복호 장치 및 복호 방법

Publications (2)

Publication Number Publication Date
KR20110044298A KR20110044298A (ko) 2011-04-28
KR101157059B1 true KR101157059B1 (ko) 2012-06-21

Family

ID=32089632

Family Applications (10)

Application Number Title Priority Date Filing Date
KR1020107011347A KR101091751B1 (ko) 2002-10-10 2003-10-09 복호 장치 및 복호 방법
KR1020117018580A KR101157055B1 (ko) 2002-10-10 2003-10-09 복호 장치 및 복호 방법
KR1020117018577A KR101157058B1 (ko) 2002-10-10 2003-10-09 부호화 장치 및 부호화 방법
KR1020117005995A KR101106086B1 (ko) 2002-10-10 2003-10-09 부호화 장치 및 부호화 방법
KR1020117005996A KR101157059B1 (ko) 2002-10-10 2003-10-09 복호 장치 및 복호 방법
KR1020107026207A KR101142988B1 (ko) 2002-10-10 2003-10-09 부호화 장치 및 부호화 방법
KR1020057006173A KR101031561B1 (ko) 2002-10-10 2003-10-09 부호화 장치 및 부호화 방법
KR1020117018579A KR101156997B1 (ko) 2002-10-10 2003-10-09 부호화 장치 및 부호화 방법
KR1020107011348A KR101091752B1 (ko) 2002-10-10 2003-10-09 복호 장치 및 복호 방법
KR1020117018578A KR101156996B1 (ko) 2002-10-10 2003-10-09 복호 장치 및 복호 방법

Family Applications Before (4)

Application Number Title Priority Date Filing Date
KR1020107011347A KR101091751B1 (ko) 2002-10-10 2003-10-09 복호 장치 및 복호 방법
KR1020117018580A KR101157055B1 (ko) 2002-10-10 2003-10-09 복호 장치 및 복호 방법
KR1020117018577A KR101157058B1 (ko) 2002-10-10 2003-10-09 부호화 장치 및 부호화 방법
KR1020117005995A KR101106086B1 (ko) 2002-10-10 2003-10-09 부호화 장치 및 부호화 방법

Family Applications After (5)

Application Number Title Priority Date Filing Date
KR1020107026207A KR101142988B1 (ko) 2002-10-10 2003-10-09 부호화 장치 및 부호화 방법
KR1020057006173A KR101031561B1 (ko) 2002-10-10 2003-10-09 부호화 장치 및 부호화 방법
KR1020117018579A KR101156997B1 (ko) 2002-10-10 2003-10-09 부호화 장치 및 부호화 방법
KR1020107011348A KR101091752B1 (ko) 2002-10-10 2003-10-09 복호 장치 및 복호 방법
KR1020117018578A KR101156996B1 (ko) 2002-10-10 2003-10-09 복호 장치 및 복호 방법

Country Status (8)

Country Link
US (13) US7796690B2 (ko)
EP (11) EP2535870B1 (ko)
JP (1) JP4240283B2 (ko)
KR (10) KR101091751B1 (ko)
CN (2) CN101031086B (ko)
AU (1) AU2003273187B2 (ko)
SG (2) SG180037A1 (ko)
WO (1) WO2004034330A1 (ko)

Families Citing this family (101)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4240283B2 (ja) * 2002-10-10 2009-03-18 ソニー株式会社 復号装置及び復号方法
US7590059B2 (en) * 2004-05-21 2009-09-15 Broadcom Corp. Multistandard video decoder
US20050259742A1 (en) * 2004-05-21 2005-11-24 Hellman Timothy M System and method for choosing tables in CAVLC
ES2362787T3 (es) 2004-08-31 2011-07-13 Panasonic Corporation Aparato y procedimiento de codificación de imágenes en movimiento.
US7724830B2 (en) 2004-11-09 2010-05-25 Panasonic Corporation Decoding-processing apparatus and method
KR100694098B1 (ko) 2005-04-04 2007-03-12 한국과학기술원 산술 복호 방법 및 그 장치
KR100703776B1 (ko) 2005-04-19 2007-04-06 삼성전자주식회사 향상된 코딩 효율을 갖는 컨텍스트 기반 적응적 산술 코딩및 디코딩 방법과 이를 위한 장치, 이를 포함하는 비디오코딩 및 디코딩 방법과 이를 위한 장치
EP1878253A1 (en) * 2005-04-19 2008-01-16 Samsung Electronics Co., Ltd. Context-based adaptive arithmetic coding and decoding methods and apparatuses with improved coding efficiency and video coding and decoding methods and apparatuses using the same
JP4856954B2 (ja) 2005-06-08 2012-01-18 パナソニック株式会社 画像符号化装置
US7804903B2 (en) * 2005-06-27 2010-09-28 Intel Corporation Hardware-based CABAC decoder
JP2007074648A (ja) * 2005-09-09 2007-03-22 Matsushita Electric Ind Co Ltd Cabac復号化装置
JP4440863B2 (ja) * 2005-09-13 2010-03-24 パナソニック株式会社 符号化復号化装置、符号化復号化方法、符号化復号化集積回路、および符号化復号化プログラム
CN101288313B (zh) 2005-10-14 2011-09-14 日本电气株式会社 图像编码方法及使用此方法的装置
JP4540585B2 (ja) 2005-10-20 2010-09-08 パナソニック株式会社 符号化装置及び復号化装置
KR100644713B1 (ko) 2005-10-31 2006-11-10 삼성전자주식회사 컨텍스트 기반 적응적 이진 산술 코딩 복호기에서 원소구문을 복호화하는 방법 및 이를 위한 복호화 장치
US7245242B2 (en) * 2005-11-28 2007-07-17 Conexant Systems, Inc. Decoding systems and methods
JP2007166039A (ja) * 2005-12-09 2007-06-28 Matsushita Electric Ind Co Ltd 画像符号化装置
DE102005058878B4 (de) * 2005-12-09 2007-08-09 Infineon Technologies Ag Datentransfervorrichtung und Verfahren zum Senden von Daten
US7983343B2 (en) * 2006-01-12 2011-07-19 Lsi Corporation Context adaptive binary arithmetic decoding for high definition video
US8116371B2 (en) * 2006-03-08 2012-02-14 Texas Instruments Incorporated VLC technique for layered video coding using distinct element grouping
JP4062711B2 (ja) * 2006-04-17 2008-03-19 俊宏 南 動画像符号化装置
FR2900004A1 (fr) * 2006-04-18 2007-10-19 Thomson Licensing Sas Procede et dispositif de decodage arithmetique
JP4555257B2 (ja) 2006-06-06 2010-09-29 パナソニック株式会社 画像符号化装置
US7626521B2 (en) * 2006-06-08 2009-12-01 Via Technologies, Inc. Decoding control of computational core of programmable graphics processing unit
US7656326B2 (en) * 2006-06-08 2010-02-02 Via Technologies, Inc. Decoding of context adaptive binary arithmetic codes in computational core of programmable graphics processing unit
US7623049B2 (en) * 2006-06-08 2009-11-24 Via Technologies, Inc. Decoding of context adaptive variable length codes in computational core of programmable graphics processing unit
US7626518B2 (en) * 2006-06-08 2009-12-01 Via Technologies, Inc. Decoding systems and methods in computational core of programmable graphics processing unit
JP4584871B2 (ja) 2006-06-09 2010-11-24 パナソニック株式会社 画像符号化記録装置および画像符号化記録方法
JP2008005163A (ja) * 2006-06-21 2008-01-10 Matsushita Electric Ind Co Ltd 画像符号化装置および画像符号化方法
JP4928176B2 (ja) * 2006-06-27 2012-05-09 キヤノン株式会社 映像符号化装置及び映像符号化方法
JP2008022383A (ja) 2006-07-13 2008-01-31 Matsushita Electric Ind Co Ltd 画像符号化装置
JP4997243B2 (ja) * 2006-08-08 2012-08-08 パナソニック株式会社 画像符号化装置、その方法およびその集積回路
JP4717780B2 (ja) * 2006-11-01 2011-07-06 キヤノン株式会社 符号化装置及びその制御方法
JP2008124969A (ja) * 2006-11-15 2008-05-29 Ikegami Tsushinki Co Ltd 画像可逆符号化方法及び画像可逆符号化装置
JP4799377B2 (ja) * 2006-11-17 2011-10-26 キヤノン株式会社 画像符号化装置
EP2088784B1 (en) * 2006-11-28 2016-07-06 Panasonic Corporation Encoding device and encoding method
CN101502123B (zh) * 2006-11-30 2011-08-17 松下电器产业株式会社 编码装置
JP4742018B2 (ja) * 2006-12-01 2011-08-10 キヤノン株式会社 画像符号化装置及び画像符号化方法
JP2008141530A (ja) * 2006-12-01 2008-06-19 Canon Inc 画像符号化装置及び画像符号化方法
AR064274A1 (es) 2006-12-14 2009-03-25 Panasonic Corp Metodo de codificacion de imagenes en movimiento, dispositivo de codificacion de imagenes en movimiento, metodo de grabacion de imagenes en movimiento, medio de grabacion, metodo de reproduccion de imagenes en movimiento, dispositivo de reproduccion de imagenes en movimiento, y sistema de reproducci
EP2124343A4 (en) * 2006-12-14 2012-01-11 Nec Corp METHOD, DEVICE AND VIDEO PROGRAMMING PROGRAM
JP4823090B2 (ja) * 2007-02-01 2011-11-24 パナソニック株式会社 画像符号化装置
KR20080086766A (ko) * 2007-03-23 2008-09-26 삼성전자주식회사 픽셀 단위의 컨텍스트 모델을 이용한 영상의 부호화,복호화 방법 및 장치
US7443318B2 (en) * 2007-03-30 2008-10-28 Hong Kong Applied Science And Technology Research Institute Co. Ltd. High speed context memory implementation for H.264
JPWO2008129855A1 (ja) * 2007-04-11 2010-07-22 パナソニック株式会社 画像データ復号化装置、画像データ復号化方法
WO2008142956A1 (ja) 2007-05-21 2008-11-27 Nec Corporation 映像符号化装置、映像符号化方法および映像符号化プログラム
JP4745293B2 (ja) * 2007-06-08 2011-08-10 パナソニック株式会社 画像データの符号化方法および符号化装置、復号装置
CN101933331B (zh) * 2007-09-06 2014-04-09 日本电气株式会社 视频编码装置、视频编码方法、视频解码方法
JP4847423B2 (ja) * 2007-09-20 2011-12-28 キヤノン株式会社 動画像符号化装置、および、コンピュータプログラム
JP4865662B2 (ja) 2007-09-26 2012-02-01 キヤノン株式会社 エントロピー符号化装置、エントロピー符号化方法およびコンピュータプログラム
JP4850806B2 (ja) * 2007-10-01 2012-01-11 キヤノン株式会社 エントロピー符号化装置、エントロピー符号化方法およびコンピュータプログラム
JP2009100125A (ja) * 2007-10-15 2009-05-07 Toshiba Corp 符号化装置
JP5007259B2 (ja) * 2008-03-27 2012-08-22 ルネサスエレクトロニクス株式会社 画像符号化装置
JP5524072B2 (ja) 2008-10-10 2014-06-18 株式会社東芝 動画像符号化装置
JP5116704B2 (ja) 2009-02-02 2013-01-09 パナソニック株式会社 画像符号化装置及び画像符号化方法
JP2012124542A (ja) * 2009-03-03 2012-06-28 Hitachi Ltd 動画像符号化方法及び動画像復号化方法
WO2011034148A1 (ja) * 2009-09-18 2011-03-24 シャープ株式会社 符号化装置、復号装置、動画像符号化装置、動画像復号装置、および符号化データ
EP2355510A1 (en) * 2009-12-21 2011-08-10 Alcatel Lucent Method and arrangement for video coding
CN105847806B (zh) * 2010-01-06 2019-05-03 Oppo广东移动通信有限公司 视频信息编码方法和视频信息编码系统
US8736467B2 (en) * 2010-04-09 2014-05-27 Ntt Docomo, Inc. Adaptive binarization for arithmetic coding
BR122020015660B1 (pt) 2010-07-13 2023-01-10 Nec Corporation Dispositivo de decodificação de vídeo e método de decodificação de vídeo
HUE039299T2 (hu) 2010-09-09 2018-12-28 Fraunhofer Ges Forschung Entrópia kódolási és dekódolási séma
JP5194082B2 (ja) * 2010-09-13 2013-05-08 パナソニック株式会社 画像符号化装置
US10165276B2 (en) * 2010-09-30 2018-12-25 Texas Instruments Incorporated Method and apparatus for frame coding in vertical raster scan order for HEVC
EP2645714B1 (en) 2010-11-26 2016-06-29 Nec Corporation Video decoding device, video decoding method, and program
EP2661886B1 (en) * 2011-01-04 2020-11-18 BlackBerry Limited Coding of residual data in predictive compression
WO2012092661A1 (en) 2011-01-04 2012-07-12 Research In Motion Limited Coding of residual data in predictive compression
AU2016201357B2 (en) * 2011-01-11 2017-04-20 Sony Group Corporation Image processing apparatus and method
JP5850214B2 (ja) 2011-01-11 2016-02-03 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
DK2664070T3 (en) * 2011-01-14 2017-01-09 Ge Video Compression Llc And decoding Entropikodnings-
JP4936574B2 (ja) * 2011-03-02 2012-05-23 キヤノン株式会社 符号化装置及びその制御方法
JP2014103429A (ja) * 2011-03-10 2014-06-05 Panasonic Corp 動画像符号化装置および動画像符号化方法
CN107249131B (zh) 2011-03-30 2020-04-24 Lg 电子株式会社 视频解码装置和视频编码装置
CN103636206B (zh) * 2011-03-31 2017-07-14 汤姆逊许可公司 上下文自适应二进制数据算术编码(cabac)解码技术
US8634474B2 (en) * 2011-05-03 2014-01-21 Texas Instruments Incorporated CABAC macroblock rewind and end of slice creation to control slice size for video encoders
US9060173B2 (en) * 2011-06-30 2015-06-16 Sharp Kabushiki Kaisha Context initialization based on decoder picture buffer
US9621908B2 (en) * 2011-09-06 2017-04-11 Mediatek Inc. Dynamic load balancing for video decoding using multiple processors
FR2982447A1 (fr) * 2011-11-07 2013-05-10 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
GB201119180D0 (en) * 2011-11-07 2011-12-21 Sony Corp Data encoding and decoding
FR2982446A1 (fr) 2011-11-07 2013-05-10 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
US9654139B2 (en) 2012-01-19 2017-05-16 Huawei Technologies Co., Ltd. High throughput binarization (HTB) method for CABAC in HEVC
US20130188736A1 (en) 2012-01-19 2013-07-25 Sharp Laboratories Of America, Inc. High throughput significance map processing for cabac in hevc
US9743116B2 (en) 2012-01-19 2017-08-22 Huawei Technologies Co., Ltd. High throughput coding for CABAC in HEVC
US10616581B2 (en) 2012-01-19 2020-04-07 Huawei Technologies Co., Ltd. Modified coding for a transform skipped block for CABAC in HEVC
US9860527B2 (en) 2012-01-19 2018-01-02 Huawei Technologies Co., Ltd. High throughput residual coding for a transform skipped block for CABAC in HEVC
BR122018010479B1 (pt) * 2012-04-15 2020-05-12 Samsung Electronics Co., Ltd. Aparelho para decodificar vídeo
US20130343459A1 (en) * 2012-06-22 2013-12-26 Nokia Corporation Method and apparatus for video coding
JP2014011481A (ja) * 2012-06-27 2014-01-20 Canon Inc 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
JP2014179707A (ja) * 2013-03-13 2014-09-25 Toshiba Corp 画像符号化装置、及びその方法
CN103391440A (zh) * 2013-07-19 2013-11-13 华为技术有限公司 语法信息的二值化编码处理方法及装置
CN105830101A (zh) * 2013-12-18 2016-08-03 宝马股份公司 用于装载机动车的方法和系统
JP5850272B2 (ja) * 2014-01-10 2016-02-03 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
US20150334425A1 (en) * 2014-05-14 2015-11-19 Blackberry Limited Adaptive context initialization
US9877048B2 (en) * 2014-06-09 2018-01-23 Qualcomm Incorporated Entropy coding techniques for display stream compression (DSC)
WO2016077456A1 (en) 2014-11-11 2016-05-19 Akamai Technologies, Inc. Content delivery to physically-proximate devices using a mesh-assisted cache
US10063653B2 (en) 2014-12-29 2018-08-28 Akamai Technologies, Inc. Distributed server architecture for supporting a predictive content pre-fetching service for mobile device users
US10771583B2 (en) 2014-12-29 2020-09-08 Akamai Technologies, Inc. Managing mobile device user subscription and service preferences to predictively pre-fetch content
CN104579360B (zh) * 2015-02-04 2018-07-31 华为技术有限公司 一种数据处理的方法和设备
US10958444B2 (en) 2015-11-25 2021-03-23 Akamai Technologies, Inc. Uniquely identifying and securely communicating with an appliance in an uncontrolled network
FR3046656B1 (fr) * 2016-01-11 2019-11-29 Valeo Iluminacion Module lumineux pour vehicule automobile comprenant deux types de sources lumineuses
US10108883B2 (en) 2016-10-28 2018-10-23 Intuit Inc. Image quality assessment and improvement for performing optical character recognition

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5654702A (en) * 1994-12-16 1997-08-05 National Semiconductor Corp. Syntax-based arithmetic coding for low bit rate videophone

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4891643A (en) * 1986-09-15 1990-01-02 International Business Machines Corporation Arithmetic coding data compression/de-compression by selectively employed, diverse arithmetic coding encoders and decoders
JPH02248179A (ja) 1989-03-22 1990-10-03 Toshiba Corp 画像符号化方式
KR950002658B1 (ko) 1992-04-11 1995-03-24 주식회사금성사 영상신호의 압축 부호화 및 복호화장치
JP2954438B2 (ja) 1992-11-19 1999-09-27 三菱電機株式会社 符号化装置
US5418532A (en) * 1993-05-13 1995-05-23 Bell Communications Research, Inc. Method and system for efficient, multiplication-free arithmetic coding
JPH06334872A (ja) 1993-05-26 1994-12-02 Fuji Xerox Co Ltd 画像処理装置
JP2688164B2 (ja) * 1993-07-26 1997-12-08 インターナショナル・ビジネス・マシーンズ・コーポレイション 情報処理システム
JPH07264417A (ja) 1994-03-18 1995-10-13 Oki Electric Ind Co Ltd 画像符号化方法
JP3201448B2 (ja) 1994-03-31 2001-08-20 三菱電機株式会社 符号化復号化装置,符号化装置,および復号化装置
KR100254402B1 (ko) * 1994-12-19 2000-05-01 전주범 줄-길이 부호화방법 및 줄-길이 부호화기
JP3302210B2 (ja) * 1995-02-10 2002-07-15 富士通株式会社 データ符号化/復号化方法及び装置
JP3992303B2 (ja) 1995-06-22 2007-10-17 ソニー株式会社 信号圧縮装置と信号伸長装置および信号圧縮方法と信号伸長方法
JPH09135358A (ja) * 1995-11-08 1997-05-20 Nec Corp 算術符号を用いた画像符号化装置
JPH09149248A (ja) 1995-11-18 1997-06-06 Ricoh Co Ltd 画像読取装置
JP3409552B2 (ja) 1995-12-27 2003-05-26 三菱電機株式会社 ディジタル情報符号化装置、ディジタル情報復号化装置、及びディジタル情報符号化・復号化装置
JPH10108184A (ja) 1996-10-02 1998-04-24 Sony Corp 画像データ処理装置およびその方法
JPH10191343A (ja) 1996-12-24 1998-07-21 Sony Corp 映像データ圧縮装置およびその方法
JP3367370B2 (ja) 1997-03-14 2003-01-14 三菱電機株式会社 適応符号化方法
KR100535631B1 (ko) 1997-09-29 2006-07-10 주식회사 팬택앤큐리텔 적응적 비월주사 모양정보 부호화/복호화 장치및 방법
US6256415B1 (en) * 1998-06-10 2001-07-03 Seiko Epson Corporation Two row buffer image compression (TROBIC)
JP2000013794A (ja) 1998-06-23 2000-01-14 Mitsubishi Electric Corp 動画像符号化装置、動画像符号化方法、動画像復号装置、および動画像復号方法
US6704310B1 (en) * 1999-06-30 2004-03-09 Logitech Europe, S.A. Header encoding method and apparatus for packet-based bus
JP3684128B2 (ja) 2000-02-18 2005-08-17 キヤノン株式会社 算術符号化/復号化方法ならびに算術符号化/復号化装置
TW527832B (en) 2000-04-20 2003-04-11 Matsushita Electric Ind Co Ltd Video encoding apparatus that adjusts code amount by skipping encoding of image data
US6711211B1 (en) 2000-05-08 2004-03-23 Nokia Mobile Phones Ltd. Method for encoding and decoding video information, a motion compensated video encoder and a corresponding decoder
JP2001332976A (ja) 2000-05-24 2001-11-30 Canon Inc 画像処理装置及び画像処理方法
GB0016838D0 (en) 2000-07-07 2000-08-30 Forbidden Technologies Plc Improvements relating to representations of compressed video
FR2820255A1 (fr) * 2001-01-26 2002-08-02 France Telecom Procedes de codage et de decodage d'images, dispositifs, systemes, signaux et applications correspondants
FR2820256B1 (fr) 2001-01-26 2004-11-19 France Telecom Procedes de codage et de decodage d'images, dispositifs, systemes signaux et applications correspondantes
US6856701B2 (en) * 2001-09-14 2005-02-15 Nokia Corporation Method and system for context-based adaptive binary arithmetic coding
US6690307B2 (en) * 2002-01-22 2004-02-10 Nokia Corporation Adaptive variable length coding of digital video
US7206448B2 (en) * 2002-02-28 2007-04-17 At&T Corp. System and method for using pattern vectors for video and image coding and decoding
US6906647B2 (en) * 2002-09-20 2005-06-14 Ntt Docomo, Inc. Method and apparatus for arithmetic coding, including probability estimation state table creation
US6825782B2 (en) * 2002-09-20 2004-11-30 Ntt Docomo, Inc. Method and apparatus for arithmetic coding and termination
AU2003279015A1 (en) * 2002-09-27 2004-04-19 Videosoft, Inc. Real-time video coding/decoding
JP4240283B2 (ja) 2002-10-10 2009-03-18 ソニー株式会社 復号装置及び復号方法
US20040101205A1 (en) * 2002-11-27 2004-05-27 General Electric Company Position coding system and method
US7688895B2 (en) * 2003-07-22 2010-03-30 Lsi Corporation Method and/or circuit for binary arithmetic decoding decisions before termination

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5654702A (en) * 1994-12-16 1997-08-05 National Semiconductor Corp. Syntax-based arithmetic coding for low bit rate videophone

Also Published As

Publication number Publication date
SG180037A1 (en) 2012-05-30
EP2533210A2 (en) 2012-12-12
EP2533208A2 (en) 2012-12-12
EP2533207A2 (en) 2012-12-12
US8494044B2 (en) 2013-07-23
US20100329351A1 (en) 2010-12-30
KR101156997B1 (ko) 2012-06-20
US20110222599A1 (en) 2011-09-15
US8189658B2 (en) 2012-05-29
CN101031086A (zh) 2007-09-05
CN1695168A (zh) 2005-11-09
KR101091751B1 (ko) 2011-12-08
EP2533208A3 (en) 2012-12-26
EP2533203B1 (en) 2018-05-09
EP2533204A2 (en) 2012-12-12
US20110216823A1 (en) 2011-09-08
CN1316433C (zh) 2007-05-16
EP2533209A3 (en) 2012-12-26
US20160044313A1 (en) 2016-02-11
US20050249289A1 (en) 2005-11-10
KR20100066585A (ko) 2010-06-17
KR20110003542A (ko) 2011-01-12
WO2004034330A1 (en) 2004-04-22
JP2004135251A (ja) 2004-04-30
US9979966B2 (en) 2018-05-22
US8428139B2 (en) 2013-04-23
US20100329330A1 (en) 2010-12-30
EP2535870A3 (en) 2013-03-20
AU2003273187B2 (en) 2009-08-27
US8170100B2 (en) 2012-05-01
US8494043B2 (en) 2013-07-23
EP2533206B1 (en) 2018-05-09
EP2533209A2 (en) 2012-12-12
KR20110044298A (ko) 2011-04-28
EP2533203A2 (en) 2012-12-12
US20110216824A1 (en) 2011-09-08
EP2533206A3 (en) 2012-12-26
EP2533208B1 (en) 2018-06-20
EP2535870A2 (en) 2012-12-19
KR101142988B1 (ko) 2012-05-08
KR101157058B1 (ko) 2012-06-21
EP2535871A2 (en) 2012-12-19
US8472518B2 (en) 2013-06-25
KR20110099062A (ko) 2011-09-05
US7796690B2 (en) 2010-09-14
EP2533210A3 (en) 2013-03-13
CN101031086B (zh) 2011-12-14
KR20050057642A (ko) 2005-06-16
EP2535870B1 (en) 2018-05-16
EP2533206A2 (en) 2012-12-12
US20110216825A1 (en) 2011-09-08
AU2003273187A1 (en) 2004-05-04
EP2533204A3 (en) 2013-02-27
KR101031561B1 (ko) 2011-04-27
EP2535871A3 (en) 2013-02-20
EP2533210B1 (en) 2018-06-20
EP2533203A3 (en) 2013-02-20
EP2535871B1 (en) 2018-05-16
EP2533205A3 (en) 2012-12-26
KR20110048555A (ko) 2011-05-11
US20110007818A1 (en) 2011-01-13
KR101156996B1 (ko) 2012-06-21
KR20100066586A (ko) 2010-06-17
EP2533207B1 (en) 2018-05-16
US9204145B2 (en) 2015-12-01
US8477837B2 (en) 2013-07-02
KR20110096184A (ko) 2011-08-29
EP1550081A1 (en) 2005-07-06
US8467446B2 (en) 2013-06-18
US20110044387A1 (en) 2011-02-24
US8467454B2 (en) 2013-06-18
EP2533204B1 (en) 2018-06-20
EP1550081B1 (en) 2015-12-09
EP2533205A2 (en) 2012-12-12
EP2533209B1 (en) 2018-05-16
EP2533207A3 (en) 2013-02-27
US20130279579A1 (en) 2013-10-24
US20110216822A1 (en) 2011-09-08
KR101091752B1 (ko) 2011-12-08
JP4240283B2 (ja) 2009-03-18
KR101106086B1 (ko) 2012-01-18
SG167660A1 (en) 2011-01-28
KR101157055B1 (ko) 2012-06-21
EP2533205B1 (en) 2018-06-20
KR20110096183A (ko) 2011-08-29
US8160135B2 (en) 2012-04-17
US20100329331A1 (en) 2010-12-30
KR20110096182A (ko) 2011-08-29

Similar Documents

Publication Publication Date Title
KR101157059B1 (ko) 복호 장치 및 복호 방법

Legal Events

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

Payment date: 20150601

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160603

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170602

Year of fee payment: 6