KR100976192B1 - 콘텍스트-적응형 vlc 비디오 변환 계수 인코딩/디코딩방법 및 장치 - Google Patents

콘텍스트-적응형 vlc 비디오 변환 계수 인코딩/디코딩방법 및 장치 Download PDF

Info

Publication number
KR100976192B1
KR100976192B1 KR1020047015033A KR20047015033A KR100976192B1 KR 100976192 B1 KR100976192 B1 KR 100976192B1 KR 1020047015033 A KR1020047015033 A KR 1020047015033A KR 20047015033 A KR20047015033 A KR 20047015033A KR 100976192 B1 KR100976192 B1 KR 100976192B1
Authority
KR
South Korea
Prior art keywords
coefficients
codeword
encoding
macroblock
picture
Prior art date
Application number
KR1020047015033A
Other languages
English (en)
Other versions
KR20050011734A (ko
Inventor
릴리볼드카알오.
브존테가아드기슬
Original Assignee
리얼네트웍스 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to US36703202P priority Critical
Priority to US60/367,032 priority
Priority to US10/232,337 priority
Priority to US10/232,337 priority patent/US7099387B2/en
Application filed by 리얼네트웍스 인코포레이티드 filed Critical 리얼네트웍스 인코포레이티드
Priority to PCT/US2003/007884 priority patent/WO2003084242A2/en
Publication of KR20050011734A publication Critical patent/KR20050011734A/ko
Application granted granted Critical
Publication of KR100976192B1 publication Critical patent/KR100976192B1/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/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/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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Abstract

비디오 픽처의 매크로블록의 샘플 블록의 변환 계수는 트레일링 원 계수 전의 논제로 계수의 수 및 트레일링 원 계수의 수를 조합 방식으로 적응형으로 인코딩함으로써 인코딩된다. 변환 계수는 트레일링 원 계수의 하나 이상의 부호, 논제로 계수의 레벨 측정값, 논제로 계수내에 삽입된 제로 계수의 전체 수, 및 제로 계수의 각각의 런길이를 적응형으로 인코딩함으로써 더 인코딩될 수 있다. 상기 수 및 트레일링 원 계수의 적응형 인코딩은 하나 이상의 이웃하는 샘플 블록의 관점에서 실행될 수 있지만, 레벨 측정값의 인코딩은 이전에 인코딩된 레벨 측정값 및 매크로블록의 양자화 파라미터의 관점에서 실행될 수 있다. 디코딩은 역방식으로 실행될 수 있다.
Figure 112004043188316-pct00085
비디오 픽처, 매크로블록, 샘플 블록, 변환 계수, 트레일링 원 계수, 제로 계수, 런길이, 양자화 파라미터

Description

콘텍스트-적응형 VLC 비디오 변환 계수 인코딩/디코딩 방법 및 장치{CONTEXT-ADAPTIVE VLC VIDEO TRANSFORM COEFFICIENTS ENCODING/DECODING METHODS AND APPARATUSES}

본 발명은 비디오 인코딩/디코딩의 분야에 관한 것이다. 보다 상세하게는, 본 발명은 픽처의 매크로블록의 (루마/크로마) 블록의 변환 계수의 인코딩, 및 이 인코딩의 디코딩에 관한 것이다.

마이크로프로세 및 비디오 관련 기술에서의 진보로 인해 수많은 타입의 비디오 디바이스가 광범위하게 배치 및 채택되게 되었다. 이러한 비디오 디바이스의 예는 디지털 캠코더, DVD 플레이어, 서버는 물론 비디오 이네이블 랩톱 및 데스트톱 컴퓨팅 디바이스등을 포함하지만 이에 제한되는 것은 아니다.

또한, 네트워킹, 통신, 위성 및 다른 관련된 기술에서의 진보로 인해 인터넷과 같은 공중망을 통한 배송을 포함한, 온디맨드 및/또는 실시간 온라인 배송이 증가하게 되었다.

비디오가 (예를 들어, DVD 플레이어로부터의) 오프라인으로 배송되든 또는 (예를 들어, 비디오 서버로부터의) 온라인으로 배송되든가에 관계없이, 고품질 비디오는 본래 대용량의 데이터를 필요로 한다. 따라서, 비디오 배송 및 렌더링은 자 주 저장되고, 검색되고 및/또는 전송될 데이터량을 감소시키기 위해 인코딩 및 디코딩을 수반한다.

비디오의 인코딩/디코딩은 자주 픽처의 스트림으로서 비디오를 처리하는 단계를 포함한다. 각각의 픽처는 (보통 2개의 인터리빙된 필드로 구성된) 필드 또는 프레임일 수 있고, 수많은 매크로블록으로 분할된다. 각각의 매크로블록은 자주 다양한 크기의 블록으로 서브 분할되는데, 이것은 다양한 타입의 수많은 샘플, 루마 및/또는 크로마 샘플로 변환되거나 양자화된다.

수많은 인코딩/디코딩 기술이 당업분야에서 알려져 있다. 예를 들어, 일부 기술은 단일 가변 길이 코딩(VLC) 방법을 사용하여 매크로블록의 다양한 파라미터를 인코딩한다. 이 기술은 실행하기에 간단하지만, 데이터의 감소량, 즉, 압축량은 그리 많지는 않다.

콘텍스트에 기초한 적응형 2진 대수 코딩(CABAC)과 같은 다른 기술은 전체 효율성을 향상시키기 위해 콘텍스트 적응 및 대수 코딩을 사용한다. 그러나, CABAC 와 같은 기술은 복잡하고, 비용이 많이 들고, 실행하기가 어렵다.

그래서, 종래 논-콘텍스트-적응형 기술보다 보다 효율적이지만 지금까지 알려진 콘텍스트-적응형 기술보다 실행하기에 덜 복잡한 콘텍스트-적응형 기술이 필요하다.

본 발명은 실시예로서 설명될 것이고 동일한 부재번호가 유사한 요소를 나타내는 첨부된 도면에서 설명될 것이지만, 이에 제한되는 것은 아니다.

도 1은 일실시예에 따라, 픽처의 매크로블록의 (루마/크로마) 블록의 변환 계수를 인코딩하는 본 발명의 콘텍스트-적응형 VLC 인코더의 개략도,

도 2는 일실시예에 따라, 픽처의 매크로블록의 (루마/크로마) 블록의 일 시리즈의 변환 계수의 계수의 수 및 트레일링 원 계수의 수를 조합된 방식으로 인코딩하는, 도 1의 인코더 블록의 관련 태양의 동작 흐름도를 도시하는 도면,

도 3은 일실시예에 따라, 픽처의 매크로블록의 (루마/크로마) 블록의 변환 계수의 레벨 측정치를 인코딩하는, 도 1의 인코더 블록의 관련 태양의 동작 흐름도,

도 4는 일실시예에 따른, 픽처의 매크로블록의 (루마/크로마) 블록의 변환 계수의 논제로 계수 사이에 삽입된 제로 계수의 수 및 제로 계수의 각각의 런길이를 인코딩하는, 도 1의 인코더의 관련 태양의 동작 흐름도,

도 5는 일실시예에 따른, 도 1의 인코더의 인코딩 원리와 유사한 인코딩 원리에 따라 인코딩된 변환 계수를 디코딩하는 본 발명의 콘텍스트-적응형 VLC 디코더의 개략도,

도 6은 일실시예에 따라, 본 발명의 인코딩/디코딩 기술로서 통합된 인코더 및 디코더를 가지고 있는 비디오 디바이스를 도시하는 도면,

도 7은 일실시예에 따라, 본 발명의 인코딩/디코딩 능력을 디바이스에 부여하기 위해 디바이스를 프로그래밍하도록 사용되기 위해 설계된 본 발명의 인코더/디코더의 소프트웨어 구현예를 갖는 기록가능 매체를 구비한 제조품을 도시한 도면, 및

도 8은 일실시예에 따라, 본 발명의 인코딩/디코딩 기술로써 통합된 비디오 송신기 디바이스 및 비디오 수신기 디바이스를 가지고 있는 시스템을 도시한 도면.

본 발명은 콘텍스트-적응형 VLC 변환 계수 인코더, 보완 디코더, 이러한 인코더 및/또는 디코더를 구비한 디바이스, 이러한 디바이스로 구성된 시스템 및, 이러한 요소, 디바이스 및 시스템을 동작시키는 방법 및 이와 관련된 것들을 포함한다.

다음의 설명에서, 본 발명의 다양한 태양이 설명될 것이다. 그러나, 본 발명이 본 발명의 일부의 태양만으로 또는 모든 태양으로 실행될 수 있다는 것을 당업자는 이해할 것이다. 설명의 목적을 위해 특정 수, 재료, 및 구성이 본 발명의 완전한 이해를 위해 제공되었다. 그러나, 본 발명이 특정 디테일 없이 실행될 수 있다는 것을 당업자는 이해할 것이다. 다른 예에서, 주지된 특징은 본 발명을 명료하도록 하기 위해 생락되거나 단순화되었다.

용어

명세서의 일부는 당업분야의 다른이에게 일의 본질을 전달하기 위해 당업자에 의해 보통 사용되는 방식과 일치되도록, 픽처, 매크로블록, 블록, 샘플, 루마, 클로마, 변환 계수, 지그재그 스캔 오더, 수, 사인, 레벨, 런길이등과 같은 비디오 인코딩 및 디코딩 용어로서 제시될 것이다. 이러한 용어는 당업자에 의해 용이하게 이해될 것이다. 특히, 비디오 디바이스에서, 이러한 다수는 프로세서의 전기 및/또는 광학 구성요소, 및 프로세서의 서브시스템을 통해서 저장되고 배송되고, 조합되고, 조작될 수 있는 전기, 자기 또는 광학 신호의 형태를 취한다.

다양한 비디오 인코딩/디코딩 스탠더드에서, 인코딩은 특정 신택스 규칙에 따라 조직되고, 그래서 이들은 또한 "신택스 요소"로서 불린다.

섹션 헤딩, 명세서 및 실시예의 순서

섹션 헤딩은 단지 용이성을 향상시키기 위해 사용되고, 이들은 본 발명을 제한거나 한정하기 위해 구성된 것은 아니다.

본 발명을 이해하는데 가장 도움이 되는 방식으로 다양한 동작이 차례로 복수의 이상 단계로서 설명되었지만, 명세서의 순서는 이러한 동작이 반드시 순서에 종속되어 있는 것으로 생각되어서는 안된다. 특히, 이러한 동작은 제시된 순서로 실행될 필요가 없다.

"일실시예에서"라는 구가 반복적으로 사용되었다. 이 구는 일반적으로 동일한 실시예를 가리키지는 않지만, 그럴수도 있다. 용어 "구비하는", "가지고 있는" 및 "포함하는"는 문맥이 다르게 말하지 않는다면, 동의어이다.

개략

도 1은 일실시예에 따른, 픽처의 매크로블록의 (루마/크로마) 블록의 변환 계수를 인코딩하는 본 발명의 콘텍스트-적응형 VLC 인코더의 개략도이다. 도시된 바와 같이, 실시를 위해, 콘텍스트-적응형 VLC 인코더(100)는 비디오의 픽처의 매크로블록의 (루마/크로마) 블록의 양자화된 변환 계수를 수신하기 위해 병렬로 인코더(100)의 입력부(108)에 연결된 인코더 블록(102-106)을 포함하고 있다. 이에 응답하여, 인코더 블록(102-104)은 (루마/크로마) 블록의 수신된 변한 계수를 VLC 코드워드로 인코딩하고, 이 VLC 코드워드를 출력부(110)에서 비트스트림으로서 출력한다. VLC 코드워드는 또한 변환 계수의 "인코딩" (또는 "신택스 요소")으로 불린다.

보다 상세하게는, 인코더 블록(102)은 매크로블록의 각각의 블록내의 계수의 수 및 트레일링 원 계수(trailing one coefficients)의 수를 조합된 방식으로 인코딩하기 위해 VLC 코드워드 표(122)중 하나를 적응식으로 선택하도록 VLC 코드워드 표(122) 및 코딩 로직(124)을 구비하고 있다(Num-Trail). 즉, 매크로블록내의 각각의 블록내의 계수의 수 및 트레일링 원 계수의 수는 단일 VLC 코드워드에 의해 인코딩되는 것이 유익하다. 인코더 블록(102)은 짧게 Num-Trail 인코더 블록(102)으로 불린다.

"트레일링 원 계수"는 용어 제안에서와 같이, 블록의 변환 계수의 "백"에서의 "1" 값 계수를 가리키는데, 이것은 보통 지그재그 스캔 순서에 따라 배열되어 있다. 지그재그 스캔 순서는 (대략) 최하위 공간 주파수로부터 최상위 공간 주파수로의 변환 계수의 연속 오더링이다. "프론트" 및 "백"의 방위는 "오더" 관점에서 볼 수 있다. 예를 들어, 동일한 블록의 변환 계수가 5001201101001111이라면, (백으로부터 카운트하여) 가장 마지막 4개의 "1" 변환 계수는 트레일링 원 계수로, 또는 T1s 로 불린다.

일실시예에서, 트레일링 원 계수의 길이는 (변환 계수의 시리즈의 "백"에서 카운트하여) 3에서 클리핑된다. 즉, 실시예 있어서, 인코딩의 목적을 위해, T1 계수의 최장 길이는 3으로 제한된다. "제외된" 트레일링 원 계수는 트레일링 원 계 수 전의 "논제로 계수"로서 "노멀하게" 인코딩된다.

대안의 실시예에서, 본 발명은 T1 계수에 대한 보다 크거나 작거나 가장 긴 길이로써 실행될 수 있다.

인코더 블록(104)은 (만약 있다면, "제외된" 또는 "클링핑된" 트레일링 원 계수를 포함하는) 샘플 블록의 트레일링 원 계수 전의 각각의 논제로 계수의 레벨 측정값(또는 단순히, 레벨)을 인코딩하기 위해 VLC 코드워드 표(132)중 적응식으로 하나를 선택하도록 VLC 코드워드 표(132) 및 코딩 로직(134)을 구비하고 있다. 다른 말로 하면, 본 발명에서, 종래 기술과는 달리, 계수의 수 및 논제로 계수의 레벨은 별개로 인코딩되는 것이 유리하다. 인코더 블록(104)은 생략하여 레벨 인코더 블록(104)으로 불린다.

일실시예에서, 레벨 인코더 블록(104)은 또한 T1 계수의 부호(Sign Trail)를 인코딩하도록 구비된다. 대신, 대안의 실시예에서, T1 계수의 부호의 인코딩은 예를 들어, Num_Trail 인코더(102)에 의해 인코딩될 수 있다.

인코더 블록(106)은 블록의 논제로 계수 사이에 삽입된 토털 넘버 제로 계수 및, 제로 계수의 각각의 런길이(토털제로 런길이: TotalZeros and RunLengths)를 인코딩하기 위해 VLC 코드워드 표(142) 및 코딩 로직(144)을 구비하고 있다. 앞서의 예에서, 논제로 사이에 삽입된 전체 6개의 제로가 있고, 제로 계수의 각각의 런길이는 2, 1, 1, 2이다. 인코더 블록(106)은 토털제로-런길이 인코더 블록(106)으로 불린다.

일실시예에서, 각각의 매크로블록은 루마 샘플의 16(4×4)개의 블록, 8개의 상응하는 4×4 크로마 AC 블록, 및 2개의 2×2 크로마 DC 블록을 포함한다. 상응하는 출력 포맷은 다음과 같다:

Figure 112004043188316-pct00001

인트라 16×16으로 알려진 매크로블록 타입에 대하여, 하나의 인트라 16×16 DC 샘플 블록 및 16개의 인트라 4×4 AC 샘플 블록이 있고, 상응하는 출력 포맷은 다음과 같다:

Figure 112004043188316-pct00002

인코더 블록(102-106)에 제공된 적합한 VLC 코드워드 표를 적응식으로 선택하기 위한 신규 VLC 코드워드 표(122, 132, 142) 및 코딩 로직(124, 134, 144)을 제외하고, 인코더 블록(102-106)의 다른 태양을 포함하는, 다른 태양의 인코더(100)가 알려져 있으므로 더 이상 설명하지 않을 것이다.

다양한 실시예에서, 인코딩 블록(102-106)을 포함하는 인코더(100)는 예를 들어, 응용 주문형 집적 회로(ASIC)를 통한 하드웨어로서, 또는 예를 들어, C와 같은 프로그래밍 언어의 소프트웨어로서, 또는 이 둘의 조합으로서 구현될 수 있다.

수 및 트레일링 원 계수 인코더 블록

다양한 실시예에서, Num-Trail 인코더 블록(102)은 루마 샘플 블록의 변환 계수를 인코딩하는 3개의 VLC 코드워드 표 및 크로마 샘플 블록의 변환 계수를 인코딩하는 1개의 VLC 코드워드 표를 포함한다.

보다 상세하게는, 일실시예에서, 루마 샘플 블록의 변환 계수를 인코딩하는 3개의 코드워드 표는:

Figure 112004043188316-pct00003

표 1 - 루마 Num-VLC0

Figure 112004043188316-pct00004

표 2 - 루마 Num -VLC1

Figure 112004043188316-pct00005

표 3 - 루마 Num-VLC0

크로마 샘플 블록의 변환 계수를 인코딩하는 단일 코드워드 표는:

Figure 112004043188316-pct00006

표 4 - 크로마 Num - VLC

대안의 실시예에서, VLC 코드워드가 저장되는 방식을 포함하는, 상이한 수의 VLC 코드워드 표 및 상이한 VLC 코드워드가 사용될 수 있다. 보다 상세하게는, VLC 코드워드 자체는 임의의 실시예에서, {p, L} 의 기억 스페이스 세이빙 폼으로 저장될 수 있는데, 여기에서, p는 코드워드의 뚜렷이 열거된 부분을 나타내고, L은 특정 코드워드의 길이를 나타낸다. VLC의 코드워드의 미열거된 부분은 VLC 코드워드가 사용될 때 프론트로부터 채워지는 제로이고, 예를 들어, "0100 8"은 00000100이 된다.

특히, 대안의 실시예에서, 루마 샘플 블록의 변환 계수를 인코딩하는 VLC 코드워드 표는:

Figure 112004043188316-pct00007

표 5 - 루마 Num-VLC0'

Figure 112004043188316-pct00008

표 6 - 루마 Num-VLC1'

Figure 112004043188316-pct00009

표 7 - 루마 Num-VLC2'

크로마 샘플 블록의 변환 계수를 인코딩하는 코드워드 표는:

Figure 112004043188316-pct00010

표 8 - 크로마 Num-VLC'

도 2는 일실시예에 따라, 픽처의 매크로블록의 (루마/크로마) 블록의 일 시리즈의 변환 계수의 계수의 수 및 T1 계수의 수를, 조합된 방식으로 인코딩하는 도 1의 인코더 블록의 관련된 태양의 동작 흐름도이다. 도시된 바와 같이, 실시예를 위하여, 픽처의 매크로블록의 (루마/크로마) 블록의 변환 계수의 수신시에, Num-Trail 인코더 블록(102)의 코딩 로직(124)은 먼저 샘플 블록이 루마 또는 크로마 샘플 블록인지를 판정한다(블록 201). 다양한 실시예에서, 현 변환 계수가 루마 또는 크로마 샘플 블록의 계수인지를 나타내는 정보가 계수와 관련되어 제공되고, 코딩 로직(124)은 제공된 동반 정보에 기초하여 샘플 블록 타입을 결정한다.

3개의 루마 및 1개의 크로마 VLC 코드워드 표 실시예에 대하여, 샘플 블록이 크로마 샘플 블록이라고 결정하면, Num-Trail 인코더 블록(102)은 변환 계수를 인코딩하기 위해 크로마 VLC 코드워드 표를 선택하기 위해 진행한다(블록 204).

그러나, 현 샘플 블록이 루마 샘플 블록이라면, Num-Trail 인코더 블록(102)의 코딩 로직(124)은 제공된 복수의 루마 VLC 코드워드 표중 하나의 콘텍스트 적응형 선택을 돕기 위해 사용되는 콘텍스트 메트릭을 먼저 결정한다. 다양한 실시예에서, Num-Trail 인코더 블록(102)의 코딩 로직(124)은 콘텍스트 메트릭으로서 하나 이상의 선택된 이웃하는 샘플 블록내의 변환 계수의 평균 수를 계산한다(Avg). 보다 상세하게는, (매크로블록의 샘플 블록이 종래 지그재그 방식으로 제공된) 일실시예에서, 콘텍스트 메트릭으로서 현 샘플 블록의 상측 샘플 블록 및 좌측의 샘플 블록의 Avg를 계산한다.

위에 샘플 블록이 없는 변경된 경우에, Avg는 현 샘플 블록의 좌측으로 샘플 블록내의 변환 계수의 수로 설정된다. 동일한 방식으로, 현 샘플 블록의 좌측으로 아무런 샘플 블록이 없는 변경된 경우에, Avg는 상측 샘플 블록내의 변환 계수의 수로 설정된다. 현 샘플 블록의 위에도 좌측에도 아무런 샘플 블록이 없는 변경된 경우에, Avg는 제로로 설정된다.

일실시예에서, Num-Trail 인코더 블록(102)의 코딩 로직(124)은 다음과 같이 VLC 코드워드 표를 선택한다:

0≤Avg〈2이면 코드워드 표 Num-VLC0/Num-VLC0'를 선택한다;

2≤Avg〈4이면 코드워드 표 Num-VLC1/Num-VLC1'를 선택한다;

4≤Avg〈8이면 코드워드 표 Num-VLC2/Num-VLC2'를 선택한다; 그리고

8≤Avg이면 6비트 고정된 길이 코드워드(FLC) xxxxyy를 발생시키는데, 여기에서 xxxx는 계수의 수를 나타내고, yy는 T1을 나타낸다.

일실시예에서, Avg 가 8이상이라면, 현 샘플 블록에 대한 계수의 수는 0이고, 특별 코드워드 000011이 사용된다.

계속 도 2에서, 이후에, 즉, VLC 코드워드 표(또는 루마 샘플 블록의 경우에, FLC)를 선택할 시, 코딩 로직(124)은 현 샘플 블록에 대한 계수의 수 및 T1을 결정하기 위해 진행한다(블록 206-208). 그다음, 로직(124)은 선택된 VLC 코드워드 표(또는 루마 샘플 블록의 경우에, FLC)를 사용하여, 현 샘플 블록의 계수의 수 및 T1을 인코딩한다.

레벨 인코더 블록

다양한 실시예에서, 레벨 인코더 블록(103)은 크로마 샘플 블록은 물론 루마 의 변환 계수의 레벨을 인코딩하는 복수의 VLC 코드워드 표를 포함한다.

보다 상세하게는, 일실시예에서, 복수의 VLC 코드워드 표는 5개의 구성된 코드워드 표로부터 "유도"되고, 이 구성된 코드워드 표는:

Figure 112004043188316-pct00011

표 9 - Lev-VLC0

Figure 112004043188316-pct00012

표 10 - Lev-VLC1

Figure 112004043188316-pct00013

표 11 - Lev-VLC2

Figure 112004043188316-pct00014

표 12 - Lev-VLC3

Figure 112004043188316-pct00015

표 13 - Lev-VLC4

각각의 VLC 코드워드 표내의 코드워드는 리딩 제로의 수에 따라 증가하고, xxx의 스트링은 가능한 조합의 오더를 나타내는데, 예를 들어, 01xxxx로서 표시된 코드워드에 대하여 코드워드는 010000, 010001, 010010, . . . . 011111이다.

레벨은 상승 코드 수 쌍에 따라 할당된다. 레벨의 양의 값은 하위 코드 수를 받고 레벨의 음의 값은 코드 수 상의 상위 코드 수를 받는다.

각각의 표내의 가장 마지막 2개의 엔트리는 확장 코드로 생각될 수 있다. 4개의 "x"를 갖는, 제1 확장 코드는 가장 마지막 정규 코딩된 레벨의 상측 8개의 레벨을 코딩하기 위해 사용된다. 12개의 "x"를 갖는 그 다음 확장 코드는 모든 나머지 레벨을 코딩하기 위해 사용된다.

일반적으로, 코딩되는 레벨은 ±1, ±2등의 값을 취한다(레벨). 그러나, (T1 후에, 일 시리즈의 변환 계수의 백으로부터 처리하는) 코딩되는 제1 계수에 대하여, T1s < 3이거나 Number_of_Coefficients=T1s이라면, 코딩되는 레벨은 ±2, ±3등의 값을 취할 수 있다(레벨'). 따라서, Lev-VLC0 또는 Lev-VLC1이 (T1s후에, 백으로부터 처리하는) 제1 계수를 인코딩하기 위해 사용된다면, 레벨은 ±2에서 시작할 수 있다.

설명을 위해, 각각의 Lev-VLC 표에 대한 코드워드의 선택이 리스트된, "유도된" VLC 코드워드 표의 다음 예를 생각해보라.

Figure 112004043188316-pct00016

Figure 112004043188316-pct00017

Figure 112004043188316-pct00018

도 3은 일실시예에 따라, 픽처의 매크로블록의 (루마/크로마) 블록의 변환 계수의 레벨 측정치를 인코딩하는 도 1의 레벨 인코더 블록의 관련 태양의 동작 흐름도를 도시하고 있다. 도시된 바와 같이, 실시예를 위해, (루마/크로마) 블록의 변환 계수의 수신시에, 레벨 인코더 블록(104)의 코딩 로직(134)은 먼저 T1s의 부호를 인코딩한다(블록 302). 실시를 위해, 1-비트는 각각의 부호를 인코딩하기 위해 사용된다.

또한, 레벨 인코더 블록(104)의 코딩 로직(134)은 (백으로부터 처리하는) T1s 후의 제1 논제로 계수로 레벨 코딩을 개시한다(블록 304). 실시를 위해, 레벨 인코더 블록(104)의 코딩 로직(134)은 인코딩을 실행하기 위해 적합한 레벨 VLC 코드워드 표의 적응식 선택을 돕도록 콘텍스트 메트릭을 계산한다(블록 306). 다양한 실시예에서, 콘텍스트 메트릭은 현 매크로블록의 양자화 파라미터 값이고, 이 값은 또한 블록내의 계수의 수 및, 블록의 변환 계수의 레벨과 함께 제공된다.

일실시예에서, 레벨 인코더 블록(104)은 다음과 같이 레벨 VLC 코드워드 표를 선택한다:

인터 매크로블록이 임의의 양자화 파라미터를 가지고 있거나, 인트라 매크로블록이 9이상의 양자화 파라미터 값을 가지고 있다면,

제1 계수에 대하여, Lev-VLC0를 선택하고,

그다음 계수에 대하여, Lev-VLC1을 선택하고, 그리고,

그후에, "상위" 2개에 이르는 코드워드 표인 그다음 "상위" Lev-VLCx 코드워드 표를 선택하고;

인트라 매크로블록이 9 미만의 양자화 파리미터 값을 가지고 있다면,

(계수의 수가 10보다 크다면)

제1 계수에 대하여, Lev-VLC1을 선택하고,

그다음 계수에 대하여, Lev-VLC2를 선택하고,

그외에,

제1 계수에 대하여, Lev-VLC0를 선택하고,

그다음 계수에 대하여, Lec-VLC1을 선택하고,

그후에, 레벨의 절대값이 3보다 크고 VLC 코드워드 표가 Lev-VLC1이라면, Lev-VLC2를 선택하고,

레벨의 절대값이 5보다 크고 VLC 코드워드 표가 Lev-VLC2이상이라면, "상위" 4개에 이르는 코드워드 표인, 그다음 "상위" Lev-VLCx 코드워드 표를 선택한다.

계속 도 3에서, 적합한 VLC 코드워드 표를 선택시에, 코딩 로직(134)은 코딩되는 현 논제로 변환 계수의 레벨을 인코딩한다(블록 310).

다음으로, 코딩 로직(134)은 T1 계수 전의 모든 논제로 계수가 모두 레벨 코딩되었는지를 판정한다(블록 312). 모두 레벨 코딩되지 않았다면, 코딩 로직(134) 은 앞서 설명한 바와 같이 블록(304)에서 동작을 계속한다. T1 계수 전의 모든 논제로 계수가 레벨 코딩되었다면, 코딩 로직(134)은 현 샘플 블록에 대하여 레벨 코딩 프로세스를 종료한다.

토털 제로 및 런길이 인코더 블록

다양한 실시예에서, 토털제로-런길이 인코더 블록(106)은 논제로 계수 사이에 삽입된 제로 계수의 수 및 제로 계수의 각각의 런길이를 인코딩하는 복수의 VLC 코드워드 표를 포함한다.

보다 상세하게는, 일실시예에서, 토털제로-런길이 인코더 블록(106)은 "토털 제로"를 인코딩하는 2개의 VLC 코드워드 표를 포함하는데, 하나는 루마 샘플 블록의 계수를 변환하고, 또 다른 하나는 크로마 샘플 블록의 계수를 변환하고, VLC 코드워드 표는 어느 하나의 타입의 샘플 블록에 대한 "런길이"를 인코딩한다. VLC 코드워드 표는:

Figure 112004043188316-pct00019

표 14-루마 토털 제로 VLC 코드워드 표

Figure 112004043188316-pct00020

표 15-크로마 토털 제로 VLC 코드워드 표

Figure 112004043188316-pct00021

표 16- 런길이 VLC 코드워드 표

이와 마찬가지로, 대안의 실시예에서, VLC 코드워드를 저장하는 상이한 방식을 포함하는, 상이한 VLC 코드워드는 물론 상이한 수의 VLC 코드워드 표가 본 발명 을 실행하기 위해 사용될 수 있다. 특히, 일실시예서, 본 발명은 대신에 다음의 3개의 VLC 코드워드 표로서 실행될 수 있다.

Figure 112004043188316-pct00022

표 14- 루마 토털 제로 VLC 코드워드 표

Figure 112004043188316-pct00023

표 15- 크로마 토털 제로 VLC 코드워드 표

Figure 112004043188316-pct00024

표 16- 런길이 VLC 코드워드 표

표 14-16의 VLC 코드워드는 동일한 앞서 설명된 스페이스 세이빙 포맷으로 표현되어 있다.

도 4는 일실시예에 따라, 픽처의 매크로블록의 (루마/크로마) 블록의 변환 계수의, 논제로 계수 사이에 삽입된 제로 계수의 수 및 이 제로 계수의 런길이를 인코딩하는 토털 제로-런길이 인코더 블록(142)의 코딩 로직(144)의 관련 태양의 동작 흐름도이다.

도시된 바와 같이, 실시를 위해, (루마/크로마) 블록의 변환 계수의 수신시에, 코딩 로직(144)은 논제로 계수 사이에 삽입된 제로 계수의 수(토털 제로)를 결정한다(블록 402). 다음으로, 코딩 로직(144)은 동일한 블록 타입 및 블록내의 계수의 수에 상응하는 적합한 코드워드 표를 선택한다(블록 404). 다른 실시예에서, 다른 기준이 코드워드 표를 선택하기 위해 사용될 수 있다. 다음으로, 코딩 로직(144)은 선택된 코드워드 표를 사용하여 토털 제로 정보를 인코딩한다.

또한, 코딩 로직(144)은 백으로부터 처리하는, 또는 대안의 실시예에서, 프론트로부터 처리하는) 삽입된 제로의 제1 런을 선택하고, 런길이(Run Length)를 결정한다(블록 406-408). 다음으로, 코딩 로직(144)은 삽입되기 위해 남겨진 제로의 수에 기초하여 적합한 코드워드 표를 선택한다(블록 407). 다음으로, 코딩 로직(144)은 선택된 런길이 코드워드 표를 사용하여 런길이 정보를 인코딩한다. 코딩 로직(144)은 그다음, 모든 삽입된 제로 런이 코딩되었는지를 결정한다(블록 410). 모든 삽입된 제로 런이 코딩되지 않았다면, 코딩 로직(144)은 앞서 설명한 바와 같이 블록(406)에서 다시 계속한다. 모든 삽입된 제로 런이 코딩되었다면, 토털 제로 및 런길이 인코딩 처리는 종료한다.

디코더

도 5는 일실시예에 따라, 도 1의 인코더의 것과 유사한 인코딩 원리에 따라 인코딩된 변환 계수를 디코딩하는 본 발명의 콘텍스트-적응형 VLC 디코더의 개략도 이다. 도시된 바와 같이, 실시를 위해, 콘텍스트-적응형 VLC 디코더(500)는 인코더(100)와 유사하게 구성되어, 비디오의 픽처의 매크로블록의 (루마/크로마) 블록의 양자화된 변환 계수를 인코딩하는 VLC 코드워드의 비트스트림을 수신하기 위해 병렬로 디코더(500)의 입력부(510)에 연결된 디코더 블록(502-506)을 구비하고 있다. 이에 응답하여, 디코더 블록(502-506)은 (루마/크로마) 블록의 변환 계수의 수신된 인코딩을 다시 이들의 양자화된 폼으로 디코딩하고, 이들을 출력부(108)에서 출력한다.

실시를 위해, 디코더 블록(502-506)은 인코더 블록(102-106)과 유사하게 구성되어 있다. 즉, 디코더 블록(502)은 픽처의 매크로블록의 (루마/크로마) 블록의 일 시리즈의 변환 계수내의 계수의 수 및 T1 계수의 조합된 VLC 코드워드를 디코딩하는 VLC 코드워드 표(522) 및 코딩 로직(524)을 포함한다. 또한, 디코더 블록(504)은 (루마/크로마) 블록의 변환 계수의 레벨의 VLC 코드워드를 디코딩하는 VLC 코드워드 표(532) 및 코딩 로직(534)을 포함한다. 마찬가지로, 디코더 블록(506)은 (루마/크로마) 블록의 논제로 변환 계수내의 토털 제로 및 각각의 "제로" 런길이의 VLC 코드워드를 디코딩하는 VLC 코드워드 표(532) 및 코딩 로직(534)을 포함한다.

본 발명의 적용예

도 6은 일실시예에 따라, 본 발명의 기술이 통합된 비디오 디바이스를 도시한다. 도시된 바와 같이, 비디오 디바이스(600)는 디바이스의 입력부 및 출력부에 연결된 인코더(610) 및 디코더(620)를 포함한다. 앞서 설명한 바와 같이, 인코더 (610)는 비디오의 픽처의 매크로블록의 (루마/크로마) 블록의 양자화된 변환 계수를 수신하고, 이에 응답하여 이들을 적응형으로 VLC 코드워드(634a)로 인코딩하도록 설계되었다. 디코더(620)는 다른 비디오의 픽처의 매크로블록의 (루마/크로마) 블록의 변환 계수의 VLC 코드워드(634a)를 수신하여, 이에 응답하여 코드워드를 다시 계수(632b)로 다시 적응형으로 디코딩하도록 설계되었다.

인코더(610) 및 디코더(620)는 앞서 설명된 인코더(100) 및 디코더(500)와 유사하게 구성되어 있다. 다양한 실시예에서, 인코더(610) 및 디코더(620)는 (인코더(610) 및 디코더(620)의 교차하는 블록에 의해 표시된 바와 같이) 구성하는 표 및 코딩 로직의 적어도 일부를 공유할 수 있다.

다양한 실시예에서, 비디오 디바이스(600)는 디지털 카메라, DVD 플레이어, 비디오 감시 카메라, 비디오 회의 디바이스, 의료 이미징 디바이스 및 다른 유사한 비디오 디바이스일 수 있다. 다른 실시예에서, 비디오 디바이스(600)는 무선 모발일 폰, 퍼스널 디지털 어시스턴트와 같은 팜 크기의 컴퓨팅 디바이스, 랩톱 컴퓨팅 디바이스, 데스크톱 컴퓨팅 디바이스, 셋톱 박스, 서버, 다른 유사한 컴퓨팅 디바이스일 수 있다. 이러한 비디오 디바이스(600)중 하나를 실행하는 애플리케이션은 인스턴트 메시징 및/또는 비디오를 포함하는 이메일을 포함할 수 있다. 다른 실시예에서, 비디오 디바이스(600)는 (또한 도터 회로 기판으로 불리는) 비디오 "애드-온" 회로 기판과 같은 회로 기판 컴포넌트, 마더보드, 및 다른 유사한 회로 기판일 수 있다.

도 7은 앞서 설명한 인코더(100) 및/또는 디코더(500)의 소프트웨어 실시예 를 구현하는 프로그래밍 명령어를 갖는 기록가능한 매체를 포함하는 제조품(700)을 도시한다. 인코더(100) 및/또는 디코더(500)의 소프트웨어 실시예를 구현하는 프로그래밍 명령어는 비디오 디바이스(710)에 본 발명의 인코딩 및 디코딩 능력을 주기 위해 비디오 디바이스(710)를 프로그래밍하기 위해 사용되도록 설계되었다.

실시를 위해, 비디오 디바이스(710)는 인코더(100) 및/또는 디코더(500)의 소프트웨어 실시예를 구현하는 프로그램이 명령어의 워킹 카핑의 적어도 일부를 저장하는 저장 매체(712) 및, 이 프로그래밍 명령어를 실행하기 위해 저장 매체(712)에 연결된 적어도 하나의 프로세서(714)를 포함한다.

비디오 디바이스(712)는 앞서 열거된 예의 디바이스중 임의의 하나 또는 다른 유사한 비디오 디바이스일 수 있다. 아티클(710)은 예를 들어, 디스켓, 콤팩트 디스크(CD), DVD 또는 다른 유사한 컴퓨터 판독가능 매체일 수 있다. 다른 실시예에서, 아티클(710)은 인터넷과 같은, 공중망 및/또는 사설망을 통해, 인코더(100) 및 디코더(500)를 배분하는 배분 서버일 수 있다. 일실시예에서, 아티클(710)은 웹서버이다.

도 8은 도시된 바와 같이 서로 통신적으로 연결된 비디오 전송기(802) 및 비디오 수신기(804)를 갖는 시스템의 일예를 도시하고 있고, 비디오 전송기(802)는 본 발명의 기술에 따라 비디오를 인코딩하고 이 인코딩된 비디오를 비디오 수신기(802)에 제공하고, 차례로 비디오 수신기(804)는 이 인코딩된 비디오를 디코딩하여 비디오를 렌더링한다. 비디오 전송기(802) 및 비디오 수신기(804)는 각각, 앞서 설명한 인코더(100) 및 디코더(500)를 구비하고 있다.

비디오 전송기(802)의 일예는 비디오 서버이고, 비디오 수신기(804)의 일예는 비디오 전송기(802)에 연결된 클라이언트 디바이스이다.

결론 및 에필로그

따라서, 상기 명세서로부터, 픽처의 매크로블록의 (루마/크로마) 블록의 변환 계수를 인코딩하고 디코딩하는 새로운 방법 및 이 방법이 통합된 인코더, 디코더, 디바이스 및 시스템이 설명되었음을 알 수 있다.

본 발명이 앞서의 실시예 및 적용예에 관하여 설명되었지만, 당업자는 본발명이 설명된 이러한 실시예 및 적용예에 제한되지 않는다는 것을 이해할 것이다. 본 발명은 첨부된 청구항의 정신 및 범위내에 있는 수정 및 변형으로 시행될 수 있다. 예를 들어, 상이한 수의 인코더/디코더 블록, 다양한 인코더/디코더 블록내의 상이한 수의 코드워드 표, 상이한 코드워드 표, 상이한 코드워드 표 선택 로직, 및 상이한 코딩 디렉션이 대신 실시될 수 있다.

따라서, 상기 명세서는 본 발명을 제한하는 것이 아닌 예시로서 인식되어야 한다.

Claims (80)

  1. 저장 매체; 및
    상기 저장 매체내에 저장되어 있고, 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수에서 계수의 수 및 트레일링 원 계수의 수를, 조합된 방식으로 인코딩하기 위해, 샘플 블록 타입에 적어도 부분적으로 기초하여, 선택적으로 액세스되는 복수의 코드워드를 각각 가지고 있는 복수의 코드워드 표;를 포함하는 것을 특징으로 하는 장치.
  2. 저장 매체; 및
    상기 저장 매체내에 저장되어 있고, 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수에서 계수의 수 및 트레일링 원 계수의 수의 조합된 인코딩을 디코딩하기 위해, 샘플 블록 타입에 적어도 부분적으로 기초하여, 선택적으로 액세스되는 복수의 코드워드를 각각 가지고 있는 복수의 코드워드 표;를 포함하는 것을 특징으로 하는 장치.
  3. 제 1 항 또는 2 항에 있어서, 상기 코드워드 표중 적어도 하나의 선택된 코드워드 표는 루마 샘플 블록의 일 시리즈의 변환 계수내의 계수의 수 및 트레일링 원 계수의 수를 조합하여 인코딩하는 단계 및 조합된 인코딩을 디코딩하는 단계중 적어도 하나를 실행하기 위해, 픽처의 매크로블록의 루마 샘플 블록에 대하여 선택적으로 액세스되는 코드워드를 포함하는 것을 특징으로 하는 장치.
  4. 제 3항에 있어서, 상기 코드워드 표는
    Figure 712010001453992-pct00025
    Figure 712010001453992-pct00026
    Figure 712010001453992-pct00027
    중 선택된 코드워드 표의 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 것을 특징으로 하는 장치.
  5. 제 3항에 있어서, 상기 장치는 픽처의 매크로블록의 루마 샘플 블록의 일 시리즈의 변환 계수를 인코딩/디코딩하기 위해 상기 코드워드 표 및 FLC중 하나를 선택하도록 저장 매체에 연결된 로직을 더 포함하는 것을 특징으로 하는 장치.
  6. 제 5항에 있어서, 상기 로직은 픽처의 매크로블록의 하나 이상의 이웃하는 루마 샘플 블록의 하나 이상의 시리즈의 변환 계수내의 계수의 수에 적어도 부분적으로 기초하여, 적응형 방식으로 픽처의 매크로블록의 루마 샘플 블록의 일 시리즈의 변환 계수를 인코딩/디코딩하기 위해 상기 코드워드 표 및 FLC 중 하나를 선택하도록 구비되어 있는 것을 특징으로 하는 장치.
  7. 제 6항에 있어서, 상기 픽처의 매크로블록의 하나 이상의 이웃하는 루마 샘플 블록은 픽처의 매크로블록의 상측 이웃 루마 샘플 블록 및 좌측 이웃 루마 샘플 블록중 적어도 하나를 포함하는 것을 특징으로 하는 장치.
  8. 제 1 항 또는 2 항에 있어서, 상기 코드워드 표중 적어도 하나의 선택된 코드워드 표는 픽처의 매크로블록의 크로마 샘플 블록의 일 시리즈의 변환 계수내의 계수의 수 및 트레일링 원 계수의 수를 조합하여 인코딩하는 단계 및 조합된 인코딩을 디코딩하는 단계중 적어도 하나를 실행하기 위해 선택적으로 액세스되는 코드워드를 포함하는 것을 특징으로 하는 장치.
  9. 제 6항에 있어서, 코드워드 표는
    Figure 712010001453992-pct00028
    의 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 것을 특징으로 하는 장치.
  10. 제 1 항 또는 2 항에 있어서, 상기 장치는
    픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수의 트레일링 원 계수의 부호를 인코딩하는 단계; 및
    픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수의 트레일링 원 계수의 부호의 인코딩을 디코딩하는 단계;중 적어도 하나를 실행하는 로직을 더 포함하는 것을 특징으로 하는 장치.
  11. 제 1항 또는 2 항에 있어서, 상기 장치는 상기 인코딩 또는 디코딩을 실행하기 위해 상기 코드워드 표의 상기 코드워드에 선택적으로 액세스하도록 저장 매체에 연결된 프로세서를 더 포함하는 것을 특징으로 하는 장치.
  12. 제 1항 또는 2항에 있어서, 상기 장치는 팜 크기의 컴퓨팅 디바이스, 무선 모바일 폰, 디지털 퍼스널 어시스턴트, 랩톱 컴퓨팅 디바이스, 데스크톱 컴퓨팅 디바이스, 셋톱 박스, 서버, 콤팩트 디스크 플레이어, DVD 플레이어, 텔레비전, 및 디스플레이 모니터중 선택된 하나인 것을 특징으로 하는 장치.
  13. 제 1항 또는 2항에 있어서, 상기 장치는 통합된 비디오 기능을 가지고 있는 마더보드 및 비디오 도터카드를 더 포함하는 것을 특징으로 하는 장치.
  14. 저장 매체; 및
    상기 저장 매체내에 저장되어 있고, 샘플 블록의 변환 계수의 계수의 수의 인코딩에 대해 독립적인, 픽처의 매크로블록의 샘플 블록의 변환 계수의 레벨 측정값을 인코딩하기 위해 적응형으로 액세스되는 복수의 코드워드를 각각 가지고 있는 복수의 코드워드 표;를 포함하는 것을 특징으로 하는 장치.
  15. 저장 매체; 및
    상기 저장 매체내에 저장되어 있고, 샘플 블록의 변환 계수의 계수의 수에 독립적인, 픽처의 매크로블록의 샘플 블록의 변환 계수의 레벨 측정값의 인코딩을 디코딩하기 위해 적응형으로 액세스되는 복수의 코드워드를 각각 가지고 있는 복수의 코드워드 표;를 포함하는 것을 특징으로 하는 장치.
  16. 제 14항 또는 15항에 있어서, 픽처의 매크로블록의 샘플 블록의 변환 계수는 픽처의 매크로블록의 루마 샘플 블록 및 크로마 샘플 블록중 선택된 하나의 변환 계수를 포함하는 것을 특징으로 하는 장치.
  17. 제 14항 또는 15항에 있어서, 코드워드 표는
    Figure 712010001453992-pct00029
    Figure 712010001453992-pct00030
    Figure 712010001453992-pct00031
    Figure 712010001453992-pct00032
    Figure 712010001453992-pct00033
    중 선택된 코드워드 표의 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 것을 특징으로 하는 장치.
  18. 제 14항 또는 15항에 있어서, 매크로블록의 양자화 파라미터, 블록내의 계수의 수 및 이전에 인코딩/디코딩된 하나 이상의 변환 계수들의 레벨 중 하나 이상에 적어도 부분적으로 기초하여, 픽처의 매크로블록의 샘플 블록의 변환 계수의 레벨 측정값을 인코딩/디코딩하기 위해 상기 코드워드 표중 하나를 적응형으로 선택하도록 저장 매체에 연결된 로직을 더 포함하는 것을 특징으로 하는 장치.
  19. 제 18항에 있어서, 코드워드 표는 상이한 수의 코드워드를 포함하고, 로직은 변환 계수를 인코딩/디코딩하도록 구비되고, 지정된 코드워드 표를 선택하기 전에 상기 지정된 코드워드 표 보다 작은 코드워드 표를 대칭적으로 선택하는 것을 특징으로 하는 장치.
  20. 제 18항에 있어서, 로직은 전에서 후로의 처리 순서 및 후에서 전으로의 처리 순서중 선택된 순서로 변환 계수를 처리하도록 구비된 것을 특징으로 하는 장치.
  21. 제 14항 또는 15항에 있어서,
    픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수의 트레일링 원 계수의 부호를 인코딩하는 단계; 및
    픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수의 트레일링 원 계수의 부호의 인코딩을 디코딩하는 단계;중 적어도 하나를 실행하는 로직을 더 포함하는 것을 특징으로 하는 장치.
  22. 제 14항 또는 15항에 있어서, 상기 인코딩 또는 디코딩을 실행하기 위해 상기 코드워드 표의 코드워드에 선택적으로 액세스하도록 저장 매체에 연결된 프로세서를 더 포함하는 것을 특징으로 하는 장치.
  23. 제 14항 또는 15항에 있어서, 상기 장치는 팜 크기의 컴퓨팅 디바이스, 무선 모바일 폰, 디지털 퍼스널 어시스턴트, 랩톱 컴퓨팅 디바이스, 데스크톱 컴퓨팅 디바이스, 셋톱 박스, 서버, 콤팩트 디스크 플레이어, DVD 플레이어, 텔레비전, 및 디스플레이 모니터중 선택된 하나인 것을 특징으로 하는 장치.
  24. 제 14항 또는 15항에 있어서, 상기 장치는 통합된 비디오 기능을 가진 마더보드 및 비디오 도터카드를 더 포함하는 것을 특징으로 하는 장치.
  25. 저장 매체; 및
    상기 저장 매체내에 저장되어 있고, 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수의 논제로 계수 사이에 삽입된 제로 계수의 수 및, 각각의 논제로 계수 전의 제로 계수의 하나 이상의 런길이를 인코딩하기 위해, 샘플 블록 타입에 적어도 부분적으로 기초하여, 선택적으로 액세스되는 복수의 코드워드를 각각 가지고 있는 복수의 코드워드 표;를 포함하는 것을 특징으로 하는 장치.
  26. 저장 매체; 및
    상기 저장 매체내에 저장되어 있고, 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수의 논제로 계수 사이에 삽입된 제로 계수의 수 및, 각각의 논제로 계수 전의 제로 계수의 하나 이상의 런길이의 인코딩을 디코딩하기 위해, 샘플 블록 타입에 적어도 부분적으로 기초하여, 선택적으로 액세스되는 복수의 코드워드를 각각 가지고 있는 복수의 코드워드 표;를 포함하는 것을 특징으로 하는 장치.
  27. 제 25항 또는 26항에 있어서, 코드워드 표는 픽처의 매크로블록의 루마 샘플 블록의 일 시리즈의 변환 계수의 논제로 계수 사이에 삽입된 제로 계수의 수를 인코딩/디코딩하기 위하여 복수의 코드워드를 갖춘 하나의 코드워드 표를 포함하는 것을 특징으로 하는 장치.
  28. 제 27항에 있어서, 코드워드 표는
    Figure 712010001453992-pct00034
    의 과반수의 코드워드를 가지고 있는 하나의 코드워드 표를 포함하는 것을 특징으로 하는 장치.
  29. 제 25항 또는 26항에 있어서, 코드워드 표는 픽처의 매크로블록의 크로마 샘플 블록의 일 시리즈의 변환 계수의 논제로 계수 사이에 삽입된 제로 계수의 수를 인코딩/디코딩하기 위해 복수의 코드워드를 갖춘 하나의 코드워드 표를 포함하는 것을 특징으로 하는 장치.
  30. 제 29항에 있어서, 코드워드 표는
    Figure 712010001453992-pct00035
    의 과반수의 코드워드를 가지고 있는 하나의 코드워드 표를 포함하는 것을 특징으로 하는 장치.
  31. 제 25항 또는 26항에 있어서, 코드워드 표는 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수의 각각의 논제로 계수 전의 제로 계수의 하나 이상의 런길이를 인코딩/디코딩하기 위해 복수의 코드워드를 갖춘 하나의 코드워드 표를 포함하는 것을 특징으로 하는 장치.
  32. 제 31항에 있어서, 코드워드 표는
    Figure 712010001453992-pct00036
    의 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 것을 특징으로 하는 장치.
  33. 제 25항 또는 26항에 있어서, 상기 인코딩 또는 디코딩을 실행하기 위해 상기 코드워드 표의 상기 코드워드에 선택적으로 액세스하도록 저장 매체에 연결된 프로세서를 더 포함하는 것을 특징으로하는 장치.
  34. 제 25항 또는 26항에 있어서, 상기 장치는 팜 크기의 컴퓨팅 디바이스, 무선 모바일 폰, 디지털 퍼스널 어시스턴트, 랩톱 컴퓨팅 디바이스, 데스크톱 컴퓨팅 디바이스, 셋톱 박스, 서버, 콤팩트 디스크 플레이어, DVD 플레이어, 텔레비전, 및 디스플레이 모니터중 선택된 하나인 것을 특징으로 하는 장치.
  35. 제 25항 또는 26항에 있어서, 상기 장치는 통합된 비디오 기능을 가지고 있는 마더보드 및 비디오 도터카드를 더 포함하는 것을 특징으로 하는 장치.
  36. 기록가능 매체; 및
    장치를 프로그래밍하기 위해 검색되도록 상기 기록가능 매체에 기록되고, 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수내의 계수의 수 및 트레일링 원 계수의 수를, 조합된 방식으로 인코딩하기 위해 코드워드에 상기 장치가 선택적으로 액세스할 수 있도록 복수의 코드워드를 각각 가지고 있는 복수의 코드워드 표;를 포함하는 것을 특징으로 하는 제조물.
  37. 기록가능 매체; 및
    장치를 프로그래밍하기 위해 검색되도록 상기 기록가능 매체에 기록되고, 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수내의 계수의 수 및 트레일링 원 계수의 수의 조합된 인코딩을 디코딩하기 위해 코드워드에 상기 장치가 선택적으로 액세스할 수 있도록 복수의 코드워드를 각각 가지고 있는 복수의 코드워드 표;를 포함하는 것을 특징으로 하는 제조물.
  38. 제 36항 또는 37 항에 있어서, 코드워드 표는
    Figure 712010001453992-pct00037
    Figure 712010001453992-pct00038
    Figure 712010001453992-pct00039
    Figure 712010001453992-pct00040
    중 선택된 코드워드 표의 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 것을 특징으로 하는 제조물.
  39. 제 36항 또는 37 항에 있어서, 픽처의 매크로블록의 루마 샘플 블록의 일 시리즈의 변환 계수를 인코딩/디코딩하기 위해 상기 코드워드 표 및 FLC중 하나를 장치가 선택할 수 있도록 상기 장치를 프로그램하기 위해 기록가능 매체에 기록된 프로그래밍 명령어를 더 포함하는 것을 특징으로 하는 제조물.
  40. 제 39항에 있어서, 프로그래밍 명령어는 픽처의 매크로블록의 하나 이상의 이웃하는 루마 샘플 블록의 하나 이상의 시리즈의 변환 계수들 내의 계수의 수에 적어도 부분적으로 기초하여, 적응형 방식으로 픽처의 매크로블록의 루마 샘플 블록의 일 시리즈의 변환 계수를 인코딩/디코딩하기 위해 상기 코드워드 표 및 FLC중 하나를 장치가 선택할 수 있도록 설계되어 있는 것을 특징으로 하는 제조물.
  41. 제 40항에 있어서, 픽처의 매크로블록의 하나 이상의 이웃하는 루마 샘플 블록은 픽처의 매크로블록의 상측 이웃 루마 샘플 블록 및 좌측 이웃 루마 샘플 블록중 적어도 하나를 포함하는 것을 특징으로 하는 제조물.
  42. 제 36항 또는 37 항에 있어서,
    픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수의 트레일링 원 계수의 부호를 인코딩하는 단계; 및
    픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수의 트레일링 원 계수의 부호의 인코딩을 디코딩하는 단계;중 적어도 하나를 실행할 수 있도록 상기 장치를 프로그램하기 위해 설계된 프로그래밍 명령어를 더 포함하는 것을 특징으로 하는 제조물.
  43. 기록가능 매체; 및
    장치를 프로그래밍하기 위해 검색되도록 상기 기록가능 매체에 기록되어 있고, 샘플 블록의 변환 계수의 계수의 수의 인코딩에 대하여 독립적인, 픽처의 매크로블록의 샘플 블록의 변환 계수의 레벨 측정값을 인코딩하기 위해 장치에 의해 선택적으로 액세스되는 복수의 코드워드를 각각 가지고 있는 복수의 코드워드 표;를 포함하는 것을 특징으로 하는 제조물.
  44. 기록가능 매체; 및
    장치를 프로그래밍하기 위해 검색되도록 상기 기록가능 매체에 기록되어 있고, 샘플 블록의 변환 계수의 계수의 수의 인코딩에 대하여 독립적인, 픽처의 매크로블록의 샘플 블록의 변환 계수의 레벨 측정값의 인코딩을 디코딩하기 위해 장치에 의해 선택적으로 액세스되는 복수의 코드워드를 각각 가지고 있는 복수의 코드워드 표;를 포함하는 것을 특징으로 하는 제조물.
  45. 제 43항 또는 44항에 있어서, 코드워드 표는
    Figure 712010001453992-pct00041
    Figure 712010001453992-pct00042
    Figure 712010001453992-pct00043
    Figure 712010001453992-pct00044
    Figure 712010001453992-pct00045
    중 선택된 코드워드 표의 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 것을 특징으로 하는 제조물.
  46. 제 43항 또는 44항에 있어서, 매크로블록의 양자화 파라미터, 블록내의 계수의 수 및 이전에 인코딩/디코딩된 하나 이상의 변환 계수들의 레벨중 하나 이상에 적어도 부분적으로 기초하여, 픽처의 매크로블록의 샘플 블록의 변환 계수의 레벨 측정값을 인코딩/디코딩하기 위해 상기 코드워드 표중 하나를 장치가 선택할 수 있도록 상기 장치를 프로그래밍하기 위해 설계된 프로그래밍 명령어를 더 포함하는 것을 특징으로 하는 제조물.
  47. 제 46항에 있어서, 코드워드 표는 상이한 수의 코드워드를 포함하고, 상기 프로그래밍 명령어는 상기 장치가 변환 계수를 인코딩/디코딩할 수 있도록 설계되고, 지정된 코드워드 표를 선택하기 전에 상기 지정된 코드워드 표 보다 작은 코드워드 표를 대칭적으로 선택하는 것을 특징으로 하는 제조물.
  48. 제 46항에 있어서, 상기 프로그래밍 명령어는 전에서 후로의 처리순서 및 후에서 전으로의 처리 순서중 선택된 순서로부터 변환 계수를 장치가 인코딩할 수 있도록 설계된 것을 특징으로 하는 제조물.
  49. 제 43항 또는 44항에 있어서,
    픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수의 트레일링 원 계수의 부호를 인코딩하는 단계; 및
    픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수의 트레일링 원 계수의 부호의 인코딩을 디코딩하는 단계;중 적어도 하나를 장치가 실행할 수 있도록 상기 장치를 프로그래밍하기 위해 설계된 프로그래밍 명령어를 더 포함하는 것을 특징으로 하는 제조물.
  50. 기록가능 매체; 및
    장치를 프로그래밍하기 위해 검색되도록 상기 기록가능 매체에 기록되어 있고, 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수의 논제로 계수 사이에 삽입된 제로 계수의 수 및, 각각의 논제로 계수 전의 제로 계수의 하나 이상의 런길이를 인코딩하기 위하여 장치에 의해 선택적으로 액세스되는 복수의 코드워드를 각각 가지고 있는 복수의 코드워드 표;를 포함하는 것을 특징으로 하는 제조물.
  51. 기록가능 매체; 및
    장치를 프로그래밍하기 위해 검색되도록 상기 기록가능 매체에 기록되어 있고, 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수의 논제로 계수 사이에 삽입된 제로 계수의 수 및, 각각의 논제로 계수 전의 제로 계수의 하나 이상의 런길이의 인코딩을 디코딩하기 위하여 장치에 의해 선택적으로 액세스되는 복수의 코드워드를 각각 가지고 있는 복수의 코드워드 표;를 포함하는 것을 특징으로 하는 제조물.
  52. 제 50항 또는 51항에 있어서, 코드워드 표는
    Figure 712010001453992-pct00046
    Figure 712010001453992-pct00047
    중 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 것을 특징으로 하는 제조물.
  53. 제 50항 또는 51항에 있어서, 코드워드 표는
    Figure 712010001453992-pct00048
    의 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 것을 특징으로 하는 제조물.
  54. 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수내의 계수의 수 및 트레일링 원 계수의 수를, 조합된 방식으로 인코딩하는 단계;
    상기 트레일링 원 계수의 부호를 인코딩하는 단계;
    상기 트레일링 원 계수 전의 논제로 변환 계수의 각각의 레벨 측정값을 인코딩하는 단계; 및
    상기 트레일링 원 계수 전의 논제로 계수 사이에 삽입된 제로 계수의 수 및, 상기 트레일링 원 계수 전의 각각의 논제로 계수 전의 제로 계수의 하나 이상의 런길이를 인코딩하는 단계;를 포함하는 것을 특징으로 하는 비디오 인코딩 방법.
  55. 제 54항에 있어서, 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수내의 트레일링 원 계수의 수 및 트레일링 원 계수 전의 논제로 계수의 수를, 조합된 방식으로 인코딩하는 단계는
    Figure 712010001453992-pct00049
    Figure 712010001453992-pct00050
    Figure 712010001453992-pct00051
    Figure 712010001453992-pct00052
    중 선택된 코드워드 표의 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 하나 이상의 코드워드 표에 액세스하는 단계를 포함하는 것을 특징으로 하는 비디오 인코딩 방법.
  56. 제 54항에 있어서, 루마 샘플 블록에 대하여, 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수내의 계수의 수 및 트레일링 원 계수의 수를, 조합된 방식으로 인코딩하는 단계는 복수의 코드워드 표 및 FLC중 하나를 선택하는 단계를 더 포함하는 것을 특징으로 하는 비디오 인코딩 방법.
  57. 제 55항에 있어서, 복수의 코드워드 표 및 FLC 중 하나를 선택하는 단계는 픽처의 매크로블록의 하나 이상의 이웃하는 루마 샘플 블록의 하나 이상의 시리즈의 변환 계수내의 계수의 수에 적어도 부분적으로 기초하여, 적응형 방식으로 실행되는 것을 특징으로 하는 비디오 인코딩 방법.
  58. 제 57항에 있어서, 픽처의 매크로블록의 하나 이상의 이웃하는 루마 샘플 블록은 픽처의 매크로블록의 상측 이웃 루마 샘플 블록 및 좌측 이웃 루마 샘플 블록중 적어도 하나를 포함하는 것을 특징으로 하는 비디오 인코딩 방법.
  59. 제 54항에 있어서, 트레일링 원 계수 전의 각각의 논제로 변환 계수의 레벨 측정값을 인코딩하는 단계는
    Figure 712010001453992-pct00053
    Figure 712010001453992-pct00054
    Figure 712010001453992-pct00055
    Figure 712010001453992-pct00056
    Figure 712010001453992-pct00057
    중 선택된 코드워드 표의 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 하나 이상의 코드워드 표에 선택적으로 액세스하는 단계를 포함하는 것을 특징으로 하는 비디오 인코딩 방법.
  60. 제 54항에 있어서, 트레일링 원 계수 전의 각각의 논제로 변환 계수의 레벨 측정값을 인코딩하는 단계는 매크로블록의 양자화 파라미터, 블록내의 계수의 수 및 이전에 인코딩/디코딩된 하나 이상의 변환 계수들의 레벨중 하나 이상에 적어도 부분적으로 기초하여, 코드워드 표를 선택하는 단계를 포함하는 것을 특징으로 하는 비디오 인코딩 방법.
  61. 제 60항에 있어서, 코드워드 표는 상이한 수의 코드워드를 포함하고, 트레일링 원 계수 전의 각각의 논제로 변환 계수의 레벨 측정값을 인코딩하는 단계는 보다 큰 코드워드 표를 선택하기 전에 보다 작은 코드워드 표를 대칭적으로 선택하는 단계를 포함하는 것을 특징으로 하는 비디오 인코딩 방법.
  62. 제 54항에 있어서, 트레일링 원 계수 전의 논제로 계수 사이에 삽입된 제로 계수의 수 및, 각각의 논제로 계수 전의 제로 계수의 하나 이상의 런길이를 인코딩하는 단계는
    Figure 712010001453992-pct00058
    Figure 712010001453992-pct00059
    Figure 712010001453992-pct00060
    중 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 하나 이상의 코드워드 표에 선택적으로 액세스하는 단계를 포함하는 것을 특징으로 하는 비디오 인코딩 방법.
  63. 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수내의 계수의 수 및 트레일링 원 계수의 수의 조합된 인코딩을 디코딩하는 단계;
    트레일링 원 계수의 부호의 인코딩을 디코딩하는 단계;
    트레일링 원 계수 전의 논제로 변환 계수의 레벨 측정값의 인코딩을 디코딩하는 단계; 및
    논제로 사이에 삽입된 제로 계수의 수 및, 각각의 논제로 계수 전의 제로 계수의 하나 이상의 런길이의 인코딩을 디코딩하는 단계;를 포함하는 것을 특징으로 하는 비디오 디코딩 방법.
  64. 제 63항에 있어서, 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수내의 계수의 수 및 트레일링 원 계수의 수의 조합된 인코딩을 디코딩하는 단계는
    Figure 712010001453992-pct00061
    Figure 712010001453992-pct00062
    Figure 712010001453992-pct00063
    Figure 712010001453992-pct00064
    중 선택된 코드워드 표의 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 하나 이상의 코드워드 표에 액세스하는 단계를 포함하는 것을 특징으로 하는 비디오 디코딩 방법.
  65. 제 64항에 있어서, 루마 샘플 블록에 대하여, 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수내의 계수의 수 및 트레일링 원 계수의 수의 조합된 인코딩을 디코딩하는 단계는 복수의 코드워드 표 및 FLC 중 하나를 선택하는 단계를 더 포함하는 것을 특징으로 하는 비디오 디코딩 방법.
  66. 제 65항에 있어서, 복수의 코드워드 표 및 FLC중 하나를 선택하는 단계는 픽처의 매크로블록의 하나 이상의 이웃하는 루마 샘플 블록의 하나 이상의 시리즈의 변환 계수내의 계수의 수에 적어도 부분적으로 기초하여, 적응형 방식으로 실행되는 것을 특징으로 하는 비디오 디코딩 방법.
  67. 제 66항에 있어서, 픽처의 매크로블록의 하나 이상의 이웃하는 루마 샘플 블록은 픽처의 매크로블록의 상측 이웃 루마 샘플 블록 및 좌측 이웃 루마 샘플 블록중 적어도 하나를 포함하는 것을 특징으로 하는 비디오 디코딩 방법.
  68. 제 63항에 있어서, 트레일링 원 계수 전의 논제로 변환 계수의 레벨 측정값의 인코딩을 디코딩하는 단계는
    Figure 712010001453992-pct00065
    Figure 712010001453992-pct00066
    Figure 712010001453992-pct00067
    Figure 712010001453992-pct00068
    Figure 712010001453992-pct00069
    중 선택된 코드워드 표의 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 하나 이상의 코드워드 표에 선택적으로 액세스하는 단계를 포함하는 것을 특징으로 하는 비디오 디코딩 방법.
  69. 제 64항에 있어서, 트레일링 원 계수 전의 논제로 변환 계수의 레벨 측정값의 인코딩을 디코딩하는 단계는 매크로블록의 양자화 파라미터, 블록내의 계수의 수 및 이전에 인코딩/디코딩된 하나 이상의 변환 계수들의 레벨중 하나 이상에 적어도 부분적으로 기초하여, 코드워드 표를 선택하는 단계를 포함하는 것을 특징으로 하는 비디오 디코딩 방법.
  70. 제 69항에 있어서, 코드워드 표는 상이한 수의 코드워드를 포함하고, 트레일일 원 계수 전의 논제로 변환 계수의 레벨 측정값의 인코딩을 디코딩하는 단계는 지정된 코드워드 표를 선택하기 전에 상기 지정된 코드워드 표 보다 작은 코드워드 표를 대칭적으로 선택하는 단계를 포함하는 것을 특징으로 하는 비디오 디코딩 방법.
  71. 제 63항에 있어서, 트레일링 원 계수 전의 논제로 계수 사이에 삽입된 제로 계수의 수 및, 각각의 논제로 계수 전의 제로 계수의 하나 이상의 런길이의 인코딩을 디코딩하는 단계는
    Figure 712010001453992-pct00070
    Figure 712010001453992-pct00071
    Figure 712010001453992-pct00072
    중 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 하나 이상의 코드워드 표에 선택적으로 액세스하는 단계를 포함하는 것을 특징으로 하는 비디오 디코딩 방법.
  72. 시스템에서,
    픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수를 제1 디바이스가 인코딩하는 단계로서,
    변환 계수의 시리즈내의 계수의 수 및 트레일링 원 계수의 수를, 조합된 방식으로 인코딩하는 단계,
    상기 트레일링 원 계수의 부호를 인코딩하는 단계,
    상기 트레일링 원 계수 전의 논제로 변환 계수의 각각의 레벨 측정값을 인코딩하는 단계, 및
    논제로 계수 사이에 삽입된 제로 계수의 수 및, 각각의 논제로 계수 전의 제로 계수의 하나 이상의 런길이를 인코딩하는 단계,에 의해 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수를 제1 디바이스가 인코딩하는 단계; 및
    샘플 블록을 제2 디바이스가 회복시키는 단계로서,
    변환 계수의 시리즈내의 계수의 수 및 트레일링 원 계수의 수의 조합된 인코딩을 디코딩하는 단계,
    트레일링 원 계수의 부호의 인코딩을 디코딩하는 단계,
    트레일링 원 계수 전의 논제로 변환 계수의 레벨 측정값의 인코딩을 디코딩하는 단계, 및
    논제로 계수 사이에 삽입된 제로 계수의 수의 인코딩 및, 각각의 논제로 계수 전의 제로 계수의 하나 이상의 런길이의 인코딩을 디코딩하는 단계,에 의해 샘플 블록을 제2 디바이스가 회복시키는 단계;를 포함하는 것을 특징으로 하는 비디오 인코딩 및 디코딩 방법.
  73. 제 72항에 있어서, 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수내의 계수의 수 및 트레일링 원 계수의 수를 상기 제1 디바이스에 의해, 조합된 방식으로 인코딩하는 단계 및, 상기 제2 디바이스에 의해, 조합된 인코딩을 디코딩하는 단계는
    Figure 712010001453992-pct00073
    Figure 712010001453992-pct00074
    Figure 712010001453992-pct00075
    Figure 712010001453992-pct00076
    중 선택된 코드워드 표의 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 하나 이상의 코드워드 표에 액세스하는 단계를 포함하는 것을 특징으로 하는 비디오 인코딩 및 디코딩 방법.
  74. 제 72항에 있어서, 루마 샘플 블록에 대하여, 픽처의 매크로블록의 샘플 블록의 일 시리즈의 변환 계수내의 계수의 수 및 트레일링 원 계수의 수를 제1 디바이스에 의해, 조합된 방식으로 인코딩하는 단계 및, 제2 디바이스에 의해, 조합된 인코딩을 디코딩하는 단계는 복수의 코드워드 표 및 FLC중 하나를 선택하는 단계를 포함하는 것을 특징으로 하는 비디오 인코딩 및 디코딩 방법.
  75. 제 74항에 있어서, 상기 복수의 코드워드 표 및 FLC중 하나를 선택하는 단계는 픽처의 매크로블록의 하나 이상의 이웃하는 루마 샘플 블록의 하나 이상의 시리즈의 변환 계수내의 계수의 수에 적어도 부분적으로 기초하여, 적응형 방식으로 실행되는 것을 특징으로 하는 비디오 인코딩 및 디코딩 방법.
  76. 제 75항에 있어서, 픽처의 매크로블록의 하나 이상의 이웃하는 루마 샘플 블록은 픽처의 매크로블록의 상측 이웃 루마 샘플 블록 및 좌측 이웃 루마 샘플 블록중 적어도 하나를 포함하는 것을 특징으로 하는 비디오 인코딩 및 디코딩 방법.
  77. 제 72항에 있어서, 트레일링 원 계수 전의 논제로 변환 계수의 레벨 측정값을, 제1 디바이스에 의해 인코딩하는 단계 및, 제2 디바이스에 의해 레벨 측정값 인코딩을 디코딩하는 단계는
    Figure 712010001453992-pct00077
    Figure 712010001453992-pct00078
    Figure 712010001453992-pct00079
    Figure 712010001453992-pct00080
    Figure 712010001453992-pct00081
    중 선택된 하나의 코드워드 표의 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 하나 이상의 코드워드 표에 선택적으로 액세스하는 단계를 포함하는 것을 특징으로 하는 비디오 인코딩 및 디코딩 방법.
  78. 제 72항에 있어서, 트레일링 원 계수 전의 논제로 변환 계수의 레벨 측정값을 제1 디바이스에 의해 인코딩하는 단계 및, 제2 디바이스에 의해 레벨 측정값 인코딩을 디코딩하는 단계는 매크로블록의 양자화 파라미터, 블록내의 계수의 수 및 이전에 인코딩/디코딩된 하나 이상의 변환 계수들의 레벨중 하나 이상에 적어도 부분적으로 기초하여, 코드워드 표를 선택하는 단계를 포함하는 것을 특징으로 하는 비디오 인코딩 및 디코딩 방법.
  79. 제 78항에 있어서,
    상기 코드워드 표는 상이한 수의 코드워드를 포함하고, 트레일링 원 계수 전의 논제로 변환 계수의 레벨 측정값을 제1 디바이스에 의해 인코딩하는 단계, 및 상기 제2 디바이스에 의해 레벨 측정값을 디코딩하는 단계는 지정된 코드워드 표를 선택하기 전에 상기 지정된 코드워드 표 보다 작은 코드워드 표를 대칭적으로 선택하는 단계를 포함하는 것을 특징으로 하는 비디오 인코딩 및 디코딩 방법.
  80. 제 72항에 있어서, 논제로 계수 사이에 삽입된 제로 계수의 수 및, 각각의 논제로 계수 전의 제로 계수의 하나 이상의 런길이를 제1 디바이스에 의해 인코딩하는 단계 및, 상기 2 디바이스에 의해 제로 계수의 수 및 런길이 인코딩을 디코딩하는 단계는
    Figure 712010001453992-pct00082
    Figure 712010001453992-pct00083
    Figure 712010001453992-pct00084
    중 과반수의 코드워드를 가지고 있는 적어도 하나의 코드워드 표를 포함하는 하나 이상의 코드워드 표에 선택적으로 액세스하는 단계를 포함하는 것을 특징으로 하는 비디오 인코딩 및 디코딩 방법.
KR1020047015033A 2002-03-22 2003-03-12 콘텍스트-적응형 vlc 비디오 변환 계수 인코딩/디코딩방법 및 장치 KR100976192B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US36703202P true 2002-03-22 2002-03-22
US60/367,032 2002-03-22
US10/232,337 2002-08-30
US10/232,337 US7099387B2 (en) 2002-03-22 2002-08-30 Context-adaptive VLC video transform coefficients encoding/decoding methods and apparatuses
PCT/US2003/007884 WO2003084242A2 (en) 2002-03-22 2003-03-12 Context-adaptive vlc video transform coefficients encoding/decoding methods and apparatuses

Publications (2)

Publication Number Publication Date
KR20050011734A KR20050011734A (ko) 2005-01-29
KR100976192B1 true KR100976192B1 (ko) 2010-08-17

Family

ID=28678021

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020047015033A KR100976192B1 (ko) 2002-03-22 2003-03-12 콘텍스트-적응형 vlc 비디오 변환 계수 인코딩/디코딩방법 및 장치

Country Status (7)

Country Link
US (2) US7099387B2 (ko)
EP (1) EP1491056A2 (ko)
JP (1) JP4515097B2 (ko)
KR (1) KR100976192B1 (ko)
CN (1) CN1656817B (ko)
AU (1) AU2003225798A1 (ko)
WO (1) WO2003084242A2 (ko)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6563953B2 (en) * 1998-11-30 2003-05-13 Microsoft Corporation Predictive image compression using a single variable length code for both the luminance and chrominance blocks for each macroblock
CN1946186B (zh) * 2001-11-22 2012-02-22 松下电器产业株式会社 可变长度编码方法以及可变长度解码方法
EP3099068B1 (en) * 2001-11-22 2019-06-05 Godo Kaisha IP Bridge 1 Variable length coding method and variable length decoding method
US7200275B2 (en) 2001-12-17 2007-04-03 Microsoft Corporation Skip macroblock coding
US7099387B2 (en) * 2002-03-22 2006-08-29 Realnetorks, Inc. Context-adaptive VLC video transform coefficients encoding/decoding methods and apparatuses
JP4368575B2 (ja) 2002-04-19 2009-11-18 パナソニック株式会社 可変長復号化方法、可変長復号化装置およびプログラム
JP4090862B2 (ja) * 2002-04-26 2008-05-28 松下電器産業株式会社 可変長符号化方法および可変長復号化方法
JP3679083B2 (ja) * 2002-10-08 2005-08-03 株式会社エヌ・ティ・ティ・ドコモ 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム、画像復号プログラム
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7602850B2 (en) * 2003-12-19 2009-10-13 Intel Corporation Content adaptive variable length coding (CAVLC) decoding
US7843997B2 (en) * 2004-05-21 2010-11-30 Broadcom Corporation Context adaptive variable length code decoder for decoding macroblock adaptive field/frame coded video data
JP4612831B2 (ja) * 2004-11-15 2011-01-12 キヤノン株式会社 可変長符号化装置及び可変長符号化方法
US7643694B2 (en) * 2004-12-31 2010-01-05 Zoran Corporation Method and apparatus for processing a compressed image in an order other than the order in which it was compressed
US9077960B2 (en) 2005-08-12 2015-07-07 Microsoft Corporation Non-zero coefficient block pattern coding
US8599925B2 (en) * 2005-08-12 2013-12-03 Microsoft Corporation Efficient coding and decoding of transform blocks
WO2007029945A1 (en) * 2005-09-06 2007-03-15 Samsung Electronics Co., Ltd. Method and apparatus for enhancing performance of entropy coding, video coding method and apparatus using the method
EP1929782A4 (en) * 2005-09-26 2012-03-21 Samsung Electronics Co Ltd Method and apparatus for enhancing performance of entropy coding, and video coding method and apparatus using the entropy coding performance enhancing method
US7348903B2 (en) 2005-09-26 2008-03-25 Samsung Electronics Co., Ltd. Method and apparatus for enhancing performance of entropy coding, and video coding method and apparatus using the entropy coding performance enhancing method
KR100714706B1 (ko) 2005-09-26 2007-05-04 삼성전자주식회사 엔트로피 코딩의 성능 향상 방법 및 장치, 상기 방법을이용한 비디오 코딩 방법 및 장치
KR100772870B1 (ko) * 2005-12-12 2007-11-02 삼성전자주식회사 Fgs 계층의 블록에 포함되는 계수의 특성에 따라 비디오신호를 부호화하고 복호화하는 방법 및 장치
KR100753282B1 (ko) 2005-12-28 2007-08-29 엘지전자 주식회사 Cavlc 디코딩을 위한 vlc 테이블 선택방법 및 그cavlc 디코딩방법
KR100813877B1 (ko) * 2006-05-11 2008-03-18 전자부품연구원 효율적인 h.264/avc cavlc 디코딩 방법
KR100801967B1 (ko) * 2006-07-07 2008-02-12 광주과학기술원 문맥 기반 적응적 가변 길이 부호화 인코더 및 디코더,문맥 기반 적응성 가변 길이 부호화하는 방법과 복호화하는방법 및 이를 이용한 동영상 전송 시스템.
RU2420914C1 (ru) 2007-03-14 2011-06-10 Ниппон Телеграф Энд Телефон Корпорейшн Способ и устройство управления скоростью кодирования и носитель информации, который хранит программу для этого
JP5197574B2 (ja) 2007-03-14 2013-05-15 日本電信電話株式会社 量子化制御方法及び装置、そのプログラム並びにプログラムを記録した記録媒体
JP4949462B2 (ja) 2007-03-14 2012-06-06 日本電信電話株式会社 符号量推定方法、装置、そのプログラムおよび記録媒体
KR20080086766A (ko) * 2007-03-23 2008-09-26 삼성전자주식회사 픽셀 단위의 컨텍스트 모델을 이용한 영상의 부호화,복호화 방법 및 장치
JPWO2008129855A1 (ja) * 2007-04-11 2010-07-22 パナソニック株式会社 画像データ復号化装置、画像データ復号化方法
US7885473B2 (en) * 2007-04-26 2011-02-08 Texas Instruments Incorporated Method of CABAC coefficient magnitude and sign decoding suitable for use on VLIW data processors
US7813567B2 (en) * 2007-04-26 2010-10-12 Texas Instruments Incorporated Method of CABAC significance MAP decoding suitable for use on VLIW data processors
KR101539240B1 (ko) 2007-06-14 2015-07-30 삼성전자주식회사 영상 데이터의 엔트로피 부호화, 복호화 방법 및 장치
US7774205B2 (en) 2007-06-15 2010-08-10 Microsoft Corporation Coding of sparse digital media spectral data
CN101335000B (zh) * 2008-03-26 2010-04-21 华为技术有限公司 编码的方法及装置
US8902972B2 (en) * 2008-04-11 2014-12-02 Qualcomm Incorporated Rate-distortion quantization for context-adaptive variable length coding (CAVLC)
US7876257B2 (en) * 2008-04-28 2011-01-25 Mitsubishi Electric Research Laboratories, Inc. Method and apparatus for compressing SAR signals
KR101501568B1 (ko) * 2008-07-04 2015-03-12 에스케이 텔레콤주식회사 영상 부호화 및 복호화 장치 및, 방법
KR101362441B1 (ko) * 2010-07-16 2014-02-18 인텔렉추얼디스커버리 주식회사 쿼드트리 기반의 매크로블록을 위한 멀티 레벨의 양자화 파라미터 기록 방법 및 장치
US9172963B2 (en) * 2010-11-01 2015-10-27 Qualcomm Incorporated Joint coding of syntax elements for video coding
US8976861B2 (en) 2010-12-03 2015-03-10 Qualcomm Incorporated Separately coding the position of a last significant coefficient of a video block in video coding
US9042440B2 (en) 2010-12-03 2015-05-26 Qualcomm Incorporated Coding the position of a last significant coefficient within a video block based on a scanning order for the block in video coding
CN102547260B (zh) * 2010-12-22 2014-11-19 联芯科技有限公司 基于上下文自适应的可变长编码的解码方法及系统
US9490839B2 (en) 2011-01-03 2016-11-08 Qualcomm Incorporated Variable length coding of video block coefficients
US9106913B2 (en) 2011-03-08 2015-08-11 Qualcomm Incorporated Coding of transform coefficients for video coding
US10499059B2 (en) 2011-03-08 2019-12-03 Velos Media, Llc Coding of transform coefficients for video coding
US9167253B2 (en) 2011-06-28 2015-10-20 Qualcomm Incorporated Derivation of the position in scan order of the last significant transform coefficient in video coding
US9516316B2 (en) * 2011-06-29 2016-12-06 Qualcomm Incorporated VLC coefficient coding for large chroma block
US9338456B2 (en) 2011-07-11 2016-05-10 Qualcomm Incorporated Coding syntax elements using VLC codewords
KR20130058524A (ko) * 2011-11-25 2013-06-04 오수미 색차 인트라 예측 블록 생성 방법
US9654772B2 (en) * 2012-01-19 2017-05-16 Qualcomm Incorporated Context adaptive entropy coding with a reduced initialization value set
CN107302367B (zh) * 2012-01-20 2020-07-14 Ge视频压缩有限责任公司 从数据流解码具有变换系数级别的多个变换系数的装置
US10171810B2 (en) 2015-06-22 2019-01-01 Cisco Technology, Inc. Transform coefficient coding using level-mode and run-mode

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5400075A (en) 1993-01-13 1995-03-21 Thomson Consumer Electronics, Inc. Adaptive variable length encoder/decoder
EP0987899A2 (en) * 1993-12-16 2000-03-22 Samsung Electronics Co., Ltd. Adaptive variable-length coding and decoding method for video data

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4816914A (en) * 1987-01-07 1989-03-28 Pictel Corporation Method and apparatus for efficiently encoding and decoding image sequences
US5063608A (en) * 1989-11-03 1991-11-05 Datacube Inc. Adaptive zonal coder
US5510785A (en) * 1993-03-19 1996-04-23 Sony Corporation Method of coding a digital signal, method of generating a coding table, coding apparatus and coding method
JP3355888B2 (ja) * 1995-09-19 2002-12-09 松下電器産業株式会社 画像符号化記録再生装置
US5924064A (en) * 1996-10-07 1999-07-13 Picturetel Corporation Variable length coding using a plurality of region bit allocation patterns
US6339614B1 (en) * 1996-12-20 2002-01-15 Intel Corporation Method and apparatus for quantizing and run length encoding transform coefficients in a video coder
US6118822A (en) * 1997-12-01 2000-09-12 Conexant Systems, Inc. Adaptive entropy coding in adaptive quantization framework for video signal coding systems and processes
WO2002078355A1 (en) * 2001-03-23 2002-10-03 Nokia Corporation Variable length coding
US7099387B2 (en) * 2002-03-22 2006-08-29 Realnetorks, Inc. Context-adaptive VLC video transform coefficients encoding/decoding methods and apparatuses
US6795584B2 (en) * 2002-10-03 2004-09-21 Nokia Corporation Context-based adaptive variable length coding for adaptive block transforms
US6646578B1 (en) * 2002-11-22 2003-11-11 Ub Video Inc. Context adaptive variable length decoding system and method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5400075A (en) 1993-01-13 1995-03-21 Thomson Consumer Electronics, Inc. Adaptive variable length encoder/decoder
EP0987899A2 (en) * 1993-12-16 2000-03-22 Samsung Electronics Co., Ltd. Adaptive variable-length coding and decoding method for video data

Also Published As

Publication number Publication date
KR20050011734A (ko) 2005-01-29
WO2003084242A3 (en) 2004-04-01
US7099387B2 (en) 2006-08-29
US20070041449A1 (en) 2007-02-22
JP4515097B2 (ja) 2010-07-28
CN1656817A (zh) 2005-08-17
US7920629B2 (en) 2011-04-05
JP2005521356A (ja) 2005-07-14
AU2003225798A1 (en) 2003-10-13
WO2003084242A2 (en) 2003-10-09
EP1491056A2 (en) 2004-12-29
US20030202601A1 (en) 2003-10-30
CN1656817B (zh) 2010-05-26

Similar Documents

Publication Publication Date Title
US10129546B2 (en) Context adaptive binary arithmetic coding (CABAC) with scalable throughput and coding efficiency
US10045034B2 (en) System and method for using pattern vectors for video and image coding and decoding
JP5998180B2 (ja) クワッドツリーを用いるブロック情報の符号化/復号化方法及びその方法を使用する装置
US9698820B2 (en) Method and arrangement for coding transform coefficients in picture and/or video coders and decoders and a corresponding computer program and a corresponding computer-readable storage medium
RU2653270C2 (ru) Улучшенный палитровый режим в hevc
US9426473B2 (en) Mode decision simplification for intra prediction
US9338478B2 (en) Video compression using multiple variable length coding methods for multiple types of transform coefficient blocks
US20160322986A1 (en) Methods and devices for coding and decoding the position of the last significant coefficient
US9503750B2 (en) Binarization of prediction residuals for lossless video coding
EP2839645B1 (en) Coefficient groups and coefficient coding for coefficient scans
JP6465890B2 (ja) 画素ブロックの符号化または復号の方法および装置
US10321131B2 (en) Reducing context coded and bypass coded bins to improve context adaptive binary arithmetic coding (CABAC) throughput
US10554995B2 (en) Image coding apparatus, method for coding image, program therefor, image decoding apparatus, method for decoding image, and program therefor
US10368092B2 (en) Encoder-side decisions for block flipping and skip mode in intra block copy prediction
US9369702B2 (en) Context adaptive position and amplitude coding of coefficients for video
US9484952B2 (en) Context state and probability initialization for context adaptive entropy coding
US9008179B2 (en) Encoding of prediction residuals for lossless video coding
US8942502B2 (en) Parallelization of variable length decoding
US9866850B2 (en) Method of determining binary codewords for transform coefficients
EP2465268B1 (en) Method and apparatus for encoding and decoding mode information
US6654503B1 (en) Block-based, adaptive, lossless image coder
US6639945B2 (en) Method and apparatus for implementing motion detection in video compression
US7301485B2 (en) Decoding device or encoding device having intermediate buffer interposed between an arithmetic code decoder or encoder and a reverse binarization device or binarization device
KR100612015B1 (ko) 컨텍스트 적응형 이진 산술 부호화 방법 및 그 장치
JP2018521556A (ja) 高度算術コーダ

Legal Events

Date Code Title Description
AMND Amendment
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130801

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150730

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160727

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170804

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20180730

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20190729

Year of fee payment: 10