KR100234688B1 - Apparatus for controlling quantization level of video encoder - Google Patents

Apparatus for controlling quantization level of video encoder Download PDF

Info

Publication number
KR100234688B1
KR100234688B1 KR1019960028348A KR19960028348A KR100234688B1 KR 100234688 B1 KR100234688 B1 KR 100234688B1 KR 1019960028348 A KR1019960028348 A KR 1019960028348A KR 19960028348 A KR19960028348 A KR 19960028348A KR 100234688 B1 KR100234688 B1 KR 100234688B1
Authority
KR
South Korea
Prior art keywords
quantization level
output signal
gate
output
discrete cosine
Prior art date
Application number
KR1019960028348A
Other languages
Korean (ko)
Other versions
KR980013431A (en
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 KR1019960028348A priority Critical patent/KR100234688B1/en
Publication of KR980013431A publication Critical patent/KR980013431A/en
Application granted granted Critical
Publication of KR100234688B1 publication Critical patent/KR100234688B1/en

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/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
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
    • 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/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)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

본 발명은 비디오 인코더의 양자화 레벨 조정 장치에 관한 것으로 특히, 본 발명은 비디오 인코딩시 역이산 코사인 변환된 신호를 연산하여 복잡한 영상인 경우 버퍼의 오버플로어가 발생하면 고주파수 부분을 제거하여 버퍼의 오버플로어를 방지하도록 한 것이다. 이러한 본 발명은 비디오 인코딩시 버퍼의 오버 플로어를 방지하기 위하여 양자화 레벨을 조정하는 비디오 인코더에 있어서, 이산 코사인 변환기(204)의 출력 신호를 홀드하는 플립플롭과, 이 플립플롭의 출력 신호를 논리합하는 제 1오아 게이트와, 클럭을 계수하는 카운터와, 이 카운터의 상위 3비트 출력신호를 논리합하는 제 2오아 게이트와, 상기 제 1 제 2 오아 게이트의 출력을 논리곱하여 비트율 제어기(211)에 양자화 레벨 조정을 위한 파라메터로 출력하는 앤드 게이트로 이루어진 매크로블럭 복잡도 산출부(212)를 포함하여 구성한다.The present invention relates to an apparatus for adjusting a quantization level of a video encoder. More particularly, the present invention relates to an apparatus for calculating an inverse discrete cosine transformed signal during video encoding. To prevent it. The present invention relates to a video encoder for adjusting a quantization level to prevent an overflow of a buffer during video encoding, comprising: a flip-flop for holding an output signal of a discrete cosine converter 204 and an output signal of the flip-flop A quantization level is applied to the bit rate controller 211 by ANDing the first OR gate, the counter for counting the clock, the second OR gate for ORing the upper three bit output signals of the counter, and the output of the first second OR gate. It includes a macroblock complexity calculator 212 composed of an AND gate outputting a parameter for adjustment.

Description

비디오 인코더의 양자화 레벨 조정 장치Quantization Level Adjuster of Video Encoder

제1도는 종래의 비디오 인코더의 구성도.1 is a block diagram of a conventional video encoder.

제2도는 본 발명에 따른 양자화 레벨 조정 장치의 구성도.2 is a block diagram of a quantization level adjustment device according to the present invention.

제3도는 제2도는에서 매크로블럭 복잡도 산출부의 구성도.3 is a block diagram of a macroblock complexity calculator in FIG.

제4도는 매크로블럭을 도시한 예시도.4 is an exemplary view showing a macroblock.

〈도면의 주요부분에 대한 부호의 설명〉<Explanation of symbols for main parts of drawing>

201 : 영상 재정리기 202 : 움직임 추정기201: Reorder Image 202: Motion Estimator

203,223 : 합산기 204 : 이산 코사인 변환기203,223: summer 204: discrete cosine converter

205 : 양자화기 206 : 로컬 디코더205: Quantizer 206: Local Decoder

207 : 영상 예측기 208 : 가변장 부호화기207: image predictor 208: variable length encoder

209 : 멀티플렉서 210 : 버퍼209: multiplexer 210: buffer

211 : 비트율 제어기 212 : 매크로블럭 복잡도 산출부211: bit rate controller 212: macroblock complexity calculator

221 : 역양자화기 222 : 역이산 코사인 변환기221: inverse quantizer 222: inverse discrete cosine converter

본 발명은 비디오 인코더에 관한 것으로 특히, MPEG 비디오 인코더에서 인코딩시 영상의 복잡도를 계산하여 양자화 레벨을 결정하기 위한 파라메테를 생성하도록 비디오 인코더의 양자화 레벨 조정 장치에 관한 것이다.The present invention relates to a video encoder, and more particularly, to an apparatus for adjusting a quantization level of a video encoder to generate a parameter for determining a quantization level by calculating a complexity of an image when encoding in an MPEG video encoder.

일반적으로 MPEG 비디오 인코더는 인코딩할 영상에 고주파 성분(복잡한 화상)이 많아 전송할 데이터 량이 많아질 경우 버퍼의 오버플로어를 방지할 수 있도록 전송율을 맞추기 위해 양자화 레벨을 증가시키게 된다.In general, MPEG video encoders increase the quantization level in order to adjust the transmission rate to prevent the overflow of the buffer when the amount of data to be transmitted has a lot of high frequency components (complex pictures) to be encoded.

이때, 양자화 게벨을 조정하기 위하여 비트율 제어기를 이용하게 된다.In this case, a bit rate controller is used to adjust the quantization gavel.

제1도는 종래의 비디오 인코더의 구성도로서 이에 도시된 바와 같이, 입력 영상(Ps)을 재정리하는 영상 재정리기(101)와, 이 영상 재정리기(101)의 출력신호를 입력으로 하여 움직임을 추정하는 움직임 추정기(102)와, 이 움직임 추정기(102)의 움직임 추정 신호에서 예측 신호를 감산하여 예측 오차를 출력하는 합산기(103)와, 이 합산기(103)의 예측 오차를 이산 코사인 변환하는 이산 코사인 변환부(104)와, 이 이산 코사인 변환부(104)의 출력 신호를 양자화하는 양자화기(105)와, 이 양자화기(105)의 출력 신호를 역양자화하고 역이산 코사인 변환하여 예측 신호와 합산함에 의해 복호화된 신호를 로컬 디코더(106)와, 상기 움직임 추정기(102)의 모션벡터(MV) 및 모드를 기준으로 상기 로컬 디코더(106)와 복호화된 신호를 입력으로하여 다음의 입력 신호에 대응하는 예측 신호를 출력하는 영상 예측기(107)와, 상기 양자화기(105)의 출력 신호를 가변장 부호로 변환하는 가변장 부호화기(108)와, 상기 모션 추정기(102)의 모션 벡터(MV)와 가변장 부호화기(108)의 출력 신호 중 하나를 선택하여 버퍼(110)에 출력하는 멀티플렉서(109)와, 상기 버퍼(110)의 출력 데이터량에 따라 상기 양자화기(105)의 양자화 레벨을 조정하는 비트율 제어기(111)로 구성된다.FIG. 1 is a block diagram of a conventional video encoder. As shown therein, an image rearranger 101 for rearranging an input image Ps and an output signal of the image rearranger 101 are inputted to estimate motion. A discrete cosine transform of the motion estimator 102, the summer 103 that subtracts the prediction signal from the motion estimation signal of the motion estimator 102, and outputs a prediction error, and the prediction error of the summer 103 Discrete cosine transformer 104, a quantizer 105 for quantizing the output signal of the discrete cosine transformer 104, and an output signal of the quantizer 105 inverse quantized and inverse discrete cosine transform to predict the signal The decoded signal is added to the local decoder 106 and the decoded signal with the local decoder 106 based on the motion vector (MV) and the mode of the motion estimator 102. Prediction corresponding to A video predictor 107 for outputting a signal, a variable length encoder 108 for converting the output signal of the quantizer 105 into a variable length code, and a motion vector (MV) and a variable length of the motion estimator 102. A multiplexer 109 that selects one of the output signals of the encoder 108 and outputs it to the buffer 110, and a bit rate controller that adjusts the quantization level of the quantizer 105 according to the output data amount of the buffer 110. It consists of 111.

