WO2013108634A1 - 画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに画像復号装置、画像復号方法及び画像復号プログラム - Google Patents

画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに画像復号装置、画像復号方法及び画像復号プログラム Download PDF

Info

Publication number
WO2013108634A1
WO2013108634A1 PCT/JP2013/000232 JP2013000232W WO2013108634A1 WO 2013108634 A1 WO2013108634 A1 WO 2013108634A1 JP 2013000232 W JP2013000232 W JP 2013000232W WO 2013108634 A1 WO2013108634 A1 WO 2013108634A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
signal
color difference
image
encoding
Prior art date
Application number
PCT/JP2013/000232
Other languages
English (en)
French (fr)
Inventor
博哉 中村
福島 茂
Original Assignee
株式会社Jvcケンウッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社Jvcケンウッド filed Critical 株式会社Jvcケンウッド
Priority claimed from JP2013007258A external-priority patent/JP2013168932A/ja
Priority claimed from JP2013007257A external-priority patent/JP2013168931A/ja
Publication of WO2013108634A1 publication Critical patent/WO2013108634A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Definitions

  • the present invention relates to an image encoding and decoding technique, and more particularly to an image encoding and decoding technique using orthogonal transformation.
  • MPEG-4 AVC / H.3 is a typical video compression encoding system.
  • MPEG-4 AVC / H.2 encoding is performed in units of macro blocks obtained by dividing a picture into a plurality of rectangular blocks.
  • the size of the macroblock is defined as 16 ⁇ 16 pixels in the luminance signal regardless of the image size.
  • the macro block includes a color difference signal, but the size of the color difference signal included in the macro block differs depending on the color difference format of the image to be encoded.
  • the color difference format is 4: 2: 0
  • the color difference signal is 8 ⁇ .
  • 8 pixels and the color difference format is 4: 2: 2 2
  • the color difference signal is 8 ⁇ 16 pixels
  • when the color difference format is 4: 4: 4: 4: 4 the color difference signal is 16 ⁇ 16 pixels.
  • the color difference format represents the ratio of the number of sampled pixels of three signals of one luminance information and two color difference information as X: Y: Z. MPEG-4 AVC / H.
  • the color difference format of an image to be encoded and decoded in H.264 is 4: 2: 0, 4: 2: 2, 4: 4: 4, and monochrome.
  • FIG. 3 is a diagram for explaining each color difference format of an image.
  • X indicates the position of the pixel of the luminance signal on the picture plane of the image
  • indicates the position of the pixel of the color difference signal.
  • 4: 2: 0 shown in FIG. 3A is a color difference format in which a color difference signal is sampled at a density of 1/2 in both horizontal and vertical directions with respect to a luminance signal.
  • the color difference signal may be sampled at the position shown in FIG. 4: 2: 2 shown in FIG. 3B is a color difference format in which the color difference signal is sampled with a density of 1/2 in the horizontal direction and the same density in the vertical direction with respect to the luminance signal.
  • 4: 4: 4 shown in FIG. 3C is a color difference format in which both the luminance signal and the color difference signal are sampled at the same density.
  • Monochrome shown in FIG. 3D is a color difference format having only a luminance signal without a color difference signal.
  • the luminance signal and the color difference signal are encoded and decoded as a set in order to share encoding information such as motion compensation.
  • 4: 4: 4 one luminance signal and two color difference signals are independently used.
  • AVC / H In the H.264 system, a method of predicting from already encoded / decoded blocks in an encoding / decoding target picture is used. This method is called intra prediction. In addition, motion compensation that predicts motion from a reference picture using a picture that has already been encoded / decoded as a reference picture is used. A technique for predicting motion by this motion compensation is called inter prediction.
  • a prediction signal that has been intra-predicted or inter-predicted is subtracted from an image signal to be encoded to generate a residual signal, and the residual signal is orthogonally transformed and quantized to reduce the amount of code.
  • the luminance signal either orthogonal transformation in units of 4 ⁇ 4 pixels or orthogonal transformation in units of 8 ⁇ 8 pixels can be selected according to the frequency characteristics of the image signal in the spatial direction.
  • orthogonal transformation in units of 4 ⁇ 4 pixels is used.
  • the luminance signal and the color difference signal are orthogonally transformed, and at this time, only one of the orthogonal transformation in units of 4 ⁇ 4 pixels and the orthogonal transformation in units of 8 ⁇ 8 pixels is selected. Efficiency can be poor.
  • the present invention has been made in view of such circumstances, and an object of the present invention is to efficiently convert an image signal by orthogonal transformation of a luminance signal and a color difference signal in accordance with an image signal (especially frequency characteristics in the spatial direction of the image signal) and a color difference format.
  • An object of the present invention is to provide an image encoding technique that can be encoded well and an image decoding technique corresponding to the encoding technique.
  • an image encoding device that encodes an image signal including a luminance signal and a color difference signal in units of blocks, and encodes the luminance signal.
  • Each of the block and the chrominance signal encoding block is one or more transform blocks having a predetermined shape, and an orthogonal transform unit (107) that orthogonally transforms the luminance signal transform block and the chrominance signal transform block, and the orthogonal transform And a coded sequence generator (114) that encodes the converted luminance signal conversion block and the color difference signal conversion block to generate a coded bit sequence.
  • This apparatus is an image encoding apparatus that encodes an image signal including a luminance signal and a color difference signal in units of blocks, and information indicating a division method when dividing an encoded block into transform blocks for orthogonal transformation
  • An encoding method determining unit (105) that determines a division pattern of the encoding block of the chrominance signal
  • an orthogonal transformation unit (107) that orthogonally transforms the luminance signal conversion block and the chrominance signal conversion block
  • a coded sequence generator (114) for coding a luminance signal conversion block and a color difference signal conversion block after orthogonal transformation to generate a coded bit sequence.
  • the information indicating the division method when the coding block is divided into transform blocks for orthogonal transformation is the division shape when the coding block is divided into transform blocks for orthogonal transformation, particularly the vertical and horizontal division ratios. Also good.
  • Still another aspect of the present invention is an image encoding method.
  • This method is an image encoding method for encoding an image signal including a luminance signal and a color difference signal in units of blocks, and each of the luminance signal encoding block and the color difference signal encoding block has a predetermined shape.
  • An orthogonal transform step for orthogonally transforming a luminance signal transform block and a color difference signal transform block into one or more transform blocks, and encoding and encoding the orthogonally transformed luminance signal transform block and the color difference signal transform block
  • An encoded sequence generation step for generating an encoded bit sequence.
  • An image decoding apparatus is an image decoding apparatus that decodes an image signal including a luminance signal and a color difference signal in units of blocks, and each of an encoding block of a luminance signal and an encoding block of a color difference signal
  • An inverse orthogonal transform unit (208) configured to perform inverse orthogonal transform between the luminance signal conversion block and the color difference signal conversion block as one or more conversion blocks having a predetermined shape; and the luminance signal conversion block subjected to the inverse orthogonal transform;
  • a decoded image signal superimposing unit (209) that generates a decoded image by superimposing a prediction signal on a residual signal obtained by decoding the color difference signal conversion block.
  • This device is an image decoding device that decodes an image signal including a luminance signal and a color difference signal in units of blocks, and corresponds to information indicating a division method when dividing an encoded block into transform blocks for orthogonal transformation. Then, the division pattern of the coding block of the chrominance signal is determined, and the inverse orthogonal transformation unit (208) that performs inverse orthogonal transformation between the luminance signal conversion block and the chrominance signal conversion block, and the luminance signal conversion after the inverse orthogonal transformation A decoded image signal superimposing unit (209) that generates a decoded image by superimposing a prediction signal on a residual signal obtained by decoding the block and the color difference signal conversion block.
  • the information indicating the division method when the coding block is divided into transform blocks for orthogonal transformation is the division shape when the coding block is divided into transform blocks for orthogonal transformation, particularly the vertical and horizontal division ratios. Also good.
  • Still another aspect of the present invention is an image decoding method.
  • This method is an image decoding method for decoding an image signal including a luminance signal and a color difference signal in units of blocks, and each of the luminance signal encoding block and the color difference signal encoding block has one or more predetermined shapes.
  • the inverse orthogonal transform step for inverse orthogonal transform of the luminance signal transform block and the color difference signal transform block, and the inverse orthogonal transform luminance signal transform block and the color difference signal transform block are decoded.
  • an image signal can be efficiently encoded.
  • AVC / H It is a figure explaining the unit which switches the intra prediction mode of H.264 system.
  • AVC / H It is a figure explaining the unit which performs inter prediction of H.264 system.
  • coding in particular, in units of blocks obtained by dividing a picture into rectangles having an arbitrary size and shape, coding has already been coded and decoded, and decoding has been decoded (hereinafter decoded).
  • decoded in units of blocks obtained by dividing a picture into rectangles having an arbitrary size and shape, coding has already been coded and decoded, and decoding has been decoded (hereinafter decoded).
  • the amount of code is reduced by using intra prediction in which prediction is performed from the pixel values of the surrounding blocks and inter prediction by motion compensation from already decoded pictures.
  • the color difference format of an image to be encoded and decoded is AVC / H.
  • the description regarding the color difference signal the description in the case of monochrome is omitted.
  • the method of independently encoding the luminance signal and the color difference signal at 4: 4: 4 is assumed to be monochrome.
  • the picture is equally divided into square units of any same size.
  • This unit is defined as a tree block, and is an encoding / decoding target block in a picture (an encoding target block in the encoding process and a decoding target block in the decoding process.
  • a basic unit of address management for specifying is used as a basic unit of address management for specifying.
  • the tree block is composed of one luminance signal and two color difference signals.
  • the size of the tree block can be freely set to a power of 2 depending on the picture size and the texture in the picture.
  • the tree block recursively divides the luminance signal and chrominance signal in the tree block as necessary according to the texture in the picture into four parts (vertically and horizontally), if necessary. Small blocks can be made.
  • Each block is defined as a coding block, and is a basic unit of processing when performing coding and decoding. Except for monochrome, the coding block is also composed of one luminance signal and two color difference signals.
  • the maximum size of the coding block is the same as the size of the tree block.
  • An encoded block having the minimum size of the encoded block is called a minimum encoded block, and can be freely set to a power of 2.
  • the coding block A is a single coding block without dividing the tree block.
  • the encoding block B is an encoding block formed by dividing a tree block into four.
  • the coding block C is a coding block obtained by further dividing the block obtained by dividing the tree block into four.
  • the coding block D is a coding block formed by further recursively dividing the block obtained by dividing the tree block into four parts twice, and is a coding block of the minimum size.
  • the color difference format is 4: 2: 0, the size of the tree block is set to 64 ⁇ 64 pixels for the luminance signal, and 32 ⁇ 32 pixels for the color difference signal, and the minimum coding block size is set.
  • the luminance signal is set to 8 ⁇ 8 pixels, and the color difference signal is set to 4 ⁇ 4 pixels.
  • the size of the coding block A is 64 ⁇ 64 pixels for the luminance signal and 32 ⁇ 32 pixels for the color difference signal
  • the size of the coding block B is 32 ⁇ 32 pixels for the luminance signal and 16 ⁇ 16 pixels for the color difference signal.
  • the size of the coding block C is 16 ⁇ 16 pixels for the luminance signal and 8 ⁇ 8 pixels for the color difference signal
  • the size of the coding block D is 8 ⁇ 8 pixels for the luminance signal and 4 ⁇ 4 pixels for the color difference signal.
  • the color difference format is 4: 4: 4
  • the size of the luminance signal and the color difference signal of each coding block is equal.
  • the size of the coding block A is 32 ⁇ 64 pixels for the color difference signal
  • the size of the coding block B is 16 ⁇ 32 pixels for the color difference signal
  • the size of the coding block C is The color difference signal is 8 ⁇ 16 pixels
  • the size of the coding block D which is the smallest coding block, is 4 ⁇ 8 pixels.
  • (About prediction mode) Encoded / decoded in the picture to be encoded / decoded in units of coding blocks (in the encoding process, the encoded signal is used for a decoded picture, a prediction block, an image signal, etc., and the decoded picture in the decoding process) This is used for prediction blocks, image signals, etc. Hereinafter, unless otherwise noted, it is used in this sense.)
  • Intra prediction (MODE_INTRA) in which prediction is performed from surrounding image signals, and image signals of encoded / decoded pictures Switch inter prediction (MODE_INTER) to perform prediction.
  • a mode for identifying the intra prediction (MODE_INTRA) and the inter prediction (MODE_INTER) is defined as a prediction mode (PredMode).
  • the prediction mode (PredMode) has intra prediction (MODE_INTRA) or inter prediction (MODE_INTER) as a value, and can be selected and encoded.
  • PartMode A mode for identifying the division method of the luminance signal and the color difference signal of the coding block is defined as a division mode (PartMode). Further, a block divided as necessary is defined as a prediction block. As shown in FIG. 7, eight types of partition modes (PartMode) are defined according to the method of dividing the luminance signal of the coding block.
  • PartMode A partition mode (PartMode) that is regarded as one prediction block without dividing the luminance signal of the coding block shown in FIG. 7A is defined as 2N ⁇ 2N partition (PART_2Nx2N).
  • the division modes (PartMode) for dividing the luminance signal of the coding block shown in FIGS. 7B, 7C, and 7D into two prediction blocks arranged vertically are 2N ⁇ N division (PART_2NxN) and 2N ⁇ nU, respectively. It is defined as division (PART_2NxnU) and 2N ⁇ nD division (PART_2NxnD).
  • 2N ⁇ N division (PART_2NxN) is a division mode divided up and down at a ratio of 1: 1
  • 2N ⁇ nU division (PART_2NxnU) is a division mode divided up and down at a ratio of 1: 3 and 2N ⁇
  • the nD division (PART_2NxnD) is a division mode in which division is performed at a ratio of 3: 1 up and down.
  • the division modes (PartMode) for dividing the luminance signal of the coding block shown in FIGS. 7 (e), (f), and (g) into two prediction blocks arranged on the left and right are divided into N ⁇ 2N divisions (PART_Nx2N) and nL ⁇ 2N, respectively.
  • N ⁇ 2N division (PART_Nx2N) is a division mode in which left and right are divided at a ratio of 1: 1
  • nL ⁇ 2N division (PART_nLx2N) is a division mode in which division is performed at a ratio of 1: 3 in the left and right
  • nR ⁇ 2N division (PART_nRx2N) is a division mode in which the image is divided in the ratio of 3: 1 to the left and right.
  • the division mode (PartMode) in which the luminance signal of the coding block shown in FIG. 7 (h) is divided into four parts in the vertical and horizontal directions and defined as four prediction blocks is defined as N ⁇ N division (PART_NxN).
  • the color difference signal is also divided in the same manner as the vertical and horizontal division ratios of the luminance signal for each division mode (PartMode).
  • a number starting from 0 is assigned to the prediction block existing inside the coding block in the coding order. This number is defined as a split index PartIdx.
  • a number described in each prediction block of the encoded block in FIG. 7 represents a partition index PartIdx of the prediction block.
  • the partition index PartIdx of the upper prediction block is set to 0.
  • the partition index PartIdx of the lower prediction block is set to 1.
  • the partition index PartIdx of the left prediction block is set to 0.
  • the division index PartIdx of the right prediction block is set to 1.
  • the partition index PartIdx of the upper left prediction block is 0, the partition index PartIdx of the upper right prediction block is 1, and the partition index PartIdx of the lower left prediction block is 2.
  • the division index PartIdx of the prediction block at the lower right is set to 3.
  • the partition mode (PartMode) is 2N ⁇ 2N partition (PART_2Nx2N), 2N ⁇ N partition (PART_2NxN), 2N ⁇ nU partition (PART_2NxnU), 2N ⁇ nD partition (PART_2NxnD) , N ⁇ 2N partition (PART_Nx2N), nL ⁇ 2N partition (PART_nLx2N), and nR ⁇ 2N partition (PART_nRx2N).
  • coding block D which is the smallest coding block, has a partition mode (PartMode) of 2N ⁇ 2N partition (PART_2Nx2N), 2N ⁇ N partition (PART_2NxN), 2N ⁇ nU partition (PART_2NxnU), 2N ⁇ nD partition (PART_2NxnD)
  • PartMode partition mode of 2N ⁇ 2N partition
  • PART_2NxN 2N ⁇ N partition
  • PART_2NxN 2N ⁇ N partition
  • PART_2NxN 2N ⁇ N partition
  • PART_nLx2N nL ⁇ 2N partition
  • PART_nRx2N nR ⁇ 2N partition
  • N ⁇ N partition (PART_NxN) is defined.
  • the reason why N ⁇ N division (PART_NxN) is not defined other than the smallest coding block is that, except for the smallest coding block, the coding block can be divided into four to represent
  • the division mode (PartMode) is 2N ⁇ 2N division except for the coding block D (8 ⁇ 8 pixels in the present embodiment as a luminance signal) which is the smallest coding block. Only (PART_2Nx2N) is defined, and only the coding block D, which is the smallest coding block, defines the N ⁇ N partition (PART_NxN) in addition to the 2N ⁇ 2N partition (PART_2Nx2N) as the partition mode (PartMode).
  • the reason why N ⁇ N division (PART_NxN) is not defined other than the smallest coding block is that, except for the smallest coding block, the coding block can be divided into four to represent a small coding block.
  • FIG. 8 is an explanatory diagram of the value of the intra prediction mode and the prediction direction defined in this embodiment.
  • the direction indicated by the solid arrow indicates the prediction direction of intra prediction, that is, the direction referred to by intra prediction, and intra prediction of the pixel at the start point of the arrow is performed with reference to the decoded pixel in the direction indicated by the arrow of the adjacent block. .
  • the number indicates the value of the intra prediction mode.
  • intra prediction mode intraPredMode 3
  • the intra prediction mode is prepared for each of the luminance signal and the color difference signal, and the intra prediction mode for the luminance signal is defined as the intra luminance prediction mode, and the intra prediction mode for the color difference signal is defined as the intra color difference prediction mode.
  • the intra luminance prediction mode when it is determined that the encoding side can predict from the intra luminance prediction mode of the surrounding block using the correlation with the intra luminance prediction mode of the surrounding block. If it is determined that it is better to set a different value for the intra luminance prediction mode than the information for identifying the block to be referenced and predict from the intra luminance prediction mode of the neighboring blocks, the intra luminance prediction mode is further set.
  • a mechanism for encoding or decoding the value of is used.
  • the intra luminance prediction mode is used on the encoding side by utilizing the correlation with the intra luminance prediction mode of the prediction block of the luminance signal at the same position as the prediction block of the chrominance signal. It is better to predict the value of the intra color difference prediction mode from the value of the intra luminance prediction mode and to set a unique value for the intra color difference prediction mode than to predict from the intra luminance prediction mode.
  • a mechanism for encoding or decoding the value of the intra color difference prediction mode is used. By predicting the intra color difference prediction mode from the intra luminance prediction mode, the amount of code to be transmitted can be reduced.
  • the code amount is reduced by using orthogonal transform such as DCT (Discrete Cosine Transform), DST (Discrete Sine Transform), etc. that transforms a discrete signal into the frequency domain and its inverse transform.
  • orthogonal transform such as DCT (Discrete Cosine Transform), DST (Discrete Sine Transform), etc. that transforms a discrete signal into the frequency domain and its inverse transform.
  • the encoded block divides the luminance signal and the color difference signal in the encoded block according to the rules described later, if necessary, in small blocks, Conversion or inverse conversion can be performed.
  • a block to be subjected to orthogonal transformation or inverse orthogonal transformation divided as necessary is defined as a transformation block.
  • the position of each block including the tree block, the encoding block, the prediction block, and the transform block of the present embodiment has the position of the pixel of the luminance signal at the upper left of the luminance signal picture as the origin (0, 0).
  • the pixel position of the upper left luminance signal included in each block area is represented by two-dimensional coordinates (x, y).
  • the direction of the coordinate axis is a right direction in the horizontal direction and a downward direction in the vertical direction, respectively, and the unit is one pixel unit of the luminance signal.
  • the luminance signal and the color difference signal have the same image size (number of pixels) and the color difference format is 4: 4: 4.
  • the luminance signal and the color difference signal have a different color size format of 4: 4.
  • the position of each block of the color difference signal is represented by the coordinates of the pixel of the luminance signal included in the block area, and the unit is one pixel of the luminance signal.
  • FIG. 9 is a diagram showing an example for explaining the positions of blocks defined in this embodiment when the color difference format is 4: 2: 0. In FIG.
  • x indicates the position of the pixel of the luminance signal on the picture plane of the image
  • indicates the position of the pixel of the color difference signal.
  • 9 is a luminance signal block E of 8 ⁇ 8 pixels and at the same time a block F of color difference signals of 4 ⁇ 4 pixels.
  • is the position of the pixel of the luminance signal at the top left of the block E of the luminance signal of 8 ⁇ 8 pixels indicated by the dotted line. Therefore, ⁇ is the position of the luminance signal block E of 8 ⁇ 8 pixels indicated by the dotted line, and the coordinates of the luminance signal of the pixel indicated by ⁇ are the coordinates of the block E of the luminance signal of 8 ⁇ 8 pixels indicated by the dotted line.
  • is also the pixel position of the upper left luminance signal pixel included in the area of the block F of the color difference signal of 4 ⁇ 4 pixels indicated by the dotted line. Therefore, ⁇ is also the position of the color difference signal block F of 4 ⁇ 4 pixels indicated by the dotted line, and the coordinates of the luminance f signal of the pixel indicated by ⁇ are the coordinates of the block F of the color difference signal of 4 ⁇ 4 pixels indicated by the dotted line. Coordinates. In the embodiment, when the coordinates of the defined luminance signal block and the x component and y component of the coordinate of the color difference signal are the same regardless of the type of the color difference format, the shape and size of the block. Only define these blocks in the same position.
  • FIG. 1 is a block diagram illustrating a configuration of an image encoding device according to an embodiment.
  • the image encoding apparatus includes a color difference format setting unit 101, an image memory 102, an intra prediction unit 103, an inter prediction unit 104, an encoding method determination unit 105, a residual signal generation unit 106, and an orthogonal transform / quantization unit. 107, inverse quantization / inverse orthogonal transform unit 108, decoded image signal superimposing unit 109, decoded image memory 111, first encoded bit string generating unit 112, second encoded bit string generating unit 113, and third encoded bit string A generation unit 114 and an encoded bit string multiplexing unit 115 are provided.
  • the color difference format setting unit 101 sets the color difference format of the image signal to be encoded.
  • the color difference format may be determined by determining the color difference format from the encoded image signal supplied to the color difference format setting unit 101, or may be set from the outside. Only the luminance signal is supplied to the first encoded bit string generation unit 112 as the information of the color difference format set to 4: 2: 0, 4: 2: 2, or 4: 4: 4, and the second code
  • the encoded bit string generation unit 113 supplies the encoded bit string to the encoding process based on the color difference format.
  • the inverse orthogonal transform unit 108, the decoded image signal superimposing unit 109, and the third encoded bit string generating unit 114 also perform encoding processing based on the set color difference format, and the encoded information storage memory 110, the decoded image memory In 111, management is performed based on the set color difference format.
  • the image memory 102 temporarily stores the encoding target image signal supplied in time order.
  • the image signals to be encoded stored in the image memory 102 are rearranged in the encoding order, divided into a plurality of encoding block units in a plurality of combinations according to the setting, and further divided into prediction block units. Then, it is supplied to the intra prediction unit 103, the inter prediction unit 104, and the residual signal generation unit 106.
  • the intra prediction unit 103 is a prediction block unit corresponding to each division mode (PartMode) in a plurality of encoding block units, and the luminance signal of the prediction block to be encoded from the decoded image signal stored in the decoded image memory 111
  • PartMode division mode
  • Each of the color difference signals is subjected to intra prediction according to the plurality of intra luminance prediction modes and the intra color difference prediction mode to obtain an intra prediction signal.
  • the intra color difference prediction mode is a value predicted from the intra luminance prediction mode according to the color difference format, or 0 (horizontal direction), 1 (vertical direction), 2 (average value), which are representative intra prediction modes, Select only 3 (45 degrees oblique).
  • the prediction residual signal is obtained by subtracting the intra prediction signal in units of prediction blocks for each pixel from the signal to be encoded supplied in units of prediction blocks.
  • An evaluation value for evaluating the amount of code and the amount of distortion is calculated using the prediction residual signal, and the most suitable mode from the viewpoint of the amount of code and the amount of distortion among a plurality of intra prediction modes for each prediction block.
  • the intra prediction information corresponding to the selected intra prediction mode, the intra prediction signal, and the evaluation value of the intra prediction are supplied to the encoding method determining unit 105 as the intra prediction candidates of the prediction block.
  • the inter prediction unit 104 uses a plurality of inter prediction modes (from a decoded image signal stored in the decoded image memory 111 in units corresponding to respective partition modes (PartMode) in a plurality of encoded block units, that is, in prediction block units). (L0 prediction, L1 prediction, bi-prediction) and inter prediction according to the reference image are performed to obtain an inter prediction signal. At that time, a motion vector search is performed, and inter prediction is performed according to the searched motion vector. In the case of bi-prediction, inter-prediction of bi-prediction is performed by averaging or weighting and adding two inter-prediction signals for each pixel.
  • PartMode partition modes
  • a prediction residual signal is obtained by subtracting the inter prediction signal in units of prediction blocks for each pixel from the signal to be encoded supplied in units of prediction blocks.
  • An evaluation value for evaluating the amount of code and the amount of distortion is calculated using the prediction residual signal, and the most suitable mode from the viewpoint of the amount of code and the amount of distortion among a plurality of inter prediction modes for each prediction block.
  • the inter prediction information corresponding to the selected inter prediction mode, the inter prediction signal, and the evaluation value of the inter prediction are supplied to the encoding method determination unit 105 as inter prediction candidates for the prediction block.
  • the encoding method determination unit 105 selects an optimal code based on the intra prediction evaluation value corresponding to the intra prediction information selected for each prediction block and the inter prediction evaluation value corresponding to the inter prediction information.
  • a block coding method, a prediction mode (PredMode), and a partition mode (PartMode) are determined, and encoded information including intra prediction information or inter prediction information according to the determination is supplied to the second encoded bit string generation unit 113
  • the prediction signal stored in the encoded information storage memory 110 and subjected to intra prediction or inter prediction according to the determination is supplied to the residual signal generating unit 106 and the decoded image signal superimposing unit 109.
  • the residual signal generation unit 106 generates a residual signal by subtracting the intra-predicted or inter-predicted prediction signal from the image signal to be encoded for each pixel, and supplies the residual signal to the orthogonal transform / quantization unit 107.
  • the orthogonal transform / quantization unit 107 performs orthogonal transform and quantization for transforming the supplied residual signal into a frequency domain such as DCT or DST according to a quantization parameter, and performing orthogonal transform / quantization.
  • a signal is generated and supplied to the third encoded bit string generation unit 114 and the inverse quantization / inverse orthogonal transform unit 108.
  • the first encoded bit string generation unit 112 calculates the value of the syntax element related to the encoding information of the sequence, the picture, and the slice unit according to the semantic rule that defines the meaning of the syntax element and the derivation method, Entropy coding is performed on the value of the syntax element in accordance with syntax rules, such as variable length coding and arithmetic coding, to generate the first coded bit string, and the coded first coded bit string is coded. This is supplied to the bit string multiplexing unit 115.
  • the value of the syntax element relating to the color difference format is also calculated by the first encoded bit string generation unit 112.
  • a syntax element relating to the color difference format is calculated from the color difference format information supplied from the color difference format setting unit 101.
  • the syntax element chroma_format_idc indicates the type of color difference format.
  • the meaning of the syntax element chroma_format_idc is 0 for monochrome, 1 for 4: 2: 0, 2 for 4: 2: 2, and 3 for 4: 4: 4.
  • the meaning of the syntax element separate_colour_plane_flag indicates whether the luminance signal and the color difference signal are encoded separately. When the value of the separate_colour_plane_flag is 0, the luminance signal is encoded in association with the two color difference signals. Represents that.
  • the value of the syntax element chroma_format_idc When the value of the syntax element chroma_format_idc is 1, it represents that the luminance signal and the two color difference signals are encoded separately. Only when the value of the syntax element chroma_format_idc is 3, that is, when the color difference format is 4: 4: 4, the value of chroma_format_idc can be set to 0 or 1. In other color difference formats, the value of the syntax element separate_colour_plane_flag is always set. Is encoded as 0.
  • the second encoded bit string generation unit 113 is determined by the encoding method determination unit 105 for each prediction block, in addition to the encoding information for each encoding block, according to semantic rules that define the meaning of the syntax element and the derivation method.
  • a value of a syntax element related to the encoded information is calculated. Specifically, in addition to coding information in units of coding blocks such as a coding block division method, prediction mode (PredMode), and division mode (PartMode), values of syntax elements related to coding information in units of prediction blocks Is calculated.
  • the prediction mode (PredMode) is intra prediction
  • the value of the syntax element regarding the intra prediction mode including the intra luminance prediction mode and the intra color difference prediction mode is calculated.
  • the inter prediction mode When the prediction mode (PredMode) is inter prediction, the inter prediction mode The value of the syntax element regarding the inter prediction information such as the information specifying the reference image and the motion vector is calculated. The value of each calculated syntax element is subjected to entropy coding by variable length coding, arithmetic coding, etc. in accordance with syntax rules to generate a second coded bit string, and the coded second coding The bit string is supplied to the encoded bit string multiplexing unit 115.
  • the third coded bit string generation unit 114 performs entropy coding by variable length coding, arithmetic coding, and the like on the orthogonally transformed and quantized residual signal according to a specified syntax rule, and the third coded bit string And the third encoded bit string is supplied to the encoded bit string multiplexing unit 115.
  • the encoded bit string multiplexing unit 115 generates a bit stream by multiplexing the first encoded bit string, the second encoded bit string, and the third encoded bit string in accordance with a prescribed syntax rule. Output a bitstream.
  • the inverse quantization / inverse orthogonal transform unit 108 performs inverse quantization and inverse orthogonal transform on the orthogonal transform / quantized residual signal supplied from the orthogonal transform / quantization unit 107 to calculate a residual signal, and decodes it. This is supplied to the image signal superimposing unit 109.
  • the decoded image signal superimposing unit 109 includes a prediction signal that has been intra-predicted or inter-predicted according to the determination by the encoding method determining unit 105, and a residual that has been inversely quantized and inversely orthogonal transformed by the inverse quantization / inverse orthogonal transform unit 108.
  • the decoded image is generated by superimposing the signal and stored in the decoded image memory 111. Note that the decoded image may be stored in the decoded image memory 111 after filtering processing for reducing block distortion or the like due to encoding is performed.
  • FIG. 2 is a block diagram showing a configuration of an image decoding apparatus according to an embodiment corresponding to the image encoding apparatus of FIG.
  • the image decoding apparatus includes an encoded bit string separating unit 201, a first encoded bit string decoding unit 202, a second encoded bit string decoding unit 203, a third encoded bit string decoding unit 204, and a color difference format management unit.
  • 205 an intra prediction unit 206, an inter prediction unit 207, an inverse quantization / inverse orthogonal transform unit 208, a decoded image signal superimposing unit 209, an encoded information storage memory 210, a decoded image memory 211, and switches 212 and 213.
  • the bit stream supplied to the encoded bit string separation unit 201 is separated according to a rule of a prescribed syntax, and the first encoded bit string indicating the encoded information in sequence, picture, and slice units is the first encoded bit string decoding
  • the second encoded bit sequence that is supplied to the unit 202 and includes encoding information in units of encoded blocks is supplied to the second encoded bit sequence decoding unit 203, and includes a residual signal that is subjected to orthogonal transform and quantization.
  • the first encoded bit string decoding unit 202 entropy-decodes the supplied first encoded bit string in accordance with the syntax rule, and each value of the syntax element regarding the encoded information in units of sequences, pictures, and slices. Get.
  • the encoding information for each sequence, picture, and slice is calculated from the value of the syntax element for the decoded sequence, picture, and coding information for each slice according to the semantic rules that define the meaning of the syntax element and the derivation method. To do.
  • the first encoded bit string decoding unit 202 is an encoded bit string decoding unit corresponding to the first encoded bit string generation unit 112 on the encoding side, and the sequence encoded by the first encoded bit string generation unit 112, It has a function of returning to each encoded information from an encoded bit string including encoded information in units of pictures and slices.
  • the color difference format information encoded by the first encoded bit string generation unit 112 is a syntax element related to the color difference format information obtained by entropy decoding the second encoded bit string by the first encoded bit string decoding unit 202. Calculate from the value. According to the syntax rules and semantic rules shown in FIG.
  • the type of the color difference format is specified from the value of the syntax element chroma_format_idc, and the value of the syntax element chroma_format_idc is 0 for monochrome, 1 for 4: 2: 0, and 2 for 4 : 2: 2, 3 becomes 4: 4: 4. Further, when the value of the syntax element chroma_format_idc is 3, the syntax element separate_colour_plane_flag is decoded to determine whether the luminance signal and the color difference signal are encoded separately. The calculated color difference format information is supplied to the color difference format management unit 205.
  • the color difference format management unit 205 manages the supplied color difference format information.
  • the supplied chrominance format information is supplied to the second encoded bit string decoding unit 203, and the encoding block and prediction block encoding information calculation processing based on the chrominance format information is performed.
  • Decoding processing based on the color difference format information is performed, and the encoding information storage memory 210 and the decoded image memory 211 are managed based on the color difference format information.
  • the second encoded bit string decoding unit 203 entropy-decodes the supplied first encoded bit string in accordance with the syntax rule, and each of the syntax elements related to the encoded information of the encoded block and the prediction block unit. Get the value.
  • the code of the encoding block unit and the prediction block unit is calculated from the value of the syntax element related to the supplied encoding block unit and the encoding information of the prediction block unit. Calculation information is calculated.
  • the second encoded bit string decoding unit 203 is an encoded information calculation unit corresponding to the second encoded bit string generation unit 113 on the encoding side, and is encoded by the second encoded bit string generation unit 113.
  • each syntax element obtained by decoding the second encoded bit string in accordance with a prescribed syntax rule is intra prediction, an intra prediction mode including an intra luminance prediction mode and an intra color difference prediction mode is obtained.
  • the prediction mode (PredMode) is inter prediction, inter prediction information such as the inter prediction mode, information for specifying a reference image, and a motion vector is obtained.
  • the intra prediction mode 206 including the intra luminance prediction mode and the intra color difference prediction mode is supplied to the intra prediction unit 206 via the switch 212.
  • the prediction mode (PredMode) is inter prediction
  • the inter prediction information such as the inter prediction mode, the information specifying the reference image, and the motion vector is supplied to the inter prediction unit 207 through the switch 212.
  • the third encoded bit string decoding unit 204 calculates a residual signal that has been orthogonally transformed and quantized by decoding the supplied encoded bit string, and inversely quantized the residual signal that has been orthogonally transformed and quantized. This is supplied to the inverse orthogonal transform unit 208.
  • the intra prediction unit 206 generates a predicted image signal by intra prediction from the decoded peripheral blocks stored in the decoded image memory 211 according to the supplied intra luminance prediction mode and the intra prediction mode including the intra color difference prediction mode. Then, the predicted image signal is supplied to the decoded image signal superimposing unit 209 via the switch 213. Further, in the present embodiment, when the value of the intra color difference prediction mode is predicted from the value of the intra luminance prediction mode, the method for deriving the intra color difference prediction mode differs depending on the color difference format. In this case, intra prediction is performed using an intra prediction mode derived by a different method depending on the color difference format.
  • the inter prediction unit 207 uses motion compensation from the decoded reference picture stored in the decoded image memory 211 using the inter prediction mode supplied, information specifying the reference picture, and inter prediction information such as a motion vector.
  • a predicted image signal is generated by inter prediction, and the predicted image signal is supplied to the decoded image signal superimposing unit 209 via the switch 213.
  • the two motion-compensated prediction image signals of L0 prediction and L1 prediction are adaptively multiplied and weighted to generate a final prediction image signal.
  • the inverse quantization / inverse orthogonal transform unit 208 performs inverse orthogonal transform and inverse quantization on the orthogonal transform / quantized residual signal decoded by the third coded bit string decoding unit 204, and performs inverse orthogonal transform. Obtain a dequantized residual signal.
  • the decoded image signal superimposing unit 209 includes a prediction image signal predicted by the intra prediction unit 206 or the inter prediction unit 207, and a residual signal that has been inversely orthogonally transformed / inversely quantized by the inverse quantization / inverse orthogonal transformation unit 208. Is decoded, and the decoded image signal is decoded and stored in the decoded image memory 211. When stored in the decoded image memory 211, the decoded image may be stored in the decoded image memory 211 after filtering processing that reduces block distortion or the like due to encoding is performed on the decoded image. The decoded image signals stored in the decoded image memory 211 are output in the output order.
  • FIG. 11 three types of transformation block shapes are defined.
  • the square transform block having the same width and height as shown in FIG. 11A is used when the horizontal and vertical correlations of the signal to be encoded are equivalent, thereby improving the encoding efficiency.
  • a rectangular transform block having a width-to-height ratio of 4 to 1 shown in FIG. 11B is used when the horizontal correlation is high and the vertical correlation is low.
  • a vertically long rectangular transform block having a width-to-height ratio of 1: 4 shown in FIG. 11C is used when the correlation in the vertical direction is high and the correlation in the horizontal direction is low. Can be improved.
  • the size of one side of the conversion block is a power of 2. Furthermore, in this embodiment, a minimum size and a maximum size of the transform block are defined.
  • the minimum size of orthogonal transform in the present embodiment will be described. In image coding, low-frequency component image quality degradation is conspicuous, but high-frequency component image quality degradation is less noticeable. Reduce the amount. However, since it is difficult to sufficiently divide the 2 ⁇ 2 conversion into frequency components, the code amount reduction effect is low. Also, if each of the intra prediction, transform, and quantization processing units is made too small, the number of corresponding processing units increases, and the processing becomes complicated. Therefore, in this embodiment, the minimum size in one direction of the orthogonal transform is 4 pixels, and the minimum size of the transform block is 4 ⁇ 4 pixels.
  • the maximum size of orthogonal transform in the present embodiment will be described.
  • Increasing the maximum size of orthogonal transform increases the circuit scale when implemented in hardware. Therefore, in this embodiment, the maximum size in one direction of the orthogonal transform is 32 pixels, and the maximum size of the transform block is 32 ⁇ 32 pixels.
  • Encode efficiency by performing orthogonal transform with a large size when the correlation of the signal to be encoded is high, and performing orthogonal transform with a small size when the correlation of the signal to be encoded is low Can be improved.
  • a syntax element indicating the minimum size (or maximum size) of the transform block and a syntax element indicating a difference between the minimum size and the maximum size of the transform block are set in sequence units, picture units, or slice units, Encoding is performed by the first encoded bit string generation unit 112 on the encoding side, and decoding is performed on the decoding side by the first encoded bit string decoding unit 202 on the decoding side, thereby determining the minimum size and the maximum size of the transform block. For example, when the value of the syntax element indicating the minimum size of the transform block is 0, the minimum unit of orthogonal transform indicates 4 pixels, when the value is 1, the minimum unit of orthogonal transform indicates 8 pixels, and when the value is 2, orthogonal transform is performed.
  • the minimum unit indicates 16 pixels, and when the value is 3, the minimum unit of orthogonal transformation indicates 32 pixels. Further, when the value of the syntax element indicating the difference between the minimum size and the maximum size of the transform block is 0, the minimum size and the maximum size are equal, and when the value is 1, the minimum size and the maximum size are different by one level (for example, When the minimum size is 4 pixels, the maximum size is 8 pixels, and when the minimum size is 8 pixels, the maximum size is 16 pixels.) When the value is 2, the minimum size and the maximum size are different in two levels (for example, the minimum size is In the case of 4 pixels, the maximum size is 16 pixels, and in the case where the minimum size is 8 pixels, the maximum size is 32 pixels).
  • the minimum size is different from the maximum size in 3 steps (for example, the minimum size is 4 pixels) In this case, the maximum size is 32 pixels).
  • the size of the square conversion block shown in FIG. 11A is 32 ⁇ 32 pixels, 16 ⁇ 16 pixels, 8 ⁇ 8 pixels and 4 ⁇ 4 pixels are used.
  • the size of the short side is the same as or larger than the minimum size of the transform block.
  • the size of the long side is the same as or smaller than the maximum size of the transform block.
  • the minimum size of the horizontally long rectangular transform block is 16 ⁇ 4 pixels and the maximum size is 32 ⁇ 8 pixels. is there.
  • the minimum size of the vertically long rectangular conversion block is 4 ⁇ 16 pixels, and the maximum size is 8 ⁇ 32 pixels.
  • a variable TransformSpritDirection that indicates a method of dividing an encoded block into transform blocks in units of encoded blocks is defined in accordance with the spatial correlation of the signals in the encoded block.
  • a variable TransformSpritDirection value of 0 indicates a division method for performing orthogonal transformation in units of rectangular transform blocks that are horizontally long
  • a variable TransformSpritDirection value of 1 is a segmentation for performing orthogonal transformation in units of rectangular transform blocks that are vertically long.
  • a variable TransformSpritDirection value of 2 indicates a division method for orthogonal transform in units of square transform blocks having the same width and height.
  • variable TransformSpritDirection may be set explicitly by defining a syntax element indicating the variable TransformSpritDirection for each coding block and coding it in the bitstream, or coding side without coding in the bitstream It may be set implicitly by deriving on both the decoding side.
  • the encoding side determines and encodes a suitable variable TransformSpritDirection value
  • the decoding side decodes the syntax element indicating the variable TransformSpritDirection to obtain the value of the variable TransformSpritDirection.
  • PartMode division mode
  • the variable TransformSpritDirection is set to 0 because there is a high possibility of high correlation in the direction.
  • the partition mode (PartMode) is N ⁇ 2N partition (PART_Nx2N), nL ⁇ 2N partition (PART_nLx2N), and nR ⁇ 2N partition (PART_nRx2N) shown in FIGS. 7 (e), (f), and (g)
  • the variable TransformSpritDirection is set to 1.
  • PartMode 2N ⁇ 2N division (PART_2Nx2N) shown in FIG. 7A and N ⁇ N division (PART_NxN) shown in FIG. 7H
  • the variable TransformSpritDirection is set to 2.
  • the luminance signal and the color difference signal in the coding block are respectively converted into transform blocks according to the variable TransformSpritDirection indicating the method of dividing the coding block into transform blocks according to the correlation in the spatial direction.
  • the luminance signal and the color difference signal can be further recursively divided into smaller-sized transform blocks according to a variable TransformSpritDirection and a value of a flag split_transform_flag described later.
  • a method for recursively dividing an encoded block into transform blocks according to the variable TransformSpritDirection will be described in detail with reference to FIGS. 12, 13, and 14.
  • FIG. 12 is a diagram for explaining a method of dividing the luminance signal coding block into transform blocks when the value of the variable TransformSpritDirection is 2.
  • the coding block is recursively divided into four parts in the vertical and horizontal directions as necessary. Whether or not to divide the encoded block into four is determined on the encoding side for each encoded block, and a value is set in a flag split_transform_flag indicating whether or not to divide and is encoded by the second encoded bit string generation unit 113, On the decoding side, the second encoded bit string decoding unit 203 decodes this flag split_transform_flag and determines whether or not the encoded block is divided into four.
  • the value of the flag split_transform_flag becomes 0, and the encoded block of the luminance signal becomes the transform block as it is.
  • the value of the flag split_transform_flag is 1, and the encoded block is divided into four parts vertically and horizontally. For each block that is divided into four parts vertically and horizontally, whether to further divide the block into four is determined by the encoding side for each divided block and indicates whether or not to split the split_transform_flag A value is set in the encoding, and the decoding is performed, and the flag split_transform_flag is decoded on the decoding side to determine whether or not each block is divided into four.
  • the value of the flag split_transform_flag becomes 0, and the block becomes a transform block.
  • the value of the flag split_transform_flag is 1, and the block is further divided into four parts vertically and horizontally.
  • the flag split_transform_flag is not encoded in the bitstream, and is set to 0 on both the encoding side and decoding side.
  • FIG. 13 is a diagram for explaining a method of dividing the luminance signal coding block into transform blocks when the value of the variable TransformSpritDirection is zero.
  • the encoded block is divided into four horizontally long rectangular blocks arranged in the left-right direction. For each block that is divided into left and right parts, whether or not the block is further divided into four parts in the top, bottom, left, and right indicates whether or not each block that has been divided is determined by the encoding side.
  • the second encoded bit string decoding unit 203 decodes the flag split_transform_flag to divide the block into four parts vertically and horizontally Judge whether.
  • the value of the flag split_transform_flag becomes 0, and the block becomes a transform block.
  • the value of the flag split_transform_flag is 1, and the block is further divided into four parts vertically and horizontally.
  • the divided block is smaller than the minimum size (in this embodiment, the size of the smaller side of the block is 4 pixels), no further division is performed.
  • the flag split_transform_flag is not encoded in the bitstream, and is set to 0 on both the encoding side decoding side.
  • FIG. 14 is a diagram for explaining a method of dividing the luminance signal coding block into transform blocks when the value of the variable TransformSpritDirection is 1.
  • the encoded block is divided into four vertically long rectangular blocks arranged in the vertical direction. For each block that is divided into four parts vertically, whether or not the block is further divided into four parts vertically, left, and right indicates whether or not each block that has been divided is determined by the encoding side.
  • the second encoded bit string decoding unit 203 decodes the flag split_transform_flag to divide the block into four parts vertically and horizontally Judge whether.
  • the value of the flag split_transform_flag becomes 0, and the block becomes a transform block.
  • the value of the flag split_transform_flag is 1, and the block is further divided into four parts vertically and horizontally.
  • the divided block is smaller than the minimum size (in this embodiment, the size of the smaller side of the block is 4 pixels), no further division is performed.
  • the flag split_transform_flag is not encoded in the bitstream, and is set to 0 on both the encoding side decoding side.
  • the coding block is recursively divided into four parts vertically and horizontally until the maximum size is reached, and then, depending on the value of the variable TransformSpritDirection, FIG. 13. The processing described with reference to FIG. 14 is performed.
  • the coding block is divided according to the variable TransformSpritDirection.
  • the division method is determined according to the variable TransformSpritDirection. Since the color difference signal has a higher correlation in the spatial direction than the luminance signal, the coding efficiency is hardly lowered even if the division method is determined without adaptively switching whether or not to divide, so the implementation is simplified. Can do.
  • the encoded block may be divided using the variable TransformSpritDirection and the flag split_transform_flag as in the luminance signal.
  • a method for dividing the color difference signal coding block into transform blocks according to the variable TransformSpritDirection will be described in detail with reference to FIGS. 15, 16, and 17. FIG.
  • FIG. 15 is a diagram for explaining a method of dividing the color difference signal coding block into the conversion block when the color difference format is 4: 2: 0.
  • FIG. 15A is a diagram for explaining a method of dividing the color difference signal coding block into transform blocks when the value of the variable TransformSpritDirection is 2.
  • the color difference signal coding block is not divided, and the color difference signal coding block is used as it is as a conversion block.
  • the chrominance signal coding block can be divided into four parts vertically and horizontally to form a square conversion block of the chrominance signal.
  • the flag split_transform_flag when the value is 1, the encoding process of the color difference signal is divided into four parts in the vertical and horizontal directions to form a square conversion block of the color difference signal.
  • the divided block is smaller than the minimum size of the set transform block (4 ⁇ 4 pixels in the present embodiment), no division is performed.
  • FIG. 15B is a diagram illustrating a method of dividing the color difference signal into encoded blocks when the value of the variable TransformSpritDirection is 0.
  • the color difference format is 4: 2: 0 and the value of the variable TransformSpritDirection is 0, a rectangular block that is horizontally long and has four width-to-height ratios in which the color difference signal coding blocks are arranged vertically. Divide into However, if the block after division is smaller than the minimum size of the transform block in which the block is set (in this embodiment, the size of the smaller side of the block is 4 pixels), the block is not divided.
  • FIG. 15C is a diagram for explaining a method of dividing the color difference signal into encoded blocks when the variable TransformSpritDirection value is 1.
  • the color difference format is 4: 2: 0 and the value of the variable TransformSpritDirection is 1, a rectangular block that is vertically long and has four width-to-height ratios of 1: 4 in the left-right direction.
  • the block after division is smaller than the minimum size of the transform block in which the block is set (in this embodiment, the size of the smaller side of the block is 4 pixels), the block is not divided.
  • FIG. 16 is a diagram for explaining a method for dividing a coding block of a color difference signal with a color difference format of 4: 2: 2.
  • FIG. 16A is a diagram for explaining a method of dividing the coding block of the color difference signal when the value of the variable TransformSpritDirection is 2.
  • the chrominance format is 4: 2: 2 and the value of the variable TransformSpritDirection is 2
  • the chrominance signal encoding block is divided into two square blocks arranged vertically to form a transform block.
  • orthogonal conversion can be performed in units of conversion blocks having the same shape and size as the conversion blocks used in the luminance signal and the color difference signal with a color difference format of 4: 2: 0.
  • the division mode (PartMode) is N ⁇ N division (PART_NxN)
  • the width-to-height ratio of the color difference signal obtained by dividing the color difference signal coding block into four parts vertically and horizontally is 1 to 2 vertically.
  • a long rectangular block can be further divided into two square blocks arranged in the vertical direction to form a converted block.
  • the flag split_transform_flag when the value is 1, the ratio of the width-to-height of the color difference signal obtained by dividing the coding block of the color difference signal into four parts vertically and horizontally is long by 1 to 2.
  • a rectangular block can be further divided into two square blocks arranged vertically to form a conversion block.
  • the block after division is smaller than the minimum size of the transform block in which the block is set (in this embodiment, the size of the smaller side of the block is 4 pixels), the block is not divided.
  • FIG. 17 (a) an orthogonal transform process is prepared in units of rectangular transform blocks each having a length-to-length ratio of 1: 2 without division, and a color difference signal coding block.
  • the color difference signal coding block is divided into four parts vertically and horizontally, and the ratio of the width of the color difference signal to the height is 1 to 2. It can also be a long rectangular conversion block.
  • the flag split_transform_flag when the value is 1, the color difference signal coding block is divided into four parts vertically and horizontally, and the ratio of the width-to-height of the color difference signal is a vertically long rectangle. The process of making the conversion block is performed. However, if the block after division is smaller than the minimum size of the transform block in which the block is set (in this embodiment, the size of the smaller side of the block is 4 pixels), the block is not divided.
  • FIG. 16B is a diagram for explaining a method of dividing the coding block of the color difference signal when the value of the variable TransformSpritDirection is 0.
  • the encoded block of the color difference signal is divided into two square blocks arranged vertically to form a transform block.
  • orthogonal conversion can be performed in units of conversion blocks having the same shape and size as the conversion blocks used in the luminance signal and the color difference signal with a color difference format of 4: 2: 0.
  • the color difference format is 4: 2: 2
  • encoding efficiency can be improved when the correlation in the horizontal direction is higher than in the vertical direction.
  • the color difference format is 4: 2: 2
  • the color difference signal is sampled (sampled) in half in the horizontal direction with respect to the luminance signal.
  • an orthogonal transform process is prepared in units of rectangular transform blocks each having a width to height ratio of 2 to 1, and the color difference signal coding blocks are arranged vertically. It can also be divided into four horizontally long rectangular blocks to form a converted block.
  • the flag split_transform_flag is used, this process is performed when the value is 1.
  • the minimum size of the transform block in which the divided block is set in this embodiment, the size of the smaller side of the block is 4 pixels). When it becomes smaller, it is not divided.
  • FIG. 16 (c) is a diagram for explaining a method of dividing the coding block of the color difference signal when the value of the variable TransformSpritDirection is 1.
  • the color difference format is 4: 2: 2 and the value of the variable TransformSpritDirection is 1
  • the length of the color difference signal coding blocks is changed to a vertically long rectangular block with a width-to-height ratio of 1: 4.
  • Divide into transform blocks By dividing into vertically long rectangular conversion blocks with a width-to-height ratio of 1: 4, conversion of the same shape and size as the conversion block used for the luminance signal and the color difference signal with a color difference format of 4: 2: 0 Orthogonal transformation can be performed in block units.
  • an orthogonal transform process is prepared in units of rectangular transform blocks each having a length-to-width ratio of 1: 8, and the color difference signal coding blocks are arranged in the horizontal direction. It can also be divided into four vertically long rectangular blocks arranged to form a converted block.
  • the flag split_transform_flag is used, this process is performed when the value is 1.
  • the minimum size of the transform block in which the divided block is set in this embodiment, the size of the smaller side of the block is 4 pixels). When it becomes smaller, it is not divided.
  • the coding block is recursively divided into four parts, up, down, left, and right until reaching the maximum size. 15, the processing described with reference to FIGS. 16 and 17 is performed. Further, in the above-described embodiment, the description has been made assuming that three types of division methods are switched by the variable TransformSpritDirection. On the other hand, you may make it process using only one of these three types of division
  • the above-described process of dividing the encoded block into transform blocks is performed on the encoding side in the process of determining the encoding method by the encoding method determining unit 105 in FIG. On the decoding side, this is performed by the inverse quantization / inverse orthogonal transform unit 208 of FIG.
  • the encoding method determining unit 105 determines the method for dividing the encoded block into transform blocks, and the encoding block is divided into transform blocks by the partition method according to the determination, and the shape of each transform block is determined.
  • the orthogonal transform / quantization unit 107 performs orthogonal transform and quantization in units of transform blocks, and the inverse quantization / inverse orthogonal transform unit 108 performs inverse quantization and inverse orthogonal transform.
  • the inverse quantization / inverse orthogonal transform unit 208 derives the shape, size, and position of each transform block by dividing the encoded block into transform blocks, and performs inverse quantization and dequantization on a transform block basis. Perform inverse orthogonal transform.
  • the moving image encoded stream output from the image encoding apparatus according to the embodiment described above has a specific data format so that it can be decoded according to the encoding method used in the embodiment.
  • an image decoding apparatus corresponding to the image encoding apparatus can decode the encoded stream of this specific data format.
  • an image transmission apparatus that converts the encoded stream output from the image encoding apparatus into encoded data in a data format suitable for the transmission form of the communication path and transmits the encoded data to the network, and receives the encoded data from the network
  • an image receiving apparatus that restores the encoded stream and supplies the encoded stream to the image decoding apparatus.
  • An image transmission device includes a memory that buffers an encoded stream output from the image encoding device, a packet processing unit that packetizes the encoded stream, and a transmission unit that transmits packetized encoded data via a network.
  • the image reception device receives a packetized encoded data via a network, a memory for buffering the received encoded data, packetizes the encoded data to generate an encoded stream, And a packet processing unit provided to the image decoding device.
  • the above processing relating to encoding and decoding can be realized as a transmission, storage, and reception device using hardware, and is stored in a ROM (Read Only Memory), a flash memory, or the like. It can also be realized by firmware or software such as a computer.
  • the firmware program and software program can be recorded on a computer-readable recording medium, provided from a server through a wired or wireless network, or provided as a data broadcast of terrestrial or satellite digital broadcasting Is also possible.
  • 101 color difference format setting unit 102 image memory, 103 intra prediction unit, 104 inter prediction unit, 105 encoding method determination unit, 106 residual signal generation unit, 107 orthogonal transform / quantization unit, 108 inverse quantization / inverse orthogonal transform Unit, 109 decoded image signal superimposing unit, 110 encoded information storage memory, 111 decoded image memory, 112 first encoded bit string generating unit, 113 second encoded bit string generating unit, 114 third encoded bit string generating unit , 115 encoded bit string multiplexing unit, 201 encoded bit string separating unit, 202 first encoded bit string decoding unit, 203 second encoded bit string decoding unit, 204 third encoded bit string decoding unit, 205 color difference format management Part, 206 intra prediction part 207 inter prediction unit, 208 inverse quantization and inverse orthogonal transform unit, 209 decoded image signal superimposing unit, 210 coding information storage memory, 211 decoded image memory 212 switch, 213 switch.
  • the present invention can be used for image encoding and decoding technology using orthogonal transform.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

 ブロック単位で輝度信号と色差信号とを含む画像信号を符号化する画像符号化装置において、直交変換・量子化部107は、輝度信号の符号化ブロック及び色差信号の符号化ブロックのそれぞれを所定の形状を有する一以上の変換ブロックとし、輝度信号の変換ブロックと色差信号の変換ブロックとを直交変換する。第3の符号化ビット列生成部114は、直交変換された輝度信号の変換ブロックと色差信号の変換ブロックとを符号化して符号化ビット列を生成する。

Description

画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに画像復号装置、画像復号方法及び画像復号プログラム
 本発明は、画像符号化及び復号技術に関し、特に直交変換を利用した画像符号化及び復号技術に関する。
 動画像の圧縮符号化方式の代表的なものとして、MPEG-4 AVC/H.264の規格がある。MPEG-4 AVC/H.264では、ピクチャを複数の矩形ブロックに分割したマクロブロック単位で符号化を行う。マクロブロックのサイズは画像サイズに拘わらず、輝度信号で16×16画素と規定されている。なお、マクロブロックには色差信号も含まれるが、マクロブロックに含まれる色差信号のサイズは符号化される画像の色差フォーマットによって異なり、色差フォーマットが4:2:0の場合、色差信号で8×8画素、色差フォーマットが4:2:2の場合、色差信号で8×16画素、色差フォーマットが4:4:4の場合、色差信号で16×16画素となる。
 色差フォーマットは1つの輝度情報と2つの色差情報の3つの信号の標本化された画素数の比率をX:Y:Zで表す。MPEG-4 AVC/H.264で符号化、及び復号の対象となる画像の色差フォーマットは4:2:0、4:2:2、4:4:4、モノクロがある。
 図3は画像の各色差フォーマットを説明する図である。×は画像のピクチャ平面上での輝度信号の画素の位置を示し、○は色差信号の画素の位置を示す。
 図3(a)に示す4:2:0は、輝度信号に対して色差信号が水平、垂直の両方向に2分の1の密度で標本化された色差フォーマットである。なお、4:2:0は図3(e)に示す位置で色差信号が標本化される場合もある。
 図3(b)に示す4:2:2は、輝度信号に対して色差信号が水平方向に2分の1の密度、垂直方向に同じ密度で標本化された色差フォーマットである。
 図3(c)に示す4:4:4は輝度信号、色差信号ともに同じ密度で標本化された色差フォーマットである。
 図3(d)に示すモノクロは色差信号が無く、輝度信号だけで構成される色差フォーマットである。
 なお、輝度信号と色差信号は動き補償等の符号化情報を共有するためにセットにして符号化および復号されるが、4:4:4では、1つの輝度信号と2つの色差信号を独立に3つのモノクロとして符号化および復号する仕組みも用意されている。
 AVC/H.264方式では、符号化/復号対象ピクチャ内のすでに符号化・復号したブロックから予測する手法が用いられている。この手法をイントラ予測と呼ぶ。また、すでに符号化・復号したピクチャを参照ピクチャとし、参照ピクチャからの動きを予測する動き補償が用いられている。この動き補償により動きを予測する手法をインター予測と呼ぶ。
 AVC/H.264符号化方式では、符号化対象の画像信号からイントラ予測またはインター予測された予測信号を減算して、残差信号を生成し、残差信号を直交変換および量子化することで符号量を削減する。輝度信号においては画像信号の空間方向の周波数特性に応じて4×4画素単位の直交変換と8×8画素単位の直交変換のいずれかが選択できる。色差信号においては4×4画素単位の直交変換を用いる。
ISO/IEC 14496-10 Information technology -- Coding of audio-visual objects -- Part 10: Advanced Video Coding
 画像信号を符号化する際、輝度信号と色差信号を直交変換するが、その際、4×4画素単位の直交変換と8×8画素単位の直交変換のいずれかのみから選択されるので、処理効率が悪くなることがある。
 本発明はこうした状況に鑑みてなされたものであり、その目的は、画像信号(特に画像信号の空間方向の周波数特性)と色差フォーマットに応じた輝度信号と色差信号の直交変換により画像信号を効率良く符号化することのできる画像符号化技術およびそれに対応する画像復号技術を提供することにある。
 上記課題を解決するために、本発明のある態様の画像符号化装置は、ブロック単位で輝度信号と色差信号とを含む画像信号を符号化する画像符号化装置であって、輝度信号の符号化ブロック及び色差信号の符号化ブロックのそれぞれを所定の形状を有する一以上の変換ブロックとし、輝度信号の変換ブロックと色差信号の変換ブロックとを直交変換する直交変換部(107)と、前記直交変換された輝度信号の変換ブロックと色差信号の変換ブロックとを符号化して符号化ビット列を生成する符号化列生成部(114)とを備える。
 本発明の別の態様もまた、画像符号化装置である。この装置は、ブロック単位で輝度信号と色差信号とを含む画像信号を符号化する画像符号化装置であって、符号化ブロックを直交変換するための変換ブロックに分割する際の分割方法を示す情報に応じて、色差信号の符号化ブロックの分割パターンを決定する符号化方法決定部(105)と、輝度信号の変換ブロックと色差信号の変換ブロックとを直交変換する直交変換部(107)と、直交変換後の輝度信号の変換ブロックと色差信号の変換ブロックとを符号化して符号化ビット列を生成する符号化列生成部(114)とを備える。
 符号化ブロックを直交変換するための変換ブロックに分割する際の分割方法を示す情報は、符号化ブロックを直交変換するための変換ブロックに分割する際の分割形状、特に縦横の分割比率であってもよい。
 本発明のさらに別の態様は、画像符号化方法である。この方法は、ブロック単位で輝度信号と色差信号とを含む画像信号を符号化する画像符号化方法であって、輝度信号の符号化ブロック及び色差信号の符号化ブロックのそれぞれを所定の形状を有する一以上の変換ブロックとし、輝度信号の変換ブロックと色差信号の変換ブロックとを直交変換する直交変換ステップと、前記直交変換された輝度信号の変換ブロックと色差信号の変換ブロックとを符号化して符号化ビット列を生成する符号化列生成ステップとを備える。
 本発明のある態様の画像復号装置は、ブロック単位で輝度信号と色差信号とを含む画像信号を復号する画像復号装置であって、輝度信号の符号化ブロック及び色差信号の符号化ブロックのそれぞれを所定の形状を有する一以上の変換ブロックとし、輝度信号の変換ブロックと色差信号の変換ブロックとを逆直交変換する逆直交変換部(208)と、前記逆直交変換された輝度信号の変換ブロックと色差信号の変換ブロックとを復号して得られる残差信号に予測信号を重畳して復号画像を生成する復号画像信号重畳部(209)とを備える。
 本発明の別の態様もまた、画像復号装置である。この装置は、ブロック単位で輝度信号と色差信号とを含む画像信号を復号する画像復号装置であって、符号化ブロックを直交変換するための変換ブロックに分割する際の分割方法を示す情報に応じて、色差信号の符号化ブロックの分割パターンを決定し、輝度信号の変換ブロックと色差信号の変換ブロックとを逆直交変換する逆直交変換部(208)と、逆直交変換後の輝度信号の変換ブロックと色差信号の変換ブロックとを復号して得られる残差信号に予測信号を重畳して復号画像を生成する復号画像信号重畳部(209)とを備える。
 符号化ブロックを直交変換するための変換ブロックに分割する際の分割方法を示す情報は、符号化ブロックを直交変換するための変換ブロックに分割する際の分割形状、特に縦横の分割比率であってもよい。
 本発明のさらに別の態様は、画像復号方法である。この方法は、ブロック単位で輝度信号と色差信号とを含む画像信号を復号する画像復号方法であって、輝度信号の符号化ブロック及び色差信号の符号化ブロックのそれぞれを所定の形状を有する一以上の変換ブロックとし、輝度信号の変換ブロックと色差信号の変換ブロックとを逆直交変換する逆直交変換ステップと、前記逆直交変換された輝度信号の変換ブロックと色差信号の変換ブロックとを復号して得られる残差信号に予測信号を重畳して復号画像を生成する復号画像信号重畳ステップとを備える。
 なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
 本発明によれば、画像信号を効率良く符号化することができる。
実施の形態の画像符号化装置の構成を示すブロック図である。 実施の形態の画像復号装置の構成を示すブロック図である。 画像の色差フォーマットを説明する図である。 AVC/H.264方式のイントラ予測モードを切り替える単位を説明する図である。 AVC/H.264方式のインター予測する単位を説明する図である。 本実施例で規定するツリーブロック、及び符号化ブロックを説明する図である。 本実施例で規定する分割モードを説明する図である。 本実施例で規定するイントラ予測モードの値と予測方向を説明する図である。 本実施例で規定するブロックの位置を説明するための一例の図である。 本実施例で規定するシーケンス全体の符号化に関する情報を符号化するヘッダとなるシーケンス・パラメータ・セットで色差フォーマット情報を符号化する際の、シンタックスの定義の一例を説明する図である。 本実施例で規定する変換ブロックの形状を説明する図である。 本実施例で規定する輝度信号の符号化ブロックの変換ブロックへの分割方法を説明する図である。 本実施例で規定する輝度信号の符号化ブロックの変換ブロックへの分割方法を説明する図である。 本実施例で規定する輝度信号の符号化ブロックの変換ブロックへの分割方法を説明する図である。 本実施例で規定する色差フォーマットが4:2:0での色差信号の符号化ブロックの変換ブロックへの分割方法を説明する図である。 本実施例で規定する色差フォーマットが4:2:2での色差信号の符号化ブロックの変換ブロックへの分割方法を説明する図である。 本実施例で規定する色差フォーマットが4:2:2での色差信号の符号化ブロックの変換ブロックへの分割方法を説明する図である。
 本実施の形態では、動画像の符号化に関し、特にピクチャを任意のサイズ、形状の矩形に分割したブロック単位で、符号化においては既に符号化および復号済み、復号においては復号済み(以下復号済みとする)の周囲のブロックの画素値から予測を行うイントラ予測、及び既に復号済みのピクチャから動き補償によるインター予測を用いて符号量を削減する。
 まず、本実施の形態において使用する技術、及び技術用語を定義する。
 (色差フォーマット)
 実施の形態の説明で符号化及び復号の対象とする画像の色差フォーマットは、AVC/H.264方式でも対象とされているモノクロ、4:2:0、4:2:2、4:4:4とし、輝度信号と色差信号をセットにして符号化、及び復号する。ただし、色差信号に関する説明に関しては、モノクロの場合の説明を省略する。なお、4:4:4で輝度信号と色差信号を独立に符号化する方法に関しては本実施例ではモノクロとみなすこととする。
 (ツリーブロック、符号化ブロックについて)
 実施の形態では、図6に示されるように、ピクチャ内を任意の同一サイズの正方の矩形の単位にて均等分割する。この単位をツリーブロックと定義し、ピクチャ内での符号化/復号対象ブロック(符号化処理においては符号化対象ブロック、復号処理においては復号対象ブロックのことである。以下、断りのない限り、この意味で用いる。)を特定するためのアドレス管理の基本単位とする。モノクロを除きツリーブロックは1つの輝度信号と2つの色差信号で構成される。ツリーブロックのサイズはピクチャサイズやピクチャ内のテクスチャに応じて、2のべき乗のサイズで自由に設定することができる。ツリーブロックはピクチャ内のテクスチャに応じて、符号化処理を最適にすべく、必要に応じてツリーブロック内の輝度信号、及び色差信号を再帰的に4分割(縦横に2分割ずつ)して、小さなサイズのブロックにすることができる。このブロックをそれぞれ符号化ブロックと定義し、符号化及び復号を行う際の処理の基本単位とする。モノクロを除き符号化ブロックも1つの輝度信号と2つの色差信号で構成される。符号化ブロックの最大サイズはツリーブロックのサイズと同一である。符号化ブロックの最小のサイズとなる符号化ブロックを最小符号化ブロックと呼び、2のべき乗のサイズで自由に設定することができる。
 図6においては、符号化ブロックAは、ツリーブロックを分割せず、1つの符号化ブロックとしたものである。符号化ブロックBは、ツリーブロックを4分割してできた符号化ブロックである。符号化ブロックCは、ツリーブロックを4分割してできたブロックをさらに4分割してできた符号化ブロックである。符号化ブロックDは、ツリーブロックを4分割してできたブロックをさらに再帰的に2度4分割してできた符号化ブロックであり、最小サイズの符号化ブロックである。
 実施の形態の説明においては、色差フォーマットが4:2:0で、ツリーブロックのサイズを輝度信号で64×64画素、色差信号で32×32画素と設定し、最小の符号化ブロックのサイズを輝度信号で8×8画素、色差信号で4×4画素と設定する。図6では、符号化ブロックAのサイズは輝度信号で64×64画素、色差信号で32×32画素となり、符号化ブロックBのサイズは輝度信号で32×32画素、色差信号で16×16画素となり、符号化ブロックCのサイズは輝度信号で16×16画素、色差信号で8×8画素となり、符号化ブロックDのサイズは輝度信号で8×8画素、色差信号で4×4画素となる。なお、色差フォーマットが4:4:4の場合、各符号化ブロックの輝度信号と色差信号のサイズが等しくなる。色差フォーマットが4:2:2の場合、符号化ブロックAのサイズは色差信号で32×64画素となり、符号化ブロックBのサイズは色差信号で16×32画素となり、符号化ブロックCのサイズは色差信号で8×16画素となり、最小の符号化ブロックである符号化ブロックDのサイズは色差信号で4×8画素となる。
 (予測モードについて)
 符号化ブロック単位で、符号化/復号対象ピクチャ内の符号化/復号済み(符号化処理においては符号化した信号を復号したピクチャ、予測ブロック、画像信号等に用い、復号処理においては復号したピクチャ、予測ブロック、画像信号等に用いる。以下、断りのない限り、この意味で用いる。)の周囲の画像信号から予測を行うイントラ予測(MODE_INTRA)、及び符号化/復号済みのピクチャの画像信号から予測を行うインター予測(MODE_INTER)を切り替える。このイントラ予測(MODE_INTRA)とインター予測(MODE_INTER)を識別するモードを予測モード(PredMode)と定義する。予測モード(PredMode)はイントラ予測(MODE_INTRA)、またはインター予測(MODE_INTER)を値として持ち、選択して符号化できる。
 (分割モード、予測ブロック、予測ユニットについて)
 ピクチャ内をブロックに分割してイントラ予測(MODE_INTRA)及びインター予測(MODE_INTER)を行う場合、イントラ予測及びインター予測の方法を切り替える単位をより小さくするために、必要に応じて符号化ブロックを分割して予測を行う。この符号化ブロックの輝度信号と色差信号の分割方法を識別するモードを分割モード(PartMode)と定義する。さらに、この必要に応じて分割されたブロックを予測ブロックと定義する。図7に示すように、符号化ブロックの輝度信号の分割方法に応じて8種類の分割モード(PartMode)を定義する。
 図7(a)に示す符号化ブロックの輝度信号を分割せず1つの予測ブロックとみなした分割モード(PartMode)を2N×2N分割(PART_2Nx2N)と定義する。図7(b)、(c)、(d)に示す符号化ブロックの輝度信号を上下に並ぶ2つの予測ブロックに分割する分割モード(PartMode)をそれぞれ2N×N分割(PART_2NxN)、2N×nU分割(PART_2NxnU)、2N×nD分割(PART_2NxnD)と定義する。ただし、2N×N分割(PART_2NxN)は上下に1:1の比率で分割した分割モードであり、2N×nU分割(PART_2NxnU)は上下に1:3の比率で分割した分割モードであり、2N×nD分割(PART_2NxnD)は上下に3:1の比率で分割した分割モードである。図7(e)、(f)、(g)に示す符号化ブロックの輝度信号を左右に並ぶ2つの予測ブロックに分割する分割モード(PartMode)をそれぞれN×2N分割(PART_Nx2N)、nL×2N分割(PART_nLx2N)、nR×2N分割(PART_nRx2N)と定義する。ただし、N×2N分割(PART_Nx2N)は左右に1:1の比率で分割した分割モードであり、nL×2N分割(PART_nLx2N)は左右に1:3の比率で分割した分割モードであり、nR×2N分割(PART_nRx2N)は左右に3:1の比率で分割した分割モードである。図7(h)に示す符号化ブロックの輝度信号を上下左右に4分割して、4つの予測ブロックとした分割モード(PartMode)をN×N分割(PART_NxN)とそれぞれ定義する。
 なお、各分割モード(PartMode)毎に輝度信号の縦横の分割比率と同様に色差信号も分割する。
 符号化ブロック内部において、各予測ブロックを特定する為に、0から開始する番号を、符号化順序で、符号化ブロック内部に存在する予測ブロックに対して割り当てる。この番号を分割インデックスPartIdxと定義する。図7の符号化ブロックの各予測ブロックの中に記述された数字は、その予測ブロックの分割インデックスPartIdxを表す。図7(b)、(c)、(d)に示す2N×N分割(PART_2NxN)、2N×nU分割(PART_2NxnU)、2N×nD分割(PART_2NxnD)では上の予測ブロックの分割インデックスPartIdxを0とし、下の予測ブロックの分割インデックスPartIdxを1とする。図7(e)、(f)、(g)に示すN×2N分割(PART_Nx2N)、nL×2N分割(PART_nLx2N)、nR×2N分割(PART_nRx2N)では左の予測ブロックの分割インデックスPartIdxを0とし、右の予測ブロックの分割インデックスPartIdxを1とする。図7(h)に示すN×N分割(PART_NxN)では、左上の予測ブロックの分割インデックスPartIdxを0とし、右上の予測ブロックの分割インデックスPartIdxを1とし、左下の予測ブロックの分割インデックスPartIdxを2とし、右下の予測ブロックの分割インデックスPartIdxを3とする。
 予測モード(PredMode)がインター予測(MODE_INTER)では、分割モード(PartMode)は2N×2N分割(PART_2Nx2N)、2N×N分割(PART_2NxN)、2N×nU分割(PART_2NxnU)、2N×nD分割(PART_2NxnD)、N×2N分割(PART_Nx2N)、nL×2N分割(PART_nLx2N)、及びnR×2N分割(PART_nRx2N)を定義する。最小の符号化ブロックである符号化ブロックDのみ、分割モード(PartMode)は2N×2N分割(PART_2Nx2N)、2N×N分割(PART_2NxN)、2N×nU分割(PART_2NxnU)、2N×nD分割(PART_2NxnD)、N×2N分割(PART_Nx2N)、nL×2N分割(PART_nLx2N)、及びnR×2N分割(PART_nRx2N)に加えてN×N分割(PART_NxN)を定義する。なお、最小の符号化ブロック以外にN×N分割(PART_NxN)を定義しない理由は最小の符号化ブロック以外では、符号化ブロックを4分割して小さな符号化ブロックを表現できるからである。
 予測モード(PredMode)がイントラ予測(MODE_INTRA)では、最小の符号化ブロックである符号化ブロックD(本実施例は輝度信号で8×8画素)以外では、分割モード(PartMode)は2N×2N分割(PART_2Nx2N)だけを定義し、最小の符号化ブロックである符号化ブロックDのみ、分割モード(PartMode)は2N×2N分割(PART_2Nx2N)に加えてN×N分割(PART_NxN)を定義する。なお、最小の符号化ブロック以外にN×N分割(PART_NxN)を定義しない理由は最小の符号化ブロック以外では、符号化ブロックを4分割して小さな符号化ブロックを表現できるからである。
 (イントラ予測、イントラ予測モードについて)
 イントラ予測では同じピクチャ内の周囲の復号済みのブロックの画素の値から処理対象ブロックの画素の値を予測する。本実施例の符号化装置及び復号装置では34通りのイントラ予測モードから選択して、イントラ予測する。図8は本実施例で規定するイントラ予測モードの値と予測方向を説明図である。実線の矢印の指し示す方向はイントラ予測の予測方向、すなわちイントラ予測で参照する方向を示し、隣接するブロックの矢印の指し示す方向の復号済みの画素を参照して矢印の始点の画素のイントラ予測を行う。番号はイントラ予測モードの値を示す。イントラ予測モード(intraPredMode)は、上の復号済みのブロックから垂直方向に予測する垂直予測(イントラ予測モードintraPredMode=0)、左の復号済みのブロックから水平方向に予測する水平予測(イントラ予測モードintraPredMode=1)、周囲の復号済みのブロックから平均値を算出することにより予測する平均値予測(イントラ予測モードintraPredMode=2)、周囲の復号済みのブロックから斜め45度の角度で予測する平均値予測(intraPredMode=3)に加えて、周囲の復号済みのブロックから様々な角度で斜め方向に予測する30通りの角度予測(イントラ予測モードintraPredMode=4…33)を定義する。
 イントラ予測モードは、輝度信号、色差信号それぞれに用意し、輝度信号用のイントラ予測モードをイントラ輝度予測モード、色差信号用のイントラ予測モードをイントラ色差予測モードと定義する。イントラ輝度予測モードの符号化、および復号においては、周辺のブロックのイントラ輝度予測モードとの相関性を利用し、符号化側で周辺のブロックのイントラ輝度予測モードから予測できると判断された場合は参照するブロックを特定する情報を伝送し、周辺のブロックのイントラ輝度予測モードから予測するよりもイントラ輝度予測モードに別の値を設定した方が良いと判断された場合に、さらにイントラ輝度予測モードの値を符号化、または復号する仕組みを用いる。周辺のブロックのイントラ輝度予測モードから符号化・復号対象ブロックのイントラ輝度予測モードを予測することにより、伝送する符号量を削減できる。一方、イントラ色差予測モードの符号化、および復号においては、色差信号の予測ブロックと同じ位置の輝度信号の予測ブロックのイントラ輝度予測モードとの相関性を利用し、符号化側でイントラ輝度予測モードから予測できると判断された場合はイントラ輝度予測モードの値からイントラ色差予測モードの値を予測し、イントラ輝度予測モードから予測するよりもイントラ色差予測モードに独自の値を設定した方が良いと判断した場合に、イントラ色差予測モードの値を符号化、または復号する仕組みを用いる。イントラ輝度予測モードからイントラ色差予測モードを予測することにより、伝送する符号量を削減できる。
 (変換ブロック)
 従来と同様に、本実施の形態でもDCT(離散コサイン変換)、DST(離散サイン変換)等の、離散信号を周波数領域へ変換する直交変換とその逆変換を用いて、符号量の削減を図る。符号化ブロックはピクチャ内のテクスチャに応じて、符号化処理を最適にすべく、必要に応じて符号化ブロック内の輝度信号、及び色差信号を後述する規則に従って分割して、小さなブロック単位で、変換、または逆変換を行うことができる。この必要に応じて分割された直交変換または逆直交変換の対象となるブロックを変換ブロックと定義する。
 (ツリーブロック、符号化ブロック、予測ブロック、変換ブロックの位置)
 本実施の形態のツリーブロック、符号化ブロック、予測ブロック、変換ブロックを始めとする各ブロックの位置は、輝度信号のピクチャの一番左上の輝度信号の画素の位置を原点(0,0)とし、それぞれのブロックの領域に含まれる一番左上の輝度信号の画素の位置を(x,y)の二次元座標で表す。座標軸の向きは水平方向に右の方向、垂直方向に下の方向をそれぞれ正の向きとし、単位は輝度信号の1画素単位である。輝度信号と色差信号で画像サイズ(画素数)が同じである色差フォーマットが4:4:4の場合ではもちろんのこと、輝度信号と色差信号で画像サイズ(画素数)が異なる色差フォーマットが4:2:0、4:2:2の場合でも色差信号の各ブロックの位置をそのブロックの領域に含まれる輝度信号の画素の座標で表し、単位は輝度信号の1画素である。この様にすることで、色差信号の各ブロックの位置が特定できるのはもちろんのこと、座標の値を比較するだけで、輝度信号のブロックと色差信号のブロックの位置の関係も明確となる。図9は色差フォーマットが4:2:0での本実施例で規定するブロックの位置の説明をするための一例の図である。図9の×は画像のピクチャ平面上での輝度信号の画素の位置を示し、○は色差信号の画素の位置を示す。図9の点線の四角形は8×8画素の輝度信号のブロックEであると同時に、4×4画素の色差信号のブロックFでもある。▲は点線で示される8×8画素の輝度信号のブロックEの一番左上の輝度信号の画素の位置である。したがって、▲は点線で示される8×8画素の輝度信号のブロックEの位置となり、▲で示される画素の輝度信号の座標を点線で示される8×8画素の輝度信号のブロックEの座標となる。同様に、▲は点線で示される4×4画素の色差信号のブロックFの領域に含まれる一番左上の輝度信号の画素の位置でもある。したがって、▲は点線で示される4×4画素の色差信号のブロックFの位置ともなり、▲で示される画素の輝度f信号の座標を点線で示される4×4画素の色差信号のブロックFの座標となる。実施の形態においては、色差フォーマットの種類やブロックの形状、大きさにかかわらず、定義した輝度信号のブロックの座標と色差信号のブロックの座標のx成分とy成分の値が共に同一の場合にだけ、これらのブロックは同じ位置にあると定義する。
 図1は実施の形態に係る画像符号化装置の構成を示すブロックである。実施の形態の画像符号化装置は、色差フォーマット設定部101、画像メモリ102、イントラ予測部103、インター予測部104、符号化方法決定部105、残差信号生成部106、直交変換・量子化部107、逆量子化・逆直交変換部108、復号画像信号重畳部109、復号画像メモリ111、第1の符号化ビット列生成部112、第2の符号化ビット列生成部113、第3の符号化ビット列生成部114、符号化ビット列多重化部115を備える。
 色差フォーマット設定部101では符号化対象の画像信号の色差フォーマットを設定する。色差フォーマット設定部101に供給される符号化画像信号から色差フォーマットを判断して色差フォーマットを設定してもよいし、外部から設定してもよい。輝度信号のみ、4:2:0、4:2:2、または4:4:4と設定された色差フォーマットの情報は第1の符号化ビット列生成部112に供給されるとともに、第2の符号化ビット列生成部113に供給されて、色差フォーマットに基づいた符号化処理が行われる。なお、図示していないが、図1の画像メモリ102、イントラ予測部103、インター予測部104、符号化方法決定部105、残差信号生成部106、直交変換・量子化部107、逆量子化・逆直交変換部108、復号画像信号重畳部109、第3の符号化ビット列生成部114でもこの設定された色差フォーマットに基づいて符号化処理が行われ、符号化情報格納メモリ110、復号画像メモリ111では、この設定された色差フォーマットに基づいて管理される。
 画像メモリ102では、時間順に供給された符号化対象の画像信号を一時格納する。画像メモリ102に格納された符号化対象の画像信号は符号化順序に並べ替えられて、設定に応じた複数の組み合わせでそれぞれの符号化ブロック単位に分割され、さらに、それぞれの予測ブロック単位に分割されて、イントラ予測部103、インター予測部104、残差信号生成部106に供給される。
 イントラ予測部103は複数の符号化ブロック単位におけるそれぞれの分割モード(PartMode)に応じた予測ブロック単位で、復号画像メモリ111に格納された復号済みの画像信号から符号化対象の予測ブロックの輝度信号、色差信号それぞれについて複数のイントラ輝度予測モード、及びイントラ色差予測モードに応じたそれぞれのイントラ予測を行い、イントラ予測信号を得る。なお、イントラ色差予測モードは色差フォーマットに応じてイントラ輝度予測モードから予測される値、または、代表的なイントラ予測モードである0(水平方向)、1(垂直方向)、2(平均値)、3(斜め45度)に限り選択する。
 予測ブロック単位に供給された符号化対象の信号から、予測ブロック単位のイントラ予測信号を画素毎に減算して、予測残差信号を得る。その予測残差信号を用いて符号量と歪量を評価するための評価値を算出し、予測ブロック単位で、複数のイントラ予測モードの中から最も符号量、及び歪量の観点で最適なモードを選択し、当該予測ブロックのイントラ予測の候補として、選択されたイントラ予測モードに対応するイントラ予測情報、イントラ予測信号、及びイントラ予測の評価値を符号化方法決定部105に供給する。
 インター予測部104は複数の符号化ブロック単位におけるそれぞれの分割モード(PartMode)に応じた単位、即ち予測ブロック単位で、復号画像メモリ111に格納された復号済みの画像信号から複数のインター予測モード(L0予測、L1予測、両予測)、及び参照画像に応じたそれぞれのインター予測を行い、インター予測信号を得る。その際、動きベクトル探索を行い、探索された動きベクトルに応じてインター予測を行う。なお、両予測の場合は、2つのインター予測信号を画素毎に平均、または重み付け加算することにより、両予測のインター予測を行う。予測ブロック単位に供給された符号化対象の信号から、予測ブロック単位のインター予測信号を画素毎に減算して、予測残差信号を得る。その予測残差信号を用いて符号量と歪量を評価するための評価値を算出し、予測ブロック単位で、複数のインター予測モードの中から最も符号量、及び歪量の観点で最適なモードを選択し、当該予測ブロックのインター予測の候補として、選択されたインター予測モードに対応するインター予測情報、インター予測信号、及びインター予測の評価値を符号化方法決定部105に供給する。
 符号化方法決定部105は複数の符号化ブロック単位におけるそれぞれの予測ブロック毎に選択されたイントラ予測情報に対応するイントラ予測評価値及びインター予測情報に対応するインター予測評価値に基づき、最適な符号化ブロックの分割方法、予測モード(PredMode)、分割モード(PartMode)を決定し、決定に応じたイントラ予測情報、またはインター予測情報を含む符号化情報を第2の符号化ビット列生成部113に供給するとともに、符号化情報格納メモリ110に格納し、決定に応じたイントラ予測またはインター予測された予測信号を残差信号生成部106、及び復号画像信号重畳部109に供給する。
 残差信号生成部106は、符号化する画像信号からイントラ予測またはインター予測された予測信号を画素毎に減じて残差信号を生成し、直交変換・量子化部107に供給する。
 直交変換・量子化部107は、供給される残差信号に対して量子化パラメータに応じてDCTやDST等の周波数領域に変換する直交変換及び量子化を行い直交変換・量子化された残差信号を生成し、第3の符号化ビット列生成部114、及び逆量子化・逆直交変換部108に供給する。
 第1の符号化ビット列生成部112は、シンタックス要素の意味、導出方法を定義するセマンティクス規則に従って、シーケンス、ピクチャ、及びスライス単位の符号化情報に関するシンタックス要素の値を算出し、算出した各シンタックス要素の値をシンタックス規則に従って、可変長符号化、算術符号化等によるエントロピー符号化を行い、第1の符号化ビット列を生成し、符号化された第1の符号化ビット列を符号化ビット列多重化部115に供給する。色差フォーマットに関するシンタックス要素の値も第1の符号化ビット列生成部112で算出される。色差フォーマット設定部101から供給される色差フォーマット情報から色差フォーマットに関するシンタックス要素を算出する。図10は本実施例で規定するシーケンス全体の符号化に関する情報を符号化するヘッダとなるシーケンス・パラメータ・セットで色差フォーマット情報を符号化する際の、シンタックスの定義の一例である。シンタックス要素chroma_format_idcは色差フォーマットの種類を示す。シンタックス要素chroma_format_idcの意味は値が0はモノクロ、1は4:2:0、2は4:2:2、3は4:4:4を表す。また、シンタックス要素separate_colour_plane_flagの意味は輝度信号と色差信号が別々に符号化されるかどうかを表し、separate_colour_plane_flagの値が0の場合、輝度信号に2つの色差信号が対応付けられて符号化されることを表す。シンタックス要素chroma_format_idcの値が1の場合、輝度信号と2つの色差信号が別々に符号化されることを表す。シンタックス要素chroma_format_idcの値が3、即ち色差フォーマットが4:4:4の場合のみ、chroma_format_idcの値を0または1に設定することができ、それ以外の色差フォーマットでは、常にシンタックス要素separate_colour_plane_flagの値が0として、符号化される。
 第2の符号化ビット列生成部113は、シンタックス要素の意味、導出方法を定義するセマンティクス規則に従って、符号化ブロック単位の符号化情報に加えて、予測ブロック毎に符号化方法決定部105によって決定された符号化情報に関するシンタックス要素の値を算出する。具体的には、符号化ブロックの分割方法、予測モード(PredMode)、分割モード(PartMode)等の符号化ブロック単位の符号化情報に加えて、予測ブロック単位の符号化情報に関するシンタックス要素の値を算出する。予測モード(PredMode)がイントラ予測の場合、イントラ輝度予測モード、及びイントラ色差予測モードを含むイントラ予測モードに関するシンタックス要素の値を算出し、予測モード(PredMode)がインター予測の場合、インター予測モード、参照画像を特定する情報、動きベクトル等のインター予測情報に関するシンタックス要素の値を算出する。算出された各シンタックス要素の値をシンタックス規則に従って、可変長符号化、算術符号化等によるエントロピー符号化を行い、第2の符号化ビット列を生成し、符号化された第2の符号化ビット列を符号化ビット列多重化部115に供給する。
 第3の符号化ビット列生成部114は、直交変換及び量子化された残差信号を規定のシンタックス規則に従って可変長符号化、算術符号化等によるエントロピー符号化を行い、第3の符号化ビット列を生成して、第3の符号化ビット列を符号化ビット列多重化部115に供給する。
 符号化ビット列多重化部115で、第1の符号化ビット列と第2の符号化ビット列、及び第3の符号化ビット列を規定のシンタックス規則に従って多重化してビットストリームを生成し、多重化されたビットストリームを出力する。
 逆量子化・逆直交変換部108は、直交変換・量子化部107から供給された直交変換・量子化された残差信号を逆量子化及び逆直交変換して残差信号を算出し、復号画像信号重畳部109に供給する。復号画像信号重畳部109は、符号化方法決定部105による決定に応じてイントラ予測またはインター予測された予測信号と逆量子化・逆直交変換部108で逆量子化及び逆直交変換された残差信号を重畳して復号画像を生成し、復号画像メモリ111に格納する。なお、復号画像に対して符号化によるブロック歪等を減少させるフィルタリング処理を施して、復号画像メモリ111に格納されることもある。
 図2は図1の画像符号化装置に対応した実施の形態に係る画像復号装置の構成を示すブロックである。実施の形態の画像復号装置は、符号化ビット列分離部201、第1の符号化ビット列復号部202、第2の符号化ビット列復号部203、第3の符号化ビット列復号部204、色差フォーマット管理部205、イントラ予測部206、インター予測部207、逆量子化・逆直交変換部208、復号画像信号重畳部209、符号化情報格納メモリ210、復号画像メモリ211、およびスイッチ212、213を備える。
 符号化ビット列分離部201に供給されるビットストリームは規定のシンタックスの規則に従って分離し、シーケンス、ピクチャ、及びスライス単位の符号化情報を示す第1の符号化ビット列が第1の符号化ビット列復号部202に供給され、符号化ブロック単位の符号化情報を含む第2の符号化ビット列が第2の符号化ビット列復号部203に供給され、直交変換及び量子化された残差信号を含む第3の符号化ビット列が第3の符号化ビット列復号部204に供給される。
 第1の符号化ビット列復号部202は、シンタックス規則に従って、供給された第1の符号化ビット列をエントロピー復号して、シーケンス、ピクチャ、及びスライス単位の符号化情報に関するシンタックス要素のそれぞれの値を得る。シンタックス要素の意味、導出方法を定義するセマンティクス規則に従って、復号されたシーケンス、ピクチャ、及びスライス単位の符号化情報に関するシンタックス要素の値から、シーケンス、ピクチャ、及びスライス単位の符号化情報を算出する。第1の符号化ビット列復号部202は符号化側の第1の符号化ビット列生成部112に対応する符号化ビット列復号部であり、第1の符号化ビット列生成部112で符号化されたシーケンス、ピクチャ、及びスライス単位の符号化情報を含む符号化ビット列からそれぞれの符号化情報に戻す機能を有する。第1の符号化ビット列生成部112で符号化された色差フォーマット情報は第1の符号化ビット列復号部202で第2の符号化ビット列をエントロピー復号することにより得られる色差フォーマット情報に関するシンタックス要素の値から算出する。図10に示すシンタックス規則、及びセマンティクス規則に従って、シンタックス要素chroma_format_idcの値から色差フォーマットの種類を特定し、シンタックス要素chroma_format_idcの値が0はモノクロ、1は4:2:0、2は4:2:2、3は4:4:4となる。さらに、シンタックス要素chroma_format_idcの値が3の時にはシンタックス要素separate_colour_plane_flagを復号して、輝度信号と色差信号が別々に符号化されているかどうかを判別する。算出された色差フォーマット情報は色差フォーマット管理部205に供給される。
 色差フォーマット管理部205は、供給された色差フォーマット情報を管理する。供給された色差フォーマット情報は第2の符号化ビット列復号部203に供給され、色差フォーマット情報に基づいた符号化ブロック、及び予測ブロックの符号化情報の算出処理が行われる。なお、図に明示していないが、第3の符号化ビット列復号部204、図2のイントラ予測部206、インター予測部207、逆量子化・逆直交変換部208、復号画像信号重畳部209でもこの色差フォーマット情報に基づいた復号処理が行われ、符号化情報格納メモリ210、復号画像メモリ211ではこの色差フォーマット情報に基づいて管理される。
 第2の符号化ビット列復号部203は、シンタックス規則に従って、供給された第1の符号化ビット列をエントロピー復号して、符号化ブロック、及び予測ブロック単位の符号化情報に関するシンタックス要素のそれぞれの値を得る。シンタックス要素の意味、導出方法を定義するセマンティクス規則に従って、供給された符号化ブロック単位、及び予測ブロック単位の符号化情報に関するシンタックス要素の値から、符号化ブロック単位、及び予測ブロック単位の符号化情報を算出する。第2の符号化ビット列復号部203は符号化側の第2の符号化ビット列生成部113に対応する符号化情報算出部であり、第2の符号化ビット列生成部113で符号化された符号化ブロック、及び予測ブロック単位の符号化情報を含む第2の符号化ビット列からそれぞれの符号化情報に戻す機能を有する。具体的には、第2の符号化ビット列を規定のシンタックス規則に従って復号することにより得られる各シンタックス要素から、符号化ブロックの分割方法、予測モード(PredMode)、分割モード(PartMode)に加えて、予測モード(PredMode)がイントラ予測の場合、イントラ輝度予測モード、及びイントラ色差予測モードを含むイントラ予測モードを得る。一方、予測モード(PredMode)がインター予測の場合、インター予測モード、参照画像を特定する情報、動きベクトル等のインター予測情報を得る。予測モード(PredMode)がイントラ予測の場合、スイッチ212を通じて、イントラ輝度予測モード、及びイントラ色差予測モードを含むイントラ予測モードをイントラ予測部206に供給し、予測モード(PredMode)がインター予測の場合、スイッチ212を通じて、インター予測モード、参照画像を特定する情報、動きベクトル等のインター予測情報をインター予測部207に供給する。
 第3の符号化ビット列復号部204は、供給された符号化ビット列を復号して直交変換・量子化された残差信号を算出し、直交変換・量子化された残差信号を逆量子化・逆直交変換部208に供給する。
 イントラ予測部206は、供給されるイントラ輝度予測モード、及びイントラ色差予測モードを含むイントラ予測モードに応じて復号画像メモリ211に格納されている復号済みの周辺ブロックからイントラ予測により予測画像信号を生成し、スイッチ213を介して、予測画像信号を復号画像信号重畳部209に供給する。また、本実施の形態ではイントラ輝度予測モードの値からイントラ色差予測モードの値を予測する際に、色差フォーマットに応じてイントラ色差予測モードの導出方法が異なる。この場合、色差フォーマットに応じて異なる方法により導出されたイントラ予測モードを用いてイントラ予測を行う。
 インター予測部207は、供給されるインター予測モード、参照ピクチャを特定する情報、動きベクトル等のインター予測情報を用いて復号画像メモリ211に格納されている復号済みの参照ピクチャから動き補償を用いたインター予測により予測画像信号を生成し、スイッチ213を介して、予測画像信号を復号画像信号重畳部209に供給する。なお、両予測の場合は、L0予測、L1予測の2つの動き補償予測画像信号に適応的に重み係数を乗算して重畳し、最終的な予測画像信号を生成する。
 逆量子化・逆直交変換部208は、第3の符号化ビット列復号部204で復号された直交変換・量子化された残差信号に対して逆直交変換及び逆量子化を行い、逆直交変換・逆量子化された残差信号を得る。
 復号画像信号重畳部209は、イントラ予測部206、またはインター予測部207で予測された予測画像信号と、逆量子化・逆直交変換部208により逆直交変換・逆量子化された残差信号とを重畳することにより、復号画像信号を復号し、復号画像メモリ211に格納する。復号画像メモリ211に格納する際には、復号画像に対して符号化によるブロック歪等を減少させるフィルタリング処理を施して、復号画像メモリ211に格納されることもある。復号画像メモリ211に格納された復号画像信号は、出力順で出力される。
 次に、実施の形態のポイントである符号化ブロックの変換ブロックへの分割について詳細に説明する。
 本実施の形態においては、図11に示すように、3種類の変換ブロックの形状を定義する。図11(a)に示す幅と高さが等しい正方形の変換ブロックは符号化の対象となる信号の水平方向と垂直方向の相関性が等価である場合に用いることで符号化効率を向上させることができる。図11(b)に示す幅対高さの比率が4対1の横に長い長方形の変換ブロックは水平方向の相関性が高く、垂直方向の相関性が低い場合に用いることで符号化効率を向上させることができる。図11(c)に示す幅対高さの比率が1対4の縦に長い長方形の変換ブロックは垂直方向の相関性が高く、水平方向の相関性が低い場合に用いることで符号化効率を向上させることができる。
 変換ブロックの一辺のサイズは2のべき乗とする。さらに、本実施の形態においては変換ブロックの最小サイズと最大サイズを定義する。まず、本実施例における直交変換の最小サイズについて説明する。画像符号化においては、低周波数成分の画質劣化は目立ちやすいが、高周波数成分の画質劣化は目立ちにくいという特性を利用して、低周波数成分よりも高周波数成分を粗く量子化することで、符号量を削減する。しかし、2×2変換は充分に周波数成分に分けることが困難なため、符号量の削減効果が低い。また、イントラ予測、変換、量子化のそれぞれの処理単位が小さくしすぎると対応する処理単位の数が増大するため処理が複雑になる。そこで、本実施例においては、直交変換の一方向の最小サイズを4画素とし、変換ブロックの最小サイズを4×4画素とする。次に、本実施例における直交変換の最大サイズについて説明する。直交変換の最大サイズを大きくするとハードウェアに実装する際の回路規模が大きくなってしまう。そこで、本実施例においては、直交変換の一方向の最大サイズを32画素とし、変換ブロックの最大サイズを32×32画素とする。符号化の対象となる信号の相関性が高い場合には大きなサイズで直交変換を行い、符号化の対象となる信号の相関性が低い場合には小さなサイズで直交変換を行うことで符号化効率を向上させることができる。
 なお、シーケンス単位、ピクチャ単位、またはスライス単位で、変換ブロックの最小サイズ(または最大サイズ)を示すシンタックス要素、及び変換ブロックの最小サイズと最大サイズの差分を示すシンタックス要素を設定して、符号化側の第1の符号化ビット列生成部112で符号化し、復号側の第1の符号化ビット列復号部202で復号側で復号することにより、変換ブロックの最小サイズと最大サイズを判別する。例えば、変換ブロックの最小サイズを示すシンタックス要素の値が0では直交変換の最小単位は4画素を示し、値が1では直交変換の最小単位は8画素を示し、値が2では直交変換の最小単位は16画素を示し、値が3では直交変換の最小単位は32画素を示すものとする。また、変換ブロックの最小サイズと最大サイズの差分を示すシンタックス要素の値が0では最小サイズと最大サイズが等しいものとし、値が1では最小サイズと最大サイズが1段階異なるものとし(例えば、最小サイズが4画素の場合は最大サイズは8画素、最小サイズが8画素の場合は最大サイズは16画素)、値が2では最小サイズと最大サイズが2段階異なるものとし(例えば、最小サイズが4画素の場合は最大サイズは16画素、最小サイズが8画素の場合は最大サイズは32画素)、値が3では最小サイズと最大サイズが3段階異なるものとする(例えば、最小サイズが4画素の場合は最大サイズは32画素)。
本実施の形態においては、最小サイズを4×4画素、最大サイズを32×32画素とするので、図11(a)に示す正方形の変換ブロックのサイズは32×32画素、16×16画素、8×8画素、および4×4画素を用いる。また、図11(b)に示す横に長い長方形の変換ブロック、及び図11(c)に示す縦に長い長方形の変換ブロックについては、短い辺のサイズが変換ブロックの最小サイズと同じか大きいものとし、長い辺のサイズが変換ブロックの最大サイズと同じか小さいものとする。本実施の形態においては、最小サイズを4×4画素、最大サイズを32×32画素とするので、横に長い長方形の変換ブロックの最小サイズは16×4画素、最大サイズは32×8画素である。また、縦に長い長方形の変換ブロックの最小サイズは4×16画素、最大サイズは8×32画素である。以上の様に規定することで、変換ブロックの最小サイズ(または最大サイズ)を示すシンタックス要素、及び変換ブロックの最小サイズと最大サイズの差分を示すシンタックス要素の2つの情報を符号化および復号するだけで、図11(a)に示す正方形の変換ブロック、図11(b)に示す横に長い長方形の変換ブロック、及び図11(c)に示す縦に長い長方形の変換ブロックのそれぞれの形状の変換ブロックの最小サイズと最大サイズを設定することができるので、変換ブロックの最小サイズと最大サイズを符号化するための符号量を削減することができる。
 そこで、本実施の形態においては、符号化ブロック内の信号の空間方向の相関性に応じて、符号化ブロック単位で符号化ブロックを変換ブロックに分割する方法を示す変数TransformSpritDirectionを定義する。変数TransformSpritDirectionの値が0は、横に長い長方形の変換ブロック単位で直交変換するための分割方法を示し、変数TransformSpritDirectionの値が1は、縦に長い長方形の変換ブロック単位で直交変換するための分割方法を示し、変数TransformSpritDirectionの値が2は、幅と高さが等しい正方形の変換ブロック単位で直交変換するための分割方法を示す。
 変数TransformSpritDirectionは符号化ブロック毎に変数TransformSpritDirectionを示すシンタックス要素を定義してビットストリーム内に符号化することで明示的に設定してもよいし、ビットストリーム内に符号化せずに符号化側、復号側双方で導出することにより暗黙的に設定してもよい。明示的に設定する方法では、符号化側で、適した変数TransformSpritDirectionの値を決定して符号化し、復号側では変数TransformSpritDirectionを示すシンタックス要素を復号して変数TransformSpritDirectionの値を取得する。暗黙的に設定する方法では、分割モード(PartMode)に応じて暗黙的に設定する。分割モード(PartMode)が図7(b)、(c)、(d)に示す2N×N分割(PART_2NxN)、2N×nU分割(PART_2NxnU)、2N×nD分割(PART_2NxnD)の際には、水平方向に相関性が高い可能性が高いので、変数TransformSpritDirectionを0に設定する。分割モード(PartMode)が図7(e)、(f)、(g)に示すN×2N分割(PART_Nx2N)、nL×2N分割(PART_nLx2N)、nR×2N分割(PART_nRx2N)の際には垂直方向に相関性が高い可能性が高いので、変数TransformSpritDirectionを1に設定する。分割モード(PartMode)が図7(a)に示す2N×2N分割(PART_2Nx2N)、図7(h)に示すN×N分割(PART_NxN)の際には、変数TransformSpritDirectionを2に設定する。
 本実施の形態においては、空間方向の相関性に応じて、符号化ブロックを変換ブロックに分割する方法を示す変数TransformSpritDirectionに応じて、符号化ブロック内の輝度信号、および色差信号をそれぞれ変換ブロックに分割する。輝度信号、および色差信号は変数TransformSpritDirectionと後述するフラグsplit_transform_flagの値に応じて、分割されたブロックをさらに再帰的に分割して、より小さなサイズの変換ブロックにすることができる。変数TransformSpritDirectionに応じた符号化ブロックの変換ブロックへの再帰的な分割方法について、図12、図13、図14を用いて、詳細に説明する。
 図12は変数TransformSpritDirectionの値が2の際の輝度信号の符号化ブロックの変換ブロックへの分割方法を説明する図である。変数TransformSpritDirectionの値が2の際には、符号化ブロックを必要に応じて再帰的に上下左右に4分割する。符号化ブロックを4分割するかどうかは符号化ブロック毎に符号化側で決定して分割するか否かを示すフラグsplit_transform_flagに値を設定して第2の符号化ビット列生成部113で符号化し、復号側では第2の符号化ビット列復号部203でこのフラグsplit_transform_flagを復号して符号化ブロックを4分割するかどうかを判断する。分割しない場合はフラグsplit_transform_flagの値が0となり、輝度信号の符号化ブロックがそのまま変換ブロックとなる。分割する場合はフラグsplit_transform_flagの値が1となり、符号化ブロックが上下左右に四分割される。上下左右に四分割されてできたそれぞれのブロックについて、さらにそのブロックを4分割するかどうかは分割されてできたそれぞれのブロック毎に符号化側で決定して分割するか否かを示すフラグsplit_transform_flagに値を設定して符号化し、復号側でこのフラグsplit_transform_flagを復号してそれぞれのブロックを4分割するかどうかを判断する。分割しない場合はフラグsplit_transform_flagの値が0となり、そのブロックが変換ブロックとなる。分割する場合はフラグsplit_transform_flagの値が1となり、ブロックがさらに上下左右に四分割される。ただし、分割後のブロックが最小サイズ(本実施の形態においては4×4画素)より小さくなる場合にはそれ以上分割しない。その場合、フラグsplit_transform_flagはビットストリーム内には符号化せずに、符号化側復号側双方で0に設定する。
 図13は変数TransformSpritDirectionの値が0の際の輝度信号の符号化ブロックの変換ブロックへの分割方法を説明する図である。変数TransformSpritDirectionの値が0の際には、まず符号化ブロックを左右方向に並ぶ4つの横に長い長方形のブロックに分割する。左右に四分割されてできたそれぞれのブロックについて、さらにそのブロックを上下左右に4分割するかどうかは分割されてできたそれぞれのブロック毎に符号化側で決定して分割するか否かを示すフラグsplit_transform_flagに値を設定して第2の符号化ビット列生成部113で符号化し、復号側では第2の符号化ビット列復号部203でこのフラグsplit_transform_flagを復号してブロックを上下左右に4分割するかどうかを判断する。分割しない場合はフラグsplit_transform_flagの値が0となり、そのブロックが変換ブロックとなる。分割する場合はフラグsplit_transform_flagの値が1となり、ブロックがさらに上下左右に四分割される。ただし、分割後のブロックが最小サイズ(本実施の形態においてはブロックのいずれか小さい方の辺のサイズが4画素)より小さくなる場合にはそれ以上分割しない。フラグsplit_transform_flagはビットストリーム内には符号化せずに、符号化側復号側双方で0に設定する。
 図14は変数TransformSpritDirectionの値が1の際の輝度信号の符号化ブロックの変換ブロックへの分割方法を説明する図である。変数TransformSpritDirectionの値が1の際には、まず符号化ブロックを上下方向に並ぶ4つの縦に長い長方形のブロックに分割する。上下に四分割されてできたそれぞれのブロックについて、さらにそのブロックを上下左右に4分割するかどうかは分割されてできたそれぞれのブロック毎に符号化側で決定して分割するか否かを示すフラグsplit_transform_flagに値を設定して第2の符号化ビット列生成部113で符号化し、復号側では第2の符号化ビット列復号部203でこのフラグsplit_transform_flagを復号してブロックを上下左右に4分割するかどうかを判断する。分割しない場合はフラグsplit_transform_flagの値が0となり、そのブロックが変換ブロックとなる。分割する場合はフラグsplit_transform_flagの値が1となり、ブロックがさらに上下左右に四分割される。ただし、分割後のブロックが最小サイズ(本実施の形態においてはブロックのいずれか小さい方の辺のサイズが4画素)より小さくなる場合にはそれ以上分割しない。フラグsplit_transform_flagはビットストリーム内には符号化せずに、符号化側復号側双方で0に設定する。
 なお、符号化ブロックが設定された変換ブロックの最大サイズよりも大きい場合、最大サイズに達するまで符号化ブロックを再帰的に上下左右に4分割してから変数TransformSpritDirectionの値に応じて図12、図13、図14を用いて説明した処理を行う。
 次に、色差信号の変換ブロックへの分割方法について説明する。色差信号においても変数TransformSpritDirectionに応じて、符号化ブロックを分割する。ただし、輝度信号のようにフラグsplit_transform_flagを用いて分割するか否かを適応的に切り替えるのではなく、変数TransformSpritDirectionに応じて分割方法を決める。色差信号は輝度信号に比べて空間方向の相関性が高いため、分割するか否かを適応的に切り替えずに分割方法を決めても符号化効率はほとんど低下しないため実装の簡略化を図ることができる。また、符号化側で変換ブロックの分割を決定する際に、輝度と色差を一緒に考慮して分割するか否かを決定する必要がなくなり、処理量が削減できる。なお、色差信号においても輝度信号と同様に変数TransformSpritDirection及びフラグsplit_transform_flagを用いて、符号化ブロックを分割するようにしてもよい。変数TransformSpritDirectionに応じた色差信号の符号化ブロックの変換ブロックへの分割方法について、図15、図16、図17を用いて、詳細に説明する。
 まず、色差フォーマットが4:2:0の場合について説明する。図15は色差フォーマットが4:2:0での色差信号の符号化ブロックの変換ブロックへの分割方法を説明する図である。図15(a)は変数TransformSpritDirectionの値が2の際の色差信号の符号化ブロックの変換ブロックへの分割方法を説明する図である。色差フォーマットが4:2:0で変数TransformSpritDirectionの値が2の際には、色差信号の符号化ブロックを分割せず、色差信号の符号化ブロックをそのまま変換ブロックとする。分割モード(PartMode)がN×N分割(PART_NxN)の際には、色差信号の符号化ブロックを上下左右に四分割して、色差信号の正方形の変換ブロックとすることもできる。また、フラグsplit_transform_flagを用いる場合は、その値が1のときに、色差信号の符号化ブロックを上下左右に四分割して、色差信号の正方形の変換ブロックとする処理を行う。ただし、分割後のブロックが設定された変換ブロックの最小サイズ(本実施の形態においては4×4画素)より小さくなる場合には分割しない。
 図15(b)は変数TransformSpritDirectionの値が0の際の色差信号の符号化ブロックの変換ブロックへの分割方法を説明する図である。色差フォーマットが4:2:0で変数TransformSpritDirectionの値が0の際には、色差信号の符号化ブロックを上下方向に並ぶ4つの幅対高さの比率が4対1の横に長い長方形のブロックに分割する。ただし、分割後のブロックが設定された変換ブロックの最小サイズ(本実施の形態においてはブロックのいずれか小さい方の辺のサイズが4画素)より小さくなる場合には分割しない。
 図15(c)は変数TransformSpritDirectionの値が1の際の色差信号の符号化ブロックの変換ブロックへの分割方法を説明する図である。色差フォーマットが4:2:0で変数TransformSpritDirectionの値が1の際には、色差信号の符号化ブロックを左右方向に並ぶ4つの幅対高さの比率が1対4の縦に長い長方形のブロックに分割し、変換ブロックとする。ただし、分割後のブロックが設定された変換ブロックの最小サイズ(本実施の形態においてはブロックのいずれか小さい方の辺のサイズが4画素)より小さくなる場合には分割しない。
 続いて、色差フォーマットが4:2:2の場合について説明する。図16は色差フォーマットが4:2:2での色差信号の符号化ブロックの分割方法を説明する図である。図16(a)は変数TransformSpritDirectionの値が2の際の色差信号の符号化ブロックの分割方法を説明する図である。色差フォーマットが4:2:2で変数TransformSpritDirectionの値が2の際には、色差信号の符号化ブロックを上下に並ぶ2つの正方形のブロックに分割し、変換ブロックとする。正方形の変換ブロックに分割することで、輝度信号や色差フォーマットが4:2:0での色差信号で用いる変換ブロックと同じ形状、サイズの変換ブロック単位で直交変換を行うことができる。分割モード(PartMode)がN×N分割(PART_NxN)の際には、色差信号の符号化ブロックを上下左右に四分割して得られる色差信号の幅対高さの比率が1対2の縦に長い長方形のブロックをさらに上下に並ぶ2つの正方形のブロックに分割し、変換ブロックとすることもできる。また、フラグsplit_transform_flagを用いる場合は、その値が1のときに、色差信号の符号化ブロックを上下左右に四分割して得られる色差信号の幅対高さの比率が1対2の縦に長い長方形のブロックをさらに上下に並ぶ2つの正方形のブロックに分割し、変換ブロックとすることもできる。ただし、分割後のブロックが設定された変換ブロックの最小サイズ(本実施の形態においてはブロックのいずれか小さい方の辺のサイズが4画素)より小さくなる場合には分割しない。なお、図17(a)に示すように、分割せずに幅対高さの比率が1対2の縦に長い長方形の変換ブロック単位の直交変換処理を用意して、色差信号の符号化ブロックをそのまま変換ブロックとすることもできる。また、分割モード(PartMode)がN×N分割(PART_NxN)の際には、色差信号の符号化ブロックを上下左右に四分割して、色差信号の幅対高さの比率が1対2の縦に長い長方形の変換ブロックとすることもできる。また、フラグsplit_transform_flagを用いる場合は、その値が1のときに、色差信号の符号化ブロックを上下左右に四分割して、色差信号の幅対高さの比率が1対2の縦に長い長方形の変換ブロックとする処理を行う。ただし、分割後のブロックが設定された変換ブロックの最小サイズ(本実施の形態においてはブロックのいずれか小さい方の辺のサイズが4画素)より小さくなる場合には分割しない。
 図16(b)は変数TransformSpritDirectionの値が0の際の色差信号の符号化ブロックの分割方法を説明する図である。色差フォーマットが4:2:2で変数TransformSpritDirectionの値が0の際にも、色差信号の符号化ブロックを上下に並ぶ2つの正方形のブロックに分割し、変換ブロックとする。正方形の変換ブロックに分割することで、輝度信号や色差フォーマットが4:2:0での色差信号で用いる変換ブロックと同じ形状、サイズの変換ブロック単位で直交変換を行うことができる。なお、色差フォーマットが4:2:2では、正方形の変換ブロック単位で、直交変換を行うことにより、垂直方向よりも水平方向の相関性が高い場合に符号化効率を向上させることができる。なぜなら、色差フォーマットが4:2:2では、輝度信号に対して色差信号は水平方向に1/2で標本化(サンプリング)されているからである。なお、図17(b)に示すように、幅対高さの比率が2対1の横に長い長方形の変換ブロック単位の直交変換処理を用意して、色差信号の符号化ブロックを上下方向に並ぶ4つの横に長い長方形のブロックに分割し、変換ブロックとすることもできる。フラグsplit_transform_flagを用いる場合は、その値が1のときに、この処理を行う。ただし、図16(b)、図17(b)共に、分割後のブロックが設定された変換ブロックの最小サイズ(本実施の形態においてはブロックのいずれか小さい方の辺のサイズが4画素)より小さくなる場合には分割しない。
 図16(c)は変数TransformSpritDirectionの値が1の際の色差信号の符号化ブロックの分割方法を説明する図である。色差フォーマットが4:2:2で変数TransformSpritDirectionの値が1の際には、色差信号の符号化ブロックを左右に並ぶ2つの幅対高さの比率が1対4の縦に長い長方形のブロックに分割し、変換ブロックとする。幅対高さの比率が1対4の縦に長い長方形の変換ブロックに分割することで、輝度信号や色差フォーマットが4:2:0での色差信号で用いる変換ブロックと同じ形状、サイズの変換ブロック単位で直交変換を行うことができる。なお、縦に長い長方形の変換ブロック単位で、直交変換を行うことにより、水平方向よりも垂直方向の相関性が高い場合に符号化効率を向上させることができる。なお、図17(c)に示すように、幅対高さの比率が1対8の縦に長い長方形の変換ブロック単位の直交変換処理を用意して、色差信号の符号化ブロックを左右方向に並ぶ4つの縦に長い長方形のブロックに分割し、変換ブロックとすることもできる。フラグsplit_transform_flagを用いる場合は、その値が1のときに、この処理を行う。ただし、図16(c)、図17(c)共に、分割後のブロックが設定された変換ブロックの最小サイズ(本実施の形態においてはブロックのいずれか小さい方の辺のサイズが4画素)より小さくなる場合には分割しない。
 なお、符号化ブロックが設定された変換ブロックの最大サイズよりも大きい場合、最大サイズに達するまで符号化ブロックを再帰的に上下左右に4分割してから変数TransformSpritDirectionの値および色差フォーマットに応じて図15、図16、図17を用いて説明した処理を行う。また、上述の実施の形態においては、変数TransformSpritDirectionによって3種類の分割方法を切り替えるものとして説明した。一方で、これら3種類の分割方法のうちの1つだけを用いて処理するようにしてもよい。例えば、TransformSpritDirectionの値が2の分割方法だけで実現するようにしてもよい。この場合、変数TransformSpritDirectionを符号化、および復号せず、前記TransformSpritDirectionの値が2の処理を行う。
 以上述べた符号化ブロックの変換ブロックへの分割処理は、符号化側では、図1の符号化方法決定部105で符号化方法を決定する過程で実施される。復号側では図2の逆量子化・逆直交変換部208で実施される。符号化側では符号化方法決定部105で符号化ブロックの変換ブロックへの分割方法を決定して、その決定に応じた分割方法で符号化ブロックを変換ブロックに分割して、各変換ブロックの形状、サイズ、位置を導出し、直交変換・量子化部107で変換ブロック単位で直交変換および量子化を行い、逆量子化・逆直交変換部108で逆量子化および逆直交変換を行う。一方、復号側では逆量子化・逆直交変換部208で符号化ブロックの変換ブロックへの分割処理により各変換ブロックの形状、サイズ、位置を導出し、導出される変換ブロック単位で逆量子化および逆直交変換を行う。
 以上述べた実施の形態の画像符号化装置が出力する動画像の符号化ストリームは、実施の形態で用いられた符号化方法に応じて復号することができるように特定のデータフォーマットを有しており、画像符号化装置に対応する画像復号装置がこの特定のデータフォーマットの符号化ストリームを復号することができる。
 画像符号化装置と画像復号装置の間で符号化ストリームをやりとりするために、有線または無線のネットワークが用いられる場合、符号化ストリームを通信路の伝送形態に適したデータ形式に変換して伝送してもよい。その場合、画像符号化装置が出力する符号化ストリームを通信路の伝送形態に適したデータ形式の符号化データに変換してネットワークに送信する画像送信装置と、ネットワークから符号化データを受信して符号化ストリームに復元して画像復号装置に供給する画像受信装置とが設けられる。
 画像送信装置は、画像符号化装置が出力する符号化ストリームをバッファするメモリと、符号化ストリームをパケット化するパケット処理部と、パケット化された符号化データをネットワークを介して送信する送信部とを含む。画像受信装置は、パケット化された符号化データをネットワークを介して受信する受信部と、受信された符号化データをバッファするメモリと、符号化データをパケット処理して符号化ストリームを生成し、画像復号装置に提供するパケット処理部とを含む。
 以上の符号化及び復号に関する処理は、ハードウェアを用いた伝送、蓄積、受信装置として実現することができるのは勿論のこと、ROM(リード・オンリ・メモリ)やフラッシュメモリ等に記憶されているファームウェアや、コンピュータ等のソフトウェアによっても実現することができる。そのファームウェアプログラム、ソフトウェアプログラムをコンピュータ等で読み取り可能な記録媒体に記録して提供することも、有線あるいは無線のネットワークを通してサーバから提供することも、地上波あるいは衛星ディジタル放送のデータ放送として提供することも可能である。
 以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
 101 色差フォーマット設定部、 102 画像メモリ、 103 イントラ予測部、 104 インター予測部、 105 符号化方法決定部、 106 残差信号生成部、 107 直交変換・量子化部、 108 逆量子化・逆直交変換部、 109 復号画像信号重畳部、 110 符号化情報格納メモリ、 111 復号画像メモリ、 112 第1の符号化ビット列生成部、 113 第2の符号化ビット列生成部、 114 第3の符号化ビット列生成部、 115 符号化ビット列多重化部、 201 符号化ビット列分離部、 202 第1の符号化ビット列復号部、 203 第2の符号化ビット列復号部、 204 第3の符号化ビット列復号部、 205 色差フォーマット管理部、 206 イントラ予測部、 207 インター予測部、 208 逆量子化・逆直交変換部、 209 復号画像信号重畳部、 210 符号化情報格納メモリ、 211 復号画像メモリ、 212 スイッチ、 213 スイッチ。
 本発明は、直交変換を利用した画像符号化及び復号技術に利用できる。

Claims (26)

  1.  ブロック単位で輝度信号と色差信号とを含む画像信号を符号化する画像符号化装置であって、
     輝度信号の符号化ブロック及び色差信号の符号化ブロックのそれぞれを所定の形状を有する一以上の変換ブロックとし、輝度信号の変換ブロックと色差信号の変換ブロックとを直交変換する直交変換部と、
     前記直交変換された輝度信号の変換ブロックと色差信号の変換ブロックとを符号化して符号化ビット列を生成する符号化列生成部とを備えることを特徴とする画像符号化装置。
  2.  前記輝度信号の符号化ブロック及び前記色差信号の符号化ブロックの分割パターンを決定し、決定された分割パターンを示す情報を導出する符号化方法決定部をさらに備え、
     前記直交変換部は、前記分割パターンを示す情報に基づいて、前記輝度信号の符号化ブロック及び前記色差信号の符号化ブロックのそれぞれを前記変換ブロックとし、
     前記符号化列生成部は、さらに前記分割パターンを示す情報を符号化して前記符号化ビット列を生成することを特徴とする請求項1に記載の画像符号化装置。
  3.  前記画像信号の色差フォーマットが4:2:2である場合、前記直交変換部は、前記輝度信号の変換ブロックを正方形とし、色差信号の変換ブロックを長方形とすることを特徴とする請求項2に記載の画像符号化装置。
  4.  前記画像信号の色差フォーマットが4:2:2である場合、前記直交変換部は、前記輝度信号の変換ブロックを正方形とし、色差信号の変換ブロックを、前記色差信号の符号化ブロックを上下に分けた正方形とすることを特徴とする請求項2に記載の画像符号化装置。
  5.  ブロック単位で輝度信号と色差信号とを含む画像信号を符号化する画像符号化装置であって、
     符号化ブロックを直交変換するための変換ブロックに分割する際の分割方法を示す情報に応じて、色差信号の符号化ブロックの分割パターンを決定する符号化方法決定部と、
     輝度信号の変換ブロックと色差信号の変換ブロックとを直交変換する直交変換部と、
     直交変換後の輝度信号の変換ブロックと色差信号の変換ブロックとを符号化して符号化ビット列を生成する符号化列生成部とを備えることを特徴とする画像符号化装置。
  6.  ブロック単位で輝度信号と色差信号とを含む画像信号を符号化する画像符号化方法であって、
     輝度信号の符号化ブロック及び色差信号の符号化ブロックのそれぞれを所定の形状を有する一以上の変換ブロックとし、輝度信号の変換ブロックと色差信号の変換ブロックとを直交変換する直交変換ステップと、
     前記直交変換された輝度信号の変換ブロックと色差信号の変換ブロックとを符号化して符号化ビット列を生成する符号化列生成ステップとを備えることを特徴とする画像符号化方法。
  7.  前記輝度信号の符号化ブロック及び前記色差信号の符号化ブロックの分割パターンを決定し、決定された分割パターンを示す情報を導出する符号化方法決定ステップをさらに備え、
     前記直交変換ステップは、前記分割パターンを示す情報に基づいて、前記輝度信号の符号化ブロック及び前記色差信号の符号化ブロックのそれぞれを前記変換ブロックとし、
     前記符号化列生成ステップは、さらに前記分割パターンを示す情報を符号化して前記符号化ビット列を生成することを特徴とする請求項6に記載の画像符号化方法。
  8.  前記画像信号の色差フォーマットが4:2:2である場合、前記直交変換ステップは、前記輝度信号の変換ブロックを正方形とし、色差信号の変換ブロックを長方形とすることを特徴とする請求項7に記載の画像符号化方法。
  9.  前記画像信号の色差フォーマットが4:2:2である場合、前記直交変換ステップは、前記輝度信号の変換ブロックを正方形とし、色差信号の変換ブロックを、前記色差信号の符号化ブロックを上下に分けた正方形とすることを特徴とする請求項7に記載の画像符号化方法。
  10.  ブロック単位で輝度信号と色差信号とを含む画像信号を符号化する画像符号化プログラムであって、
     輝度信号の符号化ブロック及び色差信号の符号化ブロックのそれぞれを所定の形状を有する一以上の変換ブロックとし、輝度信号の変換ブロックと色差信号の変換ブロックとを直交変換する直交変換ステップと、
     前記直交変換された輝度信号の変換ブロックと色差信号の変換ブロックとを符号化して符号化ビット列を生成する符号化列生成ステップとをコンピュータに実行させることを特徴とする画像符号化プログラム。
  11.  前記輝度信号の符号化ブロック及び前記色差信号の符号化ブロックの分割パターンを決定し、決定された分割パターンを示す情報を導出する符号化方法決定ステップをさらにコンピュータに実行させ、
     前記直交変換ステップは、前記分割パターンを示す情報に基づいて、前記輝度信号の符号化ブロック及び前記色差信号の符号化ブロックのそれぞれを前記変換ブロックとし、
     前記符号化列生成ステップは、さらに前記分割パターンを示す情報を符号化して前記符号化ビット列を生成することを特徴とする請求項10に記載の画像符号化プログラム。
  12.  前記画像信号の色差フォーマットが4:2:2である場合、前記直交変換ステップは、前記輝度信号の変換ブロックを正方形とし、色差信号の変換ブロックを長方形とすることを特徴とする請求項11に記載の画像符号化プログラム。
  13.  前記画像信号の色差フォーマットが4:2:2である場合、前記直交変換ステップは、前記輝度信号の変換ブロックを正方形とし、色差信号の変換ブロックを、前記色差信号の符号化ブロックを上下に分けた正方形とすることを特徴とする請求項11に記載の画像符号化プログラム。
  14.  ブロック単位で輝度信号と色差信号とを含む画像信号を復号する画像復号装置であって、
     輝度信号の符号化ブロック及び色差信号の符号化ブロックのそれぞれを所定の形状を有する一以上の変換ブロックとし、輝度信号の変換ブロックと色差信号の変換ブロックとを逆直交変換する逆直交変換部と、
     前記逆直交変換された輝度信号の変換ブロックと色差信号の変換ブロックとを復号して得られる残差信号に予測信号を重畳して復号画像を生成する復号画像信号重畳部とを備えることを特徴とする画像復号装置。
  15.  前記逆直交変換部は、所定の分割パターンを示す情報に基づいて、前記輝度信号の符号化ブロック及び前記色差信号の符号化ブロックのそれぞれを前記変換ブロックとすることを特徴とする請求項14に記載の画像復号装置。
  16.  前記画像信号の色差フォーマットが4:2:2である場合、前記逆直交変換部は、前記輝度信号の変換ブロックを正方形とし、色差信号の変換ブロックを長方形とすることを特徴とする請求項15に記載の画像復号装置。
  17.  前記画像信号の色差フォーマットが4:2:2である場合、前記逆直交変換部は、前記輝度信号の変換ブロックを正方形とし、色差信号の変換ブロックを、前記色差信号の符号化ブロックを上下に分けた正方形とすることを特徴とする請求項15に記載の画像復号装置。
  18.  ブロック単位で輝度信号と色差信号とを含む画像信号を復号する画像復号装置であって、
     符号化ブロックを直交変換するための変換ブロックに分割する際の分割方法を示す情報に応じて、色差信号の符号化ブロックの分割パターンを決定し、輝度信号の変換ブロックと色差信号の変換ブロックとを逆直交変換する逆直交変換部と、
     逆直交変換後の輝度信号の変換ブロックと色差信号の変換ブロックとを復号して得られる残差信号に予測信号を重畳して復号画像を生成する復号画像信号重畳部とを備えることを特徴とする画像復号装置。
  19.  ブロック単位で輝度信号と色差信号とを含む画像信号を復号する画像復号方法であって、
     輝度信号の符号化ブロック及び色差信号の符号化ブロックのそれぞれを所定の形状を有する一以上の変換ブロックとし、輝度信号の変換ブロックと色差信号の変換ブロックとを逆直交変換する逆直交変換ステップと、
     前記逆直交変換された輝度信号の変換ブロックと色差信号の変換ブロックとを復号して得られる残差信号に予測信号を重畳して復号画像を生成する復号画像信号重畳ステップとを備えることを特徴とする画像復号方法。
  20.  前記逆直交変換ステップは、所定の分割パターンを示す情報に基づいて、前記輝度信号の符号化ブロック及び前記色差信号の符号化ブロックのそれぞれを前記変換ブロックとすることを特徴とする請求項19に記載の画像復号方法。
  21.  前記画像信号の色差フォーマットが4:2:2である場合、前記逆直交変換ステップは、前記輝度信号の変換ブロックを正方形とし、色差信号の変換ブロックを長方形とすることを特徴とする請求項20に記載の画像復号方法。
  22.  前記画像信号の色差フォーマットが4:2:2である場合、前記逆直交変換ステップは、前記輝度信号の変換ブロックを正方形とし、色差信号の変換ブロックを、前記色差信号の符号化ブロックを上下に分けた正方形とすることを特徴とする請求項20に記載の画像復号方法。
  23.  ブロック単位で輝度信号と色差信号とを含む画像信号を復号する画像復号プログラムであって、
     輝度信号の符号化ブロック及び色差信号の符号化ブロックのそれぞれを所定の形状を有する一以上の変換ブロックとし、輝度信号の変換ブロックと色差信号の変換ブロックとを逆直交変換する逆直交変換ステップと、
     前記逆直交変換された輝度信号の変換ブロックと色差信号の変換ブロックとを復号して得られる残差信号に予測信号を重畳して復号画像を生成する復号画像信号重畳ステップとをコンピュータに実行させることを特徴とする画像復号プログラム。
  24.  前記逆直交変換ステップは、所定の分割パターンを示す情報に基づいて、前記輝度信号の符号化ブロック及び前記色差信号の符号化ブロックのそれぞれを前記変換ブロックとすることを特徴とする請求項23に記載の画像復号プログラム。
  25.  前記画像信号の色差フォーマットが4:2:2である場合、前記逆直交変換ステップは、前記輝度信号の変換ブロックを正方形とし、色差信号の変換ブロックを長方形とすることを特徴とする請求項24に記載の画像復号プログラム。
  26.  前記画像信号の色差フォーマットが4:2:2である場合、前記逆直交変換ステップは、前記輝度信号の変換ブロックを正方形とし、色差信号の変換ブロックを、前記色差信号の符号化ブロックを上下に分けた正方形とすることを特徴とする請求項24に記載の画像復号プログラム。
PCT/JP2013/000232 2012-01-18 2013-01-18 画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに画像復号装置、画像復号方法及び画像復号プログラム WO2013108634A1 (ja)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
JP2012008432 2012-01-18
JP2012008431 2012-01-18
JP2012-008431 2012-01-18
JP2012-008432 2012-01-18
JP2013007258A JP2013168932A (ja) 2012-01-18 2013-01-18 画像復号装置、画像復号方法及び画像復号プログラム
JP2013-007257 2013-01-18
JP2013-007258 2013-01-18
JP2013007257A JP2013168931A (ja) 2012-01-18 2013-01-18 画像符号化装置、画像符号化方法及び画像符号化プログラム

Publications (1)

Publication Number Publication Date
WO2013108634A1 true WO2013108634A1 (ja) 2013-07-25

Family

ID=48799065

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/000232 WO2013108634A1 (ja) 2012-01-18 2013-01-18 画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに画像復号装置、画像復号方法及び画像復号プログラム

Country Status (1)

Country Link
WO (1) WO2013108634A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001359107A (ja) * 2000-04-14 2001-12-26 Sony Corp 復号装置および復号方法、記録媒体、並びにプログラム。
WO2011142279A1 (ja) * 2010-05-13 2011-11-17 シャープ株式会社 符号化装置、復号装置、およびデータ構造

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001359107A (ja) * 2000-04-14 2001-12-26 Sony Corp 復号装置および復号方法、記録媒体、並びにプログラム。
WO2011142279A1 (ja) * 2010-05-13 2011-11-17 シャープ株式会社 符号化装置、復号装置、およびデータ構造

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KAZUO SUGIMOTO ET AL.: "4:2:2 support in HEVC", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT- VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/ WG11 7TH MEETING, 19 November 2011 (2011-11-19), GENEVA, CH *

Similar Documents

Publication Publication Date Title
US10869033B2 (en) Picture coding device, picture coding method, picture coding program
US11006126B2 (en) Picture coding device, picture coding method, and picture coding program
US10158883B2 (en) Picture decoding device, picture decoding method and picture decoding program
JP5402995B2 (ja) 画像復号装置、画像復号方法及び画像復号プログラム、並びに、受信装置、受信方法及び受信プログラム
JP2013009103A (ja) 画像復号装置、画像復号方法及び画像復号プログラム
JP2013168932A (ja) 画像復号装置、画像復号方法及び画像復号プログラム
TW201336318A (zh) 影像編碼裝置、影像編碼方法及影像編碼程式、以及影像解碼裝置、影像解碼方法及影像解碼程式
WO2013108634A1 (ja) 画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに画像復号装置、画像復号方法及び画像復号プログラム
JP2013168931A (ja) 画像符号化装置、画像符号化方法及び画像符号化プログラム
JP5839144B1 (ja) 画像符号化装置、画像符号化方法、及び画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム
JP5839143B1 (ja) 画像符号化装置、画像符号化方法、及び画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム
JP6094656B2 (ja) 画像符号化装置、画像符号化方法、及び画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム
JP5839145B1 (ja) 画像符号化装置、画像符号化方法、及び画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム
JP2016007060A (ja) 画像符号化装置、画像符号化方法、及び画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13738273

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 13738273

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

NENP Non-entry into the national phase

Ref country code: DE