JP6541260B2 - Transformation processing apparatus, inverse transformation processing apparatus, encoding apparatus, decoding apparatus, and computer program - Google Patents
Transformation processing apparatus, inverse transformation processing apparatus, encoding apparatus, decoding apparatus, and computer program Download PDFInfo
- Publication number
- JP6541260B2 JP6541260B2 JP2015162867A JP2015162867A JP6541260B2 JP 6541260 B2 JP6541260 B2 JP 6541260B2 JP 2015162867 A JP2015162867 A JP 2015162867A JP 2015162867 A JP2015162867 A JP 2015162867A JP 6541260 B2 JP6541260 B2 JP 6541260B2
- Authority
- JP
- Japan
- Prior art keywords
- point
- transform
- inverse
- conversion
- unit
- 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
- 238000012545 processing Methods 0.000 title claims description 109
- 230000009466 transformation Effects 0.000 title claims description 53
- 238000004590 computer program Methods 0.000 title claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 153
- 238000000034 method Methods 0.000 claims description 31
- 230000006870 function Effects 0.000 claims description 26
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 16
- 238000013139 quantization Methods 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000000844 transformation Methods 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Landscapes
- Complex Calculations (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
本発明は、映像信号等の信号の変換の技術に関する。 The present invention relates to a technology for converting a signal such as a video signal.
MPEG(Moving Picture Experts Group)の映像符号化方式は、映像信号を離散コサイン変換(Discrete Cosine Transform:DCT)に代表される直交変換を使用して空間周波数に変換することにより、効率的な情報圧縮を実現する。DCTや離散サイン変換(Discrete Sine Transform:DST)の従来の技術として、例えば非特許文献1や特許文献1,2,3などが知られている。
The moving picture experts group (MPEG) video coding method is an efficient information compression method by converting a video signal to spatial frequency using orthogonal transform represented by discrete cosine transform (DCT). To achieve. As conventional techniques of DCT and Discrete Sine Transform (DST), for example,
最新のMPEG−H HEVC/H.265の映像符号化方式では、2次元の直交変換を「4×4」から「32×32」までの画素ブロックサイズで行うことができる。これにより、映像信号に適した画素ブロックサイズで直交変換を適用することができるので、よりきめ細かい符号化制御を行うことが可能である。また、4K(3840×2160)や8K(7680×4320)と呼ばれるUHD(Ultra High Definition)映像は、情報量の多い精細な映像表現が可能となる一方で精細感の必要のない領域も増えることから、精細感のダイナミックレンジの広い映像となる。このような映像信号に対しては、映像領域に適した符号化ブロックのサイズを選択することによって符号化効率が改善する。例えば、複数のサイズの画素ブロックの単位で符号化制御を行うMPEG−H HEVC/H.265の映像符号化方式によれば、前世代のMPEG−4 AVC/H.264の映像符号化方式に比べて約2倍の符号化性能を達成しており、特にUHD映像に対してその効果が高い。 The latest MPEG-H HEVC / H. In the video coding method of H.265, two-dimensional orthogonal transform can be performed with a pixel block size of "4 × 4" to "32 × 32". As a result, orthogonal transform can be applied with a pixel block size suitable for a video signal, and therefore, finer encoding control can be performed. In addition, UHD (Ultra High Definition) video called 4K (3840 × 2160) or 8K (7680 × 4320) enables high-definition video representation with a large amount of information, but increases the area that does not require a sense of definition. From this, it becomes a video with a wide dynamic range with a sense of definition. For such video signals, coding efficiency is improved by selecting the size of the coding block suitable for the video area. For example, in MPEG-H HEVC / H.2 that performs encoding control in units of pixel blocks of a plurality of sizes. According to the H.265 video coding method, the previous generation MPEG-4 AVC / H. Compared with the H.264 video coding method, the coding performance is approximately doubled, and the effect is particularly high for UHD video.
しかし、MPEG−H HEVC/H.265の映像符号化方式は、CU(Coding Unit)と呼ばれる符号化ブロックのサイズが最大「64×64」の画素ブロックサイズであるのに対して、TU(Transform Unit)と呼ばれる直交変換ブロックのサイズが最大「32×32」の画素ブロックサイズと小さい。このことは、特に解像度の高い8K映像や信号変化が極端であるCG(Computer Graphics)映像に対して、符号化効率の向上を十分に達成しきれていない原因の一つとして考えられる。そのような8K映像やCG映像に対しては、「64×64」を超える「128×128」の画素ブロックサイズで符号化を行うことによって、符号化効率がさらに向上することが知られている。 However, MPEG-H HEVC / H. In the video coding method of H.265, the size of the coding block called CU (Coding Unit) is the maximum pixel block size of “64 × 64”, while the size of the orthogonal transformation block called TU (Transform Unit) Is small with a pixel block size of up to “32 × 32”. This is considered to be one of the reasons why the improvement of the coding efficiency has not been sufficiently achieved particularly for high resolution 8K video and CG (Computer Graphics) video where the signal change is extreme. It is known that coding efficiency is further improved by performing coding with a pixel block size of “128 × 128” exceeding “64 × 64” for such 8K video and CG video. .
しかし、上述したDCTやDSTの従来の技術では、直交変換ブロックのサイズを「32×32」の画素ブロックサイズよりも大きくすることが難しいという課題があった。これは、従来の技術では、より大サイズの直交変換をバタフライ演算に代表される再帰的な処理を有する高速アルゴリズムを使用して行う場合、所要メモリ量が増大するので、CPU(Central Processing Unit)内部のキャッシュメモリではメモリ量が不足し、十分な処理速度が得られなくなる可能性があるからである。 However, in the above-described conventional techniques of DCT and DST, there is a problem that it is difficult to make the size of the orthogonal transformation block larger than the “32 × 32” pixel block size. This is because, in the prior art, when the orthogonal transformation of a larger size is performed using a high-speed algorithm having a recursive process represented by a butterfly operation, a required amount of memory increases, so that CPU (Central Processing Unit) This is because the internal cache memory runs short of memory and there is a possibility that sufficient processing speed can not be obtained.
また、DCTやDSTなどの直交変換は、三角関数であるコサイン関数及びサイン関数を変換核に使用して、時間領域の信号を周波数領域の信号に変換する処理である。この直交変換の処理では、三角関数の周期性を利用したバタフライ演算と呼ばれる高速アルゴリズムが一般に使用される。図9には、バタフライ演算の構成例として、直交変換ブロックサイズが「8×8」である8点DCTの信号線図が示されている。図9の8点DCTの信号線図は、MPEG−H HEVC/H.265の映像符号化方式で採用されている。 Further, orthogonal transformation such as DCT and DST is a process of transforming a time domain signal into a frequency domain signal using a cosine function and a sine function which are trigonometric functions as transformation kernels. In this orthogonal transformation process, a high-speed algorithm called butterfly operation utilizing periodicity of trigonometric functions is generally used. FIG. 9 shows a signal diagram of an 8-point DCT whose orthogonal transformation block size is “8 × 8” as a configuration example of butterfly operation. The signal diagram of the 8-point DCT in FIG. It is adopted by H.265 video coding method.
図9に示されるように、一般的なバタフライ演算では、入力値xn(但し、nは0から「N−1」までの整数)のうち入力値xnと入力値xN−1−nの加算を第1段目の演算として行う。このバタフライ演算により映像信号のN点DCTを行う場合、例えば垂直方向の映像信号の処理において、N点DCTの第1段目の加算処理を開始するためには、映像信号の水平画素数をWとすると、実際の回路構成上の工夫を凝らしても、少なくともW×N/2個の画素の映像信号を入力値として読み込む必要がある。このため、N点DCTの処理時間として、直交変換ブロックサイズのNの値に比例した遅延時間が発生する。例えば、8K映像の映像フォーマット「7680×4320/60P」に対して64点DCTを適用する場合、1ラインの走査時間が約4マイクロ秒であるので、約「4×64/2=128」マイクロ秒の遅延時間が発生することになる。同様の問題は、32点DCTや4点DCTなどの比較的小サイズのDCTでも生ずるが、より大サイズのDCTの方が遅延時間の影響は大きい。特に高解像度映像信号を符号化する際には符号化効率の観点から幅広いサイズの直交変換を適用することが好ましいが、リアルタイム処理において処理すべき単位時間当たりのデータ数がより多いにもかかわらず直交変換のサイズが大きくなると遅延時間が長くなるために、大サイズの直交変換を適用できない可能性があった。 As shown in FIG. 9, a typical butterfly operation, the input value x n (where, n is an integer from 0 to "N-1") input value and the input value x n of x N-1-n Is performed as the operation of the first stage. When N-point DCT of the video signal is performed by this butterfly operation, for example, in order to start addition processing of the first stage of the N-point DCT in the processing of the video signal in the vertical direction, If so, even if the actual circuit configuration is elaborated, it is necessary to read the video signal of at least W × N / 2 pixels as an input value. For this reason, a delay time proportional to the value of N of the orthogonal transformation block size occurs as the processing time of the N-point DCT. For example, when applying 64-point DCT to the video format “7680 × 4320 / 60P” of 8K video, since the scanning time of one line is approximately 4 microseconds, approximately “4 × 64/2 = 128” micro A delay time of seconds will occur. Similar problems occur with relatively small size DCTs such as 32-point DCT and 4-point DCT, but the larger size DCT is more affected by delay time. In particular, when encoding high-resolution video signals, it is preferable to apply orthogonal transform of a wide size from the viewpoint of encoding efficiency, but despite the fact that the number of data per unit time to be processed is larger in real time processing. Since the delay time becomes longer as the size of the orthogonal transform increases, there is a possibility that large size orthogonal transform can not be applied.
本発明は、このような事情を考慮してなされたものであり、映像信号等の信号の変換処理における遅延時間の短縮を図ることができる、変換処理装置、逆変換処理装置、符号化装置、復号装置、及びコンピュータプログラムを提供することを課題とする。 The present invention has been made in consideration of such circumstances, and a conversion processing device, an inverse conversion processing device, and an encoding device capable of shortening the delay time in the conversion processing of a signal such as a video signal. It is an object of the present invention to provide a decoding device and a computer program.
(1)本発明の一態様は、変換ブロックサイズが「N×N、但し、Nは4以上の整数」であるN点の変換を行う変換処理装置において、N個の入力値において並びが連続する入力値のペア毎に、変換ブロックサイズが「2×2」である2点アダマール変換を行うN/2個の2点アダマール変換部と、前記2点アダマール変換の結果のうち2個の入力値の和に対して、直交変換ブロックサイズが「N/2×N/2」である離散コサイン変換の演算を行うN/2点DCT演算部と、前記2点アダマール変換の結果のうち2個の入力値の差に対して、直交変換ブロックサイズが「N/2×N/2」である離散サイン変換の演算を行うN/2点DST演算部と、を備える変換処理装置である。
(2)本発明の一態様は、上記(1)の変換処理装置において、複数の変換ブロックサイズ(N点)の変換を行う前記変換処理装置であり、前記複数の変換ブロックサイズ(N点)に各々対応する前記N/2点DCT演算部及び前記N/2点DST演算部を備え、前記複数の変換ブロックサイズ(N点)に各々対応する前記N/2点DCT演算部及び前記N/2点DST演算部で前記2点アダマール変換部を共用する、変換処理装置である。
(1) One aspect of the present invention is a conversion processing apparatus that performs conversion of N points whose conversion block size is “N × N, where N is an integer of 4 or more”. N / 2 two-point Hadamard transform units performing two-point Hadamard transform with a transform block size of “2 × 2” for each pair of input values, and two inputs among the results of the two-point Hadamard transform N / 2 point DCT operation unit for performing discrete cosine transform operation with orthogonal transform block size “N / 2 × N / 2” for sum of values, and two of the results of the two-point Hadamard transform And an N / 2-point DST operation unit for performing an operation of discrete sine conversion in which an orthogonal conversion block size is “N / 2 × N / 2” with respect to the difference between the input values of
(2) One aspect of the present invention is the conversion processing device which performs conversion of a plurality of conversion block sizes (N points) in the conversion processing device of the above (1), wherein the plurality of conversion block sizes (N points) The N / 2 point DCT operation unit and the N / 2 point DST operation unit respectively corresponding to the plurality of N / 2 point DCT operation units respectively corresponding to the plurality of transform block sizes (N points); A two-point DST operation unit shares the two-point Hadamard transformation unit.
(3)本発明の一態様は、逆変換ブロックサイズが「N×N、但し、Nは4以上の整数」であるN点の逆変換を行う逆変換処理装置において、N個の入力値のうち、直交変換ブロックサイズが「N/2×N/2」である離散コサイン変換の結果であるN/2個の入力値に対して、逆変換ブロックサイズが「N/2×N/2」である逆離散コサイン変換の演算を行うN/2点IDCT演算部と、N個の入力値のうち、直交変換ブロックサイズが「N/2×N/2」である離散サイン変換の結果であるN/2個の入力値に対して、逆直交変換ブロックサイズが「N/2×N/2」である逆離散サイン変換の演算を行うN/2点IDST演算部と、前記N/2点IDCT演算部からの出力値と前記N/2点IDST演算部からの出力値を使用して、逆変換後の信号を生成する逆変換信号生成部と、を備える逆変換処理装置である。 (3) One aspect of the present invention is an inverse transform processing device that performs inverse transform of N points whose inverse transform block size is “N × N, where N is an integer of 4 or more”. Among them, the inverse transform block size is “N / 2 × N / 2” for N / 2 input values that are the result of discrete cosine transform whose orthogonal transform block size is “N / 2 × N / 2”. The N / 2-point IDCT operation unit that performs the inverse discrete cosine transform operation, and the result of the discrete sine transform whose orthogonal transformation block size is “N / 2 × N / 2” among N input values An N / 2 point IDST operation unit for performing an inverse discrete sine conversion operation in which the inverse orthogonal transformation block size is “N / 2 × N / 2” for N / 2 input values, and the N / 2 point Inverse transformation using the output value from the IDCT operation unit and the output value from the N / 2 point IDST operation unit And an inverse transform signal generation unit configured to generate a signal after conversion.
(4)本発明の一態様は、所定の変換方式により変換した信号から符号化信号を生成する符号化装置において、上記(1)又は(2)のいずれかの変換処理装置を備える符号化装置である。
(5)本発明の一態様は、所定の変換方式により変換された信号から生成された符号化信号を復号する復号装置において、上記(3)の逆変換処理装置を備える復号装置である。
(4) One aspect of the present invention is an encoding apparatus that generates an encoded signal from a signal converted by a predetermined conversion method, comprising: the conversion processing apparatus according to any one of the above (1) or (2) It is.
(5) One aspect of the present invention is a decoding device that decodes a coded signal generated from a signal converted by a predetermined conversion method, and is a decoding device including the inverse conversion processing device of (3).
(6)本発明の一態様は、変換ブロックサイズが「N×N、但し、Nは4以上の整数」であるN点の変換を行うためのコンピュータプログラムであって、N個の入力値において並びが連続する入力値のペア毎に、変換ブロックサイズが「2×2」である2点アダマール変換を行うN/2個の2点アダマール変換機能と、前記2点アダマール変換の結果のうち2個の入力値の和に対して、直交変換ブロックサイズが「N/2×N/2」である離散コサイン変換の演算を行うN/2点DCT演算機能と、前記2点アダマール変換の結果のうち2個の入力値の差に対して、直交変換ブロックサイズが「N/2×N/2」である離散サイン変換の演算を行うN/2点DST演算機能と、をコンピュータに実現させるためのコンピュータプログラムである。
(7)本発明の一態様は、逆変換ブロックサイズが「N×N、但し、Nは4以上の整数」であるN点の逆変換を行うためのコンピュータプログラムであって、N個の入力値のうち、直交変換ブロックサイズが「N/2×N/2」である離散コサイン変換の結果であるN/2個の入力値に対して、逆変換ブロックサイズが「N/2×N/2」である逆離散コサイン変換の演算を行うN/2点IDCT演算機能と、N個の入力値のうち、直交変換ブロックサイズが「N/2×N/2」である離散サイン変換の結果であるN/2個の入力値に対して、逆直交変換ブロックサイズが「N/2×N/2」である逆離散サイン変換の演算を行うN/2点IDST演算機能と、前記N/2点IDCT演算機能からの出力値と前記N/2点IDST演算機能からの出力値を使用して、逆変換後の信号を生成する逆変換信号生成機能と、をコンピュータに実現させるためのコンピュータプログラムである。
(6) One embodiment of the present invention is a computer program for performing conversion of N points whose conversion block size is “N × N, where N is an integer of 4 or more”, and in N input values. N / 2 two-point Hadamard transform function for performing two-point Hadamard transform with a transform block size of “2 × 2” for each pair of continuous input values, and two of the results of the two-point Hadamard transform N / 2-point DCT operation function of performing discrete cosine transform operation with orthogonal transform block size “N / 2 × N / 2” for the sum of the input values, and the result of the two-point Hadamard transform In order to make a computer realize an N / 2 point DST operation function that performs an operation of discrete sine conversion whose orthogonal transformation block size is “N / 2 × N / 2” with respect to the difference of two input values among them. Is a computer program of
(7) One embodiment of the present invention is a computer program for performing inverse conversion of N points whose inverse conversion block size is “N × N, where N is an integer of 4 or more”, and includes N inputs Among the values, the inverse transform block size is “N / 2 × N /” for N / 2 input values that are the result of discrete cosine transform whose orthogonal transform block size is “N / 2 × N / 2”. N / 2 point IDCT operation function which performs inverse discrete cosine transform operation which is 2 ", and the result of discrete sine conversion whose orthogonal transformation block size is" N / 2 × N / 2 "among N input values N / 2 point IDST operation function for performing inverse discrete sign conversion operation whose inverse orthogonal transformation block size is “N / 2 × N / 2” with respect to N / 2 input values that are The output value from the 2-point IDCT operation function and the N / 2-point IDST operation function A computer program for causing a computer to realize an inverse conversion signal generation function of generating a signal after inverse conversion using an output value.
本発明によれば、映像信号等の信号の変換処理における遅延時間の短縮を図ることができる。 According to the present invention, it is possible to shorten the delay time in the conversion process of a signal such as a video signal.
以下、図面を参照し、本発明の実施形態について説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[基本原理]
まず、本実施形態に係る基本原理を説明する。本実施形態では、映像信号等の信号の変換処理に、2点ウォルシュ型のアダマール変換を利用する。2点ウォルシュ型のアダマール変換のことを2点アダマール変換と称する。2点アダマール変換は、次の式(1)に示される2行2列の変換行列Hで表される。2点アダマール変換において、変換ブロックのサイズである変換ブロックサイズは「2×2」である。なお、2点アダマール変換は2点ハール変換と一致する。
[Basic principle]
First, the basic principle according to the present embodiment will be described. In the present embodiment, a 2-point Walsh type Hadamard transform is used for conversion processing of a signal such as a video signal. The two-point Walsh type Hadamard transform is called a two-point Hadamard transform. The two-point Hadamard transformation is represented by a 2-row 2-by-two transformation matrix H shown in the following equation (1). In the two-point Hadamard transform, a transform block size which is a size of a transform block is “2 × 2”. Note that the two-point Hadamard transform matches the two-point Haar transform.
上記の式(1)から分かるように、2点アダマール変換は、2個の入力値のペアに対して和の計算と差の計算から成る。この2点アダマール変換を映像信号等の信号の変換処理に利用する場合、入力信号に含まれる並びが連続する入力値のペアである入力値x2nと入力値x2n+1に対し、和の計算と差の計算を行えばよい。但し、nは0から「N−1」までの整数であり、Nは信号の変換処理の変換ブロックサイズであって偶数である。 As can be seen from equation (1) above, the two-point Hadamard transform consists of calculating the sum and the difference for two input value pairs. When this two-point Hadamard transformation is used to convert a signal such as a video signal, the sum calculation is performed for the input value x 2n and the input value x 2n + 1 , which are pairs of input values included in the input signal. It is sufficient to calculate the difference. Here, n is an integer from 0 to “N−1”, and N is a conversion block size of the signal conversion processing and is an even number.
2点アダマール変換を映像信号の変換処理に利用する場合、映像信号の変換処理の変換ブロックサイズに関係なく、変換処理における最小の遅延時間は、映像信号の1ライン分の水平画素数であるW個の画素を読み込む時間で済む。例えば、8K映像の映像フォーマット「7680×4320/60P」の場合、該最小の遅延時間は、変換ブロックサイズに関係なく1ラインの走査時間である約4マイクロ秒となり、従来のバタフライ演算による64点DCTの遅延時間「約128マイクロ秒」に比して短縮される。このように、2点アダマール変換によれば、従来のバタフライ演算による直交変換に比して、映像信号の変換処理における遅延時間の短縮が可能である。 When two-point Hadamard transform is used for video signal conversion processing, the minimum delay time in the conversion processing is W, which is the number of horizontal pixels for one line of the video signal, regardless of the conversion block size of the video signal conversion processing. It takes time to read the number of pixels. For example, in the case of the video format “7680 × 4320 / 60P” of 8K video, the minimum delay time is about 4 microseconds which is the scanning time of one line regardless of the conversion block size, and 64 points by the conventional butterfly computation. The delay time of DCT is shortened as compared with "about 128 microseconds". As described above, according to the two-point Hadamard transform, it is possible to shorten the delay time in the transform processing of the video signal, as compared with the orthogonal transform by the conventional butterfly operation.
2点アダマール変換を映像信号の変換処理に利用する場合、該変換処理は、入力される映像信号の隣接画素を平均化し解像度を半分にした画像である平均画像と、入力される映像信号の隣接画素同士の差分による解像度が半分の画像であるエッジ画像を生成する効果を持つ。つまり、2点アダマール変換を映像信号の水平方向及び垂直方向に適用することは、「N×N」の画素ブロックサイズの映像信号を解像度が各々「N/2×N/2」である平均画像とエッジ画像に分離することを意味する。 When the two-point Hadamard transform is used for the conversion process of the video signal, the conversion process is performed by averaging the adjacent pixels of the input video signal and reducing the resolution to half, and the adjacent image to be input The difference between pixels has an effect of generating an edge image which is an image having a half resolution. That is, to apply the two-point Hadamard transform in the horizontal direction and the vertical direction of the video signal, an average image whose resolution is “N / 2 × N / 2” is obtained for the video signal of the “N × N” pixel block size. And mean to separate into edge images.
このことから、本実施形態では、「N×N」の画素ブロックサイズの映像信号を2点アダマール変換した結果の信号に対する変換処理を、次に示す(1)、(2)により選択する。 From this, in the present embodiment, the conversion processing for the signal resulting from the 2-point Hadamard conversion of the video signal of the “N × N” pixel block size is selected by (1) and (2) shown below.
(1)平均画像に対する変換処理
平均画像は、解像度が半分になった一般的な映像と同等の信号性質を持つ。このため、平均画像に対する変換処理としてN/2点DCTを使用する。これは、一般的な映像信号のように隣接画素間相関の高い映像信号に対してDCTによる符号化効率が高いことによる。具体的には、上記の式(1)の変換行列Hと2個の入力値との行列乗算の結果のうち、2個の入力値の和が平均画像に対応する。したがって、該2個の入力値の和に対して、N/2点DCTを行う。
(1) Conversion to Average Image The average image has the same signal property as a general image with half the resolution. For this reason, N / 2-point DCT is used as transformation processing for the average image. This is because the coding efficiency by DCT is high for a video signal having a high correlation between adjacent pixels like a general video signal. Specifically, of the results of matrix multiplication of the transformation matrix H of the above equation (1) and the two input values, the sum of two input values corresponds to the average image. Therefore, an N / 2 point DCT is performed on the sum of the two input values.
(2)エッジ画像に対する変換処理
エッジ画像は、高周波成分を多く含む画像である。このため、エッジ画像に対する変換処理としてN/2点DSTを使用する。これは、隣接画素間相関の低い映像信号に対してDSTによる符号化効率が高いことによる。具体的には、上記の式(1)の変換行列Hと2個の入力値との行列乗算の結果のうち、2個の入力値の差がエッジ画像に対応する。したがって、該2個の入力値の差に対して、N/2点DSTを行う。
(2) Conversion Process to Edge Image The edge image is an image containing a large amount of high frequency components. For this reason, N / 2 points DST are used as conversion processing for edge images. This is because the coding efficiency by DST is high for a video signal with low correlation between adjacent pixels. Specifically, among the results of matrix multiplication of the transformation matrix H of the equation (1) and the two input values, the difference between the two input values corresponds to the edge image. Therefore, N / 2 points DST are performed on the difference between the two input values.
[変換処理装置の実施例]
次に、本実施形態に係る変換処理装置、及び逆変換処理装置の実施例について説明する。
[Example of Conversion Processing Device]
Next, examples of the conversion processing apparatus and the inverse conversion processing apparatus according to the present embodiment will be described.
図1は、本実施形態に係る変換処理装置1の実施例を示す構成図である。変換処理装置1には、N個の入力値x0〜xN−1が入力される。但し、Nは4以上の整数である。図1に示す変換処理装置1は、N/2個の加算部11−0〜N/2−1と、N/2個の減算部12−0〜N/2−1と、N/2点DCT演算部13と、N/2点DST演算部14を備える。
FIG. 1 is a block diagram showing an example of the
加算部11−0〜N/2−1は、入力値x0〜xN−1において並びが連続する入力値のペアである入力値x2nと入力値x2n+1の和を各々算出する。但し、nは0から「(N/2)−1」までの整数である。加算部11−nは、入力値x2nと入力値x2n+1を加算する。例えば、加算部11−0は入力値x0と入力値x1を加算する。加算部11−1は入力値x2と入力値x3を加算する。加算部11−N/2−1は入力値xN−2と入力値xN−1を加算する。各加算部11−0〜N/2−1の加算結果である和はN/2点DCT演算部13へ出力される。
The addition units 11-0 to N / 2-1 respectively calculate the sum of the input value x 2 n and the input value x 2 n + 1 , which are a pair of input values in which the arrangement is continuous in the input values x 0 to x N−1 . However, n is an integer from 0 to "(N / 2) -1". The adder 11-n adds the input value x 2 n and the input value x 2 n + 1 . For example, the addition unit 11-0 adds an input value x 1 and the input value x 0. Addition unit 11-1 adds an input value x 2 and the input value x 3. The addition unit 11 -N / 2-1 adds the input value x N-2 to the input value x N -1 . The sum, which is the addition result of each addition unit 11-0 to N / 2-1, is output to the N / 2-point
減算部12−0〜N/2−1は、入力値x0〜xN−1におい並びが連続する入力値のペアである入力値x2nと入力値x2n+1の差を各々算出する。但し、nは0から「(N/2)−1」までの整数である。減算部12−nは、入力値x2nから入力値x2n+1を減算する。例えば、減算部12−0は入力値x0から入力値x1を減算する。減算部12−1は入力値x2から入力値x3を減算する。減算部12−N/2−1は入力値xN−2から入力値xN−1を減算する。各減算部12−0〜N/2−1の減算結果である差はN/2点DST演算部14へ出力される。
Subtraction unit 12-0~N / 2-1 are respectively calculates the difference between the
図1に示す加算部11−0〜N/2−1及び減算部12−0〜N/2−1は、N/2個の2点アダマール変換部に対応する。加算部11−nと減算部12−nのペアが1個の2点アダマール変換部に対応する。 The adders 11-0 to N / 2-1 and the subtractors 12-0 to N / 2-1 shown in FIG. 1 correspond to N / 2 two-point Hadamard transform units. A pair of the adding unit 11-n and the subtracting unit 12-n corresponds to one two-point Hadamard transform unit.
N/2点DCT演算部13は、加算部11−0〜N/2−1から出力された加算結果を入力値に使用して、N/2点DCTの演算を行う。N/2点DCT演算部13は、公知のバタフライ演算などの高速アルゴリズムを利用して構成される。N/2点DCT演算部13は、N/2点DCTの演算結果である値X0〜XN/2−1を出力する。
The N / 2-point
N/2点DST演算部14は、減算部12−0〜N/2−1から出力された減算結果を入力値に使用して、N/2点DSTの演算を行う。N/2点DST演算部14は、公知のバタフライ演算などの高速アルゴリズムを利用して構成される。N/2点DST演算部14は、N/2点DSTの演算結果である値XN/2〜XN−1を出力する。
The N / 2-point
図2は、本実施形態に係る逆変換処理装置2の実施例を示す構成図である。逆変換処理装置2には、N個の入力値X0〜XN−1が入力される。但し、Nは4以上の整数である。N個の入力値X0〜XN−1のうちN/2個の入力値X0〜XN/2−1は、上記の図1に示す変換処理装置1のN/2点DCT演算部13の出力値に対応する。N個の入力値X0〜XN−1のうちN/2個の入力値XN/2〜XN−1は、上記の図1に示す変換処理装置1のN/2点DST演算部14の出力値に対応する。
FIG. 2 is a block diagram showing an example of the inverse
図2に示す逆変換処理装置2は、上記の図1に示す変換処理装置1の逆変換を行う。図2に示す逆変換処理装置2は、N/2点逆離散コサイン変換(Inverse Discrete Cosine Transform:IDCT)演算部21と、N/2点逆離散サイン変換(Inverse Discrete Sine Transform:IDST)演算部22と、N/2個の加算部23−0〜N/2−1と、N/2個の減算部24−0〜N/2−1と、N個の1/2倍部27−0〜N/2−a,27−0〜N/2−bを備える。
The inverse
N/2点IDCT演算部21は、N/2個の入力値X0〜XN/2−1を使用して、N/2点IDCTの演算を行う。N/2点IDCT演算部21は、公知のバタフライ演算などの高速アルゴリズムを利用して構成される。N/2点IDCT演算部21は、N/2点IDCTの演算結果である値y(n)を出力する。但し、nは0から「(N/2)−1」までの整数である。
The N / 2-point
N/2点IDST演算部22は、N/2個の入力値XN/2〜XN−1を使用して、N/2点IDSTの演算を行う。N/2点IDST演算部22は、公知のバタフライ演算などの高速アルゴリズムを利用して構成される。N/2点IDST演算部22は、N/2点IDSTの演算結果である値z(n)を出力する。但し、nは0から「(N/2)−1」までの整数である。各nの値y(n)と値z(n)は、各nに対応する加算部23−nと減算部24−nに入力される。
The N / 2-point
加算部23−nは値y(n)と値z(n)を加算する。1/2倍部27−n−aは、加算部23−nの加算結果である和を1/2倍する。1/2倍部27−n−aにより1/2倍された結果の値は出力値x’(2n)として逆変換処理装置2から出力される。但し、nは0から「(N/2)−1」までの整数である。これにより、出力値x’0,x’2,x’4,・・・,x’N−2が逆変換処理装置2から出力される。
The adder 23-n adds the value y (n) and the value z (n). The half multiplication unit 27-n-a halves the sum which is the addition result of the addition unit 23-n. A value obtained as a result of being halved by the halving unit 27-n-a is output from the inverse
減算部24−nは値y(n)から値z(n)を減算する。1/2倍部27−n−bは、減算部24−nの減算結果である差を1/2倍する。1/2倍部27−n−bにより1/2倍された結果の値は出力値x’(2n+1)として逆変換処理装置2から出力される。但し、nは0から「(N/2)−1」までの整数である。これにより、出力値x’1,x’3,x’5,・・・,x’N−1が逆変換処理装置2から出力される。
The subtraction unit 24-n subtracts the value z (n) from the value y (n). The half multiplication unit 27-n-b halves the difference which is the subtraction result of the subtraction unit 24-n. The value obtained as a result of being halved by the halving unit 27-n-b is output from the inverse
なお、加算部23−0〜N/2−1と減算部24−0〜N/2−1と1/2倍部27−0〜N/2−a,27−0〜N/2−bは、逆変換信号生成部に対応する。 The adders 23-0 to N / 2-1, the subtractors 24-0 to N / 2-1, and the half parts 27-0 to N / 2-a, 27-0 to N / 2-b. Corresponds to the inverse conversion signal generation unit.
なお、CPUを使用して変換処理装置1を構成する場合、N/2点DCT演算部13及びN/2点DST演算部14の所要メモリ量に足りるメモリ量のキャッシュメモリを有するCPUを使用することが好ましい。これにより、N/2点DCT演算部13及びN/2点DST演算部14の演算処理を並列で高速に実行することができる。逆変換処理装置2についても同様である。
When the
上述の図1に示す変換処理装置1によれば、第1段目の演算は、2点アダマール変換の演算である入力値x2nと入力値x2n+1の加算及び減算である。したがって、第1段目の演算は、入力信号に含まれる並びが連続する入力値のペアである入力値x2nと入力値x2n+1に対し、和の計算と差の計算を行えばよい。これにより、従来のバタフライ演算による直交変換に比して、変換処理を開始するまでの遅延時間を短縮できる。また、2点アダマール変換は加算及び減算により構成されるので、その演算を非常に軽量に行うことができる。
According to the
また、上述の図1に示す変換処理装置1によれば、2点アダマール変換の結果の信号の特性に応じた変換処理を選択して行うことができる。具体的には、2点アダマール変換の結果のうち、2個の入力値の和に対してN/2点DCTを行い、2個の入力値の差に対してN/2点DSTを行う。これにより、「N×N」の画素ブロックサイズの映像信号を、効率よく符号化することができる。また、N/2点DCTとN/2点DSTとを並列処理することができる。これにより、N点DCT又はN点DSTによる変換処理に比して、処理の軽量化が可能となる。
Further, according to the
[変換処理装置の変形例]
次に、上述した本実施形態に係る変換処理装置、及び逆変換処理装置の変形例を説明する。
[Modification of Conversion Processing Device]
Next, modified examples of the conversion processing apparatus and the inverse conversion processing apparatus according to the above-described embodiment will be described.
図3は、本発明の一実施形態に係る変換処理装置3の構成例を示す図である。この図3において、上記の図1の各部に対応する部分には同一の符号を付け、その説明を省略する。図3に示す変換処理装置3では、上記の図1に示す変換処理装置1におけるN/2点DST演算部14を、N/2点DCT演算部32により構成している。図3に示すN/2点DCT演算部13は、図1に示す変換処理装置1と同じである。同様に、図3に示す加算部11−0〜N/2−1は、上記の図1に示す変換処理装置1と同じである。以下、図3において、図1の構成と異なる点を主に説明する。
FIG. 3 is a diagram showing a configuration example of the
DST演算部をDCT演算部により構成する技術は、例えば特許文献1に記載されている。特許文献1に記載される技術を例えば上記の図1に示す変換処理装置1に適用することにより、変換処理装置1におけるN/2点DST演算部14をN/2点DCT演算部32により構成することができる。
For example,
図3に示すN/2点DCT演算部32は、上記の図1に示す変換処理装置1におけるN/2点DST演算部14を実現するために設けられる。図3に示す減算部12−0〜N/2−1は、上記の図1に示す変換処理装置1と同じである。減算部12−0〜N/2−1の減算結果のうち、減算部12−2m(mは0から「(N/4)−1」までの整数)の減算結果は、そのままN/2点DCT演算部32に入力される。減算部12−0〜N/2−1の減算結果のうち、減算部12−2m+1(mは0から「(N/4)−1」までの整数)の減算結果は、符号反転部31−2m+1により符号が反転されてからN/2点DCT演算部32に入力される。符号反転部31−2m+1は入力された値の符号を反転させる。但し、mは0から「(N/4)−1」までの整数である。
The N / 2 point
本変形例によれば、本実施形態に係る変換処理装置において、N/2点DST演算部をN/2点DCT演算部により構成することができる。これにより、変換処理装置における構成の簡略化ができ、また、演算部の利用効率を向上させることができる。 According to this modification, in the conversion processing apparatus according to the present embodiment, the N / 2-point DST operation unit can be configured by an N / 2-point DCT operation unit. Thus, the configuration of the conversion processing apparatus can be simplified, and the utilization efficiency of the operation unit can be improved.
図4は、本発明の一実施形態に係る逆変換処理装置4の構成例を示す図である。この図4において、上記の図2の各部に対応する部分には同一の符号を付け、その説明を省略する。図4に示す逆変換処理装置4では、上記の図2に示す逆変換処理装置2におけるN/2点IDST演算部22を、N/2点IDCT演算部41により構成している。図4に示すN/2点IDCT演算部21は、図2に示す逆変換処理装置2と同じである。以下、図4において、図2の構成と異なる点を主に説明する。
FIG. 4 is a diagram showing an example of the configuration of the inverse
IDST演算部をIDCT演算部により構成する技術は、例えば特許文献1に記載されている。特許文献1に記載される技術を例えば上記の図2に示す逆変換処理装置2に適用することにより、逆変換処理装置2におけるN/2点IDST演算部22をN/2点IDCT演算部41により構成することができる。
For example,
図4に示すN/2点IDCT演算部41は、上記の図2に示す逆変換処理装置2におけるN/2点IDST演算部22を実現するために設けられる。図4に示すN/2個の加算部23−0〜N/2−1と、N/2個の減算部24−0〜N/2−1は、上記の図2に示す逆変換処理装置2と同じである。
The N / 2 point
加算部23−0〜N/2−1のうち加算部23−2mは、値y(2m)と値z(2m)をそのまま加算する。一方、加算部23−0〜N/2−1のうち加算部23−2m+1は、値y(2m+1)と、値z(2m+1)が符号反転部42−2m+1により符号反転された値とを加算する。但し、mは0から「(N/4)−1」までの整数である。1/2倍部27−n−aは、加算部23−nの加算結果である和を1/2倍する。ただし、nは0から「(N/2)−1」までの整数である。これにより、出力値x’0,x’2,x’4,・・・,x’N−2が逆変換処理装置4から出力される。
Among the addition units 23-0 to N / 2-1, the addition unit 23-2m adds the value y (2m) and the value z (2m) as it is. On the other hand, of the adders 23-0 to N / 2-1, the adder 23-
減算部24−0〜N/2−1のうち減算部24−0〜2mは、値y(2m)から値z(2m)をそのまま減算する。一方、減算部24−0〜N/2−1のうち減算部24−2m+1は、値y(2m+1)から、値z(2m+1)が符号反転部42−2m+1により符号反転された値を減算する。但し、mは0から「(N/4)−1」までの整数である。1/2倍部27−n−bは、減算部24−nの減算結果である差を1/2倍する。ただし、nは0から「(N/2)−1」までの整数である。これにより、出力値x’1,x’3,x’5,・・・,x’N−1が逆変換処理装置4から出力される。
Among the subtracting units 24-0 to N / 2-1, the subtracting units 24-0 to 2m subtracts the value z (2m) from the value y (2m) as it is. On the other hand, among the subtracting units 24-0 to N / 2-1, the subtracting unit 24-
本変形例によれば、本実施形態に係る逆変換処理装置において、N/2点IDST演算部をN/2点IDCT演算部により構成することができる。これにより、逆変換処理装置における構成の簡略化ができ、また、演算部の利用効率を向上させることができる。 According to this modification, in the inverse conversion processing device according to the present embodiment, the N / 2 point IDST calculation unit can be configured by the N / 2 point IDCT calculation unit. Thus, the configuration of the inverse transform processing device can be simplified, and the utilization efficiency of the operation unit can be improved.
[符号化装置、及び復号装置の実施例]
次に、本実施形態に係る符号化装置、及び復号装置の実施例について説明する。符号化装置、及び復号装置の例として、映像信号の符号化装置、及び復号装置を挙げて説明する。
[Embodiments of Encoding Device and Decoding Device]
Next, examples of the encoding device and the decoding device according to the present embodiment will be described. As an example of the encoding device and the decoding device, a video signal encoding device and a decoding device will be described as an example.
図5は、本実施形態に係る符号化装置100の実施例を示す構成図である。図5に示す符号化装置100は、画面分割部101と、減算部102と、変換部103と、量子化部104と、エントロピー符号化部105と、逆量子化部106と、逆変換部107と、加算部108と、ループフィルタ109と、イントラ予測部110と、動き補償予測部111と、切り替え部112を備える。
FIG. 5 is a block diagram showing an example of the coding apparatus 100 according to the present embodiment. Encoding apparatus 100 shown in FIG. 5 includes a
画面分割部101は、符号化対象となる映像信号を入力し、この入力信号を符号化処理の処理単位のブロックに分割する。画面分割部101は分割したブロックの信号を減算部102へ出力する。減算部102は、画面分割部101から入力された信号から、切り替え部112から入力された信号を減算する。減算部102は、減算結果の信号を変換部103へ出力する。
The
変換部103は、減算部102から入力された信号に対して変換を行い、変換の結果の信号を量子化部104へ出力する。本実施形態では、変換部103を、上記の図1に示す変換処理装置1又は図3に示す変換処理装置3により構成する。
The
量子化部104は、変換部103から入力された信号に対して量子化を行い、量子化した信号をエントロピー符号化部105及び逆量子化部106へ出力する。エントロピー符号化部105は、量子化部104から入力された信号に対してエントロピー符号化を行い、符号化信号を出力する。エントロピー符号化として、例えば、CABAC(Context-based adaptive binary arithmetic coding)、CAVLC(Context-adaptive variable-length coding)又はPIPE(Probability interval partitioning entropy)などが利用可能である。
The
逆量子化部106は、量子化部104から入力された信号に対して逆量子化を行い、逆量子化した信号を逆変換部107へ出力する。逆変換部107は、逆量子化部106から入力された信号に対して逆変換を行い、逆変換の結果の信号を加算部108へ出力する。逆変換部107が行う逆変換は、変換部103が行った変換の逆変換である。本実施形態では、逆変換部107を、上記の図2に示す逆変換処理装置2又は図4に示す逆変換処理装置4により構成する。加算部108は、逆変換部107から入力された信号と切り替え部112から入力された信号を加算し、加算結果の信号をループフィルタ109へ出力する。
The inverse quantization unit 106 inversely quantizes the signal input from the
ループフィルタ109は、加算部108から入力された信号に対して平滑化等のフィルタリングを行い、フィルタリング結果の信号をイントラ予測部110及び動き補償予測部111へ出力する。イントラ予測部110は、ループフィルタ109から入力された信号に対してイントラ予測を行い、イントラ予測結果の信号を切り替え部112へ出力する。動き補償予測部111は、ループフィルタ109から入力された信号に対して動き補償予測を行い、動き補償予測結果の信号を切り替え部112へ出力する。切り替え部112は、イントラ予測部110から入力された信号又は動き補償予測部111から入力された信号のいずれを出力するかを切り替える。切り替え部112から出力された信号は、減算部102及び加算部108へ入力される。
The
図5に示す符号化装置100において、変換部103は、本実施形態の変換処理装置を備える。これにより、変換部103における遅延時間が短縮されるので、符号化処理における遅延時間も短縮することができる。このことから、映像信号に対する大サイズでの変換が適用しやすくなるという効果が得られる。これは、特に高解像度映像信号の符号化において符号化効率の観点から好ましい。
In the encoding device 100 shown in FIG. 5, the
図6は、本実施形態に係る復号装置200の実施例を示す構成図である。図6に示す復号装置200は、上記の図5の符号化装置100の符号化に対応する復号を行う。図6に示す復号装置200は、エントロピー復号部201と、逆量子化部202と、逆変換部203と、加算部204と、画面結合部205と、ループフィルタ206と、イントラ予測部207と、動き予測部208と、切り替え部209を備える。
FIG. 6 is a block diagram showing an example of the decoding apparatus 200 according to the present embodiment. The decoding device 200 shown in FIG. 6 performs decoding corresponding to the coding of the coding device 100 of FIG. 5 described above. The decoding apparatus 200 illustrated in FIG. 6 includes an
エントロピー復号部201は、復号対象となる符号化信号を入力し、この入力した符号化信号に対してエントロピー復号を行う。エントロピー復号部201は、エントロピー復号結果の信号を逆量子化部202へ出力する。逆量子化部202は、エントロピー復号部201から入力された信号に対して逆量子化を行い、逆量子化した信号を逆変換部203へ出力する。
The
逆変換部203は、逆量子化部202から入力された信号に対して逆変換を行い、逆変換の結果の信号を加算部204へ出力する。逆変換部107が行う逆変換は、上記の図5に示す変換部103が行った変換の逆変換である。本実施形態では、逆変換部203を、上記の図2に示す逆変換処理装置2又は図4に示す逆変換処理装置4により構成する。
The
加算部204は、逆変換部203から入力された信号と切り替え部209から入力された信号を加算し、加算結果の信号を画面結合部205及びループフィルタ206へ出力する。画面結合部205は、加算部204から入力された信号から構成される復号処理の処理単位のブロックを結合して映像信号を生成する。画面結合部205は、生成した映像信号を復号信号として出力する。
The
ループフィルタ206は、加算部204から入力された信号に対して超解像処理を行い、超解像処理結果の信号をイントラ予測部207及び動き予測部208へ出力する。イントラ予測部207は、ループフィルタ206から入力された信号に対してイントラ予測を行い、イントラ予測結果の信号を切り替え部209へ出力する。動き予測部208は、ループフィルタ206から入力された信号に対して動き予測を行い、動き予測結果の信号を切り替え部209へ出力する。切り替え部209は、イントラ予測部207から入力された信号又は動き予測部208から入力された信号のいずれを出力するかを切り替える。切り替え部209の切り替え制御は、加算部204の加算結果に基づいて行われる。切り替え部209から出力された信号は、加算部204へ入力される。
The
次に、本実施形態に係る符号化装置100における効果の一つを説明する。映像信号の符号化では、映像信号に適した画素ブロックサイズで変換を適用することが、よりきめ細かい符号化制御を行うことができることから好ましい。例えば、MPEG−H HEVC/H.265の映像符号化方式では、2次元の直交変換を「4×4」から「32×32」までの画素ブロックサイズで行うことができる。このことから、符号化装置100において、複数の画素ブロックサイズの変換を行うようにしてもよい。例えば、上記の図5に示す変換部103を、複数の画素ブロックサイズの変換を行う構成にする。また、上記の図5に示す逆変換部107及び図6に示す逆変換部203を、複数の画素ブロックサイズの逆変換を行う構成にする。このとき、本実施形態の変換処理装置によれば、以下に示す効果が得られる。
Next, one of the effects of the encoding device 100 according to the present embodiment will be described. In the coding of the video signal, it is preferable to apply the conversion with a pixel block size suitable for the video signal, since finer coding control can be performed. For example, MPEG-H HEVC / H. In the video coding method of H.265, two-dimensional orthogonal transform can be performed with a pixel block size of "4 × 4" to "32 × 32". From this, in the encoding device 100, conversion of a plurality of pixel block sizes may be performed. For example, the
図7は従来の映像符号化方式における直交変換について説明するための構成図である。従来の映像符号化方式としては、例えばMPEG−H HEVC/H.265の映像符号化方式である。図7(a)には直交変換ブロックサイズが「8×8」である8点DCTにおけるバタフライ演算の第一段目の構成が示され、図7(b)には直交変換ブロックサイズが「4×4」である4点DCTにおけるバタフライ演算の第一段目の構成が示される。図7(a)と図7(b)を比較すれば明らかなように、図7(a)に示す8点DCTにおけるバタフライ演算の第一段目の出力値と、図7(b)に示す4点DCTの二つ分におけるバタフライ演算の第一段目の出力値とは異なる。このため、図7(a)に示す8点DCTにおけるバタフライ演算の構成と、図7(b)に示す4点DCTにおけるバタフライ演算の構成では、共通化できる部分がない。したがって、従来の技術では、複数の画素ブロックサイズの直交変換を行う場合に、全ての画素ブロックサイズのバタフライ演算を行う必要があった。 FIG. 7 is a configuration diagram for explaining orthogonal transform in the conventional video coding system. As a conventional video coding method, for example, MPEG-H HEVC / H. No. 265 is a video encoding method. FIG. 7 (a) shows the configuration of the first stage of the butterfly operation in 8-point DCT in which the orthogonal transformation block size is “8 × 8”, and FIG. 7 (b) shows the orthogonal transformation block size “4”. The configuration of the first stage of the butterfly operation in the four-point DCT which is × 4 ”is shown. As apparent from comparison between FIG. 7A and FIG. 7B, the output value of the first stage of the butterfly operation in the 8-point DCT shown in FIG. This is different from the output value of the first stage of the butterfly operation in two minutes of the 4-point DCT. For this reason, there is no part that can be made common in the configuration of the butterfly operation in the 8-point DCT shown in FIG. 7A and the configuration of the butterfly operation in the 4-point DCT shown in FIG. 7B. Therefore, in the prior art, when performing orthogonal transformation of a plurality of pixel block sizes, it is necessary to perform butterfly computation of all pixel block sizes.
図8は、本実施形態における変換について説明するための構成図である。図8(a)には、変換ブロックサイズが「8×8」である8点変換における4個の2点アダマール変換の構成が示される。図8(b)には、変換ブロックサイズが「4×4」である2点変換の二つ分に対して、2個の2点アダマール変換の二組の構成が示される。図8(a)と図8(b)を比較すれば明らかなように、図8(a)に示す4個の2点アダマール変換の構成の出力値と、図8(b)に示す2個の2点アダマール変換の二組の構成の出力値とは同じである。このため、図8(a)に示す8点変換における2点アダマール変換の構成と、図8(b)に示す4点変換における2点アダマール変換の構成を共通化することができる。 FIG. 8 is a configuration diagram for explaining conversion in the present embodiment. FIG. 8A shows the configuration of four two-point Hadamard transformations in 8-point transformation in which the transformation block size is “8 × 8”. FIG. 8B shows two configurations of two two-point Hadamard transformations for two of the two-point transformation whose transformation block size is “4 × 4”. As apparent from comparison between FIG. 8 (a) and FIG. 8 (b), output values of the configuration of four two-point Hadamard transformations shown in FIG. 8 (a) and two shown in FIG. 8 (b) The output values of the two sets of two-point Hadamard transform of are the same. Therefore, the configuration of the two-point Hadamard transformation in the eight-point conversion shown in FIG. 8A and the configuration of the two-point Hadamard transformation in the four-point conversion shown in FIG. 8B can be made common.
したがって、本実施形態によれば、複数の画素ブロックサイズの変換を行う場合に、少なくとも、最大の画素ブロックサイズのN点変換におけるN/2個の2点アダマール変換の構成を備えればよい。例えば、本実施形態において、図8に示すように「8×8」の画素ブロックサイズの8点変換と「4×4」の画素ブロックサイズの4点変換の両方を行う場合に、8点変換における4個の2点アダマール変換の構成を、4点変換における2個の2点アダマール変換と共用する。これにより、本実施形態によれば、複数の画素ブロックサイズの変換を行う場合に、全ての画素ブロックサイズについての2点アダマール変換の構成を別個に演算する必要がない。 Therefore, according to the present embodiment, in the case of performing conversion of a plurality of pixel block sizes, at least a configuration of N / 2 two-point Hadamard conversion in N-point conversion of the maximum pixel block size may be provided. For example, in the present embodiment, as shown in FIG. 8, when performing 8-point conversion of pixel block size of “8 × 8” and 4-point conversion of pixel block size of “4 × 4”, 8-point conversion The configuration of the four two-point Hadamard transforms in is shared with the two two-point Hadamard transforms in the four-point transform. Thus, according to the present embodiment, when performing conversion of a plurality of pixel block sizes, it is not necessary to separately calculate the configuration of two-point Hadamard transformation for all pixel block sizes.
上記の図7及び図8を参照して説明したように、本実施形態によれば、符号化装置100において複数の画素ブロックサイズの変換を行う場合に、装置構成を簡略化することができるという効果が得られる。 As described above with reference to FIGS. 7 and 8, according to the present embodiment, the apparatus configuration can be simplified when the encoding apparatus 100 performs conversion of a plurality of pixel block sizes. An effect is obtained.
なお、本実施形態に係る変換処理装置は、専用のハードウェアにより実現されるものであってもよく、又は、メモリ及びCPUにより構成され、変換処理装置の機能を実現するためのコンピュータプログラムをCPUが実行することによりその機能を実現させるものであってもよい。本実施形態に係る逆変換処理装置についても同様である。 Note that the conversion processing device according to the present embodiment may be realized by dedicated hardware, or may be configured by a memory and a CPU, and a computer program for realizing the function of the conversion processing device is a CPU The function may be realized by executing the. The same applies to the inverse conversion processing device according to the present embodiment.
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。 Although the embodiments of the present invention have been described in detail with reference to the drawings, the specific configuration is not limited to this embodiment, and design changes and the like within the scope of the present invention are also included.
上述した実施形態は、画素ブロックベースの各種の映像符号化方式に適用することができる。例えば、MPEG−2、MPEG−4 AVC/H.264、MPEG−H HEVC/H.265などの映像符号化方式に適用することができる。また、予測符号化を行わない映像符号化方式にも適用可能である。 The embodiments described above can be applied to various video block coding schemes based on pixel blocks. For example, MPEG-2, MPEG-4 AVC / H. H.264, MPEG-H HEVC / H. The present invention can be applied to a video coding method such as H.265. In addition, the present invention is also applicable to a video coding method in which predictive coding is not performed.
また、上述した実施形態では、映像信号を符号化する符号化装置及び該符号化装置に対応する復号装置に適用したが、これに限定されない。上述した実施形態は、所定の変換方式により変換した信号から符号化信号を生成する符号化装置、及び、所定の変換方式により変換された信号から生成された符号化信号を復号する復号装置に適用可能である。 Further, in the above-described embodiment, the present invention is applied to the coding device for coding the video signal and the decoding device corresponding to the coding device, but the present invention is not limited to this. The above-described embodiment is applied to a coding device that generates a coded signal from a signal converted by a predetermined conversion method, and a decoding device that decodes a coded signal generated from a signal converted by a predetermined conversion method. It is possible.
また、上述した変換処理装置又は逆変換処理装置の機能を実現するためのコンピュータプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するようにしてもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disk)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
Further, a computer program for realizing the functions of the conversion processing apparatus or the inverse conversion processing apparatus described above is recorded in a computer readable recording medium, and the program recorded in the recording medium is read into a computer system and executed. You may do so. Note that the “computer system” referred to here may include an OS and hardware such as peripheral devices.
The “computer readable recording medium” is a writable non-volatile memory such as a flexible disk, a magneto-optical disk, a ROM, a flash memory, etc., a portable medium such as a DVD (Digital Versatile Disk), and a computer system. Storage devices such as hard disks.
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
Furthermore, the “computer-readable recording medium” is a volatile memory (for example, DRAM (Dynamic Memory) inside a computer system that becomes a server or a client when a program is transmitted via a network such as the Internet or a communication line such as a telephone line). As Random Access Memory), it is assumed that the program which holds the program for a fixed time is included.
The program may be transmitted from a computer system in which the program is stored in a storage device or the like to another computer system via a transmission medium or by transmission waves in the transmission medium. Here, the “transmission medium” for transmitting the program is a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line.
Further, the program may be for realizing a part of the functions described above. Furthermore, it may be a so-called difference file (difference program) that can realize the above-described functions in combination with a program already recorded in the computer system.
1,3…変換処理装置、2,4…逆変換処理装置、11−0〜N/2−1,23−0〜N/2−1,108,204…加算部、12−0〜N/2−1,24−0〜N/2−1,102…減算部、13,32…N/2点DCT演算部、14…N/2点DST演算部、21,41…N/2点IDCT演算部、22…N/2点IDST演算部、27−0〜N/2−a,27−0〜N/2−b…1/2倍部、31−1〜N/2−1,42−1〜N/2−1…符号反転部、100…符号化装置、101…画面分割部、103…変換部、104…量子化部、105…エントロピー符号化部、106,202…逆量子化部、107,203…逆変換部、109,206…ループフィルタ、110,207…イントラ予測部、111…動き補償予測部、112,209…切り替え部、200…復号装置、201…エントロピー復号部、205…画面結合部、208…動き予測部 1, 3 ... conversion processing device, 2, 4 ... reverse conversion processing device, 11-0 to N / 2 -1, 2 3 0 to N / 2 1, 108, 204 ... addition unit, 12-0 to N / 2-1, 24-0 to N / 2-1, 102 ... subtraction unit, 13, 32 ... N / 2 point DCT operation unit, 14 ... N / 2 point DST operation unit, 21, 41 ... N / 2 point IDCT Arithmetic unit, 22... N / 2-point IDST arithmetic unit, 27-0 to N / 2-a, 27-0 to N / 2-b... 1/2 times portion, 31-1 to N / 2-1, 42 -1 to N / 2-1: sign inversion unit, 100: encoding device, 101: screen division unit, 103: transformation unit, 104: quantization unit, 105: entropy encoding unit, 106, 202: inverse quantization , 107, 203 ... inverse transform unit, 109, 206 ... loop filter, 110, 207 ... intra prediction unit, 111 ... motion compensation prediction unit, 112 209 ... switching unit, 200 ... decoding unit, 201 ... entropy decoding unit, 205 ... screen combining unit, 208 ... motion prediction unit
Claims (7)
N個の入力値において並びが連続する入力値のペア毎に、変換ブロックサイズが「2×2」である2点アダマール変換を行うN/2個の2点アダマール変換部と、
前記2点アダマール変換の結果のうち2個の入力値の和に対して、直交変換ブロックサイズが「N/2×N/2」である離散コサイン変換の演算を行うN/2点DCT演算部と、
前記2点アダマール変換の結果のうち2個の入力値の差に対して、直交変換ブロックサイズが「N/2×N/2」である離散サイン変換の演算を行うN/2点DST演算部と、
を備える変換処理装置。 In a conversion processing apparatus that performs conversion of N points whose conversion block size is “N × N, where N is an integer of 4 or more”,
N / 2 two-point Hadamard transformation units that perform two-point Hadamard transformation with a transformation block size of “2 × 2” for each pair of input values whose arrangement is continuous in N input values;
N / 2-point DCT operation unit that performs discrete cosine transform operation with orthogonal transform block size “N / 2 × N / 2” on the sum of two input values among the results of the two-point Hadamard transform When,
N / 2-point DST operation unit that performs discrete sine transform operation with orthogonal transform block size “N / 2 × N / 2” on the difference between two input values among the results of the two-point Hadamard transform When,
Conversion processing device comprising:
前記複数の変換ブロックサイズ(N点)に各々対応する前記N/2点DCT演算部及び前記N/2点DST演算部を備え、
前記複数の変換ブロックサイズ(N点)に各々対応する前記N/2点DCT演算部及び前記N/2点DST演算部で前記2点アダマール変換部を共用する、
請求項1に記載の変換処理装置。 The conversion processing apparatus that converts a plurality of conversion block sizes (N points),
The N / 2-point DCT operation unit and the N / 2-point DST operation unit respectively corresponding to the plurality of transform block sizes (N points);
The two-point Hadamard transform unit is shared by the N / 2-point DCT operation unit and the N / 2-point DST operation unit respectively corresponding to the plurality of transform block sizes (N points).
The conversion processing device according to claim 1.
N個の入力値のうち、直交変換ブロックサイズが「N/2×N/2」である離散コサイン変換の結果であるN/2個の入力値に対して、逆変換ブロックサイズが「N/2×N/2」である逆離散コサイン変換の演算を行うN/2点IDCT演算部と、
N個の入力値のうち、直交変換ブロックサイズが「N/2×N/2」である離散サイン変換の結果であるN/2個の入力値に対して、逆直交変換ブロックサイズが「N/2×N/2」である逆離散サイン変換の演算を行うN/2点IDST演算部と、
前記N/2点IDCT演算部からの出力値と前記N/2点IDST演算部からの出力値を使用して、逆変換後の信号を生成する逆変換信号生成部と、
を備える逆変換処理装置。 In an inverse transform processing apparatus that performs inverse transform of N points whose inverse transform block size is “N × N, where N is an integer of 4 or more”,
The inverse transform block size is N / N for N / 2 input values that are the result of discrete cosine transform whose orthogonal transform block size is “N / 2 × N / 2” among N input values. An N / 2-point IDCT operation unit that performs an inverse discrete cosine transform operation that is 2 × N / 2 ′ ′;
Of the N input values, the inverse orthogonal transform block size is “N” for N / 2 input values that are the result of discrete sine transform whose orthogonal transform block size is “N / 2 × N / 2”. An N / 2 point IDST operation unit that performs an inverse discrete sine conversion operation that is 2 / 2N / 2 ";
An inverse transform signal generation unit that generates a signal after inverse transform using the output value from the N / 2 point IDCT operation unit and the output value from the N / 2 point IDST operation unit;
Inverse conversion processing device comprising:
請求項1又は2のいずれか1項に記載の変換処理装置を備える符号化装置。 In an encoding device that generates an encoded signal from a signal converted by a predetermined conversion method,
The encoding apparatus provided with the conversion processing apparatus of any one of Claim 1 or 2.
請求項3に記載の逆変換処理装置を備える復号装置。 In a decoding device for decoding a coded signal generated from a signal converted by a predetermined conversion method,
A decoding apparatus comprising the inverse transform processing apparatus according to claim 3.
N個の入力値において並びが連続する入力値のペア毎に、変換ブロックサイズが「2×2」である2点アダマール変換を行うN/2個の2点アダマール変換機能と、
前記2点アダマール変換の結果のうち2個の入力値の和に対して、直交変換ブロックサイズが「N/2×N/2」である離散コサイン変換の演算を行うN/2点DCT演算機能と、
前記2点アダマール変換の結果のうち2個の入力値の差に対して、直交変換ブロックサイズが「N/2×N/2」である離散サイン変換の演算を行うN/2点DST演算機能と、
をコンピュータに実現させるためのコンピュータプログラム。 A computer program for performing conversion of N points whose conversion block size is “N × N, where N is an integer of 4 or more”,
N / 2 two-point Hadamard transform functions that perform two-point Hadamard transforms whose transform block size is “2 × 2” for each pair of input values whose sequence is continuous in N input values;
N / 2 point DCT operation function that performs discrete cosine transform operation with orthogonal transform block size “N / 2 × N / 2” on the sum of two input values among the results of the two-point Hadamard transform When,
N / 2-point DST operation function that performs discrete sine transformation operation with orthogonal transformation block size “N / 2 × N / 2” on the difference between two input values among the results of the two-point Hadamard transformation When,
A computer program for realizing a computer.
N個の入力値のうち、直交変換ブロックサイズが「N/2×N/2」である離散コサイン変換の結果であるN/2個の入力値に対して、逆変換ブロックサイズが「N/2×N/2」である逆離散コサイン変換の演算を行うN/2点IDCT演算機能と、
N個の入力値のうち、直交変換ブロックサイズが「N/2×N/2」である離散サイン変換の結果であるN/2個の入力値に対して、逆直交変換ブロックサイズが「N/2×N/2」である逆離散サイン変換の演算を行うN/2点IDST演算機能と、
前記N/2点IDCT演算機能からの出力値と前記N/2点IDST演算機能からの出力値を使用して、逆変換後の信号を生成する逆変換信号生成機能と、
をコンピュータに実現させるためのコンピュータプログラム。 A computer program for performing inverse conversion of N points whose inverse conversion block size is “N × N, where N is an integer of 4 or more”,
The inverse transform block size is N / N for N / 2 input values that are the result of discrete cosine transform whose orthogonal transform block size is “N / 2 × N / 2” among N input values. N / 2-point IDCT operation function which performs inverse discrete cosine transform operation which is 2 × N / 2 ′ ′;
Of the N input values, the inverse orthogonal transform block size is “N” for N / 2 input values that are the result of discrete sine transform whose orthogonal transform block size is “N / 2 × N / 2”. N / 2 point IDST operation function that performs inverse discrete sine conversion operation which is 2 / 2N / 2 ";
An inverse transform signal generation function of generating a signal after inverse transform using an output value from the N / 2 point IDCT operation function and an output value from the N / 2 point IDST operation function;
A computer program for realizing a computer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015162867A JP6541260B2 (en) | 2015-08-20 | 2015-08-20 | Transformation processing apparatus, inverse transformation processing apparatus, encoding apparatus, decoding apparatus, and computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015162867A JP6541260B2 (en) | 2015-08-20 | 2015-08-20 | Transformation processing apparatus, inverse transformation processing apparatus, encoding apparatus, decoding apparatus, and computer program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017041131A JP2017041131A (en) | 2017-02-23 |
JP6541260B2 true JP6541260B2 (en) | 2019-07-10 |
Family
ID=58206610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015162867A Active JP6541260B2 (en) | 2015-08-20 | 2015-08-20 | Transformation processing apparatus, inverse transformation processing apparatus, encoding apparatus, decoding apparatus, and computer program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6541260B2 (en) |
-
2015
- 2015-08-20 JP JP2015162867A patent/JP6541260B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017041131A (en) | 2017-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102053317B1 (en) | Method and apparatus for video encoding, and method and apparatus for video decoding | |
KR100809354B1 (en) | Apparatus and method for up-converting frame-rate of decoded frames | |
KR101004157B1 (en) | Efficient encoding/decoding of a sequence of data frames | |
JP2019525575A (en) | Lookup table for extended multiple conversion | |
JP2017513342A (en) | System and method for low complex forward transformation using zeroed out coefficients | |
JP2018511227A (en) | Intraframe encoding method, intraframe decoding method, encoder, and decoder | |
WO2012166959A1 (en) | Fast computing of discrete cosine and sine transforms of types vi and vii | |
CN112425164B (en) | Transform variants of multiple separable transform choices | |
KR20080018469A (en) | Method and apparatus for transforming and inverse-transforming image | |
US20210281842A1 (en) | Method and apparatus for processing video | |
JP2016528810A (en) | Scan order for non-transform coding | |
Zheng et al. | Research in a fast DCT algorithm based on JPEG | |
JP6555814B2 (en) | Orthogonal transformation processing device, inverse orthogonal transformation processing device, encoding device, decoding device, and computer program | |
JP6309188B2 (en) | Method and corresponding apparatus for encoding and reconstructing a pixel block | |
JP6541260B2 (en) | Transformation processing apparatus, inverse transformation processing apparatus, encoding apparatus, decoding apparatus, and computer program | |
JP2013110747A5 (en) | ||
JP2004310735A (en) | Method and device for fast inverse discrete cosine transform | |
JP6004852B2 (en) | Method and apparatus for encoding and reconstructing pixel blocks | |
RU2812248C2 (en) | Image encoding method based on transformation and device for its implementation | |
JP2014523673A (en) | Video conversion method and apparatus, inverse conversion method and apparatus | |
JP7310919B2 (en) | Filter generation method, filter generation device and program | |
KR101786921B1 (en) | Apparatus and Method for fast motion estimation | |
US11290748B2 (en) | Method and device for designing low complexity DST7 | |
JP2012147205A (en) | Discrete sine transform circuit, inverse discrete sine transform circuit, combination-use circuit, encoding device, decoding device, and program | |
JP2006074520A (en) | Motion vector detecting device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180702 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20181026 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190318 |
|
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: 20190514 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190610 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6541260 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |