KR100335435B1 - 영상 신호의 압축 부호화기 및/또는 복호화기와 그 방법 - Google Patents

영상 신호의 압축 부호화기 및/또는 복호화기와 그 방법 Download PDF

Info

Publication number
KR100335435B1
KR100335435B1 KR1019980061602A KR19980061602A KR100335435B1 KR 100335435 B1 KR100335435 B1 KR 100335435B1 KR 1019980061602 A KR1019980061602 A KR 1019980061602A KR 19980061602 A KR19980061602 A KR 19980061602A KR 100335435 B1 KR100335435 B1 KR 100335435B1
Authority
KR
South Korea
Prior art keywords
step size
quantization step
code amount
mquant
screen
Prior art date
Application number
KR1019980061602A
Other languages
English (en)
Other versions
KR20000045076A (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 윤종용
Priority to KR1019980061602A priority Critical patent/KR100335435B1/ko
Publication of KR20000045076A publication Critical patent/KR20000045076A/ko
Application granted granted Critical
Publication of KR100335435B1 publication Critical patent/KR100335435B1/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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • 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/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명에는 영상 신호의 압축 부호화기 및/또는 복호화기와 그 방법이 개시되어 있다. 본 발명은 입력되는 영상 신호를 이산 변환하여 이산 변환 계수를 제공하는 이산변환 유니트, 이산 변환 계수를 초기화 양자화 매트릭스를 이용하여 양자화하여 초기 양자화된 데이터를 제공하는 초기 양자화기, 초기 양자화된 데이터를 다수의 양자화 스텝사이즈를 이용하여 병렬로 양자화하여 얻어지는 각각의 부호량 중에서 목표 부호량에 가장 근접한 결과를 출력하는 양자화 스텝사이즈를 실제 양자화 스텝사이즈로서 제공하는 부호량 조절기 및 실제 양자화 스텝사이즈에 의해 초기 양자화된 데이터를 양자화하여 압축된 데이터를 제공하는 실제 양자화기를 포함하여, 디지털 비디오카세트레코더에 적용하는 경우에는 화면(인트라 픽쳐) 단위로 압축 부호화 및 복호화함으로써 화면 단위의 영상 처리가 가능하고, 디지털 비디오 캠코더에 적용하는 경우에는 영상 신호를 MPEG-2의 표준안에 적합하도록 압축 부호화 및 복호화해서 MPEG을 이용하는 모든 기기와 호환할 수 있다.

Description

영상 신호의 압축 부호화기 및/또는 복호화기와 그 방법
본 발명은 영상 신호의 압축 부호화 및/또는 복호화 분야에 관한 것으로, 특히 디지털 기록재생장치에 있어서 고성능의 압축 부호화 체계를 갖는 부호화기 및/또는 복호화기와 그 방법에 관한 것이다.
MPEG(Moving Picture Experts Group)-1의 표준화가 완성된 후에 더욱 높은 비트율에서 고화질을 실현하는 표준안이 요구되어 MPEG-2 표준안이 탄생했다. 이 MPEG-2 표준안은 저장 미디어 분야 뿐만 아니라 방송 미디어 분야에의 적용도 고려되었고, 현재 텔레비젼(TV) 품질 이상의 고품질을 대상으로 하며, 고해상도 텔레비젼(HDTV) 품질까지 확장 가능하다. 따라서, 통신, 가전, 컴퓨터, 방송 등 각 분야에서 광범위한 응용 가능성을 갖는다. 이처럼 동영상 압축에 관한 표준안인 MPEG의 중요성이 날로 증가함과 동시에 이를 이용한 응용 제품 또한 매우 다양해졌다. 그러나, 이러한 압축 부호화 방식은 한 개 또는 수 개의 화면 단위로 압축된 데이터량을 고정시켜야 하는 응용 제품에는 쉽게 적용하기가 어렵게 되어 있다. 따라서, 이러한 응용 제품의 압축 부호화기의 성능을 최대한으로 높게 하려면 목표 데이터량에 최대한 근접하게 하는 압축 부호화기가 필수적이다.
고품질을 요구하는 추세에 맞추어 카메라로부터 제공되는 디지털 동화상을 비디오 테이프에 기록하고 재생하는 디지털 비디오 캠코더(Digital Video Camcorder: DVC)의 압축 부호화 방식이 일본의 주도하에 독자적인 표준안이 개발되었지만 이는 MPEG과의 호환성이 없으므로 녹화된 내용을 향후 보급될 MPEG 부호화 방식을 채택한 디지털 텔레비젼이나 멀티미디어 시스템에서는 볼 수 없게 된다. 그러나, 차세대 디지털 비디오카세트레코더((Video Cassette Recorder: VCR)와 캠코더의 세계 규격이 결정된 후 SD(Standard Definition)급의 캠코더가 일본업체를 중심으로 빠른 속도로 보급되고 있다. DVC의 압축부호화 방식도 화면 단위로 이루어지므로 이것의 화질 또한 압축된 부호량에 크게 좌우된다고 볼 수 있다. 이러한 제품에 화면 단위로 압축된 데이터량을 목표치에 최대한 근접하게 부호화하는 방식을 적용할 경우 그 부호화기의 성능은 높아질 것이다.
한편, 디지털 비디오 포맷의 기본 사양에 대한 제안을 하고 이 기본 사양을 기초로하여 HDTV 사양을 논의하기 위하여 1993년 HD 디지털 VCR협의회가 설립되었고, 이 곳에서 SD급의 사양과 HD급의 사양이 표준안으로 제정되었다. 이 표준안의 주요 사항으로는, 회전 헤드방식(헬리컬 스캔), DCT(Digital Cosine Transform)를 기본으로하는 압축방식, 1/4 인치폭의 비디오 테이프 등이 기본사양이며, HD 기저대역 포맷은 HDTV의 표본화 주파수를 SD급의 표본화 주파수(13.5MHz)의 3배인 50.4MHz로 하고, 비디오 데이터의 기록율은 SD급의 25Mbps의 2배인 50Mbps로 한다는 것이다. 현재 이러한 표준안에 의한 SD급의 디지털 비디오 캠코더는 시판중에 있다.
또한, 1994년 미국에서는 DTV 신호를 기록하기 위한 포맷을 의논하기 위한 DTV WG(Working Group)가 발족했고, 유럽에서도 DVB(Digital Video Broadcasting) 신호를 기록하기 위한 포맷을 의논하기 위한 DVB WG도 발족했다.
데이터율을 19.3Mbps급으로 압축한 DTV 신호를 SD 포맷의 비디오 테이프에 기록할 때는 SD급의 비디오 데이터율 25Mbps급으로 기록한다. 또한, DVB 신호의 데이터율은 10Mbps 이하로 제어하여 이 DVB 신호를 SD 포맷의 비디오 테이프에 기록할 때는 SD급의 비디오 데이터율의 절반인 12.5Mbps 또는 1/4인 6.25Mbps급으로 기록한다. DTV는 MPEG-2를 채용하고 있으므로, MPEG-2 방식으로 압축된 데이터를 그대로 기록하는 포맷을 사용하는 디지털 기록재생장치를 사용할 필요가 있다. 여기서, DTV 신호는 19.3Mbps급의 MPEG-2로 압축된 데이터와 고속 탐색용으로 특정 영역에 반복 기록할 압축 데이터로 구성되어 비디오 테이프에 기록된다. 반복 기록될 고속 탐색용 데이터는 기록율과 압축율과의 차분(25Mbps-19.3Mbps)만큼의 여유분을 고속탐색에 이용한다.
이러한 DTV 신호를 기록하는 디지털 VCR과는 별도로, 현재의 DVC는 MPEG-1, MPEG-2와의 호환성이 전혀 없이 독자적인 포맷으로 압축 부호화하여 고속 탐색 및 화면 단위의 편집 등 주요 기능을 담당하고 있는 데, 이는 화면 단위의 압축 부호화 기법과 세그먼트라는 고정된 크기의 독립된 부호화 데이터 구조를 갖고 있기 때문에 가능하다. 즉, 고화질을 유지하면서도 화면 단위의 편집과 고속 탐색을 가능하게 하는 압축 부호화 기법을 사용하기에 가능하게 되었다. 하지만 동영상 압축 표준안인 MPEG의 사용이 증가하면서 그 중요성과 응용 제품이 개발이 더 증가되고 있으므로 DVC에 있어서도 이러한 표준안을 이용하면 상대적으로 더 많은 소비자를 갖게 될 것이다. 즉, MPEG-2의 압축 방식을 채택한 DTV나 멀티미디어 응용 제품 등과의 호환성이 있으면서 DVC의 주요 기능인 고속 탐색 및 화면 단위의 편집이 가능한 DVC를 구현하게 되면 디지털 비디오 캠코더의 활용이 더욱 높아지게 될 것이다.
이 경우 MPEG의 압축 부호화 방식만으론 화면 단위의 부호량 제어가 어렵게 되므로 이를 보완할 방법이 필요하다. 왜냐하면 MPEG-2는 여러개의 화면으로 구성되는 GOP(group of picture) 단위로 여러 화면에 걸쳐 화면간의 상관 관계를 이용하여 고압축을 하기 때문에 이러한 구조로 된 압축 데이터를 단순하게 그대로 테이프에 기록하면 가변속 재생(고속 탐색)시에 화면의 구성이 어렵고 제대로 재생되지 않는다.
요약하면, MPEG-2로 압축된 데이터와 반복 기록할 압축 데이터로 구성된 DTV 신호를 비디오 테이프에 기록하는 경우 디지털 VCR의 주요 기능중의 하나인 고속 탐색은 가능하나 여러 화면으로 구성된 GOP라 불리우는 하나의 독립된 단위로 압축 부호화하기 때문에 화면 단위의 편집은 불가능하고 SD급보다 재생 화질이 저하되는 문제점이 있었다.
또한, 기존의 SD급의 디지털 비디오 캠코더는 화면단위로 압축하고 소정수(대표적인 예로서 5개)의 매크로블록으로 구성된 세그먼트 단위로 독립된 압축을 하여 화면 단위 및 고속 탐색은 가능하였으나 MPEG-2를 이용하는 기기와는 호환성이 없는 문제점이 있었다.
상기한 문제점을 해결하기 위하여, 본 발명의 목적은 디지털 입력 영상 신호를 화면 단위로 압축하고, MPEG 응용 제품과의 호환성을 가지는 부호화기 및/또는 복호화기를 제공하는 데 있다.
본 발명의 다른 목적은 화면 단위의 영상 처리가 필요한 디지털 캠코더 또는 디지털 VCR 등의 디지털 기록재생장치를 위한 영상 신호의 압축 부호화 및/또는 복호화 방법을 제공하는 데 있다.
상기의 목적들을 달성하기 위하여, 본 발명에 의한 부호화기는 입력되는 영상 신호를 이산 변환하여 이산 변환 계수를 제공하는 이산변환 유니트, 이산 변환 계수를 초기화 양자화 매트릭스를 이용하여 양자화하여 초기 양자화된 데이터를 제공하는 초기 양자화기, 초기 양자화된 데이터를 다수의 양자화 스텝사이즈를 이용하여 병렬로 양자화하여 얻어지는 각각의 부호량 중에서 목표 부호량에 가장 근접한 결과를 출력하는 양자화 스텝사이즈를 실제 양자화 스텝사이즈로서 제공하는 부호량 조절기 및 실제 양자화 스텝사이즈에 의해 초기 양자화된 데이터를 양자화하여 압축된 데이터를 제공하는 실제 양자화기를 포함함을 특징으로 한다.
또한, 본 발명의 부호화기는 부호량 조절기에서 실제 양자화 스텝사이즈를 결정하는 동안 초기 양자화된 데이터를 일시 저장해서 실제 양자화기에 제공하는 프레임 버퍼, 압축된 데이터를 연속장 및 가변장 부호화하여 가변장 부호화된 데이터를 제공하는 연속장 및 가변장 부호화기 및 가변장 부호화된 데이터를 부가 헤더를 부가하여 기본스트림을 생성하여 비트스트림으로서 출력하는 기본스트림 부호화기를 더 포함함을 특징으로 한다.
본 발명에 의한 복호화기는 전송되는 비트스트림으로부터 기본스트림을 추출하고, 기본스트림으로부터 부가 헤더를 제거하여 비디오 스트림을 제공하는 기본스트림 복호화기, 비디오 스트림을 가변장 및 연속장 복호화하여 연속장 복호화된 데이터를 제공하는 가변장 및 연속장 복호화기, 연속장 복호화된 데이터를 부호화시 사용한 양자화 스텝사이즈에 의해 역 양자화하여 역 양자화된 데이터를 제공하는 역 양자화기 및 역 양자화된 데이터를 역 이산 변환하여 원 영상 데이터로 출력하는 역 이산 변환 유니트를 포함함을 특징으로 한다.
또한, 본 발명에 의한 부호화 방법은 입력되는 영상 신호를 이산 변환하여 이산 변환 계수를 제공하는 단계, 이산 변환 계수를 초기화 양자화 매트릭스를 이용하여 양자화하여 초기 양자화된 데이터를 제공하는 단계, 초기 양자화된 데이터를 다수의 양자화 스텝사이즈를 이용하여 병렬로 양자화하여 얻어지는 각각의 부호량 중에서 목표 부호량에 가장 근접한 결과를 출력하는 양자화 스텝사이즈를 실제 양자화 스텝사이즈로 결정하는 단계 및 결정된 실제 양자화 스텝사이즈에 의해 초기 양자화된 데이터를 양자화하여 압축된 데이터를 제공하는 단계를 포함함을 특징으로 한다.
또한, 본 발명의 부호화 방법은 압축된 데이터를 연속장 및 가변장 부호화하여 가변장 부호화된 데이터를 제공하는 단계와 가변장 부호화된 데이터를 부가 헤더를 부가하여 기본스트림을 생성하여 비트스트림으로서 출력하는 단계를 더 포함함을 특징으로 한다.
본 발명에 의한 복호화 방법은 전송되는 비트스트림으로부터 기본스트림을 추출하고, 기본스트림으로부터 부가 헤더를 제거하여 비디오 스트림을 제공하는 단계, 비디오 스트림을 가변장 및 연속장 복호화하여 연속장 복호화된 데이터를 제공하는 단계, 연속장 복호화된 데이터를 부호화시 사용한 양자화 스텝사이즈에 의해 역 양자화하여 역 양자화된 데이터를 제공하는 단계 및 역 양자화된 데이터를 역 이산 변환하여 원 영상 데이터로 출력하는 단계를 포함함을 특징으로 한다.
도 1은 본 발명에 의한 부호화기의 일 실시예에 따른 블록도이다.
도 2는 입력 영상 포맷의 일 예를 보인 도면이다.
도 3은 입력 영상 포맷의 다른 예를 보인 도면이다.
도 4는 입력 영상 포맷의 또 다른 예를 보인 도면이다.
도 5는 도 1에 도시된 부호량 조절기의 상세 블록도이다.
도 6은 도 1에 도시된 I/D 스캔 유니트에서 수행되는 I-스캔과 D-스캔의 개념을 설명하기 위한 도면이다.
도 7의 (a)와 (b)는 도 1에 도시된 I/D 스캔 유니트의 I-스캔과 D-스캔 순서의 일 예를 설명하기 위한 도면이다.
도 8은 본 발명에 의한 복호화기의 일 실시예에 따른 블록도이다.
이하, 첨부된 도면을 참조하여 본 발명에 의한 영상 신호의 압축 부호화기 및/또는 복호화기와 그 방법의 바람직한 실시예를 설명하기로 한다.
먼저, 본 발명의 이해를 돕기 위하여 MPEG-2에 관한 영상 압축 부호화 및 복호화하는 과정은 ISO/IEC 13818-2에 정의되어 있다. 이 ISO/IEC 13818-2에는 복호화 과정을 설명하기 위한 용어의 의미, 비트열의 문법과 계층적 구조, 각종 파라미터의 의미, 가변장 복호화(VLD), 역 스캔(ISCAN), 역 양자화(IQ), 역 이산 변환(IDCT), 움직임 보상(MC)등의 프로세스(process)에 대한 설명이 포함되어 있다.
또한, MPEG-2에서는 이전 프레임과의 시간적 중복성을 제거하여 압축률을 높이기 위하여, 이전 프레임에서 현재 프레임의 매크로블록(기준블록)과 가장 닯은 블록(정합 블록)을 찾은 후 기준블록과 정합블록의 위치 차이인 움직임 벡터와 기준블록과 정합블록의 화소값의 차이인 예측 오차를 생성하여 이를 부호화하는 움직임 예측 방법을 사용한다. 따라서, MPEG-2의 양자화기는 움직임 예측을 사용하지 않는 매크로블록(인트라 매크로블록), 움직임 예측이 사용된 매크로블록(인터 매크로블록), 휘도신호 및 색신호에 따라 서로 다른 가중치를 가진 양자화 간격이 저장된 양자화 테이블이 사용된다.
그러나, 본 발명에서는 화면 단위의 편집 때문에 현재 화면과 이전 화면간의 상관 관계를 이용하는 기법을 사용하지 않기 때문에 이러한 움직임 예측 및 보상에 대한 부호화 기법은 사용하지 않는다. 즉, I(intra) 픽쳐만을 사용하여 화면 단위의 편집 기능이 가능하게 한다. 본 발명의 부호화기에서 출력되는 비트열(bitstream)은 MPEG-2의 시스템 레이어 포맷의 비트열로서 출력할 수 있으므로 MPEG-2와의 호환성을 유지할 수 있다.
본 발명에 의한 부호화기의 일 실시예에 따른 블록도인 도 1에 있어서, 전처리기(102)는 입력되는 영상 신호의 포맷이 4:2:2일 경우 4:2:0의 포맷으로 서브샘플링하기 위하여 저역필터링을 수행하고 칼라 성분에 대해 서브샘플링을 수행한다. 즉, 입력되는 화면 단위의 영상 데이터에서 인간의 눈으로 의미를 파악할 수 있는 대부분의 정보를 포함하는 휘도 신호와는 달리 칼라 신호는 저주파 성분이 대부분이므로 부호화하기 전에 저역 필터링을 수행하고 서브샘플링을 하는 것은, 압축 과정시 칼라 성분이 휘도 성분에 비해 상대적으로 덜 중요하기 때문이며, 그 결과로 압축 과정의 압축비에 대한 부담을 덜어주어 성능이 높은 압축기를 구현할 수 있게 된다.
여기서, 전처리기(102)에 입력되는 영상 포맷은 다양할 수 있으며 입력 영상 포맷의 일 예는 도 2에 도시되어 있으며, 입력 영상의 크기가 720픽셀 × 480라인이고, 하나의 DCT 블록 크기는 8픽셀 × 8라인이고, 매크로블록(MB)은 휘도 성분의 4개의 DCT 블록과 칼라 성분의 2개의 DCT 블록으로 이루어지고, 슬라이스(SMB)는 5개의 매크로블록으로 구성되는 경우의 입력 데이터의 형태를 보이고 있으며, 따라서 1 프레임은 270개(= 9 × 30)의 슬라이스로 이루어진다. 슬라이스 구조는 일반적인 크기와는 달리 고속 탐색을 위하여 본 발명에서는 적은 수의 매크로블록으로 구성되어 압축부호화된다.
입력 영상의 포맷의 다른 예는 도 3에 도시되어 있으며, 입력 영상의 크기가 720픽셀 × 480라인이고, 슬라이스(SMB)는 3개의 매크로블록으로 구성되는 경우의 입력 데이터 형태를 보이고 있으며, 따라서 1 프레임은 450개(= 15 × 30)의 슬라이스로 이루어진다.
입력 영상의 포맷의 또 다른 예는 도 4에 도시되어 있으며, 입력 영상의 크기가 640픽셀 × 480라인이고, 슬라이스(SMB)는 5개의 매크로블록으로 구성되는 경우의 입력 데이터 형태를 보이고 있으며, 따라서 1 프레임은 240개(= 8 × 30)의 슬라이스로 이루어진다.
DCT 및 ZZ(Zig Zag) 스캔 유니트(104)는 전처리기(102)로부터 제공되는 영상 데이터에 대해 DCT를 수행해서 얻어진 DCT 계수를 지그재그 스캔한다. 저주파 영역에 에너지를 집중시키는 변환인 DCT는 MPEG-1, MPEG-2 뿐만 아니라 다른 많은 영상 신호 압축 국제 표준으로 사용되고 있으며, 사람의 눈은 고주파 성분보다는 저주파 성분에 더 민감하기 때문에 고주파 영역을 많이 제거하여도 사람이 느끼는 화질 저하는 크지 않은 시각 특성을 이용한다. DCT에 의해 공간상의 화소값을 주파수 영역으로 변환시키며 DCT 자체로는 영상 데이터의 압축이 불가능하고 항상 양자화 과정과 함께 사용된다.
본 발명에서는 움직임 예측(motion estimation:ME)을 사용하지 않기 때문에 양자화기는 휘도 신호와 칼라 신호에 대한 양자화 테이블만 갖고 있으면 된다. 또한, 본 발명에서는 움직임 예측을 사용하지 않기 때문에 연산량이 큰 움직임 예측기가 필요없으며, 움직임 예측을 위한 프레임 메모리와 별도의 복호화기를 사용하지 않기 때문에 하드웨어량이 감소한다.
한편, 캠코더의 특성상 화면 단위로 부호량을 고정하며, 입력 영상 데이터를 약 1/5 이상으로 압축하는 부호화기에 있어서 부호량을 조절하는 양자화 과정이 재생시의 화질을 좌우하는 가장 중요한 부분이 된다. MPEG-2에서 사용하는 부호화기의 여러 변수들 중에서 본 발명에서 사용한 주요 변수들의 내용을 살펴보면 다음과 같다. 먼저 intra_dc_precision은 인트라 블록 DC 계수의 코딩 비트수를 나타낸다. DC 프리시젼(precision)의 경우 MPEG-1에서는 DC의 양자화시의 정밀도를 8비트로 표현하였지만 MPEG-2에서는 8/9/10/11 비트의 정밀도를 선택할 수 있고 이것을 매 픽쳐마다 변경 가능하다. 본 발명의 부호화기는 하드웨어를 간단하게 하기 위하여 10비트의 정밀도로 고정하였지만 실제로 8비트를 사용하는 것과 11비트를 사용하는 것의 부호량에는 어느 정도의 차이가 있으나 화질 측면에서는 그리 크게 차이가 나지 않으므로 8비트를 사용하기도 한다.
DCT 블록에 대응하는 양자화 매트릭스의 변경은 MPEG-1에서는 시퀀스(sequence) 단위로만 허용되지만 MPEG-2에서는 픽쳐 단위로 변경이 가능하며, 전송(downloading)도 가능하다. 본 발명에서는 MPEG-2에서 사용하는 초기(default) 양자화 매트릭스만을 사용한다. 양자화 스텝사이즈를 바꿔주는 q_scale_type이 "0"의 값을 가지면 선형적으로 스텝사이즈[2-62]가 변하는 테이블을 취하며 이는 MPEG-1과 호환이 가능하다. 한편, "1"의 값을 가지면 비선형적 [1-112]으로 스텝사이즈가 변하며 양자화 스텝사이즈가 미세하게 조정될 경우 그 효과가 크다. 이러한 비선형 스텝 구조는 고비트율 부호화기에서 사용되며 본 발명에서는 q_scale_type을 "1"로 고정하여 부호화한다.
따라서, 본 발명에서는 DCT 변환 계수를 양자화하여 압축률을 높이는 과정인 양자화 과정을 하드웨어 간소화를 위하여 두 단계로 나누어 수행한다. 첫 번째 단계는 MPEG-2에서 사용되는 양자화 매트릭스를 이용한 양자화 단계로서, 즉, 양자화기(106)는 DCT 및 ZZ 스캔 유니트(104)로부터 인가되는 DCT 계수와 미리 정해진 초기 양자화 테이블(108)에 저장된 초기화(default) 양자화 매트릭스를 이용하여 한 화면 전체에 걸쳐 일률적으로 양자화하고, 그 출력은 부호량 조절기(bitrate controller: 112)를 위한 처리 기간동안 프레임 버퍼(110)에 저장된다. 입력된 영상이 복잡한 경우 부호화되는 비트열이 정해진 부호량을 초과하게 되므로 양자화 스텝사이즈의 계수를 크게 하여 압축 부호량을 줄이고 반대의 경우에는 양자화 스텝사이즈의 계수를 적게하여 상대적으로 압축 부호량을 늘리는 조정이 필요하다.
한편, 부호화기에 입력된 디지털 영상 신호는 그 부호량을 전송하거나 기록 매체에 기록하기에는 데이터량이 너무 많기 때문에 보통 압축이라는 과정을 거치게 된다. 디지털 캠코더와 같이 화면 단위의 편집이나 고속 탐색과 같은 기능을 위하여 화면 단위의 압축 기법을 사용하는 압축 부호화 방식은 MPEG 등에서 사용되는 압축 기법과는 판이하게 다를 수밖에 없다. 즉, 프레임 단위로 부호량을 고정하는 부호화 방식의 부호량 조절은 일반적인 부호량 제어와는 많은 차이를 보인다.
또한, 압축된 데이터를 비디오 테이프에 기록시 프레임 단위로 압축된 부호량을 일정한 목표치 이하로 유지하여 기록한다. NTSC의 경우 1 프레임에 10개의 트랙을 할당하고, PAL의 경우 12 트랙을 할당한다. 따라서, 부호량 예측이 빗나가 압축된 부호량이 목표치에 크게 모자라거나 남게 되면 화질에 많은 영향을 준다. 즉, 압축된 부호량이 목표치에 많이 부족하면 그만큼 재생시 화질의 열화가 발생하고, 부호량이 목표치보다 많이 발생하면 강제로 압축이 끝나게 되어 화면의 마지막 부분이 짤리는 현상이 발생한다.
이러한 특징으로 인하여 입력되는 영상의 특성(예를 들어, 활동도(activity))과 출력 버퍼의 부호량 정도에 따라 조절되는 일반적인 비트량 제어 방법을 바로 이용하거나 응용하는 정도의 부호량 조절은 SD급 이상의 고화질을 재생하는 데 한계성을 보여준다. 실험에 의하면, 화면 단위로 압축 부호화하는 경우에 있어서 한 화면의 목표 부호량을 넘지 않는 최대한의 부호량이 출력되도록 하는 것이 주관적 및 객관적 측면에 있어서의 최선의 압축 방식임을 보여준다.
한편, DVC 표준안의 경우 주로 고속 탐색의 목적을 위하여 5개의 매크로 블록으로 구성되는 세그먼트 단위로 부호량을 고정하기 때문에 다음 세그먼트는 부호량의 영향을 받지 않는다. 본 발명의 압축 방식에서는 캠코더에서 필수 기능인 고속 탐색을 위하여 슬라이스 단위를 일반적인 크기보다 적은 소정수(일 예로서 5개)의 매크로블록으로 구성하여 SD급의 세그먼트 단위의 역할을 대신한다.
그러나, SD급의 세그먼트의 경우 그 크기가 일정하지만 본 발명의 압축 방식은 가변적이다. 독립적으로 복호화가 가능한 단위인 세그먼트의 크기가 일정할 경우 고속 탐색 및 에러 은닉시 보다 효율적인 성능을 발휘할 수 있으나 압축 재생시의 효율면에서 있어서는 가변 부호화방식 보다 떨어짐을 알 수 있다. 또한, SD급의 DVC인 경우 양자화가 DCT 블록 단위로 수행되므로 매크로블록 단위로 수행되는 MPEG의 압축 방식과는 그 특성이 조금 다르게 나타난다. 즉, DCT 블록 단위로 양자화를 조절해야 하는 복잡한 영상(mobile)의 에지 성분에서 SD급의 DVC가 주관적 특성이 조금 더 우세하게 나타날 수 있다.
다음, 기존 부호화기와 가장 구별되는 본 발명의 부호량 조절에 의한 실제 양자화 스텝사이즈를 구해서 양자화하는 두 번째 양자화 단계를 중심으로 설명하기로 한다. 두 번째 양자화 단계는 기준 양자화 스텝사이즈와 이와 이웃하는 양자화 스텝사이즈를 사용하여 초기 양자화 스텝사이즈에 의해 양자화된 데이터를 병렬 양자화를 수행해서 얻어진 각각의 부호량 중에서 가장 목표 부호량에 근접한 양자화 스텝사이즈를 이용하여 실제 양자화 스텝사이즈를 생성한다.
즉, 부호량 조절기(112)는 다수의 양자화기(114), 다수의 부호 길이 카운터(116), 조정기(118)로 구성되고, 상세 블록도는 도 5에 도시되어 있다. 도 5에 있어서, 다수의 양자화기(114)의 일 예로서 제1 내지 제3 양자화기(142,144,146)는 양자화기(106)로부터 제공되는 초기 양자화 스텝사이즈에 의해 양자화된 데이터를 기준 양자화 스텝사이즈보다 "1"이 큰 스텝사이즈(mquant+1), 기준 양자화 스텝사이즈(mquant), 기준 양자화 스텝사이즈보다 "1"이 작은 스텝사이즈(mquant-1)에 의해 병렬로 각각 양자화한다.
다수의 부호 길이 카운터(116)의 제1 내지 제3 카운터(162,164,166))는 제1 내지 제3 양자화기(142,144,146)로부터 제공되는 양자화된 데이터를 카운트해서 각 양자화 스텝사이즈를 사용했을 때의 부호량을 나타내는 카운트값을 조정기(118)에 제공한다. 여기서, 제1 카운터(162)로부터 제공되는 기준 양자화 스텝사이즈보다 한 단계(여기서는 "1") 큰 양자화 스텝사이즈(mquant+1)를 사용한 경우의 제1 부호량을 sum_P, 제2 카운터(164)로부터 제공되는 기준 양자화 스텝사이즈(mquant)를 사용한 경우의 제2 부호량을 sum, 제3 카운터(166)로부터 제공되는 기준 양자화 스텝사이즈보다 "1"이 작은 양자화 스텝사이즈(mquant-1)을 사용한 경우의 제3 부호량을 sum_M이라고 한다.
이때, 조정기(118)는 제1 내지 제3 카운터(162,164,166)로부터 제공되는 제1 내지 제3 부호량과 목표 부호량에 근거하여 다음 입력되는 화면에서 사용할 기준 양자화 스텝사이즈를 조정해서 갱신된 기준 양자화 스텝사이즈(updated mquant)를 다수의 양자화기(114)에 피드백 입력한다. 이러한 과정을 통하여 입력된 영상의 화면이 변하는 장면 변화(scene change)가 발생하더라도 곧바로 해당 장면에 적합한 기준 양자화 스텝사이즈를 추출할 수 있다.
또한, 조정기(114)는 제1 내지 제3 카운터(162,164,166)에 의해 계산된 제1 내지 제3 부호량(sum_P, sum, sum_M)에 따라 실제 양자화 스텝사이즈를 결정하는 데, 도 1에 도시된 I(Increasing)/D(Decreasing) 스캔 유니트(120)에 의해 I/D 스캔을 수행하면서 양자화하는 경우와 I/D 스캔을 수행하지 않고 양자화하는 경우로 구분된다.
즉, 부호량 조절기(112)는 기준 양자화 스텝사이즈(mquant), 기준 양자화 스텝사이즈보다 스텝사이즈가 하나 더 큰 것과 하나 더 작은 것(mquant+1, mquant-1)을 갖고 병렬 양자화를 수행해서 얻어지는 각각에 해당하는 한 화면의 부호량을 기준으로 아래의 수학식 1에 주어진 바와 같이 I/D 스캔 여부를 결정할 수 있다. 즉, 목표 부호량(TB)이 기준 양자화 스텝사이즈보다 하나 작은 것과 큰 것에 의한 부호량 사이(Bm>TB>Bp)에 있게 되면 I/D 스캔 유니트(120)에서 I/D 스캔을 수행하면서 기준 양자화 스텝사이즈가 화면의 위치에 따라 조절된 실제 양자화 스텝사이즈를 이용하여 실제 양자화를 수행한다.
그 외의 경우는 기준 양자화 스텝사이즈에 옵셋을 가감하여 얻어진 실제 양자화 스텝사이즈를 이용하여 실제 양자화를 수행한다. 즉, 목표 부호량(TB:Target Bit)이 기준 양자화 스텝사이즈보다 "1"이 작은 양자화 스텝사이즈를 사용한 경우의 부호량(Bm)과 기준 양자화 스텝사이즈보다 "1"이 큰 양자화 스텝사이즈를 사용한 경우의 부호량(Bp) 사이에 있지 않는 오버플로우(overflow)나 언더플로우(underflow)인 경우에는 옵셋을 가감한 기준 양자화 스텝사이즈(mquant)의 변경이 필요하다.
TB > Bm > Bp : change mquant to [mquant - offset_M]
Bm > TB > Bp : I/D scan
Bm > Bp > TB : change mquant to [mquant + offset_P]
where, Bm : sum_M, Bp: sum_P, TB: Target Bit Number
아래 수학식 2는 오버플로우가 발생하여 기준 양자화 스텝사이즈에 옵셋을 가산하여 생성된 실제 양자화 스텝사이즈(re_mq)의 예를 보이고 있고, 수학식 3은 언더플로우가 발생하여 기준 양자화 스텝사이즈에 옵셋을 감산하여 생성된 실제 양자화 스텝사이즈의 예를 보이고 있다.
Tgap = B - TB, Pgap = B - Bp
if Tgap/2 > Pgap re_mq = i_mqaunt + 8
else if Tgap/1 > Pgap re_mq = i_mquant + 4
else re_mq = i_mquant + 1
where, Bm; Bit amount by mquant-1, B: Bit amount by mquant, Bp: Bit amount by mquant+1, re_mq: real quantization stepsize
Tgap = TB - B, Mgap = Bm - B
if Tgap/32 > Mgap re_mq = i_mquant - 8
else if Tgap/16 > Mgap re_mq = i_mquant - 5
else if Tgap/8 > Mgap re_mq = i_mquant - 3
else if Tgap/4 > Mgap re_mq = i_mquant - 2
else re_mq = i_mquant - 1
where, Bm; Bit amount by mquant-1, B: Bit amount by mquant, Bp: Bit amount by mquant+1, re_mq: real quantization stepsize
따라서, 두 번째 단계의 양자화 과정은 부호량 조절기(112)에 의해 얻어진 최종 부호량과 목표 부호량과의 차이값으로 조정된 새로운 매크로블록 단위의 양자화 스텝사이즈(실제 양자화 스텝사이즈)에 의해 프레임 메모리(110)로부터 독출되는 데이터를 양자화를 수행한다. 즉, 위 수학식 1에서도 설명된 바와 같이 목표 부호량이 기준 양자화 스텝사이즈보다 "1"이 작은 양자화 스텝사이즈를 사용한 경우의 제3 부호량과 기준 양자화 스텝사이즈보다 "1"이 큰 양자화 스텝사이즈를 사용한 경우의 제1 부호량 사이에 있으면 I/D 스캔 유니트(120)에 의해 I-스캔 또는 D-스캔을 수행하면서 실제 양자화기(122)는 결정된 기준 양자화 스텝사이즈를 변화시켜가면서 양자화할 수도 있고, 그렇지 않고 오버플로우 또는 언더플로우가 발생하면 수학식 2 또는 수학식 3에 의해 결정된 실제 양자화 스텝사이즈에 의해 I/D 스캔 유니트(120)를 거치지 않고 실제 양자화기(122)에서 프레임 버퍼(110)로부터 독출되는 데이터를 양자화한다. 이러한 과정을 거치면 입력 영상이 장면이 변하는 경우에도 압축된 부호량이 목표 부호량에 근접한 결과를 갖는 양자화 과정을 수행할 수 있게 된다.
한편, I/D 스캔 유니트(120)에서 사용되는 I-스캔 또는 D-스캔은 한 개의 화면 또는 수 개의 화면 단위로 부호량을 고정하여 압축 부호화하는 경우에 목표 부호량에 가장 근접하게 압축된 데이터를 출력하기 위하여 화면의 가장 자리나 중앙 부분 등과 같이 특정 부분을 목표 부호량에 도달할 때까지 재부호화하는 경우에 사용되는 스캔 방식이다. I-스캔은 발생된 부호량을 감소시키기 위한 매크로블록 단위의 스캔 순서를, D-스캔은 발생된 부호량을 증가시키기 위한 매크로블록 단위의 스캔 순서를 의미한다.
따라서, 두 번째 양자화 단계는 좀 더 세밀한 부호량 조절을 수행하게끔 해주는 양자화 과정이다. 첫 번째 단계의 양자화 과정을 수행하여도 그 부호량은 목표치를 크게 초과하거나 미달되는 경우가 자주 발생하게 된다. 따라서, 각각의 경우에 대응하는 부호량 조절을 화면 단위 또는 매크로블록 단위로 양자화 스텝 사이즈를 변화시켜가며 양자화 과정을 수행하고, 결론적으로 화면 단위의 목표 부호량에 넘지 않는 한도내에서 가장 근접하게 부호량을 출력시킬 수 있게 끔 실제 양자화 스텝사이즈를 조절하여 양자화한다.
한편, DCT와 양자화를 거친 변환 계수는 양자화에 의해서 "0"의 값을 갖는 계수를 많이 포함하고 있으므로, 연속장 부호화기(RLC:124)는 실제 양자화기(122)로부터 제공되는 양자화 계수를 연속장 부호화하여 압축률을 높인다. 이 연속장 부호화는 "0" 이 많은 DCT 변환 계수의 특성을 이용하여 연속한 "0"의 개수와 바로 다음에 나오는 "0"이 아닌 값을 갖는 계수의 값을 하나의 심볼로 출력한다.
가변장 부호화기(VLC: 126)는 코드 테이블(128)을 이용하여 연속장 부호화된 심볼중에서 확률적으로 가장 많이 나타나는 데이터에 가장 짧은 코드워드를 할당하고 상대적으로 발생확률이 적은 심볼에는 긴 코드워드를 할당하여 확률적인 방법으로 압축률을 높인다. 그리고, 기본스트림(Elementary Sream: ES) 부호화기(130)는 VLC(126)로부터 제공되는 가변장 부호화된 데이터를 코드 버퍼(132)에 일시 저장하고, 저장된 데이터에 부가 헤더를 부가하여 기본스트림을 생성해서 비트스트림형태로 출력한다.
도 6은 도 1에 도시된 I/D 스캔 유니트(120)에서 수행되는 I/D 스캔의 개념을 설명하기 위한 도면이다. 먼저, I-스캔은 부호량 조절기(112)에서 계산된 부호량이 실제로 기록할 수 있는 목표 부호량보다 적은 경우에 해당하며, 매크로블록 단위의 부호화 순서이다. 즉, 결정된 기준 양자화 스텝 사이즈에 의한 압축된 부호량이 목표 부호량보다 적은 경우 해당 화면의 압축된 부호량을 목표 부호량에 맞추기 위하여 시각적으로 더 중요한 화면의 중앙 부분부터 매크로블록단위로 결정된 기준 양자화 스텝사이즈를 변화시켜가면서 양자화 과정을 다시 수행하여 목표 부호량에 근접할 때까지 부호화 과정을 수행한다. 이때, 재부호화하는 양자화 스텝사이즈는 결정된 기준 양자화 스텝사이즈보다 한 단계 낮은 것을 사용하여 실제 양자화기(122)로부터 출력되는 부호량을 늘린다.
D-스캔은 부호량 조절기(112)에서 계산된 부호량이 목표 부호량보다 많을 경우에 해당하는 매크로블록 단위의 부호화 순서이다. 즉, 결정된 기준 양자화 스텝사이즈에 의한 압축된 부호량이 목표 부호량보다 많을 경우 해당 화면의 압축된 부호량을 목표 부호량에 맞추기 위해서 시각적으로 덜 중요한 화면의 가장 자리부터 매크로블록 단위로 결정된 기준 양자화 스텝사이즈를 변화시켜가면서 양자화 과정을 다시 수행하여 목표 부호량에 근접할 때까지 부호화 과정을 수행한다. 이때 재부호화하는 양자화 스텝사이즈는 결정된 기준 양자화 스텝사이보다 한 단계 높은 것을 사용하여 실제 양자화기(122)로부터 출력되는 부호량을 줄인다.
도 7의 (a)와 (b)는 하나의 화면내에 44(row) × 30(col)개의 매크로블록이 있는 경우의 D-스캔과 I-스캔의 순서의 일 예를 보인 도면이다. 도 7의 (a)에 도시된 바와 같이 D-스캔은 실제 부호량이 목표 부호량에 근접하도록 가장 자리부터 양자화 스텝사이즈를 결정된 기준 양자화 스텝사이즈보다 한 단계 높은 것을 사용하고, 도 7의 (b)에 도시된 바와 같이 I-스캔은 중앙 부분부터 양자화 스텝사이즈를 결정된 기준 양자화 스텝사이즈보다 한 단계 낮은 것을 사용해서 실제 양자화한다.
도 8은 본 발명에 의한 복호화기의 일 실시예에 따른 블록도로서, 기본스트림 복호화기(202)는 전송되는 비트스트림으로부터 기본스트림을 추출하고 추출된 기본스트림에 부가된 부가 헤더를 제거해서 비디오 스트림을 제공한다. 가변장 복호화기(VLD: 204)는 비디오 스트림을 코드 테이블(206)를 이용하여 가변장 복호화한다. 연속장 복호화기(RLD: 208)는 가변장 복호화된 데이터를 연속장 복호화하고, 역 양자화기(IQ: 210)는 연속장 복호화된 데이터에 양자화 테이블(212)에 저장된 부호화시 사용한 양자화 스텝사이즈를 곱하여 역 양자화된 데이터를 제공한다.
IZZ/IDCT 유니트(214)는 역 양자화된 데이터를 지그재그 스캔의 역과정을 수행하고, 역 지그재그 스캔된 데이터를 역 이산 변환해서 원 영상 데이터를 라인 버퍼(216)에 일시 저장한 후 소정수의 라인 단위로 후처리기(218)에 제공한다. 후처리기(218)는 도 1에 도시된 전처리기(102)의 역과정을 수행하는 데, 전처리기(102)에서 4:2:2 포맷의 신호를 4:2:0 포맷으로 다운 샘플링하였기 때문에 후처리기(218)는 이에 대응하는 업 샘플링을 수행하여 원래의 4:2:2 포맷의 영상 신호로 출력한다.
본 발명은 양자화 과정을 양자화 매트릭스로 나누는 과정과 실제 양자화 스텝사이즈로 나누는 과정으로 둘로 나누고, 먼저 입력 영상 신호를 초기 양자화 매트릭스로 한번만 나누면 병렬로 양자화하는 부분이나 실제로 양자화 과정을 수행하는 부분에서 초기 양자화 매트릭스로 나누는 과정을 생략할 수 있으므로 하드웨어의 복잡도를 줄일 수 있다.
또한, 본 발명에서는 화면 단위의 편집과 고속 탐색 기능을 수행하기 위해서, 압축된 부호량을 한 화면마다 일정한 크기 이하로 고정시켜 기록하며, 고속 탐색을 위하여 독립적인 복호화가 가능한 단위도 그 크기가 작아야 하므로 슬라이스 단위를 수개의 매크로블록으로 구성한다. 본 발명의 실시예에서는 실제 양자화 스텝사이즈를 매크로블록 단위로 설명되어 있으나 수개의 매크로블록으로 구성된 슬라이스 단위가 될 수도 있다.
본 발명은 입력된 디지털 영상 신호를 프레임(화면) 단위로 일정한 크기내로 압축할 수 있는 영상 신호 압축 부호화 방식을 채용해서 화면 단위의 영상 처리가 필요한 디지털 카메라, 캠코더 또는 디지털 VCR 등에 효과적으로 적용 가능하다.
상술한 바와 같이, 본 발명은 디지털 VCR에 적용하는 경우에는 화면(인트라 픽쳐) 단위로 압축 부호화 및 복호화함으로써 화면 단위의 영상 처리가 가능하고, DVC에 적용하는 경우에는 영상 신호를 MPEG-2의 표준안에 적합하도록 압축 부호화 및 복호화해서 MPEG을 이용하는 모든 기기와 호환할 수 있는 효과가 있다. 또한, 본 발명은 압축 부호화기의 압축 성능이 향상되면서 화질이 개선되고 하드웨어가 간단한 효과가 있다.

Claims (34)

  1. 입력되는 영상 신호를 압축 부호화 및/또는 복호화하는 방법에 있어서:
    (a) 입력되는 영상 신호를 이산 변환하여 이산 변환 계수를 제공하는 단계;
    (b) 상기 이산 변환 계수를 양자화하여 초기화 양자화 매트릭스를 이용하여 초기 양자화된 데이터를 제공하는 단계;
    (c) 상기 초기 양자화된 데이터를 다수의 양자화 스텝사이즈를 이용하여 병렬로 양자화하여 얻어지는 각각의 부호량 중에서 목표 부호량에 가장 근접한 결과를 출력하는 양자화 스텝사이즈를 실제 양자화 스텝사이즈로 결정하는 단계; 및
    (d) 결정된 실제 양자화 스텝사이즈에 의해 초기 양자화된 데이터를 양자화하여 압축된 데이터를 제공하는 단계를 포함하는 방법.
  2. 제1항에 있어서, 상기 (c) 단계는
    (c1) 상기 초기 양자화된 데이터를 기준 양자화 스텝사이즈, 이보다 한 단계 큰 양자화 스텝사이즈와 한 단계 작은 양자화 스텝사이즈를 이용하여 병렬로 양자화하여 제1 내지 제3 양자화된 데이터를 제공하는 단계;
    (c2) 상기 제1 내지 제3 양자화된 데이터를 소정 크기 단위로 카운트하여 제1 내지 제3 부호량을 제공하는 단계; 및
    (c3) 상기 제1 내지 제3 부호량 중 목표 부호량에 가장 근접한 결과를 출력하는 양자화 스텝사이즈를 이용하여 실제 양자화 스텝사이즈를 결정하는 단계를 포함하는 방법.
  3. 제2항에 있어서, 상기 (c3) 단계에서는 목표 부호량이 상기 기준 양자화 스텝사이즈보다 한 단계 큰 양자화 스텝사이즈를 사용하여 얻어진 제1 부호량과 상기 기준 양자화 스텝사이즈보다 한 단계 작은 양자화 스텝사이즈를 사용하여 얻어진 제3 부호량 사이에 있고, 상기 기준 양자화 스텝사이즈에 의해 얻어진 제2 부호량이 상기 목표 부호량보다 크면 상기 기준 양자화 스텝사이즈를 실제 양자화 스텝사이즈로 결정하고, 제2 부호량이 목표 부호량에 근접할 때까지 시각적으로 덜 중요한 화면의 가장 자리의 양자화 스텝사이즈를 변화시키는 것을 특징으로 하는 방법.
  4. 제3항에 있어서, 상기 (c3) 단계에서는 상기 화면의 가장 자리의 양자화 스텝사이즈를 결정된 기준 양자화 스텝사이즈보다 한 단계 큰 값으로 변화시키는 것을 특징으로 하는 방법.
  5. 제3항에 있어서, 상기 (d) 단계는,
    (d1) 상기 초기 양자화된 데이터를 매크로블록 단위로 화면의 가장 자리부터 스캔하는 단계; 및
    (d2) 스캔된 초기 양자화된 데이터를 결정된 기준 양자화 스텝사이즈를 이용하여 양자화하되, 화면의 가장 자리의 양자화 스텝사이즈는 결정된 기준 양자화 스텝사이즈보다 큰 양자화 스텝사이즈를 이용하는 단계를 포함하는 방법.
  6. 제2항에 있어서, 상기 (c3) 단계에서는 목표 부호량이 상기 기준 양자화 스텝사이즈보다 한 단계 큰 양자화 스텝사이즈를 사용하여 얻어진 제1 부호량과 상기 기준 양자화 스텝사이즈보다 한 단계 작은 양자화 스텝사이즈를 사용하여 얻어진 제3 부호량 사이에 있고, 상기 기준 양자화 스텝사이즈에 의해 얻어진 제2 부호량이 상기 목표 부호량보다 작으면 상기 기준 양자화 스텝사이즈를 실제 양자화 스텝사이즈로 결정하고, 상기 제2 부호량이 목표 부호량에 근접할 때까지 시각적으로 중요한 화면의 중앙 부분부터 양자화 스텝사이즈를 변화시키는 것을 특징으로 하는 방법.
  7. 제6항에 있어서, 상기 (c3) 단계에서는 상기 화면의 중앙 부분의 양자화 스텝사이즈를 결정된 기준 양자화 스텝사이즈보다 한 단계 작은 값으로 변화시키는 것을 특징으로 하는 방법.
  8. 제6항에 있어서, 상기 (d) 단계는,
    (d1) 상기 초기 양자화된 데이터를 매크로블록 단위로 화면의 중앙 부분부터 스캔하는 단계; 및
    (d2) 스캔된 상기 초기 양자화된 데이터를 결정된 기준 양자화 스텝사이즈를 이용하여 양자화하되, 화면의 중앙 부분의 양자화 스텝사이즈는 결정된 기준 양자화 스텝사이즈보다 작은 양자화 스텝사이즈를 이용하는 단계를 포함하는 방법.
  9. 제2항에 있어서, 상기 (c3) 단계에서는 목표 부호량이 상기 기준 양자화 스텝사이즈보다 한 단계 큰 양자화 스텝사이즈를 사용하여 얻어진 제1 부호량과 상기 기준 양자화 스텝사이즈보다 한 단계 작은 양자화 스텝사이즈를 사용하여 얻어진 제3 부호량 사이에 있지 않고, 상기 기준 양자화 스텝사이즈에 의해 얻어진 제2 부호량이 상기 목표 부호량보다 크면 상기 기준 양자화 스텝사이즈에 옵셋값이 가산된 실제 양자화 스텝사이즈를 제공하는 것을 특징으로 하는 방법.
  10. 제9항에 있어서, 상기 옵셋값은 아래 수식에 의해 얻어지는 것을 특징으로 하는 방법.
    Tgap = B - TB, Pgap = B - Bp
    if Tgap/2 > Pgap re_mq = i_mqaunt + 8
    else if Tgap/1 > Pgap re_mq = i_mquant + 4
    else re_mq = i_mquant + 1
    where, Bm; Bit amount by mquant-1, B: Bit amount by mquant, Bp: Bit amount by mquant+1, re_mq: real quantization stepsize
  11. 제2항에 있어서, 상기 (c3) 단계에서는 목표 부호량이 상기 기준 양자화 스텝사이즈보다 한 단계 큰 양자화 스텝사이즈를 사용하여 얻어진 제1 부호량과 상기 기준 양자화 스텝사이즈보다 한 단계 작은 양자화 스텝사이즈를 사용하여 얻어진 제3 부호량 사이에 있지 않고, 상기 기준 양자화 스텝사이즈에 의해 얻어진 제2 부호량이 상기 목표 부호량보다 작으면 상기 기준 양자화 스텝사이즈에 옵셋값을 감산한 실제 양자화 스텝사이즈를 제공하는 것을 특징으로 하는 방법.
  12. 제11항에 있어서, 상기 옵셋값은 아래 식에 의해 얻어지는 것을 특징으로 하는 방법.
    Tgap = TB - B, Mgap = Bm - B
    if Tgap/32 > Mgap re_mq = i_mquant - 8
    else if Tgap/16 > Mgap re_mq = i_mquant - 5
    else if Tgap/8 > Mgap re_mq = i_mquant - 3
    else if Tgap/4 > Mgap re_mq = i_mquant - 2
    else re_mq = i_mquant - 1
    where, Bm; Bit amount by mquant-1, B: Bit amount by mquant, Bp: Bit amount by mquant+1, re_mq: real quantization stepsize
  13. 제1항에 있어서, 상기 입력 영상은 소정수의 매크로블록으로 구성된 슬라이스들로 이루어지고, 상기 (a) 단계에서는 입력 영상중 화면(인트라 픽쳐) 단위로 이산 변환하는 것을 특징으로 하는 방법.
  14. 제1항에 있어서, 상기 실제 양자화 스텝사이즈는 매크로블록 단위 또는 수개의 매크로블록으로 구성된 슬라이스 단위 중 하나인 것을 특징으로 하는 방법.
  15. 제1항에 있어서, 상기 목표 부호량은 화면 단위인 것을 특징으로 하는 방법.
  16. 제1항에 있어서,
    (e) 상기 압축된 데이터를 연속장 및 가변장 부호화하여 가변장 부호화된 데이터를 제공하는 단계; 및
    (f) 상기 가변장 부호화된 데이터를 부가 헤더를 부가하여 기본스트림을 생성하여 비트스트림으로서 출력하는 단계를 더 포함하는 방법.
  17. 제16항에 있어서,
    (g) 전송되는 비트스트림으로부터 기본스트림을 추출하고, 상기 기본스트림으로부터 부가 헤더를 제거하여 비디오 스트림을 제공하는 단계;
    (h) 상기 비디오 스트림을 가변장 및 연속장 복호화하여 연속장 복호화된 데이터를 제공하는 단계;
    (i) 상기 연속장 복호화된 데이터를 부호화시 사용한 양자화 스텝사이즈에 의해 역 양자화하여 역 양자화된 데이터를 제공하는 단계; 및
    (j) 상기 역 양자화된 데이터를 역 이산 변환하여 원 영상 데이터로 출력하는 단계를 더 포함하는 방법.
  18. 입력되는 영상 신호를 압축 부호화 및/또는 복호화하는 장치에 있어서:
    입력되는 영상 신호를 이산 변환하여 이산 변환 계수를 제공하는 이산변환 유니트;
    상기 이산 변환 계수를 초기화 양자화 매트릭스를 이용하여 양자화하여 초기 양자화된 데이터를 제공하는 초기 양자화기;
    상기 초기 양자화된 데이터를 다수의 양자화 스텝사이즈를 이용하여 병렬로 양자화하여 얻어지는 각각의 부호량 중에서 목표 부호량에 가장 근접한 결과를 출력하는 양자화 스텝사이즈를 실제 양자화 스텝사이즈로서 제공하는 부호량 조절기; 및
    상기 실제 양자화 스텝사이즈에 의해 초기 양자화된 데이터를 양자화하여 압축된 데이터를 제공하는 실제 양자화기를 포함하는 장치.
  19. 제18항에 있어서, 상기 부호량 조절기는
    상기 초기 양자화된 데이터를 기준 양자화 스텝사이즈, 이보다 한 단계 큰 양자화 스텝사이즈와 한 단계 작은 양자화 스텝사이즈를 이용하여 병렬로 양자화하여 제1 내지 제3 양자화된 데이터를 제공하는 다수의 양자화기;
    상기 제1 내지 제3 양자화된 데이터의 길이를 소정 크기 단위로 카운트하여 제1 내지 제3 부호량을 제공하는 다수의 부호 길이 카운터; 및
    상기 제1 내지 제3 부호량 중 목표 부호량에 가장 근접한 결과를 출력하는 양자화 스텝사이즈를 실제 양자화 스텝사이즈로서 제공함과 동시에 갱신된 기준 양자화 스텝사이즈로서 상기 다수의 양자화기에 피드백 입력하는 조정기를 포함하는 장치.
  20. 제19항에 있어서, 상기 조정기는 목표 부호량이 상기 기준 양자화 스텝사이즈보다 한 단계 큰 양자화 스텝사이즈를 사용하여 얻어진 제1 부호량과 상기 기준 양자화 스텝사이즈보다 한 단계 작은 양자화 스텝사이즈를 사용하여 얻어진 제3 부호량 사이에 있고, 상기 기준 양자화 스텝사이즈에 의해 얻어진 제2 부호량이 상기 목표 부호량보다 크면 상기 기준 양자화 스텝사이즈를 실제 양자화 스텝사이즈로 결정하고, 제2 부호량이 목표 부호량에 근접할 때까지 시각적으로 덜 중요한 화면의 가장 자리의 양자화 스텝사이즈를 변화시키는 것을 특징으로 하는 장치.
  21. 제20항에 있어서, 상기 조정기는 상기 화면의 가장 자리의 양자화 스텝사이즈를 결정된 기준 양자화 스텝사이즈보다 한 단계 큰 값으로 변화시키는 것을 특징으로 하는 장치.
  22. 제20항에 있어서, 상기 초기 양자화된 데이터를 화면의 가장 자리부터 스캔하는 스캔 유니트를 더 포함하고, 상기 실제 양자화기는 스캔되는 상기 초기 양자화된 데이터를 결정된 기준 양자화 스텝사이즈를 이용하여 양자화하되, 화면의 가장 자리의 양자화 스텝사이즈는 결정된 기준 양자화 스텝사이즈보다 큰 양자화 스텝사이즈를 이용하는 것을 특징으로 하는 장치.
  23. 제19항에 있어서, 상기 조정기는 목표 부호량이 상기 기준 양자화 스텝사이즈보다 한 단계 큰 양자화 스텝사이즈를 사용하여 얻어진 제1 부호량과 상기 기준 양자화 스텝사이즈보다 한 단계 작은 양자화 스텝사이즈를 사용하여 얻어진 제3 부호량 사이에 있고, 상기 기준 양자화 스텝사이즈에 의해 얻어진 제2 부호량이 상기 목표 부호량보다 작으면 상기 기준 양자화 스텝사이즈를 실제 양자화 스텝사이즈로 결정하고, 상기 제2 부호량이 목표부호량에 근접할 때까지 시각적으로 중요한 화면의 중앙 부분부터 양자화 스텝사이즈를 변화시키는 것을 특징으로 하는 장치.
  24. 제23항에 있어서, 상기 조정기는 상기 화면의 중앙 부분의 양자화 스텝사이즈를 결정된 기준 양자화 스텝사이즈보다 한 단계 큰 값으로 변화시키는 것을 특징으로 하는 장치.
  25. 제23항에 있어서, 상기 초기 양자화된 데이터를 화면의 중앙 부분부터 스캔하는 스캔 유니트를 더 포함하고, 상기 실제 양자화기는 스캔되는 상기 초기 양자화된 데이터를 결정된 기준 양자화 스텝사이즈로 양자화하되, 화면의 중앙 부분의 양자화 스텝사이즈는 결정된 기준 양자화 스텝사이즈보다 큰 양자화 스텝사이즈를 이용하는 것을 특징으로 하는 장치.
  26. 제19항에 있어서, 상기 조정기는 목표 부호량이 상기 기준 양자화 스텝사이즈보다 한 단계 큰 양자화 스텝사이즈를 사용하여 얻어진 제1 부호량과 상기 기준 양자화 스텝사이즈보다 한 단계 작은 양자화 스텝사이즈를 사용하여 얻어진 제3 부호량 사이에 있지 않고, 상기 기준 양자화 스텝사이즈에 의해 얻어진 제2 부호량이 상기 목표 부호량보다 크면 상기 기준 양자화 스텝사이즈에 옵셋값이 가산된 실제 양자화 스텝사이즈를 제공하는 것을 특징으로 하는 장치.
  27. 제26항에 있어서, 상기 옵셋값은 아래 수식에 의해 얻어지는 것을 특징으로 하는 장치.
    Tgap = B - TB, Pgap = B - Bp
    if Tgap/2 > Pgap re_mq = i_mqaunt + 8
    else if Tgap/1 > Pgap re_mq = i_mquant + 4
    else re_mq = i_mquant + 1
    where, Bm; Bit amount by mquant-1, B: Bit amount by mquant, Bp: Bit amount by mquant+1, re_mq: real quantization stepsize
  28. 제19항에 있어서, 상기 조정기는 목표 부호량이 상기 기준 양자화 스텝사이즈보다 한 단계 큰 양자화 스텝사이즈를 사용하여 얻어진 제1 부호량과 상기 기준 양자화 스텝사이즈보다 한 단계 작은 양자화 스텝사이즈를 사용하여 얻어진 제3 부호량 사이에 있지 않고, 상기 기준 양자화 스텝사이즈에 의해 얻어진 제2 부호량이 상기 목표 부호량보다 작으면 상기 기준 양자화 스텝사이즈에 옵셋값을 감산한 실제 양자화 스텝사이즈를 제공하는 것을 특징으로 하는 장치.
  29. 제28항에 있어서, 상기 옵셋값은 아래 식에 의해 얻어지는 것을 특징으로 하는 장치.
    Tgap = TB - B, Mgap = Bm - B
    if Tgap/32 > Mgap re_mq = i_mquant - 8
    else if Tgap/16 > Mgap re_mq = i_mquant - 5
    else if Tgap/8 > Mgap re_mq = i_mquant - 3
    else if Tgap/4 > Mgap re_mq = i_mquant - 2
    else re_mq = i_mquant - 1
    where, Bm; Bit amount by mquant-1, B: Bit amount by mquant, Bp: Bit amount by mquant+1, re_mq: real quantization stepsize
  30. 제18항에 있어서, 상기 입력 영상은 소정수의 매크로블록으로 구성된 슬라이스들로 이루어지고, 상기 이산 변환 유니트는 입력 영상중 화면(인트라 픽쳐) 단위로 이산 변환하는 것을 특징으로 하는 장치.
  31. 제18항에 있어서, 상기 실제 양자화 스텝사이즈는 매크로블록 단위 또는 수개의 매크로블록으로 구성된 슬라이스 단위 중 하나인 것을 특징으로 하는 장치.
  32. 제18항에 있어서, 상기 목표 부호량은 화면 단위인 것을 특징으로 하는 장치.
  33. 제18항에 있어서,
    상기 부호량 조절기에서 실제 양자화 스텝사이즈를 결정하는 동안 상기 초기 양자화된 데이터를 일시 저장해서 상기 실제 양자화기에 제공하는 프레임 버퍼;
    상기 압축된 데이터를 연속장 및 가변장 부호화하여 가변장 부호화된 데이터를 제공하는 연속장 및 가변장 부호화기; 및
    상기 가변장 부호화된 데이터를 부가 헤더를 부가하여 기본스트림을 생성하여 비트스트림으로서 출력하는 기본스트림 부호화기를 더 포함하는 장치.
  34. 제33항에 있어서,
    전송되는 비트스트림으로부터 기본스트림을 추출하고, 상기 기본스트림으로부터 부가 헤더를 제거하여 비디오 스트림을 제공하는 기본스트림 복호화기;
    상기 비디오 스트림을 가변장 및 연속장 복호화하여 연속장 복호화된 데이터를 제공하는 가변장 및 연속장 복호화기;
    상기 연속장 복호화된 데이터를 부호화시 사용한 양자화 스텝사이즈에 의해 역 양자화하여 역 양자화된 데이터를 제공하는 역 양자화기; 및
    상기 역 양자화된 데이터를 역 이산 변환하여 원 영상 데이터로 출력하는 역 이산 변환 유니트를 더 포함하는 장치.
KR1019980061602A 1998-12-30 1998-12-30 영상 신호의 압축 부호화기 및/또는 복호화기와 그 방법 KR100335435B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980061602A KR100335435B1 (ko) 1998-12-30 1998-12-30 영상 신호의 압축 부호화기 및/또는 복호화기와 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980061602A KR100335435B1 (ko) 1998-12-30 1998-12-30 영상 신호의 압축 부호화기 및/또는 복호화기와 그 방법

Publications (2)

Publication Number Publication Date
KR20000045076A KR20000045076A (ko) 2000-07-15
KR100335435B1 true KR100335435B1 (ko) 2002-06-20

Family

ID=19568331

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980061602A KR100335435B1 (ko) 1998-12-30 1998-12-30 영상 신호의 압축 부호화기 및/또는 복호화기와 그 방법

Country Status (1)

Country Link
KR (1) KR100335435B1 (ko)

Also Published As

Publication number Publication date
KR20000045076A (ko) 2000-07-15

Similar Documents

Publication Publication Date Title
US7170938B1 (en) Rate control method for video transcoding
US6862402B2 (en) Digital recording and playback apparatus having MPEG CODEC and method therefor
US6441754B1 (en) Apparatus and methods for transcoder-based adaptive quantization
KR100253931B1 (ko) 디지탈 영상 시퀀스의 디코딩 방법 및 장치
KR100599017B1 (ko) 영상 데이터 압축 장치 및 그 방법
US7787541B2 (en) Dynamic pre-filter control with subjective noise detector for video compression
US6956899B2 (en) Precise bit control apparatus with look-ahead for MPEG encoding
US6961377B2 (en) Transcoder system for compressed digital video bitstreams
KR100386583B1 (ko) 영상 변환 부호화 장치 및 방법
US6963609B2 (en) Image data compression
US7079578B2 (en) Partial bitstream transcoder system for compressed digital video bitstreams
US7869500B2 (en) Video encoder and method for detecting and encoding noise
KR100364748B1 (ko) 영상 변환 부호화 장치
US8798135B2 (en) Video stream modifier
WO2006000964A1 (en) Video transcoding with selection of data portions to be processed
KR100335435B1 (ko) 영상 신호의 압축 부호화기 및/또는 복호화기와 그 방법
KR100338725B1 (ko) 목표부호량에근접시킨영상신호부호화방법및그에따른장치
KR20030000310A (ko) 영상 변환 부호화 장치
EP0927954B1 (en) Image signal compression coding method and apparatus
JPH1066092A (ja) 映像データ圧縮装置およびその方法
KR20060024609A (ko) 실시간 동영상 부호화 장치 및 방법
JPH10174101A (ja) 画像圧縮符号化および復号化装置、画像圧縮符号化および復号化方法
JPH0767113A (ja) フレーム間帯域圧縮信号切り替え回路

Legal Events

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

Payment date: 20120329

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20130328

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20160330

Year of fee payment: 15

LAPS Lapse due to unpaid annual fee