KR19990014761A - 디지탈 정보신호 부호화 방법 및 장치 - Google Patents

디지탈 정보신호 부호화 방법 및 장치 Download PDF

Info

Publication number
KR19990014761A
KR19990014761A KR1019970708104A KR19970708104A KR19990014761A KR 19990014761 A KR19990014761 A KR 19990014761A KR 1019970708104 A KR1019970708104 A KR 1019970708104A KR 19970708104 A KR19970708104 A KR 19970708104A KR 19990014761 A KR19990014761 A KR 19990014761A
Authority
KR
South Korea
Prior art keywords
information signal
signal block
representative
length
symbol
Prior art date
Application number
KR1019970708104A
Other languages
English (en)
Other versions
KR100489908B1 (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 KR19990014761A publication Critical patent/KR19990014761A/ko
Application granted granted Critical
Publication of KR100489908B1 publication Critical patent/KR100489908B1/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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 허프만 부호화와 같은 적응 가변길이 부호화를 사용하여 샘플링된 수치와 같은 대표 심볼을 포함하는 디지탈 정보신호 블록을 부호화하는 것에 관한 것이다. JPEG 표준 역시 적은 허프만 부호화를 사용하기는 하지만, 이 표준에 따른 부호화는 비교적 큰 수의 허프만 부호화 테이블이 전송되는 경우에는 비효율적이다. 본 발명에 따르면, 정보신호 블록당 대표 심볼의 개수가 적은 경우에, 대표 심볼들 각각의 발생 확률이 가변길이 부호화 대표 심볼과 함께 전송되어, 상기 확률에 근거하여 인코더 및 디코더에서 유사한 부호화(복호화) 테이블이 생성된다. 정보신호 블록당 대표 심볼의 개수가 많은 경우에는, 각각의 가변길이 부호화 대표 심볼 시리즈 내부의 각각의 길이의 코드어의 수에 관한 정보 및/또는 최대 코드 길이가 이 시리즈에 부가된다. 이러한 정보에 의해, 디코더는 코드 테이블을 확실히 생성할 수 있다. 본 발명은 허프만 코드 테이블을 지정하기 위해 필요한 비트 수를 상당히 저감시킬 수 있다.

Description

디지탈 정보신호 부호화 방법 및 장치
본 발명은 디지탈 정보신호를 효율적으로 부호화하는 방법 및 장치에 관한 것이다. 상기한 방법에서, 대표 심볼을 얻기 위해 정보신호가 샘플링되어 양자화되며, 그후, 이 대표 심볼은, 필요한 경우에는 부가적인 처리과정을 거친 후, 서로 다른 코드어(code word) 길이를 갖는 코드어들로 부호화된다.
예를 들어, 펜베이커(William P. Pennebaker) 및 미첼(Joan C. Mitchell)이 저술한 JPEG Still Image Compression Standard에 기재된 것과 같은 JPEG 표준에 따르면, 샘플링 및 양자화된 신호의 부호화를 위해 허프만 코드(Huffman code)로 불리는 코드를 사용하는 것이 알려져 있다. 허프만 코드는 임의의 가능한 코드어 길이를 갖는 코드어의 수를 정의함으로써 완전하게 지정될 수 있다. 상기 JPEG 표준은, 각각의 코드에 대해 고정된 심볼이 할당되는 고정 허프만 테이블이나, 심볼의 발생 빈도에 근거하여 코드표가 결정되는 적응 허프만 테이블(adaptive Huffman table)을 사용한다. 상기 JPEG 표준에 따르면, 적응 테이블의 경우에 각 코드어에 대한 대표 심볼 또한 전송된다. 허프만 부호화는, 가장 자주 발생하는 코드어에 가장 짧은 코드어 길이가 할당되는 경우에, 서로 다른 길이를 갖는 코드어에 대해 효율적인 부호화가 가능하다는 착상에 근거를 두고 있다.
상기 JPEG 표준에 따르면, 코드어는 1 내지 16의 길이를 갖고 각각의 코드어에는 대표 심볼이 할당되는데, 상기 대표 심볼은 0 내지 255의 범위를 갖는다.
상기 JPEG 표준에 따른 부호화는 특정한 용도에 대해 충분할 정도로 효율적이지는 않는데, 비교적 적은 양의 데이터에 대해 비교적 큰 수의 적응 허프만 테이블(adaptive Huffman table)을 전송하도록 요구되는 경우에 특히 비효율적이다.
결국, 본 발명의 목적은, 상기 JPEG 표준에서 규정된 허프만 코드를 사용하는 경우에 비해 더욱 효율적으로 허프만 테이블 내용에 관련된 데이터를 전송할 수 있도록 하는 방법 및 장치를 제공함에 있다.
이러한 목적을 달성하기 위해, 상기한 형태의 방법에 있어서, 본 발명의 제 1 실시예에 따르면, 양자화된 신호의 각각의 길이를 갖는 복수의 코드어만이 전송되고, 수신측에서는 디코더 내부에서 일정한 대표 심볼 n이 가장 짧은 코드에 할당되고, 점점 더 길이가 긴 코드어가 연속적인 대표 심볼에 할당된다. 상기한 제 1 실시예에 따르면, 본 발명은, 대표 심볼이 심볼값 n에 대해 대칭으로 놓이고 이 값을 기준으로 거의 단조감소한다고 가정하면, 가장 짧은 길이의 코드어를 갖는 대표 심볼이 가장 빈번하게 발생하고 가장 긴 길이의 코드어를 갖는 대표 심볼이 가장 드물게 발생하도록 하는 방식으로, 오디오 및 비디오 신호에 대한 대표 심볼은 일반적으로, 예를 들면 가우시언 분포에 따라 대칭적으로 분포된다는 사실에 근거를 두고 있다. 그러나, 실제의 대표 심볼이 전송되지 않는다는 사실에 기인한 오류를 배제하기 위해서는, 대표 심볼의 가능한 값 각각에 대해 코드어가 존재할 필요가 있다. 분포가 대칭적이라는 사실을 이용하기 때문에, 홀수의 대표 심볼의 경우에는 n이 아닌 각각의 대표 심볼에 사인 비트가 추가되어, 대표 심볼이 n보다 큰지 또는 n보다 작은지를 나타내는 것이 필요하다. 또한, 짝수의 대표 심볼의 경우에는 사인 비트가 대표 심볼 n에 할당된다.
본 발명의 제 2 실시예에 따르면, 상기 코드어에 부가하여, 전송된 신호에서 발생하는 가장 긴 길이를 갖는 코드어에 대한 정보가 전송된다. 상기 JPEG 표준에 따르면, 1∼16의 길이를 갖는 모든 코드어에 대한 값은 8비트의 수치에 의해 지정되는데, 이는 총 16 x 8 = 128비트의 테이블을 필요로 한다는 것을 의미한다.
발생된 가장 길이가 긴 코드 길이는 자주 16보다 훨씬 작다는 사실에 근거를 두면, 발생 빈도와, 그것에 덧붙여 실제 발생하는 코드어 길이에 대한 최대 코드어 길이를 전송하는 것만으로 더욱 효율적인 부호화 테이블을 얻을 수 있다. 예를 들어, 최대 코드어 길이 L = 5이고, 허용가능한 최대 길이가 16일 때, 부가적인 데이터 영역에 가장 길이가 긴 코드어 길이를 수용하기 위해서는 4비트를 필요로 한다. 길이 L을 갖는 코드어가 2L개 이상 결코 존재할 수 없기 때문에, 길이 L을 갖는 코드어의 개수를 규정하기 위해서는 단지 L 비트만이 필요하다. 본 발명에 따르면, L = 5인 경우에, 상기 테이블은 결국 4 + 1 + 2 + 3 + 4 + 5 = 19비트로 구성되는데, 이는 상기한 128비트와 비교할 때 획기적으로 향상된 것이다.
상기한 본 발명의 제 1 실시예와 제 2 실시예의 이점을 조합할 수 있다는 것은 명백하다.
본 발명의 제 3 실시예에 따르면, 상기 테이블을 지정하기 위해 필요한 비트 수와 실제 데이터를 부호화하는데 필요한 비트 수의 합계를 최소화함으로써, 본 발명의 상기 제 2 실시예에 따른 방법을 사용하여 더욱 더 효율적인 부호화를 달성할 수 있다. 할당된 최대 코드어 길이가 감소하는 경우에는, 그 코드의 효율이 최대 허용가능한 코드어 길이가 줄어듬에 따라 감소하기 때문에, 상기 테이블을 지정하는데 더 적은 비트가 필요하게 되지만, 데이터를 부호화하기 위해서는 더 큰 비트가 필요하게 된다. 허용가능한 코드어 길이를 단계적으로 감소시키는 동시에, 정보를 전송하는데 필요한 전체 비트수를 감시함으로써, 전송되어질 전체 비트수가 최소가 되는 최적의 코드어 길이를 찾을 수 있다.
서로 다른 대표 심볼이 소수 존재하는 경우에는, 예를 들어 7개의 대표 심볼이 존재하는 경우에는, 이와 같은 복수개의 대표 심볼을 더 큰 길이를 갖는 한 개의 심볼 또는 벡터로 그룹화하면 상기 허프만 부호화의 효율이 증가하는 것이 알려져 있다. 대표 심볼들을 포함하는 신호의 엔트로피(entropy)에 대한 1 비트/대표 심볼 내에서 허프만 코드의 효율이 보장되는데, 이는 적은 수의 대표 심볼의 경우에는 상기 허프만 코드가 비교적 효율적이지 않다는 것을 의미한다. 이러한 문제는 상기한 그룹화에 의해 해결된다.
대표 심볼들의 그룹이 사용되는 경우에는, 그것들의 출현 가능성에 근거한 그룹의 분류가 하나의 그룹을 구성하는 대표 심볼들의 확률에 의존하기 때문에, 효율을 증가시키는데 본 발명의 제 1 실시예에서 설명한 것과 같은 해결책은 사용될 수 없다.
본 발명의 제 4 실시예에 따르면, 상기한 문제점은 원래의 대표 심볼의 양자화 확률을 전송함으로써 해결된다. 각각의 대표 심볼이 발생하는 횟수를 결정하고 이 수치를 정보신호 내부의 전체 대표 심볼수로 나눔으로써 결정되는 확률은, 예를 들어, 32 레벨로 양자화될 수 있다.
홀수의 대표 심볼의 경우에 대표 심볼의 분포가 대칭으로, p(n + K) = p(n - K)(단, n = 중앙의 대표 심볼)가 될 때, 확률의 합은 1이 된다는 사실을 이용하면, 양자화 확률의 수치가 감소될 수 있다. 이에 따라, N개의 대표 심볼에 대해 ((N + 1)/2) -1개의 확률만이 전송되어야 한다. 예를 들어, N = 3인 대칭 분포에 대해서는, p(n+1) = p(n-1)이고 p(n-1) + p(n) + p(n+1) = 1이므로, p(n)만이 주어질 필요가 있다.
짝수의 N 대표 심볼의 경우에는, 위와 유사한 원리가 적용되어, N/2 -1개의 확률만이 전송될 필요가 있다.
상기한 원리에 따르면, 그룹화된 샘플에 대한 확률은 전송된 확률에 근거하여 인코더 및 디코더에서 동일한 알고리즘에 의해 계산된다. 이것은 개별적인 샘플들의 확률을 서로 곱함으로써 달성된다. 예를 들어, 그룹 (n,n,n+1)의 확률은 p(n,n,n+1) = p(n)·p(n)·p(n+1)로 계산된다. 그후, 이 벡터에 대해 허프만 코드가 생성되는데, 상기 인코더 및 디코더에 의해 사용되는 부호화는 명백하게 동일하다.
대표 심볼의 분포가 대칭인 경우에는, 대표 심볼수의 단지 절반만이 그룹화에 사용되는데, 이는 코드의 크기를 상당히 줄인다. 그룹 내부의 각각의 대표 심볼에 대해 사인 비트(sign bit)가 허프만 코드어에 부가되는데, 부가수의 대표 심볼의 경우에는 대표 심볼 n에 대해 어떠한 사인 비트도 할당할 필요가 없다.
인코더 및 디코더가 동일한 허프만 코드 생성방법을 사용하는 한, 허프만 부호화를 일으키는 어떠한 방법도 사용될 수 있다. JPEG 형태의 허프만 코드를 사용하는 경우에는, 발생된 가장 긴 코드어 길이를 단순한 방법으로 제한하는 것이 바람직하다.
대표 심볼 각각의 발생 확률이 상기한 방식으로 전송되는 경우에는, 연산 부호화와 같은 여타의 가변길이 부호화방법을 사용할 수 있는데, 이러한 경우에는, 대표 심볼들의 그룹을 형성할 필요가 없다.
본 발명에 따른 정보신호의 부호화 방법은, 신호를 복수의 서브밴드로 분할하고 부호화 정보의 전송을 위해 복수의 서브밴드 또는 서브밴드의 조합을 상기한 기술에 의해 코드화하는 디지탈 오디오 전송시스템에서 사용하는데 특히 적합하다. 이것은, 서브밴드(의 조합)에 있는 대표 심볼의 개수가, 예를 들어, 3, 5 또는 7과 같이 작으면, 인코더 및 디코더 내부에서 동일한 부호화 테이블이 생성될 수 있도록 하기 위해 심볼 각각의 발생 확률이 전송되어, 대표 심볼들의 그룹화가 가능하게 된다는 것을 의미한다. 만일, 서브밴드(의 조합) 내부의 대표 심볼의 개수가 이것보다 더 크면, 예를 들어, 9보다 더 크면, 각각의 길이를 갖는 코드어의 수에 대한 정보의 배타적 전송이 사용되어, 각각의 코드어는 한 개의 대표 심볼과 연관되고, 필요한 경우에는, 발생된 가장 길이가 긴 코드에 대한 정보와 함께 한 개의 대표 심볼과 연관된다.
본 발명의 제 5 실시예에 따르면, 허프만 테이블의 적응 빈도가 높은 경우, 즉, 예를 들어, 오디오 및 비디오 신호의 경우에서와 같이, 테이블들이 단위시간당 큰 횟수로 적용되는 동시에, 전송되어질 정보신호 내부의 다수의 대표 심볼이 모든 또는 거의 모든 허용가능한 대표 심볼들을 포함하는 경우에는, 효율적인 적응 허프만 부호화가 제공된다.
이와 같은 본 발명의 실시예에 따르면, 각각의 가능한 대표 심볼에 대해 관련된 허프만 코드의 길이만이 전송된다. 실제의 허프만 코드어는 후술하는 바와 같은 명확한 방식으로 이러한 정보로부터 도출될 수 있다. 이것은, 첫째로 인코더 및 디코더 양자에서 유사한 심볼들의 목록이 사용가능하며 허프만 코드어 길이가 이 목록의 시퀀스 내부로 전송되는 한편, 둘째로 이러한 코드어 길이로부터 도출된 허프만 코드어가 소정의 방식으로 심볼들에게 할당되는 것을 요구한다. 본 발명의 처음 4가지 실시예와는 대조적으로, 이러한 본 발명의 제 5 실시예는 전송되어질 신호 내부의 심볼들의 발생 확률에 관한 어떠한 가정에도 근거를 두지 않는다.
이하, 본 발명을 첨부도면을 참조하여 보다 상세히 설명한다. 도면에서:
도 1a∼도 1d는 본 발명의 제 1, 제 2 및 제 5 실시예에 따른 허프만 부호화의 예를 나타낸 것이고,
도 2는 본 발명에 따른 부호화를 사용하는 디지탈 오디오 신호 전송시스템의 블록도이고,
도 3a 및 도 3b는 전송될 비트의 수를 최소화하는 방법을 나타낸 도면이고,
도 4는 코드 테이블 정보의 비트수를 감소시키는 방법을 나타낸 흐름도이다.
이하의 실시예는 7개의 대표 심볼, 즉 샘플값 0∼6으로 표시되는 샘플링 및 양자화된 신호에 근거한다. 인코더는 한 개의 신호 프레임 또는 한 개의 서브 프레임일 수 있는 전송되어질 신호 블록 내의 이들 7개의 대표 심볼 각각의 발생 확률을 결정하고, 이것에 근거하여, 특히 상기한 JPEG Still Image Compression Standard에 기술된 것과 같은 공지된 허프만 부호화 원리에 따라 가변 길이의 코드어를 이들 대표 심볼 각각에 할당한다.
도 1a는 일련의 대표 심볼들과 이 대표 심볼들에 할당된 코드어를 일례로 나타낸 것이다. 도 1a로부터 명백한 것 같이, 길이 2를 갖는 한 개의 코드어와, 길이 3을 갖는 2개의 코드어와 길이 4를 갖는 4개의 코드어가 존재한다. 본 발명에 따르면, 발생된 가장 긴 길이, 이 경우에는 길이 4를 갖는 코드어에 대한 정보가 전송된다. 허용가능한 최대 길이가 16인 경우에는, 이 정보는 0 1 0 0으로 표시될 수 있다. 그후, 각각의 길이를 갖는 코드어 수에 대한 정보가 전송되는데, 길이 L은 최대 L 비트를 필요로 한다. 본 실시예에서는, 이들 코드는 결국 다음과 같다: 0; 01; 010; 0100. 최종적으로, 실제 대표 심볼에 대한 코드가 전송된다. 대표 심볼 시리즈 1-0-0-2-4-6-0-1을 예로 들면, 도 1a에 따라 이들 심볼 시리즈에 대한 비트 시리즈는 다음과 같다: 010-00-00-011-1001-1011-00-010. 전송되는 전체 비트 스트림을 도 1b에 나타내었다.
이러한 수신된 비트 스트림에 근거하여, 디코더는 먼저 최대 코드어 길이가 4인 것과 어떤 대표 심볼이 어떤 코드어에 속하는지를 결정한다. 이것은 JPEG에 따른 허프만 부호화가 코드어를 명백하게 정의하기 때문에 가능한데, 즉, 연속적인 대표 심볼에 대한 일정한 길이(L)의 코드어는 이진 카운팅에 의해 정의되고, 그 길이가 1비트 더 긴 (L+1)을 갖는 코드어로 변경되면, 길이 L을 갖는 현존하는 코드어는 먼저 1만큼 이진수로 증분된 후, 최소유효비트에 인접하도록 0이 삽입된 다음, 동일한 길이를 갖는 다음 코드에 대해 이진 카운팅이 진행된다. 이러한 원리를 도 1a의 표에 나타내었다.
도 1c는 어떤 코드어가 어떤 대표 심볼에 속하는가를 디코더가 판정하는 방법을 나타낸 개략도이다. 이에 따라, 디코더는 도 1b에 나타낸 것 같은 수신된 코드화된 대표 심볼에 근거하여 원래의 대표 심볼 시리즈를 도출할 수 있다.
도 1d는 도 1a의 예에 대해 본 발명의 제 5 실시예에 따라 허프만 코드에 대한 정보가 전송되는 방법을 나타낸 것이다. 가능한 각각의 심볼에 대해 관련된 허프만 코드의 길이만이 전송된다. 도 1d에는, 상기한 것과 동일한 대표 심볼을 좌측 열에 다시 표시하였고, 도 1d에 따른 예의 허프만 코드어를 중앙 열에 나타내었으며, 전송된 정보를 우측 열에 나타내었다. L 비트의 최대 길이를 갖는 n개의 가능한 코드어인 경우에, Lxn 비트가 전송되어야 한다.
JPEG 표준에 따른 종래의 전송에 대해서는, 예를 들어, 256 개의 심볼인 경우에 비트의 수는 각각의 길이를 갖는 코드어의 개수에 관한 정보에 대해 필요한 비트의 수, 예를 들면 y 비트에, 각각의 코드어에 관련된 심볼을 지정하기 위한 256 x 8비트를 더한 것과 같다. 따라서, 총 (256 x 8) + y 비트가 된다.
본 발명의 제 5 실시예에 따른 방법에서는, 최대 길이 16을 갖는 허프만 코드어의 경우에 256 x 4 비트만이 필요하여, 이것은 4비트(길이 0은 발생하지 않는다), 즉, 상기한 JPEG 표준에 따라 요구되는 비트의 수의 절반보다 작은 수에 의해 부호화될 수 있다.
본 발명의 제 5 실시예에 따른 방법의 경우에, 디코더는 허프만 코드와 그것의 코드어 길이 사이의 유일한 관계 따라 각각의 심볼과 관련된 허프만 코드어의 계산에 대한 기초로서 코드어 길이의 히스토그램을 산출한다. 그러나, 필요한 경우에는, 이 히스토그램은 인코더에서 산출될 수도 있으며, 상기 히스토그램 정보는 효율적으로 디코더에 전송될 수 있다. 이러한 사항은, 예를 들어 표준 JPEG 방법에 따라 달성될 수도 있으나, 본 발명의 제 1 실시예 및/또는 제 2 실시예에 따른 방법에 의해서도 달성될 수 있다. 본 발명의 제 4 실시예에 따른 최적화 방법을 사용하는 것도 가능하다.
상기 코드어 길이를 지정하기 위해 몇가지 형태의 엔트로피 부호화를 사용하고, 일반적으로 길이가 긴 코드어는 길이가 짧은 코드어보다 더 빈번하게 나타난다는 사실을 이용함으로써, 효율을 더욱 더 증가시킬 수 있다. 이러한 엔트로피 부호화는 고정적이거나 적응성을 가질 수 있다.
또한, 가능한 심볼 모두가 사용되지 않는 경우에는, 먼저 실제로 사용된 심볼에 대한 정보를 디코더로 전송한 다음, 이들 대표 심볼에 대한 코드어 길이만을 전송하는 것도 가능하다.
최종적으로, 본 발명의 제 5 실시예에 따라 코드어 길이를 전송하는 것 이외에, 본 발명의 제 1 실시예 및/또는 제 2 실시예에 따른 허프만 코드의 전송을 사용하는 것도 가능한데, 이때에는, 2가지 기술 중에서 어떤 것이 허프만 코드어 정보의 전송을 위해 선택되었는지를 디코더에 표시하기 위해 여분의 비트가 사용된다.
도 2는 비트 스트림으로서 디지탈 오디오 신호를 전송하기 위한 장치에 대한 개략적 블록구성도를 나타낸 것으로, 상기 비트 스트림은 디지탈 오디오 신호가 수신기에서 재구성될 수 있도록 하는 최소 수의 비트를 포함한다.
도 2에서, 서브밴드 필터 뱅크(1)는 샘플링되고 양자화된 디지탈 오디오 신호를 수신하여, 공지된 방법에 따라 이것을 예를 들면 64개의 서브밴드로 분할한다. 서브밴드들 각각은 복수의 서브 프레임으로 분할되는데, 각각의 서브 프레임은 24개의 심볼 표시를 포함한다. 복수, 예를 들면, 3개의 서브 프레임이 한 개의 프레임을 구성한다. 양자화 유니트(2)에서는, 서브밴드 각각의 서브 프레임들이 일정한 수의 대표 심볼, 예를 들면, -215∼215의 심볼들로 양자화된다. 이러한 양자화는 상기 필터 뱅크(1)에 인가된 신호의 양자화에 사용된 것보다 더 크다.
가변길이 부호화 유니트(3)는 동일한 수의 대표 심볼을 갖는 모든 서브 프레임으로 이루어진 모든 서브밴드를 결합한다. 이것은 이들 모든 서브밴드들에 대한 확률밀도함수가 동일하다고 가정했기 때문에 허용될 수 있는 것이다. 동일하고 일정한 수의 대표 심볼을 갖는 각각의 조합에 대해, 대표 심볼들 각각의 발생 확률이 계산된다. 이것은 대표 심볼들 각각의 개수를 계수하고, 이 수치를 대표 심볼의 총수로 단순히 나눔으로써 달성된다. 대표 심볼들의 확률 분포가 대칭이라고 가정했기 때문에, p(n+K) = p(n-K)가 되며, 이때, n은 중앙의 대표 심볼을 나타낸다. 대표 심볼의 개수가 작은 경우, 예를 들어, 3, 5 또는 7인 경우에는, 각각의 대표 심볼에 대한 확률값이 전송되고, 인코더 및 디코더 모두는 이들 수치에 근거하여 동일한 가변길이 부호화 테이블, 예를 들면 허프만 부호화 테이블을 규정한다. 허프만 부호화가 사용되는 경우에, 대표 심볼들은 먼저 그룹, 예를 들면 3개의 대표 심볼로 이루어진 그룹으로 배열되고, 후술하는 것과 같이 각각의 그룹에 개별적인 허프만 코드가 할당된다. 그후, 허프만 부호화의 경우에는, 각각의 그룹에 대한 코드, 또는 대표 심볼 각각에 대한 코드가 전송되고, 수신기에서 디코더는 이들 코드로부터 실제의 대표 심볼을 도출한다.
상기 대표 심볼 (그룹)과, 인코더 및 디코더에서 동일한 부호화(복호화) 테이블을 생성하는데 필요한 확률에 관한 정보를 전송하는데 필요한 비트의 전체수가 상시 검사되고, 상기 대표 심볼들에 대해 고정된 길이의 코드어가 선택되었을 때 필요한 비트의 수와 비교된다. 만일, 고정길이 부호화가 가변길이 부호화보다 더 적은 수의 비트를 필요로 하면, 전자의 부호화가 사용된다. 일정한 수의 대표 심볼에 대해 샘플의 수가 적어, 테이블 내용이 비교적 큰 수의 부가 비트를 필요로 하는 경우에 이와 같은 상황이 발생할 수 있다.
대표 심볼의 수가 큰 경우, 예를 들어, 9 또는 그 이상인 경우에, 가변길이 부호화 유니트(4)는 본 발명의 제 1 실시예 및/또는 제 2 실시예에 따른 허프만 부호화를 사용하는데, 이 경우에는 각각의 길이를 갖는 코드어의 개수 만이 전송되거나, 및/또는 가장 길이가 긴 코드어 길이를 갖는 코드어가 전송된다. 이 기술은, 가장 길이가 긴 코드어 길이를 감소시키는 과정과, 이것이 코드 테이블 정보와 대표 심볼이 표시하는 실제 코드를 전송하는데 필요한 비트의 전체 수의 감소를 일으키는지 여부를 시험하는 과정과 결합될 수 있다.
도 3a 및 도 3b는 이것을 실현하기 위해 수행되는 단계를 나타낸 흐름도이다.
이러한 과정에 대한 입력 변수들은 다음과 같다: BITS = 필요한 비트의 총수, N DATA = 코드어의 총수, MAX_CUR_LEN = 현재 코드어의 최대 길이.
블록 11에서, 비트의 총수를 계수하고, 타겟 코드어 길이(TARGET_LEN)를 MAX_CUR_LEN - 1과 같게 한다. 판정 블록 12에서는, 2TARGET_LENN DATA인지를 확인한다. 만일, 상기 사항이 성립하지 않는 경우에는, 추가적인 코드어 길이의 감소가 불가능하며, 블록 13에서 처리과정이 종료된다. 상기 요구사항을 만족하는 경우에는, 가장 큰 수의 비트를 갖는 코드어 길이가 도 3b에 도시된 것 같은 부 처리과정 adjust_BITS를 사용하여 블록 14에서 1만큼 감소된다.
상기한 adjust_BITS 처리과정은 JPEG 표준에서 소정 길이보다 큰 길이를 갖는 코드가 존재하지 않는다는 것을 확인하기 위해 사용되는 처리과정의 변형이다. 이러한 처리과정은 ISO-DIS 10918-1의 부록 A에 기술되어 있다.
블록 21에서, MAX_CUR_LEN이 1로 설정된다. 판정 블록 22에서는, I 비트 코드어가 존재하는지 여부가 확인되고, 만일 존재하지 않는 경우에는 블록 22'에서 I가 I=I-1로 되며, 블록 23에서 I = TARGET_LEN인지 여부가 판정되어, yes인 경우에는 블록 23에서 상기 adjust_BITS 처리과정이 종료하고, no인 경우에는, 프로그램이 블록 22로 복귀한다.
I 비트의 코드어가 존재하는 경우에는, 블록 25에서 J = I-1이 되고, 블록 26에서 J = J-1로 된다. 판정 블록 27에서는, J-비트 코드어가 존재하는지 여부가 판정된다. 그러한 코드어가 존재하지 않는 경우에, 프로그램은 상기 블록 26으로 복귀하고, 그러한 코드어가 존재하는 경우에는, 블록 28에 나타낸 변경이 수행된다. 이것의 결과로써, 항상 쌍으로 나타나는 가장 큰 길이(I)를 갖는 코드어는 쌍을 이루어 제거되고, 2개의 더 짧은 코드어로 교체된다. 이러한 과정이 완료된 후, I = TARGET_LEN이 될 때까지 루프가 반복된다.
더구나, 상기 블록 14에서는 GAIN이 결정되는데, 즉, 코드어 감소 이전의 비트수가 이와 같은 감소과정을 겪은 후의 비트수, 즉, TOT_BITS - CUR_BITS로 줄어든다. 블록 15에서 GAIN ≤ 0인 것으로 밝혀지면, 상기 처리과정은 블록 16 및 17에서 종료되고, 이러한 경우가 아니면, 블록 18을 거쳐 루프가 반복된다.
또한, 이 경우에, 부호화 정보를 전송하는데 사용된 기술에 무관하게, 고정길이 코드어로의 부호화를 사용하는 것이 더 효율적인지 여부를 확인하여, 더 효율적이면, 허프만 부호화를 사용하지 않는다.
허프만 부호화가 선택된 경우에는, 서로 다른 개수의 대표 심볼에 대한 허프만 코드를 조합함으로써 코드 테이블 정보에 대해 필요한 비트의 전체수를 감소시키는 것이 시도될 수도 있다. 예를 들어, 5개의 대표 심볼에 대한 테이블을 사용하여 3개의 대표 심볼을 부호화할 수 있는데, 이것은 비효율적이기는 하지만, 2개의 부호화 정보 테이블 대신에 단지 한 개의 부호화 정보 테이블을 전송할 수 있도록 한다.
도 4는 상기한 목적을 위해 적합한 처리과정 OPTIMIZE_N에 대한 흐름도이다.
이러한 처리과정에 대한 입력 변수는 다음과 같이 각각의 허프만 코드에 대한 레벨 히스토그램이다: N = 허프만 코드의 총수, MAX_N = 코드의 소정의 허용가능한 최대값.
블록 31에서, MG는 GET_MAX_GAIN과 같아진다. 상기한 GET_MAX_GAIN 서브루틴에서는, 다수의 레벨과 그 다음의 더 높은 레벨에 대한 허프만 코드의 조합에 의해 얻어지는 이득이 결정되고, 이러한 조합에 의해 선택된 비트 내에서 가장 높은 이득이 생성된다. 판정 블록 32에서는, MG ≥ 0인지 여부, 또는 N MAX_N인지 여부가 판정된다. 상기 2가지 조건 중 하나가 충족하지 않으면, 상기 처리과정은 블록 33에서 중단된다. N MAX_A가 성립하는 한, MG ≤ 0이면 상기 처리과정이 진행될 수 있기 때문에, N MAX_N?의 비교가 성취된다. MG ≥ 0이거나, N MAX_N이면, 블록 34에서 선택된 히스토그램의 조합이 달성되고 N = N-1이 된다. 만일, 블록 35에서 N≤ 인 것인 것으로 밝혀지면, 상기 처리과정은 블록 33에서 종결되는 반면에, N 1이면, 루프가 다시 반복된다.
본 발명은, 오디오 및 비디오 부호화 시스템에서 볼 수 있는, 예를 들면, 메모리가 없으며 유사한 확률밀도함수를 갖는 심볼 발생원과 같은 대표 심볼 발생원의 프레임에 근거한 부호화에 특히 적합하다.

Claims (13)

  1. 대표 심볼을 얻기 위해 정보신호를 샘플링 및 양자화한 후, 대표 심볼을 서로 다른 코드어 길이를 갖는 코드어로 부호화하고, 대표 심볼 각각에 대한 발생 확률을 결정하여, 소정의 부호화 기술에 따라 높은 발생 확률을 갖는 대표 심볼에는 짧은 길이의 코드어를 할당하고 낮은 발생 확률을 갖는 대표 심볼에는 보다 큰 길이의 코드어를 할당하는, 정보신호 블록의 부호화 방법에 있어서,
    정보신호 블록 내부의 서로 다른 대표 심볼 수가 소정수보다 크거나 같으면 제 1 형태의 부호화 정보신호 블록을 생성하고, 상기 수치가 소정수보다 작으면 제 2 형태의 부호화 정보신호 블록을 생성하는 것을 특징으로 하는 부호화 방법.
  2. 제 1 항에 있어서,
    상기 제 1 형태의 부호화 정보신호 블록은 현존하는 허용가능한 길이 각각의 코드어 수에 대한 정보와 부호화 대표 심볼이 나타내는 코드어에 대한 정보로 형성되는 것을 특징으로 하는 부호화 방법.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 제 1 형태의 부호화 정보신호 블록은 상기 부호화 정보신호 블록 내부에 존재하는 가장 길이가 긴 코드어의 길이에 대한 정보를 포함하는 것을 특징으로 하는 부호화 방법.
  4. 제 1 항, 제 2 항 또는 제 3 항에 있어서,
    짝수의 대표 심볼인 경우에는, 사인 비트가 코드어 각각에 할당되고, 홀수의 대표 심볼인 경우에는 중앙의 대표 심볼을 나타내는 코드어를 제외한 코드어 각각에 대해 사인 비트가 할당되는 것을 특징으로 하는 부호화 방법.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 제 1 형태의 부호화 정보신호 블록은 각각의 대표 심볼과 관련된 코드어의 길이에 대한 정보로 구성되는 것을 특징으로 하는 부호화 방법.
  6. 제 2 항, 제 3 항, 제 4 항 또는 제 5 항에 있어서,
    상기 제 1 형태의 부호화 정보신호 블록에서 나타난 최대 코드어 길이를 단계적으로 감소시켜, 이것이 부호화 정보신호 블록 내부에 존재하는 비트의 총 수를 감소시키는지 여부를 상시 확인하고, 비트수의 상당한 감소가 더 이상 얻어지지 않는 경우에는 최대 코드어 길이의 감소를 종료하는 것을 특징으로 하는 부호화 방법.
  7. 제 1 항에 있어서,
    각각의 대표 심볼에 대해 상기 발생확률이 결정되고, 상기 부호화 정보신호 블록 또한 이들 확률을 포함하는 것을 특징으로 하는 부호화 방법.
  8. 제 7 항에 있어서,
    상기 대표 심볼들은 허프만 부호화 기술에 의해 부호화되고, 복수의 대표 심볼들이 한 개의 길이가 더 긴 심볼로 그룹화되어, 이 길이가 더 긴 심볼이 부호화되는 것을 특징으로 하는 부호화 방법.
  9. 대표 심볼을 얻기 위해 정보신호 블록을 샘플링 및 양자화하는 수단과, 대표 심볼 각각의 발생 확률을 결정하는 수단과, 서로 다른 대표 심볼에 대해 가변 길이를 갖고 대표 심볼 블록으로 결합되는 코드를 생성하는 수단을 구비한, 부호화 정보신호 블록 형성장치에 있어서,
    정보신호 블록 내부의 서로 다른 대표 심볼의 수를 결정하는 수단과,
    상기 수치가 소정수보다 크거나 같은 경우, 제 1 형태의 부호화 정보신호 블록을 생성하는 수단과,
    상기 수치가 소정수보다 작은 경우, 제 2 형태의 부호화 정보신호 블록을 생성하는 수단을 더 구비한 것을 특징으로 하는 부호화 정보신호 블록 형성장치.
  10. 제 9 항에 있어서,
    상기 제 1 형태의 부호화 정보신호 블록은 부호화 정보신호 블록 내부에 존재하는 허용가능한 길이 각각의 코드어 수에 대한 정보를 포함하는 것을 특징으로 하는 부호화 정보신호 블록 형성장치.
  11. 제 9 항 또는 제 10 항에 있어서,
    상기 제 1 형태의 부호화 정보신호 블록은 부호화 정보신호 블록 내부에 존재하는 코드어의 가장 큰 길이에 대한 정보를 포함하는 것을 특징으로 하는 부호화 정보신호 블록 형성장치.
  12. 제 9 항 내지 제 11 항 중 어느 한 항에 있어서,
    상기 제 1 형태의 부호화 정보신호 블록은 각각의 대표 심볼과 관련된 코드어의 가장 큰 길이에 대한 정보를 포함하는 것을 특징으로 하는 부호화 정보신호 블록 형성장치.
  13. 제 9 항에 있어서,
    상기 제 2 형태의 부호화 정보신호 블록은 대표 심볼들 각각의 발생 확률에 대한 정보를 포함하고, 상기 대표 심볼들은 소정수의 대표 심볼들로 이루어진 부호화 그룹으로 그룹화되는 것을 특징으로 하는 부호화 정보신호 블록 형성장치.
KR1019970708104A 1996-03-15 1997-03-03 디지탈정보신호부호화방법및장치 KR100489908B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EP96200729 1996-03-15
EP96200729.3 1996-03-15
EP96200729.0 1996-03-15
EP96203651 1996-12-20
EP96203651.3 1996-12-20

Publications (2)

Publication Number Publication Date
KR19990014761A true KR19990014761A (ko) 1999-02-25
KR100489908B1 KR100489908B1 (ko) 2005-10-19

Family

ID=26142611

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970708104A KR100489908B1 (ko) 1996-03-15 1997-03-03 디지탈정보신호부호화방법및장치

Country Status (8)

Country Link
US (1) US6157326A (ko)
EP (1) EP0826275B1 (ko)
JP (1) JP3816957B2 (ko)
KR (1) KR100489908B1 (ko)
CN (1) CN1126268C (ko)
BR (1) BR9702155A (ko)
DE (1) DE69726661T2 (ko)
WO (1) WO1997035383A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100987029B1 (ko) * 2008-08-20 2010-10-11 연세대학교 산학협력단 순서 관계에 기반하는 무작위 데이터의 이진 표현 방법과 그 장치, 무작위 데이터의 부호화 방법 및 그 장치, 및 상기 부호화 방법을 구현하는 프로그램이 기록된 기록매체

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69723959T2 (de) * 1996-11-11 2004-06-17 Koninklijke Philips Electronics N.V. Datenkompression und -dekompression durch rice-kodierer/-dekodierer
JP2000286717A (ja) * 1999-03-30 2000-10-13 Matsushita Electric Ind Co Ltd デコード装置
IT1308456B1 (it) * 1999-04-26 2001-12-17 Olivetti Lexikon Spa Dispositivo per comprimere/decomprimere stringhe di bit
US6859563B2 (en) * 2001-03-30 2005-02-22 Ricoh Co., Ltd. Method and apparatus for decoding information using late contexts
ES2730953T3 (es) * 2002-04-26 2019-11-13 Ntt Docomo Inc Método de decodificación de señal, dispositivo de decodificación de señal, y programa de decodificación de señal
WO2006020934A2 (en) * 2004-08-13 2006-02-23 Conexant Systems, Inc. Systems and methods for decreasing latency in a digital transmission system
US20060218459A1 (en) * 2004-08-13 2006-09-28 David Hedberg Coding systems and methods
US7256719B2 (en) * 2005-03-23 2007-08-14 International Business Machines Corporation Digital data decompression implemented in a field programmable array device
JP4497029B2 (ja) * 2005-06-10 2010-07-07 沖電気工業株式会社 データ符号化装置,およびデータ符号化方法
CN101043625B (zh) * 2006-03-23 2010-10-20 国际商业机器公司 用于高速解压缩数字数据的装置和方法
CN101483778B (zh) * 2009-01-19 2012-05-09 威盛电子股份有限公司 用以译码数据位流的译码方法与装置
JP4758494B2 (ja) * 2009-04-21 2011-08-31 インターナショナル・ビジネス・マシーンズ・コーポレーション ビット長を符号に変換する回路及び方法
WO2010133763A1 (en) * 2009-05-19 2010-11-25 Nokia Corporation Method for variable length coding and apparatus
US8321326B2 (en) 2009-09-15 2012-11-27 Auerbach Group Llc Method and system for enhancing the efficiency of a digitally communicated data exchange
US9532059B2 (en) 2010-10-05 2016-12-27 Google Technology Holdings LLC Method and apparatus for spatial scalability for video coding
US9172967B2 (en) 2010-10-05 2015-10-27 Google Technology Holdings LLC Coding and decoding utilizing adaptive context model selection with zigzag scan
US8938001B1 (en) 2011-04-05 2015-01-20 Google Inc. Apparatus and method for coding using combinations
US8989256B2 (en) 2011-05-25 2015-03-24 Google Inc. Method and apparatus for using segmentation-based coding of prediction information
US8891616B1 (en) 2011-07-27 2014-11-18 Google Inc. Method and apparatus for entropy encoding based on encoding cost
US9247257B1 (en) 2011-11-30 2016-01-26 Google Inc. Segmentation based entropy encoding and decoding
US9094681B1 (en) 2012-02-28 2015-07-28 Google Inc. Adaptive segmentation
US11039138B1 (en) 2012-03-08 2021-06-15 Google Llc Adaptive coding of prediction modes using probability distributions
US9774856B1 (en) 2012-07-02 2017-09-26 Google Inc. Adaptive stochastic entropy coding
US9380298B1 (en) 2012-08-10 2016-06-28 Google Inc. Object-based intra-prediction
US9509998B1 (en) 2013-04-04 2016-11-29 Google Inc. Conditional predictive multi-symbol run-length coding
US9392288B2 (en) 2013-10-17 2016-07-12 Google Inc. Video coding using scatter-based scan tables
US9179151B2 (en) 2013-10-18 2015-11-03 Google Inc. Spatial proximity context entropy coding
GB2523348B (en) * 2014-02-20 2016-03-30 Gurulogic Microsystems Oy Encoder, decoder and method
US20170064321A1 (en) * 2015-08-27 2017-03-02 Stmicroelectronics International N.V. System and method for decoding a video digital data stream using a table of range values and probable symbols
CN106357275B (zh) * 2016-08-30 2019-12-17 国网冀北电力有限公司信息通信分公司 一种哈夫曼压缩方法及装置
CN114882297B (zh) * 2022-07-06 2022-09-20 山东水发达丰再生资源有限公司 一种废金属挤压分选数据分类存储方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4546342A (en) * 1983-12-14 1985-10-08 Digital Recording Research Limited Partnership Data compression method and apparatus
FR2627337B1 (fr) * 1988-02-17 1990-06-08 Thomson Csf Procede de codage et procede de decodage a longueur variable, dispositif de codage et dispositif de decodage pour la mise en oeuvre de ce proced
US5045852A (en) * 1990-03-30 1991-09-03 International Business Machines Corporation Dynamic model selection during data compression
US5227789A (en) * 1991-09-30 1993-07-13 Eastman Kodak Company Modified huffman encode/decode system with simplified decoding for imaging systems
JP2697479B2 (ja) * 1992-04-17 1998-01-14 国際電信電話株式会社 可逆可変長符号化方式
JP3076462B2 (ja) * 1992-11-09 2000-08-14 松下電器産業株式会社 デジタル・ビデオ・コーダ用のバーサタイルな可変長コーダ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100987029B1 (ko) * 2008-08-20 2010-10-11 연세대학교 산학협력단 순서 관계에 기반하는 무작위 데이터의 이진 표현 방법과 그 장치, 무작위 데이터의 부호화 방법 및 그 장치, 및 상기 부호화 방법을 구현하는 프로그램이 기록된 기록매체

Also Published As

Publication number Publication date
KR100489908B1 (ko) 2005-10-19
BR9702155A (pt) 1999-07-20
EP0826275B1 (en) 2003-12-10
CN1126268C (zh) 2003-10-29
JP2002515201A (ja) 2002-05-21
DE69726661D1 (de) 2004-01-22
CN1193427A (zh) 1998-09-16
JP3816957B2 (ja) 2006-08-30
WO1997035383A1 (en) 1997-09-25
DE69726661T2 (de) 2004-09-30
EP0826275A1 (en) 1998-03-04
US6157326A (en) 2000-12-05

Similar Documents

Publication Publication Date Title
KR100489908B1 (ko) 디지탈정보신호부호화방법및장치
EP0405572B1 (en) Voice coding/decoding system
EP2267698B1 (en) Entropy coding by adapting coding between level and run-length/level modes.
EP0616471B1 (en) Coding of digital signals
EP0448802A2 (en) Dynamic model selection during data compression
KR101226566B1 (ko) 심볼을 인코딩하기 위한 방법, 심볼을 디코딩하기 위한 방법, 송신기로부터 수신기로 심볼을 전송하기 위한 방법, 인코더, 디코더 및 송신기로부터 수신기로 심볼을 전송하기 위한 시스템
US7302005B2 (en) Efficient coding of side information in a lossless encoder
KR101171697B1 (ko) 정수-값 데이터의 스트림을 압축하는 시스템 및 방법
US8046236B2 (en) Apparatus and method for producing a data stream and apparatus and method for reading a data stream
US5594435A (en) Permutation-based data compression
KR102400514B1 (ko) 디지털 데이터 압축을 위한 방법 및 디바이스
US6529551B1 (en) Data efficient quantization table for a digital video signal processor
JP2005516455A (ja) ディジタル情報信号のデータ圧縮及び伸長
EP1359755B1 (en) A coded information signal
JPH0728500A (ja) 音声符号器及び音声復号器

Legal Events

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

Payment date: 20120430

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20130425

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee