JP6495834B2 - Video encoding method, video encoding apparatus, and video encoding program - Google Patents

Video encoding method, video encoding apparatus, and video encoding program Download PDF

Info

Publication number
JP6495834B2
JP6495834B2 JP2016000456A JP2016000456A JP6495834B2 JP 6495834 B2 JP6495834 B2 JP 6495834B2 JP 2016000456 A JP2016000456 A JP 2016000456A JP 2016000456 A JP2016000456 A JP 2016000456A JP 6495834 B2 JP6495834 B2 JP 6495834B2
Authority
JP
Japan
Prior art keywords
code amount
video encoding
value
encoding
video
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2016000456A
Other languages
Japanese (ja)
Other versions
JP2017123513A (en
Inventor
誠之 高村
誠之 高村
清水 淳
淳 清水
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2016000456A priority Critical patent/JP6495834B2/en
Publication of JP2017123513A publication Critical patent/JP2017123513A/en
Application granted granted Critical
Publication of JP6495834B2 publication Critical patent/JP6495834B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は、映像符号化方法、映像符号化装置及び映像符号化プログラムに関する。   The present invention relates to a video encoding method, a video encoding device, and a video encoding program.

従来から、代表的な映像符号化規格として、映像符号化国際規格H.264/AVC(Advanced Video Coding、例えば、非特許文献1参照)及びH.265/HEVC(High Efficiency Video Coding、例えば、非特許文献2参照)が知られている。これらの規格を用いた映像符号化を高効率に行うために、圧縮ビット列符号を出力する最後段の処理として「エントロピー符号化」がある。H.264/AVC及びH.265/HEVCにおいては、このエントロピー符号化としてCABAC(コンテキスト適応型二値算術符号化方式;Context Adaptive Binary Arithmetic Coding)という方法が用いられている。   Conventionally, as a typical video coding standard, the video coding international standard H.264 has been used. H.264 / AVC (Advanced Video Coding, see Non-Patent Document 1, for example) and H.264 / AVC. H.265 / HEVC (High Efficiency Video Coding, see Non-Patent Document 2, for example) is known. In order to perform video coding using these standards with high efficiency, there is “entropy coding” as the last stage process for outputting a compressed bit string code. H. H.264 / AVC and H.264. In H.265 / HEVC, a CABAC (Context Adaptive Binary Arithmetic Coding) method is used as the entropy coding.

また高能率映像符号化においては、個々の符号化単位(映像を構成するフレームを所定サイズに分割したブロック)の符号化を行う際、符号化モードと呼ばれる選択肢が多数あり、その選択肢の中から適切な符号化モードを選択することが可能となっている。このとき、符号化モードのどれを選べば最適であるかが重要である。すなわち、一定符号量において歪みを最小化する符号化モード、言い方を換えると一定歪み量の下で符号量を最小化する符号化モードを選択する必要がある。最適な符号化モードの選択にはLagrangeの未定乗数法に基づいた方法が用いられており、「RD最適化(Rate−Distortion最適化)」と呼ばれている。   In high-efficiency video encoding, there are many options called encoding modes when encoding individual encoding units (blocks obtained by dividing a frame constituting a video into a predetermined size). An appropriate encoding mode can be selected. At this time, it is important which of the coding modes is optimal. That is, it is necessary to select an encoding mode that minimizes distortion at a constant code amount, in other words, an encoding mode that minimizes code amount under a certain amount of distortion. A method based on Lagrange's undetermined multiplier method is used to select an optimal encoding mode, which is called “RD optimization (Rate-Distortion optimization)”.

RD最適化において用いる変数は3つある。1つ目の「R」はそのモードを選んで符号化単位を符号化をしたときのビット数(以下、「符号量推定値」という。)である。2つ目の「D」はそのときの復号信号と原信号の誤差二乗和である。そして3つ目の「λ」はラグランジュ未定乗数である。λは目標とする画質や符号量に応じて映像符号化装置が任意に選択するものである。そして、選択可能な各符号化モードについて、(1)式の「コスト関数」と呼ばれる量Cを最小化する符号化モードが選択される。
C=D+λR ・・・(1)
There are three variables used in RD optimization. The first “R” is the number of bits when the mode is selected and the encoding unit is encoded (hereinafter referred to as “code amount estimation value”). The second “D” is the sum of squared errors between the decoded signal and the original signal. The third “λ” is a Lagrange undetermined multiplier. λ is arbitrarily selected by the video encoding apparatus according to the target image quality and code amount. Then, for each selectable encoding mode, an encoding mode that minimizes the quantity C called “cost function” in equation (1) is selected.
C = D + λR (1)

H.265/HEVC及びH.264/AVCの実際の符号化ソフトウェアでは、RD最適化を行う場合に、実際のCABAC符号化を行わず、発生符号量を推定によって求めることが多い。これはCABAC符号化の処理量が比較的大きなものであるため、選択可能な各符号化モードについて符号量推定値Rを求める処理量が多大になってしまうのを避けるためである。   H. H.265 / HEVC and H.264. In actual coding software of H.264 / AVC, when RD optimization is performed, the generated code amount is often obtained by estimation without performing actual CABAC coding. This is because the amount of processing of CABAC encoding is relatively large, so that the amount of processing for obtaining the code amount estimation value R for each selectable encoding mode is avoided.

そのような発生符号量推定方法として、例えば非特許文献3の方法は符号化前段に現れるいくつかの数値から線形回帰により推定符号量を得ている。   As such a generated code amount estimation method, for example, the method of Non-Patent Document 3 obtains an estimated code amount by linear regression from several numerical values appearing in the preceding stage of encoding.

より一般的な符号量推定方法として、符号化すべき信号の生起確率を用いた方法がある(例えば、非特許文献4、5、6参照)。これら方法により、高い精度でCABAC発生符号量を推定しつつ、処理量を1〜25%削減することができる。   As a more general code amount estimation method, there is a method using an occurrence probability of a signal to be encoded (see, for example, Non-Patent Documents 4, 5, and 6). By these methods, it is possible to reduce the processing amount by 1 to 25% while estimating the CABAC generated code amount with high accuracy.

例えば非特許文献6の方法は、H.265/HEVCの参照ソフトウェアで用いられている方法であるが、既に出力されたビット量Bwと、固定小数点数Bfを用いて、(2)式によって符号量推定値Rを求めている。
R=Bw+(Bf>>15) ・・・(2)
(2)式において、’>>’は右ビットシフト演算である。すなわち、(2)式は、固定小数点数Bfを右へ15ビットシフトして得られた値にBwを加算して符号量推定値Rを求めている。
For example, the method of Non-Patent Document 6 is described in H.H. This is a method used in the reference software of H.265 / HEVC, and the code amount estimation value R is obtained by the equation (2) using the already output bit amount Bw and the fixed-point number Bf.
R = Bw + (Bf >> 15) (2)
In Expression (2), “>>” is a right bit shift operation. That is, in the equation (2), the code amount estimated value R is obtained by adding Bw to the value obtained by shifting the fixed-point number Bf to the right by 15 bits.

ISO/IEC 14496-10:2014 Information technology -- Coding of audio-visual objects -- Part 10: Advanced Video CodingISO / IEC 14496-10: 2014 Information technology-Coding of audio-visual objects-Part 10: Advanced Video Coding ISO/IEC 23008-2:2015 Information technology -- High efficiency coding and media delivery in heterogeneous environments -- Part 2: High efficiency video codingISO / IEC 23008-2: 2015 Information technology-High efficiency coding and media delivery in heterogeneous environments-Part 2: High efficiency video coding S. Guo, Z. Liu, D. Wang, Q. Han and Y. Song, "Linear rate estimation model for HEVC RDO using binary classification based regression" Data Compression Conference 2014, p. 406, Snowbird, March 2014S. Guo, Z. Liu, D. Wang, Q. Han and Y. Song, "Linear rate estimation model for HEVC RDO using binary classification based regression" Data Compression Conference 2014, p. 406, Snowbird, March 2014 J. Hahm and C.-M. Kyung, "Efficient CABAC rate estimation for H.264/AVC mode decision," IEEE Trans. CSVT, vol. 20, no. 2, pp. 310-316, February 2010.J. Hahm and C.-M. Kyung, "Efficient CABAC rate estimation for H.264 / AVC mode decision," IEEE Trans. CSVT, vol. 20, no. 2, pp. 310-316, February 2010. K. Won, J. Yang and B. Jeon, "Fast CABAC rate estimation for H.264/AVC mode decision," Electronics Letters, vol. 48, no. 19, pp. 1201-1203, September 2012.K. Won, J. Yang and B. Jeon, "Fast CABAC rate estimation for H.264 / AVC mode decision," Electronics Letters, vol. 48, no. 19, pp. 1201-1203, September 2012. F. Bossen, "CE1: Table-based bit estimation for CABAC," JCTVCG763, Geneva, November 2011F. Bossen, "CE1: Table-based bit estimation for CABAC," JCTVCG763, Geneva, November 2011

ところで、非特許文献3、4、5、6に記載の方法はいずれも、推定符号量を算出する過程で小数の推定値が得られていたのにこれを四捨五入または切り捨てを行って、推定符号量を整数としていた。これはCABACが発生する符号は0または1のビットの羅列であることから自然なことと考えられていた。   By the way, in any of the methods described in Non-Patent Documents 3, 4, 5, and 6, although the estimated number of decimals was obtained in the process of calculating the estimated code amount, the estimated code is rounded or rounded off. The quantity was an integer. This was considered natural because the code generated by CABAC is a sequence of 0 or 1 bits.

しかしながら、確率pで起こる信号の符号量は正確には、log(p)ビットとなり、必ずしも整数にはならない場合がある。ここでlog(p)は2を底とするpの対数である。例えば確率が0.6で起こる信号の符号量は約0.737ビットである。このように符号量は一般に0以上の小数値をとる。 However, the code amount of the signal occurring with the probability p is exactly log 2 (p) bits and may not necessarily be an integer. Where log 2 (p) is the logarithm of p with 2 as the base. For example, the code amount of a signal that occurs with a probability of 0.6 is about 0.737 bits. Thus, the code amount generally takes a decimal value of 0 or more.

したがって従来方法では推定符号量に対して、四捨五入または切り捨てを行うことにより、数値を丸めて整数化していたため、符号量推定値Rに1ビット未満の丸め誤差が含まれていた。元々が推定値ではあるため、実際のCABAC符号量との誤差も当然あるが、従来は、実際の符号量との誤差に加えて前述の丸め誤差が含まれた値を用いてRD最適化が行われていた。すなわち誤差が比較的多く含まれてしまっている符号量推定値Rに基づくコスト関数Cの最小化を行っていたため、最適な符号化モードが得られていない可能性があり、さらには符号化効率が低下するという問題がある。   Therefore, in the conventional method, the estimated code amount is rounded or rounded down to round the numerical value to an integer, so that the code amount estimated value R includes a rounding error of less than 1 bit. Since it is originally an estimated value, there is naturally an error with the actual CABAC code amount. Conventionally, however, RD optimization is performed using a value that includes the above-described rounding error in addition to the error with the actual code amount. It was broken. That is, since the cost function C based on the code amount estimation value R that contains a relatively large amount of error has been minimized, there is a possibility that an optimal encoding mode may not be obtained, and further, the encoding efficiency There is a problem that decreases.

この1ビット未満の丸め誤差は、符号量推定値Rが数千ビットと大きい場合は無視できる量であるが、例えば前述の確率が0.6の場合、この符号量を丸めて1ビットとすると、元の符号量に加わる誤差の割合は、(3)式のように35.7%となり、無視できない程度に大きな割合を占める。
(1−log(p))/log(p)×100=35.7[%] ・・・(3)
The rounding error of less than 1 bit is a negligible amount when the code amount estimation value R is as large as several thousand bits. For example, when the probability is 0.6, if the code amount is rounded to 1 bit, The ratio of the error added to the original code amount is 35.7% as shown in the equation (3), which occupies a large ratio that cannot be ignored.
(1-log 2 (p)) / log 2 (p) × 100 = 35.7 [%] (3)

本発明は、このような事情に鑑みてなされたもので、符号量推定値Rの精度を向上させることができる映像符号化方法、映像符号化装置及び映像符号化プログラムを提供することを目的とする。   The present invention has been made in view of such circumstances, and an object thereof is to provide a video encoding method, a video encoding device, and a video encoding program capable of improving the accuracy of the code amount estimation value R. To do.

本発明の一態様は、入力映像の信号を符号化する映像符号化装置が行う映像符号化方法であって、符号化モードを選択する場合のコスト関数計算に用いる符号量推定値の計算を浮動小数点演算を用いて行う符号量推定値計算ステップを有する映像符号化方法である。   One aspect of the present invention is a video encoding method performed by a video encoding device that encodes a signal of an input video, and floating calculation of a code amount estimation value used for cost function calculation when an encoding mode is selected. This is a video encoding method including a code amount estimated value calculation step performed using decimal point arithmetic.

本発明の一態様は、前記映像符号化方法であって、前記符号量推定値計算ステップでは、符号化単位の符号量の整数部分Bwと、前記符号量の少数部分Bfとを算出し、前記符号量推定値を「Bw+Bf÷所定の値」によって計算する。   One aspect of the present invention is the video encoding method, wherein the code amount estimation value calculation step calculates an integer part Bw of a code amount of a coding unit and a decimal part Bf of the code amount, The estimated code amount is calculated by “Bw + Bf ÷ predetermined value”.

本発明の一態様は、前記映像符号化方法であって、前記符号量推定値をビットシフト演算によって算出する場合のビットシフト数をnとしたときに、前記所定の値は、2である。 One aspect of the present invention is the video encoding method, wherein the predetermined value is 2 n when the number of bit shifts when the code amount estimation value is calculated by a bit shift operation is n . .

本発明の一態様は、前記映像符号化方法であって、前記所定の値は、32768である。   One aspect of the present invention is the video encoding method, wherein the predetermined value is 32768.

本発明の一態様は、入力映像の信号を符号化する映像符号化装置であって、符号化モードを選択する場合のコスト関数計算に用いる符号量推定値の計算を浮動小数点演算を用いて行う符号量推定値計算部を備える映像符号化装置である。   One aspect of the present invention is a video encoding apparatus that encodes an input video signal, and performs calculation of a code amount estimation value used for cost function calculation when a coding mode is selected by using a floating-point operation. It is a video coding apparatus provided with a code amount estimated value calculation part.

本発明の一態様は、コンピュータに、前記映像符号化方法を実行させるための映像符号化プログラムである。   One aspect of the present invention is a video encoding program for causing a computer to execute the video encoding method.

本発明によれば、固定少数点のビットシフトを用いずに、浮動小数点演算を用いて、符号量推定値Rを求めるようにしたため、符号量推定値Rの精度を向上させることができる。符号量推定値Rの精度向上により、映像符号化において、RD最適化を精緻化することができるため、より適切な符号化モードが選択されるようになり、より少ない符号量でより高い品質の復号映像が得られるという効果が得られる。   According to the present invention, since the code amount estimated value R is obtained using floating point arithmetic without using a fixed decimal point bit shift, the accuracy of the code amount estimated value R can be improved. By improving the accuracy of the code amount estimation value R, it is possible to refine RD optimization in video encoding, so that a more appropriate encoding mode is selected, and a higher quality is achieved with a smaller code amount. An effect of obtaining a decoded video is obtained.

一般的な映像符号化装置の構成を示すブロック図である。It is a block diagram which shows the structure of a general video coding apparatus. 図1に示す映像符号化装置の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the video coding apparatus shown in FIG. 図1に示す符号化制御部115の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the encoding control part 115 shown in FIG. 図3に示す符号量推定値Rを算出するステップS16の動作を示すフローチャートである。It is a flowchart which shows operation | movement of step S16 which calculates the code amount estimated value R shown in FIG.

以下、図面を参照して、本発明の実施形態による映像符号化装置を説明する。なお、本明細書において、画像とは、静止画像、または動画像を構成する1フレーム分の画像のことをいう。また映像とは、動画像と同じ意味であり、一連の画像の集合である。   A video encoding apparatus according to an embodiment of the present invention will be described below with reference to the drawings. Note that in this specification, an image means a still image or an image for one frame constituting a moving image. A video has the same meaning as a moving image, and is a set of a series of images.

はじめに、H.265/HEVCまたはH.264/AVCを含む一般的な映像符号化装置の構成を説明する。図1は、一般的な映像符号化装置10の構成を示すブロック図である。図1に示す映像符号化装置10は、符号化対象の映像信号100を入力し、ブロックに分割してブロック毎に符号化することによって、より小さい符号化データ118を生成して出力する。   First, H.C. H.265 / HEVC or H.264 A configuration of a general video encoding device including H.264 / AVC will be described. FIG. 1 is a block diagram showing a configuration of a general video encoding device 10. The video encoding device 10 shown in FIG. 1 receives the video signal 100 to be encoded, divides it into blocks, and encodes each block, thereby generating and outputting smaller encoded data 118.

映像符号化装置10は、減算部102、変換・量子化部104、逆量子化・逆変換部106、加算部107、歪除去フィルタ108、フレームメモリ109、画面内予測部111、動き推定部112、画面間予測部114、符号化制御部115、エントロピー符号化部117を備える。   The video encoding device 10 includes a subtraction unit 102, a transform / quantization unit 104, an inverse quantization / inverse transform unit 106, an addition unit 107, a distortion removal filter 108, a frame memory 109, an in-screen prediction unit 111, and a motion estimation unit 112. , An inter-screen prediction unit 114, an encoding control unit 115, and an entropy encoding unit 117.

なお、映像符号化装置10の構成を図1を参照して説明するに際して、映像符号化装置10が普通に有する公知の機能・構成については、本発明の説明に直接関わりがない限り、その説明及び構成の図示を省略する。   When the configuration of the video encoding device 10 is described with reference to FIG. 1, the well-known functions and configurations that the video encoding device 10 normally has are described unless they are directly related to the description of the present invention. And illustration of a structure is abbreviate | omitted.

次に、図2を参照して、図1に示す映像符号化装置10の動作を説明する。図2は、図1に示す映像符号化装置10の動作を示すフローチャートである。ここでは、映像符号化装置10が、H.265/HEVCに準拠した映像符号化装置であるものとして説明する。   Next, the operation of the video encoding device 10 shown in FIG. 1 will be described with reference to FIG. FIG. 2 is a flowchart showing the operation of the video encoding device 10 shown in FIG. In this case, the video encoding device 10 is H.264. In the following description, it is assumed that the video encoding apparatus conforms to H.265 / HEVC.

まず、外部から入力された映像信号は、予測単位(Prediction Unit)と呼ばれる処理単位ごとのブロックに分割される。減算部102は、予測単位毎に予測信号101を映像信号100から減算し、その結果から予測残差信号103を生成して出力する(ステップS1)。予測信号101は、画面内予測部111による画面内予測または画面間予測部114による画面間予測を行った結果、いずれかの予測結果に基づいて生成される信号である。   First, a video signal input from the outside is divided into blocks for each processing unit called a prediction unit (Prediction Unit). The subtraction unit 102 subtracts the prediction signal 101 from the video signal 100 for each prediction unit, and generates and outputs a prediction residual signal 103 from the result (step S1). The prediction signal 101 is a signal generated based on one of the prediction results as a result of performing intra prediction by the intra prediction unit 111 or inter prediction by the inter prediction unit 114.

次に、変換・量子化部104は、この予測残差信号103を変換及び量子化して出力する(ステップS2)。ここでいう変換とは、圧縮しようとする情報を、より圧縮率を高めるためにその意味内容が失われない別の情報表現の形に変換することである。この変換を行うには、DCT(離散コサイン変換;Discrete Cosine Transform)、DST(離散サイン変換;Discrete Sine Transform)などが用いられる。   Next, the transform / quantization unit 104 transforms and quantizes the prediction residual signal 103 and outputs it (step S2). The conversion referred to here is to convert the information to be compressed into another information representation form in which the semantic content is not lost in order to further increase the compression rate. For this conversion, DCT (Discrete Cosine Transform), DST (Discrete Sine Transform), or the like is used.

次に、エントロピー符号化部117は、変換・量子化部104の結果である量子化係数105をエントロピー符号化して、符号化データ118として出力する(ステップS3)。   Next, the entropy encoding unit 117 entropy-encodes the quantization coefficient 105 that is the result of the transform / quantization unit 104 and outputs the result as encoded data 118 (step S3).

一方、量子化係数105の値は逆量子化・逆変換部106において逆量子化・逆変換を施す(ステップS4)。ここでいう逆変換とは、逆DCT(逆離散コサイン変換)または逆DST(逆離散サイン変換)を行うことである。   On the other hand, the value of the quantization coefficient 105 is subjected to inverse quantization / inverse transform in the inverse quantization / inverse transform unit 106 (step S4). The inverse transformation here is to perform inverse DCT (inverse discrete cosine transformation) or inverse DST (inverse discrete sine transformation).

次に、加算部107は、画面内予測部111または画面間予測部114のいずれかから出力する予測信号101と、逆量子化・逆変換部106の出力信号とを加算する。続いて、歪除去フィルタ108は、加算部107から出力する信号に対し、歪除去を施す(ステップS5)。   Next, the addition unit 107 adds the prediction signal 101 output from either the intra-screen prediction unit 111 or the inter-screen prediction unit 114 and the output signal of the inverse quantization / inverse conversion unit 106. Subsequently, the distortion removal filter 108 performs distortion removal on the signal output from the addition unit 107 (step S5).

歪除去フィルタ108の出力は、変換復号画像が再現されたものになり、その信号が復号映像信号110として出力される(ステップS6)。この復号映像信号110は、フレームメモリ109に記憶される(ステップS7)とともに、符号化制御部115に対して出力される。   The output of the distortion removal filter 108 is a reproduction of the converted decoded image, and the signal is output as the decoded video signal 110 (step S6). The decoded video signal 110 is stored in the frame memory 109 (step S7) and is output to the encoding control unit 115.

動き推定部112は、フレームメモリ109に記憶された復号映像信号110と映像信号100とを用いて、対象ブロックが時間を経てどの程度動いたかを推定し、その結果である動き情報113を生成して出力する。この動き情報113及びフレームメモリ109に記憶されている復号映像信号110を用いて、画面間予測部114は対象ブロックの予測信号101を生成する。または、画面内予測部111は、フレームメモリ109に記憶されている復号映像信号110を用いて、対象ブロックの予測信号101を生成して出力する(ステップS8)。   The motion estimation unit 112 uses the decoded video signal 110 and the video signal 100 stored in the frame memory 109 to estimate how much the target block has moved over time, and generates motion information 113 as a result of the estimation. Output. Using the motion information 113 and the decoded video signal 110 stored in the frame memory 109, the inter-screen prediction unit 114 generates the prediction signal 101 of the target block. Alternatively, the intra-screen prediction unit 111 generates and outputs the prediction signal 101 of the target block using the decoded video signal 110 stored in the frame memory 109 (step S8).

なお、エントロピー符号化部117は、符号化制御部115から出力する制御データ116、変換・量子化部104から出力する量子化係数105、動き推定部112から出力する動き情報113を符号化し、符号化データ118として出力する。   The entropy encoding unit 117 encodes the control data 116 output from the encoding control unit 115, the quantization coefficient 105 output from the transform / quantization unit 104, and the motion information 113 output from the motion estimation unit 112. Is output as converted data 118.

また、以上の一連の処理において、いくつかの処理部は符号化制御部115が出力する制御データ116に基づいて動作する。符号化制御部115は、映像信号100と復号映像信号110を参照し、制御データを出力する。制御データ116は、例えば変換・量子化部104及び逆量子化・逆変換部106においては量子化幅や変換するブロックの大きさを指定する。   In the series of processes described above, some processing units operate based on the control data 116 output from the encoding control unit 115. The encoding control unit 115 refers to the video signal 100 and the decoded video signal 110 and outputs control data. For example, in the transform / quantization unit 104 and the inverse quantization / inverse transform unit 106, the control data 116 designates a quantization width and a block size to be transformed.

また、符号化制御部115は、画面内予測部111及び画面間予測部114においては対象ブロックが画面内予測・画面間予測いずれにより予測するかを指定する。そして、符号化制御部115は、画面内予測の場合どのような予測方法であるか、どのような大きさのブロック単位で予測を行うか、画面間予測の場合予測を2枚のフレームから行うか1枚のフレームから行うかを指定する。また、符号化制御部115は、動き推定部112においては画面間予測を行う単位のサイズや参照する過去符号化フレームを出力する。   In addition, the encoding control unit 115 specifies whether the target block is predicted by intra prediction or inter prediction in the intra prediction unit 111 and the inter prediction unit 114. Then, the encoding control unit 115 performs prediction from two frames for what prediction method is used for intra-screen prediction, what block size is used for prediction, and for inter-screen prediction. Specify whether to start from one frame. In addition, the encoding control unit 115 outputs a size of a unit for performing inter-screen prediction and a past encoded frame to be referred to in the motion estimation unit 112.

ここで説明した符号化制御部115が出力する制御データ116により指定される「量子化幅」や「変換するブロックの大きさ」情報などが「モード」と呼ばれるものである。複数あるモードの選択肢の中から最もコスト関数を小さくするモードを選ぶことで、与えられたビットレートで最高の画質を得ることができる。   The “quantization width” and “block size to be converted” information specified by the control data 116 output from the encoding control unit 115 described here are called “modes”. By selecting a mode with the smallest cost function from among a plurality of mode options, the highest image quality can be obtained at a given bit rate.

次に、図3を参照して、図1に示す符号化制御部115の動作を説明する。図3は、図1に示す符号化制御部115の動作を示すフローチャートである。まず、符号化制御部115は、別途与えられる未定乗数λの値を入力する(ステップS11)。続いて、符号化制御部115は、対象ブロックの映像信号100を入力する(ステップS12)。   Next, the operation of the encoding control unit 115 shown in FIG. 1 will be described with reference to FIG. FIG. 3 is a flowchart showing the operation of the encoding control unit 115 shown in FIG. First, the encoding control unit 115 inputs a value of an undetermined multiplier λ given separately (step S11). Subsequently, the encoding control unit 115 inputs the video signal 100 of the target block (step S12).

次に、符号化制御部115は、対象となる映像符号化装置10内の処理部において試行可能なモードを順次列挙し、試行モードとして設定する(ステップS13)。符号化制御部115は、設定した試行モードを用いて符号化を試行し(ステップS14)、得られた復号画像信号と原画像信号の差の二乗の総和を歪み量Dとする(ステップS15)。   Next, the encoding control unit 115 sequentially lists modes that can be tried in the processing unit in the target video encoding device 10 and sets them as the trial mode (step S13). The encoding control unit 115 attempts encoding using the set trial mode (step S14), and sets the sum of the squares of the difference between the obtained decoded image signal and the original image signal as the distortion amount D (step S15). .

また、符号化制御部115は、非特許文献6などに記載の技術により、対応する符号量推定値Rを推定する(ステップS16)。そして、符号化制御部115は、(1)式に基づきコスト関数Cを計算する(ステップS17)。符号化制御部115は、求めたコスト関数Cが試行した中で最も小さいか否かを判定し(ステップS18)、最も小さければこの時点のモードを記憶する(ステップS19)。   Also, the encoding control unit 115 estimates the corresponding code amount estimation value R by the technique described in Non-Patent Document 6 or the like (step S16). Then, the encoding control unit 115 calculates the cost function C based on the equation (1) (step S17). The encoding control unit 115 determines whether or not the obtained cost function C is the smallest among the trials (step S18), and if it is the smallest, stores the mode at this time (step S19).

次に、対象となる処理部において試行可能なモードをすべて終えたかを判定し(ステップS20)、終えていなければステップS13に戻って、処理を繰り返す。終えていれば、符号化制御部115は、コスト関数Cが最小であった記憶されているモードを出力し(ステップS21)、終了する。   Next, it is determined whether all trialable modes have been completed in the target processing unit (step S20), and if not completed, the process returns to step S13 to repeat the process. If completed, the encoding control unit 115 outputs the stored mode in which the cost function C is minimum (step S21), and the process ends.

次に、図4を参照して、図3に示す符号量推定値Rを算出するステップS16の動作の詳細を説明する。図4は、符号化制御部115が図3に示す符号量推定値Rを算出するステップS16の動作を示すフローチャートである。   Next, the details of the operation of step S16 for calculating the code amount estimation value R shown in FIG. 3 will be described with reference to FIG. FIG. 4 is a flowchart showing the operation of step S16 in which the encoding control unit 115 calculates the code amount estimated value R shown in FIG.

非特許文献6の具体的方法はH.265/HEVCの参照ソフトウェアに記載されているため詳細な説明を省略する。まず、符号化制御部115は、指定モードにおいて符号化を試行した際のCABACの内部状態より整数符号量Bwを算出する(ステップS41)。続いて、符号化制御部115は、小数符号量Bfを算出する(ステップS42)。最後に符号化制御部115は、(4)式に基づいて符号量推定値Rを算出して出力する(ステップS43)。(4)式は、浮動小数点を用いた演算を用いて計算する。
R=Bw+Bf÷32768
=Bw+Bf÷215 ・・・(4)
The specific method of Non-Patent Document 6 is described in H.C. Detailed description is omitted because it is described in the reference software of H.265 / HEVC. First, the encoding control unit 115 calculates the integer code amount Bw from the internal state of the CABAC when the encoding is attempted in the designated mode (step S41). Subsequently, the encoding control unit 115 calculates a decimal code amount Bf (step S42). Finally, the encoding control unit 115 calculates and outputs a code amount estimated value R based on the equation (4) (step S43). Equation (4) is calculated using an arithmetic operation using a floating point.
R = Bw + Bf ÷ 32768
= Bw + Bf ÷ 2 15 (4)

このように、符号量推定値Rを浮動小数点を用いて演算を行うことにより、ビットシフトによって算出するより計算精度を向上させることが可能となる。この構成により、符号量推定値Rの算出時に丸め誤差が含まれることがなくなり、符号量推定値Rを正確に算出することができるようになるため、最適な符号化モードが得られる可能性が高まり、符号化効率が向上することが期待できるという効果が得られる。   Thus, by calculating the code amount estimated value R using a floating point, it is possible to improve the calculation accuracy rather than calculating by bit shift. With this configuration, a roundoff error is not included when the code amount estimated value R is calculated, and the code amount estimated value R can be calculated accurately, so that the possibility of obtaining an optimal encoding mode is increased. Thus, the effect that the encoding efficiency can be expected to be improved is obtained.

なお、「32768」という値は、固定値である必要はなく、±1%程度(32440〜33095)変動しても、復号画像には影響を与えないようにすることができるとともに、右ビットシフトを用いて計算するよりは、精度を高めることができる。   Note that the value “32768” does not have to be a fixed value, and even if it fluctuates by about ± 1% (32440 to 33095), the decoded image can be prevented from being affected, and the right bit shift can be performed. The accuracy can be improved compared with the calculation using.

また、前述した説明では、32768(=215)で割り算する例を示したが、(2)式をR=Bw+(Bf>>n)としたとき、すなわち、nビット右シフトするとしたとき、(4)式は、(4)’式とすればよい。
R=Bw+Bf÷2 ・・・(4)’
この場合も割り算は、浮動小数点演算によって行えばよい。ただし、2は事前に計算してその値を代入して計算をした方が計算速度は向上する。
In the above description, an example in which division is performed by 32768 (= 2 15 ) has been shown. However, when the expression (2) is set to R = Bw + (Bf >> n), that is, when n bits are shifted to the right, The equation (4) may be the equation (4) ′.
R = Bw + Bf ÷ 2 n (4) ′
In this case as well, division may be performed by floating point arithmetic. However, 2n is calculated in advance, and the calculation speed is improved by substituting the value.

なお、(4)式、(4)’式による浮動小数点演算は、符号量推定値を出力する処理の最終段階で実数Rを整数化する処理を有している符号化ソフトウェアであれば適用可能である。例えば、非特許文献4、5に記載されている計算処理において適用可能である。   Note that the floating-point arithmetic using the equations (4) and (4) ′ can be applied to any encoding software having a process for converting the real number R into an integer at the final stage of the process of outputting the code amount estimation value. It is. For example, the present invention can be applied to the calculation processes described in Non-Patent Documents 4 and 5.

以上説明したように、符号量の推定手順においてより誤差の少ない推定を行うように構成した。この構成によれば、映像符号化において画質改善の要となっている符号化最適化において、効率を高める符号化モードの選択を誤る可能性を低下させることができる。したがって、映像符号化において、より高い符号化効率が実現され、より少ない符号量でより高い品質の復号映像を得ることができる。   As described above, the code amount estimation procedure is configured to perform estimation with less error. According to this configuration, it is possible to reduce the possibility of erroneous selection of a coding mode that increases efficiency in coding optimization, which is a key to improving image quality in video coding. Therefore, higher encoding efficiency is realized in video encoding, and higher quality decoded video can be obtained with a smaller code amount.

前述した実施形態における映像符号化装置の全部または一部をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、PLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されるものであってもよい。   You may make it implement | achieve all or one part of the video coding apparatus in embodiment mentioned above with a computer. In that case, a program for realizing this function may be recorded on a computer-readable recording medium, and the program recorded on this recording medium may be read into a computer system and executed. Here, the “computer system” includes an OS and hardware such as peripheral devices. The “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM and a CD-ROM, and a hard disk incorporated in a computer system. Furthermore, the “computer-readable recording medium” dynamically holds a program for a short time like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line. In this case, a volatile memory inside a computer system serving as a server or a client in that case may be included and a program held for a certain period of time. Further, the program may be a program for realizing a part of the above-described functions, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system. It may be realized using hardware such as PLD (Programmable Logic Device) or FPGA (Field Programmable Gate Array).

以上、図面を参照して本発明の実施の形態を説明してきたが、上記実施の形態は本発明の例示に過ぎず、本発明が上記実施の形態に限定されるものではないことは明らかである。したがって、本発明の技術思想及び範囲を逸脱しない範囲で構成要素の追加、省略、置換、その他の変更を行ってもよい。   As mentioned above, although embodiment of this invention has been described with reference to drawings, the said embodiment is only the illustration of this invention, and it is clear that this invention is not limited to the said embodiment. is there. Therefore, additions, omissions, substitutions, and other modifications of the components may be made without departing from the technical idea and scope of the present invention.

画像・映像の非可逆符号化において、映像品質の改善及び符号化ビットレートの削減を目的として、画像の符号化・復号を行うことが不可欠な用途に適用できる。   In lossy encoding of images / videos, the present invention can be applied to applications where it is indispensable to encode / decode images for the purpose of improving video quality and reducing the encoding bit rate.

100…映像信号、101…予測信号、102…減算部、103…予測残差信号、104…変換・量子化部、105…量子化係数、106…逆量子化・逆変換部、107…加算部、108…歪除去フィルタ、109…フレームメモリ、110…復号映像信号、111…画面内予測部、112…動き推定部、113…動き情報、114…画面間予測部、115…符号化制御部、116…制御データ、117…エントロピー符号化部、118…符号化データ   DESCRIPTION OF SYMBOLS 100 ... Video signal 101 ... Prediction signal 102 ... Subtraction part 103 ... Prediction residual signal 104 ... Transformation / quantization part 105 ... Quantization coefficient 106 ... Inverse quantization / inverse transformation part 107 ... Addition part , 108 ... distortion removal filter, 109 ... frame memory, 110 ... decoded video signal, 111 ... intra prediction unit, 112 ... motion estimation unit, 113 ... motion information, 114 ... inter prediction unit, 115 ... encoding control unit, 116: Control data, 117: Entropy encoding unit, 118: Encoded data

Claims (4)

入力映像の信号を符号化する映像符号化装置が行う映像符号化方法であって、
符号化モードを選択する場合のコスト関数計算に用いる符号量推定値の計算を浮動小数点演算を用いて行う符号量推定値計算ステップを有し、
前記符号量推定値計算ステップでは、符号化単位の符号量の整数部分Bwと、前記符号量の少数部分Bfとを算出し、前記符号量推定値を「Bw+Bf÷所定の値」によって計算し、
前記所定の値は、予め定められた固定値と前記固定値から±1%変動した値とのうちいずれかである、
映像符号化方法。
A video encoding method performed by a video encoding device that encodes an input video signal,
Have a code amount estimation value calculation step performed using floating point arithmetic calculations code amount estimation value used for the cost function calculation in the case of selecting the coding mode,
In the code amount estimated value calculation step, an integer part Bw of a code amount of a coding unit and a decimal part Bf of the code amount are calculated, and the code amount estimated value is calculated by “Bw + Bf ÷ predetermined value”.
The predetermined value is either a predetermined fixed value or a value that varies ± 1% from the fixed value.
Video encoding method.
前記固定値は、32768である請求項に記載の映像符号化方法。 The fixed value, the video encoding method according to claim 1 which is 32768. 入力映像の信号を符号化する映像符号化装置であって、
符号化モードを選択する場合のコスト関数計算に用いる符号量推定値の計算を浮動小数点演算を用いて行う符号量推定値計算部を備え
前記符号量推定値計算部は、符号化単位の符号量の整数部分Bwと、前記符号量の少数部分Bfとを算出し、前記符号量推定値を「Bw+Bf÷所定の値」によって計算し、
前記所定の値は、予め定められた固定値と前記固定値から±1%変動した値とのうちいずれかである、
映像符号化装置。
A video encoding device that encodes an input video signal,
A code amount estimated value calculation unit that performs calculation of a code amount estimated value used for cost function calculation in the case of selecting an encoding mode using a floating-point operation ,
The code amount estimated value calculation unit calculates an integer part Bw of a code amount of a coding unit and a decimal part Bf of the code amount, calculates the code amount estimated value by “Bw + Bf ÷ predetermined value”,
The predetermined value is either a predetermined fixed value or a value that varies ± 1% from the fixed value.
Video encoding device.
コンピュータに、請求項1又は請求項2に記載の映像符号化方法を実行させるための映像符号化プログラム。 A video encoding program for causing a computer to execute the video encoding method according to claim 1 .
JP2016000456A 2016-01-05 2016-01-05 Video encoding method, video encoding apparatus, and video encoding program Active JP6495834B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016000456A JP6495834B2 (en) 2016-01-05 2016-01-05 Video encoding method, video encoding apparatus, and video encoding program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016000456A JP6495834B2 (en) 2016-01-05 2016-01-05 Video encoding method, video encoding apparatus, and video encoding program

Publications (2)

Publication Number Publication Date
JP2017123513A JP2017123513A (en) 2017-07-13
JP6495834B2 true JP6495834B2 (en) 2019-04-03

Family

ID=59305960

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016000456A Active JP6495834B2 (en) 2016-01-05 2016-01-05 Video encoding method, video encoding apparatus, and video encoding program

Country Status (1)

Country Link
JP (1) JP6495834B2 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63299511A (en) * 1987-05-29 1988-12-07 Sony Corp Digital filter device
CN101035277A (en) * 2000-03-13 2007-09-12 索尼公司 Method and apparatus for generating compact code-switching hints metadata
US20050036544A1 (en) * 2003-08-15 2005-02-17 Jennifer Webb Video coding rate control
WO2008065814A1 (en) * 2006-11-30 2008-06-05 Panasonic Corporation Coder
CN102263947B (en) * 2010-05-27 2016-07-06 香港科技大学 The method and system of image motion estimation
JP2014068247A (en) * 2012-09-26 2014-04-17 Oki Electric Ind Co Ltd Code amount calculation device and program and moving image encoder and program

Also Published As

Publication number Publication date
JP2017123513A (en) 2017-07-13

Similar Documents

Publication Publication Date Title
JP6537511B2 (en) Improved palette mode in HEVC
US10863199B2 (en) Minimization of transform memory and latency via parallel factorizations
JP5882489B2 (en) Initializing context states and probabilities for context-adaptive entropy coding
JP5718363B2 (en) Video encoding / decoding method and apparatus using large size transform unit
US20120307893A1 (en) Fast computing of discrete cosine and sine transforms of types vi and vii
WO2012173315A1 (en) Method and apparatus for encoding/decoding video in intra prediction mode
US20130101033A1 (en) Coding non-symmetric distributions of data
TW201505423A (en) Data encoding and decoding
JP2014197884A (en) Video decoding method
JP6681383B2 (en) Encoder, decoder and method
TWI827010B (en) Arithmetic encoders, arithmetic decoders, video encoder, video decoder, methods for encoding, methods for decoding and computer program
KR20160093061A (en) Method and apparatus for syntax element encoding in a video codec
KR20100027385A (en) Method and apparatus for encoding/decoding image using adaptive binarization
JP6476900B2 (en) Moving picture coding apparatus, moving picture coding method, and computer program for moving picture coding
KR102071667B1 (en) Method and apparatus for parallel entropy encoding/decoding
TWI789668B (en) Determining a parametrization for context-adaptive binary arithmetic coding
US10499074B2 (en) Binary arithmetic coding with small tables or short-operand multiplications for video coding
WO2017074539A1 (en) Parallel arithmetic coding techniques
CN105453566B (en) Data encoding and data decoding
KR20110048004A (en) Motion vector encoding / decoding method and apparatus using motion vector resolution limitation and image encoding / decoding method using same
JP6495834B2 (en) Video encoding method, video encoding apparatus, and video encoding program
WO2020263438A1 (en) Features of range asymmetric number system encoding and decoding
KR20120095814A (en) Methods of encoding/decoding using multiple reference pictures and apparatuses for using the same
US10628165B2 (en) Gain control for multiple description coding
TW201334427A (en) Context adaptive data encoding

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180219

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181204

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190131

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190305

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190307

R150 Certificate of patent or registration of utility model

Ref document number: 6495834

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150