KR20100129091A - Method of rate control in frame-level for h.264/avc - Google Patents
Method of rate control in frame-level for h.264/avc Download PDFInfo
- Publication number
- KR20100129091A KR20100129091A KR1020090047858A KR20090047858A KR20100129091A KR 20100129091 A KR20100129091 A KR 20100129091A KR 1020090047858 A KR1020090047858 A KR 1020090047858A KR 20090047858 A KR20090047858 A KR 20090047858A KR 20100129091 A KR20100129091 A KR 20100129091A
- Authority
- KR
- South Korea
- Prior art keywords
- frame
- amount
- value
- target
- buffer
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/24—Systems for the transmission of television signals using pulse code modulation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/24—Systems for the transmission of television signals using pulse code modulation
- H04N2007/243—Bitstream control arrangements
Abstract
Description
본 발명은 H.264를 위한 프레임 단위 비트율 제어 방법에 관한 것으로, 구체적으로는 프레임단위를 기반으로 한 실시간 H.264를 위한 적응적 프레임 단위 비트율 제어 방법에 관한 것이다. The present invention relates to a frame rate control method for H.264, and more particularly to an adaptive frame rate control method for real time H.264 based on the frame unit.
H.264는 매우 높은 데이터 압축률을 가지는 디지털 비디오 코덱 표준으로 MPEG-4 파트10 또는 AVC(Advanced Video Coding)라 부르기도 한다. 이 표준은 ITU-T의 비디오 코딩 전문가 그룹(VCEG)과 ISO/IEC의 동화상 전문가 그룹(MPEG)이 공동으로 진행하여 향상된 비디오 부호화 표준을 제공하기 위해서 개발된 국제 압축 표준이므로, ITU-T의 H.264와 ISO/IEC의 MPEG-4 파트 10은 기술적으로 동일한 표준안이다. H.264는 ITU-T에서 제안한 H.26x 비디오 표준의 한 종류로, 대개 H.264/AVC 혹은 AVC/H.264, H.264/MPEG-4 AVC, MPEG-4/H.264 AVC라고 부른다.H.264 is a digital video codec standard that has a very high data compression rate, also called MPEG-4 Part 10 or Advanced Video Coding (AVC). This standard is an international compression standard developed by ITU-T's Video Coding Expert Group (VCEG) and ISO / IEC's Motion Picture Experts Group (MPEG) to provide an improved video coding standard. MPEG-4
다양한 예측 부호화 기법과 엔트로피 부호화 방법들을 통해, H.264/AVC 비디오 부호화는 기존의 비디오 부호화 표준들, 예컨대 H.263+ 또는 MPEG-4(part2) 등과 비교해 볼 때 최대 50%까지의 비트율을 절감할 수 있어 보다 향상된 부호화 효율을 제공한다. 영상데이터를 실시간으로 전송할 경우, 영상의 특징과 종류에 따라 생성되는 비트량은 시간적으로 변화가 심할 수 있게 되는데, 이는 전송되는 채널의 특성상 매우 제한적이며, 고정된 대역폭을 가지고 있기 때문이다. 따라서 영상의 품질과 채널의 용량간의 균형을 조절하여 가장 좋은 부호화 성능을 제공하기 위해서는 부호화 변수들을 조절하는 것이 필수적이라 할 수 있다.Through a variety of predictive and entropy coding methods, H.264 / AVC video coding reduces bit rates by up to 50% compared to existing video coding standards such as H.263 + or MPEG-4 (part2). This can provide improved coding efficiency. In the case of transmitting image data in real time, the amount of bits generated according to the characteristics and types of the image may be changed in time because the characteristics of the transmitted channel are very limited and have a fixed bandwidth. Therefore, in order to provide the best encoding performance by adjusting the balance between the quality of the image and the capacity of the channel, it is essential to adjust the coding parameters.
이와 같은 부호화 성능을 조절하기 위하여 H.264의 비트율 제어 알고리즘은 비트율-왜곡 최적화(RDO: Rate Distortion Optimization) 방법을 기반으로 하여 발생 비트와 양자화 왜곡의 비율을 효율적으로 조절함으로써 부호화 전에 각 프레임을 위한 적절한 양자화 파라미터 QP(Quantization Parameter)를 결정하고, 이 계수로써 각 부호화 모드의 비용을 측정하여 최소 비용의 모드를 최종 모드로 결정한다. To control the coding performance, H.264's rate control algorithm is based on the Rate Distortion Optimization (RDO) method to efficiently adjust the ratio of generated bits and quantization distortion for each frame before encoding. The appropriate quantization parameter QP (Quantization Parameter) is determined, and the coefficient of each coding mode is measured by this coefficient to determine the minimum cost mode as the final mode.
그러므로 H.264/AVC에서의 비트율 제어 방식은 모드 결정 및 움직임 벡터 결정을 하기 이전에 최적의 QP를 선택해야 하는 문제점이 발생한다. 이 문제를 해결하기 위해 해당 매크로 블록의 왜곡 값을 MAD(Mean Absolute Different, 절대 평균차)를 통해 이전 프레임의 매크로 블록으로부터 추정되는 기법이 사용된다. M. Jiang은 이런 MAD 기법을 개선하여, GOP 구간에서의 부호화된 P 프레임들의 평균 MAD값에 대한 현재 프레임의 예측된 MAD 율을 이용하여 프레임 복잡도를 예측하는 모델과 이 MAD 율과 함께 부호화된 P 프레임들의 평균 PSNR 오차율을 이용하여 현재 프레임의 복잡도를 예측하여 개선된 성능을 보여주고 있다(참고 논문 "On Enhancing H.264/AVC Video Rate Control by PSNR-Based Frame Complexity Estimation", IEEE Trans. Consumer. Electronics. vol. 51, no. 1, Feb. 2005.). 그러나 이와 같은 MAD 기법들은 많은 계산량을 필요로 하기 때문에 동영상의 응용에 많은 제약을 갖게 된다. Therefore, the bit rate control method in H.264 / AVC has a problem that the optimal QP should be selected before the mode decision and the motion vector decision. In order to solve this problem, a method of estimating the distortion value of the macroblock from the macroblock of the previous frame by means of Mean Absolute Different (MAD) is used. M. Jiang improves this MAD technique by using the predicted MAD rate of the current frame relative to the average MAD value of the coded P frames in the GOP interval, and the P code coded with this MAD rate. The average PSNR error rate of the frames is used to predict the complexity of the current frame and shows improved performance (see "On Enhancing H.264 / AVC Video Rate Control by PSNR-Based Frame Complexity Estimation", IEEE Trans. Consumer. Electronics.vol. 51, no. 1, Feb. 2005.). However, these MAD techniques require a large amount of computation, which places a lot of restrictions on the application of video.
H.264/AVC에서 사용되고 있는 비트율 제어 방법은 실제 부호화에 의한 최적의 부호화 파라미터를 찾는 것으로, 라그랑지안 최적화 기법을 이용하여 가능한 부호화 파라미터 조합 중 주어진 비트 율 조건을 만족시키고 왜곡을 최소화 하는 것을 예측하는 방식을 사용하고 있다. H.264/AVC에서 사용되는 비트율 조절방법은 비트와 왜곡이 양자화 스템의 함수로서 표현되는 Quadratic R-D 모델에 기반을 두고 있다. 이 방법은 이미지에 대한 분석의 간단함 및 양자화에 대한 직접적인 조절 방법 등의 특성에도 불구하고, 비디오 부호화의 다양한 특성 때문에, 경우에 따라서는 비효율적인 비트율 조절 결과를 나타내는 경우가 있다. 이러한 방식은 가장 이상적인 방법이지만 모든 양자화 파라미터에 따른 실제 비트율과 왜곡 값을 구해야 하므로 많은 계산량의 문제점으로 인해 실시간 멀티미디어 전송시에 부적합하다. 영상 정보의 실시간 전송은 대상 응용에 맞는 비트량을 예측하는 과정에서 불필요한 계산량을 줄이고 영상의 왜곡을 최소화하는 것이 바람직하다. The bit rate control method used in H.264 / AVC is to find the optimal coding parameter by actual coding. The Lagrangian optimization technique is used to predict that the given bit rate condition is minimized and the distortion is minimized among the possible coding parameter combinations. I'm using. The bit rate control method used in H.264 / AVC is based on the Quadratic R-D model where bits and distortions are expressed as a function of the quantization stem. In spite of the characteristics of the video encoding and the direct adjustment method for quantization, this method may show an inefficient bit rate adjustment result due to various characteristics of video encoding. This method is ideal, but it is not suitable for real-time multimedia transmission due to the problem of large amount of computation because the actual bit rate and distortion values for all quantization parameters must be obtained. In real-time transmission of image information, it is desirable to reduce unnecessary computation and minimize image distortion in the process of estimating a bit amount suitable for a target application.
따라서 본 발명에서는 비트량을 예측하는 과정에서의 계산량을 줄이기 위하여 통계적 모델에 기반한 비트율 제어 방법을 이용하여 대상 응용에 적합하게 비트량을 산출하고 영상의 왜곡을 최소화하여 영상 정보를 실시간으로 부호화하는 기법을 구현하고자 한다.Therefore, in the present invention, in order to reduce the amount of computation in the process of predicting the amount of bits, a technique for calculating the amount of bits appropriate for the target application and minimizing the distortion of the image and encoding the image information in real time using a bit rate control method based on a statistical model We want to implement
H.264/AVC 부호기에서 부호화된 비트스트림을 고정된 채널로 전송할 경우, 기존의 비트율 제어 방법의 큰 문제점은 현재 프레임을 부호화하는데 있어서 이전 프레임의 차분부호 정보량을 이용하기 때문에 많은 계산량을 필요로 한다는 것인데, 이러한 문제점들을 해결하기 위하여 본 발명에서는 이전 프레임의 차분부호 정보량이 아니라 다양한 영상의 통계정보와 이전에 발생된 비트량을 통계정보로 이용하여 영상 특성에 적응적으로 비트율을 제어하는 방법을 구현하고자 한다. 즉, 본 발명에서는 QP와 부호화 이후에 발생되는 실제 비트량과의 선형적 모델을 기반으로 하여 기존의 방식보다 복잡도를 줄이는 방식을 사용함으로써, 적은 계산량으로도 프레임의 발생 비트량을 정확히 예측하여 기존의 방식보다 비트율 제어 알고리즘의 전체적인 계산량을 줄이는 방법을 구현하고자 한다. H.264/AVC는 VBR(가변 비트율 부호화 방법)과 CBR(고정 비트율 부호화 방법)을 동시에 지원하지만, 본 발명에서는 프레임 단위를 기반으로 한 CBR 비트율 조절 방법을 구현하고자 한다.When transmitting a bitstream encoded by an H.264 / AVC encoder over a fixed channel, a major problem of the conventional bit rate control method is that a large amount of computation is required because the amount of differential code information of the previous frame is used to encode the current frame. In order to solve these problems, the present invention implements a method of controlling a bit rate adaptively to image characteristics by using statistical information of various images and previously generated bit amounts as statistical information, not the difference code information amount of a previous frame. I would like to. That is, the present invention uses a method of reducing complexity than the conventional method based on a linear model of QP and the actual bit amount generated after encoding, thereby accurately predicting the amount of bits generated in a frame even with a small amount of computation. To reduce the overall computation of the bit rate control algorithm rather than Although H.264 / AVC supports both VBR (variable bit rate coding method) and CBR (fixed bit rate coding method) at the same time, the present invention intends to implement a CBR bit rate control method based on a frame unit.
전술한 목적을 달성하기 위하여, 본 발명의 하나의 모습에 따라 H.264를 위한 프레임단위 비트율 제어방법에 있어서, 프레임정보 및 버퍼를 초기화하고 영상의 초기 양자화 파라미터(QP) 값을 포함하는 파라미터들을 초기화하는 파라미터 초기화 단계; 직전 프레임에 대한 부호화된 비트량 의 가중치 적용값과 직전 프레임의 QP값과 동일한 QP값을 갖는 직전 프레임 이전의 프레임들의 평균 비트량 의 가중치 적용값의 합과 직전 프레임의 QP값()을 이용하여 현재 프레임의 목표 비트량을 예측하기 위한 프레임 복잡도 가중치 를 예측 계산하는 복잡도가중치 갱신단계; 현재 프레임의 목표 비트량을 예측하기 위한 프레임 복잡도 가중치 를 이용한 프레임당 부호화할 수 있는 비트량 과 가상버퍼 점유량 과 목표 버퍼레벨 을 고려한 프레임당 부호화할 수 있는 비트량 을 이용하여 현재 프레임에 대한 목표 비트량 을 계산하는 목표비트량 산출단계; 및 QP값 인덱스에 대한 예측된 발생 비트량 구간에서 현재 프레임에 대한 목표 비트량 을 반복 루프를 통하여 찾아 현재 프레임에 대한 QP값()을 결정하는 프레임 QP값 결정단계; 를 포함하여 이루어지고,In order to achieve the above object, according to one aspect of the present invention, in the frame-by-frame rate control method for H.264, the parameters including the initial information and the initial quantization parameter (QP) value of the buffer to initialize the frame information and the buffer A parameter initialization step of initializing; Coded Bit Amount for Previous Frame Average bit quantity of frames before the previous frame having a weighted value of and the same QP value as the previous frame's QP value The sum of the weighted values of and the QP value of the previous frame ( Frame complexity weights for predicting the target bit rate of the current frame using A complexity weighted updating step of predicting and calculating the complexity; Frame Complexity Weights for Predicting Target Bitrate of Current Frame The amount of bits that can be encoded per frame using And virtual buffer occupancy And target buffer levels Bit rate that can be encoded per frame Target bit rate for the current frame Calculating a target bit amount; Amount of occurrence bits for the index and QP value index Target bit rate for the current frame in the interval Through the loop to find the QP value for the current frame ( Determining a frame QP value; , ≪ / RTI >
여기에서 상기 복잡도가중치 갱신단계, 목표 비트량 산출단계 및 프레임 QP값 결정단계를 수행하여 결정되는 현재 부호화하고자하는 프레임의 QP값을 가지고 부호화되는 것을 특징으로 하는 H.264를 위한 프레임단위 비트율 제어방법을 제안한다.Here, the method for controlling the frame rate of a frame for H.264 characterized in that the encoding is performed with the QP value of the frame to be currently encoded determined by performing the complexity weighting step, the target bit amount calculation step, and the frame QP value determination step. Suggest.
바람직하게는, 상기 복잡도 가중치 갱신단계에서, 상기 프레임 복잡도 가중치 는 다음의 식에 따라 결정되는 것을 특징으로 한다.Preferably, in the complexity weighting step, the frame complexity weighting Is characterized by the following equation.
여기에서, λ는 목표비트량과 실제 발생된 비트량과의 오차를 줄이기 위한 가중치 값이다. 바람직하게는 λ는 0.67이다.Here, lambda is a weight value for reducing the error between the target bit amount and the actually generated bit amount. Preferably λ is 0.67.
바람직하게는, 상기 목표비트량 산출단계에서, 현재 프레임에 대한 목표 비트량 은 다음의 식에 따라 결정되며,Preferably, in the target bit amount calculation step, the target bit amount for the current frame Is determined by the equation
여기에서, β는 가상버퍼 점유량 과 목표 버퍼레벨 에 대한 의존도를 나타내는 가중치 값이고, 바람직하게 β는 0.5이고,Β is the virtual buffer occupancy And target buffer levels Is a weight value representing dependence on, preferably β is 0.5,
프레임 복잡도 가중치 를 이용한 프레임당 부호화할 수 있는 비트량 및 가상버퍼 점유량 과 목표 버퍼레벨 을 고려한 프레임당 부호화할 수 있는 비트량 는 다음의 식에 따라 결정된다.Frame complexity weights The amount of bits that can be encoded per frame using And virtual buffer occupancy And target buffer levels Bit rate that can be encoded per frame Is determined by the following equation.
여기에서, R은 현재 남아 있는 비트량이고, Np는 하나의 영상그룹(GOP) 내에 있는 P 프레임의 개수이고, u는 채널 대역폭으로 압축된 영상 시퀀스를 일정하게 전송하는 비트율이고, Fr은 초당 부호화된 프레임 율이고, 는 가중치 상수이고, 바람직하게는 0.8이다.Where R is the amount of bits currently remaining, N p is the number of P frames in one picture group (GOP), u is the bit rate for constantly transmitting the video sequence compressed at the channel bandwidth, and F r is The frame rate encoded per second, Is a weight constant, preferably 0.8.
바람직하게는, 상기 목표비트량 산출단계는: 가상버퍼 점유량 과 목표 버퍼레벨 을 산출하는 단계; 산출된 가상버퍼 점유량 과 목표 버퍼레벨 을 이용하여 예측 버퍼량을 결정하는 단계; 및 예측 버퍼량과 프레임당 부호화할 수 있는 비트량 및 를 고려하여 현재 프레임에 대한 목표 비트량 을 결정하는 단계;를 포함하여 이루어진다.Preferably, the step of calculating the target bit amount is: virtual buffer occupancy amount And target buffer levels Calculating; Calculated Virtual Buffer Occupancy And target buffer levels Determining a predicted buffer amount using; And the amount of prediction buffer and the amount of bits that can be encoded per frame And Target bit rate for the current frame Determining the;
더 바람직하게는, 상기 가상버퍼 점유량 은 로부터 산출되며. 여기에서 A(n-1)는 (n-1)번째 프레임에 대한 부호화된 비트량이고,More preferably, the virtual buffer occupancy amount silver Is calculated from. Where A (n-1) is the coded bit amount for the (n-1) th frame,
상기 목표 버퍼레벨 은 The target buffer level silver
로부터 산출되며, 여기에서 codedPframe 은 영상그룹(GOP) 구간에서의 부호화된 P 프레임 개수이고, Np 는 하나의 GOP 내에 있는 P 프레임의 개수이고, Where codedPframe is the number of encoded P frames in a GOP section, N p is the number of P frames in one GOP,
상기 예측 버퍼량을 결정하는 단계는:The determining of the prediction buffer amount may include:
으로부터 프레임 당 예측 버퍼량 을 산출하고, Amount of prediction buffer per frame from Yields,
프레임 당 버퍼량이 예측되면, If the amount of buffer per frame is estimated,
로부터 버퍼의 상한(U(n))과 하한(L(n)) 범위까지 고려하여 최종 예측 버퍼량() 값을 결정한다. From the upper bound U (n) and the lower bound L (n) of the buffer to ) To determine the value.
바람직하게는, 상기 프레임 QP값 결정단계에서, 상기 현재 프레임에 대한 가 결정될 때 프레임들간의 화질 열화를 줄이기 위하여 다음의 식에 따라 현재 프레임의 최종 가 결정되는 것을 특징으로 한다.Preferably, in the frame QP value determination step, for the current frame To reduce image quality deterioration between frames when is determined, the final frame of the current frame is Characterized in that is determined.
여기에서 는 프레임간의 QP값을 제한하는 값이다. 바람직하게는, 상기 는 ±2로 설정된다.From here Is a value for limiting the QP value between frames. Preferably, the Is set to ± 2.
더 바람직하게는, 상기 현재 프레임에 대한 결정은 다음의 식에 따라 이루어진다.More preferably, for the current frame The decision is made according to the following equation.
여기에서 는 QP 인덱스에 의한 예측 비트량 구간에서 해당 목표 비트량 T 를 찾는 함수로써, 반복 루프를 통하여 구해진다.From here Is the predicted bit amount by the QP index This function is to find the corresponding target bit amount T in the interval and is obtained through an iterative loop.
본 발명의 모습에 따라, 실시예에서는, H.264/AVC 부호기에서 부호화된 비트스트림을 고정된 채널로 전송할 경우 기존의 비트율 제어 방법의 큰 문제점이라고 할 수 있는 현재 프레임을 부호화하는데 있어서 이전 프레임의 차분부호 정보량을 이용하기 때문에 많은 계산량을 필요로 하는 문제점을 해결하기 위하여, 이전 프레임의 차분부호 정보량이 아니라 다양한 영상의 통계정보와 이전에 발생된 비트량을 통계정보로 이용하여 영상 특성에 적응적으로 비트율을 제어할 수 있게 되었다. According to an aspect of the present invention, in the embodiment, when transmitting a bitstream encoded in an H.264 / AVC coder through a fixed channel, the previous frame in encoding the current frame, which is a big problem of the existing bitrate control method, may be obtained. In order to solve the problem that requires a large amount of calculation because the difference code information amount is used, it is adaptive to the image characteristics by using the statistical information of various images and the previously generated bit amount as statistical information, not the difference code information amount of the previous frame. Now you can control the bit rate.
본 발명의 하나의 실시예의 실험 결과에서 알 수 있듯이 기존 비트율 제어 방법의 PSNR 성능과 거의 비슷하였고 다양한 채널 전송 환경에서도 기존 비트율 제어 방법보다 적합하게 효율적으로 부호화되는 것으로 나타났다. 특히 계산량 절감에 있어서는 제안한 방법이 기존 방법보다 99% 이상의 계산량이 감소하여 실시간 처리에 적합한 것으로 나타났다. 이는 영상과 관련된 응용 분야에 많이 활용될 수 있을 것이다.As can be seen from the experimental results of one embodiment of the present invention, the PSNR performance of the conventional bit rate control method is almost similar to that of the conventional bit rate control method. In particular, in terms of computational savings, it is shown that the proposed method is suitable for real-time processing because the computational amount is reduced by more than 99%. This can be used in many applications related to video.
본 발명의 다양한 실시예에 따라 직접적으로 언급되지 않은 다양한 효과들이 본 발명의 실시예들에 따른 다양한 구성들로부터 당해 기술분야에서 통상의 지식을 지닌 자에 의해 도출될 수 있음은 자명하다.It is apparent that various effects not directly mentioned in accordance with various embodiments of the present invention may be derived by those skilled in the art from various configurations according to embodiments of the present invention.
전술한 과제를 달성하기 위한 본 발명의 실시예들이 첨부된 도면을 참조하여 설명될 것이다. 본 실시예들을 설명함에 있어서, 동일부호는 동일한 구성을 의미하고, 중복되거나 발명의 의미를 한정적으로 해석되게 할 수 있는 부가적인 설명은 본 발명의 실시예들을 설명함에 있어서 생략될 수 있다.Embodiments of the present invention for achieving the above object will be described with reference to the accompanying drawings. In describing the embodiments, the same reference numerals refer to the same configuration, and additional descriptions that may overlap or limit the meaning of the invention may be omitted in describing the embodiments of the present invention.
도 1는 본 발명의 하나의 실시예에 따른 비트율 제어방법에서의 전체적인 계층 구조를 나타낸 것으로서, 4개의 주요 처리 단계로 이루어져 있다.FIG. 1 shows the overall hierarchical structure in the bit rate control method according to an embodiment of the present invention, and is composed of four main processing steps.
1) 부호화를 위한 주요 파라미터 초기화1) Initialization of main parameters for encoding
2) 프레임에 대한 목표 비트량 계산2) Calculation of target bit rate for frame
3) 목표 비트량에 대한 QP값 결정3) Determination of the QP value for the target bit amount
4) 프레임에 대한 복잡도 갱신4) Update complexity for frame
단계 1에서 초기화가 완료되면, P프레임에 대한 QP값 결정과정은 단계4-단계2-단계3의 과정을 반복 수행하게 된다. 즉, 수행하게 되는 프로세스 구조는 다음과 같다.When the initialization is completed in
단계1 -> ... -> (단계4 -> 단계2 -> 단계3) -> ... -> (단계4 -> 단계2 -> 단계3) ...Step 1-> ...-> (Step 4-> Step 2-> Step 3)-> ...-> (Step 4-> Step 2-> Step 3) ...
단계별 내용에 대한 구체적인 설명은 다음과 같다.The detailed description of the contents of each step is as follows.
1) 부호화를 위한 주요 파라미터 초기화(단계 1)1) Initialization of main parameters for encoding (step 1)
단계 1에서는 부호화를 위한 프레임 정보 및 버퍼의 초기화, 그리고 영상의 초기 QP 값 등의 파라미터들을 초기화한다. In
도 1에 도시된 바와 같이, 파라미터 초기화 단계에서 순간 허용소스 전송비 추정은 현재 전송 가능한 네트워크의 속도와 초당 전송해야 하는 프레임수를 이용하여 전송하게 될 비트율을 추정하는 단계이고, 여기서 네트워크의 속도 또는/및 영상의 크기, 초당 몇 프레임을 보내야 하는지 또는/및 부화화를 위한 프레임 정보 등의 정보가 담겨있다. 또한, 버퍼 초기화는 버퍼를 초기화 하는데, 버퍼의 초기 가상 버퍼 점유량을 설정하고 버퍼의 오버플로우와 언더플로우를 방지하기 위해 버퍼의 상한과 하한의 초기값을 설정한다. As shown in FIG. 1, in the parameter initialization step, the instantaneous allowable source transmission rate estimation is a step of estimating a bit rate to be transmitted using the speed of a network that can be transmitted and the number of frames that need to be transmitted per second. And / or information such as the size of the image, how many frames per second should be sent and / or frame information for incubation. In addition, buffer initialization initializes the buffer, which sets the initial virtual buffer occupancy of the buffer and the initial values of the upper and lower bounds of the buffer to prevent overflow and underflow of the buffer.
I 프레임에 할당되는 비트량은 전체 영상의 화질에 큰 영향을 미치게 된다. 따라서 I 프레임의 QP를 결정하는 것은, I 프레임을 뒤따르는 프레임들의 화질에 영향을 미치므로, I 프레임의 QP를 결정하는 것은 매우 중요하다. The bit amount allocated to the I frame has a great influence on the image quality of the entire image. Therefore, determining the QP of an I frame affects the image quality of the frames following the I frame, so it is very important to determine the QP of the I frame.
비디오 시퀀스는 영상그룹 GOP(Group of Picture)로 구성되어 있고, GOP의 첫 번째 프레임은 인트라(Intra) 모드로 부호화하고, 그 이후의 프레임은 인터(Inter) 모드로 부호화하는 것이 일반적이다. I-프레임은 인트라(Intra) 코딩된 프레임을 뜻하고, P-프레임은 이전 프레임을 참조하여 예측(순방향 예측)된 프레임을 뜻한다. P-프레임은 이전 프레임을 레퍼런스로 해서 모션 예측 보정을 이용하여 인코딩되므로, 인트라(Intra) 코딩된 프레임인 I-프레임은 P-프레임을 위한 참조 프레임으로서 가장 중요한 프레임이라 할 수 있다. 연결된 첫번째 영상이나 랜덤 액세스 점이 일반적으로 인트라(Intra) 코드가 된다. 이 방법에서 이전 GOP내의 P-프레임들의 평균 QP 값이 높을 경우, 현재 GOP의 I-프레임의 QP 값도 높게 되고, 현재 GOP의 I-프레임의 QP 값이 높은 경우 높은 QP 값은 낮은 PSNR(Peek Signal To Noise Rate)을 발생시키므로, I-프레임을 참조하는 현 GOP내의 P-프레임들은 연쇄 적으로 낮은 PSNR을 갖게 된다. 따라서 I-프레임의 QP 결정 방식에 따라 전체 영상의 화질이 달라질 수 있다.The video sequence is composed of a video group GOP (Group of Picture), the first frame of the GOP is encoded in the Intra mode, and the subsequent frames are generally encoded in the Inter mode. An I-frame refers to an intra coded frame, and a P-frame refers to a frame predicted (forward predicted) with reference to a previous frame. Since the P-frame is encoded using motion prediction correction with reference to the previous frame, the I-frame, which is an intra coded frame, may be referred to as the most important frame as a reference frame for the P-frame. The first connected picture or random access point is typically an Intra code. In this method, when the average QP value of the P-frames in the previous GOP is high, the QP value of the I-frame of the current GOP is also high, and when the QP value of the I-frame of the current GOP is high, the high QP value is low PSNR (Peek). Signal To Noise Rate), the P-frames in the current GOP referring to the I-frame will have a low PSNR in the chain. Therefore, the image quality of the entire image may vary depending on the QP determination method of the I-frame.
본 발명에서의 I 프레임에 대한 파라미터 초기화 과정은 H.264/AVC의 참조 모델 JM12.1 방식을 사용한다. 이 방법은 각 픽셀에 할당할 수 있는 비트수(bpp; bit per pixel)를 고려하여 QP값을 결정하는 방법으로 식 (14)와 같이 구한다.The parameter initialization procedure for the I frame in the present invention uses the reference model JM12.1 scheme of H.264 / AVC. In this method, the QP value is determined in consideration of the number of bits per pixel (bpp) that can be allocated to each pixel.
(14) (14)
식 (14)에서 u 는 채널 대역폭으로 압축된 영상 시퀀스를 일정하게 전송하는 비트율이고, width와 height은 영상의 너비와 높이를 나타내고, Fr은 초당 부호화된 프레임 율이다. In Equation (14), u is a bit rate for constantly transmitting a compressed video sequence with a channel bandwidth, width and height represent a width and height of an image, and F r is an encoded frame rate per second.
프레임 당 비트율을 제어하기 위해서는 먼저 첫 번째 프레임에 대한 가상버퍼 점유량(Virtual Buffer Occupancy)을 정해야 하는데, 이 첫 번째 가상 버퍼 점유량이 Bc(1)이면, 이때 초기 가상버퍼 점유량은 식 (2)와 같이 버퍼 사이즈(Bs)의 1/8로 설정한다.In order to control the bit rate per frame, first, the virtual buffer occupancy for the first frame must be determined. If the first virtual buffer occupancy is B c (1), then the initial virtual buffer occupancy is Similarly, set it to 1/8 of the buffer size (B s ).
(2) (2)
그리고 버퍼의 오버플로우과 언더플로우을 방지하기 위하여 버퍼의 상한(U(1)) 및 하한(L(1))의 초기값을 식 (15)와 같이 설정한다. 이때 u 는 채널 대역폭으로 압축된 영상 시퀀스를 일정하게 전송하는 비트율이고, Fr 은 초당 부호화 된 프레임 율이다.In order to prevent the overflow and underflow of the buffer, initial values of the upper limit U (1) and the lower limit L (1) of the buffer are set as in Equation (15). In this case, u is a bit rate for constantly transmitting a compressed video sequence with a channel bandwidth, and F r is an encoded frame rate per second.
(15) (15)
2) 프레임에 대한 목표 비트량 계산(단계 2)2) Calculate the target bit rate for the frame (step 2)
단계 2에서는 부호화 이후의 프레임에 대한 복잡도 갱신이 이루어진 정보들을 이용하여 현재 부호화 하고자 하는 프레임의 목표 비트량을 예측하는 단계로서, 부호화 하고자 하는 프레임에 대한 복잡도 가중치, 가상버퍼 점유율 그리고 목표 버퍼레벨을 고려하여 목표 비트량을 예측한다.In
본 발명에서의 가상버퍼 점유량(Bc(n)) 및 목표 버퍼레벨(TBL(n))은 각각 식 (16)과 식 (17)을 이용하여 구한다.The virtual buffer occupancy amount B c (n) and the target buffer level TBL (n) in the present invention are obtained using equations (16) and (17), respectively.
(16) (16)
(17) (17)
식 (16)에서 A(n-1)는 (n-1)번째 프레임에 대한 부호화된 비트량이고, 식 (17)에서 codedPframe 은 GOP 구간에서의 부호화된 P 프레임 개수이고, Np 는 하나의 GOP 내에 있는 P 프레임의 개수이다. 식 (17)과 같이 목표 버퍼레벨은 I 프레임이 부호화 된 이후의 첫 번째 P 프레임의 경우는 버퍼 점유율에서 목표 버퍼레벨을 줄이고, 첫 번째 P 프레임이 부호화 된 이후에는 이전 목표 버퍼레벨에서 값을 줄인다. 현재 프레임을 부호화함에 있어서, 프레임에 할당할 수 있는 목표 비트량을 예측하기 위해서는 다음 식 (18)과 같이 계산된 버퍼 점유량 및 목표 버퍼레벨을 이용하여 버퍼량의 예측을 수행하여 예측 버퍼량 을 산출한다.In equation (16), A (n-1) is the coded bit amount for the (n-1) th frame, codedPframe in equation (17) is the number of coded P frames in the GOP interval, and N p is one The number of P frames in the GOP. As shown in equation (17), the target buffer level decreases the target buffer level in the buffer occupancy in the case of the first P frame after the I frame is encoded, and the value in the previous target buffer level after the first P frame is encoded. . In encoding the current frame, in order to predict a target bit amount that can be allocated to a frame, a prediction of the buffer amount is performed by using the buffer occupancy amount and the target buffer level calculated as in Equation (18). To calculate.
(18) (18)
(8) (8)
프레임 당 버퍼량이 예측되면 버퍼 상태를 고려하여 식 (8)과 같이 버퍼의 상한과 하한 범위까지 고려하여 최종 예측 버퍼량() 값을 결정한다.If the buffer amount per frame is predicted, the final predicted buffer amount ( ) To determine the value.
n번째 프레임에 대한 최종 목표 비트량 T(n)은 예측한 버퍼량과 식 (19)에서 예측한 부호 비트량을 고려하여 식 (20)과 같이 최종적으로 결정된다. The final target bit amount T (n) for the n-th frame is finally determined as in Equation (20) in consideration of the predicted buffer amount and the code bit amount predicted in Equation (19).
(19) (19)
(20) 20
식 (19)에서 Wp는 현재 P 프레임의 복잡도 가중치를 예측한 값으로서, 본 발명에서는 이전에 부호화된 프레임들의 발생 비트량 가중치와 QP값으로 계산한다. 다음의 식 (28)을 참조한다. R은 현재 남아 있는 비트량이다. Tr1과 Tr2는 P 프레임에 대한 복잡도 가중치를 이용한 프레임당 부호화 할 수 있는 비트량과 버퍼 점유량과 목표 버퍼레벨을 고려한 프레임당 부호화 할 수 있는 비트량이다. 식 (20)에서 β는 버퍼 점유량과 목표 버퍼레벨에 대한 의존도를 의미하는 것으로 실험에 의해 0.5로 설정하였다.In Equation (19), W p is a value predicting the complexity weight of the current P frame. In the present invention, W p is calculated as the generated bit amount weight and the QP value of previously encoded frames. See Equation (28) below. R is the amount of bits remaining. T r1 and T r2 are bits that can be encoded per frame using complexity weights for P frames, and bits that can be encoded per frame considering buffer occupancy and target buffer levels. In Eq. (20), β means the dependence on the buffer occupancy and the target buffer level and was set to 0.5 by experiment.
3) 목표 비트량에 대한 QP값 결정(단계 3)3) Determination of the QP value for the target bit amount (step 3)
부호화 하고자 하는 프레임의 QP값을 결정하는 단계이다. In this step, the QP value of a frame to be encoded is determined.
기존의 H.264/AVC 방식의 QP변환 알고리즘에 따른 MAD 예측 및 양자화계수 예측에서는, 비트율 제어를 위해 먼저 현재 프레임과 참조 프레임간의 차이를 나타내는 MAD(Mean Absolute Difference)를 이용하며, 현재 프레임의 MADc를 예측하기 위해 식 (11)과 같이 계산한다.In the MAD prediction and the quantization coefficient prediction based on the conventional H.264 / AVC method, the MAD (Mean Absolute Difference) indicating the difference between the current frame and the reference frame is first used for the bit rate control. To predict c , calculate as in Eq. (11).
(11) (11)
식 (11)에서 MADp는 이전 프레임의 MAD를 나타내며 C2는 예측된 값들의 예측 오차에 대한 보상 값이다. C1과 C2에 대한 초기값은 각각 1과 0이다. 기존의 H.264/ AVC의 비트율을 제어하기 위한 프레임 단위에 대한 양자화 계수는 식 (12)과 같이 2차 방정식 비트율-왜곡 모델을 사용한다. In Equation (11), MAD p represents the MAD of the previous frame and C 2 is a compensation value for the prediction error of the predicted values. The initial values for C 1 and C 2 are 1 and 0, respectively. The quantization coefficient for the frame unit for controlling the bit rate of the conventional H.264 / AVC uses a quadratic equation rate-distortion model as shown in Equation (12).
(12) (12)
식 (12)에서 T(n)는 n번째 프레임에서의 목표 비트량, MADn는 n번째 프레임에서의 MAD, QP는 양자화 계수, 그리고 x1와 x2는 각 프레임에서 얻어지는 2차원 비트율-왜곡값을 나타내는 변수이다.In Equation (12), T (n) is the target bit quantity in the nth frame, MAD n is the MAD in the nth frame, QP is the quantization coefficient, and x 1 and x 2 are two-dimensional bit rate-distortions obtained in each frame. Variable representing the value.
본 발명에서는 기존 H.264/AVC 방식의 식 (12)와 같이 QP변환 알고리즘을 사용하지 않고, 도 2과 같이 다양한 영상의 실험에 의한 통계 정보를 이용하여 결정하도록 하였다. 도 2은 각 영상의 특성에 따라 QP값에 따른 P 프레임의 발생 비트량 특성을 나타내고, 표 1은 각 프레임의 비트량을 예측하기 위하여 산출된 실험 데이터로서 각 영상의 P 프레임들의 평균 비트량을 나타낸 것이다.In the present invention, instead of using the QP conversion algorithm as shown in Equation (12) of the existing H.264 / AVC method, it is determined by using statistical information by experiments of various images as shown in FIG. FIG. 2 shows the generated bit rate characteristics of a P frame according to the QP value according to the characteristics of each image. Table 1 shows experimental data calculated to predict the bit rate of each frame. It is shown.
다양한 유형의 영상 통계 정보를 이용하기 위하여 실험에 사용된 영상들은 빠르고 세밀한 영상의 "Mobile"와 "Stefan", 그리고 느리고 평탄한 영상의 "News"와 “Container"가 사용되었으며, 보통의 빠르기와 평탄함 및 세밀함이 골고루 있는 영상 "Foreman"이 사용되었다. The images used in the experiment to use various types of image statistics are fast and detailed images of "Mobile" and "Stefan" and slow and flat images "News" and "Container". The image "Foreman" with even detail is used.
<표 1> 각 QP에 따른 P프레임의 평균 비트량<Table 1> Average bit rate of P frame according to each QP
실험(표 1)을 통하여 P 프레임들의 평균 비트량이 QP값과 밀접한 관계를 가지고 있음을 확인할 수 있으며, 도 2과 같이 QP값에 따라 할당되는 비트량의 크기가 선형적으로 변하는 것을 보여주고 있다. It can be seen from the experiment (Table 1) that the average bit amount of P frames has a close relationship with the QP value, and as shown in FIG. 2, the bit amount allocated according to the QP value changes linearly.
QP값과 발생 비트량과의 관계는 다음과 같이 유도될 수 있다.The relationship between the QP value and the generated bit amount can be derived as follows.
(21) (21)
식 (21)의 n은 QP값 인덱스이며, 는 QP값 인덱스 n에 대한 예측된 발생 비트량을 의미한다. α와 β는 도 2과 표 1의 다양한 영상의 통계 특성에 의해 결정된 상수 값이다. <표 1>에서의 은 현재 부호화하고자 하는 프레임에 할당 가능한 비트량 구간을 나타낸 것으로서, 양자화 인덱스 함수로서의 비트량이 가우시안 분포를 가질 수 있기 때문에 식 (21)의 QP 인덱스에 대한 예측 가능한 발생 비트량 는 식 (22)와 같이 재계산될 수 있다. N in formula (21) is the QP value index, Denotes the estimated amount of generated bits for the QP value index n. α and β are constant values determined by statistical characteristics of various images of FIGS. 2 and 1. In <Table 1> Denotes a bit amount interval that can be allocated to the frame to be currently encoded, and since the bit amount as a quantization index function can have a Gaussian distribution, the predictable generated bit amount for the QP index of Equation (21) Can be recalculated as Equation (22).
(22) (22)
이렇게 QP 인덱스에 대한 예측된 발생 비트량 은 초기화 단계에서 한 번만 계산되며 1차원 테이블에 값을 저장하여 사용한다. Thus the estimated occurrence bit rate for the QP index Is calculated only once in the initialization phase and stored in a one-dimensional table for use.
이후에는 식 (20)에서 계산된 목표 비트량을 이용하여 식 (23)과 같이 현재 프레임에 대한 QPc 값을 결정한다.After that, the QP c value for the current frame is determined using the target bit amount calculated in Equation (20) as shown in Equation (23).
(23) (23)
식 (23)에서 는 QP 인덱스에 의한 예측 비트량 구간에서 해당 목표 비트량 T 를 찾는 함수로써, 반복 루프를 통하여 구해진다. 그리고 P 프레임의 QPc값이 결정될 때는 프레임들 간의 화질 열화를 줄이기 위하여 식 (24)와 같이 ΔQP 값으로 제한한다.In equation (23) Is the predicted bit amount by the QP index This function is to find the corresponding target bit amount T in the interval and is obtained through an iterative loop. When the QP c value of the P frame is determined, the QP c value is limited to the ΔQP value as shown in Equation (24) to reduce image quality deterioration between frames.
(24) (24)
식 (24)에서 QPp는 이전 프레임에서의 QP값을 나타내며 프레임간의 QP값을 제한하는 ΔQP값은 ±2로 설정하였다. 프레임간의 QP값 차이가 ±2를 초과하면 시각적으로 영상의 이질감을 보일 수 있다.In Eq. (24), QP p represents the QP value in the previous frame, and the ΔQP value that limits the QP value between frames is set to ± 2. If the QP value difference between the frames exceeds ± 2, visual heterogeneity may be visually shown.
4) 프레임에 대한 복잡도 갱신(단계 4)4) Update Complexity for Frame (Step 4)
단계 4에서는 이전 프레임을 부호화 한 후에 발생된 실제 비트량을 이용하여 현재 프레임의 복잡도를 계산하는 단계로서, 가상 버퍼의 점유량 및 버퍼의 오버플로우과 언더플로우을 예방하기 위한 과정 그리고 이전에 부호화된 P 프레임들의 발생된 비트량과 현재 프레임의 발생 비트량을 이용하여 이후에 부호화시 사용될 P 프레임의 복잡도 가중치를 계산한다. In
가상 버퍼의 점유량 Bc 및 버퍼의 오버플로우과 언더플로우을 예방하기 위한 버퍼의 상한 U(n) 및 하한 L(n) 값은 다음 식 (25)~(27)을 통해서 구해진다.The upper limit U (n) and lower limit L (n) values of the buffer for preventing the occupancy amount B c of the virtual buffer and the overflow and underflow of the buffer are obtained through the following equations (25) to (27).
(25) (25)
(26) (26)
(27) (27)
다음에 부호화 할 P 프레임의 목표 비트량을 예측하기 위한 P 프레임의 복잡도 가중치 Wp는 식 (28)과 같이 구해진다.Then the complexity of the P-frame to predict the target bit quantity of the P frame to be encoded in a weight W p is obtained as shown in equation (28).
(28) (28)
본 발명의 하나의 실시예에서는 P 프레임에 대한 복잡도 가중치를 예측하기 위한 부호화된 P 프레임들의 최대 개수를 20개로 제한하였다. 식 (28)에서 Sbits는 이전 P 프레임의 발생 비트량 A(n-2)~A(n-20) 구간에서 QPp와 동일한 QP값을 갖는 P 프레임들의 평균 비트량이다. 이는 프레임에 할당할 수 있는 비트량을 통하여 QP값을 결정하기 위해서는 각QP값에 따라 발생되는 프레임 비트량을 알아야 하기 때문이다. 또한 부호화 하고자 하는 P 프레임은 인접한 프레임들과의 밀접한 상관관계를 가지고 있다. 따라서 바람직한 하나의 실시예에서, 목표 비트량과 실제 발생된 비트량과의 오차를 줄이기 위한 A(n-1)와 Sbits의 가중치 λ값을 0.67로 설정하였다. 이 λ값은 각각의 고정 QP값과 움직임 추정을 위한 참조 프레임을 20으로 설정하고 시뮬레이션하여 얻어낸 결과 값이다.In one embodiment of the present invention, the maximum number of encoded P frames for predicting the complexity weight for the P frame is limited to 20. In Equation (28), S bits is an average bit amount of P frames having the same QP value as QP p in the generation bit amounts A (n-2) to A (n-20) of the previous P frame. This is because it is necessary to know the frame bit amount generated according to each QP value in order to determine the QP value through the bit amount that can be allocated to the frame. In addition, the P frame to be encoded has a close correlation with adjacent frames. Therefore, in one preferred embodiment, the weight lambda value of A (n-1) and S bits is set to 0.67 to reduce the error between the target bit amount and the actually generated bit amount. This lambda value is a result obtained by simulating each fixed QP value and a reference frame for motion estimation to 20.
[실험 결과][Experiment result]
본 발명에서는 H.264/AVC 부호기를 기반으로 한 효율적인 비트율 제어 방법 을 제시하였다. 본 발명의 실시예의 성능을 검증하기 위하여 H.264/AVC 참조 소프트웨어 12.1 부호기를 사용하였다. 실험에 사용된 영상은 부호기에서의 성능평가 테스트로 광범위하게 사용되는 QCIF급 CONTAINER, NEWS, FOREMAN, COASTGUARD, PARIS, SIGN IRENE, TABLE 영상을 사용하였다. 영상의 GOP 구조는 초기 I 프레임과 그 이후의 모든 프레임들은 P 프레임으로 구성하였고 B 프레임을 사용하지 않았다. 그리고 모든 영상들은 프레임 스킵 없이 QP값을 프레임별로 적용하여 실험하였다. 기존의 비트율 제어 알고리즘인 JM12.1과 참고 논문(M. Jiang and N.Ling, "On Enhancing H.264/AVC Video Rate Control by PSNR-Based Frame Complexity Estimation", IEEE Trans. Consumer. Electronics. vol. 51, no. 1, Feb. 2005.) 그리고 본 발명의 하나의 실시예에 따른 비트율 제어 방법은 영상 화질의 객관적 평가를 위해 PSNR(Peak Signal to Noise Ratio)을 사용하였으며, M×N 크기의 8bits 영상에 대하여 원 영상 대비 복호화 된 영상의 잡음비율은 다음과 같이 정의된다.In the present invention, an efficient bit rate control method based on an H.264 / AVC coder is proposed. H.264 / AVC reference software 12.1 encoder was used to verify the performance of the embodiment of the present invention. The images used in the experiments were QCIF-level CONTAINER, NEWS, FOREMAN, COASTGUARD, PARIS, SIGN IRENE, and TABLE images, which are widely used as performance evaluation tests in the encoder. The GOP structure of the image consists of the initial I frame and all subsequent frames consisting of P frames and no B frames. All the images were tested by applying the QP value frame by frame without skipping frames. JM12.1, an existing bit rate control algorithm, and a reference paper (M. Jiang and N.Ling, "On Enhancing H.264 / AVC Video Rate Control by PSNR-Based Frame Complexity Estimation", IEEE Trans. Consumer.Electronics.vol. 51, no. 1, Feb. 2005.) And the bit rate control method according to an embodiment of the present invention used the Peak Signal to Noise Ratio (PSNR) for the objective evaluation of the image quality, 8bits of M × N size The noise ratio of the decoded image to the original image is defined as follows.
(29) (29)
식 (29) 에서 는 유클리드 놈(Euclidean norm)을 나타내고, 는 원 영상, 은 복호화 된 영상을 나타낸다. 그리고 각 알고리즘의 계산량 비교를 위하여 고밀도 측정 타이머를 사용하였으며, 계산량 측정 범위는 각 알고리즘의 데 이터 및 버퍼의 초기화 부분을 제외한 비트율을 제어하는 부분에서만 측정하였다. <표 2>, <표 3> 및 <표 4>는 채널 전송대역폭이 각각 32, 64, 128Kbps이고 프레임율이 30fps일 때 기존 비트율 제어 방법과 본 발명의 하나의 실시예에 따른 비트율 제어 방법에 대한 부호화된 비트량, PSNR 및 계산량 비교이다.In equation (29) Represents Euclidean norm, Circle image, Represents the decoded image. High-density measurement timers were used to compare the computational quantities of each algorithm, and the computational measurement range was measured only in the part that controls the bit rate except for the data and buffer initialization of each algorithm. <Table 2>, <Table 3> and <Table 4> show the existing bit rate control method and the bit rate control method according to an embodiment of the present invention when the channel transmission bandwidth is 32, 64, 128 Kbps and the frame rate is 30fps, respectively. The coded bit rate, the PSNR and the computed amount are compared.
<표 2> 32 kbps 채널전송환경에서 각 영상들의 부호화된 비트량, PSNR 및 계산량 <Table 2> Coded Bit Rate, PSNR and Computation Rate of Each Image in 32 kbps Channel Transmission Environment
(영상)Sequence
(video)
rateBit
rate
(㎲)Calculation
(㎲)
rateBit
rate
(㎲)Calculation
(㎲)
rateBit
rate
(㎲)Calculation
(㎲)
<표 3> 64 kbps 채널전송환경에서 각 영상들의 부호화된 비트량, PSNR 및 계산량<Table 3> Coded bit rate, PSNR, and computation amount of each image in 64 kbps channel transmission environment
(영상)Sequence
(video)
rateBit
rate
(㎲)Calculation
(㎲)
rateBit
rate
(㎲)Calculation
(㎲)
rateBit
rate
(㎲)Calculation
(㎲)
<표 4> 128 kbps 채널전송환경에서 각 영상들의 부호화된 비트량, PSNR 및 계산량<Table 4> Coded bit rate, PSNR and amount of each video in 128 kbps channel transmission environment
(영상)Sequence
(video)
rateBit
rate
(㎲)Calculation
(㎲)
rateBit
rate
(㎲)Calculation
(㎲)
rateBit
rate
(㎲)Calculation
(㎲)
실험 결과표에서 알 수 있듯이 참고 논문이 JM 12.1보다는 평균적으로 0.07Kbps의 적은 비트량을 절약하고도 PSNR 측면에서는 평균적으로 0.02~0.03dB 정도 높게 나와 더 좋은 성능을 보이고 있다. 그러나 참고 논문의 방법은 PSNR 기반의 비트율을 제어하기 때문에 이에 따른 계산량 증가로 JM 12.1의 방법보다는 약 13%의 계산량이 더 필요한 것으로 나타났다. 그리고 JM 12.1과 참고 논문의 방법은 채널 전송환경에 부적합하게 평균적으로 0.1Kbps 비트량을 초과 발생하였다. As can be seen from the experimental results table, the reference paper saves 0.07Kbps less bit on average than JM 12.1, but shows better performance by 0.02 ~ 0.03dB higher on the PSNR side. However, the method of reference paper controls bit rate based on PSNR. Therefore, it is shown that about 13% more calculation amount is needed than the method of JM 12.1 due to the increase of computation. And the method of JM 12.1 and the reference paper is over 0.1Kbps bit on average, which is unsuitable for channel transmission environment.
반면, 본 발명의 실시예에 따른 방법은 PSNR 측면에서 JM 12.1보다는 평균적으로 0.02dB 정도 낮았고, 참고 논문보다는 평균적으로 0.04dB 정도 낮았지만, 채널 전송 환경에서의 발생 비트량은 JM 12.1 방법보다 0.5Kbps 정도 절약하였고, 참고 논문 방법보다는 0.12Kbps 정도 절약하였다. On the other hand, the method according to the embodiment of the present invention is about 0.02 dB lower than the JM 12.1 in terms of PSNR, and about 0.04 dB lower than the reference paper, but the amount of bits generated in the channel transmission environment is about 0.5 Kbps than the JM 12.1 method. It saved about 0.12Kbps than the reference paper method.
또한 본 발명의 실시예에 따른 방법이 전체적으로 채널 전송 환경에 적합하 게 비트량을 잘 조절하고 있음을 알 수 있다. 계산량에 있어서는 JM 12.1 방법과 참고 논문 방법 모두 복잡한 MAD 계산과 이에 따른 비트량 조절을 위한 연산량이 본 발명의 실시예에 따른 방법보다 월등히 많음을 알 수 있다. In addition, it can be seen that the method according to the embodiment of the present invention adjusts the bit amount appropriately for the overall channel transmission environment. In terms of the calculation amount, both the JM 12.1 method and the reference paper method show that the amount of calculation for complex MAD calculation and the bit amount adjustment accordingly is much higher than the method according to the embodiment of the present invention.
특히 현재 프레임에 대한 복잡도를 예측하는데 사용되는 MAD 계산량(MAD %)이 전체 비트율 제어 계산량의 평균적으로 약 12% ~ 14%정도 차지하고 있음을 실험결과 확인할 수 있었다. In particular, the experimental results show that the MAD calculation (MAD%) used to predict the complexity of the current frame occupies about 12% to 14% of the total bit rate control calculation.
실험 결과에서 알 수 있듯이 본 발명의 실시예에 따른 방법이 PSNR 측면에서 기존 JM 12.1 방법과 참고 논문 방법과는 평균적으로 거의 비슷하였지만, 계산량에서는 평균적으로 월등히 적은 0.1%만의 계산량으로도 효율적인 비트율을 제어할 수 있음을 확인하였다. As can be seen from the experimental results, the method according to the embodiment of the present invention was almost similar to the conventional JM 12.1 method and the reference paper method in terms of PSNR, but the average bit rate was controlled with a very small amount of 0.1%. It was confirmed that it can be done.
본 발명의 실시예에 따른 방법의 많은 계산량 절감은 기존 방법과는 달리 복잡한 MAD 계산과 이에 따른 계산 과정을 따르지 않고, 기존 영상들의 통계정보를 이용하고 실시간적으로 발생하는 발생 비트량을 다시 통계정보로 활용함으로써 영상의 특성에 적응적으로 비트율 제어가 이루어졌기 때문이다.In the method according to the embodiment of the present invention, a large amount of computational savings does not follow complicated MAD calculations and calculation processes, unlike conventional methods, and utilizes statistical information of existing images and regenerates the generated bit amount in real time. This is because the bit rate control is adaptively applied to the characteristics of the image by utilizing the.
도 3와 도 4는 TABLE 영상을 128Kbps 채널로 전송할 경우, 본 발명의 실시예에 따른 방법과 기존 방법들에 대하여 프레임별 부호화된 비트량과 PSNR 비교이다. JM 12.1은 기존의 JM 12.1 모델에 따른 것이고, REF 14는 상기 M. Jiang 과 N.Ling의 참고 논문에 따른 방법이고, Proposed는 본 발명의 하나의 실시예에 따른 것이다. 본 발명의 실시예에 따른 방법이 기존 방법들에 비해 좀 더 안정적으로 발생 비트량을 발생시키면서도 높은 PSNR 성능을 보여주고 있다.3 and 4 illustrate a comparison between the bit rate and PSNR coded for each frame in the method and the existing methods according to an embodiment of the present invention when a TABLE image is transmitted through a 128 Kbps channel. JM 12.1 is based on the existing JM 12.1 model,
도 5, 7, 8은 각각 CONTAINER, NEWS, TABLE 영상을 다양한 채널로 전송할 경우, 본 발명의 실시예에 따른 방법과 기존 방법들에 대한 PSNR 성능 비교이다. JM 12.1은 기존의 JM 12.1 모델에 따른 것이고, REF 14는 상기 M. Jiang 과 N.Ling의 참고 논문에 따른 방법이고, Proposed는 본 발명의 하나의 실시예에 따른 것이다. 대부분의 전송 채널에 있어서 기존 방법과 유사한 PSNR 성능을 보여주고 있음을 알 수 있다.5, 7, and 8 are PSNR performance comparisons between the method according to the embodiment of the present invention and the existing methods when the CONTAINER, NEWS, and TABLE images are transmitted through various channels, respectively. JM 12.1 is based on the existing JM 12.1 model,
이상에서, 본 발명은 첨부된 도면을 참조하여 바람직한 실시예들을 중심으로 설명되었다. 첨부된 도면 및 전술한 실시예들은 본 발명에 대한 당해 기술분야에서 통상의 지식을 가진 자의 이해를 돕기 위해 예시적으로 설명된 것이다. 그러므로, 본 발명의 다양한 실시예는 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있고, 전술한 실시예들은 제한적인 것이 아닌 예시적인 것으로 여겨져야 한다. 따라서, 본 발명의 범위는 전술한 실시예들이 아니라 첨부된 특허청구범위에 기재된 발명에 따라 해석되어야 하며, 당해 기술분야에서 통상의 지식을 가진 자에 의한 다양한 변경, 대안, 균등물들이 전술한 발명의 범위에 포함되어 있음은 자명하다.In the above, the present invention has been described with reference to the preferred embodiments with reference to the accompanying drawings. The accompanying drawings and the foregoing embodiments are described by way of example to help those skilled in the art to understand the present invention. Therefore, various embodiments of the present invention can be implemented in a modified form without departing from the essential characteristics of the present invention, the foregoing embodiments are to be considered as illustrative and not restrictive. Therefore, the scope of the present invention should be interpreted according to the invention described in the appended claims rather than the above-described embodiments, and various modifications, alternatives, and equivalents described by those skilled in the art are described above. It is obvious that it is included in the scope of the.
도 1는 본 발명의 하나의 실시예에 따른 비트율 제어방법의 계층적 구조를 나타내는 도면이고,1 is a diagram illustrating a hierarchical structure of a bit rate control method according to an embodiment of the present invention;
도 2은 본 발명의 하나의 모습에 있어서, 각 영상의 특성에 따른 발생 비트량이 달라지는 모습을 나타내는 그래프이고,2 is a graph illustrating a state in which the amount of generated bits varies according to characteristics of each image in one aspect of the present invention.
도 3는 Table 영상에 대한 본 발명의 하나의 실시예와 기존 방법들의 프레임별 부호화된 비트량 비교(128Kbps)를 나타내는 그래프이고,3 is a graph illustrating a comparison of encoded bit amounts (128 Kbps) per frame of one embodiment of the present invention and existing methods for a table image;
도 4는 Table 영상에 대한 본 발명의 하나의 실시예와 기존 방법들의 프레임별 PSNR 비교(128Kbps)를 나타내는 그래프이고,4 is a graph illustrating PSNR comparison (128 Kbps) per frame of one embodiment of the present invention and existing methods for a table image.
도 5은 Container 영상에 대한 본 발명의 하나의 실시예와 기존 방법들의 평균 PSNR Y(dB)(@30Hz)를 나타내는 그래프이고,5 is a graph showing an average PSNR Y (dB) (@ 30 Hz) of one embodiment of the present invention and existing methods for a container image.
도 6은 News 영상에 대한 본 발명의 하나의 실시예와 기존 방법들의 평균 PSNR Y(dB)(@30Hz)를 나타내는 그래프이고,FIG. 6 is a graph showing an average PSNR Y (dB) (@ 30 Hz) of one embodiment of the present invention and existing methods for a News image.
도 7은 Table 영상에 대한 본 발명의 하나의 실시예와 기존 방법들의 평균 PSNR Y(dB)(@30Hz)를 나타내는 그래프이다.7 is a graph showing an average PSNR Y (dB) (@ 30 Hz) of one embodiment of the present invention and a conventional method for a table image.
Claims (7)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090047858A KR101069254B1 (en) | 2009-05-29 | 2009-05-29 | Method of Rate Control in Frame-level for H.264/AVC |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090047858A KR101069254B1 (en) | 2009-05-29 | 2009-05-29 | Method of Rate Control in Frame-level for H.264/AVC |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100129091A true KR20100129091A (en) | 2010-12-08 |
KR101069254B1 KR101069254B1 (en) | 2011-10-04 |
Family
ID=43505873
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090047858A KR101069254B1 (en) | 2009-05-29 | 2009-05-29 | Method of Rate Control in Frame-level for H.264/AVC |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101069254B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112004088A (en) * | 2020-08-06 | 2020-11-27 | 杭州当虹科技股份有限公司 | CU (computer Unit) level QP (quantization parameter) allocation algorithm suitable for AVS2 encoder |
CN113973205A (en) * | 2021-10-21 | 2022-01-25 | 重庆邮电大学 | Code rate control bit distribution method based on video content characteristics and storage medium |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100797396B1 (en) | 2005-12-08 | 2008-01-28 | 한국전자통신연구원 | Method and device for controlling transcoding bit-rate using complexity of macroblock |
-
2009
- 2009-05-29 KR KR1020090047858A patent/KR101069254B1/en not_active IP Right Cessation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112004088A (en) * | 2020-08-06 | 2020-11-27 | 杭州当虹科技股份有限公司 | CU (computer Unit) level QP (quantization parameter) allocation algorithm suitable for AVS2 encoder |
CN112004088B (en) * | 2020-08-06 | 2024-04-16 | 杭州当虹科技股份有限公司 | CU-level QP allocation algorithm suitable for AVS2 encoder |
CN113973205A (en) * | 2021-10-21 | 2022-01-25 | 重庆邮电大学 | Code rate control bit distribution method based on video content characteristics and storage medium |
Also Published As
Publication number | Publication date |
---|---|
KR101069254B1 (en) | 2011-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5969764A (en) | Adaptive video coding method | |
US9071840B2 (en) | Encoder with adaptive rate control for H.264 | |
JP4390112B2 (en) | Method and apparatus for controlling rate of video sequence and video encoding apparatus | |
US8009730B2 (en) | Method for controlling the encoder output bit rate in a block-based video encoder and corresponding video encoder apparatus | |
KR20040011100A (en) | Advanced method for rate control and apparatus thereof | |
KR100790149B1 (en) | Rate control of scene-changed video encoder | |
WO2000018137A1 (en) | Frame-level rate control for video compression | |
EP1350394A2 (en) | Method of performing video encoding rate control using bit budget | |
Sun et al. | A robust and adaptive rate control algorithm for object-based video coding | |
CN100574442C (en) | Bit rate control method based on image histogram | |
CN105187832B (en) | Based on 2.5G wireless network mobile video bit rate control methods | |
KR100708182B1 (en) | Rate control apparatus and method in video encoder | |
KR101069254B1 (en) | Method of Rate Control in Frame-level for H.264/AVC | |
KR100800838B1 (en) | Rate control of video encoder | |
JPH09294267A (en) | Image compression coder | |
Yu et al. | An improved rate control algorithm for H. 264 | |
KR100950275B1 (en) | System and Methods for rate control based model parameter, Storage medium storing the same | |
KR100963322B1 (en) | Method of Adaptive Rate Control in Frame-layer for Real-time H.264/AVC | |
KR101168007B1 (en) | A Method for Adaptive Rate Control in Unit-level for Real-time H.264/AVC | |
KR100961742B1 (en) | The macroblock-layer rate control method in h.264/avc | |
KR101197094B1 (en) | Method and apparatus for controlling bitrate based on statistical model for h.264/avc | |
Pai et al. | MPEG-4 constant-quality constant-bit-rate control algorithms | |
CA2105209A1 (en) | Bit rate control for hybrid dpcm/dct video codec | |
KR20010104058A (en) | Adaptive quantizer according to DCT mode in MPEG2 encoder | |
KR100949755B1 (en) | A method and an apparatus for controlling the rate of a video sequence, a video encoding device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20140709 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20150609 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20160627 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |