WO2015045301A1 - 映像符号化装置、映像符号化方法および映像符号化プログラム - Google Patents

映像符号化装置、映像符号化方法および映像符号化プログラム Download PDF

Info

Publication number
WO2015045301A1
WO2015045301A1 PCT/JP2014/004666 JP2014004666W WO2015045301A1 WO 2015045301 A1 WO2015045301 A1 WO 2015045301A1 JP 2014004666 W JP2014004666 W JP 2014004666W WO 2015045301 A1 WO2015045301 A1 WO 2015045301A1
Authority
WO
WIPO (PCT)
Prior art keywords
orthogonal transform
coefficient
dead zone
transform coefficient
video encoding
Prior art date
Application number
PCT/JP2014/004666
Other languages
English (en)
French (fr)
Inventor
慶一 蝶野
健太 徳満
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2015538868A priority Critical patent/JPWO2015045301A1/ja
Publication of WO2015045301A1 publication Critical patent/WO2015045301A1/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/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/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/17Methods 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 an image region, e.g. an object
    • H04N19/176Methods 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 an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Definitions

  • the present invention relates to a video encoding apparatus to which a quantization dead zone control technique is applied.
  • each frame of a digitized video is divided into coding tree units (CTU: Coding Tree Unit) and rasterized.
  • Each CTU is encoded in scan order.
  • Each CTU has a quad-tree structure and is encoded by being divided into coding units (CU: Coding Unit).
  • Each CTU has a quad tree structure and is encoded by being divided into coding units (CU: Coding Unit).
  • Each CU is predicted by being divided into prediction units (PU: Prediction Unit). Further, the prediction error of each CU is divided into transform units (TU: Transform) Unit) in a quadtree structure, and is frequency-transformed.
  • PU Prediction Unit
  • CU is a coding unit for intra prediction / interframe prediction.
  • intra prediction and inter-frame prediction will be described.
  • Intra prediction is prediction in which a prediction image is generated from a reconstructed image of an encoding target frame.
  • 33 types of angle intra prediction shown in FIG. 12 are defined.
  • the reconstructed pixels around the encoding target block are extrapolated in any of the 33 types of directions shown in FIG. 12 to generate an intra prediction signal.
  • a CU that uses intra prediction is referred to as an intra CU.
  • Inter-frame prediction is prediction in which a prediction image is generated from a reconstructed image of a reconstructed frame (reference picture) having a display time different from that of the encoding target frame.
  • FIG. 13 is an explanatory diagram showing an example of inter-frame prediction.
  • MV (mv x , mv y ) indicates the parallel movement amount of the reconstructed image block in the reference picture with respect to the encoding target block.
  • Inter-frame prediction (hereinafter referred to as inter prediction) generates an inter prediction signal based on the reconstructed image block.
  • a CU using inter prediction is referred to as an inter CU.
  • I frame A frame including not only an intra CU but also an inter CU is called a P frame (or P picture).
  • a frame that is encoded including not only one reference picture for inter prediction of a block but also an inter CU that uses two reference pictures at the same time is called a B frame (or B picture).
  • FIG. 14 the configuration and operation of a general video encoding apparatus that outputs a bit stream using each CU of each frame of a digitized video as an input image will be described.
  • a converter 101 includes a quantizer 102, an entropy encoder 103, an inverse quantizer / inverse transformer 104, a buffer 105, a predictor 106, and an estimator 107.
  • FIG. 15 shows an example of CTU division of frame t when the spatial resolution of the frame is CIF (CIF: Common Intermediate Format) and CTU size 64, and an example of CU division of the eighth CTU (CTU8) included in frame t
  • CIF Common Intermediate Format
  • CTU8 an example of CU division of the eighth CTU (CTU8) included in frame t
  • FIG. 16 is an explanatory diagram showing a CU quadtree structure of CTUs corresponding to a CU partitioning example of CTU8. It can be seen that the CU quadtree structure is expressed by the CU split flag (cu_split_flag) of each CUDepth.
  • Fig. 17 shows the PU split shape of the CU. If the CU is intra prediction, a square PU partition can be selected (however, if the CU is larger than the minimum size, only 2N ⁇ N can be selected). When CU is inter prediction, when CU is larger than 8, PU partition other than N ⁇ N can be selected (However, when CU is 8, only 2N ⁇ 2N, 2N ⁇ N, and N ⁇ 2N can be selected. Can be selected).
  • FIG. 18 is an explanatory diagram showing an example of TU partitioning of a CU.
  • an example of TU division of an intra CU having a 2N ⁇ 2N PU division shape is shown.
  • the root of the quad tree is arranged in the PU, and the TU quad tree structure of the prediction error of the CU is expressed by the TU split flag (tu_split_flag) of each TUDepth.
  • the lower row shows an example of TU division of an inter CU having a 2N ⁇ N PU division shape.
  • the root of the quad tree is arranged in the CU, and the TU quad tree structure of the prediction error of the CU is expressed by the TU split flag (tu_split_flag) of each TUDepth.
  • the estimator 107 determines, for each CTU, a CU quadtree structure / PU partition shape / TU quadtree structure that minimizes the coding cost.
  • the predictor 106 generates a prediction signal for the input image signal of the CU based on the CU quadtree structure and the PU partition shape determined by the estimator 107.
  • the prediction signal is generated based on the above-described intra prediction or inter prediction.
  • the converter 101 Based on the TU quadtree structure determined by the estimator 107 and a transform skip flag (transform_skip_flag) described later, the converter 101 performs frequency conversion on the prediction error image obtained by subtracting the prediction signal from the input image signal.
  • FIG. 19 is a block diagram showing a configuration example of the converter 101. With reference to FIG. 19, the configuration and operation of converter 101 are described in more detail.
  • the converter 101 includes a horizontal frequency converter 1011, a first right bit shifter 1012, a vertical frequency converter 1013, a second right bit shifter 1014, a third right bit shifter 1015, and a switch 1010 and a switch 1016.
  • a horizontal frequency converter 1011 a first right bit shifter 1012, a vertical frequency converter 1013, a second right bit shifter 1014, a third right bit shifter 1015, and a switch 1010 and a switch 1016.
  • the converter 101 can use orthogonal transforms of 4 ⁇ 4, 8 ⁇ 8, 16 ⁇ 16, and 32 ⁇ 32 block sizes based on frequency transform in transform coding of the prediction error signal.
  • integer precision DST Discrete Sine Transform
  • DCT ⁇ Discrete Cosine Transform
  • FIG. 20 is an explanatory diagram showing a base of integer precision DCT (integer DCT).
  • FIG. 21 is an explanatory diagram showing a base of DST with integer precision (integer DST).
  • the base of an integer DCT with N ⁇ N block size (hereinafter also referred to as N point integer DCT) is the element of the first N column of each row every 32 / N rows from the base row of the integer DCT of 32 ⁇ 32 block size. It is obtained by collecting.
  • the norm of the N-point integer DCT vector is almost uniform for all block sizes. Further, as can be seen from FIG. 21, the base of the integer DST is set so that the norm is substantially uniform with respect to the base of the integer DCT having the same block size.
  • the converter 101 can use not only the orthogonal transformation based on the above-described frequency transformation such as DST or DCT, but also 4 ⁇ 4 block size orthogonal transformation based on the unit matrix. This is because frequency conversions such as DST and DCT ⁇ are not suitable for preserving sharp edges such as screen content and computer graphics (CG).
  • the orthogonal transform based on the unit matrix of 4 ⁇ 4 block size is an orthogonal transform that does not perform frequency conversion, and is called a conversion skip mode.
  • the conversion skip mode is enabled when transform_skip_flag is set to 1.
  • the prediction error signal input via the switch 1010 is supplied to the horizontal frequency converter 1011.
  • the horizontal frequency converter 1011 performs frequency conversion of the prediction error signal of the TU having the N ⁇ N block size in the horizontal direction using the bases shown in FIG. 20 and FIG.
  • the first right bit shifter 1012 bit-shifts the prediction error signal of the TU frequency-converted in the horizontal direction to the right by log 2 N ⁇ 1 bits.
  • the vertical frequency converter 1013 frequency-converts the prediction error signal of the TU supplied from the first right bit shifter 1012 in the vertical direction using the bases shown in FIG. 20 and FIG.
  • the second right bit shifter 1014 bit-shifts the prediction error signal of the TU supplied from the vertical frequency converter 1013 rightward by log 2 N +6 bits.
  • the switch 1016 When transform_skip_flag is 0, the switch 1016 outputs the output of the second right bit shifter 1014 as the TU orthogonal transform coefficient.
  • the N ⁇ N block size TU prediction error signal input via the switch 1010 is supplied to the third right bit shifter 1015.
  • the third right bit shifter 1015 shifts the prediction error signal to the left by 13 ⁇ BitDepth bits. This is because the orthogonal transform coefficient obtained by using the frequency transform and the norm of the orthogonal transform coefficient in the transform skip mode are matched to apply the same quantization.
  • BitDepth is the pixel bit depth of the input image.
  • the switch 1016 When transform_skip_flag is 1, the switch 1016 outputs the output of the third right bit shifter 1015 as the orthogonal transform coefficient of the TU.
  • the quantizer 102 quantizes the orthogonal transform coefficient supplied from the converter 101.
  • the quantized orthogonal transform coefficient is referred to as a transform quantization value.
  • the operation of the quantizer 102 is described in more detail.
  • the quantizer 102 uses linear quantization in which the logarithm of the quantization parameter qP and the quantization step Qstep is proportional (for example, Qstep is doubled when qP is increased by 6).
  • the quantization processing for obtaining the quantization coefficient q ij of the orthogonal transformation coefficient c ij corresponding to the position (i, j) ⁇ 0 ⁇ i, j ⁇ N ⁇ 1 ⁇ within the TU of the N ⁇ N block size is as follows ( 1) It can be defined as
  • Sign () is a function that returns the sign of the input
  • Int [] is a function that converts the input to an integer value
  • Qscale is the quantization step coefficient shown in Fig. 22
  • qP% 6 is the remainder obtained by dividing qP by 6
  • m ij is a quantization weighting coefficient
  • f is an offset (0 ⁇ f ⁇ 0.5) for determining quantization rounding
  • N is a size of TU.
  • the default value of the quantization weighting coefficient m ij used for visual image quality adjustment is 16.
  • the quantization weighting coefficient matrix can be transmitted in units of sequences and pictures for each color component, each TU size, and each intra prediction / inter prediction.
  • the block size of the quantization weighting coefficient matrix that can be transmitted is up to 8 ⁇ 8.
  • the TU quantization weighting coefficient matrix having a block size of 16 ⁇ 16 or 32 ⁇ 32 is scaled based on a copy of the 8 ⁇ 8 quantization weighting coefficient matrix transmitted for each block size TU.
  • only the DC component can be transmitted separately.
  • FIG. 23, FIG. 24, FIG. 25, and FIG. 26 are explanatory diagrams showing default quantization weighting coefficient matrices for 4 ⁇ 4, 8 ⁇ 8, 16 ⁇ 16, and 32 ⁇ 32 TU intra prediction, respectively.
  • FIG. 25 confirms that the quantization weighting coefficient is the same for each 2 ⁇ 2 frequency component in the 16 ⁇ 16 intra TU default quantization weighting coefficient matrix by scaling based on the copy. Similarly, from FIG. 26, it can be confirmed that the quantization weighting coefficient is the same for each frequency component of 4 ⁇ 4 in the 32 ⁇ 32 TU default quantization weighting coefficient matrix.
  • the entropy encoder 103? Entropy-encodes cu_split_flag ?, PU partition shape, tu_split_flag ?, prediction parameters for intra / inter prediction, transform_skip_flag ?, and transform quantization values.
  • the inverse quantization / inverse transformer 104 inversely quantizes the transformed quantized value. Further, the inverse quantization / inverse transformer 104 inversely transforms the inversely quantized orthogonal transform coefficient.
  • the reconstructed prediction error image that has been inversely transformed is added with a prediction signal and supplied to the buffer 105.
  • the buffer 105 stores the reconstructed image.
  • a general video encoding device Based on the above-described operation, a general video encoding device generates a bit stream.
  • the video encoding device described above is the same for the orthogonal transform coefficient of a 4 ⁇ 4 block size TU without depending on whether the conversion skip mode is enabled / disabled (whether the conversion skip mode is enabled or disabled).
  • An orthogonal transform coefficient is quantized using a quantization weighting coefficient matrix.
  • FIG. 27 is an explanatory diagram showing a quantized weighting coefficient matrix with a gradient and a uniform quantization weighting coefficient matrix.
  • the quantized weighting coefficient matrix with a slope as shown on the left side in FIG. 27 reduces the amount of information of high frequency components that are difficult to perceive deterioration in a 4 ⁇ 4 block size TU in which the conversion skip mode is invalid. Indirectly, low-frequency component quantization noise that easily perceives degradation is reduced. However, the quantization weighting coefficient matrix causes an unacceptable deterioration according to the pixel position in the 4 ⁇ 4 block size TU in which the conversion skip mode is effective.
  • the uniform quantization weighting coefficient matrix as shown on the right side in FIG. 27, it is possible to prevent an unacceptable deterioration according to the pixel position in the 4 ⁇ 4 block size TU in which the conversion skip mode is effective.
  • the quantization weighting coefficient matrix cannot reduce the amount of high-frequency component information in a 4 ⁇ 4 block-size TU that is disabled in the conversion skip mode, the quantization of the low-frequency component that easily recognizes deterioration indirectly Increase noise.
  • the technique using the same quantization weighting coefficient matrix for the prediction error signal without depending on the validity / invalidity of the conversion skip mode cannot perform the quantization according to the visual characteristic, and causes local image quality degradation. There is a problem that cannot be avoided.
  • a large block size DCT is effective in concentrating power of a prediction error signal in a flat region with little change in sharp pixel values.
  • the orthogonal transform coefficient by DCT has a characteristic that quantization noise is less perceivable as the frequency component becomes higher.
  • a quantization step size that matches the visual characteristics of each frequency component in the quantization of a DCT orthogonal transform coefficient having a block size of 16 ⁇ 16 or 32 ⁇ 32.
  • the video encoding device described above cannot use a quantization step size that matches the visual characteristics of each frequency component in 16 ⁇ 16 and 32 ⁇ 32 DCT32 quantization. This is because the quantization weighting coefficient for determining the quantization step size is shared among a plurality of frequency components in order to save the memory capacity on the video decoding device side. For example, even if an attempt is made to apply the quantization weighting coefficient matrix shown in FIG. 28 to an orthogonal transform coefficient of 16 ⁇ 16 intra TU, the underlined frequency component in FIG. Quantization cannot be performed with a desired quantization step size.
  • FIG. 28 shows a 16 ⁇ 16 intra TU quantization weighting coefficient matrix, but the values of the underlined elements are different from the default values shown in FIG.
  • the same quantization weighting coefficient is used for orthogonal transform coefficients of different frequency components, it is not possible to efficiently remove a low-power frequency component that is difficult to perceive quantization noise. For example, since there is noise due to analog-digital conversion or the like in a video, a high frequency component with a small power is generated even in a flat region where a DCT of 16 ⁇ 16 or 32 ⁇ 32 is selected. Since the remaining frequency components increase entropy, in order to keep the bit rate low, the orthogonal transform coefficients of the low frequency components must be roughly quantized. As a result, the above-described video encoding device increases the low-frequency component quantization noise and reduces the video quality.
  • An object of the present invention is to provide a video encoding device, a video encoding method, and a video encoding program that can suppress a decrease in video quality.
  • the video encoding apparatus includes dead zone coefficient selection means for selecting a dead zone coefficient used for truncation of orthogonal transform coefficients based on whether or not the transform skip mode is valid, and a dead value whose absolute value is selected.
  • An orthogonal transform coefficient converting unit that converts an orthogonal transform coefficient that is equal to or less than a dead zone derived from a zone coefficient to 0, and a quantizing unit that quantizes the orthogonal transform coefficient output by the orthogonal transform coefficient converting unit.
  • Another video encoding device is derived from dead zone coefficient setting means for setting a dead zone coefficient corresponding to each frequency component of an orthogonal transform coefficient having a block size larger than a predetermined size, and the set dead zone coefficient.
  • the video coding method selects a dead zone coefficient to be used for truncation of orthogonal transform coefficients based on whether or not the transform skip mode is valid, and an absolute value is derived from the selected dead zone coefficients.
  • An orthogonal transform coefficient conversion process for converting an orthogonal transform coefficient that is equal to or less than a dead zone to 0 is executed, and the orthogonal transform coefficient by the orthogonal transform coefficient conversion process is quantized.
  • Another video encoding method sets a dead zone coefficient corresponding to each frequency component of an orthogonal transform coefficient having a block size larger than a predetermined size, and is equal to or less than a dead zone derived from the set dead zone coefficient.
  • An orthogonal transform coefficient transform process for transforming an orthogonal transform coefficient of a certain absolute value to 0 is executed, and the orthogonal transform coefficient by the orthogonal transform coefficient transform process is quantized.
  • a computer selects a dead zone coefficient used for truncation of orthogonal transform coefficients based on whether or not the transform skip mode is valid, and an absolute value of the selected dead zone.
  • An orthogonal transform coefficient transform process for transforming an orthogonal transform coefficient that is equal to or less than a dead zone derived from the coefficients to 0 and a process for quantizing the orthogonal transform coefficient by the orthogonal transform coefficient transform process are executed.
  • Another video encoding program is derived from a process for setting a dead zone coefficient corresponding to each frequency component of an orthogonal transform coefficient having a block size larger than a predetermined size in the computer, and the set dead zone coefficient.
  • An orthogonal transform coefficient transform process for transforming an orthogonal transform coefficient with an absolute value that is equal to or less than a dead zone to 0 and a process for quantizing the orthogonal transform coefficient by the orthogonal transform coefficient transform process are executed.
  • FIG. 6 is an explanatory diagram showing an example of CTU partitioning of frame t and a CU partitioning example of CTU8 of frame t.
  • FIG. 1 is a block diagram illustrating a configuration of an embodiment of a video encoding device.
  • the video encoding apparatus shown in FIG. 1 is adaptive in addition to a converter 101, a quantizer 102, an entropy encoder 103, an inverse quantizer / inverse transformer 104, a buffer 105, a predictor 106, and an estimator 107.
  • a truncator 108 is provided.
  • the estimator 107 determines the CU quadtree structure / PU partition shape / TU quadtree structure that minimizes the coding cost for each CTU.
  • the predictor 106 generates a prediction signal for the input image signal of the CU based on the CU quadtree structure and the PU partition shape determined by the estimator 107.
  • the converter 101 Based on the TU quadtree structure determined by the estimator 107 and the transform skip flag (transform_skip_flag), the converter 101 performs frequency conversion on the prediction error image obtained by subtracting the prediction signal from the input image signal.
  • the adaptive truncator 108 ⁇ ⁇ performs a truncation process on the orthogonal transform coefficient supplied from the converter 101 ⁇ ⁇ ⁇ based on the transform skip flag (transform_skip_flag ⁇ ⁇ ) determined by the estimator 107.
  • FIG. 2 is a block diagram showing an example of the configuration of the adaptive truncator 108.
  • the adaptive truncator 108 uses the dead zone coefficient matrix and the quantization weighting coefficient matrix shown in FIG. 3 for the 4 ⁇ 4 block size TU orthogonal transform coefficient obtained by the intra prediction.
  • FIG. 3B is an explanatory diagram showing a dead zone coefficient matrix and a quantization weighting coefficient matrix used by the video encoding apparatus of the present embodiment.
  • the dead zone technique is a technique for setting the output corresponding to an input close to 0 to 0 when quantizing the orthogonal transform coefficient.
  • the dead zone corresponds to an index for determining whether or not to set the orthogonal transform coefficient to 0.
  • the dead zone coefficient is a parameter used for setting the dead zone, and can be arbitrarily set.
  • the sloped dead zone coefficient matrix shown on the left side of Fig. 3 is obtained by dividing each element of the sloped quantization weighting coefficient matrix shown on the left side of Fig. 27 by the elements of the uniform quantization weighting coefficient matrix shown in the lower center of Fig. 3.
  • the uniform dead zone coefficient matrix shown on the right side in Fig. 3 is obtained by dividing each element of the uniform quantization weighting coefficient matrix shown on the right side in Fig. 27 by the element of the uniform quantization weighting coefficient matrix shown in the lower center of Fig. 3. This is a generated matrix. It can be seen that the dead zone coefficient has a fixed value without depending on i and j indicating the position (i, j) ⁇ 0 ⁇ i, j ⁇ 3 ⁇ in the TU.
  • the dead zone coefficient selection unit 1081 selects the above-described uniform dead zone coefficient matrix.
  • transform_skip_flag is 0, the above-described sloped dead zone coefficient matrix is selected.
  • the dead zone coefficient corresponding to the position (i, j) be dij .
  • Dead zone calculation unit 1082 calculates the dead zone dz ij for orthogonal transformation coefficients c ij by the following equation (2).
  • the dead zone dz ij calculated by the above formula has the following characteristics.
  • the dead zone dz ij becomes a fixed value without depending on i and j indicating the position (i, j) ⁇ 0 ⁇ i, j ⁇ 3 ⁇ in the TU. That is, the amount of information of the orthogonal transform coefficient can be reduced by a constant amount without depending on the pixel position by the processing of the truncation unit 1083 described later.
  • the truncation unit 1083 compares the absolute value of c ij at each position (i, j) ⁇ 0 ⁇ i, j ⁇ 3 ⁇ with dz ij only for the TU orthogonal transform coefficient of 4 ⁇ 4 block size, When the absolute value of c ij is less than dz ij , c ij is output as 0. In other cases, c ij is output as it is.
  • the following formula (3) is typical.
  • the quantizer 102 quantizes the orthogonal transform coefficient supplied from the adaptive truncator 108.
  • the entropy encoder 103? Entropy-encodes cu_split_flag ?, PU partition shape, tu_split_flag ?, prediction parameters for intra / inter prediction, transform_skip_flag ?, and transform quantization values.
  • the inverse quantization / inverse transformer 104 inversely quantizes the transformed quantized value. Further, the inverse quantization / inverse transformer 104 inversely transforms the inversely quantized orthogonal transform coefficient.
  • the reconstructed prediction error image that has been inversely transformed is added with a prediction signal and supplied to the buffer 105.
  • the buffer 105 stores the reconstructed image.
  • the video encoding device of this embodiment Based on the above-described operation, the video encoding device of this embodiment generates a bit stream.
  • step S101 the dead zone coefficient selection unit 1081 determines whether or not transform_skip_flag of the TU of the processing target 4 ⁇ 4 block size is 0. If 0, go to step S102. Otherwise, the process proceeds to step S103.
  • step S102 the dead zone coefficient selection unit 1081 selects a dead zone coefficient matrix with an inclination shown on the left side in FIG. Then, the process proceeds to step S104.
  • step S103 the dead zone coefficient selection unit 1081 selects the uniform dead zone coefficient matrix shown on the right side in FIG. Then, the process proceeds to step S104.
  • step S104 the dead zone calculation unit 1082 determines, based on the selected dead zone coefficient matrix, each position (i, j) ⁇ 0 ⁇ i, j ⁇ 3 ⁇ of the 4 ⁇ 4 block size TU to be processed. Compute dead zone dz ij for orthogonal transform coefficients.
  • step S105 the truncation unit 1083 determines the absolute value of the orthogonal transform coefficient c ij at each position (i, j) ⁇ 0 ⁇ i, j ⁇ 3 ⁇ of the 4 ⁇ 4 block size TU to be processed and the dead zone dz ij It compares the absolute value of c ij are the following cases dz ij, and outputs the c ij 0. In other cases, truncation section 1083 outputs c ij as it is.
  • the adaptive truncator 108 ⁇ monitors the validity / invalidity of the transform skip mode (transform_skip_flag value) of the processing target block, and uses the dead zone coefficient used for truncation of the orthogonal transform coefficient of the processing target 4 ⁇ 4 block size TU. Is selected adaptively. Specifically, when the conversion skip mode of 4 ⁇ 4 block size TU is invalid, a dead zone coefficient with a slope is selected. When the 4 ⁇ 4 block size TU conversion skip mode is enabled, a uniform dead zone coefficient is selected.
  • the adaptive truncator 108 calculates a dead zone from the selected dead zone coefficient and the quantization step size, and converts the orthogonal transform coefficient included in the 4 ⁇ 4 block size TU whose absolute value is equal to or less than the dead zone to 0. .
  • the video encoding device of the present embodiment includes the adaptive truncator 108, even if a video encoding scheme using a uniform quantization weighting coefficient matrix is used, the 4 ⁇ 4 block in which the conversion skip mode is disabled is selected.
  • the size TU it is possible to reduce the amount of information of high frequency components that are difficult to perceive degradation in a dead zone with a slope. As a result, it is possible to indirectly reduce low-frequency component quantization noise that easily perceives deterioration.
  • the video encoding method uses the same uniform quantization weighting coefficient matrix for orthogonal transform coefficients of 4 ⁇ 4 block size TU without depending on the validity / invalidity of the transform skip mode, the visual characteristics It is possible to avoid local image quality degradation by quantization according to.
  • the dead zone coefficient matrix and the quantization weighting coefficient matrix shown in FIG. 3B are used for the orthogonal transform coefficients of 4 ⁇ 4 block size TU obtained by intra prediction.
  • the amount of information of high-frequency components that are difficult to perceive deterioration is slanted. Can be reduced in the zone.
  • the elements of the sloped dead zone coefficient matrix and the uniform dead zone coefficient matrix are stored in a predetermined storage unit as real numbers.
  • the quantization step Qstep doubles when the quantization parameter qP increases by 6 in quantization
  • the elements of the sloped dead zone coefficient matrix and uniform dead zone coefficient matrix are stored as integers in the storage unit. It is also possible to do.
  • the real dead zone coefficient dz ij can be expressed as an integer dead zone coefficient qPDZOffset ij by the logarithmic expression of the following equation.
  • the dead zone calculation unit 1082 calculates the dead zone dz ij for the orthogonal transformation coefficient c ij as shown in the following equation (4).
  • the dead zone coefficient qPDZOffset ij is used as an offset of the quantization parameter qP.
  • integer dead zone coefficients instead of real numbers, the storage capacity of the sloped dead zone coefficient matrix and the uniform dead zone coefficient matrix can be reduced.
  • the video encoding apparatus adaptively removes high-frequency component orthogonal transform coefficients that are invalid in the transform skip mode when using a video coding system that uses a uniform quantization weighting coefficient matrix. Quantization according to visual characteristics can be realized, and local image quality degradation can be avoided.
  • the video encoding apparatus of the present embodiment does not deteriorate even in the 4 ⁇ 4 block size TU in which the conversion skip mode invalidity is selected even when using a video encoding scheme that uses a uniform quantization weighting coefficient matrix.
  • the amount of information of high frequency components that are difficult to recognize can be reduced in a dead zone with a slope.
  • the configuration of the video encoding apparatus according to the second embodiment is as shown in FIG.
  • the adaptive truncator 108 ⁇ shown in FIG. 2 uses the non-uniform dead zone coefficient matrix shown in FIG. 5 ⁇ ⁇ ⁇ ⁇ for the orthogonal transform coefficients of 16 ⁇ 16 block size TU obtained by intra prediction.
  • the quantization weighting coefficient matrix shown in FIG. 25 is used as the quantization weighting matrix to be transmitted.
  • the dead zone technique is a technique for setting the output corresponding to an input close to 0 to 0 when quantizing the orthogonal transform coefficient.
  • the dead zone corresponds to an index for determining whether or not to set the orthogonal transform coefficient to 0.
  • the dead zone coefficient is a parameter used for setting the dead zone, and can be arbitrarily set.
  • the non-uniform dead zone coefficient matrix shown in FIG. 5B is a matrix generated by dividing each element of the quantization weighting coefficient matrix shown in FIG. 28 by the element of the default quantization weighting coefficient matrix shown in FIG. It can be seen that the dead zone coefficient varies depending on the position (i, j) ⁇ 0 ⁇ i, j ⁇ N ⁇ 1 ⁇ in the TU, that is, depending on the frequency component.
  • the dead zone coefficient selection unit 1081 selects the non-uniform dead zone coefficient matrix described above when the DCT score N is larger than 8. When the DCT score N is 8 or less, the above-described uniform dead zone coefficient matrix is selected. Let d ij be the dead zone coefficient corresponding to the frequency component (i, j).
  • Dead zone calculation unit 1082 when DCT of points N is larger than 8, the dead zone dz ij for orthogonal transformation coefficients c ij are calculated as above in (2) below.
  • the dead zone dz ij calculated by equation (2) has the following characteristics.
  • the dead zone dz ij takes different values.
  • the processing of the truncation unit 1083 described later the amount of information on the orthogonal transform coefficient of the frequency component that is less likely to be deteriorated is reduced even if the orthogonal transform coefficient is the same quantization weighting coefficient every 2 ⁇ 2. Can do.
  • the truncation unit 1083 applies c ij of each frequency component (i, j) ⁇ 0 ⁇ i, j ⁇ N ⁇ 1 ⁇ to the TU orthogonal transform coefficient of 16 ⁇ 16 block size larger than 8 ⁇ 8 block size.
  • the absolute value of c ij are the following cases dz ij, and outputs the c ij 0. In other cases, c ij is output as it is.
  • the above formula (3) is typical.
  • the quantizer 102 quantizes the orthogonal transform coefficient supplied from the adaptive truncator 108.
  • the entropy encoder 103? Entropy-encodes cu_split_flag ?, PU partition shape, tu_split_flag ?, prediction parameters for intra / inter prediction, transform_skip_flag ?, and transform quantization values.
  • the inverse quantization / inverse transformer 104 inversely quantizes the transformed quantized value. Further, the inverse quantization / inverse transformer 104 inversely transforms the inversely quantized orthogonal transform coefficient.
  • the reconstructed prediction error image that has been inversely transformed is added with a prediction signal and supplied to the buffer 105.
  • the buffer 105 stores the reconstructed image.
  • the video encoding device of this embodiment Based on the above-described operation, the video encoding device of this embodiment generates a bit stream.
  • step S201 the dead zone coefficient selection unit 1081 determines whether or not the block size of the DCT to be processed is larger than 8 ⁇ 8. If larger than 8 ⁇ 8, that is, if the block size of the DCT to be processed is 16 ⁇ 16, the process proceeds to step S202. Otherwise, the process ends.
  • step S202 the dead zone coefficient selection unit 1081 selects the non-uniform dead zone coefficient matrix shown in FIG. Then, the process proceeds to step S203.
  • the dead zone coefficient selection unit 1081 selects a uniform dead zone coefficient in which all elements are 1 mm when the block size of the DCT is 8 ⁇ 8 or less.
  • step S203 the dead zone calculation unit 1082 determines, based on the selected dead zone coefficient matrix, each frequency component (i, j) ⁇ 0 ⁇ i, j ⁇ 15 ⁇ of the 16 ⁇ 16 block size TU to be processed Calculate the dead zone dz ij for the orthogonal transform coefficient of. Then, the process proceeds to step S204.
  • step S204 the truncation unit 1083 calculates the absolute value of the orthogonal transform coefficient c ij at each position (i, j) ⁇ 0 ⁇ i, j ⁇ 15 ⁇ of the 16 ⁇ 16 block size TU to be processed and the dead zone dz ij It compares the absolute value of c ij are the following cases dz ij, and outputs the c ij 0. In other cases, truncation section 1083 outputs c ij as it is.
  • the quantizer 102 ⁇ quantizes the orthogonal transform coefficient output from the adaptive truncator 108 ⁇ . If the block size is larger than 8 ⁇ 8, a plurality of frequency components are used for the orthogonal transform coefficient (excluding the DC component). Quantize orthogonal transform coefficients using quantization weighting coefficients of the same value for. For example, the quantization weighting coefficient matrix shown in FIG. 23 or FIG. 24 is applied to the orthogonal transform coefficient.
  • the adaptive truncator 108 monitors the DCT block size of the processing target block and adaptively selects a dead zone used for truncation of the orthogonal transform coefficient of the processing target block. Specifically, when the DCT block size of the processing target block is larger than 8 ⁇ 8 (that is, the same quantization weighting coefficient is used for orthogonal transform coefficients of frequency components having different block sizes of the processing target block). Non-uniform dead zone coefficients that can take different values for each frequency component. Otherwise, select a uniform dead zone factor with a fixed value of 1. Further, the adaptive truncator 108 calculates a dead zone from the selected dead zone coefficient and the quantization step size, and converts the orthogonal transformation coefficient of a small high frequency component whose absolute value is equal to or less than the dead zone to 0.
  • the video encoding apparatus of the present embodiment includes the adaptive truncator 108, even if a 16 ⁇ 16 block size DCT that uses the same quantization weighting coefficient for quantization for each 2 ⁇ 2 frequency component is used, the frequency A frequency component with a small power can be efficiently removed according to the visual characteristics of each component. As a result, low-frequency component quantization noise is reduced, and video quality can be improved. That is, by suppressing an increase in quantization noise of low frequency components, it is possible to suppress a decrease in video quality.
  • the converter 101 uses orthogonal transform based on DCT of 4 ⁇ 4, 8 ⁇ 8, and 16 ⁇ 16 block sizes. Even with a 32 ⁇ 32 block size DCT that uses the same quantization weighting coefficient for each frequency component of ⁇ 4, as in the case of the 16 ⁇ 16 block size, the adaptive truncator 108 A frequency component with a small power can be efficiently removed according to the visual characteristics.
  • the adaptive truncator 108 ⁇ ⁇ ⁇ is used in the same manner as the 16 ⁇ 16 block size obtained by intra prediction.
  • frequency components with small power can be efficiently removed according to visual characteristics for each frequency component.
  • all elements of the 16 ⁇ 16 block size dead zone coefficient matrix are stored in the truncation unit 1083. Focusing on the fact that 2 ⁇ 2 frequency components have the same quantization weighting coefficient, a 2 ⁇ 2 sub-dead zone coefficient matrix shown in FIG. 7B may be used for 16 ⁇ 16 intra TUs.
  • the dead zone dz ij (0 ⁇ i, j ⁇ 15) of 16 ⁇ 16 block size is calculated by the following equation (5).
  • the storage capacity of the dead zone coefficient matrix can be reduced by using the sub dead zone coefficient matrix corresponding to the copy.
  • the 4 ⁇ 4 shown in FIG. A sub-dead zone coefficient matrix of 4 may be used.
  • the dead zone dz ij (0 ⁇ i, j ⁇ 31) of 32 ⁇ 32 block size is calculated by the following equation (6).
  • the elements of the dead zone coefficient matrix are stored as real numbers in a predetermined storage unit.
  • the elements of the dead zone coefficient matrix can be stored in the storage unit as integers.
  • the real dead zone coefficient dz ij can be expressed as an integer dead zone coefficient qPDZOffset ij by the logarithmic expression of the following equation.
  • the dead zone calculation unit 1082 calculates the dead zone dz ij for the orthogonal transformation coefficient c ij as shown in the above equation (4).
  • the dead zone coefficient qPDZOffset ij is used as an offset of the quantization parameter qP.
  • each of the above embodiments can be configured by hardware, it can also be realized by a computer program.
  • the information processing system shown in FIG. 9 includes a processor 1001, a program memory 1002, a storage medium 1003 for storing video data, and a storage medium 1004 for storing a bitstream.
  • the storage medium 1003 and the storage medium 1004 may be separate storage media, or may be storage areas composed of the same storage medium.
  • a magnetic storage medium such as a hard disk can be used as the storage medium.
  • the program memory 1002 stores a program for realizing the function of each block shown in FIG. Then, the processor 1001 implements the function of the video encoding device shown in FIG. 1B by executing processing according to the program stored in the program memory 1002.
  • FIG. 10 is a block diagram showing the main part of the video encoding apparatus according to the present invention.
  • the video encoding apparatus is a dead zone coefficient selection unit 10 that selects a dead zone coefficient used for truncation of orthogonal transform coefficients based on the validity / invalidity of the transform skip mode (for example, as shown in FIG. A dead zone coefficient selecting unit 1081) and an orthogonal transform coefficient converting unit 20 that converts an orthogonal transform coefficient whose absolute value is equal to or less than the dead zone derived from the selected dead zone coefficient to 0 (as shown in FIG.
  • a quantization unit 30 for example, a quantizer 102 shown in FIG. 1B
  • FIG. 11 is a block diagram showing a main part of another video encoding apparatus according to the present invention.
  • the video encoding device includes a dead zone coefficient setting unit 11 that sets a dead zone coefficient corresponding to each frequency component of an orthogonal transform coefficient having a block size larger than a predetermined size (for example, FIG. Dead zone coefficient selecting unit 1081) and an orthogonal transform coefficient converting unit 21 that converts the orthogonal transform coefficient of the absolute value whose absolute value is equal to or less than the dead zone derived from the set dead zone coefficient to 0 (as an example, A dead zone calculation unit 1082 and a truncation unit 1083 shown in FIG. 2B), a quantization unit 31 (for example, a quantizer 102 ⁇ shown in FIG. 1B) that quantizes the orthogonal transformation coefficient output from the orthogonal transformation coefficient transformation unit 21, and Is provided.
  • a dead zone coefficient setting unit 11 sets a dead zone coefficient corresponding to each frequency component of an orthogonal transform coefficient having a block size larger
  • Dead zone coefficient selector 11 Dead Zone Coefficient Setting Unit 20,21 Orthogonal Transform Coefficient Transformer 30,31 Quantization Unit 101 Transformer 102 Quantizer 103 Entropy Encoder 104 Inverse Quantization / Inverse Transformer 105 Buffer 106 Predictor 107 Estimator 108 Adaptation Truncator 1081 Dead zone coefficient selector 1082 Dead zone calculator 1083 Truncator

Landscapes

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

Abstract

 映像符号化装置は、変換スキップモードが有効であるか否かに基づいて直交変換係数の切り捨てに用いるデッドゾーン係数を選択するデッドゾーン係数選択部と、絶対値が、選択されたデッドゾーン係数から導出されるデッドゾーン以下である直交変換係数を0に変換する直交変換係数変換部と、直交変換係数変換部が出力する直交変換係数を量子化する量子化部とを備える。

Description

映像符号化装置、映像符号化方法および映像符号化プログラム
 本発明は、量子化のデッドゾーン制御技術が適用される映像符号化装置に関する。
 非特許文献1に記載されたHigh-Efficiency Video Coding (HEVC)に基づいた映像符号化方式では、ディジタル化された映像の各フレームは符号化ツリーユニット(CTU:Coding Tree Unit)に分割され、ラスタスキャン順に各CTUが符号化される。各CTUは、クアッドツリー構造で、符号化ユニット(CU: Coding Unit)に分割されて符号化される。各CTUは、クアッドツリー構造で、符号化ユニット(CU:Coding Unit)に分割されて符号化される。各CUは、予測ユニット(PU:Prediction Unit)に分割されて予測される。また、各CUの予測誤差は、クアッドツリー構造で、変換ユニット(TU: Transform Unit)に分割されて周波数変換される。
 CUは、イントラ予測/フレーム間予測の符号化単位である。以下、イントラ予測およびフレーム間予測を説明する。
 イントラ予測は、符号化対象フレームの再構築画像から予測画像を生成する予測である。非特許文献1では、DC予測およびPlanar 予測に加えて、図12に示す33種類の角度イントラ予測が定義されている。角度イントラ予測は、符号化対象ブロック周辺の再構築画素を図12に示す33種類の方向のいずれかに外挿して、イントラ予測信号を生成する。以下、イントラ予測を用いるCUをイントラCUと呼ぶ。
 フレーム間予測は、符号化対象フレームと表示時刻が異なる再構築フレーム(参照ピクチャ)の再構築画像から予測画像を生成する予測である。図13は、フレーム間予測の例を示す説明図である。MV=(mvx, mvy)は、符号化対象ブロックに対する参照ピクチャ中の再構築画像ブロックの平行移動量を示す。フレーム間予測(以下、インター予測と呼ぶ)は、再構築画像ブロックに基づいて、インター予測信号を生成する。以下、インター予測を用いるCUをインターCUと呼ぶ。
 なお、イントラCUのみで符号化されたフレームはIフレーム(または、Iピクチャ)と呼ばれる。イントラCUだけでなくインターCUも含めて符号化されたフレームはPフレーム(または、Pピクチャ)と呼ばれる。ブロックのインター予測に1枚の参照ピクチャだけでなく、さらに同時に2枚の参照ピクチャを用いるインターCUを含めて符号化されたフレームはBフレーム(または、Bピクチャ)と呼ばれる。
 図14を参照して、ディジタル化された映像の各フレームの各CUを入力画像としてビットストリームを出力する一般的な映像符号化装置の構成と動作を説明する。
 図14に示す映像符号化装置は、変換器101 、量子化器102 、エントロピー符号化器103 、逆量子化/逆変換器104 、バッファ105 、予測器106 、および推定器107 を備える。
 図15は、フレームの空間解像度がCIF (CIF:Common Intermediate Format)、CTU サイズが64の場合のフレームt のCTU 分割例、および、フレームt に含まれる第8のCTU (CTU8)のCU分割例を示す説明図である。また、図16は、CTU8のCU分割例に対応する、CTU のCUクアッドツリー構造を示す説明図である。CUクアッドツリー構造は、各CUDepth のCU分割フラグ(cu_split_flag )で表現されることが分かる。
 図17は、CUのPU分割形状を示す。CUがイントラ予測の場合、正方形のPU分割を選択できる(ただし、CUが最小サイズよりも大きい場合、2N×N のみを選択できる)。CUがインター予測の場合、CUが8 よりも大きい場合、N×N以外のPU分割を選択できる(ただし、CUが8 の場合、2N×2N、2N×N 、およびN×2N のいずれかのみを選択できる)。
 図18は、CUのTU分割例を示す説明図である。上段には、2N×2N PU 分割形状のイントラCUのTU分割例が示されている。CUがイントラ予測の場合、クアッドツリーの根(Root)がPUに配置され、CUの予測誤差のTUクアッドツリー構造が各TUDepth のTU分割フラグ(tu_split_flag )で表現される。下段には、2N×N PU分割形状のインターCUのTU分割例が示されている。CUがインター予測の場合、クアッドツリーの根(Root)がCUに配置され、CUの予測誤差のTUクアッドツリー構造が各TUDepthのTU分割フラグ(tu_split_flag )で表現される。
 推定器107 は、CTU毎に、符号化コストを最小とするCUクアッドツリー構造/PU分割形状/TUクアッドツリー構造を決定する。
 予測器106 は、推定器107 が決定したCUクアッドツリー構造およびPU分割形状に基づいて、CUの入力画像信号に対する予測信号を生成する。予測信号は、上述したイントラ予測またはインター予測に基づいて生成される。
 変換器101 は、推定器107 が決定したTUクアッドツリー構造および後述する変換スキップフラグ(transform_skip_flag )に基づいて、入力画像信号から予測信号を減じた予測誤差画像を周波数変換する。
 図19は、変換器101 の構成例を示すブロック図である。図19を参照して、変換器101 の構成と動作をさらに詳しく説明する。
 変換器101 は、水平方向周波数変換器1011、第1右ビットシフト器1012、垂直方向周波数変換器1013、第2右ビットシフト器1014、第3右ビットシフト器1015、および、スイッチ1010とスイッチ1016とを備える。
 変換器101 は、予測誤差信号の変換符号化において、周波数変換に基づいた4×4、8×8、16×16、および32×32ブロックサイズの直交変換を利用できる。具体的には、イントラCUの輝度成分の4×4 TU に対して、整数精度のDST (Discrete Sine Transform :離散サイン変換)を適用できる。その他のTUに対して、そのブロックサイズに対応する整数精度のDCT (Discrete Cosine Transform :離散コサイン変換)を適用する。図20は、整数精度のDCT (整数DCT )の基底を示す説明図である。図21は、整数精度のDST (整数DST )の基底を示す説明図である。
 N×Nブロックサイズの整数DCT の基底 (以下、N 点整数DCT とも呼ぶ)は、32×32ブロックサイズの整数DCT の基底の先頭行から32/N行おきに各行の先頭N 列の要素を集めることで得られる。
 なお、図20に示す整数DCT の基底の値と包含関係とから分かるように、全てのブロックサイズで、N 点整数DCT ベクトルのノルムはほぼ均一になる。また、図21から分かるように、整数DST の基底は、同ブロックサイズの整数DCT の基底に対して、ノルムがほぼ均一になるように設定されている。
 変換器101 は、上述したDST やDCT などの周波数変換に基づいた直交変換だけでなく、単位行列に基づいた4×4ブロックサイズの直交変換も利用できる。スクリーンコンテンツやCG(computer graphics )などの急峻なエッジの保持にDST やDCT などの周波数変換は適さないためである。4×4ブロックサイズの単位行列に基づいた直交変換は、周波数変換を行わない直交変換であり、変換スキップモードと呼ばれる。変換スキップモードは、transform_skip_flag が1 に設定された場合に有効になる。
 まず、transform_skip_flag が0 のときの変換器101 の動作を説明する。
 スイッチ1010を介して入力される予測誤差信号は、水平方向周波数変換器1011に供給される。水平方向周波数変換器1011は、図20や図21に示された基底を用いて、N×NブロックサイズのTUの予測誤差信号を水平方向に周波数変換する。
 第1右ビットシフト器1012は、水平方向に周波数変換されたTUの予測誤差信号をlog2N - 1 ビットだけ右方向にビットシフトする。
 続いて、垂直方向周波数変換器1013は、図20や図21に示された基底を用いて、第1右ビットシフト器1012から供給されるTUの予測誤差信号を垂直方向に周波数変換する。
 さらに、第2右ビットシフト器1014は、垂直方向周波数変換器1013から供給されるTUの予測誤差信号をlog2N + 6 ビットだけ右方向にビットシフトする。
 transform_skip_flag が0 のとき、スイッチ1016は、第2右ビットシフト器1014の出力をTUの直交変換係数として出力する。
 次に、transform_skip_flag が1 のときの変換器101の動作を説明する。
 スイッチ1010を介して入力される、N×NブロックサイズのTUの予測誤差信号は、第3右ビットシフト器1015に供給される。第3右ビットシフト器1015は、予測誤差信号を、13 - BitDepth ビットだけ左方向にビットシフトする。周波数変換を用いて得た直交変換係数と変換スキップモードの直交変換係数のノルムとを整合させて、同一の量子化を適用するためである。なお、BitDepthは入力画像の画素ビット深度である。
 transform_skip_flag が1 のとき、スイッチ1016は、第3右ビットシフト器1015の出力をTUの直交変換係数として出力する。
 量子化器102 は、変換器101 から供給される直交変換係数を量子化する。以下、量子化された直交変換係数を変換量子化値と呼ぶ。
 量子化器102 の動作をより詳細に説明する。
 量子化器102 は、量子化パラメータqPと量子化ステップQstep の対数が比例する線形量子化を用いる(例えば、qPが6 増加するとQstep が2 倍になる)。N×NブロックサイズのTU内の位置(i、j){0≦i,j≦N-1}に対応する直交変換係数cij の量子化係数qij を求める量子化処理は、以下の(1)式のように定義できる。
Figure JPOXMLDOC01-appb-M000001
 
 ただし、Sign( ) は入力の正負の符号を返す関数、Int [ ] は入力を整数値化する関数、Qscale は図22に示す量子化ステップ係数、qP%6 はqPを6 で割った剰余、mij は量子化重み付け係数、f は量子化丸めを決定するオフセット(0≦f≦0.5) 、N はTUのサイズを示す。
 視覚的な画質調整に用いる、量子化重み付け係数mij のデフォルト値は16である。量子化重み付け係数マトリクスは、色成分別、TUサイズ別、およびイントラ予測/インター予測別に、シーケンスおよびピクチャ単位で伝送可能である。ただし、伝送できる量子化重み付け係数マトリクスのブロックサイズは、8×8までとなる。16×16や32×32のブロックサイズのTUの量子化重み付け係数マトリクスは、それぞれのブロックサイズのTUに対して伝送された8×8の量子化重み付け係数マトリクスのコピーに基づいてスケーリングされる。ただし、DC成分についてのみ別途で伝送できる。
 図23、図24、図25、図26は、それぞれ、4×4、8×8、16×16、32×32 TUのイントラ予測のデフォルトの量子化重み付け係数マトリクスを示す説明図である。
 図25より、コピーに基づいたスケーリングによって、16×16 イントラTUデフォルト量子化重み付け係数マトリクスにおいて、2×2の周波数成分ごとに量子化重み付け係数が同一となることを確認できる。同様に、図26より、32×32 イントラTUデフォルト量子化重み付け係数マトリクスにおいて、4×4の周波数成分ごとに量子化重み付け係数が同一となることを確認できる。
 エントロピー符号化器103 は、cu_split_flag 、PU分割形状、tu_split_flag 、イントラ予測/インター予測の予測パラメータ、transform_skip_flag 、および変換量子化値をエントロピー符号化する。
 逆量子化/逆変換器104 は、変換量子化値を逆量子化する。さらに、逆量子化/逆変換器104 は、逆量子化した直交変換係数を逆変換する。逆変換された再構築予測誤差画像は、予測信号が加えられて、バッファ105 に供給される。バッファ105 は、再構築画像を格納する。
 上述した動作に基づいて、一般的な映像符号化装置はビットストリームを生成する。
"High Efficiency Video Coding (HEVC) text specification draft 10 (for FDIS & Last Call)," JCTVC-L1003_v34, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 12th Meeting: Geneva, CH, 14-23 Jan. 2013
 上述した映像符号化装置は、変換スキップモードの有効/無効(変換スキップモードが有効であるのか無効であるのか)に依存することなく、4×4ブロックサイズのTUの直交変換係数に対して同じ量子化重み付け係数マトリクスを利用して直交変換係数を量子化する。
 しかし、変換スキップモードの有効/無効に依存することなく予測誤差信号に対して同じ量子化重み付け係数マトリクスを利用すると、視覚特性に応じた量子化ができない。
 図27は、傾斜付きの量子化重み付け係数マトリクスおよび一様な量子化重み付け係数マトリクスを示す説明図である。例えば、図27における左側に示すような傾斜付きの量子化重み付け係数マトリクスは、変換スキップモード無効の4×4ブロックサイズのTUにおいて、劣化を認知しにくい高周波数成分の情報量を削減することにより、間接的に、劣化を認知しやすい低周波数成分の量子化雑音が低減される。しかし、当該量子化重み付け係数マトリクスは、変換スキップモード有効の4×4ブロックサイズのTUにおいて、画素位置に応じた許容外の劣化を発生させる。
 一方、図27における右側に示すような一様な量子化重み付け係数マトリクスについては、変換スキップモード有効の4×4ブロックサイズのTUにおいて、画素位置に応じた許容外の劣化を防止できる。しかし、当該量子化重み付け係数マトリクスは、変換スキップモード無効の4×4ブロックサイズのTUにおいて、高周波数成分の情報量を削減できないため、間接的に、劣化を認知しやすい低周波数成分の量子化雑音を増大させる。
 このように、変換スキップモードの有効/無効に依存することなく予測誤差信号に対して同じ量子化重み付け係数マトリクスを利用する技術は、視覚特性に応じた量子化ができず、局所的な画質劣化を回避できない問題がある。
 また、一般に、大きなブロックサイズのDCT は、急峻な画素値の変化が少ない、平坦領域の予測誤差信号の電力集中に有効である。また、DCT による直交変換係数には、高周波数成分ほど量子化雑音が知覚されにくい特性がある。
 よって、16×16や32×32といったブロックサイズのDCT 直交変換係数の量子化において、周波数成分毎の視覚特性に合致した量子化ステップサイズを用いることが好ましい。
 上述した映像符号化装置は、16×16と32×32のDCT の量子化において周波数成分毎の視覚特性に合致した値の量子化ステップサイズを利用できない。映像復号装置側のメモリ容量を節約するために、量子化ステップサイズを決定する量子化重み付け係数を複数の周波数成分間で共有するためである。例えば、16×16 イントラTUの直交変換係数に対して図28に示す量子化重み付け係数マトリクスを適用しようとしても、上述した量子化重み付け係数の伝送の制約により、図28における下線付きの周波数成分を、所望する量子化ステップサイズで量子化できない。
 なお、図28には、16×16イントラTUの量子化重み付け係数マトリクスが示されているが、下線付きの要素の値が図26に示すデフォルトの値と異なる。
 異なる周波数成分の直交変換係数に対して同一の量子化重み付け係数を利用すると、量子化雑音が知覚しにくいパワーの小さな周波数成分を効率的に除去できない。例えば、映像にはアナログ-ディジタル変換などに起因する雑音が存在するため、16×16や32×32のDCT が選択される平坦領域であっても、小さなパワーの高周波数成分が発生する。残存した周波数成分はエントロピーを増加させるため、ビットレートを低く保つには、低周波数成分の直交変換係数を荒く量子化しなければならない。この結果、上述した映像符号化装置は、低周波数成分の量子化雑音を増大させ、映像品質を低下させる。
 本発明は、映像品質の低下を抑制できる映像符号化装置、映像符号化方法および映像符号化プログラムを提供することを目的とする。
 本発明による映像符号化装置は、変換スキップモードが有効であるか否かに基づいて直交変換係数の切り捨てに用いるデッドゾーン係数を選択するデッドゾーン係数選択手段と、絶対値が、選択されたデッドゾーン係数から導出されるデッドゾーン以下である直交変換係数を0に変換する直交変換係数変換手段と、直交変換係数変換手段が出力する直交変換係数を量子化する量子化手段とを備えることを特徴とする。
 本発明による他の映像符号化装置は、所定サイズよりも大きいブロックサイズの直交変換係数の各周波数成分に対応するデッドゾーン係数を設定するデッドゾーン係数設定手段と、設定されたデッドゾーン係数から導出されるデッドゾーン以下である絶対値の直交変換係数を0に変換する直交変換係数変換手段と、直交変換係数変換手段が出力する直交変換係数を量子化する量子化手段とを備えることを特徴とする。
 本発明による映像符号化方法は、変換スキップモードが有効であるか否かに基づいて直交変換係数の切り捨てに用いるデッドゾーン係数を選択し、絶対値が、選択されたデッドゾーン係数から導出されるデッドゾーン以下である直交変換係数を0に変換する直交変換係数変換処理を実行し、直交変換係数変換処理による直交変換係数を量子化することを特徴とする。
 本発明による他の映像符号化方法は、所定サイズよりも大きいブロックサイズの直交変換係数の各周波数成分に対応するデッドゾーン係数を設定し、設定されたデッドゾーン係数から導出されるデッドゾーン以下である絶対値の直交変換係数を0に変換する直交変換係数変換処理を実行し、直交変換係数変換処理による直交変換係数を量子化することを特徴とする。
 本発明による映像符号化プログラムは、コンピュータに、変換スキップモードが有効であるか否かに基づいて直交変換係数の切り捨てに用いるデッドゾーン係数を選択する処理と、絶対値が、選択されたデッドゾーン係数から導出されるデッドゾーン以下である直交変換係数を0に変換する直交変換係数変換処理と、直交変換係数変換処理による直交変換係数を量子化する処理とを実行させることを特徴とする。
 本発明による他の映像符号化プログラムは、コンピュータに、所定サイズよりも大きいブロックサイズの直交変換係数の各周波数成分に対応するデッドゾーン係数を設定する処理と、設定されたデッドゾーン係数から導出されるデッドゾーン以下である絶対値の直交変換係数を0に変換する直交変換係数変換処理と、直交変換係数変換処理による直交変換係数を量子化する処理とを実行させることを特徴とする。
 本発明によれば、映像品質の低下を抑制できる。
映像符号化装置の一実施形態の構成を示すブロック図である。 適応切り捨て器の構成例を示すブロック図である。 デッドゾーン係数マトリクスと量子化重み付け係数マトリクスとを示す説明図である。 適応切り捨て器の動作を示すフローチャートである。 非一様デッドゾーン係数マトリクスを示す説明図である。 適応切り捨て器の動作を示すフローチャートである。 16×16のイントラTUに用いる2×2のサブデッドゾーン係数マトリクスを示す説明図である。 32×32のイントラTUに用いる4×4のサブデッドゾーン係数マトリクスを示す説明図である。 映像符号化装置の機能を実現可能な情報処理システムの構成例を示すブロック図である。 本発明による映像符号化装置の主要部を示すブロック図である。 本発明による他の映像符号化装置の主要部を示すブロック図である。 33種類の角度イントラ予測の例を示す説明図である。 フレーム間予測の例を示す説明図である。 一般的な映像符号化装置の構成を示す説明図である。 フレームt のCTU 分割例、および、フレームt のCTU8のCU分割例を示す説明図である。 CTU8のCU分割例に対応するクアッドツリー構造を示す説明図である。 CUのPU分割例を示す説明図である。 CUのTU分割例を示す説明図である。 変換器の構成例を示すブロック図である。 整数精度のDCT の基底を示す説明図である。 整数精度のDST の基底を示す説明図である。 量子化ステップ係数を示す説明図である。 4×4TUのイントラ予測のデフォルトの量子化重み付け係数マトリクスを示す説明図である。 8×8TUのイントラ予測のデフォルトの量子化重み付け係数マトリクスを示す説明図である。 16×16TUのイントラ予測のデフォルトの量子化重み付け係数マトリクスを示す説明図である。 32×32TUのイントラ予測のデフォルトの量子化重み付け係数マトリクスを示す説明図である。 傾斜付きの量子化重み付け係数マトリクスおよび一様な量子化重み付け係数マトリクスを示す説明図である。 傾斜付きの量子化重み付け係数マトリクスおよび一様な量子化重み付け係数マトリクスを示す説明図である。
実施形態1.
 図1は、映像符号化装置の一実施形態の構成を示すブロック図である。図1 に示す映像符号化装置は、変換器101 、量子化器102 、エントロピー符号化器103 、逆量子化/逆変換器104 、バッファ105 、予測器106 、および推定器107 に加えて、適応切り捨て器108 を備える。
 推定器107 は、CTU 毎に、符号化コストを最小とするCUクアッドツリー構造/PU分割形状/TUクアッドツリー構造を決定する。
 予測器106 は、推定器107 が決定したCUクアッドツリー構造およびPU分割形状に基づいて、CUの入力画像信号に対する予測信号を生成する。
 変換器101 は、推定器107 が決定したTUクアッドツリー構造および変換スキップフラグ(transform_skip_flag )に基づいて、入力画像信号から予測信号を減じた予測誤差画像を周波数変換する。
 適応切り捨て器108 は、推定器107 が決定した変換スキップフラグ(transform_skip_flag )に基づいて、変換器101 から供給される直交変換係数に対して切り捨て処理を行う。
 図2 は、適応切り捨て器108 の構成例を示すブロック図である。適応切り捨て器108 は、イントラ予測で得られた4×4ブロックサイズTUの直交変換係数に対して、図3 に示すデッドゾーン係数マトリクスおよび量子化重み付け係数マトリクスを用いる。図3 は、本実施形態の映像符号化装置が用いるデッドゾーン係数マトリクスと量子化重み付け係数マトリクスとを示す説明図である。
 なお、デッドゾーン技術は、直交変換係数を量子化する際に、0 に近い入力に対応する出力を0 にする技術である。デッドゾーンは、直交変換係数を0 にするか否か判定するための指標に相当する。デッドゾーン係数は、デッドゾーンを設定するために使用されるパラメータであり、任意に設定可能である。
 図3 における左側に示す傾斜付きデッドゾーン係数マトリクスは、図27における左側に示す傾斜付きの量子化重み付け係数マトリクスの各要素を図3 における中央下段に示す一様量子化重み付け係数マトリクスの要素で割って生成したマトリクスである。TU内の位置(i、j){0≦i,j≦3}を示すi およびj が大きな値になるほど、デッドゾーン係数が大きくなることが分かる。図3 における右側に示す一様デッドゾーン係数マトリクスは、図27における右側に示す一様量子化重み付け係数マトリクスの各要素を図3 における中央下段に示す一様量子化重み付け係数マトリクスの要素で割って生成したマトリクスである。TU内の位置(i、j){0≦i,j≦3}を示すi およびj に依存することなく、デッドゾーン係数が固定値になっていることが分かる。
 デッドゾーン係数選択部1081は、transform_skip_flag が1 の場合、上述した一様デッドゾーン係数マトリクスを選択する。transform_skip_flag が0 の場合、上述した傾斜付きデッドゾーン係数マトリクスを選択する。以下、位置(i, j)に対応するデッドゾーン係数をdij とする。
 デッドゾーン算出部1082は、直交変換係数cij に対するデッドゾーンdzijを以下の(2)式のように計算する。
Figure JPOXMLDOC01-appb-M000002
 
 図3 に示すデッドゾーン係数マトリクスより、上記の式で計算されるデッドゾーンdzijには以下の特徴がある。
 transform_skip_flag が0 の場合、TU内の位置(i、j){0≦i,j≦3}を示すi およびj が大きな値になるほど(つまり、周波数成分が高周波になるほど)、デッドゾーンdzijが大きくなる。つまり、後述する切り捨て部1083の処理によって、劣化が目立ちにくい高周波数成分の直交変換係数の情報量を削減することができる。
 transform_skip_flag が1 の場合、TU内の位置(i、j){0≦i,j≦3}を示すi およびj に依存することなく、デッドゾーンdzijが固定値になる。つまり、後述する切り捨て部1083の処理によって、画素位置に依存することなく一定量で直交変換係数の情報量削減ができる。
 切り捨て部1083は、4×4ブロックサイズのTUの直交変換係数に対してのみ、各位置(i,j){0≦i,j≦3}のcij の絶対値とdzij を比較し、cij の絶対値がdzij以下の場合、cij を0 として出力する。その他の場合、cij をそのまま出力する。定式的には、以下の(3)式のようになる。
Figure JPOXMLDOC01-appb-M000003
 
 本実施形態では、量子化器102 は、適応切り捨て器108 から供給される直交変換係数を量子化する。
 エントロピー符号化器103 は、cu_split_flag 、PU分割形状、tu_split_flag 、イントラ予測/インター予測の予測パラメータ、transform_skip_flag 、および変換量子化値をエントロピー符号化する。
 逆量子化/逆変換器104 は、変換量子化値を逆量子化する。さらに、逆量子化/逆変換器104 は、逆量子化した直交変換係数を逆変換する。逆変換された再構築予測誤差画像は、予測信号が加えられて、バッファ105 に供給される。バッファ105 は、再構築画像を格納する。
 上述した動作に基づいて、本実施形態の映像符号化装置はビットストリームを生成する。
 続いて、図4 を参照して、4×4ブロックサイズのTUに対する、適応切り捨て器108 の動作を説明する。
 ステップS101では、デッドゾーン係数選択部1081が、処理対象の4×4ブロックサイズのTUのtransform_skip_flag が0 か否か判定する。0 である場合、ステップS102に進む。そうでない場合、ステップS103に進む。
 ステップS102では、デッドゾーン係数選択部1081が、図3 における左側に示す傾斜付きデッドゾーン係数マトリクスを選択する。そして、ステップS104に進む。
 ステップS103では、デッドゾーン係数選択部1081が、図3 における右側に示す一様デッドゾーン係数マトリクスを選択する。そして、ステップS104に進む。
 ステップS104では、デッドゾーン算出部1082が、選択されたデッドゾーン係数マトリクスに基づいて、処理対象の4×4ブロックサイズのTUの各位置(i,j){0≦i,j≦3}の直交変換係数に対するデッドゾーンdzijを計算する。
 ステップS105では、切り捨て部1083が、処理対象の4×4ブロックサイズのTUの各位置(i,j){0≦i,j≦3}の直交変換係数cij の絶対値とデッドゾーンdzijを比較し、cij の絶対値がdzij以下の場合、cij を0 として出力する。切り捨て部1083は、その他の場合、cij をそのまま出力する。
 以上のように、適応切り捨て器108 は、処理対象ブロックの変換スキップモードの有効/無効(transform_skip_flagの値)を監視し、処理対象4×4ブロックサイズTUの直交変換係数の切り捨てに用いるデッドゾーン係数を適応的に選択する。具体的には、4×4ブロックサイズTUの変換スキップモードが無効の場合、傾斜付きのデッドゾーン係数を選択する。4×4ブロックサイズTUの変換スキップモードが有効の場合、一様のデッドゾーン係数を選択する。さらに、適応切り捨て器108 は、選択したデッドゾーン係数と量子化ステップサイズからデッドゾーンを算出し、絶対値がデッドゾーン以下となる4×4ブロックサイズTUに含まれる直交変換係数を0 に変換する。
 本実施形態の映像符号化装置は、適応切り捨て器108を備えるので、一様な量子化重み付け係数マトリクスを利用する映像符号化方式を用いても、変換スキップモード無効が選択された4×4ブロックサイズTUにおいて、劣化を認知しにくい高周波数成分の情報量を傾斜付きのデッドゾーンで削減することができる。その結果、間接的に、劣化を認知しやすい低周波数成分の量子化雑音を低減できる。従って、変換スキップモードの有効/無効に依存することなく4×4ブロックサイズTUの直交変換係数に対して同じ一様な量子化重み付け係数マトリクスを利用する映像符号化方式であっても、視覚特性に応じた量子化によって局所的な画質劣化を回避できる。
 なお、本実施形態では、イントラ予測で得られた4×4ブロックサイズTUの直交変換係数に対して図3 に示すデッドゾーン係数マトリクスおよび量子化重み付け係数マトリクスを用いたが、インター予測で得られた4×4ブロックサイズTUの直交変換係数に対しても同様に、変換スキップモード無効が選択された4×4ブロックサイズTUにおいて、劣化を認知しにくい高周波数成分の情報量を傾斜付きのデッドゾーンで削減することができる。
 上述した実施形態において、傾斜付きデッドゾーン係数マトリクスおよび一様デッドゾーン係数マトリクスの要素は実数で所定の記憶部に格納されることになる。しかし、量子化において量子化パラメータqPが6 増加すると量子化ステップQstep が2 倍になることを利用して、傾斜付きデッドゾーン係数マトリクスおよび一様デッドゾーン係数マトリクスの要素を整数で記憶部に格納することも可能である。実数のデッドゾーン係数dzijは、以下の式の対数表現により、整数のデッドゾーン係数qPDZOffsetijとして表現できる。
 qPDZOffsetij = 6・log2dzij
 デッドゾーン係数qPDZOffsetijを用いた場合、デッドゾーン算出部1082における、直交変換係数cij に対するデッドゾーンdzijの計算は以下の(4)式のようになる。
Figure JPOXMLDOC01-appb-M000004
 
 上記のqPDZijの計算式から分かるように、デッドゾーン係数qPDZOffsetijが量子化パラメータqPのオフセットとして利用されることが分かる。実数ではなく整数のデッドゾーン係数を用いることによって、傾斜付きデッドゾーン係数マトリクスおよび一様デッドゾーン係数マトリクスの記憶容量を削減できる。
 本実施形態の映像符号化装置は、一様な量子化重み付け係数マトリクスを利用する映像符号化方式を用いる場合に、適応的に変換スキップモード無効の高周波数成分の直交変換係数を除去することによって視覚特性に応じた量子化を実現し、局所的な画質劣化を回避できる。
 すなわち、本実施形態の映像符号化装置は、一様な量子化重み付け係数マトリクスを利用する映像符号化方式を用いても、変換スキップモード無効が選択された4×4ブロックサイズTUにおいて、劣化を認知しにくい高周波数成分の情報量を傾斜付きのデッドゾーンで削減することができる。その結果、間接的に、劣化を認知しやすい低周波数成分の量子化雑音を低減できる。従って、変換スキップモードの有効/無効に依存することなく4×4ブロックサイズTUの直交変換係数に対して同じ一様な量子化重み付け係数マトリクスを利用する映像符号化方式であっても、視覚特性に応じた量子化によって、局所的な画質劣化が回避される。
実施形態2.
 次に、映像符号化装置の第2の実施形態を説明する。第2の実施形態の映像符号化装置の構成は、図1に示されたようである。
 以下、説明を簡略化するために、変換器101 が、4×4、8×8、および16×16ブロックサイズのDCT に基づいた直交変換を利用する場合を例にする。
 第2の実施形態では、図2に示された適応切り捨て器108 は、イントラ予測で得られた16×16ブロックサイズTUの直交変換係数に対して、図5 に示す非一様デッドゾーン係数マトリクスを用い、かつ、伝送する量子化重み付け行列として図25に示された量子化重み付け係数マトリクスを用いる。
 なお、デッドゾーン技術は、直交変換係数を量子化する際に、0 に近い入力に対応する出力を0 にする技術である。デッドゾーンは、直交変換係数を0 にするか否か判定するための指標に相当する。デッドゾーン係数は、デッドゾーンを設定するために使用されるパラメータであり、任意に設定可能である。
 図5 に示す非一様デッドゾーン係数マトリクスは、図28に示す量子化重み付け係数マトリクスの各要素を、図25に示すデフォルトの量子化重み付け係数マトリクスの要素で割って生成したマトリクスである。TU内の位置(i,j){0≦i,j≦N-1}に応じて、すなわち、周波数成分に応じて、デッドゾーン係数が異なることが分かる。
 デッドゾーン係数選択部1081は、DCT の点数N が8 よりも大きい場合、上述した非一様デッドゾーン係数マトリクスを選択する。DCT の点数N が8 以下の場合、上述した一様デッドゾーン係数マトリクスを選択する。周波数成分 (i, j)に対応するデッドゾーン係数をdij とする。
 デッドゾーン算出部1082は、DCT の点数N が8 よりも大きい場合、直交変換係数cij に対するデッドゾーンdzijを上記の(2)式のように計算する。
 図5 に示すデッドゾーン係数マトリクスより、(2)式で計算されるデッドゾーンdzijには以下の特徴がある。
 TU内の周波数成分(i,j){0≦i,j≦N-1}に応じて、デッドゾーンdzijが異なる値をとる。つまり、後述する切り捨て部1083の処理によって、2×2毎に同一の量子化重み付け係数となる直交変換係数であっても、劣化が目立ちにくい周波数成分の直交変換係数の情報量をより削減することができる。
 切り捨て部1083は、8×8ブロックサイズよりも大きい16×16ブロックサイズのTUの直交変換係数に対して、各周波数成分(i,j){0≦i,j≦N-1}のcij の絶対値とdzijを比較し、cij の絶対値がdzij以下の場合、cij を0として出力する。その他の場合、cij をそのまま出力する。定式的には、上記の(3)式のようになる。
 本実施形態では、量子化器102 は、適応切り捨て器108 から供給される直交変換係数を量子化する。
 エントロピー符号化器103 は、cu_split_flag 、PU分割形状、tu_split_flag 、イントラ予測/インター予測の予測パラメータ、transform_skip_flag 、および変換量子化値をエントロピー符号化する。
 逆量子化/逆変換器104 は、変換量子化値を逆量子化する。さらに、逆量子化/逆変換器104 は、逆量子化した直交変換係数を逆変換する。逆変換された再構築予測誤差画像は、予測信号が加えられて、バッファ105 に供給される。バッファ105 は、再構築画像を格納する。
 上述した動作に基づいて、本実施形態の映像符号化装置はビットストリームを生成する。
 次に、図6 を参照して、4×4ブロックサイズのTUに対する、適応切り捨て器108 の動作を説明する。
 ステップS201では、デッドゾーン係数選択部1081が、処理対象のDCTのブロックサイズが8×8よりも大きいか否か判定する。8×8よりも大きい場合、すなわち、処理対象のDCT のブロックサイズが16×16の場合、ステップS202に進む。そうでない場合、処理を終了する。
 ステップS202では、デッドゾーン係数選択部1081が、図5に示す非一様デッドゾーン係数マトリクスを選択する。そして、ステップS203に進む。
 なお、デッドゾーン係数選択部1081は、DCTのブロックサイズが8×8以下である場合には、全ての要素が1 である一様デッドゾーン係数を選択する。
 ステップS203では、デッドゾーン算出部1082が、選択されたデッドゾーン係数マトリクスに基づいて、処理対象の16×16ブロックサイズのTUの各周波数成分(i,j){0≦i,j≦15} の直交変換係数に対するデッドゾーンdzijを計算する。そして、ステップS204に進む。
 ステップS204では、切り捨て部1083が、処理対象の16×16ブロックサイズのTUの各位置(i,j){0≦i,j≦15} の直交変換係数cij の絶対値とデッドゾーンdzijを比較し、cij の絶対値がdzij以下の場合、cij を0 として出力する。切り捨て部1083は、その他の場合、cij をそのまま出力する。
 量子化器102 は、適応切り捨て器108 が出力する直交変換係数を量子化するが、ブロックサイズが8×8よりも大きい場合、直交変換係数に対して(DC成分を除く)、複数の周波数成分について同じ値の量子化重み付け係数を利用して直交変換係数を量子化する。例えば、直交変換係数に対して図23や図24に示す量子化重み付け係数マトリクスを適用する。
 以上のように、適応切り捨て器108 は、処理対象ブロックのDCT ブロックサイズを監視し、処理対象ブロックの直交変換係数の切り捨てに用いるデッドゾーンを適応的に選択する。具体的には、処理対象ブロックのDCT ブロックサイズが8×8よりも大きな場合(つまり、処理対象ブロックのブロックサイズが異なる周波数成分の直交変換係数に対して同一の量子化重み付け係数を用いて量子化するブロックサイズの場合)、周波数成分毎に異なる値をとりうる非一様デッドゾーン係数を選択する。そうでない場合には、要素が固定値1 である一様デッドゾーン係数を選択する。さらに、適応切り捨て器108 は、選択したデッドゾーン係数と量子化ステップサイズからデッドゾーンを算出し、絶対値がデッドゾーン以下となる小さな高周波数成分の直交変換係数を0 に変換する。
 本実施形態の映像符号化装置は、適応切り捨て器108を備えるので、2×2の周波数成分ごとに同一の量子化重み付け係数を量子化に用いる16×16ブロックサイズのDCT を用いても、周波数成分毎の視覚特性に応じてパワーの小さな周波数成分を効率的に除去できる。この結果、低周波数成分の量子化雑音が低減し、映像品質を改善できる。すなわち、低周波数成分の量子化雑音の増大を抑えることによって、映像品質を低下を抑制できる。
 なお、本実施形態では、説明を簡略化するために、変換器101 は、4×4、8×8、および16×16ブロックサイズのDCT に基づいた直交変換を利用するものとしたが、4×4の周波数成分ごとに同一の量子化重み付け係数を量子化に用いる32×32ブロックサイズのDCT を用いても、16×16ブロックサイズの場合と同様に、適応切り捨て器108 によって周波数成分毎の視覚特性に応じてパワーの小さな周波数成分を効率的に除去できる。
 また、インター予測で得られた16×16ブロックサイズと32×32ブロックサイズTUの直交変換係数に対しても、イントラ予測で得られた16×16ブロックサイズと同様に、適応切り捨て器108 を用いることによって周波数成分毎の視覚特性に応じてパワーの小さな周波数成分を効率的に除去できる。
 上述した実施形態において、16×16ブロックサイズのデッドゾーン係数マトリクスのすべての要素が切り捨て部1083に格納されることになる。2×2の周波数成分ごとに同一の量子化重み付け係数となることに着目して、16×16のイントラTUについて、図7 に示す2×2のサブデッドゾーン係数マトリクスを用いてもよい。
 上述した実施形態において、16×16ブロックサイズのデッドゾーン係数マトリクスのすべての要素が切り捨て部1083に格納されることになる。しかし、2×2の周波数成分ごとに同一の量子化重み付け係数となることに着目して、図7 に示す2×2のサブデッドゾーン係数マトリクスを用いてもよい。
 この場合、16×16ブロックサイズのデッドゾーンdzij  (0≦i,j≦15)は、以下の(5)式で算出される。
Figure JPOXMLDOC01-appb-M000005
 
 このようにコピーに対応するサブデッドゾーン係数マトリクスを用いることによって、デッドゾーン係数マトリクスの記憶容量を削減できる。同様に、32×32ブロックサイズのDCT に対して、4×4の周波数成分ごとに同一の量子化重み付け係数となることに着目して、32×32のイントラTUについて、図8 に示す4×4のサブデッドゾーン係数マトリクスを用いてもよい。
 この場合、32×32ブロックサイズのデッドゾーンdzij  (0≦i,j≦31)は、以下の(6)式で算出される。
 
 上述した実施形態において、デッドゾーン係数マトリクスの要素は実数で所定の記憶部に格納されることになる。しかし、量子化において量子化パラメータqPが6 増加すると量子化ステップQstep が2 倍となることを利用して、デッドゾーン係数マトリクスの要素を整数で記憶部に格納することも可能である。実数のデッドゾーン係数dzijは、以下の式の対数表現により、整数のデッドゾーン係数qPDZOffsetijとして表現できる。
 qPDZOffsetij = 6・log2dzij
 デッドゾーン係数qPDZOffsetijを用いた場合、デッドゾーン算出部1082における、直交変換係数cij に対するデッドゾーンdzijの計算は上記の(4)式のようになる。
 上記のqPDZijの計算式から分かるように、デッドゾーン係数qPDZOffsetijが量子化パラメータqPのオフセットとして利用されることが分かる。実数ではなく整数のデッドゾーン係数を用いることによって、デッドゾーン係数マトリクスの記憶容量をさらに削減できる。
 また、上記の各実施形態を、ハードウェアで構成することも可能であるが、コンピュータプログラムにより実現することも可能である。
 図9 に示す情報処理システムは、プロセッサ1001、プログラムメモリ1002、映像データを格納するための記憶媒体1003およびビットストリームを格納するための記憶媒体1004を備える。記憶媒体1003と記憶媒体1004とは、別個の記憶媒体であってもよいし、同一の記憶媒体からなる記憶領域であってもよい。記憶媒体として、ハードディスク等の磁気記憶媒体を用いることができる。
 図9 に示された情報処理システムにおいて、プログラムメモリ1002には、図1 に示された各ブロックの機能を実現するためのプログラムが格納される。そして、プロセッサ1001は、プログラムメモリ1002に格納されているプログラムに従って処理を実行することによって、図1 に示された映像符号化装置の機能を実現する。
 図10は、本発明による映像符号化装置の主要部を示すブロック図である。図10に示すように、映像符号化装置は、変換スキップモードの有効/無効に基づいて直交変換係数の切り捨てに用いるデッドゾーン係数を選択するデッドゾーン係数選択部10(一例として、図2 に示すデッドゾーン係数選択部1081)と、絶対値が、選択されたデッドゾーン係数から導出されるデッドゾーン以下である直交変換係数を0 に変換する直交変換係数変換部20(一例として、図2 に示すデッドゾーン算出部1082および切り捨て部1083)と、直交変換係数変換部20が出力する直交変換係数を量子化する量子化部30(一例として、図1 に示す量子化器102 )とを備える。
 図11は、本発明による他の映像符号化装置の主要部を示すブロック図である。図11に示すように、映像符号化装置は、所定サイズよりも大きいブロックサイズの直交変換係数の各周波数成分に対応するデッドゾーン係数を設定するデッドゾーン係数設定部11(一例として、図2 に示すデッドゾーン係数選択部1081)と、絶対値が、設定されたデッドゾーン係数から導出されるデッドゾーン以下である絶対値の直交変換係数を0 に変換する直交変換係数変換部21(一例として、図2 に示すデッドゾーン算出部1082および切り捨て部1083)と、直交変換係数変換部21が出力する直交変換係数を量子化する量子化部31(一例として、図1 に示す量子化器102 )とを備える。
 以上、実施形態および実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 この出願は、2013年9月27日に出願された日本特許出願2013-200892および2013年9月30日に出願された日本特許出願2013-204864を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 10  デッドゾーン係数選択部
11  デッドゾーン係数設定部
 20,21 直交変換係数変換部
 30,31 量子化部
 101  変換器
 102  量子化器
 103  エントロピー符号化器
 104  逆量子化/逆変換器
 105  バッファ
 106  予測器
 107  推定器
 108  適応切り捨て器
 1081 デッドゾーン係数選択部
 1082 デッドゾーン算出部
 1083 切り捨て部

Claims (20)

  1.  変換スキップモードが有効であるか否かに基づいて直交変換係数の切り捨てに用いるデッドゾーン係数を選択するデッドゾーン係数選択手段と、
     絶対値が、選択されたデッドゾーン係数から導出されるデッドゾーン以下である直交変換係数を0に変換する直交変換係数変換手段と、
     前記直交変換係数変換手段が出力する直交変換係数を量子化する量子化手段と
     を備えることを特徴とする映像符号化装置。
  2.  前記量子化手段は、変換スキップモードが有効であるときでも無効であるときでも同じ量子化重み付け係数を利用して直交変換係数を量子化する
     請求項1記載の映像符号化装置。
  3.  前記直交変換係数変換手段は、絶対値がデッドゾーンよりも大きい直交変換係数を変換せずに出力する
     請求項2記載の映像符号化装置。
  4.  前記直交変換係数変換手段は、変換スキップモードが無効である場合に、固定値になり、変換スキップモードが有効である場合に、周波数成分が高周波になるほど値が大きくなるデッドゾーンを導出する
     請求項2または請求項3記載の映像符号化装置。
  5.  所定サイズよりも大きいブロックサイズの直交変換係数の各周波数成分に対応するデッドゾーン係数を設定するデッドゾーン係数設定手段と、
     設定されたデッドゾーン係数から導出されるデッドゾーン以下である絶対値の直交変換係数を0に変換する直交変換係数変換手段と、
     前記直交変換係数変換手段が出力する直交変換係数を量子化する量子化手段と
     を備えることを特徴とする映像符号化装置。
  6.  前記量子化手段は、直交変換係数に対して、複数の周波数成分について同じ値の量子化重み付け係数を利用して直交変換係数を量子化する
     請求項5記載の映像符号化装置。
  7.  前記直交変換係数変換手段は、周波数成分に応じて値が異なるデッドゾーンを導出する
     請求項6記載の映像符号化装置。
  8.  前記直交変換係数変換手段は、絶対値がデッドゾーンよりも大きい直交変換係数を変換せずに出力する
     請求項6または請求項7記載の映像符号化装置。
  9.  変換スキップモードが有効であるか否かに基づいて直交変換係数の切り捨てに用いるデッドゾーン係数を選択し、
     絶対値が、選択されたデッドゾーン係数から導出されるデッドゾーン以下である直交変換係数を0に変換する直交変換係数変換処理を実行し、
     前記直交変換係数変換処理による直交変換係数を量子化する
     ことを特徴とする映像符号化方法。
  10.  変換スキップモードが有効であるときでも無効であるときでも同じ量子化重み付け係数を利用して直交変換係数を量子化する
     請求項9記載の映像符号化方法。
  11.  変換スキップモードが無効である場合に、固定値になり、変換スキップモードが有効である場合に、周波数成分が高周波になるほど値が大きくなるデッドゾーンを導出する
     請求項9または請求項10記載の映像符号化方法。
  12.  所定サイズよりも大きいブロックサイズの直交変換係数の各周波数成分に対応するデッドゾーン係数を設定し、
     設定されたデッドゾーン係数から導出されるデッドゾーン以下である絶対値の直交変換係数を0に変換する直交変換係数変換処理を実行し、
     前記直交変換係数変換処理による直交変換係数を量子化する
     ことを特徴とする映像符号化方法。
  13.  直交変換係数に対して、複数の周波数成分について同じ値の量子化重み付け係数を利用して直交変換係数を量子化する
     請求項12記載の映像符号化方法。
  14.  周波数成分に応じて値が異なるデッドゾーンを導出する
     請求項12または請求項13記載の映像符号化方法。
  15.  コンピュータに、
     変換スキップモードが有効であるか否かに基づいて直交変換係数の切り捨てに用いるデッドゾーン係数を選択する処理と、
     絶対値が、選択されたデッドゾーン係数から導出されるデッドゾーン以下である直交変換係数を0に変換する直交変換係数変換処理と、
     前記直交変換係数変換処理による直交変換係数を量子化する処理と
     を実行させるための映像符号化プログラム。
  16.  コンピュータに、
     変換スキップモードが有効であるときでも無効であるときでも同じ量子化重み付け係数を利用して直交変換係数を量子化させる
     請求項15記載の映像符号化プログラム。
  17.  コンピュータに、
     変換スキップモードが無効である場合に、固定値になり、変換スキップモードが有効である場合に、周波数成分が高周波になるほど値が大きくなるデッドゾーンを導出させる
     請求項15または請求項16記載の映像符号化プログラム。
  18.  コンピュータに、
     所定サイズよりも大きいブロックサイズの直交変換係数の各周波数成分に対応するデッドゾーン係数を設定する処理と、
     設定されたデッドゾーン係数から導出されるデッドゾーン以下である絶対値の直交変換係数を0に変換する直交変換係数変換処理と、
     前記直交変換係数変換処理による直交変換係数を量子化する処理と
     を実行させるための映像符号化プログラム。
  19.  コンピュータに、
     直交変換係数に対して、複数の周波数成分について同じ値の量子化重み付け係数を利用して直交変換係数を量子化させる
     請求項18記載の映像符号化プログラム。
  20.  コンピュータに、
     周波数成分に応じて値が異なるデッドゾーンを導出させる
     請求項18または請求項19記載の映像符号化プログラム。
PCT/JP2014/004666 2013-09-27 2014-09-10 映像符号化装置、映像符号化方法および映像符号化プログラム WO2015045301A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015538868A JPWO2015045301A1 (ja) 2013-09-27 2014-09-10 映像符号化装置、映像符号化方法および映像符号化プログラム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2013-200892 2013-09-27
JP2013200892 2013-09-27
JP2013204864 2013-09-30
JP2013-204864 2013-09-30

Publications (1)

Publication Number Publication Date
WO2015045301A1 true WO2015045301A1 (ja) 2015-04-02

Family

ID=52742474

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/004666 WO2015045301A1 (ja) 2013-09-27 2014-09-10 映像符号化装置、映像符号化方法および映像符号化プログラム

Country Status (2)

Country Link
JP (1) JPWO2015045301A1 (ja)
WO (1) WO2015045301A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019188465A1 (ja) * 2018-03-30 2019-10-03 ソニー株式会社 画像符号化装置、画像符号化方法、画像復号装置、および画像復号方法
CN113473122A (zh) * 2016-07-05 2021-10-01 株式会社Kt 对视频进行解码或编码的方法和计算机可读介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005081540A1 (ja) * 2004-02-20 2005-09-01 Nec Corporation 画像符号化方法、その装置及びその制御プログラム
JP2010521113A (ja) * 2007-03-13 2010-06-17 ナロシュケ、マティアス ハイブリッドビデオ符号化のための量子化
WO2011052216A1 (ja) * 2009-10-30 2011-05-05 パナソニック株式会社 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005081540A1 (ja) * 2004-02-20 2005-09-01 Nec Corporation 画像符号化方法、その装置及びその制御プログラム
JP2010521113A (ja) * 2007-03-13 2010-06-17 ナロシュケ、マティアス ハイブリッドビデオ符号化のための量子化
WO2011052216A1 (ja) * 2009-10-30 2011-05-05 パナソニック株式会社 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YOSHITAKA MORIGAMI ET AL.: "On Transform Skip", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 10TH MEETING: STOCKHOLM, SE , 11- 20 JULY 2012 , [JCTVC-J0184, 11 July 2012 (2012-07-11) *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113473122A (zh) * 2016-07-05 2021-10-01 株式会社Kt 对视频进行解码或编码的方法和计算机可读介质
WO2019188465A1 (ja) * 2018-03-30 2019-10-03 ソニー株式会社 画像符号化装置、画像符号化方法、画像復号装置、および画像復号方法
CN111903125A (zh) * 2018-03-30 2020-11-06 索尼公司 图像编码装置、图像编码方法、图像解码装置和图像解码方法

Also Published As

Publication number Publication date
JPWO2015045301A1 (ja) 2017-03-09

Similar Documents

Publication Publication Date Title
JP7051773B2 (ja) イントラ予測方法とそれを利用した符号化器及び復号化器
JP6974516B2 (ja) 復元ブロック生成方法、予測情報符号化方法、ビットストリーム、コンピュータ可読媒体
JP6149138B2 (ja) 映像符号化装置
KR20190016982A (ko) 인트라 예측 정보 부호화 방법 및 장치
US9154809B2 (en) Encoding/decoding method and device for high-resolution moving images
RU2547239C2 (ru) Зависящее от режима сканирование коэффициентов блока видеоданных
JP5625124B2 (ja) 平面表現を用いる拡張されたイントラ予測符号化
KR20130045148A (ko) 인트라 예측 모드에서의 영상 부호화 방법 및 장치
JP6980920B2 (ja) 選択的変換に基づいた映像コーディング方法およびその装置
JP2015136173A (ja) 映像復号化装置
KR20190091235A (ko) 복원 블록을 생성하는 방법 및 장치
WO2015045301A1 (ja) 映像符号化装置、映像符号化方法および映像符号化プログラム
KR20170124076A (ko) 영상 신호 그룹의 부호화 및 복호화 방법과 장치

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: 14847353

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2015538868

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14847353

Country of ref document: EP

Kind code of ref document: A1