KR100527891B1 - 허프만 디코딩을 수행하는 방법 - Google Patents
허프만 디코딩을 수행하는 방법 Download PDFInfo
- Publication number
- KR100527891B1 KR100527891B1 KR10-2003-7006044A KR20037006044A KR100527891B1 KR 100527891 B1 KR100527891 B1 KR 100527891B1 KR 20037006044 A KR20037006044 A KR 20037006044A KR 100527891 B1 KR100527891 B1 KR 100527891B1
- Authority
- KR
- South Korea
- Prior art keywords
- code
- length
- huffman
- data structure
- binary digital
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/42—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory
Abstract
허프만 디코딩을 수행하는 방법의 실시예가 기재되어 있다. 이러한 일실시예에서는, 데이터 구조가 사용되지만, 물론, 본 발명은 이러한 특정 실시예로 그 범위가 제한되지는 않는다.
Description
본 발명은 허프만 디코딩에 관한 것이다.
본 특허 출원은 동시 출원된 미국특허출원 제09/704,392호(Acharya 등에 의한 "허프만 디코딩을 수행하는 방법", 본 발명의 양수인에게 양도됨)와 관련된 것이고, 이것은 여기서 레퍼런스로 포함된다.
잘 알려진 바와 같이, 허프만 코딩은 널리 보급된 가변 길이 통계적 인코딩 스킴이다. 주지된 바와 같이, 허프만 코드 생성은 각각의 개별 심볼에 대한 통계적 확률에 의존한다. 예로, D.A. Huffman 저서의 논문, "A Method for the Reconstruction of Minimum-Redundancy Codes"(IRE의 학회지, 40권 제9호, 1098~1101 페이지, 1952)를 참조하라. 적어도 부분적으로, 구현의 효율성 및 용이성으로 인해, 인코딩 스킴에 기반한 전형적인 테이블 룩업이 허프만 인코딩에 널리 사용된다. 그러나, 디코딩에 따른 테이블 검색은 통상적으로 소프트웨어 및 하드웨어 모두에서 비효율적이다. 이것은 특히, 실제 애플리케이션에 대해 전형적인 것과 같이, 테이블내의 엔트리 수가 상당히 높은 경우이다. 허프만 디코딩에 사용되는 다른 접근방법은 "트리 트래버싱 기법"을 사용하는 허프만 트리의 생성이다. 그러나, 이러한 디코딩 기법도 역시 단점이 있다. 이 특정 기법은 비트 순차적이고, 허프만 트리 생성 프로세스 및 디코딩 프로세스에 대한 계산의 실행 및 메모리 할당 관점 모두에서 과도한 "오버헤드"를 초래한다.
도1은 허프만 트리 구조 및 연관된 허프만 트리의 일례를 도시한 도면.
도2는 도1의 허프만 트리에 대해 가능한 허프만 코드를 도시한 테이블.
도3은 허프만 코드를 고유하게 결정하도록 선택된 규칙이 적용되는 허프만 코드의 일례를 도시한 테이블.
도4는 대응하는 디코딩 트리를 갖는 허프만 인코딩 테이블의 일례를 도시한 도면.
도5는 비트 직렬 허프만 디코딩을 위한 ROM 엔트리를 도시한 테이블.
도6은 상이한 구조가 적용된 도3의 테이블로부터 정보를 이용하는 테이블
도7은 본 발명에 따른 데이터 구조의 일실시예를 도시한 테이블.
발명의 요약
허프만 디코딩을 수행하는 방법의 실시예가 기재된다. 이러한 일실시예에서는, 데이터 구조가 사용되지만, 물론, 본 발명은 이러한 특정 실시예로 그 범위가 제한되지는 않는다.
다음의 상세한 설명에서는, 본 발명의 완전한 이해를 제공하기 위해, 여러 가지 특정 세부사항들이 제시되어 있다. 그러나, 이 기술 분야에서 통상의 지식을 가진 자는, 본 발명이 이러한 특정 세부사항들 없이도 실시될 수 있다는 것이 이해될 것이다. 다른 예에서, 주지된 방법, 절차, 구성요소 및 회로는, 본 발명을 모호하지 않게 하기 위해, 상세히 설명되지는 않는다.
전술된 바와 같이, 심볼 세트에 대한 허프만 코드의 생성은 소스 심볼의 발생 확률에 기반한다. 통상적으로 허프만 트리라고 부르는 2진 트리가 사용된다. D.A.Huffman은 상기의 논문에서 다음의 방식으로 프로세스를 기술하고 있다.
. 그 확률을 갖는 모든 가능한 심볼들을 목록으로 만듦.
. 최소 확률을 갖는 2개의 심볼을 찾음
. 그 확률이 각각의 확률의 합인, 두 심볼을 포함하는 단일 세트로 교체함
. 목록이 하나의 멤버만을 포함할 때까지 반복함
이 절차는 세트들의 귀납적 조직 세트를 생성하는데, 이것의 각각은 2개의 멤버를 정확히 포함한다. 그러므로, 이것은 심볼들을 "잎(leaves)"으로 갖는 2진 트리("허프만 트리")로 표현될 수 있다. 그리고, 특정 심볼에 대한 코드("허프만 코드")를 형성하는 것은, 뿌리로부터 그 심볼까지 2진 트리를 좌우로 이동하면서, 좌측 가지에 "0"을, 우측 가지에 "1"을 기록한다. 그러나, 이 절차에 대한 하나의 문제는, 결과로서 생성된 허프만 트리가 고유하지 않다는 점이다. 이러한 코드 애플리케이션의 일례가 GZIP과 같은 텍스트 압축이다. GZIP은, UNIX 운영 체제상에서 "압축(compress)" 텍스트 압축 유틸리티를 대체하기 위한, "자유로운(free)" 또는 자유롭게 이용가능한 UNIX와 같은 운영 체제를 개발하기 위한 목표로 GNU(Gnu's Not Unix) 프로젝트 하에서 개발된 텍스트 압축 유틸리티이다. 예를 들면, 웹사이트 "http"//www.gzip.orh/"에서 gzip-1.2.4로서 이용가능한, Gailly, J.L 및 Adler,M.의 GZIP documentation and sources를 참조하라.
주지된 바와 같이, 결과로서 생성되는 허프만 코드는 프리픽스(prefix) 코드이고, 보다 자주 나타나는 심볼은 가변 길이 허프만 코드를 형성하기 위해 보다 작은 수의 비트로 설정된다. 결과적으로, 평균 코드 길이는 심볼 발생 주파수를 이용하여 급격히 감소된다.
도1은 3개의 소스 심볼을 갖는 허프만 트리의 간단한 예를 도시하고 있다. 상이한 2진 심볼을 트리의 에지에 설정함으로써, 몇몇 2진 코드를 이용하여 동일한 허프만 트리가 표현될 수 있다.
이 허프만 트리에 대한 허프만 코드의 가능한 세트가 도2에 도시되어 있다. 도2로부터, 허프만 코드가 고유하지 않은 것으로 도시되었지만, 이 예로부터, 각 심볼의 개별 코드 길이는 고유하게 나타난다.
대응하는 허프만 트리를 구성함으로써 허프만 코드에 대한 길이 정보를 생성할 수 있다. 그러나, 전술된 바와 같이, 이 방식으로 생성되는 경우, 허프만 코드는 고유하지 않을 수 있다. 그럼에도 불구하고, 2가지 조건을 부과함으로써, 허프만 트리를 사용함으로써 생성된 허프만 코드가 고유한 것으로 보장될 수 있다는 것을 볼 수 있다. 이 조건은 다음과 같다.
1. 주어진 비트 길이의 모든 코드가, 그것이 표현하는 심볼과 동일한 순서로, 사전 편집상(lexicographically) 연속된 값을 가짐; 및
2. 보다 짧은 코드는 사전 편집상 보다 긴 코드를 앞섬.
이러한 조건에 기반하여, 허프만 코드가 고유하게 결정될 수 있다. 예를 들면, 도3은 이러한 조건을 적용한 19개 심볼의 허프만 코드 세트를 도시하고 있는데, 여기서, 코드 길이는 허프만 트리를 이용하여 사전 결정된다. 도3의 테이블에 있어서, 허프만 코드내의 엔트리에서의 대쉬(-)는, 심볼 및 전류원 알파벳에 의한 코드가 존재하지 않고, 그 길이 정보가 0이라는 것을 나타낸다.
본 발명은 이에 대해 제한되지 않지만, 상기의 조건들은, 예를 들면, 전술된 GZIP 유틸리티와 같은, 다양한 압축 방법 및 표준에 적용될 수 있다. 통상적으로, 이러한 애플리케이션에서, 허프만 트리 정보는 압축된 텍스트 데이터에 따라 코드 길이 정보 세트 형태로 전달된다. 그러므로, 고유한 허프만 트리를 복원하는데 코드 길이 정보 세트는 충분하다. 예를 들면, 도3에 도시된 허프만 코드 테이블은, GZIP에서 구현되는 바와 같이, 다음의 프로세스를 이용하여 생성될 수 있다.
코드 길이는 초기에 Length[1];
1) 각 코드 길이에 대한 코드수를 카운트함.
"카운트[N]를 길이 N(N>=1)인 코드수로 함.
2) 각 코드 길이에 대한 최소 코드의 수치값을 찾음
Huffman_code=0; count[0]=0;
for(i=1 to MAX_BITS){
Huffman_code=(Huffman_code + count[i-1])<<1;
next_code[i]=Huffman_code;
}
3) 2에서 결정된 연속값을 이용하여 모든 코드에 대해 수치값을 설정함
전술된 바와 같이, 허프만 디코딩은 테이블 룩업 기법을 이용하여 비교적 쉽게 달성될 수 있다. 그러나, 코드 워드가 디코딩될 압축된 비트 스트림에서 수신되기 때문에, 허프만 코드의 디코딩은 통상적으로 보다 계산 집약적이고, 코드 워드 사이에 경계가 사전 정의되지 않는다. 허프만 코드는 전술된 바와 같이 가변 길이 코드이다.
일정 입력 속도 디코더(constant input rate decoder)로 언급되는 하나의 접근법 또는 기법은 한번에 1비트의 입력 비트 스트림을 직렬로 처리한다. 이 방법은 디코딩 또는 허프만 트리 구조를 사용한다. 그러므로, 이 기법은, 뿌리로부터 시작하여, 최종 노드에 도달할 때까지, 디코딩 트리의 가지를 트래버싱하는 것을 포함한다. 최종 노드에서, 코드 워드가 완전히 디코딩되고, 대응하는 심볼이 요구된 것과 같이 생성되거나 출력될 수 있다. 그리고 나서, 이 프로세스는 트리의 뿌리로부터 다시 시작한다. 예를 들면, B.Bhaskarin 및 K.Konstantinides에 의한 "Image and Video Compressions Standards:Algorithms and Architectures"(Kluwer Academic Publishers, 1995)를 참조하라.
도4는 대응하는 디코딩 트리를 갖는 허프만 인코딩 테이블의 일례이다. 하드웨어 또는 소프트웨어에서 이러한 디코더에 관련된 하나의 문제점은 디코딩 트리를 메모리에 효과적으로 매핑하는 것에 관한 것이다. 예를 들면, 도5는 도4의 디코딩 트리를 이용하여 비트 직렬 허프만 디코딩에 대한 ROM 엔트리 테이블을 도시하고 있다. 메모리를 효과적으로 매핑하는 하나의 방법이, 예를 들면, Mukherjee 등에 의한 "MARVLE:a VLSI chip for data compression using tree-based codes"(IEEE Transactions on Very Large Scale Integration(VLSI) System, 1(2):203-214, June 1993)에 제안되었다.
매우 효과적이지는 않더라도, 허프만 코드를 디코딩하는 다른 방법은, 허프만 테이블의 각 엔트리를 입력 버퍼내의 입력 비트와 비교하는 것이다. 이 방법 하에서, 최악의 경우, 인코딩 테이블내의 N개 엔트리가 비교될 수 있다(N은 심볼의 총 개수). 또한, 엔트리에 대한 코드 길이 정보는 알려진다.
데이터 구조를 이용하여 2진 디지털 신호 시리즈를 디코딩하는 방법의 일실시예에서, 다음과 같은 방법이 사용될 수 있다. 데이터 구조는, 적어도 부분적으로, 디코딩되는 2진 디지털 신호의 서브그룹핑(subgrouping) 길이에 기반하여 검색될 수 있다. 이 특정 실시예에서, 시리즈 2진 디지털 신호는 허프만 인코딩과 같이 인코딩되지만, 본 발명은 허프만 코딩 또는 디코딩으로 그 범위가 제한도지는 않는다. 이 특정 실시예에서는, 이로 제한되지는 않지만, 검색 이전에, 시리즈내의 제1 N개의 2진 디지털 신호가 서브그룹핑으로 선택되는데, 여기서, N은 최단 코드 길이이다. 또한, 길이 N을 갖는 데이터 구조내에 코드가 서브그룹핑에 매칭되지 않는 경우, 후속의 2진 디지털 신호에 의해 증가된다. 마찬가지로, 이 방법이 적용되는 특정 실시예에서, 서브그룹핑과 동일한 길이를 갖는 데이터 구조내의 모든 코드에 대해 매칭이 검사된다. 이후에 보다 상세히 논의되는 바와 같이, 데이터 구조는, 적어도 부분적으로, 코드 길이에 기반하여 구성된다. 또한, 데이터 구조는 동일한 코드 길이를 갖는 코드가 순차적으로 저장되도록 구성된다.
본 발명은 데이터 구조의 특정 실시예로 그 범위가 제한되지는 않지만, 이 특정 실시예는, 테이블의 여분을 보여주기 위해 일부 심볼을 재배열한 후의, 도3의 허프만 코드 테이블에 관련될 수 있다. 이것은, 예를 들면, 도6에 도시되어 있다. 예로, 허프만 코드 길이 0을 갖는 심볼은, 이 심볼이 사용되지 않음을 의미한다. 마찬가지로, 앞의 첫 번째 조건에 기반하여, 주어진 비트 길이의 모든 코드가 사전 편집상 연속값을 가질 수 있다. 따라서, 길이 정보를 추적함으로써, 사전 편집 순서로 이 길이의 허프만 코드를 갖는 첫번째 심볼의 허프만 코드, 및 동일한 길이를 갖는 마지막 심볼에 대한 허프만 코드의 수는 잠재적으로 보다 적은 정보를 제공한다.
데이터 구조의 특정 실시예가 도7에 도시되어 있다. 도7은 도6과 동일한 정보를 운반하지만, 간략하고 쉽게 재배열되는 것을 알 수 있다. 따라서, 도7은, 이후에 보다 상세히 설명되는 바와 같이, 보다 적은 메모리를 사용하고, 비트 병렬 디코딩 스킴이 사용될 수 있도록 한다.
도7에 도시된 데이터 구조의 실시예를 이용하면, 허프만 코드의 디코딩은, 적어도 부분적으로, 도7에 도시된 바와 같이, 각 코드 길이에 대한 허프만 코드의 범위 및 코드 길이의 정보에 기반하여 비트 병렬 접근으로 수행될 수 있다. 이것은 의사-코드 구현을 이용하여 예시 및 후술되지만, 본 발명은 특정 의사-코드로 그 범위가 제한되지는 않는다.
합성 데이터 구조는 여기서 NDS(NDC)로 언급된다. 이것은 C 프로그래밍 언어를 위한 합성 데이터 구조의 정의와 대응되지만, 본 발명은 이러한 특정 프로그래밍 언어로 그 범위가 제한되지는 않는다. 이 특정 실시예에서는, 이에 제한되지는 않지만, NDS의 각 엔트리는, 도7에 도시된 바와 같이, 4개의 필드, 즉, 지시된 길이, 시작 코드, 종료 코드 및 기본 인덱스를 포함한다. 물론, 시작 코드 및 종료 코드 대신에, 시작 코드와 종료 코드 사이에 시작 코드 및 차를 사용하는 것과 같은, 많은 동등한 데이터 구조가 가능하다는 것이 이해될 수 있다.
그러나, 이 특정 실시예에서, NDC는 개별 코드 길이를 갖는 엔트리의 수이다. 각 엔트리는 동일한 코드 길이를 갖는 연속된 허프만 코드의 그룹을 나타낸다. 시작 코드는 이 그룹의 첫번째 허프만 코드이고, 종료 코드는 이 그룹의 마지막 허프만 코드이다. 기본 인덱스는, 도6에 도시된 바와 같이, 대응하는 심볼에 대한 허프만 테이블에서의 첫번째 허프만 코드의 인덱스값이다. 전술된 바와 같이, 본 발명은 이러한 특정 데이터 구조로 그 범위가 제한되지 않는다는 것을 알 수 있다. 명백히, 이 특정 데이터 구조에 대한 많은 변형예가 이루어질 수 있고, 이것은 기술된 사상 및 범위내에 있을 것이다.
도7에 도시된 데이터 구조의 실시예를 사용하면, 2진 디지털 신호를 디코딩하기 위한 본 발명에 따른 실시예의 의사 코드 표현은 다음과 같다.
이 특정 실시예에서는, 데이터 구조를 검색하기 전에, 시리즈내의 첫번째 N개의 2진 디지털 신호가 서브그룹핑으로 선택되는데, 여기서, N은 최단 코드의 길이이다. 그리고 나서, 그 길이를 갖는 모든 코드에 대해 매칭이 체크된다. 매칭이 발생하지 않는 경우, 서브그룹핑 길이는 시리즈내의 후속 2진 디지털 신호에 의해 증가되고, 증가된 길이를 갖는 코드에 대한 매칭이 체크된다. 이 프로세스는 매칭이 발생할 때까지 지속된다. 전술된 바와 같이, 데이터 구조는, 적어도 부분적으로, 동일한 코드 길이를 갖는 코드가 사전 편집상 순차적으로 저장되도록, 코드 길이 및 데이터 구조에 기반하여 구성된다. 이것은 요구된 효과적인 동작을 가능하게 한다.
매칭이 발생하지 않은 경우에, 최장 코드를 이용하여 검색을 시작하고, 서브그룹핑 길이를 감소시키는 대안적인 실시예가 가능하다는 것을 알 수 있다. 그러나, 통상적으로, 보다 짧은 허프만 코드는 보다 높은 발생 확률을 가지며, 이를 수행하면 최단 코드를 형성하는 검색을 시작하기 위해 이러한 상황에서 보다 효과적이 된다.
2진 디지털 신호 시리즈를 디코딩하는 방법의 이 특정 실시예는 메모리 활용, 계산상 복잡성 및 구현의 관점에서 몇몇 장점을 갖는다. 앞서 제안된 바와 같이, 데이터 구조에 대한 엔트리 수는 허프만 코드에 대한 최대 코드 길이에 의존하며, 심볼의 수에는 의존하지 않는다. 그러므로, 이것은 메모리의 감소를 가져온다. 예를 들면, GZIP과 같은, 고정된 제한 코드 길이를 이용한 애플리케이션인 경우, 통상적인 허프만 트리는 285개의 심볼을 갖고, 코드 길이는 15비트로 제한된다. 반면에, 본 실시예에 사용되는 엔트리 수는, 데이터에 따라, 최대 15개 엔트리를 가지며, 이것은 메모리 활용에서 19배의 감소를 초래한다.
마찬가지로, 계산상 복잡성은 비트 직렬 검색 프로세스라기 보다는, 비트 병렬 검색 프로세스를 이용하여 감소된다. 여기서, 본 실시예는, 적어도 부분적으로, 데이터 구조내의 코드 길이 정보에 기반한다. 검색 절차는 코드 길이를 갖는 그룹에 대한 시작 및 종료 코드 범위를 체크함으로써 현재 방법을 개선한다. 19개의 심볼 및 7비트의 최대 코드 길이를 사용하는 이 실시예를 이용한 실험 결과는, 허프만 코드 검색이 사용되는 디코딩과 비교하면, 그 복잡성에서 5.5배 감소를 제공한다. 마찬가지로, 허프만 트리가 구성되는 데 발생하는 것과 같이 2진 트리 구조가 발생하지 않고, 동적 메모리 할당이 적거나 없기 때문에, 본 발명에 따른 디코딩의 구현은 하드웨어 및 소프트웨어 모두에서 비교적 쉽다.
여기에서, 특정 실시예들이 설명되었지만, 본 발명은 이러한 특정 실시예로 그 범위가 제한되지 않는다는 것이 이해될 것이다. 예를 들면, 일실시예는 하드웨어로 이루어질 수 있고, 다른 실시예는 소프트웨어로 이루어질 수 있다. 마찬가지로, 일실시예는 펌웨어, 또는 하드웨어, 소프트웨어 또는 펌웨어의 조합으로 이루어질 수 있다. 그리고, 일실시예는 저장 매체와 같은 물품을 포함할 수 있다. 예를 들면, CD-ROM,디스크와 같은 저장 매체가 그 안에 명령어를 저장할 수 있고, 상기 명령어는 컴퓨터 시스템 또는 플랫폼, 또는 이미징 시스템과 같은 시스템에 의해 실행되는 경우, 전술된 바와 같이, 허프만 디코딩을 수행하는 방법과 같은, 본 발명에 따른 방법의 실시예가 실행될 수 있도록 한다. 또한, 본 발명에 따른, 데이터 구조를 초기화하고, 심볼을 인코딩하고, 및/또는 심볼을 디코딩하는 방법의 실시예가 실행될 수 있다.
본 발명의 특정 형태가 여기서 설명되었지만, 이 기술분야에서 통상의 지식을 가진 자에 의해 많은 변형, 대체, 변경 및 등가물이 발생할 수 있다. 그러므로, 첨부된 청구범위는 본 발명의 진정한 사상안에 있는 이러한 모든 변경 및 변형을 포함하도록 의도된다.
Claims (24)
- 데이터 구조를 이용하여 인코딩된 2진 디지털 신호 시리즈를 디코딩하는 방법에 있어서,적어도 부분적으로, 디코딩될 2진 디지털 신호 시리즈의 2진 디지털 신호의 서브그룹핑(subgrouping) 길이에 기반하여, 상기 데이터 구조를 검색하는 단계; 및검색 전에, 상기 시리즈내의 처음 N개의 2진 디지털 신호를 상기 서브그룹핑으로 선택하는 단계 - 여기서, N은 최장 코드의 길이임 -를 포함하는 방법.
- 삭제
- 삭제
- 삭제
- 제1항에 있어서,길이 N을 갖는 상기 데이터 구조내의 코드가 상기 서브그룹핑과 매칭되지 않는 경우, 상기 시리즈내의 후속 2진 디지털 신호로 상기 서브그룹핑의 길이를 감소시키는 단계를 더 포함하는 방법.
- 제1항에 있어서,상기 2진 디지털 신호는 허프만 코드에 따라 인코딩되는방법.
- 제1항에 있어서,상기 데이터 구조는, 적어도 부분적으로, 코드 길이에 기반하여 구성되는방법.
- 제7항에 있어서,상기 서브그룹핑과 동일한 길이를 갖는 상기 데이터 구조내의 모든 코드에 대해 매칭이 체크되는방법.
- 제8항에 있어서,상기 데이터 구조는 동일한 코드 길이를 갖는 코드의 서브그룹핑으로 구성되고, 상기 서브그룹핑은 순차적으로 저장되는방법.
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 명령어가 저장된 저장 매체에 있어서,상기 명령어는 실행되는 경우 다음의 단계, 즉,데이터 구조를 이용하여 인코딩된 2진 디지털 신호 시리즈를 디코딩하기 위해, 적어도 부분적으로, 디코딩될 2진 디지털 신호 시리즈의 2진 디지털 신호의 서브그룹핑의 길이에 기반하여 상기 데이터 구조를 검색하는 단계; 및검색 전에, 상기 시리즈내의 처음 N개의 2진 디지털 신호를 상기 서브그룹핑으로 선택하는 단계 - 여기서, N은 최장 코드의 길이임 -를 야기하는저장 매체.
- 삭제
- 제17항에 있어서,상기 명령어는, 실행되는 경우, 길이 N을 갖는 상기 데이터 구조내의 코드가 상기 서브그룹핑과 매칭되지 않는 경우, 상기 시리즈내의 후속 2진 디지털 신호로 상기 서브그룹핑의 길이를 감소시키도록 야기하는저장 매체.
- 삭제
- 삭제
- 삭제
- 제17항에 있어서,상기 명령어는, 실행되는 경우, 상기 2진 디지털 신호가 허프만 코드에 따라 인코딩되도록 야기하는저장 매체.
- 제17항에 있어서,상기 명령어는, 실행되는 경우, 상기 데이터 구조가 적어도 부분적으로 코드 길이에 기반하여 구성되도록 야기하는저장 매체.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/704,380 US6563439B1 (en) | 2000-10-31 | 2000-10-31 | Method of performing Huffman decoding |
US09/704,380 | 2000-10-31 | ||
PCT/US2001/031532 WO2002037687A2 (en) | 2000-10-31 | 2001-10-09 | Method of performing huffman decoding |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20030040567A KR20030040567A (ko) | 2003-05-22 |
KR100527891B1 true KR100527891B1 (ko) | 2005-11-15 |
Family
ID=24829232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2003-7006044A KR100527891B1 (ko) | 2000-10-31 | 2001-10-09 | 허프만 디코딩을 수행하는 방법 |
Country Status (9)
Country | Link |
---|---|
US (3) | US6563439B1 (ko) |
JP (1) | JP3974036B2 (ko) |
KR (1) | KR100527891B1 (ko) |
CN (1) | CN100417028C (ko) |
AU (1) | AU2002211558A1 (ko) |
DE (1) | DE10196890B4 (ko) |
GB (1) | GB2385759B (ko) |
TW (1) | TW538599B (ko) |
WO (1) | WO2002037687A2 (ko) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6636167B1 (en) * | 2000-10-31 | 2003-10-21 | Intel Corporation | Method of generating Huffman code length information |
US6563439B1 (en) * | 2000-10-31 | 2003-05-13 | Intel Corporation | Method of performing Huffman decoding |
US7274671B2 (en) * | 2001-02-09 | 2007-09-25 | Boly Media Communications, Inc. | Bitwise adaptive encoding using prefix prediction |
US6677868B2 (en) * | 2001-03-16 | 2004-01-13 | Sharp Laboratories Of America, Inc. | Entropy coding with adaptive syntax to replace high probability symbols with lower probabilities symbols |
US7129863B1 (en) * | 2001-06-01 | 2006-10-31 | California Institute Of Technology | Interval modulation coding |
US6778107B2 (en) * | 2001-08-30 | 2004-08-17 | Intel Corporation | Method and apparatus for huffman decoding technique |
US6573847B1 (en) * | 2002-01-08 | 2003-06-03 | Intel Corporation | Multi-table mapping for huffman code decoding |
US20050111556A1 (en) * | 2003-11-26 | 2005-05-26 | Endress William B. | System and method for real-time decompression and display of Huffman compressed video data |
US7917480B2 (en) | 2004-08-13 | 2011-03-29 | Google Inc. | Document compression system and method for use with tokenspace repository |
US8407239B2 (en) | 2004-08-13 | 2013-03-26 | Google Inc. | Multi-stage query processing system and method for use with tokenspace repository |
US7068192B1 (en) * | 2004-08-13 | 2006-06-27 | Google Inc. | System and method for encoding and decoding variable-length data |
WO2007011116A1 (en) * | 2005-07-20 | 2007-01-25 | Humax Co., Ltd. | Encoder and decoder |
JP4958466B2 (ja) * | 2006-04-05 | 2012-06-20 | グローバル・オーエルイーディー・テクノロジー・リミテッド・ライアビリティ・カンパニー | 表示装置 |
TWI330473B (en) * | 2006-11-24 | 2010-09-11 | Primax Electronics Ltd | Huffman decoding method |
CN101282121B (zh) * | 2007-04-05 | 2010-10-06 | 安凯(广州)微电子技术有限公司 | 一种基于条件概率的哈夫曼解码的方法 |
US20090006399A1 (en) * | 2007-06-29 | 2009-01-01 | International Business Machines Corporation | Compression method for relational tables based on combined column and row coding |
US8902873B2 (en) | 2009-10-08 | 2014-12-02 | Qualcomm Incorporated | Efficient signaling for closed-loop transmit diversity |
CN102237878B (zh) * | 2010-04-20 | 2015-09-02 | 慧荣科技股份有限公司 | 一种霍夫曼解码方法 |
US8442988B2 (en) | 2010-11-04 | 2013-05-14 | International Business Machines Corporation | Adaptive cell-specific dictionaries for frequency-partitioned multi-dimensional data |
KR101725223B1 (ko) * | 2011-03-25 | 2017-04-11 | 삼성전자 주식회사 | 저장 장치에서의 데이터 압축 방법 |
US8593308B1 (en) * | 2012-05-31 | 2013-11-26 | International Business Machines Corporation | Method of accelerating dynamic Huffman decompaction within the inflate algorithm |
KR101853148B1 (ko) * | 2013-05-20 | 2018-04-27 | 엘에스산전 주식회사 | 데이터 저장방법 |
CN105988777B (zh) * | 2015-01-27 | 2019-03-15 | 深圳市腾讯计算机系统有限公司 | 一种规则匹配方法及装置 |
US9564917B1 (en) * | 2015-12-18 | 2017-02-07 | Intel Corporation | Instruction and logic for accelerated compressed data decoding |
CN107483059B (zh) * | 2017-07-31 | 2020-06-12 | 广东工业大学 | 一种基于动态霍夫曼树的多路数据编解码方法及装置 |
Family Cites Families (109)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4899149A (en) * | 1986-02-28 | 1990-02-06 | Gary Kahan | Method of and apparatus for decoding Huffman or variable-length coees |
FR2612025B1 (fr) * | 1987-03-06 | 1989-05-26 | Labo Electronique Physique | Dispositif de decodage de signaux codes en duobinaire |
US4813056A (en) | 1987-12-08 | 1989-03-14 | General Electric Company | Modified statistical coding of digital signals |
DE3912605B4 (de) * | 1989-04-17 | 2008-09-04 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Digitales Codierverfahren |
EP0920136B1 (en) * | 1992-10-13 | 2002-08-28 | Nec Corporation | Huffman code decoding circuit |
US5778371A (en) * | 1994-09-13 | 1998-07-07 | Kabushiki Kaisha Toshiba | Code string processing system and method using intervals |
US5821886A (en) * | 1996-10-18 | 1998-10-13 | Samsung Electronics Company, Ltd. | Variable length code detection in a signal processing system |
US5821887A (en) * | 1996-11-12 | 1998-10-13 | Intel Corporation | Method and apparatus for decoding variable length codes |
US5875122A (en) | 1996-12-17 | 1999-02-23 | Intel Corporation | Integrated systolic architecture for decomposition and reconstruction of signals using wavelet transforms |
FI102426B1 (fi) * | 1997-03-14 | 1998-11-30 | Nokia Telecommunications Oy | Menetelmä muistin toteuttamiseksi |
US6009201A (en) | 1997-06-30 | 1999-12-28 | Intel Corporation | Efficient table-lookup based visually-lossless image compression scheme |
US5973627A (en) * | 1997-08-28 | 1999-10-26 | Philips Electronics North America Corporation | Variable length decoder with adaptive acceleration optimized by sub-grouping and cross-grouping the symbols having the highest probability of occurrence |
US6009206A (en) | 1997-09-30 | 1999-12-28 | Intel Corporation | Companding algorithm to transform an image to a lower bit resolution |
US6160918A (en) | 1997-10-02 | 2000-12-12 | At&T Corp. | Method and apparatus for fast image compression |
US6091851A (en) | 1997-11-03 | 2000-07-18 | Intel Corporation | Efficient algorithm for color recovery from 8-bit to 24-bit color pixels |
US6151069A (en) | 1997-11-03 | 2000-11-21 | Intel Corporation | Dual mode digital camera for video and still operation |
US6285796B1 (en) | 1997-11-03 | 2001-09-04 | Intel Corporation | Pseudo-fixed length image compression scheme |
US6130960A (en) * | 1997-11-03 | 2000-10-10 | Intel Corporation | Block-matching algorithm for color interpolation |
US6351555B1 (en) | 1997-11-26 | 2002-02-26 | Intel Corporation | Efficient companding algorithm suitable for color imaging |
US6094508A (en) | 1997-12-08 | 2000-07-25 | Intel Corporation | Perceptual thresholding for gradient-based local edge detection |
US6229578B1 (en) | 1997-12-08 | 2001-05-08 | Intel Corporation | Edge-detection based noise removal algorithm |
US6348929B1 (en) | 1998-01-16 | 2002-02-19 | Intel Corporation | Scaling algorithm and architecture for integer scaling in video |
US6215916B1 (en) | 1998-02-04 | 2001-04-10 | Intel Corporation | Efficient algorithm and architecture for image scaling using discrete wavelet transforms |
US6075470A (en) | 1998-02-26 | 2000-06-13 | Research In Motion Limited | Block-wise adaptive statistical data compressor |
US6392699B1 (en) * | 1998-03-04 | 2002-05-21 | Intel Corporation | Integrated color interpolation and color space conversion algorithm from 8-bit bayer pattern RGB color space to 12-bit YCrCb color space |
US6211521B1 (en) | 1998-03-13 | 2001-04-03 | Intel Corporation | Infrared pixel sensor and infrared signal correction |
US6356276B1 (en) | 1998-03-18 | 2002-03-12 | Intel Corporation | Median computation-based integrated color interpolation and color space conversion methodology from 8-bit bayer pattern RGB color space to 12-bit YCrCb color space |
US6366694B1 (en) | 1998-03-26 | 2002-04-02 | Intel Corporation | Integrated color interpolation and color space conversion algorithm from 8-bit Bayer pattern RGB color space to 24-bit CIE XYZ color space |
US6366692B1 (en) | 1998-03-30 | 2002-04-02 | Intel Corporation | Median computation-based integrated color interpolation and color space conversion methodology from 8-bit bayer pattern RGB color space to 24-bit CIE XYZ color space |
US6154493A (en) | 1998-05-21 | 2000-11-28 | Intel Corporation | Compression of color images based on a 2-dimensional discrete wavelet transform yielding a perceptually lossless image |
US6040790A (en) * | 1998-05-29 | 2000-03-21 | Xerox Corporation | Method of building an adaptive huffman codeword tree |
US6124811A (en) | 1998-07-02 | 2000-09-26 | Intel Corporation | Real time algorithms and architectures for coding images compressed by DWT-based techniques |
US6233358B1 (en) | 1998-07-13 | 2001-05-15 | Intel Corporation | Image compression using directional predictive coding of the wavelet coefficients |
US6236765B1 (en) | 1998-08-05 | 2001-05-22 | Intel Corporation | DWT-based up-sampling algorithm suitable for image display in an LCD panel |
US6178269B1 (en) | 1998-08-06 | 2001-01-23 | Intel Corporation | Architecture for computing a two-dimensional discrete wavelet transform |
US5995210A (en) | 1998-08-06 | 1999-11-30 | Intel Corporation | Integrated architecture for computing a forward and inverse discrete wavelet transforms |
US6047303A (en) | 1998-08-06 | 2000-04-04 | Intel Corporation | Systolic architecture for computing an inverse discrete wavelet transforms |
US6166664A (en) | 1998-08-26 | 2000-12-26 | Intel Corporation | Efficient data structure for entropy encoding used in a DWT-based high performance image compression |
US6301392B1 (en) | 1998-09-03 | 2001-10-09 | Intel Corporation | Efficient methodology to select the quantization threshold parameters in a DWT-based image compression scheme in order to score a predefined minimum number of images into a fixed size secondary storage |
US6731807B1 (en) * | 1998-09-11 | 2004-05-04 | Intel Corporation | Method of compressing and/or decompressing a data set using significance mapping |
US6195026B1 (en) | 1998-09-14 | 2001-02-27 | Intel Corporation | MMX optimized data packing methodology for zero run length and variable length entropy encoding |
US6108453A (en) | 1998-09-16 | 2000-08-22 | Intel Corporation | General image enhancement framework |
US6236433B1 (en) | 1998-09-29 | 2001-05-22 | Intel Corporation | Scaling algorithm for efficient color representation/recovery in video |
US6625318B1 (en) * | 1998-11-13 | 2003-09-23 | Yap-Peng Tan | Robust sequential approach in detecting defective pixels within an image sensor |
US6759646B1 (en) * | 1998-11-24 | 2004-07-06 | Intel Corporation | Color interpolation for a four color mosaic pattern |
US6151415A (en) | 1998-12-14 | 2000-11-21 | Intel Corporation | Auto-focusing algorithm using discrete wavelet transform |
US6215908B1 (en) | 1999-02-24 | 2001-04-10 | Intel Corporation | Symmetric filtering based VLSI architecture for image compression |
US6381357B1 (en) | 1999-02-26 | 2002-04-30 | Intel Corporation | Hi-speed deterministic approach in detecting defective pixels within an image sensor |
US6275206B1 (en) | 1999-03-17 | 2001-08-14 | Intel Corporation | Block mapping based up-sampling method and apparatus for converting color images |
US6377280B1 (en) | 1999-04-14 | 2002-04-23 | Intel Corporation | Edge enhanced image up-sampling algorithm using discrete wavelet transform |
US6574374B1 (en) * | 1999-04-14 | 2003-06-03 | Intel Corporation | Enhancing image compression performance by morphological processing |
US6563948B2 (en) * | 1999-04-29 | 2003-05-13 | Intel Corporation | Using an electronic camera to build a file containing text |
US6640017B1 (en) * | 1999-05-26 | 2003-10-28 | Intel Corporation | Method and apparatus for adaptively sharpening an image |
US6697534B1 (en) * | 1999-06-09 | 2004-02-24 | Intel Corporation | Method and apparatus for adaptively sharpening local image content of an image |
US6292114B1 (en) | 1999-06-10 | 2001-09-18 | Intel Corporation | Efficient memory mapping of a huffman coded list suitable for bit-serial decoding |
US6628716B1 (en) * | 1999-06-29 | 2003-09-30 | Intel Corporation | Hardware efficient wavelet-based video compression scheme |
US6600833B1 (en) * | 1999-07-23 | 2003-07-29 | Intel Corporation | Methodology for color correction with noise regulation |
US6373481B1 (en) | 1999-08-25 | 2002-04-16 | Intel Corporation | Method and apparatus for automatic focusing in an image capture system using symmetric FIR filters |
US7065253B2 (en) * | 1999-09-03 | 2006-06-20 | Intel Corporation | Wavelet zerotree coding of ordered bits |
US6658399B1 (en) | 1999-09-10 | 2003-12-02 | Intel Corporation | Fuzzy based thresholding technique for image segmentation |
US6625308B1 (en) * | 1999-09-10 | 2003-09-23 | Intel Corporation | Fuzzy distinction based thresholding technique for image segmentation |
US6633610B2 (en) * | 1999-09-27 | 2003-10-14 | Intel Corporation | Video motion estimation |
US6798901B1 (en) * | 1999-10-01 | 2004-09-28 | Intel Corporation | Method of compressing a color image |
US7106910B2 (en) * | 1999-10-01 | 2006-09-12 | Intel Corporation | Color video coding scheme |
US6834123B2 (en) | 2001-05-29 | 2004-12-21 | Intel Corporation | Method and apparatus for coding of wavelet transformed coefficients |
US6956903B2 (en) | 2001-05-29 | 2005-10-18 | Intel Corporation | Method and apparatus for three-dimensional wavelet transform |
US6731706B1 (en) * | 1999-10-29 | 2004-05-04 | Intel Corporation | Square root raised cosine symmetric filter for mobile telecommunications |
US6813384B1 (en) | 1999-11-10 | 2004-11-02 | Intel Corporation | Indexing wavelet compressed video for efficient data handling |
US6628827B1 (en) * | 1999-12-14 | 2003-09-30 | Intel Corporation | Method of upscaling a color image |
US6650688B1 (en) | 1999-12-20 | 2003-11-18 | Intel Corporation | Chip rate selectable square root raised cosine filter for mobile telecommunications |
US6757430B2 (en) * | 1999-12-28 | 2004-06-29 | Intel Corporation | Image processing architecture |
US6748118B1 (en) * | 2000-02-18 | 2004-06-08 | Intel Corporation | Method of quantizing signal samples of an image during same |
US6654501B1 (en) | 2000-03-06 | 2003-11-25 | Intel Corporation | Method of integrating a watermark into an image |
US6449380B1 (en) * | 2000-03-06 | 2002-09-10 | Intel Corporation | Method of integrating a watermark into a compressed image |
US6738520B1 (en) * | 2000-06-19 | 2004-05-18 | Intel Corporation | Method of compressing an image |
US6775413B1 (en) * | 2000-09-18 | 2004-08-10 | Intel Corporation | Techniques to implement one-dimensional compression |
US6636167B1 (en) * | 2000-10-31 | 2003-10-21 | Intel Corporation | Method of generating Huffman code length information |
US6563439B1 (en) * | 2000-10-31 | 2003-05-13 | Intel Corporation | Method of performing Huffman decoding |
US6690306B1 (en) * | 2000-11-03 | 2004-02-10 | Intel Corporation | Method of generating a length-constrained huffman code |
US6678708B1 (en) * | 2000-11-15 | 2004-01-13 | Intel Corporation | Method and apparatus for two-dimensional separable symmetric filtering |
US6751640B1 (en) * | 2000-11-20 | 2004-06-15 | Intel Corporation | Method and apparatus for multiply-accumulate two-dimensional separable symmetric filtering |
US20020063899A1 (en) * | 2000-11-29 | 2002-05-30 | Tinku Acharya | Imaging device connected to processor-based system using high-bandwidth bus |
US6707928B2 (en) * | 2000-11-29 | 2004-03-16 | Intel Corporation | Method for block-based digital image watermarking |
US6917381B2 (en) * | 2000-11-30 | 2005-07-12 | Intel Corporation | Color filter array and color interpolation algorithm |
US6662200B2 (en) | 2001-01-03 | 2003-12-09 | Intel Corporation | Multiplierless pyramid filter |
US20020118746A1 (en) * | 2001-01-03 | 2002-08-29 | Kim Hyun Mun | Method of performing video encoding rate control using motion estimation |
US20020122482A1 (en) * | 2001-01-03 | 2002-09-05 | Kim Hyun Mun | Method of performing video encoding rate control using bit budget |
US6681060B2 (en) * | 2001-03-23 | 2004-01-20 | Intel Corporation | Image retrieval using distance measure |
US20020174154A1 (en) | 2001-03-26 | 2002-11-21 | Tinku Acharya | Two-dimensional pyramid filter architecture |
US6766286B2 (en) * | 2001-03-28 | 2004-07-20 | Intel Corporation | Pyramid filter |
US20020184276A1 (en) | 2001-03-30 | 2002-12-05 | Tinku Acharya | Two-dimensional pyramid filter architecture |
US6889237B2 (en) * | 2001-03-30 | 2005-05-03 | Intel Corporation | Two-dimensional pyramid filter architecture |
US6725247B2 (en) * | 2001-04-30 | 2004-04-20 | Intel Corporation | Two-dimensional pyramid filter architecture |
US20030021486A1 (en) * | 2001-07-27 | 2003-01-30 | Tinku Acharya | Method and apparatus for image scaling |
US6653953B2 (en) | 2001-08-22 | 2003-11-25 | Intel Corporation | Variable length coding packing architecture |
US6891889B2 (en) * | 2001-09-05 | 2005-05-10 | Intel Corporation | Signal to noise ratio optimization for video compression bit-rate control |
US6996180B2 (en) * | 2001-09-05 | 2006-02-07 | Intel Corporation | Fast half-pixel motion estimation using steepest descent |
US6795592B2 (en) * | 2001-09-13 | 2004-09-21 | Intel Corporation | Architecture for processing fingerprint images |
US7136515B2 (en) * | 2001-09-13 | 2006-11-14 | Intel Corporation | Method and apparatus for providing a binary fingerprint image |
US20030063782A1 (en) * | 2001-09-13 | 2003-04-03 | Tinku Acharya | Method and apparatus to reduce false minutiae in a binary fingerprint image |
US6944640B2 (en) * | 2001-12-28 | 2005-09-13 | Intel Corporation | Progressive two-dimensional (2D) pyramid filter |
US20030123539A1 (en) * | 2001-12-28 | 2003-07-03 | Hyung-Suk Kim | Method and apparatus for video bit-rate control |
US20030194008A1 (en) * | 2002-04-11 | 2003-10-16 | Tinku Acharya | Computationally fast and efficient DV to DVD transcoding |
US20030198387A1 (en) * | 2002-04-22 | 2003-10-23 | Tinku Acharya | Method and apparatus for image retrieval |
US7133555B2 (en) * | 2002-08-02 | 2006-11-07 | Intel Corporation | Image color matching scheme |
US20040042551A1 (en) * | 2002-09-04 | 2004-03-04 | Tinku Acharya | Motion estimation |
US7266151B2 (en) * | 2002-09-04 | 2007-09-04 | Intel Corporation | Method and system for performing motion estimation using logarithmic search |
US20040057626A1 (en) * | 2002-09-23 | 2004-03-25 | Tinku Acharya | Motion estimation using a context adaptive search |
US7075987B2 (en) * | 2002-09-23 | 2006-07-11 | Intel Corporation | Adaptive video bit-rate control |
-
2000
- 2000-10-31 US US09/704,380 patent/US6563439B1/en not_active Expired - Fee Related
-
2001
- 2001-10-09 JP JP2002540317A patent/JP3974036B2/ja not_active Expired - Fee Related
- 2001-10-09 WO PCT/US2001/031532 patent/WO2002037687A2/en active IP Right Grant
- 2001-10-09 KR KR10-2003-7006044A patent/KR100527891B1/ko not_active IP Right Cessation
- 2001-10-09 AU AU2002211558A patent/AU2002211558A1/en not_active Abandoned
- 2001-10-09 CN CNB01818216XA patent/CN100417028C/zh not_active Expired - Fee Related
- 2001-10-09 GB GB0311329A patent/GB2385759B/en not_active Expired - Fee Related
- 2001-10-09 DE DE10196890T patent/DE10196890B4/de not_active Expired - Fee Related
- 2001-10-29 TW TW090126738A patent/TW538599B/zh not_active IP Right Cessation
-
2002
- 2002-11-12 US US10/293,187 patent/US6646577B2/en not_active Expired - Fee Related
-
2003
- 2003-03-18 US US10/391,892 patent/US6982661B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20030174077A1 (en) | 2003-09-18 |
JP2004515096A (ja) | 2004-05-20 |
WO2002037687A3 (en) | 2002-08-29 |
CN100417028C (zh) | 2008-09-03 |
JP3974036B2 (ja) | 2007-09-12 |
DE10196890T1 (de) | 2003-12-18 |
US6982661B2 (en) | 2006-01-03 |
AU2002211558A1 (en) | 2002-05-15 |
GB0311329D0 (en) | 2003-06-25 |
DE10196890B4 (de) | 2008-02-07 |
US6646577B2 (en) | 2003-11-11 |
CN1547805A (zh) | 2004-11-17 |
KR20030040567A (ko) | 2003-05-22 |
US20030085821A1 (en) | 2003-05-08 |
GB2385759A (en) | 2003-08-27 |
GB2385759B (en) | 2004-11-03 |
WO2002037687A2 (en) | 2002-05-10 |
TW538599B (en) | 2003-06-21 |
US6563439B1 (en) | 2003-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100527891B1 (ko) | 허프만 디코딩을 수행하는 방법 | |
KR100950607B1 (ko) | 허프만 코딩 | |
US7190287B2 (en) | Method of generating Huffman code length information | |
JP3273119B2 (ja) | データ圧縮・伸長装置 | |
US5877711A (en) | Method and apparatus for performing adaptive data compression | |
US7375660B1 (en) | Huffman decoding method | |
JP2000315954A (ja) | 入力データストリームの圧縮方法とその装置 | |
JPH07307675A (ja) | 可変長復号器及び可変長符号値を復号化する方法 | |
US5394144A (en) | Variable length code decoding apparatus | |
US7348901B2 (en) | Method and system for decoding variable length encoded signals, computer program product therefor | |
JPH07107303A (ja) | ハフマン符号の復号化方法 | |
US6778107B2 (en) | Method and apparatus for huffman decoding technique | |
JP3242795B2 (ja) | データ処理装置及びデータ処理方法 | |
US6580377B1 (en) | Huffman decoding using cascaded sub-table lookup method | |
JPH0628149A (ja) | 複数種類データのデータ圧縮方法 | |
GB2402584A (en) | Method of performing Huffman decoding | |
JP3565147B2 (ja) | 復号装置 | |
JP3236747B2 (ja) | データ伸長方式 | |
JPH06274311A (ja) | データ圧縮装置及びデータ復元装置 | |
KR20050037307A (ko) | N-트리 검색에 기초한 허프만 디코딩 방법 및 장치 | |
CN114637459A (zh) | 处理接收到的数据的装置 | |
JP2005175926A (ja) | 復号装置及び方法 | |
JPH08181620A (ja) | 復号装置及びデコードテーブルの生成方法 |
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: 20091028 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |