JP7406208B2 - Encoding device, encoding method and program - Google Patents
Encoding device, encoding method and program Download PDFInfo
- Publication number
- JP7406208B2 JP7406208B2 JP2020122903A JP2020122903A JP7406208B2 JP 7406208 B2 JP7406208 B2 JP 7406208B2 JP 2020122903 A JP2020122903 A JP 2020122903A JP 2020122903 A JP2020122903 A JP 2020122903A JP 7406208 B2 JP7406208 B2 JP 7406208B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- unit
- transformation
- combination
- representative
- 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
Links
- 238000000034 method Methods 0.000 title claims description 30
- 238000006243 chemical reaction Methods 0.000 claims description 131
- 238000012545 processing Methods 0.000 claims description 81
- 230000009466 transformation Effects 0.000 claims description 73
- 238000013139 quantization Methods 0.000 description 17
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 8
- 239000011159 matrix material Substances 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000009795 derivation Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 238000005401 electroluminescence Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
本発明は、符号化装置、符号化方法及びプログラムに関する。 The present invention relates to an encoding device, an encoding method, and a program.
符号化された高精細な動画像データが、多様なネットワーク環境下で配信される場合がある。動画像の符号化規格としては、例えば、MPEG(Moving Picture Experts Group)-2と、H.264/AVC(Advanced Video Coding)と、H.265/HEVC(High Efficiency Video Coding)とがあり、動画像のデータ量は、符号化されることによって大幅に削減される。 Encoded high-definition video data may be distributed under various network environments. Examples of video encoding standards include MPEG (Moving Picture Experts Group)-2 and H. H.264/AVC (Advanced Video Coding) and H.264/AVC (Advanced Video Coding). H.265/HEVC (High Efficiency Video Coding) is used to greatly reduce the amount of data of a moving image by encoding it.
近年、「3840画素×2160ライン」及び「7680画素×4320ライン」等の超高精細な動画像の放送並びに配信サービスの普及が拡大している。そこで、動画像データの符号化効率を向上させることを目的として、次世代の符号化規格であるVVC(Versatile Video Coding)の標準化が進められている。ここで、VVCの符号化効率をHEVCの符号化効率の約2倍とすることが目標とされている。 2. Description of the Related Art In recent years, broadcasting and distribution services for ultra-high definition moving images such as "3840 pixels x 2160 lines" and "7680 pixels x 4320 lines" have become increasingly popular. Therefore, standardization of VVC (Versatile Video Coding), which is a next-generation coding standard, is being promoted with the aim of improving the coding efficiency of moving image data. Here, the goal is to make the coding efficiency of VVC approximately twice that of HEVC.
VVC及び「H.265/HEVC」等の符号化規格では、動画像のフレームは、コーディングツリーユニット(Coding Tree Unit : CTU)と呼ばれる基本単位のブロックに分割される。CTUは、MPEG-2又は「H.264/AVC」におけるマクロブロック(Macro Block : MB)に相当する。CTUは、コーディングユニット(Coding Unit : CU)と呼ばれる単位のブロックに分割される。 In coding standards such as VVC and "H.265/HEVC," a video frame is divided into basic unit blocks called coding tree units (CTUs). A CTU corresponds to a macro block (MB) in MPEG-2 or "H.264/AVC". The CTU is divided into blocks called coding units (CUs).
「H.265/HEVC」では、予測処理単位(Prediction Unit : PU)と変換処理単位(Transform Unit : TU)とがCUに定められ、予測処理がPUに対して実行され、変換処理がTUに対して実行される。これに対してVVCでは、予測処理、変換処理及び量子化等の符号化処理が、CUに対して実行される。 In "H.265/HEVC", a prediction processing unit (PU) and a transformation processing unit (TU) are defined as CU, prediction processing is executed on PU, and transformation processing is executed on TU. executed against. On the other hand, in VVC, prediction processing, conversion processing, and encoding processing such as quantization are performed on CUs.
「H.265/HEVC」では、TUのサイズとして、「32×32」と「16×16」と「8×8」と「4×4」とが定められている。「4×4」のイントラ予測(画面内予測)では、予測処理が実行されたことによって導出された予測残差は、離散サイン変換(Discrete Sine Transform : DST)によって周波数領域に変換される。これに対して、「32×32」、「16×16」又は「8×8」のイントラ予測では、予測残差は、離散コサイン変換(Discrete Cosine Transform : DCT)によって周波数領域に変換される。周波数領域に変換された予測残差の高周波成分は、量子化処理によって削減される。予測残差の高周波成分が削減されることによって、動画像のデータ量は効率的に削減される。 In "H.265/HEVC", TU sizes are defined as "32x32", "16x16", "8x8", and "4x4". In "4x4" intra prediction (intra-screen prediction), the prediction residual derived by performing the prediction process is transformed into the frequency domain by discrete sine transform (DST). On the other hand, in "32x32", "16x16", or "8x8" intra prediction, the prediction residual is transformed into the frequency domain by discrete cosine transform (DCT). High frequency components of the prediction residual transformed into the frequency domain are reduced by quantization processing. By reducing the high frequency components of the prediction residual, the data amount of the moving image can be efficiently reduced.
VVCでは、MTS(Multiple Transform Selection)と呼ばれる符号化ツールが採用される見込みである。周波数の変換効率が高くなるように変換基底が選択されることによって、HEVCと比較して、VVCの符号化効率が大幅に向上することが期待できる。 VVC is expected to employ an encoding tool called MTS (Multiple Transform Selection). By selecting a conversion base so as to increase frequency conversion efficiency, it can be expected that the coding efficiency of VVC will be significantly improved compared to HEVC.
以下、変換基底となるDCTのタイプ「2」は「DCT-2」と表記される。変換基底となるDSTのタイプ「7」は「DST-7」と表記される。変換基底となるDCTのタイプ「8」は「DCT-8」と表記される。 Hereinafter, the type "2" of the DCT serving as the conversion base will be expressed as "DCT-2". The DST type "7" which is the conversion base is expressed as "DST-7". The type "8" of the DCT serving as the conversion base is expressed as "DCT-8."
MTSでは、CUのサイズが「32×32」以下である場合、(水平,垂直)={(DCT-2,DCT-2),(DCT-8,DCT-8),(DCT-8,DST-7),(DST-7,DCT-8),(DST-7,DST-7)}が、変換基底(直交変換の基底)の組み合わせの候補として存在する。符号化装置が符号化処理において用いる組み合わせを候補のうちから選択するために、レート歪み(Rate Distortion : RD)値等のコスト値が候補ごとに比較される。そして、コスト値が最小となる変換基底の組み合わせが、符号化処理において用いられる。 In MTS, if the CU size is "32x32" or less, (horizontal, vertical) = {(DCT-2, DCT-2), (DCT-8, DCT-8), (DCT-8, DST -7), (DST-7, DCT-8), (DST-7, DST-7)} exist as candidates for combinations of transformation bases (orthogonal transformation bases). In order for the encoding device to select a combination from among the candidates in the encoding process, cost values such as rate distortion (RD) values are compared for each candidate. Then, the combination of transformation bases with the minimum cost value is used in the encoding process.
「H.265/HEVC」では、符号化処理において用いられる変換基底が、TUのサイズに応じて一つに定まる。このため、「H.265/HEVC」における変換基底を選択するための処理量は多くない。これに対して、VVCにおける変換基底を選択するための処理量は、「H.265/HEVC」における変換基底を選択するための処理量の5倍である。特にVVCでは、CUのサイズが大きくなるほど、変換基底を選択するための処理量が増加する。このようにVVCでは、変換基底を選択するための処理量が、「H.265/HEVC」と比較して大きく増大している。 In "H.265/HEVC", one conversion base used in the encoding process is determined depending on the size of the TU. Therefore, the amount of processing required to select a conversion base in "H.265/HEVC" is not large. On the other hand, the amount of processing for selecting a conversion base in VVC is five times the amount of processing for selecting a conversion basis in "H.265/HEVC". Particularly in VVC, as the size of the CU increases, the amount of processing for selecting a transformation base increases. As described above, in VVC, the amount of processing for selecting a conversion base is significantly increased compared to "H.265/HEVC".
上記事情に鑑み、本発明は、変換基底を選択するための処理量を削減することが可能である符号化装置、符号化方法及びプログラムを提供することを目的としている。 In view of the above circumstances, an object of the present invention is to provide an encoding device, an encoding method, and a program that can reduce the amount of processing for selecting a transformation base.
本発明の一態様は、画像に定められた符号化単位のブロックを複数のサブブロックに分割するサブブロック分割部と、前記サブブロックごとに代表値を導出する代表値導出部と、互いに隣接する複数の前記サブブロックから構成される代表ブロックにおける複数の前記代表値に基づいて、変換基底の組み合わせを複数の前記組み合わせのうちから選択する選択部と、選択された前記組み合わせを用いて、前記符号化単位のブロックごとに周波数変換処理を実行する変換処理部とである。 One aspect of the present invention is to provide a subblock dividing unit that divides a block of a coding unit defined in an image into a plurality of subblocks, and a representative value deriving unit that derives a representative value for each subblock. a selection unit that selects a combination of transformation bases from among the plurality of combinations based on the plurality of representative values in the representative block constituted by the plurality of sub-blocks; and a conversion processing unit that executes frequency conversion processing for each block in units of conversion.
本発明の一態様は、画像に定められた符号化単位のブロックを複数のサブブロックに分割するサブブロック分割部と、前記サブブロックごとに代表値を導出する代表値導出部と、互いに隣接する複数の前記サブブロックから構成される代表ブロックにおける複数の前記代表値に基づいて、変換基底の組み合わせを複数の前記組み合わせのうちから選択する選択部と、選択された前記組み合わせと前記複数の組み合わせ以外の変換基底の組み合わせとのうちのいずれかを用いて、前記符号化単位のブロックごとに周波数変換処理を実行する変換処理部とを備える符号化装置である。 One aspect of the present invention is to provide a subblock dividing unit that divides a block of a coding unit defined in an image into a plurality of subblocks, and a representative value deriving unit that derives a representative value for each subblock. a selection unit that selects a combination of transformation bases from among the plurality of combinations based on the plurality of representative values in the representative block constituted by the plurality of sub-blocks; and a selection unit other than the selected combination and the plurality of combinations. and a transform processing unit that performs frequency transform processing for each block of the coding unit using any one of the combinations of transform bases.
本発明の一態様は、上記に記載の符号化装置が実行する符号化方法であって、画像に定められた符号化単位のブロックを複数のサブブロックに分割するサブブロック分割ステップと、前記サブブロックごとに代表値を導出する代表値導出ステップと、互いに隣接する複数の前記サブブロックから構成される代表ブロックにおける複数の前記代表値に基づいて、変換基底の組み合わせを複数の前記組み合わせのうちから選択する選択ステップと、選択された前記組み合わせを用いて、前記符号化単位のブロックごとに周波数変換処理を実行する変換処理ステップとを含む符号化方法である。 One aspect of the present invention is an encoding method executed by the encoding device described above, which includes a subblock dividing step of dividing a block of a coding unit defined in an image into a plurality of subblocks; a representative value deriving step of deriving a representative value for each block; and a combination of conversion bases is selected from among the plurality of combinations based on the plurality of representative values in the representative block composed of the plurality of mutually adjacent subblocks. The encoding method includes a selection step of making a selection, and a conversion processing step of performing frequency conversion processing for each block of the coding unit using the selected combination.
本発明の一態様は、上記に記載の符号化装置が実行する符号化方法であって、画像に定められた符号化単位のブロックを複数のサブブロックに分割するサブブロック分割ステップと、前記サブブロックごとに代表値を導出する代表値導出ステップと、互いに隣接する複数の前記サブブロックから構成される代表ブロックにおける複数の前記代表値に基づいて、変換基底の組み合わせを複数の前記組み合わせのうちから選択する選択ステップと、選択された前記組み合わせと前記複数の組み合わせ以外の変換基底の組み合わせとのうちのいずれかを用いて、前記符号化単位のブロックごとに周波数変換処理を実行する変換処理ステップとである。 One aspect of the present invention is an encoding method executed by the encoding device described above, which includes a subblock dividing step of dividing a block of a coding unit defined in an image into a plurality of subblocks; a representative value deriving step of deriving a representative value for each block; and a combination of conversion bases is selected from among the plurality of combinations based on the plurality of representative values in the representative block composed of the plurality of mutually adjacent subblocks. a selection step of selecting; and a transform processing step of performing frequency transform processing for each block of the coding unit using either the selected combination and a combination of transform bases other than the plurality of combinations. It is.
本発明の一態様は、上記に記載の符号化装置としてコンピュータを機能させるためのプログラムである。 One aspect of the present invention is a program for causing a computer to function as the encoding device described above.
本発明により、変換基底を選択するための処理量を削減することが可能である。 According to the present invention, it is possible to reduce the amount of processing for selecting a transformation base.
本発明の実施形態について、図面を参照して詳細に説明する。
図1は、実施形態における、符号化装置1の構成例を示す図である。符号化装置1は、動画像を符号化する装置である。符号化装置1には、符号化対象の動画像(原画像)が入力される。符号化装置1は、指定されたパラメータに基づいて、動画像を符号化する。符号化装置1は、符号化結果をビットストリームとして、所定の外部装置(不図示)に出力する。
Embodiments of the present invention will be described in detail with reference to the drawings.
FIG. 1 is a diagram showing a configuration example of an
符号化装置1は、ブロック分割部10と、残差信号生成部11と、周波数変換部12と、量子化部13と、エントロピー符号化部14と、逆量子化部15と、逆周波数変換部16と、復号画像生成部17と、ループフィルタ処理部18と、参照画像バッファ部19と、イントラ予測部20と、インター予測部21と、予測画像生成部22とを備える。
The
ブロック分割部10は、入力された動画像(原画像)のフレームをCUに分割する。CUのサイズは符号化処理の単位であり、動画像のフレームにおけるCUの形状は矩形である。ブロック分割部10は、動画像をCUごとに残差信号生成部11に出力する。
The
残差信号生成部11には、CUごとの動画像が、ブロック分割部10から入力される。残差信号生成部11には、CUごとの動画像の予測画像が、予測画像生成部22から入力される。残差信号生成部11は、動画像と予測画像との差分(予測残差)を、CUごとに導出する。残差信号生成部11は、動画像と予測画像とのCUごとの差分を、予測残差信号として周波数変換部12に出力する。
A moving image for each CU is input to the residual
周波数変換部12には、予測残差信号が、残差信号生成部11から入力される。周波数変換部12は、離散コサイン変換又は離散サイン変換による周波数変換を、予測画像の水平方向と予測画像の垂直方向とに対して実行する。周波数変換部12は、周波数変換の結果として導出された変換係数群を、量子化部13に出力する。
A predicted residual signal is input to the
量子化部13には、変換係数群が、周波数変換部12から入力される。量子化部13は、所定の量子化パラメータを用いて、変換係数を量子化する。量子化部13は、量子化された変換係数を、エントロピー符号化部14と逆量子化部15とに出力する。
A group of transform coefficients is input to the
エントロピー符号化部14には、量子化された変換係数が、量子化部13から入力される。エントロピー符号化部14は、量子化された変換係数をエントロピー符号化する。エントロピー符号化部14は、エントロピー符号化の結果を、ビットストリームとして所定の外部装置(不図示)に出力する。
The quantized transform coefficients are input to the
逆量子化部15には、量子化された変換係数が、量子化部13から入力される。逆量子化部15は、量子化された変換係数に対して、逆量子化処理を実行する。これによって、逆量子化部15は変換係数を生成する。
The quantized transform coefficients are input to the
逆周波数変換部16には、変換係数が、逆量子化部15から入力される。逆周波数変換部16は、変換係数に対して逆周波数変換を実行する。これによって、逆周波数変換部16は、予測残差の復号画像を復号画像生成部17に出力する。
The
復号画像生成部17には、予測残差の復号画像が、逆周波数変換部16から入力され、予測画像が予測画像生成部22から入力される。復号画像生成部17は、予測残差の復号画像と原画像の予測画像とをCUごとに加算することによって、符号化対象の動画像の復号画像を、CUごとに生成する。復号画像生成部17は、符号化対象の動画像の復号画像を、ループフィルタ処理部18と参照画像バッファ部19とに出力する。
The decoded image of the prediction residual is input to the decoded
ループフィルタ処理部18には、符号化対象の動画像の復号画像が、復号画像生成部17から入力される。ループフィルタ処理部18は、符号化歪みを低減するためのフィルタ処理を、符号化対象の動画像の復号画像に対して実行する。ループフィルタ処理部18は、フィルタ処理が実行された復号画像を、参照画像バッファ部19に記録する。
A decoded image of a moving image to be encoded is input to the loop
参照画像バッファ部19には、フィルタ処理後の復号画像がループフィルタ処理部18から入力され、符号化対象の動画像の復号画像が復号画像生成部17から入力される。参照画像バッファ部19は、フィルタ処理後の復号画像と、符号化対象の動画像の復号画像とを、参照用の画像として記憶する。すなわち、参照画像バッファ部19は、過去の復号画像を参照用の画像として記憶する。
The reference
イントラ予測部20は、過去の復号画像を参照画像バッファ部19から取得する。イントラ予測部20は、復号画像に対してフレーム内予測処理を実行することによって、フレーム内予測処理の結果に応じた予測結果を生成する。イントラ予測部20は、原画像の予測結果を予測画像生成部22に出力する。
The
インター予測部21は、過去の復号画像を参照画像バッファ部19から取得する。インター予測部21は、過去の復号画像に対して動き補償予測処理を実行することによって、動き補償予測処理の結果に応じた予測結果を生成する。インター予測部21は、原画像の予測結果を予測画像生成部22に出力する。
The
予測画像生成部22には、原画像の予測結果が、イントラ予測部20又はインター予測部21から入力される。予測画像生成部22は、予測画像に基づいて、参照用の画像として記憶されている過去の復号画像を、参照画像バッファ部19から取得する。予測画像生成部22は、原画像の予測結果と過去の復号画像データとに基づいて、原画像の予測画像を生成する。予測画像生成部22は、原画像の予測画像を残差信号生成部11に出力する。
The predicted
次に、周波数変換部12の詳細を説明する。
図2は、実施形態における、周波数変換部12の構成例を示す図である。周波数変換部12は、絞込部120を備える。絞込部120は、判定部121と、サブブロック分割部122と、代表値導出部123と、水平方向選択部124と、垂直方向選択部125とを備える。周波数変換部12は、変換処理部126とを備える。
Next, details of the
FIG. 2 is a diagram showing a configuration example of the
絞込部120には、符号化対象のCUの予測残差信号と、CUのサイズ情報(以下「変換サイズ情報」という。)と、周波数の変換基底の組み合わせリスト「TrMtxList」とが、ブロック分割部10から入力される。ここで、予測残差信号は、CUにおける2次元(水平方向及び垂直方向)の予測残差の信号である。
The narrowing down
周波数変換領域の一部に動画像信号の成分が集められることによって、空間的な相関が動画像から除去されて、符号化効率が向上する。例えば、周波数変換後の係数行列が「Z」と、周波数変換前の信号行列が「X」と、第1の変換行列が「B」と、第2の変換領域が「C」と表記される場合、2次元の信号に対する周波数変換は、式(1)のように表される。 By collecting the components of the moving image signal in a part of the frequency transform domain, spatial correlation is removed from the moving image, and encoding efficiency is improved. For example, the coefficient matrix after frequency conversion is written as "Z", the signal matrix before frequency conversion is written as "X", the first transformation matrix is written as "B", and the second transformation domain is written as "C". In this case, frequency conversion for a two-dimensional signal is expressed as in equation (1).
式(1)は、信号行列「X」の行(水平成分)に変換行列「C」が適用され、信号行列「X」の列(垂直成分)に変換行列「B」が適用されることを表す。 Equation (1) indicates that the transformation matrix "C" is applied to the rows (horizontal components) of the signal matrix "X", and the transformation matrix "B" is applied to the columns (vertical components) of the signal matrix "X". represent.
周波数変換前における、信号行列「X」の行(水平成分)又は列(垂直成分)として、N点(Nは2以上の整数)の入力成分「x」は、「x=[x0,x_1,…,x{N-1}]T」と表記される。また、周波数変換後における、入力信号の成分のN点とは別のN点の変換係数の成分「y」は、「y=[y0,y1,…,y{N-1}]T」と表記される。これらの式の肩に記載された「T」は、転置を表す。変換係数の成分「yi」は式(2)のように表される。 As the rows (horizontal components) or columns (vertical components) of the signal matrix "X" before frequency conversion, the input component "x" at N points (N is an integer of 2 or more) is "x = [x 0 , x_1 ,...,x {N-1} ] T ''. Further, after frequency conversion, the component "y" of the conversion coefficient at N points other than the N points of the input signal component is "y=[y 0 , y 1 , ..., y {N-1} ] T ” is written. The "T" written at the beginning of these formulas represents transposition. The component “y i ” of the conversion coefficient is expressed as in equation (2).
VVCでは、式(2)に示された「Ti(j)」は、変換基底「DCT-2」が選択された場合、式(3)のように表される。 In VVC, "T i (j)" shown in equation (2) is expressed as in equation (3) when the conversion base "DCT-2" is selected.
「Ti(j)」は、変換基底「DST-7」が選択された場合、式(4)のように表される。 “T i (j)” is expressed as in equation (4) when the conversion base “DST-7” is selected.
「Ti(j)」は、変換基底「DCT-8」が選択された場合、式(5)のように表される。 “T i (j)” is expressed as in equation (5) when the conversion base “DCT-8” is selected.
VVCでは、「DCT-2」と「DCT-8」と「DST-7」とが、各変換基底として用意されている。CUのサイズが「64×64」である場合、垂直方向及び水平方向の予測残差に対して、1次元の変換基底「DCT-2」が用いられる。これに対して、CUのサイズが「32×32」以下である場合、「DCT-2」と「DST-7」と「DCT-8」とが、変換基底として選択可能である。つまり、CUのサイズが「32×32」以下である場合、変換基底(直交変換の基底)の組み合わせ「(水平,垂直)={(DCT-2,DCT-2),(DCT-8,DCT-8),(DCT-8,DST-7),(DST-7,DCT-8),(DST-7,DST-7)}」が、垂直方向及び水平方向の予測誤差の周波数変換において選択可能である。 In VVC, "DCT-2", "DCT-8", and "DST-7" are prepared as conversion bases. When the size of the CU is “64×64”, a one-dimensional transformation base “DCT-2” is used for the vertical and horizontal prediction residuals. On the other hand, when the size of the CU is "32x32" or less, "DCT-2", "DST-7", and "DCT-8" can be selected as the conversion base. In other words, if the size of the CU is "32x32" or less, the combination of transformation bases (orthogonal transformation bases) "(horizontal, vertical) = {(DCT-2, DCT-2), (DCT-8, DCT -8), (DCT-8, DST-7), (DST-7, DCT-8), (DST-7, DST-7)} are selected for frequency conversion of vertical and horizontal prediction errors. It is possible.
絞込部120は、1次元の変換基底の組み合わせを、水平方向の予測残差と垂直方向の予測残差とに対して適用する。
The narrowing down
判定部121には、符号化対象のCUの予測残差信号と、変換サイズ情報と、周波数の変換基底の組み合わせリスト「TrMtxList」とが、ブロック分割部10から入力される。判定部121は、変換基底を選択する処理を実行するか否かを、例えば変換サイズ情報に基づいて判定する。
The
判定部121は、変換基底を選択する処理を実行すると判定した場合、符号化対象のCUの予測残差信号と、変換サイズ情報と、周波数の変換基底の組み合わせリスト「TrMtxList」とを、サブブロック分割部122に出力する。
When the
判定部121は、符号化対象のCUの予測残差信号を、変換処理部126に出力する。判定部121は、変換基底を選択する処理を実行しないと判定した場合、変換サイズ情報と、周波数の変換基底の組み合わせリスト「TrMtxList」とを、変換処理部126に出力する。
The
サブブロック分割部122は、符号化対象の画像(フレーム)に定められた符号化単位のブロック(CU)を、複数のサブブロックに分割する。サブブロック分割部122は、複数のサブブロックと(サブブロックのサイズと)、サブブロックごとの予測残差と、組み合わせリスト「TrMtxList」とを、代表値導出部123に出力する。
The
図3は、実施形態における、サブブロックの分割の例を示す図である。図3には、ブロック30と、サブブロック31と、サブブロック32とが示されている。ブロック30は、CUである。ブロック30のサイズ「N×N」は、一例として「8×8」である。サブブロック31は、ブロック30を16分割するように定められる。サブブロック32は、4個のサブブロック31から構成される。
FIG. 3 is a diagram illustrating an example of subblock division in the embodiment. In FIG. 3, a
以下、代表値が導出された複数のサブブロックから構成されるブロックを「代表ブロック」という。 Hereinafter, a block composed of a plurality of subblocks from which representative values have been derived will be referred to as a "representative block."
ブロック30内のサイズ「2×2」の領域における予測残差の平均値が、サイズ「2×2」のサブブロック31における予測残差の代表値として、サブブロック31ごとに導出される。また、互いに隣接する4個のサブブロック31の各代表値の平均値が、代表ブロックとしてのサブブロック32における予測残差として、サブブロック32ごとに導出される。ここで、互いに隣接する4個のサブブロック31の各代表値の平均値の分散値が、サブブロック32ごとに導出されてもよい。
The average value of the prediction residuals in the area of size “2×2” in the
図2に示された代表値導出部123には、複数のサブブロックと(サブブロックのサイズ情報と)、サブブロックごとの予測残差と、組み合わせリスト「TrMtxList」とが、サブブロック分割部122から入力される。代表値導出部123は、予測残差の代表値を、サブブロックごとに導出する。代表値導出部123は、サブブロックごとの予測残差の代表値(縮小信号)と、組み合わせリスト「TrMtxList」とを、水平方向選択部124に出力する。
The representative
水平方向選択部124には、サブブロックごとの予測残差の代表値(縮小信号)が、代表値導出部123から入力される。水平方向選択部124は、サブブロックごとの予測残差の代表値(縮小信号)に対して、変換基底を用いた水平方向の周波数変換を実行する。
The
水平方向選択部124は、変換基底「DST-7」が用いられることによって導出された水平方向の変換係数群の絶対値和と、変換基底「DCT-8」が用いられることによって導出された水平方向の変換係数群の絶対値和との大小を比較する。水平方向選択部124は、変換係数の絶対値和がより小さくなる変換基底を選択する。水平方向選択部124は、サブブロックごとの予測残差の代表値(縮小信号)と、絶対値和がより小さくなるように導出された水平方向の変換係数群と、水平方向について選択された変換基底(「DST-7」又は「DCT-8」)と、組み合わせリスト「TrMtxList」(DCT-2,DCT-2)とを、垂直方向選択部125に出力する。
The horizontal
垂直方向選択部125には、サブブロックごとの予測残差の代表値(縮小信号)と、水平方向の変換係数群と、水平方向選択部124によって選択された変換基底と、組み合わせリスト「TrMtxList」とが、水平方向選択部124から入力される。垂直方向選択部125は、サブブロックごとの予測残差の代表値(縮小信号)に対して、変換基底を用いた垂直方向の周波数変換を実行する。
The
垂直方向選択部125は、変換基底「DST-7」が用いられることによって導出された垂直方向の変換係数群の絶対値和と、変換基底「DCT-8」が用いられることによって導出された垂直方向の変換係数群の絶対値和との大小を比較する。垂直方向選択部125は、変換係数の絶対値和がより小さくなる変換基底を選択する。垂直方向選択部125は、サブブロックごとの予測残差の代表値(縮小信号)と、絶対値和がより小さくなるように導出された垂直方向の変換係数群と、垂直方向について選択された変換基底(「DST-7」又は「DCT-8」)と、組み合わせリスト「TrMtxList」(DCT-2,DCT-2)とを、変換処理部126に出力する。
The vertical
変換処理部126には、符号化対象のCUの予測残差信号が、判定部121から入力される。変換処理部126には、変換サイズ情報と、周波数の変換基底の組み合わせリスト「TrMtxList」とが、判定部121から入力されてもよい。また、変換処理部126には、絶対値和がより小さくなるように導出された垂直方向の変換係数群と、水平方向選択部124及び垂直方向選択部125によって選択された各変換基底を含む組み合わせリスト「TrMtxList」とが、垂直方向選択部125から入力される。
The prediction residual signal of the CU to be encoded is input from the
変換処理部126は、周波数の変換基底の組み合わせリスト「TrMtxList」に含まれている選択された組み合わせごとに(絞り込まれた組み合わせごとに)、符号化単位のブロックに対して周波数変換処理を実行する。変換処理部126は、変換基底の組み合わせごとのレート歪み値等のコスト値に基づいて、周波数の変換基底の最終的な組み合わせを選択する。変換処理部126は、コスト値が最も小さくなる変換基底の組み合わせを、最終的な組み合わせとして選択する。
The
変換処理部126は、周波数の変換基底の最終的な組み合わせを用いて、符号化単位のブロックについて周波数変換を実行する。変換処理部126は、周波数変換の結果として導出された変換係数群を、量子化部13に出力する。
The
次に、周波数変換部12の動作を説明する。
図4は、実施形態における、判定部121と、サブブロック分割部122と、代表値導出部123と、水平方向選択部124との動作例を示すフローチャートである。判定部121は、周波数の変換基底の組み合わせリスト「TrMtxList」に、デフォルトの変換基底である「(水平,垂直)=(DCT-2,DCT-2)」を格納する(ステップS101)。
Next, the operation of the
FIG. 4 is a flowchart illustrating an example of the operation of the
判定部121は、変換基底を選択する処理(絞込処理)を実行するか否かを、例えば、変換サイズ情報と、予測残差の絶対値和と、予測残差の水平方向及び垂直方向の分布形状とのうちのいずれかに基づいて判定する。判定部121は、これらの組み合わせに基づいて、変換基底を選択する処理をするか否かを判定してもよい(ステップS102)。
The
例えば変換サイズ情報(CUSize)が「32×32」を超えている場合(ステップS102:NO)、判定部121は、図4及び図5に記載された処理を終了する。例えば変換サイズ情報が「32×32」以下である場合(ステップS102:YES)、判定部121は、変換サイズ情報が閾値「ThSize」を超えているか否かを判定する(ステップS103)。
For example, if the conversion size information (CUSize) exceeds "32x32" (step S102: NO), the
変換サイズ情報が閾値「ThSize」以下である場合(ステップS103:NO)、周波数変換に要する処理量(演算量)が少ないので、判定部121に入力された予測残差信号に対して周波数変換が実行されるように、判定部121は、ステップS105-1及びステップS105-2に処理を進める。
If the conversion size information is less than or equal to the threshold value "ThSize" (step S103: NO), the amount of processing (amount of calculation) required for frequency conversion is small, so frequency conversion is not performed on the prediction residual signal input to the
変換サイズ情報が閾値「ThSize」を超えている場合(ステップS103:YES)、サブブロック分割部122及び代表値導出部123は、CUにおける予測残差の解像度を低下させることによって、予測残差信号を縮小する。すなわち、サブブロック分割部122及び代表値導出部123は、CUにおける予測残差の個数を削減する。
If the transform size information exceeds the threshold value "ThSize" (step S103: YES), the
例えば、サブブロック分割部122は、CUを複数(例えば、4×4個)のサブブロックに分割する。代表値導出部123は、サブブロックごとに1個の代表値を導出する。CUにおいて個数が削減された予測残差を導出するための代表値として、例えば、サブブロックごとに導出された予測残差の平均値と、予測残差の最大値、最小値、中央値又は最頻値と、サブブロック内及びサブブロック間の所定の特徴を表す特徴量とのうちのいずれかが用いられる。これによって、周波数変換に要する処理量が削減される(ステップS104)。
For example, the
水平方向選択部124は、個数が削減された予測残差に対して、所定の複数の変換基底を用いて、水平方向の周波数変換を実行する。すなわち、水平方向選択部124は、個数が削減された予測残差に対して、変換基底「DST-7」を用いた水平方向の周波数変換を実行する(ステップS105-1)。水平方向選択部124は、個数が削減された予測残差に対して、変換基底「DCT-8」を用いた水平方向の周波数変換を実行する(ステップS105-2)。
The
以下、変換基底「DST-7」が用いられることによって導出された水平方向の変換係数群は、「h_Coeff_DST7」と表記される。変換基底「DCT-8」が用いられることによって導出された水平方向の変換係数群は、「h_Coeff_DCT8」と表記される。 Hereinafter, a group of horizontal transform coefficients derived by using the transform base "DST-7" will be expressed as "h_Coeff_DST7". A group of horizontal transform coefficients derived by using the transform base "DCT-8" is expressed as "h_Coeff_DCT8".
水平方向選択部124は、変換係数群「h_Coeff_DST7」の絶対値和「|h_Coeff_DST7|」を導出する(ステップS106-1)。水平方向選択部124は、変換係数群「h_Coeff_DCT8」の絶対値和「|h_Coeff_DCT8|」を導出する(ステップS106-2)。
The
水平方向選択部124は、絶対値和「|h_Coeff_DST7|」と絶対値和「|h_Coeff_DCT8|」との大小を比較する(ステップS107)。周波数変換領域の一部に動画像信号の成分が集められることによって、空間的な相関が動画像信号から除去される。この場合、周波数変換後の変換係数が一部の低周波成分に集中するほど、量子化処理の影響を受けにくく、符号化効率が高まる。また、変換係数の値が小さいほど、符号化に必要な情報量が少なくなる。そこで、水平方向選択部124は、異なる変換基底を用いて得られたそれぞれの変換係数(ここで、低周波から高周波までの各周波成分に変換係数がある)の絶対値和を比較する。変換係数の絶対値和がより小さい変換基底を水平方向選択部124が選択することによって、符号化効率がより高くなる変換基底が選択される。
The
絶対値和「|h_Coeff_DST7|」が絶対値和「|h_Coeff_DCT8|」未満である場合(ステップS107:YES)、水平方向選択部124は、より小さい絶対値和に基づいて選択された変換基底「DST-7」を、変換基底のパラメータ「Tr_h」に代入する。水平方向選択部124は、大小比較の結果として選択された変換基底の水平方向の変換係数を、パラメータ「h_Coeff_Best」に代入する(ステップS108)。
If the sum of absolute values “|h_Coeff_DST7|” is less than the sum of absolute values “|h_Coeff_DCT8|” (step S107: YES), the horizontal
絶対値和「|h_Coeff_DST7|」が絶対値和「|h_Coeff_DCT8|」以上である場合(ステップS107:NO)、水平方向選択部124は、より小さい絶対値和に基づいて選択された変換基底「DCT-8」を、変換基底のパラメータ「Tr_h」に代入する。水平方向選択部124は、大小比較の結果として選択された変換基底の水平方向の変換係数群を、パラメータ「h_Coeff_Best」に代入する(ステップS109)。
If the sum of absolute values “|h_Coeff_DST7|” is greater than or equal to the sum of absolute values “|h_Coeff_DCT8|” (step S107: NO), the
図5は、実施形態における、垂直方向選択部125の動作例を示すフローチャートである。垂直方向選択部125は、水平方向選択部124によって導出された水平方向の変換係数群「h_Coeff_Best」に対して、垂直方向の周波数変換を、所定の複数の変換基底を用いて実行する。
FIG. 5 is a flowchart showing an example of the operation of the vertical
図4に示されたステップS108が実行された場合、ステップS108に続いて、ステップS110からステップ118までが実行される。垂直方向選択部125は、個数が削減された予測残差に対して、変換基底「DST-7」を用いた垂直方向の周波数変換を実行する(ステップS110-1)。垂直方向選択部125は、個数が削減された予測残差に対して、変換基底「DCT-8」を用いた垂直方向の周波数変換を実行する(ステップS110-2)。
When step S108 shown in FIG. 4 is executed, steps S110 to 118 are executed following step S108. The
以下、変換基底「DST-7」が用いられることによって導出された垂直方向の変換係数群は、「vh_Coeff_DST7」と表記される。変換基底「DCT-8」が用いられることによって導出された垂直方向の変換係数群は、「vh_Coeff_DCT8」と表記される。 Hereinafter, a group of vertical transform coefficients derived by using the transform base "DST-7" will be expressed as "vh_Coeff_DST7". A group of vertical transform coefficients derived by using the transform base "DCT-8" is expressed as "vh_Coeff_DCT8".
垂直方向選択部125は、垂直方向の変換係数群「vh_Coeff_DST7」の絶対値和「|vh_Coeff_DST7|」を導出する(ステップS111-1)。垂直方向選択部125は、垂直方向の変換係数群「vh_Coeff_DCT8」の絶対値和「|vh_Coeff_DCT8|」を導出する(ステップS111-2)。
The
垂直方向選択部125は、絶対値和「|vh_Coeff_DST7|」と絶対値和「|vh_Coeff_DCT8|」との大小を比較する(ステップS112)。
The vertical
絶対値和「|vh_Coeff_DST7|」が絶対値和「|vh_Coeff_DCT8|」未満である場合(ステップS112:YES)、垂直方向選択部125は、より小さい絶対値和に基づいて選択された変換基底「DST-7」を、変換基底のパラメータ「Tr_v」に代入する(ステップS113-1)。
If the absolute value sum "|vh_Coeff_DST7|" is less than the absolute value sum "|vh_Coeff_DCT8|" (step S112: YES), the vertical
絶対値和「|vh_Coeff_DST7|」が絶対値和「|vh_Coeff_DCT8|」以上である場合(ステップS112:NO)、垂直方向選択部125は、より小さい絶対値和に基づいて選択された変換基底「DCT-8」を、変換基底のパラメータ「Tr_v」に代入する(ステップS113-2)。
If the absolute value sum “|vh_Coeff_DST7|” is greater than or equal to the absolute value sum “|vh_Coeff_DCT8|” (step S112: NO), the vertical
図4に示されたステップS109が実行された場合、ステップS109に続いて、ステップS114からステップ118までが実行される。垂直方向選択部125は、個数が削減された予測残差に対して、変換基底「DST-7」を用いた垂直方向の周波数変換を実行する(ステップS114-1)。垂直方向選択部125は、個数が削減された予測残差に対して、変換基底「DCT-8」を用いた垂直方向の周波数変換を実行する(ステップS114-2)。
When step S109 shown in FIG. 4 is executed, steps S114 to 118 are executed following step S109. The
垂直方向選択部125は、変換係数群「vh_Coeff_DST7」の絶対値和「|vh_Coeff_DST7|」を導出する(ステップS115-1)。垂直方向選択部125は、変換係数群「vh_Coeff_DCT8」の絶対値和「|vh_Coeff_DCT8|」を導出する(ステップS115-2)。
The
垂直方向選択部125は、絶対値和「|vh_Coeff_DST7|」と絶対値和「|vh_Coeff_DCT8|」との大小を比較する(ステップS116)。
The
絶対値和「|vh_Coeff_DST7|」が絶対値和「|vh_Coeff_DCT8|」未満である場合(ステップS116:YES)、垂直方向選択部125は、より小さい絶対値和に基づいて選択された変換基底「DST-7」を、変換基底のパラメータ「Tr_v」に代入する(ステップS117-1)。
If the sum of absolute values “|vh_Coeff_DST7|” is less than the sum of absolute values “|vh_Coeff_DCT8|” (step S116: YES), the vertical
絶対値和「|vh_Coeff_DST7|」が絶対値和「|vh_Coeff_DCT8|」以上である場合(ステップS116:NO)、垂直方向選択部125は、より小さい絶対値和に基づいて選択された変換基底「DCT-8」を、変換基底のパラメータ「Tr_v」に代入する(ステップS117-2)。
When the absolute value sum “|vh_Coeff_DST7|” is greater than or equal to the absolute value sum “|vh_Coeff_DCT8|” (step S116: NO), the vertical
このような絞込処理によって、垂直方向選択部125は、水平方向及び垂直方向に関して4通りの変換基底のうちから、「(水平,垂直)=(Tr_h,Tr_v)」という1個の変換基底を選択する。
Through such narrowing down processing, the vertical
垂直方向選択部125は、周波数の変換基底の組み合わせリスト「TrMtxList」に、「(水平,垂直)=(Tr_h,Tr_v)」という1個の変換基底を含める(ステップS118)。これによって、周波数の変換基底の組み合わせリスト「TrMtxList」では、「(水平、垂直)=(DCT-2、DCT-2)」と、「(水平、垂直)=(Tr_h、Tr_v)」という2通りの変換基底の組み合わせに絞り込まれる。
The
次に、予測残差の縮小信号を生成する処理(図4に示されたステップS104)の詳細を説明する。
図6は、実施形態における、サブブロック分割部122と代表値導出部123との動作例を示すフローチャートである。サブブロック分割部122は、予測残差を含むCUのサイズが「N×N」であるブロック30(N×Nブロック)を、「S_1×S_1」のサイズのサブブロック31と、「S_2×S_2」のサイズのサブブロック32とに分割する。ここで、「S_1<S_2」と、「S_2=2×S_1」とが成立している(ステップS201)。
Next, details of the process of generating a reduced prediction residual signal (step S104 shown in FIG. 4) will be described.
FIG. 6 is a flowchart showing an example of the operation of the
サブブロック分割部122は、「s_1[0]」から「s_1[m_1-1]」までの「m_1=(N×N)/(S_1×S_1)」個のサブブロック31を生成する。サブブロック分割部122は、「s_2[0]」から「s_2[m_2-1]」までの「m_2=(N×N)/(S_2×S_2)」個のサブブロック32を生成する(ステップS202)。
The
代表値導出部123は、サブブロック「s_1[i](iは、0から「m_1-1」までの整数)」ごとに、サブブロック31の予測残差の平均値「s_1_ave[i]」を、代表値として導出する(ステップS203)。
The representative
代表値導出部123は、サブブロック「s_2[j](jは、0から「m_2-1」までの整数)」ごとに、サブブロック32が内包する4個のサブブロック31「s_1[i]」の予測残差の平均値「s_1_ave[i]」の分散値「s_2_in_var[j]」を、代表値として導出する。図3では、代表値導出部123は、平均値「s_1_ave[0]」と平均値「s_1_ave[1]」と平均値「s_1_ave[4]」と平均値「s_1_ave[5]」とを用いて、例えば分散値「s_2_in_Var[0]」を、代表値を導出する(ステップS204)。
The representative
図3では、代表ブロックとしてのサブブロック32-0「s_2[0]」における予測残差の平均値「s_2_ave[0]」は、「s_2_ave[0]=(s_1_ave[0]+s_1_ave[1]+s_1_ave[4]+s_1_ave[5])/4」である。代表ブロックとしてのサブブロック32-1「s_2[1]」における予測残差の平均値「s_2_ave[1]」は、「s_2_ave[1]=(s_1_ave[2]+s_1_ave[3]+s_1_ave[6]+s_1_ave[7])/4」である。 In FIG. 3, the average value “s_2_ave[0]” of the prediction residual in the sub-block 32-0 “s_2[0]” as a representative block is “s_2_ave[0]=(s_1_ave[0]+s_1_ave[1]+s_1_ave [4]+s_1_ave[5])/4''. The average value "s_2_ave[1]" of the prediction residuals in the sub-block 32-1 "s_2[1]" as a representative block is "s_2_ave[1]=(s_1_ave[2]+s_1_ave[3]+s_1_ave[6]+s_1_ave [7])/4''.
図3では、代表ブロックとしてのサブブロック32-2「s_2[2]」における予測残差の平均値「s_2_ave[2]」は、「s_2_ave[2]=(s_1_ave[8]+s_1_ave[9]+s_1_ave[12]+s_1_ave[13])/4」である。代表ブロックとしてのサブブロック32-3「s_2[3]」における予測残差の平均値「s_2_ave[3]」は、「s_2_ave[3]=(s_1_ave[10]+s_1_ave[11]+s_1_ave[14]+s_1_ave[15])/4」である。 In FIG. 3, the average value "s_2_ave[2]" of the prediction residuals in the sub-block 32-2 "s_2[2]" as a representative block is "s_2_ave[2]=(s_1_ave[8]+s_1_ave[9]+s_1_ave [12]+s_1_ave[13])/4''. The average value “s_2_ave[3]” of the prediction residuals in the sub-block 32-3 “s_2[3]” as a representative block is “s_2_ave[3]=(s_1_ave[10]+s_1_ave[11]+s_1_ave[14]+s_1_ave [15])/4''.
代表値導出部123は、分散値「s_2_in_var[j]」が閾値「ThVar」以下であるか否かを判定する(ステップS205)。分散値「s_2_in_var[j]」が所定の閾値「ThVar」以下である場合(ステップS205:YES)、サブブロック「s_2」を構成する4個のサブブロック31「s_1[i]」の間で、各予測残差のばらつきが少なく、各予測残差が互いに近い値である。
The representative
このような場合、サイズ「N×N」のブロック30がサイズ「S_2×S_2」のサブブロック32に分割されたとしても、サイズ「N×N」のブロック30がサイズ「S_1×S_1」のサブブロック31に分割された場合における予測残差の縮小信号と同様の縮小信号を、代表値導出部123が導出することが可能である。また、周波数変換の対象とされるサブブロックのサイズを代表値導出部123が更に小さくすることによって、処理量をさらに削減することが可能である。
In such a case, even if the
代表値導出部123は、サブブロック「s_1[i]」の予測残差の平均値「s_1_ave[i]」に基づいて、サブブロック「s_2[j]」の予測残差の平均値「s_2_ave[j]」を導出する(ステップS206)。代表値導出部123は、サイズ「N/S_2×N/S_2」のサブブロック31「s_2[j]」を、水平方向選択部124に出力する(ステップS207)。
The representative
分散値「s_2_in_var[j]」が所定の閾値「ThVar」を超える場合(ステップS205:NO)、予測残差信号がさらに縮小されると(予測残差の個数がさらに削減されると)、予測残差の特徴が失われてしまう可能性があるので、代表値導出部123は、サイズ「N/S_1×N/S_1」のサブブロック31「s_1[i]」を、水平方向選択部124に出力する(ステップS208)。
If the variance value "s_2_in_var[j]" exceeds the predetermined threshold "ThVar" (step S205: NO), when the prediction residual signal is further reduced (the number of prediction residuals is further reduced), the prediction Since the characteristics of the residual may be lost, the representative
以上のように、サブブロック分割部122は、符号化対象の画像に定められた符号化単位のブロックを、複数のサブブロックに分割する。代表値導出部123は、サブブロックごとに代表値を導出する。水平方向選択部124及び垂直方向選択部125は、互いに隣接する複数のサブブロックから構成される代表ブロックにおける複数の代表値に基づいて、変換基底の組み合わせを複数の組み合わせのうちから選択する。変換処理部126は、選択された組み合わせを用いて、符号化単位のブロックごとに周波数変換処理を実行する。
As described above, the
このように、最終的な変換モードを変換処理部126が複数の周波数変換モードのうちから選択する際に、変換処理部126は、符号化対象の画像に定められたブロックのサブブロックごとの代表値を用いて、変換基底「DST-7」と変換基底「DCT-8」との組み合わせを絞り込む。変換処理部126は、絞り込まれた組み合わせとDCT-2とについて、コスト値を導出する。変換処理部126は、コスト値に基づいて変換モードを選択する。これによって、変換基底を選択するための処理量を削減することが可能である。
In this way, when the
水平方向選択部124は、代表ブロックの水平方向について変換基底を選択する。垂直方向選択部125は、水平方向について選択された変換基底を用いて、変換係数を代表値から変換する。垂直方向選択部125は、水平方向について選択された変換基底を用いて代表値から変換された変換係数に基づいて、垂直方向について変換基底を複数の候補の中から選択する。垂直方向選択部125は、水平方向について選択された変換基底と、垂直方向について選択された変換基底とを、変換基底の組み合わせとして選択する。変換処理部126は、「DST-7」と「DCT-8」との4通りの組み合わせのうちから選択された変換基底の組み合わせと、これら4通りの組み合わせ以外の変換基底の組み合わせ「(DCT-2,DCT-2)」とのうちのいずれかを用いて、符号化単位のブロック(CU)ごとに周波数変換処理を実行してもよい。
The
符号化装置1は、複数の周波数変換組み合わせを用いて、変換対象元の予測残差信号の縮小信号(縮小予測残差信号)を導出する。符号化装置1は、水平方向の変換基底と垂直方向の変換基底とを縮小信号に対して段階的に絞り込むことによって、変換基底を決定する。これによって、周波数の変換基底選択に関わる処理量を削減することが可能である。
The
特に大きなサイズのCUに対してMTS処理が実行される場合、周波数変換の対象とされた予測残差のパターンによらず、MTSの変換基底を水平方向と垂直方向とで段階的に絞り込む。これによって、変換基底の選択処理を固定処理量で符号化装置1が実行し、MTSでの変換基底を決定するための処理量を削減することが可能である。
In particular, when MTS processing is performed on a large CU, the MTS conversion basis is narrowed down in stages in the horizontal and vertical directions, regardless of the pattern of prediction residuals targeted for frequency conversion. Thereby, the
図7は、実施形態における、符号化装置1のハードウェア構成例を示す図である。符号化装置1の各機能部のうちの一部又は全部は、CPU(Central Processing Unit)等のプロセッサ100が、不揮発性の記録媒体(非一時的な記録媒体)を有する記憶部200に記憶されたプログラムを実行することにより、ソフトウェアとして実現される。プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、CD-ROM(Compact Disc Read Only Memory)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置などの非一時的な記録媒体である。通信部300は、符号化装置1による処理結果を外部装置(不図示)に送信する。通信部300は、通信回線を経由してプログラムを受信してもよい。表示部400は、符号化装置1による処理結果を表示する。表示部400は、例えば、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイである。
FIG. 7 is a diagram showing an example of the hardware configuration of the
符号化装置1の各機能部のうちの一部又は全部は、例えば、LSI(Large Scale Integration circuit)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)又はFPGA(Field Programmable Gate Array)等を用いた電子回路(electronic circuit又はcircuitry)を含むハードウェアを用いて実現されてもよい。
Some or all of the functional units of the
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 Although the embodiments of the present invention have been described above in detail with reference to the drawings, the specific configuration is not limited to these embodiments, and includes designs within the scope of the gist of the present invention.
本発明は、符号化等の画像処理を動画像に対して実行する装置に適用可能である。 INDUSTRIAL APPLICATION This invention is applicable to the apparatus which performs image processing, such as encoding, on a moving image.
1…符号化装置、10…ブロック分割部、11…残差信号生成部、12…周波数変換部、13…量子化部、14…エントロピー符号化部、15…逆量子化部、16…逆周波数変換部、17…復号画像生成部、18…ループフィルタ処理部、19…参照画像バッファ部、20…イントラ予測部、21…インター予測部、22…予測画像生成部、30…ブロック、31…サブブロック、32…サブブロック、100…プロセッサ、121…判定部、122…サブブロック分割部、123…代表値導出部、124…水平方向選択部、125…垂直方向選択部、126…変換処理部、200…記憶部、300…通信部、400…表示部
DESCRIPTION OF
Claims (7)
前記サブブロックごとに代表値を導出する代表値導出部と、
互いに隣接する複数の前記サブブロックから構成される代表ブロックにおける複数の前記代表値に基づいて、変換基底の組み合わせを複数の組み合わせのうちから選択する選択部と、
選択された前記変換基底の組み合わせを用いて、前記符号化単位のブロックごとに周波数変換処理を実行する変換処理部と
を備える符号化装置。 a sub-block dividing unit that divides a block of coding units defined in an image into a plurality of sub-blocks;
a representative value deriving unit that derives a representative value for each sub-block;
a selection unit that selects a combination of transformation bases from a plurality of combinations based on the plurality of representative values in the representative block composed of the plurality of mutually adjacent subblocks;
An encoding device comprising: a transformation processing unit that performs frequency transformation processing for each block of the encoding unit using the selected combination of the transformation bases .
前記代表ブロックの水平方向について選択された前記変換基底と、前記水平方向について選択された前記変換基底を用いて前記代表値から変換された変換係数に基づき垂直方向について複数の候補の中から選択された前記変換基底と、を前記変換基底の組み合わせとして選択する、
請求項1に記載の符号化装置。 The selection section is
The representative block is selected from among a plurality of candidates in the vertical direction based on the transformation base selected for the horizontal direction and the transformation coefficient transformed from the representative value using the transformation base selected for the horizontal direction. and selecting the transformation base as a combination of the transformation bases ,
The encoding device according to claim 1.
前記サブブロックごとに代表値を導出する代表値導出部と、
互いに隣接する複数の前記サブブロックから構成される代表ブロックにおける複数の前記代表値に基づいて、変換基底の組み合わせを複数の組み合わせのうちから選択する選択部と、
選択された前記変換基底の組み合わせと前記複数の組み合わせ以外の変換基底の組み合わせとのうちのいずれかを用いて、前記符号化単位のブロックごとに周波数変換処理を実行する変換処理部と
を備える符号化装置。 a sub-block dividing unit that divides a block of coding units defined in an image into a plurality of sub-blocks;
a representative value deriving unit that derives a representative value for each sub-block;
a selection unit that selects a combination of transformation bases from a plurality of combinations based on the plurality of representative values in the representative block composed of the plurality of mutually adjacent subblocks;
A code comprising: a transform processing unit that performs frequency transform processing for each block of the coding unit using any one of the selected combination of transform bases and a combination of transform bases other than the plurality of combinations; conversion device.
前記代表ブロックの水平方向について前記変換基底の組み合わせを選択し、前記代表ブロックの垂直方向について前記変換基底の組み合わせを選択し、
前記変換処理部は、
前記水平方向について選択された前記変換基底の組み合わせと前記複数の組み合わせ以外の変換基底の組み合わせとのうちのいずれかを用いて、前記符号化単位のブロックの水平方向について前記周波数変換処理を実行する、
請求項3に記載の符号化装置。 The selection section is
selecting a combination of the transformation bases for the horizontal direction of the representative block; selecting a combination of the transformation bases for the vertical direction of the representative block;
The conversion processing unit is
The frequency conversion process is performed in the horizontal direction of the block of the coding unit using either the combination of the transform bases selected for the horizontal direction or a combination of transform bases other than the plurality of combinations. ,
The encoding device according to claim 3.
画像に定められた符号化単位のブロックを複数のサブブロックに分割するサブブロック分割ステップと、
前記サブブロックごとに代表値を導出する代表値導出ステップと、
互いに隣接する複数の前記サブブロックから構成される代表ブロックにおける複数の前記代表値に基づいて、変換基底の組み合わせを複数の組み合わせのうちから選択する選択ステップと、
選択された前記変換基底の組み合わせを用いて、前記符号化単位のブロックごとに周波数変換処理を実行する変換処理ステップと
を含む符号化方法。 An encoding method executed by an encoding device, the encoding method comprising:
a subblock dividing step of dividing a coding unit block defined in the image into a plurality of subblocks;
a representative value deriving step of deriving a representative value for each sub-block;
a selection step of selecting a combination of transformation bases from a plurality of combinations based on the plurality of representative values in the representative block constituted by the plurality of mutually adjacent subblocks;
and a transform processing step of performing frequency transform processing for each block of the coding unit using the selected combination of the transform bases .
画像に定められた符号化単位のブロックを複数のサブブロックに分割するサブブロック分割ステップと、
前記サブブロックごとに代表値を導出する代表値導出ステップと、
互いに隣接する複数の前記サブブロックから構成される代表ブロックにおける複数の前記代表値に基づいて、変換基底の組み合わせを複数の組み合わせのうちから選択する選択ステップと、
選択された前記変換基底の組み合わせと前記複数の組み合わせ以外の変換基底の組み合わせとのうちのいずれかを用いて、前記符号化単位のブロックごとに周波数変換処理を実行する変換処理ステップと
を含む符号化方法。 An encoding method executed by an encoding device, the encoding method comprising:
a subblock dividing step of dividing a coding unit block defined in the image into a plurality of subblocks;
a representative value deriving step of deriving a representative value for each sub-block;
a selection step of selecting a combination of transformation bases from a plurality of combinations based on the plurality of representative values in the representative block constituted by the plurality of mutually adjacent subblocks;
a conversion processing step of performing a frequency conversion process for each block of the coding unit using any one of the selected combination of conversion bases and a combination of conversion bases other than the plurality of combinations; method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020122903A JP7406208B2 (en) | 2020-07-17 | 2020-07-17 | Encoding device, encoding method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020122903A JP7406208B2 (en) | 2020-07-17 | 2020-07-17 | Encoding device, encoding method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022019205A JP2022019205A (en) | 2022-01-27 |
JP7406208B2 true JP7406208B2 (en) | 2023-12-27 |
Family
ID=80203608
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020122903A Active JP7406208B2 (en) | 2020-07-17 | 2020-07-17 | Encoding device, encoding method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7406208B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014121051A (en) | 2012-12-19 | 2014-06-30 | Fujitsu Ltd | Motion vector detector, motion vector detecting method, and program |
JP6351008B2 (en) | 2014-03-20 | 2018-07-04 | 国立大学法人 香川大学 | Hydroxyapatite derived from fish bone |
WO2019235491A1 (en) | 2018-06-08 | 2019-12-12 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | Coding device, decoding device, coding method, and decoding method |
-
2020
- 2020-07-17 JP JP2020122903A patent/JP7406208B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014121051A (en) | 2012-12-19 | 2014-06-30 | Fujitsu Ltd | Motion vector detector, motion vector detecting method, and program |
JP6351008B2 (en) | 2014-03-20 | 2018-07-04 | 国立大学法人 香川大学 | Hydroxyapatite derived from fish bone |
WO2019235491A1 (en) | 2018-06-08 | 2019-12-12 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | Coding device, decoding device, coding method, and decoding method |
Non-Patent Citations (1)
Title |
---|
CHOI, Kiho et al.,CE6-related: Simplification on MTS Kernel Derivation,JVET-L0059 (version 2),ITU,2018年10月03日,pp.1-4,[online],[retrieved on 2023-09-29],Retrieved from the Internet: <URL: https://jvet-experts.org/doc_end_user/documents/12_Macao/wg11/JVET-L0059-v2.zip>,JVET-L0059_v2.docx |
Also Published As
Publication number | Publication date |
---|---|
JP2022019205A (en) | 2022-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109997361B (en) | Low complexity symbol prediction for video coding | |
RU2554555C2 (en) | Method and device for encoding video and method and device for decoding video through pixel value compensation in accordance with pixel groups | |
TWI521890B (en) | Image coding apparatus, method and program, and image decoding apparatus, method and program | |
KR101426272B1 (en) | Apparatus of encoding image and apparatus of decoding image | |
KR20090097013A (en) | Apparatus of encoding image and apparatus of decoding image | |
CN104052996A (en) | Image encoding apparatus, image encoding method, image decoding apparatus, and image decoding method | |
JP2014523186A (en) | Entropy encoding / decoding method and apparatus | |
JP4804342B2 (en) | Overcomplete basis transform based motion residual frame encoding method and video compression apparatus | |
WO2020261314A1 (en) | Image encoding method and image decoding method | |
JP2019110530A (en) | Method and device for encoding video data | |
JP6951324B2 (en) | Image coding and decoding methods, image coding and decoding devices, and corresponding computer programs | |
JP6069128B2 (en) | Transform quantization method, transform quantization apparatus, and transform quantization program | |
JP7406208B2 (en) | Encoding device, encoding method and program | |
JP2015043524A (en) | Rate distortion cost estimation device and program | |
JP7274427B2 (en) | Method and device for encoding and decoding data streams representing at least one image | |
JP7401822B2 (en) | Image encoding method, image encoding device and program | |
JP2019110529A (en) | Method and device for encoding video data | |
US8811474B2 (en) | Encoder and encoding method using coded block pattern estimation | |
JP7141007B2 (en) | Encoding device, encoding method and program | |
JP6992825B2 (en) | Video coding device, video coding method, video decoding device, video decoding method, and video coding system | |
JP5886922B2 (en) | Image decoding method | |
JP5850536B2 (en) | Moving picture coding apparatus and moving picture coding method | |
JP2012134632A (en) | Image decoding device, image decoding method, and program | |
CN107409216B (en) | Image encoding and decoding method, encoding and decoding device and corresponding computer program | |
JP5887013B2 (en) | Image decoding method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20200721 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220728 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230825 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231003 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231127 |
|
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: 20231205 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231207 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7406208 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |