KR100753282B1 - VLC table selection method for CAVLC decoding and CAVLC decoding method thereof - Google Patents

VLC table selection method for CAVLC decoding and CAVLC decoding method thereof Download PDF

Info

Publication number
KR100753282B1
KR100753282B1 KR1020050131425A KR20050131425A KR100753282B1 KR 100753282 B1 KR100753282 B1 KR 100753282B1 KR 1020050131425 A KR1020050131425 A KR 1020050131425A KR 20050131425 A KR20050131425 A KR 20050131425A KR 100753282 B1 KR100753282 B1 KR 100753282B1
Authority
KR
South Korea
Prior art keywords
level
vlc
lev
decoding
prefix
Prior art date
Application number
KR1020050131425A
Other languages
Korean (ko)
Other versions
KR20070069381A (en
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 엘지전자 주식회사
Priority to KR1020050131425A priority Critical patent/KR100753282B1/en
Publication of KR20070069381A publication Critical patent/KR20070069381A/en
Application granted granted Critical
Publication of KR100753282B1 publication Critical patent/KR100753282B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation

Abstract

본 발명은 비디오 코딩 표준인 H.264/AVC에서 잉여 정보를 압축하기 위한 CAVLC(Context Adaptive Variable Length Coding)를 디코딩하는 방법에 관한 것으로, CAVLC를 분석한 결과에 따라 level_prefix 만으로 Lev-VLC 테이블을 결정하여 레벨을 디코딩한다. 이에 따라, 매우 간단한 처리를 통해서도 Lev-VLC 테이블을 선택하여 레벨을 디코딩할 수 있으며, 처리방법의 복잡도가 개선되고, 처리 속도 또한 개선된다.The present invention relates to a method of decoding Context Adaptive Variable Length Coding (CAVLC) for compressing surplus information in H.264 / AVC, which is a video coding standard, and determines a Lev-VLC table using only level_prefix based on the result of analyzing CAVLC. To decode the level. Accordingly, even a very simple process can select the Lev-VLC table to decode the level, improve the complexity of the processing method and improve the processing speed.

CAVLC, H.264/AVC, 변환계수, 레벨 CAVLC, H.264 / AVC, Conversion Factors, Levels

Description

CAVLC 디코딩을 위한 VLC 테이블 선택방법 및 그 CAVLC 디코딩방법{VLC table selection method for CAVLC decoding and CAVLC decoding method thereof}VLC table selection method and CAVLC decoding method for CALC decoding {VLC table selection method for CAVLC decoding and CAVLC decoding method}

도 1은 종래의 레벨 디코딩시 두 번째 VLC 테이블을 선택하는 방법을 도시한 도면,1 is a diagram illustrating a method of selecting a second VLC table in conventional level decoding;

도 2는 CAVLC의 복호화 방법을 나타낸 흐름도,2 is a flowchart illustrating a decoding method of CAVLC;

도 3은 CAVLC의 부호화/복호화 방법에 사용되는 VLC 테이블을 도시한 도면,3 is a view showing a VLC table used in a CAVLC encoding / decoding method;

도 4는 도 3의 VLC 테이블에 포함된 코드워드의 구조를 나타낸 도면,4 is a diagram illustrating a structure of a codeword included in a VLC table of FIG. 3;

도 5는 본 발명에 따른 CAVLC의 레벨 디코딩 방법을 나타낸 흐름도,5 is a flowchart illustrating a level decoding method of CAVLC according to the present invention;

도 6은 레벨의 크기에 따른 두 번째 VLC 테이블의 선택방법을 나타낸 도면,6 is a view showing a method of selecting a second VLC table according to the size of a level;

도 7은 본 발명의 VLC 테이블 선택방법 중 두 번째 이후의 테이블 선택방법의 설명을 위해 제공되는 도면, 그리고7 is a view provided for explaining the second and subsequent table selection method of the VLC table selection method of the present invention; and

도 8은 본 발명의 VLC 테이블 선택방법을 도시한 흐름도이다. 8 is a flowchart illustrating a VLC table selection method of the present invention.

본 발명은 비디오 코딩 표준인 H.264/AVC에서 잉여 정보를 CAVLC(Context Adaptive Variable Length Coding)로 부호/복호하는 방법에 관한 것으로 보다 상세하게는 CAVLC를 분석하여 level_prefix 만으로 Lev-VLC 테이블을 결정하여 레벨 디코딩하는 CAVLC 디코딩을 위한 Lev-VLC 테이블 선택방법 및 그 CAVLC 디코딩 방법에 관한 것이다. The present invention relates to a method of encoding / decoding surplus information by Context Adaptive Variable Length Coding (CAVLC) in H.264 / AVC, which is a video coding standard. More specifically, by analyzing CAVLC, a Lev-VLC table is determined by using only level_prefix. A method of selecting a Lev-VLC table for level decoding CAVLC decoding and a method of decoding the CAVLC thereof.

H.264/AVC 비디오 코딩 표준은 잉여 정보를 압축하기 위해 CAVLC와 CABAC(Context Adaptive Binary Arithmetic Coding) 방법을 이용한다. 그 중 CAVLC는 Baseline, Main, Advanced, FRExt profile 등 H.264/AVC의 모든 프로파일에서 지원되며 CABAC에 비해 계산량과 복잡도가 작다. CAVLC 기법은 기존의 MPEG-1, MPEG-4 등에서 이용된 가변장 부호화 기법(VLC: Variable Length Coding)에서 발전한 기법이다.The H.264 / AVC video coding standard uses CAVLC and CABAC (Context Adaptive Binary Arithmetic Coding) to compress the redundant information. Among them, CAVLC is supported in all profiles of H.264 / AVC such as Baseline, Main, Advanced, and FRExt profile, and it has less computation and complexity than CABAC. The CAVLC technique is a technique developed from the variable length coding (VLC) used in the conventional MPEG-1 and MPEG-4.

이하에서는 종래의 CAVLC 레벨 디코딩 방법을 미국특허 제6,646,578호를 기초로 설명한다.Hereinafter, a conventional CAVLC level decoding method will be described based on US Pat. No. 6,646,578.

종래의 CAVLC 레벨 디코딩 단계는, CAVLC로 압축된 4x4 블록 내의 0이 아닌 양자화(Quantization)변환 계수의 수 N, Trailing ones의 개수인 'T1s', level_prefix와 level_suffix 코드 워드로 계산한 현재 레벨 및 현재 사용한 VLC 테이블을 이용하여 다음 레벨 디코딩에 이용할 VLC 테이블을 선택하고, 선택된 VLC 테이블을 이용하여 다음 단계의 레벨을 디코딩한다. The conventional CAVLC level decoding step includes the number N of nonzero quantization transform coefficients in a 4x4 block compressed with CAVLC, the number of trailing ones 'T1s', the current level calculated with the level_prefix and level_suffix codewords, and the currently used The VLC table is used to select the next level decoding using the VLC table, and the next level is decoded using the selected VLC table.

예를 들어, T1s 번째 레벨 디코딩이 끝나면, (T1s+1) 번째 레벨 디코딩을 위 하여 새로운 VLC 테이블을 선택하게 된다. For example, after the T1s-th level decoding ends, a new VLC table is selected for (T1s + 1) th level decoding.

VLC 테이블은 복호된 레벨 크기와 현재 레벨 디코딩에 사용한 Lev-VLC(n) 테이블을 이용하여 결정한다. 선택 방법은 다음의 수학식 1의 의사코드(pseudo code)를 이용하여 선택하며, 현재의 테이블(n=n) 또는 현재 테이블보다 증가한 테이블(n=n+1)을 선택한다.The VLC table is determined using the decoded level size and the Lev-VLC (n) table used for current level decoding. The selection method is selected using a pseudo code of Equation 1 below, and selects the current table (n = n) or an increased table (n = n + 1) than the current table.

if(|level| > (vlc_inc[n]) & (n≠6)) n=n+1if (| level |> (vlc_inc [n]) & (n ≠ 6)) n = n + 1

else n = n else n = n

그리고 예외적으로, 수학식 1을 적용한 후에 |level|>3 인 경우, T1s 번째 레벨 디코딩을 위한 VLC 테이블은 Lev-VLC(2)이 사용된다. 수학식 1에서 VLC 테이블 선택에 사용하는 vlc_inc 테이블은 다음의 표 1과 같으며 n에 따라 다른 값을 갖는다.And exceptionally, after applying Equation 1 | If level |> 3, the Lev-VLC (2) is used as the VLC table for decoding the T1s-th level. The vlc_inc table used to select the VLC table in Equation 1 is shown in Table 1 below and has a different value depending on n.

nn vlc_incvlc_inc 00 00 1One 33 22 66 33 1212 44 2424 55 4848 66 infiniteinfinite

도 1은 종래의 레벨 디코딩시 (Tis+1) 번째 레벨 디코딩을 위한 VLC 테이블을 선택하는 방법을 도시한 도면으로, 수학식 1을 기초로 하여 Tis 번째 레벨 디코딩을 위한 VLC 테이블과 (Tis+1) 번째 레벨 디코딩을 위한 VLC 테이블이 어떻게 선택되는지를 나타내었다. FIG. 1 is a diagram illustrating a method of selecting a VLC table for (Tis + 1) th level decoding during conventional level decoding. FIG. 1 illustrates a VLC table and a (Tis + 1) layer for Tisth level decoding based on Equation 1. The VLC table for the 9th level decoding is selected.

Tis 번째 레벨 디코딩을 위한 VLC 테이블은 Lev-VLC(0)(a1) 혹은 Lev-VLC(1)(a2) 중에서 결정된다. 그리고 (Tis+1) 번째 레벨 디코딩을 위한 VLC 테이블은 수학식 1에 의해 결정되나, 특별히 첫 레벨의 크기가 3보다 큰 경우는 두 번째 테이블로 Lev-VLC(2)(a4)이 선택된다. The VLC table for Tis-th level decoding is determined among Lev-VLC (0) (a1) or Lev-VLC (1) (a2). The VLC table for decoding the (Tis + 1) th level is determined by Equation 1, but when the size of the first level is greater than 3, Lev-VLC (2) (a4) is selected as the second table.

본 발명의 목적은 H.264/AVC 복호/부호화기에서 CAVLC 잉여(residual) 디코딩을 위한 VLC 테이블 선택방법 및 그 CAVLC 디코딩 방법을 제공함에 있다.An object of the present invention is to provide a VLC table selection method for CAVLC residual decoding and a CAVLC decoding method in an H.264 / AVC decoder / encoder.

본 발명의 다른 목적은 레벨의 level_prefix 코드워드에 의한 Lev-VLC 테이블 선택 방법을 제시함에 있다.Another object of the present invention is to propose a Lev-VLC table selection method using a level_prefix codeword of a level.

상기 목적을 달성하기 위해 본 발명에 따른 CAVLC 디코딩을 위한 VLC 테이블 선택방법은, CAVLC(Context Adaptive Variable Length Coding)로 코딩된 비트 스트림의 i-1 번째 변환계수의 레벨 디코딩을 위해, 선택된 Lev-VLC(n) 테이블로부터 추출한level_prefix가 2보다 큰 값인지를 판단하는 단계(여기서, 정수 i>(T1s+1)이고, 정수 n은 6≥n≥0) 및 상기 판단결과에 따라 i번째 변환계수의 레벨 디코딩을 위한 Lev-VLC 테이블을 선택하되, 상기 level_prefix가 2보다 크면 Lev-VLC(n+1) 테이블을 선택하고, 상기 level_prefix가 2보다 크지 않거나 상기 n이 6이면 Lev-VLC(n) 테이블을 유지하는 단계를 포함한다.In order to achieve the above object, a method of selecting a VLC table for CAVLC decoding according to the present invention includes selecting a Lev-VLC for level decoding of an i-1 th transform coefficient of a bit stream coded by CAVLC (Context Adaptive Variable Length Coding). (n) determining whether the level_prefix extracted from the table is greater than 2 (wherein the integer i> (T1s + 1) and the integer n is 6≥n≥0) and the i-th conversion factor according to the determination result. Select the Lev-VLC table for level decoding, but if the level_prefix is greater than 2, select the Lev-VLC (n + 1) table; if the level_prefix is not greater than 2 or the n is 6, the Lev-VLC (n) table Maintaining.

나아가, 상기 비트 스트림에서 파싱한 상기 T1s가 3과 같은 경우 소정의 가상 코드를 5로 정하는 단계, 상기 T1s가 3 보다 작고, 0이 아닌 양자화 변환 계수의 수 N이 10 이하인 경우 상기 가상 코드를 3으로 정하는 단계, 상기 T1s가 3 보다 작고, 상기 N이 10 보다 큰 경우 상기 가상코드를 1로 정하는 단계, T1s 번째 변환계수의 레벨 디코딩을 위해 선택된 Lev-VLC(n) 테이블로부터 추출한 level_prefix가 상기 가상코드보다 큰 값인지를 판단하는 단계 및 상기 판단결과에 따라 (T1s+1) 번째 변환계수의 레벨 디코딩을 위한 Lev-VLC 테이블을 선택하되, level_prefix가 상기 가상코드보다 크면 Lev-VLC(n+1) 테이블을 선택하고, 상기 가상코드보다 크지 않으면 Lev-VLC(n) 테이블을 그대로 유지하되, 상기 n이 0이면 0 대신 1을 적용하는 단계를 더 포함할 수 있다.Further, if the T1s parsed from the bit stream is equal to 3, setting a predetermined virtual code to 5; if the T1s is less than 3 and the number N of non-zero quantization transform coefficients is 10 or less, the virtual code is 3 Determining the virtual code as 1 when the T1s is less than 3 and N is greater than 10, and the level_prefix extracted from the Lev-VLC (n) table selected for the level decoding of the T1s-th transform coefficient. Determining whether the value is greater than the code and selecting a Lev-VLC table for level decoding of the (T1s + 1) th conversion coefficient. If level_prefix is larger than the virtual code, the Lev-VLC (n + 1) is selected. The method may further include maintaining a Lev-VLC (n) table if it is not larger than the virtual code, but applying 1 instead of 0 if n is 0.

또한, 본 발명에 따른 CAVLC로 코딩된 비트 스트림으로부터 0이 아닌 양자화(Quantization)변환 계수의 수 N과 trailing ones의 개수인 T1s가 합쳐진 심볼인 토큰(Token)을 디코딩하는 단계, 상기 토큰의 디코딩 후, 상기 T1s 개의 변환계수의 부호가 각각 +인지 -인지 디코딩하는 단계, 상기 T1s가 아닌 변환계수 각각의 레벨을 구하기 위해 복수 개의 Lev-VLC 테이블 중 하나를 선택하면서 상기 레벨을 디코딩하되, i-1 번째 변환계수의 레벨 디코딩을 위해 선택된 Lev-VLC(n) 테이블로부터 추출한 level_prefix를 이용하여 i번째 변환계수의 레벨 디코딩을 위한 Lev-VLC 테이블을 선택하는 단계(여기서, 정수 i>(T1s+1)이고, 정수 n은 6≥n≥0) 및 TotalZeros를 디코딩하고, 상기 레벨 간에 존재하는 연속하는 0인 계수의 수인 런(run)을 디코딩하는 단계를 포함한다.In addition, decoding a token which is a symbol in which the number N of non-zero quantization transform coefficients and the number of trailing ones are combined from the CAVLC coded bit stream according to the present invention, after decoding the token. And decoding whether the signs of the T1s transform coefficients are + or-, respectively, while decoding one of the plurality of Lev-VLC tables to obtain a level of each of the transform coefficients other than the T1s, i-1 Selecting a Lev-VLC table for level decoding of the i-th transform coefficient using level_prefix extracted from the Lev-VLC (n) table selected for level decoding of the first transform coefficient (wherein the integer i> (T1s + 1) And n decodes 6 ≧ n ≧ 0) and TotalZeros, and decodes a run, which is the number of consecutive zero coefficients existing between the levels.

이하에서는, 도면을 참조하여 본 발명을 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to the drawings.

도 2는 CAVLC의 복호화 방법을 나타낸 흐름도이다.2 is a flowchart illustrating a decoding method of CAVLC.

CAVLC(Context Adaptive Variable Length Coding) 복호화방법은 H.264/AVC 비디오 코딩 표준에서 잉여 정보를 압축하기 위해 사용된다. CAVLC로 코딩된 비디오 비트 스트림을 수신한 경우, CAVLC 복호화 방법에 따라 양자화된 변환계수를 복호한다. The Context Adaptive Variable Length Coding (CAVLC) decoding method is used to compress the redundant information in the H.264 / AVC video coding standard. When a video bit stream coded with CAVLC is received, the quantized transform coefficient is decoded according to the CAVLC decoding method.

먼저, CAVLC로 압축된 4x4 블록 내의 0이 아닌 양자화(Quantization)변환 계수의 수 N과 Trailing ones의 개수인 'T1s'가 합쳐진 심볼인 토큰(Token)을 복호한다(S201). First, a token (Token), which is a symbol obtained by combining the number N of non-zero quantization transform coefficients in a 4 × 4 block compressed with CAVLC and 'T1s', the number of trailing ones, is decoded (S201).

토큰을 디코딩하고 나면, 첫 번째부터 T1s-1 번째 레벨이 디코딩되고, trailing ones의 +/- 부호가 디코딩되고(S203), trailing ones가 아닌 (N+1-T1s)개의 레벨 값이 디코딩 된다(S205). 그리고 TotalZeros를 디코딩하는 단계(S207) 및 레벨 간에 존재하는 연속하는 0인 계수의 수인 런(run)을 디코딩하는 단계(S209)를 포함하여 CAVLC로 압축된 데이터가 복호된다.After decoding the token, the T1s-1th level is decoded from the first, the +/- sign of the trailing ones is decoded (S203), and (N + 1-T1s) level values other than the trailing ones are decoded ( S205). The data compressed by CAVLC is decoded, including the step of decoding TotalZeros (step S207) and the step of decoding a run that is the number of consecutive zero coefficients existing between levels (S209).

S205 단계에서, 레벨을 복호화하는 방법은 적응적으로(adaptively) VLC 테이블을 선택하는 방법과 선택한 테이블을 이용해 레벨을 디코딩하는 방법을 모두 포함한다.In step S205, the method of decoding a level includes both a method of adaptively selecting a VLC table and a method of decoding a level using the selected table.

이하에서는 변환계수의 레벨을 디코딩하는 방법에 대하여 보다 상세히 설명 한다.Hereinafter, a method of decoding the level of the transform coefficient will be described in more detail.

도 3은 CAVLC의 부호화/복호화 방법에 사용되는 VLC 테이블을 도시한 도면이며, 도 4는 도 3의 VLC 테이블에 포함된 코드워드의 구조를 나타낸 도면이다.3 is a diagram illustrating a VLC table used in a CAVLC encoding / decoding method, and FIG. 4 is a diagram illustrating a structure of a codeword included in the VLC table of FIG. 3.

도 3을 참조하면, VLC 테이블은 Lev-VLC(0), Lev-VLC(1), Lev-VLC(2), Lev-VLC(3), Lev-VLC(4), Lev-VLC(5) 및 Lev-VLC(6)를 포함한다. 즉, VLC 테이블은 Lev-VLC(n)이 있다(여기서, 0≤n≤6). Referring to Figure 3, the VLC table is Lev-VLC (0), Lev-VLC (1), Lev-VLC (2), Lev-VLC (3), Lev-VLC (4), Lev-VLC (5) And Lev-VLC (6). That is, the VLC table has Lev-VLC (n) (where 0 ≦ n ≦ 6).

도 4를 참조하면, VLC 테이블에 포함된 비트 스트림 코드워드는 전반부(b1)는 level_prefix를 나타내고 후반부(b2)는 level_suffix를 나타낸다. Referring to FIG. 4, the bit stream codewords included in the VLC table indicate the first part b1 indicates level_prefix and the second part b2 indicates level_suffix.

전반부(b1)는 연속하는 비트 '0'와 최종 비트가 '1'인 구조로, level_prefix는 연속하는 비트 '0'의 개수와 같은 값을 갖는다. The first half b1 has a structure in which consecutive bits '0' and final bits are '1', and level_prefix has a value equal to the number of consecutive bits '0'.

반면에 후반부(b2)는 전반부(b1)에 뒤이어 오는 코드로 도 3의 VLC 테이블에서 'xx…s'로 표현되는 부분이다. 일반적으로 테이블 Lev-VLC(n)의 n과 같은 비트 길이의 코드워드이지만 더 긴 경우인 이스케이프 코드(escape code)도 있다. 이스케이프 코드는 더 큰 크기의 레벨을 표현하기 위해 사용하며 Lev-VLC(0)의 경우 level_prefix가 14나 15의 값을 가질 때, level_suffix의 길이는 각각 4 혹은 12비트를 갖는다. 그러나 Lev-VLC(1)부터 Lev-VLC(6)의 테이블은 level_prefix가 15일 때 12 비트의 level_suffix 코드워드를 갖는다.On the other hand, the second half b2 is the code following the first half b1 and the 'xx... s' is the part. In general, a bit length codeword equal to n of the table Lev-VLC (n), but there is an escape code that is longer. The escape code is used to represent a larger level. In the case of Lev-VLC (0), when level_prefix has a value of 14 or 15, the length of level_suffix has 4 or 12 bits, respectively. However, the tables of Lev-VLC (1) to Lev-VLC (6) have a 12-bit level_suffix codeword when level_prefix is 15.

도 5는 본 발명에 따른 CAVLC의 레벨 디코딩 방법을 나타낸 흐름도이다. 5 is a flowchart illustrating a level decoding method of CAVLC according to the present invention.

먼저, 블록 내 0이 아닌 변환계수의 수 N과 고주파 영역의 계수가 1인 T1s를 이용하여, T1s 번째 레벨의 디코딩을 위한 VLC 테이블(이하 '첫 번째 VLC 테이블' 이라 함)을 선정한다. 첫 번째 VLC 테이블의 선정은 아래에서 다시 설명한다(S501). First, a VLC table (hereinafter referred to as a 'first VLC table') for decoding the T1s level is selected by using the number N of non-zero transform coefficients in a block and T1s having a coefficient of a high frequency region of 1. Selection of the first VLC table will be described again below (S501).

S501 단계에서 구한 첫 번째 VLC 테이블을 이용하여, level_prefix를 파싱한 다음(S505), level_suffix를 파싱하고(S509), 해당 변환계수의 레벨을 디코딩한다(S511). Using the first VLC table obtained in step S501, level_prefix is parsed (S505), level_suffix is parsed (S509), and the level of the corresponding transform coefficient is decoded (S511).

레벨 디코딩이 완료되지 않았으면, S503 내지 S511를 반복하면서 다음 변환계수의 레벨을 디코딩한다. 다만 이러한 과정에서 T1s 번째 변환계수 이후의 레벨 디코딩은 새로운 VLC 테이블을 이용하게 되고, 이러한 새로운 VLC 테이블의 선택은 S505 단계에서 파싱한 level_prefix를 이용하여 S507 단계에서 바로 이루어진다.If the level decoding has not been completed, the levels of the next transform coefficient are decoded by repeating S503 to S511. However, in this process, the level decoding after the T1s-th conversion coefficient uses a new VLC table, and the selection of the new VLC table is performed immediately at step S507 using the level_prefix parsed at step S505.

이하에서는 설명의 편리를 위해, 앞서 T1s 번째 레벨의 디코딩을 위한 VLC 테이블을 '첫 번째 VLC 테이블'이라 한 것과 마찬가지로, (T1s+1) 번째 레벨의 디코딩을 위한 VLC 테이블을 '두 번째 VLC 테이블'이라 한다. 따라서, 이하에서 첫 번째 VLC 테이블, 두 번째 VLC 테이블에서 '첫 번째' 및 '두 번째'는, 전체 7개로 구성된 Lev-VLC(n) 테이블상의 순서 n을 의미하지 아니한다. For convenience of explanation, the VLC table for decoding of the T1s level is referred to as the 'first VLC table', and the VLC table for decoding of the (T1s + 1) level is referred to as the 'second VLC table'. This is called. Therefore, hereinafter, 'first' and 'second' in the first VLC table and the second VLC table do not mean the order n on the Lev-VLC (n) table including seven in total.

S511 단계에서, 변환 계수의 레벨을 구하기 위한 중간변수 levelCode는 다음의 수학식 1에 의해 level_prefix, level_suffix 그리고 n을 이용해서 계산한다.In step S511, the intermediate variable levelCode for obtaining the level of the transform coefficient is calculated using level_prefix, level_suffix and n by the following equation (1).

levelCode =(level _prefix<<n)+level _ suffix levelCode = ( level _prefix << n) + level _ suffix

levelCode로부터 다음의 수학식 3을 이용해 계수의 레벨을 디코딩한다. levelCode의 LSB(least significant bit)는 부호이고, 나머지 비트는 레벨 절대치 에서 1을 뺀 값과 동일하다. The level of the coefficient is decoded using the following equation (3) from the levelCode. The least significant bit (LSB) of levelCode is a sign, and the remaining bits are equal to the level absolute value minus one.

coefficient level=(1-2*(levelCode & 0x01))×((levelCode+2))>>1)coefficient level = (1-2 * ( levelCode & 0x 01)) × (( levelCode +2)) >> 1)

양자화된 변환 계수는 고주파 영역일수록 레벨의 크기가 작을 확률이 높다. CAVLC는 고주파 영역의 계수에서 저주파 계수의 순서로 디코딩하며, 사용하는 레벨 테이블 Lev-VLC(n)은 레벨을 디코딩할 때마다 새로 선택한다. Lev-VLC(n) 테이블은 n이 높을수록 큰 값을 가질 확률이 높은 레벨에 적합하므로, VLC 테이블의 선택은 n이 증가하는 방향으로 진행된다.The higher the frequency region, the higher the probability that the quantized transform coefficient is. The CAVLC decodes the coefficients in the high frequency region in the order of the low frequency coefficients, and the level table Lev-VLC (n) to be used newly selects each time the level is decoded. Since the Lev-VLC (n) table is suitable for a level at which n is likely to have a large value, the selection of the VLC table proceeds in the direction of increasing n.

이하에서는, S501 단계에서 이루어지는, 첫 번째 레벨을 구하기 위한 첫 번째 VLC 테이블을 구하는 방법을 설명한다.Hereinafter, a method of obtaining the first VLC table for obtaining the first level, which is performed in step S501, will be described.

첫 VLC 테이블은 블록 내 계수의 수 N과 고주파 영역의 계수가 1인 T1s를 이용하여 블록 내 잉여 정보의 잔재 정도를 가늠하고 첫 VLC 테이블을 다음의 수학식 4에 의해 Lev-VLC(0)과 Lev-VLC(1) 중 선택한다. The first VLC table uses the number N of coefficients in the block and T1s having a coefficient of 1 in the high frequency region to estimate the residual amount of surplus information in the block. The first VLC table is represented by Lev-VLC (0) and Choose from Lev-VLC (1).

Figure 112005077094062-pat00001
Figure 112005077094062-pat00001

여기서, n은 7개 VLC 테이블인 Lev-VLC(n) 테이블의 순서 n을 의미한다.Here, n means order n of the Lev-VLC (n) tables, which are seven VLC tables.

이하에서는, S507 단계에서 새로운 VLC 테이블을 선택하는 방법을 설명한다.Hereinafter, a method of selecting a new VLC table in step S507 will be described.

도 1을 본 발명의 접근 방향으로 다시 정리하면 다음의 도 6과 같다. 도 6은 레벨의 크기에 따른 두 번째 VLC 테이블의 선택방법을 나타낸 도면이다. 1 is rearranged to the approach direction of the present invention as shown in FIG. 6 is a diagram illustrating a method of selecting a second VLC table according to the size of a level.

Lev-VLC(0)(a)을 T1=3인 경우(c1)와 T1<3이면서 N≤10인 경우(c2)의 두 경우로 나누고, 두 번째 테이블 선택에서 레벨 크기를 3과 비교했을 때 대소에 따른 테이블 선택만이 유효한 규칙으로 정리된다. 즉 레벨 크기가 3 이하이면 Lev-VLC(1)이 선택되고, 레벨 크기가 3보다 크면 Lev-VLC(2)가 선택된다.Lev-VLC (0) (a) is divided into two cases where T1 = 3 (c1) and when T1 <3 and N≤10 (c2), and the level size is compared to 3 in the second table selection. Only case-by-case table selection is organized into valid rules. In other words, if the level size is 3 or less, Lev-VLC (1) is selected, and if the level size is larger than 3, Lev-VLC (2) is selected.

