KR100349447B1 - 인코더/디코더시스템용콤팩트소오스코딩테이블 - Google Patents

인코더/디코더시스템용콤팩트소오스코딩테이블 Download PDF

Info

Publication number
KR100349447B1
KR100349447B1 KR1019960703994A KR19960703994A KR100349447B1 KR 100349447 B1 KR100349447 B1 KR 100349447B1 KR 1019960703994 A KR1019960703994 A KR 1019960703994A KR 19960703994 A KR19960703994 A KR 19960703994A KR 100349447 B1 KR100349447 B1 KR 100349447B1
Authority
KR
South Korea
Prior art keywords
symbols
decoding
code word
particular order
order
Prior art date
Application number
KR1019960703994A
Other languages
English (en)
Other versions
KR970700957A (ko
Inventor
크레이그 캠프벨 토드
Original Assignee
돌비 레버러토리즈 라이쎈싱 코오포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 돌비 레버러토리즈 라이쎈싱 코오포레이션 filed Critical 돌비 레버러토리즈 라이쎈싱 코오포레이션
Publication of KR970700957A publication Critical patent/KR970700957A/ko
Application granted granted Critical
Publication of KR100349447B1 publication Critical patent/KR100349447B1/ko

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion 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/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/42Conversion 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion 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/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Acoustics & Sound (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Analogue/Digital Conversion (AREA)

Abstract

다중 차원 후푸만 코딩같은 데이터 압축 기술을 적용하는 장치 또는 방법은 코딩전에 메시지내의 심볼을 오더링하고 결과 코드 워드를 가지는 오더 정보를 통과시킴으로써 통상적인 테이블보다 작은 콤팩트 인코딩 기술을 사용한다. 데이터 압축을 적용하는 장치 또는 방법은 코드 워드에 응답하는 콤팩트 디코딩 테이블로부터 메시지를 회복하고 코드 워드로 수신된 오더 정보에 따라 메시지내의 심볼을 재 오더한다.

Description

인코더/디코더 시스템용 콤팩트 소오스 코딩 테이블을 이용한 인코더와 디코더, 및 인코딩방법
본 발명은 일반적으로 정보를 인코드 및 디코드하기 위하여 테이블 또는 매트릭스를 사용하는 여러 가지 소오스 코딩 기술에 관한 것이다. 특히, 본 발명은 후프만(Huffman) 코딩같은 코딩 기술을 위하여 테이블을 저장하기 위해 보다 작은 공간을 요구하는 인코딩/디코딩 시스템용 콤팩트 소오스코팅테이블을 이용한 인코더와 디코더 및 인코딩 방법에 관한 것이다.
배경
데이타 압축이 정보를 전달하기 위하여 요구된 저장 공간 또는 전달 대폭(bandwidth)의 양을 최소화할수 있기 때문에 데이타 저장 및 통신 시스템에서 데이타 압축 기술의 사용은 증가한다.
"손실" 기술에 의해 압축된 데이타는 약간의 정보가 압축동안 손실되기 때문에 어떤 압축 해제 기술에 의해 완전하게 복구되는 것이 아니라, "손실없는" 기술에 의해 압축된 데이터는 완전히 복구될수 있다. 양자화는 손실 기술의 공지된 일례이다. 실행 길이 인코딩(Run-length encoding)(RLE)은 손실없는 기술의 공지된 일례이다. 몇몇의 오디오 및 비디오 응용에서, 시스템은 손실 및 손실없는 압축 기술 양쪽을 종종 사용한다.
인간이 감지하기 위하여 의도된 신호의 몇몇의 "지각 코더"는 압축 손실의 효과가 지각될수 없도록 정신 지각 원리에 따라 손실 압축 기술을 적용하는 것을 시도한다. 일반적으로 손실의 양은 보다 높은 레벨의 손실 압축으로 증가하고 ; 그러므로, 결과 신호의 주요 특성이 질이 떨어지기 전에 얼마나 많은 손실 압축이 적용될수 있는가의 제한이 있다. 몇몇의 지각 인지 코더는 지각 가능한 질의 하락을 초래하지 않고 추가의 압축을 이루기 위하여 손실 기술에 부가적으로 손실없는 기술을 적용한다.
양자화된 정보에 손실없는 압축의 응용을 포함하는 지각 코딩 표준은 ISO/IEC JTCI/SC29, 1992, 약 1.5 Mbit/s-CD 11172-3(파트 3 오디오)까지에서 "이동 그림의 코딩 및 디지탈 저장 미디어용 관련 오디오" ISO/MPEG 표준 서류에 기술되고, 여기에서 참조된다. 양자화된 전환 계수에 손실없는 압축 기술, 후프만 코딩을 적용하는 전환 코더의 일례는 미합중국특허 5,285,498 호에서 기술되고 여기에서 참조된다.
후프만 코딩은 손실없는 압축 기술로 공지된다. 후프만 코딩의 다양한 실시예는 하나 이상의 테이블 또는 매트릭스를 주로 사용한다. 압축동안, 압축될 하나 이상의 데이터 심볼은 적당한 인코딩 테이블에 키로서 사용되고 ; 인코딩 테이블은 적당한 가변 길이 코드 워드를 제공한다. 압축 해제동안, 가변 길이 코드 워드는 압축될 심볼의 본래 값을 만들기 위하여 하나 이상의 디코딩 테이블에 저장된 트리(tree) 구조를 고찰하기 위하여 사용된다. 많은 실제적인 실시예에서, 인코딩및 디코딩 테이블은 리드 온리 메모리(ROM) 또는 랜덤 액세스 메모리(RAM)에 저장된다. 바람직하지 못하게, 이들 코딩 테이블은 일반적으로 매우 크고 상당한 메모리를 요구하므로, 실행 가격이 증가한다. 코딩 테이블의 저장 및 사용에 요구된 메모리의 양은 최소로 하는 것이 바람직하다.
미합중국 특허 제 4,646,148호는 한계값을 초과하지 않은 연속 픽셀값 사이의 차(difference)에 후프만코딩을 선택적으로 적용하는 아미지 픽셀값을 압축 및 저장하는 기술을 설명하고 있다. 한계값을 초과하는 차에 대하여, 이 특허기술은 코드화된 차보다는 오히려 픽셀값을 저장한다. 후프만 코딩의 사용을 다수의 제한된 수의 값에 제한함으로써, 코딩테이블을 저장하는데 필요한 메모리는 감소될 수 있고, 그러나 이 기술에 의해 달성될 수 있는 압축도(degree of compression)는 본질적으로 최적서브시스템(suboptimum)이다.
**
발명의 개시
본 발명의 목적은 더욱 효과적으로 실행될 수도 있는 인코더/디코더 시스템을 제공하는 것이다. 바람직한 실시예에서, 이 시스템은 압축 수행에서 어떤 상당한 페널티없이 데이타 압축 및 데이타 압축 해제를 사용하기 위한 통상적인 코딩 테이블보다 보다 작은 공간에 저장될수 있는 콤팩트 코딩 테이블을 제공하는 것이다.
인코더의 일실시예에 참조된 본 발명의 기술에 따라, 순서 정보는 특정 순서에 대해 다수의 심볼에서 심볼의 순서를 나타내도록 생성되고, 특정 순서에 따라순서화되도록 필요에 따라 재순서화된 심볼에 응답하거나 순서 정보 및 심볼에 응답하여 코드워드가 생성되며, 코드워드 및 순서정보는 다음 처리, 전송 또는 저장에 적당한 형태로 어셈블리 된다.
디코더의 일실시예에 참조된 본 발명의 기술에 따라, 코드워드 및 순서정보는 코드된 신호로부터 얻어지고, 순서화된 다수의 심볼은 코드워드에 응답하여 생성되며, 다수의 순서화된 심볼은 순서정보에 응답하여 요구된 바와같이 재순서화된다.
많은 대안들이 가능하다. 예를들면, 심볼은 본질적으로 어떠한 순서에 따라 세트(set)내에서 재순서될 수도 있고 코드워드는 통상적인 코딩테이블보다 상당히 더욱 작은 코팅데이블을 참고함으로써 생성되고 그리고/또는 디코드될 수도 있다.
본 발명은 많은 상이한 실시예로 실행될 수도 있고, 광범위하고 다양한 인코더와 디코더에 결합될 수도 있다. 이와같은 논의를 통하여, 더욱 특별한 언급은 오디오 코팅 적용으로 이루어지나, 그러나 본 발명은 예를들어 정보 저장 및 검색같은 광범위한 범위에 사용될 수도 있음을 알아야한다. 본 발명의 다른 특징 및 바람직한 실시예는 다음 논의 및 첨부 도면을 참조하여 보다 잘 이해된다. 다음 논의 및 도면의 내용은 단지 예로서 부과되고 본 발명의 범위에 제한을 표현하는 것이 아님은 물론이다.
도면의 간단한 설명
제 1 도는 정보 처리 시스템의 기초 블록 다이어그램.
제 2a 및 제 2b 도는 분할 주파수대 신호 분석/합성 시스템의 기능 블록 다이어그램.
제 3a 및 제 3b 도는 압축기 및 압축 해제기의 기능 블록 다이어그램.
제 4a 및 제 4b 도는 본 발명의 기술에 관한 압축 및 압축 해제 논리의 흐름도.
제 5a 및 제 5b 도는 이진 트리 디코딩 구조를 도시한 도.
제 6a 및 제 6b 도는 3차원 디코딩용 코딩 테이블의 개념도의그래프.
본 발명을 실행하기 위한 모드
제 1 도는 본발명을 참조할수 있는 정보 처리 시스템을 도시한다. 일실시예에서, 프로세서(2)는 경로(1)로부터 입력 신호 전달 정보를 수신하고, 데이타 압축 기술은 신호에 적용하고, 경로(3)를 따라 압축 결과를 표현하는 코딩 신호를 통과시킨다. 메모리(4)는 데이타 압축 수행동안 프로세서(2)에 의해 사용된 하나 이상의 인코딩 테이블을 저장한다.
제 2 실시예에서, 프로세서(2)는 경로(1)로부터 압축된 데이타를 포함하는 코딩 신호를 수신하고, 데이타 압축 기술을 신호에 적용하고, 경로(3)를 따라 압축 결과를 표현하는 출력 신호를 통과시킨다. 메모리(4)는 데이타 압축 해제동안 프로세서(2)에 의해 사용된 하나 이상의 디코딩 테이블을 저장한다.
처리 시스템의 특정 실행 및 구조는 본 발명의 실시예에 중요하지 않다. 예를들어, 프로세서(2)는 메모리(4)에 저장된 프로세서 실행 소프트웨어에 의해 실행되거나, 응용 특정 하드웨어에 의해 실행될수 있다. 메모리(4)는 리드 온리 메모리(ROM) 및 랜덤 액세스 메모리(RAM)같은 판독/기입 메모리의 어떤 목표된 결합을 포함한다. 프로세서(2) 및 메모리(4)는 마이크로컴퓨터 집적 회로 같은 단일 성분에 의해 실행될수 있다.
제 2a 및 제 2b 도는 본 발명의 다양한 측면을 참조하기에 적당한 분할 주파수대 신호 분석/합성 시스템의 특징을 도시한다. 제 2a 도를 참조하여, 분석 필터(102)는 경로(100)로부터 수신된 입력 신호에 응답하여 스펙트럼 신호를 생성하고, 양자화기(104)는 스펙트럼 신호를 양자화하고, 압축기(106)는 양자화된 신호에 손실없는 압축을 적용하고, 포맷터(formatter)(108)는 압축된 신호를 추후 처리, 전송 또는 저장하기에 적당한 형태를 가지는 인코딩 신호로 어셈블리하고, 경로(110)를 따라 인코딩 신호를 통과시킨다. 지각 코딩 시스템에서, 양자화기(104)는 지각 모델에 응답하여 그것의 양자화를 변형시킨다.
제 2b 도를 참조하여, 디포맷터(deformatter;122)는 경로(120)로부터 수신하는 인코딩 신호로부터 압축된 스펙트럼 신호를 추출하고, 압축 해제기(124)는 압축된 스펙트럼 신호를 압축 해제함으로써 손실없는 압축의 효과를 전환하고, 역 양자화기(126)는 압축 해제된 스펙트럼 신호를 역양자화하고, 인버스 필터(128)는 역양자화된 스펙트럼 신호에 응답하여 경로(130)을 따라 출력 신호를 생성한다.
본 발명의 실시예에 중요하지 않은 분할 주파수대 분석/합성 시스템을 위한 많은 실시예는 여기에서 논의되지 않는다. 추가 정보를 위하여, 미합중국특허 5,109,417 호는 여기에서 참조된다.
본 발명은 단일 분석/합성 응용에 제한되지도 않고, 데이타 압축의 손실 형태에 적용하는 응용으로 제한되지도 않는다. 예를들어, 본 발명은 컴퓨터 디스크 저장 시스템에 통합될수 있다. 제 2a 도에 도시된 영역(122)대의 성분은 압축될 데이타 소오스의 일실시예를 나타내는 것이 이해된다. 유사하게, 제 2b 도에 도시된 영역(132)내의 성분은 압축 해제된 데이타를 사용하거나 목적의 일실예를 표현하는 것이 이해된다.
몇몇 실시예의 구조
제 3a 도에 도시된 블록 다이어그램은 압축기(106)의 일실시예를 위한 추가의 사항을 제공한다. 다수의 심볼은 경로(200)로부터 수신된다. 순서(202)는 특정 순서에 대해 다수의 심볼의 순서를 참고하여 경로(204)를 따라 정보를 생성하고, 필요한 만큼 심볼이 특정 순서에 적합하도록 하고 순서화된 심볼을 인코더(206)에 통과시킨다. 인코더(206)는 테이블(208)를 참고하고 순서화된 심볼에 대해 경로(210)를 따라 코드 워드를 생생한다.
다른 실시예에서, 순서(202)는 특정 실시예에 대해 다수의 심볼 순서를 고려하여 정보를 생성하지만 심볼을 나타내지는 않는다. 대신, 순서 정보는 가능하게 도면에서 도시되지 않은 경로를 따라 인코더(206)로 통과된다. 인코더(206)는 심볼 및 순서 정보에 대해 코드 워드를 생성한다.
디지탈 시스템에서, 수의 순서는 정보가 수적으로 표현되기 때문에 특정 순서를 위하여 일반적으로 통상적인 선택이다. 예를들어, 알파벳 및 구두 심볼같은숫자가 아닌 정보는 정보 교환을 위한 미합중국 표준 코드(ASCII)에 따라 숫자 값을 가지는 심볼로 표현될수 있다. 비록 양에 대한 관한 것일지라도, 숫자 정보는 몇몇 형태의 코딩을 통하여 숫자 값 심볼로 표현된다. 예를들어, 1980년에 시작하는 달력 연도는 영에서 시작하는 양의 정수의 범위내의 값을 가지는 심볼로 코딩될수 있다.
바람직한 실시예에서, 각 심볼(xi)은 숫자의 크기만을 표현한다. 추가 정보는 심볼에 의해 표현된 숫자 정보가 양이거나 음에 관계없이 전달할 것이 요구된다. 게다가, 그런 심볼에 응답하여 생성된 코드 워드는 양 및 음의 양쪽 사이를 구별하지 않는다 ; 그러므로, 부호 비트는 영이 아닌 숫자 정보를 표현하는 코드 워드에 포함된다. 이 코딩의 실시예는 상기 인용된 ISO/MPEG 표준 서류에 제공된다.
심볼의 순서를 이루는 한가지 통상적인 숫자는 예를들어 x1≤x2≤...xa이도록 순서에 배열된 n 심볼의 세트(xi)같은 증가하는 값의 시퀀스이다. 다른 예로서, 한세트의 3개의 심볼은 x1≤x3≤x2이도록 순서가 이루어질수 있다.
제 4a 도는 심볼의 압축 쌍을 위한 본 발명에 따른 압축기의 일실시예의 논리를 도시하는 흐름도이다. 진입(300)를 한쌍의 심볼(x, y)을 수신한다. 순서(302)는 x≤y인지를 확립한다. 만약 클리어(304)가 "재순서 플래그"를 영으로 세트하면 ; 반면에, 스왑(swap)(306)은 값 x 및 y을 교환하고 재순서 플래그를 1로 세트한다. 코더(308)는 심볼(x, y)의 적당하게 순서화된 쌍에 응답하여 코드 워드를 생성한다. 출구(310)는 추후의 처리, 전송 또는 저장을 위한 코드 워드 및 재순서 플래그를 제공한다.
실질적으로 똑같은 처리는 CW가 코드 워드인 경우 다음 프로그램 단편에 표현된다. 이는 재순서 플래그이고 TE(x, y)는 인코딩 테이블을 사용하여 인코딩을 표현한다. 심볼의 재순서는 라인(6)에서 인수의 순서를 전환함으로서 이루어질수 있다.
(1) 엔트리[x, y]
(2) 만약 x≤y이면
(3) CW = TE[x, y]
(4) OI = 0
(5) 그밖에
(6) CW = TE[y, x]
(7) OI = 1
(8) 엔드이프(endif)
(9) 출구[CW, OI]
제 3b 도에서 도시된 블록 다이어그램은 압축 해제(126)의 일실시예를 위한 추가 사항을 제공한다. 디코더(224)는 테이블(226)을 참고하고 경로(220)로부터 수신된 코드 워드를 참조하여 순서화된 다수의 심볼을 생성한다. 순서(228)는 경로(22)로부터 "본래의" 순서 지시를 수신하고, 본래 순서를 이루기 위하여 요구된 바와같이 다수의 순서를 재순서화하고 적당하게 순서화된 심볼을 경로(230)를 따라 통과시킨다.
제 4b 도는 코드 워드를 심볼의 쌍으로 압축 해제 하기 위하여 본 발명에 따라 압축 해제의 일실시예 논리를 도시하는 흐름도이다. 디코더(322)는 코드 워드에 응답하여 한쌍의 심볼(x, y)을 생성한다. 순서(324)는 심볼쌍의 본래 순서가 x≤y이도록 만들어진다. 만약 그렇지않다면, 스왑(326)은 x 및 y의 값을 교환한다. 출구(310)는 추후의 사용을 위하여 심볼(x, y)의 적당하게 순서화된 쌍을 제공한다.
실질적으로 같은 처리는 CW가 코드 워드인 경우 다음 프로그램 포맷에 표현되고, OI는 순서 지시이고 TD[CW]는 디코드 테이블을 사용하는 디코딩을 표현한다. 심볼의 재순서는 프로그램 단편으로부터 출구에 제공된 라인(6)의 심볼 순서를 전환함으로써 이루어진다.
(1) 진입[CW, OI]
(2) (x, y) + TD[CW]
(3) 만약 OI = 0 이면
(4) 출구[x, y]
(5) 그밖에
(6) 출구[y, x]
(7) 엔드이프
통상적인 인코딩 테이블
몇몇 기초 개념의 보다 나은 응용은 다양한 본 발명의 측면을 통합하는 코더의 몇몇 실시예를 고려하여 얻어질수 있다. 여기서 논의된 실시예는 후프만 코딩기술을 심볼(x 및 y)의 쌍에 적용하여 논의되지만 원리 및 개념은 샤논 파노 코딩(Shannon-Fano coding)같은 다른 영역 및 다른 코딩 기술에 응용할수 있다.
일실시예에서, 후프만 코딩은 각 메시지가 한쌍의 심볼(x, y)에 의해 표현되는 경우 16개의 다른 메시지의 어떤 것을 위한 데이타 압축을 제공한다. 각 메시지를 위한 발생 가능성은 다음 매트릭스(P0)에 제공된다.
이 실시예에서, 가능 매트릭스는 대칭적이다. 그러므로, 메시지(2, 3), 즉 .07의 발생 가능성 P0(2, 3)은 메시지(3, 2)에 대한 발생 가능성 P0(3, 2)과 같다.
"메시지 세트의" 엔트로피(entropy)는 세트에서 각 메시지의 평균 정보 내용이다. 엔트로피는 세트에서 각 메시지를 표현하기 위하여 요구된 평균 비트의 수를 위한 하부 범위이다. N 메시지의 어떤 세트를 위하여, 엔트로피는 다음 표현으로부터 얻어질수 있다.
여기서 H = 메시지 세트{i}의 엔트로피 ;
Pi= 메시지 i 발생 가능성 ; 및
log = 베이스(2)에 대한 대수 함수
부가적인 사항은 린치의, "데이타 압축 기술 및 응용", 1985, pp. 1-60, 벨, 클리어리 및 위튼의, " 텍스트 압축", 1990, pp. 100-107로부터 얻어질수 있고, 여기에서 참조된다.
상기 가능 매트릭스 P0에 의해 표현된 메시지 세트{x, y}를 위한 엔트로피는 다음 표현으로부터 얻어진 엔트로피 H0이다.
이것은 대략 3.8114 비트이다.
후프만 코딩 또는 샤논-파노 코딩은 예를들어 16개의 메시지 각각을 위한 가변 길이 이진 코드의 세트를 유도하기 위하여 사용될수 있다. 다음 예는 본 발명이 후프만 코딩 기술로 사용될수 있지만 다른 코딩 기술에 또한 유사하게 적용될수 있는가를 도시한다.
다음 매트릭스는 최대 가능 메시지를 위한 3개의 비트로부터 최소 가능 메시지를 위한 6개의 비트로 길이를 가변하는 한세트의 코드 워드를 포함하는 인코딩 테이블(TE0)이다.
두 개의 심볼 메시지를 인코딩 또는 압축하기 위한 처리는 인코딩 테이블로부터 적당한 코드 워드를 찾기 위해 두 개의 심볼의 값을 사용할수 있다. 예를들어, 메시지(2, 3)용 코드 워드는 CW = TE0[2, 3] = 0100.
특정 메시지가 가능 매트릭스에 따른 주파수로 발생하는 것을 가정하여 특정 코딩 기술을 위한 평균 워드 길이는 다음 식으로부터 얻어진다.
여기서= 코드 워드의 평균 길이 ;
len(i) = 메시지(i)용 코드 워드 길이.
인코딩 테이블(TE0)을 위한 평균 코드 워드 길이는 이론적인 최소 또는 엔트로피보다 약간 큰 3.85 비트이다. 초과량은 코딩에서 약간의 여분이 있다는 것을 가리킨다.
비록 후프만 코딩이 모든 환경에서 최적은 아니지만, 그것이 컴퓨터에서 효과적이기 때문에 폭넓게 사용된다. 바람직하지 못하게, 인코딩 및 디코딩 테이블은 저장을 위해 상당한 메모리를 요구하고 일반적으로 매우 크다. 상기 실시예에서, 인코딩 테이블은 각 심볼이 단지 4개의 값중 하나를 가정하기 때문에 크기에서 적당하다. 많은 실제적인 응용에서, 각 심볼을 어떤 다수의 값을 가정할 수 있다. 상기 테이블(TE0)같은 테이블은 x 및 y를 위한 가능 심볼의 수의 제곱으로서 증가한다.
제 1 도에서 도시된 바와같이 정보 처리 시스템의 많은 실시예에서, 인코딩테이블은 RAM 또는 ROM에 저장된다. 그러므로, 코딩 테이블의 크기를 줄일 수 있는 기술은 요구된 메모리의 양을 줄이고, 그것에 의해 실행 가격을 감소시킨다.
콤팩트 인코딩 테이블
본 발명의 특징을 통합할수 있는 다중 심볼 메시지의 인코더는 통상적인 인코딩 테이블보다 상당히 작은 인코딩 테이블을 사용할수 있다. 만약 두개의 심볼 메시지에서 각 심볼이 N개의 가능한 값중 어느 하나를 가정한다면, 통상적인 인코딩 테이블은 N2엘리먼트를 포함할것이다. 본 발명에 따른 그런 두개의 심볼 메시지를 위한 콤팩트 인코딩 테이블은 단지 (N2+ N)/2이고, 그것은 N이 클때 통상적인 인코딩 테이블 크기의 절반으로 접근한다.
상기 논의된 예를 참조하여, 인코딩 테이블(TE0)은 각각의 가능 메시지(x, y)를 위한 16개에 코드 워드, 한개의 코드 워드를 포함한다. 심볼(x)이 항상 심볼(y)보다 작거나 같다(x≤y)는 것을 보장함으로써, 6개의 메시지는 메시지 세트{x, y}로부터 제거되어, 인코딩 테이블의 크기를 감소시킨다. 이 숫적인 관계는 코딩전에 필요한 만큼 x 및 y 심볼을 재순서화함으로써 보장된다. 재순서의 효과는 심볼의 본래 순서를 고려하여 정보에 응답하는 대응 디코더에 의해 전환된다. 이 순서 정보는 단일 비트에 의해 전달될수 있다.
예를들어, 일실시예에서, 인코더는 필요한만큼 심볼 쌍을 재순서화하고, 순서화된 쌍을 위한 코드 워드를 생성하고, 만약이면 순서 정보를 생성한다. 순서 정보는 만약 심볼이 본래 순서에 있지 않으면 1과 동일하고 만약 심볼이 본래 순서에 있으면 영과 동일한 단일 비트에 의해 전달된다.
x>y일때 심볼의 재순서화는인 경우 각 메시지(x, y)에 대해 발생 가능성의 두배이다. 이 변화는 다음 가능 매트릭스(P1)에 반영된다.
다음 인코딩 테이블(TE1)은 3비트로 부터 4 비트로 길이가 변화하는 수정된 메시지 세트용 코드 워드를 포함한다.
상기 표현 2 및 3으로부터, 세트{x, y}에서 몇몇 메시지의 가능성이 영인것을 고려하여, 수정된 메시지 세트의 엔트로피는 대략 3.2314로 발견되고 테이블 TE1을 위한 평균 코드 워드 길이는 3.27 비트이다. 이런 감소는 순서 정보를 디코더로 전달하기 위하여 요구된 어떤 추가 비트에 의해 상쇄(offset)된다.
압축 수행에서 페널티는 순서 정보를 전달하기 위하여 요구된 비트의 수가 메시지 엔트로피에서 동일한 감소에 의해 상쇄되기 때문에 코딩 테이블 크기에서감소를 위해 교환시 발생된다. 이것은 다음 표현을 계산함으로써 도시될수 있다.
여기서= 순서 정보를 전달하기 위하여 요구된 비트의 평균 수 ;
= 수정된 메시지 세트에 대한 엔트로피 변화
상기된 바와같이, 두 개의 심볼 메시지를 위한 순서 정보는 하나의 비트에 의해 전달될수 있고 단지일때만 보내질 필요가 있다. 이런 평균 길이는 다음 표현으로 계산된다.
여기서 A = x<y에 대한 메시지 세트 ;
B = x>y에 대한 메시지 세트 ;
PA= 세트 A에서 모든 메시지의 누적 가능성 ; 및
PB= 세트 B에서 모든 메시지의 누적 가능성
엔트로피 변화는 가능 매트릭스(P0)의 메인 사선에서 벗어난 엘리먼트로부터 쉽게 계산된다. 이것은 본래 메시지 세트의 엔트로피(H0)가 아래와 같은 식인 제 1 인식에 의해 도시될수 있다.
여기서 I = x = y에 대한 메시지의 세트
HA= 세트 A에 대한 엔트로피
HI= 세트 I에 대한 엔트로피 ; 및
HB= 세트 B에 대한 엔트로피.
가능 매트릭스(PI)에 대응하는 수정 메시지의 엔트로피(HI)는 아래와 같다.
가능 매트릭스(P0)는 대칭이다 ; 그러므로,
그러므로,
순서 정보를 전달하기 위하여 요구된 추가비트의 수는 엔트로피에서 감소에 의해정확하게 상쇄된다.
통상적인 디코딩 테이블
제 5a 도는 이진 트리(400) 형태로 디코딩 구조를 도시한다. 도시된 특정 트리는 상기된 인코딩 테이블(TE0)에 대응한다. 트리의 각 노드는 다른 노드에 각각 접속된 두 개의 가지(branch)를 가지거나, 가지를 가지지 않고 특정 메시지를 표현하는 "잎사귀(leaf)"이다. "뿌리" 노드에서 시작함으로써 코드 워드에서 연속적인 비트의 값에 따른 트리 및 가지를 가로지르는 "줄기"에서, 궁극적으로 적당한 잎사귀 노드는 코드 워드에 의해 표현된 메시지를 제공하도록 도달된다. 도시된 예에서, 좌측 가지는 "0" 비트에 응답하여 이동되고 우측 가지는 "1" 비트에 응답하여 이동된다.
예를들어, 코드 워드 "1101"에 대한 트리(400)의 이동은 뿌리 노드에서 시작하고 우측 가지를 따라 제 1 비트("1")에 응답하여 제 1 노드로 진행하고, 우측 가지를 따라 제 2 비트("1")에 응답하여 제 2 노드로 진행하고, 좌측 가지를 따라 제 3 비트("0")에 응답하여 제 2 노드로 진행하고, 우측 가지를 따라 제 4 비트("1")에 응답하여 잎사귀 노드로 진행한다. 잎사귀 노드는 대응 메시지가 (2,1)인 것을 가리킨다. 상기 도시된 TE0인코딩 테이블을 참조하면, 이것은 적당한 결과임을 알 수 있다.
일실시예에서, 트리는 접속된 목록 구조를 사용하여 실행된다. 트리 노드를표현하는 메모리의 블록은 다른 노드 블록을 지적하는 두 개의 링크를 포함한다. 잎사귀 노드를 표현하는 메모리의 블록은 메시지가 저장되는 경우를 지적하는 링크를 포함하거나 그 자체가 메시지를 저장한다. 트리를 저장하기 위하여 요구된 메모리의 양은 트리에서 노드의 수가 증가할 때 일반적으로 증가한다. 일반적으로, 메모리의 양은 노드의 수 및 메시지의 수에 비례한다. 도시된 일실시예에서, 트리는 15 및 16개의 메시지를 포함한다.
콤팩트 디코딩 테이블
본 발명의 특징을 통합한 다중 심볼 메시지의 디코더는 통상적인 디코딩 테이블보다 상당히 작은 디코딩 테이블을 사용할수 있다. 제 5b 도는 상기된 인코딩 테이블(TE1)에 대응하는 이진 트리(410) 형태의 디코딩 구조를 도시한다. 트리(400)에 대비하여, 트리(410)는 단지 9 개의 노드 및 10개의 메시지를 포함한다. 콤팩트 트리는 통상적인 트리를 위하여 상기 설명된 등일 방식으로 이동되지만 추가 단계는 코드 워드를 적당하게 디코드하기 위하여 요구될수 있다.
예를들어, 제 5b 도를 참조하여, 코드 워드("011")는 메시지(1,2)에 대응한다. 그러나, TE1인코딩 테이블을 사용하는 인코더는 심볼을 재순서화한다. 코드 워드를 가지는 코딩 신호에 통과된 순서 정보를 참고하여, 디코더는 적당한 메시지를 형성할수 있다. 일실시예에서, 적당한 메시지는 만약 순서 정보가 "0" 비트이면 (1,2)이고 만약 순서 정보가 "1" 비트이면 (2,1)이다.
다른 실시예에서 처럼, 코드 워드("010")는 메시지(4, 4)에 대응한다. 디코더는 이것이 적당한 메시지이도록 형성하기 위한 어떤 순서 정보를 요구하지 않는다.
디코딩 테이블은 다른 방식으로 실행될수 있다. 예를들어, 디코딩 테이블은 모든 가능한 코드 워드를 표현하는 엔트리를 포함하고 디코딩은 엔트리를 가지는 코드 워드 매칭 및 대응 메시지 인출을 포함한다.
본 발명이 인코딩 및 디코딩 테이블의 어떤 특정 실행에 제한되지 않는 것은 명백하다. 여기에서 논의된 실시예는 단지 예로서 계공된다.
보다 큰 차원 코딩
상기된 바와같이, 본 발명은 다중 차원 코딩의 보다 높은 순서에 적용될수 있다. n 심볼을 포함하는 메시지(x1, x2, ... xn)를 위하여, n차 코딩은 사용될수 있다. 만약 각각의 n 심볼이 어떤 다른 N 값을 가정하면, 가능 매트릭스 및 통상적인 인코딩 테이블은 각각 N 엔트리를 포함한다. 인코딩 및 디코딩 테이블의 크기가 증가 차원으로인해 크게 증가하는 것이 쉽게 도시된다. 하기될 실시예는 메시지내의 각 심볼이 다른 N 값을 가정할수 있다는 것이 가정된다.
n 심볼의 그룹은 상이한 n 계승(factorial) (n!)으로 배열된다. 이것은 n! 과 같은 수의 상이한 메시지가 n 심볼의 다양한 순열에 의해 표현될수 있다는 것을 의미한다. 심볼이 이들 순열중 하나에 따라 배열되는 것을 보장함으로써, 인코딩매트릭스는 대략 Nn/n!의 크기로 감소된다.
3차원 코딩에서, 예를들어, 메시지는 3개의 심볼(x, y, z)을 포함한다, 메시지 세트{x, y, z}에 대한 통상적인 이 코딩 테이블을 N3엔트리를 포함하고 제 6a 도에서 도시된 바와같이, 각각의 가장 자리를 따라 길이(N)의 육면체(500) 같은 3개의 스페이스(space)로 가시화 될 수 있다. 본 발명에 따른 콤팩트 인코딩 테이블은 단지 (N3+ 3N2+ 2N)/6 엔트리만 포함하고, 제 6b 도에 도시된 바와같이, 길이(N)의 3개의 상호 수직 가장 자리의 교차점에서 베이스 반대의 정점 및 등변 삼각형 모양의 베이스를 가지는 사면체(510)로서 3개의 스페이스로 가시화될 수 있다. 사실상, 사면체(510)는 육면체(512)의 모서리를 잘라낸 결과이다. N이 커질 때, 콤팩트 인코딩 테이블의 엔트리 수는 N3/6 이다.
원칙적으로, 콤팩트 테이블을 사용함으로써 발생된 코딩 페널티는 없다. 그러나, 특히 실시예에서, 약간의 페널티는 순서 정보의 감소로 인해 발생될수 있다. 이 여분은 메시지 세트 엔트로피에서 감소에 의해 절약된 것보다 순서 정보를 전달하기 위해 보다 많은 비트를 요구한다. 3차원 코딩 예를들어, 순서 정보는 6개의 가능 순서중 어떤 하나를 전달해야 한다. 6개의 가능 순서를 전달하기 위하여 3개의 비트를 사용하는 코딩 계획은 간단히 실행되지만 과다하다. 만약 각각의 6개의 순서가 똑같이 가능하다면, 순서 정보는 대략 2.585(또는 log26) 비트를 요구한다. 3개의 비트 계획은 코드 워드당 대략 .415 비트를 낭비한다. 그러나, 이 낭비적인계획은 그것이 코딩 테이블 크기의 80 퍼센트에 대해 균형을 이룰수 있기 때문에 매력적이다.

Claims (28)

  1. 인간의 지각을 위해 의도된 신호를 표현하는 다수의 심볼을 인코딩하기 위한 인코딩 방법에 있어서,
    특정 순서에 대해 상기 다수의 심볼내에 심볼의 순서를 표현하는 순서 정보를 생성하는 단계와,
    상기 특정 순서에 따라 순서화되도록 필요에 따라서 재순서된 상기 다수의 심볼 또는 상기 다수의 심볼 및 상기 순서정보에 응답하고, 상기 특정순서에 따라 순서화된 상기 다수의 심볼이 상기 코드 워드로부터 복구되게 코드워드를 생성하는 단계와,
    치리, 전송 또는 저장에 적당한 형태로 상기 코드 워드 및 상기 순서 정보를 어셈블링하는 단계를 포함하는 것을 특징으로 하는 인코딩 방법.
  2. 제 1 항에 있어서,
    상기 특정 순서는 상기 심볼에 대응하는 관련 숫자 값을 바탕으로 하는 것을 특징으로 하는 인코딩 방법.
  3. 제 1 항에 있어서,
    상기 다수의 심볼은 심볼 x 및 y의 쌍이고, 상기 순서 정보는 상기 쌍의 심볼이 상기 쌍의 심볼에 대응하는 값의 특정 숫자 관계에 따라 순서화되고, 상기 특정 숫자 관계는 x<y, x≤y, x>y 및 x≥y의 세트로부터 선택되는 것을 특징으로 하는 인코딩 방법.
  4. 제 1 항 내지 제 3 항중 어느 한 항에 있어서,
    상기 코드 워드는 테이블 엔트리를 포함하는 인코딩 테이블에 응답하여 생성되고, 상기 테이블 엔트리는 상기 심볼이 상기 특정 순서에 따라 순서화되는 다양한 다수의 심볼을 위해서만 코드 워드를 표현하는 것을 특징으로 하는 인코딩 방법.
  5. 제 1 항 내지 제 3 항중 어느 한 항에 있어서,
    상기 코드 워드는 상기 특정 순서에 따라 순서화된 상기 다수의 심볼의 발생 가능성에 대해 반대로 변화하는 길이를 가지는 것을 특징으로 하는 인코딩 방법.
  6. 제 5 항에 있어서,
    상기 코드 워드는 후프만 인코딩 또는 샤몬-파노 인코딩 기술에 다라 생성되는 것을 특징으로 하는 인코딩 방법.
  7. 인간 지각을 위하여 의도된 신호를 표현하는 다수의 심볼에 응답하여 제공된 코딩 신호를 디코딩하기 위한 디코딩 방법에 있어서,
    상기 코딩 신호로부터 특정 순서에 대해 상기 다수의 심볼내의 심볼의 순서를 표현하는 코드 워드 및 순서 정보를 추출하는 단계와,
    상기 코드 워드를 디코딩함으로써 중간 세트의 심볼을 생성하는 단계와,
    상기 순서 정보에 따라 심볼의 상기 중간 세트내의 심볼을 순서화함으로써 상기 다수의 심볼을 회복하는 단계를 포함하는 것을 특징으로 하는 디코딩 방법.
  8. 제 7 항에 있어서,
    상기 심볼의 중간 세트는 한쌍의 심볼을 포함하고 상기 순서 정보는 상기 다수의 심볼내의 심볼이 상기 특정 순서에 따라 순서화되는지 아닌지를 가리키는 것을 특징으로 하는 디코딩 방법.
  9. 제 7 항 또는 제 8 항에 있어서,
    상기 중간 세트의 심볼은 테이블 엔트리를 포함하는 디코딩 테이블에 응답하여 생성되고, 상기 테이블 엔트리는 심볼이 상기 특정 순서에 따라 순서화되는 중간 세트의 심볼만 표현하는 것을 특징으로 하는 디코딩 방법.
  10. 제 7 항 또는 제 8 항에 있어서,
    상기 코드 워드는 상기 특정 순서에 따라 순서화된 상기 다수의 심볼의 발생 가능성에 역으로 변화하는 길이를 가지는 것을 특징으로 하는 디코딩 방법.
  11. 제 10 항에 있어서,
    상기 디코딩은 후프만 디코딩 또는 샤논-파노 디코딩 기술에 따라 수행되는 것을 특징으로 하는 디코딩 방법.
  12. 인간 지각을 위해 의도된 신호를 표현하는 다수의 심볼을 인코딩하기 위한 인코더에 있어서,
    특정 순서에 대해 상기 다수의 심볼내에 심볼의 순서를 표현하는 순서 정보를 생성하기 위한 순서 수단(202)과,
    상기 특정 순서에 따라 순서화되도록 필요에 따라서 재순서된 상기 다수의 심볼 또는 상기 다수의 심볼 및 순서 정보에 응답하고, 상기 특정순서에 따라 순서화된 상기 다수의 심볼이 상기 코드 워드로부터 복구되게 코드워드를 생성하기 위한 코딩 수단(206) 과,
    처리, 전송 또는 저장에 적당한 형태로 상기 코드 워드 및 상기 순서 정보를 어셈블링하기 위한 포맷 수단(108)을 포함하는 것을 특징으로 하는 인코더.
  13. 제 12 항에 있어서,
    상기 특정 순서는 상기 심볼에 대응하는 관련 숫자를 바탕으로 하는 것을 특징으로 하는 인코더.
  14. 제 12 항에 있어서,
    상기 다수의 심볼은 한쌍의 심볼 x 및 y이고, 상기 순서 수단(202)은 상기쌍의 심볼이 상기 쌍의 심볼에 응답하는 값의 특정 숫자 관계에 따라 순서화되고, 상기 특정 숫자 관계는 x<y, x≤y, x>y 및 x≥y의 세트로부터 선택되는 것을 특징으로 하는 인코더.
  15. 제 12 항 내지 제 14 항중 어느 한 항에 있어서,
    상기 코딩 수단(206)은 테이블 엔트리를 포함하는 하나 이상의 인코딩 테이블(208)을 저장하는 RAM 및/또는 ROM을 포함하고, 상기 코딩 수단은 상기 하나 이상의 인코딩 테이블에 응답하는 상기 코드 워드를 생성하고, 상기 테이블 엔트리는 상기 심볼이 상기 특정 순서에 따라 순서화되는 다양한 다수의 심볼만을 위해 코드 워드를 표현하는 것을 특징으로 하는 인코더.
  16. 제 12 항 내지 제 14 항중 어느 한 항에 있어서,
    상기 코딩 수단(206)은 상기 특정 순서에 따라 순서화된 상기 다수의 심볼의 발생 가능성에 역으로 변화하는 길이를 가지는 상기 코드 워드를 생성하는 것을 특징으로 하는 인코더.
  17. 제 16 항에 있어서,
    상기 코딩 수단(206)은 후프만 인코딩 또는 샤논-파노 인코딩 기술에 따라 상기 코드 워드를 생성하는 것을 특징으로 하는 인코더.
  18. 인간 지각을 위하여 의도된 신호를 표현하는 다수의 심볼에 응답하여 제공된 코딩 신호를 디코딩하기 위한 디코더에 있어서,
    상기 코딩 신호로부터 특정 순서에 대해 상기 다수의 심볼내의 심볼의 순서를 표현하는 코드 워드 및 순서 정보를 추출하기 위한 디포맷 수단(deformatting means;122)과,
    상기 코드 워드를 디코딩함으로써 중간 세트의 심볼을 생성하기 위한 디코딩 수단(224)과,
    상기 순서 정보에 따른 상기 중간 세트의 심볼내의 심볼을 순서화함으로써 상기 다수의 심볼을 회복하는 순서 수단(228)을 포함하는 것을 특징으로 하는 디코더.
  19. 제 18 항에 있어서,
    상기 중간 세트의 심볼은 한쌍의 심볼을 포함하고 상기 순서 정보는 상기 다수의 심볼내의 심볼이 상기 특정 순서에 따라 순서화되는지 아닌지를 가리키는 것을 특징으로 하는 디코더.
  20. 제 18 항 또는 제 19 항에 있어서,
    상기 디코딩 수단(224)은 테이블 엔트리를 포함하는 하나 이상의 디코딩 테이블(226)을 저장하는 RAM 및/또는 ROM을 포함하고, 상기 디코딩 수단은 상기 디코딩 테이블에 응답하는 상기 중간 세트의 심볼을 생성하고, 상기 테이블 엔트리는심볼이 상기 특정 순서에 따라 순서화되는 중간 세트의 심볼만 표현하는 것을 특징으로 하는 디코더.
  21. 제 18 항 또는 제 19 항에 있어서,
    상기 디코딩 수단(224)은 상기 특정 순서에 따라 순서화된 상기 다수의 심볼의 발생 가능성에 역으로 변화하는 길이를 가지는 상기 코드 워드를 생성하는 것을 특징으로 하는 디코더.
  22. 제 21 항에 있어서,
    상기 디코딩 수단(224)은 후푸만 디코딩 또는 샤논-파노 디코딩 기술에 따라 상기 코드 워드를 디코드하는 것을 특징으로 하는 디코더.
  23. 제 9 항에 있어서,
    상기 코드 워드는 상기 특정 순서에 따라 순서화된 상기 다수의 심볼의 발생 가능성에 대해 역으로 변화하는 길이를 가지는 것을 특징으로 하는 디코딩 방법.
  24. 제 23 항에 있어서,
    상기 디코딩은 후프만 디코딩 또는 샤논-파노 디코딩 기술에 따라 수행되는 것을 특징으로 하는 디코딩 방법.
  25. 제 15 항에 있어서,
    상기 코딩 수단(206)은 상기 특정 순서에 따라 순서화된 상기 다수의 심볼의 발생 가능성에 역으로 변화하는 길이를 가지는 상기 코드 워드를 생성하는 것을 특징으로 하는 인코더.
  26. 제 25 항에 있어서,
    상기 코딩 수단(206)은 후프만 인코딩 또는 샤논-파노 인코딩 기술에 따라 상기 코드 워드를 생성하는 것을 특징으로 하는 인코더.
  27. 제 20 항에 있어서,
    상기 디코딩 수단(224)은 상기 특정 순서에 따라 순서화된 상기 다수의 심볼의 발생 가능성에 역으로 변화하는 길이를 가지는 상기 코드 워드를 생성하는 것을 특징으로 하는 디코더.
  28. 제 27 항에 있어서,
    상기 디코딩 수단(224)은 후푸만 디코딩 또는 샤논-파노 디코딩 기술에 따라 상기 코드 워드를 디코드하는 것을 특징으로 하는 디코더.
KR1019960703994A 1994-04-01 1995-03-31 인코더/디코더시스템용콤팩트소오스코딩테이블 KR100349447B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/234,871 US5550541A (en) 1994-04-01 1994-04-01 Compact source coding tables for encoder/decoder system
US08/234,871 1994-04-01
PCT/US1995/004021 WO1995027337A1 (en) 1994-04-01 1995-03-31 Compact source coding tables for encoder/decoder system

Publications (2)

Publication Number Publication Date
KR970700957A KR970700957A (ko) 1997-02-12
KR100349447B1 true KR100349447B1 (ko) 2002-12-26

Family

ID=22883165

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960703994A KR100349447B1 (ko) 1994-04-01 1995-03-31 인코더/디코더시스템용콤팩트소오스코딩테이블

Country Status (10)

Country Link
US (1) US5550541A (ko)
EP (1) EP0754374B1 (ko)
JP (1) JPH09511372A (ko)
KR (1) KR100349447B1 (ko)
CN (1) CN1119868C (ko)
AT (1) ATE182041T1 (ko)
AU (1) AU684013B2 (ko)
CA (1) CA2183352A1 (ko)
DE (1) DE69510662T2 (ko)
WO (1) WO1995027337A1 (ko)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2302244B (en) * 1994-09-20 1997-10-22 Ricoh Kk Wavelet transform filter
US5850260A (en) * 1995-03-08 1998-12-15 Lucent Technologies Inc. Methods and apparatus for determining a coding rate to transmit a set of symbols
US5872599A (en) * 1995-03-08 1999-02-16 Lucent Technologies Inc. Method and apparatus for selectively discarding data when required in order to achieve a desired Huffman coding rate
JP3520670B2 (ja) * 1996-06-28 2004-04-19 ソニー株式会社 可変長符号処理装置および画像処理装置
US6983018B1 (en) 1998-11-30 2006-01-03 Microsoft Corporation Efficient motion vector coding for video compression
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
US6300888B1 (en) 1998-12-14 2001-10-09 Microsoft Corporation Entrophy code mode switching for frequency-domain audio coding
US6377930B1 (en) 1998-12-14 2002-04-23 Microsoft Corporation Variable to variable length entropy encoding
US6223162B1 (en) 1998-12-14 2001-04-24 Microsoft Corporation Multi-level run length coding for frequency-domain audio coding
US6404931B1 (en) 1998-12-14 2002-06-11 Microsoft Corporation Code book construction for variable to variable length entropy encoding
JP3493574B2 (ja) * 1999-03-11 2004-02-03 Necエレクトロニクス株式会社 逆量子化装置及び逆量子化方法
US7543148B1 (en) * 1999-07-13 2009-06-02 Microsoft Corporation Audio watermarking with covert channel and permutations
US6373412B1 (en) * 2000-12-15 2002-04-16 International Business Machines Corporation Fast JPEG huffman encoding and decoding
EP1263236A2 (en) * 2001-05-28 2002-12-04 Canon Research Centre France S.A. Method and device for processing a digital signal
US7164369B2 (en) * 2001-06-19 2007-01-16 Sharp Laboratories Of America, Inc. System for improving storage efficiency of digital files
ES2664270T3 (es) * 2001-12-17 2018-04-18 Microsoft Technology Licensing, Llc Codificación por omisión de macrobloques
US20050013498A1 (en) 2003-07-18 2005-01-20 Microsoft Corporation Coding of motion vector information
US7499495B2 (en) 2003-07-18 2009-03-03 Microsoft Corporation Extended range motion vectors
US8064520B2 (en) 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
US7724827B2 (en) 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7577200B2 (en) 2003-09-07 2009-08-18 Microsoft Corporation Extended range variable length coding/decoding of differential motion vector information
US7599438B2 (en) 2003-09-07 2009-10-06 Microsoft Corporation Motion vector block pattern coding and decoding
US7317839B2 (en) 2003-09-07 2008-01-08 Microsoft Corporation Chroma motion vector derivation for interlaced forward-predicted fields
US7620106B2 (en) 2003-09-07 2009-11-17 Microsoft Corporation Joint coding and decoding of a reference field selection and differential motion vector information
US7616692B2 (en) 2003-09-07 2009-11-10 Microsoft Corporation Hybrid motion vector prediction for interlaced forward-predicted fields
US7606308B2 (en) * 2003-09-07 2009-10-20 Microsoft Corporation Signaling macroblock mode information for macroblocks of interlaced forward-predicted fields
US7623574B2 (en) 2003-09-07 2009-11-24 Microsoft Corporation Selecting between dominant and non-dominant motion vector predictor polarities
US7567617B2 (en) 2003-09-07 2009-07-28 Microsoft Corporation Predicting motion vectors for fields of forward-predicted interlaced video frames
US7660475B2 (en) * 2004-12-22 2010-02-09 Ntt Docomo, Inc. Method and apparatus for coding positions of coefficients
US7991610B2 (en) * 2005-04-13 2011-08-02 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Adaptive grouping of parameters for enhanced coding efficiency
US20060235683A1 (en) * 2005-04-13 2006-10-19 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Lossless encoding of information with guaranteed maximum bitrate
US7788106B2 (en) * 2005-04-13 2010-08-31 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Entropy coding with compact codebooks
US8494667B2 (en) 2005-06-30 2013-07-23 Lg Electronics Inc. Apparatus for encoding and decoding audio signal and method thereof
US9077960B2 (en) * 2005-08-12 2015-07-07 Microsoft Corporation Non-zero coefficient block pattern coding
BRPI0616859A2 (pt) * 2005-10-05 2011-07-05 Lg Electronics Inc método e aparelho para processamento de sinais
US7716043B2 (en) 2005-10-24 2010-05-11 Lg Electronics Inc. Removing time delays in signal paths
US20070096956A1 (en) * 2005-10-31 2007-05-03 Fujifilm Microdisks Usa Inc. Static defined word compressor for embedded applications
US8878041B2 (en) * 2009-05-27 2014-11-04 Microsoft Corporation Detecting beat information using a diverse set of correlations
US9122398B2 (en) * 2012-10-31 2015-09-01 International Business Machines Corporation Generalized storage allocation for multiple architectures
CN103905054B (zh) * 2012-12-25 2017-05-24 展讯通信(上海)有限公司 构建码表的方法和装置,编码、解码方法和装置
RU2667034C2 (ru) * 2014-05-28 2018-09-13 Конинклейке Филипс Н.В. Способы и устройства для кодирования hdr-изображений и способы и устройства для использования таких кодированных изображений
CN107783990B (zh) * 2016-08-26 2021-11-19 华为技术有限公司 一种数据压缩方法及终端
CN108599897B (zh) * 2018-04-09 2020-08-11 珠海格力电器股份有限公司 设备的数据处理方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4486784A (en) * 1982-12-27 1984-12-04 International Business Machines Corporation Image compression systems
FR2554995B1 (fr) * 1983-11-15 1989-05-05 Thomson Cgr Procede de compression d'une succession d'informations numeriques et dispositif mettant en oeuvre ce procede
US5227789A (en) * 1991-09-30 1993-07-13 Eastman Kodak Company Modified huffman encode/decode system with simplified decoding for imaging systems
US5325091A (en) * 1992-08-13 1994-06-28 Xerox Corporation Text-compression technique using frequency-ordered array of word-number mappers

Also Published As

Publication number Publication date
DE69510662T2 (de) 2000-01-13
US5550541A (en) 1996-08-27
EP0754374A1 (en) 1997-01-22
CA2183352A1 (en) 1995-10-12
KR970700957A (ko) 1997-02-12
CN1144583A (zh) 1997-03-05
WO1995027337A1 (en) 1995-10-12
JPH09511372A (ja) 1997-11-11
AU684013B2 (en) 1997-11-27
CN1119868C (zh) 2003-08-27
DE69510662D1 (de) 1999-08-12
ATE182041T1 (de) 1999-07-15
AU2203695A (en) 1995-10-23
EP0754374B1 (en) 1999-07-07

Similar Documents

Publication Publication Date Title
KR100349447B1 (ko) 인코더/디코더시스템용콤팩트소오스코딩테이블
EP0616471B1 (en) Coding of digital signals
EP0630547B1 (en) Picture data encoding method
JP2711665B2 (ja) ビツトレート低減方法および装置
US5063608A (en) Adaptive zonal coder
KR100489908B1 (ko) 디지탈정보신호부호화방법및장치
EP2302929A1 (en) Coding and decoding of a bitstream with an orientation interpolator
US5594435A (en) Permutation-based data compression
JP3341962B2 (ja) 可変長復号器及び可変長符号値を復号化する方法
US6225922B1 (en) System and method for compressing data using adaptive field encoding
US6529551B1 (en) Data efficient quantization table for a digital video signal processor
US6363176B1 (en) Picture data decompression apparatus
ATE361631T1 (de) Präzisionsverbesserung durch einsatz von transformationskoeffizientbitebenen
JP3277425B2 (ja) ディジタル信号の符号化方法、符号化用テーブル生成方法、符号化装置及び符号化方法
EP0644660B1 (en) Variable length coder
KR970073120A (ko) 블럭 단위의 벡터 양자화된 신호의 복호화 방법
Reif et al. REAL-TIME DYNAMIC COMPRESSION OF VIDEO ON A GRID-CONNECTED PAR-ALLEL COMPUTER
KR100686354B1 (ko) 가변 트리를 이용한 허프만 복호화 방법 및 장치
JPS6276931A (ja) デ−タ圧縮装置
US6522270B1 (en) Method of coding frequently occurring values
US6583736B1 (en) Bitcode sequence coding of frequently occurring values
KR890004316B1 (ko) 복합 코드 부호화 방법
KR100451256B1 (ko) Mpeg-4 역방향 가변장부호 복호화방법 및 회로
Buchanan et al. Data Compression
Huang et al. Very large scale integration (VLSI) implementation of block-based predictive Rice codec

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: 20080804

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee