KR100238622B1 - 새로운 적응형 양자화기를 이용한 동영상 압축 시스템 및 방법 - Google Patents
새로운 적응형 양자화기를 이용한 동영상 압축 시스템 및 방법 Download PDFInfo
- Publication number
- KR100238622B1 KR100238622B1 KR1019960008502A KR19960008502A KR100238622B1 KR 100238622 B1 KR100238622 B1 KR 100238622B1 KR 1019960008502 A KR1019960008502 A KR 1019960008502A KR 19960008502 A KR19960008502 A KR 19960008502A KR 100238622 B1 KR100238622 B1 KR 100238622B1
- Authority
- KR
- South Korea
- Prior art keywords
- region
- quantization
- subregion
- parameter
- pixels
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/007—Transform coding, e.g. discrete cosine transform
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Discrete Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Processing (AREA)
Abstract
본 발명은 디지탈화된 화면을 코딩하기 위한 시스템 및 방법에 관한 것으로서, 상기 화면은 다수의 영역들로 분할되고, 분할된 각각의 영역은 다시 다수의 부분영역으로 분할된다. 이어서, 각 부분영역 내의 선형 조합이 계산되고, 상기 선형 조합을 처리함으로써 설정되는 바와 같은 각 부분영역의 왜곡 허용오차에 근거하여 각각의 부분영역에 대한 적응형 양자화 파라미터가 결정된다. 그리고, 상기 부분영역에 대한 양자화 파라미터의 함수로서 상기 각 영역에 대한 양자화 파라미터가 결정되고, 그 다음에, 상기 각 영역에 대한 양자화 파라미터에 근거하여 각 영역에 대한 양자화 레벨이 결정된다. 일단 상기 각 영역에 대한 양자화 레벨이 결정되면, 다음에는 변환 인코딩이 수행된다. 다음에, 상기 각 영역의 변환 인코딩된 표현형태를 연쇄시키면, 전체 화면의 인코딩된 표현형태가 얻어지며, 이것은 디스플레이 또는 저장을 위해 디코딩될 수 있다.
Description
본 발명은 데이타 압축 분야에 관한 것으로, 더욱 상세하게는 디지탈 동영상 신호를 압축하기 위한 시스템 및 기술에 관한 것이다.
디지탈 전송망, 디지탈 저장 매체, VLSI(Very Large Scale Integration)소자, 음성 및 영상 신호의 디지탈 처리에 있어서의 기술 발전은 다양한 응용 분야에서 디지탈 영상 전송 및 저장을 경제적으로 하는데 집중되고 있다.
디지탈 영상 신호의 전송 및 저장은 다양한 관련 응용분야의 핵심이고, 영상 신호를 압축을 하지 않고 영상을 표현하기 위해서는 매우 방대한 저장 공간이 필요하기 때문에, 디지탈 영상 압축 기술의 이용은 이러한 앞서가는 분야에 필수적이다. 이러한 관점에서, 지난 십여 년에 걸쳐, 디지탈 영상 신호 압축에 대한 여러 국제 표준들이 출현하여 왔고 여전히 개발 중에 있다. 이러한 표준들은 화상 전화(video-telephony), 원격 화상 회의(teleconference), 지상파 방송뿐만 아니라 동축 케이블 및 광섬유 전송망 그리고 직접 방송 위성을 통한 고화질 디지탈 TV 전송 분야를 포함하는 다양한 응용분야와 CD-ROM, 디지탈 오디오 테이프 및 윈체스터 디스크 드라이브와 같은 대화식의 멀티미디어 제품들과 같은 다양한 응용분야에서 압축 디지탈 영상 신호의 전송 및 저장을 위한 알고리즘(algorithm)에 적용되고 있다.
이러한 표준들 중 몇 가지는 공통적인 핵심 압축 기술에 근거한 알고리즘들, 예를 들어, 국제 전신 전화 자문 위원회(CCITT : Consultative Committee on International Telegraphy and Telephony)의 권고안 H.120 및 권고안 H.261과 국제 표준화 기구(ISO : Organization for International Standard)의 MPEG-1, MPEG-2등의 표준을 포함한다. MPEG-2는 국제 표준화 기구(ISO)와 국제 전기 위원회(IEC : International Electrotechnical Commission)의 합동 기술 위원회 산하의 동영상 전문가 그룹(MPEG : Moving Picture Experts Group)에 의해 개발되었다. 또한, MPEG 위원회는 동영상 및 관련 오디오 신호의 다중 압축 표현을 위한 표준을 개발중에 있다. 이 표준은 압축 비트 스트림(bit stream)의 신택스(syntax)와 디코딩 방식을 지정하고 있지만, 인코더에 대한 설계에 대해서는 상당한 자유범위를 남겨두었다.
인코더에 의해 수행되는 중요한 작업 중의 하나는 각 이미지의 여러 부분(즉, 디코더에 의해 재구성한 이후의 각 부분의 화질)을 어떻게 양호하게 표현할 것인가를 결정하는 것이다. 이는 전형적으로 인코딩시 고려할 여러 사항들 사이의 절충관계(tradoff)를 포함한다. 일례로, MPEG-2 인코더에서, 각 매크로 블록(macroblock)에 대한 양자화 파라미터(QP : Quantizer Parameter)를 설정하는 것은 인코더가 화질과 비트 전송 속도간의 절충관계를 조정하는 가장 기본적인 수단이 된다. 이것은 시퀀스(sequence) 레벨 및 매크로블록 레벨에 모두 적용되는 사실로서, 말일 한 시퀀스의 모든 양자화 파라미터(QP) 값이 증가 또는 감소되면, 상기 시퀀스의 화질 및 비트 전송 속도도 각각 증가 또는 감소된다. 만일 QP가 단일 매크로블록(MB)에 대해 증가 또는 감소되면, 그 매크로블록에 사용되는 화질 및 비트수도 각각 증가 또는 감소된다.
한편 화면(picture)내의 일부 영역들은 다른 영역들보다 양자화 잡음에 더 민감할 수 있다. 즉, 큰 값의 양자화 파라미터를 이용함으로써 유발되는 왜곡은 이미지의 어떤 특정 영역들에서 다른 영역들 보다 더욱 현저해지게 된다. 따라서, 인코더는 심각한 인지가능한 화질저화를 초래하지 않는 화면 영역들에서는 큰 값의 파라미터를 이용하고, 양자화 잡음에 더욱 민감한 화면 영역들에서는 성대적으로 작은 값의 양자화 파라미터를 이용할 수 있다. 적응형 양자화로 알려진 이러한 프로세서는 MPEG 표준의 주체가 아니다. 결과적으로, 적응형 양자화에 있어서 두 인코더는 전혀 다른 기술을 사용하며, 여전히 유효 비트 스트림(bit stream)을 각각 발생한다. 그러나, 인코더에 의해 발생된 비트 스트림으로부터 디코드된 화면의 전체적인 화질은 적응형 양자화 유니트에 따라 다르며, 또한, 서로 다른 방식의 적응형 양자화를 구현하는데 드는 비용도 다르다.
적응형 양자화를 이용한 영상 인코더는 발명의 명칭이 "적응형 양자화기를 적용한 동영상 인코더에 관한 장치 및 방법"인 Gonzales 등의 미국특허공보 제 5,301,242호에 설명되어 있다.
한편, 적응형 양자화를 이용한 영상 인코더의 또다른 예는 1993년 4월에 발표된 ISO-IEC/JTC1/SC29/WG11/NO-400에 기재된 "Test Model 5"에 설명되어 있고, 이러한 적응형 양자화 기술을 각 매크로블록의 서브블록들의 분산(variance)을 계산하는 것에 기반을 두고 있다.
전술한 관점에서, 본 발명은 새로운 적응형 양자화 서브시스템을 이용하여 영상 데이터를 인코딩하는 시스템 및 방법을 포함한다. 본 발명의 바람직한 실시예에 있어서, 각 매크로블록은 서브블록들로 나누어지고, 각 서브블록들은 블록 파라미터 발생기로 공급된다. 이 블록 파라미터 발생기들은 각 서브블록에 대해 블록 적응형 양자화 파라미터를 계산하고, 파라미터 합성(coalescing)유니트는 이들 파라미터들을 이용하여 매트로블록 적응형 양자화 파라미터를 계산한다. 특히, 블록 파라미터 발생기들은 입력되는 서브블록 내의 화소(pixels)들의 선형 조합(linear combinations)을 계산한 다음, 이 선형 조합으로부터 블록 적응형 양자화 파라미터를 결정한다. 이 매크로블록 적응형 양자화 파라미터는 매크로블록에 대한 양자화 레벨을 결정하기 위해 인코더에 의해 이용된다.
제1도는 예시적인 한 쌍의 화면 그룹(GOP:Group of Pictures)을 도시한 도면.
제2도는 한 화면을 매크로블록(MB)으로 세분한(4:2:0 포멧) 예를 도시한 도면.
제3도는 화면을 슬라이스(Slice)로 세분한 예를 도시한 도면.
제4도는 프레임-구조의 비월주사 화면에서의 매크로블럭 포맷을 도시한 도면.
제5도는 종래의 양자화 스케일 생성 서브시스템의 블록도.
제6도는 종래의 최종 양자화 스케일 결정 서브시스템의 블록도.
제7도는 종래의 적응형 양자화 서브시스켐을 도시한 도면.
제8도는 매크로블록의 블록 분할의 예를 도시한 도면.
제9도는 본 발명의 일실시예에 따른 블록 파라미터 발생기의 블록도.
제10도는 제9도의 선형 변환 유니트의 상세블록도.
제11도는 제9도의 계수 누산 유니트의 상세블록도.
제12도는 본 발명의 일실시예에 따른 파라미터 합성 유니트의 블록도.
제13도는 본 발명의 다른 실시예에 따른 대안의 파라미터 합성 유니트의 블록도.
제14도는 하다마드(Hadamard)변환의 예시도.
제15도는 본 발명에 따른 코딩 방법의 개요도.
〈도면의 주요부분에 대한 부호의 설명〉
101 : 적응형 양자화 서브시스템 102 : 비트전송속도 제어 서브시스템
103 : 최종 양자화 스케일 결정 유니트 201 : 덧셈기
202 : 라운딩 유니트 301 : 블록 형성 유니트
302_1~320_k : 블록 파라미터 발생기 303 : 파라미터 합성 유니트
401 : 선형 변환 유니트 402 : 계수 누산 유니트
501_1~501_m : 메모리 502_1~502_m : 누산기
503_1~503_m : 곱셈기 504_1~504_m : 덧셈기
601_1~601_m : 절대값 유니트 602_1~602_m : 스케일러
603 : 덧셈기 701 : 최소화 회로
702 : 곱셈기 703 : 최대화 회로
704 : 덧셈기 801 : 최소화 회로
802 : 자승기 803 : 곱셈기
804 : 덧셈기 805 : 곱셈기
806 : 덧셈기 807 : 나눗셈기
본 발명은 MPEG-2 인코더와 연관되어 응용될 수 있으므로, 본 발명의 이해도를 높이기 위해, MPEG-2 영상 압축 표준의 일부 관련 특성에 대해서 살펴보기로 한다. 그러나, 본 발명은 MPEG-2 표준의 일부 특징을 공유하는 다른 영상 코딩 알고리즘에도 적용될 수 있다는 것을 주지해야 한다.
우선, 텍스트 페이지, 이미지, 스프치 세그먼트(segment of speech), 비디오 시퀀스(video sequence) 등과 같은 데이터 객체의 압축은, (1) 객체를 토큰 집합으로 분해하는 단계; (2) 이들 토큰을 소정의 의미에서 최소의 길이를 갖는 2진 스트링(string)으로 표현하는 단계; 및 (3) 명확하게 정의된 순서로 상기 2진 스트링을 연쇄(concatenation)시키는 단계를 포함하는 일련의 단계를 거쳐 수행되는 것으로 생각할 수 있다. 여기서, 단계 2와 단계 3은 손실이 없는데, 즉, 원래의 데이터가 충실하게 복원될 수 있으며, 단계 2는 엔트로피(entropy) 코딩으로 알려져 있다.
단계 1은 일반적으로 무손실 코딩이거나 유손실 코딩이거나 어느 쪽도 가능하다. 대부분의 영상 압축 알고리즘은 비트전송속도에 대한 요구 조건이 엄격하여 손실이 있다. 성공적인 유손실 압축 알고리즘은 중복되는 정보 및 무의미한 정보를 제거하여, 사람의 시각에 민감한 시퀀스는 신중하게 표현하고, 시각적으로 심각한 영향을 주지 않을 것 같은 요소에는 에러 허용범위를 상대적으로 크게 설정한다. 단계 1에 관련해서 MPEG-2에 채택된 기술은 예측/보간 동작-보상 혼성 DCT/DPCM(predictive/interpolative motion-compensated hydrid DCT/DPCM)이다. 단계 2에는 가변 길이 코딩(VLC : Variable Length Coding)으로 알려진 허프만 코딩(Huffman coding)이 사용된다. 전술한 바와 같이, MPEG-2 표준은 사실상 디코더 및 압축 비트 스트림 신택스에 대한 명세(specification)지만, 편의상 다음에 설명할 MPEG-2의 명세는 인코더의 관점에서 살펴보기로 한다.
MPEG 영상 표준은 전송을 위한 영상의 코드화된 표현을 명시하고 있다. 이 표준은 비월주사된 또는 비월주사되지 않은 성분(component) 영상에 작용하도록 설계 된다. 각 화면은 휘도 성분(Y), 적색 색차 성분(Cr) 및 청색 색차 성분(Cb)의 세 가지 성분(components)으로 구성되며, 적색 색차 성분(Cr)과 청색 색차 성분(Cb)은 수평 및 수직 방향으로 휘도 성분(Y)의 절반의 샘플수를 갖는다.
MPEG 데이터 스크림은 시스템 정보 및 다른 비트 스트림과 함께, 계층 구조를 갖는 시스템 데이터 스트림으로 패킹(packed)되는 영상 스트림과 음성 스트림으로 구성된다. 압축 데이터도 역시 MPEG 데이터 스트림의 영상 계층(layer) 내에서 계층으로 형성된다. 이들 계층의 구조에 대한 설명은 본 발명을 이해하는데 도움이 될 것이다.
이들 계층은 압축 비트 스트림의 구성뿐만 아니라 압축 방식의 작용에 관계된다. 최상위 계층은 비디오 시퀀스 계층(Video Sequence Layer)이며, 이 계층은 전체 비디오 시퀀스에 대한 제어 정보와 파라미터들을 포함한다. 그 다음 계층에서는, 도1에 도시된 바와 같이, 하나의 시퀀스가 GOP(Group of Pictures)로서 알려진, 연속되는 화면들의 세트로 세분된다. 근본적으로는 선행 GOP들과 무관하게 소정의 GOP의 개시점에서 디코딩이 시작될 수 있다. 하나의 GOP에 존재할 수 있는 화면의 수에는 특별한 제한이 없으며, 모든 GOP 내의 화면들의 수가 동일할 필요도 없다.
제3 계층 또는 화면 계층(Picture Layer)은 단일 화면이며, 도2에는 한 화면을 "매크로블록"으로 세분한 예가 도시되어 있다. 각 화면의 휘도 성분은 16×16개의 영역으로 분할되고, 색차 성분은 16×16개의 휘도 영역과 공간적으로 동일한 위치를 차지하는 적절한 크기의 블록으로 세분되며, 4:4:4의 영상 포맷에 있어서 색차 성분은 16×16개이고, 4:2:2의 영상 포맷에 있어서 색차 성분은 8×16개 이며, 4:2:0의 영상 포맷에 있어서 색차 성분은 8×8개 이다. 이와 같이 동일 위치의 휘도 영역 및 색차 성분 영역은 다섯 번째 계층인 "매크로블록(MB : macroblock)"을 형성한다. 한 화면 내의 매크로 블록들은 래스터 스캔(Raster Scan) 순서로 연속적으로 번호가 부여된다.
화면 계층(Picture Layer)과 매크로블록 계층(Macroblock Layer) 사이에는 네번째 계층인 슬라이스 계층(Slice Layer)이 있다. 각 슬라이스는 몇 개의 연속된 매크로블록으로 구성되며, 슬라이스들은 한 화면 내에서 또는 화면들 사이에서 그 크기가 균일할 필요는 없다. 화면을 슬라이스로 세분한 일례가 도3에 도시되어 있다.
마지막으로, 각 매크로블록은 4개의 8×8 휘도 블록과 4:4:4, 4:2:2 및 4:2:0의 영상 포맷에 대해 각각 8,4, 또는 2개의 색도 블록으로 구성된다. 각 휘도 화면의 폭(화소로 표현)을 C로 표기하고 높이를 R로 표기하면, 한 화면은 C/16 매크로블록의 넓이이고 R/16 매크로블록의 높이가 된다.
한편. 시퀀스 계층, GOP 계층, 화면 계층 및 슬라이스 계층은 모두 각 계층과 관련된 헤더(headers)를 갖고 있으며, 이 헤더들은 바이트-정렬된(byte-aligned)개시 코드(Start Codes)로부터 시작되며, 대응하는 계층에 포함된 데이터와 관련된 정보를 담고 있다.
화면은 필드-구조 혹은 프레임-구조를 가질 수 있다. 프레임-구조의 화면은 데이터의 완전한 프레임, 즉 2개의 필드를 재구성하기 위한 정보를 포함하고, 필드-구조의 화면은 하나의 필드를 재구성하기 위한 정보를 포함하고 있다.
만일 각 휘도 프레임의 폭(화소의 수)을 C로 표기하고 휘도 프레임의 높이를 R로 표기하면(C는 칼럼에 대한 것이고, R은 로우에 대한 것임), 프레임-구조의 화면은 C×R 화소에 대한 정보를 포함하고, 필드-구조의 화면은 C×R/2 화소에 대한 정보를 포함한다.
필드-구조의 화면에 있어서 매크로블록은 단일 필드로부터 16×16 화소 세그먼트를 포함하고, 프레임-구조의 비월주사되지 않은 화면에 있어서 매크로블록은 하나의 비월주사되지 않은 프레임으로부터 16×16 화소 세그먼트를 포함한다. 프레임-구조의 비월주사된 화면에 있어서 매크로블록은 2개의 필드로 구성된 프레임으로 부터 16×16 화소 세그먼트를 포함하고, 이때 각각의 매크로블록은 두 필드로부터 각각 16×8 화소 영역을 포함한다. 도4에는 프레임-구조의 비월주사된 화면 내의 매크로블록이 예시되어 있다. 도4에 있어서, "X"와 "0"는 단인 화소를 나타내며, "0"는 상위 필드(top field)로부터의 화소들을 나타내고, "X"들은 하위 필드(bottom field)로부터의 화소들을 나타낸다.
MPEG-2 시퀀스에 있어서 각 프레임은 두개의 코딩된 필드 또는 하나의 코딩된 프레임 화면으로 구성해야 한다. 일례로, 두 프레임을 코딩하는데 있어, 한 개의 필드-구조의 화면 다음에 한 개의 프레임-구조의 화면이 이어지고, 그 다음에 하나의 필드-구조의 화면이 뒤따르는 형식은 허용이 안되며, 합법적인 조합으로는, 2개의 프레임-구조의 화면, 4개의 필드-구조의 화면, 2개의 필드-구조의 화면 다음에 하나의 프레임-구조의 화면이 이어지는 구성, 또는 한 개의 프레임-구조의 화면 다음에 2개의 필드-구조의 화면이 이어지는 구성 등이 있다. 그러므로, MPEG-2 신택스에는 프레임 헤더가 없지만, 개념상으로 MPEG-2에 하나의 프레임 계층을 생각 할 수 있다.
한편 하나의 GOP 내에서, 3가지 형태(types)의 화면이 나타날 수 있으며, 이들 화면 형태를 구별하는 특징은 사용된 압축 방법이다. 첫 번째 형태인, 인트라모드 화면(Intramode Pictures) 즉, I-화면(Intra-Pictures)은 다른 화면과 무관하게 압축된다. 비록 I-화면간의 거리에 대한 일정한 상한(upper bound)은 없지만, 이들 화면은 랜덤 엑세스(random access) 및 다른 특정 연산 모드를 용이하게 하기 위해 비디오 시퀀스 전반에 걸쳐 빈번하게 산재(interspersed)될 것으로 예상된다. 예측적으로 동작-보상된 화면(P-화면)은 이전에 디스플레이된 I 또는 P 화면으로부터 최근에 재구성된 2개의 필드와 상기 화면 내의 압축 데이터로부터 재구성된다. 양방향으로 동작-보상된 화면(B-화면)은 이전에 디스플레이된 I 또는 P 화면으로부터 재구성된 2개의 필드와 이후에 디스플레이될 I 또는 P 화면으로부터 재구성된 2개의 필드 및 상기 화면 내의 압축 데이터로부터 재구성된다. 재구성된 I-화면 또는 P-화면은 다른 화면들을 재구성하기 위해 사용될 수 있기 때문에, 이들 화면은 앵커(anchor) 화면이라 부른다. 이러한 명세의 목적을 위해, 어떤 앵커 화면의 그 다음 앵커 화면이 I- 화면이면, 그 앵커 화면은 종말(terminal)화면으로서 불린다.
매우 유용한 영상 압축 기법 중의 하나는 변환(transform) 코딩이다. MPEG 및 몇몇 다른 압축 표준에 있어서, 이산 코사인 변환(Discrete Cosine Transform : DCT)이 정선된 변환이다. I-화면의 압축은 (1) 화소들의 블록에 이산 코사인 변환을 수행하는 단계; (2) 이산 코사인 변환의 계수를 양자화하는 단계; 및 (3) 그 결과를 허프만 코딩하는 단계들에 실현된다. MPEG에 있어서, DCT 연산은 8×8 화소의 블록을 변환 계수의 8×8 세트로 변환한다. DCT 변환은 그 자체적으로 무손실 연산(lossless operation)이며, 그것이 수행되는 컴퓨터 장치 및 알고리즘의 정밀도 내에서 역변환이 이루어질 수 있다.
두 번째 단계인 DCT 계수들의 양자화는 MPEG 표준에 있어서 손실의 중요한 원인이 된다. DCT 계수들의 2차원 어레이(array)의 요소들을 Cnm(이때 m과 n은 0에서 7까지의 범위)이라 하고, 트렁케이션(truncation) 또는 라운딩 정정(rounding correction)을 고려하지 않는다면, 양자화는 각각 DCT 계수 Cmn을 가중 계수 Wmn(Weighting factor)와 매크로블록의 양자화 파라미터(QP)의 곱 Wmn×QP으로 나눔으로써 실현된다. 가중 계수(Wmn)는 시각적으로 덜 중요한 계수들에는 상대적으로 덜 정밀한 양자화가 적용될 수 있도록 한다.
양자화 이후에, 각 매크로블록에 대한 DCT 계수 정보를 허프만 코드 세트를 이용하여 편제하고 코딩한다. 이러한 단계에 대한 보다 상세한 설명은 본 발명을 이해하는데 있어 필수적인 사항이 아니며, 이 기술분야에 잘 알려져 알려져 있으므로, 더 이상의 설명은 생략하기로 한다.
대부분의 비디오 시퀀스들은 연속된 화면들간에 높은 상관관계를 갖고 있다. 한 화면을 코딩하기에 앞서 이와 같은 중복성을 제거하는 유용한 방법이 "동작보상(motion cmpensation)"기법이다.
이하, 동작 보상 기법에 대해서 설명하기로 한다. 각각의 매크로블록에 있어서, 하나 또는 그 이상의 모션 백터들(motion vectors)이 비트 스트림 내에서 인코딩된다. 이러한 모션 벡터들은 디코더로 하여금 앵커 화면 내의 데이터로부터 소위 예측 매크로블록(predictive macroblock)을 재구성할 수 있도록 한다. 인코더는 차분 매크로블록(Difference Macroblock)을 형성하기 위해 인코딩될 매크로블록으로 부터 예측 매크로블록을 뺀다. 인코더는 차분 매크로블록을 압축하기 위해, 인트라 매크로블록을 압축하는데 이용되는 툴(tools)과 기본적으로 유사한 툴을 사용한다.
P-화면에 있어서, 동작 보상은 현재 화면 보다 시간적으로 일찍 발생하는 앵커 화면으로부터 예측 매크로블록을 구성하기 위해 이용되고, B-화면에 있어서는, 현재 화면 보다 시간적으로 일찍 발생하거나 늦게 발생하는 앵커 화면으로부터 예측 매크로블록을 구성하기 위해 이용된다.
MPEG-2 압축 방법은 고정 비트전송속도 혹은 가변 비트전송속도의 전송 또는 저장 매체와 함께 이용될 수 있다. 가변 비트전송속도의 전송에 있어서, 인코더는 각 매크로블록(또는 각 화면)에 얼마나 많은 비트들을 사용할 것인지를 결정하는데 있어 상대적으로 높은 자유도를 갖고 있다 할 수 있으나, 인코더는 여전히 완전한 자유도를 갖는다고 할 수 없다. 즉, 전송 또는 저장 매체의 피크 비트속도와 디코더 버퍼의 크기에 의해 그 자유도가 제한된다.
MPEG-2가 전송 및 저장에 있어서, 고정 비트속도의 매체에 사용되든지 또는 가변 비트속도의 매체의 사용되든지 간에, 인코더는 모든 매크로블록, 더 나가서 모든 화면에 대해서 동일한 비트 수를 이용할 필요는 없다. 인코더는 디코더로의 입력 전단에 놓인 버퍼에 의해서 이러한 자유도를 얻는다. 저장 또는 전송 매체는 디코더 버퍼를 채우지만, 디코더는 근본적으로는 임의적인 빠른 속도로 그 버퍼를 비울수 있다.
인코더가 각 매크로블록 혹은 각 화면에 대해서 동일한 비트수를 사용할 필요는 없지만, 인코더는 여전히 발생가능한 비트수에 제한을 갖고 있다. MPEG-2 표준은 이러한 제한에 대한 세부사항을 제공한다. 일례로, 고정 비트속도의 경우에, 긴 시간주기에 걸친 인코더의 평균 비트속도는 단지 소폭으로 채널의 비트속도로부터 변할 수 있으며, 그렇지 않으면 디코더 버퍼는 오버플로우(overflow) 혹은 언더플로우(underflow)하게 된다.
전술한 바와 같이, MPEG-2에 있어서 인코더가 각 매트로블록에 대한 양자화 파라미터(QP)를 설정하는 것은 화질과 비트속도 사이를 절충하는 기본적인 수단이 된다. 이덕은 시퀀스 레벨 및 매크로블록 레벨 모두에 타당한 것이며, 즉, 임의의 시퀀스에 있어서 양자화 파라미터의 모든 값이 증가 또는 감소한다면, 그 시퀀스의 화질과 비트속도도 각각 증가 또는 감소하게 될 것이다. 만일, 양자화 파라미터가 단일 매크로블록에 대하여 증가 또는 감소한다면, 그 매크로블록의 화질과 비트수도 각각 증가 또는 감소하게 될 것이다.
한 화면 내의 일부 영역들이 다른 영역들보다 양자화 잡음에 더욱 민감할 수 있다. 즉, 큰 값의 양자화 파라미터를 사용함으로써 발생되는 왜곡이 어떤 특정 영역에서는 다른 영역에서보다 눈에 띄게 두드러져 보일 수 있다. 따라서, 인코더는 심각한 지각가능한 화질저하를 초래하지 않는 화면 영역에서는 큰 양자화 파라미터 값을 이용하고, 양자화 잡음에 좀 더 민감한 화면 영역에서는 상대적으로 작은 양 자화 파라미터를 이용할 수 있다. 적응형 양자화로 알려진 이와 같은 프로세스는 MPEG 표준의 주체가 아니다. 그러므로, 적응형 양자화를 위하여 2개의 인코더들이 전혀 다른 장치 또는 방법을 사용할 수 있으며, 각각의 인코더는 여전히 유효 비트 스트림(valid bit stream)을 발생한다. 그러나, 인코더에 의해 발생되는 비트 스트림으로부터 디코딩된 화면의 화질은 적응형 양자화 유니트에 따라 다르며, 더욱이, 서로 다른 방식의 적응형 양자화를 구현하는데 드는 비용도 서로 다르다.
본 발명의 원리에 따른 코딩 방법에 대한 개요를 도15를 참조하여 설명하기로 한다.
우선, 단계(1502)에서 디지탈화된 화면 데이터가 인코더에 입력된다. 단계(1054)에서 인코더는 입력 화면을 다수의 영역(region)으로 분할한 다음, 단계(1506)에서 각 영역을 다수의 부분영역(subregion)들로 분할한다. 다음에, 단계(1508)에서 인코더는 각 부분영역 내의 화소들의 선형 조합(linear combinations)을 계산한다. 단계(1510)에서 인코더는 선형 조합의 함수로서 각 부분영역에 대한 부분영역 적응형 양자화 파라미터를 결정한다. 이 함수는 각 부분영역에 대한 왜곡 허용오차를 설정한다.
단계(1512)에서, 인코더는 부분영역의 적응형 양자화 파라미터의 함수로서 각 영역에 대한 영역 양자화 파라미터를 결정하고, 단계(1514)에서는 영역 양자화 파라미터에 근거하여 각 영역에 대하여 양자화 레벨을 결정한다.
일단, 한 영역에 대한 영역 양자화 레벨이 결정되면, 그것은 단계(1516)에서 변환 인코딩된다. 정지 영상에 대해서는 화소 데이터 자체가 변환 인코딩된다. 동작 보상을 채택하여 인코딩되는 동영상에 있어서는 동작 보상 차분 신호(Motion Compensation Difference signal)가 변환 인코딩된다.
단계(1518)에서는 전체 화면에 대한 하나의 인코딩된 표현형태(Representations)를 얻기 위해, 영역들의 변환 인코딩된 표현형태를 연쇄시킨다. 전체 화면에 인코딩된 표현형태는 단계(1520)에서 디코딩되고, 단계(1522)에서 디스플레이되거나 저장된다.
인코더가 수행하는 작업들 중의 하나는 각 매크로블록에 대한 양자화 파라미터(QP)를 설정하는 것이다. 도5에는 양자화 파라미터를 설정하는 종래의 장치가 도시되어 있다. 적응형 양자화 유니트(101)는 각 매크로블록에 대한 하나의 신호 Q1을 발생한다. 이 신호는 상기 매크로블록이 양자화 잡음에 민감한 정도를 나타낸다. 비트속도 제어 유니트(102)는 목표 비트속도에 도달하도록 하기 위해(또는 소정의 최대 비트속도를 초과하지 않도록 하기 위해) 이용되어야 하는 전체적인 양자화 레벨을 나타내는 신호 Q2를 발생한다. 최종 양자화 스케일 결정 유니트(103)는 각 매크로블록에 사용될 양자화 파라미터 값을 발생시키기 위하여 상기의 두 신호의 값을 조합한다.
도6에 도시된 최종 양자화 스케일 결정 유니트(Quantizer Scale Determination Unit)는 2개의 입력(Q1,Q2)을 갖는다, 곱셈기(201)는 Q1과 Q2를 입력받아 이들 신호의 곱과 동일한 출력 d를 발생한다. 라운딩 유니트(rounding unit)(202)는 곱셈기(201)의 출력 d에 가장 가까운 유효 양자화 파라미터 값이 되는 출력 QP를 발생시킨다.
도7은 본 발명의 응용에 적합한 종래의 적응형 양자화 서브시스템(101)의 개요도이다. 이 적응형 양자화 서브시스템에는 두개의 입력 신호들과 하나의 출력 신호가 있다. 입력들은 휘도 매크로블록 화소값 m과 파라미터 세트 p이고, 출력은 지각적인(perceptual) 양자화 신호 Q1이다. 휘도 매크로블록 화소값은 블록 형성 유니트(Block Formation Unit)(301)에 보내진다. 블록 형성 유니트는 k개의 화소 블록을 이들 블록은 신호 a1,a2,...,ak로 도시되어 있다. 이들 각각의 신호는 휘도 매크로블록 화소값들의 부분집합을 포함한다.
화소 블록들 a1,a2,...,ak는 일련의 블록 파라미터 발생기들(Block Parameter Generators)(302_1,302_2,...302_k)로 보내진다. 각 매크로블록에 대해서, 블록파라미터 발생기는 단일 화소 블록을 입력받아 하나의 수를 발생한다. 이러한 수들은 도6에 도시된 신호들 b1,b2,...,bk이다. 블록 파라미터 발생기들(302_1,302_2,...302_k)은 각각 b1,b2,...,bk를 발생한다. 이들 신호 b1,b2,...,bk와 파라미터 세트 p는 파라미터 합성 유니트(Parameter Coalescing Unit)(303)로 전송된다. 이 파라미터 합성 유니트(303)는 지각적인 양자화(Perceptual Quantizer) 신호 Q1을 발생한다.
이제, 블록 형성 유니트에 대한 일실시예의 동작에 관해 도8를 참조하여 설명하기로 한다. 이 실시예에 있어서, 블록 형성 유니트는 8개의 서브블록을 형성한다. 도8은 하나의 매크로블록 내의 휘도 화소의 2가지의 표현형태를 제시하고 있으며, 각 표현형태에 있어서, 하나의 화소는 하나의 숫자로 표현되며, 레이블(label)이 "1"이면 서브블록 a1에, 레이블(label)이 "2"이면 서브블록 a2에 속하는 화소이다. 이때 서브블록들은 오버랩핑되는 것에 주목할 필요가 있다.
이러한 특정한 블록 형성 유니트는 프레임 구조의 비월주사된 화면 내의 매크로블록에 유용하며, 필드 구조 혹은 비월주사되지 않은 화면에 있어서는, 서브블록 a1,a2,a3,a4 만을 이용하는 것이 종종 더 유용하다. 비록 이 실시예에서는 8×8화소의 서브블록 크기를 이용하고 있지만, 다른 블록 크기도 가능하다.
도9에는 본 발명의 실시예에 따른 개선된 블록 파라미터 발생 유니트가 도시되어 있다. 화소 서브블록 a는 선형 변화 유니트(401)(도10을 참조하여 좀 더 자세히 설명됨)에 입력되며, 이 선형 변환 유니트(401)는 각 입력 서브블록 a에 대한 화소 값의 선형 조합 c1,c2,...,cm을 발생시킨다. 계수 누산 유니트(402)(도11을 참조하여 좀 더 자세히 설명됨)는 이들 선형 조합 c1,c2,...,cm을 입력받아, 이들 조합 c1,c2,...,cm으로부터 블록 적응형 양자화 파라미터 b를 계산한다.
도10은 선형 변환 유니트(401)의 상세도이다. 이 유니트(401)는 m개의 메모리 유니트(501_1,501_2,...,501_m)를 포함하고 있다. 각 메모리 유니트는 입력 블록 a의 각 화소에 대해 하나의 변환 계수를 갖는다. 이 선형 변환 유니트(401)에는 m개의 누산기(502_1,502_2,...,502_m)가 있다. 메모리 유니트와 누산기의 개수(m)는 선택적인 것으로써, 예를 들어, 서브블록 내의 화소 수와 동일하게 설정될 수 있으며, 일례로 본 실시예에서는 64개이다. 각 누산기는 서브블록이 판독되기 전에 제로로 초기화된다.
서브블록의 제1 요소가 판독되면, 메모리 유니트(501_1,501_2,...,501_m)는 그 각각의 메모리로부터 제1 변환 계수들 e1,e2,...,em을 전송하고, 이들 계수는 곱셈기(503_1,503_2,...,503_m)를 이용하여 입력 블록 내의 제1 화소값과 곱셈이 이루어지게 된다. 이러한 곱셈의 결과 f1,f2,...,fm는 각각 덧셈기(504_1,504_2,...,504_m)를 이용하여 누산기(502_1,502_2,...,502_m)의 내용에 가산되며, 그 결과는 다시 각각의 누산기(502_1,502_2,...,502_m)에 다시 저장된다. 서브블록의 제2 요소가 판독되면, 그 각각의 메모리로부터 제2 변환 계수들을 전송하고, 이들 계수는 입력 서브블록 내의 제2 화소값과 곱셈이 이루어지게 된다. 이러한 곱셈의 결과도 역시 각각 누산기(502_1,502_2,...,502_m)의 내용에 가산되며, 그 결과는 다시 각각의 누산기에 저장된다. 이러한 과정은 전체 블록이 판독될 때 까지 계속되며, 다음에, 누산기(502_1,502_2,...,502_m)는 출력 신호 c1,c2,...,cm을 유지하게 된다.
도11에는 계수 누산 유니트가 보다 상세하게 도시되어 있다. 입력 신호 c1,c2,...,cm는 절대값 유니트(602_1,602_2,...,602_m)에 공급되며, 이 절대값 유니트는 출력 신호 g1,g2,...,gm을 발생하며, 여기서 gi는 모든 i에 대한 ci의 절대값과 동일하다. 다음에, 이들 신호 g1,g2,...,gm은 일련의 스케일러(602_1,602_2,...,602_m)에 공급된다. 이들 스케일러는 모든 i에 대해서 상수 스케일러인 Si와 절대값 유니트의 출력인 gi를 곱하여 그 결과들 h1,h2,...,hm을 덧셈기(603)에 인가한다. 이들 결과 h1,h2,...,hm는 덤셈기(603)에 의해 합산되고, 그 결과가 출력 b이다.
도12는 본 발명의 실시예에 따른 개선된 파라미터 합성 유니트를 상세히 나타낸 것이다. 파라미터 합성 유니트의 입력은 블록 파라미터 발생기의 출력 b1,b2,...,bk과 파라미터 세트 p1,p2,p3,p4이다. 파라미터 합성 유니트에 대한 상기 실시예에서, p1,p2,p3 및 p4는 도6의 파라미터 세트 p를 구성한다. 파라미터 p1과 b1,b2,...,bk는 최소화 회로(Minimum Circuit)(701)에 인가되며, 이 최소화 회로(701)는 b1,b2,...,bk와 p1 중에서 최소값이 되는 출력 r0를 발생하고, 곱셈기(702)는 파라미터 p2와 최소값 r0를 곱셈하며, 그 결과는 r1=p2×r0가 된다. 최대화 회로(Maximum Circuit)(703)는 상기 결과 r1과 파라미터 p3 중에서 큰 값 r2를 곱셈기(704)에 인가하고, 덧셈기(704)는 Q1=r2+p4를 계산한다. 여기서, Q1은 매크로블록 적응형 양자화 파라미터이다.
한편, 도13에는 본 발명의 다른 실시예에 따른 대안의 파라미터 합성 유니트가 도시되어 있다. 이 파라미터 합성 유니트의 입력은 블록 파라미터 발생기의 출력 b1,b2,...,bk와 파라미터 세트 p5,p6이다. 이 파라미터 합성 유니트의 실시예에서, p5,p6는 도6의 파라미터 세트 p를 구성한다. 이들 신호 b1,b2,...,bk는 최소화 회로(801)로 인가되고, 최소화 회로(801)는 b1,b2,...,bk들 중에서 최소값 t1을 출력하고, 자승기(Squaring Unit)(802)는 최소화 회로(801)의 출력 t1을 자승하여, 출력 t2(t1xt1)를 곱셈기(803,806)에 인가한다. 상기 곱셈기(803)는 파라미터 p6와 자승기의 출력 t2를 입력받아 곱셈하여 출력 t3를 덧셈기(8040에 인가하고, 상기 덧셈기(804)는 상기 곱셈기(803)의 출력 t3와 파라미터 p5를 덧셈하여 그 결과(t4)를 나눗셈기(Division Circuit)(807)에 인가한다. 또한, 곱셈기(805)는 파라미터 p5와 파라미터 p6을 곱셈하여 출력 t5를 덧셈기(806)에 인가하고, 상기 덧셈기(806)는 상기 자승기(802)의 출력 t5와 상기 곱셈기(805)의 출력 t5를 덧셈하여 그 결과 t6를 나눗셈기(807)에 인가한다. 여기서 만일, 각 매크로블록에 대한 p5와 p6가 동일하면 각 매트로블록에 대해 t5를 다시 계산할 필요가 없다. 상기 나눗셈기(807)는 Q1=t4/t6로서 Q1을 계산한다.
전술한 적응형 양자화 서브시스템의 동작은 파라미터 세트 P,곱셈기(S1,S2,...,Sm) 및 10도의 메모리 장치(501_1,501_2,...,501_m)의 내용에 따라 다르다. 이하, 상기 메모리의 내용을 세팅하는 방법에 대한 두 가지 예를 살펴본다. 하나는 DFM(Difference From Mean) 방식이고, 다른 하나는 HAD(HADamard) 방식이다. 도7의 블록 형성 유니트(301)에 의해 발생되는 화소의 블록의 요소의 수를 n으로 나타내면, DFM와 HAD 방식 모두에 대해서, 도10의 선형 변호나 유니트의 출력수 m은 n과 동일하다.
상기 DFM 방식에 있어서, 메모리 요소(memory element) i에 있는 j번째 변환 계수는 i와 j가 같지 않으면-1/n이 되고, i와 j가 같으면 1-(1/n)이 된다.
상기 HAD 방식에 있어, 선형 변환 유니트는 입력 화소 블록에 대해 하다마드 변환(Hadamard Transform)을 수행한다. 이러한 하다마드 변환은 종래의 방식으로써 이에 대한 자세한 설명은 C.Gonzalez와 P.Wintz에 의해 1987년에 집필된 "Digital Image Processing" 제2판의 3.5.2절에 상세히 기재되어 있다. 전술한 블록 형성 유니트의 실시예에서와 같이 n=64로 할 경우, HAD 방식에 대한 도식적인 표현을 도14도에 "+"와 "-" 심볼을 이용하여 2차원 어레이로 나타내었다. 이 어레이의 각 로우(row)는 도10의 메모리 장치를 표현한 것이고, 각 칼럼(column)은 메모리 장치내의 엔트리 넘버(entry number)를 나타낸 것이다. 도 14의 매트릭스의 i번째 로우에 있는 j번째 심볼이 "+"이면, i번째 메모리 요소 내의 j번째 넘버는 +1과 같고, 도14의 매트릭스의 i번째 로우에 있는 j번째 심볼이 "-"이면, i번째 메모리 요소 내의 j번째 넘버는 -1과 같다.
전술한 시스템 및 방법은 컴퓨팅 시스템의 프로그램 코드나 또는 하드웨어 로직(hardware logic)으로 구현될 수 있다는 것을 이해할 것이다.
비록 본 발명이 바람직한 실시에를 통하여 설명되었지만, 이 기술분야에 통상의 지식을 가진자는 다양한 변형예 및 개선예가 이루어질 수 있다는 것을 이해할 것이다. 따라서, 상기의 바람직한 실시예는 단지 본 발명의 일례로서 제공된 것이지 본 발명을 제한하는 것이 아님은 명백하다. 본 발명의 범위는 첨부된 특허청구 범위에 의해 정의된다.
전술한 바와 같은 본 발명에 따르면, 새로운 적응형 양자화 서브시스템을 이용하여 영상 데이터를 인코딩하는 개선된 시스템 및 방법이 제공될 수 있다.
Claims (6)
- 디지탈 화면(picture)을 코딩하는 방법에 있어서, 상기 디지탈 화면을 다수의 영역으로 분할하는 단계; 상기 각각의 영역을 다수의 부분영역으로 분할하는 단계; 상기 각각의 부분영역 내의 화소들의 선형 조합을 결정하는 단계 - 여기서, 상기 선형 조합의 각각은 상기 부분영역의 다수의 화소에 관련된 값들의 누산을 타나냄 - ; 상기 각각의 부분영역에 대한 왜곡 혀용오차를 설정하는 함수인 상기 선형 조합들의 함수로서 상기 각각의 부분영역에 대한 부분영역 적응형 양자화 파라미터 결정하는 단계; 상기 부분영역 적응형 양자화 파라미터들의 함수로서 상기 각각의 영역에 대한 영역 양자화 파라미터를 결정하는 단계; 상기 영역 양자화 파라미터에 근거하여 상기 각각의 영역에 대한 양자화 레벨을 결정하는 단계; 상기 양자화 레벨을 이용하여 상기 각각의 영역을 변환 인코딩하는 단계; 및 전체 화면의 인코딩된 표현형태를 얻기 위하여 상기 각 영역의 변환 인코딩된 표현형태를 연쇄시키는 단계를 포함하는 디지탈 화면 코딩 방법.
- 제1항에 있어서, 상기 전체 화면의 상기 인코딩된 표현형태를 디코더로 제공하는 단계; 및 상기 전체 화면을 디코딩된 형태로 디스플레이 장치에 디스플레이하는 단계를 더 포함하는 디지탈 화면 코딩 방법.
- 제1항에 있어서, 상기 선형 조합들은 상기 각각의 부분영역의 화소값들에 대해 하다마드 변환을 수행함으로써 계산되는 디지탈 화면 코딩 방법.
- 디지탈 화면(picture) 데이터를 인코딩하기 위한 인코더에 있어서, 상기 디지탈 화면을 다수의 영역으로 분할하기 위한 수단; 상기 각각의 영역을 다수의 부분영역으로 분할하기 위한 수단; 상기 각각의 부분영역 내의 화소들의 선형 조합을 계산하기 위한 수단 - 여기서, 상기 선형 조합의 각각은 상기 부분영역의 다수의 화소에 관현된 값들의 누산을 나타냄 - ;상기 각각의 부분영역에 대한 왜곡 허용오차를 설정하는 함수인 상기 선형 조합들의 함수로서 상기 각각의 부분영역에 대한 부분영역 적응형 양자화 파라미터 결정하기 위한 수단; 상기 부분영역 적응형 양자화 파라미터들의 함수로서 상기 각각의 영역에 대한 영역 양자화 파라미터를 결정하기 위한 수단; 상기 영역 양자화 파라미터에 근거하여 상기 각각의 영역에 대한 양자화 레벨을 결정하기 위한 수단; 상기 양자화 레벨을 이용하여 상기 각각의 영역을 변환 인코딩하기 위한 수단; 및 전체 화면의 인코딩된 표현형태를 얻기 위하여 상기 각 영역의 변환 인코딩된 표현형태를 연쇄시키기 위한 수단을 포함하는 인코더.
- 제1항에 있어서, 상기 선형 조합을 결정하는 상기 단계는, 각각의 선형 조합에 대해, 다수의 화소값을 다수의 계수로 곱셉하여, 다수의 결과를 얻는 단계; 및 화소들의 선형 조합을 얻기 위해 상기 다수의 결과를 덧셈하는 단계를 포함하는 디지탈 화면 코딩 방법.
- 제4항에 있어서, 상기 선형 조합을 계산하기 위한 상기 수단은, 각각의 선형 조합에 대해, 다수의 화소값을 다수의 계수로 곱셉하여, 다수의 결과를 얻기 위한 수단; 및 화소들의 선형 조합을 얻기 위해 상기 다수의 결과를 덧셈하기 위한 수단을 포함하는 인코더.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/418,141 US5729294A (en) | 1995-04-05 | 1995-04-05 | Motion video compression system with novel adaptive quantization |
US8/418,141 | 1995-04-05 | ||
US08/418,141 | 1995-04-05 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR960040006A KR960040006A (ko) | 1996-11-25 |
KR100238622B1 true KR100238622B1 (ko) | 2000-01-15 |
Family
ID=23656886
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019960008502A KR100238622B1 (ko) | 1995-04-05 | 1996-03-27 | 새로운 적응형 양자화기를 이용한 동영상 압축 시스템 및 방법 |
Country Status (5)
Country | Link |
---|---|
US (1) | US5729294A (ko) |
EP (1) | EP0736843B1 (ko) |
JP (1) | JPH08289294A (ko) |
KR (1) | KR100238622B1 (ko) |
DE (1) | DE69624399T2 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8144771B2 (en) | 2005-05-21 | 2012-03-27 | Samsung Electronics Co., Ltd. | Method and apparatus for image coding and decoding with cross-reference mode |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ID21557A (id) * | 1996-11-28 | 1999-06-24 | Thomson Multimedia Sa | Proses untuk pengkodean dengan daerah informasi |
US6192075B1 (en) * | 1997-08-21 | 2001-02-20 | Stream Machine Company | Single-pass variable bit-rate control for digital video coding |
US6212232B1 (en) | 1998-06-18 | 2001-04-03 | Compaq Computer Corporation | Rate control and bit allocation for low bit rate video communication applications |
US6831947B2 (en) | 2001-03-23 | 2004-12-14 | Sharp Laboratories Of America, Inc. | Adaptive quantization based on bit rate prediction and prediction error energy |
DE10156851C1 (de) * | 2001-11-20 | 2003-07-03 | Infineon Technologies Ag | Verfahren und Vorrichtung zur Bildkompression |
US7336713B2 (en) * | 2001-11-27 | 2008-02-26 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding and decoding data |
JP3846488B2 (ja) * | 2004-05-10 | 2006-11-15 | セイコーエプソン株式会社 | 画像データ圧縮装置、エンコーダ、電子機器及び画像データ圧縮方法 |
WO2006007279A2 (en) * | 2004-06-18 | 2006-01-19 | Thomson Licensing | Method and apparatus for video codec quantization |
GB0428155D0 (en) | 2004-12-22 | 2005-01-26 | British Telecomm | Buffer underflow prevention |
US8306918B2 (en) * | 2005-10-11 | 2012-11-06 | Apple Inc. | Use of media storage structure with multiple pieces of content in a content-distribution system |
US8126283B1 (en) | 2005-10-13 | 2012-02-28 | Maxim Integrated Products, Inc. | Video encoding statistics extraction using non-exclusive content categories |
US8149909B1 (en) | 2005-10-13 | 2012-04-03 | Maxim Integrated Products, Inc. | Video encoding control using non-exclusive content categories |
US8081682B1 (en) | 2005-10-13 | 2011-12-20 | Maxim Integrated Products, Inc. | Video encoding mode decisions according to content categories |
US9479794B2 (en) | 2005-11-10 | 2016-10-25 | Freescale Semiconductor, Inc. | Resource efficient video processing via prediction error computational adjustments |
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 |
JP5917117B2 (ja) * | 2011-12-07 | 2016-05-11 | 株式会社日立国際電気 | 画像符号化装置及び画像符号化方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4868653A (en) * | 1987-10-05 | 1989-09-19 | Intel Corporation | Adaptive digital video compression system |
US4972260A (en) * | 1988-08-22 | 1990-11-20 | Matsushita Electric Industrial Co., Ltd. | Apparatus for coding a moving-picture signal |
US5051840A (en) * | 1988-12-14 | 1991-09-24 | Fuji Photo Film Co., Ltd. | Device for coding a picture signal by compression |
DE69119936T2 (de) * | 1990-02-28 | 1996-11-14 | Victor Company Of Japan | Einrichtung zur Datenkompression |
US5249053A (en) * | 1991-02-05 | 1993-09-28 | Dycam Inc. | Filmless digital camera with selective image compression |
EP0514663A3 (en) * | 1991-05-24 | 1993-07-14 | International Business Machines Corporation | An apparatus and method for motion video encoding employing an adaptive quantizer |
US5369437A (en) * | 1991-08-28 | 1994-11-29 | Nec Corporation | Time-varying image signal coding/decoding system |
US5351083A (en) * | 1991-10-17 | 1994-09-27 | Sony Corporation | Picture encoding and/or decoding system |
US5231484A (en) * | 1991-11-08 | 1993-07-27 | International Business Machines Corporation | Motion video compression system with adaptive bit allocation and quantization |
US5521717A (en) * | 1992-02-03 | 1996-05-28 | Canon Kabushiki Kaisha | Image processing apparatus and method therefor |
US5440346A (en) * | 1993-06-16 | 1995-08-08 | Intel Corporation | Mode selection for method and system for encoding images |
-
1995
- 1995-04-05 US US08/418,141 patent/US5729294A/en not_active Expired - Lifetime
-
1996
- 1996-03-01 EP EP96103096A patent/EP0736843B1/en not_active Expired - Lifetime
- 1996-03-01 DE DE69624399T patent/DE69624399T2/de not_active Expired - Lifetime
- 1996-03-27 KR KR1019960008502A patent/KR100238622B1/ko not_active IP Right Cessation
- 1996-03-28 JP JP8074140A patent/JPH08289294A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8144771B2 (en) | 2005-05-21 | 2012-03-27 | Samsung Electronics Co., Ltd. | Method and apparatus for image coding and decoding with cross-reference mode |
Also Published As
Publication number | Publication date |
---|---|
US5729294A (en) | 1998-03-17 |
DE69624399D1 (de) | 2002-11-28 |
EP0736843A3 (en) | 1997-01-08 |
DE69624399T2 (de) | 2003-06-18 |
KR960040006A (ko) | 1996-11-25 |
EP0736843A2 (en) | 1996-10-09 |
EP0736843B1 (en) | 2002-10-23 |
JPH08289294A (ja) | 1996-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100253931B1 (ko) | 디지탈 영상 시퀀스의 디코딩 방법 및 장치 | |
KR950006772B1 (ko) | 압축된 비데오 데이타 표시를 발생하는 방법 | |
US5719632A (en) | Motion video compression system with buffer empty/fill look-ahead bit allocation | |
Le Gall | The MPEG video compression algorithm | |
US5694170A (en) | Video compression using multiple computing agents | |
EP0959627B1 (en) | A motion video compression system with adaptive bit allocation and quantization | |
KR100238622B1 (ko) | 새로운 적응형 양자화기를 이용한 동영상 압축 시스템 및 방법 | |
EP1187490B1 (en) | A method for computational graceful degradation in an audiovisual compression system | |
US5737023A (en) | Hierarchical motion estimation for interlaced video | |
US8077769B2 (en) | Method of reducing computations in transform and scaling processes in a digital video encoder using a threshold-based approach | |
KR100591114B1 (ko) | 비디오 처리 방법 및 시스템 | |
EP1933567B1 (en) | Apparatus for encoding interlaced macroblock texture information | |
JPH11262003A (ja) | 一定ビット・レ―トまたは可変ビット・レ―トのためのディジタル・モ―ション・ビデオ・シ―ケンスの2パス符号化方法 | |
US5668598A (en) | Motion video compression system with guaranteed bit production limits | |
US5757967A (en) | Digital video decoder and deinterlacer, format/frame rate converter with common memory | |
US5652629A (en) | Bidirectional motion estimation in a motion video compression system | |
US6968003B1 (en) | Speed-memory tradeoff for MPEG decoders | |
US6040875A (en) | Method to compensate for a fade in a digital video input sequence | |
US20040141654A1 (en) | Texture encoding procedure | |
JP2900927B2 (ja) | 符号化方法及び符号化装置 | |
IP | STEREOSCOPIC VIDEO CODING |
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: 20100824 Year of fee payment: 12 |
|
LAPS | Lapse due to unpaid annual fee |