KR20010104058A - Adaptive quantizer according to DCT mode in MPEG2 encoder - Google Patents

Adaptive quantizer according to DCT mode in MPEG2 encoder Download PDF

Info

Publication number
KR20010104058A
KR20010104058A KR1020000025453A KR20000025453A KR20010104058A KR 20010104058 A KR20010104058 A KR 20010104058A KR 1020000025453 A KR1020000025453 A KR 1020000025453A KR 20000025453 A KR20000025453 A KR 20000025453A KR 20010104058 A KR20010104058 A KR 20010104058A
Authority
KR
South Korea
Prior art keywords
block
unit
variance
macroblock
field
Prior art date
Application number
KR1020000025453A
Other languages
Korean (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 KR1020000025453A priority Critical patent/KR20010104058A/en
Publication of KR20010104058A publication Critical patent/KR20010104058A/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/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/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/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)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 적응적 양자화기를 사용하는 MPEG2 동영상 부호화기에서 매크로블럭별 부호화 모드를 고려하여 영상의 복잡도를 판단하는 척도를 계산하여 양자화 레벨을 결정하도록 한 부호화 모드에 따른 적응적 양자화기를 제공하기 위한 것으로, 이러한 본 발명은 전송률 조정을 위해서 입력 매크로블럭 데이터를 프레임 구조에 대한 최소 블럭 분산을 구하는 프레임 분산 처리부와; 상기 입력 매크로블럭 데이터를 필드 구조에 대한 최소 블럭 분산을 구하는 필드 분산 처리부와; 현재 부호화할 원영상과 움직임 보상 예측 영상과의 차신호를 이용해서 DCT모드를 결정하는 DCT모드결정부와; 상기 DCT 모드 결정부에서 결정된 DCT모드에 따라, 상기 프레임 분산 처리부의 출력과 상기 필드 분산 처리부의 출력 중에서 일측 출력을 선택하는 블럭 분산 선택부와; 상기 블럭 분산 선택부에서 선택된 블럭 분산을 이용해서 입력 매크로블럭의 활동도를 구하여 정규화하는 활동도 처리부와; 비디오 출력 버퍼의 상태에 따라 양자화 레벨을 결정하는 양자화 레벨 결정부와; 상기 양자화 레벨 결정부에서 결정된 양자화 레벨과 상기 활동도 처리부에서 정규화된 활동도를 곱하여 현재 매크로블럭의 최종 양자화 레벨을 결정하는 양자화 레벨 결정부로 구성함으로써, 부호화 성능을 향상시키고 화질을 개선할 수 있도록 한다.The present invention provides an adaptive quantizer according to an encoding mode in which an MPEG2 video encoder using an adaptive quantizer determines a quantization level by calculating a measure for determining the complexity of an image in consideration of an encoding mode for each macroblock. The present invention provides a frame distribution processing unit for obtaining minimum block variance of input macroblock data for a frame structure for a rate adjustment; A field variance processor for obtaining a minimum block variance of the input macroblock data with respect to a field structure; A DCT mode determination unit which determines a DCT mode by using a difference signal between an original image to be currently encoded and a motion compensation prediction image; A block variance selecting unit which selects one output from among the output of the frame distribution processing unit and the output of the field distribution processing unit according to the DCT mode determined by the DCT mode determination unit; An activity processing unit which obtains and normalizes an activity of an input macroblock using the block variance selected by the block variance selecting unit; A quantization level determiner which determines a quantization level according to a state of a video output buffer; The quantization level determiner determines the final quantization level of the current macroblock by multiplying the quantization level determined by the quantization level determiner and the activity normalized by the activity processor, thereby improving coding performance and improving image quality. .

Description

동영상 부호화기의 부호화 모드에 따른 적응적 양자화기{ Adaptive quantizer according to DCT mode in MPEG2 encoder }Adaptive quantizer according to coding mode of moving picture encoder {DCT mode in MPEG2 encoder}

본 발명은 고화질텔레비전(High Density TeleVision; HDTV) 등 MPEG2(Moving Picture Experts Group 2 ) 동영상 부호화기에 관한 것으로, 특히 적응적 양자화기를 사용하는 MPEG2 동영상 부호화기에서 부호화 모드를 고려하여, 영상의 복잡도를 판단하는 척도를 계산하여 양자화 레벨을 결정함으로써, 화질을 개선할 수 있도록 한 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기에 관한 것이다.The present invention relates to a Moving Picture Experts Group 2 (MPEG2) video encoder such as High Density TeleVision (HDTV). In particular, the present invention provides a method for determining the complexity of an image by considering an encoding mode in an MPEG2 video encoder using an adaptive quantizer. The present invention relates to an adaptive quantizer according to a coding mode of a video encoder that can improve image quality by calculating a measure to determine a quantization level.

일반적인 MPEG2 동영상 부호화기에서는 일정한 양의 영상 데이터를 제한된 전송 채널로 전송하기 위해 양자화 레벨을 출력 버퍼의 상태에 따라 조절하는 방법을 사용한다. 이 과정에서 영상의 특성에 따라 결정된 양자화 레벨을 다소 가변하는 적응적 양자화 방법을 사용하는데 본 발명은 이의 성능을 개선할 수 있는 방법에 관한 것이다.A typical MPEG2 video encoder uses a method of adjusting a quantization level according to a state of an output buffer in order to transmit a certain amount of image data through a limited transmission channel. In this process, an adaptive quantization method that slightly varies the quantization level determined according to the characteristics of an image is used. The present invention relates to a method for improving its performance.

최근 수년 동안 동영상 부호화에 관한 관심이 고조되어 H.261, MPEG1 및 MPEG2와 같은 표준안들이 많이 제정되었다. 이들 표준안들은 영상 전화, 디지털 방송, 고화질 TV 등의 다양한 응용에 적용되고 있으며, 영상 부호화 방식으로 대부분 복합 움직임 보상/이산여현부호화 방식을 채택하고 있다. 이러한 표준안들은 모두 복호화기에 대한 표준안들이며, 이들을 만족시키는 부호화기의 구현은 복호화가 가능한 범위에서 가변이 가능하다.In recent years, interest in video encoding has been raised, and many standards such as H.261, MPEG1 and MPEG2 have been enacted. These standards are applied to various applications such as video telephony, digital broadcasting, and high-definition TV. Most of them adopt complex motion compensation / discrete cod coding as video coding. These standards are all standards for decoders, and the implementation of an encoder that satisfies them is variable in a range that can be decoded.

도1은 복합 움직임 보상/이산여현부호화를 사용하는 MPEG2 동영상 부호화기의 구조를 보여준다.1 shows the structure of an MPEG2 video encoder using complex motion compensation / discrete cosine coding.

도시된 바와 같이, 먼저 움직임 추정부(2)는 입력 영상과 예측을 위한 프레임 메모리(1)에 저장되어 있는 이전 영상을 이용하여 움직임 추정을 수행한다. 여기서 얻어진 움직임 벡터를 이용하여 움직임 보상부(3)는 현재 처리될 블럭의 움직임 보상 예측값을 프레임 메모리(1)에 저장된 이전 영상에서 읽어 내어 얻게 된다.As shown, first, the motion estimator 2 performs motion estimation using an input image and a previous image stored in the frame memory 1 for prediction. Using the motion vector obtained here, the motion compensator 3 reads the motion compensation prediction value of the block to be currently processed from the previous image stored in the frame memory 1.

이렇게 하여 얻어진 예측된 블럭과 현재 원래의 블럭과의 차이를 감산기(4)에서 계산한 후, 이산여현부호화부(DCT부)(5)에서 이산여현부호화한 다음 양자화부(6)에서 양자화를 하여 전송한다. 이와 동시에 복호화기와 같은 연산인 전송되는 오차 신호를 다시 역양자화부(7)와 역DCT부(8)를 통해 역양자화와 역이산여현부호화를 하여, 이 부호화된 신호와 움직임 보상부(3)의 움직임 보상 예측 신호를 합산기(9)에서 합한다. 그런 다음 합산된 이 신호를 다음 영상의 움직임 추정 및 보상을 위해 프레임 메모리(1)에 저장하게 된다.The difference between the predicted block thus obtained and the current original block is calculated by the subtractor (4), then discrete cosine coded by the discrete cosine coding unit (DCT unit) 5, and then quantized by the quantization unit 6. send. At the same time, the inverse quantization unit and the inverse discrete cosine coding are performed again through the inverse quantization unit 7 and the inverse DCT unit 8 to transmit the error signal, which is the same operation as the decoder, so that the coded signal and the motion compensation unit 3 The motion compensation prediction signal is summed in summer 9. This summed signal is then stored in frame memory 1 for motion estimation and compensation of the next image.

이러한 영상 압축 시스템에서 영상 데이터의 압축은 움직임 추정 및 보상, 이산여현부호화 그리고 가변장 부호화 등을 통해서 이루어진다. MPEG2영상 압축 방법에는 픽처(Picture)마다 다양한 부호화 모드를 지원한다. 즉 현재 영상 내의 정보만을 이용하여 압축 및 부호화를 하게 되는 I-Picture 모드와 시간적으로 이전 또는 이후의 영상으로부터 움직임 보상을 수행하고 원 영상과의 차이를 압축 부호화하게 되는 P-Picture와 B-Picture 모드의 3가지가 허용된다. 따라서 각 화면의 부호화 모드에 따라 발생되는 데이터의 양은 크게 달라지게 되고 또한 영상의 특성에 따라 변화가 생기게 된다.Image data compression in such a video compression system is performed through motion estimation and compensation, discrete cosine coding, and variable length coding. The MPEG2 video compression method supports various encoding modes for each picture. That is, I-Picture mode, which compresses and encodes using only the information in the current image, and P-Picture and B-Picture mode, which performs motion compensation from the previous or subsequent image in time and compresses and encodes the difference from the original image. Three are allowed. Therefore, the amount of data generated according to the encoding mode of each screen is greatly changed, and the change occurs according to the characteristics of the image.

그러나 일반적으로 많이 고려되는 고정 전송률 부호화(Constant Bit Rate; CBR) 방식에서는 전송 데이터의 양이 평균적으로 일정해야 주어진 채널(channel)로의 전송이 가능하게 된다. 따라서 대부분의 영상 부호화 방법과 같이 MPEG2 에서는 전송 비트율(bit rate)의 조정을 위한 방법을 사용하게 된다. MPEG2 응용에서 주로 사용하는 방법은 출력 데이터를 출력 버퍼를 통해서 내보내고, 부호화의 단위인 매크로블럭(macro block)마다 출력 버퍼의 충만도(occupancy)와 현재 매크로블럭의 복잡도를 판단하는 척도인 활동도(activity)를 보고 이에 따라 양자화(quantization)에 사용하는 양자화 레벨을 조절하는 방법이다.However, in general, the constant bit rate (CBR) scheme, which is widely considered, requires that the amount of transmitted data be constant on average to allow transmission to a given channel. Therefore, like most video encoding methods, a method for adjusting a transmission bit rate is used in MPEG2. The main method used in MPEG2 application is to output the output data through the output buffer, and to measure the complexity of the current macroblock and the occupancy of the output buffer for each macroblock which is a unit of encoding. activity and adjust the quantization level used for quantization accordingly.

도2는 일반적인 MPEG2 동영상 부호화기의 비트율 제어부 블럭 구성을 보이며, 이의 동작을 설명하면 먼저, 부호화를 하고자 하는 현재 영상의 목표 전송률을 영상의 부호화 모드에 따라 매 영상마다 설정한다.FIG. 2 shows a configuration of a bit rate controller block of a typical MPEG2 video encoder. Referring to the operation thereof, a target bit rate of a current video to be encoded is set for each video according to an encoding mode of the video.

즉, 활동도 계산부(12)에서 현재 부호화하고자 하는 영상과 같은 모드를 가지고 이전에 부호화된 영상에서의 전체 매크로블럭의 양자화 레벨의 평균값을 이용하여 복잡도를 추정한다. 그러면 목표 비트율 설정부(20)는 이 복잡도와 MPEG2의 부호화 단위인 GOP(Group of pictures)에서 아직 부호화되지 않은 영상의 수 등을 이용해 현재 영상의 목표 전송률을 설정하게 된다. 그래서 설정된 목표 전송률의 범위에서 동영상 부호화기는 현재 영상을 부호화하게 된다.That is, the activity calculator 12 estimates the complexity using the average value of the quantization levels of all macroblocks in the previously encoded image having the same mode as the image to be currently encoded. Then, the target bit rate setting unit 20 sets the target bit rate of the current video by using the complexity and the number of pictures not yet encoded in the GOP (Group of pictures), which is a coding unit of MPEG2. Thus, the video encoder encodes the current video in the set target rate range.

그리고 버퍼 충만도 모니터링부(21)는 버퍼(11)의 충만도를 모니터링하여 현재의 충만도 정보를 양자화 레벨 결정부(22)에 제공한다. 그래서 양자화 레벨 결정부(22)는 현재 영상에 할당된 목표 전송률과 현재의 버퍼(11)의 충만도 등의 정보를 이용하여, 매크로블럭을 위한 일차적인 양자화 레벨을 결정하게 된다.The buffer fullness monitoring unit 21 monitors the fullness of the buffer 11 to provide the current fullness information to the quantization level determiner 22. Accordingly, the quantization level determiner 22 determines the primary quantization level for the macroblock using information such as the target data rate allocated to the current image and the fullness of the current buffer 11.

즉, 현재 영상의 목표 전송률을 맞추기 위해 현재 매크로블럭 이전까지 부호화하기 위해 실제 사용된 전송률과 할당된 전송률을 이용해서 현재의 버퍼(11)의 충만도를 얻고, 이를 근거로 부호화하고자 하는 매크로블럭의 양자화 레벨을 결정하게 된다.That is, the fullness of the current buffer 11 is obtained by using the transmission rate and the allocated transmission rate that are actually used to encode the current macroblock before the current macroblock in order to match the target transmission rate of the current image. The quantization level will be determined.

그러면 양자화 레벨 조정부(23)는 양자화 레벨 결정부(22)에서 얻어진 양자화 레벨을 현재 매크로블럭의 복잡도에 따라 약간의 조정을 하게 된다. 이는 복잡한 영상 영역은 화질이 다소 떨어져도 인간의 시각에 쉽게 보이지 않음을 이용해서, 복잡한 부분은 양자화 레벨을 다소 높여서 데이터의 발생량을 줄이고 단순한 부분은 양자화 레벨을 낮추어 더 좋은 화질을 얻게 해서 주관적인 화질을 개선시키기 위한 목적이다. 이 부분을 적응적 양자화(adaptive quantization)라 한다.Then, the quantization level adjusting unit 23 slightly adjusts the quantization level obtained by the quantization level determining unit 22 according to the complexity of the current macroblock. This is because the complex image area is not easily seen by human vision even if the picture quality is slightly deteriorated, so that the complex part increases the quantization level slightly, thereby reducing the amount of data generated and the simple part lowers the quantization level to obtain better image quality, thereby improving the subjective image quality. For the purpose. This part is called adaptive quantization.

도3은 종래 적응적 양자화기의 블럭 구성도이며, 이의 동작을 설명한다.3 is a block diagram of a conventional adaptive quantizer, and its operation will be described.

먼저 블럭 분산 연산부(30)는 부호화해야 할 16*16 화소 크기의 매크로블럭 데이터가 입력되면 휘도 신호(luminance signal)에 대해서만 블럭 분산(variance)을 계산하게 된다. 이때 분산은 8*8 크기의 화소 블럭에 대해서 계산된다. 도4a 및 도4b에서와 같이, MPEG2에서는 비월주사(interlace scan) 특성을 고려하여 DCT 및양자화를 위한 블럭 구성 방식이 프레임(frame) 구조와 필드(field) 구조의 두 가지를 지원하므로, 프레임 구조에서 4개의 8*8 블럭이 가능하고 필드 구조에서도 4개의 8*8 블럭이 가능하게 된다. 따라서 한 개의 매크로블럭에 8개의 블럭에 대한 분산이 [수학식 1]과 같이 계산되게 된다.First, when the macroblock data having the size of 16 * 16 pixels to be coded is input, the block variance calculator 30 calculates a block variance only for a luminance signal. In this case, the variance is calculated for an 8 * 8 pixel block. As shown in FIGS. 4A and 4B, in MPEG2, a block structure for DCT and quantization supports two types of frame structures and field structures in consideration of interlace scan characteristics. In the field structure, four 8 * 8 blocks are possible, and in the field structure, four 8 * 8 blocks are possible. Therefore, the variance of eight blocks in one macroblock is calculated as shown in [Equation 1].

여기서 블럭의 수가 도4a 및 도4b와 같이 8개이므로 k=1,2,...,8이고, 블럭 내의 화소들의 평균값(mb(k))은 [수학식 2]와 같이 얻어진다.Here, since the number of blocks is eight as shown in Figs. 4A and 4B, k = 1, 2, ..., 8, and the average value m b (k) of pixels in the block is obtained as shown in [Equation 2].

그러면 활동도 연산부(31)는 블럭 분산 연산부(30)에서 계산된 8개의 분산들 중에 최소의 값을 가지는 분산을 이용해서 [수학식 3]과 같은 방법으로 활동도를 계산한다.Then, the activity calculator 31 calculates the activity in the same manner as in Equation 3 using a variance having a minimum value among the eight variances calculated by the block variance calculator 30.

즉, 이 값은 j번째 매크로블럭의 복잡도를 판단하는 척도로 사용되는 활동도가 된다.In other words, this value is an activity value used as a measure for determining the complexity of the j-th macroblock.

그러면 활동도 정규화부(32)는 계산된 활동도를 정규화한다. 그래서 [수학식4]를 통해 정규화된 활동도는 0.5 ~ 2.0 사이의 값을 갖게 된다.The activity normalization unit 32 then normalizes the calculated activity. Therefore, the activity normalized by Equation 4 has a value between 0.5 and 2.0.

여기서 사용된 평균 활동도는 이전에 부호화된 영상의 모든 매크로블럭 활동도의 평균값을 사용한다. 그래서 양자화 레벨 결정부(23)는 [수학식 5]와 같이, 얻어진 정규화된 활동도를, 도2의 양자화 레벨 결정부(22)에서 얻어진 양자화 레벨에 곱하여, 현재 매크로블럭의 최종적인 양자화레벨을 생성하게 된다.The average activity used here uses the average value of all macroblock activities of a previously encoded image. Thus, the quantization level determination unit 23 multiplies the obtained normalized activity by the quantization level obtained by the quantization level determination unit 22 of FIG. 2 to obtain the final quantization level of the current macroblock, as shown in [Equation 5]. Will be created.

mquantj= Nactj×Qj mquant j = Nact j × Q j

한편, 이와 같은 양자화 레벨 결정 과정은 이와 같은 양자화 레벨 결정 과정은 실시간 처리를 위해 실제 DCT와 양자화를 위해 사용되는 부호화 방식과 무관하게 결정되므로 부호화 효율면에서 잘못된 결과를 발생시키게 되는 단점이 있다.On the other hand, since the quantization level determination process is determined irrespective of the actual DCT and the encoding scheme used for the quantization for real time processing, the quantization level determination process may have an error in encoding efficiency.

즉, 실제 부호화 모드는 I-Picture에서는 원 영상을 이용해서 결정되며, P-Picture나 B-Picture에서는 원영상과 움직임 보상 예측 영상과의 차신호(differential signal)를 이용해서 결정된다. 또한 모드 결정을 위해 사용되는 기준치(criterion)도 블럭들의 분산을 사용하는 것이 아니라 매크로블럭의 각 라인들의 차신호를 이용해서 결정하게 되므로, 적응적 양자화기에서 사용된 활동도가 실제 부호화를 위해 적용되는 모드와 다른 경우가 발생되는 문제점이 있었다. 즉, 8개 블럭의 분산들 중에서 최소 분산을 이용해서 활동도를 계산하므로, 예를들어 적응적 양자화기에서 프레임 구조의 활동도가 적용되고 실제 부호화는 필드 구조로 하게 되는 경우가 생기게 되어, 전체적인 부호화 성능이 저하되는 문제점이 발생되었다.That is, the actual encoding mode is determined using the original picture in the I-Picture, and is determined using the differential signal between the original picture and the motion compensation predictive picture in the P-Picture or B-Picture. In addition, since the criterion used for the mode decision is not determined using the variance of blocks but the difference signal of each line of the macroblock, the activity used in the adaptive quantizer is applied for the actual coding. There was a problem that a case different from the mode is generated. That is, since the activity is calculated using the least variance among the variances of the eight blocks, for example, in the adaptive quantizer, the activity of the frame structure is applied and the actual coding is made into the field structure. There is a problem in that encoding performance is degraded.

이에 본 발명은 상기와 같은 종래의 제반 문제점을 해소하기 위해 제안된 것으로, 본 발명의 목적은Therefore, the present invention has been proposed to solve the conventional problems as described above, the object of the present invention is

적응적 양자화기를 사용하는 MPEG2 동영상 부호화기에서, 매크로블럭별 부호화 모드를 고려하여 영상의 복잡도를 판단하는 척도를 계산하여 양자화 레벨을 결정함으로써, 부호화 성능을 향상시키고 화질을 개선할 수 있도록 한 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기를 제공하는 데 있다.In the MPEG2 video encoder using the adaptive quantizer, the video encoder is designed to improve encoding performance and image quality by calculating a quantization level by calculating a measure for determining the complexity of an image in consideration of the encoding mode for each macroblock. An adaptive quantizer according to an encoding mode is provided.

상기와 같은 목적을 달성하기 위하여 본 발명에 의한 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기는,In order to achieve the above object, the adaptive quantizer according to the encoding mode of the video encoder according to the present invention,

전송률 조정을 위해서 입력 매크로블럭 데이터를 프레임 구조에 대한 최소 블럭 분산을 구하는 프레임 분산 처리부와;A frame dispersion processing unit for obtaining a minimum block variance of the input macroblock data for the frame structure for the rate adjustment;

상기 입력 매크로블럭 데이터를 필드 구조에 대한 최소 블럭 분산을 구하는 필드 분산 처리부와;A field variance processor for obtaining a minimum block variance of the input macroblock data with respect to a field structure;

현재 부호화할 원영상과 움직임 보상 예측 영상과의 차신호를 이용해서 DCT모드를 결정하는 DCT모드결정부와;A DCT mode determination unit which determines a DCT mode by using a difference signal between an original image to be currently encoded and a motion compensation prediction image;

상기 DCT 모드 결정부에서 결정된 DCT모드에 따라, 상기 프레임 분산 처리부의 출력과 상기 필드 분산 처리부의 출력 중에서 일측 출력을 선택하는 블럭 분산 선택부와;A block variance selecting unit which selects one output from among the output of the frame distribution processing unit and the output of the field distribution processing unit according to the DCT mode determined by the DCT mode determination unit;

상기 블럭 분산 선택부에서 선택된 블럭 분산을 이용해서 입력 매크로블럭의 활동도를 구하여 정규화하는 활동도 처리부와;An activity processing unit which obtains and normalizes an activity of an input macroblock using the block variance selected by the block variance selecting unit;

비디오 출력 버퍼의 상태에 따라 양자화 레벨을 결정하는 양자화 레벨 결정부와;A quantization level determiner which determines a quantization level according to a state of a video output buffer;

상기 양자화 레벨 결정부에서 결정된 양자화 레벨과 상기 활동도 처리부에서 정규화된 활동도를 곱하여 현재 매크로블럭의 최종 양자화 레벨을 결정하는 양자화 레벨 결정부로 이루어짐을 그 기술적 구성상의 특징으로 한다.Technical features of the present invention include a quantization level determination unit that determines the final quantization level of the current macroblock by multiplying the quantization level determined by the quantization level determination unit and the activity normalized by the activity processor.

도1은 일반적인 MPEG2 동영상 부호화기 블럭 구성도,1 is a block diagram of a typical MPEG2 video encoder block;

도2는 일반적인 MPEG2 동영상 부호화기의 비트율 제어부 블럭 구성도,2 is a block diagram of a block rate control unit of a typical MPEG2 video encoder;

도3은 종래 적응적 양자화기의 블럭 구성도,3 is a block diagram of a conventional adaptive quantizer;

도4a는 일반적인 매크로블럭의 프레임 구조 블럭을 보인 도면,4A is a view showing a frame structure block of a typical macro block;

도4b는 일반적인 매크로블럭의 필드 구조 블럭을 보인 도면.Figure 4b shows a field structure block of a typical macroblock.

도5는 본 발명에 의한 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기 블럭 구성도,5 is a block diagram of an adaptive quantizer block according to an encoding mode of a video encoder according to the present invention;

도6은 도5의 프레임 분산 처리부와 필드 분산 처리부의 내부 블럭 구성도,6 is a block diagram illustrating an internal block structure of the frame dispersion processing unit and the field dispersion processing unit of FIG. 5;

도7은 도5의 해당 구조의 변환부와 해당 구조의 블럭 분산 연산부 내부 블럭 구성도.7 is a block diagram of an internal block converting unit and a block distribution calculating unit of the corresponding structure shown in FIG.

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

100: 적응적 양자화 제어부 200: 프레임 분산 처리부100: adaptive quantization control unit 200: frame distribution processing unit

300: 필드 분산 처리부 400: 지연부300: field dispersion processing unit 400: delay unit

450: 감산기 500: DCT 모드 결정부450: subtractor 500: DCT mode determination unit

600: 블럭 분산 선택부600: block distribution selector

이하, 상기와 같은 본 발명에 의한 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기를 첨부된 도면에 의거 상세히 설명하면 다음과 같다.Hereinafter, the adaptive quantizer according to the encoding mode of the video encoder according to the present invention will be described in detail with reference to the accompanying drawings.

도5는 본 발명에 의한 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기 블럭 구성을 보인다.5 shows an adaptive quantizer block configuration according to an encoding mode of a video encoder according to the present invention.

도시된 바와 같이, 전송률 조정을 위해서 입력 매크로블럭 데이터를 프레임 구조에 대한 최소 블럭 분산을 구하는 프레임 분산 처리부(200)와; 상기 입력 매크로블럭 데이터를 필드 구조에 대한 최소 블럭 분산을 구하는 필드 분산 처리부(300)와; 상기 입력 매크로 블럭 데이터를 움직임 보상 및 추정에 필요한 시간만큼 지연시키는 지연부(400)와; 상기 지연부(400)의 출력 블럭과 움직임 예측된블럭과의 차이를 계산하는 감산기(450)와; 상기 감산기(450)의 출력값으로 DCT모드를 결정하는 DCT모드결정부(500)와; 상기 DCT 모드 결정부(500)에서 결정된 DCT모드에 따라, 상기 프레임 분산 처리부(200)의 출력과 상기 필드 분산 처리부(300)의 출력 중에서 일측 출력을 선택하는 블럭 분산 선택부(600)와; 상기 블럭 분산 선택부(600)에서 선택된 블럭 분산을 이용해서 입력 매크로블럭의 활동도를 구하여 정규화하는 활동도 처리부(700)와; 비디오 출력 버퍼(11)의 상태에 따라 양자화 레벨을 결정하는 양자화 레벨 결정부(900)와; 상기 양자화 레벨 결정부(900)에서 결정된 양자화 레벨과 상기 활동도 처리부(700)에서 정규화된 활동도를 곱하여 현재 매크로블럭의 최종 양자화 레벨을 결정하는 양자화 레벨 결정부(800)로 구성된다.As shown, the frame dispersion processing unit 200 for obtaining the minimum block variance of the input macroblock data for the frame structure for the rate adjustment; A field distribution processor (300) for obtaining a minimum block variance of the input macroblock data with respect to a field structure; A delay unit (400) for delaying the input macro block data by a time necessary for motion compensation and estimation; A subtractor 450 for calculating a difference between an output block of the delay unit 400 and a motion predicted block; A DCT mode determination unit 500 which determines a DCT mode using an output value of the subtractor 450; A block variance selecting unit (600) for selecting one side output from the output of the frame distribution processing unit (200) and the output of the field distribution processing unit (300) according to the DCT mode determined by the DCT mode determination unit (500); An activity processor 700 for obtaining and normalizing an activity of an input macroblock using the block variance selected by the block variance selector 600; A quantization level determiner 900 which determines a quantization level according to the state of the video output buffer 11; The quantization level determiner 900 is configured to multiply the quantization level determined by the activity processor 700 and the activity normalized by the quantization level determiner 800 to determine the final quantization level of the current macroblock.

상기 프레임 분산 처리부(200)는 도6에 도시된 바와 같이, 입력 매크로블럭의 형식을 프레임 구조의 4개의 블럭으로 나누는 프레임 구조 변환부(210)와; 상기 프레임 구조 변환부(210)에서 변환된 프레임 블럭의 분산을 연산하는 블럭 분산 연산부(220)로 구성된다.As shown in FIG. 6, the frame distribution processor 200 includes a frame structure converter 210 for dividing a format of an input macroblock into four blocks of a frame structure; The block structure calculator 220 is configured to calculate the variance of the frame block transformed by the frame structure converter 210.

상기 프레임 구조 변환부(210)는 도7에 도시된 바와 같이, 입력되는 매크로블럭 데이터의 프레임 구조형식 저장 및 인출을 제어하는 프레임 저장부 주소 조절부(211)와; 상기 프레임 저장부 주소 조절부(211)의 제어에 따라 매크로 블럭을 프레임 구조로 저장 및 인출하는 매크로블럭 저장부(212)로 구성된다.As shown in FIG. 7, the frame structure converting unit 210 includes a frame storage unit address adjusting unit 211 for controlling the storage and retrieval of the frame structure type of the input macroblock data; The macroblock storage unit 212 stores and retrieves a macroblock in a frame structure according to the control of the frame storage unit address adjusting unit 211.

상기 블럭 분산 연산부(220)는 도7에 도시된 바와 같이, 상기 프레임 구조 변환부(210)에서 출력되는 프레임 구조 블럭의 평균값을 매크로블럭 단위로 계산하는 블럭 평균값 연산부(221)와, 상기 블럭 평균 계산 소요 시간 만큼 상기 프레임구조 블럭 데이터를 지연시키는 블럭 데이터 지연부(222)와, 상기 블럭 평균값 연산부(221)에서 출력되는 블럭 평균값과 상기 지연된 프레임 구조 블럭 데이터를 이용하여, 매크로블럭 단위로 프레임 구조 블럭의 분산을 계산하는 데이터 연산부(223)와, 상기 데이터 연산부(223)에서 계산된 블럭 분산을 서로 비교하여 최소의 프레임구조 블럭 분산을 추출하고 현재 매크로블럭의 DCT 모드가 결정될 동안 지연시키는 분산 비교부(224)로 구성된다.As illustrated in FIG. 7, the block dispersion calculator 220 includes a block average value calculator 221 for calculating an average value of a frame structure block output from the frame structure converter 210 in units of macroblocks, and the block average. A frame structure in macroblock units using a block data delay unit 222 for delaying the frame structure block data by a calculation time and a block average value output from the block average value calculator 221 and the delayed frame structure block data. A variance comparison for extracting the minimum frame structure block variance by comparing the variance of data calculated by the data operator 223 and the block variance calculated by the data operator 223 with each other and delaying the DCT mode of the current macroblock. Section 224.

상기 필드 분산 처리부(300)는 도6에 도시된 바와 같이, 입력 매크로블럭의 형식을 필드 구조의 4개의 블럭으로 나누는 필드 구조 변환부(310)와; 상기 필드 구조 변환부(310)에서 변환된 필드 블럭의 분산을 연산하는 블럭 분산 연산부(320)로 구성된다.As shown in FIG. 6, the field distribution processor 300 includes: a field structure converter 310 for dividing a format of an input macroblock into four blocks of a field structure; The field structure converter 310 includes a block variance calculator 320 that calculates a variance of the field blocks converted by the field structure converter 310.

상기 필드 구조 변환부(310)는 도7에 도시된 바와 같이, 입력되는 매크로블럭 데이터의 필드 구조형식 저장 및 인출을 제어하는 필드 저장부 주소 조절부(311)와; 상기 필드 저장부 주소 조절부(311)의 제어에 따라 매크로 블럭을 필드 구조로 저장 및 인출하는 매크로블럭 저장부(312)로 구성된다.As shown in FIG. 7, the field structure converting unit 310 includes: a field storing unit address adjusting unit 311 which controls storing and retrieving field structure type of input macroblock data; The macro block storage unit 312 stores and retrieves macro blocks in a field structure under the control of the field storage unit address adjusting unit 311.

상기 블럭 분산 연산부(320)는 도7에 도시된 바와 같이, 상기 필드구조 변환부(310)에서 출력되는 필드 구조 블럭의 평균값을 매크로블럭 단위로 계산하는 블럭 평균값 연산부(321)와, 상기 블럭 평균 계산 소요 시간 만큼 상기 필드 구조 블럭 데이터를 지연시키는 블럭 데이터 지연부(322)와, 상기 블럭 평균값 연산부(321)에서 출력되는 블럭 평균값과 상기 지연된 필드 구조 블럭 데이터를 이용하여, 매크로블럭 단위로 필드 블럭의 분산을 계산하는 데이터 연산부(323)와,상기 데이터 연산부(323)에서 계산된 블럭 분산을 서로 비교하여 최소의 필드구조 블럭 분산을 추출하고 현재 매크로블럭의 DCT 모드가 결정될 동안 지연시키는 분산 비교부(324)로 구성된다.As illustrated in FIG. 7, the block variance calculator 320 includes a block average value calculator 321 for calculating an average value of the field structure block output from the field structure converter 310 in macroblock units, and the block average. By using the block data delay unit 322 for delaying the field structure block data by the time required for calculation, the block average value output from the block average value calculator 321 and the delayed field structure block data, the field block in macroblock units. A data comparator 323 for calculating the variance of the variance, and a variance comparator for comparing the block variances calculated by the data operator 323 with each other to extract the minimum field structure block variance and delaying the DCT mode of the current macroblock 324.

상기와 같은 본 발명에 의한 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기의 작용을 설명하면 다음과 같다.The operation of the adaptive quantizer according to the encoding mode of the video encoder according to the present invention as described above is as follows.

입력 영상이 움직임 추정 및 보상을 위해 입력되고, 부호화기에서는 가장 많은 지연 시간이 걸리는 움직임 추정 및 보상에 필요한 지연 시간을 맞추기 위해 프레임 메모리를 이용한 지연부(400)를 둔다. 여기에 필요한 지연 시간은 본 발명에 의한 적응적 양자화기에서 분산을 계산하기 위한 시간보다 클 수 밖에 없다. 따라서 본 발명은 지연시간에 의한 문제는 거의 없게 된다.The input image is input for motion estimation and compensation, and the encoder includes a delay unit 400 using a frame memory to adjust the delay time required for motion estimation and compensation, which takes the most delay time. The delay time required for this is inevitably larger than the time for calculating the variance in the adaptive quantizer according to the present invention. Therefore, the present invention almost eliminates the problem caused by the delay time.

그리고 입력 영상이 동시에 프레임 분산처리부와 필드 분산 처리부에 입력되면 각각에서 최소 분산을 계산하여 저장하고 있어야 한다. 이는 움직임 추정 및 보상부의 지연을 보상하기 위한 입력 영상에 대한 지연부의 지연 시간과 DCT 모드 결정부의 지연 시간만큼 기다려야 하기 때문이다. DCT 모드 결정부에서 결정이 끝나면 결과에 따라 프레임 또는 필드 구조의 최소 분산 중에 한 가지가 선택되어 활동도 처리부에서 정규화된 활동도를 계산하게 된다.If the input image is simultaneously input to the frame dispersion processor and the field dispersion processor, the minimum dispersion should be calculated and stored in each of them. This is because the delay time of the delay unit for the input image and the delay time of the DCT mode determination unit have to wait for the compensation of the delay of the motion estimation and compensation unit. After the decision is made by the DCT mode decision unit, one of the minimum variance of the frame or field structure is selected according to the result, and the activity processor calculates the normalized activity.

부호화될 매크로블럭 데이터를 동영상 부호화기 내 프레임 분산 처리부(200), 필드 분산 처리부(300), 지연부(400), 움직임 추정부(2)로 각각 입력받는다.The macroblock data to be encoded is input to the frame dispersion processor 200, the field dispersion processor 300, the delay unit 400, and the motion estimation unit 2 in the video encoder.

그러면 프레임 분산 처리부(200)와 필드 분산 처리부(300)는 도4a 및 도4b에 도시된 바와 같은 프레임 구조와 필드 구조로 재구성한다. 각 구조에 대해 매크로블럭이 각각 4개의 블럭으로 나누어지므로, 프레임 분산 처리부(200)와 필드 분산 처리부(300)는 각각 4개의 블럭 분산을 계산하여 블럭 분산 선택부(600)로 출력한다.Then, the frame dispersion processing unit 200 and the field dispersion processing unit 300 reconstruct the frame structure and the field structure as shown in FIGS. 4A and 4B. Since the macroblocks are divided into four blocks for each structure, the frame dispersion processor 200 and the field dispersion processor 300 each calculate four block variances and output the four block variances to the block variance selector 600.

한편 감산기(450)를 통한 매크로블럭 데이터를 이용하여 DCT 모드 결정부(500)는 부호화 모드인 DCT 모드를 결정한 후 블럭 분산 선택부(600)에 제공한다.Meanwhile, using the macroblock data through the subtractor 450, the DCT mode determiner 500 determines the DCT mode, which is an encoding mode, and provides the block dispersion selector 600.

그래서 블럭 분산 선택부(600)는 DCT 모드 결정부(500)에서 결정된 DCT 모드를 전송받아, 이 모드에 따라 해당 구조의 최소 분산을 선택하여 활동도 처리부(700)로 출력하며, 활동도 처리부(700)에서는 이 최소 분산을 이용하여 정규화된 활동도를 계산하게 된다.Therefore, the block variance selector 600 receives the DCT mode determined by the DCT mode determiner 500, selects the minimum variance of the corresponding structure according to the mode, and outputs it to the activity processor 700. 700) calculates the normalized activity using this minimum variance.

양자화 레벨 결정부(900)는 비트열 출력 버퍼(11)의 상태에 따라 양자화 레벨을 결정하여 양자화 레벨 결정부(800)에 제공한다. 그래서 양자화 레벨 결정부(800)는 정규화된 활동도와 양자화 레벨을 곱하여 현재 매크로블럭에 대한 최종 양자화 레벨을 조정해서 양자화부(6)로 출력하게 된다.The quantization level determiner 900 determines the quantization level according to the state of the bit string output buffer 11 and provides the quantization level determiner 800 to the quantization level determiner 800. Accordingly, the quantization level determiner 800 multiplies the normalized activity and the quantization level to adjust the final quantization level for the current macroblock and output the result to the quantization unit 6.

즉, 입력되는 매크로블럭 데이터가 압축 부호화를 위해 처리되는 동안 프레임과 필드 구조 각각에 대한 최소의 분산을 계산해 두고 있다가, DCT 모드가 결정되면 그 결과에 따라 한가지를 선택해서 활동도를 계산한 다음 최종 양자화 레벨을 결정하게 되는 것이다. 이에 부호화 모드를 고려하여 적응적 양자화를 수행할 수있게 되는 것이다.In other words, while the input macroblock data is processed for compression encoding, the minimum variance is calculated for each of the frame and field structures. When the DCT mode is determined, one activity is selected to calculate activity according to the result. The final quantization level will be determined. Accordingly, adaptive quantization can be performed in consideration of an encoding mode.

여기서, 프레임 분산 처리부(200)와 필드 분산 처리부(300) 및 블럭 분산 선택부(600)의 동작을 상세히 설명하면 다음과 같다.Herein, operations of the frame dispersion processing unit 200, the field dispersion processing unit 300, and the block distribution selecting unit 600 will be described in detail.

입력되는 매크로블럭 데이터는, 각각의 부호화 방법에 따라 적절한 블럭의 형식으로 나누어지기 위해, 프레임 저장부 주소 조절부(211)와 필드 저장부 주소 조절부(311)를 통해 해당 매크로블럭 저장부(212)(312)의 적절한 위치에 저장되고 블럭 주사 형식으로 읽혀진다.The macroblock data inputted through the frame storage unit address control unit 211 and the field storage unit address control unit 311 is divided into the macroblock storage unit 212 in order to be divided into appropriate block formats according to respective encoding methods. ) 312 is stored in an appropriate location and read in block scan format.

이때, 프레임 저장부 주소 조절부(211)는 프레임 구조 형식으로 블럭데이터를 읽어 내고, 필드 주소 조절부(311)는 필드 구조 형식으로 블럭데이터를 읽어낸다. 이렇게 읽혀진 프레임 구조 블럭 데이터는, 프레임 구조 블럭 분산 계산을 위한 블럭 평균값 연산부(221)로 입력되어 평균값이 블럭마다 구해진다. 또한 필드 저장부 주소 조절부(311)에 의해 읽혀진 필드 구조 블럭 데이터는, 필드 구조 블럭 분산 계산을 위한 블럭 평균값 연산부(321)로 입력되어 평균값이 블럭마다 구해진다. 이때 각 평균값 연산 과정에서 지연된 시간을 보상하기 위해 블럭 데이터 지연부(222)(322)가 필요하게 된다.At this time, the frame storage unit address adjusting unit 211 reads block data in a frame structure format, and the field address control unit 311 reads block data in a field structure format. The frame structure block data thus read is input to the block average value calculator 221 for calculating the frame structure block variance, and the average value is obtained for each block. The field structure block data read by the field storage unit address adjusting unit 311 is input to the block average value calculating unit 321 for field structure block variance calculation, and the average value is obtained for each block. In this case, block data delay units 222 and 322 are required to compensate for the delayed time in each average value calculation process.

이 과정을 통해 구해진 각 구조의 평균값과 각 블럭 데이터가 해당 데이터연산부(223)(323)로 입력되어, 감산과정과 승산과정을 통해 매크로블럭 당 각각 4개의 분산들이 계산되게 된다.The average value of each structure and each block data obtained through this process are input to the corresponding data calculation units 223 and 323, and four variances are calculated for each macroblock through the subtraction process and the multiplication process.

여기서 구해진 분산들은 각각 분산비교부(224)에서의 비교를 통해 최소값이 결정되고, 부호화 부분에서의 DCT 모드가 결정되기를 기다린다. 이후, DCT 모드가결정되면, 블럭 분산 선택부(600)에서 이 DCT 모드에 따라, 최소 프레임 분산과 최소 필드 분산 중에 한 가지를 결정하여 활동도 처리부(700)로 내보내게 된다. 즉, DCT 모드가 프레임 DCT일 경우에는 최소 프레임 분산이 매크로 블럭의 활동도를 구하기 위해 출력되고, DCT 모드가 필드 DCT일 경우에는 최소 필드 분산을 출력한다.The variances obtained here are each determined by comparing the minimum value in the dispersion comparison unit 224 and waiting for the DCT mode in the encoding portion to be determined. Then, when the DCT mode is determined, the block variance selector 600 determines one of the minimum frame variance and the minimum field variance according to the DCT mode, and sends it to the activity processor 700. That is, when the DCT mode is the frame DCT, the minimum frame variance is output to obtain the activity of the macroblock, and when the DCT mode is the field DCT, the minimum field variance is output.

이와 같이 분산을 계산하게 되면, 실제 부호화될 때 사용되는 프레임 또는 필드 구조에 대한 활동도가 계산되어 양자화 레벨이 결정되므로 주관적 화질을 기존의 방법보다 더 개선시킬 수 있는 것이다.When the variance is calculated in this way, the activity of the frame or field structure used in the actual encoding is calculated to determine the quantization level, thereby improving the subjective picture quality more than the conventional method.

이상에서 살펴본 바와 같이, 본 발명 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기는, 비월 주사 형식을 가지는 입력 영상을 압축할 때, 매크로블럭별 부호화 모드를 고려하여 영상의 복잡도를 판단하는 척도를 계산하여 양자화 레벨을 결정함으로써, 부호화 성능을 향상시키고 화질을 개선할 수 있도록 하는 효과가 있다.As described above, the adaptive quantizer according to the encoding mode of the video encoder of the present invention calculates a measure for determining the complexity of the image in consideration of the encoding mode for each macroblock when compressing the input image having the interlaced scan format. By determining the quantization level, it is possible to improve coding performance and to improve image quality.

Claims (7)

동영상 부호화기의 적응적 양자화기에 있어서,In the adaptive quantizer of the video encoder, 전송률 조정을 위해서 입력 매크로블럭 데이터를 프레임 구조에 대한 최소 블럭 분산을 구하는 프레임 분산 처리부와;A frame dispersion processing unit for obtaining a minimum block variance of the input macroblock data for the frame structure for the rate adjustment; 상기 입력 매크로블럭 데이터를 필드 구조에 대한 최소 블럭 분산을 구하는 필드 분산 처리부와;A field variance processor for obtaining a minimum block variance of the input macroblock data with respect to a field structure; 현재 부호화할 원영상과 움직임 보상 예측 영상과의 차신호를 이용해서 DCT모드를 결정하는 DCT모드결정부와;A DCT mode determination unit which determines a DCT mode by using a difference signal between an original image to be currently encoded and a motion compensation prediction image; 상기 DCT 모드 결정부에서 결정된 DCT모드에 따라, 상기 프레임 분산 처리부의 출력과 상기 필드 분산 처리부의 출력 중에서 일측 출력을 선택하는 블럭 분산 선택부와;A block variance selecting unit which selects one output from among the output of the frame distribution processing unit and the output of the field distribution processing unit according to the DCT mode determined by the DCT mode determination unit; 상기 블럭 분산 선택부에서 선택된 블럭 분산을 이용해서 입력 매크로블럭의 활동도를 구하여 정규화하는 활동도 처리부와;An activity processing unit which obtains and normalizes an activity of an input macroblock using the block variance selected by the block variance selecting unit; 비디오 출력 버퍼의 상태에 따라 양자화 레벨을 결정하는 양자화 레벨 결정부와;A quantization level determiner which determines a quantization level according to a state of a video output buffer; 상기 양자화 레벨 결정부에서 결정된 양자화 레벨과 상기 활동도 처리부에서 정규화된 활동도를 곱하여 현재 매크로블럭의 최종 양자화 레벨을 결정하는 양자화 레벨 결정부로 구성된 것을 특징으로 하는 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기.Adaptive quantization according to the encoding mode of the video encoder, characterized in that it consists of a quantization level determiner to determine the final quantization level of the current macroblock by multiplying the quantization level determined by the quantization level determiner and the activity normalized by the activity processor. group. 제 1 항에 있어서, 상기 프레임 분산 처리부는,The apparatus of claim 1, wherein the frame distribution processor 입력 매크로블럭의 형식을 프레임 구조의 4개의 블럭으로 나누는 프레임 구조 변환부와; 상기 프레임 구조 변환부에서 변환된 프레임 블럭의 분산을 연산하는 블럭 분산 연산부로 구성된 것을 특징으로 하는 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기.A frame structure conversion unit dividing a format of an input macro block into four blocks of a frame structure; Adaptive quantizer according to the encoding mode of the video encoder, characterized in that the block structure calculation unit for calculating the variance of the frame block transformed by the frame structure converter. 제 2 항에 있어서, 상기 프레임 구조 변환부는,The method of claim 2, wherein the frame structure conversion unit, 입력되는 매크로블럭 데이터의 프레임 구조형식 저장 및 인출을 제어하는 프레임 저장부 주소 조절부와; 상기 프레임 저장부 주소 조절부의 제어에 따라 매크로 블럭을 프레임 구조로 저장 및 인출하는 매크로블럭 저장부로 구성된 것을 특징으로 하는 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기.A frame storage unit address control unit which controls storage and retrieval of a frame structure type of input macroblock data; An adaptive quantizer according to an encoding mode of a video encoder, characterized by comprising a macroblock storage unit for storing and retrieving a macroblock in a frame structure under the control of the frame storage unit address adjusting unit. 제 2 항에 있어서, 상기 블럭 분산 연산부는,The method of claim 2, wherein the block dispersion calculator, 상기 프레임 구조 변환부에서 출력되는 프레임 구조 블럭의 평균값을 매크로블럭 단위로 계산하는 블럭 평균값 연산부와, 상기 블럭 평균 계산 소요 시간 만큼 상기 프레임 구조 블럭 데이터를 지연시키는 블럭 데이터 지연부와, 상기 블럭 평균값 연산부에서 출력되는 블럭 평균값과 상기 지연된 프레임 구조 블럭 데이터를이용하여, 매크로블럭 단위로 프레임 구조 블럭의 분산을 계산하는 데이터 연산부와, 상기 데이터 연산부에서 계산된 블럭 분산을 서로 비교하여 최소의 프레임구조 블럭 분산을 추출하고 현재 매크로블럭의 DCT 모드가 결정될 동안 지연시키는 분산 비교부로 구성된 것을 특징으로 하는 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기.A block average value calculating unit for calculating an average value of the frame structure blocks output from the frame structure converting unit in macroblock units, a block data delay unit delaying the frame structure block data by the block average calculation time, and the block average value calculating unit The minimum frame structure block variance is compared by comparing the data variance unit that calculates the variance of the frame structure block in units of macroblocks with the block average value output from the delayed frame structure block data and the block variance calculated by the data operation unit. Adaptive quantizer according to the encoding mode of the video encoder, characterized in that for extracting and delaying while the DCT mode of the current macroblock is determined. 제 1 항에 있어서, 상기 필드 분산 처리부는,The method of claim 1, wherein the field dispersion processing unit, 입력 매크로블럭의 형식을 필드 구조의 4개의 블럭으로 나누는 필드 구조 변환부와; 상기 필드 구조 변환부에서 변환된 필드 블럭의 분산을 연산하는 블럭 분산 연산부로 구성된 것을 특징으로 하는 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기.A field structure converting unit for dividing the format of the input macro block into four blocks of the field structure; Adaptive quantizer according to the encoding mode of the video encoder, characterized in that the block structure calculation unit for calculating the variance of the field block transformed by the field structure converter. 제 5 항에 있어서, 상기 필드 구조 변환부는,The method of claim 5, wherein the field structure conversion unit, 입력되는 매크로블럭 데이터의 필드 구조형식 저장 및 인출을 제어하는 필드 저장부 주소 조절부와; 상기 필드 저장부 주소 조절부의 제어에 따라 매크로 블럭을 필드 구조로 저장 및 인출하는 매크로블럭 저장부로 구성된 것을 특징으로 하는 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기.A field storage address control unit for controlling field structure format storage and retrieval of input macroblock data; An adaptive quantizer according to an encoding mode of a video encoder, characterized by comprising a macroblock storage unit for storing and retrieving a macroblock in a field structure under the control of the field storage unit address adjusting unit. 제 5 항에 있어서, 상기 블럭 분산 연산부는,The method of claim 5, wherein the block dispersion calculator, 상기 필드구조 변환부에서 출력되는 필드 구조 블럭의 평균값을 매크로블럭 단위로 계산하는 블럭 평균값 연산부와, 상기 블럭 평균 계산 소요 시간 만큼 상기 필드 구조 블럭 데이터를 지연시키는 블럭 데이터 지연부와, 상기 블럭 평균값 연산부에서 출력되는 블럭 평균값과 상기 지연된 필드 구조 블럭 데이터를 이용하여, 매크로블럭 단위로 필드 블럭의 분산을 계산하는 데이터 연산부와, 상기 데이터 연산부에서 계산된 블럭 분산을 서로 비교하여 최소의 필드구조 블럭 분산을 추출하고 현재 매크로블럭의 DCT 모드가 결정될 동안 지연시키는 분산 비교부로 구성된 것을 특징으로 하는 동영상 부호화기의 부호화 모드에 따른 적응적 양자화기.A block average value calculating unit for calculating an average value of the field structure blocks output from the field structure conversion unit in macroblock units, a block data delay unit for delaying the field structure block data by the block average calculation time, and the block average value calculating unit By using the block average value output from the block data and the delayed field structure block data, the data calculation unit for calculating the variance of the field block in macroblock units and the block variance calculated by the data operation unit are compared with each other to obtain the minimum field structure block variance. Adaptive quantizer according to the encoding mode of the video encoder, characterized in that for extracting and delaying while the DCT mode of the current macroblock is determined.
KR1020000025453A 2000-05-12 2000-05-12 Adaptive quantizer according to DCT mode in MPEG2 encoder KR20010104058A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000025453A KR20010104058A (en) 2000-05-12 2000-05-12 Adaptive quantizer according to DCT mode in MPEG2 encoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000025453A KR20010104058A (en) 2000-05-12 2000-05-12 Adaptive quantizer according to DCT mode in MPEG2 encoder

Publications (1)

Publication Number Publication Date
KR20010104058A true KR20010104058A (en) 2001-11-24

Family

ID=45811855

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000025453A KR20010104058A (en) 2000-05-12 2000-05-12 Adaptive quantizer according to DCT mode in MPEG2 encoder

Country Status (1)

Country Link
KR (1) KR20010104058A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100772391B1 (en) * 2006-01-23 2007-11-01 삼성전자주식회사 Method for video encoding or decoding based on orthogonal transform and vector quantization, and apparatus thereof
WO2008018708A1 (en) * 2006-08-09 2008-02-14 Samsung Electronics Co., Ltd. Image quantization method and apparatus
KR100850706B1 (en) * 2002-05-22 2008-08-06 삼성전자주식회사 Method for adaptive encoding and decoding motion image and apparatus thereof
KR100924779B1 (en) * 2008-01-15 2009-11-05 삼성전자주식회사 Method for adaptive encoding and decoding motion image and apparatus thereof
WO2012033343A2 (en) * 2010-09-07 2012-03-15 에스케이텔레콤 주식회사 Intra-prediction encoding/decoding apparatus and method for omitting the transmission of prediction mode information using characteristics of reference pixels

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100850706B1 (en) * 2002-05-22 2008-08-06 삼성전자주식회사 Method for adaptive encoding and decoding motion image and apparatus thereof
US7457471B2 (en) 2002-05-22 2008-11-25 Samsung Electronics Co.. Ltd. Method of adaptively encoding and decoding motion image and apparatus therefor
KR100772391B1 (en) * 2006-01-23 2007-11-01 삼성전자주식회사 Method for video encoding or decoding based on orthogonal transform and vector quantization, and apparatus thereof
WO2008018708A1 (en) * 2006-08-09 2008-02-14 Samsung Electronics Co., Ltd. Image quantization method and apparatus
US8045816B2 (en) 2006-08-09 2011-10-25 Samsung Electronics Co., Ltd. Image quantization method and apparatus with color distortion removing quantization matrix
KR100924779B1 (en) * 2008-01-15 2009-11-05 삼성전자주식회사 Method for adaptive encoding and decoding motion image and apparatus thereof
WO2012033343A2 (en) * 2010-09-07 2012-03-15 에스케이텔레콤 주식회사 Intra-prediction encoding/decoding apparatus and method for omitting the transmission of prediction mode information using characteristics of reference pixels
WO2012033343A3 (en) * 2010-09-07 2012-05-31 에스케이텔레콤 주식회사 Intra-prediction encoding/decoding apparatus and method for omitting the transmission of prediction mode information using characteristics of reference pixels

Similar Documents

Publication Publication Date Title
US9942570B2 (en) Resource efficient video processing via prediction error computational adjustments
JP3748717B2 (en) Video encoding device
KR100970315B1 (en) Transcoder and coded image conversion method
US8331449B2 (en) Fast encoding method and system using adaptive intra prediction
US7653129B2 (en) Method and apparatus for providing intra coding frame bit budget
US8406297B2 (en) System and method for bit-allocation in video coding
US20060227868A1 (en) System and method of reduced-temporal-resolution update for video coding and quality control
JP2963416B2 (en) Video encoding method and apparatus for controlling bit generation amount using quantization activity
US7095784B2 (en) Method and apparatus for moving picture compression rate control using bit allocation with initial quantization step size estimation at picture level
KR20030073254A (en) Method for adaptive encoding motion image based on the temperal and spatial complexity and apparatus thereof
US8451891B2 (en) Rate control method for video encoder using Kalman filter and FIR filter
KR20030090308A (en) Method for adaptive encoding and decoding motion image and apparatus thereof
US5844607A (en) Method and apparatus for scene change detection in digital video compression
EP1592257A1 (en) H.263/MPEG video encoder using average histogram difference and method for controlling the same
US7826529B2 (en) H.263/MPEG video encoder for efficiently controlling bit rates and method of controlling the same
JP5649296B2 (en) Image encoding device
KR100708182B1 (en) Rate control apparatus and method in video encoder
KR101086724B1 (en) ?? Deciding Method of H.264/AVC Encoder using Complexity of Frame, and H.264/AVC Encoder implementing the same
US7254176B2 (en) Apparatus for variable bit rate control in video compression and target bit allocator thereof
KR20010104058A (en) Adaptive quantizer according to DCT mode in MPEG2 encoder
KR100260702B1 (en) Method and apparatus for compressing and encoding imgae signals using human&#39;s visual characteristic
US7133448B2 (en) Method and apparatus for rate control in moving picture video compression
KR100566290B1 (en) Image Scanning Method By Using Scan Table and Discrete Cosine Transform Apparatus adapted it
JP3779066B2 (en) Video encoding device
KR100778473B1 (en) Bit rate control method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application