KR20000049059A - 디지털 비디오 압축을 위한 적응성 레이트 제어 방법 및 장치 - Google Patents

디지털 비디오 압축을 위한 적응성 레이트 제어 방법 및 장치 Download PDF

Info

Publication number
KR20000049059A
KR20000049059A KR1019990703131A KR19997003131A KR20000049059A KR 20000049059 A KR20000049059 A KR 20000049059A KR 1019990703131 A KR1019990703131 A KR 1019990703131A KR 19997003131 A KR19997003131 A KR 19997003131A KR 20000049059 A KR20000049059 A KR 20000049059A
Authority
KR
South Korea
Prior art keywords
rate
quantization
encoding
bit rate
model
Prior art date
Application number
KR1019990703131A
Other languages
English (en)
Other versions
KR100555601B1 (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 KR20000049059A publication Critical patent/KR20000049059A/ko
Application granted granted Critical
Publication of KR100555601B1 publication Critical patent/KR100555601B1/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
    • 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/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • 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/115Selection of the code volume for a coding unit prior to coding
    • 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
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • 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/146Data rate or code amount at the encoder output
    • H04N19/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • 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/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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/146Data rate or code amount at the encoder output

Abstract

본 발명은 데이터 압축 시스템에서 인코딩 데이터 레이트를 적응성 제어하는 시스템 및 방법에 관한 것이다. 상기 시스템 및 방법은 각각의 데이터 세그먼트에 대한 선택적인 인코딩 비트 스트림을 설정하고 전송을 위해 소정 타켓 비트 레이트에 가장 가까운 비트 레이트를 발생시키는 비트 스트림을 선택한다. 각각의 비디오 입력 세그먼트는 다수의 양자화 세그먼트를 발생시키기 위해 양자화 세트(20a-20c)에 의하여 양자화된다. 각각의 양자화 세그먼트는 선택적인 인코딩 비트 스트림을 발생시키도록 양자화 인덱스를 기초로 가변 길이 인코더(22a-22c)에 의하여 가변 레이트 인코딩된다. 레이트 측정기 세트(24a-24c)는 각각의 선택적인 인코딩 비트 스트림을 전송하기 위하여 요구되는 데이터 레이트를 측정하고 비교기(30)는 측정된 레이트와 소정 타켓 비트 레이트를 비교한다. 타켓 비트 레이트와 가장 가까운 레이트를 가진 인코딩 비트 스트림은 전송을 위해 레이트 버퍼(34)로 제공된다. 데이터 세그먼트 중 하나를 처리하면, 시스템 및 방법은 다음 데이터 세그먼트를 처리하기 위한 파라매터를 갱신한다. 타켓 비트 레이트 갱신 엘리먼트(38)는 레이트 버퍼 상태를 기초로 갱신된 타켓 비트 레이트를 결정한다. 또한, 양자화 인덱스 갱신 엘리먼트(36)는 다음 데이터 세그먼트를 처리하는 새로운 양자화 인덱스를 발생시킨다.

Description

디지털 비디오 압축을 위한 적응성 레이트 제어 방법 및 장치{ADAPTIVE RATE CONTROL FOR DIGITAL VIDEO COMPRESSION}
텔레비젼 신호의 전송 및 수신 분야에서, NTSC 시스템에 대하여 여러 가지 개선이 이루어지고 있다. 텔레비젼 분야에서의 개발은 일반적으로 표준 선명 텔레비젼(SDTV) 및 고선명 텔레비젼(HDTV) 시스템에 관한 것이었다.
제안된 많은 SDTV 및 HDTV 시스템은 디지털 인코딩 기술을 이용한다. 디지털적으로 인코딩된 비디오는 아날로그 변조에 비하여 많은 이점을 제공한다. 디지털 인코딩은 통신 링크에 있어서 다중경로 및 재밍(jamming)과 같은 손상을 보호한다. 또한, 디지털 기술은 군사용 분야 및 방송 분야에 필수적인 신호 암호화를 용이하게 한다.
최초로 제안된 HDTV는 과도한 대역폭 요구로 실용적이지 못하였다. 그러나, 디지털 HDTV 신호의 압축은 아날로그 NTSC 포맷에 의하여 요구되는 대역폭에 필적할 만한 대역폭에서 전송할 수 있는 레벨에서 달성될 수 있었다. 디지털 신호 전송과 함께 상기와 같은 레벨의 신호 압축은 HDTV 시스템이 채널 손상에 대한 영향을 받지 않으면서 적은 파워로 전송할 수 있도록 하였다.
상당한 압축을 제공하면서 SDTV 및 HDTV 신호의 품질을 유지할 수 있는 압축 기술중 하나는 인코딩된 이산 코사인 변환(DCT) 계수 데이터의 적응성 크기 블록 및 서브-블록을 이용하는 것이다. 상기 기술은 미국특허 제 5,021,891호, "적응성 블록 크기 이미지 압축 방법 및 시스템"에 개시되어 있으며, 이는 본 발명의 양수인에게 양도되었고 여기에 참고로 기술된다. DCT 기술 역시 미국특허 제 5,107,345호, "적응성 블록 크기 이미지 압축 방법 및 시스템"에 개시되어 있으며, 이것 역시 본 발명의 양수인에게 양도되었고 여기에 참고로 기술된다. 또한, 미국특허 제 5,452,104호, "적응성 블록 크기 이미지 압축 방법 및 시스템" 역시 본 발명의 양수인에게 양도되었고 여기에 참고로 기술된다.
상당한 크기의 압축을 제공하는 기술은 때때로 가변-길이 인코딩 기술을 이용한다. 가변-길이 인코딩에서, 여러 가지 신호 샘플이 여러 가지 코드워드 길이를 이용하여 양자화된다. 코더는 일반적으로 이미지의 이론적 통계치 또는 측정된 통계치를 기초로 설계되어 전체 재구성 에러를 최소화하도록 한다. 이미지내의 지표(characteristics)의 확률 분포를 이용함으로써, 높은 압축비를 얻을 수 있다.
가변-길이 인코딩에 의하여 높은 압축비를 얻을 수 있지만, 일정하지 않은 인코딩 데이터 레이트에 의하여 복잡하게 된다. 가변-길이 인코딩은 복잡한 세부상(detail)을 가진 이미지 영역에 대하여는 긴 코드워드를 발생시키며 복잡하지 않은 세부상을 가진 이미지 영역에 대하여는 짧은 코드워드를 발생시킨다. 가변-길이 인코딩이 비디오를 인코딩하기 위하여 이용될 때, 여러 가지 비디오 프레임이 여러 가지 코드워드 길이에 의하여 인코딩될 수 있다. 이들 코드워드는 소정 비트 레이트로 통신 채널을 통하여 전송된다. 또한 SDTV 및 HDTV 시스템과 같은 응용분야에서, 코드워드는 프레임 레이트에서 요동 없이 비디오 프레임을 재구성하도록 하는 레이트에서 디코더에 전송되어야 한다.
레이트 버퍼는 인코딩된 데이터 비트의 전송 레이트를 유지하기 위하여 이용된다. 그러나, 버퍼 사용 자체로는 디코딩된 프레임 레이트에서의 요동 문제를 해결할 수 없다. 또한, 하나의 비디오 프레임이 버퍼 용량을 초과하는 긴 코드워드로 인코딩될 때 버퍼 오프플로우가 발생될 수 있어 정보가 손실된다. 따라서, 비디오 압축에 대한 레이트 제어가 요구된다. 이들 문제점 및 결함은 당업자면 충분히 알 수 있으며 이하에 설명되는 본 발명에 의하여 해결된다.
본 발명은 이미지 처리에 관한 것이다. 특히, 본 발명은 비디오 인코더에서 디지털 비트 압축 레이트를 적응성 제어하기 위한 시스템 및 방법에 관한 것이다.
도 1은 레이트 제어기가 이용되는 인코딩 시스템의 예를 도시하는 블록도.
도 2는 인코더에 계수를 발생시키는 프리프로세서(preprocessor)의 예를 도시하는 블록도.
도 3은 인코더 및 레이트 제어기의 처리 엘리먼트를 도시하는 블록도.
도 4는 양자화 인덱스 대 비트 레이트의 지수 함수 모델을 도시하는 그래프.
도 5a-5c는 전송을 위해 컬러 신호의 레이트 제어된 데이터 성분을 선택하는 처리 엘리먼트를 도시하는 블록도.
도 6은 수신된 컬러 비디오 신호를 양자화하기 위하여 이용되는 양자화 인덱스를 유도하는 처리 엘리먼트를 도시하는 블록도.
도 7a-7c는 컬러 신호의 각각의 컬러 성분에 대한 양자화 인덱스 대 비트 레이트의 모델을 나타내는 일련의 그래프이며, 도 7d는 컬러 신호의 모든 성분에 대한 양자화 인덱스 대 비트 레이트의 합성 모델을 도시하는 그래프.
본 발명은 비디오 압축 과정에서 인코딩된 데이터 레이트를 제어하는 새롭고 향상된 시스템 및 방법에 관한 것이다. 비디오가 압축될 때, 여러 가지 비디오 세그먼트는 상이한 코드워드 길이로 인코딩될 수 있다. 인코더의 신뢰성을 유지하면서, 일정한 레이트로 통신 채널을 통하여 코드워드를 전송하기 위하여, 인코딩된 비트 레이트를 제어할 필요가 있다. 본 발명의 시스템 및 방법은 각각의 비디오 세그먼트에 대하여 선택적으로 인코딩된 비트 스트림을 설정하고 그리고 소정 타켓 비트 레이트에 가장 인접한 비트 레이트를 발생시키는 인코딩된 비트 스트림을 선택함으로써 레이트 제어를 달성할 수 있다. 타켓 비트 레이트는 레이트 버퍼 상태를 기초로 선택된다.
본 발명에 따라, 다수의 양자화기를 포함하는 적응성 데이터 레이트 제어기가 개시된다. 레이트 제어기는 입력으로서 비디오 데이터 블록을 수신하며 상기 비디오 데이터 블록은 각각의 양자화기로 제공된다. 각각의 양자화기는 상이한 가중 마스크 펑크션(function)에 따라 입력의 샘플을 양자화하여 양자화 계수 블록을 형성하도록 한다. 각각의 가중 마스크 펑크션은 양자화 인덱스에 의하여 판별된다. 가중 마스크 펑크션은 샘플을 상이하게 가중함으로써 입력의 소정 샘플을 강조하고 다른 샘플은 덜 강조하도록 설정된다. 따라서, 상이하게 가중됨으로써 상이한 양자화 계수 블록의 대응하는 양자화 샘플은 상이한 값을 가질 수 있다.
적응성 레이트 제어기는 또한 다수의 인코더를 포함한다. 각각의 인코더는 양자화 계수 블록중 하나를 수신하며 가변-길이 인코딩 계수의 스트림을 형성하다. 각각의 양자화 계수 블록은 상이한 가중 펑크션에 의하여 처리되기 때문에, 각각의 블록의 샘플은 상이한 코드워드 길이로 인코딩될 수 있다. 그 결과, 각각의 가변-길이 인코딩 계수 스트림은 서로 구별되는 코드 길이를 가질 수 있다.
가변-길이 인코딩 스트림은 선택기로 제공되며, 각각의 가변-길이 인코딩 스트림을 전송하는데 필요한 전체 비트 레이트가 결정되어 비교기로 제공된다. 전체 비트 레이트는 인코딩 스트림의 코드 길이의 함에 비례한다. 비교기는 각각의 전체 비트 레이트와 소정 타켓 비트 레이트를 비교하여 타켓에 가장 가까운 레이트를 결정하도록 한다. 다음에 선택기는 소정 타켓에 가장 가까운 비트 레이트를 발생시키는 가변-길이 인코딩 스트림을 선택하고, 전송하기 위하여 이 스트림을 레이트 버퍼로 보낸다.
현재 비디오 신호 블록이 처리되었다면, 레이트 제어기는 가중 마스크 펑크션을 갱신함으로써 다음 비디오 신호 블록을 처리할 준비를 한다. 양자화 인덱스 갱신 엘리먼트는 가중 마스크 펑크션이 유도되는 새로운 양자화 인덱스 세트를 선택한다. 새로운 양자화 인덱스는 레이트 대 양자화 인덱스 및 갱신된 타켓 비트 레이트의 모델을 기초로 선택된다.
모델 엘리먼트는 레이트 대 양자화 인덱스의 모델을 유도한다. 상기 모델은 현재 비디오 신호 블록의 레이트 및 양자화 인덱스 데이터로부터 유도된다. 따라서, 현재 비디오 블록 및 대응하는 비트 레이트에 이용되는 양자화 인덱스는 현재 비디오 입력 블록을 처리한 후에 타켓 비트 레이트 갱신 엘리먼트에 의하여 레이트 버퍼 충진 레벨을 기초로 유도된다. 갱신된 타켓 비트 레이트는 레이트 버퍼를 통하여 일정한 데이터 흐름을 유지하고 레이트 버퍼 오버플로우를 방지하도록 선택된다. 상기 모델 및 갱신된 타켓 비트 레이트를 기초로한, 새로운 양자화 인덱스중 하나는 상기 모델에 의하여 표시되는 갱신된 타켓 비트 레이트를 발생시키는 인덱스이다. 다른 새로운 양자화 인덱스는 일반적으로 이미 지정된 새로운 양자화 인덱스의 함수이다.
가중 마스크 펑크션이 갱신된 후에, 본 발명의 적응성 레이트 제어기는 다음 비디오 입력 블록을 처리하기 시작한다.
이하 첨부된 도면을 참조로 본 발명을 설명한다.
본 발명의 레이트 제어기를 통합한 예시적인 데이터 압축 시스템이 도 1에 도시된다. 도 1에 도시된 시스템은 전송용 비디오 신호를 압축하기 위하여 사용될 수 있다. 예를들어, 도 1의 시스템은 임의의 형태의 비디오, 또는 심지어 오디오 신호가 이런 압축 시스템으로 이익을 얻을 수 있다는 것이 이해될지라도, HDTV 또는 SDTV 신호를 압축하기 위하여 사용될 수 있다.
도 1에 도시된 바와같이, 비디오 신호는 압축을 위해 프리프로세서(10)에 우선 제공된다. 프리프로세서(10)는 여러 목적을 위하여 사용할수있거나, 시스템으로부터 배제될 수 있다. 프리프로세서(10)는 비디오 신호를 압축 시스템에 의해 보다 쉽게 처리될 성분으로 포맷할 수 있다. 프리프로세서(10)의 출력은 인코더(12)에 제공된다. 인코더(12)는 수신된 데이터를 양자화하고 양자화 계수를 압축한다. 수행된 양자화 방법은 레이트 제어기(14)로부터의 피드백 양자화 파라미터에 따른다. 레이트 제어기(14)는 비디오의 다음 세그먼트를 인코딩하기 위한 양자화 파라미터를 적당하게 세팅하기 위하여 비디오의 현재 인코드된 세그먼트를 특징으로 하는 통계치를 사용한다. 레이트 제어기(14)는 레이트 제어된 인코드 데이터를 포맷화기(16)에 제공한다. 포맷화기(16)는 레이트 제어된 데이터를 취하고 통신 채널을 통해 전송하기 위하여 상기 데이터를 포맷화된 비트 스트림으로 어셈블리한다.
프리프로세서(10)의 한가지 가능한 실행은 도 2에 도시된다. 도 2에 도시된 바와같이, 프리프로세서(10)는 2차원 이산 코사인 변환(DCT) 오퍼레이터(18)를 포함한다. 비디오 신호의 한가지 세그먼트, 일반적으로 시간 샘플링 화소의 N×N 블록은 입력으로서 DCT 오퍼레이터(18)에 제공된다. 시간 샘플링 화소의 블록으로부터, DCT 오퍼레이터(18)는 DCT 계수의 블록을 생성한다.
DCT 오퍼레이터(18)는 시간 샘플링 신호를 동일 신호의 주파수 표현으로 전환하기 위한 한가지 방법이 있다. 주파수 표현으로 전환함으로써, DCT 방법은 양자화기가 이미지의 주파수 분배 특성을 이용하도록 설계될 때 매우 높은 레벨의 압축을 하게 한다. DCT 변환을 사용하는 한가지 압축 시스템은 상기된 미국특허번호 5,021,891, 5,107,345 및 5,452,104에 기술된다.
DCT 계수의 블록은 인코더(12)에 제공되고, 상기 인코드 비트 레이트는 레이트 제어기(14)에 의해 제어된다. 일실시예에서, 인코더(12) 및 레이트 제어기(14)는 상기된 바와같은 펑크션을 제공하기 위하여 프로그램된 마이크로프로세서 또는 디지털 신호 프로세서로 실행된다.
도 3을 참조하여, 인코더(12) 및 레이트 제어기(14)가 자세히 도시된다. 도시하기 위하여, 도 3은 휘도 비디오 신호를 처리하는 측면에서 기술된다. 컬러 비디오 신호의 처리는 후에 기술될 것이다. 인코더(12)는 다수의 양자화기(20a-20c) 및 대응하는 다수의 가변 길이 인코더(22a-22c)를 포함한다. 비록 다수의 엘리먼트가 사용된다는 것이 이해될지라도, 세 개의 세트의 양자화기(20a-20c) 및 가변 길이 인코더(22a-22c)가 도시된다.
각각 3개의 양자화기(20a-20c)는 입력으로서 F로 표시된 DCT 계수의 동일 블록을 수신한다. 각각의 양자화기(20a-20c)는 레이트 제어기(14)로부터 q1-q3로 표시된 피드백 양자화 인덱스 신호를 수신한다. 도 3에서, 3개의 양자화기(20a-20c)는 3개의 양자화 세팅, 또는 동일한 입력 신호를 양자화하는 3가지 방식으로 나타낸다.
바람직한 실시예에서, 입력 신호를 양자화하기 위하여 각각의 양자화기(20a-20c)에 의해 사용된 양자화 세팅은 종래에 양자화 매트릭스로서 공지된 가중 마스크 펑크션이다. 각각의 가중 마스크 펑크션은 주파수 가중 테이블의 계수와 선택된 양자화 스텝 크기(qssi)를 곱셈함으로써 유도된다.
qssi= f(qi) (1)
바람직한 실시예에서,
(2)
입력 DCT 계수의 블록으로서 동일 크기의 주파수 가중 테이블은 다른 DCT 계수에 다른 가중치를 제공하기 위하여 사용된다. 상기 가중치는 인간의 가시적 기관이 보다 잘 느끼는 주파수 내용을 가지는 입력 샘플을 강조하고, 가시적 기관이 잘 느끼지 못하는 주파수 내용을 가지는 샘플을 약화시키도록 설계된다. 가중치는 경험상의 데이터를 바탕으로 선택된다. 8×8 DCT 계수에 대한 가중 마스크를 설계하기 위한 방법은 여기에 참고로써 통합된 1994년 국제 표준 협회의 "연속적인 톤 스틸 이미지의 디지탈 압축 및 인코딩 - 부분 1: 필요조건 및 지침"의 ISO/IEC JTC1 CD 10918에 개시된다.
그래서, 양자화 인덱스(q1)는 제 1 가중 마스크 펑크션을 생성하기 위하여 주파수 가중 마스크의 테이블과 곱셈된다. DCT 계수는 QC1으로 설계된 양자화된 계수의 제 1 블록을 생성하기 위하여 제 1 가중 마스크 펑크션의 대응 계수와 곱셈된다. 이와 같이, 양자화 인덱스들(q2및 q3)은 각각 양자화기(20b 및 20c)에서 제 2 및 제 3 가중 마스크 펑크션을 생성하기 위하여 동일한 테이블의 주파수 가중 마스크와 각각 곰셈된다. 그리고나서, DCT 계수는 QC2로 표현된 양자화된 계수의 제 2 블록을 생성하기 위하여 제 2 가중 마스크 펑크션의 대응 계수와 곱셈된다. DCT 계수는 QC3로 표현된 양자화된 계수의 제 3 블록을 생성하기 위하여 제 3 가중 마스크 펑크션의 대응 계수와 곱셈된다. 문자(k, l)은 블록내의 계수 위치를 말하고, FWM은 주파수 가중 마스크의 테이블을 말하고, 양자화기(20a-20c)의 동작은 다음 방정식에 의해 기술된다:
QC1(k,l) = F(k,l)×FWM(k,l)×qss1; (3)
QC2(k,l) = F(k,l)×FWM(k,l)×qss2; (4)
QC3(k,l) = F(k,l)×FWM(k,l)×qss3; (5)
신호(QC1-QC3)는 각각 가변 길이 인코더(22a-22c)에 대한 입력이다. 양자화된 DCT 계수 값은 데이터 레이트를 최소화하기 위하여 가변 길이 인코더를 사용하여 각각 인코드된다. 도 3에 도시된 3개의 가변 길이 인코더는 동일한 가변 길이 인코딩 방법을 실행하거나 다른 가변 길이 인코딩 알고리듬을 실행한다. 가변 길이 인코더(22a-22c)의 출력은 가변 길이 인코드 계수의 나열된 스트림의 신호이고 VC1-VC3로 표시된다.
가변 길이 인코더(22a-22c)를 실행하기 위한 한가지 방법은 지그재그식 스캐닝후 허프만(Huffman) 인코딩에 의해 영의 실행 길이 인코딩을 이용한다. 이런 방법은 미국특허번호 5,021,891, 5,107,345 및 5,452,104에 상세히 논의되고 여기에서 요약된다. 실행 길이 코더는 양자화된 신호(QC1-QC3)를 취하고 영이 아닌 계수로부터 영을 분리한다. 영의 값은 실행 길이 값으로 불리고, 허프만 인코드된다. 영이 아닌 값은 각각 허프만 인코드된다.
허프만 코드는 측정되거나 이미지의 이론적인 통계치로 설계된다. 대부분의 자연적인 이미지가 블랭크 또는 비교적 느리게 가변하는 영역, 및 물체 경계 및 높은 콘트래스트 텍스튜어 같은 비지(busy) 영역으로 만들어진다. DCT 같은 주파수 도메인 변환을 사용하는 허프만 코더는 보다 많은 비트를 비지 영역에 할당하고 보다 적은 비트를 블랭크 영역에 할당함으로써 이들 특징을 이용한다.
도 3을 참조하여, 신호(VC1-VC3)가 대응 레이트 측정기(24a-24c)에 대한 입력이라는 것이 도시된다. 각각의 레이트 측정기(24a-24c)는 신호(VC1-VC3)의 각각의 가변 길이 인코드 계수를 전송하기 위하여 요구된 비트 레이트를 결정한다. 각각의 레이트 측정기(24a-24c)로부터의 출력은 DCT 계수 블록의 비트 레이트를 나타내는 하나의 값의 신호이다. 비트 레이트는 DCT 계수의 블록을 가변 길이 인코드하기 위하여 요구된 비트 수와 비례한다. 레이트 측정기(24a-24c)로부터의 출력에 대응하는 신호는 각각 r1-r3로 표시된다.
두 개의 신호 세트는 인코더(12)로부터 레이트 제어기(14)로의 출력이다. 레이트 제어기(14)는 가변 길이 인코드 계수(VC1-VC3)의 신호를 수신한다. VC1-VC3중 하나는 전송을 위하여 레이트 제어기(14)에 의해 선택된다. 레이트 제어기(14)는 가변 길이 인코드 계수(VC1-VC3)의 비트 레이트를 나타내는 신호(r1-r3)를 수신한다. 레이트 정보는 가변 길이 인코드 계수의 선택에 도움을 준다. 또한, 레이트 정보를 사용하여, 레이트 제어기(14)는 양자화기(20a-20c)에 의해 비디오 입력의 다음 세그먼트를 양자화하는데 사용될 갱신된 양자화 인덱스들을 생성한다. 갱신된 인덱스들은 비디오 입력의 다음 세그먼트의 비트 레이트를 제어하기 위하여 형성된다.
도 3에 도시된 바와같이, 가변 길이 인코드 계수(VC1-VC3)를 나타내는 신호는 레이트 제어기(14)의 선택기(28)에 대한 입력이고, 레이트(r1-r3)를 가리키는 신호는 레이트 제어기(14)의 비교기(30) 및 모델 엘리먼트(32)에 대한 입력이다. 비교기(30)는 목표된 레이트에 가장 가까운 레이트를 선택하기 위하여 목표된 비트 레이트와 3개의 레이트(r1-r3)를 비교한다. 선택된 레이트를 바탕으로, 비교기(30)는 가변 길이 인코드 계수(VC1, VC2 또는 VC3)의 스트림중 하나가 전송을 위하여 선택되었다는 것을 가리키도록 선택기(28)에 신호를 제공한다. 모델 엘리먼트(32)의 펑크션은 추후에 기술된다.
몇몇 선택 알고리듬은 전송을 위한 가변 길이 인코드 계수 스트림을 선택하기 위하여 사용된다. 바람직한 실시예는 절대적인 인코드 레이트 에러를 최소화하는 스트림을 선택한다. 이런 방법은 상기 방정식에 따라 각각의 레이트(r1, r2및 r3)와 미리 결정된 타켓 비트 레이트를 비교한다:
min|T-rI| (6)
여기서 T는 타켓 비트 레이트이고 i=1, 2, 3에 대한 ri는 각각 레이트(r1-r3)이라 불린다. 다른 실시예에서, 선택기(28)는 레이트 에러를 최소화하고 타켓 레이트보다 느린 레이트를 가지는 가변 길이 인코드 스트림을 선택한다. 다른 제 2 실시예에서, 선택기(28)는 최소 레이트를 생성하는 스트림을 선택한다.
선택기(28)는 전송하기 위하여 선택되었던 가변 길이 인코드 계수의 신호 스트림을 통신 채널을 통한 전송을 기다리기 위한 레이트 버퍼(34)에 제공한다. 선택된 신호는 레이트 제어 비디오 신호를 나타낸다. 그리고나서, 도 1을 다시 참조하여, 레이트 제어된 데이터 신호는 전송을 위하여 제어 및 식별 신호를 사용하여 데이터 신호를 포맷하는 포맷화기(16)에 제공된다. 블록 시작, 프레임 시작, 블록 수, 프레임 수, 및 양자화 정보를 가리키는 신호는 포맷화기(16)에 의해 데이터 신호에 첨부된 몇몇의 신호이다.
이곳에서, 비디오 입력의 현재 세그먼트는 전송을 위하여 처리되고, 다음 비디오 세그먼트를 레이트 제어가능하게 인코드하고 전송을 위한 다음 세그먼트를 준비하기 위하여 시스템을 갱신하는 것이 필요하다. 레이트 제어기(14)가 각각의 비디오 세그먼트에 대한 인코드 계수의 3가지 스트림 가운데서 선택함으로써 인코드된 비트 레이트를 조절하고, 3개의 양자화 인덱스들의 새로운 세트가 유도될 필요가 있다.
새로운 양자화 인덱스들은 도 3에 도시된 양자화 인덱스 갱신 엘리먼트(36)에 의해 유도된다. 양자화 인덱스 갱신 엘리먼트(36)는 모델 엘리먼트(32) 및 타켓 비트 레이트 갱신 엘리먼트(38)로부터의 출력 신호를 바탕으로 하는 인덱스들을 유도한다. 모델 엘리먼트(32)는 인코드된 비트 레이트 대 양자화 인덱스의 모델을 유도한다. 타켓 비트 레이트 갱신 엘리먼트(38)는 비디오 입력의 다음 세그먼트에 대한 갱신된 타켓 비트 레이트를 유도한다. 갱신된 타켓 비트 레이트 및 인코드된 비트 레이트 대 양자화 인덱스의 모델을 바탕으로, 3개의 갱신된 양자화 인덱스들은 비디오 다음 세그먼트를 양자화하기 위하여 선택된다.
모델 엘리먼트(32)는 양자화 인덱스 대 양자화 인덱스들의 데이터를 바탕으로 하는 다음 비디오 세그먼트 및 현재 비디오 세그먼트로부터의 비트 레이트의 모델을 유도한다. 도 3을 참조하여, 모델 엘리먼트(32)는 비디오의 현재 세그먼트를 처리하기 위하여 사용된 3개의 양자화 인덱스(q1-q3)를 입력 신호로서 수신한다. 모델 엘리먼트(32)는 가변 길이 인코드 계수(VC1-VC3)의 현재 3개의 스트림의 레이트에 대응하는 3개의 레이트(r1-r3)를 입력 신호로서 수신한다. 데이터 포인트의 세 개의 세트((q1, r1), (q2, r2) 및 (q3, r3))로부터, 모델은 3개의 데이터 포인트를 통해 곡선을 일치시킴으로써 유도된다. 바람직한 실시예에서, 지수 함수 모델은 곡선 일치에 사용된다.
지수 함수 모델은 다음 방정식에 따라 형성된다 :
rate = y =(7)
여기서 xi는 양자화 인덱스를 나타내고, 비록 양자화 인덱스들의 다른 범위가 대신 사용될수있을지라도 바람직한 실시예에서 0 내지 31의 범위로 설정된다. 대응하는 인코드 레이트는 ratei(yi)에 의해 나타낸다. 지수함수 모델의 파라미터(bi, m)는 다음 방정식에 의해 결정된다 :
(8)
그리고나서, 문자 A는 데이터의 현재 프레임을 인코드하기 위하여 사용된 n(n=3) 양자화 인덱스 세트를 나타내고, 모델에 대한 최소 제곱 해가 다음과 같이 정의된다 :
(9)
(10)
예시적인 지수함수 모델은 도 4에 도시된다. 도 4에 도시된 지수함수 모델은 3쌍의 데이터 포인트((q1, r1), (q2, r2) 및 (q3, r3))로부터 유도된다. 파라미터(b 및 m)의 신호는 양자화 인덱스 갱신 엘리먼트(36)에 대한 입력이다.
상기된 바와같이, 양자화 인덱스 갱신 엘리먼트(36)는 타켓 비트 레이트 갱신 엘리먼트(38)로부터 갱신된 타켓 비트 레이트를 입력 신호로서 수신한다. 도 3을 참조하여, 갱신된 타켓 비트 레이트는 비디오 입력의 현재 세그먼트 처리후 레이트 버퍼 상태, 또는 레이트 버퍼 충진 레벨을 바탕으로 타켓 비트 레이트 갱신 엘리먼트(38)에 의해 결정된다. 레이트 버퍼(34)에 결합된 레이트 버퍼 상태 지시기(40)는 레이트 버퍼 상태, 또는 충진 레벨을 결정하고, 상태를 가리키는 신호를 타켓 비트 레이트 갱신 엘리먼트(38)로 전달한다.
BF가 레이트 버퍼 상태를 나타낸다고 하자. 레이트 버퍼 상태 지시기(40)는 다음과 같은 비디오 입력(BFk)의 현재 세그먼트를 처리한 후 레이트 버퍼 상태를 결정한다 :
(11)
여기서 BFk-1은 현재 세그먼트를 처리하기전 레이트 버퍼 상태이고, Rk는 현재 세그먼트에 대한 데이터 비트 레이트이고, M은 고정된 전송 비트 레이트이다.
타켓 비트 레이트 갱신 엘리먼트(38)는 다음과 같은 방정식에 따라 갱신된 타켓 레이트(NTk)를 결정한다 :
(12)
여기서 M은 고정된 전송 레이트이고, BFmax는 레이트 버퍼의 크기이고, α는 레이트 버퍼가 얼마나 빨리 목표된 레이트 충진 레벨로 수렴하는가를 결정하고, γ(0.0≤γ≤1.0)는 목표된 레이트 버퍼 충진 레벨이다.
바람직한 실시예에서, 비트 레이트의 변화를 방지하도록 레이트 제어 시스템의 응답을 느리게 하기 위하여, 부드러운 갱신 타켓 레이트(SNTk)는 다음과 같이 유도된다 :
(13)
SNTk는 선택 처리시 NTk대신 사용될 수 있다. 바람직한 실시예에서, α는 0.2로 설정되고 β는 0.4로 설정된다.
갱신된 타켓 비트 레이트(NTk)를 가리키는 신호는 비디오 입력의 다음 세그먼트를 처리하기 위하여 사용될 비교기(30)에 제공된다. 갱신된 타켓 레이트(NTk)를 나타내는 신호는 양자화기(20a-20c)에 의해 비디오 입력의 다음 세그먼트를 처리하기 위하여 사용될 3개의 갱신된 양자화 인덱스들() 세트를 선택하기 위한 양자화 인덱스 갱신 엘리먼트(38)에 제공된다.
일단 양자화 인덱스 갱신 엘리먼트(36)가 갱신된 타켓 비트 레이트(NTk)를 가리키는 신호, 및 레이트 대 양자화 인덱스 모델의 파라미터(b 및 m)을 수신하고, 양자화 인덱스들()의 갱신된 세트는 비디오 입력의 다음 세그먼트를 양자화하기 위하여 선택된다.
양자화 인덱스 갱신 엘리먼트(36)는 양자화 인덱스들 q1'-q3'의 갱신된 세트를 선택하기 위해 다수의 방법을 사용할 것이다. 한 실시예는 양자화 인덱스 q2'을 먼저 선택한다. 이것은 등식에 의해 결정된다.
(14)
NTk값은 갱신된 타켓 비트 레이트이고 b 및 m값은 상기에서 설명한 지수 모델의 파라미터이다.
2개의 다른 양자화 인덱스, q1' 및 q3'는 1 앵커(anchor) 또는 2 앵커 갱신 방법중 하나에 의해 갱신될 것이다. 상기 방법들은 3개의 양자화 인덱스들 q1', q2', 및 q3'간의 최소의 양자화 인덱스 차이로 스프레드(spread)를 정의한다. 상기 스프레드는 휘도 HDTV 신호 입력에 대해 일반적으로 5로 세팅된다. 상기 스프레드는 인덱스들간의 간격에 따라 다르다.
상기 1 앵커 방법은 앵커 인덱스를 A1으로 정의한다. 또한, qmax를 최고 양자화 인덱스, 31로 정의한다. 0≤스프레드≤A1 및 0≤스프레드≤??qmax- A1??이라 가정하면, 1 앵커 방법은 A1이 q2'의 스프레드내가 아니면 q3'를 A1과 동일하다고 지정한다. 이 경우, q3'는 q2'로부터 이격된 인덱스 스프레드로 지정된다. 1 앵커 갱신 알고리즘은 하기와 같이 정의된다.
??q2'-A1??<스프레드 이면, q1' = q2' - 스프레드 이고 q3' = q1' + 스프레드.
q2' ≥ A1 + 스프레드 이고 q2' ≤ qmax- 스프레드 이면, q1' = q2' + 스프레드 이고 q3' = A1.
q2' ≤ A1 - 스프레드 이고 q2' ≥ 스프레드 이면, q1' = q2' - 스프레드 이고 q3' = A1.
q2' ≥ A1 + 스프레드 이고 q2' > qmax- 스프레드 이면, q1' = q2' - 스프레드 이고 q3' = A1.
q2' ≤ A1 - 스프레드 이고 q2' < 스프레드 이면, q1' = q2' + 스프레드 이고 q3' = A1.
q2' = A1 이고 qmax- A1 < 스프레드 이면, q1' = q2' - 2??스프레드 이고 q3' = q2' - 스프레드.
q2' ≤ qmax- 스프레드 이고 qmax- A1 < 스프레드 이면, q1' = q2' - 스프레드 이고 q3' = q2' + 스프레드.
q2' = A1 이고 A1 < 스프레드 이면, q1' = q3' + 스프레드 이고 q3' = q2' + 2??스프레드.
2 앵커 방법은 A1 < A2인 2개의 고정 앵커 A1 및 A2를 정의한다. 상기 2 앵커 방법은 비트 레이트 오버슈트(overshoot) 및 언더슈트(undershoot)가 수용할 수 있는 레벨로 감소되도록 한다. 스프레드가 3개의 양자화 인덱스들 q1', q2', 및 q3' 모든 것들간의 양자화 인덱스의 최소의 차이인 것을 상기하라. 2??스프레드 ≤ A2 -A1, 스프레드 ≤ A1, 및 스프레드 ≤ ??qmax- A2??라고 가정한다. 상기 2 앵커 방법은 q1'을 A1으로, A1 또는 A2가 q2'의 스프레드내가 아니면 q3'를 A2로 지정한다. 상기의 경우에서, q1' 또는 q3'중 하나는 q2'에서 이격된 스프레드로 지정된다. 상기 2 앵커 갱신 알고리즘은 하기와 같이 정의된다.
??q2'-A1??<스프레드 이고 q2' ≥ 스프레드 이면, q1' = q2' - 스프레드 이고 q3' = A2.
??q2'-A1??<스프레드 이고 q2' < 스프레드 이면, q1' = q2' + 스프레드 이고 q3' = A2.
??q2'-A2??<스프레드 이고 q2' ≤ qmax- 스프레드 이면, q1' = A1 이고 q3' = q2' + 스프레드.
??q2'-A2??<스프레드 이고 q2' > qmax- 스프레드 이면, q1' = A1 이고 q3' = q2' - 스프레드.
??q2'-A1??≥스프레드 이고 ??q2'-A2??≥스프레드 이면, q1' = A1 이고 q3' = A2.
실시예에서, 중간 양자화 인덱스 q2'가 너무 많은 비트를 생성한다면, 모든 양자화 인덱스들은 다음 프레임을 위해 증가되고, 그 때문에 데이터의 다음 블록을 위해 비트 레이트를 감소시키게 된다. 만약, 중간 양자화 인덱스 q2'가 너무 적은 비트를 생성한다면, 모든 양자화 인덱스들은 다음 프레임을 위해 감소되고, 그 때문에 데이터의 다음 블록을 위해 비트 레이트를 증가시키게 된다.
데이터 입력의 각 블록을 처리하는데 3개의 양자화 인덱스를 선택하는 대신에 다른 수의 인덱스를 사용할 수도 있다. 상기에서 언급한 바와 같이, 양자화기의 수는 3이외에 다른것일수도 있다. 상기의 경우에, 상응하는 수의 가변 길이 인코더가 양자화된 계수를 인코딩하여 상기 선택기에 공급되도록 하는데 필요할 것이다. 상기 선택기는 그후 모든 인코딩된 계수들 가운데서 상기 레이트 제어된 신호를 선택한다. 또한, 상응하는 수의 레이트 측정기가 인코딩된 계수의 데이터 비트 레이트를 결정할 것이다. 상기 레이트는, 모든 레이트를 미리 지정된 타켓 레이트와 비교하여 상기 레이트 제어된 신호를 선택하는 과정을 돕는 비교기에 공급된다. 상기 레이트들은 또한 비트 레이트 모델에 대한 양자화를 유도하는 모델 엘리먼트로 공급된다. 상기 필요한 양자화 인덱스들의 수는 상기 모델로부터 선택된다. 따라서, 목표된 인코딩 비트 스트림이 미리 지정된 다수의 인코딩 비트 스트림중에서 선택될 것이다.
지금까지 본 발명이 주로 휘도 영상 신호에 대해 기술되었지만, 본 발명은 똑같이 컬러 신호에 적용될수 있다. 컬러 신호를 처리하는 한가지 기술은 RGB 공간의 신호를 YC1C2 공간으로 먼저 변환하는 것이다. 여기서, Y는 휘도 또는 밝기 성분에 해당하고 C1 및 C2는 색채 또는 컬러 성분에 해당한다. 컬러에 대한 눈의 낮은 공간적인 감도 때문에, 대부분, C1및 C2성분을 수평 및 수직 방향으로 4개의 요소로 부표본시킨다. 2개의 가능한 YC1C2표현은 YIQ 표현과 YUV 표현인데, 상기 모두 당업계에 공지되어 있다. 도 1을 참조하면, RGB에서 YC1C2로의 변환(미도시) 및 부표본(sub-sampling, 미도시)은 모두 프리프로세서(10)에 의해 수행된다.
컬러 영상을 처리하는 실시예에서, 4개의 휘도 성분(Y1- Y4로 지칭) 및 2개의 색채성분(C1및 C2으로 지칭)은 영상 입력의 각 세그먼트를 표현하기 위해 사용된다. 각 색채 성분에 대해 4개의 휘도 성분이 있는데, 이는 각 색채 성분이 4로 부표본되기 때문이다. 6개의 성분 각각에 대해, 각 성분에 대한 양자화된 계수의 블록 3개를 생성하기 위해 3개의 양자화 인덱스가 선택된다. 더우기, 가변 길이 인코딩된 계수의 3개의 스트림은 양자화된 계수의 3개 블록의 각 세트에서 발생된다. 레이트 제어기(14)는 전송을 위한 3개 스트림의 각 세트중 하나를 반드시 선택하여야 한다.
도 5a∼5c 는 입력 Y1∼Y4, C1, 및 C2에 대한 가변 길이 인코딩된 계수의 스트림을 선택하는 레이트 제어기(14)의 엘리먼트들을 도시한다. 휘도뿐인 신호의 처리에 관한 상기의 설명과 관련해, 도 5a∼5b는 3개의 선택적 인코딩된 신호가 각 레이트 제어된 신호를 선택하는데 사용되는 것을 보여주고 있다. 그러나, 본 발명은 레이트 제어된 신호가 선택되는 다른 숫자의 선택적 인코딩된 신호를 발생하는 시스템에도 똑같이 적용할수 있다.
도 5a∼5c에 도시된 실시예에서, 4개의 각 휘도 입력 Y1∼Y4는 동일한 양자화 인덱스(q1∼q3)에 근거해 양자화되어 q1(Y1)∼q1(Y4), q2(Y1)∼q2(Y4), 및 q3(Y1)∼q3(Y4)를 생성한다. 그러나, 다른 휘도 성분 Y1∼Y4는 다른 양자화 인덱스를 근거로 양자화될수도 있다. 상기 양자화는 도 3의 양자화기(20a)∼(20c)와 같은 양자화기에 의해 이루어진다. 더우기, 각 양자화된 성분은 가변 길이 인코딩을 사용해 인코딩되어, VC(q1(Y1))∼VC(q1(Y4)), VC(q2(Y1))∼VC(q2(Y4)), 및 VC(q3(Y1))∼VC(q3(Y4))과 같이 도 5a에 지정된 신호를 생성한다. 상기 가변 길이 인코딩은 도 3의 가변 길이 인코더와 같은 가변 길이 인코더에 의해 이루어진다.
색채 입력 C1및 C2또한 양자화되고 가변 길이 인코딩된다. C1및 C2성분에 대한 상기 양자화 인덱스들은 반드시 동일할 필요는 없지만, Y1∼Y4에 대해 사용되는 것과 같이 동일할수도 있다. 도 5a∼5b에서 인코딩된 C1및 C2성분은 VC(q1(C1)), VC(q2(C1)), 및 VC(q3(C1)) 과 VC(q1(C2)), VC(q2(C2)), 및 VC(q3(C2))와 같이 지정된다. 상기 가변 길이 인코딩은 도 3의 가변 길이 인코더(22a)∼(22c)와 같은 가변 길이 인코더에 의해 수행된다. 휘도 성분에서와 같이, 색채 성분의 양자화는 도 3의 양자화기(20a)∼(20c)와 같은 양자화기에 의해 수행되고, 상기 가변 길이 인코딩은 도 3의 가변 길이 인코더(22a)∼(22c)와 같은 엘리먼트에 의해 수행된다.
휘도 성분의 처리에 있어서, 동일한 양자화 인덱스에 근거해 양자화된 상기 가변 길이 인코딩된 성분은 동일한 레이트 측정기로 입력된다. 도 5a에서와 같이, 신호 VC(q1(Y1))∼VC(q1(Y4))는 레이트 측정기(42a)의 입력으로, 신호 VC(q2(Y1))∼VC(q2(Y4))는 레이트 측정기(42b)의 입력으로, 신호 VC(q3(Y1))∼VC(q3(Y4))는 레이트 측정기(42c)의 입력이 된다. 따라서, 총 레이트는 특정한 양자화 인덱스에 상응하는 모든 휘도 성분에 대해 결정된다. 레이트 측정기 (42a), (42b), 및 (42c)에 의해 결정된 신호의 레이트는 r1(Y), r2(Y), 및 r3(Y)으로 각각 지정되고, r1(Y)∼r3(Y)는 비교기(44)로 입력된다. 비교기(44)는 또한 입력으로 미리 지정된 타켓 비트 레이트의 신호를 수신한다. 실시예에서, 비교기(44)는 그후 상기의 등식(6)에 기술된 최소 절대 레이트 에러 선택 기준을 사용해 타켓 비트 레이트에 가장 근접한 레이트를 선택할 목적으로 r1(Y), r2(Y), 및 r3(Y)과 타켓 비트 레이트를 비교하고, 상기 선택된 레이트에 상응하는 양자화 인덱스의 신호를 선택기(46)로 보낸다. 선택기(46)는 또한 입력으로 가변 길이 인코딩된 계수 VC(q1(Y1∼Y4)), VC(q2(Y1∼Y4)), 및 VC(q3(Y1∼Y4))를 수신한다. 선택기(46)는 그후 선택된 양자화 인덱스으로 양자화된 휘도 입력의 4개 성분을 선택하고, 상기 4개 성분을 전송용 레이트 버퍼(48)에 전달한다.
도 5b를 참조하면, 각 레이트 측정기(50a)∼(50c)가 4개의 휘도 성분이 아닌 단지 1개의 C1성분의 데이터 레이트를 결정할 필요가 있는 것을 제외하고는, C1색채 성분은 휘도 성분과 유사한 방법으로 처리되는 것을 볼 수 있다. 레이트 측정기(50a)는 입력으로 양자화 인덱스 q1에 상응하는 가변 길이 인코딩된 계수 VC(q1(C1))를 수신하고 출력으로 데이터 레이트 r1(C1)을 발생한다. 이와 유사하게, 레이트 측정기 (50b) 및 (50c)는 양자화 인덱스 q2및 q3에 각각 상응하는 가변 길이 계수 VC(q2(C1)) 및 VC(q3(C1))를 입력으로 수신하고, 출력으로 데이터 레이트 r2(C1) 및 r3(C1)을 발생한다. 레이트 r1(C1)∼r3(C1)를 지시하는 신호는 비교기(52)로 입력된다. 비교기(52)는 상기의 등식(6)에 기술된 최소 절대 레이트 에러 선택 기준을 다시 사용해 타켓 비트 레이트에 가장 근접한 레이트를 선택하고, 상기 선택된 레이트에 상응하는 양자화 인덱스의 신호를 선택기(46)로 보낸다. 선택기(54)는 그후 3개의 C1성분, VC(q1(C1))∼VC(q3(C1)) 중에서 선택된 양자화 인덱스로 양자화된 한 개의 C1성분을 선택해 전송용 레이트 버퍼(56)에 전달한다.
도 5c를 참조하면, C2성분 또한 C1성분과 유사한 방법으로 처리되는 것을 알 수 있다. 각 레이트 측정기 (58a)∼(58c)는 3개의 가변 길이 인코딩된 스트림 VC(q1(C2)), VC(q2(C2)), 및 VC(q3(C2))과 관련된 데이터 레이트를 결정한다. r1(C2)∼r3(C2)로 지정된 상기 레이트는 비교기(60)로 입력된다. 실시예에서, 비교기(60)는 레이트 r1(C2)∼r3(C2)에서 상기의 등식(6)에 기술된 최소 절대 레이트 에러 선택 기준에 근거해서 타켓 비트 레이트에 가장 근접한 레이트를 선택하고, 상기 선택된 레이트에 상응하는 양자화 인덱스의 신호를 선택기(62)로 보낸다. 선택기(62)는 선택된 양자화 인덱스에 상응하는 가변 길이 인코딩된 계수를 선택하고, 상기 선택된 계수의 신호를 전송용 레이트 버퍼(64)에 전달한다.
도 5a∼5c에서 비교기(44), (52), 및 (60)은 3개의 분리된 블록으로 도시되지만, 상기 3개의 블록은, 단일 비교기가 신호 r1(Y)∼r3(Y), r1(C1)∼r3(C1), 및 r1(C2)∼r3(C2)모두를 입력으로 수신하도록 결합될수 있다. 상기 단일 비교기는 또한 총 타켓 비트 레이트를 입력으로 수신한다. 마찬가지로, 선택기 (46), (54), 및 (62)는, 단일 비교기로부터 선택된 인덱스 또는 인덱스들을 입력으로 수신하고 모든 가변 길이 계수 VC(q1(Y1))∼VC(q1(Y4)), VC(q1(C1))∼VC(q3(C1)), 및 VC(q1(C2))∼VC(q3(C2))를 입력으로 수신하는 단일 선택기로 결합될수 있다. 덧붙여, 상기 단일 선택기는 3개의 레이트 버퍼(48), (56), 및 (64) 대신 하나의 결합된 레이트 버퍼로 상기 선택된 모든 성분들을 전달할 것이다.
상기 단일 비교기 및 단일 선택기는 다수의 결정 룰을 사용해 전송을 위한 가변 길이 계수의 스트림을 선택할 것이다. 실시예에서, ri(Y)+rj(C1)+rk(C2)(1≤i≤3, 1≤j≤3, 1≤k≤3) 합의 가능한 27개 조합은 각각 총 타켓 비트 레이트와 비교된다. 상기 총 타켓 비트 레이트에 가장 가까운 합 또는 상기 절대 인코딩된 레이트 에러를 최소화하는 합으로 결정된다. 그후, 상기 합에 상응하는 3개의 양자화 인덱스들을 지시하는 신호가, 상기 3개의 양자화 인덱스에 의해 양자화된 성분들을 선택하고 전송을 위해 준비가 된 상기 레이트 버퍼에 상기 성분들을 전달하는 상기 단일 선택기로 공급된다. 예를 들면, 레이트 r2(Y), r1(C1), 및 r1(C2)는 합산되어 상기 총 타켓 비트 레이트에 가장 가까운 값이 될 것이다. 상기 단일 비교기는 Y성분에 대해 q2인덱스, C1성분에 대해 q1, 및 C2성분에 대해 q1을 단일 선택기로 전달한다. 상기 단일 선택기는 그후 신호 VC(q2(Y1∼Y4)), VC(q1(C1)), 및 VC(q1(C2))를 선택하고 상기 신호를 전송용 상기 레이트 버퍼로 전달한다.
휘도 영상과 마찬가지로, 컬러 영상을 처리하는 레이트 제어기는 영상의 다음 세그먼트를 처리하기 위한 양자화 인덱스를 갱신할 필요가 있다. 상기 갱신된 인덱스들은, 양자화 인덱스에서 유도된 레이트 및 영상의 현재 세그먼트의 레이트 데이터에 대한 양자화 인덱스의 모델에 기초한 것이다. 도 6을 참조하면, 양자화 인덱스 갱신 엘리먼트(66)는 2개의 입력에 근거해 영상의 다음 세그먼트를 위한 양자화 인덱스 q1'∼q3'을 생성한다. 한 입력은 갱신된 타켓 비트 레이트의 신호이다. 실시예에서, 상기 타켓 비트 레이트는 타켓 총 비트 레이트 갱신 엘리먼트(68)에 의해 생성된, 모든 휘도 및 색채 성분에 대한 총 타켓 비트 레이트이다. 또다른 입력은 모델(70)에 의해 유도된 양자화 인덱스에 대한 레이트의 모델의 파라미터(b 및 m)의 신호이다. 상기 실시예에서, 모델 엘리먼트(70)는 모든 휘도 및 색채 성분에 대한 합성 모델이다.
상기 모델 엘리먼트(70)의 실시예의 동작은 도 6과 관련해 도 7a∼7d를 참조해 더욱 용이하게 이해될 수 있을 것이다. 도 6에서, 모델 엘리먼트(70)은 Y 모델 엘리먼트(72), C1모델 엘리먼트(74), 및 C2모델 엘리먼트(76)로 지정된 3개의 성분 모델 엘리먼트를 포함한다. 상기 3개의 성분 엘리먼트들은, 복합 모델이 복합 모델 엘리먼트(78)에 의해 유도되는 성분 모델을 유도한다.
각 성분 모델 엘리먼트는, 사용된 양자와 인덱스들에 근거한 성분에 대한 레이트 및 상응하는 레이트에 대한 양자화 인덱스의 지수 모델을 입력의 현재 세그먼트로부터 유도한다. Y 모델 엘리먼트(72)는 입력으로 도 6의 (qi(Y), ri(Y))로 지정되는 3세트의 데이터 포인트 (q1(Y), r1(Y)), (q2(Y), r2(Y)), 및 (q3(Y), r3(Y))를 수신한다. 상기 3개의 양자화 인덱스에 대한 영상 입력의 한 세그먼트의 4개 모두의 휘도 성분을 인코딩하기 때문에, 상기 데이터 레이트 ri(Y)는 총 레이트라 불린다. 상기 데이터 포인트의 3세트는, 도 7a에 도시된 등식 (7)∼(10)에 따라 Y 성분 지수 모델을 유도하는데 사용된다.
C1모듈 엘리먼트(74)는 입력으로 도 6의 (qi(C1), ri(C1))에 의해 지정된 데이터 포인트의 세 개의 세트((q1(C1), r1(C1)), (q2(C1), r2(C1)) 및 (q3(C1), r3(C1))를 수신한다. 상기 데이터 포인트는 C1성분에 대해 사용된 양자화 인덱스이며, 데이터 레이트는 양자화 인덱스의 사용으로부터 기인한다. 상기 데이터 포인트의 세개의 세트는 상술한 식(7) 내지 식(10)에 따라 도 7b에 도시된 C1성분의 지수 모델을 유도하기 위하여 사용된다. 이어, 모델에 기초하여, Y에 대한 현재 양자화 인덱스의 레이트가 추정된다. 도 7b에 있어서, q2(C1)은 q2(Y)와 동일하게 설정되므로, q2(Y)에 기초한 r2(C1)은 r2(C1)을 유지한다. 그러나, q1(Y)에 기초한 r1(C1) 및 q3(Y)에 기초한 r3(C1)에 대하여 추정이 유도된다.
유사하게, C2모델 엘리먼트(76)는 도 6의 (qi(C2), ri(C2))에 의해 지정된 데이터 포인트의 세 개의 세트((q1(C2), r1(C2)), (q2(C2), r2(C2)) 및 (q3(C2), r3(C2))를 수신한다. 상기 데이터 포인트는 C2성분에 대해 사용된 양자화 인덱스이며, 데이터 레이트는 양자화 인덱스의 사용으로부터 기인한다. 상기 데이터 포인트의 세개의 세트는 상술한 식(7) 내지 식(10)에 따라 도 7c에 도시된 C2성분 지수 모델을 유도하기 위하여 사용된다. 이어, C2성분의 모델에 기초하여 Y에 대한 현재 양자화 인덱스의 레이트가 추정된다. 따라서, q1(Y)에 기초한 r1(C1), q2(Y)에 기초한 r2(C2) 및 q3(Y)에 기초한 r3(C3)가 추정된다. 도 7b에 있어서, q2(C2) = q2(C2)이므로 q2(Y)에 기초한 r2(C2)는 r2(C2)를 유지한다.
상기 세가지 성분의 모델로부터, 합성 모델이 유도된다. 합성 모델은 데이터 세트의 세 가지 세트:((q1(Y), r1(전체)), (q2(Y), r2(전체)) 및 (q3(Y), r3(전체))에 기초한다. 전체 비율은 다음의 식으로부터 결정된다.
r1(모두) = r1(Y) + q1(Y)에 기초한 r1(C1) + q1(Y)에 기초한 r1(C2) (15)
r2(모두) = r2(Y) + q2(Y)에 기초한 r2(C1) + q2(Y)에 기초한 r2(C2) (16)
r3(모두) = r3(Y) + q3(Y)에 기초한 r3(C1) + q3(Y)에 기초한 r3(C2) (17)
합성 모델은 도 7d에 도시된다. 다시, 식 (7)에 따른 지수 모델은 상기 모델을 유도하는 데에 사용된다. 더욱이, 식(9) 내지 식(10)에 정의된 모델에 대한 최소 제곱 해는 모델 파라미터 b(모두) 및 m(모두)를 유도하기 위하여 사용된다. 상술한 바와 같이, b(모두) 및 m(모두)의 신호는 양자화 인덱스 갱신 엘리먼트(66)로 입력된다.
양자화 인덱스 갱신 엘리먼트(66)로의 다른 입력, 즉 갱신된 타겟 전체 비트 레이트는 입력 신호의 현재 세그먼트를 처리한 후 레이트 버퍼 상태에 기초하여 타겟 전체 비트 레이트 갱신 엘리먼트(68)에 의해 유도된다.
도 5a 내지 도 5c를 참조하여, 선택된 Y, C1및 C2성분은통신 채널을 통한 전송에 앞서 레이트 버퍼(48,56,64)에 제공된다는 것을 알 수 있다. 상술한 바와 같이, 레이트 버퍼(48,56,64)가 3가지의 개별적인 레이트 버퍼로서 도시되었을 지라도, 상기 버퍼들은 모든 성분들에 의해 공유되는 단지 하나의 레이트 버퍼일 수도 있다는 것을 이해할 수 있을 것이다. 도 6에 도시된 실시예에 있어서, 단일 레이트 버퍼(80)는 선택된 모든 Y, C1및 C2성분을 수신한다. 레이트 버퍼 상태 지시기(82)는 상술한 식(11)에 기초한 비디오 입력의 현 세그먼트를 처리한 후 레이트 버퍼 상태(BFk)를 결정한다. 상기 레이트 버퍼 상태(BFk)는 타겟 비트 레이트 갱신 엘리먼트(68)에 제공되며, 상기 엘리먼트는 상술한 식(12)에 기초하여 갱신된 타겟 비트 레이트(NTk)를 유도한다. 이어 타겟 전체 비트 레이트 갱신 엘리먼트(68)는 양자화 인덱스 갱신 엘리먼트(66)로 갱신된 타겟 비트 레이트(NTk)를 제공한다.
b(모두), m(모두) 및 갱신된 타겟 전체 비트 레이트의 입력을 획득하면, 양자화 인덱스 갱신 엘리먼트(66)는 비디오 입력의 다음 세그먼트를 처리하기 위하여 갱신된 양자화 인덱스를 선택할 준비가 되게 된다. 3가지의 양자화 인덱스가 Y, C1및 C2성분 각각에 대하여 선택되어야 한다. Y 성분에 대하여, 갱신된 양자화 인덱스는 q1'(Y) - q3'(Y)로 언급되며, C1성분에 대하여 상기 갱신된 양자화 인덱스는 q1'(C1) - q3'(C1)로 언급되며, C2성분에 대하여 상기 갱신된 양자화 인덱스는 q1'(C2) - q3'(C2)로 언급된다.
바람직한 실시예에 있어서, 갱신 알고리즘은 Y, C1및 C2성분 모두에 대하여 동일한 중간 양자화 인덱스를 선택한다. 상기 양자화 인덱스 q2'(Y)가 상술한 식(14)에 따라 선택된다. C1및 C2에 대한 중간 양자화 인덱스, q2'(C1) 및 q2'(C2)는 q2'(C2)로 동일하게 설정된다. 이어, 상술한 두가지의 앵커 방법은 모든 휘도 성분에 대하여 q1'(Y) 및 q3'(Y)로 설정하는 데에 사용된다. 다른 C1및 C2양자화 인덱스가 선택되어, 그들은 상이하며 q2'(C1) 및 q1'(C2) 양자화 인덱스로부터의 스프레드에 대한 절대값 차를 가지게 된다. 이어 상기 갱신된 양자화 인덱스는 입력 신호의 다음 세그먼트를 양자화하는 데에 사용되기 위하여, (도 1의) 인코더(12)로 인가된다.
바람직한 실시예에 대한 상술한 설명은 기술 분야의 소정 당업자가 본 발명을 사용하는 것을 허용하기 위하여 제시되었다. 이러한 실시예의 다양한 수정이 당업자에게는 용이하게 명확하여질 것이며, 본 명세서에서 정의된 일반적인 원칙은 다른 독창적인 사항없이 다른 실시예에 적용될 수 있다. 따라서, 본 발명은 명세서에 제시된 실시예에 한정되는 것이 아니라 제시된 새로운 특성 및 원칙과 관련한 광범위한 범위에 해당한다.

Claims (39)

  1. 이미지 압축 시스템 내에 사용되는, 비디오 신호의 인코딩 비트 레이트를 적응성으로 제어하는 서브시스템에 있어서,
    비디오 신호 세그먼트를 수신하고 소정 양자화 세팅 세트에 따라 다수의 인코딩 데이터 비트 스트림을 발생시키는 인코더 수단; 및
    상기 다수의 인코딩 스트림을 수신하고 소정 선택 알고리듬에 따라 선택된 인코딩 스트림을 발생시키는 레이트 제어기 수단을 포함하는 것을 특징으로 하는 서브시스템.
  2. 제 1항에 있어서, 상기 인코더 수단은:
    상기 데이터 입력 세그먼트를 수신하고 양자화 데이터 스트림을 발생시키도록 상기 양자화 세팅중 하나에 따라 상기 데이터 입력 세그먼트를 양자화시키는 다수의 양자화기; 및
    상기 양자화 스트림중 하나를 수신하고 상기 인코딩 데이터 비트 스트림중 하나를 발생시키도록 가변 길이 인코딩 알고리듬에 따라 상기 수신된 양자화 스트림을 인코딩하는 다수의 가변 길이 인코더를 포함하는 것을 특징으로 하는 서브시스템.
  3. 제 1항에 있어서, 상기 인코더 수단은 다수의 인코딩 스트림을 수신하고 상기 다수의 인코딩 스트림 각각에 대응하는 비트 레이트를 결정하는 레이트 측정 수단을 더 포함하며, 상기 비트 레이트는 상기 양자화 세팅에 의존하는 것을 특징으로 하는 서브시스템.
  4. 제 1항에 있어서, 상기 레이트 제어기 수단은 상기 선택된 인코딩 스트림을 발생시킨 후에 상기 레이트 제어 수단의 상태에 따라 상기 양자화 세팅 세트의 갱신된 세트를 발생시키는 갱신 수단을 포함하는 것을 특징으로 하는 서브시스템.
  5. 제 3항에 있어서, 상기 레이트 제어기 수단은 상기 다수의 인코딩 스트림 및 대응하는 비트 레이트를 수신하고 상기 소정 선택 기준에 따라 선택된 인코딩 스트림을 발생시키는 선택기 수단을 포함하며, 상기 소정 선택 기준은 상기 비트 레이트를 기초로 하는 것을 특징으로 하는 서브시스템.
  6. 제 5항에 있어서, 상기 레이트 제어기 수단은:
    전송 준비를 위하여 상기 선택된 인코딩 스트림을 수신하며, 상기 선택된 인코딩 스트림을 수신함에 따른 버퍼 상태를 가지는 버퍼; 및
    상기 버퍼 상태에 따라 상기 양자화 세팅 세트의 새로운 세트를 발생시키는 갱신 수단을 더 포함하는 것을 특징으로 하는 서브시스템.
  7. 제 2항에 있어서, 상기 가변 길이 인코딩 알고리듬은 허프만 코딩을 포함하는 것을 특징으로 하는 서브시스템.
  8. 제 2항에 있어서, 상기 가변 길이 인코딩 알고리듬은 허프만 코딩에 의하여 추종되는 영의 실행 길이 인코딩을 포함하는 것을 특징으로 하는 서브시스템.
  9. 제 6항에 있어서, 상기 각각의 양자화 세팅은 양자화 인덱스에 따라 발생된 가중 마스크 펑크션을 포함하는 것을 특징으로 하는 서브시스템.
  10. 제 9항에 있어서, 상기 양자화 인덱스 및 상기 비트 레이트를 수신하며 상기 양자화 인덱스 및 상기 비트 레이트에 따라 양자화 인덱스 대 레이트의 모델을 유도하는 모델 수단을 더 포함하며,
    상기 갱신 수단은 상기 모델의 파라미터를 수신하고 상기 모델 파라미터에 따라 상기 양자화 세팅 세트의 상기 갱신된 세트를 발생시키는 것을 특징으로 하는 서브시스템.
  11. 제 10항에 있어서, 상기 모델은 지수 함수 모델인 것을 특징으로 하는 서브시스템.
  12. 제 5항에 있어서, 상기 선택기 수단에 의하여 이용되는 상기 소정 선택 기준은 소정 타켓 비트 레이트를 기초로 절대 인코딩 레이트 에러를 최소화하는 것을 특징으로 하는 서브시스템.
  13. 제 1항에 있어서, 화소 데이터 블록을 수신하고 상기 비디오 신호 세그먼트로서 상기 인코더에 제공되는 DCT 계수값 블록을 발생시키도록 상기 화소 데이터 블록 상에 이산 코사인 변화(DCT) 연산을 수행하는 프리프로세서를 더 포함하는 것을 특징으로 하는 서브시스템.
  14. 제 10항에 있어서, 상기 선택기 수단에 의하여 이용되는 상기 소정 선택 기준은 소정 타켓 비트 레이트를 기초로 절대 인코딩 레이트 에러를 최소화하며,
    상기 갱신 수단은 상기 버퍼 상태에 따라 갱신 타켓 비트 레이트를 발생시키는 것을 특징으로 하는 서브시스템.
  15. 제 14항에 있어서, 상기 갱신된 타켓 비트 레이트는 타켓 버퍼 충진 레벨에 따라 발생되는 것을 특징으로 하는 서브시스템.
  16. 제 15항에 있어서, 상기 갱신 수단은 상기 모델에 따라 상기 양자화 인덱스 세트의 상기 갱신된 세트를 발생시키는 것을 특징으로 하는 서브시스템.
  17. 제 16항에 있어서, 상기 양자화 인덱스의 갱신된 세트중 하나는 상기 갱신된 타켓 비트 레이트에 대응하는 양자화 인덱스를 구하기 위하여 발생되며, 상기 갱신된 세트의 다른 것들은 1 앵커 방식을 기초로 발생되는 것을 특징으로 하는 서브시스템.
  18. 제 16항에 있어서, 상기 양자화 인덱스의 갱신된 세트중 하나는 상기 갱신된 타켓 비트 레이트에 대응하는 양자화 인덱스를 구하기 위하여 발생되며, 상기 갱신된 세트의 다른 것들은 2 앵커 방식을 기초로 발생되는 것을 특징으로 하는 서브시스템.
  19. 제 1항에 있어서, 상기 비디오 신호는 컬러 비디오 신호인 것을 특징으로 하는 서브시스템.
  20. 제 10항에 있어서, 상기 비디오 신호 세그먼트는 휘도 및 색채 성분을 가진 컬러 비디오 신호이며,
    상기 각각의 휘도 및 색채 성분은 상기 양자화 데이터 스트림을 발생시키도록 상기 양자화 인덱스에 대응하는 상기 다수의 양자화기에 의하여 별도로 양자화되며,
    상기 가변 길이 인코더는 상기 각각의 휘도 및 색채 성분에 대하여 상기 다수의 인코딩 데이터 비트 스트림을 발생시키며,
    상기 레이트 측정기는 상기 각각의 휘도 및 색채 성분에 대한 각각의 상기 인코딩 스트림에 대하여 상기 비트 레이트를 결정하며,
    상기 모델 엘리먼트는 상기 성분들에 대한 상기 양자화 인덱스 및 비트 레이트를 기초로 상기 각각의 휘도 및 색채 성분에 대한 성분 모델을 발생시키며,
    상기 양자화 인덱스 대 레이트의 모델은 상기 성분 모델을 합성한 것을 특징으로 하는 서브시스템.
  21. 제 20항에 있어서, 상기 선택기 수단은 상기 휘도 및 색채 성분에 대한 상기 인코딩 스트림 및 상기 비트 레이트를 수신하고 소정 타켓 비트 레이트를 기초로 절대 인코딩 레이트 에러를 최소화하는 데이트를 가진 휘도 및 색채의 결합을 기초로 상기 휘도 및 색채에 대한 선택된 인코딩 스트림을 발생시키는 것을 특징으로 하는 서브시스템.
  22. 제 21항에 있어서, 상기 갱신 수단은 상기 각각의 휘도 및 색채 성분에 대하여 상기 갱신된 양자화 세팅을 발생시키는 것을 특징으로 하는 서브시스템.
  23. 이미지 압축을 위하여 비디오 입력의 인코딩 비트 레이트를 적응성 제어하는 방법에 있어서,
    다수의 인코딩 데이터 비트 스트림을 발생시키도록 소정 양자화 세팅 세트에 따라 비디오 세그먼트를 인코딩하는 단계; 및
    소정 선택 알고리듬에 따라 선택된 인코딩 스트림을 선택하는 단계를 포함하는 것을 특징으로 하는 방법.
  24. 제 23항에 있어서, 상기 인코딩 단계는:
    상기 양자화 세팅중 하나에 따라 양자화된 다수의 양자화 스트림을 발생시키도록 상기 비디오 신호 세그먼트를 양자화하는 단계; 및
    대응하는 다수의 상기 인코딩 스트림을 발생시키도록 가변 길이 인코딩 알고리듬을 이용하여 상기 다수의 양자화 스트림 각각을 가변 길이 인코딩하는 단계를 포함하는 것을 특징으로 하는 방법.
  25. 제 23항에 있어서,
    상기 선택된 인코딩 스트림을 기초로 제어 신호를 발생시키는 단계; 및
    상기 제어 신호에 따라 상기 양자화 세팅을 갱신하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  26. 제 24항에 있어서,
    상기 다수의 인코딩 스트림 각각에 대한 인코딩 비트 레이트를 결정하는 단계; 및
    전송을 위해 상기 선택된 인코딩 스트림을 버퍼에 저장하는 단계를 더 포함하며,
    상기 소정 선택 기준은 상기 인코딩 비트 레이트를 기초로 하며,
    상기 제어 신호는 상기 선택된 인코딩 스트림을 수신한 후에 상기 버퍼의 상태를 나타내는 버퍼 상태 신호인 것을 특징으로 하는 방법.
  27. 제 24항에 있어서, 상기 가변 길이 인코딩 알고리듬은 허프만 코딩을 포함하는 것을 특징으로 하는 방법.
  28. 제 24항에 있어서, 상기 가변 길이 인코딩 알고리듬은 허프만 코딩에 의하여 추종되는 제로의 실행 길이 인코딩을 포함하는 것을 특징으로 하는 방법.
  29. 제 26항에 있어서, 상기 각각의 양자화 세팅은 양자화 인덱스에 따라 발생된 가중 마스크 펑크션을 포함하는 것을 특징으로 하는 방법.
  30. 제 28항에 있어서,
    상기 양자화 인덱스 및 상기 인코딩 비트 레이트에 따라 양자화 인덱스 대 레이트의 모델을 유도하는 단계; 및
    상기 모델의 파라미터에 따라 상기 양자화 세팅을 갱신하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  31. 제 30항에 있어서, 상기 모델은 지수함수 모델인 것을 특징으로 하는 방법.
  32. 제 24항에 있어서, 화소 데이터 블록을 수신하는 단계 및 상기 비디오 신호 세그먼트인 DCT 계수값 블록을 발생시키도록 상기 화소 데이터 블록 상에 이산 코사인 변화(DCT) 연산을 수행하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  33. 제 30항에 있어서, 상기 가변 길이 인코딩 스트림을 선택하기 위한 상기 소정 선택 기준은 소정 타켓 비트 레이트를 기초로 절대 인코딩 레이트 에러를 최소화하며,
    상기 버퍼 상태에 따라 상기 타켓 비트 에러를 갱신하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  34. 제 33항에 있어서, 상기 모델에 따라 상기 갱신된 타켓 비트 레이트에 대응하는 양자화 인덱스를 구함으로써 상기 양자화 인덱스의 갱신된 세트를 발생시키는 단계를 더 포함하는 것을 특징으로 하는 방법.
  35. 제 34항에 있어서, 상기 양자화 인덱스의 갱신된 세트중 하나는 상기 갱신된 타켓 비트 레이트에 대응하는 양자화 인덱스를 구함으로써 발생되고, 상기 양자화 인덱스의 갱신된 세트의 다른 것들은 1 앵커 방식을 기초로 발생되는 것을 특징으로 하는 방법.
  36. 제 34항에 있어서, 상기 양자화 인덱스의 갱신된 세트중 하나는 상기 갱신된 타켓 비트 레이트에 대응하는 양자화 인덱스를 구함으로써 발생되고, 상기 양자화 인덱스의 갱신된 세트의 다른 것들은 2 앵커 방식을 기초로 발생되는 것을 특징으로 하는 방법.
  37. 제 30항에 있어서, 상기 비디오 입력은 휘도 및 색채 성분을 가진 컬러 신호이며,
    상기 별도로 양자화하는 단계는 상기 휘도 및 색채 성분을 양자화하며,
    상기 가변 길이 인코딩 단계는 상기 각각의 휘도 및 색채 성분에 대하여 상기 다수의 인코딩 스트림을 발생시키며,
    상기 인코딩 비트 레이트를 결정하는 단계는 상기 각각의 휘도 및 색채 성분에 대해 수행되며,
    상기 모델을 유도하는 단계는 상기 각각의 휘도 및 색채 성분에 대한 성분 모델을 유도하며, 상기 모델은 상기 성분 모델을 합성한 것을 특징으로 하는 방법.
  38. 제 37항에 있어서, 상기 선택 단계는 소정 타켓 비트 레이트를 기초로 절대 인코딩 레이트 에러를 최소화하는 휘도 및 색채 성분의 결합을 기초로 상기 각각의 휘도 및 색채에 대한 선택된 성분 인코딩 스트림을 선택하는 것을 특징으로 하는 방법.
  39. 제 38항에 있어서, 상기 양자화 세팅을 갱신하는 단계는 상기 각각의 휘도 및 색채 성분에 대한 상기 갱신된 양자화 세팅을 발생시키는 것을 특징으로 하는 방법.
KR1019997003131A 1996-10-11 1997-10-09 디지털 비디오 압축을 위한 적응성 레이트 제어 방법 및 장치 KR100555601B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US731,229 1996-10-11
US08/731,229 US6366614B1 (en) 1996-10-11 1996-10-11 Adaptive rate control for digital video compression

Publications (2)

Publication Number Publication Date
KR20000049059A true KR20000049059A (ko) 2000-07-25
KR100555601B1 KR100555601B1 (ko) 2006-03-03

Family

ID=24938644

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019997003131A KR100555601B1 (ko) 1996-10-11 1997-10-09 디지털 비디오 압축을 위한 적응성 레이트 제어 방법 및 장치

Country Status (13)

Country Link
US (3) US6366614B1 (ko)
EP (1) EP0931417B1 (ko)
JP (2) JP4698772B2 (ko)
KR (1) KR100555601B1 (ko)
CN (1) CN1190083C (ko)
AT (1) ATE312477T1 (ko)
AU (1) AU735938B2 (ko)
BR (1) BR9714301A (ko)
CA (1) CA2268408C (ko)
DE (1) DE69734831T2 (ko)
ID (1) ID28372A (ko)
RU (1) RU2217880C2 (ko)
WO (1) WO1998017065A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100987232B1 (ko) * 2006-01-31 2010-10-12 콸콤 인코포레이티드 인코딩 장치 내에서의 레이트 제어 방법 및 시스템
KR100988177B1 (ko) * 2006-01-31 2010-10-18 퀄컴 인코포레이티드 품질 및 레이트 정보에 기초하여 멀티미디어 콘텐츠를 리사이징하기 위한 방법 및 시스템
US8885470B2 (en) 2005-04-08 2014-11-11 Qualcomm Incorporated Methods and systems for resizing multimedia content based on quality and rate information

Families Citing this family (131)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7321783B2 (en) * 1997-04-25 2008-01-22 Minerva Industries, Inc. Mobile entertainment and communication device
DE69830979T2 (de) * 1997-07-29 2006-05-24 Koninklijke Philips Electronics N.V. Verfahren und vorrichtung zur videocodierung mit variabler bitrate
CN1138354C (zh) * 1999-11-11 2004-02-11 华为技术有限公司 码分多址技术和变速率图像压缩编码技术相结合的传输方法
US6738423B1 (en) * 2000-01-21 2004-05-18 Nokia Mobile Phones Ltd. Method for encoding and decoding video information, a motion compensated video encoder and a corresponding decoder
CN1322759C (zh) * 2000-04-27 2007-06-20 三菱电机株式会社 编码装置和编码方法
US7630721B2 (en) 2000-06-27 2009-12-08 Ortiz & Associates Consulting, Llc Systems, methods and apparatuses for brokering data between wireless devices and data rendering devices
US6741648B2 (en) * 2000-11-10 2004-05-25 Nokia Corporation Apparatus, and associated method, for selecting an encoding rate by which to encode video frames of a video sequence
US7000026B2 (en) * 2000-12-22 2006-02-14 Nortel Networks Limited Multi-channel sharing in a high-capacity network
US6728931B2 (en) * 2001-03-22 2004-04-27 Promos Technologies, Inc. Time data compression technique for high speed integrated circuit memory devices
US7602847B1 (en) 2001-03-27 2009-10-13 Vixs Systems, Inc. Device and method for compression of a video stream
US8107524B2 (en) * 2001-03-30 2012-01-31 Vixs Systems, Inc. Adaptive bandwidth footprint matching for multiple compressed video streams in a fixed bandwidth network
US20070053428A1 (en) * 2001-03-30 2007-03-08 Vixs Systems, Inc. Managed degradation of a video stream
US7103047B1 (en) * 2001-06-26 2006-09-05 Juniper Networks, Inc. Method and apparatus for modifying the rate of MPEG transport streams
US6959348B1 (en) * 2001-07-30 2005-10-25 Vixs Systems, Inc. Method and system for accessing data
US7675972B1 (en) * 2001-07-30 2010-03-09 Vixs Systems, Inc. System and method for multiple channel video transcoding
US20030039226A1 (en) * 2001-08-24 2003-02-27 Kwak Joseph A. Physical layer automatic repeat request (ARQ)
US7596127B1 (en) 2001-10-31 2009-09-29 Vixs Systems, Inc. System for allocating data in a communications system and method thereof
US7139330B1 (en) 2001-10-31 2006-11-21 Vixs Systems, Inc. System for signal mixing and method thereof
US7106715B1 (en) 2001-11-16 2006-09-12 Vixs Systems, Inc. System for providing data to multiple devices and method thereof
US7403564B2 (en) * 2001-11-21 2008-07-22 Vixs Systems, Inc. System and method for multiple channel video transcoding
US7356079B2 (en) * 2001-11-21 2008-04-08 Vixs Systems Inc. Method and system for rate control during video transcoding
US7165180B1 (en) 2001-11-27 2007-01-16 Vixs Systems, Inc. Monolithic semiconductor device for preventing external access to an encryption key
JP4320390B2 (ja) * 2002-04-19 2009-08-26 アイピージー・エレクトロニクス・503・リミテッド 出力レートを変更する方法及び装置
US7310679B1 (en) 2002-04-29 2007-12-18 Vixs Systems Inc. Method and system for transmitting video content while preventing other transmissions in a contention-based network
US7120253B2 (en) * 2002-05-02 2006-10-10 Vixs Systems, Inc. Method and system for protecting video data
CN100504915C (zh) * 2002-07-29 2009-06-24 高通股份有限公司 数字图像编码
EP1547393A4 (en) * 2002-09-05 2010-10-13 Agency Science Tech & Res METHOD AND DEVICE FOR CONTROLLING THE RATE OF A VIDEO SEQUENCE AND VIDEO CODING DEVICE
US8204079B2 (en) * 2002-10-28 2012-06-19 Qualcomm Incorporated Joint transmission of multiple multimedia streams
US6968387B2 (en) * 2003-01-10 2005-11-22 Realnetworks, Inc. Stochastic adaptive streaming of content
US7212681B1 (en) * 2003-01-15 2007-05-01 Cisco Technology, Inc. Extension of two-dimensional variable length coding for image compression
US20040141555A1 (en) * 2003-01-16 2004-07-22 Rault Patrick M. Method of motion vector prediction and system thereof
US7408989B2 (en) * 2003-01-16 2008-08-05 Vix5 Systems Inc Method of video encoding using windows and system thereof
US7606305B1 (en) 2003-02-24 2009-10-20 Vixs Systems, Inc. Method and system for transcoding video data
US7133452B1 (en) 2003-02-24 2006-11-07 Vixs Systems, Inc. Method and system for transcoding video data
US7327784B2 (en) * 2003-02-24 2008-02-05 Vixs Systems, Inc. Method and system for transcoding video data
US7130350B1 (en) 2003-02-28 2006-10-31 Vixs Systems, Inc. Method and system for encoding and decoding data in a video stream
GB0306973D0 (en) * 2003-03-26 2003-04-30 British Telecomm Transmitting video
CN100405350C (zh) * 2003-04-24 2008-07-23 诺基亚有限公司 预设速率匹配信号通知的方法和装置
US7739105B2 (en) * 2003-06-13 2010-06-15 Vixs Systems, Inc. System and method for processing audio frames
US7668396B2 (en) * 2003-09-29 2010-02-23 Vixs Systems, Inc. Method and system for noise reduction in an image
US7277101B2 (en) 2003-09-29 2007-10-02 Vixs Systems Inc Method and system for scaling images
EP1553779A1 (en) * 2004-01-12 2005-07-13 Deutsche Thomson-Brandt GmbH Data reduction of video streams by selection of frames and partial deletion of transform coefficients
WO2005076632A2 (en) * 2004-01-30 2005-08-18 Thomson Licensing Encoder with adaptive rate control for h.264
US7869503B2 (en) * 2004-02-06 2011-01-11 Apple Inc. Rate and quality controller for H.264/AVC video coder and scene analyzer therefor
US7986731B2 (en) * 2004-02-06 2011-07-26 Apple Inc. H.264/AVC coder incorporating rate and quality controller
US7492820B2 (en) 2004-02-06 2009-02-17 Apple Inc. Rate control for video coder employing adaptive linear regression bits modeling
US7406598B2 (en) * 2004-02-17 2008-07-29 Vixs Systems Inc. Method and system for secure content distribution
GB0406901D0 (en) * 2004-03-26 2004-04-28 British Telecomm Transmitting recorded material
JP4406640B2 (ja) * 2004-04-09 2010-02-03 ノキア コーポレイション 圧縮画像データファイルの作成方法、画像データ圧縮装置及び撮影装置
US7818444B2 (en) 2004-04-30 2010-10-19 Move Networks, Inc. Apparatus, system, and method for multi-bitrate content streaming
US8868772B2 (en) 2004-04-30 2014-10-21 Echostar Technologies L.L.C. Apparatus, system, and method for adaptive-rate shifting of streaming content
US8355434B2 (en) * 2005-01-10 2013-01-15 Qualcomm Incorporated Digital video line-by-line dynamic rate adaptation
US7421048B2 (en) * 2005-01-20 2008-09-02 Vixs Systems, Inc. System and method for multimedia delivery in a wireless environment
KR100668324B1 (ko) * 2005-01-21 2007-01-12 삼성전자주식회사 화상 데이터 부호화시의 비트율 제어방법 및 장치
US7609766B2 (en) * 2005-02-08 2009-10-27 Vixs Systems, Inc. System of intra-picture complexity preprocessing
US8949920B2 (en) * 2005-03-17 2015-02-03 Vixs Systems Inc. System and method for storage device emulation in a multimedia processing system
US7400869B2 (en) * 2005-03-22 2008-07-15 Vixs Systems Inc. System and method for adaptive DC offset compensation in wireless transmissions
US7477598B2 (en) * 2005-03-25 2009-01-13 International Business Machines Corporation Adaptive stream switching with minimized switching delay
US7102549B1 (en) * 2005-03-31 2006-09-05 Agere Systems Inc. Method and apparatus for programmable codeword encoding and decoding using truncated codewords
US20080263180A1 (en) * 2007-04-19 2008-10-23 Hurst Mark B Apparatus, system, and method for resilient content acquisition
US8370514B2 (en) 2005-04-28 2013-02-05 DISH Digital L.L.C. System and method of minimizing network bandwidth retrieved from an external network
US8683066B2 (en) 2007-08-06 2014-03-25 DISH Digital L.L.C. Apparatus, system, and method for multi-bitrate content streaming
US20070036227A1 (en) * 2005-08-15 2007-02-15 Faisal Ishtiaq Video encoding system and method for providing content adaptive rate control
US7707485B2 (en) 2005-09-28 2010-04-27 Vixs Systems, Inc. System and method for dynamic transrating based on content
US8102878B2 (en) * 2005-09-29 2012-01-24 Qualcomm Incorporated Video packet shaping for video telephony
US8406309B2 (en) * 2005-10-21 2013-03-26 Qualcomm Incorporated Video rate adaptation to reverse link conditions
US8514711B2 (en) * 2005-10-21 2013-08-20 Qualcomm Incorporated Reverse link lower layer assisted video error control
US8842555B2 (en) * 2005-10-21 2014-09-23 Qualcomm Incorporated Methods and systems for adaptive encoding of real-time information in packet-switched wireless communication systems
US8548048B2 (en) * 2005-10-27 2013-10-01 Qualcomm Incorporated Video source rate control for video telephony
US9479794B2 (en) 2005-11-10 2016-10-25 Freescale Semiconductor, Inc. Resource efficient video processing via prediction error computational adjustments
US20070112826A1 (en) * 2005-11-10 2007-05-17 Vixs Systems, Inc. Multimedia transcoding based on remaining storage capacity
US20070110151A1 (en) * 2005-11-14 2007-05-17 Ess Technology, Inc. System and method for video frame buffer compression
US8131995B2 (en) * 2006-01-24 2012-03-06 Vixs Systems, Inc. Processing feature revocation and reinvocation
US8077775B2 (en) * 2006-05-12 2011-12-13 Freescale Semiconductor, Inc. System and method of adaptive rate control for a video encoder
US7773672B2 (en) * 2006-05-30 2010-08-10 Freescale Semiconductor, Inc. Scalable rate control system for a video encoder
US9883202B2 (en) * 2006-10-06 2018-01-30 Nxp Usa, Inc. Scaling video processing complexity based on power savings factor
US7756350B2 (en) * 2006-11-13 2010-07-13 Global Ip Solutions, Inc. Lossless encoding and decoding of digital data
US8208554B2 (en) 2006-12-07 2012-06-26 Qualcomm Incorporated Line-based video compression
US8357099B2 (en) 2006-12-21 2013-01-22 Ric Investments, Llc Signal quality determination and signal correction system and methods
WO2008086509A2 (en) * 2007-01-10 2008-07-17 Qualcomm Incorporated Content- and link-dependent coding adaptation for multimedia telephony
CA2678574C (en) * 2007-03-14 2015-06-16 Nippon Telegraph And Telephone Corporation Motion vector search method and apparatus, program therefor, and storage medium which stores the program
CN101632308B (zh) * 2007-03-14 2011-08-03 日本电信电话株式会社 编码比特率控制方法和装置
ES2369214T3 (es) * 2007-03-14 2011-11-28 Nippon Telegraph And Telephone Corporation Método y dispositivo de estimación de la cantidad de código, su programa y medio de almacenamiento.
JP5197574B2 (ja) * 2007-03-14 2013-05-15 日本電信電話株式会社 量子化制御方法及び装置、そのプログラム並びにプログラムを記録した記録媒体
US8019804B2 (en) * 2007-03-26 2011-09-13 City University Of Hong Kong Method and apparatus for calculating an SSD and encoding a video signal
WO2009018681A1 (en) * 2007-08-07 2009-02-12 Thomson Licensing Apparatus and method for shaping data streaming in an xdsl network
US8797850B2 (en) * 2008-01-10 2014-08-05 Qualcomm Incorporated System and method to adapt to network congestion
US8190760B2 (en) 2008-01-15 2012-05-29 Echostar Advanced Technologies L.L.C. System and method of managing multiple video players
US9832442B2 (en) 2008-01-15 2017-11-28 Echostar Technologies Llc System and method of managing multiple video players executing on multiple devices
US8024121B2 (en) * 2008-01-25 2011-09-20 Smith International, Inc. Data compression method for use in downhole applications
US8788206B2 (en) * 2008-01-25 2014-07-22 Schlumberger Technology Corporation Data compression transforms for use in downhole applications
EP2101503A1 (en) * 2008-03-11 2009-09-16 British Telecommunications Public Limited Company Video coding
US20090238259A1 (en) * 2008-03-19 2009-09-24 Sung-Hung Yeh Method of rate control for video frame compression and encoder thereof
US8325800B2 (en) 2008-05-07 2012-12-04 Microsoft Corporation Encoding streaming media as a high bit rate layer, a low bit rate layer, and one or more intermediate bit rate layers
US8379851B2 (en) 2008-05-12 2013-02-19 Microsoft Corporation Optimized client side rate control and indexed file layout for streaming media
CN102027745A (zh) * 2008-05-16 2011-04-20 夏普株式会社 视频记录装置
US7925774B2 (en) * 2008-05-30 2011-04-12 Microsoft Corporation Media streaming using an index file
US20090304071A1 (en) * 2008-06-06 2009-12-10 Apple Inc. Adaptive application of entropy coding methods
EP2192785B1 (en) * 2008-06-27 2014-12-31 Sony Corporation Image processing device and method for computing a quantization factor
GB2463329B (en) 2008-09-10 2013-02-20 Echostar Advanced Technologies L L C Set-top box emulation system
US8265140B2 (en) 2008-09-30 2012-09-11 Microsoft Corporation Fine-grained client-side control of scalable media delivery
US8650301B2 (en) 2008-10-02 2014-02-11 Ray-V Technologies, Ltd. Adaptive data rate streaming in a peer-to-peer network delivering video content
US8321401B2 (en) 2008-10-17 2012-11-27 Echostar Advanced Technologies L.L.C. User interface with available multimedia content from multiple multimedia websites
EP2200319A1 (en) 2008-12-10 2010-06-23 BRITISH TELECOMMUNICATIONS public limited company Multiplexed video streaming
US9009066B2 (en) * 2009-02-12 2015-04-14 Echostar Technologies L.L.C. Advertisement management for live internet multimedia content
EP2219342A1 (en) 2009-02-12 2010-08-18 BRITISH TELECOMMUNICATIONS public limited company Bandwidth allocation control in multiple video streaming
JP5481923B2 (ja) * 2009-04-28 2014-04-23 富士通株式会社 画像符号化装置、画像符号化方法および画像符号化プログラム
US10410222B2 (en) * 2009-07-23 2019-09-10 DISH Technologies L.L.C. Messaging service for providing updates for multimedia content of a live event delivered over the internet
US9203816B2 (en) * 2009-09-04 2015-12-01 Echostar Technologies L.L.C. Controlling access to copies of media content by a client device
US9338523B2 (en) * 2009-12-21 2016-05-10 Echostar Technologies L.L.C. Audio splitting with codec-enforced frame sizes
US9510029B2 (en) 2010-02-11 2016-11-29 Echostar Advanced Technologies L.L.C. Systems and methods to provide trick play during streaming playback
EP2664147B1 (en) * 2011-01-13 2020-03-11 Canon Kabushiki Kaisha Image coding apparatus, image coding method, and program, and image decoding apparatus, image decoding method, and program
US9578354B2 (en) 2011-04-18 2017-02-21 Verizon Patent And Licensing Inc. Decoupled slicing and encoding of media content
KR101995694B1 (ko) 2011-04-20 2019-07-02 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 허프만 부호화를 실행하기 위한 장치 및 방법
US9609340B2 (en) 2011-12-28 2017-03-28 Verizon Patent And Licensing Inc. Just-in-time (JIT) encoding for streaming media content
EP2789165A4 (en) * 2012-01-20 2015-08-05 Sony Corp EXPANSION OF CHROMISTRATION PARAMETERS
US8990849B2 (en) 2012-02-14 2015-03-24 Verizon Patent And Licensing Inc. Advertisement insertion into media content for streaming
EP2904796B1 (en) * 2012-10-03 2020-09-02 Avago Technologies International Sales Pte. Limited Bounded rate compression with rate control for slices
US20140297869A1 (en) 2012-10-11 2014-10-02 Uplynk, LLC Adaptive streaming cost management
WO2014186886A1 (en) * 2013-05-24 2014-11-27 En-Hui Yang System and method having transparent composite model for transform coefficients
GB2519391B (en) * 2014-04-02 2015-10-21 Imagination Tech Ltd Enhanced media quality management
US9807336B2 (en) * 2014-11-12 2017-10-31 Mediatek Inc. Dynamic adjustment of video frame sampling rate
GB2575198B (en) * 2015-07-03 2020-03-25 Sisp Tech Ltd Data processing method and apparatus
GB2542707B (en) 2015-07-03 2020-02-12 Sisp Tech Ltd Data processing method and apparatus
CN105007094B (zh) * 2015-07-16 2017-05-31 北京中宸泓昌科技有限公司 一种指数对扩频编码解码方法
WO2017117264A1 (en) 2015-12-29 2017-07-06 Echostar Technologies L.L.C Remote storage digital video recorder streaming and related methods
FR3046711B1 (fr) * 2016-01-08 2018-02-16 Stmicroelectronics (Grenoble 2) Sas Compression et decompression de donnees video
EP3479485B1 (en) 2016-07-04 2022-03-16 SISP Technologies Ltd Data processing method and apparatus
US20180027244A1 (en) * 2016-07-21 2018-01-25 Mediatek Inc. Video encoding apparatus with video encoder adaptively controlled according to at least transmission status of communication link and associated video encoding method
WO2018132964A1 (zh) * 2017-01-18 2018-07-26 深圳市大疆创新科技有限公司 传输编码数据的方法、装置、计算机系统和移动设备
US20220051101A1 (en) * 2020-08-14 2022-02-17 Tencent America LLC Method and apparatus for compressing and accelerating multi-rate neural image compression model by micro-structured nested masks and weight unification

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5107345A (en) 1990-02-27 1992-04-21 Qualcomm Incorporated Adaptive block size image compression method and system
US5021891A (en) 1990-02-27 1991-06-04 Qualcomm, Inc. Adaptive block size image compression method and system
DE69130275T2 (de) 1990-07-31 1999-04-08 Canon Kk Verfahren und Gerät zur Bildverarbeitung
JPH04255190A (ja) 1991-02-07 1992-09-10 Hitachi Ltd 画像データ圧縮装置
DE69222332T2 (de) 1991-02-21 1998-01-29 Nec Corp Kodierungsgerät zur Kompression von bewegten Bilddaten
JPH04323960A (ja) 1991-04-23 1992-11-13 Canon Inc 画像符号化装置
JP3145403B2 (ja) * 1991-06-04 2001-03-12 クァルコム・インコーポレーテッド アダプティブ・ブロックサイズイメージ圧縮方法およびシステム
JPH0529248A (ja) 1991-07-25 1993-02-05 Canon Inc 半導体装置およびその製造方法
JP2856974B2 (ja) * 1992-04-15 1999-02-10 株式会社東芝 画像符号化装置
US5530478A (en) 1991-08-21 1996-06-25 Kabushiki Kaisha Toshiba Image data compressing apparatus
JPH05236427A (ja) * 1992-02-25 1993-09-10 Sony Corp 画像信号の符号化装置及び符号化方法
JP2797159B2 (ja) 1992-03-02 1998-09-17 カシオ計算機株式会社 画像データ圧縮装置及び画像データ圧縮方法
US5440344A (en) * 1992-04-28 1995-08-08 Mitsubishi Denki Kabushiki Kaisha Video encoder using adjacent pixel difference for quantizer control
JPH05344490A (ja) 1992-06-10 1993-12-24 Canon Inc 符号化方法および符号化装置
US5543844A (en) * 1992-11-25 1996-08-06 Matsushita Electric Industrial Co., Ltd. Method and apparatus for coding image data
US5376968A (en) * 1993-03-11 1994-12-27 General Instrument Corporation Adaptive compression of digital video data using different modes such as PCM and DPCM
JP2581421B2 (ja) * 1993-11-25 1997-02-12 日本電気株式会社 動画像圧縮符号化方法
JP2735001B2 (ja) 1994-09-21 1998-04-02 日本電気株式会社 画像符号化装置
JP3235761B2 (ja) 1994-10-31 2001-12-04 日本ビクター株式会社 高能率符号化装置
US5646687A (en) * 1994-12-29 1997-07-08 Lucent Technologies Inc. Temporally-pipelined predictive encoder/decoder circuit and method
JP3013876B2 (ja) * 1995-01-31 2000-02-28 日本ビクター株式会社 変換符号化装置
US5969764A (en) * 1997-02-14 1999-10-19 Mitsubishi Electric Information Technology Center America, Inc. Adaptive video coding method
US6192075B1 (en) * 1997-08-21 2001-02-20 Stream Machine Company Single-pass variable bit-rate control for digital video coding
US6167088A (en) * 1998-04-03 2000-12-26 Sarnoff Corporation Method and apparatus for performing adaptive encoding rate control of a video information stream including 3:2 pull-down video information

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8885470B2 (en) 2005-04-08 2014-11-11 Qualcomm Incorporated Methods and systems for resizing multimedia content based on quality and rate information
KR100987232B1 (ko) * 2006-01-31 2010-10-12 콸콤 인코포레이티드 인코딩 장치 내에서의 레이트 제어 방법 및 시스템
KR100988177B1 (ko) * 2006-01-31 2010-10-18 퀄컴 인코포레이티드 품질 및 레이트 정보에 기초하여 멀티미디어 콘텐츠를 리사이징하기 위한 방법 및 시스템
US8582905B2 (en) 2006-01-31 2013-11-12 Qualcomm Incorporated Methods and systems for rate control within an encoding device
US8792555B2 (en) 2006-01-31 2014-07-29 Qualcomm Incorporated Methods and systems for resizing multimedia content

Also Published As

Publication number Publication date
BR9714301A (pt) 2000-04-25
EP0931417B1 (en) 2005-12-07
JP4698772B2 (ja) 2011-06-08
ATE312477T1 (de) 2005-12-15
US20060126732A1 (en) 2006-06-15
CN1190083C (zh) 2005-02-16
WO1998017065A1 (en) 1998-04-23
CA2268408C (en) 2006-12-19
US6366614B1 (en) 2002-04-02
JP2009005365A (ja) 2009-01-08
US20020021754A1 (en) 2002-02-21
EP0931417A1 (en) 1999-07-28
US7023915B2 (en) 2006-04-04
US7675969B2 (en) 2010-03-09
JP4824726B2 (ja) 2011-11-30
CN1251725A (zh) 2000-04-26
ID28372A (id) 2001-05-17
DE69734831T2 (de) 2006-08-31
CA2268408A1 (en) 1998-04-23
JP2001524270A (ja) 2001-11-27
AU735938B2 (en) 2001-07-19
AU4821997A (en) 1998-05-11
KR100555601B1 (ko) 2006-03-03
RU2217880C2 (ru) 2003-11-27
DE69734831D1 (de) 2006-01-12

Similar Documents

Publication Publication Date Title
KR100555601B1 (ko) 디지털 비디오 압축을 위한 적응성 레이트 제어 방법 및 장치
EP0084270B1 (en) Video bandwidth reduction system employing interframe block differencing and transform domain coding
US6026190A (en) Image signal encoding with variable low-pass filter
US7010035B2 (en) Quantization matrix for still and moving picture coding
US4984076A (en) Image compression coding system
US5638126A (en) Method and apparatus for deciding quantization parameter
EP0526201B1 (en) Video signal transmission apparatus and method
US4914508A (en) Method and system for compressing and statistically encoding color video data
US5731837A (en) Quantization circuitry as for video signal compression systems
US5608652A (en) Reducing blocking effects in block transfer encoders
US6587508B1 (en) Apparatus, method and computer program product for transcoding a coded moving picture sequence
EP0804036B1 (en) Image encoding apparatus
US20030202707A1 (en) Quality based image compression
JP2001512651A (ja) 量子化マトリクスのフレーム毎の計算方法
JPH09200758A (ja) 画像符号化装置
EP0986264B1 (en) Determining visually noticeable differences between two images
KR100255746B1 (ko) 블록간 상관관계를 이용하는 부호화 방법 및 장치
US5754742A (en) Setting quantization level to match DCT coefficients
JPH07212795A (ja) 画像符号化方法及び装置
KR100286108B1 (ko) 실시간 처리를 위한 비디오 신호에 대한 비트수 추정방법과왜곡추정방법 및 이것들을 이용한 부호화방법과 그 장치
WO2000040032A1 (en) Adaptive buffer and quantizer regulation scheme for bandwidth scalability of video data
MXPA99003335A (en) Adaptive rate control for digital video compression
KR100727787B1 (ko) 비디오신호압축시스템들을위한양자화회로
WO1999013646A2 (en) Image signal processing method and apparatus
KR19980068268A (ko) 알파영상의 부호화 방법 및 장치

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

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140129

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150129

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20151230

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170704

Year of fee payment: 12

EXPY Expiration of term