KR100261923B1 - 벡터양자화와 런랭스 엔코딩을 사용하고 적합한 런랭스 엔코딩을 사용하는 데이터를 엔코딩하기 위한 방법 및 장치 - Google Patents

벡터양자화와 런랭스 엔코딩을 사용하고 적합한 런랭스 엔코딩을 사용하는 데이터를 엔코딩하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR100261923B1
KR100261923B1 KR1019930702566A KR930702566A KR100261923B1 KR 100261923 B1 KR100261923 B1 KR 100261923B1 KR 1019930702566 A KR1019930702566 A KR 1019930702566A KR 930702566 A KR930702566 A KR 930702566A KR 100261923 B1 KR100261923 B1 KR 100261923B1
Authority
KR
South Korea
Prior art keywords
signal
encoding
decoding
coefficients
component
Prior art date
Application number
KR1019930702566A
Other languages
English (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 존티. 프레스톤
Application granted granted Critical
Publication of KR100261923B1 publication Critical patent/KR100261923B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/008Vector quantisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/42Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
    • G06V10/421Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation by analysing segments intersecting the pattern
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/93Run-length coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/94Vector quantisation
    • 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
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)

Abstract

위치 신호의 제1성분에 있어서, 제1성분내의 일반적으로 기대되는 선택된 계수의 유형에 관해서 상대적으로 높은 효율성을 갖는 방법에 의해 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계(1318); 및 위치 신호의 제2성분에 있어서, 제2성분내의 일반적으로 기대되는 선택된 계수의 유형에 관해서 상대적으로 높은 효율성을 갖는 방법에 의해 선택된 계수의 위치를 부호화하는 단계(1322)를 포함하는 정보를 부호화하는 방법. 예를 들어, 런랜스인코딩이 각각에 있어서 사용되는(1436) 상이한 코드북을 가지고 두가지 성분들에 있어서 사용될 수 있다. 달리는, 벡터 양자화가 다른 성분에 사용되는 (1322) 런랭스 인코딩(레벨 또는 복합된 코드북을 가지고)을 가지고 하나의 성분에 대해서 사용될 수 있다(1318).

Description

[발명의 명칭]
벡터 양자화와 런랭스 에코딩을 사용하고 적합한 런랭스 엔코딩을 사용하는 데이터를 엔코딩하기 위한 방법 및 장치
[발명의 상세한 설명]
본 발명은 신호처리 분야에 관한 것으로, 더욱 상세하게는 데이터 엔코딩 및 그 데이터를 압축하는 것에 관한 것이다. 특히, 본 발명은 코드북이 있거나 없는 상태에서, 또는 벡터 양자화 및 런랭스(runlength) 코딩(coding)을 사용하고 적합한 코드북과 함께하는 런랭스를 사용하는 데이터를 엔코딩 및 압축을 하는 하는 방법 및 장치에 관한 것이다. 주요 데이터는 1차, 2 차, 3 차 또는 그 이상의 차원안에 있을 수 있으나, 가장 실질적인 사용은 2 차 및 3차원 데이터에 적용될 것이다. 본 발명은 텔리비젼, 비디오 전화; 신문 전신 전송; 의학용 영상화; 위성 사진-영상화 및 많은 다른 영상 응용들을 포함한 영상(image) 처리의 분야에서 실질적인 응용을 갖는다. 본 발명은 또한 비디오 처리 시스템, 고체 모델링 및 기상학적 및 지리학적 지도와 같은 3 차원 데이터 처리에 응용을 갖는다.
[발명의 배경]
영상 처리에 있어서, 예를 들어 2 차원에 있는 한 영상의 공간적인 표현은 전형적으로 다른 데이터 공간내에서 그 영상을 재현하기 위한 신호로 변환된다. 이러한 변환을 위한 이유들 중의 하나는 영상을 적절히 표현하기 위해 필요한 디지털 데이터의 양을 압축하거나 최소화하기 위한 것이다. 필요한 데이터의 감소는 영상을 저장하기에 필요한 메모리(memory)를 감소시킬 뿐만 아니라, 데이터가 고정된 대역폭 통신 채널(channels)을 따라 통신되는 속도를 증가시킨다. 이어지는 배경 언급의 대부분은 본 출원에서 참고로 인용된 월리스, 지(wallace, G.)의 저명한 논문[the JPEC still picture compression standard, "communiations of the ACM, April, 1991, pp. 33-43]으로부터 이끌어진다.
2 차원 그레이스케일(grayscale) 영상의 기본 경우에서, 영상의 2 차원을 가로질러 연속적인(공간 및 크기에서) 그레이스케일의 강도는 각각이 전형적으로 고정된 양자화 레벨의 한 세트(set)로부터 선택된 별개의 강도를 갖는 별개 화소들의 배열로 전환된다. 전형적인 디지털 256 강도 레벨로 각각이 양자화된(레벨은 여덟 개의 디지털 신호 비트(bit)에 의해 표현될 수 있다) n1 × n2(예를 들어, 512 ×512) 화소의 배열로 만들어 졌다. 각각의 레벨은 통상, 가장 어두운 레벨에 해당하는 0 및 가장 밝은 레벨에 해당하는 255 인 정수에 의해 표시된다
영상의 샘플링은 많은 기술에 따라 행해질 수 있다. 한 기초 기술은 영상을 가로지른 n1 위치 및 영상 아래로의 n2 열의 각각에서 강도를 측정하기 위하여 전체 그레이스케일 강도레벨을 256레벨로 단순히 나누고, 실제의 측정된 강도에 가장 가까운 256 레벨들의 하나를 배열안의 화소 각각에 할당하는 것이다.
샘플링의 결과는 0 내지 255의 크기를 가지는 n1 × n2 정수의 배열에 의해 표현될 수 있는 디지털 영상이다. 기술적으로, 영상을 전송하는 것은 한 흐름 내에서 데이터를 차례로 간단히 전달할 수 있다. 그러나, 이러한 처리는 막대한 양의 데이터(화소당 8 비트)의 전송을 필요로 할 것이다. 영상의 상당한 부분이 서로 유사하면서 관련된 화소들에 의해 나타내진다는 것은 이미 공지된 것이다. 데이터 요구에 있어서의 상당한 절감은 많은 영상에서 일어나는 여분(redundancy)을 이용하는 공지된 기술에 의해 달성될 수 있다
공지된 기술은 공간영역, 즉 강도 크기가 n1 및 n2의 차원인 공간 위치에 관련 되어있는 영역으로부터 공간 주파수 영역과 같은 또다른 영역의 영상을 변환하는 것이다. 공간 주파수 영역에서,영상은 공간 주파수의 크기에 의해 표현된다. 공간 주파수는 하나의 화소로부터 수평 또는 수직 차원(또는 그것들의 결합)을 따라 다음 화소까지의 강도 변화 정도에 관련된 것으로 여겨질 수 있다. 예를 들어, 흑색으로부터 백색까지 번갈아 변하는 특정 나비의 수직 바(bar)의 영상은 한 세트(set)의 공간 주파수로 특정지어질 것이다.
더욱 좁은 바를 가진 유사한 영상에 있어서는 한 세트의 공간 주파수는 하나의 화소로 부터 다음 화소로 더욱 높은 주파수 변화를 나타내는 것으로 다르다. 유사하게 또한 수직 차원에서의 변동은 유사한 변화를 일으킨다. 주파수 영역과 같은 다른 영역으로 공간의 영상을 변환시키는 코팅 기술은 일반적으로 "변환(transform)" 코딩 기술이라고 언급된다.
전형적인 변환 코딩 기술은 개별 코사인 변환 기술또는 DCT로서 공지되어 있다. 상기 이름은 코사인 함수가 공간적으로 연속적 신호라기 보다는 공간에서 분리된 신호 요소들에 적용되는 사실로부터 유래된다.
DCT 압축은, 개략적으로 제1도에서 도시된 n1 및 n2에 있는 원래의 영상(104)의 t 개의 총 샘플 블록(1021),(1022),(1023)………(102n),…(102t)의 흐름을 압축하는 것으로 생각될 수 있다. 각각의 블록(102n)은 연속된 화소(106)의 배열로 이루어져 있다. 전형적인 블록 크기는, 총 64화소 경우, 8 x 8화소 블록이다. 제1도에 보여진 경우에 있어서, t = 4,096이다.
제2도는, 예를 들어 그레이스케일 크기와 같은 단일 성분에 관한 DCT 와 같은 변환 코딩 기술의 필수적인 단계를 보여준다. 각각의 8 × 8 블록(102n)은 인코더(120)로 입력된다. 데이터는 DCT 오퍼레이터(122)로 보내진다. DCT(122)에서,변환 함수는 다음의 잘 공지된 관계에 따라서 각각의 블록(102n) 내의 데이터에 적용된다. :
상기식에서,이다.
상기 표현에서, F(k1, k2)는 변수 k1 및 k2에서 변환된 함이고, f(n1, n2)는 공간 차원의n1및 n2함수로서 블록(102n) 내의 원래 함수의 크기 형식이다.
DCT(122)는 조파 분석기(harmonic analyzer), 즉 입력 신호의 주파수 성분을 분석하는 성분으로서 여겨질 수 있다. 각각의 8 × 8 블록(102n)은 효과적으로 두 개의 공간 차원 n1 및 n2의 함수인 64개 포인트(point) 개별 신호이다. DCT(122)는 상기 신호를 각각의 "공간 스펙트럼(spectrum)"을 포함하는 64개의 독특한 2차원(2-D) "공간 주파수" 들의 하나를 포함하는 64 개의 직교 기초 신호들로 분해한다.
DCT(122)의 출력은 본 명세서에서 "변환 블록(transform block)" 으로 언급되고, 특별한 64개 포인트(point) 입력 신호, 즉 블록(102n) 내의 강도 패턴인 입력신호 포인트 64에 독특하게 결정되는 값인 64개 기초-신호 크기 또는 "DCT 계수"의 세트이다 DCT 변환이 본 명세서에서 설명의 모적으로 사용되지만, 서브-밴드(sub-band) 변환을 포함하는 다른 변환이 적용될 수 있고 본 발명과 연계하여 이용될 수 있을 것이다.
DCT 계수값은 그러므로 64 개 포인트 입력 신호(102n) 내에 담겨진 2-D 공간주파수의 상대적 량으로 간주될 수 있다. 두 개의 차원 n1및 n2내에서 제로(zero) 주파수를 갖는 계수는"DC 계수" 라 불려지고, 나머지 63 개 계수는 "AC 계수" 라고 불린다
실험에 의하면 전형적인 영상(104)의 경우, 화소로부터 화소까지의 샘플값이 전형적으로 영상을 가로질러 느리게 변화하고 있음이 나타난다. 그러므로, 데이터 압축은 상기 느린 공간 변동에 해당하는 보다 낮은 공간 주파수로 이용가능한 디지털 신호의 비트를 할당함으로써 가능하다. 전형적인 소스 블록(source block)(102n)에 있어서, 많은 공간 주파수는 제로 또는 제로에 가까운 크기를 가지며, 부호화 될 필요가 없다. DCT 에 의해 블록(102n)을 변화시킨 결과인, 변환 블록(112n)의 전형적인 도표 표현인 계략적으로 제3 도에 보여진 것처럼 비-제로 진폭계수는 흰색에 의해 표시되며, 제로진폭계수는 음영에 의해 표시된다. 소스 주변에 중심을 둔 작은 어둡게 된 영역(114)은 커다란 흰 지역(116)으로 둘러싸여진다. 이러한 타입의 패턴은 전형적으로 모든 8 × 8 블록에서 발생한다.
DCT(122)에서의 변환 후, 몇가지 다른 런(operations)이 양자화기(quantizer)(124) 및 인코더(126)에서 발생하며, 이러한 런은 하기에 좀더 상세히 설명된다.이코더가 충분히 이해되기 위해서, 지금 이러한 런들은 언급하는 것이 적절하다. 기본적으로, 이러한 런은 DCT 로 부터의 변환된 신호 F(k1, k2)출력을 추가로 변환하고, 부호화한다. DCT 인코더(120)로 부터,상기 신호는 통신 채널을 거쳐 통신되거나 저장되고, 또는 다르게 처리된다. 궁극적으로 압축된 영상 데이터는 DCT 디코더(130)에 입력되며, 이 디코더(130)는 디코더(136), 비양자화기(dequantizer)(134) 및 역DCT("IDCT")(132)를 포함한다. 비양자화기(134) 및 디코더(136)는, 각각, 인코더(126) 및 양자하기(124)에 의한 효과를 역으로 만든다. 따라서 비양자화기(134)의 출력은 변환된 데이터 공간 (k1, k2) 안의 함수이고, 전형적으로 또한 8 × 8 블록 형태이다. IDCT(132)에서, 역 변환은 각각의 변환 블록내의 데이터에 적용된다. 변환은 상기한 선행 변환쪽의 효과를 원상태로 돌리도록 설계되었고, 그것의 특징은 본 분야의 보통의 숙련자에게 잘 공지되어 있다.
IDCT 의 출력은 기초 신호들을 합함으로써 만들어진, n1및 n2의 공간 차원의8 × 8 영상 신호의 재구성이다. 수학적으로 DCT는 영상 및 주파수 영역 사이의 64개 값들의 1 대 1 매핑(mapping)이다. DCT 및 IDCT 가 완벽한 정확도에 의해 계산될 수 있고, DCT 계수가 양자기(124) 안에서 처럼 양자화되지 않는다면 ( 및 추후 비양자화되면), 원래의 64 개 포인트 신호(102n)는 정확히 환원될 수 있을 것이다. 이론상, 상기 DCT 는 소스 영상 샘플들에 어떤 손실도 주지 않는다, 그것은 단지 샘플들을 보다 효과적으로 부호화될 수 있는(encoded) 영역으로 변환시킨다.
코팅 처리인 엔코딩 단계의 설명으로 돌아가서, DCT(122)로 부터의 출력후에, 이러한 경우, 64 개 DCT 계수들의 각각은 양자화, 또는 재구성 레벨 표를 참조하여 양자화된다. 양자화의 한가지 목적으로 중요하지 않은 정보를 버리는 것이다. 양자화의 또 다른 목적은,만약 양자화가 이용되지 않았을 경우에 발생되는 무한개의 비트의 필요를 미연에 방지하는 것이다. 양자화에서 각각의 계수는 양자화 표 안의 기재사항(entry)에 비교되고 ,실제계수에 가장 가까운 기재사항으로 대체된다. 단지 설명을 목적으로 일정한 길이의 코드워드(codewords)가 사용된다고 가정하고, 8비트가 사용된다면, 각각의 계수는 256 양자화 또는 재구성 레벨의 가장 가까운 것으로 양자화 될 수 있다, 7비트만이 사용된다면, 128재조합 레벨만이 이용가능하다. 그러나, 전형적으로 코드워드는 일정한 길이가 되지 않을 것이다.
양자화기(124)의 출력은 레표준화될 수 있다. 비양자화기(134)에서, 어떤 표준화의 효과는 역전된다. 비양자기로 부터의 출력은 양자화기(124)에 의해 사용된 양자화 표에 보여진 양자화된 값들이다.
특별한 신호 처리 업무의 목적이 가시적(visible) 인공물이 없이 가능한한 많은 영상을 압축하는 것이라면, 양자화 표에서의 각각의 단계 크기는 상응하는 코사인 기초 함수의 가시적 기여에 대하서 지각의 한계 또는 "정확히 알 수 있는 차이"로서 이상적으로 선택되어야만 한다. 이러한 한계는 또한 소스 영상 특성, 디스플레이(display) 특성 및 시계 거리의 함수이다. 이러한 변수들이 합리적으로 한정될 수 있는 응용에 있어서, 사이코비쥬얼(psychovisual) 실험이 최고의 한계를 결정하기 위해 실행될 수 있다. 양자화는 다수대 하나의 맵핑이고, 그러므로 그것은 근본적으로 손실이 있다. 그것은 DCT-기초 인코더내에서 손실의 중요한 원인이다.
양자화 후에, 본 발명의 목적을 위해서, DC계수는 전형적으로 63 AC 계수 들로부터 분리되게 처리된다. 또한 DC 성분은 다른 계수과 함께 고려될 수 있다. DC계수는 64 개 상 견본들의 평균값을 측정한 것이다. 인접한 광원 블로(102n)의 DC 계수들 사이에는 보통 강한 상호 연관이 있기 때문에 양자화 된 DC 계수는 전형적으로 엔코딩 순서에서 앞서의 변환 블록의 DC 조건으로 부터의 차이로서 엔코딩된다. 블록(102n)의 엔코딩 순서는 전형적으로 최종 열의 마지막 블록에 도착할 때까지, 블록의 열(row) 끝에서 한 불록 위로 움직이는 등의 n1방향을 따라서 복잡한 경로가 된다. 이것은 제1도의 경로 S에 의해 나타내어진다. 다른 블록을 엔코딩하는 순서는 예를 들어, 수직의 복잡한 유형, 또는 일반적으로 두 축에 대해 45˚각도로 연장되어 점층적으로 긴 행로를 갖는 복잡한 유형과 같은 것이 가능하다. DC 계수의 미분처리는 DC 값들 사이의 차이가 DC 값들 자체보다 더 적은 에너지를 차지하기 때문에 이로우며, 그래서, DC 값들 자체를 기호화하기 보다는 차이를 기호화하는데 필요한 비트기 더 적다.
DC 계수가 기호화된 후, AC 계수 세트는 전형적으로 제4 도에 보여진 것 처럼 지그-재그(zig-zag) 유형으로 순서가 정해진다. 이러한 순서는, k1및 k2차원에서, 낮은 공간 주파수 성분들을 가지고 시작하고, 더욱 높은 주파수 성분으로 진행한다. 언급된 바와 같이, 변환된 상은 전형적으로 상대적으로 많은 작은 크기의 고주파수 성분 및 상대적으로 많은 큰 크기의 저주파수 성분에 의해 특징지어진다. 이러한 지그-재그 순서는 크고 작은 크기 계수의 변환된 영역에서 위치의 코딩을 이행하기 위해 런랭스 엔코딩의 경우에 도움이 된다.
전형적으로 계수 크기는 기준치(threshold)와 비교된다. 기준치 이상에서는 크기는 코드화되기 위해 선택된다. 기준치 아래에서는 크기는 코드화 되기 위해 선택되지 않고 제로(0)로 놓여진다. 검토를 목적으로, 기준치 위해서 크기를 갖는 계수들이 "선택된" 계수 또는 비-제로(0) 진폭을 갖는 것으로 언급되는 반면에, 기준치 아래에서 진폭을 갖는 계수들을 "비-선택된" 계수들 및 때로는 제로(0) 진폭을 갖는 계수로 언급된다. 그러나, 소위 많은 제로 크기 계수들은 적은 비-제로 크기를 갖는 것이 이해된다.
많은 계수들이 선택되지 않기 때문에, 63 개 AC 계수들의 정보가 선택되어짐을 확인함으로써 정보위치를 기호화하는 것이 보다 효율적이고, 64 개 공간 주파수 각각의 계수 값을 디지털 방식으로 코딩하기 보다는, 양자화된 계수의 값을 기호화하는 것이 보다. 상기 계수는 변환된 영역에 의해 한정된 정해진 세트에서 각각의 위치에 의해 확인된다. 계수들이 비-제로로 되도록 코드화하는 기술이 두가지가 알려져 있다. 하나의 기술은 "런랭스 코딩"으로 언급되고, 다른 하나는 "벡터-양자화" 로 언급된다. 벡터-양자화가 단지 변환된 영역의 차원의 배열에 고유한 순서를 이용하는 반면에, 런랭스 엔코딩은 지그-재그 유형에 의해 계수에 부과된 순서를 이용한다.
런랭스 엔코딩에 따라서, 선택된 계수를 갖는 지그-재그 경로를 따른 위치들을,앞서 선택된 계수와 관련된 그들의 위치에 근거하여 지정된다. 제5도에 보여진 것처럼, 변환된 블록(112n)에서, 6개의 AC 계수가 선택된다. 이것들은, DC 계수를 세지고, 지그-재그 경로를 따라, 제2, 제5, 제16, 제17, 제24, 및 제50번째이다. 이것을 코드화하는 하나의 방법은, 선택된 계수의 양자화된 크기를 나타내는 코드명의 흐름을 따라, 선택된 계수( 및 선택된 계수의 위치)들 사이의 비-선택된 계수들의 수를 나타내는 디지털 코드명을 전달하여야 한다.
예를 들어, 제5도에서, 선택된 계수들 사이의 비-선택된 계수의 수를 나타내는 중간의 코드 문자열은 1, 2, 10, 0, 6, 15, 23(또는, 보다 전형적으로, "블록의 끝")이 될 것이다. 광원으로서 DC 계수를 가지고 시작하는 첫 번째로 선택된 계수(문자열에서 두 번째)는 하나이다. 첫번째 선택된 계수 및 두 번째 선택된 계수(문자열에서 다섯 번째) 사이의 비-선택된 계수들 사이에 끼는 수는 두 개이다. 제2및 제3 번째(제16 번째) 사이의 수는 열이다. 제3 및 제4 번째(제17 번째) 사이의 수는 0 이며, 기타 최종 선택된 계수후에, 23 개의 비- 선택된 계수는 블록의 끝 이전에 발생한다. 코드명 "23"을 가진 23 개 비-선택된 계수의 이러한 작동을 나타내는 것은 가능하다.
다른 방법에 의하면, 및 보다 효과적으로, 계수의 나머지(6 번째의 선택된 계수)가 비-선택 되었음을 나타내기 위해, 특별한 코드명이 블록의 끝에 할당된다. (비-선택된 계수들 사이에 끼는 수를 계산하기 보다는, 또 다른 방법이 다음의 선택된 계수의 위치를 지정할 수 있다. 두가지 방법은 기본적으로 같은 것에 상당한다). 이러한 중간 코드 문자열(1, 2, 10, 0, 6, 15, 블록의 끝)은, 각각의 런랭스에 있어서 2 진수로 코딩함으로써 전형적으로 단순히, 다지탈 방식으로 표현되어야만 한다. 가장 짧은 가능한 런랭스는 0이고, 가장 긴 가능한 런랭스는 63이며, 그럼으로써, 가장 단순한 계획에 따라서, 6 비트가 각각의 작동 길이를 지정하기에 필요하다. 각각의 런랭스를 지정하기 위해 변할 수 있는 가변길이 코드명을 사용하는 다른 계획은 "엔트로피(entropy)" 코딩으로 공지되어 있고, 아래에 논의되어 있다.
선행의 코딩만이 지그-재그 경로를 따라 선택된 계수들의 위치를 위해 코드화한다. 또한 그것은 계수들의 크기를 코드화하기 위해 필요하다. (본 발명만이 위치 정보를 코딩하는 것에 본질적으로 관련되어 있다.) 전형적으로, 선태된 계수들의 위치를 나타내는 정보는 전달되어야만 하는 자료의 절반이상을 차지한다. 언급된 바와 같이. 예를 들어 상기 토론된 일정한 코드명의 특별한 경우에, 계수의 진폭은 논의된 경우와 같이 일정한 단어 길이인 8 비트의 코드 명으로 양자화 되었다. 그러므로, 하나의 기술에 따라서, 보내져야 하는 제1코드명이 선택된 계수의 위치( 및 양)에 대해서 코드화 된 것이라면, 코드명이 제2흐름이 크기를 위해 보내질 수 있다. 그러므로, 가장 기본적인 방법으로. 제5 도에 보여진 실시예에 있어서, 그것은 13 개의 전체 코드명 중에서 위치에 관한 7 개의 코드명("블록의 끝" 에 관한 하나를 포함하면서) 및 크기에 관한 6 개의 코드명을 보내는 것이 필요할 것이다.
엔트로피 코딩에서, 어떤 런랭스가 길이에 의존한 변화에 의해 일어난다는 확률은 전형적인 영상에 있는 그 사실을 인식함으로서 이득을 얻을 수 있다. 예를 들어, 62 의 작동은 매우 보편적이고, 비-선택된 모든 다른 계수들과 함께, 제1위치내에서 하나의 선택된 계수를 나타낸다. 유사하게는, 다른 긴 작동은 33 과 같은 적당한 길이의 작동보다 훨씬 가능하다. 선택된 계수들은 지그-재그 유형의 시작에서 밀집되는 경향이 있기 때문에, 제로, 하나 및 둘과 같은 매우 짧은 길이의 작동은 또한 매우 적당하다. 그러므로, 엔트로피 코딩에서, 측정은 이러한 런랭스의 경우에서의 어떤 값이 기호화 되기에 바람직한 값인지의 확률을 만들게 하고, 값은 가장 높은 것에서 낮은 것까지 확률에 따라 순서가 정해진다. 다음에, 한 세트의 코드명(또한 "코드북" 으로 공지된)은 다른 길이(비트의 수)의 코드명으로부터 발생된다. 가장 짧은 길이를 갖는 코드명은 가장 높은 확률의 런랭스에 할당되고, 더욱 긴 길이의 코드명은 더욱 작은 확률의 런랭스에 할당된다. 그러므로 대부분의 가능한 작동은 가장 짧은 코드명을 가지고 지정되기 때문에, 전형적으로 일련의 작동을 지정하기 위해 더욱 적은 비트를 가질 것이다
엔트로피 또는 변할 수 있는 길이 코드명 코딩의 한가지 복잡성은 코드명이 모두같은 길이가 아니라는 사실로부터 생겨난다. 복호기는 "1' 및 '0' 들의 흐름에서 하나의 코드명이 끝나고, 다음 코드명이 시작되는 때를 표시하는 몇가지 방법을 가지고 있어야만 한다. 모든 코드명이 같은 길이를 가질 때, 복호기는 단순히 고중된 수의 비트의 끝에서 코드명을 분석하기 시작한다. 변할 수 있는 길이 코딩에 대한 몇가지 기술이 실행된다. 전형적인 것은 허프만 코딩(Huffman coding) 및 산수 코딩(arithmetic coding)이다. 허프만 코딩은 림, 제이 에스.(Lim. J. S)의 이차원 신호 및 상 처리(Two-Dimensional signal and Image Processing), 프렌티스 홀(Prentice Hall), 잉글우드 클리프(Englewood Cliffs), 뉴 저지(Newjersey)(1990), PP613-616, 및 허프만, 디 에이(Huffman, D. A.), "최소 여분 코드의 조합에 관한 방법(method for the construction of minimun redundancy codes), "진행 IRE(Proceedings IRE), vol.40, 1962, pp 1098-1101 에 상세히 기술되어 있고, 상기의 두가지는 참조로 여기서 구체화 된다. 산수 코딩은 페네베이커, 더블 유.비.(Pennebaker, W.B) 미첼, 제이. 엘.(Mitchell, J L.등의 "산수 코딩 논문(Arithmetic coding articles)", *IBM J Res. Dev. 32, 6 특별 토론(1988년 11월), 717-774 에 기술되어 있고, 참조로 여기서 구체화된다. 허프만 코딩만이 여기서 개략적으로 기술된다.
허프만 코딩 계획에 따라서, 코드북은 비트의 흐름이 분석되어지도록 만들어지고 코드명이 완결되었을 때 명백하게 된다. 예를 들어, 전형적인 비트의 흐름은 100011011101011111 일 것이다. 코드의 이런 흐름이 조합되는 코드북이 제66 도에 개략적으로 보여진다. 설명을 목적으로, 이 코드북은 단지 6개의 기재사항을 포함하면서 매우 작다. 그러나 등록된 코드명이 이러한 코드북에 있어서 전체 코드명 세트임이 이해되어야만 한다. 즉 1, 111 또는 10중에 어떤 것도 명백한 코드명이 아니다. 그러므로, 왼쪽에서 오른쪽으로 비트의 문자열을 분석하면서, 제1비트는 "1" 이고 이것은 코드명이 아니다. "10"을 갖기 위해 다음 비트를 결합하는 것은 아직도 명백한 코드명이 아니다. 다음 비트를 결하바는 것은 "100"을 생성하고, 이것은 1 의 런랭스를 나타내는 명백한 코드명이다. 다시 한전 시작하면서, 다음 비트는 "0" 이고 이것은 명백한 코드명이며, 0 의 런랭스를 나타낸다. 다시 한번 시작하면서, 다음 비트는 1 이고, 이것은 명백한 코드명이 아니며, "11"을 만드는 다른 1 이 뒤따르며, 여전히 명백한 코드명이 아니다. 다음의 "0"을 추가하는 것은 "110", 길이 2 의 작동에 관한 코드명을 만든다. 문자열의 나머지에 동일한 과정을 적용하는 것은 런랭스의 순서가 1, 0, 2, 4, 3, 5 이었음을 보여준다.
허프만 코딩의 이용은 매우 드문 런랭스에 해당하는 매우 긴 길이의 코드명을 가져온다 그러나, 표가 적절히 만들어진다면 번번히 짧은 코드명의 사용을 가져올 것이다. 허프만 코딩은 다양한 런랭스의 확률이 공지되고, 또는 최소한 몇가지 합리적인 확실성에서 측정되어야만 함을 필요로 한다. 또한 코드북의 저장 및 부호기(126) 및 복호기(136)에 의해서 허프만 코딩에의 접근을 필요로 하며, 제6a도에 보여진 바와 같이, 코드북이 단순히 작동길이의 디지탈표현이라면, 필요하지 않게 될 것이다 그러한 종류의 코팅 계획을 사용하기위해 부호기 및 복호기에 관한 명령을 제공하기 위해 여전히 필요하기는 하지만, 그자체에 대한 코드북은 필요하지 않다.
선택된 계수들의 위치를 엔코딩하는 런랭스 방법의 분석은 런랭스가 길 때 매우 효과적이고, 몇 개의 계수들의 위치를 지정하기 위해 유일하게 필요하다는 사실을 나타낸다. 그러나, 런랭스가 짧을 때는, 위치 및 크기가 많은 값들로 지정되어야만 하기 때문에, 상대적으로 많은 계수들의 위치를 지정하는 것이 필요하고, 런랭스 엔코딩은 매우 효과적이지는 않다.
추가적으로, 8 × 8 블록과 같은 커다란 블록에 있어서, 30번째 성분에서의 시작과 비교하여, 확실한 작동이 제2계수에서 시작할 것이라는 확률에서 커다란 차이가 있다. 예를 들어, 34 보다 더 긴 어떤 작동이 30 번째 계수 상에서 시작할 것이라는 확률은 0 이지만, 전형적인 허프만 코딩은 이것을 고려하지 않고 블록의 낮은 주파수 영역에 가가운 계수에서 시작할 가장 높은 확률을 갖는 그러한 작동 길이에 더 짧은 코드명을 할당하지 않는다.
선택된 계수들의 위치를 엔코딩하는 또다른 방법이 또한 이용된다. 이 방법 은 작동-길이 코딩과 연게하여 사용되지 않는다. 이방법은, 그것이 2차원 백터로 제5 도에 보여진 변환 블록(112n)의 표현을 처리하기 때문에, "벡터 양자화(vector quantization)" 로 공지 되어 있다. 선택된 계수들의 위치사이의 차이를 지정하기보다는 벡터 양자화는 선택된 계수들의 유형을 지정한다. 각각의 가능한 유형은 단일 코드명이 주어진다. 실제유형은 유형들의 목록에 일치하고, 코드명이 전달된다.
예를 들어, 제7a 도에 보여진것처럼, 선택된 계수들의 유형은 제5 도에 보여진 유형과는 상이하다. 유사하게, 제7b 도에서의 유형은 두 가지로부터 다르다. 8 × 8 블록에 있어서, 매우 많은 수인 264또는 대략 1.8 × 1019의 상이한 유형들이 잇다. 제8 도에 개략적으로 보여진 바와 같이, 코드북 내의 가능한 유형들의 모드를 지정하기, 및 64비트 코드명을 264유형의 각각에 할당하기는 번거롭지만 그것은 가능하다 그러므로, 기호화된 유형들을 전달하는 것은 런랭스 코딩을 사용하는 유형을 지정하기에 전형적으로 필요한 몇개의 코드명들 보다는, 이러한 64 비트 코드명의 경우에, 하나의 코드명을 전달할 필요만이 있다. 얼마나 많은 선택된 계수들이 있는가에 관계없이, 그들의 유형을 지정하기 위해 전달된 하나의, 코드명, 즉 그들의 위치만이 있을 것이다. 이것은, 그 계수의 진폭이 비- 제로 인지 아닌지를 단지 나타내기 위해, 계수에 하나의 비트를 주는 것에 상응하는 방법이다. 코드북은 저장되고, 부호기(126) 및 복호기(136) 모두에 접근할 수 있어야만 한다. 코드북을 저장하기 위해 필요한 메모리는 매우 크고, 각각의 유형을 기호화하기에 필요한 높은 비트 수 및 많은 유형의 수가 주어진다.
런랭스 코딩의 경우와 같이, 보다 전형적으로, 제8도에 개략적으로 보여진 일정한 코드명 길이 북 보다는 변할 수 있는 길이 코드명 코드북을 사용하는 것이 가능하다. 그러한 경우에, 상이한 유형들의 확률이 결정되거나 측정되고, 가장 높은 확률의 유형이 최소한의 비트를 사용하는 코드명을 받는다. 그러므로 일정한 길이 코드명 시스템의 64 비트, 또는 런랭스 엔코딩에 의해 필요한 수 보다는, 매우 가능성있는 유형들을 지정하기 위해, 단 몇 개의 코드명이 보내져야만 한다. 몇몇 가능한 비트의 문자열은 확실한 코드명이 될 수 없음과, 변할 수 있는 길이들의 코드명들 사이의 경게를 지정하기 위한 필요 때문에, 최소한의 가능한 유형들에 관한 코드명이 64 비트 이상으로 많은 것이, 예를 들어 160 만큼의 필요할 것임이 또한 이해될 수 있을 것이다.
그러므로, 벡터 양자화가 대부분 유형의 매우 유효한 코딩을 가져올 수 있기도 하지만, 모든 유형들을 기호화하는 능력을 갖기 위해 생성되고 저장되는 매우 큰 표를 필요로 하고, 즉, 상기 장치가 매우 큰 기억 용량 및 모든 상황에 실행 할 수 없는 계산 능력을 필요로 한다. 8 × 8 계수들을 몇 개의 부분으로 분할하는 것이 가능하지만, 블록을 영역들로 나누는 것은 영역들 사이의 상호관계를 활용하는 것을 어렵게 만들기 때문에 효율성의 손실을 가져온다.
그러므로, 본 발명의 몇가지 목적은, 선택된 계수들의, 변환 계수들 같은, 블록 안의 위치를 포함하는, 일-차원 및 다-차원 신호들을 엔코딩하기 위한 방법 및 장치를 포함하며, 코드명의 저장을 위해 과도하게 높은 메모리를 필요로 하지않고, 상대적으로 적은 비트 전송 속도의 코드명을 쉽게 하고; 작동계수를 시작시키는 위치에 따라서 같은 런랭스에 상이한 코드명을 할당하기가 쉬우며; 런랭스 엔코딩보다 계수당 사용되는 비트의 면에서 훨씬 효과적이고; 벡터 양자화 보다도 적은 기억의 사용 및 적은 계산을 필요로 하며; 및 본 발명은 간단히 이행될 수 있다.
[발명의 간단한 설명]
구체적으로, 본 발명의 방법은 최소한 일차원에서 순서가 정해진 한 세트의 선택된 계수들의 위치로 특징지어진 광원 위치 신호에 해당하는 위치 정보를 코드화하는 방법으로서, 광원 신호의 타입에 관해서 상기위치 신호내에서 선택된 계수들의 일반적으로 기대되는 유형이 있으며, 상기 방법은 : 상기 위치 신호의 제1성분에 있어서, 상기 제1성분내의 선택된 계수들의 일반적으로 기대되는 유형에 관해서 상대적으로 높은 효율성을 갖는 방법에 의해서 상기 선택된 계수들의 위치를 코드화하는 시호를 생성하는 단계; 및 상기 위치 신호의 제2성분에 있어서, 상기 제2성분 내의 선택된 계수들의 일반적으로 기대되는 유형에 관해서 상대적으로 높은 효율성을 갖는 방법에 의해서 상기 선택된 계수들의 위치를 코드화하는 단계를 포함한다
제2의 구체적인 본 발명의 방법은 최소한 일차원에서 순서가 정해진 한 세트의 선택된 계수들의 위치로 특징 지어진 광원 위치 신호에 해당하는 위치 정보를 코드화하는 방법이고, 상기 방법은; 런랭스 엔코딩에 의해 상기 선택된 계수들의 위치를 코드화하는 신호를 생성 시키는 단계를 포함하고, 상기 방법은 " 상기 위치 신호의 제1작동 부분에 있어서, 제1코드북을 사용하는 상기 선택된 계수들의 위치를 코드화하는 신호를 생성하는 단계; 및, 상기 위치 신호의 적어도 하나의 추가 부분에 있어서, 적어도 하나의 추가된 코드북을 사용하는 상기 선택된 계수의 위치를 코드화하는 신호를 생성하는 단계를 포함한다.
제3 의 구체적인 본 발명의 방법은 최소한 일차원에서 순서가 정해진 한세트의 선택된 계수들의 위치로 특징지어진 광원 위치를 코드화하는 시호를 디코딩히는 방법이고, 상기 엔코딩신호는; 상기 엔코딩 신호의 제1성분에 있어서, 벡터 양자화에 의한 상기 선택된 계수들의 위치를 코드화하는 신호를 생성하는 단계; 및, 상기 위치 신호의 제2성분에 있어서, 런랭스 엔코딩에 의해 상기 선택된 계수들의 위치를 코드화하는 신호를 생성하는 단계에 의해 생성되고; 상기 디코딩 방법은 : 런랭스 엔코딩에 의해 생성된 게수들의 위치를 코드화하는 상기 신호를 디코딩하는 단계; 및 벡터 양자화에 의해 생성된 상기 선택된 계수들의 위치를 코드화하는 상기 신호를 디코딩하는 단계를 포함한다.
제4 의 구체적인 본 발명의 방법은 최소한 일차원에서 순서가 정해진 한 세트의 선택된 계수들의 위치로 특징지어진 광원 위치 시호를 코드화하는 방법이고, 상기 방법은 : 상기 위치 신호의 제1성분에 있어서, 벡터 양자화에 의한 상기 선택된 계수들의 위치를 코드화하는 신호를 생성하는 단계; 및 상기 위치 신호의 제2성분에 있어서 런랭스 엔코딩에 의한 상기 선택된 계수들의 위치를 코드화하는 신호를 생성하는 단계를 포함한다.
구체적인 본 발명의 장치는 최소한 일차원에서 순서가 정해진 한 세트의 선택된 계수들의 위치로 특징지어진 광원 위치 신호에 해당하는 정보를 코드화하는 장치이고, 상기장치는 : 상기 선택된 계수들의 위치를 코드화하기 위한 런랭스 엔코더; 및 상기 런랭스 엔코더에 연결된 : 상기 위치 신호의 제1작동 부분에서 상기 선택된 계수들의 위치를 코드화하기 위한 제1코드북 메모리; 및 상기 위치신호의 적어도 하나의 추가된 작동 부분에서 상기 선택된 계수들의 위치를 코드화 하기 위한 적어도 하나의 추가된 코드북 메모리를 포함한다.
제2의 구체적인 본 발명의 장치는 최소한 일차원에서 순서가 정해진 한 세트의 선택된 계수들의 위치로 특징지어진 광원 위치 신호에 해당하는 정보를 코드화하기 위한 장치이고 상기 장치는 : 상기 위치 신호의 제1성분에서 상기 선택된 계수들의 위치를 코드화하기 위한 벡터 양자화기; 및 상기위치 신호의 제2성분에서 상기 선택된 계수들의 위치를 코드화하기 위한 런랭스 엔코더를 포함한다.
제3 의 구체적인 본 발명의 장치는 최소한 일차원에서 순서가 정해진 한세트의 선택된 계수들의 위치로 특정지어진 광원 신호를 코드화하는 신호를 디코딩 하기 위한 장치이고, 상기 엔코딩 신호는 : 상기 위치 신호의 제1성분에 있어서, 벡터 양자화에 의한 상기 선택된 계수들의 위치를 코드화하는 단계; 및 상기 위치 신호의 제2성분에 있어서, 런랭스 엔코딩에 의한 상기 선택된 계수들의 위치를 코드화하는 단계에 의해 생성되고; 상기 디코딩 장치는 : 런랭스 엔코딩에 의해 생성된 상기 선택된 계수들의 위치를 코드화하는 상기 신호를 디코딩하기 위한 수단; 및 벡터 양자화에 의해 생성된 상기 선택된 계수들의 위치를 코드화하는 상기 신호를 디코딩하기 위한수단을 포함한다.
[도면의 간단한 설명]
제1도는 2 차원 상이 화소의 블록으로 견본되어진 경로, 및 블록이 순서가 정해진 경로를 개략적으로 나타낸다.
제2도는 2차원 광원 상을 디지털 방식으로 코드화하는, 및 제조합된 상을 생성하기 위해 코드화된 자료를 디코딩하기 위한 선행 기술의 장치를 개략적으로 나타낸다.
제3 도는 차광에 의해 표시된 큰 진폭 "선택된" 계수, 및 하얗게 표시된 작은 진폭(비-선택된) 계수를 가지고, 제1도의 2 차원 상의 블록을 표현하는 변환된 자료의 블록에 관한 계수들을 개략적으로 나타낸다.
제4 도는 계수들의 런랭스 엔코딩이 전형적으로 전도되는 변환 계수들 의 블록을 통한 지그-재그 경로를 개략적으로 나타낸다.
제5 도는 어두운 정방형에 의해 표시된 선택된 계수들, 및 하얗게 표시된 비-선택된 계수들을 가지고, 변환 계수들의 블록을 개략적으로 나타낸다.
제6a 도는 같은 길이의 모든 코드명을 가지고, 작동길이 코딩내에 사용된 코드책의 한 부분을 개략적으로 나타낸다.
제6b 도는 변할 수 있는 길이의 코드명을 가지고, 작동길이 코딩에서 사용된 코드책을 개략적으로 나타낸다.
제7a 도는 어두운 정방형에 의해 표시된 선택된 계수들, 및 하얗게 표시된 비-선택된 계수들을 가지고, 이러한 계수를 위치가 제5 도에 나타내진 것과 다른, 변화 계수의 블록을 개략적으로 나타낸다.
제7b 도는 어두운 정방향에 의해 표시된 계수들, 및 하얗게 표시된 비-선택된 계수들을 가지고, 이러한 계수들 위치가 제5 도 또는 제7a 도에 나타내진 것과 다른, 변환 계수의 블록을 개략적으로 나타낸다.
제8 도는 일정한 길이의 코드명을 사용하면서, 벡터 양자화 엔코딩에 사용된 코드책의 한 부분을 개략적으로 나타낸다
제9a 도는 제2부분집합(subset)의 위치가 작동길이 엔코딩을 사용하여 코드화되는 한편, 변환 계수들의 제1부분집합의 위치가 벡터 양자화를 사용하는 발명의 방법에 따라서 코드화되는 것을 나타내는 ,변환 계수들의 블록을 개략적으로 나타낸다.
제9b 도는 제9a 도에 나타내진 블록과 비교하여, 상이한 코딩의 영역들 사이에서 상이한 경계를 가지고, 벡터 양자화 및 작동길이 엔코딩에 의해 또한 코드화되는 변환 계수의 블록을 개략적으로 나타낸다.
제10a 도는 작동의 시작 위치에 따라서, 블록의 상이한 작동 부분에 대해 상이한 코드책을 사용하는 본 발명의 방법의 실행에 관한 작동길이 부분을 나타내면서, 작동길이 엔코딩에 의해 코드화되는 변환 계수들의 블록을 개략적으로 나타낸다.
제10b 도는 변환 계수의 부분 집합에 대해 벡터 양자화를 사용할 뿐만 아니라 상이한 작동 부분들에 대해 상이한 코드 책을 사용하는 발명의 방법에 의한 자동길이 엔코딩에 의해 코드화된 변환 계수의 블록을 개략적으로 나타낸다.
제11 도는 작동길이 코딩을 사용하면서 완전히 코드화된 변환 블록의 상이한 작동 부분에 대한 상이항 코드책의 구성을 개략적으로 나타낸다.
제12a 및 12b 도는 엔코더 부분을 보여주는 제12a 도 및 디코더 부분을 보여주는 제12b 도를 가지는 발명의 장치를 개략적으로 나타낸다.
13a 및 13b 도는 엔코더 부분을 보여주는 제13a 도 및 디코더 부분을 보여주는 13b도를 가지고 결합된 작동길이 엔코딩 및 벡터 양자화를 사용하는 발명의 방법의 바람직한 태양을 개략적으로 나타낸다.
제14a 및 14b 도는 엔코더 부분을 보여주는 제14a 도 및 디코더 부분을 보여주는 제14b 도를 가지고 복합된 코드책을 사용하는 발명의 방법의 바람직한 태양을 개략적으로 나타낸다.
[본 발명의 바람직한 상세한 설명]
본발명의 한 영역은 코딩 방법에 있어서 변환 코딩과 같은 몇몇 순서에 대해 변환 계수들의 위치를 코드화할 필요가 있고, 작동길이 엔코딩 및 벡터 양자화가 선택된 계수들의 상호 배타적인 타입의 유형들에 바람직하다는 자각의 이점이있다 작동길이 코딩은 비-선택된 계수들의 긴 작동을 갖는 유형에 유효하지만, 선택된 계수들의 상당한 부분을 갖는 코딩 유형에는 매우 유효하지 않다. 거대한 메모리 필요성 때문에, 벡터 양자화는 많은 가능한 유형을 코드화하는데 바람직하지 않다. 그러나, 엔트로피 코딩을 가지고, 각각의 유형, 및 즉 모든 선택된 계수의 위치는 상대적으로 적은 수의 비트를 가지고 지정될 수 있기 때문에, 상대적으로 적은 수의 가능한 유형들이 코딩에 바람직하다. 벡터 양자화는 많거나 거의 없는 선택된 계수들이 있는지에 민감하지 않다.
본 발명의 바람직한 태양의 전반적 방법이 발명의 엔코더 부분을 보여주는 제13a 도 및 디코더 부분을 보여주는 제13b 도를 가지고, 제13a 및 13b 도에 개략적으로 나타난다. 선행 기술에서 처럼, 상 자료는 많은 수직으로 배열된 수평선 들을 가지고, 수평선을 가로질러 전형적으로 화소의 형태로 단계(1302)에 견본되어 있다. 견본된 자료는 예를 들어, 단계(1304) 에서 8 × 8 화소의 블록으로 블록들로 분리된다. 예를 들어, DCT 타입 변환과 같은 앞으로의 변환은 단계(1306)에 적용된다. 발명의 방법은 가상의 어떤 타입의 변환에 적용할 수 있고, DCT 타입 변환에 한정되지 않는다. 전형적으로 그것은 선형 변환에 적용되지만, 또한 위치- 타입 정보를 표시함을 포함하는 어떤 타입의 변환에도 적용된다. 변환된 자료는 스펙트럼내에서 각각이 연속된 진폭(몇몇은 작은) 및 위치를 갖는 계수의 2-차원 스펙트럼 형태이고, 또한 여기서 "변환블록"으로 언급된다. 연속된 진폭에 의해서, 진폭에는 어떤 값도 될 수 있고, 분리되고, 양자화된 표준으로 아직 "양자화 되지 않았음"을 의미한다.
본 발명의 방법은 위치 정보로부터 독립적으로 진폭 정보 상에서 전형적으로 작동한다. 이러한 두가지 타입의 정보는 단계(1308)에서 분리된다. 분리는 기술로 잘 알려진 수단에 따라서 실행될 수 있다. 연속 진폭 정보는 기술로 잘 알려진 수단에 따라서 제조합 표준으로 단계(1310)에서 양자화된다. 코드명은 각각의 양자화된 진폭으로 단계(1312)에 할당된다.
제9a 도는 상자료(102n)의 변환된 블록의 계수들의 블록(112n)을 개략적으로 나타낸다. 본 발명에 따라서, 블록(112n)은 단계 1314에서 두 영역(902) 및(904)로 분리된다. 영역(902)는 제9a 도에 있는 진한 검정 테두리에 의해 싸이고, DC 계수 및 이러한 실시예에 있어서 14 개의 가장 낮은 공간 주파수를 일반적으로 포함한다.
영역(904)는 나머지, 블록(112n)의 더 높은 주파수 계수들을 포함한다 발명의 방법의 제1의 바람직한 태양에 따라서, 선택된 계수들의 위치의 코딩은 두가지 방법에 의해서 실행된다 : 영역(902)은 벡터 양자화에 의해 기호화되고, 영역(904)는 작동길이 엔코딩에 의해 기호화된다.
여역(902)의 코딩은 벡터 양자화의 일반적 방법을 따른다. 선택된 계수들의 유형은 단계(1316)에서 동일하고, 코드책에서의 유형에 일치한다. 영역(902)는 14개의 AC 계수들을 포함한다. 그러므로, 선택된 계수 총 유형수는 214또는 40.768 개의 가능한 유형이다. 이것이 가능한 유형의 많은 수이면서, 코드책 내의 그러한 많은 관계자들의 저장은 실질적인 하드웨어(hardware) 능력의 영역안에서 양호하다. 예를 들어, 평균적으로 저장의 5 비트, 총 5 ×214또는 그 정도의 비트를 필요로 하는 각각의 유형을 가지고, 이러한 많은 유형들을 저장하는 것은 매우 실행가능하다
선행 기술에서 처럼, 유형에 대한 코드명은 제8 도에 보여진 것과 같은 고정된 길이 코드명, 또는 전형적으로 보다 효율적인 결과를 제공하는 엔트로피 코딩 에 의해서 단계(1318) 에 할당된다. 고정된 코드명은 14 비트 일 것이다. 엔트로피 코딩이 사용된다면, 선택된 엔트로피 코딩 기술에 좌우되어, 좋지 않은 유형에 대한 코드명이 40 비트의 30 만큼 길게 될 수 있는 반면에, 매우 바람직한 유형에 대한 코드명은 하나의 비트처럼 짧게 될 것이다.
전형적으로, 경험이 영상의 타입에 있어서 몇 가지 유형이 다른 것보다 상당히 높은 확률로 발생한다는 것을 보여준다면 엔토로피 코딩이 선택될 것이다.
영역(904)의 코딩은 작동길이 코딩의 일반적인 방법을 따른다.영역(904)는 49개 AC 계수를 포함한다. 작동길이 엔코딩은 굵은 원에 의해 표시된, 계수(906)에 광원을 가지고 시작한다. 제1작동의 길이는 단계(1320)에서 측정된다. 선행작동이 벡터 양자화 영역(902) 내의 마지막 AC 계수에서 끝나는 것처럼 측정이 행해지게 하기 위해, 약정이 될 수 있다. 그러므로, 제9a 도에 보여진 실시예에서, 하나의 선택된 계수만이 이러한 작동내에 있기 때문에 제1작동의 길이는 하나일 것이다. 단계(1322)에서, 중간 코드명은 작동을 나타내면서 할당된다. 예를 들어, 코드명 "1"은 적절히 할당될 수 있을 것이다. 단계(1324)에서 ,제1작동에 대한 코드명대한 코드명은 경로내의 모든 작동을 나타내는 코드 문자열에 더해진다. 이것은 제1작동이기 때문에, 그것은 제1코드명이다.
단계(1326)에서, 전체 지그-재그 경로가 통과됐는지를 결정하기 위해 상태가 조사된다 만일 그렇지 않다면, 상기 방법은 단계(1320)으로 복귀하고, 다음 작동의 길이를 측정한다. 세 개의 계수(제2, 제5 및 제10의)만이 선택된 계수를 나타낸다. 제2작동의 길이는 2이고, 제3작동의 길이는 4이다. 이러한 작동에 대한 전형적인 코드명은, 고정된 길이 코드명, 또는 보다 유익하게, 변할 수 있는 길이 코드명을 사용하면서, 상기에 토론된 기술에 따른 연속 "1, 2. 4" 의 2 진법 전환이 될 것이다. 단계(1326)에서, 단계(1322) 에서의 할당된 코드명이 작동의 끝을 나타내는 코드명이라면, 전체 지그-재그 유형은 통과될 것이고, 단계(1326)에서의 본 발명의 방법은 위치 코드명이 결합된 단계(1328)로 나아갈 것이다.
본 발명의 방법에 따라서, 제9a 도에 보여진 것 같은 단지 제1의 14 개 의 AC 계수에 벡터 양자화를 적용하기 보다는 벡터 양자화는 , 제9b 도에 개략적으로 보여진 바와 같이, 제1의 20 개의 계수들 같은 상이한 수의 계수들에 적용될 수 있을 것이다. 영역(908)은 벡터 양자화에 기호화되고, 영역(910)은 광원같은 계수(912)를 가지고 시작하면서, 작동길이 엔코딩에 의해 기호화된다.
벡터 양자화 부분에 있어서, 220유형들이 기호화되어야만 하는 것을 제외하고 모든 것은 제9a 도의 실시예와 같이 같고, 그러므로 상기에 토론된 것과 같이 214보다는 코드책은 그안에 220기재 사항들을 가질 것이다. 고정된 길이 코드명 또는 코딩에 기초한 엔트로피가 이용될 수 있다
작동길이 엔코딩에 있어서, 엔코딩은 제9a 도의 실시예에서와 같이 진행한다. 그러나, 더욱 적은 계수가 선택되어지고 그러므로 더욱 적은 작동이 있을 것이다. 추가로, 21. 번째 계수(912)에서 시작하는 최대 작동길이는, 49 또는 63 이기 보다는 단지 43 이기 때문에 코드책에 더욱 적은 기재사항이 있을 필요가 있다. 이러한 절감은 만약 엔크로피 코딩이 이용 된다면 최고로 중요하다 고정된 길이 코드명이 사용된다면, 제9a 도 및 제9b 도에 사용된 코드명의 길이는( 및 선행기술, 그 문제에 있어서) 같게 될 것이며, 코드책내에 6 개의 더욱 적은 코드명을 갖는 것으로부터 절감된 메모리를 무시할 수 있다.
전체 경로가 통과되고, 코드명이 작동길이를 지정하기 위해 할당 후에, 작동길이 정보 및 벡터 양자화 정보는 선택된 계수의 위치를 완전히 지정하기 위해 단계(1328)에서 결합 된다. 단계(1330)에서, 결합된 위치 코딩 정보는 단계(1312)에서 생성된 진폭 코딩 정보와 추가로 결합되고, 그러므로 변환블록 113n 의 진폭 및 위치를 완전히 지정한다. 위치 정보가 단계(1328)에서 결합되고, 진폭 및 위치 정보가 단계(1330)에서 결합되는 특정 수단은 발명에 중요하지 않다. 단계(1330)에서의 결합은 문자열 안에 어느 부분을 첫째로 놓을 수 있고, 또는 블록에 의해 진폭 정보 블록을 가지고 작동길이 정보를 인터리브(interleave) 시킬 수 있다. 사실상 ,몇몇 분리 기술이 사용되는 한, 또다른 타입의 정보를 연속적으로 가져오면서 전달되는 한가지 타입의 정보보다는 어떤 보다 복합한 모든 것에서 결합할 필요가 없다.
이러한 분리는 성분들 사이에 구두점 코드를 놓는 것과 같은 잘 공지된 방법에 의해 실행될 수 있다. 필요한 모든 것은, 발명의 방법을 실행하는 장치의 디코딩 성분이 자료 흐름의 부분이 진폭 정보임을 나타내는 수단을 가지고 있고, 이것은 유형 정보이며, 및 작동길이 정보라는 것이다. 단계(1332)에서, 적절히 결합된 코드명 정보는 적절히 선택된 채널을 따라 전달된다.
본 발명의 방법의 바람직한 태양에 따른 수신 부분은 제13b 도에 계략적으로 나타난다. 상기와 같이, 단일 변환 블록에 대한 코드명은 단계(1350)에서 받아진다. 코드명의 진폭 성분은 단계(1352)에서 위치 성분들로부터 분리된다 .분리 수단은 결합의 수단에 의존하며. 만일 있다면, 단계(1330)에서 사용된다. 단계(1354)에서 진폭을 나타내는 코드명을 일련의 양자화된 진폭으로 진폭 코드책내의 양자화 표준에 코드명을 단순히 일치시킴으로써 변환된다.
위치 코드명의 유형 및 작동길이(낮고, 높은 주파수) 부분은 단계(1356)에서 분리된다 .이러한 단계는 단계(1354)에서 양자화 단계와 동시에 발생할 수 있거나, 단계(1354) 전에 또는 후에 실행될 수 있다. 평행한 태양이 제12b 도에 나타나있다. 유형 코드명은, 유형 코드명을 할당하기 위해 단계(1318)에서 사용된 코드책에 역으로 관련된 코드책에 관하여, 단계(1358)에서 위치 유형으로 변환된다. 동시에(또는 연속적으로),작동길이 코드명은, 단계(1322)에서 작동길이에 대해 기호화하기 위해 사용된 코드책에 역으로 관련된 코드책에 관하여 단계(1360)에서 작동길이로 변환된다. 위치정보는 이러한 위치 정보가 작동의 코딩 부분에서 결합되었는지 그렇지 않은지에 따라, 가능하게는 유형 정보 및 작동길이 정보 자체가 단계(1362)에서 결합된 후에, 단계(1364)에서 진폭 정보와 결합된다. 위치 정보와 진폭 정보를 결합시킨 결과는 자료가 원래대로 전환된 블록 112n 에 유사한 변환 블록이다. 기호화되고, 해독된 변환 블록내의 진폭이 모두 양자화되는 한편, 즉 재조합 표준 사이에 놓인 진폭이 없이 이것이 분리된 재조합 표준에 모두 있을 때, 차이는 원래의 블록 112n 내의 진폭이 연속이었다는 것일 것이다. 전달되고 제조합된 변환 블록은 코딩 단계내의 단게(1306)에서 앞으로의 변환의 효과를 풀기 위해 단계(1366)에서 역으로 변환된다. 역 변환은 상기에 토론된 IDCT 와 같은 앞으로의 변환에 일치해야만 한다.역 변환의 결과는, 원래 상의 자료 공간에 배열된 암색 강도와 같은, 강도의 블록이고, 전형적으로 단순히 공간 2-차원 상 공간이다.
각각의 원래상의 8 × 8 화소 블록은 상기 코딩, 전달 및 디코딩하기 쉽다. 단계(1368)에서 역 변환된 블록은 모두 원래 상의 전형적으로 공간의 자료 공간내에서 완전한 상으로 결합된다. 바란다면, 영상은 단계(1370)에서 보여진다.
제14a 및 14b 도에 보여진 본 발명에 따라서, 앞서의 선택된 계수의 위치에 좌우되어 작동길이 모딩의 효율성은 단계(1422)( 및 단계(1460))에서 상이한 작동에 대해 상이한 코드책을 사용함으로써 증가된다.
본 발명의 방법의 이러한 영역은 적합한 작동길이 코딩이라고 호칭된다.b 제14a 및 14b 도는 작동길이 엔코딩만을 사용하면서 실행될 수 있는 발명의 태양을 나타낸다. 나타내어진 단계들은,"13" 보다는 "14"를 가지고 시작하는 관련 숫자를 가지고 나타내지는 유사한 단계들을 가지고, 제13a 및 13b 도에 관하여 토론된 작동길이 엔코딩 단계와 일반적으로 같다. 공지된 작동길이 코딩방법에서, 단일 코드책만이 지그- 재그 경로의 자체 통과를 다라 작동길이에 코드명을 할당하기 위해 단계(1422)에서 사용된다. (상기 코드책의 상응하는 역이 선행 기술에 따라서 단계 1460에서 사용되어질 것이다.} 그러나, 어떤 작동길이가 발생할 지의 확률은 경로를 따라 극적으로 변한다. 대부분의 인상적인 경우에서 이와 같은 것은 경로의 제1AC 계수로서 단일 선택된 계수의 경우에 자주 발생하고, 62 의 작동은 제2계수가 통과된 후에는 불가능하다. 예를 들어, 최대 작동으로서 62의 작동에만 기초한 코드책은, 상대적으로 블록의 끝 가까이에서 시작하기 때문에, 단지 15이다.
이러한 원리는 다른 작동길이 = RL 에 적용 되고 ,64-RL 계수가 기호화된후, 필요한 계수의 수가 통과된 후에는 이러한 원리는 불가능하게 된다.
본 발명의 방법의 하나의 영역은 앞서 선택된 계수의 위치, 즉 작동의 영역에 대한 앵커(anchor)에 좌우되어, 단계(1422)( 및 단계(1460)에서 상이한 역 코드책)에서 상이한 코드책을 사용함으로써 이러한 낭비를 최소화한다. 에를 들어, 제10a 도에 보여진 것처럼, 제5 도에 사용된 실시예가 보여진다. 그러나, 작동은 세 개의 작동 부분으로 나누어진다. 제1코드책은 DC 계수에서 시작으로 사용되고, 14 번 째 AC 계수에서 끝나면서 진한 원(1002)으로 나타내진 제1의 14 계수를 통과한 다. 제2코드책은 계수(1002)에 이어지는 상기 계수에서 시작으로 사용 되고, 36 번째 AC 계수(1004)에서 끝나면서, 다음의 22 계수를 통과한다. 제3 코드책은 계수(1004)에 이어지는 계수에서 시작으로 사용되고, 마지막 계수까지 계속한다.
세 부분에 대한 각각의 코드책의 합성은 개략적으론 제11 도에 보여진다. 변환 블록 112n은, 제10a 도에서 처럼, 세 개의 작동 부분 (1120),(1122) 및 (1124)로 나누어진다. 제1코드책인 (1102)는 작동 부분 (1120)내에서 작동시작과 연관되어 사용의 63개 기재사항을 가지고 제공된다. 작동 부분 (1120)에 해당하는 특별한 작동의 시작의 시작 도는 앵커가 상대적으로 적은 비트를 가진 할당된 코드명일 때, 가장 바람직한 작동길이가 발생하고, 한편 바람직하지 못한 작동이 상대적으로 많은 비트를 가진 할당된 코드명이 된다 (제11 도에 보여진 코드책은 단지 설명을 목적으로 있으며, 실제적인 확률, 또는 적절한 엔토로피 코딩을 반영하지 않는 다.) 최소한의 바람직한 작동길이는 64 비트 이상의 많은, 예를 들어, 160 비트를 갖는 코드명을 할당받을 수도 있다.
지그-재그 유형이 통과되기 때문에 코드명은 작동길이 1, 2 및 10에 대해 코드책 (1102)으로부터 할당된다. 계수(1108)에서 끝나는 작동에 대한 코드는, 작동이 6 번째 AC 계수에서 제1작동 부분에서 시작했기 때문에, 제1코드책(1102)으로부터 유도된다. 작동이 어떤길이가 될 것인가 라는 확률은 작동을 시작하는 계수의 위치에 근거한다.
계수(1112)에서 끝나는 작동은 베로 길이이고. 그러므로 계수(1112)를 선행해서 즉시 시작되었음으로 또한 여겨지며, 이것은 제2작동 부분(1122)안에 해당한다. 그러므로, 단계(1426)에서, 발명의 방법의 방법은 다음 작동의 길이를 측정하기 위해 단계(1420)으로 복귀하기 보다는, 전체의 제1작동-부분 (1120)이 통과되었는지를 결정할 것이며, 전체의 지그-재그가 통과되었는지를 결정하기 위해 단게 (1434)로 나아갈 것이다. 실상은 그렇지 않기 때문에, 상기 방법은 새로운 코드책의 사용이 있는 단계(1436)으로 나아갈 것이며, 이러한 경우에 코드책 (1104)가 시작될 것이다. 그러면 상기 방법은 단계(1420)으로 돌아가고, 작동의 길이를 측정한다. 이러한 제로 길이 작동에 코드명을 할당하기 위해, 발명의 방법을 실행하는 장치가 단계 1422(제13a 도)에서 제2코드책(1104)로 언급된다. 그것이 더욱 적은 기재사항을 갖고(63 보다는 50), 전체 블록에 걸쳐 발생하는 그러한 길이의 작동 확률 보다는 어떤 길이의 작동이 최동 50개의 계수에서 발생할 확률에 근거하여 코드명이 할당되는 것을 제외하고는 이러한 코드책은 코드책 (1102)와 같은 방식으로 구성된다. 더욱 적은 기재사항이 있기 때문에 가장긴 코드명이 코드책 (1102)의 가장 긴 코드명 보다도 더욱 적은 비트를 필요로 한다. 추가로, 코드책 설계는 코드책 (1102)에서 보다도 상이하고 더욱 적절한 확률에 근거하고 그럼으로써 그것이 적용되는 작동의 부분에 보다 효율적이게 한다. 이것은 작동은 지정하기 위해 전달되어야만하는, 특히 바람직하지 않은 작동, 비트의 수를 절약한다. 보여진 실시예에서, 제로 길이의 작동이 코드책 (1102) 및 (1104)에서 코드명 "0" 으로 할당되었지만, 이것은 필요한 것이 아니고, 전형적으로 그런 경우는 아닐 것이다.
유사하게는, 계수 (1114) 후에 상기 계수에서 시작하는 작동이 측정되고 기호화될 때, 코드책 (1104) 및 (1102)와 공통인 길이의 작동에 할당되는 더욱 적은 기재사항 및 상이한 가능성을 다시 가지고, 코드책 (1106)의 사용은 단계(1436)에서 시작되고, 단계(1422)에서 실행된다. 제14a도에 보여진 엔코딩 방법보다는 덜 상세하지만, 정조를 해독하는 방법이 제14b도에 개략적으로 나타나있다. 코드명은 단계(1450)에서 받아지고, 단계(1452)에서 진폭 및 위치 성분들로 나누어진다. 단계(1460)에서, 코드명은 작동길이로 전환된다. 이러한 단계는 제14a도에 보여진 것과 같은 단계(1424) 및 단계(1422)역인 두 개의 하부단계를 포함한다. 코드 문자열은 각각의 코드명으로 깨어지고, 작동길이는 특별한 코드로 나타난다.
단계(1476)에서, 코드문자열은 새로운 코드책이 사용되어야만 하는지를 결정하기 위해 조사된다, 새로운 코드책의 사용은 엔코더 및 디코더에 접근할 수 있도록 미리 배열된 코드에 의해 지정된다. 새로운 코드책이 사용되어야 한다면, 단계(1478)에서 선택되고, 단게(1460)에 적용된다. 그렇지 않다면, 전체 작동이 해독되었는지를 결정하기 위해 시험이 단계(1474)에서 행해진다. 그렇지 않다면 디코딩 방법은 다음 작동길이를 해독하기 위해 단계(1460)으로 복귀하고, 선행 작동길이로 사용된 것과 같은 코드책을 사용한다. 전체 작동이 해독 되었다면, 상기 방법은 진폭을 가진 계수의 블록을 생성하기 위해 진폭 및 주파수 목록을 결합하는 단계(1464)로 나아가며, 단계(1466)에서 역 변환되고, 단계(1468)에서 결합되며, 단계(1470)에서 저장되거나 디스플레이 된다.
본 발명의 방법이 이러한 태양의 실시는 추가의 코드책을 저장하기 위해 더 많은 기억 용량의 배치를 필요로 함을 이해할 것이다. 배치된 코드책의 수는 메모리 용량 및 통신 채널 띠폭에 관한 응용의 상대적 제한에 따라 좌우될 것이다.
본 발명의 복합 코드책 방법은, 상기에 토론된 것과 같이, 작동길이 코딩 만을 가지고 유익하게 사용될 수 있다. 선행기술, 작동길이 및 벡터 양자화의 알려진 결합 및 작동길이 코딩만을 가진 복합 코드책 방법에 걸쳐서의 보다. 큰 효율성을 위해 상기 토론된 발명의 결합 벡터 양자화/작동 길이 엔코딩 방법과 함께 또한 사용될 수 있다. 이러한 결합은, 벡터 양자화영역(902) 및 작동길이 엔코딩 영역 (904)으로 다시 분할된 변환 블록 112n을 가지고, 제10b 도에 개략적으로 나타나있다. 작동길이 영역(904)은 그 자체가 세 개의 부분 (1030), (1032) 및 (1034)로 분할되고, 이들 사이의 경계는 각각의 부분의 시작에서 지그-재그 경로를 따라서 진한 원을 가지고 진한 테두리로 표시된다. 각각의 부분에서 시작하는 작동길이는 , 상기에서 설명된 바와 같이, 각각의 부분에 대해 독립된 코드책에 기초한 단계(1322)에서 기호화될 것이다.
복잡한 코드책이 없다 하더라도, 발명의 방법은 전형적인 경우에 있어서 작동길이 엔코딩에 대해 전달되는 계수에 대해 향상된 전체적 비트 전송 속도를 제공 할것이고, 벡터 양자화에 비교해서 향상된 메모리 및 계산 필요 조건을 제공할 것이다 발명의 복합 코드책 영역의 실행은 추가로 전통적 길이 코딩에 대해 비트 전송 속도를 향상시킨다
발명의 장치는 제12a 및 12b 도에 개략적으로 나타난다 제12a 도는 장치의 엔코더 부분을 보여주고, 제12b 도는 디코더 부분을 보여준다. 영상은 견본된 2 차원 광원 영상 자료(1202)로 전환된다. 광원 상 자료는 전형적으로, 각각의 블록에서 8 × 8 견본인 블록들로 분할된다. 광원 상 자료는 앞으로의 변환 조절기(1204)로 한 블록씩 지나간다. DCT 와 같은 전형적인 변환에 있어서, 자료는 분리된 공간 주파수의 연속적인 크기를 나타내는 8 8 블록의 각각의 요소를 가지고 2차원 주파수 영역의 8 × 8 블록안에 있다.
상이한 데이터의 성분들은 장치의 이어지는 단계 내에서 처리된다. 크기는 크기 양자화기(1206)에서 처리되고, 위치정보는(각각의 크기의 공간 주파수에 상응 하는)벡터 유형 부호기(1212) 및 작동길이 부호기(1214) 내에서 처리된다. 모듈(module)이 자료를 먼저 받는 것, 또는 평행한 처리가 보다 신속하지만 그것들이 연속으로 또는 평행하게 자료를 받느냐는 것은 발명에 있어서 중요하지 않다. 제12a 도에 보여진 태양은 평행한 구조에 따라서 배열되어있다.
신호는 다중 채널 분리기(1205)에서 크기 및 두 개의 위치 성분들로 분할된다. 연속적인 크기는 크기 양자화기(1206)에 의해서 분리된 재조합 표준으로 양자화 되고, 크기 재조합 표준표 메모리(1208)에 저장된다. 크기 양자화기(1206)는 크기 코드책 메모리(1207)에 관한 각각의 계수에 코드명을 할당하고, 재조합 표준표 메모리(1208)내에 유지된 각각의 재조합 표준에 코드명을 상호 관련시킨다. 크기 양자화기(1206)의 출력은 양자화된 크기를 나타내는 코드명의 블록이고, 각각의 크기는 특정한 공간 주파수에 상응한다.
다중 채널(1205)로 부터의 위치 자료는 낮은 공간 주파수 및 높은 공간 주파수 성분으로 제2분리기(1203)에서 추가로 분할될 수 있다. 블록의 낮은 주파수 부분은 벡터 유형 부호기(1212)에 의해 분석된다. 부호기는 벡터 유형 표 메모리(1216)내에 저장된 유형에 선택된 계수 위치의 유형을 일치시킨다. 벡터 유형 표는 코드명에 각각의 유형을 배치한다 .코드명은 일정한 길이 코드명, 또는 보다 전형적으로, 적절한 엔트로피 코딩 기술에 따라 기초된 변할 수 있는 길이 코드명일 수 있다. 전형적으로, 유형의 확률이 결정될 수 있다면, 엔트로피 코딩은 일정한 길이 코드명이 하는 것 보다도 훨씬 효율적인 전체적 계수 비트 전송 속도를 제공한다.
일정한 코딩 또는 엔트로피 코딩이 사용되든, 벡터 유형 표는 코드명에 계수 유형을 배치하기 위해 필요로 된다.
블록의 고 주파수 부분에 대한 자료는 위치 작동길이 엔코더(1214)에 의해 분석된다. 작동길이 엔코더(1214)는 계수들을 통해서 지그-재그 경로를 통과하고, 선택된 계수들 사이의 비-선택된 계수들의 수를 계산하며, 그로므로써 선택된 계수들 사이에 각각의 작동 길이를 확실히 한다. 일단 측정되면, 작동길이 엔코더(1214)는 메모리(1218a)에 저장된 작동길이 코드책에 관한 코드명에 각각의 길이를 일치시킨다. 다시, 상기에서 토론된 띠폭 고려와 메모리의 평가에 좌우되어, 고정된 길이 코드명 또는 변할 수 있는 길이 코드명이 사용될 수 있다 엔트로피 코딩이 사용된다면, 및 발명의 복합 코드책 방법이 사용된다면, 작동길이 엔코더(1214)는 추가의 메모리 (1218b)에서 (1218n) 까지에 저장된 코드책 2부터 n 까지를 언급한다.
벡터유형 엔코더(1212) 및 위치 작동길이 엔코더(1214)로 부터의 위치 코드명은 선택적으로 다중 채널(1209)에서 결합될 수 있다. 그것은 몇몇 상황에서 효율성을 제공하기도 하지만, 결합 단계는 필요하지 않다 결합은 지정된 순서에서 코드명을 연결시키는 것만큼이나 단순할 수 있다. 양자화되고, 기호화된 크기 자료는 기호화된 벡터 양자화자료 및 다중채널(1220)내에서 기호화된 작동길이 자료와 결합되고, 압축된 영상자료(1222)의 흐름이 생성된다
압축된 여상자료(1222)는 제12b 도에 개략적으로 보여진 장치에 의해 재조합된 영상으로 변환된다. 압축된 영상 자료(1222)는 그것의 기호화된 크기 및 디멀티플렉서(demultiplexor)에 의한 위치 성분들로 분할된다
만일 다중채널(1209)에서 결합되었다면 위치 정보는 벡터 양자화 및, 다중채널(1229)에 의한 작동길이 성분으로 분리된다
만일 결합이 장치의 코딩 부분에서 실행되지 않는다면, 각각의 성분은 단순히 각각의 복호기(1232) 또는 (1234)로 향한다. 벡터 유형 복호기(1232)는 각각의 벡터 코드명을 받고, 벡터 유형표 메모리(1216)에 동일한 벡터 메모리(1236)에 관한 유형에 코드명을 일치시킨다. 그러나, 벡터 유형 표(1216)이 유형을 일치시키도록 찾아져야 하는 필요 때문에, 두 개의 메모리내의 자료의 배열은, 각각에선 수색 방법을 최대한 활용하기 위해 종종 상이하다. 유형 복호기(1232)의 출력은 선택된 계수에 대한 위치의 유형이다. 그러나, 그러한 계수의 크기는 유형 복호기(1232)에 의해 결정되지 않는다.
작동길이 복호기(1234)는 작동길이 코드책 메모리(1238a)에 관해서, 각각의 작동길이 코드명을 받고, 작동길이에 코드명을 일치시킨다. 작동길이 복호기는 시스템의 엔코딩 부분에서 사용된 기술에 따라서 고정된 또는 변할수 있는 길이 코드명 데코딩을 사용한다.(메모리 1238b에서 1238n 내에 저장되어, 추가의 코드책 2부터 n 까지 사용)
압축된 영상 자료 흐름(1222)의 크기 부분은 크기 코드책 메모리(1247)에 관해서 크기 보호기(1246)에 의해 해독된다. 크기 코드책 메모리(1247)내의 기재사항은 상기코드명을 크게 코드책 메모리(1207)에 유사한, 상당하는 재조합 표준에 일치시킨다. 그러나, 크기 양자화기(1206)으로의 입력과 같은 계수의 정확한 연속진폭은 재조합 표준 내의 변화가 보존되지 않았으며, 단지 재조합 표준 내의 구성원만이 기록되었기 때문에 회복될 수 없다
이러한 이유로(다른 덜 중요한 이유 중에서) 재조합된 영상 데이타는 광원 영상 데이타와 정확히 같지 않을 것이다. 영상 데이타내의 피할 수 없는 차이에도 불구하고, 영상 내의 지각할 수 있는 차이를 최소화하려는 것이 싱호 처리 기술의 목적이다.
위치 복호기(1233)에서 벡터 유형 복호기(1232) 및 위치 작동길이 복호기(1234)로 부터의 변환 블록 데이터 출력의 해독된 위치 성분들을 변환 블록 내의 선택된 위치를 모두 지정하기 위해 결합된다. 위치 및 크기 일치기(1245)에서, 결합된 위치는 선택된 위치에 있어서, 크기복호기(1246)에 의해 생선된 각각의 크기에 대해 일치된다. 결과는 변환 블록이고 예를 들어, 양자화된 크기를 가지고 원래의 블록(112n)의 공간 주파수는 위치에서, 계수들의 도면에서 사용된 실시 예에 관한 8 × 8 변환 블록이다. 이러한 8 × 8 변환 블록은 역 변환 조작기 (1244)에 대한 입력으로 사용되고, 공간 주파수 영역으로 부터 2-차원 영상영역으로 자료를 변환시킨다.
선행 장치 설명은 장치를 통한 화소 자료의 하나의 블록(102n)을 나타내는 데이터의 통과에 초점이 맞춰져 왔다. 화소 데이터의 각각의 블록(102n)은 같은 방식으로 장치를 통과한다. 화소 데이터의 재조합된 8 × 8 블록의 복합성은 재조합 된 영상(1252)을 형성하기 위해 재조합된다.(그것들이 배치되는 순서에 상응한 순서에서 단순히 나란히 배치함으로써, 가장 초보적인 경우에).
가변 한계는 고정된 한계 보다는 ,계수의 선택에 사용될 수 있다. 가변 한계는 전형적으로 두가지 이유에서 사용된다. 첫째로, 상이한 한계는 상이한 블록에 이용될 수 있다. 둘째로, 같은 블록안에서, 낮은 주파수 계수는 인간의 지각기관 에 널리 공지된 이유 때문에 낮은 한계를 사용하여 더 잘 해독한다.
선행의 토론은 암색(grayscale),즉 검고 하얀영상에 따라서 화소 크기에 의해 특징지어진 영상으로 가정되었다. 발명은 컬러(color) 또는 다중- 채널 상에 또한 적용될 수 있다. 영상의 검고 하얀 기록의 경우에서, 각각의 화소 요소는 유일하고, 분리된 요소이다. 컬러 기록의 경우에서, 한 세트의 채널, 또는 그룹의 화소가 각각의 그림 요소로 사용된다. 예를 들어, RGB 로 공지된 컬러 값 설계에서, 각각의 컬러는 빨강(R) 녹색(G) 및 파랑(B)색의 결합량에 의해 나타내진다. 이런한 세가지 색의 각각에 대한 분리된 색 "채널"이 공급된다 RGB. 시스템에서 각각의 채널은 영상(예를 들어 비디오 화면에서)을 가로지른 선에 있어서의 같은 수의 화소 및 수직 방향에서 동일한 수를 갖는다. 하기에 토론되는 다른 컬러 값 시스템은 상이한 채널에 대해 선에 있어서 상이한 수의 견본을 갖을 수 있다. 화소 요소는 그들이 동시에 디스플레이 될 때(관찰자에 의해 관찰된 것과 같이) 원래 영상의 색들이 형성하도록 그들 결합하게 하기 위하여 , 전형적으로 디스플레이 장치에 서로 근접하여 위치한다.
RGB 컬러 값 설계는 어떤 응용에 있어서 유용하나, 컬러 값의 수학적 조작에 있어서 가장 편리한 것은 아니다. 전형적으로 영상의 휘도 값을 나타내는 채널을 포함하는 다른 컬러 설계가 보다 유용하다. 휘도는 일반적으로 명백한 단위 면적당 주어진 방향에 있어서 표면으로부터 반사된 또는 방출된 빛의 강도로서 설명 된다. 일반적으로, 휘도 및 두 개의 다른 차원에 의해 한정된 세 개의 채널 컬러 공간은 RGB 컬러 공간에 일치한다. 전형적인 휘도 컬러 공간은 미합중국내의 텔리비젼 방송에 대한 국영 텔리비젼 표준 심의회(National Television Standards Committee)에 의해 사용된 Y(휘도),i(국면에서),q(구적)이다. 다른 휘도 컬러 공간은 커미션 인터내셔널 디 엘 에클레리지(commissidn International de I'Eclairage)(CIE),Y, x, y(휘도 및 두 개의 크로미넌스 채널), 및 그것의 변수들, 및 Y, u, v(또한 휘도 및 두 개의 크로미넌스 채널) 및 더욱 많다.
본 발명의 배경에서, 발명의 방법은 다중-채널 시스템의 각각의 독립된 채널에서 유익하게 실행될 수 있다. 각각의 채널에 대한 자료는 독립적으로 처리되고, 공기된 기술에 따라서 코딩 및 디코딩 후에 재결합된다 그러므로써, 또다른 채널과 비교하여 하니의 채널에 대한 상이한 코드책을 사용하면서,.발명의 복합된 코드책 영역을 이용하는 것이 유익할 것이다. 추가로, 벡터 양자화 방법 및 작동길이 방법의 적용 사이의 경계는 한 채널까지 어떤 주어진 블록에 있어서 다를 수 있다. 예를 들어, 크로미넌스 채널에 있어서, 전형적으로 더 적은 계수가 크로미넌스 채널에서 코딩을 위해 선택되기 때문에 벡터양자화 영역은 훨씬 작아질 수있다. 사실상, 하나의 채널에서 다음 채널까지의 모두에서 동일한 방법을 사용하는 것은 필요하지 않다. 복합 코드책을 사용하는 작동길이 코딩과 결합된 벡터 양자화는 복합 코드책안을 가진 작동길이 코딩을 사용하면서 코드화된 또다른 채널을 가지고, 전혀 벡터 양자화를 사용하지 않으면서 하나의 채널을 위해 사용될 수 있다.
진솔한 내용은 2-차원 영상-타입 데이터에 관해서 발명을 설명했었다. 또한 3 차원 이상에서의 신호의 처리에 적용된다. 이러한 특성의 신호는 비디오, 소나(sonar) 및 레이다(radar) 신호들의 어떤 타입 홀로그램(hologram) 및 고형체 모델등과 같은 3 차원 물질상을 나타내는 신호들을 포함한다. 3-차원 존재인(건물, 동물, 전경과 같은) 온도, 전기장, 자기장, 밀도, 컬러등과 같은 물리적 특성을 지정하는 추가의 신호는 지정된 물리적 특성과 같은 3차원 보다.많은 차원을 갖는 자료 공간 내에서 설명될 수 있다. 추가의 차원이 포함된다는 것을 제외하고, 원리는 같다.
3-차원 태양을 고려하면서, 광원 자료는 3-차원 공간내의 각각의 포인트에대한 강도 진폭을 가지고, 세 개의 공간 차원과 같은 3 차원 안에 있다. 이러한 3차원 자료는 DCT 타입 변환에 따라서, 각각의 계수가 크기를 갖은 3 개의 공간 주파수 차원 내의 계수에 의해 특징지어진 자료 공간으로 변환된다. 광원 자료는 2-차원 시스템의 2-차원 블록 보다는 3 차원 졍크(chunk)내의 변환 공간으로 전환된다. 유사하게는 변환된 주파수 영역내의 자료는 3-차원 졍크안에서 다루어진다.
선택된 계수의 변환된 졍크 내에서의 벡터 양자화에 관한 가능한 유형의 보다 많은 가능한 결합이 있다는 것을 제외하고 2차원에서와 같고, 지그-재그 유형은 3차원에서 통과되며; DC 계수로부터 나오는 나선형 타입 모양으로 가정할 수 있다. 지그-재그 또는 나선형 경로의 어떤 것도 최고의 것이 아님을 주목 해야한다. 다른 적절한 경로강 발명의 의도 안에 있다.
선행 토론은 예시적인 것으로 이해되어야 하고 어떤 의미에서 제한적인 것으로 고려되어서는 안된다. 이러한 발명이 그것의 바람직한 태양에 관해서 특히 보여지고 설명되었으며, 형태 및 세부 사항에 있어서의 다양한 변화는 특허청구의 범위에 의해 한정된 발명의 정신 및 영역으로부터 이탈하지 않고 그 속에 만들어져 있음이 기술내에서 숙달된 사람들에 의해 이해될 것이다.
예를 들어, 2차원 상 자료 보다는, 어떤 다른 2차원 상 자료가 운동-보정오차 신호를 포함하면서 발명에 따라 취급될 수 있다. 발명의 복합 및 적합한 코드책 작동길이 엔코딩 영역은 벡터 양자화 및 작동길이 엔코딩을 결합한 발명의 영역과 함께 결합되어 또는 혼자 사용될 수 있으며, 유사하게는, 발명의 복합 코드책영역 없이 사용될 수 있다. 실시예에 전형적으로 사용된 세 개 보다는, 어떤 수의 복합 코드책도 사용될 수 있다.
토론된 실시예에서, 영상 자료, 벡터 양자화에서의 집중은 작동길이 엔코딩이 고 주파수에 대해 사용되면서 낮은 공간 주파수에 대해 사용되어 왔다. 그러나, 자료의 타입이 매우 자주 낮고, 또는 몇몇 다른 주파수 영역 내에서 비-선택된 게수의 오랜 작동에 의해 특징지어진다면, 벡터 양자화 보다는 작동길이가 변환 블록의 부분을 코드화하기 위해 사용되어야만 한다. 유사하게는, 벡터 양자화가 상대적으로 짧은 작동을 갖는 블록의 부분을 코드화하기 위해 사용되어야 한다. 추가로, 엔코딩의 작동길이 및 벡터 양자화 방법을 사용하기 보다는, 발명은 변환 블록을 영역들로 분할하게 하며, 각각의 영역에 코딩 기술을 적용하고, 이러한 기술은 그 영역에 일반적인 선택된 계수의 유형에 적절한 효율을 갖는다.
그러므로, 그들의 효율성이 그것을 확실히 한다면, 엔코딩의 다른 기술의 적용은 발명의 영역 내에서 기대될 수 있다.
추가로, 발명이 그들의 진폭에 좌우되어 선택된 또는 선택되지 않은 계수에 관한 위치 정보를 코드화하는 것에 관해서 설명되었지만, 발명은 요소의 어떤 순서가 정해진 그룹이 어떤 기준에 따라서 선택된 어떤 코딩 기술에 적용될 수 있고, 순서를 정하는 원칙에 대한 위치 정보가 필요된다. 발명은 위치 정보를 지정하는 것에만 관련된다. 사실상, 발명은 진폭 정보가 포함되지 않는 위치 정보를 지정하는 것에 또한 관련된다.

Claims (16)

  1. a. 위치 신호의 제1성분에 있어서, 벡터 양자화에 의해 선택된 계수의 위치를 부호화 하는 신호를 생성하는 단계; 및 b. 상기 위치 신호의 제2성분에 있어서, 런랭스 인코딩에 의해 상기 선택된 계수의 위치를 부호화 하는 신호를 생성하는 단계를 포함하는, 최소한 일차원 안에서 순서가 정해진 한 세트의 선택된 계수의 위치에 의해 특징지어진 소스위치 신호에 해당하는 위치 정보를 부호화하는 방법.
  2. 제1항에 있어서, 런랭스 엔코딩에 의해 신호를 생성하는 단계가 a. 상기 위치 신호의 상기 제2성분의 제1런 부분에 있어서, 제1코드북을 사용하는 상기 선택된 계수의 위치를 부호화하는 단계; 및 b. 상기 위치 신호의 상기 제2성분의 적어도 하나의 추가의 부분에 있어서, 하나 이상의 추가된 코드북을 사용하는 상기 선택된 계수의 위치를 부호화하는 단계를 포함하는 것을 특징으로 하는 것을 특징으로 하는 방법.
  3. a. 상기 위치신호의 제1런 부분에 있어서 제1코드북을 사용하여 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계; 및 b. 상기 위치 신호의 하나 이상의 추가된 부분에 있어서, 하나 이상의 추가된 코드북을 사용하여 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계를 포함하는, 적어도 일차원 안에서 순서가 정해진 한 세트의 선택된 계수의 위치에 의해 특정지어진 소스위치 신호에 해당하는 위치정보를 부호화하는 런랭스의 방법.
  4. a. 상기 위치 신호의 제1성분에서 1차원 이상의 유형으로 위치를 그룹짓는 방법에 의해 상기 선택된 계수이 위치를 부호화하는 신호를 생성하는 단계; 및 b. 상기 위치 신호의 제2성분에 있어서, 선택된 계수들의 위치 사이의 거리를 측정하는 방법에 의해 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계; 를 포함하는 일차원 이상에서 순서가 정해진 한 세트의 선택된 계수의 위치에 의해 특정지워진 소스위치 신호에 해당하는 위치 정보를 부호화하는 방법.
  5. a. 위치 신호의 제1성분에 있어서 상기 제1성분 내의 선택된 계수의 일반적으로 기대되는 유형에 관해서 상대적으로 높은 효율성을 갖는 방법에 의해 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계; 및 b. 상기 위치 신호의 제2성분에 있어서, 상기 제2성분 내의 선택된 계수의 일반적으로 기대되는 유형에 관해서 상대적으로 높은 효율성을 갖는 방법에 의해 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계를 포함하는, 소스 신호 내의 선택된 계수의 일반적으로는 기대되는 유형이 있는 일차원 이상에서 순서가 정해진 한 세트의 선택된 계수의 위치에 의해 특징지워지는 소스위치신호에 해당하는 위치정보를 부호화하는 방법.
  6. 엔코딩 신호가 위치 신호의 제1성분에서 백터 양자화에 의해 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계; 및 상기 위치 신호의 제2성분에서 런랭스 엔코딩에 의해 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계에 의해 생성되고; a. 상기 디코딩 관계가 런랭스 엔코딩에 의해 생성된 상기 선택된 계수의 위치를 부호화하는 상기 신호를 디코딩하는 단계; 및 b. 백터 양자화에 의해 생성된 상기 선택된 계수의 위치를 부호화하는 상기 신호를 디코딩하는 단계를 포함하는, 일차원 이상에서 순서가 정해진, 한 세트의 선택된 계수의 위치에 의해 특징지어진 소스 위치 신호를 부호화하는 신호를 디코딩하는 방법.
  7. 제6항에 있어서, 상기 런랭스 엔코딩 방법이, 상기 위치 신호의 상기 제2성분의 제1작동 부분에서 제1코드북을 사용하는 상기 선택된 계수의 위치를 부호화하는 단계; 및 상기 위치 신호의 상기 제2성분의 하나 이상의 추가부분에서, 하나 이상의 추가된 코드북을 사용하는 상기 선택된 계수의 위치를 부호화하는 단계를 추가로 포함하고, 상기 디코딩 방법이, a. 제1역 코드북을 사용함으로써 제1코드북을 사용하여 부호화된 상기 위치를 디코딩하는 단계; 및 b. 제2역 코드북을 사용함으로써 제2코드북을 사용하여 부호화된 상기 위치를 디코딩하는 단계를 추가로 포함하는 것을 특징으로 하는 방법.
  8. 적어도 일차원 안에서 순서가 정해진, 한 세트의 선택된 계수의 위치에 의해 특징지어진 소스 위치 신호를 런랭스에 의해 신호 엔코딩을 디코딩하는 방법으로서, 상기 인코딩 신호가, 상기 위치 신호의 1 작동 부분에서, 제1코드북을 사용하는 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계; 및 상기 위치 신호의 적어도 하나의 추가된 부분에 있어서, 적어도 하나의 추가된 코드북을 사용하는 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계에 의해 생성되고, 상기 디코딩 방법이 : a. 제1역 코드북을 사용함으로써 제1코드북을 사용하여 부호화된 상기 위치를 디코딩하는 단계; 및 b. 제2역 코드북을 사용함으로써 제2코드북을 사용하여 부호화된 상기 위치를 디코딩하는 단계를 추가로 포함하는 방법.
  9. 적어도 일차원 안에서 순서가 정해진, 한 세트의 선택된 계수의 위치에 의해 특징지어진 광원 위치 신호를 부호화하는 신호를 디코딩하는 방법으로서, 상기 엔코딩 신호가, 상기 위치 신호의 제1성분에서, 적어도 일차원 안의 유형으로 위치를 분류하는 방법에 의해 상기 선택된 계수들의 위치를 부호화하는 신호를 생성하는 단계; 및 상기 위치 신호의 제2성분에서, 선택된 계수의 위치 사이의 거리를 측정하는 방법에 의해 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계에 의해 생성되고, a. 적어도 일차원 안의 유형으로 위치를 분류하는 상기 방법에 의해 생성된 위치를 부호화하는 상기 신호를 디코딩하는 단계; 및 b. 선택된 계수들의 위치 사이의 거리를 측정하는 상기 방법에 의해 생성된 위치를 부호화하는 상기 신호를 디코딩하는 단계를 포함하는 방법.
  10. 적어도 일차원안에서 순서가 정해진, 한 세트의 선택된 계수의 위치에 의해 특징지어진 광원 위치 신호인 엔코딩신호를 부호화하는 디코딩하는 방법으로서, 상기 엔코딩 신호가, 상기 위치 신호의 제1성분에서, 상기 제1성분 내의 선택된 계수의 일반적으로 기대되는 유형에 관해서 상대적으로 높은 효율성을 갖는 방식에 의해 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계; 및 상기 위치 신호의 제2성분에서, 상기 제2성분내의 선택된 계수의 일반적으로 기대되는 유형에 관해서 상대적으로 높은 효율성을 갖는 방식에 의해 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계에 의해 생성되고, 상기 디코딩 방법이, a, 상기 제1성분내의 선택된 계수의 일반적으로 기대되는 유형에 관해서 상대적으로 높은 효율성을 갖는 상기 방법에 의해 생성되는 위치를 부호화하는 상기 신호를 디코딩하는 단계; 및 b. 상기 제2성분내의 선택된 계수의 일반적으로 기대되는 유형에 관해서 상대적으로 높은 효율성을 갖는 상기 방법에 의해 생성되는 위치를 부호화하는 상기 신호를 디코딩하는 단계를 포함하는, 상기 광원 신호 내의 선택된 계수의 일반적으로 기대되는 유형인, 적어도 일차원 안에서 순서가 정해진, 한 세트의 선택된 계수의 위치에 특징지어진 광원 위치 신호를 부호화하는 디코딩하는 방법.
  11. a. 선택된 계수의 위치를 부호화하기위한 런랭스 엔코더; 및 b. 런랭스 엔코더에 연결된, i) 위치 신호의 제1런 부분에서 상기 선택된 계수의 위치를 부호화하기 위한 제1코드북 메모리; 및 ii) 상기 위치 신호의 적어도 하나의 추가된 작동 부분에선 상기 선택된 계수의 위치를 부호화하기 위한 적어도 하나의 추가된 코드북 메모리를 포함하는, 적어도 일차원 안에서 순서가 정해진 한 세트의 선택된 계수의 위치에 의해 특징지어진 광원 위치 신호에 해당하는 위치 정보를 부호화하기 위한 장치.
  12. a. 위치 신호의 제1성분내에서 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 위한 벡터 양자화기; 및 b. 위치신호의 제2성분내에서 상기 선택된 계수의 위치를 부호화하기 위한 런랭스 인코더를 포함하는 절어도 일차원 안에서 순서가 정해진, 한 세트의 선택된 계수의 위치에 의해 특징지어진 소스 위치 신호에 해당하는 위치정보를 부호화하기 위한 장치.
  13. 적어도 일차원 안에서 순서가 정해진, 한 세트의 선택된 계수의 위치에 의해 특징지어진 소스 위치 신호를 부호화하는 신호를 디코딩하는 장치로서, 상기 엔코딩 신호가, 상기 위치 신호의 제1성분에서, 벡터 양자화에 의해 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계; 및 상기 위치신호의 제2성분에서, 런랭스 엔코딩에 의해 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계에 의해 생성되고, 상기 디코딩 장치가, a. 런랭스 디코딩에 의해 생성된 상기 선택된 계수의 위치를 부호화하는 상기 신호를 디코딩하기 위한 수단; 및 b. 벡터 양자화에 의해 생성된 상기 선택된 계수의 위치를 부호화하는 상기 신호를 디코딩하기 위한 수단을 포함하는 장치.
  14. 적어도 일차원 안에서 순서가 정해진, 한 세트의 선택된 계수의 위치에 의해 특징지어진 소스 위치 신호를 런랭스에 의해 부호화하는 신호를 디코딩하기 위한 장치로서, 1 코드북을 사용하는 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계; 및 상기 위치 신호의 적어도 하나의 추가된 부분에 있어서, 적어도 하나의 추가된 코드북을 사용하는 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계에 의해 생성되고, 상기 디코딩 장치가, a. 상기 위치를 디코딩하기 위한 런랭스 복호기; 및 b. 상기 런랭스 복호기에 관련된, i) 상기 위치 신호의 상기 제1런 부분에서 상기 선택된 계수의 위치를 디코딩하기 위한 제1코드북 메모리; 및 ii) 상기 위치 신호의 상기 적어도 하나의 추가된 런 부분에서 상기 선택된 계수의 위치를 디코딩하기 위한 적어도 하나의 추가된 코드북 메모리를 포함하는 장치.
  15. 적어도 일차원 안에서 순서가 정해진, 한 세트의 선택된 계수의 위치에 의해 특징지어진 소스 위치 신호를 부호화하는 신호를 해독하기 위한 장치로서, 상기 인코딩 신호가, 상기 위치신호의 제1성분에 있어서, 적어도 일차원에서의 유형으로 위치를 분류하는 방법에 의해 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계; 및 상기 위치 신호의 제2성분에 있어서 선택된 계수의 위치 사이의 거리를 측정하는 방법에 의해 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계에 의해 생성되고, 상기 디코딩 장치가, a. 적어도 일차원 안에서의 유형으로 위치를 분류하는 상기 방법에 의한 상기 선택된 계수의 위치를 부호화하는 상기 신호를 디코딩하는 유형 디코더 수단; 및 b. 선택된 계수의 위치 사이의 거리를 측정하는 상기 방법에 의해 상기 선택된 계수의 위치를 부호화하는 상기 신호를 디코딩하기 위한 거리 디코기 수단을 포함하는 장치.
  16. 적어도 일차원 안에서 순서가 정해진, 한 세트의 선택된 계수의 위치에 의해 특징지어진 소스 위치 신호를 부호화하는 신호를 디코딩하기 위한 장치로서, 소스 신호내의 일반적으로 기대되는 선택된 계수의 유형이 있고, 상기 인코딩 신호가, 상기 위치 신호의 제1성분에 있어서, 상기 제1성분내의 일반적으로 기대되는 선택된 계수의 유형에 관해서 상대적으로 높은 효율성을 갖는 방법에 의해 상기 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계; 및 상기 위치 신호의 제2성분에 있어서, 상기 제2성분내의 일반적으로 기대되는 선택된 계수의 위치를 부호화하는 신호를 생성하는 단계에 의해 생성되고, 상기 디코딩 장치가, a. 상기 제1성분 내의 일반적으로 상기 방법에 의해 상기 선택된 계수의 유형에 관해서 상대적으로 높은 효율성을 갖는 방법에 의해 상기 선택된 계수의 위치를 부호화하는 상기 신호를 디코딩하기 위한 제1디코더 수단; 및 b. 상기 제2성분내의 일반적으로 기대되는 선택된 계수의 유형에 관해서 상대적으로 높은 효율성을 갖는 상기 방법에 의해 상기 선택된 계수의 위치를 부호화하는 상기 신호를 디코딩하기 위한 제2디코더 수단을 포함하는 장치.
KR1019930702566A 1991-12-24 1992-12-18 벡터양자화와 런랭스 엔코딩을 사용하고 적합한 런랭스 엔코딩을 사용하는 데이터를 엔코딩하기 위한 방법 및 장치 KR100261923B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US813,326 1991-12-24
US07/813,326 US5339164A (en) 1991-12-24 1991-12-24 Method and apparatus for encoding of data using both vector quantization and runlength encoding and using adaptive runlength encoding
PCT/US1992/011110 WO1993013497A1 (en) 1991-12-24 1992-12-18 Method and apparatus for encoding of data using both vector quantization and runlength encoding and using adaptive runglength encoding

Publications (1)

Publication Number Publication Date
KR100261923B1 true KR100261923B1 (ko) 2000-07-15

Family

ID=25212066

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019930702566A KR100261923B1 (ko) 1991-12-24 1992-12-18 벡터양자화와 런랭스 엔코딩을 사용하고 적합한 런랭스 엔코딩을 사용하는 데이터를 엔코딩하기 위한 방법 및 장치

Country Status (8)

Country Link
US (1) US5339164A (ko)
EP (1) EP0572638B1 (ko)
JP (1) JP3195966B2 (ko)
KR (1) KR100261923B1 (ko)
AT (1) ATE173847T1 (ko)
CA (1) CA2104287C (ko)
DE (1) DE69227676T2 (ko)
WO (1) WO1993013497A1 (ko)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5838834A (en) * 1991-11-07 1998-11-17 Canon Kabushiki Kaisha Image processing apparatus and method for quantizing image data and quantization errors using single quantizing unit and pluralities of quantization tables
US5394508A (en) * 1992-01-17 1995-02-28 Massachusetts Institute Of Technology Method and apparatus for encoding decoding and compression of audio-type data
EP0586074B1 (en) * 1992-07-31 2001-11-14 Canon Kabushiki Kaisha Image processing apparatus and method suitable for multistage compression
US6028961A (en) * 1992-07-31 2000-02-22 Canon Kabushiki Kaisha Image processing method and apparatus
US5452405A (en) * 1993-01-25 1995-09-19 Hewlett-Packard Company Method and apparatus for delta row decompression
DE4315313C2 (de) * 1993-05-07 2001-11-08 Bosch Gmbh Robert Vektorcodierverfahren insbesondere für Sprachsignale
KR950002458A (ko) * 1993-06-02 1995-01-04 이헌조 영상신호의 압축/신장 장치
WO1996000477A1 (en) * 1994-06-27 1996-01-04 Wang Laboratories, Inc. Lossy compression land expansion algorithm for image representative data
US5787387A (en) * 1994-07-11 1998-07-28 Voxware, Inc. Harmonic adaptive speech coding method and system
US5592227A (en) * 1994-09-15 1997-01-07 Vcom, Inc. Method and apparatus for compressing a digital signal using vector quantization
US5812700A (en) * 1994-09-26 1998-09-22 California Institute Of Technology Data compression neural network with winner-take-all function
JP2930092B2 (ja) * 1994-11-15 1999-08-03 日本電気株式会社 画像符号化装置
US5883976A (en) * 1994-12-28 1999-03-16 Canon Kabushiki Kaisha Selectively utilizing multiple encoding methods
AU695626B2 (en) * 1995-02-03 1998-08-20 Koninklijke Philips Electronics N.V. Video image colour encoding
KR0181028B1 (ko) * 1995-03-20 1999-05-01 배순훈 분류 디바이스를 갖는 개선된 비디오 신호 부호화 시스템
US5774837A (en) * 1995-09-13 1998-06-30 Voxware, Inc. Speech coding system and method using voicing probability determination
US5729691A (en) * 1995-09-29 1998-03-17 Intel Corporation Two-stage transform for video signals
US7426311B1 (en) * 1995-10-26 2008-09-16 Hyundai Electronics Industries Co. Ltd. Object-based coding and decoding apparatuses and methods for image signals
US5764357A (en) * 1996-04-12 1998-06-09 Vlsi Technology, Inc. Zero-run-length encoder with shift register
US6094453A (en) * 1996-10-11 2000-07-25 Digital Accelerator Corporation Digital data compression with quad-tree coding of header file
US6529551B1 (en) * 1996-12-10 2003-03-04 Thomson Licensing S.A. Data efficient quantization table for a digital video signal processor
FR2759524B1 (fr) * 1997-02-10 1999-05-14 Thomson Multimedia Sa Procede et dispositif de codage par estimation de luminance
US6259810B1 (en) * 1997-04-15 2001-07-10 Microsoft Corporation Method and system of decoding compressed image data
US5870535A (en) * 1997-05-12 1999-02-09 Lexmark International, Inc. Method and apparatus for building rasterized lines of bitmap data to be printed using a piecewise-linear direct memory access addressing mode of retrieving bitmap data line segments
DE19725155A1 (de) * 1997-06-13 1998-12-17 Inst Neue Mat Gemein Gmbh Transparente optische Formkörper und Schichten mit niedrigen Wasserstoffgehalten
DE69934939T2 (de) 1998-06-29 2007-10-18 Xerox Corp. Kompression von Grenzen zwischen Bildern
US6205252B1 (en) * 1998-06-29 2001-03-20 Xerox Corporation Two channel HVQ (hierarchical vector quantization) compression
JP2004120122A (ja) * 2002-09-24 2004-04-15 Sharp Corp 画像処理装置
US20060126718A1 (en) * 2002-10-01 2006-06-15 Avocent Corporation Video compression encoder
US7321623B2 (en) 2002-10-01 2008-01-22 Avocent Corporation Video compression system
JP4486847B2 (ja) * 2003-06-16 2010-06-23 オセ−テクノロジーズ・ベー・ヴエー 圧縮画像から中間調画像を作成する方法と装置
US9560371B2 (en) 2003-07-30 2017-01-31 Avocent Corporation Video compression system
US20050169365A1 (en) * 2004-02-02 2005-08-04 Clark Adam L. Data encoding using multi-dimensional redundancies
US7006700B2 (en) * 2004-06-25 2006-02-28 Avocent Corporation Digital video compression command priority
US7457461B2 (en) 2004-06-25 2008-11-25 Avocent Corporation Video compression noise immunity
US7564874B2 (en) 2004-09-17 2009-07-21 Uni-Pixel Displays, Inc. Enhanced bandwidth data encoding method
EP1981432B1 (en) * 2005-06-30 2012-10-03 Abbott Laboratories Delivery system for a medical device
KR101127221B1 (ko) * 2005-07-15 2012-03-29 삼성전자주식회사 주파수 공간에서 컬러 성분간 예측을 이용한 컬러영상부호화/복호화 방법 및 장치
US20070019875A1 (en) * 2005-07-21 2007-01-25 Sung Chih-Ta S Method of further compressing JPEG image
US7555570B2 (en) 2006-02-17 2009-06-30 Avocent Huntsville Corporation Device and method for configuring a target device
US8718147B2 (en) * 2006-02-17 2014-05-06 Avocent Huntsville Corporation Video compression algorithm
US7782961B2 (en) * 2006-04-28 2010-08-24 Avocent Corporation DVC delta commands
US9025641B2 (en) * 2006-06-21 2015-05-05 Alcatel Lucent Distributed transmission involving cooperation between a transmitter and a relay
US8204327B2 (en) * 2007-10-01 2012-06-19 Cisco Technology, Inc. Context adaptive hybrid variable length coding
US8265162B2 (en) * 2007-10-01 2012-09-11 Cisco Technology, Inc. Context adaptive position and amplitude coding of coefficients for video compression
EP2441031B1 (en) * 2009-06-11 2014-10-01 Hewlett-Packard Development Company, L.P. Decoding a physical image
JP4661973B2 (ja) * 2009-07-30 2011-03-30 三菱電機株式会社 動画像符号化装置および動画像復号装置
WO2012027819A1 (en) * 2010-09-02 2012-03-08 Nortel Networks Limited Generation and application of a sub-codebook of an error control coding codebook
JP6640896B2 (ja) * 2018-02-15 2020-02-05 株式会社東芝 データ処理装置、データ処理方法およびプログラム
CN116582134B (zh) * 2023-07-11 2023-10-13 江苏盖亚环境科技股份有限公司 一种钻测一体化装备数据处理方法
CN117176175B (zh) * 2023-11-01 2024-02-02 深圳对对科技有限公司 一种用于计算机的数据传输方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4189711A (en) * 1977-11-08 1980-02-19 Bell Telephone Laboratories, Incorporated Multilevel processing of image signals
JPH0824341B2 (ja) * 1985-10-28 1996-03-06 株式会社日立製作所 画像データ符号化方法
US4792981A (en) * 1987-09-21 1988-12-20 Am International, Inc. Manipulation of run-length encoded images
US5162923A (en) * 1988-02-22 1992-11-10 Canon Kabushiki Kaisha Method and apparatus for encoding frequency components of image information
EP0339589A3 (en) * 1988-04-28 1992-01-02 Sharp Kabushiki Kaisha Orthogonal transform coding system for image data
US4984076A (en) * 1988-07-27 1991-01-08 Kabushiki Kaisha Toshiba Image compression coding system
JPH03129987A (ja) * 1989-10-14 1991-06-03 Sony Corp 映像信号符号化装置及び映像信号符号化方法
US5136371A (en) * 1990-03-15 1992-08-04 Thomson Consumer Electronics, Inc. Digital image coding using random scanning

Also Published As

Publication number Publication date
EP0572638B1 (en) 1998-11-25
DE69227676T2 (de) 1999-07-22
US5339164A (en) 1994-08-16
CA2104287C (en) 2003-02-18
EP0572638A1 (en) 1993-12-08
ATE173847T1 (de) 1998-12-15
JPH06508490A (ja) 1994-09-22
WO1993013497A1 (en) 1993-07-08
EP0572638A4 (en) 1994-06-15
CA2104287A1 (en) 1993-06-25
JP3195966B2 (ja) 2001-08-06
DE69227676D1 (de) 1999-01-07

Similar Documents

Publication Publication Date Title
KR100261923B1 (ko) 벡터양자화와 런랭스 엔코딩을 사용하고 적합한 런랭스 엔코딩을 사용하는 데이터를 엔코딩하기 위한 방법 및 장치
US10045034B2 (en) System and method for using pattern vectors for video and image coding and decoding
KR100289591B1 (ko) 화상데이타 압축장치 및 그 방법, 화상데이타 압축해제장치 및 그 방법, 화상데이타 기록 및 재생 장치
JP3978478B2 (ja) 推定画素値により固定速度のブロック単位の画像圧縮を行うための装置及び方法
US5757973A (en) Compression of image data seperated into frequency component data in a two dimensional spatial frequency domain
JP3868014B2 (ja) ビデオ信号符号化方法及び装置
US6118903A (en) Image compression method and apparatus which satisfies a predefined bit budget
WO2015120818A1 (zh) 图像编码、解码方法及装置
US7171053B2 (en) Device and method for compressing a signal
JPH0678288A (ja) ビデオ変換係数のベクトル符号化のための方法及び装置
CN100576195C (zh) 以无损方式对数字图像和音频数据解码的系统和方法
GB2252021A (en) Data compression
GB2274224A (en) Image data compression
JPH0377477A (ja) 可変長符号化方法及びその装置
US20200252622A1 (en) Secondary transform designs for partitioned transform units in video coding
TWI252699B (en) Transform coefficient compression using multiple scans
US8275209B2 (en) Reduced DC gain mismatch and DC leakage in overlap transform processing
US6396955B1 (en) Image compression and expansion device
JP2914549B2 (ja) 画像符号化方法
US20230336752A1 (en) Image compression with inter-channel encoding of codewords
JPH05236428A (ja) 画像データ記録・送信装置
Lohscheller et al. Colour picture coding-algorithm optimization and technical realization
JP2698034B2 (ja) コード変換方法、コード変換システム及びディジタル・データ信号処理方法
Reusens et al. New results in subband/wavelet image coding
Reusens et al. New techniques for subband/wavelet transform coefficient coding applied to still image compression

Legal Events

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

Payment date: 20120406

Year of fee payment: 13

EXPY Expiration of term