KR100531259B1 - 영상 처리 시스템에서 메모리 효율적인 압축 방법 및 장치 - Google Patents

영상 처리 시스템에서 메모리 효율적인 압축 방법 및 장치 Download PDF

Info

Publication number
KR100531259B1
KR100531259B1 KR10-1999-7004605A KR19997004605A KR100531259B1 KR 100531259 B1 KR100531259 B1 KR 100531259B1 KR 19997004605 A KR19997004605 A KR 19997004605A KR 100531259 B1 KR100531259 B1 KR 100531259B1
Authority
KR
South Korea
Prior art keywords
value
pixel
values
prediction error
quantization
Prior art date
Application number
KR10-1999-7004605A
Other languages
English (en)
Other versions
KR20000057237A (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 KR20000057237A publication Critical patent/KR20000057237A/ko
Application granted granted Critical
Publication of KR100531259B1 publication Critical patent/KR100531259B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • H04N19/426Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods
    • H04N19/428Recompression, e.g. by spatial or temporal decimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

영상 처리기(20)는 양자화되는 DPCM 예측 에러를 발생시킨다. 만약 예측 에러 값이 양이라면, 그 값은 불변한 값으로 양자화기에 전달된다. 만약 예측 에러 값이 음이라면, 바이어스 값이 양자화기의 동작 한계 내에서 양수(positive number)를 발생시키기 위하여 예측 에러 값에 가산된다. 바이어싱된 예측 에러 값들은 양자화된다. 양자화기(28)에 의하여 수신되는 모든 값들은 양이고 종래의 양자화기의 한계 내에 있기 때문에, 양자화기(28)에 의하여 사용되는 양자화 테이블은 음의 예측 에러 값들을 위한 양자화 값을 포함할 필요가 없다. 이것은 인자 2만큼 예측 에러 값들의 범위를 감소시켜서 양자화 해상도를 배가시킨다.

Description

영상 처리 시스템에서 메모리 효율적인 압축 방법 및 장치{MEMORY EFFICIENT COMPRESSION METHOD AND APPARATUS IN AN IMAGE PROCESSING SYSTEM}
본 발명은 디지털 비디오 처리기에 관한 것이다. 구체적으로, 본 발명은 디지털 비디오 처리기의 메모리 요구 조건을 감소시키기 위한 영상 압축 방법과 장치에 관한 것이다.
메모리의 효율적인 사용은 영상 처리기의 설계와 작동에 있어서 중요하다. 예를 들어, 텔레비젼 시스템과 같은 소비자 제품은 MPEG-2 신호 처리기능을 포함하는 영상 처리기를 사용할 수 있다. MPEG(Motion Picture Experts Group) 신호 압축 표준(ISO/IEC 13181-2, 1994년 5월 10일)은 영상 처리의 다른 형태 중에서도 고해상도텔레비젼(HDTV) 처리기능을 채용하는 위성, 케이블 및 지상의 방송 시스템에서 사용하기에 특별히 매력적인, 넓게 수용되는 영상 처리 표준이다. 고해상도 디스플레이를 사용하는 제품은 디스플레이하기 이전에 MPEG 디코딩된 프레임을 일시적으로 저장하기 위하여 96M 비트나 그 이상의 메모리를 요구할 수 있다. MPEG 처리기는 디스플레이를 위하여 정확한 영상를 재구성(reconstruct)하도록 움직임 추정(motion estimation)과 움직임 보상(motion compensation)을 위해 이러한 프레임을 요구한다.
MPEG 디코딩된 픽셀(pixels 또는 pels : picture elements)로부터 영상를 재구성하는 시스템들은 전형적으로 차분 펄스 코드 변조(DPCM : Differential Pulse Coded Modulation) 방식을 채용한다. DPCM 방식에 있어서, 처리기는 그 다음 픽셀값을 예견하는 예측값을 생성시킨다. 합산 회로망은 실제 픽셀값으로부터 예측값을 감산계산하고, 그 결과인 차이값은 그 다음 픽셀값을 예측할 뿐만 아니라 현재의 픽셀값을 나타내는데에 사용된다. 예측 에러로서 알려진 이 차이값은, 일반적으로 원래의 픽셀 즉 예측값 보다도 더 작아서, 원래의 픽셀값을 처리하는 것보다 차이값을 처리하는 것이 시스템의 대역폭에 대한 요구를 감소시킨다. 이 예측 에러는 양 또는 음의 값을 가질 수 있다. 앙(Ang) 등의 "비디오 압축은 큰 이득을 남긴다" (1991년 10월 IEEE 스펙트럼)는 일반적으로 DPCM 처리를 채용하는 MPEG 인코더와 디코더를 기술한다.
효율적인 메모리 영상 처리기는 저장하기 이전에 블록 데이터를 재코딩(재압축)함으로써 영상 프레임을 저장하는데 더 적은 메모리를 사용한다. 공간 영역에서, 영상 프레임을 저장하기 위하여 사용되는 픽셀당 비트 수를 감소시키는 것은, 만약 픽셀가 픽셀 원래의 비트 크기로 정확히 재구성되어질 수 없다면 화상 품질에 불리한 영향을 미친다. 특히 영상의 평활한 영역(smooth areas)에 결함(artifact)이 발생할 수 있다. 메모리 감축 영상 처리기는 가능한 한 효율적이고 경제적으로 MPEG 디코딩된 신호를 정확하게 양자화 해야 하고 역양자화하여야 한다. 휘도(luminance)와 색도(chrominance) 데이터를 다르게 처리함으로써 인간의 시각적 생리기능을 이용하는 것은 알려져 있다. 인간의 눈이 볼 수 있는 것 뿐만 아니라 데이터 내의 에너지를 고려에 넣기 위하여 각 유형의 데이터에 대한 압축 규칙을 최적화시키는 것이 아캄포라(Acampora) 등의 미국 특허 번호 제4,575,749호에 개시되어 있다. 이 아캄포라 특허는, 전송하기 이전에 텔레비전 신호에 있는 잡음을 줄이기 위한 진폭 압축을 개시한다.
도 1은 본 발명에 따른 시스템을 포함하는 픽셀 블록 처리기의 블록도.
도 2는 도 1의 시스템의 압축부의 상세도.
도 3은 본 발명에 따른 시스템에 의하여 사용하기에 적합한 패킷 단위로 된 데이터 형식 배치도.
도 4는 도 1의 시스템의 압축해제 부분의 상세도.
도 5a 는 도 2의 양자화 매퍼(quantization mapper) 부분의 상세도.
도 5B 는 도 5A 의 선택 블록을 위한 진리표.
도 6a 는 양자화 테이블 재구성 레벨에 대한 예측 에러값의 양 및 음의 특성도.
도 6b 는 본 발명에 따른 3 비트의 양자화/역양자화 테이블.
도 6c 는 본 발명에 따른 4 비트의 양자화/역양자화 테이블.
도 7은 본 발명에 따른 테이블을 사용하는 양자화/역양자화 테이블과 처리 데이터의 설계 흐름도.
도 8은 본 발명을 채용하는 MPEG 호환 텔레비젼 시스템의 블록도.
본 발명자들은 재구성된 데이터로 도입되는 결함을 극소화하면서 메모리를 절약하고 처리기의 물리적 크기를 감소시킬수 있는, 최소 하드웨어와 소프트웨어를 채용하는 효율적인 데이터 감축 시스템을 제공하는 것이 바람직하다는 것을 인식한다.
본 발명의 원리에 따르면, 영상 처리기는 양자화되어질 DPCM 예측 에러값을 생성시킨다. 양자화 이전에, 상기 처리기는 상기 예측 에러가 양인지 음인지를 결정한다. 만약 예측 에러값이 양이라면, 이 값은 변화되지 않은 채로 양자화기로 전달된다. 만약 예측 에러값이 음이라면, 바이어스 값이 상기 예측 에러값에 가산되어 양자화기의 영역 내에서 양수를 생성시키게 한다. 바이어스된 예측 에러값 및 바이어스되지 않은 예측 에러값이 양자화기로 전달된다. 양자화기에 의하여 수신되는 모든 값들은 양이고 현재의 양자화기 한계 내에 있기 때문에, 양자화기에 의하여 사용되는 양자화 테이블은 음의 예측 에러값에 대한 양자화값을 포함할 필요가 없다. 이것은 2의 인자만큼 예측 에러값의 범위를 감축시키고 양자화 해상도를 2배 증가시킨다.
본 발명의 예시적인 실시예에서, 텔레비젼 수신기는 MPEG 디코더를 포함한다. 데이터 압축 회로망은 프레임 메모리에 저장하기 이전에 8 x 8 영상 블록을 나타내는 디코딩되고 압축 해제된 MPEG 신호를 양자화하고, 영상 디스플레이를 위하여 요구될 때, 이 영상 블록을 재구성한다. 디스플레이 장치는 이 프레임 메모리로부터 유도되는 영상 정보를 디스플레이한다.
데이터 감축 회로망을 통하여 데이터 무결성(data integrity)을 유지하기 위하여, 이 회로망은 픽셀 블록을 스캐닝하고 영상 픽셀값들의 구간(range)를 결정한다. 이 회로망은 실제 구간과 소정 구간(predetermined range)들의 세트 사이의 가장 잘 부합되는 것을 찾는다. 선택된 소정 구간을 사용하여, 이 회로망은 소정 구간의 양의 영역으로부터 유도되는 양자화 레벨들을 포함하는 양자화 테이블에 억세스한다. 양자화 테이블은 상기 기술된 바와 같이 DPCM 값들을 양자화하기에 충분한 범위이다. 이 예에 있어서, 상기 기술된 바이어스 값(bias value)은 상기 선택된 소정 구간이다. 상기 선택된 소정 구간은 일반적으로 이 시스템을 위한 가장 큰 가능한 픽셀값(8비트에 대해 256)보다 작으며, 양자화 테이블(및 대응하는 역양자화 테이블)이 단지 양수값만을 포함하기 때문에, 양자화 해상도를 2배로 증가시킨다. 만약 가장 작은 소정 구간이 주어진 픽셀 블록에 대하여 적합하다면 32의 인자만큼 양자화 해상도를 증가시키는 것이 가능하다.
도 1에서, 예를 들어 MPEG 디코더(도시되지 않음)인 디코더가 압축기(12)의 입력단(10)에 MPEG 디코딩된 픽셀 데이터의 블록을 제공한다. 압축기(12)는 예측기(18), 양자화기(20), 및 결합기(22)를 포함한다. 예측기(18)는 잘 알려진 원리를 채용하고, 예를 들어 제인 에이(Jain, A.)의 디지털 영상 처리의 기초 (프렌티스-홀 주식회사, 1989년, 484쪽)에서 기술된 유형일 수 있다.
양자화기(20)는 메모리(14)에 데이터가 감축된 픽셀 블록을 제공한다. 디스플레이 처리기(도시되지 않음)가 영상를 디스플레이하기 위하여 메모리(14)에 있는 감축된 데이터 블록에 억세스할 때, 압축 해제기(16)는 원래의 데이터 블록을 재구성한다. 압축 해제기(16)는 메모리(14)에서부터 감축된 데이터를 검색하여 원래의 데이터 블록을 재구성하기 위하여 예측기(24)와 역양자화기(26)를 포함한다. 양자화기(20)와 역양자화기(26)는 상술되어질 바와 같이 본 발명의 원리에 따라 배열된다. 예측기(24)는 예측기(18)와 유사하다.
압축기(12)의 입력단(10)은, 도 8과 연계되어 설명되어질, MPEG 디코더로부터 픽셀 블록을 수신한다. 픽셀 블록은 공간 영역(spatial domain)으로 되어 있고, 예를 들어, 영상 픽셀의 8 x 8 블록으로 구성된다. 입력단(10)은 픽셀 블록 데이터를 결합기(22)의 비반전 입력단(non-inverting input)과 양자화기(20)에 공급한다. 예측기(18)는 픽셀 예측 데이터를 결합기(22)의 반전 입력단(inverting input)과 양자화기(20)에 공급한다. 결합기(22)는 반전 입력단 및 비반전 입력단으로부터의 신호들을 결합하고 그 차이값을 양자화기(20)에 제공한다. 양자화기(20)는 양자화된 픽셀값을 예측기(18)로 출력하고 양자화된 픽셀의 차이값을 저장을 위해 메모리(14)로 출력한다.
도 2는 양자화기(20)를 좀더 상세하게 도시한다. 동일한 참조 번호는 도 1 및 도 2에서 동일한 구성 요소를 지시한다. 구체적으로, 양자화기(20)는 예측 에러 처리기(27), 양자화 매퍼(28), 코딩 제어기(29), 최소-최대-구간 처리기(MMRP : Min-Max-Range Processor)(30), 첫번째 픽셀 처리기(31), 및 다중화기(32)를 포함한다. 입력단(10)은 블록 픽셀 데이터를 MMRP(30)에 제공하는데, 이 MMRP는 픽셀 블록을 스캐닝하고 최소 픽셀값, 최대 픽셀값, 및 구간을 결정한다. MMRP(30)는 실제 구간을 최대값에서부터 최소값을 뺀 것에 더하기 일(1)을 한 것으로서 정의한다. MMRP(30)는 실제 구간의 함수로서 소정 구간들의 세트에서 하나의 소정 구간을 선택하고, 회로망 내에서 후속적으로 사용하기 위해 실제 구간을 상기 선택된 소정 구간과 교체한다. MMRP(30)는 최소값, 최대값, 및 소정 구간의 블록 파라미터값을 압축하여 그 값들을 다중화기(32)에 전송한다.
또한 최소 픽셀값과 구간값도 첫번째 픽셀 처리기(31)에 전송되고, 상술되어질 바와 같이, 예측 에러 처리기(27)에 구간값이 전송된다. 예측 에러 처리기(27)는 결합기(22)로부터 예측 에러 데이터를 수신하고, 상기 선택된 소정 구간값으로 음수값을 바이어스시킨다. 양자화기 처리기(28)는 예측 에러 처리기(27)로부터 바이어스된 예측 에러값과 바이어스되지 않은 예측 에러값을 수신한다. 이 값들은 양자화되어 다중화기(32)에 송신된다. 양자화기 처리기(28)도 또한 양자화된 예측 에러값을 예측기(18)로 송신하고, 예측기(18)는 예측 데이터를 계산하기 위하여 예측 에러값을 사용한다. 다중화기(32)는 블록 파라미터와 양자화된 데이터를 후술되어지는 타이밍과 제어 하에 메모리(14)에 송신한다. 블록 파라미터는 양자화 픽셀 블록과 관련된 파라미터 필드 안에서 메모리(14) 내에 저장되는 오버헤드 데이터를 나타낸다. 파라미터 필드와 양자화된 데이터는 함께 하나의 패킷을 형성하는데, 이 패킷은 적절한 역양자화 테이블에 억세스하고 픽셀 블록을 재구성하기 위한 역양자화 처리기(36)에 의하여 요구되는 모든 정보를 통합(consolidate)한다. 코딩 제어기(29)는, 상술되어질 바와 같이, 개별 픽셀 블록을 위한 양자화 테이블의 선택 뿐만 아니라 블록 파라미터와 압축 데이터의 전송을 감독한다.
첫번째 픽셀 처리기(31)는 입력단(10)으로부터 픽셀 블록을 수신하고, 소정 기준 픽셀값을 식별한다. MMRP(30)로부터 수신된 블록의 최소 픽셀값은 다른 블록 픽셀들과는 독립적으로 기준 픽셀을 압축하는 것을 용이하게 해준다. 이 압축된 기준 픽셀은 역양자화기(26)가 손실이 없거나 손실이 거의 없는 방식으로 픽셀의 원래값을 재구성하기에 충분한 비트로 나타내진다. 첫번째 픽셀 처리기(31)는 상기 압축된 기준 픽셀값을 하나의 블록 파라미터로서 다중화기(32)에 전송하는데, 이 다중화기(32)는 상기 기준 픽셀값을 포함하여 블록 파라미터들 및 양자화된 데이터를 메모리(14)로 전송한다. 역양자화기(26)는, 픽셀의 압축해제 동안에, 상기 양자화된 블록 픽셀들을 위한 예측 값으로서 상기 기준 픽셀을 사용한다. 압축 해제 동안 예측 회로망에서 사용되는 첫번째 값(상기 기준 픽셀값)은 독립적이기 때문에, 주어진 픽셀 블록은 다른 픽셀 블록들로부터의 정보가 없어도 압축 해제될 수 있다. 이 값은 또한 정확하기 때문에, 재구성된 데이터에서 전달되는 예측 에러(a propagating prediction error)를 제거한다.
이 기준 픽셀은 압축된 값을 유도하기 위하여 예측자(predictor)로서 픽셀 블록의 최소값을 사용하여 압축된다. 최소값은 기준값으로부터 감산되고 그 차이값이 2로 나누어진다. 그 결과값은, 블록의 픽셀값들의 구간을 이진법으로 표현하기 위해 필요로 하는 것보다 하나가 적은 비트로, 메모리(14)에 저장된다. 픽셀 블록에서 다른 값들을 위한 예측자로서 블록 픽셀값들을 사용할 때, 기준 픽셀값과 최소 픽셀값과 같은, 임의의 두 블록 픽셀값 사이의 차이값이 어떤 구간의 영역 내에 포함될 것이기 때문에, 상기 구간은 압축된 기준 픽셀값을 저장하기 위하여 사용되는 비트의 수를 정의한다. 구간 영역은 제로(0)에서부터 그 구간 값에서 일(1)을 뺀 것까지이다. 압축된 기준값은, 차이값이 2로 나누어지므로 이진 표현을 위해 요구되는 비트의 수를 일(1) 비트만큼 감소하기 때문에, 구간을 나타내는데 요구되는 것보다 1 비트가 더 적은 비트를 사용한다.
양자화기(20)와 역양자화기(26)는 각 블록에 대해 최적화되어 있는 양자화 테이블 및 역양자화 테이블에 각각 억세스한다. 양자화 테이블과 역양자화 테이블은 픽셀 블록의 대략적 범위에 기초한 값들을 포함한다. 구간은 임의의 블록을 위한 최대 픽셀값과 최소 픽셀값 사이의 차이이다. 최소-최대-구간 양자화기(30)는 입력 데이터 블록을 수신하고 최소 픽셀값과 최대 픽셀값을 결정하기 위하여 그 입력 데이터 블록을 스캐닝한다. 그후 양자화기(20)는 최대값에서부터 최소값을 감산하고 일(1)을 가산(최대값-최소값+1)하여, 해당 픽셀 블록을 위한 구간을 계산한다.
양자화기(20)는 이 계산된 구간과, 이 계산된 구간보다 크거나 같은 것이 적어도 하나 있는, 소정 구간들의 세트를 비교하여, 하나의 소정 구간을 선택하고, 및 선택된 소정 구간으로부터 유도된 양자화 테이블에 억세스한다. 소정 구간은, 실제 계산된 구간보다 크거나 같은 값인 세트 중의 가장 작은 값인 상기 소정 구간을 식별하는 최적 부합 분석법(a best fit analysis)에 의하여 선택된다. 양자화 테이블과 역양자화 테이블은 이 선택된 소정 구간의 영역 내의 값을 포함하도록 맞추어지고(customized), 따라서 실제 구간의 값들을 모두 포함한다. 양자화기(20)는 DPCM 처리를 사용하고 예측 에러인 차이값들을 생성시킨다. 이 예측 에러는, 만약 예측기(18)에 공급되는 픽셀값들이 이 예측기(18)가 현재 예측값을 발생시키고 있는 픽셀과 동일한 픽셀 블록에서 오는 것이라면, 실제 구간의 영역 안에 존재한다. 압축기(12)는 이 파라미터를 따르고 이 파라미터를 유지한다. 실제 구간은 종종 256(8비트 픽셀값의 최대값)보다 상당히 더 적고, 이 구간로부터 유도된 테이블 레벨들은 256으로부터 유도된 테이블 레벨들보다 더 나은 해상도를 만들어내는데, 이는 선택된 소정 구간이 일반적으로 실제 구간에 있는 값에 가깝기 때문이다. 그러므로, 시스템 정확도와 효율성은 상기 구간에 테이블 레벨들을 맞춤으로써 증가한다.
입력 블록 데이터를 재구성하기 위하여 역양자화기(26)는, 양자화기(20)가 픽셀 블록을 양자화할 때 채용된 양자화 테이블에 억세스하기 위하여 어느 소정 구간을 사용하는지를, 알아야만 한다. 이 구간 및 다른 픽셀 블록 파라미터의 표현은, 해당 양자화된 픽셀 블록과 함께, 하나의 파라미터 필드 안에서 메모리(14)에 저장된다. 양자화된 픽셀 블록과 함께, 메모리(14) 내에 블록 파라미터 표현을 저장함으로써, 압축 해제기(16)는 적절한 역양자화 테이블에 억세스하고 픽셀 블록을 효율적이고 정확하게 재구성할 수 있다. 이 파라미터 필드 내에 포함된 다른 픽셀 블록 파라미터는 예를 들어 최소 픽셀 블록값이나 기준 픽셀 블록값일 수 있다. 도 3은 파라미터 필드와 압축 데이터의 가능한 일 구성을 도시한다. 이 파라미터 필드는 도 3에서 점선 박스 내에 포함된 이러한 블록 파라미터들로 구성되어 있다. 이 실시예에서, 파라미터 필드는 압축 데이터 페이로드(payload)을 포함하는 데이터 패킷의 헤더(header)로서 배열된다.
디스플레이 영상의 품질을 크게 저하시키는 일이 없이 프레임 메모리의 감축을 최대화시키기 위하여, 파라미터 필드에 있는 블록 파라미터들에 의해 표현된 오버헤드 정보는 메모리(14)에 저장된다. 파라미터 필드를 저장하는데 사용되는 각 비트는 양자화된 픽셀을 저장하기 위하여 이용 가능한 메모리를 감소시킨다. 그러므로, 블록 파라미터들 중 둘, 즉 구간값과 최소값을 저장하기 위하여 요구되는 비트의 수는 대부분의 경우에 있어 각 파라미터에 대해 8비트에서 3비트로 감소된다. 이 과정은 다음과 같이 이루어진다.
실제 구간은, 가장 잘 부합되는 것을 결정하기 위하여, 소정 구간들의 세트와 비교된다. 소정 구간이 픽셀 블록을 위한 범위를 나타내는 데 사용되는 값이 되고 그 후 처리되어진다. 소정 구간은 픽셀 블록 내의 모든 픽셀값들을 나타내도록 하는 것을 보장하기 위하여 실제 구간보다 더 크다. 이 소정 구간의 세트는 16, 32, 64, 96, 128, 192, 및 256으로 된 7개의 값들을 포함한다. 이 세트는 양자화기(20)와 역양자화기(26) 모두에 이용 가능하기 때문에, 소정 구간은 하나의 인덱스 값(index value)에 의해 파라미터 필드 안에 나타낼 수 있다. 이 인덱스는 다만 7개의 소정 구간들만 나타내면 되기 때문에, 이진 표현을 위하여 단지 3비트만을 필요로 한다.
이 시스템은 유사한 방식으로 최소 픽셀값을 처리한다. 7개의 소정 구간 중 5개에 있어서, 이 시스템은 상기 선택된 소정 구간에 대해 고유한 8개의 최소 픽셀값들의 소정 세트에 억세스한다. 양자화기(20)는 실제 최소 픽셀값을 소정 세트와 비교하고, 실제 최소값보다 더 적거나 같은 것 중에서 가장 큰 소정 최소값을 선택한다. 그후 소정 최소값은 처리되고 있는 픽셀 블록을 위한 최소 픽셀값을 나타내는데 사용되는 값이 된다. 이 세트는 양자화기(20)와 역양자화기(26) 모두에 이용 가능하기 때문에, 소정 최소값은 하나의 인덱스 기호값(index symbol value)에 의하여 파라미터 필드 내에서 나타낼 수 있다. 이 인덱스 기호도 또한 다만 8개의 소정 최소 픽셀값들만 나타내면 되기 때문에, 이진 표현을 위하여 3비트를 필요로 한다.
7개의 구간들 중 5개를 위한 8개의 소정 최소 픽셀값들의 세트는 아래 방정식 1 로 정의된다. 이 방정식은 제로(0)로 시작하는 각각의 구간 최소값을 위하여 일정한 선형 스텝(linear step)를 제공한다.
Qmin(Rs, i) = INT{i((256-Rs)/7)} ; 0 <= i <= 7 (1)
이 방정식에서, i는 오버헤드 파라미터 필드안에 3비트로 나타낸 인덱스 기호값이다. INT{f(x)}는 그 결과값의 정수 부분만이 사용되는 것을 나타낸다. 이 방정식 1 이 적용되는 5개의 구간들은 32, 64, 96, 128, 및 192이다. 괄호 속에 있는 식 f(x)은 함수 INT가 연산하는 대상인, 방정식 1 에 있는 식과 같은, 임의의 식을 나타낸다. 소정 구간 16 에 있어서는, 원래의 8비트 최소값이 사용된다. 소정 구간 256 에 있어서는, 256을 위한 최소값이 8비트 워드에 대하여 제로(0)이기 때문에 저장되는 최소값은 없다.
아래 방정식 2 는 실제 최소 픽셀 블록값에 대체되는 세트에서부터 소정 최소 픽셀값을 선택한다. MAXi{f(x)}는 괄호 속에 있는 조건을 만족하는 i의 최대값이 Qmin을 발생시키는데 사용되어야 하는 것을 나타낸다.
Qmin = MAXi{Qmin(Rs, i)|Qmin(Rs, i) <= Xmin ; 0 <= i<= 7} (2)
방정식 2 는, 소정 최소값들이 실제 최소값보다 더 적기 때문에, 양자화된 픽셀 블록이 재구성될 때, 실제 픽셀 블록값을 커버하기에 충분하지 않은 소정 구간을 선택할 수도 있다. 예를 들어, 만약 주어진 픽셀 블록 내에서 최소 픽셀값이 100 이고 최대 픽셀값이 140 이라면, 그때 선택된 소정 구간은 64 이다. 방정식 1 에 의해 발생하는 선택된 소정 최소 픽셀값은 82 이다. 선택된 최소값을 선택된 구간에 가산한 결과값은 실제 최대 픽셀값보다도 더 큰 146 이다. 그러므로, 픽셀 블록의 모든 값들은 선택된 소정 값들에 의하여 나타내어질 것이다. 그러나, 만약 최대 픽셀 블록값이 대신 160 이라면, 선택된 소정 값들은 동일한 값으로 될 것이나, 해당 픽셀 블록의 영역을 완전히 나타내지는 못할 것이다. 이 경우에, 그 다음으로 더 높은 소정 구간 96 이 선택되고, 새로 선택된 소정 최소값은 91 이다. 91 에 소정 구간인 96 을 가산한 값은 187 인데, 이 값은 실제 최대 픽셀 블록값 160 보다 더 크다. 그러므로, 이 구간으로부터 선택되는 양자화 테이블과 역양자화 테이블은 해당 블록 내에 있는 모든 픽셀들을 위한 레벨들을 제공할 수 있다. 양자화기(28)는 만약 소정 구간과 최소 픽셀값들의 첫번째 선택이 유효한지 여부를 결정하기 위하여 앞서 기술된 분석법을 수행한다. 만약 유효하지 않다면, 양자화기(28)는 그 다음으로 더 큰 소정 구간을 선택하고 새로운 최소 픽셀값을 선택한다.
앞서 서술한 바와 같이, 만약 예측 회로망이 동일한 블록 내의 픽셀값들로부터 그 회로망의 예측값을 유도한다면, 그때는 실제 픽셀값과 이 예측되는 픽셀값 사이의 차이값(E)이 다음식의 한계 내에 있을 것이다:
- 구간 < E < 구간, (3)여기서
구간 = Xmax - Xmin + 1 (4)
방정식 3 에서, E 는 예측 에러이다. 방정식 4 에서, Xmax 와 Xmin 는 각각 최대 블록 픽셀값과 최소 블록 픽셀값이다. 그러므로, 이 블록으로부터의 픽셀 데이터의 구간은 양자화 테이블과 역양자화 테이블이 수신하게 될 값들과, 이 테이블들이 이 특정 블록을 위해 제공해야 하는 제한 조건을 한정하게 된다. 만약 이 구간이 워드 크기의 최대값(8비트 워드인 경우 256)보다 작다면, 그 때는 양자화 테이블과 역양자화 테이블의 해상도는 증가될 수 있다.
본 발명의 원리를 채용하는 양자화 테이블과 역양자화 테이블은 픽셀 블록의 구간에 대해서만 설계된 테이블들의 해상도에 비해 2배의 해상도를 가진다. 테이블들이 음과 양의 구간 사이에 있는 모든 값들을 커버하는 것이 아니라 제로(0)에서부터 양의 구간값까지의 값을 커버하는 것만 필요로 하기 때문에, 해상도는 배가된다. 도 6b와 도 6c는, 소정 구간 64 에 있어서, 3비트 테이블과 4비트 테이블을 각각 도시한다. 양자화 이전에, 예측 에러 처리기(27)(도 2)는 결합기(22)로부터의 예측 에러가 양인지 아니면 음인지를 결정한다. 만약 이 값이 양이라면, 이 값은 변하지 않고 양자화 매퍼(28)에 전송된다. 만약 이 값이 음이라면, 예측 에러 처리기(27)는, 이 값이 양자화 매퍼(28)에 전송되기 이전에, 음의 예측 에러값에 구간값을 가산한다. 음의 예측 에러값이 음의 구간값 영역 내에 있기 때문에 이 음의 예측 에러값에 양의 구간값을 가산하는 것은 바이어스된 에러값을 생성시킨다. 이 바이어스된 에러값은 {제로(0)보다 더 큰}양의 값이고 양의 구간값보다는 더 적다. 양자화 매퍼(28)는 바이어스된 예측 에러값과 바이어스되지 않은 예측 에러값을 모두 수신하고 양의 소정 구간 영역에 적응된 양자화 테이블로 이 예측 에러값들을 양자화시킨다. 양자화된 에러값들은 다중화기(32)에 전송되고 그후 시스템 제어기(도시되지 않음)의 제어를 따라 메모리(14)에 저장된다.
본 발명의 원리를 사용하는 양자화 테이블은 음의 구간값에서부터 양의 구간값까지가 아니라 제로(0)에서부터 구간-1 까지만을 양자화하기 때문에, 이 테이블의 해상도는 2배가 된다. 예를 들어, 만약 주어진 블록에 대한 픽셀값의 소정 구간이 64이고, 또한 만약 테이블 내에 14개의 양자화/역양자화 레벨이 있다면, 본 발명의 원리를 사용하지 않는 테이블들은 각 레벨{(64X2)/14} 사이에 평균 스텝 크기가 9.2(가장 가까운 소수 첫째자리까지 반올림)가 될 것이다. 본 발명의 원리에 따라 설계된 동일한 테이블들은 동일한 소정 구간에 대해 14개의 레벨(64/14) 사이에 4.6(또한 반올림됨)으로 스텝 크기를 줄임으로써, 평균 해상도가 2배가 될 것이다.
도 6b에 도시되어 있는 테이블은, 전형적인 4비트 테이블(24)에 있는 최대 16개의 가능한 레벨에 비하여, 14개의 가능한 양자화 레벨을 가진다. 가능한 레벨의 개수는 기호(symbol) 중 두 개(000과 001)가 단지 3비트만을 포함하기 때문에 감소된다. 이 3 비트의 코드워드 기호(codeword symbol)는 14개의 레벨 테이블 내에 배치되어 그 결과 그 기호들이 데이터 해상도에서의 손실을 능가하는 대역폭에서의 상당한 감소와 메모리 요구 조건을 만족하면서 자주 억세스된다. 각 레벨이 우세한 M 비트(즉 4 비트)와 연관된 출력 기호를 가지는 N 개의 레벨(즉 14개의 레벨들)을 가지는 양자화 테이블에서, 적어도 하나의 레벨(즉 레벨 1과 레벨 13)이 자주 발생하는 입력값들과 M 비트보다 더 적은 비트(즉 3비트)를 가지는 대응하는 고유 코드워드 기호와 연관된다.
압축 해제 회로망은 그 데이터가 압축 해제를 위하여 검색될 때, 3비트와 4비트 기호를 식별해야만 한다. 이것은 3비트 기호의 비트 패턴을 유보함으로써 용이하게 된다. 예를 들어, 도 6b 에서는 단지 3비트의 단축 기호들만이 "000"와 "001"의 형태를 가진다. 3비트의 모든 단축 기호는 유보되고 그 결과 비트 패턴이 소정 비트 위치에 발생할 때라도, 회로망은 3비트 기호임을 확인하고 8비트 데이터값을 역양자화하여 재구성할 때 4번째 비트를 처리하지 않는다. 모든 4비트 패턴에 대하여, 임의로 선택된 3비트 패턴은 2번 발생할 것이다. 이 회로망은 다른 정보가 없이 3비트 기호에 대한 하나의 레벨만을 인식할 수 있기 때문에 이러한 사건 중 단 하나만이 테이블에 있는 하나의 양자화 레벨을 나타낼 수 있다. 4비트 테이블의 경우에는 임의의 3비트 형태가 사용될 수 있고, 단지 3비트 기호만이 유보된 패턴을 가질 수 있다.
이 테이블들이 사용되는 주어진 시스템에 대하여, 만약 설계자가 우세한 4비트 테이블 내에 있는 2개 대신에 하나의 3비트 기호를 사용하는 것이 더 효율적이라는 것으로 결정한다면, 그 때는 양자화 테이블과 역양자화 테이블들은 15개나 그보다 더 적은 수의 레벨들로 설계될 수 있다.
하나 또는 그 보다 많은 3비트 기호들은, 양자화 동안에 상기 기호들의 자주 발생되는 입력 데이터값들에 연관되는 기회를 최적화시키기 위하여 위치된다. 그러므로, 특정한 시스템은 짧은 3비트 기호들을 배치시키는 곳을 확률적으로 식별하기 위하여 미리 평가되어야만 한다. 3비트 기호들에 의하여 나타내어지는 레벨(들)의 해상도는 3비트 기호들의 사용을 최적화시키기 위하여 조정될 수 있다. 도 6b에서, 3비트 기호들은 제로(0) 근처에 배치되는데, 이곳은 일단 바이어싱이 테이블에 대해 철회되면 이 시스템에 대하여 예측 에러가 가장 일어날 것 같은 곳이다. 즉, 작은 절대값을 갖는 음의 입력 예측 에러값들이 바이어싱되어 이 테이블의 영역에 대해 상대적으로 큰 수로서 양자화 테이블 내로 입력될 것이다. 인덱스 레벨 1은 제로(0) 예측 에러의 양의 측면(positive side) 상의 입력값들에 대한 레벨이다. 인덱스 레벨 13은 가산되는 바이어스를 갖는 제로 예측 에러의 음의 측면 상의 입력값에 대한 레벨이다. 역양자화 및 재구성 시에, 바이어스값은 적절한 레벨 13 재구성값들로부터 제거된다. 2개의 짧은 기호들("000"와 "001")을 레벨 0의 양측에 두는 것은 대칭성을 유지하고 레벨 0에서 하나의 단축 기호를 두는 것에 비하여 대역폭과 메모리 요구 조건을 감소시킨다. 레벨 1과 레벨 13 각각은, 테이블 레벨의 배치와 레벨의 해상도가 통계적인 발생에 대하여 최적화되어 있기 때문에, 3의 해상도(레벨 1에 대해 4에서부터 1까지)를 가진다. 다시, 관계되는 압축 회로망의 유형에 따라, 3비트 기호들의 배치는 양자화 테이블과 역양자화 테이블이 수신하는 데이터값들의 통계적인 발생에 달려 있다. 통계적으로 최적인 상태의 배치는 짧은 코드워드 기호들의 구현에 영향을 미치지 않고서 여러 유형의 시스템들 사이에서 변화할 수 있다.
도 4는 도 1의 역양자화기(26)의 블록도이다. 시스템의 마이크로프로세서의 제어에 따라, 역다중화기(34)는 헤더에 있는 파라미터 필드를 포함하는 데이터 패킷과, 이 패킷의 페이로드 부분에 있는 양자화된 데이터를 수신한다. 역다중화기(34)는 최소 픽셀값 인덱스와 소정 구간의 인덱스를 최소-최대-구간 디코더(MMRD)(38)로 전송한다. 역다중화기(34)는 압축된 첫번째 픽셀값을 첫번째 픽셀 디코더(37)로 전송하는데, 첫번째 픽셀 디코더(37)는 또한 MMRD(38)로부터오는 소정 재구성된 구간와 최소 픽셀값도 수신한다. 첫번째 픽셀 디코더(37)는 이들 3개의 값들을 사용하여 기준 픽셀을 재구성하고 이 기준 픽셀을 예측기(24)로 송신한다. 역양자화 시에, 역다중화기(34)는 양자화된 값을 역양자화기 매퍼(36)으로 송신하는데, 역양자화기 매퍼(36)는 예측 에러값들을 역양자화하고 이 예측 에러값들을 가산기(39)로 송신한다. 가산기(39)는 예측된 값을 역양자화된 에러값에 가산하고 그 결과치를 예측 에러 처리기(35)에 보내는데, 이 예측 에러 처리기(35)는 상기 결과치를 재구성된 최대 픽셀 블록값과 비교한다. 만약 에러값이 양자화 이전에 바이어싱되어 있었다면, 상기 결과치는 재구성된 최대 픽셀값보다 더 클 것이다. 만약 그렇지 않다면, 상기 결과치는 재구성된 최대 픽셀값과 같거나 작을 것이다. 만약 예측 에러 처리기(35)가 에러값이 바이어싱 되었다고 판정하면, 해당 소정 구간값은 상기 결과값에서부터 감산되고, 그럼으로써 처리과정의 양자화 측면에서 유입되었던 바이어스를 정정한다. 픽셀 에러 처리기(35)와 첫번째 픽셀 처리기(37)는 출력 회로망(즉, 디스플레이 처리기, 도시되지 않음)에 기준 픽셀을 포함하는 재구성된 데이터를 적절한 순서로 송신한다.
역양자화기(26)에서 이용가능한 값들은 양자화된 및/또는 인코딩된 값들이다. 이 재구성된 양자화된 최소 픽셀값은 실제 최소 픽셀값보다 더 적거나 같아야만 하고, 재구성된 양자화된 최대 픽셀값과 재구성된 양자화된 구간값은 이들에 대한 실제 값들보다 더 크거나 같아야만 한다. MMRP(30)는 이 요구 조건이 이전에 설명된 바와 같이 충족되도록 보장해 준다.
다음 방정식 5 내지 방정식 12 는 바이어싱된 에러값이 재구성된 양자화된 최대 블록 픽셀값보다 더 크게 되어, 그럼으로써 재구성 동안에 바이어싱된 데이터의 적절한 식별과 정정을 할 수 있게 한다. 방정식 6 내지 방정식 11 은 방정식 12의 유도과정의 이해를 돕기 위해 주어진 것이다. 이 방정식들에서, Qmin 은 양자화된 최소 블록 픽셀값이고, Qmax 는 양자화된 최대 블록 픽셀값이다. X 는 주어진 픽셀 블록으로부터의 임의의 픽셀값이고, P는 X에 대한 예측 픽셀값이다. E 는 에러값, 또는 X 와 P 사이의 실제 차이값이고; E 는 양수이거나 음수일 수 있다. Q(E)는 E 의 양자화된 값이고, E 와 양자화 잡음 Nq(Nq 는 양수이거나 음수일 수 있다)을 가산한 결과이다. Xr 은 X 의 재구성된 픽셀값이고, Rq 는 가장 잘 부합하는 소정 구간이다. 다음 상관식을 살펴보자.
Qmax = Qmin + Rq - 1 (5)
E = X - P (6)
Q(E) = E + Nq (7)
Qmin <= X <= Qmax (8)
E 의 임의의 양수값에 대하여, 다음 관계식이 존재한다.
Xr = Q(E)+ P = E+ Nq+ P = X- P+ Nq+ P (9)
Xr = X + Nq (10)
방정식 9 은 압축 해제기(16)가 임의의 픽셀값을 재구성하는데 사용하는 값들을 나타낸다. 방정식 10 은 압축기(12)에서 이용 가능한 값에 대하여 방정식 9을 간략화시킨 것이다. E의 임의의 음수값에 대하여, 다음 관계식이 존재한다.
Xr = Q(E+ Rq)+ P = E+ Rq+ Nq+ P = X- P+ Rq+ Nq+ P (11)
Xr = X+ Rq+ Nq (12)
방정식 11 은 압축 해제기(16)가 임의의 픽셀값을 재구성하는데 사용하는 값들을 나타낸다. 방정식 12 은 압축기(12)에 이용 가능한 값들에 방정식 11 을 간략화시킨 것이다. 이 논의를 간략화하기 위하여, Nq 가 방정식 12 에서 제로(0)라고 해보자. X 는 Qmin 보다 더 크거나 같아야만 하고(방정식 8), Qmax를 정의하는 방정식 5 의 관계식이 주어져 있기 때문에, 소정 구간에 임의의 픽셀값을 가산하는 것은 적어도 일(1)만큼 Qmax 보다 더 큰 값이 발생한다.
본 발명의 구현예는 만약 Nq 가 제로(0)가 아니라면 방정식 10 과 방정식 12 의 결과를 고려해야만 한다. 만약 Nq 가 양이라면, 방정식 10 의 결과는 Qmax 보다 더 클 수 있고, 예측 에러 처리기(35)는 바이어싱된 예측 에러를 잘못 식별할 수 있다. 마찬가지로, 만약 Nq 가 음이라면, 방정식 12 의 결과가 Qmax 보다 더 작을 수 있고, 예측 에러 처리기(35)는 바이어싱되지 않은 예측 에러를 잘못 식별할 수 있다.
도 5a 는 양자화기 매퍼(28)가 어떻게 자신의 출력 신호가 양자화 잡음으로 인하여 잘못 해석되지 않도록 보장하는지를 도시한다. 양자화기(80)는 양자화된 픽셀값 각각을 위해 3개의 출력값을 제공한다. 이 3개의 값은 양자화 테이블의 결정 포인트를 위한 최적의 재구성 레벨(I), 및 상기 적절한 레벨의 양측의 재구성 레벨(I+1, I-1)이다. 양자화 테이블에서의 맨 처음 레벨이나 맨 나중 레벨이 최적일 때는, 바로 다음의 더 크거나 더 작은 양자화 레벨만이 상기 최적인 레벨과 함께 제공된다. 그후 결합기(84)는 최적 재구성값을 위하여 재구성된 픽셀값(방정식 10 이나 방정식 12)을 계산하고 그 결과값을 결합기(86)에 의하여 Qmax와 비교한다. 만약 예측 에러가 바이어싱되었고(S2는 음이다) 결합기(86)로부터의 결과값이 Qmax보다 더 작다면(S1은 음이다), 재구성 시 예측 에러 처리기(35)는 역양자화된 예측 에러값이 바이어싱되지 않았다는 것으로 부정확하게 결정할 수 있다. 이 문제를 방지하기 위하여, 예측 에러를 위한 그 다음으로 더 큰 재구성 레벨에 대응하는 코드워드가 다중화기(32)에 송신된다. 만약 예측 에러가 바이어싱되지 않았고(S2는 양이다) 결합기(86)로부터의 결과값이 Qmax보다 더 크다면(S1은 양이다), 재구성 시 예측 에러 처리기(35)는 역양자화된 예측 에러값이 바이어싱되었음을 잘못 결정할 수 있다. 이 문제를 방지하기 위하여, 예측 에러를 위하여 그 다음으로 더 작은 재구성 레벨에 대응하는 코드워드가 다중화기(32)에 송신된다. 도 5b는, 신호(±S1 및 ±S2)에 반응하여 유닛(82)에 의하여 선택되는 바와 같이, 양자화 매퍼(28)의 출력으로서 이용 가능한 양자화기(80)의 출력을 예시하는 진리표를 도시한다.
도 6a는, 그 다음으로 더 크거나 더 작은 재구성 레벨을 선택함으로써, 양자화된 예측 에러가 바이어싱되어 있는지 여부를 결정할 때 양자화 잡음이 재구성된 레벨로 하여금 잘못된 결과값을 야기할 때 발생하는 상기 문제를, 정정할 수 있는 이유를 설명하는 것을 도와준다. "I" 는 테이블의 인덱스값을 지시한다. 결정 포인트 I 보다 더 작거나 같으면서 결정 포인트 I-1 보다는 더 큰 임의의 예측 에러값은 양자화되고 그후 값 R 로 재구성된다. 도 6b와 도 6c의 3비트 양자화 테이블과 4비트 양자화 테이블로부터 각각 살펴볼 수 있는 바와 같이, 이 테이블에 입력되고 임의의 결정 포인트 I 내에 있는 예측 에러값들은 예측 에러 재구성 레벨값 R 보다 같거나 또는 더 크거나 더 작을 수 있다. 예를 들어, 도 6c에서, 인덱스 레벨 7은 레벨 7에 대한 결정 포인트값 36 과 레벨 6 의 결정 포인트값 27 에 의하여 정의되는 바와 같이 36 에서부터 28 까지의 입력값들을 수용한다. 이 구간 내에 있는 모든 입력값은 재구성 레벨값 32 로 역양자화될 것이다. 만약 입력값이 34 라면, 양자화 에러는 -2일 것이고; 만약 입력값이 32 라면, 양자화 에러는 0 일 것이고; 또 만약 입력값이 29 라면, 양자화 에러는 3 일 것이다. 앞서 진술한 바와 같이, 이 에러들은 양자화 잡음이라고 정의된다. 음의 양자화 잡음값은 도 6a에서 -E 에 대응한다. 양의 양자화 잡음값은 도 6a에서 +E 에 대응한다. 만약 예측 에러 재구성 레벨이 실제 예측 에러와 같지 않다면, 그 차이값은 양이거나 음일 양자화 잡음이다. 만약 양자화 매퍼(28)가 재구성 시 양자화 잡음때문에 예측 에러가 바이어싱되어 있는지 아닌지에 대한 부정확한 분석이 야기될 수 있는 것으로 결정한다면, 이 양자화 잡음의 다른 극성 측면에 있는 레벨을 선택함으로써 이 문제를 정정한다. 위의 예를 계속 설명하면, 만약 재구성 레벨값 32 가 -E = -2 를 야기하고 부정확한 분석을 야기시킬 수 있다면, 바이어스가 올바르게 인식되고 처리되도록 보장해주는 ++E 와 같은 양자화 잡음값을 가지는 I+1 재구성 레벨 값이 선택된다. 바이어스 정정 분석이 부정확하게 되도록 야기할 수 있는 것은 양자화 잡음이기 때문에, 반대 부호를 갖는 양자화 잡음의 값을 선택하는 것으로는 Qmax 와 재구성된 픽셀값 사이의 관계는 영향을 끼치지 않을 것이다.
Nq의 절대값은 일반적으로 크지 않기 때문에, 양자화기(80)는 정상적으로 최적 양자화 레벨을 선택할 것이다. 양자화기(80)가 그 다음으로 더 크거나 더 작은 레벨을 선택할 때는, 그 선택에 의해 재구성된 픽셀 내로 추가 에러를 도입할 것이다. 그러나, 이 에러는 알려져있는 DPCM 양자화 테이블들 보다도 훨씬 더 나은 해상도를 가지는 테이블 내에서 이 문제를 정정할 가장 근접한 레벨을 선택함으로써 최소화된다. 일반적으로, 이러한 정정에 의해서는 디스플레이된 화면의 품질에 있어 주목할만한 화질 저하가 야기되지 않는다.
양자화 해상도는, 음의 예측 에러를 바이어싱함에 의해 발생하는 2 보다 종종 더 큰 인자만큼 증가된다. 소정 구간의 선택은 또한 증가된 양자화 해상도로 인도한다. 예를 들어, 만약 주어진 픽셀블록에 대하여 선택된 소정 구간이 16 이라면, 그때 4 비트, 16 레벨 테이블(도시되지 않음)은 정확히 예측 에러값들을 양자화할 것이다. 8 비트 픽셀값들에 있어서, 그 해상도는, 구간 256 에 대한 입력값들을 수용하는 양자화테이블에서 구간 16(256/16)에 대한 입력값들을 수용하는 양자화 테이블로 인자 16 에 의해 증가한다. 동일한 구간값에 대하여 양자화/역양자화 테이블 내에 양의 값만을 요구함으로써, 해상도는 전체 인자 32 에 대해 다른 인자 2 만큼 증가된다. 이러한 과정은 임의의 소정 구간값들로부터 유도된 양자화/역양자화 테이블을 위한 해상도에서의 증가를 계산하기 위하여 사용될 수 있다.
도 7은 본 발명의 원리에 따른 양자화 테이블을 통한 데이터 처리 및 양자화 테이블의 설계를 예시하는 흐름도이다. 단계(100)에서, 알려져있는 N개 레벨들의 양자화된 테이블은 양과 음의 입력값 모두를 수용할 것으로 설계된다. 이런한 예에 있어서, 입력값들은 DPCM 예측 에러값들이고, 그러므로 양과 음의 입력값은 제로(0)에 대하여 대칭적이다. 단계(102)에서 테이블의 중간값이, 이 경우에서는 제로(0)가, 결정된다. 단계(104)에서 모든 N개의 레벨들은 중간값에서부터 최대 예측 에러값까지 할당된다. 그 결과 양자화 테이블은 처음의 테이블 해상도의 2배의 해상도를 가진다. 각 양자화 레벨의 해상도는 입력값들의 통계적 발생에 따라 조정될 수 있다.
단계(106)에서, 중간값보다 더 작은 입력값들은 바이어스값에 가산된다. DPCM 예측 에러값들에 있어서 이 바이어스값은 연관된 데이터 블록의 구간일 수 있다. 단계(108과 110)에서, 이 바이어싱된 입력값과 바이어싱되지 않은 입력값은 고해상도 양자화 테이블을 통해 압축된다. 단계(112)는 양자화되는 모든 압축 데이터를 출력한다. 단계(114)는 고해상도 테이블을 통해 상기 압축 데이터를 압축 해제하여 압축 해제된 출력값들을 생성시킨다. 단계(116)는 바이어스값을 모든 압축 해제된 출력값들에 가산한다. 단계(118)는 각각의 상기 출력값에 대한 결과값을 임계값(threshold value)과 비교한다. 이 값은 연관된 데이터 블록에 대한 최대 입력 데이터값일 수 있다. 만약 그 결과값이 임계값보다 더 크다면, 압축 해제된 출력값은 바이어스를 포함하고 있으며, 상기 바이어스값은 단계(120)에서 감산되며, 단계(122)에서 출력 회로망로 재구성된 값이 출력된다. 만약 단계(118)에서 그 결과값이 임계값보다 더 크지 않다면, 압축 해제된 출력값은 바이어스를 포함하지 않고 있으며, 그 결과값은 단계(122)에서 출력 회로망에 출력되는 재구성된 값이다.
도 1을 다시 참조하면, 메모리(14)는 픽셀 재구성과 디스플레이를 위하여 더 이상 요구되지 않을 때까지 양자화된 픽셀 블록과 파라미터 필드를 저장한다. 이 데이터가 메모리(14)에 잔류하는 시간 동안에, 그 데이터는 공통 데이터 버스를 사용하여 마이크로처리기의 제어를 받아 압축 해제기(16)를 통하여 후속하는 디스플레이 처리기에 의하여 억세스되고 디코딩될 수 있다. 압축기(12)와 압축 해제기(16)는 하나의 공통 집적회로에 존재하고 상기 집적 회로를 단순화하기 위하여 유사한 디자인과 구조를 나타낸다. 메모리(14)는 집적 회로의 외부에 존재함으로써, 메모리(14)의 크기가 특정 시스템의 신호 처리 요구조건을 수용하기에 요구되는 것에 따라 선택될 수 있도록 하는 것이 유리하다. 이것은 제조 비용을 절감하게 하는데, 예컨대 MPEG 디코더의 경우에 더 적은 프레임 메로리를 필요로 하는 감소된 해상도의 디스플레이를 사용하여 감소된 비용의 소비자용 텔레비젼 수신기를 제조하는 경우가 그러하다. 또한 절약된 저장 면적은 일반적으로 시스템의 다른 구성 요소에 의하여 사용 가능하며 따라서 시스템 전체의 성능을 높인다.
도 8은 이전에 설명된 바와 같이 본 발명에 따른 장치를 포함하는, 텔레비젼 수신기내의 실제 디지털 신호 처리 시스템 부분을 예시한다. 도 8의 디지털 텔레비젼 수신기 시스템은 과도하게 상세한 사항으로 도면에 부담을 주지 않기 위하여 간단화되어 있다. 예를 들어, 확장된 데이터 출력형(EDO : Extended Data Out), 동기형(SDRAM), 램버스 디램(RDRAM), 또는 임의의 다른 형태의 램으로 구성될 수 있는 외부 메모리에 인터페이싱하기 위한, 여러 구성 요소, 판독/기록 제어, 클록 발생기 회로망, 및 제어 신호와 연관된 선입선출(FIFO : First In First Out) 입출력 버퍼는 도시되어 있지 않다.
도 1과 도 8에서 공통의 구성 요소는 동일한 참조번호를 가진다. 유닛(70)을 제외한 신호 처리기(72)에 있는 요소는 SGS-톰슨 마이크로일렉트로닉스사로부터 상업적으로 얻을 수 있는 STi3500A MPEG-2/CCIR 600 비디오 디코더 집적 회로에서 발견되는 구성 요소에 대응한다.
간단하게, 도 8의 시스템은 마이크로처리기(40), 버스 인터페이스 유닛(42) 및 내부 제어 버스(46)에 연결되는 제어기(44)를 포함한다. 이 예에서, 마이크로처리기(40)는 MPEG 디코더(72)를 포함하는 집적 회로 외부에 위치된다. 192 비트폭인 내부 메모리 버스(48)는 압축기(12), 유사한 압축 해제기들(16과 50), 및 외부 프레임 메모리(14)로부터/로의 데이터를 위한 통로(conduit)이다. 유닛(12, 16, 및 50)은 인에이블 제어 신호(enable control signal)와 함께 제어기(44)를 통하여 마이크로처리기(40)로부터 압축 및 압축 해제 인자 제어 신호를 수신한다. 또한 요청 입력(Request input)을 수신하고 메모리 주소 출력(memory Address outputs), 판독 인에이블 및 기록 인에이블 출력(Read Enable and Write Enable outputs) 뿐만 아니라 확인 출력(Acknowledge outputs)을 제공하는 국부 메모리 제어 유닛(52)이 포함되어 있다. 메모리 제어 유닛(52)은 메모리(14)를 제어하기 위한 실시간 주소 및 제어 신호를 발생시킨다. 메모리 제어 유닛(52)은 또한 국부 클록 발생기(도시되지 않음)로부터의 입력 클록 신호(Clock In)에 반응하여 출력 클록 신호(Clock Out)를 제공한다. 마이크로처리기(40)는 메모리(14)를 분할하여 비트 버퍼, MPEG 디코딩을 위한 비디오 프레임 저장부와 프레임 저장 버퍼부, 및 디스플레이 처리 및 온스크린 디스플레이 맵(maps)로 세분한다.
디스플레이 처리기(54)는 영상 재생 디스플레이 장치(56)에 의하여 디스플레이하기 위하여 압축 해제된 영상 포맷을 소정 공통 포맷으로 변환하는데에 요구되어지는 바와 같은 수평 및 수직 재샘플링 필터를 포함한다. 예를 들어, 이 시스템은 서로 525 라인의 비월주사, 1125 라인의 비월주사 또는 720 라인의 순차주사와 같은 포맷에 대응하는 영상 시퀀스들을 수신하거나 디코딩할 수 있다. 텔레비젼 수신기는 모든 수신기 포맷에 대하여 하나의 공통 디스플레이 포맷을 사용할 수 있다.
외부 인터페이스 회로망(58)는, MPEG 디코더에 의하여 처리하기 위한 입력 압축 비디오 데이터에 추가하여 MPEG 디코더와 외부 마이크로처리기(40) 사이에서 제어 및 구성(configuration) 정보를 운송한다. MPEG 디코더 시스템은 마이크로처리기(40)를 위한 보조처리기용-처리기와 유사하다. 예를 들어, 마이크로처리기(40)는 디코딩되는 각각의 프레임에 대하여 MPEG 디코더에 하나의 디코드 명령을 발한다. 디코더는 연관된 헤더 정보의 위치를 알아내고, 그후 이 헤더 정보는 마이크로처리기(40)가 판독한다. 이 정보를 통하여 마이크로처리기(40)는 예컨대 프레임 유형, 양자화 매트릭스 등등에 관련하여 디코더를 구성하기 위한 데이터를 발하고, 그후 이 디코더는 적절한 디코드 명령을 발한다. 전술한 SGS-톰슨 STi3500A 집적 회로 장치를 위한 기술적인 사양 자료는 MPEG 디코더 동작의 상기 방식에 관한 추가적인 정보를 제공한다.
마이크로처리기(40)는 수신기 제조사에 의하여 프로그래밍된 모드 제어 데이터를, 다중화기(32)(도 2)와 역다중화기(34)(도 4)의 동작을 제어하기 위하여, 유닛(12,16, 및 50)을 위한 압축/압축 해제 인자를 요구되어지는 바 같이 확립하기 위하여, 메모리 제어기(52)에 전송한다. 개시된 시스템은, 예를 들어, 지상 방송, 케이블 및 위성 전송 시스템과 연관될 수도 있는 바와 같은, 여러 디지털 데이터 처리 구성의 맥락에서 MPEG 사양의 모든 프로필들과 모든 레벨들에 대하여 사용될 수 있다.
도 8은 또한 입력 고해상도 비디오 신호를 처리하기 위한 텔레비젼 수신기에서 발견될 수 있는 것과 같은 디지털 비디오 신호 처리기(72)의 일부를 도시한다. 신호 처리기(72)는 아날로그 채널(도시되지 않음)을 통하여 표준 해상도의 비디오 신호를 수신하고 처리하기 위한 회로들을 포함하는 하나의 집적 회로 내에 포함될 수 있다. 신호 처리기(72)는 프레임 메모리(14)를 포함하여, 블록(60, 62, 64, 66, 68, 및 70)으로 구성된 종래의 MPEG 디코더를 포함한다. 예를 들어, 앙(Ang) 등의 "비디오 압축은 큰 이득을 남긴다"(1991년, 10월 IEEE 스펙트럼)는 MPEG 인코더와 디코더의 동작을 설명한다.
신호 처리기(72)는 선행하는 입력 처리기(도시되지 않음)로부터, 예컨대 입력 신호 복조 이후에 데이터 패킷을 분리시키는 전송 디코더로부터, MPEG 코딩된 데이터의 제어된 데이터 스트림을 수신한다. 이 예에서, 수신된 입력 데이터 스트림은 미국 고해상도 지상 텔레비젼 방송 시스템을 위한 대동맹(Grand Alliance)의 사양에 구체화되어 있는 바와 같은 고해상도 영상 자료(1920 x 1088 픽셀)를 나타낸다. 이 입력 데이터 스트림은 MPEG 압축 표준을 사용하여 압축되어진 영상 시퀀스를 나타내는 계층화된 데이터 스트림의 형태로 존재한다. 이들 영상은 주기적으로 인트라프레임 및 인터프레임 정보로서 압축되고 코딩된다. 인트라프레임 정보는 I 프레임 앵커 프레임들(I-frame anchor frames)을 포함한다. 일반적으로, 인터프레임 정보는 인접 화상 프레임 사이의 영상 차이를 나타내는 예측 움직임 코딩된 잔여 정보(residual information)를 포함한다. 인터프레임 움직임 코딩은 현재 처리되어지는 블록과 이전에 재구성된 영상 블록 사이의 오프셋을 나타내는 움직임 벡터를 발생시키는 것과 관련된다. 현재 블록과 이전 블록 사이에 최적 부합(best match)을 나타내는 움직임 벡터가 코딩되어 전송된다. 또한 각각의 움직임이 보상된 8 x 8 블록과 이전에 재구성된 블록 사이에 (잔여) 차이는 전송되기 이전에 이산 코사인 변환(DCT: Discrete Cosine Transformed)되고 양자화되며 가변 길이 코딩(VLC: Variable Length Coded)된다. 앞서 앙(Ang) 등을 포함하는 여러 출판물이 움직임 보상 코딩 처리를 좀더 상세하게 기술한다.
버퍼(60)는 가변 길이 디코더(VLD: Variable Length Decoder)(62)에 의하여 가변 길이로 디코딩되기 이전에 입력 압축된 픽셀 데이터 블록들을 수용한다. 버퍼(60)는 메인 레벨, 메인 프로필의 MPEG 데이터 스트림의 경우에 1.75M비트의 저장 용량을 나타낸다. 역양자화기(64)와 역이산코사인변환기(IDCT : Inverse DCT)(66)는 VLD(62)로부터의 압축 데이터를 압축 해제한다. IDCT(66)로부터의 출력 데이터는 가산기(68)의 한 입력단으로 전달된다.
버퍼(60)로부터의 신호는 평활한 데이터 흐름을 보장하기 위하여 역양자화기(64)의 양자화 스텝 크기를 제어한다. VLD(62)는 논의될 바와 같이 움직임 보상 유닛(70)에 디코딩된 움직임 벡터를 제공한다. VLD(62)는 또한 공지된 바와 같은 인터프레임/인트라프레임 모드 선택 제어 신호(간략화하기 위하여 도시되지 않음)를 생성한다. 유닛(62, 64, 및 66)에 의하여 수행되는 동작은 송신기에 위치된 인코더의 대응하는 동작에 대해 반대(inverse)이다.
유닛(70)의 출력으로부터 제공되는 예측 영상 데이터와 유닛(66)으로부터의 잔여 영상 데이터를 가산함으로써, 가산기(68)는 비디오 프레임 메모리(14)의 콘텐트를 기초로 하는 재구성된 픽셀을 제공한다. 신호 처리기(72)가 픽셀 블록의 전 프레임을 처리완료하였을 때, 프레임 메모리(14)는 그 결과로 생성된 재구성된 영상을 저장한다. 인터프레임 모드에서, VLD(62)로부터 얻어진 움직임 벡터는 유닛(70)으로부터의 예측 블록의 위치를 제공한다.가산기(68), 메모리(14) 및 움직임 보상 유닛(70)을 포함하는 영상 재구성 처리과정은 프레임 메모리(14)에 데이터를 저장하기 이전에 블록 압축기(12)의 사용으로 인하여 메모리 요구 조건의 상당한 감축을 나타낸다는 유리한 점이 있다. 프레임 메모리(14)의 크기는 예를 들어 압축 인자 50%가 사용될 때, 50%까지 감축될 수 있다. 유닛(50)은 유닛(12)의 반전되는 기능을 수행하고, 앞서 기술된 압축 해제기(16)와 유사하다. 압축 해제기(50)는 영상 블록을 재구성함으로써 움직임 보상기(70)가 전술한 바와 같은 기능을 할 수 있게 한다. 압축기(12)와 압축 해제기(16과 50)는 본 발명의 원리를 따라 구성된다. 도 1, 도 2, 도 4 및 도 5a 는 유닛(12, 16 및 50) 내부의 상세한 구성을 도시한다.
상술한 바와 같은 본 발명은 디지털 비디오 처리기 등에 이용가능하며, 구체적으로, 디지털 비디오 처리기의 메모리 요구 조건을 감소시키기 위한 영상 압축 방법과 장치 등에 이용가능하다.

Claims (20)

  1. 비디오 처리 시스템에서, 픽셀 블록 한계값들을 둘러싸는 구간 내에서 중간점 근처의 양 및 음 극성의 값들을 가지는 픽셀 블록 데이터를 양자화하기 위한 방법으로서:
    (a) 상기 중간점에 대하여 양 극성의 픽셀 값들을 식별하는 단계와;
    (b) 상기 중간점에 대하여 음 극성의 픽셀 값들을 식별하는 단계와;
    (c) 양자화된 데이터를 제공하기 위해, 상기 개별적인 픽셀의 절대값을 기초로 하여 개별적인 픽셀값에 양자화 레벨 코드가 부여되는, 상기 식별된 양 및 음 극성 픽셀값 모두에게 하나의 공통 양자화 레벨 코드들의 세트를 할당하는 단계와;
    (d) 상기 중간점에 대하여 양 극성의 바이어스된 입력 값들을 생성하기 위하여, 음의 극성을 가지는 픽셀 값들에 바이어스 값을 가산하는 단계와;
    (e)상기 양자화된 바이어싱된 및 바이어싱되지 않은 데이터를 출력 회로망에 출력시키는 단계를
    포함하는, 픽셀 블록 데이터 처리 방법.
  2. 제 1항에 있어서, 디코딩된 데이터를 제공하기 위한 단계들을 더 포함하며, 상기 디코딩 데이터 제공 단계들은:
    테스트 값들을 생성하기 위하여, 예측된 픽셀 값을 양자화 데이터 값들에 가산하는 단계와;
    상기 테스트 값들 각각을 임계값과 비교하는 단계와;
    상기 임계값보다 더 큰 상기 테스트 값들을 바이어싱된 데이터 값들로서 식별하는 단계; 및
    디코딩된 데이터를 얻기 위하여, 식별된 바이어싱된 데이터 값들로부터 상기 예측된 픽셀 값을 감산하는 단계인,
    픽셀 블록 데이터 처리 방법.
  3. 제 2항에 있어서,
    상기 임계값은 최대 픽셀 블록값인, 픽셀 블록 데이터 처리 방법.
  4. 제 1항에 있어서, 상기 공통 양자화 레벨 코드들의 세트를 할당하는 단계는,
    만약 양자화된 값과 예측된 픽셀 값의 합산값이 상기 픽셀 블록 한계값들의 구간을 초과한다면, 양자화 레벨 코드를 대체하도록 상기 양자화 레벨 코드의 인접 양자화 레벨 코드를 할당하는 단계를 포함하는, 픽셀 블록 데이터 처리 방법.
  5. 영상를 나타내는 압축된 픽셀 데이터를 처리하기 위한 디지털 신호 처리 시스템에서:
    (a) 픽셀 블록에서 하나의 픽셀에 대한 픽셀 에러 값을 나타내는 양자화 값을 생성하기 위하여 상기 압축된 픽셀 데이터를 디코딩하는 단계와;
    (b) 상기 픽셀 블록에서 이전에 디코딩된 인접 픽셀 값들에서부터 상기 픽셀 에러값의 예측된 값을 결정하는 단계와;
    (c) 상기 예측된 값과 상기 양자화 값의 합산값을 기초로 한 상기 픽셀 에러 값의 예비-양자화 극성(pre-quantization polarity)을 결정하는 단계; 및
    (d) 상기 결정된 극성을 사용하여 상기 양자화 값을 디코딩하는 단계를
    포함하는, 방법.
  6. 제 5항에 있어서,
    상기 예비-양자화 극성은 상기 합산값과 소정 최대 픽셀 블록 한계값을 비교함으로써 결정되는, 방법.
  7. 영상를 나타내는 픽셀 데이터를 처리하기 위한 디지털 신호 처리 시스템의 장치에서:
    DPCM 예측 에러 값들을 생성하기 위하여 상기 영상를 나타내는 픽셀 데이터를 처리하기 위한 제 1 처리기와;
    양으로 재-바이어싱된 예측 에러 값들을 생성하기 위하여, 바이어스 값을 음의 값인 상기 DPCM 예측 에러값들에 가산하기 위한 제 2 처리기; 및
    상기 양으로 재-바이어싱된 예측 에러값들과 상기 바이어싱되지 않은 DPCM 예측 에러값들 둘 다에 하나의 공통 양자화 레벨 코드들의 세트를 할당함으로써, 양자화 데이터를 생성하기 위하여 상기 양으로 재-바이어스된 예측 에러 값들과 바이어스되지 않은 DPCM 예측 에러 값들을 양자화하기 위한 양자화기를
    포함하는, 장치.
  8. 제 7항에 있어서:
    상기 양으로 재-바이어스된 예측 에러 값들과 상기 바이어스되지 않은 DPCM 예측 에러 값들을 재구성하기 위하여 상기 양자화된 값들을 역양자화하기 위한 역양자화기와;
    음의 값인 상기 DPCM 예측 에러 값들을 생성하기 위하여, 상기 양으로 재-바이어스된 예측 에러값들을 식별하고 상기 양으로 재-바이어스된 예측 에러 값들에서부터 상기 바이어스 값을 감산하기 위한 제 3 처리기; 및
    재구성된 영상를 나타내는 픽셀 데이터를 생성하기 위하여 상기 양 및 음의 DPCM 예측 에러 값들을 처리하기 위한 제 4 처리기를
    더 포함하는, 장치.
  9. 제 5항에 있어서,
    상기 양자화 값을 디코딩하는 단계에서, 예측된 픽셀값이 양자화된 픽셀 에러값에 가산되는, 방법.
  10. 제 5항에 있어서,
    상기 픽셀 에러 값은, (a) 예측된 픽셀값과 현재의 픽셀값 사이의 휘도 차이와, (b) 예측된 픽셀값과 현재의 픽셀값 사이의 색도 차이 중, 하나를 나타내는, 방법.
  11. 제 5항에 있어서,
    만약 상기 예비-양자화 극성이 음이라고 결정된다면 상기 합산값에서부터 바이어스 값을 감산하는 단계를 포함하는, 방법.
  12. 제 5항에 있어서, 상기 양자화 값을 디코딩 하는 상기 단계는,
    예측된 픽셀값을 생성하는 단계, 및
    예측된 픽셀값과 예측되지 않는 픽셀 값 사이의 차이를 나타내는 에러 양자화 값을 가산하는 단계를
    포함하는, 방법.
  13. 제 5항에 있어서,
    상기 픽셀 에러값은
    픽셀 블록 한계값들의 둘러싸는 구간 내의 중간점에 대하여,
    (a) 양 극성 값 및
    (b) 음 극성 값
    중 하나를 가지는, 방법.
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR10-1999-7004605A 1996-12-17 1997-12-09 영상 처리 시스템에서 메모리 효율적인 압축 방법 및 장치 KR100531259B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US3360796P 1996-12-17 1996-12-17
US08/910,709 US6621934B1 (en) 1996-12-17 1997-08-12 Memory efficient compression apparatus in an image processing system
US08/910,709 1997-08-12
US60/033,607 1997-08-12
US8/910,709 1997-08-12

Publications (2)

Publication Number Publication Date
KR20000057237A KR20000057237A (ko) 2000-09-15
KR100531259B1 true KR100531259B1 (ko) 2005-11-28

Family

ID=26709902

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1999-7004605A KR100531259B1 (ko) 1996-12-17 1997-12-09 영상 처리 시스템에서 메모리 효율적인 압축 방법 및 장치

Country Status (8)

Country Link
US (1) US6621934B1 (ko)
EP (1) EP0947102B1 (ko)
JP (1) JP4260894B2 (ko)
KR (1) KR100531259B1 (ko)
CN (1) CN1191719C (ko)
AU (1) AU5594298A (ko)
DE (1) DE69730148T2 (ko)
WO (1) WO1998027735A1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6807311B1 (en) * 1999-07-08 2004-10-19 Ati International Srl Method and apparatus for compressing and storing image data
GB2368248A (en) * 2000-10-20 2002-04-24 Sony Uk Ltd Image compression using iterative intraframe predictive coding
CN1271565C (zh) * 2001-10-11 2006-08-23 国际商业机器公司 颜色位图归一化
JP4217657B2 (ja) * 2003-07-30 2009-02-04 キヤノン株式会社 画像処理方法、プログラム、記憶媒体及び装置
US7689051B2 (en) * 2004-04-15 2010-03-30 Microsoft Corporation Predictive lossless coding of images and video
TWI307607B (en) * 2006-02-13 2009-03-11 Novatek Microelectronics Corp Pixel data compression and decompression method and device thereof
US20080115185A1 (en) * 2006-10-31 2008-05-15 Microsoft Corporation Dynamic modification of video properties
WO2008095825A1 (en) * 2007-02-05 2008-08-14 Thomson Licensing Video transcoding with reduced drift
US8638243B2 (en) * 2010-03-03 2014-01-28 Mitsubishi Electric Corporation Data compression device, data compression method, and medium
WO2011114504A1 (ja) * 2010-03-19 2011-09-22 株式会社 東芝 符号化装置
JP5482474B2 (ja) * 2010-06-09 2014-05-07 富士通株式会社 符号化装置及び符号化プログラム
US9978156B2 (en) * 2012-10-03 2018-05-22 Avago Technologies General Ip (Singapore) Pte. Ltd. High-throughput image and video compression
US9363517B2 (en) 2013-02-28 2016-06-07 Broadcom Corporation Indexed color history in image coding
GB2593523B (en) * 2020-03-26 2023-06-14 Imagination Tech Ltd Image data compression

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4422094A (en) 1981-11-06 1983-12-20 Rca Corporation Digital signal processor with symmetrical transfer characteristic
JPS59200592A (ja) * 1983-04-27 1984-11-13 Fuji Photo Film Co Ltd カラ−画像の適応形圧縮方式
US5539865A (en) 1992-11-10 1996-07-23 Adobe Systems, Inc. Method and apparatus for processing data for a visual-output device with reduced buffer memory requirements
US5764374A (en) * 1996-02-05 1998-06-09 Hewlett-Packard Company System and method for lossless image compression having improved sequential determination of golomb parameter

Also Published As

Publication number Publication date
DE69730148T2 (de) 2005-08-04
EP0947102B1 (en) 2004-08-04
CN1240555A (zh) 2000-01-05
JP4260894B2 (ja) 2009-04-30
KR20000057237A (ko) 2000-09-15
WO1998027735A1 (en) 1998-06-25
EP0947102A1 (en) 1999-10-06
AU5594298A (en) 1998-07-15
US6621934B1 (en) 2003-09-16
CN1191719C (zh) 2005-03-02
DE69730148D1 (de) 2004-09-09
JP2001506444A (ja) 2001-05-15

Similar Documents

Publication Publication Date Title
KR100549436B1 (ko) 픽셀 블록 재압축 기능을 가진 디지털 영상 프로세싱 시스템
KR100484333B1 (ko) 영상신호프로세서를위한메모리관리
EP0945026B1 (en) Image element processor for a memory management system using recompression
US8811493B2 (en) Method of decoding a digital video sequence and related apparatus
KR100531259B1 (ko) 영상 처리 시스템에서 메모리 효율적인 압축 방법 및 장치
US7095448B2 (en) Image processing circuit and method for modifying a pixel value
EP0782341A2 (en) Image data compression system
KR100549208B1 (ko) 메모리 효율적인 이미지 처리 시스템에서의 오버헤드 데이터 프로세서 및 처리 방법
US6205250B1 (en) System and method for minimizing clock cycles lost to overhead data in a video decoder
KR100744442B1 (ko) 디지털 비디오 및 이미지들에 대한 개선된 캐스케이드 압축 방법 및 시스템
MXPA99005602A (en) Pixel block compression apparatus in an image processing system
MXPA99005592A (es) Aparato y cuantificador de compresión de memoria eficiente un sistema de procesamiento de imágenes
KR19980030711A (ko) 영상복호화기의 데이터 디포맷팅 회로
MXPA96006644A (en) Ima data compression system

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

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20131018

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20141107

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20151016

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20161019

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20171018

Year of fee payment: 13

EXPY Expiration of term