표 2는 T1, N에 따른 첫 테이블 선택과 그에 따른 코드워드 및 레벨 크기를 함께 정리한 것이다. Table 2 shows the first table selection according to T1 and N together with the codeword and level size.

level_prefix codewordlevel_prefix codeword level_suffix codewordlevel_suffix codeword LevelLevel T1=3 (d1)T1 = 3 (d1) T1<3, N≤10 (d2)T1 <3, N≤10 (d2) T1<3, N>10 (d3)T1 <3, N> 10 (d3) 1  One -- 1One 22 -- 01  01 -- -1-One -2-2 -- 001  001 -- 22 33 -- 0001  0001 -- -2-2 -3-3 -- 0000 1  0000 1 -- 33 44 -- 0000 01  0000 01 -- -3-3 -4-4 -- 0000 001  0000 001 -- 44 55 -- 1  One 00 -- -- 22 1  One 1One -- -- -2-2 01  01 00 -- -- 33 01  01 1One -- -- -3-3 001  001 00 -- -- 44

표 2에 따르면, Lev-VLC(0)에서, T1=3인 경우(d1), level_prefix가 5 이하이면 레벨의 크기는 3 이하이다. 또한, Lev-VLC(0)에서, T1<3, N≤10인 경우(d2)에는, level_prefix가 3 이하일 때 레벨의 크기가 3 이하이다. According to Table 2, in Lev-VLC (0), when T1 = 3 (d1), the level size is 3 or less when level_prefix is 5 or less. In Lev-VLC (0), when T1 <3 and N≤10 (d2), the level size is 3 or less when level_prefix is 3 or less.

그리고, T1<3, N>10인 경우(d3)에는, Lev-VLC(1)에서, level_prefix가 1 이하일 때 레벨의 크기가 3 이하이다. When T1 <3, N> 10 (d3), in the Lev-VLC (1), the level size is 3 or less when level_prefix is 1 or less.

즉, 두 번째 VLC 테이블을 선택할 경우, 도 6과 표 2를 고려하면, 레벨의 크기가 아니라 level_prefix로 두 번째 VLC 테이블을 선택할 수 있다. That is, when selecting the second VLC table, considering the Figure 6 and Table 2, it is possible to select the second VLC table by level_prefix rather than the size of the level.

표 2를 가상 코드(pseudo code) T_ prefix를 이용하여 다음의 수학식 5와 같이 정리할 수 있다. Table 2 may be summarized as in Equation 5 below using pseudo code T_ prefix .

if(T1=3) T_ prefix=5if (T1 = 3) T_ prefix = 5

elseif(N≤10) T_ prefix=3elseif (N≤10) T_ prefix = 3

elseif T_ prefix=1elseif T_ prefix = 1

여기서, T1은 항상 3 이하의 값을 가지므로, "elseif(N≤10)"은 "elseif(T1<3 and N≤10)과 동일하다.Here, since T1 always has a value of 3 or less, "elseif (N≤10)" is equal to "elseif (T1 <3 and N≤10).

그리고, 다음의 수학식 6과 같이 두 번째 VLC 테이블을 선택할 수 있다. The second VLC table may be selected as shown in Equation 6 below.

if(n=0) n=1if (n = 0) n = 1

if(level _ prefix > T_ prefix) & (n≠6)) n=n+1if ( level _ prefix > T_ prefix ) & (n ≠ 6)) n = n + 1

else n=nelse n = n

여기서, n은 7개 VLC 테이블인 Lev-VLC(n) 테이블의 순서 n을 의미한다.Here, n means order n of the Lev-VLC (n) tables, which are seven VLC tables.

수학식 6에서, 첫 번째 VLC 테이블이 Lev-VLC(0) 인 경우를 고려하여 if(n=0) n=1로 둔다.In Equation 6, considering that the first VLC table is Lev-VLC (0), let if (n = 0) n = 1.

이하에서는, 도 7을 참조하여 두 번째 이후의 VLC 테이블 선택방법을 설명한다.Hereinafter, the second and subsequent VLC table selection methods will be described with reference to FIG. 7.

도 7은 본 발명의 VLC 테이블 선택방법 중 두 번째 이후의 테이블 선택방법의 설명을 위해 제공되는 도면이다. FIG. 7 is a diagram provided to explain a second and subsequent table selection method of the VLC table selection method of the present invention.

도 7을 참조하면, 현재의 VLC 테이블(e1), 해당 VLC 테이블에서의 levle_prefix(e4)와 level_suffix(e5) 및 선택될 VLC 테이블(e6)을 도시하였다. 그리고, 적절한 설명을 위해 표 1의 vlc_inc(e2) 및 현재 VLC 테이블을 이용하여 구한 레벨(e3)을 나타내었다.Referring to FIG. 7, a current VLC table e1, levle_prefix (e4) and level_suffix (e5), and a VLC table e6 to be selected are shown in the corresponding VLC table. For the sake of proper explanation, the level (e3) obtained by using the vlc_inc (e2) of Table 1 and the current VLC table is shown.

도 3의 Lev-VLC(n)과 도 7을 참조하면, Lev-VLC(1)부터 Lev-VLC(5)에서, level_prefix가 '001'(코드 번호 2)이하이면 다음 단계의 VLC 테이블로 동일한 테이블이 선택되고 level_prefix가 '001' 보다 크면 다음 단계의 VLC 테이블은 n이 1 증가한 테이블이 선택된다. Referring to Lev-VLC (n) of FIG. 3 and FIG. 7, in the Lev-VLC (1) to Lev-VLC (5), if the level_prefix is equal to or smaller than '001' (code number 2), the same as the VLC table of the next step is obtained. If the table is selected and level_prefix is greater than '001', the table in which n is increased by 1 is selected for the next VLC table.

Lev-VLC(6)은 Lev-VLC(7)이 없으므로 level_prefix가 '001' 보다 크더라도 Lev-VLC(6)가 다음 단계의 VLC 테이블로 선택된다. Lev-VLC(0)은 첫 번째 레벨 디코딩에만 사용하기 때문에 앞에서 설명한 수학식 5과 수학식 6에 의해 결정되므로 제외해도 무관하다.Since Lev-VLC 6 does not have Lev-VLC 7, Lev-VLC 6 is selected as the VLC table of the next step even if level_prefix is greater than '001'. Since Lev-VLC (0) is used only for first-level decoding, it is irrelevant since it is determined by Equations 5 and 6 described above.

따라서, (T1s+1) 번째 이후 레벨의 디코딩 단계에서 VLC 테이블을 선택하는 방법은 다음의 수학식 8과 같이 정의할 수 있다.Therefore, a method of selecting the VLC table in the decoding step of the (T1s + 1) th subsequent level may be defined as in Equation 8 below.

if((level _ prefix > T_ prefix)&(n≠6)) n=n+1if (( level _ prefix > T_ prefix ) & (n ≠ 6)) n = n + 1

else n = nelse n = n

여기서, T_ prefix = 2 이고, n은 7개 VLC 테이블인 Lev-VLC(n) 테이블의 순 서 n을 의미한다.Here, T_ prefix = 2 and n denotes the order n of the Lev-VLC (n) tables, which are seven VLC tables.

결론적으로, 본 발명의 테이블 선택 방법은 가상코드 T_prefix를 결정하는 단계와 T_prefix와 대소를 통해 다음 테이블을 선택하는 두 단계로 구성되며, 다음의 도 8과 같다.In conclusion, the table selection method of the present invention comprises two steps of determining the virtual code T_prefix and selecting the next table through T_prefix and case, as shown in FIG. 8.

도 8은 본 발명의 VLC 테이블 선택방법을 도시한 흐름도이다. 8 is a flowchart illustrating a VLC table selection method of the present invention.

두 번째 VLC 테이블을 선택하는 경우에만 몇 가지 선택 가능한 T_prefix가 있고(S801, S803), 두 번째 이후의 VLC 테이블을 선택하는 경우에는 T_prefix는 2가 된다(S801, S805). 그리고 해당 T_prefix를 이용하여 수학식 7을 적용한다(S807).Only when the second VLC table is selected, there are some selectable T_prefixes (S801 and S803), and when the second and subsequent VLC tables are selected, the T_prefix is 2 (S801 and S805). Equation 7 is then applied using the corresponding T_prefix (S807).

이상의 방법으로 본 발명의 VLC 테이블 선택방법이 실현된다.By the above method, the VLC table selection method of the present invention is realized.

이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안 될 것이다.While the above has been shown and described with respect to preferred embodiments of the invention, the invention is not limited to the specific embodiments described above, it is usually in the technical field to which the invention belongs without departing from the spirit of the invention claimed in the claims. Various modifications can be made by those skilled in the art, and these modifications should not be individually understood from the technical spirit or prospect of the present invention.

이상 설명한 바와 같이, 본 발명에 따르면, 비디오 코딩 표준 H.264/AVC에서 잉여 정보를 압축하기 위한 CAVLC(Context Adaptive Variable Length Coding)를 디 코딩함에 있어, level_prefix 만으로 VLC 테이블을 결정하여 레벨을 디코딩할 수 있다. As described above, according to the present invention, in decoding Context Adaptive Variable Length Coding (CAVLC) for compressing redundant information in the video coding standard H.264 / AVC, the VLC table is determined only by level_prefix to decode the level. Can be.

또한, level_prefix와 level_suffix로 레벨을 구하는 과정과 다음 VLC 테이블을 선택하는 과정을 분리할 수 있다.In addition, the process of obtaining a level with level_prefix and level_suffix can be separated from the process of selecting the next VLC table.

이에 따라, 매우 간단한 처리를 통해서도 VLC 테이블을 선택하여 레벨을 디코딩할 수 있으며, 처리방법의 복잡도가 개선되고, 처리 속도 또한 개선된다. Accordingly, the VLC table can be selected and the level can be decoded through a very simple process. The complexity of the processing method is improved and the processing speed is also improved.

이러한 방법은 기존의 CAVLC 표준을 그대로 이용함으로써 CAVLC 방법이 사용되는 모든 영역에 사용할 수 있다.This method can be used in all areas where the CAVLC method is used by using the existing CAVLC standard as it is.

Claims (5)

CAVLC(Context Adaptive Variable Length Coding)로 코딩된 비트 스트림의 i-1 번째 변환계수의 레벨 디코딩을 위해, 선택된 Lev-VLC(n) 테이블로부터 추출한level_prefix가 2보다 큰 값인지를 판단하는 단계(여기서, 정수 i>(T1s+1)이고, 정수 n은 6≥n≥0); 및Determining whether or not the level_prefix extracted from the selected Lev-VLC (n) table is greater than 2 for level decoding of the i-1 th transform coefficient of the bit stream coded with Context Adaptive Variable Length Coding (CAVLC). The integer i> (T1s + 1) and the integer n is 6 ≧ n ≧ 0; And 상기 판단결과에 따라 i번째 변환계수의 레벨 디코딩을 위한 Lev-VLC 테이블을 선택하되, 상기 level_prefix가 2보다 크면 Lev-VLC(n+1) 테이블을 선택하고, 상기 level_prefix가 2보다 크지 않거나 상기 n이 6이면 Lev-VLC(n) 테이블을 유지하는 단계; 를 포함하여 이루어지는 CAVLC 디코딩을 위한 VLC 테이블 선택방법. According to the determination result, a Lev-VLC table for level decoding of an i-th conversion coefficient is selected, and if the level_prefix is greater than 2, a Lev-VLC (n + 1) table is selected, and the level_prefix is not greater than 2 or the n If 6, maintain the Lev-VLC (n) table; VLC table selection method for CAVLC decoding comprising a. 제 1항에 있어서,The method of claim 1, 상기 비트 스트림에서 파싱한 상기 T1s가 3과 같은 경우 상기 level_prefix의 비교대상이 되는 소정의 가상 코드를 마련하고, 상기 가상 코드를 5로 정하는 단계;If the T1s parsed from the bit stream equal to 3, providing a predetermined virtual code to be compared with the level_prefix and setting the virtual code to 5; 상기 T1s가 3 보다 작고, 0이 아닌 양자화 변환 계수의 수 N이 10 이하인 경우 상기 가상 코드를 3으로 정하는 단계;Setting the virtual code to 3 when the T1s is less than 3 and the number N of non-zero quantization transform coefficients is 10 or less; 상기 T1s가 3 보다 작고, 상기 N이 10 보다 큰 경우 상기 가상코드를 1로 정하는 단계; Setting the virtual code to 1 when the T1s is less than 3 and the N is greater than 10; T1s 번째 변환계수의 레벨 디코딩을 위해 선택된 Lev-VLC(n) 테이블로부터 추출한 level_prefix가 상기 가상코드보다 큰 값인지를 판단하는 단계; 및Determining whether level_prefix extracted from a Lev-VLC (n) table selected for level decoding of a T1s-th transform coefficient is greater than the virtual code; And 상기 판단결과에 따라 (T1s+1) 번째 변환계수의 레벨 디코딩을 위한 Lev-VLC 테이블을 선택하되, level_prefix가 상기 가상코드보다 크면 Lev-VLC(n+1) 테이블을 선택하고, 상기 가상코드보다 크지 않으면 Lev-VLC(n) 테이블을 그대로 유지하되, 상기 n이 0이면 0 대신 1을 적용하는 단계;를 더 포함하여 이루어지는 CAVLC 디코딩을 위한 Lev-VLC 테이블 선택방법.According to the determination result, a Lev-VLC table is selected for level decoding of the (T1s + 1) th conversion coefficient. If level_prefix is larger than the virtual code, a Lev-VLC (n + 1) table is selected. If not large, the Lev-VLC (n) table is maintained as it is, if n is 0, 1 instead of 0; Lev-VLC table selection method for CAVLC decoding further comprises. CAVLC로 코딩된 비트 스트림으로부터 0이 아닌 양자화(Quantization)변환 계수의 수 N과 trailing ones의 개수인 T1s가 합쳐진 심볼인 토큰(Token)을 디코딩하는 단계;Decoding a token which is a symbol in which the number N of non-quantization quantization transform coefficients and the number of trailing ones are combined from the CAVLC coded bit stream; 상기 토큰의 디코딩 후, 상기 T1s 개의 변환계수의 부호가 각각 +인지 -인지 디코딩하는 단계;After decoding the token, decoding whether the symbols of the T1s transform coefficients are each + or-; 상기 T1s가 아닌 변환계수 각각의 레벨을 구하기 위해 복수 개의 Lev-VLC 테이블 중 하나를 선택하면서 상기 레벨을 디코딩하되, i-1 번째 변환계수의 레벨 디코딩을 위해 선택된 Lev-VLC(n) 테이블로부터 추출한 level_prefix를 이용하여 i번째 변환계수의 레벨 디코딩을 위한 Lev-VLC 테이블을 선택하는 단계(여기서, 정수 i>(T1s+1)이고, 정수 n은 6≥n≥0); 및The level is decoded while selecting one of a plurality of Lev-VLC tables to obtain the level of each of the transform coefficients other than the T1s, and extracted from the selected Lev-VLC (n) table for level decoding of the i-1 th transform coefficient. selecting a Lev-VLC table for level decoding of the i-th transform coefficient using level_prefix, where integer i> (T1s + 1) and integer n is 6 ≧ n ≧ 0; And TotalZeros를 디코딩하고, 상기 레벨 간에 존재하는 연속하는 0인 계수의 수인 런(run)을 디코딩하는 단계;를 포함하여 이루어지는 CAVLC 디코딩방법.Decoding TotalZeros and decoding a run that is a number of consecutive zero coefficients existing between the levels. 제 3항에 있어서,The method of claim 3, wherein 상기 level_prefix를 이용하여 i번째 변환계수의 레벨 디코딩을 위한 Lev-VLC 테이블을 선택하는 단계는,Selecting a Lev-VLC table for level decoding of the i-th transform coefficient using the level_prefix, 상기 i-1 번째 변환계수의 레벨 디코딩을 위해 선택된 Lev-VLC(n) 테이블로부터 추출한level_prefix가 2보다 큰 값인지를 판단하는 단계; 및Determining whether level_prefix extracted from the Lev-VLC (n) table selected for level decoding of the i-1 th transform coefficient is greater than 2; And 상기 판단결과에 따라 i번째 변환계수의 레벨 디코딩을 위한 Lev-VLC 테이블을 선택하되, 상기 level_prefix가 2보다 크면 Lev-VLC(n+1) 테이블을 선택하고, 상기 level_prefix가 2보다 크지 않거나 상기 n이 6이면 Lev-VLC(n) 테이블을 유지하는 단계;를 포함하는 것을 특징으로 하는 CAVLC 디코딩방법.According to the determination result, a Lev-VLC table for level decoding of an i-th conversion coefficient is selected, and if the level_prefix is greater than 2, a Lev-VLC (n + 1) table is selected, and the level_prefix is not greater than 2 or the n Maintaining a Lev-VLC (n) table if the 6; CAVLC decoding method comprising a. 제 3항에 있어서,The method of claim 3, wherein 상기 level_prefix를 이용하여 (T1s+1)번째 변환계수의 레벨 디코딩을 위한 Lev-VLC 테이블을 선택하는 단계는,Selecting a Lev-VLC table for level decoding of the (T1s + 1) th transform coefficient using the level_prefix, 상기 T1s가 3과 같은 경우 상기 level_prefix의 비교대상이 되는 소정의 가상 코드를 마련하고, 상기 가상 코드를 5로 정하는 단계;When the T1s is equal to 3, providing a predetermined virtual code to be compared with the level_prefix and setting the virtual code to 5; 상기 T1s가 3보다 작고, 0이 아닌 양자화 변환 계수의 수 N이 10 이하인 경우 상기 가상 코드를 3으로 정하는 단계;Setting the virtual code to 3 when the T1s is less than 3 and the number N of non-zero quantization transform coefficients is 10 or less; 상기 T1s가 3보다 작고, 상기 N이 10 보다 큰 경우 상기 가상코드를 1로 정하는 단계; Setting the virtual code to 1 when the T1s is less than 3 and the N is greater than 10; T1s 번째 변환계수의 레벨 디코딩을 위해 선택된 Lev-VLC(n) 테이블로부터 추출한 level_prefix가 상기 가상코드보다 큰 값인지를 판단하는 단계; 및Determining whether level_prefix extracted from a Lev-VLC (n) table selected for level decoding of a T1s-th transform coefficient is greater than the virtual code; And 상기 판단결과에 따라 T1s+1번째 변환계수의 레벨 디코딩을 위한 Lev-VLC 테이블을 선택하되, level_prefix가 상기 가상코드보다 크면 Lev-VLC(n+1) Lev-VLC 테이블을 선택하고, 상기 가상코드보다 크지 않으면 Lev-VLC(n) 테이블을 그대로 유지하되, 상기 n이 0이면 0 대신 1을 적용하는 단계;를 더 포함하는 것을 특징으로 하는 CAVLC 디코딩방법.According to the determination result, a Lev-VLC table for level decoding of a T1s + 1 th transform coefficient is selected. If level_prefix is larger than the virtual code, a Lev-VLC (n + 1) Lev-VLC table is selected. If not greater than Lev-VLC (n) maintains the table, if n is 0, the step of applying a 1 instead of 0; CAVLC decoding method further comprising.
KR1020050131425A 2005-12-28 2005-12-28 VLC table selection method for CAVLC decoding and CAVLC decoding method thereof KR100753282B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050131425A KR100753282B1 (en) 2005-12-28 2005-12-28 VLC table selection method for CAVLC decoding and CAVLC decoding method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050131425A KR100753282B1 (en) 2005-12-28 2005-12-28 VLC table selection method for CAVLC decoding and CAVLC decoding method thereof

Publications (2)

Publication Number Publication Date
KR20070069381A KR20070069381A (en) 2007-07-03
KR100753282B1 true KR100753282B1 (en) 2007-08-29

Family

ID=38505007

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050131425A KR100753282B1 (en) 2005-12-28 2005-12-28 VLC table selection method for CAVLC decoding and CAVLC decoding method thereof

Country Status (1)

Country Link
KR (1) KR100753282B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100923948B1 (en) 2007-11-26 2009-10-29 한국전자통신연구원 H.264 CAVLC Decoding Method based on Application-Specific Instruction-set Processor
US8902972B2 (en) * 2008-04-11 2014-12-02 Qualcomm Incorporated Rate-distortion quantization for context-adaptive variable length coding (CAVLC)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030202601A1 (en) * 2002-03-22 2003-10-30 Gisle Bjontegaard Context-adaptive VLC video transform coefficients encoding/decoding methods and apparatuses
US6646578B1 (en) * 2002-11-22 2003-11-11 Ub Video Inc. Context adaptive variable length decoding system and method
KR20050061777A (en) * 2003-12-18 2005-06-23 엘지전자 주식회사 Decoding method of cavlc
US20050259742A1 (en) * 2004-05-21 2005-11-24 Hellman Timothy M System and method for choosing tables in CAVLC

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030202601A1 (en) * 2002-03-22 2003-10-30 Gisle Bjontegaard Context-adaptive VLC video transform coefficients encoding/decoding methods and apparatuses
US6646578B1 (en) * 2002-11-22 2003-11-11 Ub Video Inc. Context adaptive variable length decoding system and method
KR20050061777A (en) * 2003-12-18 2005-06-23 엘지전자 주식회사 Decoding method of cavlc
US20050259742A1 (en) * 2004-05-21 2005-11-24 Hellman Timothy M System and method for choosing tables in CAVLC

Also Published As

Publication number Publication date
KR20070069381A (en) 2007-07-03

Similar Documents

Publication Publication Date Title
JP6134055B2 (en) Data encoding and decoding
KR100694098B1 (en) Arithmetic decoding method and apparatus using the same
EP3020196B1 (en) Data encoding and decoding
US7564384B2 (en) Binarizing method and device thereof
US7800520B2 (en) Method and system for entropy coding
KR100813877B1 (en) Effective decoding method of h.264/avc context-based adaptive variable length coding
US6771824B1 (en) Adaptive variable length decoding method
US7324699B2 (en) Extension of two-dimensional variable length coding for image compression
EP2978136A1 (en) System and method for context-based adaptive binary arithmatic coding and decoding
EP2164176A1 (en) Method for lossless compressing prefix-suffix-codes, method for decompressing a bit sequence representing integers or symbols encoded in compressed prefix-suffix-codes and storage medium or signal carrying compressed prefix-suffix-codes
JP2005237004A (en) Method and device for arithmetic encoding and decoding of conversion factor, corresponding computer program, and storage medium readable by the corresponding computer
RU2510573C2 (en) Method for encoding sequence of integers, storage device and signal carrying encoded integer sequence and method for decoding sequence of integers
US8576915B2 (en) Position coding for context-based adaptive variable length coding
JP2004531995A5 (en)
EP0683568A1 (en) Variable length code look-up table having separate code length determination
KR100753282B1 (en) VLC table selection method for CAVLC decoding and CAVLC decoding method thereof
CN109417622B (en) Method and apparatus for improved significance flag decoding using simple local predictors
JP3977743B2 (en) Data compression method using self-prefixed (Self-PREFIXED) common variable length code
JP3977743B6 (en) Data compression method using self-prefixed (Self-PREFIXED) common variable length code
KR20090113208A (en) Method for encoding a sequence of integers, storage device and signal carrying an encoded integer sequence and method for decoding a sequence of integers
Chen et al. Highly efficient entropy coding of multilevel images using a modified arithmetic code
JP3579411B2 (en) Variable length encoding method and apparatus
JP5230375B2 (en) Image coding apparatus and image coding method
JP2004048723A (en) Variable length coding method and apparatus
JP2001308717A (en) Method and device for variable length decoding

Legal Events

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

Payment date: 20120727

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130724

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140724

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150724

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160722

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee