JP2014036278A - Image encoder, image decoder and program - Google Patents
Image encoder, image decoder and program Download PDFInfo
- Publication number
- JP2014036278A JP2014036278A JP2012175347A JP2012175347A JP2014036278A JP 2014036278 A JP2014036278 A JP 2014036278A JP 2012175347 A JP2012175347 A JP 2012175347A JP 2012175347 A JP2012175347 A JP 2012175347A JP 2014036278 A JP2014036278 A JP 2014036278A
- Authority
- JP
- Japan
- Prior art keywords
- block
- transform
- unit
- prediction
- dct
- 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.)
- Pending
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
本発明は、画面間予測を行う画像符号化装置、画像復号装置及びプログラムに関する。 The present invention relates to an image encoding device, an image decoding device, and a program that perform inter-screen prediction.
近年マルチメディア化が進み、動画像を扱う機会が多くなってきている。画像データは情報量が大きく、画像の集合である動画像は、テレビ放送の主流であるハイビジョン(1920×1080)放送で1Gbit/secを超える情報量である。 In recent years, with the advance of multimedia, there are many opportunities to handle moving images. Image data has a large amount of information, and a moving image, which is a set of images, has an information amount exceeding 1 Gbit / sec in high-definition (1920 × 1080) broadcasting, which is the mainstream of television broadcasting.
そのため、動画像データは、H.264/AVC(Advanced Video Coding)(例えば非特許文献1参照)や規格化作業中のHEVC(High Efficiency Video Coding)などに代表される符号化標準技術によって、情報量を圧縮して伝送・蓄積が行われている。 Therefore, the moving image data is H.264. H.264 / AVC (Advanced Video Coding) (see, for example, Non-Patent Document 1) and HEVC (High Efficiency Video Coding) being standardized, etc. Has been done.
HEVCでは、従来の符号化技術のように画面を左上から符号化単位であるブロック状に単純に分割するのではなく、新たに階層分割を採用し、複数階層のブロック分割を可能とする。また、複数のブロックに分割された符号化単位は、CU(Coding Unit)や符号化ブロックとも称す。 HEVC does not simply divide the screen into blocks that are encoding units from the upper left as in the conventional encoding technique, but newly adopts hierarchical division to enable block division of a plurality of hierarchies. A coding unit divided into a plurality of blocks is also referred to as a CU (Coding Unit) or a coding block.
図1は、HEVCによるブロック分割の一例を示す図である。図1に示すように、HEVCでは、4×4、8×8、16×16、32×32などのサイズに画像を分割して、符号化を行うことができる。 FIG. 1 is a diagram illustrating an example of block division by HEVC. As shown in FIG. 1, in HEVC, an image can be divided into 4 × 4, 8 × 8, 16 × 16, 32 × 32, etc. and encoded.
また、HEVCでは、予測誤差信号を効率的に表現するため、CUを階層分割し、変換単位に分けることができる。変換単位は、TU(Transform Unit)や変換ブロックとも称す。 In HEVC, in order to efficiently express the prediction error signal, the CU can be divided into layers and divided into conversion units. The transform unit is also referred to as a TU (Transform Unit) or a transform block.
図2は、CUとTUとの関係を示す図である。図2に示すように、例えば32×32のCUに対し、階層分割0回のTUは32×32のCUと同じブロックであり、階層分割1回のTUは、16×16に分割されたブロックである。また、階層分割2回のTUは、8×8に分割されたブロックである。 FIG. 2 is a diagram illustrating a relationship between a CU and a TU. As shown in FIG. 2, for example, for a 32 × 32 CU, a TU with 0 layer division is the same block as a 32 × 32 CU, and a TU with 1 layer division is a block divided into 16 × 16 It is. In addition, a TU with two hierarchical divisions is a block divided into 8 × 8.
なお、TUは、CUのサイズに応じて階層分割されるので、各階層におけるTUのサイズはCUのサイズに応じてそれぞれ異なる。 Since TUs are hierarchically divided according to the size of CUs, the TU sizes in each layer are different depending on the size of CUs.
また、HEVCでは、CUを複数種類の矩形領域である予測単位に分割し、それぞれの予測単位で予測処理が行われる。この予測単位は、PU(Prediction Unit)や予測ブロックとも称す。 In HEVC, a CU is divided into prediction units that are a plurality of types of rectangular areas, and prediction processing is performed in each prediction unit. This prediction unit is also referred to as a PU (Prediction Unit) or a prediction block.
ここで、分割されたブロックに対し、次の符号化が行われる。画面内符号化(イントラ符号化)は、画面内の空間的な信号予測を行って画像を符号化する。この技術は、画面内予測(イントラ予測)とも称す。また、画面間予測(インター符号化)は、異なるフレーム間で類似した領域を探索し、予測に用いて画像を符号化する。この技術は、動き補償予測(インター予測)とも称す。 Here, the following encoding is performed on the divided blocks. In-screen coding (intra coding) encodes an image by performing spatial signal prediction within the screen. This technique is also referred to as intra prediction (intra prediction). Also, inter-screen prediction (inter-coding) searches for similar regions between different frames and encodes an image for prediction. This technique is also referred to as motion compensation prediction (inter prediction).
図3は、ブロックにおける動き補償の予測誤差信号の一例を示す図である。図3に示すように、動き補償予測による予測残差信号は、予測に用いた領域の境界部において、領域の中心部に比べて、わずかに誤差が大きいという傾向がある(非特許文献2参照)。 FIG. 3 is a diagram illustrating an example of a motion compensation prediction error signal in a block. As shown in FIG. 3, the prediction residual signal based on motion compensation prediction tends to have a slightly larger error at the boundary of the region used for prediction than at the center of the region (see Non-Patent Document 2). ).
現在標準化の検討がなされているHEVCでは、動き補償予測ブロック(予測ブロック)と直交変換ブロック(変換ブロック)とは個々にブロックサイズを柔軟に選択することができる。よって、動き補償予測と直交変換とでそれぞれ適切なブロックサイズを決定することができ、効率的な圧縮を実現することができる。 In HEVC currently under consideration for standardization, a block size can be selected flexibly for each of the motion compensated prediction block (prediction block) and the orthogonal transform block (transform block). Therefore, an appropriate block size can be determined for each of the motion compensation prediction and the orthogonal transform, and efficient compression can be realized.
上記信号特性を考慮して、DCT(Discrete Cosine Transform)−IV又はDST(Discrete Sine Transform)−VIIを使用した符号化方式が提案されている(例えば非特許文献3参照)。以下では、この手法を手法1とも称す。この手法1では、予測ブロックの境界部において誤差が大きく、内部において誤差が小さいことを利用する。
In consideration of the signal characteristics, an encoding method using DCT (Discrete Cosine Transform) -IV or DST (Discrete Sine Transform) -VII has been proposed (see, for example, Non-Patent Document 3). Hereinafter, this technique is also referred to as
つまり、手法1では、予測ブロックと一致する境界を持つ変換ブロックにおいて、低域成分の直交変換基底が開放端となり、逆端が短絡端となる直交変換を使用する。図4は、変換ブロックと予測ブロックとの関係の一例を示す図である。図4に示すように、予測ブロックの中央では誤差を小さく、周縁部では誤差が大きい。このことから、図4に示す変換ブロックでは、垂直方向には、DCT−IV/Flipped DST−VIIを行い、水平方向には、Flipped DCT−IV/DST−VIIを行う。なお、図4に示す波形は、DCT−IVの波形である。また、Flippedとは、例えばDCT−IVの場合、入力信号の信号線を上位、下位を入れ替えてDCT−IVすることをいう。
That is,
なお、Flipped DCT−IV/DST−VIIは、DCT−IV/DST−VIIの向きを反転した関数を意味する。図5は、DCT−IVとFlipped DCT−IVとの関係を示す図である。図5に示すように、Flipped DCT−IVは、DCT−IVの向きが反転した関数である。 Note that “Flipped DCT-IV / DST-VII” means a function obtained by inverting the direction of DCT-IV / DST-VII. FIG. 5 is a diagram showing the relationship between DCT-IV and Flipped DCT-IV. As shown in FIG. 5, the flipped DCT-IV is a function in which the direction of the DCT-IV is inverted.
DCT−IVやDST−VIIは、その条件を満たし、動き補償予測残差ブロックの変換ブロックの符号化に使用される。変換ブロックと予測ブロックで境界を共有しない場合は、DCTが選択される。 DCT-IV and DST-VII satisfy the condition and are used for coding the transform block of the motion compensated prediction residual block. When the boundary is not shared between the transform block and the prediction block, DCT is selected.
また、手法1では、ブロックサイズが例えば4×4の場合などには、DCT−IVの代わりにDST−VIIが用いられてもよい。よって、手法1では、ブロックサイズや変換ブロックと予測ブロックの境界条件に基づいて直交変換を切り替えることができる。
In
図6は、手法1の場合の各変換ブロックにおける直交変換の例を示す図である。図6に示す変換ブロックb101〜b103は、予測ブロックの境界と一致する境界の方向について、DCT−IVやFlipped DCT−IVの直交変換が用いられる。また、予測ブロックの境界と一致しない変換ブロックb104は、水平方向及び垂直方向でDCT−IIの直交変換が用いられる。
FIG. 6 is a diagram illustrating an example of orthogonal transform in each transform block in the case of
また、手法1の実装上の利点は、非対称な直交変換としてDCT−IVを用いる場合、DCT−IIのバタフライ演算を流用して実現することができる。これにより、ハードウェアのコスト増加を抑えることができる。
Further, the advantage in implementation of
図7は、DCT−IVの実現方法を示す図である。図7に示すように、DCT−IIの一部を流用してDCT−IVを実現することができる。 FIG. 7 is a diagram illustrating a method for realizing DCT-IV. As shown in FIG. 7, DCT-IV can be realized by diverting part of DCT-II.
また、実装の容易さに注目し、DCT−IIと相補関係を持つDST−IIを使用して符号化する手法が提案されている(例えば非特許文献4参照)。以下では、この手法を手法2とも称す。
In addition, paying attention to ease of mounting, a method of encoding using DST-II having a complementary relationship with DCT-II has been proposed (for example, see Non-Patent Document 4). Hereinafter, this technique is also referred to as
手法2は、動き補償予測の残差信号に対し、RD(Rate-Distortion)最適化法によりDCT−IIとDST−IIとを切り替えて符号化する方法である。これにより、各変換ブロックで最適な直交変換を選択することができ、高能率な圧縮効果を実現することができる。
図8は、変換ブロックの分割例を示す図である。図8に示す各変換ブロックについて、手法2では、RD最適化を行って、DCTとDSTとを切り替える。図9は、DCT−IIを用いたDST−IIの実装例を示す図である。図9に示すように、DST−IIは、比較的容易に実装することができる。
FIG. 8 illustrates an example of transform block division. For each transform block shown in FIG. 8, in
一方で、手法2では、どちらの直交変換が適用されたのかを復号側に伝送する必要があり、どちらの直交変換かを示す識別情報が符号量の削減効果を妨げる要因となっている(非特許文献5、特許文献1,2参照)。このため、手法2では、水平、垂直方向で最適な直交変換を切り替えるのではなく二次元の直交変換をブロック単位で切り替えている。
On the other hand, in
しかしながら、手法1では、予測ブロックと境界を共有しない変換ブロックは、直交変換として従来のDCTのみを利用しており、改善が行われていない。また、手法2では、ブロック毎に識別情報を付与しており、識別情報の増加分が符号量の削減効果の妨げの要因となっている。
However, in
そこで、本発明は、インター符号化において、符号化効率を向上させることができる画像符号化装置、画像復号装置及びプログラムを提供することを目的とする。 Therefore, an object of the present invention is to provide an image encoding device, an image decoding device, and a program capable of improving encoding efficiency in inter encoding.
本発明の一態様における画像符号化装置は、画像が複数に分割された符号化ブロックに対し、該符号化ブロック以下のサイズの予測ブロックによる画面間予測を用いて画像を符号化する画像符号化装置であって、前記符号化ブロックが階層分割により1又は複数に分割された変換ブロックと、前記予測ブロックとの位置関係に基づいて、水平方向及び垂直方向それぞれで、前記変換ブロックの対向する両辺が前記予測ブロックの辺と一致する場合はDCT−IIを選択し、前記変換ブロックの1辺が前記予測ブロックの辺と一致する場合はDCT−IV、Flipped DCT−IV、DST−VII、又はFlipped DST−VIIのいずれかを選択し、前記変換ブロックの対向する両辺共が前記予測ブロックの辺と一致しない場合はDST−II及びDCT−IIを選択する選択部と、前記選択部により選択された水平方向の直交変換及び垂直方向の直交変換を、それぞれの方向で行う変換部と、前記変換ブロックの対向する両辺共が前記予測ブロックの辺と一致せず、前記変換部によりDST−II及びDCT−IIが行われた場合、DST−II及びDCT−IIの直交変換の符号化コストをRD最適化法を用いて算出し、該符号化コストが最も小さい直交変換を選択するコスト算出部と、を備える。 An image encoding apparatus according to an aspect of the present invention encodes an image using inter-frame prediction using a prediction block having a size equal to or smaller than the encoded block for an encoded block obtained by dividing the image into a plurality of blocks. Both sides of the transform block facing each other in a horizontal direction and a vertical direction based on a positional relationship between the transform block obtained by dividing the coding block into one or a plurality of layers by hierarchical partitioning and the prediction block DCT-II is selected when the side of the prediction block matches the side of the prediction block, and DCT-IV, Flipped DCT-IV, DST-VII, or Flipped when one side of the transform block matches the side of the prediction block When any one of DST-VII is selected and the opposite sides of the transform block do not match the sides of the prediction block Is a selector that selects DST-II and DCT-II, a converter that performs the orthogonal transform in the horizontal direction and the orthogonal transform in the vertical direction selected by the selector, and the transform block. If both sides do not coincide with the sides of the prediction block and DST-II and DCT-II are performed by the transform unit, the coding cost of the orthogonal transform of DST-II and DCT-II is calculated using the RD optimization method. And a cost calculation unit that selects an orthogonal transform that has the lowest coding cost.
また、実装を優先する第1モード又は性能を優先する第2モードのいずれかを設定する設定部をさらに備え、前記選択部は、前記第1モードが設定された場合、前記変換ブロックの1辺が前記予測ブロックの辺と一致するときはDCT−IV又はFlipped DCT−IVを選択し、前記第2モードが設定された場合、前記変換ブロックの1辺が前記予測ブロックの辺と一致するときはDST−VII又はFlipped DST−VIIを選択してもよい。 In addition, a setting unit that sets either the first mode that prioritizes implementation or the second mode that prioritizes performance is further provided, and the selection unit is configured to set one side of the conversion block when the first mode is set. When DCT-IV or Flipped DCT-IV is selected and the second mode is set, when one side of the transform block matches the side of the prediction block DST-VII or Flipped DST-VII may be selected.
また、他の態様におけるプログラムは、画像が複数に分割された符号化ブロックに対し、該符号化ブロック以下のサイズの予測ブロックによる画面間予測を用いて画像を符号化するコンピュータに、前記符号化ブロックが階層分割により1又は複数に分割された変換ブロックと、前記予測ブロックとの位置関係に基づいて、前記変換ブロックの対向する両辺が前記予測ブロックの辺と一致する場合はDCT−IIを選択し、前記変換ブロックの1辺が前記予測ブロックの辺と一致する場合はDCT−IV、Flipped DCT−IV、DST−VII、又はFlipped DST−VIIのいずれかを選択し、前記変換ブロックの対向する両辺共が前記予測ブロックの辺と一致しない場合はDST−II及びDCT−IIを選択する選択ステップと、前記選択ステップにより選択された水平方向の直交変換及び垂直方向の直交変換を、それぞれの方向で行う変換ステップと、前記変換ブロックの対向する両辺共が前記予測ブロックの辺と一致せず、前記変換ステップによりDST−II及びDCT−IIが行われた場合、DST−II及びDCT−IIの直交変換の符号化コストをRD最適化法を用いて算出し、該符号化コストが最も小さい直交変換を選択するコスト算出ステップと、を実行させる。 Further, the program according to another aspect of the present invention is directed to a computer that encodes an image using inter-frame prediction using a prediction block having a size equal to or smaller than the encoded block for an encoded block obtained by dividing the image into a plurality of encoding blocks. DCT-II is selected when both opposing sides of the transform block coincide with the sides of the prediction block based on the positional relationship between the transform block obtained by dividing the block into one or more by hierarchical division and the prediction block If one side of the transform block coincides with the side of the prediction block, DCT-IV, Flipped DCT-IV, DST-VII, or Flipped DST-VII is selected and the transform block faces Select to select DST-II and DCT-II if both sides do not match the sides of the prediction block A step of performing the orthogonal transformation in the horizontal direction and the orthogonal transformation in the vertical direction selected in the selection step in each direction, and both opposing sides of the transformation block do not match the sides of the prediction block When DST-II and DCT-II are performed by the conversion step, the encoding cost of orthogonal transform of DST-II and DCT-II is calculated using the RD optimization method, and the encoding cost is the lowest And a cost calculating step of selecting an orthogonal transform.
また、他の態様における画像復号装置は、上記記載の画像符号化装置により符号化されたストリームを復号する画像復号装置であって、前記ストリームをエントロピー復号する復号部と、前記復号部により復号された前記変換ブロックと、画面内予測時に用いられた予測ブロックとの位置関係に基づいて、水平方向及び垂直方向それぞれで、前記変換ブロックの対向する両辺が前記予測ブロックの辺と一致する場合はIDCT−IIを選択し、前記変換ブロックの1辺が前記予測ブロックの辺と一致する場合はIDCT−IV、Flipped IDCT−IV、IDST−VII、又はFlipped IDST−VIIのいずれかを選択し、前記変換ブロックの対向する両辺共が前記予測ブロックの辺と一致しない場合は前記ストリームに含まれる直交変換を示す識別情報に基づきIDST−II又はIDCT−IIを選択する選択部と、前記選択部により選択された水平方向の逆直交変換及び垂直方向の逆直交変換を、それぞれの方向で行う逆変換部と、を備える。 An image decoding apparatus according to another aspect is an image decoding apparatus that decodes a stream encoded by the image encoding apparatus described above, wherein the stream is entropy-decoded and decoded by the decoding section. In addition, based on the positional relationship between the transform block and the prediction block used at the time of the intra prediction, the IDCT is used when both opposing sides of the transform block coincide with the sides of the prediction block in the horizontal direction and the vertical direction, respectively. -II is selected, and if one side of the conversion block matches the side of the prediction block, IDCT-IV, Flipped IDCT-IV, IDST-VII, or Flipped IDST-VII is selected and the conversion is performed. If both sides of the block do not match the sides of the prediction block, A selection unit that selects IDST-II or IDCT-II based on identification information indicating orthogonal transformation, and a horizontal inverse orthogonal transformation and a vertical inverse orthogonal transformation selected by the selection unit in each direction. And an inverse conversion unit for performing.
また、他の態様におけるプログラムは、上記記載の画像符号化装置により符号化されたストリームを復号するコンピュータに、前記ストリームをエントロピー復号する復号ステップと、復号された前記変換ブロックと、画面内予測時に用いられた予測ブロックとの位置関係に基づいて、水平方向及び垂直方向それぞれで、前記変換ブロックの対向する両辺が前記予測ブロックの辺と一致する場合はIDCT−IIを選択し、前記変換ブロックの1辺が前記予測ブロックの辺と一致する場合はIDCT−IV、Flipped IDCT−IV、IDST−VII、又はFlipped IDST−VIIのいずれかを選択し、前記変換ブロックの対向する両辺共が前記予測ブロックの辺と一致しない場合は前記ストリームに含まれる直交変換を示す識別情報に基づきIDST−II又はIDCT−IIを選択する選択ステップと、前記選択ステップにより選択された水平方向の逆直交変換及び垂直方向の逆直交変換を、それぞれの方向で行う逆変換ステップと、を実行させる。 Further, the program according to another aspect includes a decoding step for entropy decoding the stream, a decoded conversion block, and an intra-screen prediction in a computer that decodes the stream encoded by the image encoding device described above. Based on the positional relationship with the prediction block used, IDCT-II is selected when both opposing sides of the transformation block coincide with the sides of the prediction block in the horizontal direction and the vertical direction, respectively. If one side coincides with the side of the prediction block, IDCT-IV, Flipped IDCT-IV, IDST-VII, or Flipped IDST-VII is selected, and both sides of the conversion block facing each other are the prediction block. If it does not match the side of A selection step of selecting IDST-II or IDCT-II based on the identification information shown, and an inverse conversion step of performing the horizontal inverse orthogonal transformation and the vertical inverse orthogonal transformation selected in the selection step in respective directions. , Execute.
本発明によれば、インター符号化において、符号化効率を向上させることができる。 According to the present invention, coding efficiency can be improved in inter coding.
以下、手法1や手法2よりも符号化効率を改善する各実施例について、添付図面を参照しながら詳細に説明する。
In the following, each embodiment that improves the coding efficiency over
[実施例1]
実施例1では、予測ブロックと境界が一致する変換ブロックに対しては手法1を用い、予測ブロックと境界が一致しない変換ブロックに対しては手法2を用いる。これにより、全ての変換ブロックにおいて適した直交変換を行うことができるので、符号化効率を向上させることができる。
[Example 1]
In the first embodiment,
<構成>
図10は、実施例1における画像符号化装置10の概略構成の一例を示すブロック図である。図10に示す例では、画像符号化装置10は、前処理部100、予測誤差信号生成部101、直交変換部102、量子化部103、エントロピー符号化部104、逆量子化部105、逆直交変換部106、復号画像生成部107、ループフィルタ部109、復号画像記憶部110、イントラ予測部111、インター予測部112、動きベクトル計算部113及び予測画像選択部115を有する。各部についての概略を以下に説明する。
<Configuration>
FIG. 10 is a block diagram illustrating an example of a schematic configuration of the
前処理部100は、ピクチャタイプに合わせてピクチャを並べ替え、ピクチャタイプ及びフレームごとのフレーム画像等を順次出力する。また、前処理部100は、ブロック分割なども行う。
The
予測誤差信号生成部101は、入力された動画像データの符号化対象画像が、例えば32×32、16×16、8×8画素などのブロックに分割されたブロックデータを取得する。
The prediction error
予測誤差信号生成部101は、そのブロックデータと、予測画像選択部115から出力される予測画像のブロックデータとにより、予測誤差信号を生成する。予測誤差信号生成部101は、生成された予測誤差信号を直交変換部102に出力する。
The prediction error
直交変換部102は、入力された予測誤差信号を直交変換処理する。直交変換部102は、インター予測の場合の予測誤差信号に対し、予測ブロックと変換ブロックとの位置関係に基づいて直交変換を切り替える。
The
直交変換部102の詳細は、図11を用いて後述する。直交変換部102は、直交変換処理によって水平及び垂直方向の周波数成分に分離された信号を量子化部103に出力する。
Details of the
量子化部103は、直交変換部102からの出力信号を量子化する。量子化部103は、量子化することによって出力信号の符号量を低減し、この出力信号をエントロピー符号化部104及び逆量子化部105に出力する。
The
エントロピー符号化部104は、量子化部103からの出力信号や動きベクトル計算部113から出力された動きベクトル情報やループフィルタ部109からのフィルタ係数などをエントロピー符号化して出力する。エントロピー符号化とは、シンボルの出現頻度に応じて可変長の符号を割り当てる方式をいう。
The
逆量子化部105は、量子化部103からの出力信号を逆量子化してから逆直交変換部106に出力する。逆直交変換部106は、逆量子化部105からの出力信号を逆直交変換処理してから復号画像生成部107に出力する。これら逆量子化部105及び逆直交変換部106によって復号処理が行われることにより、符号化前の予測誤差信号と同程度の信号が得られる。
The
復号画像生成部107は、インター予測部112で動き補償された画像のブロックデータと、逆量子化部105及び逆直交変換部106により復号処理された予測誤差信号とを加算する。復号画像生成部107は、加算して生成した復号画像のブロックデータを、ループフィルタ部109に出力する。
The decoded
ループフィルタ部109は、例えばALF(Adaptive Loop Filter)やデブロッキングフィルタであり、いずれか又は両方を備えてもよい。
The
例えば、ループフィルタ部109は、入力画像を所定サイズ毎のグループに分け、グループ毎に適切なフィルタ係数を生成する。ループフィルタ部109は、フィルタ処理された復号画像を、所定サイズ毎にグループ分けし、生成したフィルタ係数を用いてグループ毎にフィルタ処理を行う。ループフィルタ部109は、フィルタ処理結果を復号画像記憶部110に出力し、参照画像として蓄積させる。所定サイズは、例えば、直交変換サイズである。
For example, the
復号画像記憶部110は、入力した復号画像のブロックデータを新たな参照画像のデータとして記憶し、イントラ予測部111、インター予測部112及び動きベクトル計算部113に出力する。
The decoded
イントラ予測部111は、符号化対象画像の処理対象ブロックに対して、すでに符号化された参照画素から予測画像のブロックデータを生成する。イントラ予測部111は、複数の予測方向を用いて予測を行い、最適な予測方向を決定する。
The
インター予測部112は、復号画像記憶部110から取得した参照画像のデータを動きベクトル計算部113から提供される動きベクトルで動き補償する。これにより、動き補償された参照画像としてのブロックデータが生成される。インター予測部112は、動き補償に用いた予測ブロックの情報を直交変換部102に出力する。
The
動きベクトル計算部113は、符号化対象画像におけるブロックデータと、復号画像記憶部110から取得する参照画像とを用いて、動きベクトルを求める。動きベクトルとは、ブロック単位で参照画像内から処理対象ブロックに最も類似している位置を探索するブロックマッチング技術などを用いて求められるブロック単位の空間的なずれを示す値である。
The motion
動きベクトル計算部113は、求めた動きベクトルをインター予測部112に出力し、動きベクトルや参照画像を示す情報を含む動きベクトル情報をエントロピー符号化部104に出力する。
The motion
イントラ予測部111とインター予測部112から出力されたブロックデータは、予測画像選択部115に入力される。
The block data output from the
予測画像選択部115は、イントラ予測部111とインター予測部112から取得したブロックデータのうち、どちらか一方のブロックデータを予測画像として選択する。選択された予測画像は、予測誤差信号生成部101に出力される。
The predicted
なお、図10に示す画像符号化装置10の構成は一例であり、必要に応じて各構成を組み合わせたり、各構成を適宜変更したりしてもよい。
Note that the configuration of the
<直交変換部の構成>
次に、直交変換部102の構成について説明する。図11は、実施例1における直交変換部102の構成の一例を示すブロック図である。図11に示す直交変換部102は、本発明にかかるインター予測の予測誤差信号に対する直交変換についての構成を示す。
<Configuration of orthogonal transform unit>
Next, the configuration of the
図11に示す直交変換部102は、選択部201、コスト算出部202、変換部203、及び設定部204を有する。選択部201は、予測ブロックの情報をインター予測部112から取得する。また、選択部201は、予測誤差信号生成部101から予測誤差信号を取得する。
11 includes a
選択部201は、予測誤差信号のうち、直交変換の対象である変換ブロックの位置と、取得した予測ブロックの情報に基づく予測ブロックの位置との関係に基づいて、水平方向及び垂直方向それぞれに対し、複数の直交変換の中から1つの直交変換を選択する。複数の直交変換とは、例えばDCT−II、DCT−IV、Flipped DCT−IV、DST−II、DST−VII、Flipped DST−VIIである。
Based on the relationship between the position of the transform block that is the target of orthogonal transform and the position of the predicted block based on the obtained prediction block information, the
選択部201は、水平方向及び垂直方向のそれぞれにおいて、変換ブロックと予測ブロックとの境界(辺)が少なくとも1つ一致していれば、手法1と同じ方法で直交変換を選択する。選択部201は、選択した直交変換を変換部203に通知する。
If at least one boundary (side) between the transform block and the prediction block matches in each of the horizontal direction and the vertical direction, the
また、選択部201は、変換ブロックと予測ブロックとの辺が一致しなければ、手法2と同じようにしてDCT−IIとDST−IIとのうち、最適な方をコスト算出部202に選択させる。例えば、選択部201は、DCT−IIとDST−IIとを行うよう変換部203に指示し、コスト算出部202に符号化コスト(単にコストとも呼ぶ)を算出するよう指示する。
In addition, if the sides of the transform block and the prediction block do not match, the
コスト算出部202は、レート歪み最適化法(例えば、http://www.tom.comm.waseda.ac.jp/~tsukuba/source/avm20050609.pdfを参照されたい)を用いて、複数の直交変換(例えばDCT−IIとDST−II)のコスト(例えば符号量)を計算し、コストが最も小さい直交変換を選択する。説明の都合上、コスト算出部202が、量子化部、エントロピー符号化部を有し、各直交変換での符号量を算出するとするが、実装上はエントロピー符号化部104からフィードバックされて符号量を取得してもよい。また、コスト算出部202は、選択部201に含まれるようにしてもよい。
The
変換部203は、DCT部205、DST部206を有し、複数の直交変換を有する。DCT部205は、DCT系の直交変換を行う。DST部206は、DST系の直交変換を行う。変換部203は、予測誤差信号生成部101から取得した変換対象の予測誤差信号に対し、選択部201により選択された1つの直交変換を行い、変換後の係数を量子化部103に出力する。
The
なお、変換部203は、説明を分かりやすくするため、DCT部205と、DST部206とを分けた構成で説明した。しかし、実装上では、図7や図9に示したように、変換部203は、DCT−IIをコアにしてDCT−IV、DST−IIを実装することができる。よって、変換部203は、DCT−IVを行う場合、DCT−IIの処理の一部を行い(図7参照)、DST−IIを行う場合、入力と出力とに若干の修正を加えたDCT−IIの処理を行うこと(図9参照)で各処理を実現することができる。つまり、変換部203は、DCT−II、DCT−IV、DST−IIを行う処理部と、DST−VIIを行う処理部とに分けてもよい。例えば、変換部203の実装については、適宜自由に変更することができる。
Note that the
また、変換部203は、選択部201によりDCT−IIとDST−IIの処理が指示された場合は、DCT−IIとDST−IIの処理を実行する。変換部203は、DCT−IIとDST−IIの処理を行った場合は、それぞれの直交変換係数をコスト算出部202に出力する。
In addition, when the
変換部203は、コスト算出部202により選択された直交変換の変換係数、及び選択された直交変換を識別する識別情報を量子化部103に出力する。なお、変換部203は、コスト算出部202が処理を行った場合は、選択された直交変換のエントロピー符号化データをエントロピー符号化部104に出力してもよい。また、直交変換部102は、コスト算出部202がエントロピー符号化部104からフィードバックされる場合、どちらの符号化データを用いるかを示す情報をエントロピー符号化部104に指示すればよい。
The
なお、選択部201は、DCT−IV又はDST−VIIのどちらを用いるかについて、設定部204により設定されたモードに基づいて選択してもよい。選択部201は、例えば実装優先の第1モードが設定部204により設定されていた場合、DCT−IVを選択し、性能優先の第2モードが設定部204により設定されていた場合、DST−VIIを用いる。DST−VIIは、DCT−IVよりも性能が良いと言われている。よって、実装を優先する場合はDCT−IVが用いられ、性能を優先する場合はDST−VIIが用いられるようにしてもよい。
Note that the
設定部204は、第1モードか第2モードのいずれかを設定する。モードについては、ユーザにより予め設定されればよい。なお、変換部203がDCT−IV又はDST−VIIのいずれかしか有していない場合、設定手段204は、必ずしも必要な構成ではない。
The
また、設定手段204は、所定のブロックサイズを設定し、設定されたブロックサイズには例えばDST−VIIを処理させるようにしてもよい。所定のブロックサイズは、例えば4×4である。
The
<手法の適用例>
次に、変換ブロックに対する手法の適用例について説明する。図12は、変換ブロックの位置による手法の適用分布例を示す図である。図12に示す例では、予測ブロックは、縦長の長方形に分割される。図12に示す変換ブロックb201は、全ての辺において予測ブロックの辺と一致しないため、手法2が適用される。図9に示す変換ブロックb201以外の変換ブロックは、予測ブロックの辺と少なくとも1辺が一致するので、手法1が適用される。
<Application example of method>
Next, an application example of the method for the transform block will be described. FIG. 12 is a diagram illustrating an application distribution example of the technique based on the position of the transform block. In the example shown in FIG. 12, the prediction block is divided into vertically long rectangles. Since the transform block b201 illustrated in FIG. 12 does not match the sides of the prediction block on all sides, the
<直交変換の適用例>
次に、変換ブロックに対する直交変換の適用例について説明する。図13は、実施例1における水平方向の直交変換の適用例を示す図である。図13に示す例では、選択部201は以下のように直交変換を選択する。図13に示す変換ブロックは、正方形の形状をしているが、正方形に限られず、長方形でもよい。また、図13に示す例では、変換部203は、DST−VIIを有していないか、設定部204により第1モードが設定されているとする。図13に示す太線の辺は、予測ブロックの辺と一致する辺を示す。
<Application example of orthogonal transformation>
Next, an application example of orthogonal transform to the transform block will be described. FIG. 13 is a diagram illustrating an application example of the orthogonal transformation in the horizontal direction according to the first embodiment. In the example illustrated in FIG. 13, the
(1)両辺が一致
選択部201は、変換ブロックの左右の両辺が予測ブロックの辺と一致する場合、直交変換としてDCT−IIを選択する。
(1) Both sides
(2)左辺が一致
選択部201は、変換ブロックの左辺が予測ブロックの辺と一致する場合、直交変換としてDCT−IVを選択する。
(2) The left side
(3)右辺が一致
選択部201は、変換ブロックの右辺が予測ブロックの辺と一致する場合、直交変換としてFlipped DCT−IVを選択する。
(3) When the right side of the transform block matches the side of the prediction block, the right side
(4)両辺とも不一致
選択部201は、変換ブロックの両辺とも予測ブロックの辺と一致しない場合、直交変換として、DCT−II、DST−IIを選択する。コスト算出部202は、コストの低い直交変換を選択する。
(4) When both sides of the transform block do not match the sides of the prediction block, the
なお、選択部201は、垂直方向でも、水平方向と同様にして処理すればよい。選択部201は、垂直方向の場合、左辺を上辺、右辺を下辺に置き換えて処理すればよい。
Note that the
<動作>
次に、実施例1における画像符号化装置10の動作について説明する。図14は、実施例1におけるインター予測の直交変換処理の一例を示すフローチャートである。図14に示す処理は、水平方向及び垂直方向のそれぞれで実行される。
<Operation>
Next, the operation of the
ステップS101で、選択部201は、変換ブロックと予測ブロックとの境界のいずれかが一致しているか否かを判定する。つまり、選択部201は、変換ブロックの少なくとも1辺が予測ブロックの辺と一致しているかを判定する。少なくとも1辺が一致していれば(ステップS101−YES)ステップS102に進み、1辺も一致していなければ(ステップS101−NO)ステップS107に進む。
In step S101, the
ステップS102で、選択部201は、変換ブロックの左辺(または上辺)のみが予測ブロックの辺と一致するか否かを判定する。変換ブロックの左辺(または上辺)のみが予測ブロックの辺と一致すれば(ステップS102−YES)ステップS103に進み、変換ブロックの左辺(または上辺)のみが予測ブロックの辺と一致しなければ(ステップS102−NO)ステップS104に進む。
In step S102, the
ステップS103で、変換部203は、変換ブロックに対し、DCT−IVの処理を実行する。
In step S103, the
ステップS104で、選択部201は、変換ブロックの右辺(または下辺)のみが予測ブロックの辺と一致するか否かを判定する。変換ブロックの右辺(または下辺)のみが予測ブロックの辺と一致すれば(ステップS104−YES)ステップS105に進み、変換ブロックの右辺(または下辺)のみが予測ブロックの辺と一致しなければ(ステップS104−NO)ステップS106に進む。
In step S104, the
ステップS105で、変換部203は、変換ブロックに対し、Flipped DCT−IVの処理を実行する。
In step S105, the
ステップS106で、変換部203は、変換ブロックに対し、DCT−IIの処理を実行する。
In step S106, the
ステップS107で、変換部203は、変換ブロックに対し、DCT−IIの処理を実行する。
In step S107, the
ステップS108で、変換部203は、変換ブロックに対し、DST−IIの処理を実行する。
In step S108, the
ステップS109で、コスト算出部202は、DCT−IIとDST−IIとのコストを算出してRD判定を行い、コストが低い方の直交変換を選択する。
In step S109, the
よって、直交変換部102は、ステップS101〜S106では、手法1を用いて適切な直交変換を行うことができ、ステップS107〜S109では、手法2を用いて適切な直交変換を行うことができる。
Therefore, the
以上、実施例1によれば、インター符号化において、符号化効率を向上させることができる。また、実施例1によれば、予測ブロックと境界が一致する変換ブロックに対しては手法1を用い、予測ブロックと境界が一致しない変換ブロックに対しては手法2を用いることで、全ての変換ブロックにおいて適した直交変換を行うことができる。
As described above, according to the first embodiment, encoding efficiency can be improved in inter-coding. In addition, according to the first embodiment,
[実施例2]
次に、実施例2における画像符号化装置について説明する。実施例2では、RD判定を用いず、変換ブロックと予測ブロックの位置関係に基づいて、全ての変換ブロックの直交変換を選択する。RD判定は、他の処理と比べて処理量が大きい。よって、実施例2では、RD判定を行わないことで処理量の低減を図りつつ、符号化効率を実施例1とほぼ同等にすることができる。
[Example 2]
Next, an image coding apparatus according to the second embodiment will be described. In the second embodiment, orthogonal transforms of all transform blocks are selected based on the positional relationship between transform blocks and prediction blocks without using RD determination. The RD determination has a larger processing amount than other processes. Therefore, in the second embodiment, the coding efficiency can be made substantially equal to that of the first embodiment while reducing the processing amount by not performing the RD determination.
<構成>
実施例2における画像符号化装置の構成は、実施例1の図10に示す構成と同様であるため、同じ符号を用いて説明する。実施例2では、直交変換部102の処理が実施例1と異なるため、以下では実施例2の直交変換部102を主に説明する。
<Configuration>
Since the configuration of the image coding apparatus according to the second embodiment is the same as that illustrated in FIG. 10 according to the first embodiment, the description will be made using the same reference numerals. In the second embodiment, since the processing of the
<直交変換部>
図15は、実施例2における直交変換部102の構成の一例を示すブロック図である。図15に示す直交変換部102の構成のうち、図11に示す構成と同様のものは同じ符号を付す。以下では、選択部250を主に説明する。
<Orthogonal transformation unit>
FIG. 15 is a block diagram illustrating an example of the configuration of the
選択部250は、予測誤差信号101から取得した変換ブロックと、インター予測部112から取得した予測ブロックの情報に基づく予測ブロックとの位置関係のみに基づいて、水平方向及び垂直方向それぞれで、複数の直交変換の中から1つの直交変換を選択する。例えば、選択部250は、変換ブロックの水平方向又は垂直方向の対向する両辺が予測ブロックの辺と一致しない場合は、予測ブロック内部における誤差信号の直流成分が小さいことから、DCT−IIよりも小さい誤差表現に適したDST−IIを選択する。
The
また、選択部250は、変換ブロックの対向する両辺が予測ブロックの辺と一致する場合はDCT−IIを選択し、変換ブロックの1辺が予測ブロックの辺と一致する場合はDCT−IV、Flipped DCT−IV、DST−VII、又はFlipped DST−VIIのいずれかを選択する。また、選択部250は、変換ブロックと予測ブロックとの一致する辺の位置に応じて、いずれかの直交変換を選択する。選択部250は、選択した直交変換を変換部203に通知する。
In addition, the
また、実施例1同様、選択部250は、設定部204により実装優先の第1モードが設定されていれば、DCT−IVを選択し、性能優先の第2モードが設定されていれば、DST−VIIを選択する。
Similarly to the first embodiment, the
<直交変換の適用例>
次に、変換ブロックに対する直交変換の適用例について説明する。図16は、実施例2における水平方向の直交変換の適用例を示す図である。図16に示す例では、選択部250は以下のように直交変換を選択する。図16に示す変換ブロックは、正方形の形状をしているが、正方形に限られず、長方形でもよい。また、図16に示す例では、変換部203は、DST−VIIを有していないか、設定部204により第1モードが設定されているとする。図16に示す太線の辺は、予測ブロックの辺と一致する辺を示す。
<Application example of orthogonal transformation>
Next, an application example of orthogonal transform to the transform block will be described. FIG. 16 is a diagram illustrating an application example of horizontal orthogonal transform in the second embodiment. In the example illustrated in FIG. 16, the
(1)両辺が一致
選択部250は、変換ブロックの左右の両辺が予測ブロックの辺と一致する場合、直交変換としてDCT−IIを選択する。
(1) Both sides
(2)左辺が一致
選択部250は、変換ブロックの左辺が予測ブロックの辺と一致する場合、直交変換としてDCT−IVを選択する。
(2) The left side
(3)右辺が一致
選択部250は、変換ブロックの右辺が予測ブロックの辺と一致する場合、直交変換としてFlipped DCT−IVを選択する。
(3) When the right side of the transform block matches the side of the prediction block, the right side
(4)両辺とも不一致
選択部250は、変換ブロックの両辺とも予測ブロックの辺と一致しない場合、直交変換としてDST−IIを選択する。
(4) When both sides of the transform block do not match the sides of the prediction block, the
これは、予測ブロックと変換ブロックとで、水平方向又は垂直方向の両辺の境界が一致しない場合、両端が短絡端の基底を有するDST―IIが適しているからである。 This is because DST-II, which has a short-circuited base at both ends, is suitable when the boundary between both sides in the horizontal direction or the vertical direction does not match between the prediction block and the transform block.
なお、選択部250は、垂直方向でも、水平方向と同様にして処理すればよい。選択部250は、垂直方向の場合、左辺を上辺、右辺を下辺に置き換えて処理すればよい。
Note that the
これにより、選択部250は、変換ブロックと予測ブロックとの位置関係のみに基づいて直交変換を選択することができるので、RD判定を用いる必要がなく、さらに直交変換種別を示す識別情報を付加する必要もない。
Thereby, since the
<動作>
次に、実施例2における画像符号化装置10の動作について説明する。図17は、実施例2におけるインター予測の直交変換処理の一例を示すフローチャートである。図17に示す処理は、水平方向及び垂直方向のそれぞれで実行される。
<Operation>
Next, the operation of the
ステップS201で、選択部250は、変換ブロックと予測ブロックとの境界の両端が一致しているか否かを判定する。両端が一致していれば(ステップS201−YES)ステップS202に進み、1辺が一致する又は両端が一致していなければ(ステップS201−NO)ステップS203に進む。
In step S201, the
ステップS202で、選択部250は、例えば図16に従って、DCT−IIを選択する。選択部250は、選択した直交変換を変換部203に通知する。変換部203は、変換ブロックに対し、DCT−IIの処理を実行する。
In step S202, the
ステップS203で、選択部250は、変換ブロックと予測ブロックとの境界の両端が共に一致していないかを判定する。両端が共に一致していなければ(ステップS203−YES)ステップS204に進み、少なくとも1辺が一致していれば(ステップS203−NO)ステップS205に進む。
In step S203, the
ステップS204で、選択部250は、例えば図16に従って、DST−IIを選択する。選択部250は、選択した直交変換を変換部203に通知する。変換部203は、変換ブロックに対し、DST−IIの処理を実行する。
In step S204, the
ステップS205で、選択部250は、変換ブロックの左辺(または上辺)が予測ブロックの辺と一致するか否かを判定する。変換ブロックの左辺(または上辺)が予測ブロックの辺と一致すれば(ステップS205−YES)ステップS206に進み、変換ブロックの左辺(または上辺)が予測ブロックの辺と一致しなければ(ステップS205−NO)ステップS207に進む。
In step S205, the
ステップS206で、変換部203は、変換ブロックに対し、DCT−IVの処理を実行する。
In step S206, the
ステップS207で、変換部203は、変換ブロックに対し、Flipped DCT−IVの処理を実行する。なお、図16、17のDCT−IVは、DST−VIIを用いてもよい。
In step S207, the
以上、実施例2によれば、インター符号化において、符号化効率を向上させることができる。また、実施例2によれば、変換ブロックと予測ブロックとの位置関係のみに基づいて直交変換を選択することができるので、RD判定を用いる必要がなく、さらに直交変換種別を示す識別情報を付加する必要もない。なお、実施例2における符号化効率は、実施例1とほぼ同等にすることができる。 As described above, according to the second embodiment, encoding efficiency can be improved in inter-coding. Also, according to the second embodiment, since orthogonal transform can be selected based only on the positional relationship between the transform block and the prediction block, it is not necessary to use RD determination, and identification information indicating the orthogonal transform type is added. There is no need to do. Note that the encoding efficiency in the second embodiment can be substantially equal to that in the first embodiment.
[実施例3]
次に、実施例3における画像復号装置30について説明する。実施例3における画像復号装置30は、実施例1や実施例2における画像符号化装置10で符号化されたビットストリームを復号する装置である。
[Example 3]
Next, the
<構成>
図18は、実施例3における画像復号装置30の概略構成の一例を示すブロック図である。図18に示すように、画像復号装置30は、エントロピー復号部301、逆量子化部302、逆直交変換部303、イントラ予測部304、復号情報記憶部305、インター予測部306、予測画像選択部307、復号画像生成部308、ループフィルタ部310、及びフレームメモリ311を有する。各部についての概略を以下に説明する。
<Configuration>
FIG. 18 is a block diagram illustrating an example of a schematic configuration of the
エントロピー復号部301は、ビットストリームが入力されると、画像符号化装置10のエントロピー符号化に対応するエントロピー復号を行う。エントロピー復号部301により復号された予測誤差信号などは逆量子化部302に出力される。また、復号したフィルタ係数や、インター予測されている場合の、復号された動きベクトルなどは復号情報記憶部305に出力される。
When a bit stream is input, the
また、エントロピー復号部301は、イントラ予測の場合、イントラ予測部304にその旨通知する。また、エントロピー復号部301は、復号対象画像がインター予測されているか、イントラ予測されているかを予測画像選択部307に通知する。
In the case of intra prediction, the
逆量子化部302は、エントロピー復号部301からの出力信号に対して逆量子化処理を行う。逆量子化された出力信号は逆直交変換部303に出力される。
The
逆直交変換部303は、逆量子化部302からの出力信号の復号ブロックに対して逆直交変換処理を行い、残差信号を生成する。逆直交変換部303は、インター予測の場合、逆DCT(IDCT)処理をするか、逆DST(IDST)処理をするかを制御する。逆直交変換部303の詳細は、図19を用いて後述する。残差信号は復号画像生成部308に出力される。
The inverse
イントラ予測部304は、フレームメモリ311から取得する復号対象画像のすでに復号化された周辺画素から、複数の予測方向を用いて予測画像を生成する。
The
復号情報記憶部305は、復号されたループフィルタのフィルタ係数や動きベクトルや分割モードなどの復号情報を記憶する。
The decoding
インター予測部306は、フレームメモリ311から取得した参照画像のデータを復号情報記憶部305から取得する動きベクトルや分割モードを用いて動き補償する。これにより、動き補償された参照画像としてのブロックデータが生成される。インター予測部306は、予測ブロックの情報を逆直交変換部303に通知する。
The
予測画像選択部307は、イントラ予測画像、又はインター予測画像どちらか一方の予測画像を選択する。選択されたブロックデータは、復号画像生成部308に出力される。
The predicted
復号画像生成部308は、予測画像選択部307から出力される予測画像と、逆直交変換部303から出力される残差信号とを加算し、復号画像を生成する。生成された復号画像はループフィルタ部310に出力される。
The decoded
ループフィルタ部310は、復号画像生成部308から出力された復号画像に対し、ブロック歪を低減するためのフィルタをかけ、ループフィルタ処理後の復号画像をフレームメモリ311に出力する。なお、ループフィルタ後の復号画像は表示装置などに出力されてもよい。
The
フレームメモリ311は、参照画像となる復号画像などを記憶する。なお、復号情報記憶手段305とフレームメモリ311は、分けた構成にしているが、同じ記憶部であってもよい。
The
<逆直交変換部の構成>
次に、逆直交変換部303の構成について説明する。図19は、実施例3における逆直交変換部303の構成の一例を示すブロック図である。図19に示す逆直交変換部303は、選択部401、逆変換部402を有する。
<Configuration of inverse orthogonal transform unit>
Next, the configuration of the inverse
選択部401は、予測ブロックの情報をインター予測部306から取得し、逆量子化部302から変換ブロックに関する情報を取得する。選択部401は、その他の処理は、図11や図15に示す選択部と同様の機能を有する。なお、選択部401は、直交変換を示す識別情報をエントロピー復号部301から取得した場合は、その識別情報に対応する逆直交変換を選択する。選択部401は、選択した逆直交変換を逆変換部402に通知する。
The
逆変換部402は、逆量子化部302から取得した、変換ブロックの逆量子化された信号に対し、逆直交変換を行う。逆変換部402は、IDCT部403とIDST部404とを有する。
The
IDCT部403は、逆量子化された信号に対し、選択部401により選択された水平方向又は垂直方向のIDCT−II、IDCT−IV又はFlipped IDCT−IVの処理を行い、復号画像生成部308に逆直交変換された信号を出力する。
The
IDST部404は、逆量子化された信号の水平方向又は垂直方向に対し、選択部401により選択されたIDST−II、IDST−VII又はFlipped IDST−VIIの処理を行い、逆直交変換された信号を復号画像生成部308に出力する。
The
これにより、選択部401及び逆直交変換部402は、画像符号化装置10の処理と同様の処理を行うことができる。
Thereby, the
<動作>
画像復号装置30における逆直交変換処理は、基本的には、図14、17に示す処理と同様である。異なるところは、直交変換が逆直交変換になることと、図14のステップS101−NOの後に、直交変換を示す識別情報に基づいてIDCT−II又はIDST−IIが選択されることである。
<Operation>
The inverse orthogonal transform processing in the
以上、実施例3によれば、実施例1や実施例2における画像符号化装置10で符号化されたビットストリームを適切に復号することができる。
As described above, according to the third embodiment, it is possible to appropriately decode the bitstream encoded by the
[実施例4]
図20は、実施例4における画像処理装置50の構成の一例を示すブロック図である。図20に示す画像処理装置50は、上述した実施例1や実施例2で説明した画像符号化処理又は実施例3で説明した画像復号処理をソフトウェアで実装した装置の一例である。
[Example 4]
FIG. 20 is a block diagram illustrating an example of the configuration of the
図20に示すように、画像処理装置50は、制御部501、主記憶部502、補助記憶部503、ドライブ装置504、ネットワークI/F部506、入力部507、表示部508を有する。これら各構成は、バスを介して相互にデータ送受信可能に接続されている。
As illustrated in FIG. 20, the
制御部501は、コンピュータの中で、各装置の制御やデータの演算、加工を行うCPU(Central Processing Unit)である。また、制御部501は、主記憶部502又は補助記憶部503に記憶された直交変換制御処理を含む画像符号化処理のプログラム、又は逆直交変換制御処理を含む画像復号処理のプログラムを実行する演算装置である。制御部501は、入力部507や記憶装置からデータを受け取り、演算、加工した上で、表示部508や記憶装置などに出力する。
The
また、制御部501は、直交変換制御処理を含む画像符号化処理、又は逆直交変換制御処理を含む画像復号処理のプログラムを実行することで、各実施例で説明した処理を実現することができる。
In addition, the
主記憶部502は、ROM(Read Only Memory)やRAM(Random Access Memory)などである。主記憶部502は、制御部501が実行する基本ソフトウェアであるOS(Operating System)やアプリケーションソフトウェアなどのプログラムやデータを記憶又は一時保存する記憶装置である。
The
補助記憶部503は、HDD(Hard Disk Drive)などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。
The
ドライブ装置504は、記録媒体505、例えばフレキシブルディスクからプログラムを読み出し、記憶部にインストールする。
The
また、記録媒体505に、所定のプログラムを格納し、この記録媒体505に格納されたプログラムはドライブ装置504を介して画像処理装置50にインストールされる。インストールされた所定のプログラムは、画像処理装置50により実行可能となる。
A predetermined program is stored in the
ネットワークI/F部506は、有線及び/又は無線回線などのデータ伝送路により構築されたLAN(Local Area Network)、WAN(Wide Area Network)などのネットワークを介して接続された通信機能を有する周辺機器と画像処理装置50とのインターフェースである。
The network I /
入力部507は、カーソルキー、数字入力及び各種機能キー等を備えたキーボード、表示部508の表示画面上でキーの選択等を行うためのマウスやスライドパット等を有する。表示部508は、LCD(Liquid Crystal Display)等により構成され、制御部501から入力される表示データに応じた表示が行われる。
The
なお、図10に示す復号画像記憶部111は、例えば主記憶部502又は補助記憶部503により実現され、図10に示す復号画像記憶部111以外の構成は、例えば制御部501及びワークメモリとしての主記憶部502により実現されうる。
Note that the decoded
また、図18に示す復号情報記憶部305及びフレームメモリ311は、例えば主記憶部502又は補助記憶部503により実現され、図18に示す復号情報記憶部305及びフレームメモリ311以外の構成は、例えば制御部501及びワークメモリとしての主記憶部502により実現されうる。
Further, the decoding
画像処理装置50で実行されるプログラムは、実施例1〜3で説明した各部を含むモジュール構成となっている。実際のハードウェアとしては、制御部501が補助記憶部503からプログラムを読み出して実行することにより上記各部のうち1又は複数の各部が主記憶部502上にロードされ、1又は複数の各部が主記憶部502上に生成されるようになっている。
The program executed by the
このように、上述した実施例1や実施例2で説明した画像符号化処理や実施例3で説明した画像復号処理は、コンピュータに実行させるためのプログラムとして実現されてもよい。このプログラムをサーバ等からインストールしてコンピュータに実行させることで、各実施例で説明した処理を実現することができる。 As described above, the image encoding process described in the first embodiment and the second embodiment and the image decoding process described in the third embodiment may be realized as a program for causing a computer to execute. The processing described in each embodiment can be realized by installing this program from a server or the like and causing the computer to execute the program.
また、このプログラムを記録媒体505に記録し、このプログラムが記録された記録媒体505をコンピュータや携帯端末に読み取らせて、前述した処理を実現させることも可能である。なお、記録媒体505は、CD−ROM、フレキシブルディスク、光磁気ディスク等の様に情報を光学的,電気的或いは磁気的に記録する記録媒体、ROM、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。また、上述した各実施例で説明した処理は、1つ又は複数の集積回路に実装してもよい。
It is also possible to record the program on the
なお、実施例4における画像処理装置50は、上記の通り、画像符号化装置10、画像復号装置30としての機能を有する。
Note that the
以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、上記変形例以外にも種々の変形及び変更が可能である。 Each embodiment has been described in detail above. However, the present invention is not limited to the specific embodiment, and various modifications and changes other than the above-described modification are possible within the scope described in the claims. .
10 画像符号化装置
30 画像復号装置
50 画像処理装置
101 予測画像生成部
102 直交変換部
103 量子化部
104 エントロピー符号化部
105 逆量子化部
106 逆直交変換部
107 復号画像生成部
109 ループフィルタ部
110 復号画像記憶部
111 イントラ予測部
112 インター予測部
113 動きベクトル計算部
115 予測画像選択部
201、250 選択部
202 コスト算出部
203 変換部
204 設定部
303 逆直交変換部
401 選択部
402 逆変換部
501 制御部
502 主記憶部
503 補助記憶部
504 ドライブ装置
DESCRIPTION OF
Claims (5)
前記符号化ブロックが階層分割により1又は複数に分割された変換ブロックと、前記予測ブロックとの位置関係に基づいて、水平方向及び垂直方向それぞれで、前記変換ブロックの対向する両辺が前記予測ブロックの辺と一致する場合はDCT−IIを選択し、前記変換ブロックの1辺が前記予測ブロックの辺と一致する場合はDCT−IV、Flipped DCT−IV、DST−VII、又はFlipped DST−VIIのいずれかを選択し、前記変換ブロックの対向する両辺共が前記予測ブロックの辺と一致しない場合はDST−II及びDCT−IIを選択する選択部と、
前記選択部により選択された水平方向の直交変換及び垂直方向の直交変換を、それぞれの方向で行う変換部と、
前記変換ブロックの対向する両辺共が前記予測ブロックの辺と一致せず、前記変換部によりDST−II及びDCT−IIが行われた場合、DST−II及びDCT−IIの直交変換の符号化コストをRD最適化法を用いて算出し、該符号化コストが最も小さい直交変換を選択するコスト算出部と、
を備える画像符号化装置。 An image encoding device that encodes an image using inter-frame prediction with a prediction block having a size equal to or smaller than the encoded block for an encoded block obtained by dividing an image into a plurality of blocks,
Based on the positional relationship between the prediction block and the transform block obtained by dividing the coding block into one or more by hierarchical partitioning, both sides of the transform block facing each other in the horizontal direction and the vertical direction are the prediction block. DCT-II is selected when it coincides with an edge, and DCT-IV, Flipped DCT-IV, DST-VII, or Flipped DST-VII is selected when one edge of the transform block coincides with an edge of the prediction block. A selection unit that selects DST-II and DCT-II when both opposing sides of the transform block do not coincide with the sides of the prediction block;
A conversion unit that performs the orthogonal transformation in the horizontal direction and the orthogonal transformation in the vertical direction selected by the selection unit in each direction;
When the opposite sides of the transform block do not coincide with the sides of the prediction block and DST-II and DCT-II are performed by the transform unit, the coding cost of the orthogonal transform of DST-II and DCT-II A cost calculation unit that calculates an orthogonal transform using the RD optimization method, and selects the orthogonal transform with the lowest coding cost;
An image encoding device comprising:
前記選択部は、
前記第1モードが設定された場合、前記変換ブロックの1辺が前記予測ブロックの辺と一致するときはDCT−IV又はFlipped DCT−IVを選択し、
前記第2モードが設定された場合、前記変換ブロックの1辺が前記予測ブロックの辺と一致するときはDST−VII又はFlipped DST−VIIを選択する請求項1記載の画像符号化装置。 A setting unit that sets either the first mode that prioritizes implementation or the second mode that prioritizes performance;
The selection unit includes:
When the first mode is set, when one side of the transform block matches the side of the prediction block, select DCT-IV or Flipped DCT-IV,
The image coding apparatus according to claim 1, wherein when the second mode is set, DST-VII or Flipped DST-VII is selected when one side of the transform block coincides with a side of the prediction block.
前記符号化ブロックが階層分割により1又は複数に分割された変換ブロックと、前記予測ブロックとの位置関係に基づいて、前記変換ブロックの対向する両辺が前記予測ブロックの辺と一致する場合はDCT−IIを選択し、前記変換ブロックの1辺が前記予測ブロックの辺と一致する場合はDCT−IV、Flipped DCT−IV、DST−VII、又はFlipped DST−VIIのいずれかを選択し、前記変換ブロックの対向する両辺共が前記予測ブロックの辺と一致しない場合はDST−II及びDCT−IIを選択する選択ステップと、
前記選択ステップにより選択された水平方向の直交変換及び垂直方向の直交変換を、それぞれの方向で行う変換ステップと、
前記変換ブロックの対向する両辺共が前記予測ブロックの辺と一致せず、前記変換ステップによりDST−II及びDCT−IIが行われた場合、DST−II及びDCT−IIの直交変換の符号化コストをRD最適化法を用いて算出し、該符号化コストが最も小さい直交変換を選択するコスト算出ステップと、
を実行させるためのプログラム。 For a coding block in which an image is divided into a plurality of images, a computer that encodes the image using inter-screen prediction with a prediction block having a size equal to or smaller than the coding block,
When both sides facing each other of the transform block coincide with the sides of the prediction block based on the positional relationship between the prediction block and the transform block obtained by dividing the coding block into one or a plurality by hierarchical partitioning, DCT- II, and when one side of the transform block coincides with the side of the prediction block, DCT-IV, Flipped DCT-IV, DST-VII, or Flipped DST-VII is selected, and the transform block A selection step of selecting DST-II and DCT-II if both opposing sides of do not match the sides of the prediction block;
A conversion step of performing the orthogonal transformation in the horizontal direction and the orthogonal transformation in the vertical direction selected in the selection step in each direction;
When the opposite sides of the transform block do not coincide with the sides of the prediction block and DST-II and DCT-II are performed by the transform step, the coding cost of the orthogonal transform of DST-II and DCT-II Calculating using the RD optimization method and selecting an orthogonal transform with the lowest coding cost;
A program for running
前記ストリームをエントロピー復号する復号部と、
前記復号部により復号された前記変換ブロックと、画面内予測時に用いられた予測ブロックとの位置関係に基づいて、水平方向及び垂直方向それぞれで、前記変換ブロックの対向する両辺が前記予測ブロックの辺と一致する場合はIDCT−IIを選択し、前記変換ブロックの1辺が前記予測ブロックの辺と一致する場合はIDCT−IV、Flipped IDCT−IV、IDST−VII、又はFlipped IDST−VIIのいずれかを選択し、前記変換ブロックの対向する両辺共が前記予測ブロックの辺と一致しない場合は前記ストリームに含まれる直交変換を示す識別情報に基づきIDST−II又はIDCT−IIを選択する選択部と、
前記選択部により選択された水平方向の逆直交変換及び垂直方向の逆直交変換を、それぞれの方向で行う逆変換部と、
を備える画像復号装置。 An image decoding device for decoding a stream encoded by the image encoding device according to claim 1 or 2,
A decoding unit for entropy decoding the stream;
Based on the positional relationship between the transform block decoded by the decoding unit and the prediction block used during intra prediction, both sides of the transform block facing each other in the horizontal direction and the vertical direction are sides of the prediction block. IDCT-II is selected if it matches, and if one side of the transform block matches the side of the prediction block, one of IDCT-IV, Flipped IDCT-IV, IDST-VII, or Flipped IDST-VII A selection unit that selects IDST-II or IDCT-II based on identification information indicating orthogonal transformation included in the stream when both opposing sides of the transformation block do not match the sides of the prediction block;
An inverse transform unit for performing the inverse orthogonal transform in the horizontal direction and the inverse orthogonal transform in the vertical direction selected by the selection unit in each direction;
An image decoding apparatus comprising:
前記ストリームをエントロピー復号する復号ステップと、
復号された前記変換ブロックと、画面内予測時に用いられた予測ブロックとの位置関係に基づいて、水平方向及び垂直方向それぞれで、前記変換ブロックの対向する両辺が前記予測ブロックの辺と一致する場合はIDCT−IIを選択し、前記変換ブロックの1辺が前記予測ブロックの辺と一致する場合はIDCT−IV、Flipped IDCT−IV、IDST−VII、又はFlipped IDST−VIIのいずれかを選択し、前記変換ブロックの対向する両辺共が前記予測ブロックの辺と一致しない場合は前記ストリームに含まれる直交変換を示す識別情報に基づきIDST−II又はIDCT−IIを選択する選択ステップと、
前記選択ステップにより選択された水平方向の逆直交変換及び垂直方向の逆直交変換を、それぞれの方向で行う逆変換ステップと、
を実行させるためのプログラム。 A computer for decoding a stream encoded by the image encoding device according to claim 1 or 2,
A decoding step for entropy decoding the stream;
When opposite sides of the transform block coincide with the sides of the prediction block in the horizontal direction and the vertical direction based on the positional relationship between the decoded transform block and the prediction block used at the time of intra prediction. Select IDCT-II, and if one side of the transform block matches the side of the prediction block, select either IDCT-IV, Flipped IDCT-IV, IDST-VII, or Flipped IDST-VII, A selection step of selecting IDST-II or IDCT-II based on identification information indicating orthogonal transformation included in the stream when both opposing sides of the transform block do not coincide with sides of the prediction block;
An inverse transform step for performing the horizontal inverse orthogonal transform and the vertical inverse orthogonal transform selected in the selection step in respective directions;
A program for running
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012175347A JP2014036278A (en) | 2012-08-07 | 2012-08-07 | Image encoder, image decoder and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012175347A JP2014036278A (en) | 2012-08-07 | 2012-08-07 | Image encoder, image decoder and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014036278A true JP2014036278A (en) | 2014-02-24 |
Family
ID=50285023
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012175347A Pending JP2014036278A (en) | 2012-08-07 | 2012-08-07 | Image encoder, image decoder and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014036278A (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108028927A (en) * | 2015-08-20 | 2018-05-11 | 日本放送协会 | Picture coding device, picture decoding apparatus and its program |
CN109788291A (en) * | 2019-02-12 | 2019-05-21 | 北京大学 | A kind of digital video transform method, device, equipment and storage medium |
WO2019111316A1 (en) * | 2017-12-05 | 2019-06-13 | 株式会社ソシオネクスト | Coding method, decoding method, coding device, decoding device, coding program and decoding program |
WO2019188467A1 (en) * | 2018-03-30 | 2019-10-03 | ソニー株式会社 | Image processing device and method |
WO2019203068A1 (en) * | 2018-04-17 | 2019-10-24 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | Encoding device, decoding device, encoding method, and decoding method |
CN110392256A (en) * | 2019-03-09 | 2019-10-29 | 杭州海康威视数字技术股份有限公司 | Method, coding side, decoding end and the system coded and decoded |
JP2019535928A (en) * | 2016-11-16 | 2019-12-12 | ウィンク・ロボティクス | Eyelash evaluation method and apparatus |
WO2020066641A1 (en) * | 2018-09-25 | 2020-04-02 | ソニー株式会社 | Image processing device and method |
CN112567743A (en) * | 2018-08-15 | 2021-03-26 | 日本放送协会 | Image encoding device, image decoding device, and program |
CN115499647A (en) * | 2022-09-20 | 2022-12-20 | 阿里巴巴(中国)有限公司 | Multi-transform kernel selection method, encoding and decoding method, electronic device, and storage medium |
-
2012
- 2012-08-07 JP JP2012175347A patent/JP2014036278A/en active Pending
Non-Patent Citations (2)
Title |
---|
JPN6016026422; Jicheng An(外3名): 'Non-CE7: Boundary-Dependent Transform for Inter-Predicted Residue' Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 JCTVC , 20111130, p.1-11, ITU-T * |
JPN6016026426; 市ヶ谷敦郎(外2名): 'DCTとDSTを適応的に用いたインター符号化' 映像情報メディア学会技術報告 Vol.36, No.9, 20120213, p.213-218, (社)映像情報メディア学会 * |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108028927A (en) * | 2015-08-20 | 2018-05-11 | 日本放送协会 | Picture coding device, picture decoding apparatus and its program |
JP2021180492A (en) * | 2015-08-20 | 2021-11-18 | 日本放送協会 | Image decoding device and image decoding method |
US10681346B2 (en) | 2015-08-20 | 2020-06-09 | Nippon Hoso Kyokai | Image encoding device, image decoding device, and program thereof |
JP2019106742A (en) * | 2015-08-20 | 2019-06-27 | 日本放送協会 | Image encoding device, image decoding device, and programs for the same |
US11843766B2 (en) | 2015-08-20 | 2023-12-12 | Nippon Hoso Kyokai | Image encoding device, image decoding device, and program thereof |
JP7242768B2 (en) | 2015-08-20 | 2023-03-20 | 日本放送協会 | Image decoding device and image decoding method |
JP7445799B2 (en) | 2015-08-20 | 2024-03-07 | 日本放送協会 | Image decoding device and image decoding method |
US11744348B2 (en) | 2016-11-16 | 2023-09-05 | Wink Robotics | Method and device for evaluation of eye hairs |
JP2019535928A (en) * | 2016-11-16 | 2019-12-12 | ウィンク・ロボティクス | Eyelash evaluation method and apparatus |
JP7118080B2 (en) | 2016-11-16 | 2022-08-15 | ウィンク・ロボティクス | Eyelash evaluation method and apparatus |
WO2019111316A1 (en) * | 2017-12-05 | 2019-06-13 | 株式会社ソシオネクスト | Coding method, decoding method, coding device, decoding device, coding program and decoding program |
JPWO2019111316A1 (en) * | 2017-12-05 | 2020-11-26 | 株式会社ソシオネクスト | Coding method, decoding method, coding device, decoding device, coding program and decoding program |
JP7036123B2 (en) | 2017-12-05 | 2022-03-15 | 株式会社ソシオネクスト | Coding method, decoding method, coding device, decoding device, coding program and decoding program |
US11025911B2 (en) | 2017-12-05 | 2021-06-01 | Socionext Inc. | Encoding method, decoding method, encoding device, and decoding device |
CN111937398A (en) * | 2018-03-30 | 2020-11-13 | 索尼公司 | Image processing apparatus and method |
US11336919B2 (en) | 2018-03-30 | 2022-05-17 | Sony Corporation | Image processing apparatus and method |
WO2019188467A1 (en) * | 2018-03-30 | 2019-10-03 | ソニー株式会社 | Image processing device and method |
WO2019203068A1 (en) * | 2018-04-17 | 2019-10-24 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | Encoding device, decoding device, encoding method, and decoding method |
CN112567743A (en) * | 2018-08-15 | 2021-03-26 | 日本放送协会 | Image encoding device, image decoding device, and program |
CN112567743B (en) * | 2018-08-15 | 2024-09-06 | 日本放送协会 | Image encoding device, image decoding device, and program |
WO2020066641A1 (en) * | 2018-09-25 | 2020-04-02 | ソニー株式会社 | Image processing device and method |
CN109788291A (en) * | 2019-02-12 | 2019-05-21 | 北京大学 | A kind of digital video transform method, device, equipment and storage medium |
CN110392256A (en) * | 2019-03-09 | 2019-10-29 | 杭州海康威视数字技术股份有限公司 | Method, coding side, decoding end and the system coded and decoded |
US11825082B2 (en) | 2019-03-09 | 2023-11-21 | Hangzhou Hikvision Digital Technology Co., Ltd. | Coding and decoding methods, coding and decoding device |
CN115499647A (en) * | 2022-09-20 | 2022-12-20 | 阿里巴巴(中国)有限公司 | Multi-transform kernel selection method, encoding and decoding method, electronic device, and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6851450B2 (en) | Video encoding methods, video decoding methods, video encoders, and video decoders | |
Han et al. | A technical overview of AV1 | |
JP2014036278A (en) | Image encoder, image decoder and program | |
JP2014045434A (en) | Image encoder, image decoder and programs thereof | |
KR102052290B1 (en) | Deriving reference mode values and encoding and decoding information representing prediction modes | |
US10575023B2 (en) | Adaptive unequal weight planar prediction | |
TWI632805B (en) | Video decoding method, video encoding method, video decoding apparatus,video encoding apparatus and non-transitory computer-readable storage medium | |
KR20200027013A (en) | Intra mode JVET coding | |
KR102625314B1 (en) | Inter prediction concept using tile independence constraints | |
US20120300849A1 (en) | Encoder apparatus, decoder apparatus, and data structure | |
US11259014B2 (en) | Inter prediction in geometric partitioning with an adaptive number of regions | |
JP2022502899A (en) | Video signal coding / decoding method and equipment for that | |
JP5677576B2 (en) | Video decoding method and video encoding method | |
JP2014096638A (en) | Image encoder, image encoding method, image encoding program, image decoder, image decoding method and image decoding program | |
CN111955006B (en) | Method and apparatus for intra prediction using a composite reference array | |
TW202032995A (en) | Encoding and decoding a picture | |
JP5937926B2 (en) | Image encoding device, image decoding device, image encoding program, and image decoding program | |
JP2017028372A (en) | Coding scheme conversion device, method and program | |
JP2013102305A (en) | Image decoder, image decoding method, program and image encoder | |
JP5789172B2 (en) | Image processing apparatus and program | |
KR101525325B1 (en) | Intra prediction mode determination method and apparatus | |
JP5957513B2 (en) | Video decoding method | |
JP6101067B2 (en) | Image processing apparatus and image processing program | |
JP2013098970A (en) | Image decoding apparatus, inverse orthogonal conversion method, program and image coding apparatus | |
TW202137761A (en) | Coding concepts for a transformed representation of a sample block |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150701 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160610 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160712 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20170404 |