상기 로컬 디코더(106)는 양자화기(105)의 출력 신호를 역양자화하는 역양자화기(121)와, 이 역양자화기(121)의 출력 신호를 역이산 코사인 변환하는 역이산 코사인 변환기(122)와, 이 역이산 코사인 변환기(122)의 출력 신화와 영상 예측기(107)의 예측 신호를 합산하여 복호화된 신호를 출력하는 합산기(123)로 구성된다.The local decoder 106 includes an inverse quantizer 121 for inverse quantizing the output signal of the quantizer 105 and an inverse discrete cosine transformer 122 for inverse discrete cosine transforming the output signal of the inverse quantizer 121. And a summer 123 for outputting the decoded signal by summing the output myth of the inverse discrete cosine transformer 122 and the prediction signal of the image predictor 107.

이와같은 종래 기술의 동작 과정을 설명하면 다음과 같다.Referring to the operation of the prior art as follows.

먼저, 소스 영상(Ps)이 영상 재정리기(101)에 입력되면 그 영상은 전송 순서와 표시 순서가 다르기 때문에 영상 재정리(reordering)를 하고 이 재정리된 영상 신호를 입력으로 하여 움직임 추정기(102)가 모션 벡터를 찾아 이르 코딩하고 그 모션 벡터에 따라 움직임을 보상하여 출력하게 된다.First, when the source image Ps is input to the image rearranger 101, since the image is different from the transmission order and the display order, the image reordering is performed, and the motion estimator 102 receives the rearranged image signal as an input. The motion vector is found and coded, and motion is compensated for according to the motion vector.

이때, 합산기(103)가 움직임 추정기(102)의 출력 신호에서 예측 신호를 감산하여 원래 영상과의 차를 구하면 이상 코사인 변환기(104)가 이산 코사인 변화(DCT)하여 양자화기(105)에 출력하게 된다.In this case, when the summer 103 subtracts the prediction signal from the output signal of the motion estimator 102 to obtain a difference from the original image, the abnormal cosine transformer 104 performs a discrete cosine change (DCT) and outputs it to the quantizer 105. Done.

이에 따라, 양자화기(105)가 이산 코사인 변환기(104)의 출력 신호를 양자화하게 된다.Accordingly, the quantizer 105 quantizes the output signal of the discrete cosine converter 104.

이때, 역양자화기(121), 역이산 코사인 변환기(122) 및 합산기(123)으로 구성된 로컬 디코더(106)는 양자화기(105)의 출력 신호를 입력으로 하여 역양자화, 역이산 코사인 변화를 순차적으로 수행한 후 예측 신호와 합산하여 복호화된 신호를 출력하게 된다.At this time, the local decoder 106 composed of the inverse quantizer 121, the inverse discrete cosine converter 122, and the summer 123 receives the output signal of the quantizer 105 as an input to perform inverse quantization and inverse discrete cosine change. After sequentially performing the summing, the decoded signal is output by summing up the prediction signal.

이에 따라, 영상 예측기(107)는 움직임 추정기(102)의 모션 벡터(MV) 및 모드신호(MD)를 기준으로 로컬 디코더(106)의 복호화된 신호를 연산하여 다음의 예측신호를 합산기(103) 및 로컬 디코더(106)에 출력하게 된다.Accordingly, the image predictor 107 calculates the decoded signal of the local decoder 106 based on the motion vector MV and the mode signal MD of the motion estimator 102 and adds the next predicted signal to the summer 103. ) And to the local decoder 106.

한편, 양자화기(105)의 출력 신호는 가변장 부호화기(108)를 통하면서 가변장 부호로 변환되어 멀티플렉서(109)에 출력되어진다.On the other hand, the output signal of the quantizer 105 is converted to a variable length code through the variable length encoder 108 and output to the multiplexer 109.

이때, 멀티플렉서(109)는 움직임 추정기(102)의 모드 신호에 따라 상기 움직임 추정기(102)의 모션 벡터(MV)와 가변장 부호화기(108)의 출력 신호 중 하나를 선택하여 버퍼(110)에 출력하게 된다.In this case, the multiplexer 109 selects one of the motion vector (MV) of the motion estimator 102 and the output signal of the variable length encoder 108 according to the mode signal of the motion estimator 102 and outputs the result to the buffer 110. Done.

따라서, 버퍼(110)에서 일정한 비트율로 부호화된 데이터가 출력된다.Therefore, data encoded at a constant bit rate is output from the buffer 110.

이때, 비트율 제어기(111)는 버퍼(110)를 점검하여 양자화기(105)의 양자화 레벨을 조정함으로써 상기 버퍼(110)의 오버플로어를 방지하게 된다.At this time, the bit rate controller 111 checks the buffer 110 and adjusts the quantization level of the quantizer 105 to prevent the overflow of the buffer 110.

예로, 인코딩하는 영상의 복잡도가 증가하여 버퍼(110)에 입력되는 코드 데이터가 그 버퍼(110)에서 출력되는 코드 데이터보다 증가하는 경우 비트율 제어기(111)는 양자화기(105)의 양자화 레벨을 증가시킴으로써 상기 버퍼(110)에서 출력되는 코드 데이터의 비트량을 조정하게 된다.For example, if the complexity of an image to be encoded increases and the code data input to the buffer 110 increases than the code data output from the buffer 110, the bit rate controller 111 increases the quantization level of the quantizer 105. By adjusting the bit amount of the code data output from the buffer 110.

그러나, 종래에는 버퍼에 오버플로어가 발생하는 경우 양자화 레벨을 크게 하여 비트량을 줄일 수 있으나, 그 조정된 양자화 레벨에서도 오버플로어가 발생할 경우에는 양자화 레벨을 더욱 크게 하여 비트 발생량을 줄여야 한다.However, in the related art, when an overflow occurs in the buffer, the bit amount can be reduced by increasing the quantization level. However, when overflow occurs even in the adjusted quantization level, the amount of bit generation must be reduced by increasing the quantization level.

그리고, 버퍼에 오버프로어가 발생하는 경우 주변의 블록들은 무조건 비트를 줄여야 하므로 그 이전 블록보다 데이터 손실이 많아 블러킹 현상이 발생할 수 있다.In addition, when an overprocurement occurs in the buffer, since the neighboring blocks must reduce bits unconditionally, there is more data loss than the previous block, and thus blocking may occur.

따라서, 종래에는 오버플로어 발생시 궤환 루프가 허용된 지연 시간내에서 동작하면 문제가 되지 않으나 지연 시간 이상이 되는 경우 처리 속도가 저하되는 문제점이 있고 또한, 데치타 손실이 많아 블러킹 현상이 발생하는 경우 화질이 저하되는 문제점이 있다.Therefore, conventionally, if the feedback loop operates within the allowable delay time when the overflow occurs, this does not cause a problem. However, when the delay time exceeds the delay time, there is a problem that the processing speed decreases. There is a problem of this deterioration.

본 발명은 종래의 문제점을 개선하기 위하여 인코딩시 역이산 코사인 변화된 신호를 연산하여 복잡한 영상인 경우 버퍼의 오버플로어가 발생하면 고주파수 부분을 제거하여 버퍼의 오버플로어를 방지하도록 창안한 비디오 인코더의 양자화 레벨 조정 장치를 제공함에 목적이 있다.In order to solve the conventional problems, the present invention is to calculate a signal inversely discrete cosine during encoding, and in the case of a complex image, when a buffer overflow occurs, a quantization level of a video encoder devised to prevent a buffer overflow by removing a high frequency part. It is an object to provide an adjusting device.

본 발명은 상기의 목적을 달성하기 위하여 인코딩시 버퍼의 오버 플로어를 방지하기 위하여 양자화 레벨을 조정하는 비디오 인코더에 있어서, 이산 코사인 변환수단의 출력 신호를 홀드하는 플립플롭과, 이 플립플롭의 출력 신호를 논리합하는 제 1오아 게이트와, 크럭을 계수하는 카운터와, 이 카운터의 상위 3 비트 출력 신호를 논리합하는 제 2오아 게이트와, 상기 제 1, 제 2 오아 게이트의 출력을 논리곱하여 비트율 제어 수단에 양자화 레벨 조정을 위한 파라메터로 출력하는 앤드 게이트로 이루어진 매크로블럭 복잡도 산출 수단을 포함하여 구성한다.The present invention provides a video encoder for adjusting a quantization level to prevent an overflow of a buffer during encoding, in order to achieve the above object, a flip-flop for holding an output signal of a discrete cosine transform means, and an output signal of the flip-flop. A first OR gate for ORing the counter, a counter for counting clocks, a second OR gate for ORing the upper 3 bit output signals of the counter, and an output of the first and second OR gates to the bit rate control means. And a macroblock complexity calculation means composed of an AND gate outputting as a parameter for adjusting the quantization level.

이하, 본 발명을 도면에 의거 상세히 설명하면 다음과 같다.Hereinafter, the present invention will be described in detail with reference to the drawings.

본 발명의 실시예는 제 2 도에 도시한 바와 같이, 제 1 도의 종래 장치에 있어서, 이산 코사인 변환기(204)의 출력 신호를 입력으로 매크로블럭의 복잡도를 산출하여 비트율 제어기(211)에 출력하는 매크로블럭 복잡도 산출부(212)를 포함하여 구성한다.According to an embodiment of the present invention, as shown in FIG. 2, in the conventional apparatus of FIG. 1, the complexity of the macroblock is calculated by outputting the output signal of the discrete cosine converter 204 and output to the bit rate controller 211. The macroblock complexity calculator 212 is configured.

상기 비트율 제어기(211)는 매크로블럭 복잡도 산출부(212)의 출력이 세팅된 경우 버퍼(210)에 오버플로어가 발생하면 고주파수 성분을 제거하기 위하여 양자화기(205)의 양자화 레벨을 증가시키는 동작을 수행한다.The bit rate controller 211 increases the quantization level of the quantizer 205 to remove the high frequency component when an overflow occurs in the buffer 210 when the output of the macroblock complexity calculator 212 is set. Perform.

상기 매크로블럭 복잡도 산출부(212)는 제 3 도에 도시한 바와 같이, 클럭(CLK)에 따라 이산 코사인 변환기(204)의 출력 신호를 홀드하는 플립플롭(231)과, 이 플립플롭(231)의 11비트 출력 신호를 논리합하는 오아 게이트(232)와 클럭(CLK)을 계수하는 6비트 카운터(233)와, 이 카운터(233)의 상위 3비트 출력 신호를 논리합하는 오아 게이트(234)와 상기 오아 게이트(232)(234)의 출력을 논리곱하여 양자화 레벨 조정을 위한 파라메터를 비트율 제어기(211)에 출력하는 앤드 게이트(235)로 구성한다.As shown in FIG. 3, the macroblock complexity calculator 212 includes a flip-flop 231 for holding an output signal of the discrete cosine converter 204 according to a clock CLK, and the flip-flop 231. OR gate 232 for ORing the 11-bit output signal and a 6 bit counter 233 for counting the clock CLK, OR OR gate 234 for ORing the upper 3 bit output signal of the counter 233 and the An AND gate 235 for outputting a parameter for adjusting the quantization level to the bit rate controller 211 by ANDing the outputs of the OR gates 232 and 234.

이와같이 구성한 본 발명에 따른 실시예의 동작 및 작용 효과를 설명하면 다음과 같다.Referring to the operation and effect of the embodiment according to the present invention configured as described above are as follows.

입력 영상(Ps)이 영상 재정리기(201), 움직임 추정지(202)를 통해 재정리하여 모션 벡터(MV)를 찾아 움직임이 보정되면 합산기(203)에서 원래 화상과의 차가 산출되고 이 차는 이산 코사인 변환기(204)를 통해 이산 코사인 변환된다.When the input image Ps is rearranged through the image rearranger 201 and the motion estimation 202 to find the motion vector MV and the motion is corrected, the summer 203 calculates a difference from the original image and the difference is discrete cosine. Discrete cosine transform through converter 204.

이때, 이산 코사인 변환기(204)의 출력 신호는 양자화기(205)에서 유한갯수의 값으로 근사화시키면 가변장 부호화기(208)에서 가변장 부호화하게 된다.In this case, when the output signal of the discrete cosine transformer 204 is approximated to a finite number of values by the quantizer 205, the variable length encoder 208 is variable length encoded.

따라서, 멀티플렉서(209)는 움직임 추정기(202)의 모드 신호(MD)에 따라 가변장 부호화기(208)의 출력 신호와 상기 움직임 추정기(202)의 모션 벡터(NV) 중 하나를 선택하면 버퍼(210)가 부호화된 코드로 출력하게 된다.Therefore, the multiplexer 209 selects one of the output signal of the variable length encoder 208 and the motion vector NV of the motion estimator 202 according to the mode signal MD of the motion estimator 202. ) Will be output as encoded code.

또한, 양자화기(204)의 출력 신호는 로컬 디코더(206)에 입력되어 역양자화기(221), 역이산 코사인 변환기(222) 및 덧셈기(223)을 통해 역양자화, 역이산 코사인 변환된 후 다음의 예측 신호와 합산되어 복호된다.In addition, the output signal of the quantizer 204 is input to the local decoder 206, and then dequantized and inverse discrete cosine transformed by the inverse quantizer 221, the inverse discrete cosine transformer 222, and the adder 223, and then It is summed and decoded by the prediction signal of.

이에 따라, 영상 예측기(207)는 로컬 디코더(206)에서 복호된 신호를 입력받아 움직임 추정기(202)의 모션 벡터(MV) 및 모드 신호(MD)를 기준으로 다음의 예측 신호를 산출하고 이 산출된 예측 신호를 덧셈기(203)과 상기 로컬 디코더(206)에 출력하게 된다.Accordingly, the image predictor 207 receives the decoded signal from the local decoder 206 and calculates the next prediction signal based on the motion vector MV and the mode signal MD of the motion estimator 202 and calculates the next prediction signal. The predicted signal is output to the adder 203 and the local decoder 206.

한편, 상기에서 이산 코사인 변환(DCT)을 수행하였을 때 영상내의 모든 매크로 블록이 제 4 도와 같이 64개의 픽셀로 이루어진다면 블록의 에너지 좌상단으로 집중된다.In the meantime, when the discrete cosine transform (DCT) is performed, if all macroblocks in the image are 64 pixels as in the fourth diagram, they are concentrated to the upper left corner of the energy of the block.

이를 지그-재그 스캔하면 픽셀(0)는 DC 항이고 픽셀(1:63)은 AC항이 된다.This zigzag scan results in pixel 0 being a DC term and pixel 1:63 being an AC term.

이때, 제 4 도와 같이 매크로블럭을 우상단과 좌하단으로 가르는 대각선의 하단 부분을 고주파수 성분이라고 하며, 이 부분은 일반적인 영상의 경우 "0"값을 갖는데, "0"이 아닌 "1"값이 나타날 경우 섬세하거나 또는 복잡한 화면이다.In this case, as shown in FIG. 4, the lower part of the diagonal line dividing the macroblock into the upper right and the lower left is called a high frequency component, and this part has a value of "0" in the case of a general image, and a value of "1" rather than "0" appears. If the screen is delicate or complicated.

따라서, 매크로블럭 복잡도 산출부(212)는 이산 코사인 변환기(204)의 출력 신호를 입력받아 매크로블럭의 복잡도를 산출하여 고주파수 성분에 "1"이 나타나는 경우 해당 블록의 고주파수 유무 플래그를 "1"로 세팅하여 비트율 제어기(211)에 출력하게 된다.Therefore, the macroblock complexity calculator 212 receives the output signal of the discrete cosine converter 204 and calculates the complexity of the macroblock so that when a high frequency component appears with a "1", the macroblock complexity calculator 212 sets the high frequency presence flag of the corresponding block to "1". It is set and output to the bit rate controller 211.

즉, 제 3 도과 같은 구성의 매크로블럭 복잡도 산출부(212)는 클럭(CLK)에 따라 11-비트 플립플롭(231)이 이산 코사인 변환기(204)의 출력 신호를 홀딩하고 6-비트 카운터(233)가 상기 클럭(CLK)을 계수하면 오아 게이트(232)가 상기 플립플롭(231)의 출력 신호를 논리합하고 오아 게이트(234)가 상기 카운터(233)의 출력 신호중 상위 3비트를 논리합하게 된다.That is, the macroblock complexity calculator 212 configured as shown in FIG. 3 has the 11-bit flip-flop 231 holding the output signal of the discrete cosine converter 204 and the 6-bit counter 233 according to the clock CLK. ) Counts the clock CLK so that the OR gate 232 ORs the output signal of the flip-flop 231 and the OR gate 234 ORs the upper 3 bits of the output signal of the counter 233.

이때, 앤드 게이트(235)가 오아 게이트(232)(234)의 출력 신호를 논리곱하에 고주파수 유무 플래그를 출력하게 된다.At this time, the AND gate 235 outputs a high frequency presence flag under the AND of the output signals of the OR gates 232 and 234.

따라서, 오아 게이트(232)(234)의 출력 신호가 모두 "1"인 경우 앤드 게이트(235)는 고주파수 성분에 "1"이 존재함을 표시하기 위해 고주파수 유무 플래그를 "1"로 세팅하여 출력하게 된다.Therefore, when the output signals of the OR gates 232 and 234 are all "1", the AND gate 235 sets the high frequency presence flag to "1" to indicate that "1" exists in the high frequency component. Done.

이때, 비트율 제어기(211)는 버퍼(210)의 입출력을 점검하여 양자화기(205)의 양자화 레벨을 조정하는데, 매크로블럭 복잡도 산출부(212)의 출력 신호가 "1"로 세팅된 경우 버퍼(210)에 오버플로어가 발생하면 상기 양자화기(205)의 양자화 레벨을 증가시켜 고주파수 성분을 제거하도록 한다.At this time, the bit rate controller 211 checks the input / output of the buffer 210 and adjusts the quantization level of the quantizer 205. When the output signal of the macroblock complexity calculator 212 is set to “1”, the buffer ( If an overflow occurs in 210, the quantization level of the quantizer 205 is increased to remove high frequency components.

따라서, 양자화기(205)에서 근사화되는 데이터의 개수가 감소하게 되므로 버퍼(210)의 오버플로어를 방지하게 된다.Therefore, since the number of data approximated by the quantizer 205 is reduced, the overflow of the buffer 210 is prevented.

그리고, 상기 비트율 제어기(211)는 매크로블럭 복잡도 산출부(212)의 출력 신호가 "0"으로 세팅된 경우에는 버퍼(210)의 입출력을 점검하여 그 버퍼(210)의 언더플로어를 판단함에 의해 양자화기(205)의 양자화 레벨을 조정하게 된다.When the output signal of the macroblock complexity calculator 212 is set to "0", the bit rate controller 211 determines the underfloor of the buffer 210 by checking the input / output of the buffer 210. The quantization level of the quantizer 205 is adjusted.

상기에서 상세히 설명한 바와 같이 본 발명은 매크로블럭의 복잡도를 계산하여 버퍼의 오버플로어가 발생하는 경우에만 양자화 레벨을 증가시킴으로써 버퍼의 오버플로우를 방지하고 물론 오버플로우 발생시 주변 블록의 무조적인 코드 데이터제거을 감소시킴에 의해 화질을 향상시킬 수 있는 효과가 있다.As described in detail above, the present invention calculates the complexity of the macroblock to increase the quantization level only when the overflow of the buffer occurs, thereby preventing the overflow of the buffer, and of course, eliminating unstable code data removal of neighboring blocks when the overflow occurs. There is an effect that can improve the image quality by.

Claims (2)

비디오 인코딩시 버퍼의 오버 플로어를 방지하기 위하여 양자화 레벨을 조정하는 비디오 인코더에 있어서, 이산 코사인 변환 수단의 출력을 입력으로 하여 매크로블럭의 복잡도를 계산하는 매크로블럭 복잡도 산출 수단과 이 매크로블럭 복잡도 산출 수단의 출력 신호가 "1"로 세팅된 경우 버퍼에 오버플로어가 발생하면 고주파수 성분을 제거하도록 양자화 수단의 양자화 레벨을 증가시키는 비트율 제어 수단을 포함하여 구성한 것을 특징으로 하는 비디오 인코더의 양자화 레벨 조정 장치.A video encoder for adjusting a quantization level in order to prevent overflow of a buffer during video encoding, comprising: a macroblock complexity calculating means for calculating a complexity of a macroblock using an output of a discrete cosine transform means as an input, and the macroblock complexity calculating means And a bit rate control means for increasing the quantization level of the quantization means to remove high frequency components when an overflow occurs in the buffer when the output signal is set to " 1 ". 제1항에 있어서, 매크로블럭 복잡도 산출 수단은 이산 코사인 변환 수단의 출력 신호를 홀드하는 플립플롭과, 이 플립플롭의 출력 신호를 논리합하는 제 1오아 게이트와, 클럭을 계수하는 카운터와, 이 카운터의 사위 3비트 출력 신호를 논리합하는 제 2오아 게이트와, 상기 제 1, 제 2 오아 게이트의 출력을 논리곱하여 양자화 레벨 조정을 위한 파라메터로서 비트율 제어 수단에 출력하는 앤드 게이트로 구성한 것을 특징으로 하는 비디오 인코더의 양자화 레벨 조정장치.2. The macroblock complexity calculating means according to claim 1, wherein the macroblock complexity calculating means comprises: a flip-flop for holding an output signal of the discrete cosine transforming means, a first ora gate for ORing the output signal of the flip-flop, a counter for counting a clock, and the counter; A video signal comprising a second OR gate for ORing the quadrature 3-bit output signal, and an AND gate for ANDing the output of the first and second OR gates and outputting the result to the bit rate control means as a parameter for adjusting the quantization level. Quantization Level Adjuster of Encoder.
KR1019960028348A 1996-07-13 1996-07-13 Apparatus for controlling quantization level of video encoder KR100234688B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960028348A KR100234688B1 (en) 1996-07-13 1996-07-13 Apparatus for controlling quantization level of video encoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960028348A KR100234688B1 (en) 1996-07-13 1996-07-13 Apparatus for controlling quantization level of video encoder

Publications (2)

Publication Number Publication Date
KR980013431A KR980013431A (en) 1998-04-30
KR100234688B1 true KR100234688B1 (en) 1999-12-15

Family

ID=19466256

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960028348A KR100234688B1 (en) 1996-07-13 1996-07-13 Apparatus for controlling quantization level of video encoder

Country Status (1)

Country Link
KR (1) KR100234688B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH068625A (en) * 1992-06-25 1994-01-18 Ricoh Co Ltd Reversible heat sensitive coloring material, reversible heat sensitive recording medium and reversible heat sensitive display medium

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH068625A (en) * 1992-06-25 1994-01-18 Ricoh Co Ltd Reversible heat sensitive coloring material, reversible heat sensitive recording medium and reversible heat sensitive display medium

Also Published As

Publication number Publication date
KR980013431A (en) 1998-04-30

Similar Documents

Publication Publication Date Title
KR100667607B1 (en) Variable bitrate video coding method and corresponding video coder
JP2673778B2 (en) Noise reduction device for video decoding
KR100677552B1 (en) Method and Apparatus for loop filtering
US9077968B2 (en) Image processing apparatus and method, and program
EP1784023A2 (en) Blocking artefacts reduction with optional dithering
JP2006054902A (en) Image coding method
JPH1098726A (en) Method and device for video encoding that control bit geneation quantity by using quantization activity
KR20000023174A (en) Encoding apparatus and method
JPH04262694A (en) Encoding device for picture signal
KR0128881B1 (en) Digital image decoder
EP0466366B1 (en) High-efficient coding apparatus for video signal
KR19980017213A (en) Image Decoding System with Compensation Function for Degraded Image
JPH11205797A (en) Animation image encoder
JPH05227520A (en) Picture compression-encoder
KR100234688B1 (en) Apparatus for controlling quantization level of video encoder
KR100602803B1 (en) Encoding block-organized data
KR0123243B1 (en) Bit rate control method in a scene conversion
KR100778473B1 (en) Bit rate control method
JPH05219496A (en) Picture encoder and moving picture encoder
KR100286220B1 (en) apparatus and method for adaptative quantizing in image coder
JP4127006B2 (en) Image signal encoding apparatus and encoding method
KR0129583B1 (en) Apparatus for predicting dc coefficient of intra frame in the picture decoding system
JP4058674B2 (en) Encoding apparatus, encoding method, program, and recording medium
JP3363476B2 (en) Encoding device and method
KR100213025B1 (en) Circuit for improving picture quality in image signal processing apparatus

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

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee