KR19990060795A - 적응형 양자화 제어방법 - Google Patents

적응형 양자화 제어방법 Download PDF

Info

Publication number
KR19990060795A
KR19990060795A KR1019970081039A KR19970081039A KR19990060795A KR 19990060795 A KR19990060795 A KR 19990060795A KR 1019970081039 A KR1019970081039 A KR 1019970081039A KR 19970081039 A KR19970081039 A KR 19970081039A KR 19990060795 A KR19990060795 A KR 19990060795A
Authority
KR
South Korea
Prior art keywords
complexity
block
quantization
control method
reference value
Prior art date
Application number
KR1019970081039A
Other languages
English (en)
Other versions
KR100243430B1 (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 KR1019970081039A priority Critical patent/KR100243430B1/ko
Priority to US09/221,981 priority patent/US6463100B1/en
Publication of KR19990060795A publication Critical patent/KR19990060795A/ko
Application granted granted Critical
Publication of KR100243430B1 publication Critical patent/KR100243430B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/172Methods 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 picture, frame or field
    • 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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 영상의 부호화방법중에서 특히 양자화 제어방법에 관한 것이다.
영상 부호화시 양자화 제어는 화질에 절대적인 영향을 미치는데, 종래의 MPEG규격의 경우 일반적으로 현재 매크로블록의 분산만을 이용하여 양자화 제어를 수행하기 때문에 구획화현상(block effect)에 효율적으로 대응하지 못하고, 픽쳐의 특성에 따른 비트 절약이 고려되지 않고 있다.
본 발명은 부호화되는 현재 블록의 복잡도를 전체 블록의 평균 복잡도와 비교하여 제 1 블록 복잡도(spatial activity)를 구하고, 블록과 이웃하는 블록간의 움직임량을 비교하여 이로부터 제 2 블록 복잡도(slope activity)를 구하고, 기준값과 상기 제 1 블록 복잡도를 비교하여 기준치 이하이면 제 1 블록 복잡도를 이용하고 이상이면 제 2 블록 복잡도를 이용하여 양자화 스텝을 제어함과 함께, 텍스쳐 영역 또는 브라이트 영역을 구하여 이에 해당되는 블록은 양자화를 성기게(coarse)수행하여 무익한 비트발생을 방지하고 여기서 남는 비트는 세밀하게 양자화해야 하는 부분에 이용함으로써 전체적인 화질향상 및 구획화 현상 방지를 기 할 수 있도록 하였다.

Description

적응형 양자화 제어방법
[1. 본 발명의 기술분야]
본 발명은 영상 부호화기에 관한 것으로서 특히 양자화를 제어하는 방법에 관한 것이며, 본 발명은 MEPG2표준에서 제안한 비트율 제어(Rate Control)를 통한 적응적 양자화(Adapive Quantization)방법의 두가지 개선사항을 지적하고 그 것을 해결하기 위한 방법으로 블록복잡도를 이용하며 또한 밝기 마스킹을 통해서 양자화 스텝을 입력 픽쳐의 특성에 적응적으로 제어하는 방법을 제시한다.
특히 본 발명은 MPEG2엔코더(부호화기)에서 입력픽쳐의 복잡도를 다양한 방법으로 계산하고, 이 복잡도를 입력 픽쳐의 특성과 완충기(버퍼)의 용량을 고려하여 선택적으로 적용하여 양자화 제어--비트율 제어---를 수행하는 방법을 제시한다.
먼저, 앞으로의 설명을 위해 몇가지 용어를 정의한다.
DCT계수를 양자화하기 위한 파라미터를 양자화스케일(Quantizier_scale)이라 정의하고, TM5(MPEG2 규격 제정시 사용된 Test Model명)의 비트율 제어시 완충기(Buffer)에 의해서 결정되는 파라미터를 오프셋 Qj(Offset Qj)라고 정의하고 이 오프셋Qj에 매크로 블록의 복잡도에 의해 적응적으로 Activity Measure를 곱해서 얻어지는 파라미터를 양자화 파라미터(mquantj)라 정의한다.
이때 양자화 파라미터는 1에서 31 사이의 정수값으로 클리핑(clipping)되며 실제로 이 값을 복호기에 5비트의 해더(header)정보로 보내주게 된다. 그리고 실제로 DCT계수를 양자화하는 양자화 스케일은 MPEG2에서 q_scale_type함수에 의해 결정된다. 즉 Quantizer_scale = g(mquantj)의 관계가 성립하고 함수g(·)는 q_scale _type에 의해서 결정되는 함수가 된다.
실제로 MEPG2에서는 q_scale_type은 두가지가 있다. 즉, 이 값이 '0'이면 g(·)는 선형함수가 되고, 1이면 비선형 함수가 된다.
[2. MEPG2 TM5의 비트율 제어방법]
MEPG2 TM5에서 제안한 비트율 제어방법을 간략하게 설명하고 두가지 개선점을 지적한다.
도 1은 이미 알려진 영상 부호화기의 블럭도이며, 필드 또는 프레임 단위로 원영상을 영상 메모리(101)에 저장하고, 메모리 영상과 재구성 영상의 차분신호를 얻기위한 감산기(102)와, 차분신호의 DCT변환을 수행하는 DCT변환부(103)를 가진다.
DCT변환된 결과치(DCT계수)를 양자화기(104)에서 양자화하고, 여기서 양자화된 신호를 역양자화기(105)에서 역양자화하여 IDCT변환부(106)를 통해 역DCT변환된 이미지를 구한다.
이 신호는 가산기(107)에서 움직임 보상된 신호와 가산되어 메모리(108)에 저장되고, 메모리(108)에 저장된 영상정보는 움직임추정보상부(109)에서 움직임 추정과 보상되며, 움직임추정과 보상된 정보는 다시 감산기(102) 및 가산기(107)로 전달된다.
복잡도 계산부(110)는 메모리 영상의 복잡도를 계산하며, 비트율제어기---부호화 제어기(111)는 이 복잡도와 출력단 버퍼--타겟 메모리(115)의 용량을 고려한 정보로부터 상기 양자화기(104)의 양자화율을 제어하게 된다.
VLC(112)는 양자화 제어된 최종 정보를 가변장부호화하고 이 것은 멀티플렉서(113)를 통해서 움직임벡터 정보(MV)의 부호화기(114)의 출력과 함께 버퍼(115)에 입력되어 비트스트림 데이타 형태로 디코더(복호화기)측으로 전송된다.
이러한 영상 부호화기에서 양자화 제어에 관여하는 비트율 제어를 영상 복잡도를 이용하고 있다.
[2.1 MPEG2 TM5의 비트율 제어방법]
[2.1.1 타겟 비트 할당(Target bit allocation)]
전송 비트율에 따라 GOP단위로 일정한 비트율을 할당하고 GOP내부에서 각 픽쳐(picture)에 할당할 비트들을 각 픽쳐(I,P,B프레임)의 복잡도에 따라 할당한다. 즉, 각 픽쳐의 복잡도를 다음과 같이 구한다.
여기서 Si,Sp,Sb는 각각 이전의 I,P,B 픽쳐를 부호화한 후 발생된 비트량이고, Qi,Qp,Qb는 각 픽쳐의 모든 매크로 블록(macro block)에 사용한 양자화 파라미터(mquantj)의 평균값이다.
즉, 현재 픽쳐의 복잡도는 식1에서 처럼 이전의 같은 종류의 픽쳐로부터 구한값으로 쓰이게 된다. 그리고 현재 픽쳐의 비트 할당은 다음과 같이 한다.
여기서 Kp,Kb는 양자화 행렬에 의존하는 상수이고 TM5에서는 각각 1.0,1.4를 사용한다. R은 GOP에 할당한 비트들 중 이전 픽쳐들을 부호화하고 남은 비트수이다. 그리고 bit_rate는 채널 전송율(bits/sec)이고, picture_rate는 초당 복호화되는 픽쳐수이다. GOP시작시 R은 다음과 같이 다시 결정된다.
R←G+R
여기서 G = bit_rate×N/picture_rate, N은 GOP의 크기이다. 그리고 Np,Nb는 현재 GOP내에 부호화될 P,B픽쳐의 수이다.
[2.1.2 비트율 제어]
각 픽쳐를 상기 2.1.1절에서 할당받은 비트에 맞게 현재 픽쳐를 부호화할 수 있도록 비트율을 제어한다.
여기에서는 각 픽쳐마다 임의의 가상적인 완충기를 가지고 있다고 가정하고, 이 완충기의 상태에 따라 양자화 파라미터를 조절하는 방법을 사용한다.
즉, 매크로 블록j를 부호화하기 전까지 각 완충기의 상태는 식2.4에서 처럼 구해진다.
여기서 di 0,dp 0,db 0은 각각 각 픽쳐의 초기 완충기값이다. 실제로 이 것은 가장 이전의 같은 타입의 픽쳐에서의 비트율 제어오차이다. 즉 이전 같은 타입의 픽쳐를 부호화해서 발생한 비트수와 그 픽쳐에 할당되었던 비트수의 차이이다.
그리고, MB_cnt는 영상 전체의 매크로 블록의 갯수이다.
그리고, j-1번째 매크로 블록까지 부호화 했을때 발생하는 완충기의 상태정보를 이용해 j번째 매크로 블록의 Offset Qj는 다음과 같이 얻어낸다.
여기서 r=2×bit_rate/picture_rate이다.
[2.1.3 적응적 양자화(Adaptive Quantization)]
적응적 양자화(Adaptiv Quantization)는 주관적 화질을 높일 수 있는 방법으로 위의 Offset Qj를 현재의 매크로 블록의 복잡도에 따라 변화시키는 방법이다. 즉 매크로 블록별로 복잡도 값을 표시하는 actj를 써서 Qj에 곱해지는 팩터(factor) N_actj를 다음과 같이 정의한다.
이때 actj는 매크로 블록내의 각 블럭(subblock)들의 분산값중 최소값으로 대표해 사용한다. 즉, 식6을 보면 인간 시각에 민감한 평탄한 부분은 actj가 현재 픽쳐 전체의 평균 복잡도(avg_act)보다 작으므로 N_actj가 작게되고, 덜 민감한 복잡한 영역부분에는 actj가 평균 복잡도보다 크므로 N_actj가 크게 되는 함수가 된다. 그리고 양자화 파라미터 mquantj는 다음과 같이 구한다.
그리고 이 값은 1에서 31 사이의 정수값으로 클리핑(clipping)한다.
[2.2 MPEG2 표준의 문제점]
위와같은 영상 부호화시의 양자화 제어는 화질에 절대적인 영향을 미치는데, MEPG규격의 경우 현재 영상 매크로블록의 분산만을 이용하여 양자화 제어를 수행하고 있기 때문에 다음과 같은 구획잡음현상에 효율적으로 대응하지 못하였고 또 픽쳐의 특성에 따른 비트절약이 고려되지 못하였다.
[2.2.1 구획잡음현상]
동영상 데이타를 손실있는 압축(lossy coding)을 할때 어쩔 수 없이 생기게 되는 것이 복원된 영상화질의 잡음인데 그 중 대표적인 잡음현상이 구획잡음현상(Blocking artifact)이다.
이 잡음은 MPEG등에서 표준으로 정하고 있는 블록 변환 부호화(Block transforming coding)시 각 블록 경계에서 생기는 눈에 띄는 경계를 말한다.
즉, 블록별로 각각 독립적으로 부호화를 하기 때문에 경계에서 인접 블록과의 상관성(correlation)을 고려하지 못해서 복원영상에서 블록경계에서의 불일치가 잡음으로 나타나게 된다.
그런데 구획화 현상이 일어나는 것은 부호화 프레임의 종류에 따라 나타나는 정도가 다르다.
즉 I프레임에서는 DCT변환된 계수의 DC계수의 중요도를 고려해 이 계수를 따로 DC정밀도에 따라 세밀하게 부호화를 하기 때문에 구획잡음현상이 잘 눈에 띄지 않는다. 실제로 원영상 크기가 720×480의 여러 시퀀스들을 6Mbits/sec의 비트율에서 부호화하고 다시 복호화해서 보면 I프레임에서는 거의 구획잡음현상이 일어나지 않는 것을 볼 수 있다.
즉, 구획화 현상은 주로 P,B프레임에서 나타나게 되고 그 P,B프레임안에서는 주로 움직임 추정이 잘 않되는 곳에서 많이 일어남을 볼 수 있다. 즉 움직임이 심한 물체의 경계부분에서 특히 이런 현상이 많이 일어나는 것을 볼 수 있다.
도 4에서 보여주듯이 예측 프레임에서 그 부분의 블록 경계들이 구획화 현상을 띄게 된다. 그런데 이 움직임이 큰 물체의 경계(Edge)부분에서는 공간 복잡도도 높게 나오게 되므로 상대적으로 이 부분을 성글게 양자화하게 되고, 이때 예측 프레임의 경계에서의 구획화 현상을 보상해 주기 위한 차분 성분 신호들이 대부분 사라져서 예측 프레임에서의 구획화 현상이 다시 복원 영상에 나타나게 되는 것이다.
그리고 움직임 추정이 잘된 곳은 예측된 것만 가지고도 원 영상을 잘 복원해낼 수 있기 때문에 차분정보가 많이 손상되어도 실제 복원 영상에서 구획화 현상으로 잘 나타나지 않게 된다.
결국 MPEG2 TM5에서처럼 단지 현재 원영상의 공간 복잡도(Spatial activity)만을 고려하여 양자화하는 것은 문제가 있는 것이다.
도 4의(e)에서 원영상신호x(k)와 복원된 영상신호x'(k)사이의 차이가 실제로 눈에 뜨이는 구획현상으로 보여지게 되는 것이다.
[2.2.2 밝기 마스킹(Brightness Masking)을 이용한 비트 저축]
우리 눈의 특성으로 볼때 밝기(Brightness)가 아주 어둡거나 아주 밝은 곳에서는 복원영상에서의 잡음현상이 눈에 잘 띄지 않는다. 그러므로 이 부분을 다른 부분보다 성글게 양자화하면서 이 부분에 쓰이는 비트를 다른 부분에서 쓰일 수 있도록 하는 것이 보다 효율적이다. 하지만 TM5에서는 이 것을 고려하지 못하고 있다.
[3. MPEG2 비트제어방법의 개선]
본 발명의 적응형 양자화 제어방법은 상기한 종래기술에서 거론한 TM5의 두가지 개선점을 보완할 수 있는 방법을 제안한다.
본 발명의 적응형 양자화 제어방법은; 하나의 픽쳐를 복수개의 블록으로 분해하여 블록단위로 처리하는 부호화기에 있어서, 부호화되는 현재 블록의 복잡도를 전체 블록의 평균 복잡도와 비교하여 제 1 블록 복잡도를 구하는 과정과, 블록과 이웃하는 블록간의 움직임량을 비교하여 이로부터 블록의 제 2 복잡도를 구하는 과정과, 설정된 기준값과 상기 제 1 블록 복잡도를 비교한 결과에 따라 상기 제 1 블록복잡도 또는 제 2 블록 복잡도를 이용해서 양자화 스텝을 제어하는 과정으로 이루어짐을 특징으로 한다.
또한, 본 발명의 적응형 양자화 제어방법은; 블록의 밝기를 설정된 기준치와 비교한 결과에 따라 최종적으로 구해진 양자화 스텝을 제어하는 과정을 더 포함하는 것을 특징으로한다.
본 발명의 전체적인 개념도를 도5에서 보여준다. 도5에서 수평선 윗부분은 TM5의 방법이고 아랫부분이 제안하는 방법이다. 이때 수직선은 TM5에서 공간 복잡도에 의해 그려진 것이다. 즉 이 것이 작은 부분에서는 TM5에서도 충분히 강조를 하므로 TM5의 방법 그대로 하고 TM5에서 성글게 부호화하는 곳에서 구획화 현상이 나타날 수 있는 곳을 TM5보다 세밀하게 양자화해주기 위해 슬로프 복잡도(Slope activity)를 적용하게 된다. 즉 슬로프 복잡도를 이용해 매크로 블록의 주변 경계에서 구획화 현상이 많이 일어날 부분을 찾아내게 된다. 즉 비록 공간복잡도는 높더라도 블록 경계에서는 구획화 현상이 일어날 확률이 큰 매크로 블록은 슬로프 복잡도를 이용해 세밀하게 양자화하자는 것이 기본 개념이다.
이 슬로프 복잡도에 대해서는 다음에서 계속 설명될 것이다.
그리고 슬로프 복잡도로 세밀하게 양자화되는 부분중 구획화 현상이 눈에 잘 띄지않기 때문에 세밀하게 양자화할 필요가 없는 텍스쳐(texture)영역을 추출해서 성글게 양자화하는 방법도 제안하고 있다.
위의 구획화 현상을 줄이는 과정이 끝난 후 밝기 마스킹 현상을 고려해 아주 밝거나 아주 어두워 부호화 잡음이 눈에 잘 띄지 않는 곳에 대해 성글게 양자화를 해주는 과정을 통해서 위에서 제시한 TM5의 두가지 개선점을 보완한다.
차후 실험에서 얻어낸 모든 자료는 720×480 ccir 이미지(image)로 4:2:0 포맷(format)을 사용했다. 비트율은 별도의 언급이 없다면 6Mbits/sec이고 GOP의 크기는 15이고 I B B P B B P....의 구조를 갖는 형태로 실험했다. 즉 GOP크기 N=15이고, 기준 프레임(Reference frame)들 사이의 간격 M=3으로 실험했다.
도 1은 일반적인 영상 부호화기의 블럭도
도 2는 본 발명에 의한 적응형 양자화 제어방법을 적용한 부호화기 블럭도
도 3은 본 발명에 의한 적응형 양자화 제어방법을 적용한 부호화기의 다른 실시예의 블럭도
도 4는 구획잡음현상을 설명하기 위한 도면
도 5는 본 발명의 적응형 양자화 제어방법의 전체적인 개념을 설명하기 위한 도면
도 6은 본 발명에서 매크로블록 기울기를 설명하기 위한 도면
도 7은 본 발명의 슬로우프 복잡도 산출방법의 여러가지 예를 나타낸 도면
도 8은 본 발명의 설명을 위한 이미지:슬로우프복잡도의 그림
도 9는 P,B프레임에서 평균 슬로우프를 나타낸 그래프
도 10은 S_actj, P_actj사이에서 웨이팅팩터를 나타낸 도면
도 11은 웨이팅 파라미터를 나타낸 그래프
도 12는 TM5와 본 발명의 PSNR을 비교하기 위한 그래프
도 13은 본 발명의 제어수순을 나타낸 플로우차트
도 14는 본 발명에서 오프셋Qj를 나타낸 그래프와 프레임
도 15는 본 발명에서 오프셋Qj를 나타낸 그래프와 프레임의 다른 예
도 16은 본 발명에서 서브블록을 정의하는 방법을 나타낸 도면
도 17은 본 발명에 의해서 완충기 레벨이 내려간 것을 보이는 도면
도 18은 본 발명에 의해서 PSNR향상을 가져온 것을 보이는 도면
도 19는 본 발명에서 밝기 마스킹이 적용되는 매크로블록을 구하는 방법을 나타낸 도면
도 20은 본 발명에서 밝기 마스킹이 적용된 이미지와 매크로블록을 보이는 도면
도 21은 본 발명에 의해서 TM5보다 완충기 쌓임량에 따른 오프셋Qj가 저감된 것을 보이는 도면
도 22는 본 발명의 최종적인 적응형 양자화 제어수순의 플로우차트
본 발명의 적응형 양자화 제어방법을 적용한 영상 부호화기의 일예를 도2 및 도3에 나타내었다.
여기서 상기 도1과 동일한 구성요소에 대해서는 동일한 부호로 표기하였다.
이미 설명한 바와같이 픽쳐 특성과 타겟비트할당을 고려한 적응적 양자화 스텝 제어를 위해서 다양한 블록 복잡도를 구하는데, 이를 위해서 슬로우프 복잡도를 구하는 수단(201,301)과 공간복잡도,텍스쳐영역검출,밝기 마스킹을 수행하는 수단(202,302)을 가지며, 이 복잡도 정보로부터 선택적이며 적응적으로 양자화기(104)의 양자화 스텝을 제어하는 수단(200)을 포함하였다.
도2는 움직임 보상된 정보를 이용해서 슬로우프 복잡도를 구하는 실시예이고, 도3은 차분영상정보(residual MBs)를 이용해서 슬로우프 복잡도를 구하는 실시예이다.
본 발명의 적응형 양자화 제어방법은; 부호화되는 현재 블록의 복잡도와 블록간의 움직임량에 따른 복잡도를 구하고, 여기서 구한 복잡도 정보를 기준치와 비교한 결과에 따라 상기 복잡도를 선택적으로 적용하여 양자화 스텝을 제어하는 수순으로 양자화제어를 수행한다.
본 발명의 적응형 양자화 제어방법은; 픽쳐의 공간 복잡도와 블록경계에서의 움직임 변화량을 나타내는 슬로우프 복잡도를 구하고, 이렇게 구한 공간 복잡도가 기준치 이하이면 공간 복잡도에 근거해서 양자화 스텝을 정하고, 공간 복잡도가 기준치 이상이면 슬로우프 복잡도에 근거해서 양자화 스텝을 정해서 양자화 제어를 수행하는 수순을 이룬다.
본 발명의 적응형 양자화 제어방법은; 텍스쳐영역과 브라이트영역을 구하여 여기에 해당되는 블록은 양자화를 성기게(coarse)수행하여 비트를 절약할 수 있도록 하는 수순을 더 실행한다.
[3.1 동영상 부호화시 구획 잡음 현상 완화]
기존 TM5의 문제점 첫번째의 구획화 현상 완화를 위해 구획화 현상이 많이 나타나는 부분을 추출하고 그 부분을 세밀하게 양자화 할 수 있는 방법을 제시한다.
[3.1.1 구획화 잡음 현상 영역 추출(움직임 추정이 잘되지 않는 곳)]
구획잡음현상이 특히 심한곳은 1.2.1절에서 설명했듯이 움직임 추정이 잘되지 않는 곳이다. 이 곳은 실제로 예측된 영상을 보아도 매크로 블록 경계에서 구획화 현상이 심한 부분임을 알 수 있다.
이 부분을 추출하기 위한 방법으로 Minami와 Zachor가 제안한 Gradient Method를 사용한다. 하지만 그 방법을 그대로 사용하면 동영상 원영상이 비월주사(Interlaced scan)방식으로 만들어진 것일 때는 움직임이 큰 시퀀스일 경우 상하필드(Top/bottom field) 사이에 기울기가 지나치게 크게 나와 결과에 좋지않은 영향을 주는 매크로 블록이 많이 생기게 된다. 따라서 여기에서는 top field, bottom field를 나누어 결정하는 방법을 사용한다.
이 방법을 도6에서 설명해 준다. 즉, 하드웨어 구현의 인과성을 고려하여 왼쪽과 위쪽의 매크로 블록과의 기울기만을 구한다. 왼쪽 블럭과의 기울기는 Gradient Method와 마찬가지로 하고 위쪽 블록과는 각 블록을 Top/bottom field로 나누어 아래위의 각각 같은 필드끼리 기울기를 구해 그 중 값이 큰 것을 대표로 삼는다.
실제 기울기를 구하는 식은 다음과 같다(식8은 수평 슬로프 계산식, 식9는 수직 슬로프 계산식). 즉, 수평과 수직방향으로 각각 이 계산을 16번씩 하여야 한다. 그리고 각각에서 구한 슬로프를 모두 합하여 현재 매크로 블록의 기울기로 정한다.
수평 슬로우프 계산(Horizontal slope calculation)
수직 슬로우프 계산(Vertical slope calculation)
한편 이 기울기를 구할때는 도7에서 보여주는 세가지 경우를 생각해 볼 수 있다.
실제로 도7의 (a),(b)는 움직임 추정이 잘되지 않은 곳을 찾을 수 있는 것이 되고, (c)의 경우는 복원된 영상에 구획화 현상이 얼마나 나타나는가를 구하는 것이 되어 실제 방법과 약간은 다른 의미를 갖게되나 앞에서도 거론했듯이 복호화된 영상의 구획화 현상도 실제로 움직임 추정이 잘 안된 곳에서 생기는 것이므로 결국 같은 효과를 얻을 것임을 예측할 수 있다.
실제로 실험결과로 보아도 세 방법들이 그리 큰 차이를 보이지는 않는다. 하지만 (c)의 경우는 현재 매크로 블록을 부호화할 때 하드웨어 구현상으로 바로 이전 매크로 블록의 복원된 영상정보가 나올 수 있을지가 문제가 된다. 그리고 (a)에서는 실제 예측영상이므로 영상 자체에서 에지(edge)부분이 블록 경계에 걸릴 경우 기울기가 크게 나오는 경우가 생기게 된다. 따라서 이런 부분은 차분 영상으로 구할 경우 크게 나오는 것을 막을 수 있게된다.
실제 도8에서 각 방법으로 구한 기울기값을 각 매크로 블록별로 그레이 레벨(gray level)로 표시한 것이다. 다음 모든 실험에서는 (b)의 영상으로부터 기울기 구하는 방법을 사용했다.
도8의 (a),(c),(e)는 각각 원영상, 예측된 영상, 차분영상을 보여주고 있고, (b),(d),(f)는 각각 도7의 (c),(a),(b)의 방법에 따라 매크로 블록의 기울기를 구한 도이다.
실제로 세방법의 기울기 분포가 비슷한 것을 볼 수 있으며, 특히 움직임이 많은 곳에서 기울기가 크게(밝게) 나타나는 것을 볼 수 있다. 그리고 도8의 (c), (e)에서 인트라모드(intra mode)로 결정된 매크로 블록은 그레이 레벨128로 놓았다.
그리고 도8의 (d)에서 슬로우프(slope)를 구할때에 현재 매크로 블록이 인트라모드일 때는 제외했고, 주변 매크로 블록이 인트라모드일때는 원영상의 매크로 블록으로 대치했다. 따라서 I프레임의 경우는 이 과정을 거치지 않게된다. 마찬가지로 다른 방법도 I프레임의 경우는 이 과정을 거치지 않는다.
도8의 (e)의 이미지는 실제 차분값에 128을 더해서 0이하는 0으로, 255이상은 255로 클리핑(clipping)하여 만든 영상이다. 슬로우프는 이 영상의 그레이 레벨값으로 구한다. 또 슬로우프 영상은 최대 슬로우프를 그레이 레벨255에 맞추어 선형적 매칭(matching)을 했다. 이때 너무 값이 큰 소수의 슬로우프에 의해 도이 전체적으로 어두워지는 것을 막기 위해 100000 이상의 슬로우프들은 모두 100000으로 대체시켰다.
[3.1.2 적응적 양자화]
각 프레임마다의 완충기 상태에 의해 결정된 오프셋(offset) 양자화 파라미터를 Qj라고 하면 실제 DCT계수를 양자화하는 양자화 파라미터 mquantj= g(Qj×N_actj)의 형태로 결정되게 되는데 여기서 N_actj는 위의 1.1.3절에서 설명했다.
이 N_actj를 슬로우프 정보를 이용한 함수로 바꾸기 위하여 TM5에서와 유사한 방법을 사용한다. 즉, 이 함수는 블록간 슬로우프가 크면 작아지고, 작으면 커지는 함수가 되어야 하기 때문에 N_actj의 분모분자를 바꾼 모양을 갖게 만든다. 다시 말하면 슬로우프가 큰 매크로 블록일수록 더 세밀하게 양자화하자는 것이다.
여기서는 혼동을 피하기 위해 편의상 TM5에서 공간 복잡도에 의해 구해지는 N_actj를 S_actj라고 다시 정의를 하고, 슬로우프에 의해 구해지는 함수를 P_actj라고 정의한다.
즉, 현재 매크로블록의 기울기를 slpj라고 하면 P_actj는 다음과 같다.
여기서 avg_slp는 현재 영상의 평균 슬로우프이고 이 것은 이전의 같은 프레임에서 얻어지는 값으로 대체한다. 실제로 도9에서 보면 바로 이전의 같은 프레임과는 그 차이가 그리 크지 않은것을 볼 수 있다. 그러나 도9의 (d)의 경우 눈에 띄는 두 피이크(peak)는 장면변화(scene change)로 인해 생기는 것이다.
결국 한 매크로 블록의 복잡도 척도(measure)를 N_actj라고 할때, 이 것은 기울기를 이용해서 구한 P_actj와 공간 복잡도를 이용해 구한 S_actj를 가지고 다음과 같이 정의할 수 있다.
여기에서 a(S_actj)는 S_actj의 함수로서 평탄한 영역에서는 크게, 복잡한 영역에서는 작게되며 도10과 같다.
도11에서 이 것을 구하기 위해 PSNR측면에서 조사하기 위한 실험 데이타를 보여주고 있다. 각 시퀀스에 대해 S0를 고정시키고 S1을 변화시키면서 PSNR의 변화 추이를 여러 S0에 대하여 그린 것이다. 영상마다 PSNR면에서 큰 차이를 보여주지 않고 있으며 실제로 주관적으로도 그렇게 S0,S1에 민감한 것으로 보여지지 않았다. 따라서 여기에서는 PSNR을 높이고 주관적 화질도 다른 것과 차이가 없는 것으로 선택하였다.
즉, S0 = 0.9, S1 = 1.3 으로 정했다.
[3.1.3 실험결과]
다른 방법들과의 비교를 위해 지금까지 제안한 방법을 SA(Spatial Activity)방법이라 칭한다.
* 주관적 화질향상
움직임이 많은 풋볼(football)시퀀스나 치어리더(cheer leader)시퀀스의 움직이는 사람들 몸쪽의 구획화 현상이 TM5보다 줄어든 것을 볼 수 있다. 테니스(tennis)시퀀스의 손 부분에서 역시 구획화 현상이 줄어든 것을 볼 수 있다. 즉 움직임이 많은 물체 주변에서 생기는 구획화 현상을 많이 완화시켰다.
* PSNR 향상
I프레임을 제외한 전 프레임에서 전체적으로 고른 PSNR향상을 보였다. 즉 움직임 추정이 잘 안된 곳을 세밀하게 양자화함으로써 비트는 약간 더 사용하지만 전체적으로 PSNR은 높여주는 결과를 가져온다. P,B에서 TM5보다 비트를 약간 더 사용하므로 I프레임에서는 TM5보다 비트를 조금 덜 사용하게 된다. 결국 I프레임에서는 PSNR이 약간 저하가 왔으나 주관적 화질상의 저하는 보이지 않았다.
다음 도12에서 그 결과를 보여주고 있다. 도에서 가로축은 프레임 번호로써 부호화 순으로 배열된 것이고 처음 한 GOP에 대해서는 주어진 방법을 적용하지 않았기 때문에 결과가 TM5와 같다.
전체 프레임 평균 PSNR 결과는 마지막 최종 결과에서 함께 보여준다.
[3.1.4 텍스쳐 영역의 성긴 양자화(Texture영역의 coarse quantization)]
위에서와 같이 구획화 현상을 줄이는 과정을 요약해 보면 도13과 같다. 즉 도13에서 보면 중앙부의 점선 아랫부분은 TM5에서 성글게 양자화되어야 할 부분이나 슬로우프 복잡도에 의해 일부를 세밀하게 양자화하면서 TM5보다 비트량이 많이 생겨서 완충기에 의하 오프셋Qj가 한 프레임 안에서 도14, 도15에서 처럼 전체적으로 TM5에 비하여 올라가는 것을 볼 수 있다.
그러나 그 차이가 그리 크지않고 공간 복잡도(spatial activity)가 낮은 평탄한 영역에서 DCT계수를 양자화하는 양자화 파라미터 mquantj는 g(Qj×N_actj)의 형태로 표현되고 N_actj가 작으므로 실제 mquantj의 차이는 더 작아지므로 그로인해 생기는 구획화 현상은 우리 눈에 크게 띄이지 않는다.
그러나 실제로 공간 복잡도(spatial activity)가 높아 구획화 현상이 눈에 잘 띄지 않는 부분임에도 불구하고 기울기가 크게나와 세밀하게 양자화하여 비트를 많이 사용하는 매크로 블록이 많이 생기게 되면 완충기 레벨이 많이 올라가게 되어 화질에 영향을 줄 경우가 생기게 된다.
그 예로 도15의 (e)에서 완충기 레벨이 도 중앙부분에서 상당히 올라가는 것을 볼 수 있다. 이 것은 도15의 (f)의 실제 프레임의 오른쪽 벽걸이 도 부분 때문인데, 사실 이 부분은 TM5에서는 공간 복잡도가 높아 성글게 양자화되는 지역이고 또 성글게 양자화하여도 구획화 현상이 눈에 잘 띄이지 않는 부분이다. 그러나 실제 기울기 척도(measure)로는 이 부분에 기울기가 크게 나와 세밀하게 양자화하여 비트를 많이 사용하게 되어 결국 오프셋Qj가 올라가게 되는 것이다.
이 것은 비트를 낭비하는 결과이므로, 이 부분을 성글게 양자화하고 여기서 남는 비트를 다른 곳에 주는 것이 더 합당하다.
이 것을 위해서 이 절에서 필요 이상으로 세밀하게 양자화되는 텍스쳐(Texture)영역을 추출해서 그 구분을 성글게 양자화하는 방법을 제안한다.
텍스쳐를 골라내는 방법은 각 매크로 블록내의 서브블록(subblock)들을 정의하고 그 것들의 분산을 얻어내서 그 것들의 평균과 그 것들 서로간의 변이를 가지고 판단하는 방법을 사용한다.
즉 도16에서 서브블록을 정의하는 방법을 보여준다.
즉, 보통 사용하는 방법으로는 8×8의 네 블록들을 가지고 구하나 여기서는 원영상이 비월주사(interlaced scan) 방식으로 얻어졌을 경우를 고려해 탑필드(top field)와 바텀필드(bottom field)로 나눈 후 거기에서 각각 4×8의 8블록들을 정의해 평균 분산의 크기와 각 블록들의 분산의 변화정도에 의해 구분하는 방법을 사용한다.
이 방법은 다음과 같다. 우선 탑필드로 이루어진 4서브블록의 분산들 주 최소, 최대인 것을 각각 vmin, vmax라고 하고, 네 분산의 평균을 vavg라고 하고, 다음 두 조건을 동시에 만족시키는 매크로 블록들 중, 바텀필드에 대해서도 이와 동일한 조건을 만족시키는 매크로 블록을 텍스쳐 매크로 블록으로 간주한다.
vavgT0, vmax/vminT1
여기서 T0, T1은 실험에 의해 결정되는 상수로 실험에서는 각각 100,4를 사용한다.
결국 텍스쳐 매크로 블록을 성글게 양자화하는 방법은 다음과 같다.
1) Texture Classification
2) S_actjS1 ?
여기서 S1은 2.1.2절에서의 상수로서 P_actj만 적용되는 매크로 블록에 대해서만 텍스쳐일 때 성글게 양자화한다.
3) P_actjS_actj?
두 과정으로 선정된 매크로 블록에 대하여 N_actj는 P_actj, S_actj중 값이 큰 것을 선택한다.
[3.1.5 실험 결과]
다른 방법과 비교를 위해 위의 방법을 SATE(Texture Extraction)이라고 부른다.
* 완충기 레벨 안정
도17에서 보여 주듯이 SA방법에서 올라 갔던 것이 SATE방법에서 많이 내려온 것을 볼 수 있다. 즉 비트 발생량이 많은 텍스쳐영역을 성글게 양자화하여 완충기 상태가 크게 올라가는 것을 막아줄 수 있다. 그리고 시퀀스별로 TE가 적용된 매크로 블록의 갯수와 절약된 비트수를 전체 프레임에 대하여 평균한 결과, 즉 각 방법을 적용했을 때 텍스쳐로 선별된 매크로 블록중 성글게 양자화되는 매크로 블록에 대하여 그 것들의 DCT후 양자화 계수들을 부호화할 때 쓰인 비트수를 구해보면 결국, 거기에서 생기는 차이가 절약된 비트로 SATE에서 텍스쳐영역에서 절약해서 다른 곳으로 전달한 비트가 된다.
* 주관적 화질
도17에서 보여주는 것처럼 전체적인 오프셋Qj레벨이 SA방법보다 내려온 것으로 볼 때 텍스쳐부분에 비트가 다른 부분으로 전달된 것을 볼 수 있다. 하지만 TM5의 완충기를 기반으로 한 비트율 제어방법(Buffer Based Rate Control)에서는 텍스쳐영역에서 남는 비트를 어느 특정한 영역에 주는 것이 아니라 영상 전체에 골고루 분배를 하기 때문에 실제적으로 주관적인 화질향상은 그리 크게 눈에 띄지 않는다. 결국 텍스쳐영역에서 절약된 비트를 화질이 많이 손상되는 어느 특정한 부분에서 모두 사용할 수 있도록 하는 방법을 연구하는 것도 화질향상에 큰 도움이 될 것이다.
*PSNR 향상
PSNR은 텍스쳐영역에서 낮아지면서 전체적으로도 SA방법보다는 약간 낮아지는 것을 볼 수 있다. 그러나 기존의 TM5보다는 역시 향상된 결과를 보여준다. 도18에서 이 결과를 보여주고 있다.
[3.2 밝기 마스킹(Brightness Masking)을 통한 비트 절약]
인간 시각의 특성상 상당히 밝거나 상당히 어두운 곳에서는 영상 화질에 대한 민감도가 떨어지게 된다. 여기에서는 이 것을 이용해 이부분에서 비트를 절약할 수 있는 방법을 제안한다.
[3.2.1 밝기 마스킹이 적용되는 매크로 블록 추출]
밝기 마스킹이 적용되는 매크로 블록을 구하는 방법은 도19에서 보여주듯이 현재 매크로 블록 각 픽셀(Pixel)의 휘도평균을 기준으로 한다. 즉, 휘도의 평균이 L0보다 작거나 L1보다 큰 매크로 블록은 우리 눈에 그리 민감하지 않은 부분인 것을 이용하여 이 매크로 블록을 상대적으로 성글게 양자화한다.
L0와 L1은 실험에 의해 정해지는 상수로 실험적으로 L0 = 64, L1 = 192 로 정했다. 도20에서 각 영상마다 이 밝기 마스킹이 적용되는 매크로 블록을 표시한 것이다. 어두운 곳에 적용되는 매크로 블록은 흰 사각형으로, 밝은 곳에 적용되는 매크로 블록은 검은 사각형으로 표시했다. 선택된 매크로 블록의 양자화는 최종적으로 구해진 mquantj를 두배한다(일예). 위의 과정은 다음과 같이 요약될 수 있다.
1) 현재 매크로 블록의 휘도평균(L_avg)구하기
2) mquantj의 조절
[3.2.2 실험 결과]
다른 것과의 비교를 위해서 이 방법은 BM(Brightness Masking)이라 칭한다.
* 비트 절약
어둡거나 밝은 지역이 많은 시퀀스에 적용될 때 비트가 많이 절약되어 상대적으로 다른 곳에서 세밀하게 양자화되어 주관적 화질을 올리는 결과를 보여준다.
그리고 각 시퀀스마다 평균적인 BM이 적용되는 매크로 블록에서의 절약된 비트수를 보면 어둡거나 밝은 곳도 전체적으로 TM5보다 부드러워지는 결과를 가져온다.
그리고 도21에서 TM5보다 전체적으로 완충기 쌓임량에 따른 오프셋Qj가 내려가 있는 것을 볼 수 있다. 즉, 절약된 비트가 다른 곳으로 균일하게 전달된 것을 보여주고 있다. 특히 도21의 (e)의 경우 원영상이 어두운 부분이 많으므로 절약되는 비트가 많아 전체적으로 Qj가 상당히 낮아져서 PSNR결과도 TM5에 비해 상당히 좋아지는 것을 볼 수 있다.
지금까지 제안한 방법들을 통합한 방법의 전체 요약도를 도22에서 보여준다.
SA방법을 이용해 움직임이 많은 물체 주변의 모서리 영역에서의 구획현상을 완화시키고 구획화 현상이 잘 눈에 띄지 않는 텍스쳐영역과, 밝기 마스킹이 되는 영역을 성글게 양자화함으로 해서 SA만 사용할 때의 완충기 레벨의 증가를 막고 오프셋Qj의 크기를 작게해서 전체적으로 화질을 올리는 효과를 준다.

Claims (8)

  1. 하나의 픽쳐를 복수개의 블록으로 분해하여 블록단위로 영상을 부호화하고 블록의 복잡도를 이용해서 양자화 제어를 수행하는 방법에 있어서,
    부호화되는 현재 블록의 복잡도를 전체 블록의 복잡도와 비교하여 제 1 복잡도를 구하는 과정과; 블록과 이웃하는 블록간의 움직임량을 비교하여 제 2 복잡도를 구하는 과정과; 상기 제 1 복잡도와 기준값을 비교하여 제 1 복잡도가 기준치 이하이면 제 1 복잡도를 이용하고, 기준치 이상이면 제 2 복잡도를 이용해서 양자화 스텝을 제어하는 과정으로 이루어진 것을 특징으로 하는 적응형 양자화 제어방법.
  2. 제 1 항에 있어서, 상기 기준값은 상이한 2개의 값을 가진 대역으로 되고, 2개 기준값 사이에 제 1 복잡도가 존재하면 제 1 복잡도와 제 2 복잡도를 적용하여 양자화 스텝을 제어하는 것을 특징으로 하는 적응형 양자화 제어방법.
  3. 제 1 항 또는 제 2 항에 있어서, 픽쳐의 공간복잡도를 제 1 복잡도로 하고, 블록경계에서의 움직임 변화량을 고려한 슬로우프 복잡도를 제 2 복잡도로 하여 양자화 스텝을 제어하는 것을 특징으로 하는 적응형 양자화 제어방법.
  4. 제 1 항 또는 제 2 항에 있어서, 상기 블록 복잡도는 움직임 보상된 영상정보와 원영상정보를 이용해서 구하는 것을 특징으로 하는 적응형 양자화 제어방법.
  5. 제 1 항 또는 제 2 항에 있어서, 상기 블록 복잡도는 차분영상정보와 원영상정보를 이용해서 구하는 것을 특징으로 하는 적응형 양자화 제어방법.
  6. 제 1 항 또는 제 2 항에 있어서, 픽쳐의 영역을 구분하여 제 2 복잡도가 텍스쳐영역인 경우에는 제 2 복잡도의 적용 결과치인 양자화스텝보다 그 스텝폭을 더 넓게 적용하는 것을 특징으로 하는 적응형 양자화 제어방법.
  7. 제 1 항 또는 제 2 항에 있어서, 픽쳐의 영역을 구분하여 브라이트영역인 경우 그 블록의 밝기를 기준치와 비교한 결과에 따라 양자화 스텝을 결정하는 것을 특징으로 하는 적응형 양자화 제어방법.
  8. 제 7 항에 있어서, 상기 브라이트영역의 블록밝기가 기 설정된 범위내인 경우 최종적으로 구해진 양자화스텝을 더 크게하는 것을 특징으로 하는 적응형 양자화 제어방법.
KR1019970081039A 1997-12-31 1997-12-31 적응형 양자화 제어방법 KR100243430B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1019970081039A KR100243430B1 (ko) 1997-12-31 1997-12-31 적응형 양자화 제어방법
US09/221,981 US6463100B1 (en) 1997-12-31 1998-12-29 Adaptive quantization control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970081039A KR100243430B1 (ko) 1997-12-31 1997-12-31 적응형 양자화 제어방법

Publications (2)

Publication Number Publication Date
KR19990060795A true KR19990060795A (ko) 1999-07-26
KR100243430B1 KR100243430B1 (ko) 2000-02-01

Family

ID=19530483

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970081039A KR100243430B1 (ko) 1997-12-31 1997-12-31 적응형 양자화 제어방법

Country Status (2)

Country Link
US (1) US6463100B1 (ko)
KR (1) KR100243430B1 (ko)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3623679B2 (ja) * 1999-01-06 2005-02-23 日本電気株式会社 動画像符号化装置
KR100319557B1 (ko) * 1999-04-16 2002-01-09 윤종용 블럭 단위로 부호화된 영상의 블럭 경계 잡음 성분 제거 방법
JP4769392B2 (ja) * 2001-09-25 2011-09-07 キヤノン株式会社 信号処理装置
US7483488B1 (en) * 2002-05-30 2009-01-27 Intervideo, Inc. Systems and methods for improving bit rate control of video encoding by correcting for the effects of scene changes and bit stuffing in a video buffer verifier (VBV) buffer model
CA2491522C (en) * 2002-07-01 2014-12-09 E G Technology Inc. Efficient compression and transport of video over a network
US8023563B2 (en) * 2002-10-04 2011-09-20 Stmicroelectronics S.R.L. Method and system for processing signals via perceptive vectorial quantization, computer program product therefor
EP1406447A1 (en) * 2002-10-04 2004-04-07 STMicroelectronics S.r.l. Method and system for processing signals via perceptive vectorial quantization, computer program product therefor
JP4214771B2 (ja) * 2002-12-12 2009-01-28 ソニー株式会社 画像処理装置およびその方法と符号化装置
US20040167772A1 (en) * 2003-02-26 2004-08-26 Engin Erzin Speech coding and decoding in a voice communication system
US8218624B2 (en) 2003-07-18 2012-07-10 Microsoft Corporation Fractional quantization step sizes for high bit rates
US10554985B2 (en) 2003-07-18 2020-02-04 Microsoft Technology Licensing, Llc DC coefficient signaling at small quantization step sizes
US7738554B2 (en) 2003-07-18 2010-06-15 Microsoft Corporation DC coefficient signaling at small quantization step sizes
US7801383B2 (en) 2004-05-15 2010-09-21 Microsoft Corporation Embedded scalar quantizers with arbitrary dead-zone ratios
EP1605705B1 (en) * 2004-06-07 2009-01-28 STMicroelectronics S.r.l. Method for compressing image data acquired from a Bayer color filter array
JP2008527827A (ja) * 2005-01-07 2008-07-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 垂線流れに動的に基づいた量子化ステップ・サイズを用いてビデオ信号を処理する方法
US20060239344A1 (en) * 2005-04-25 2006-10-26 Ashish Koul Method and system for rate control in a video encoder
US8422546B2 (en) 2005-05-25 2013-04-16 Microsoft Corporation Adaptive video encoding using a perceptual model
JP4795223B2 (ja) * 2006-01-31 2011-10-19 キヤノン株式会社 画像処理装置
US7974340B2 (en) 2006-04-07 2011-07-05 Microsoft Corporation Adaptive B-picture quantization control
US8059721B2 (en) 2006-04-07 2011-11-15 Microsoft Corporation Estimating sample-domain distortion in the transform domain with rounding compensation
US7995649B2 (en) 2006-04-07 2011-08-09 Microsoft Corporation Quantization adjustment based on texture level
US8130828B2 (en) 2006-04-07 2012-03-06 Microsoft Corporation Adjusting quantization to preserve non-zero AC coefficients
US8503536B2 (en) 2006-04-07 2013-08-06 Microsoft Corporation Quantization adjustments for DC shift artifacts
US8711925B2 (en) 2006-05-05 2014-04-29 Microsoft Corporation Flexible quantization
US8238424B2 (en) 2007-02-09 2012-08-07 Microsoft Corporation Complexity-based adaptive preprocessing for multiple-pass video compression
US8498335B2 (en) 2007-03-26 2013-07-30 Microsoft Corporation Adaptive deadzone size adjustment in quantization
US8243797B2 (en) 2007-03-30 2012-08-14 Microsoft Corporation Regions of interest for quality adjustments
US8442337B2 (en) 2007-04-18 2013-05-14 Microsoft Corporation Encoding adjustments for animation content
US8090016B2 (en) * 2007-05-17 2012-01-03 Zoran Corporation Activity normalization for video encoding
US8331438B2 (en) 2007-06-05 2012-12-11 Microsoft Corporation Adaptive selection of picture-level quantization parameters for predicted video pictures
EP2193663B1 (en) 2007-09-28 2017-11-08 Dolby Laboratories Licensing Corporation Treating video information
US8213502B2 (en) * 2007-12-31 2012-07-03 Ceva D.S.P. Ltd. Method and system for real-time adaptive quantization control
US8189933B2 (en) 2008-03-31 2012-05-29 Microsoft Corporation Classifying and controlling encoding quality for textured, dark smooth and smooth video content
US8897359B2 (en) 2008-06-03 2014-11-25 Microsoft Corporation Adaptive quantization for enhancement layer video coding
US8175324B2 (en) * 2008-10-17 2012-05-08 New Jersey Institute Of Technology Reversible data hiding
US20120039389A1 (en) * 2009-04-28 2012-02-16 Telefonaktiebolaget L M Ericsson Distortion weighing
US9591326B2 (en) * 2010-03-31 2017-03-07 Intel Corporation Power efficient motion estimation techniques for video encoding
US9445109B2 (en) 2012-10-16 2016-09-13 Microsoft Technology Licensing, Llc Color adaptation in video coding
KR101461365B1 (ko) 2013-03-13 2014-11-14 삼성전자주식회사 영상의 컨텐츠를 고려하여 양자화계수를 조절하는 영상의 부호화, 복호화 방법 및 장치
US10440365B2 (en) 2013-06-28 2019-10-08 Velos Media, Llc Methods and devices for emulating low-fidelity coding in a high-fidelity coder
US10097851B2 (en) * 2014-03-10 2018-10-09 Euclid Discoveries, Llc Perceptual optimization for model-based video encoding
US10091507B2 (en) * 2014-03-10 2018-10-02 Euclid Discoveries, Llc Perceptual optimization for model-based video encoding
US9930346B2 (en) * 2014-04-15 2018-03-27 Qualcomm Incorporated System and method for flatness detection for display stream compression (DSC)
KR102503900B1 (ko) 2015-10-05 2023-02-27 삼성전자주식회사 양자화 파라미터를 적응적으로 결정하는 인코더 및 이를 포함하는 애플리케이션 프로세서
US10453221B2 (en) * 2017-04-10 2019-10-22 Intel Corporation Region based processing

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5592302A (en) * 1992-03-23 1997-01-07 Canon Kabushiki Kaisha Coding method for coding pixel blocks and apparatus therefor
US5654759A (en) * 1995-02-15 1997-08-05 Hitachi America Ltd. Methods and apparatus for reducing blockiness in decoded video
US5691775A (en) * 1995-03-30 1997-11-25 Intel Corporation Reduction of motion estimation artifacts
US5946652A (en) * 1995-05-03 1999-08-31 Heddle; Robert Methods for non-linearly quantizing and non-linearly dequantizing an information signal using off-center decision levels
US5909249A (en) * 1995-12-15 1999-06-01 General Instrument Corporation Reduction of noise visibility in a digital video system
US6037985A (en) * 1996-10-31 2000-03-14 Texas Instruments Incorporated Video compression

Also Published As

Publication number Publication date
KR100243430B1 (ko) 2000-02-01
US6463100B1 (en) 2002-10-08

Similar Documents

Publication Publication Date Title
KR19990060795A (ko) 적응형 양자화 제어방법
US5790196A (en) Adaptive video coding method
US5969764A (en) Adaptive video coding method
JP3748717B2 (ja) 動画像符号化装置
JP4187405B2 (ja) 符号化方式におけるオブジェクトベースのレート制御装置及びその方法
KR100355375B1 (ko) 영상부호화장치에있어서양자화간격결정방법및회로
KR100860147B1 (ko) 화상 부호화 방법, 그 장치 및 제어 프로그램을 기록한 컴퓨터 판독가능한 기록 매체
KR100785589B1 (ko) 화상 부호화 장치 및 화상 복호 장치
EP1745653B1 (en) Encoder with adaptive rate control for h.264
KR101089325B1 (ko) 디지털 화상 시퀀스를 위한 인코딩 방법, 디코딩 방법 및 인코딩 장치
US20090010556A1 (en) Image coding apparatus, image coding method, and image coding program for coding at least one still frame with still frame coding having a higher quality than normal frame coding of other frames
US8259793B2 (en) System and method of fast MPEG-4/AVC quantization
KR20060072070A (ko) 이미지 또는 픽쳐 시퀀스를 인코딩하는데 사용될 수 있는양자화 매트릭스를 발생하는 방법 및 장치
US8451891B2 (en) Rate control method for video encoder using Kalman filter and FIR filter
KR20090042235A (ko) 화상 처리 장치 및 방법과 프로그램
CA2646538C (en) Two-pass video coding using a measure of predictive power of reference regions
EP1978745B1 (en) Statistical adaptive video rate control
KR100204069B1 (ko) 적응적인 양자화 조절 기능을 갖는 개선된 영상 부호화 시스템 및 그 양자화 제어방법
KR100708182B1 (ko) 동영상 부호화기의 비트율 제어 장치 및 방법
JP5649296B2 (ja) 画像符号化装置
KR101345294B1 (ko) 영상의 양자화 장치 및 방법
JPH11513873A (ja) ブロック・ベースのコード化システムにおいてコード化モードを選択するための装置および方法
JP4325536B2 (ja) 動画像符号化装置及び方法
KR20090037288A (ko) 동영상 부호화 데이터율 제어를 위한 실시간 장면 전환검출 방법, 이를 이용한 영상통화 품질 향상 방법, 및영상통화 시스템
JPH05219496A (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: 20080926

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee