KR20010112555A - Apparatus and method for coding moving image using 2-dimensional history pool and sliding window - Google Patents

Apparatus and method for coding moving image using 2-dimensional history pool and sliding window Download PDF

Info

Publication number
KR20010112555A
KR20010112555A KR1020000031577A KR20000031577A KR20010112555A KR 20010112555 A KR20010112555 A KR 20010112555A KR 1020000031577 A KR1020000031577 A KR 1020000031577A KR 20000031577 A KR20000031577 A KR 20000031577A KR 20010112555 A KR20010112555 A KR 20010112555A
Authority
KR
South Korea
Prior art keywords
video
image
coding
quantization step
image frame
Prior art date
Application number
KR1020000031577A
Other languages
Korean (ko)
Other versions
KR100354434B1 (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 KR1020000031577A priority Critical patent/KR100354434B1/en
Publication of KR20010112555A publication Critical patent/KR20010112555A/en
Application granted granted Critical
Publication of KR100354434B1 publication Critical patent/KR100354434B1/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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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

Landscapes

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

Abstract

There is provided a distribution material for personal care products which is a fabric which wicks artificial menses according to a horizontal wicking test a distance of about 1 inch in less than about 1.5 minutes. Materials meeting this performance criteria generally have a pore size distribution with a high percentage (usually more than 50 percent) of pore diameters between about 80 and 400 microns and a density below about 0.15 g/cc. There is also provided a personal care product system having a distribution/retention layer and a pad shaping layer wherein each layer has a stain length ratio of 0.5 or less and the distribution/retention layer has a saturation profile of 4 or less.

Description

2차원 히스토리 풀과 슬라이딩 윈도우를 이용하는 동영상 코딩 장치 및 제어방법{APPARATUS AND METHOD FOR CODING MOVING IMAGE USING 2-DIMENSIONAL HISTORY POOL AND SLIDING WINDOW}Video coding apparatus and control method using 2D history pool and sliding window {APPARATUS AND METHOD FOR CODING MOVING IMAGE USING 2-DIMENSIONAL HISTORY POOL AND SLIDING WINDOW}

본 발명은 동영상 코딩에 있어서 2차원 히스토리 풀과 슬라이딩 윈도우를 이용한 3차원적 전송 제어가 가능한 동영상 코딩 장치 및 방법에 관한 것으로, 특히, 2차원 히스토리 풀에 과거의 코딩 결과를 가급적 많이 저장하고 이 중에서 코딩 하고자 하는 영상 프레임의 특성과 비슷한 데이터만을 선택하는 것에 의해 정확한 전송비트량을 예측할 수 있게 하는 3차원적 전송 제어가 가능한 동영상 코딩 장치 및 방법에 관한 것이다.The present invention relates to a video coding apparatus and method capable of three-dimensional transmission control using a two-dimensional history pool and a sliding window in video coding. In particular, the two-dimensional history pool stores as much of the past coding results as possible. The present invention relates to a video coding apparatus and method capable of three-dimensional transmission control that enables accurate prediction of the amount of transmission bits by selecting only data similar to characteristics of an image frame to be coded.

동영상 코딩에 있어서 영상 전송 방법에는 ATM 망 등에서 사용 가능한 가변비트율 전송 방법과, PSTN 망이나 무선전송 라인 등의 전송선로상의 제약으로 일정량 이상을 전송할 수 없는 경우에 사용되는 균일 비트율 전송 방법이 있다.Video coding methods include a variable bit rate transmission method that can be used in an ATM network and a uniform bit rate transmission method used when a predetermined amount or more cannot be transmitted due to constraints on transmission lines such as a PSTN network or a wireless transmission line.

현재에 주로 사용되는 방법은 균일 비트율 전송 방법으로서, 상기 방법은, 과거에 전송된 인코딩 결과를 이용하여 현재 전송하여야 할 영상 프레임의 특성을 예측하여 처리하는 피드백 회귀(Feedback Regression) 방법을 주로 사용하고 있으며, 이를 MPEG 전송비트 제어 방법으로도 사용하고 있다.The current method is a uniform bit rate transmission method. The method mainly uses a feedback regression method that predicts and processes characteristics of a video frame to be transmitted using an encoding result transmitted in the past. It is also used as a method for controlling MPEG transmission bits.

도 1 및 도 2를 참조하여 종래의 동영상 코딩 장치 및 전송률 제어 방법을 살펴보기로 한다.A video coding apparatus and a rate control method will be described with reference to FIGS. 1 and 2.

종래의 동영상 코딩 장치의 블록도인 도 1에 도시하듯이, 종래의 동영상 코딩 장치는 전송비트 결정부(10), 양자화 스텝 결정부(11), RD 모델 갱신부(12), 정보원 부호기(13), 비디오 신호 다중화 부호기(14), 송신 버퍼(15)를 포함한다.As shown in FIG. 1, which is a block diagram of a conventional video coding apparatus, the conventional video coding apparatus includes a transmission bit determiner 10, a quantization step determiner 11, an RD model updater 12, and an information source encoder 13 ), A video signal multiplexing encoder 14, and a transmission buffer 15.

상기 동영상 코딩 장치에서는, 정보원 부호기(13)가 이산적 코사인 변형(Discrete Cosine Transform; DCT), 양자화(Quantization; Q), 움직임 예측(Motion Estimation: ME) 및 보상(Motion Compensation: MC)을 수행하여 공간 축(Spatial) 방향과 시간 축(Temporal) 방향에서 영상 정보 압축(Image Date Compression)을 수행하며, 비디오 다중화 부호기(14)가 가변 길이 코딩(Variable Length Coding; VLC) 등을 수행하여 부호의 발생확률의 편중에 따른 엔트로피 부호화를 실시하며, 송신버퍼(15)가 이를 전송선로로 전송하여 인코딩을 수행하고, 상기 인코딩을 제어하기 위해, 상기 전송비트 결정부(10), 양자화 스텝 결정부(11), 레이트 디스톨션 (Rate Distortion: RD) 모델 갱신부(12)에서 전송률 제어(BitrateControl) 알고리즘을 이용하고 양자화 스텝(Quantization Step; Q) 값을 변경하는 것에 의해 전송비트의 제어를 행한다.In the video coding apparatus, the information source encoder 13 performs Discrete Cosine Transform (DCT), Quantization (Q), Motion Estimation (ME), and Motion Compensation (MC). Image Date Compression is performed in the spatial and temporal directions, and the video multiplexing encoder 14 performs variable length coding (VLC) to generate code. Entropy encoding is performed according to the bias of the probability, and the transmission buffer 15 transmits it to the transmission line to perform encoding, and in order to control the encoding, the transmission bit determiner 10 and the quantization step determiner 11 ), The Rate Distortion (RD) model updater 12 controls the transmission bits by using a BitrateControl algorithm and changing the Quantization Step (Q) value.

다음으로 상기 도 1의 종래의 동영상 코딩 장치에서의 전송률 제어방법을 도 2를 참조하여 보다 상세히 설명한다. 도 2는 종래의 MPEG-4 비디오 코딩에서의 전송률 제어 방법을 설명하는 블록도로서, 간단한 설명을 위해, 상기 도 1에서의 정보원 부호기(13), 비디오 신호 다중화 부호기(14), 송신버퍼(15)를 포함하여 인코딩부(20)로 표시하면, 종래의 동영상 코딩 장치는 전송비트 결정부(10), 양자화 스텝 결정부(11), 인코딩부(20), RD 모델 갱신부(12)를 포함하여 구성된다.Next, a method of controlling a rate in the conventional video coding apparatus of FIG. 1 will be described in more detail with reference to FIG. 2. FIG. 2 is a block diagram illustrating a method of controlling a rate in conventional MPEG-4 video coding. For simplicity, the information source encoder 13, the video signal multiplex encoder 14, and the transmission buffer 15 of FIG. ), The conventional video coding apparatus includes a transmission bit determiner 10, a quantization step determiner 11, an encoder 20, and an RD model updater 12. It is configured by.

먼저, 전송비트 결정부(10)에서는, 이전에 인코딩이 완료된 영상 프레임의 전송비트와 송신버퍼의 상태, 그리고 전송선로상의 타겟(target) 비트율 (bitrate)의 관계를 이용하여, 코딩하고자 하는 영상 프레임의 전송비트량을 결정한다. 타겟 비트량 설정은 송신버퍼의 점유상태를 고려하며 버퍼의 오버플로우(overflow)와 언더플로우(underflow)를 피하도록 설계되어 있다.First, the transmission bit determiner 10 uses a relationship between a transmission bit of a previously encoded video frame, a state of a transmission buffer, and a target bit rate on a transmission line, to be coded. Determine the transmission bit amount of. Target bit rate setting takes into account the occupied state of the transmission buffer and is designed to avoid overflow and underflow of the buffer.

다음으로 양자화 스텝 결정부(11)에서는, 전송비트 결정부(10)에서 결정된 타겟 비트량과, 정보원 부호기에서 수행하는 인코딩하고자 하는 영상 프레임의 복잡도(MPEG-4에서는 MAD: Sum of Absolute Difference)를 구하게 되면, 수학적 레이트 디스톨션(RD) 모델을 이용하여, 인코딩 하고자 하는 정보에 필요한 양자화 스텝(Q)을 결정하게 된다. 예로서, MPEG-4에서 주로 사용되는 RD 모델은 다음과 같다.Next, the quantization step determination unit 11 determines the target bit amount determined by the transmission bit determination unit 10 and the complexity of the video frame to be encoded (MAD: Sum of Absolute Difference in MPEG-4) performed by the information source encoder. In this case, the quantization step Q necessary for the information to be encoded is determined by using a mathematical rate distortion (RD) model. As an example, the RD model mainly used in MPEG-4 is as follows.

(1) (One)

여기서 Tframe은 코딩하고자 하는 영상의 타겟 비트량이며, MAD는 전송 영상의 복잡도, Q는 양자화 스텝, X1과 X2는 RD 모델 갱신 단계에서 결정되는 파라메타 값이다. 이와 같이 타겟 비트량이 결정되면 그에 해당하는 양자화 스텝을 상기 양자화 스텝 결정부(11)를 통해 결정하는 과정을 도 3에 도시하였다. 도 3은 RD 모델을 이용하여 타겟 비트량에 해당하는 양자화 스텝(Qp)을 결정하는 과정을 표시하는 그래프이다.Here, Tframe is a target bit amount of an image to be coded, MAD is a complexity of a transmission image, Q is a quantization step, and X 1 and X 2 are parameter values determined in an RD model update step. When the target bit amount is determined as described above, a process of determining the corresponding quantization step through the quantization step determination unit 11 is illustrated in FIG. 3. 3 is a graph showing a process of determining a quantization step Qp corresponding to a target bit amount using an RD model.

마지막으로 상기 양자화 스텝 결정부(11)에 의해 결정된 양자화 스텝을 이용하여 인코딩부(20)에서 인코딩이 이루어지면, RD모델 갱신부(12)에서, 양자화 스텝 결정부(11)에서 설정된 양자화 스텝(Q) 값을 이용하여 영상 프레임을 인코딩하여 전송할 때마다 실제 코딩 결과(전송 영상의 영상복잡도: MAD, 양자화 스텝: Q, 실제 발생 비트량: Bit)를 알 수 있게 된다.Finally, when encoding is performed in the encoding unit 20 by using the quantization step determined by the quantization step determination unit 11, in the RD model update unit 12, the quantization step set in the quantization step determination unit 11 ( Whenever an image frame is encoded and transmitted using the Q) value, the actual coding result (image complexity of the transmitted image: MAD, quantization step: Q, and actual generated bit amount: Bit) can be known.

이때 전송된 실제 비트량은 전송비트 결정부(10)에서 설정된 타겟 비트량과 오차가 있으므로, 정확한 양자화 스텝을 설정하기 위해 RD 모델을 갱신하는 과정이 주기적으로 필요하다. 따라서, RD모델 갱신부(12)에서는 과거에 실제로 인코딩 된 결과를 이용하여 코딩하고자 하는 영상에 적합한 양자화 스텝을 결정하기 위해 RD 모델을 갱신하게 된다. 예를 들어. MPEG-4에서는 수학식 (1) 에서 파라메타 X1과 X2결정한다.In this case, since the actual bit amount transmitted has an error with the target bit amount set by the transmission bit determiner 10, a process of updating the RD model periodically is necessary to set an accurate quantization step. Accordingly, the RD model updater 12 updates the RD model to determine a quantization step suitable for an image to be coded using the results of the actual encoding in the past. E.g. In MPEG-4, parameters X 1 and X 2 are determined in Equation (1).

상기 종래의 전송률 제어 방법에서의 RD 모델에 대한 갱신은, 도 2에 도시하듯이, 1차원 퍼스트 컴 퍼스트 서브(First Come First Serve: FCFS) 큐(21) 형식의히스토리 풀(History Pool)에 존재하는 정보를 이용한 회귀(Regression)을 통하여 수행된다. 1차원 FCFS 큐(21)에는 전송을 완료한 영상 프레임들에 대한 코딩 결과가 저장되어 있어, 그들을 이용하여 코딩 하고자 하는 영상 프레임의 양자화 스텝을 예측한다. 1차원 FCFS 큐(21)의 크기는 유한한 크기의 저장 공간(N개의 저장 공간)으로서 가변적으로 구성한다.The update of the RD model in the conventional rate control method, as shown in Figure 2, exists in the history pool in the form of a one-dimensional First Come First Serve (FCFS) queue 21. This is done through regression using information. The one-dimensional FCFS queue 21 stores coding results for the image frames that have been transmitted, and predicts the quantization step of the image frames to be coded using them. The size of the one-dimensional FCFS queue 21 is configured variably as a finite size of storage space (N storage spaces).

즉, 종래의 전송률 제어 방법은, 코딩하고자 하는 영상 프레임이 입력되면, 전송비트 결정부(10)에서 해당 영상에 적합한 타겟 전송비트를 결정하고, 양자화 스텝 결정부(11)에서 타겟 전송비트에 적합한 양자화 스텝을 결정하게 된다. 양자화 스텝은 미리 정해둔 RD 모델을 이용하여 정하는데, 예를 들어 MPEG-4의 경우에는 수학식 (1)을 RD 모델로 이용할 수 있다. 다음으로 양자화 스텝이 결정되면 해당 양자화 스텝(Q) 값을 이용하여 인코딩부(20)에서 입력영상을 인코딩하고, 그 결과로 발생된 비트열을 디코더 단으로 전송한다. 전송이 끝나면, 실제 전송 완료된 비트량을 알 수 있게 되는데 이를 상기 1차원 FCFS 큐(21)에 저장한 후 일정량(N개)의 코딩 결과를 이용하여 RD 모델의 파라메타 값을 회귀(Regression)를 이용하여 변경한 후, 이를 다음에 입력되는 영상의 양자화 스텝 결정부에서 이용한다. 예를 들어 MPEG-4에서는 수학식 (1)의 X1과 X2파라메타 값을 변경하게 될 것이다. 이와 같이 종래에서는 상기 방법을 반복적으로 수행 함으로서 전송률을 일정하게 제어할 수 있다.That is, in the conventional rate control method, when an image frame to be coded is input, the transmission bit determining unit 10 determines a target transmission bit suitable for the corresponding image, and the quantization step determination unit 11 matches the target transmission bit. The quantization step will be determined. The quantization step is determined using a predetermined RD model. For example, in the case of MPEG-4, Equation (1) can be used as the RD model. Next, when the quantization step is determined, the encoding unit 20 encodes the input image using the corresponding quantization step (Q) value, and transmits the resulting bit string to the decoder. After the transmission, it is possible to know the actual amount of transmitted bits, which are stored in the one-dimensional FCFS queue 21 and then regression the parameter values of the RD model using a certain amount (N) of coding results. After changing the data, it is used by the quantization step determination unit of the next input image. For example, MPEG-4 will change the X 1 and X 2 parameter values in Equation (1). As described above, in the related art, the transmission rate may be constantly controlled by repeatedly performing the method.

그러나, 상기 종래의 전송률 제어 방법은 다음과 같은 문제점이 있다.However, the conventional rate control method has the following problems.

종래의 전송률 제어 방법은 수학적인 RD 모델을 이용하며, 상술한 바와 같이1차원 FCFS 큐를 이용하여 사전에 코딩 완료된 전송 결과(영상복잡도:MAD, 처리한 양자화 스텝: Q, 양자화 스텝(Q) 값을 이용하여 인코딩 했을 때의 실제 발생 비트량: actual bit)를 이용하여, 해당 전송 결과를 가장 근접하게 만족할 수 있는 RD 모델을, 모델 파라메타를 변경 함으로서 결정하게 된다.Conventional rate control method uses a mathematical RD model, as described above using a one-dimensional FCFS queue, previously coded transmission results (image complexity: MAD, processed quantization step: Q, quantization step (Q) value) Using the actual bit (encoded by the actual bit) when the encoding is performed, the RD model that can most closely satisfy the transmission result is determined by changing the model parameter.

이때 현재 코딩 하고자 하는 영상의 특성이 1차원 FCFS 큐에 저장된 코딩 결과와 매우 다른 경우, 또한 비슷한 코딩 결과가 과거에도 존재했지만 1차원 FC FS 큐의 크기가 N개로 제한된 관계로 해당 전송 결과를 저장하지 못했을 경우에는, 코딩 하고자 하는 영상 특성을 처리하지 못하여 적합하지 못한 양자화 스텝을 결정하는 경우가 종종 발생하게 된다. 이 경우, 잘못 적용된 양자화 스텝을 이용하여 인코딩을 수행하게 되며, 그 결과 과도한 전송비트를 발생하게 된다. 만약 발생 비트량이 송신버퍼의 용량을 초과하게 되는 경우에는, 송신 버퍼의 점유율을 낮추기 위하여 다음에 전송하려는 영상의 코딩을 중단(skip)해야 하는 문제가 발생한다.At this time, if the characteristic of the image to be currently coded is very different from the coding result stored in the one-dimensional FCFS queue, the similar transmission result is existed in the past but the transmission result is not saved because the size of the one-dimensional FC FS queue is limited to N. If not, it often fails to process the image characteristic to be coded and determines an inappropriate quantization step. In this case, encoding is performed using an incorrectly applied quantization step, resulting in excessive transmission bits. If the amount of generated bits exceeds the capacity of the transmission buffer, a problem arises in that coding of an image to be transmitted next must be skipped in order to lower the occupancy of the transmission buffer.

상기 종래의 전송률 제어방법에 따른 RD 모델, 상기 RD 모델에 의해 결정된 양자화 스텝과 실제 전송비트량의 관계를 도 4에 도시한다.4 shows a relationship between the RD model according to the conventional rate control method, the quantization step determined by the RD model, and the actual amount of transmission bits.

상기 도 4에서는 종래의 전송률 제어방법으로서 MEPG-4 전송률 제어 방법을 이용하여 영상 프레임의 인코딩을 수행한 경우로써, 1차원 FCFS 큐, 즉 1차원 히스토리 풀의 데이터[복잡도(Mad), 양자화 스텝(Qp), 발생 비트량(Actual Bits)로서 그래프에서는 ""으로 표시됨], 그에 따른 RD 모델(그래프에서 곡선으로 표시됨), RD 모델에 의해 결정된 양자화 스텝(그래프에서 8로 표시됨), 타겟 비트량(약 5400 비트), 실제 전송비트량 (2560비트로서 그래프에서는 ""로 표시됨)의 관계를 나타내고 있다.In FIG. 4, when the encoding of the image frame is performed using the MEPG-4 rate control method as a conventional rate control method, the data (complexity (Mad), quantization step (1) of one-dimensional FCFS queue, that is, one-dimensional history pool ( Qp), the actual bits are shown in the graph as " Indicated by "", the resulting RD model (shown as a curve in the graph), the quantization step determined by the RD model (shown as 8 in the graph), the target bit amount (about 5400 bits), the actual amount of transmitted bits (graphed as 2560 bits) In " Is indicated by "."

상기 도에서 알 수 있듯이, 실제 코딩 결과가 RD 모델을 이용한 예측치와 많은 차이를 나타내고 있으며, 이는 코딩 하려는 영상 프레임의 특성과 히스토리 풀의 저장 내용이 많은 차이를 보여 RD 모델 예측이 잘못되었기 때문이다. 즉 코딩 하려는 영상 프레임의 특성이 1차원 히스토리 풀에 저장된 코딩 결과와 매우 달라서, RD 모델 갱신 과정에서 외삽(Extrapolation)이 수행되었기 때문이다.As can be seen from the figure, the actual coding result shows a large difference from the prediction value using the RD model, because the characteristics of the image frame to be coded and the storage contents of the history pool show a lot of difference, so that the RD model prediction is incorrect. That is, because the characteristics of the image frame to be coded are very different from the coding result stored in the 1-dimensional history pool, extrapolation was performed during the RD model update process.

RD 모델 갱신 과정에서 외삽(Extrapolation)이 발생하는 경우는 장면 전환과 같은 경우이며, 이는 코딩 하고자 하는 영상의 특성과 비슷한 영상 특성을 가진 정보가 1차원 히스토리 풀에 존재하지 않아서 발생된다. 수학적으로 외삽이 발생하는 경우의 예측 정확도는, 보간(Interpolation)시의 예측 정확도에 비하여 현저히 떨어진다. 이를 도 5a-5d에 나타내었다. 도 5a 및 5c는 각각 외삽 및 보간이 수행된 경우의 양자화 스텝(Qp)과 발생 및 예측 비트량의 관계를 나타내는 그래프들이며, 도 5b 및 5d는 영상복잡도(Mad)로 본 외삽 및 보간을 나타내는 그래프들이다. 상기 도 5a 및 5c에서 외삽이 발생한 경우의 예측 비트량과 발생 비트량 차이가 보간이 발생한 경우의 예측 비트량과 발생 비트량 차이보다 큰 것을 알 수 있으며, 상기 도 5b 및 5d에서도 비슷한 결과를 나타내는 것을 알 수 있다. 즉, 외삽의 경우 발생 비트량은 보간 시 발생된 비트량과 비교하여 정확도가 현저히 떨어지는 것을 알 수 있다.Extrapolation occurs in the process of updating the RD model, which is the same as scene change, which is generated because information having image characteristics similar to those of the image to be coded does not exist in the one-dimensional history pool. The prediction accuracy when extrapolation occurs mathematically is significantly lower than the prediction accuracy at the time of interpolation. This is shown in Figures 5a-5d. 5A and 5C are graphs showing the relationship between the quantization step Qp and the generation and prediction bit amounts when extrapolation and interpolation are performed, respectively. FIGS. 5B and 5D are graphs showing extrapolation and interpolation viewed in image complexity (Mad). admit. It can be seen that the difference between the predicted bit amount and the generated bit amount when the extrapolation occurs in FIGS. 5A and 5C is greater than the difference between the predicted bit amount and the generated bit amount when the interpolation occurs, and similar results are also shown in FIGS. 5B and 5D. It can be seen that. That is, in the case of extrapolation, it can be seen that the generated bit amount is significantly lower in accuracy compared to the bit amount generated during interpolation.

이와 같이 코딩 하고자 하는 영상 프레임의 특성이 코딩 완료되어 1차원 히스토리 풀에 저장된 결과와 현저히 다르다면, RD 모델 갱신 후 양자화 스텝 결정단계에서 외삽이 수행 되어야 하고, 이는 보간 수행 시의 결과와 비교하여 정확도가 현저히 떨어지는 문제점이 있다.If the characteristics of the image frame to be coded are significantly different from the result of being coded and stored in the one-dimensional history pool, extrapolation should be performed in the quantization step determination step after updating the RD model, which is compared with the result when performing interpolation. There is a problem that falls significantly.

상술한 바와 같이, 종래의 전송률 제어 방법에서는 여러 가지의 수학적인 레이트 디스톨션 (Rate Distortion: RD) 모델을 이용한 회귀(Regression)를 수행하며, 이는 동영상의 특징이 비슷하거나 시간적으로 서서히 변화할 때는 효과가 있지만, 장면 전환 등의 급격하게 영상의 특징이 변화하는 경우에 있어서는 과거 정보를 바탕으로 한 수학적인 RD 모델을 적용할 수 없게 되어 예상되는 전송량과 부합하지 않는 정보량을 전송하게 된다.As described above, the conventional rate control method performs regression using various mathematical rate distortion (RD) models, which is effective when the characteristics of the video are similar or gradually change in time. However, in the case of a sudden change in the characteristics of an image such as a scene change, a mathematical RD model based on past information cannot be applied, thereby transmitting an amount of information that does not match the expected amount of transmission.

따라서, 사용자의 조작이나 전송선로 상의 문제로 인하여 급변하는 멀티미디어 환경이나 영상 특징이 급격히 변화하는 경우에 상기 전송률 제어 방법을 적용한다면 전송환경에 적극적인 대처를 할 수 없게 되므로, 종래의 간단한 수학적 RD 모델을 이용한 피드백 방식의 전송률 제어 방법의 개선이 요구된다.Therefore, if the rate control method is applied to a rapidly changing multimedia environment or a video characteristic due to a user's manipulation or a problem on a transmission line, it is impossible to actively cope with the transmission environment. It is required to improve the rate control method of the feedback method.

본 발명의 목적은 상기 종래의 문제점을 개선하는 것으로서, 급변하는 멀티미디어 환경이나 영상 특징이 급격히 변화하는 경우에도 전송 환경에 적극적으로 대처할 수 있고, 예상되는 전송량과 부합된 정보량을 전송함으로써 효율적인 영상 정보의 전송을 가능하게 하는 동영상 코딩 장치 및 제어 방법을 제공하는데 있다.SUMMARY OF THE INVENTION An object of the present invention is to improve the above-mentioned problems, and can actively cope with a transmission environment even when a rapidly changing multimedia environment or a video characteristic changes rapidly, and transmits an amount of information that meets an expected amount of transmission. The present invention provides a video coding apparatus and a control method for enabling transmission.

도 1은 종래의 동영상 코딩 장치의 블록도.1 is a block diagram of a conventional video coding apparatus.

도 2는 종래의 MPEG-4 비디오 코딩 장치에서의 전송률 제어 방법을 설명하는 블록도.2 is a block diagram for explaining a rate control method in a conventional MPEG-4 video coding apparatus.

도 3은 상기 도 2에서의 양자화 스텝 결정 단계를 설명하는 그래프.3 is a graph for explaining a quantization step determination step in FIG.

도 4는 종래의 전송률 제어방법에 따른 RD 모델, 상기 RD 모델에 의해 결정된 양자화 스텝과 실제 전송률의 관계를 나타내는 도면.4 is a diagram illustrating a relationship between an RD model according to a conventional rate control method, a quantization step determined by the RD model, and an actual rate.

도 5a-5d는 외삽과 보간이 수행된 경우의 양자화 스텝 결정 단계들을 설명하는 그래프들..5A-5D are graphs illustrating quantization step determination steps when extrapolation and interpolation are performed.

도 6a는 실제 영상들을 인코딩하여 도출된, 영상복잡도 (MAD), 양자화 스텝(Qp)과 실제 발생 비트량(BIT)의 관계를 3차원 좌표에 도시한 도면.FIG. 6A shows the relationship between the image complexity (MAD), the quantization step (Qp) and the actual amount of generated bit (BIT), derived by encoding real images, in three-dimensional coordinates. FIG.

도 6b는 상기 도 6a를 간략화하여 도시한 도면.FIG. 6B is a simplified view of FIG. 6A.

도 7은 본 발명에 따른 2차원 히스토리 풀과, 입력 영상의 복잡도에 따른 슬라이딩 윈도우, 슬라이딩 윈도우 내의 데이터를 저장하는 워킹 히스토리부들간의관계를 설명하는 도면.7 is a view illustrating a relationship between a two-dimensional history pool, a sliding window according to the complexity of an input image, and a working history unit for storing data in the sliding window according to the present invention.

도 8a는 본 발명의 일 실시예에 따른 3차원 전송률 제어방법의 각 단계들을 도식화한 도면.8A is a diagram illustrating each step of the three-dimensional rate control method according to an embodiment of the present invention.

도 8b는 상기 도 8b의 결과를 나타내는 그래프.8B is a graph showing the results of FIG. 8B.

도 9는 본 발명의 일 실시예에 따른 동영상 코딩 장치의 블록도.9 is a block diagram of a video coding apparatus according to an embodiment of the present invention.

도 10은 본 발명의 일 실시예에 따른 동영상 코딩 장치에서의 전송률 제어방법을 설명하는 블록도.10 is a block diagram illustrating a method of controlling a rate in a video coding apparatus according to an embodiment of the present invention.

도 11 및 12는 각각 본 발명에 따른 동영상 코딩 장치에서의 제어방법과 종래의 방법에 따른 인코딩 결과를 비교하는 그래프 및 도표.11 and 12 are graphs and diagrams for comparing encoding results of a control method and a conventional method in a video coding apparatus according to the present invention, respectively.

상기 목적을 달성하기 위하여, 본 발명의 한 측면에 따르면, 동영상 코딩 장치는, 과거에 전송된 영상 프레임의 코딩 결과를 이용하여 현재 전송할 영상 프레임의 전송률을 제어하는 동영상 인코딩 장치에 있어서, 영상 프레임에 적합한 전송비트의 양자화 스텝을 이용하여 인코딩을 수행하는 인코딩부; 상기 인코딩부에 의해 인코딩이 완료된 이전 영상 프레임의 전송비트량과 송신버퍼의 상태, 전송선로상의 타겟 비트율을 이용하여 코딩하고자 하는 영상 프레임의 전송비트량을 결정하는 전송비트 결정부; 상기 인코딩부에 의해 발생된 상기 이전 영상 프레임의 코딩 결과를 M개의 구간으로 나누어서 각각 저장하는, 각각이 N개의 저장장소를 포함하는 M개의 1차원 히스토리 풀(1-dimensional history pool)을 포함하는 2차원 히스토리 풀(2-dimensional history pool); 상기 전송비트 결정부에 의해 결정된 코딩하고자 하는 영상 프레임의 특성과 비슷한 특성을 가진 코딩 결과들을 슬라이딩 윈도우(sliding window)를 이용하여 상기 2차원 히스토리 풀에서 추출하여 저장하는 워킹 히스토리부(working history); 상기 워킹 히스토리부에 저장된 코딩 결과를 이용하여 수학적 레이트 디스톨션(Rate distortion: RD) 모델을 갱신하는 레이트 디스톨션(RD) 모델 갱신부; 상기 RD 모델 갱신부에 의해 갱신된 RD 모델을 이용하여 코딩하고자 하는 영상 프레임의 양자화 스텝을 결정하는 양자화 스텝 결정부를 포함한다.In order to achieve the above object, according to an aspect of the present invention, the video coding apparatus, in the video encoding apparatus for controlling the transmission rate of the video frame to be transmitted currently using the coding result of the video frame transmitted in the past, An encoding unit which performs encoding using a quantization step of suitable transmission bits; A transmission bit determining unit for determining a transmission bit amount of an image frame to be coded by using the transmission bit amount of a previous image frame, which has been encoded by the encoding unit, a state of a transmission buffer, and a target bit rate on a transmission line; 2 including M 1-dimensional history pools each containing N storage locations, each of which stores the coding result of the previous image frame generated by the encoding unit into M intervals. 2-dimensional history pool; A working history unit for extracting and storing coding results having characteristics similar to those of an image frame to be coded by the transmission bit determiner from the two-dimensional history pool using a sliding window; A rate distortion (RD) model updater for updating a mathematical rate distortion (RD) model using a coding result stored in the working history unit; And a quantization step determiner configured to determine a quantization step of an image frame to be coded using the RD model updated by the RD model updater.

본 발명의 다른 측면에 의하면, 동영상 코딩 장치의 전송률 제어 방법은, 과거에 전송된 영상 프레임의 코딩 결과를 이용하여 현재 전송할 영상 프레임의 전송률을 제어하는 동영상 인코딩 장치의 제어방법에 있어서, 영상 프레임에 적합한 전송비트의 양자화 스텝을 이용하여 인코딩을 수행하는 제1 단계; 상기 제1 단계에 의해 인코딩이 완료된 이전 영상 프레임의 전송비트량과 송신버퍼의 상태, 전송선로상의 타겟 비트율을 이용하여 코딩하고자 하는 영상 프레임의 전송비트량을 결정하는 제2 단계; 상기 제1 단계에 의해 발생된 상기 이전 영상 프레임의 코딩 결과를 M개의 구간으로 나누어서, 각각이 N개의 저장장소를 가진 M개의 1차원 히스토리 풀을 포함하는 2차원 히스토리 풀(history pool) 중, 자신의 코딩 결과에 해당하는 M 개의 구간에 속한 상기 2차원 히스토리 풀의 상기 N 개의 1차원 히스토리 풀에 저장하는 제3 단계; 슬라이딩 윈도우(sliding window)를 이용하여 상기 제2 단계에 의해 결정된 코딩하고자 하는 영상 프레임의 특성과 비슷한 특성을 가진 코딩 결과들을 상기 2차원 히스토리 풀에서 추출하여, 또 다른 1차원 히스토리 풀인 워킹 히스토리부(working history)에 저장하는 제4 단계; 상기 워킹 히스토리부에 저장된 코딩 결과를 이용하여 수학적 레이트 디스톨션(Rate distortion: RD) 모델을 갱신하는 제5 단계; 상기 제5 단계에 의해 갱신된 RD 모델을 이용하여 코딩하고자 하는 영상 프레임의 양자화 스텝을 결정하는 제6 단계를 포함한다.According to another aspect of the present invention, a method for controlling a transmission rate of a video coding apparatus is a control method of a video encoding apparatus that controls a data rate of a video frame to be transmitted currently by using a coding result of a video frame transmitted in the past. A first step of performing encoding using a suitable quantization step of transmission bits; A second step of determining the amount of transmission bits of an image frame to be coded using the amount of transmission bits of the previous image frame in which the encoding is completed in the first step, the state of the transmission buffer, and the target bit rate on the transmission line; A coding result of the previous image frame generated by the first step is divided into M sections, and among the two-dimensional history pools each including M one-dimensional history pools having N storage locations, A third step of storing in the N one-dimensional history pools of the two-dimensional history pools belonging to M intervals corresponding to the coding result of the? By using a sliding window, coding results having characteristics similar to those of the image frame to be coded determined by the second step are extracted from the two-dimensional history pool, and a working history unit which is another one-dimensional history pool. storing in a working history; Updating a mathematical rate distortion (RD) model using a coding result stored in the working history unit; And a sixth step of determining a quantization step of an image frame to be coded using the RD model updated by the fifth step.

본 발명의 다른 측면에 의하면, 동영상 인코딩 장치의 전송률 제어 방법은, 과거에 전송된 영상 프레임의 코딩 결과를 이용하여 RD 모델을 갱신하고 양자화 스텝을 결정하는 것에 의해 전송할 영상 프레임의 전송을 제어하는 동영상 인코딩 장치의 전송률 제어 방법에 있어서, 상기 과거에 전송된 영상 프레임의 코딩 결과를 획득한 후, 전송할 영상 프레임의 특성과 비슷한 특성을 가진 상기 코딩 결과만을 이용하여 상기 RD 모델을 갱신함으로써, 외삽(extrapolation)의 수행을보간(interpolations)의 수행으로 전환하는 것에 의해 영상 프레임의 전송을 제어한다.According to another aspect of the present invention, a method for controlling a rate of a video encoding apparatus includes: controlling a transmission of a video frame to be transmitted by updating an RD model and determining a quantization step by using coding results of video frames transmitted in the past. In a method of controlling a rate of an encoding apparatus, after acquiring a coding result of an image frame transmitted in the past, extrapolation is performed by updating the RD model using only the coding result having characteristics similar to those of the image frame to be transmitted. Control of the transmission of the video frame by switching from the execution of the interpolation to the execution of interpolations.

다음으로 도면들을 참조하여 본 발명의 바람직한 일 실시예에 따른 동영상 코딩에서의 전송률 제어 장치 및 제어 방법을 설명한다.Next, a rate control apparatus and a control method in video coding according to an exemplary embodiment of the present invention will be described with reference to the drawings.

본 발명은, 종래의 1차원 히스토리 풀을 이용한 RD 모델 예측을 통한 동영상 코딩에 있어서, 코딩 하고자 하는 영상의 특성이 기록된 코딩 결과와 크게 다른 경우 외삽(Extrapolation)이 발생하게 되어 예측 오차가 매우 크게 나타나는 것을 방지하기 위해서, 가급적 많은 과거의 코딩 결과를 기록하여 RD 모델 예측에 이용하는 것을 특징으로 하며, 이를 위해 종래와는 달리 다수의 1차원 히스토리 풀로 구성된 2차원 히스토리 풀을 이용하는 것을 특징으로 한다.According to the present invention, in the coding of a video through RD model prediction using a conventional one-dimensional history pool, when the characteristic of the image to be coded is significantly different from the recorded coding result, extrapolation occurs and a prediction error is very large. In order to prevent it from appearing, it is characterized by recording as many past coding results as possible and using them for RD model prediction, and for this purpose, it is characterized by using a two-dimensional history pool composed of a plurality of one-dimensional history pools.

즉, 본 발명에서는, 인코딩 결과 중 영상복잡도에 따라 구분된 M개의 1차원 히스토리 풀을 포함하는 2차원 히스토리 풀을 설정한 후, 슬라이딩 윈도우(Sliding Window)를 사용하여 현재 코딩 하려는 영상 프레임의 특성과 비슷한 특성을 가진 데이터를 상기 2차원 히스토리 풀에서 추출하여, 이를 또 다른 1차원 히스토리 풀에 저장한다. 본 발명에서는 상기 1차원 히스토리 풀을 워킹 히스토리부(working history pool)라 칭한다.That is, in the present invention, after setting the two-dimensional history pool including M one-dimensional history pool divided according to the image complexity among the encoding results, using the sliding window and the characteristics of the image frame to be currently coded Data with similar characteristics are extracted from the two-dimensional history pool and stored in another one-dimensional history pool. In the present invention, the one-dimensional history pool is called a working history pool.

본 발명에서는 2차원 히스토리 풀을, 도 6a 및 6b에 도시하듯이, 실제 영상들을 인코딩하여 도출된 영상복잡도(Mad), 양자화 스텝(Qp), 실제 발생 비트량(Bit)을 이용하여 설정한다. 상기 도 6a는 실제 영상들을 인코딩하여 도출된, 영상복잡도 (MAD), 양자화 스텝(Qp)과 실제 발생 비트량(Bit)의 관계를 3차원좌표에 도시한 도면이며, 도 6b는 상기 도 6a를 간략화하여 도시한 도면이다.In the present invention, as shown in Figs. 6A and 6B, the two-dimensional history pool is set using the image complexity (Mad), the quantization step (Qp), and the actual generated bit amount (Bit) derived by encoding the actual images. FIG. 6A illustrates a relationship between an image complexity (MAD), a quantization step (Qp), and an actual bit amount (Bit) derived by encoding real images in 3D coordinates, and FIG. 6B illustrates FIG. 6A. The figure is simplified and shown.

상기와 같이 설정되는 2차원 히스토리 풀의 구성을 도 7에 도시한다. 도 7은 본 발명에 따른 2차원 히스토리 풀과, 입력 영상의 복잡도에 따른 슬라이딩 윈도우, 슬라이딩 윈도우 내의 데이터를 저장하는 워킹 히스토리부들간의 관계를 설명하는 도면이다.The configuration of the two-dimensional history pool set as described above is shown in FIG. 7 is a view illustrating a relationship between a two-dimensional history pool, a sliding window according to the complexity of an input image, and a working history unit for storing data in the sliding window according to the present invention.

상기 도 7에서 알 수 있듯이, 본 발명에서는 시스템 구성의 복잡도를 줄이기 위하여 코딩시 발생되는 영상복잡도를 M개의 구간으로 나누고, 각각의 구간에 N개의 저장장소를 둔 퍼스트 컴 퍼스트 서버 큐(First Come First Serve Queue) 형식의 M개의 1차원 히스토리 풀을 포함하는 2차원 히스토리 풀을 구성한다.As can be seen from FIG. 7, in the present invention, the first complexity first server queue (First Come First) having M storage intervals divided into M sections and N storage locations in each section to reduce the complexity of the system configuration. It configures a 2D history pool that contains M 1D history pools in the form of Serve Queue).

본 발명에 따른 2차원 히스토리 풀을 이용하여 RD 모델을 갱신하기 위해서는, 먼저 코딩된 영상의 영상복잡도(Mad)에 해당하는 구간의 1차원 히스토리 풀을 선택하여 해당하는 1차원 히스토리 풀에 현재 코딩된 결과를 삽입해 두어야 한다. 다음으로, 코딩 하고자 하는 영상의 복잡도를 파악한 후, 슬라이딩 윈도우(Sliding window)를 사용하는 것에 의해, 이와 유사한 영상복잡도를 가진 코딩 결과를 상기 2차원 히스토리 풀에서 추려 내어, 또 다른 1차원 히스토리 풀, 즉 워킹 히스토리부에 저장하는 것에 의해 RD 모델을 갱신한다.In order to update the RD model using the two-dimensional history pool according to the present invention, first select the one-dimensional history pool of the section corresponding to the image complexity (Mad) of the coded image is currently coded in the corresponding one-dimensional history pool You should insert the result. Next, after grasping the complexity of the image to be coded, by using a sliding window, a coding result having a similar image complexity is extracted from the two-dimensional history pool, another one-dimensional history pool, That is, the RD model is updated by storing in the working history section.

다음으로, 도 9 및 10을 참조하여, 본 발명의 바람직한 일 실시예에 따른 동영상 코딩 장치 및 제어 방법을 설명한다.Next, a video coding apparatus and a control method according to an exemplary embodiment of the present invention will be described with reference to FIGS. 9 and 10.

도 9는 본 발명에 따른 동영상 코딩 장치의 블록도로서. 동 도에 도시하듯이, 본 발명에 따른 동영상 코딩 장치는 정보원 부호기(96), 비디오 신호 다중화부호기(97), 송신 버퍼(98)를 포함하는 종래의 동영상 코딩 장치에 있어서, 2차원 히스토리 풀(90), 전송비트 결정부(91), 워킹 히스토리부(92), RD 모델 갱신부(93), 양자화 스텝 결정부(94), 2차원 히스토리 갱신부(95)를 더 포함하여 구성된다. 상기 정보원 부호기(96), 비디오 신호 다중화 부호기(97), 송신 버퍼(98)는 상술한 바와 같이 입력된 영상신호의 인코딩을 수행한다.9 is a block diagram of a video coding apparatus according to the present invention. As shown in the figure, a video coding apparatus according to the present invention is a conventional video coding apparatus including an information source encoder 96, a video signal multiplexing encoder 97, and a transmission buffer 98. 90), the transmission bit determining unit 91, the working history unit 92, the RD model updating unit 93, the quantization step determination unit 94, and the two-dimensional history updating unit 95 are further included. The information source encoder 96, the video signal multiplexing encoder 97, and the transmission buffer 98 perform encoding of the input video signal as described above.

먼저, 상기 2차원 히스토리 풀(90)은 상술한 바와 같이 실제 인코딩 결과 도출된 코딩된 영상복잡도(Mad), 양자화 스텝(Qp), 실제 발생 비트량(Bit)를 데이터로서 N개의 저장장소에 저장하고 있는 M개의 1차원 히스토리 풀을 포함하고 있다.First, the two-dimensional history pool 90 stores the coded image complexity Mad, the quantization step Qp, and the actual generated bit amount Bit as data in N storage locations as described above. It contains M one-dimensional history pools.

상기 전송비트 결정부(91)에서는, 이전 프레임에서 실제로 인코딩이 완료된 후에 발생된 비트량과 송신버퍼 상태, 그리고 전송선로상의 타겟(target) 비트율 (bitrate)의 관계를 이용하여 코딩 하고자 하는 영상 프레임의 전송비트량을 결정한다. 현재 프레임의 타겟 비트량 설정은 송신버퍼의 점유상태를 고려하며 버퍼의 오버플로우(overflow)와 언더플로우(underflow)를 피하도록 설계하는 것이 바람직하다.In the transmission bit determiner 91, an image frame to be coded using the relationship between the bit amount generated after the encoding is actually completed in the previous frame, the transmission buffer state, and the target bitrate on the transmission line is selected. Determine the transmission bit amount. The target bit amount setting of the current frame takes into account the occupied state of the transmission buffer and is preferably designed to avoid overflow and underflow of the buffer.

상기 워킹 히스토리부(92)는 영상복잡도 구간별로 과거의 코딩 결과가 저장된 2차원 히스토리 풀(90)로부터, 코딩 하고자 하는 영상의 영상복잡도와 비슷한 특징을 갖는 코딩 결과를 슬라이딩 윈도우를 이용하여 추출하여 저장하며, 그 과정은 다음과 같다.The working history unit 92 extracts and stores a coding result having a feature similar to the image complexity of an image to be coded by using a sliding window from a two-dimensional history pool 90 in which past coding results are stored for each image complexity section. The process is as follows.

먼저, 슬라이딩 윈도우를 이용하여 상기 2차원 히스토리 풀(90)에서 필요한 인코딩 결과의 데이터만을 선택하기 위해서는, 히스토리 풀에 있는 데이터들과 코딩 하려는 영상 프레임의 복잡도 간의 차(difference)를 구하고, 그 차가 소정의 범위 내에 있는 것만을 추출하여 워킹 히스토리부(92)에 저장한다.First, in order to select only the data of the encoding result necessary in the 2D history pool 90 using the sliding window, a difference between the data in the history pool and the complexity of the image frame to be coded is obtained, and the difference is predetermined. Only those within the range of are extracted and stored in the working history section 92.

만일 상기 워킹 히스토리부(92)를 구성하는 인코딩 결과가 적다면, 상기 히스토리 풀의 데이터와 코딩 하려는 영상 프레임의 복잡도 간의 차의 기준이 되는 상기 소정의 범위를 크게 하는 것에 의해, 워킹 히스토리부(92)에 포함되는 데이터의 수를 늘릴 수 있다. 이렇게 함으로써, 워킹 히스토리부(92)의 데이터가 적어 RD 모델 예측이 불가능하게 되는 것을 방지할 수 있다.If the encoding result constituting the working history section 92 is small, the working history section 92 is increased by increasing the predetermined range which is a reference between the data of the history pool and the complexity of the video frame to be coded. ), You can increase the number of data included. By doing so, it is possible to prevent the working history section 92 from having less data and making the RD model prediction impossible.

다음으로, 워킹 히스토리부(92) 내에 상기 추출한 데이터들을 코딩 완료된 순서대로 정렬한다.Next, the extracted data is arranged in the working history unit 92 in the order of coding completion.

이 때, 상기 워킹 히스토리부(92) 내의 데이터 중에 양자화 스텝에 해당하는 값이 한 개의 값으로 편중되는 경우가 발생하게 되면, 상기 소정의 범위를 크게 하는 것에 의해, 하나의 값으로 편중되어 있는 양자화 스텝에 해당하는 데이터를 교체하여, 양자화 스텝의 편중화를 방지할 수 있다.At this time, when the value corresponding to the quantization step is biased to one value in the data in the working history section 92, the predetermined range is enlarged to quantize the value to be biased to one value. By replacing the data corresponding to the step, it is possible to prevent the biasing of the quantization step.

마지막으로, 워킹 히스토리부(92)에서는 저장되어 있는 데이터 중에서, 가장 최근에 코딩된 영상 특성과 유사하지 않는 정보는 제거한다. 이러한 정보를 제거하는 방법으로서는, 예를 들어, 가장 최근에 코딩된 두개의 프레임의 영상 특성 정보를 이용하여, 그들의 특성과 매우 다른 특성을 갖는 저장 정보의 값들을 제거하는 방법이 있으며, 다음과 같이 수행된다.Finally, the working history unit 92 removes information that is not similar to the most recently coded image characteristic from the stored data. As a method of removing such information, for example, by using the image characteristic information of the two most recently coded frames, there is a method of removing values of stored information having characteristics very different from those of the following. Is performed.

1. 워킹 히스토리부(92)에 있는 모든 데이터에 대해 영상 특성 비율을 결정한다. 영상 특성 비율(RATIOi)이란, 실제 전송비트량 (Bit), 양자화 스텝 (Qp)과 영상복잡도(Mad)간의 관계를 말하며, 수학식 (2)를 이용하여 구한다.1. The image characteristic ratio is determined for all the data in the working history section 92. The image characteristic ratio RATIO i refers to a relationship between the actual transmission bit amount Bit, the quantization step Q p and the image complexity Mad, and is obtained using Equation (2).

(2) (2)

2. 다음으로 가장 최근에 코딩된 두 개의 영상 특성 비율(RATIO) 값의 평균을 수학식 (3)을 이용하여 구한다.2. Next, the average of the two most recently coded RATIO values is calculated using Equation (3).

(3) (3)

3. 상기 비율(RATIO)에 대한 편차를 수학식 (4) 및 (5)를 이용하여 구한다.3. Deviation from the ratio RATIO is obtained using equations (4) and (5).

Sum=Sum +(RATIOi-RATIOAve) (4)Sum = Sum + (RATIOi-RATIO Ave ) (4)

Sigma=Sqrt(Sum/n) (5)Sigma = Sqrt (Sum / n) (5)

4. 만일, ABS(RATIOi-RATIOAve)율이 상기 sigma 보다 작으면, 즉 최근에 코딩된 영상 특성 비율과 비슷하면, 워킹 히스토리부(92)에 잔존 시키며, 그렇지 않으면 제거한다.4. If the ABS (RATIOi-RATIO Ave ) rate is less than the sigma, that is, similar to the recently coded image characteristic ratio, it remains in the working history section 92, otherwise it is removed.

상기 RD모델 갱신부(93)는, 상기 위킹 히스토리부(92)에 저장된 데이터를 이용하여, 코딩 하고자 하는 영상에 적합한 양자화 스텝을 결정하기 위해, 회귀(Regression)와 아우트라인 제거(Remove outliner) 과정을 수행하는 것에 의해 RD 모델을 갱신한다.The RD model updating unit 93 uses a data stored in the wicking history unit 92 to perform a regression and remove outliner process to determine a quantization step suitable for an image to be coded. Update the RD model by doing

상기 양자화 스텝 결정부(94)는, 타겟 비트량과 영상 프레임의 복잡도 그리고 RD 모델 갱신부(93)에서 결정된 RD 모델을 이용하여, 코딩 하고자 하는 영상 프레임에 적합한 양자화 스텝(Q)을 결정하며, 이에 따라 정보원 부호기(96), 비디오 신호 다중화 부호기(97), 송신버퍼(98)에 의해 영상이 인코딩된 후 전송선로로 전송된다. 이 때, 양자화 스텝 결정부(94)는, 이전 영상의 양자화 스텝의 크기와 일정한 값 이상, 예를 들어, 약+25% 이상 차이가 나지 않도록 양자화 스텝을 결정하는 것이 바람직하다. 그러나, 이전 프레임과 현재 프레임의 영상복잡도가 일정한 값 이상의 차이를 보일 경우, 즉 영상 특성차가 매우 클 경우에는 양자화 스텝 결정부(94)에서 결정된 양자화 스텝을 그대로 인정한다.The quantization step determiner 94 determines a quantization step Q suitable for an image frame to be coded by using the target bit amount, the complexity of the image frame, and the RD model determined by the RD model updater 93. Accordingly, the image is encoded by the information source encoder 96, the video signal multiplexing encoder 97, and the transmission buffer 98 and then transmitted to the transmission line. In this case, the quantization step determination unit 94 preferably determines the quantization step so that there is no difference between the magnitude of the quantization step of the previous image by more than a predetermined value, for example, about + 25% or more. However, when the image complexity of the previous frame and the current frame shows a difference of more than a predetermined value, that is, when the image characteristic difference is very large, the quantization step determined by the quantization step determiner 94 is recognized as it is.

이 때, 영상을 인코딩을 수행하여 전송 선로상으로 전송한 후에는, 실제 전송비트량을 알 수 있게 되므로, 상기 2차원 히스토리 풀 갱신부(95)에서는, 전송된 영상 프레임의 영상복잡도와 인코딩에 사용된 양자화 스텝 그리고 실제 발생 비트량을, 영상복잡도 구간별로 나뉘어진 2차원 히스토리 풀(90) 중 영상복잡도를 기준으로 하여 포함된 1차원 히스토리 풀 중 적절한 1차원 히스토리 풀에 저장하여 2차원 히스토리 풀(90)을 갱신한다.At this time, after the image is encoded and transmitted on the transmission line, the actual amount of transmission bits can be known. Therefore, the two-dimensional history pool updating unit 95 determines the image complexity and encoding of the transmitted image frame. The used quantization step and the actual generated bit amount are stored in an appropriate one-dimensional history pool among the one-dimensional history pools included based on the image complexity among the two-dimensional history pools 90 divided by the image complexity interval, and the two-dimensional history pool. Update 90.

다음으로 상기 본 발명에 따른 동영상 코딩 장치를 보다 간략히 도시하는 도 10을 참조하여 본 발명에 따른 동영상 코딩 장치에서의 제어 방법을 설명한다. 도 10에서는 간단한 설명을 위해 상기 정보원 부호기(96), 비디오 신호 다중화 부호기(97), 송신 버퍼(98)를 인코딩부(100)로 표시한다.Next, a control method of the video coding apparatus according to the present invention will be described with reference to FIG. 10, which illustrates the video coding apparatus according to the present invention. In FIG. 10, the information source encoder 96, the video signal multiplexing encoder 97, and the transmission buffer 98 are represented by the encoding unit 100 for a brief description.

도 10에 도시하듯이, 코딩 하고자 하는 영상 프레임이 입력되면, 전송비트 결정부(91)에서 해당영상에 적합한 타겟 전송비트량을 결정하고, 인코딩부(100)에서 결정된 영상복잡도를 이용하여, 2차원 히스토리 풀(90)에 저장되어 있는 과거에 이미 코딩된 결과 중에서 코딩 하고자 하는 영상과 유사한 영상 특성을 갖는 인코딩 결과만을 슬라이딩 윈도우를 이용하여 추출하여 워킹 히스토리부(92)에 저장한다. 다음으로 RD 모델 갱신부(93)는 워킹 히스토리부(92)에 기록된 데이터를 이용하여 RD 모델을 갱신하며, 양자화 스텝 결정부(94)는 양자화 스텝을 결정하면 인코딩부(100)에서 해당 양자화 스텝을 이용하여 입력 영상을 인코딩 한다. 이 후, 인코딩이 완료되면, 2차원 히스토리 풀 갱신부(95)가 상기 인코딩 결과 발생된 실제 발생 비트량을 이용하여 2차원 히스토리 풀(90)을 갱신하게 된다.As shown in FIG. 10, when an image frame to be coded is input, the transmission bit determining unit 91 determines a target transmission bit amount suitable for the corresponding image and uses the image complexity determined by the encoding unit 100 to determine 2. Only encoding results having image characteristics similar to those to be coded among the previously coded results stored in the dimensional history pool 90 are extracted using the sliding window and stored in the working history unit 92. Next, the RD model updating unit 93 updates the RD model using the data recorded in the working history unit 92, and when the quantization step determination unit 94 determines the quantization step, the encoding unit 100 determines the corresponding quantization. The step is used to encode the input image. After the encoding is completed, the two-dimensional history pool updater 95 updates the two-dimensional history pool 90 by using the actual amount of bits generated as a result of the encoding.

다음으로 상기와 같은 본 발명의 동영상 코딩 장치의 제어 방법의 일 예를 도 8a 및 8b를 참조하여 설명한다. 도 8a에 도시하듯이, 본 발명에 따른 2차원 히스토리 풀(90)에서 현재의 영상복잡도(본 실시예에서는 Mad=4.98973)와 비슷한 영상복잡도에 해당하는 인코딩 결과 데이터를 슬라이딩 윈도우를 이용하여 추출하여 워킹 히스토리부(92)에 저장한 후 RD 모델을 갱신한다. RD 모델을 갱신 후에는 양자화 스텝(Qp)을 결정하고 해당하는 양자화 스텝을 이용하여 인코딩을 행한다. 상기 과정을 통해 수행된 인코딩 결과는 도 8b을 통해 알 수 있다.Next, an example of a control method of the video coding apparatus of the present invention as described above will be described with reference to FIGS. 8A and 8B. As shown in FIG. 8A, in the two-dimensional history pool 90 according to the present invention, encoding result data corresponding to a video complexity similar to the current video complexity (Mad = 4.98973 in this embodiment) is extracted using a sliding window. The RD model is updated after storing in the working history unit 92. After updating the RD model, the quantization step Qp is determined and encoding is performed using the corresponding quantization step. The encoding result performed through the above process can be seen through FIG. 8B.

도 8b에서, "o"는 2차원 히스토리 풀(90)에 저장된 데이터이고, ""는 코딩 하고자 하는 영상의 영상복잡도와 유사한 코딩 특성을 갖는 데이터들로서 슬라이딩 윈도우에 의해 선택되어 워킹 히스토리부(92)에 저장된 데이터를 나타내며, 곡선은 상기 데이터들을 이용하여 갱신된 RD 모델을 지수함수로서 나타낸다. 상기 도는 현재 타겟 비트량은 약 5000 비트로 하여 이에 해당하는 양자화 스텝을 8로 결정하는 과정을 나타내는 것으로써, 해당 양자화 스텝을 이용하여, 인코딩을 수행한 결과로 발생된 비트량은 약 4500 비트(""로서 표시됨)로서, RD 모델 갱신 시 보간이 수행됨을 알 수 있고 또한 코딩 결과도 타겟 비트량과 유사한 양의 비트가발생됨을 알 수 있다.In FIG. 8B, "" is data stored in the two-dimensional history pool 90, and "" "Represents data stored in the working history section 92 selected by the sliding window as data having coding characteristics similar to the image complexity of the image to be coded, and a curve indicates an exponential function of the updated RD model using the data. The figure illustrates a process of determining a corresponding quantization step as 8 with a current target bit amount of about 5000 bits, and the bit amount generated as a result of encoding by using the quantization step is about 4500 bits. (" It can be seen that interpolation is performed when updating the RD model, and that the coding result also generates an amount of bits similar to the target bit amount.

다음으로 도 11 및 12를 참조하여, 상기 본 발명에 따른 동영상 코딩 장치의 제어방법에 따른 인코딩 결과와 종래 방법에 따른 인코딩 결과를 비교하기로 한다.Next, referring to FIGS. 11 and 12, the encoding result according to the control method of the video coding apparatus according to the present invention and the encoding result according to the conventional method will be compared.

도 11은 본 발명에 따른 동영상 코딩 장치의 제어방법과 종래의 방법에 따른 동영상 코딩 장치의 제어방법의 코딩 결과를 비교하는 그래프이다. 상기 도 11에서, "o"는 2차원 히스토리 풀(90)에 저장된 데이터를, ""는 워킹 히스토리부(92)에 저장된 데이터를, ""는 종래의 방법, 예를 들어, MPEG-4에서 제안한 전송비트율 제어 방식에서의 히스토리 풀 데이터를, 실선의 곡선은 본 발명에 따라서 갱신된 RD 모델을, 점선의 곡선은 종래의 방법에 따라 갱신된 RD 모델을, ""는 본 발명에 따른 갱신된 RD 모델을 이용하여 수행된 인코딩 결과(약 5,000비트)를, "◆"는 종래의 방법에 의해 수행된 인코딩 결과(약 6,300 비트)를 나타낸다. 상기 도에서 알 수 있듯이, 본 발명에 따라 수행된 인코딩 결과가 종래에 비해서 타깃 비트(약 5,000비트)와 근접한 비트량을 전송하였으며, 따라서 본 발명에 따른 동영상 제어 방법이 종래에 비해서 보다 정확한 실제 발생 비트량을 예측할 수 있음을 알 수 있다.11 is a graph comparing coding results of a method for controlling a video coding apparatus according to the present invention and a method for controlling a video coding apparatus according to a conventional method. In FIG. 11, "(o)" denotes data stored in the two-dimensional history pool 90, " "Denotes data stored in the working history section 92," "Is the conventional method, for example, the historical full data in the transmission bit rate control scheme proposed in MPEG-4, the solid line curve is updated according to the present invention, the dotted line curve is updated according to the conventional method RD model, " "Represents an encoding result (about 5,000 bits) performed using the updated RD model according to the present invention, and" ◆ "represents an encoding result (about 6,300 bits) performed by the conventional method. As shown, the encoding result performed according to the present invention transmits a bit amount closer to the target bit (about 5,000 bits) than the conventional one, and thus the video control method according to the present invention can predict the actual generated bit amount more accurately than the conventional one. It can be seen that.

도 12는 본 발명에 따른 동영상 코딩 장치의 제어방법(3DRC)과 종래의 MPEG-4의 전송률 제어방법(MPEG-4 VM으로 표시)에 따른 코딩 결과를 비교하는 도표이다.12 is a chart comparing coding results according to a control method (3DRC) of a video coding apparatus according to the present invention and a transmission rate control method (expressed as MPEG-4 VM) of a conventional MPEG-4.

상기 도 12에서는 48kbits/second의 전송환경에서 뉴스(news), 사일런트(silent), 포맨(foreman) 등의 다양한 시퀀스들을 전송할 때의 전송 결과를, 프레임당 전송된 비트량(Ave.Bits/Vop), 피크 신호 대 노이즈 비(Peak Signalto Noise Ratio: PSNR), 프레임 중지를 가지고 비교한다. 상기 프레임 중지(Frame Skip)란, 비트율 제어를 제대로 할 수 없어서 영상을 전송할 수 없는 경우를 말한다. 상기 도에 도시하듯이, 예를 들어, 사일런트 시퀀스를 전송하는 경우, 본 발명이 종래에 비해서 전송환경과 근접한 평균 전송비트량(Ave.Bit/Vop)과, 보다 높은 PSNR, 적은 프레임 중지를 나타내고 있으므로, 본 발명에 따른 제어 방법이 종래에 비해서 화질은 향상되면서도 보다 정확하게 비트량을 전송하고 있음을 알 수 있다.In FIG. 12, the amount of bits transmitted per frame (Ave.Bits / Vop) is shown as a result of transmitting various sequences such as news, silent, and forman in a transmission environment of 48 kbits / second. The peak signal-to-noise ratio (PSNR) and frame stop are compared. The frame skipping refers to a case in which an image cannot be transmitted because the bit rate control cannot be properly performed. As shown in the figure, for example, when transmitting a silent sequence, the present invention shows an average transmission bit amount (Ave. Bit / Vop), higher PSNR, and fewer frame stops, which are closer to the transmission environment than in the prior art. Therefore, it can be seen that the control method according to the present invention transmits the bit amount more accurately while improving the image quality compared with the conventional art.

본 발명은 상기와 같은 구성에 의해, 사용자의 조작이나 전송선로 상의 문제로 인하여 급변하는 멀티미디어 환경이나 영상 특징이 급격히 변화하는 경우에 있어서도 전송환경에 적극적인 대처를 할 수 있게 되므로, 정확한 전송량을 예측하여 화질이 우수하면서도 우수한 영상 정보의 전송을 가능하게 하는 효과를 발생한다.According to the above-described configuration, even when the multimedia environment or the image characteristics rapidly change due to a user's operation or a problem on the transmission line, the present invention can proactively cope with the transmission environment. It produces an effect that enables the transmission of excellent image information while having excellent image quality.

Claims (25)

과거에 전송된 영상 프레임의 코딩 결과를 이용하여 현재 전송할 영상 프레임의 전송률을 제어하는 동영상 인코딩 장치에 있어서,In the video encoding apparatus for controlling the transmission rate of the video frame to be transmitted currently by using the coding result of the video frame transmitted in the past, 영상 프레임에 적합한 전송비트의 양자화 스텝을 이용하여 인코딩을 수행하는 인코딩부;An encoding unit which performs encoding by using a quantization step of transmission bits suitable for an image frame; 상기 인코딩부에 의해 인코딩이 완료된 이전 영상 프레임의 전송비트량과 송신버퍼의 상태, 전송선로상의 타겟 비트율을 이용하여 코딩하고자 하는 영상 프레임의 전송비트량을 결정하는 전송비트 결정부;A transmission bit determining unit for determining a transmission bit amount of an image frame to be coded by using the transmission bit amount of a previous image frame, which has been encoded by the encoding unit, a state of a transmission buffer, and a target bit rate on a transmission line; 상기 인코딩부에 의해 발생된 상기 이전 영상 프레임의 코딩 결과를 M개의 구간으로 나누어서 각각 저장하는, 각각이 N개의 저장장소를 포함하는 M개의 1차원 히스토리 풀(1-dimensional history pool)을 포함하는 2차원 히스토리 풀(2-dimensional history pool);2 including M 1-dimensional history pools each containing N storage locations, each of which stores the coding result of the previous image frame generated by the encoding unit into M intervals. 2-dimensional history pool; 상기 전송비트 결정부에 의해 결정된 코딩하고자 하는 영상 프레임의 특성과 비슷한 특성을 가진 코딩 결과들을 슬라이딩 윈도우(sliding window)를 이용하여 상기 2차원 히스토리 풀에서 추출하여 저장하는 워킹 히스토리부(working history pool);A working history unit for extracting and storing coding results having characteristics similar to those of an image frame to be coded by the transmission bit determiner from the two-dimensional history pool using a sliding window. ; 상기 워킹 히스토리부에 저장된 코딩 결과를 이용하여 수학적 레이트 디스톨션(Rate distortion: RD) 모델을 갱신하는 레이트 디스톨션(RD) 모델 갱신부;A rate distortion (RD) model updater for updating a mathematical rate distortion (RD) model using a coding result stored in the working history unit; 상기 RD 모델 갱신부에 의해 갱신된 RD 모델을 이용하여 코딩하고자 하는 영상 프레임의 양자화 스텝을 결정하는 양자화 스텝 결정부A quantization step determiner that determines a quantization step of an image frame to be coded using the RD model updated by the RD model updater. 를 포함하는 동영상 코딩 장치.Video coding device comprising a. 제 1 항에 있어서,The method of claim 1, 상기 동영상 코딩 장치는,The video coding device, 상기 2차원 히스토리 풀에 저장된 이미 전송된 영상 프레임의 코딩 결과를 갱신하는 2차원 히스토리 풀의 갱신부An update unit of a 2D history pool for updating a coding result of an already transmitted image frame stored in the 2D history pool 를 더 포함하는 동영상 코딩 장치.Video coding device further comprising. 제 1 항 또는 제 2 항에 있어서,The method according to claim 1 or 2, 상기 워킹 히스토리부는 1차원 히스토리 풀이며,The working history portion is a one-dimensional history pool, 상기 1차원 히스토리 풀은 퍼스트 컴 퍼스트 서브(first come first serve) 큐 형식인The one-dimensional history pool is a first come first serve queue format. 동영상 코딩 장치.Video coding device. 제 2 항에 있어서,The method of claim 2, 상기 2차원 히스토리 풀에 저장되는 코딩 결과에는, 전송된 영상 프레임의 영상복잡도, 상기 영상 프레임의 인코딩에 사용된 양자화 스텝 및 코딩 결과 발생된 실제 비트량이 포함되며,The coding result stored in the 2D history pool includes an image complexity of a transmitted image frame, a quantization step used for encoding the image frame, and an actual amount of bits generated as a result of the coding. 상기 코딩 결과는 상기 영상 프레임의 영상복잡도에 따라서 M 구간으로 나뉘어지는The coding result is divided into M sections according to the image complexity of the image frame. 동영상 코딩 장치.Video coding device. 제 4 항에 있어서,The method of claim 4, wherein 상기 워킹 히스토리부는,The working history unit, 상기 2차원 히스토리 풀에 저장된 코딩 결과와 코딩하려는 영상 프레임간의 복잡도의 차가 소정의 범위 내에 있는 상기 2차원 히스토리 풀에 저장된 코딩 결과들을 추려내고, 상기 추려진코딩 결과를 코딩 완료된 순서대로 저장하며, 상기 저장된 코딩 결과 중에서 가장 최근에 코딩된 영상 프레임의 특성과 비교하여 소정의 범위 내에 있지 않는 코딩 결과는 제거하는Extracts coding results stored in the two-dimensional history pool having a difference in complexity between coding results stored in the two-dimensional history pool and an image frame to be coded within a predetermined range, and stores the estimated coding results in a coded order; Among the stored coding results, a coding result that is not within a predetermined range compared to a characteristic of the most recently coded image frame is removed. 동영상 코딩 장치.Video coding device. 제 5 항에 있어서,The method of claim 5, 상기 2차원 히스토리 풀에 저장된 코딩 결과와 코딩하려는 영상 프레임간의 복잡도의 상기 소정의 차 범위는, 상기 워킹 히스토리부에 저장될 코딩 결과들의 양자화 스텝에 해당하는 값이 한 개의 값으로 편중되지 않고, 상기 워킹 히스토리부에 포함된 코딩 결과가 상기 RD 모델을 예측할 수 있는 범위로 설정되는The predetermined difference range of the complexity between the coding result stored in the two-dimensional history pool and the image frame to be coded is not biased by a value corresponding to a quantization step of the coding results to be stored in the working history part. The coding result included in the working history unit is set to a range capable of predicting the RD model. 동영상 코딩 장치.Video coding device. 제 6 항에 있어서,The method of claim 6, 상기 워킹 히스토리부는, 가장 최근에 코딩된 두 개의 영상 프레임의 영상 특성 비율을 이용하여, 상기 영상 특성 비율과 비교하여 소정의 범위 내에 포함되지 않는 특성을 가진 저장된 코딩 값을 제거하는The working history unit removes a stored coding value having a characteristic not included in a predetermined range compared to the image characteristic ratio by using the image characteristic ratio of the two most recently coded image frames. 동영상 코딩 장치.Video coding device. 제 7 항에 있어서,The method of claim 7, wherein 상기 영상 특성 비율은, 코딩된 영상의 실제 전송비트량, 양자화 스텝과 영상복잡도와의 관계를 이용하여 수학식 (1)로 구하며, 상기 수학식 (1)은The image characteristic ratio is obtained using Equation (1) using the relationship between the actual transmission bit rate of the coded image, the quantization step and the image complexity, and Equation (1) 이며, 상기에서 RATIOi는 i번째 코딩된 영상의 영상 특성 비율을 말하며, Bit는 실제 전송비트량이며, Qp는 양자화 스텝, Mad는 영상복잡도를 나타내며,In the above, RATIOi refers to the video characteristic ratio of the i-th coded image, Bit is the actual transmission bit amount, Qp is the quantization step, Mad is the video complexity, 상기 소정의 범위는,The predetermined range is 상기 가장 최근에 코딩된 두 개의 영상 특성 비율 값들의 평균과 편차를 수학식 (2)∼(4)으로 구한 후, 상기 결과 값들이 수학식 (5)의 조건을 만족하면 상기 워킹 히스토리부에 잔존시키며,After the average and the deviation of the two most recently coded image characteristic ratio values are obtained by equations (2) to (4), if the result values satisfy the condition of equation (5), they remain in the working history part. And 상기 수학식 (2)는,Equation (2), 이며, Is, 상기 수학식 (3) 및 (4)는,Equations (3) and (4), Sum=Sum +(RATIOi-RATIO Ave) 및Sum = Sum + (RATIOi-RATIO Ave) and Sigma=Sqrt(Sum/n) 이며,Sigma = Sqrt (Sum / n) 상기 수학식 (5)는,Equation (5), ABS(RATIOi-RATIO Ave) < Sigma 인ABS (RATIOi-RATIO Ave) <Sigma Inn 동영상 코딩 장치.Video coding device. 제 1 항 또는 제 2 항에 있어서,The method according to claim 1 or 2, 상기 RD 모델 갱신부는, 회귀(regression)와 아우트라인 제거(remove outliner) 과정을 행하여 RD 모델의 변수들을 구하는The RD model updating unit performs regression and outline outliner processes to obtain variables of the RD model. 동영상 코딩 장치.Video coding device. 제 1 항 또는 제 2 항에 있어서,The method according to claim 1 or 2, 상기 양자화 스텝 결정부는, 양자화 스텝의 크기가 이전 영상의 양자화 스텝의 크기와 소정의 값 이상 차이가 나지 않도록 양자화 스텝을 결정하며, 이전 영상 프레임과 현재 영상 프레임의 영상복잡도가 일정한 값 이상 차이가 나는 경우에는 결정된 양자화 스텝을 그대로 유지하는The quantization step determination unit determines the quantization step so that the size of the quantization step does not differ by more than a predetermined value from the size of the quantization step of the previous image, and the image complexity of the previous image frame and the current image frame differ by more than a predetermined value. In this case, the determined quantization step is kept as it is. 동영상 코딩 장치Video coding device 제 10 항에 있어서,The method of claim 10, 상기 양자화 스텝 결정부는,The quantization step determination unit, 상기 양자화 스텝의 크기와 이전 영상의 양자화 스텝의 크기 차가 ±25% 이내가 되도록 양자화 스텝을 결정하는A quantization step is determined such that a difference between the size of the quantization step and the quantization step of the previous image is within ± 25%. 동영상 코딩 장치.Video coding device. 제 1 항 또는 제 2 항에 있어서,The method according to claim 1 or 2, 상기 전송비트 결정부는,The transmission bit determiner, 송신버퍼의 점유상태를 고려하여 버퍼의 오버플로우(overflow)와 버퍼의 언더플로우(underflow)를 피하도록 전송비트량을 결정하는In consideration of the occupied state of the send buffer, the amount of transmission bit is determined to avoid overflow of the buffer and underflow of the buffer. 동영상 코딩 장치.Video coding device. 과거에 전송된 영상 프레임의 코딩 결과를 이용하여 현재 전송할 영상 프레임의 전송률을 제어하는 동영상 인코딩 장치의 제어방법에 있어서,In the control method of the video encoding apparatus for controlling the transmission rate of the current video frame by using the coding result of the video frame transmitted in the past, 영상 프레임에 적합한 전송비트의 양자화 스텝을 이용하여 인코딩을 수행하는 제1 단계;A first step of performing encoding using a quantization step of transmission bits suitable for an image frame; 상기 제1 단계에 의해 인코딩이 완료된 이전 영상 프레임의 전송비트량과 송신버퍼의 상태, 전송선로상의 타겟 비트율을 이용하여 코딩하고자 하는 영상 프레임의 전송비트량을 결정하는 제2 단계;A second step of determining the amount of transmission bits of an image frame to be coded using the amount of transmission bits of the previous image frame in which the encoding is completed in the first step, the state of the transmission buffer, and the target bit rate on the transmission line; 상기 제1 단계에 의해 발생된 상기 이전 영상 프레임의 코딩 결과를 M개의 구간으로 나누어서, 각각이 N개의 저장장소를 가진 M개의 1차원 히스토리 풀을 포함하는 2차원 히스토리 풀(history pool) 중, 자신의 코딩 결과에 해당하는 M 개의 구간에 속한 상기 2차원 히스토리 풀의 상기 N 개의 1차원 히스토리 풀에 저장하는 제3 단계;A coding result of the previous image frame generated by the first step is divided into M sections, and among the two-dimensional history pools each including M one-dimensional history pools having N storage locations, A third step of storing in the N one-dimensional history pools of the two-dimensional history pools belonging to M intervals corresponding to the coding result of the? 슬라이딩 윈도우(sliding window)를 이용하여 상기 제2 단계에 의해 결정된 코딩하고자 하는 영상 프레임의 특성과 비슷한 특성을 가진 코딩 결과들을 상기 2차원 히스토리 풀에서 추출하여, 또 다른 1차원 히스토리 풀인 워킹 히스토리부(working history pool)에 저장하는 제4 단계;By using a sliding window, coding results having characteristics similar to those of the image frame to be coded determined by the second step are extracted from the two-dimensional history pool, and a working history unit which is another one-dimensional history pool. storing in a working history pool; 상기 워킹 히스토리부에 저장된 코딩 결과를 이용하여 수학적 레이트 디스톨션(Rate distortion: RD) 모델을 갱신하는 제5 단계;Updating a mathematical rate distortion (RD) model using a coding result stored in the working history unit; 상기 제5 단계에 의해 갱신된 RD 모델을 이용하여 코딩하고자 하는 영상 프레임의 양자화 스텝을 결정하는 제6 단계A sixth step of determining a quantization step of an image frame to be coded using the RD model updated by the fifth step 를 포함하는 동영상 코딩 장치의 전송률 제어 방법.Rate control method of a video coding apparatus comprising a. 제 13 항에 있어서,The method of claim 13, 상기 전송률 제어 방법은,The rate control method, 상기 2차원 히스토리 풀에 저장된 전송된 영상 프레임의 인코딩 결과를 갱신하는 제7 단계A seventh step of updating an encoding result of the transmitted image frame stored in the two-dimensional history pool; 를 더 포함하는 동영상 코딩 장치의 전송률 제어 방법.The rate control method of the video coding apparatus further comprising. 제 13 항 또는 제 14 항에 있어서,The method according to claim 13 or 14, 상기 1차원 히스토리 풀은 퍼스트 컴 퍼스트 서브(first come first serve) 큐 형식인The one-dimensional history pool is a first come first serve queue format. 동영상 코딩 장치의 전송률 제어 방법.How to control the rate of a video coding device. 제 14 항에 있어서,The method of claim 14, 상기 2차원 히스토리 풀에 저장되는 코딩 결과에는, 전송된 영상 프레임의 영상복잡도, 상기 영상 프레임의 인코딩에 사용된 양자화 스텝 및 코딩 결과 발생된 실제 비트량이 포함되며,The coding result stored in the 2D history pool includes an image complexity of a transmitted image frame, a quantization step used for encoding the image frame, and an actual amount of bits generated as a result of the coding. 상기 코딩 결과는 상기 영상 프레임의 영상복잡도에 따라서 M 구간으로 나뉘어지는The coding result is divided into M sections according to the image complexity of the image frame. 동영상 코딩 장치의 전송률 제어 방법.How to control the rate of a video coding device. 제 16 항에 있어서,The method of claim 16, 상기 제4 단계는,The fourth step, 상기 2차원 히스토리 풀에 저장된 코딩 결과와 코딩하려는 영상 프레임간의 복잡도의 차가 소정의 범위 내에 있는 코딩 결과들을 추려내는 제8 단계;An eighth step of deciding coding results in which a difference in complexity between coding results stored in the two-dimensional history pool and an image frame to be coded is within a predetermined range; 상기 코딩 결과를 코딩 완료 순서대로 정렬하여 저장하는 제9 단계;A ninth step of sorting and storing the coding results in a coding completion order; 상기 저장된 코딩 결과 중에서 가장 최근에 코딩된 영상 프레임의 특성과 비교하여 소정의 범위 내에 있지 않는 코딩 결과를 제거하는 제10 단계A tenth step of removing a coding result that is not within a predetermined range by comparing with a characteristic of a most recently coded image frame among the stored coding results 를 포함하는 동영상 인코딩 장치의 전송률 제어 방법.The rate control method of the video encoding apparatus comprising a. 제 17 항에 있어서,The method of claim 17, 상기 제4 단계는,The fourth step, 상기 제 8단계에 의해 추려된 코딩 결과가 상기 RD 모델을 예측할 수 없을 만큼 작은 경우에는, 상기 2차원 히스토리 풀에 저장된 코딩 결과와 코딩하려는 영상 프레임간의 복잡도의 상기 소정의 차 범위를 크게 하는 제11 단계;When the coding result estimated by the eighth step is too small to predict the RD model, the eleventh to increase the predetermined difference range of the complexity between the coding result stored in the two-dimensional history pool and the image frame to be coded. step; 상기 저장된 코딩 결과들의 양자화 스텝에 해당하는 값들이 편중되는 경우에는, 상기 소정의 차 범위를 크게 하는 제12 단계Twelfth step of increasing the predetermined difference range when values corresponding to the quantization step of the stored coding results are biased 를 더 포함하는 동영상 장치의 전송률 제어 방법.The rate control method of the video device further comprising. 제 18 항에 있어서,The method of claim 18, 상기 제10 단계는,The tenth step is 가장 최근에 코딩된 두 개의 영상 프레임의 영상 특성 비율을 이용하여, 상기 영상 특성 비율과 비교하여 소정의 범위 내에 포함되지 않는 특성을 가진 저장된 코딩 값을 제거하는By using the image characteristic ratio of the two most recently coded image frames, a stored coding value having a characteristic not included in a predetermined range compared to the image characteristic ratio is removed. 동영상 코딩 장치의 전송률 제어 방법.How to control the rate of a video coding device. 제 19 항에 있어서,The method of claim 19, 상기 영상 특성 비율은, 코딩된 영상의 실제 전송비트량, 양자화 스텝과 영상복잡도와의 관계를 이용하여 수학식 (1)로 구하며, 상기 수학식 (1)은The image characteristic ratio is obtained using Equation (1) using the relationship between the actual transmission bit rate of the coded image, the quantization step and the image complexity, and Equation (1) 이며, 상기에서 RATIOi는 i번째 코딩된 영상의 영상 특성 비율을 말하며, Bit는 실제 전송비트량이며, Qp는 양자화 스텝, Mad는 영상복잡도를 나타내며,In the above, RATIOi refers to the video characteristic ratio of the i-th coded image, Bit is the actual transmission bit amount, Qp is the quantization step, Mad is the video complexity, 상기 소정의 범위는,The predetermined range is 상기 가장 최근에 코딩된 두 개의 영상 특성 비율 값들의 평균과 편차를 수학식 (2)∼(4)으로 구한 후, 상기 결과 값들이 수학식 (5)의 조건을 만족하면 상기 워킹 히스토리부에 잔존시키며,After the average and the deviation of the two most recently coded image characteristic ratio values are obtained by equations (2) to (4), if the result values satisfy the condition of equation (5), they remain in the working history part. And 상기 수학식 (2)는,Equation (2), 이며, Is, 상기 수학식 (3) 및 (4)는,Equations (3) and (4), Sum=Sum +(RATIOi-RATIO Ave) 및Sum = Sum + (RATIOi-RATIO Ave) and Sigma=Sqrt(Sum/n) 이며,Sigma = Sqrt (Sum / n) 상기 수학식 (5)는,Equation (5), ABS(RATIOi-RATIO Ave) < Sigma 인ABS (RATIOi-RATIO Ave) <Sigma Inn 동영상 코딩 장치의 전송률 제어 방법.How to control the rate of a video coding device. 제 13 항 또는 제 14 항에 있어서,The method according to claim 13 or 14, 상기 제5 단계는,The fifth step, 회귀(regression)와 아우트라인 제거(remove outliner) 과정을 행하여 RD 모델의 변수들을 구하는Regression and remove outliner process to find the variables of the RD model 동영상 코딩 장치의 전송률 제어 방법.How to control the rate of a video coding device. 제 13 항 또는 제 14 항에 있어서,The method according to claim 13 or 14, 상기 제6 단계는,The sixth step, 양자화 스텝의 크기가 이전 영상의 양자화 스텝의 크기와 소정의 값 이상 차이가 나지 않도록 양자화 스텝을 결정하며, 이전 영상 프레임과 현재 영상 프레임의 영상복잡도가 일정한 값 이상 차이가 나는 경우에는 결정된 양자화 스텝을 그대로 유지하는The quantization step is determined so that the size of the quantization step does not differ by more than a predetermined value from the size of the quantization step of the previous image. Keeping intact 동영상 코딩 장치의 전송률 제어 방법.How to control the rate of a video coding device. 제 21 항에 있어서,The method of claim 21, 제6 단계는,The sixth step is 상기 양자화 스텝의 크기와 이전 영상의 양자화 스텝의 크기 차가 ±25% 이내가 되도록 양자화 스텝을 결정하는A quantization step is determined such that a difference between the size of the quantization step and the quantization step of the previous image is within ± 25%. 동영상 코딩 장치의 전송률 제어 방법.How to control the rate of a video coding device. 제 13 항 또는 제 14 항에 있어서,The method according to claim 13 or 14, 상기 제2 단계는,The second step, 송신버퍼의 점유상태를 고려하여 버퍼의 오버플로우와 버퍼의 언더플로우를 피하도록 전송비트량을 결정하는In consideration of the occupied status of the send buffer, the amount of transmission bit is determined to avoid overflow of the buffer and underflow of the buffer. 동영상 코딩 장치의 전송률 제어 방법.How to control the rate of a video coding device. 과거에 전송된 영상 프레임의 코딩 결과를 이용하여 RD 모델을 갱신하고 양자화 스텝을 결정하는 것에 의해 전송할 영상 프레임의 전송을 제어하는 동영상 인코딩 장치의 전송률 제어 방법에 있어서,In the rate control method of the video encoding apparatus for controlling the transmission of the video frame to be transmitted by updating the RD model and determining the quantization step by using the coding result of the video frame transmitted in the past, 상기 과거에 전송된 영상 프레임의 코딩 결과를 획득한 후, 전송할 영상 프레임의 특성과 비슷한 특성을 가진 상기 코딩 결과만을 이용하여 상기 RD 모델을 갱신함으로써, 외삽(extrapolation)의 수행을 보간(interpolations)의 수행으로 전환하는 것에 의해 영상 프레임의 전송을 제어하는After acquiring the coding result of the image frame transmitted in the past, the RD model is updated using only the coding result having characteristics similar to those of the image frame to be transmitted, thereby performing extrapolation. To control the transmission of video frames by switching to performance 동영상 인코딩 장치의 전송률 제어 방법.How to control the rate of video encoding device.
KR1020000031577A 2000-06-09 2000-06-09 Apparatus and method for coding moving image using 2-dimensional history pool and sliding window KR100354434B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000031577A KR100354434B1 (en) 2000-06-09 2000-06-09 Apparatus and method for coding moving image using 2-dimensional history pool and sliding window

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000031577A KR100354434B1 (en) 2000-06-09 2000-06-09 Apparatus and method for coding moving image using 2-dimensional history pool and sliding window

Publications (2)

Publication Number Publication Date
KR20010112555A true KR20010112555A (en) 2001-12-20
KR100354434B1 KR100354434B1 (en) 2002-09-30

Family

ID=19671478

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000031577A KR100354434B1 (en) 2000-06-09 2000-06-09 Apparatus and method for coding moving image using 2-dimensional history pool and sliding window

Country Status (1)

Country Link
KR (1) KR100354434B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101525383B1 (en) * 2014-05-30 2015-06-09 연세대학교 산학협력단 Device and method of recording and reconstructing information for enhancing BER in holographic data storage system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101525383B1 (en) * 2014-05-30 2015-06-09 연세대학교 산학협력단 Device and method of recording and reconstructing information for enhancing BER in holographic data storage system

Also Published As

Publication number Publication date
KR100354434B1 (en) 2002-09-30

Similar Documents

Publication Publication Date Title
KR100484148B1 (en) Advanced method for rate control and apparatus thereof
US7277484B2 (en) Image coding and decoding method and apparatus considering human visual characteristics
Ribas-Corbera et al. Rate control in DCT video coding for low-delay communications
KR100305941B1 (en) A real-time single pass variable bit rate control strategy and encoder
KR960007264B1 (en) Motion video compression system
JP4901772B2 (en) Moving picture coding method and moving picture coding apparatus
KR100643454B1 (en) Method for video data transmission control
US6879632B1 (en) Apparatus for and method of variable bit rate video coding
CN105245891A (en) Moving image decoder, moving image decoding method, receiving device and receiving method
US5521643A (en) Adaptively coding method and apparatus utilizing variation in quantization step size
US6426772B1 (en) Video encoder
JPH05244583A (en) Moving picture coding control system and moving picture coder
KR20050090841A (en) Method for controling bit-rate
KR100624404B1 (en) Adaptive coding method and apparatus considering human visual characteristics
JP2004040811A (en) Method and apparatus for controlling amount of dct computation performed to encode motion image
JPH07264595A (en) Source coding method of picture
KR20010112555A (en) Apparatus and method for coding moving image using 2-dimensional history pool and sliding window
JP4534106B2 (en) Video encoding system and method
KR100540349B1 (en) An adaptive method for selecting quantizers
KR20030009575A (en) Rate control apparatus and method using neural-net classifier for moving picture coding
KR19990065775A (en) Adaptive Bitrate Control Method for Video Stream Coding
WO2001072046A1 (en) Variable bit rate video encoding method and device
US7623720B2 (en) Image processing apparatus and method
JP4755239B2 (en) Video code amount control method, video encoding device, video code amount control program, and recording medium therefor
KR100393245B1 (en) Transmission bit rate control method for coding moving picture

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

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee