WO2010074170A1 - 画像復号装置及び画像符号化装置 - Google Patents
画像復号装置及び画像符号化装置 Download PDFInfo
- Publication number
- WO2010074170A1 WO2010074170A1 PCT/JP2009/071482 JP2009071482W WO2010074170A1 WO 2010074170 A1 WO2010074170 A1 WO 2010074170A1 JP 2009071482 W JP2009071482 W JP 2009071482W WO 2010074170 A1 WO2010074170 A1 WO 2010074170A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- decoding
- image
- filter
- prediction residual
- block
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/182—Methods 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 pixel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Definitions
- the present invention generates a prediction residual from decoded data by decoding a prediction residual signal and a prediction signal, and inverse quantization and inverse transformation of the prediction residual signal decoded by the decoding means. And an image decoding device that decodes image data from the prediction residual and the prediction signal.
- Image coding technology is applied to many familiar video devices, from television receivers to mobile phones capable of image processing.
- image data (image information) is divided into a plurality of blocks, orthogonal transformation is performed in units of divided blocks, and the obtained transform coefficients are quantized and then quantized.
- Encoding is performed by variable-length encoding of transform coefficients.
- image loss occurs due to loss of information in quantization.
- a large distortion is likely to occur in an image due to a large distortion (so-called block noise) generated at the boundary of each block which is a unit for performing orthogonal transformation.
- block noise occurs at the boundary of each block in the image encoding process, block noise also occurs when the encoded image is decoded, so that the user viewing the image can easily feel unnaturalness. Therefore, in a general image decoding apparatus (or image encoding apparatus), in order to remove block noise, block noise generated at the boundary of each block is filtered.
- Non-Patent Document 1 discloses a basic filter processing technique.
- the filter processing technique described in Non-Patent Document 1 will be described below with reference to FIG.
- FIG. 26 is a diagram schematically illustrating a pixel at a block boundary and a pixel value of the pixel.
- a block boundary is defined between a pixel P0 having a pixel value p0 and a pixel Q0 having a pixel value q0, and as the distance from the boundary increases, the pixels P1, P2, P3, and the pixels Q1, Q2, Q3.
- pixel values in each pixel are set to pixel values p1, p2, and p3 and pixel values q1, q2, and q3, respectively.
- the strength can be adaptively changed by changing the number of taps of the filter, the coefficient, and the range of the filter according to the gradient ap of the block boundary.
- the deblocking filter is basically a low-pass filter, the greater the number of filter taps and the wider the filter coverage, the greater the effect of removing block distortion. However, in this case, conversely, the image is blurred. Therefore, it is desired that the strength of the filter can be controlled according to the preference of the creator of the moving image and the viewer.
- threshold values ⁇ and ⁇ that control switching of filter processing are added to a slice header that is information for controlling a slice in which a plurality of macroblocks are bundled, and then transmitted.
- the degree of filter application can be controlled.
- Non-Patent Document 1 since the switching method of the filter process can be controlled according to the magnitude of the gradient, it is possible to control the degree of blur and the distribution of the block noise removal effect. However, since the filter coefficient cannot be changed, it is difficult to improve the encoding efficiency.
- an object of the present invention is to perform an image encoding apparatus that can efficiently and appropriately encode an image by performing filter processing according to the characteristics of the image, and to decode the image. It is to provide an image decoding apparatus capable of
- an image decoding apparatus includes a decoding unit that decodes a prediction residual signal and a prediction signal from encoded data, and an inverse quantum for the prediction residual signal decoded by the decoding unit.
- An image decoding device that decodes image data from the prediction residual and a prediction signal.
- Filter parameter storage means for storing a set of filter parameters; Filter means for performing a filtering process on the image data using filter parameters stored in the filter parameter storage unit; With The filter means includes Gradient value calculating means for calculating a gradient value in the vicinity of a pixel to be filtered; Selecting means for selecting one filter parameter from a set of filter parameters according to the calculated gradient; Weighting factor calculating means for calculating a weighting factor for filtering using the filter parameter selected by the selecting means; It is characterized by providing.
- the decoding means further decodes a set of filter parameters from the encoded data,
- the filter means performs a filtering process on the image data using the filter parameter decoded by the decoding means.
- the decoding means further decodes information about a plurality of blocks having different sizes from the encoded data,
- the filter means performs a filtering process on the image data for each block.
- the weighting factor calculating means calculates a weighting factor for filter processing according to the filter parameter selected by the selecting means and the distance from the boundary.
- the image decoding apparatus of the present invention Decoding means for decoding a prediction residual signal and a prediction signal from encoded data; and generation means for generating a prediction residual by inverse quantization and inverse transformation of the prediction residual signal decoded by the decoding means; An image decoding device that decodes image data from the prediction residual and the prediction signal, Gradient value calculating means for calculating a gradient value in the vicinity of a pixel to be filtered; Filter means for performing a filtering process on the image data in accordance with the gradient calculated by the gradient value calculating means; Further comprising The gradient value calculating means calculates a gradient value by using the magnitude of the transform coefficient of the block to be filtered and the magnitude of the difference between the filter target pixel and surrounding pixels.
- the gradient value calculating means uses the size of the transform coefficient of the block to be filtered, or the size of the transform coefficient, the filter target pixel, and its The gradient value is calculated using the difference between the surrounding pixels.
- the pixel value calculation means when decoding image information divided into blocks and encoded, processing target pixels belonging to the certain block located near the boundary between the certain block and the adjacent block adjacent to the certain block Means for correcting the pixel value of
- the gradient value calculating means calculates the difference between the pixel values of two or more pixels belonging to a certain block and two or more pixels belonging to an adjacent block. The gradient value is calculated from the magnitude of the difference between the pixel values.
- An image decoding apparatus includes a decoding unit that decodes a prediction residual signal and a prediction signal from encoded data, and a prediction residual signal obtained by performing inverse quantization and inverse conversion on the prediction residual signal decoded by the decoding unit.
- the decoding means includes decoding means for decoding a flag for switching a variable-length encoding method of a prediction residual signal
- the prediction residual signal is a signal encoded by being divided into a plurality of blocks having different sizes
- the decoding means is characterized in that, for a block size larger than a predetermined size, the number of transform coefficients included in the encoded data is smaller than the number of transform coefficients input to the inverse transform means.
- Decoding means for changing the number of transform coefficients according to a flag for switching a variable-length encoding method.
- An image decoding apparatus includes a decoding unit that decodes a prediction residual signal and a prediction signal from encoded data, and a prediction residual signal obtained by performing inverse quantization and inverse conversion on the prediction residual signal decoded by the decoding unit.
- An image decoding device for decoding image data from the prediction residual and the prediction signal,
- the prediction residual signal is a signal encoded by being divided into a plurality of blocks having different sizes,
- the decoding means is characterized in that, for a block size larger than a predetermined size, the number of transform coefficients included in the encoded data is smaller than the number of transform coefficients input to the inverse transform means.
- a decoding means for changing the number of the transform coefficients.
- An image decoding apparatus includes a decoding unit that decodes a prediction residual signal and a prediction signal from encoded data, and a prediction residual signal obtained by performing inverse quantization and inverse conversion on the prediction residual signal decoded by the decoding unit.
- An image decoding device for decoding image data from the prediction residual and the prediction signal In the decoding of the prediction residual signal, the decoding means includes a transform coefficient to be included in the encoded data according to the value of the prediction residual signal that has already been decoded, at the time when the decoding means decodes a predetermined number or more of prediction residual signals. It is characterized by comprising means for changing the position.
- the decoding means linearizes the value of the decoded prediction residual signal when the decoding means decodes a predetermined number or more of prediction residual signals.
- a means for calculating an exponent calculated by the sum is provided, and means for changing a position of a transform coefficient included in the encoded data according to whether the exponent is larger than a predetermined value.
- An image encoding device of the present invention is an image encoding device including decoded image generation means for generating a local decoded image, A gradient value calculating means for calculating a gradient value near a certain calculation target pixel on the local decoded image; Learning data calculation and storage means for calculating learning data from the pixel value to be calculated, the surrounding pixel values, and the pixel value at the same position as the target pixel of the input image, and storing the learning data for each gradient; Filter parameter calculation means for calculating a filter parameter for each gradient, using learning data for each gradient stored by the learning data calculation storage means; It is characterized by providing.
- encoding conversion efficiency can be increased by making the number of transform coefficients included in the image information smaller than the number of transform coefficients input to the inverse transform means.
- the number of transform coefficients included in the image information is switched by a variable-length coding method of transform coefficients, or by switching with flags such as a frame header, a slice header, a macroblock header, and a block header, thereby further improving the coding efficiency.
- the coding efficiency can be increased by switching the position of the transform coefficient of the high frequency component according to the value of the decoded low frequency component of the block to be decoded.
- FIG. 1 is a block diagram illustrating a configuration of an image decoding device 100 according to the first embodiment.
- the image decoding apparatus 100 includes a prediction unit 111, a variable length coding / decoding unit 114, an inverse quantization unit 115, an inverse transform unit 116, a frame memory 117, and a filter parameter storage unit 119. And a filter unit 120 and an adder unit 109. The operation of the image decoding apparatus 100 will be described below.
- the encoded data input to the image decoding apparatus 100 is first input to the variable length encoding / decoding unit 114.
- the variable-length coding / decoding unit 114 performs prediction of a filter parameter, which is a parameter for designating a weighting coefficient used for filter processing, a prediction signal indicating a prediction method, and a transformed / quantized prediction residual by variable-length decoding of encoded data. Decode the difference signal.
- the inverse quantization unit 115 inversely quantizes the transform / quantized prediction residual signal input from the variable length coding / decoding unit 114.
- the inverse transformation unit 116 inversely transforms the inversely quantized signal input from the inverse quantization unit 115 to generate a prediction residual.
- the prediction unit 111 receives the prediction signal decoded from the variable-length encoding / decoding unit 114, and generates a prediction signal using the decoded image stored in the frame memory 117 according to the prediction signal.
- the addition unit 109 generates a decoded image by adding the prediction signal input from the prediction unit 111 and the prediction residual input from the inverse conversion unit 116, and stores the decoded image in the frame memory 117.
- the filter parameter storage unit 119 receives and stores the filter parameters decoded by the variable length coding / decoding unit 114.
- the filter unit 120 reads out the filter parameters stored in the filter parameter storage unit 119 and performs filter processing on the image stored in the frame memory 117.
- FIG. 2 is a diagram schematically showing pixels at the boundary portion of the block.
- a pixel of one block is a pixel Pi
- a pixel of the other block is a pixel Qi (i is an integer from 0 to n). Note that i in the pixel Pi and the pixel Qi corresponds to the distance from the block boundary.
- the pixel values corresponding to the pixel Pi and the pixel Qi are shown as the pixel value pi and the pixel value qi, respectively, and the processed pixel value corresponding to the unprocessed pixel value pk in the processing target pixel Pk is It is shown as pk ′.
- k is an integer that takes a value from 0 to the block size (k is 0 to n).
- FIG. 3 is a diagram illustrating an internal configuration of the filter unit 120.
- the filter unit 120 includes a difference value calculation unit 401, a gradient evaluation unit 402, a weight coefficient calculation unit 403, and a pixel value calculation unit 404.
- FIG. 4 is a diagram illustrating a two-dimensional filter target pixel.
- the difference value calculation unit 401 d ABS (r22-r32) + ABS (r22-r12) + ABS (r22-r23) + ABS (r22-r21) (1-2) Is used to calculate the difference value absolute value d.
- pk ′ Wk ⁇ pk + (1 ⁇ Wk) ⁇ q0 (1-3) Is used to calculate the processed pixel value pk ′.
- Wk is a weighting coefficient determined by the distance k.
- Wk a value output from a weight coefficient calculation unit 403 described later is used.
- the weighting factor Wk may be handled as an integer instead of a decimal.
- a value obtained by converting the weight coefficient to an N power of 2 (for example, 32 times) to an integer is used. More specifically, Calculation is performed by the following equation obtained by modifying equation (1-3).
- pk ′ (Wk ⁇ pk + (32 ⁇ Wk) ⁇ q0) / 32 (1-4)
- the pixel value pk ′ after the filter processing is calculated from only the two pixel values pk and q0, but a configuration using more pixels may be used.
- pk ′ ⁇ kk ⁇ pk + ⁇ k0 ⁇ p0 + ⁇ k0 ⁇ q0 + ⁇ k (1-6) It is expressed by
- the pixel value calculation unit 404 uses the linear sum of the pixel value rij around the pixel to be filtered and the weighting coefficient ⁇ ij to obtain the pixel value r22 ′ after the filtering process. (Where i and j are integers from 0 to 4).
- FIG. 5 is a block diagram showing an internal configuration of the gradient evaluation unit 402.
- the gradient evaluation unit 402 includes a difference calculation unit 601, a gradient value calculation unit 602, and a gradient index calculation unit 603.
- the gradient evaluation unit 402 includes a frequency component amount calculation unit 604. Since the frequency component amount calculation unit 604 will be described in the second embodiment, it will not be described here.
- the gradient evaluation unit 402 calculates a gradient index, which is information indicating the magnitude of the gradient, using the pixel value read from the frame memory 117.
- the difference calculation unit 601 calculates a difference value necessary for gradient value calculation using the pixel values of the filter target pixel and its surrounding pixels.
- the difference value d_p0p2 is calculated.
- d_p0p2 ABS (p2-p0)
- the gradient index calculation unit 603 calculates the gradient index gi from the gradient value obtained by the gradient value calculation unit 602. More specifically, the gradient index gi is calculated by the following equation.
- T0, T1, T2, and T3 are predetermined constants that determine the determination threshold.
- ⁇ T0, T1, T2, T3 ⁇ ⁇ 0, 2, 4, 6 ⁇ Is used.
- the weight coefficient calculation unit 403 reads out the filter parameters stored for each gradient magnitude from the filter parameter storage unit 119. More specifically, filter parameters K1, K2,..., Kn (n is a constant indicating the number of parameters) for each gradient index gi are read.
- the weighting factor calculation unit 403 calculates a weighting factor used for the filtering process from the read filter parameter.
- the method of calculating the weighting factor differs depending on the filter parameter expression format.
- the following expression format a or expression format b is used as the filter parameter expression format.
- the filter parameter represents a weighting factor for filtering.
- Expression format b The filter parameter represents a parameter of an expression for calculating the weighting factor for filtering.
- Whether the filter parameter is expressed in the expression format a or the expression format b may be determined in advance by the encoding device and the decoding device as using the same method, and may include a flag in the encoded data, For example, it may be specified by a sequence header, a picture header, or a slice header.
- the flag is specified in the encoded data
- the variable length encoding / decoding unit 114 decodes the flag indicating the expression format from the encoded data and outputs the decoded flag to the pixel value calculation unit 404.
- FIG. 6 shows a method of obtaining the weighting coefficient Wk at the distance k from the boundary from the weighting parameters K1,..., Kn in the case of the expression format a.
- FIG. 7 shows a method for obtaining the weighting coefficient Wk used for the filter processing of the pixel Pk from the weighting parameters K1,..., Kn in the case of the expression format b.
- weighting coefficient for the pixel Pk is determined to be one Wk as in Expression (1-3)
- a plurality of weighting coefficients for the pixel Pk are required as in Expression (1-5) and Expression (1-7).
- the weight coefficient calculation unit 403 determines (l + m + 1) weight coefficients from the filter parameters.
- the weight coefficient of the distance k is 0, 1, 2, 3, 4, 5 is required. Filter parameters may only be given for distances 1 and 3.
- the weighting factor is interpolated by linear approximation of the filter parameter closest to the distance k.
- the linear approximation is performed using the filter parameter values for the distances 0, 2, 4, and 5 from the boundary.
- 0.45 and 0.0 are appropriate as the predetermined constants WW0 and WW6.
- FIG. 9, and FIG. 10 are diagrams for explaining a filter parameter storage method in the filter parameter storage unit 119.
- the filter parameter storage unit 119 stores a filter parameter for each gradient index.
- the filter parameter is a vector composed of a plurality of values and is given by K1, K2,.
- the filter parameter storage unit 119 outputs the filter parameters for each gradient index stored therein to the filter unit 120.
- the filter parameter storage unit 119 preferably stores learning data for each block size in accordance with the output of the block size management unit 201. In this case, as shown in FIG. 9, corresponding filter parameters are stored for each block size and gradient index.
- the filter parameters are also preferable to store the filter parameters by dividing them into horizontal boundaries and vertical boundaries.
- the filter parameters when the block size is large or when the horizontal size and vertical size of the block are different, it is preferable to store the filter parameters by dividing them into horizontal boundaries and vertical boundaries.
- the image decoding apparatus decodes a filter parameter from encoded data, reads out and reads out the decoded filter parameter according to the magnitude of the gradient value calculated from the boundary pixel value.
- the filtering process By performing the filtering process according to the weighting coefficient calculated from the filtered filter parameters, an image close to the encoded image can be decoded.
- FIG. 11 is a block diagram illustrating a configuration of an image decoding device 200 according to the second embodiment.
- the image decoding apparatus 200 includes a prediction unit 111, a variable length coding / decoding unit 114, an inverse quantization unit 115, an inverse transform unit 116, a frame memory 117, and a block size management unit 201. And a filter parameter storage unit 119 and a filter unit 120. The operation of the image decoding device 200 will be described below.
- the encoded data input to the image decoding apparatus 200 is first input to the variable length encoding / decoding unit 114.
- the variable-length coding / decoding unit 114 obtains a filter parameter, a prediction signal indicating a prediction method, a block size used for prediction and conversion, and a converted / quantized prediction residual signal by variable-length decoding of the encoded data. Decrypt.
- the decoded block size is stored in the block size management unit 201.
- the image decoding apparatus changes the operations of the prediction unit 111, the inverse quantization unit 115, the inverse transform unit 116, and the filter unit 120 according to the block size stored in the block size management unit 201.
- the block size management unit 201 is not shown for the sake of simplification of description, but decoding of encoded data encoded using a method of making the block size variable (variable block size) and This does not impair the filtering process.
- the block size M ⁇ N means a block of horizontal M pixels and vertical N pixels.
- the variable length coding / decoding unit 114 decodes the prediction residual signal.
- the block size is 4 ⁇ 4, 8 ⁇ 8, or 32 ⁇ 32
- transform coefficients for the block size are decoded.
- a predetermined number 32 in this case
- only a predetermined number of transform coefficients are encoded when the block size is 64 ⁇ 16.
- the operations of the inverse quantization unit 115 and the inverse transform unit 116 are as described in the first embodiment.
- the amount of inverse transform processing is large.
- the block size is 64 ⁇ 16
- the amount of processing of the quantization unit 115 and the inverse transformation unit 116 can be reduced.
- the appropriate block size for achieving high coding efficiency varies depending on the characteristics of the image. In general, since the correlation between pixels increases as the image size increases, it is better to increase the maximum block size as the image size increases. In fact, a large block size is effective in improving the coding efficiency of the flat portion.
- the maximum block size is preferably about 32 ⁇ 32.
- the maximum block size is preferably 64 ⁇ 64.
- the number of appropriate transform coefficients in the method of encoding only some transform coefficients varies depending on the characteristics of the image.
- An image with a larger change gradient in a region other than the edge portion (a region where the pixel value does not change sharply) requires a higher-order transform coefficient, so it is better to increase the number of transform coefficients (for example, 48), when the gradient is small, the number of transform coefficients may be small (for example, 16).
- the appropriate number of transform coefficients depends on the variable length coding method for coding the transform coefficients.
- variable length encoding / decoding unit 114 when the variable length encoding method is provided in the encoded data as a flag (hereinafter referred to as a VLC mode flag), the variable length encoding / decoding unit 114 performs VLC indicating the variable length encoding method.
- the mode flag is decoded and the VLC mode flag indicates a high-efficiency variable length coding method such as arithmetic code
- the number of transform coefficients in the method of coding only some transform coefficients is Nm, and the VLC mode Otherwise, Nn ( ⁇ Nm) is set.
- FIG. 12 is a diagram illustrating the positions of transform coefficients to be encoded that are switched by the variable-length encoding method described above.
- 40 transform coefficients are decoded as shown in FIG. 12A, and in the other cases, 16 transform coefficients fewer than those in the case of arithmetic code are decoded as shown in FIG. 12B. .
- FIG. 13 is a diagram for explaining the positions of transform coefficients to be encoded.
- the position of the transform coefficient is switched, and there are default, horizontal direction priority, and vertical direction priority.
- the position of the transform coefficient to be encoded is given priority in the horizontal direction, and when it is spread in the vertical direction, priority is given to the vertical direction. It is desirable. If it is neither, or if it extends in either direction, the default position should be used. In addition to priority in the horizontal direction and priority in the vertical direction, priority in the diagonal direction may be used.
- the horizontal priority means that the number Nh of coefficients where h> v is larger than the number Nv of coefficients where h> v.
- Nh ⁇ Nv> Th Point to.
- FIG. 14 is a diagram showing the configuration of a header that encodes the block size, the number of transform coefficients, and the position of the transform coefficients.
- sizeidx_of_max_block is an index indicating the maximum block size and takes a value from 0 to N-1.
- the expression for converting sizeidx_of_max_block to the maximum block size is “the horizontal of the block size is 16 ⁇ sizeidx_of_max_block, and the vertical is 16”.
- the formula for obtaining the maximum block size from sizeidx_of_max_block is not limited to the above, but may be “the block size is 16 ⁇ sizeidx_of_max_block, the vertical is 16 ⁇ sizeidx_of_max_block” or the like.
- Numidx_coeff_of_max_block is an index indicating the number of transform coefficients in the maximum block, and encodes numidx_coeff_of_max_block ⁇ 8 transform coefficients.
- Scanidx_mode_of_max_block is an index indicating the position of the conversion coefficient and takes values of 0, 1, and 2. 0 indicates default, 1 indicates horizontal priority, and 2 indicates vertical priority. Instead of the three types of values, two types may be used, and default and horizontal direction priority or a method of switching between default and vertical direction may be used. In addition, the four types may be switched between default, horizontal direction priority, vertical direction priority, and diagonal direction priority.
- information about the block size (particularly the maximum block size), the number of transform coefficients, and the position of transform coefficients define the sequence. It is desirable that encoding is performed using a header that defines a frame, a header that defines a frame, a slice header, a macroblock header, and a block header.
- the variable length coding / decoding unit 114 of the image decoding apparatus 200 decodes the number of transform coefficients and the position of the transform coefficients encoded in the header, and uses them for decoding the transform coefficients.
- the position of the transform coefficient is not explicitly coded in the header, but the value of the low frequency component is used when a variable length coding method that codes the transform coefficient in order from the low frequency component to the high frequency component is used. Depending on the method, there is a method of changing the position of the conversion coefficient of the high frequency component.
- the numbers in the figure indicate the order in which transform coefficients are decoded (scan order).
- the value of the transform coefficient decoded in the order m is Cm.
- 15A shows the low frequency component
- FIG. 15B shows the default
- FIG. 15C shows the horizontal direction priority
- FIG. 15D shows the vertical direction priority
- FIG. 15E shows the diagonal direction priority.
- the variable length coding / decoding unit 114 decodes a predetermined number (here, 10) of transform coefficients.
- FIG. 15A shows an example of positions of a predetermined number of transform coefficients.
- the variable length coding / decoding unit 114 when a predetermined number or more of transform coefficients are decoded, has an absolute value of transform coefficients close to the horizontal direction (h ⁇ v) and close to the vertical direction (v ⁇ h).
- the horizontal direction priority index H and the vertical direction priority index V calculated by the weighted difference in the absolute value of the conversion coefficient are calculated. More specifically, the following values are calculated.
- Horizontal priority index H ABS (C3) + ABS (C6) -2 ⁇ (ABS (C5) + ABS (C9))
- Vertical priority index V ABS (C5) + ABS (C9) -2 ⁇ (ABS (C3) + ABS (C6))
- the lowest order transform coefficient has a large value even when there is no higher order transform coefficient, and the correlation with the higher order transform coefficient is often small.
- conversion coefficients other than the conversion coefficient of the lowest order that is, conversion coefficients other than C1 and C2.
- the weight used for calculating the horizontal priority index H and the weight used for calculating the vertical priority index V are absolute values of transform coefficients close to the horizontal direction. It is preferable that the absolute values of the transform coefficients close to the vertical direction are not symmetric but different.
- the horizontal size of the block is larger than the vertical size
- Horizontal priority index H ABS (C3) + ABS (C6) -4 ⁇ (ABS (C5) + ABS (C9))
- Vertical priority index V ABS (C5) + ABS (C9)-(ABS (C3) + ABS (C6)) Is preferable.
- variable length coding / decoding unit 114 selects the horizontal priority as the position of the high frequency component transform coefficient.
- the vertical direction priority index V is larger than 0, the vertical direction priority is selected as the position of the high-frequency component conversion coefficient. Otherwise, use the default.
- variable length coding / decoding unit 114 rearranges the position of the transform coefficient to a position determined by the selected scanning method, and then outputs the transform coefficient to the inverse quantization unit 115.
- FIG. 16 is a diagram for explaining the operation of the variable length coding / decoding unit 114.
- the variable length coding / decoding unit 114 first decodes the number nC of transform coefficients, and further decodes a run R that is information indicating the position of the transform coefficient and a level L that indicates the value of the transform coefficient.
- a method of not decoding the number nC of transform coefficients first is possible by decoding a value called “Last Last”. In that case, in the following steps, the determination of whether or not it is the last conversion coefficient changes from the determination of whether Rem is 0 to the determination of whether Last is true.
- S2501 nC is set as the remaining number of transform coefficients Rem, default is set as the scan method S, and 0 is set as the scan position I.
- S2502: If it is the last transform coefficient (Rem 0), the process proceeds to S2520 and the decoding is terminated. If it is not the last conversion coefficient (Rem> 0), the process proceeds to S2503.
- S2504 If the conversion coefficient position I is equal to or greater than the predetermined number T, the process proceeds to S2511. If it is less than the predetermined number T, the flow proceeds to S2505.
- S2506 If the horizontal priority index H is greater than 0, the process proceeds to S2507. Otherwise, the process proceeds to S2508.
- S2507 The scanning method S is set with priority in the horizontal direction.
- S2508 The vertical priority index V is calculated.
- S2509 If the vertical priority index V is greater than 0, the flow proceeds to S2510. Otherwise, the process proceeds to S2511.
- S2510 The scanning method S is set with priority in the vertical direction.
- S2511 The level L obtained in S2503 is stored at the position of the conversion coefficient determined by the scan method S and the scan position I. As an option of the scanning method S, a method of adding diagonal priority in addition to horizontal priority and vertical direction is also suitable.
- FIGS. 13 and 14 are diagrams showing a method for setting the block size.
- a block that is a constant multiple of the block size (64 ⁇ 32 in this case) that is the least common multiple of the block sizes 4 ⁇ 4, 8 ⁇ 8, 32 ⁇ 32, and 64 ⁇ 16 to be used is handled as a macroblock.
- the screen is divided into macro blocks as shown in FIG. 18, and processing is performed in units of macro blocks.
- the shaded portion in FIG. 18 is the input screen, and the macro block covers the screen. If the area of the macroblock exceeds the screen, such as at the edge of the screen, decoding is performed in the area covered by the entire macroblock. At the time of output from the image decoding apparatus, only the range of the screen is cut out and output to the outside. In FIG. 18, the upper left coordinates of the macroblock are indicated by black dots.
- the divided 64 ⁇ 32 macroblock is further divided into 32 ⁇ 32 and 64 ⁇ 16.
- the divided 32 ⁇ 32 and 64 ⁇ 16 blocks are further divided into smaller blocks.
- it is divided into 4 ⁇ 4, 8 ⁇ 8, 32 ⁇ 32, and 64 ⁇ 16 blocks. This is called a tree decomposition method.
- the method shown in FIG. 19 is different from the tree decomposition.
- a certain block size is set as the macro block size regardless of a constant multiple of the block size which is the least common multiple of the block size to be used.
- 32 ⁇ 16 is a macro block.
- the screen is scanned in raster order in units of macroblocks, and 64 ⁇ 32 blocks, 32 ⁇ 32 blocks, and macroblocks (32 ⁇ 16) are selected in this unit.
- the area selected as the macroblock is further divided into 4 ⁇ 4 or 8 ⁇ 8.
- the previously selected area 64x16 or 32x32 or 32x16
- the screen is further scanned in raster order, again starting from 64x32 blocks, 32x32 blocks, and macroblocks (32x16) Select block size.
- 64x32 blocks, 32x32 blocks, and macroblocks 32x16 Select block size.
- This method is called a large block priority method because the position of a block having a large block size can be determined in a smaller unit than the method based on tree division.
- the larger block priority than the tree division gives a greater degree of freedom for determining the block division method, but the code amount for determining the block division method becomes larger.
- the filter unit 120 of the second embodiment is as illustrated in FIG. 3, and includes a difference value calculation unit 401, a gradient evaluation unit 402, a weight coefficient calculation unit 403, and a pixel value calculation unit 404. It is prepared for.
- the gradient evaluation unit 402 calculates a gradient value by using a pixel value read from the frame memory 117 by a method different for each block size read from the block size management unit 201.
- the difference calculation unit 601 which is a component of the gradient evaluation unit 402 calculates a difference value necessary for calculating the gradient value. More specifically, the following difference value is calculated.
- the gradient value calculation unit 602 uses the difference value to calculate the gradient value by a method that is different for each block size.
- the gradient value is calculated using the difference value between pixels that are further away as the block size increases. This is because the larger the block size, the higher the possibility that it will be used for the flat portion. In the case of the flat portion, this corresponds to the fact that a difference value does not occur unless pixels that are more than a predetermined distance apart are used.
- the horizontal size and vertical size of the block are different, when processing the vertical boundary, calculate the gradient value according to the horizontal size and when processing the horizontal boundary, the vertical size The gradient value is calculated according to
- the block size is equal to or larger than a predetermined value
- a predetermined value in the present embodiment, when it is 64 or larger, not only the pixel value (pk) of the block on the filter target pixel side but also the pixel value (qk) of the adjacent block See also This is because when the block size is particularly large, it is often used in a region where the flatness is extremely high, and it is not possible to measure the characteristics of a block sufficiently by simply referring to one of the blocks adjacent to the boundary.
- the number of transform coefficients to be decoded is limited to a predetermined number. Since a block with a limited number of transform coefficients is often used in a region with extremely high flatness, it is preferable to calculate a gradient value by referring to the pixel value of the block on the opposite side of the filter target pixel. .
- the gradient evaluation unit 402 calculates a gradient index from the gradient value g.
- the gradient index gi is calculated by the following formula.
- T0, T1, T2, and T3 are predetermined constants that give determination thresholds.
- T0, T1, T2, and T3 may be changed according to the block size.
- ⁇ T0, T1, T2, T3 ⁇ ⁇ 0, 3, 6, 12 ⁇ ...
- Block size 4x4, 8x8 ⁇ T0, T1, T2, T3 ⁇ ⁇ 0, 2, 4, 6 ⁇ ...
- the gradient evaluation unit 402 not only calculates a gradient value using the pixel value read from the frame memory 117 but also includes a frequency component amount calculation unit 604 as shown in FIG. 5 and is output from the inverse conversion unit 116. Information on conversion coefficients may be used.
- FIG. 20 is a diagram for explaining the operation of the frequency component amount calculation unit 604.
- the frequency component amount calculation unit 604 calculates the sum of the absolute values of the conversion coefficients for each region of the conversion coefficients using the conversion coefficients output from the inverse conversion unit 116, and calculates the low frequency component amount and the high frequency component amount. More specifically, the low-frequency component amount is calculated using the conversion coefficient at the position indicated by the fine shaded portion in FIG. 20, and the high-frequency component amount is calculated using the conversion coefficient at the position indicated by the coarse shaded portion in FIG. calculate.
- the calculation of the low-frequency component amount and the high-frequency component amount is not limited to the sum of absolute values, but may be other values such as a sum of squares, a maximum value of absolute values, or a maximum value of square values.
- the gradient index is determined by the size of the conversion coefficient, and when the amount is large, the difference between the pixel values is used regardless of the size of the conversion coefficient. Determine the gradient index.
- the method of determining the magnitude of the gradient using the transform coefficient is effective when the block size is large. Therefore, it is preferable to use the above method when the block size is large, for example, 32 ⁇ 32 or 64 ⁇ 16, and otherwise use a method that does not use a transform coefficient. The reason is that when the block size is large, it is often used mainly in a region where the correlation between pixels is large, and in this case, the size of the transform coefficient well represents the characteristics of the block.
- the block size when the block size is large, it may be used not only for an image area having a large inter-pixel correlation but also for an area having a repetitive pattern.
- the gradient of the local region of the block cannot be sufficiently expressed only by the transform coefficient.
- the amount of high-frequency components is usually large. In this case, the above method does not cause this problem because the difference value is used for calculating the gradient index.
- the method using the conversion coefficient can use a wide range of characteristics without increasing the difference value used to calculate the gradient value.
- a gradient value measuring method using only the transform coefficient is effective as described below.
- the gradient evaluation unit 402 may also use a prediction signal indicating the prediction method output from the prediction unit 111.
- the prediction signal output from the prediction unit 111 is DC prediction predicted from the average value of the already decoded pixel values in the vicinity, and the case of other prediction signals will be described.
- the prediction signal is DC prediction
- the gradient index gi is calculated by the gradient value method using the magnitude of the transform coefficient. For example, the following prediction method is used.
- the operation of the filter unit 120 is equal to that of the first embodiment. Only differences from the first embodiment will be described below.
- the weighting factor calculation unit 403 obtains a weighting factor using the filter parameters K1,..., K2, Kn.
- the filter parameter expression format As the filter parameter expression format, the expression format a and the expression format b are used as described in the first embodiment.
- the weighting factor calculation unit 403 of the second embodiment uses the block size input from the block size management unit 201 to change the expression format according to the block size.
- the expression format a When the block size is 4x4 or 8x8, the expression format a When the block size is 32x32 or 64x16, the expression format b Is used.
- the reason for this are as follows. For example, when the block size is small, the filtering process is sufficient only when the distance from the boundary is short. Therefore, the expression format a is suitable. When the block size is large, a weighting factor is required when the distance from the boundary is large. However, when the filter parameter is determined for each distance from the boundary, there is a problem that the number of filter parameters increases.
- the expression format b is suitable.
- the image decoding apparatus decodes the block size and the filter parameter from the encoded data, and decodes each block size according to the gradient value calculated from the boundary pixel value and the transform coefficient. It is possible to decode an image close to the encoded image by reading the read filter parameter and performing a filter process according to the weighting coefficient calculated from the read filter parameter.
- FIG. 21 is a block diagram illustrating a configuration of an image encoding device 300 according to the third embodiment.
- symbol is attached
- the image encoding device 300 includes a prediction unit 111, a conversion unit 312, a quantization unit 313, a variable length encoding unit 314, an inverse quantization unit 115, and an inverse conversion unit 116.
- the frame memory 117 and the filter parameter calculation unit 118 are configured.
- the image coding apparatus 300 When the image coding apparatus 300 performs a loop filter process that reduces distortion of a locally decoded image stored in the frame memory 117, the image coding apparatus includes a filter unit 120. In this case, a filter parameter storage unit 119 that stores filter parameters for controlling the filter unit 120 is provided. Hereinafter, the operation of the image coding apparatus 300 will be described.
- An image input to the image encoding device 300 is decomposed into blocks, and the following processing is performed.
- the prediction unit 111 generates a prediction block close to the input block.
- the subtraction unit 107 calculates a difference value block that is a difference value between the input block and the prediction block output from the prediction unit 111.
- the conversion unit 312 calculates a conversion coefficient by DCT conversion or the like for the difference value block input from the subtraction unit 107.
- the quantization unit 313 quantizes the transform coefficient according to a step determined by the quantization step.
- the quantized transform coefficient is encoded by the variable length encoding unit 314 and output to the outside.
- the inverse quantization unit 115 inversely quantizes the quantized transform coefficient.
- the inverse transform unit 116 inversely transforms the inversely quantized transform coefficient to calculate a residual block.
- the adder 109 calculates the sum of the residual block and the prediction block and reproduces the input block. The reproduced block is stored in the frame memory 117.
- the filter parameter calculation unit 118 calculates a filter parameter.
- the calculated filter parameter is output to the variable length encoding unit 314.
- the variable length coding unit 314 performs not only the information indicating the prediction method and the transform coefficient but also the variable length coding of the filter parameter and outputs the result.
- the filter parameter storage unit 119 When the filter parameter storage unit 119 exists, the calculated filter parameter is stored in the filter parameter storage unit 119.
- the filter unit 120 reads the filter parameter stored in the filter parameter storage unit 119 and performs filter processing on the locally decoded image stored in the frame memory 117 according to the value. The filtered image is stored again in the frame memory 117.
- FIG. 22 is a diagram illustrating a configuration of the filter parameter calculation unit 118.
- the filter parameter calculation unit 118 includes a difference value calculation unit 401, a gradient evaluation unit 402, a learning data storage unit 501, and a parameter estimation unit 502.
- the difference value calculation unit 401 calculates a difference value absolute value d that is a difference value between pixel values of the target block and adjacent blocks.
- the gradient evaluation unit 402 indicates the magnitude of the gradient value using the pixel value read from the frame memory 117 or the transform coefficient output from the inverse quantization unit 115. The gradient index that is information is calculated.
- the filter parameter calculation unit 118 stores this.
- Storing the matrix data is specifically performed by storing each component of the matrix. That is, m ⁇ m data and m data (total m ⁇ m + m data) are stored.
- i row j column component XX ij of X T X is The i row component XY i of X T Y is Expressed.
- XX ij1 x i1 x j1
- XY i1 x i1 y 1
- t is an integer from 2 to n
- XX ijt XX ijt-1 + x it x jt (3-5)
- XY it XY it-1 + x it y t (3-6)
- the values of XX and XY are updated.
- the pixel value after filtering is pk ′, but it is considered appropriate if this is closest to the pixel value ppk of the input image. Therefore, it is required to obtain (l + m + 1) parameters ⁇ ki, ⁇ ki, ⁇ .
- (l + m + 1) parameters ⁇ ki, ⁇ ki, ⁇ .
- a matrix of (l + m + 1) rows (l + m + 1) columns and a vector of (l + m + 1) columns may be obtained sequentially.
- the filter parameters of the present embodiment are expressed in the expression format a and the expression format b.
- the learning data storage unit 501 stores different learning data depending on the expression format of the filter parameter.
- the filter parameter represents a weighting factor in the filter processing. Therefore, learning data for obtaining a weighting factor is stored.
- both the matrix XX (k) and the vector XY (k) when the distance from the boundary is k are both scalars, and the input image corresponding to the filter target pixel pk is Assuming that it is ppk, from the equations (3-3) and (3-4), the data index t (t is an integer from 1 to n) Ask for.
- the learning data storage unit 501 calculates and stores values of XX (k) and XY (k) for each gradient value parameter and for each distance k from the boundary.
- the filter parameter represents a parameter of an expression for calculating a weighting factor for the filter process.
- XX and XY may be calculated and stored.
- values for each gradient value are stored in both the expression format a and the expression format b.
- the number of learning data if the number of parameters for linear prediction is m, in the case of the expression format a, learning data of (m ⁇ m + m) ⁇ number of gradient indexes ⁇ number of distances k from the boundary is required. .
- the learning data storage unit 501 stores corresponding learning data for each gradient index.
- the learning data is the values of XX (k) and XY (k) for each gradient distance k in the expression format a, and is XX and XY by gradient in the expression format b.
- the learning data storage unit 501 preferably stores the learning data for each block size in accordance with the output of the block size management unit 201. In this case, as shown in FIG. 24, learning data corresponding to each block size and each gradient index is stored.
- the learning data it is also preferable to store the learning data separately for each horizontal boundary and vertical boundary.
- the block size is large, and when the horizontal size and vertical size of the block are different, it is preferable to store the learning data by dividing it into a horizontal boundary and a vertical boundary.
- the parameter estimation unit 502 estimates linear prediction parameters using data stored in the learning data storage unit 501. In the description of this embodiment, estimation by the least square method is used.
- the inverse matrix is easily obtained as 1 / XX obtained by division. Even when the number of parameters is two or three, the calculation is easy with a simple formula.
- XX is decomposed into a lower triangular matrix L of m rows and m columns and an upper triangular matrix U of m rows and m columns.
- LUA XY It is expressed.
- the parameter estimation unit 105 obtains a parameter from the learning data using the learning data for each gradient value.
- the parameters are obtained by a method using LU decomposition or Gaussian elimination. Even when the number of parameters is 1 to 3, a method using LU decomposition or Gaussian elimination may be used.
- the calculated filter parameter is output to the variable length encoding unit 314.
- the filter parameters output to the variable length encoding unit 314 are variable length encoded and output to the outside of the image encoding apparatus 300 as encoded data.
- the filter parameter is a real number, for example, it is appropriate to multiply it by 2 to the power of n and convert it to an integer and encode it as an n-bit integer. Note that n is a predetermined constant.
- the filter parameter is variable-length encoded.
- the calculated filter parameter may be configured to have the same value in the image encoding device and the image decoding device without performing variable-length encoding.
- the image coding apparatus stores learning data, which is a value calculated from a pixel to be filtered, surrounding pixel values, and an input image, for each gradient value, and stores the stored learning data.
- the filter parameter for obtaining the optimum weighting coefficient for the filter processing can be obtained by calculating the filter parameter for each gradient value.
- the image decoding apparatus can perform filter processing using an optimum weighting coefficient, and the coding efficiency is improved.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
Description
d=ABS(p0-q0)・・・(0-1)
ap=ABS(p2-p0)・・・(0-2)
p0´=(p2+2×p1+2×p0+2×q0+q1)/8
p1´=(p2+p1+p0+q0)/4
p2´=(2×p3+3×p2+p1+p0+q0)/8
p0´=(2×p1+p0+q0)/4
フィルタパラメータの組を保存するフィルタパラメータ保存手段と、
前記フィルタパラメータ保存部に保存されたフィルタパラメータを利用して前記画像データにフィルタ処理を行うフィルタ手段と、
を備え、
前記フィルタ手段は、
フィルタ処理の対象となる画素付近の勾配値を算出する勾配値算出手段と、
算出された勾配に応じて、フィルタパラメータの組から1つのフィルタパラメータを選択する選択手段と、
前記選択手段により選択されたフィルタパラメータを用いてフィルタ処理の重み係数を算出する重み係数算出手段と、
を備えることを特徴とする。
前記復号手段は、前記符号化データからフィルタパラメータの組を更に復号し、
前記フィルタ手段は、前記復号手段により復号されたフィルタパラメータを利用して前記画像データにフィルタ処理を行うことを特徴とする。
前記復号手段は、前記符号化データからサイズの異なる複数のブロックに関する情報を更に復号し、
前記フィルタ手段は、前記ブロック毎に画像データにフィルタ処理を行うことを特徴とする。
前記重み係数算出手段は、前記選択手段により選択されたフィルタパラメータと境界からの距離に応じてフィルタ処理の重み係数を算出することを特徴とする。
符号化データから、予測残差信号及び予測信号を復号する復号手段と、前記復号手段により復号された予測残差信号を逆量子化及び逆変換することにより予測残差を生成する生成手段と、を有し、前記予測残差と、予測信号とから画像データを復号する画像復号装置であって、
フィルタ処理の対象となる画素付近の勾配値を算出する勾配値算出手段と、
前記勾配値算出手段により算出された勾配に応じて、前記画像データにフィルタ処理を行うフィルタ手段と、
を更に備え、
前記勾配値算出手段は、フィルタ処理の対象となるブロックの変換係数の大きさと、フィルタ対象画素とその周囲の画素の差分の大きさを用いて、勾配値を算出することを特徴とする。
前記勾配値算出手段は、ブロックのサイズが、所定のサイズ以上の場合において、フィルタ処理の対象となるブロックの変換係数の大きさを用いて、又は前記変換係数の大きさと、フィルタ対象画素とその周囲の画素の差分の大きさとを用いて、勾配値を算出することを特徴とする。
前記画素値算出手段は、ブロックに分割して符号化された画像情報を復号する際に、あるブロックと当該あるブロックに隣接する隣接ブロックとの境界近傍に位置する上記あるブロックに属する処理対象画素の画素値を補正する手段であって、
前記勾配値算出手段は、ブロックのサイズが、所定のサイズ以上の場合において、あるブロックに属する2つ以上の画素の画素値間の差分の大きさと、また、隣接ブロックに属する2つ以上の画素の画素値間の差分の大きさから、勾配値を算出することを特徴とする。
前記復号手段は、予測残差信号の可変長符号化方法を切り替えるフラグを復号する復号手段を備え、
前記予測残差信号は、サイズの異なる複数のブロックに分割して符号化された信号であって、
前記復号手段は、所定のサイズよりも大きいブロックサイズに対しては、逆変換手段に入力する変換係数の数よりも、前記符号化データに含める変換係数の数の方が小さくなることを特徴とする復号手段であって、可変長符号化方法を切り替えるフラグによって、前記変換係数の数を変更する復号手段を備えることを特徴とする。
前記予測残差信号は、サイズの異なる複数のブロックに分割して符号化された信号であって、
前記復号手段は、所定のサイズよりも大きいブロックサイズに対しては、逆変換手段に入力する変換係数の数よりも、前記符号化データに含める変換係数の数の方が小さくなることを特徴とする復号手段であって、前記変換係数の数を変更する復号手段を備えることを特徴とする。
前記予測残差信号の復号において、前記復号手段は所定の数以上の予測残差信号を復号する時点で、既に復号された予測残差信号の値に応じて、前記符号化データに含める変換係数の位置を変更する手段を備えることを特徴とする。
前記局所復号画像上のある算出対象画素付近の勾配値を算出する勾配値算出手段と、
前記算出対象となる画素値と、その周辺の画素値と、入力画像の対象画素と同じ位置の画素値から、学習データを算出し、勾配毎に保存する学習データ算出保存手段と、
前記学習データ算出保存手段により保存された勾配毎の学習データを用いて、勾配毎のフィルタパラメータを算出するフィルタパラメータ算出手段と、
を備えることを特徴とする。
[1.第1実施形態]
まず、第1実施形態として、本発明を適用した画像復号装置について説明する。
本発明を適用した画像復号装置について、図1を参照しつつ以下に説明する。図1は、第1実施形態に係る画像復号装置100の構成を示すブロック図である。
画像復号装置100に入力された符号化データは、まず、可変長符号化復号部114に入力される。可変長符号化復号部114は、符号化データの可変長復号により、フィルタ処理に用いる重み係数を指定するためのパラメータであるフィルタパラメータ及び予測方法を示す予測信号、変換・量子化された予測残差信号を復号する。
ここで、フィルタ部120について詳細に説明する。
d=ABS(p0-q0)・・・(1-1)
を用いて差分値絶対値dを算出する。
差分値算出部401は、
d=ABS(r22-r32)+ABS(r22-r12)+ABS(r22-r23)+ABS(r22-r21)・・・(1-2)
を用いて差分値絶対値dを算出する。
画素値算出部404は、差分値算出部401において算出した差分値絶対値dが閾値Th1未満であるか否かを判定する。すなわち、d<αであるか否かを判定する(α=閾値Th1)。差分値絶対値dが閾値Th1未満である場合、すなわちd<αである場合、画素値算出部404は、フィルタ対象画素の画素値pkと、境界画素値q0から、フィルタ処理後の画素値pk´を算出する。
pk´= Wk×pk+(1―Wk)×q0 ・・・(1-3)
を用いて処理後の画素値pk´を算出する。Wkは、距離kにより定まる重み係数である。重み係数Wkは、後述の重み係数算出部403から出力された値を用いる。
式(1-3)を変形した以下の式によって算出する。
pk´= (Wk×pk+(32―Wk)×q0)/32・・・(1-4)
なお、上記説明では、フィルタ処理後の画素値pk´を、2つの画素値pkとq0のみから計算しているが、より多くの画素を用いる構成でも構わない。
pk´= Σαkx×px+Σβkx×qx+γk ・・・(1-5)
のように表現される。この場合、重み係数の数は、境界からの距離k毎に(l+m+1)個必要になる。
この場合、
pk´= αkk×pk+αk0×p0+βk0×q0+γk ・・・(1-6)
で表現される。
pk´= αkk×pk+(1-αkk―β0)×p0+βk0×q0・・・(1-7)
となる。重み係数の数は、各pkに対し、2つ(αkk、βk0)である。
r22´= Σαij×rij+γ
を用いて算出する。
α4j=α0j
α3j=α1j
αi4=αi0
αi3=αi1
とすることも可能である。この場合、重み係数の数は9個に減らすことができる。
図5は、勾配評価部402の内部の構成を示すブロック図である。勾配評価部402は、差分算出部601と、勾配値算出部602と、勾配インデックス算出部603とを備えて構成されており、場合によって、周波数成分量算出部604を備えることとする。周波数成分量算出部604については、第2実施形態で説明するため、ここでは説明しない。
d_p0p2=ABS(p2-p0)
g=d_p0p2
により算出する。
d_rij=ABS(rij)―ABS(r22)
を算出し、勾配値算出部602は、差分算出部601で得られた差分値を用いて、勾配値gを
g=d_r42+d_r02+d_r24+d_r20
により算出する。
= 1 (g>T1 かつ g<=T2)
= 2 (g>T2 かつ g<=T3)
= 3 (g>T3)
T0、T1、T2、T3は判定の閾値を定める所定の定数であり、本実施形態では、
{T0、T1、T2、T3}={0、2、4、6}
を用いる。
重み係数算出部403は、勾配の大きさ毎に格納されたフィルタパラメータをフィルタパラメータ保存部119から読み出す。より、具体的には、勾配インデックスgi毎のフィルタパラメータK1、K2、・・・、Kn(nはパラメータ数を表す定数)を読み出す。
(表現形式a)フィルタパラメータは、フィルタ処理の重み係数を表す
(表現形式b)フィルタパラメータは、フィルタ処理の重み係数を算出する式のパラメータを表す。
Wk = K1 (k=0)
= K2 (k=1)
= 0 (k>2)
によって求める。
Wk = Kn (k=n-1)
= 0 (k>n)
によって求める。
Wk = K1 - K2 × k (k<K1/K2)
= 0 (k>=K1/K2)
によって求める。
αxk = Kαx1 (k=0)
= Kαx2 (k=1)
= 0 (k>1)
βxk = Kβx1 (k=0)
= Kβx2 (k=1)
= 0 (k>1)
γk = Kγ1 (k=0)
= Kγ2 (k=1)
= 0 (k>1)
により求める。
αkx = Kαx1+Kαx2×k (k<Kαx1/Kαx2)
= 0 (k>=Kαx1/Kαx2)
βkx = Kβx1+Kβx2×k (k<Kβx1/Kβx2)
= 0 (k>=Kβx1/Kβx2)
γk = Kγx1+Kγx2×k (k<Kγx1/Kγx2)
= 0 (k>=Kγx1/Kγx2)
により求める。
αij = Kz (z=i+5×j、i、jは0から4の整数)
= 0 (上記以外)
により求める。
αij=K1 - K2 × k (k<K1/K2)
=0 (k>=K1/K2)
により求める。但しk=ABS(i)+ABS(j)。
ところで、上記の説明では、表現形式aの場合には、画素Pkの重み係数に対応するフィルタパラメータが存在することを仮定している。しかし、画素Pkの重み係数に対応するフィルタパラメータが存在するわけではない。
W0 = WW0 (K=0)
W1 = K1 (K=1)
W2 = (K1+K3)/2 (K=2)
W3 = K3 (K=3)
W4 = (2×K3+WW6)/3 (K=4)
W5 = (K3+2×WW6)/3 (K=5)
に定める。なお、所定の定数WW0、WW6は、例えば0.45、0.0が適当である。
図8、図9、図10は、フィルタパラメータ保存部119における、フィルタパラメータの格納方法を説明するための図である。図8に示すとおり、フィルタパラメータ保存部119は、勾配インデックス毎にフィルタパラメータを格納する。フィルタパラメータは、複数の値からなるベクトルであり、K1、K2、・・・、Knで与えられる。フィルタパラメータ保存部119は、内部に格納された勾配インデックス毎のフィルタパラメータをフィルタ部120に出力する。
図11は、第2実施形態に係る画像復号装置200の構成を示すブロック図である。なお、第1実施形態と同様の部材に関しては、同一の符号を付し、その説明を省略する。図2に示すように、画像復号装置200は、予測部111と、可変長符号化復号部114と、逆量子化部115と、逆変換部116と、フレームメモリ117と、ブロックサイズ管理部201と、フィルタパラメータ保存部119と、フィルタ部120とを備えて構成されている。画像復号装置200の動作について以下に説明する。
可変長符号化復号部114は予測残差信号を復号する。ブロックサイズが4x4、8x8、32x32の場合は、ブロックサイズ分の変換係数を復号する。ブロックサイズ64x16の場合には、1024個の変換係数のうち所定の数(ここでは32個)のみを復号する。なお、本実施形態で復号可能な符号化データを符号化する符号化装置においてもブロックサイズが64x16の場合には変換係数のうち所定の数のみを符号化する。
Nh-Nv >= Th
を指す。
Nv-Nh >= Tv
を指す。
Nv-Nh >= Td
を指す。
ABS(C3)+ABS(C6)-2×(ABS(C5)+ABS(C9))
垂直方向優先指数V=
ABS(C5)+ABS(C9)-2×(ABS(C3)+ABS(C6))
水平方向優先指数H=
ABS(C3)+ABS(C6)-4×(ABS(C5)+ABS(C9))
垂直方向優先指数V=
ABS(C5)+ABS(C9)-(ABS(C3)+ABS(C6))
とすることが好適である。
S2502:最後の変換係数である場合(Rem=0)には、S2520に遷移し復号を終了する。最後の変換係数ではない場合(Rem>0)には、S2503に遷移する。
S2503:変換係数のランRとレベルLを復号し、スキャン位置Iと、変換係数の残数RemをI=I+R及びRem=Rem-1により更新する。
S2504:変換係数の位置Iが所定の数T以上である場合には、S2511に遷移する。所定の数T未満の場合には、S2505に遷移する。
S2505:水平方向優先指数Hを算出する。
S2507:スキャン方法Sを水平方向優先に設定する。
S2508:垂直方向優先指数Vを算出する。
S2509:垂直方向優先指数Vが0より大きい場合には、S2510に遷移する。それ以外の場合にはS2511に遷移する。
S2510:スキャン方法Sを垂直方向優先に設定する。
S2511:スキャン方法Sとスキャン位置Iで定まる変換係数の位置にS2503で得られたレベルLを格納する。なお、スキャン方法Sの選択肢として、水平方向優先、垂直方向に加え、対角方向優先を追加する方法も好適である。
図17、図18、図19は、ブロックサイズの設定方法を示す図である。図13、図14に示す方法では、使用するブロックサイズ4x4、8x8、32x32、64x16の最小公倍数となるブロックサイズ(ここでは64x32)の定数倍のブロックをマクロブロックとして扱う。この場合には、図18に示すように画面をマクロブロックに分割し、マクロブロック単位で処理を行う。
第2実施形態のフィルタ部120も、第1実施形態と同じく図3の通りであり、差分値算出部401と、勾配評価部402と、重み係数算出部403と、画素値算出部404とを備えて構成される。
d_p0p4 = ABS(p0-p4)
d_p0p8 = ABS(p0-p8)
d_p2p4 = ABS(p2-p4)
d_p4p8 = ABS(p4-p8)
d_q0q8 = ABS(q0-q8)
勾配値算出部602は、差分値を用いて、ブロックサイズ毎に異なる方法で、勾配値を算出する。
ブロックサイズが4x4、8x8の場合には、
g=d_p0p2
ブロックサイズが32x32の場合には、
g=d_p0p4+d_p4p8
ブロックサイズが64x16の場合には、水平境界の場合には、
g=d_p0p2+d_p2p4
を用い、垂直境界の場合には、
g=d_p0p8+d_q0q8
を用いる。
g=d_p0p4+d_p4p8+d_q0q8
= 1 (g>T0 かつ g<=T1)
= 2 (g>T1 かつ g<=T2)
= 3 (g>T3)
T0、T1、T2、T3は判定の閾値を与える所定の定数である。
{T0、T1、T2、T3}={0、3、6、12}
・・・ブロックサイズ4x4、8x8
{T0、T1、T2、T3}={0、2、4、6}
・・・ブロックサイズ32x32、64x16
を用いる。
勾配評価部402は、フレームメモリ117より読み出した画素値を用いて勾配値を算出するだけでなく、図5に示すように周波数成分量算出部604をさらに備え、逆変換部116から出力された変換係数の情報を用いても良い。
gi = 0 (低周波成分量<=TL0かつ、高周波成分量<=TH0)
= 1 (上記以外かつ、低周波成分量<=TL1かつ、高周波成分量<= TH1)
= 2 (上記以外かつ、d_p0p2<=T1かつ、d_p0p2<=T2)
= 3 (上記以外)
なお、TL0、TH0、TL1、TH1は判定の閾値を定める所定の定数であり、例えば、TL0=50、TH0=50、TL1=200、TH1=50などがある。
gi = 0(低周波成分量<=TL0かつ、高周波成分量<=TH0)
= 1(上記以外かつ、低周波成分量<=TL1かつ、高周波成分量<=TH1)
= 2(上記以外かつ、高周波成分量<=TH1)
= 3(上記以外)
勾配評価部402は、また予測部111から出力された予測方法を示す予測信号を用いても良い。
= 1 (低周波成分量 <= TL1 かつ 高周波成分量 <= TH1)
= 2 (g>T1 かつ g<=T2)
= 3 (g>T3)
予測信号がDC予測でない場合には、変換係数の大きさによらず、画素値の差を用いて勾配インデックスgiを決定する。
第1実施形態で説明したとおり、重み係数算出部403は、フィルタパラメータK1、・・・、K2、Knにより重み係数を求める。フィルタパラメータの表現形式も、第1実施形態で説明したとおり、表現形式aと表現形式bを用いる。第2実施形態の重み係数算出部403は、ブロックサイズ管理部201から入力されたブロックサイズを用いて、ブロックサイズに応じて表現形式を変更する。
ブロックサイズが4x4、8x8の場合には、表現形式a
ブロックサイズが32x32、64x16の場合には、表現形式b
を用いる。
つづいて、本発明を適用した画像符号化装置について、第3実施形態として図を参照して説明する。
[3.1 画像符号化装置の構成]
図21は、第3実施形態に係る画像符号化装置300の構成を示すブロック図である。なお、第1実施形態、第2実施形態と同様の部材に関しては、同一の符号を付し、その説明を省略する。
画像符号化装置300に画像が入力された画像はブロックに分解され、以下の処理がなさせる。予測部111は、入力ブロックに近い予測ブロックを生成する。減算部107は、入力ブロックと予測部111から出力される予測ブロックの差分値である差分値ブロックを計算する。
以下、フィルタパラメータ算出部118の動作を説明する。図22は、フィルタパラメータ算出部118の構成を示す図である。フィルタパラメータ算出部118は、差分値算出部401、勾配評価部402、学習用データ保存部501、パラメータ推定部502を備えて構成される。
学習用データ保存部501の動作を説明する前に、線形予測のパラメータを推定する方法について説明する。
y = a1×x1+a2×x2・・・・am×xm+ε
と表現できる(εは予測残差である)。
Y=XA+E
で表される。この式における残差E、より具体的にはεの二乗和を最小化するA(=A^)を求める問題は、正規方程式として一般に知られており、
XTXA^=XTY
である。
データがt個の時点のXXijをXXijt、XYiをXYitとおけば、
データが1個である場合(t=1)のときのXX、XYを
XXij1=xi1xj1
XYi1=xi1y1
と計算しておき、データt(tは2からnの整数)が得られた時点で、逐次的に
XXijt=XXijt-1+xitxjt ・・・(3-5)
XYit=XYit-1+xityt ・・・(3-6)
のように、XX、XYの値を更新する。
次にフィルタ処理の場合の具体的な学習データについて説明する。境界からの距離kにおけるフィルタ対象画素Pkのフィルタ処理後の画素値をpk´とし、フィルタ対象画素と同じ側のブロックの境界からの距離iの画素の画素値pi(k=0~l-1)、フィルタ対象画素の反対側のブロックの境界からの距離iの画素の画素値qi(i=0~m-1)と、境界からの距離kのフィルタ対象画素に対する重み係数αki(i=0~l-1)、βki(k=0~m-1)、γkを用いて、
フィルタ処理は、
pk´= Σαki×pi+Σβki×qi+γk ・・・(3-7)
で表現される。
本実施形態のフィルタパラメータは、第1実施形態で説明したとおり、表現形式aと表現形式bで表現される。学習用データ保存部501は、フィルタパラメータがどの表現形式であるかによって、異なる学習用データを保存する。
pk´= Wk×pk+(1―Wk)×q0 ・・・(3-8)
で表現される。表現を変更すると
pk´―q0= Wk×(pk―q0) ・・・(3-9)
である。
重み係数は
Wk = K1 - K2 × k (k<K2)
= 0 (k>=K2)
により求める。
pk´= (K1-K2×k)pk+(1―K1+K2×k)q0
= K1(pk―q0)+K2(k×q0-k×pk)+q0
と表現される。
ppk ― q0 = a1(pk―q0)+a2(k×q0-k×pk)+ε
となる。
x1=pk―q0
x2=k×q0-k×pk
として、式(3-5)、式(3-6)に示すとおりXXとXYを算出し保存すれば良い。
パラメータ推定部502は、学習用データ保存部501に保存されたデータを用いて、線形予測のパラメータを推定する。本実施形態の説明では最小二乗法による推定を用いる。
既に説明したm行m列の学習用データXX、m行の学習用データXYとした場合、誤差の2乗和を最小とする線形予測のパラメータAは、以下の正規方程式で示すことができる。
この正規方程式の解となるパラメータA^は、一般的にはXXの逆行列を求めることで算出可能である。
この分解により、正規方程式は、
LUA=XY
と表現される。
なお、学習用データが、ブロックサイズ別である場合にはブロックサイズ別にパラメータを求める。
A^=(XTX)-1XTY
により、パラメータを求める。パラメータの数が3つ以上の場合には、LU分解もしくはガウスの消去法を利用した方法によってパラメータを求める。なお、パラメータ数が1~3の場合もLU分解もしくはガウスの消去法を用いた方法を用いても構わない。
200 画像復号装置
300 画像符号化装置
111 予測部
114 可変長符号化復号部
115 逆量子化部
116 逆変換部
117 フレームメモリ
118 フィルタパラメータ算出部
501 学習用データ保存部
502 パラメータ推定部
119 フィルタパラメータ保存部
120 フィルタ部
401 差分値算出部
402 勾配評価部
601 差分値算出部
602 勾配値算出部
603 勾配インデックス算出部
604 周波数成分量算出部
403 重み係数算出部
404 画素値算出部
201 ブロックサイズ管理部
312 変換部
313 量子化部
314 可変長符号化部
Claims (12)
- 符号化データから、予測残差信号及び予測信号を復号する復号手段と、前記復号手段により復号された予測残差信号を逆量子化及び逆変換することにより予測残差を生成する生成手段と、を有し、前記予測残差と、予測信号とから画像データを復号する画像復号装置であって、
フィルタパラメータの組を保存するフィルタパラメータ保存手段と、
前記フィルタパラメータ保存部に保存されたフィルタパラメータを利用して前記画像データにフィルタ処理を行うフィルタ手段と、
を備え、
前記フィルタ手段は、
フィルタ処理の対象となる画素付近の勾配値を算出する勾配値算出手段と、
算出された勾配に応じて、フィルタパラメータの組から1つのフィルタパラメータを選択する選択手段と、
前記選択手段により選択されたフィルタパラメータを用いてフィルタ処理の重み係数を算出する重み係数算出手段と、
を備えることを特徴とする画像復号装置。 - 前記復号手段は、前記符号化データからフィルタパラメータの組を更に復号し、
前記フィルタ手段は、前記復号手段により復号されたフィルタパラメータを利用して前記画像データにフィルタ処理を行うことを特徴とする請求項1に記載の画像復号装置。 - 前記復号手段は、前記符号化データからサイズの異なる複数のブロックに関する情報を更に復号し、
前記フィルタ手段は、前記ブロック毎に画像データにフィルタ処理を行うことを特徴とする請求項1又は2に記載の画像復号装置。 - 前記重み係数算出手段は、前記選択手段により選択されたフィルタパラメータと境界からの距離に応じてフィルタ処理の重み係数を算出することを特徴とする請求項1から3の何れかに記載の画像復号装置。
- 符号化データから、予測残差信号及び予測信号を復号する復号手段と、前記復号手段により復号された予測残差信号を逆量子化及び逆変換することにより予測残差を生成する生成手段と、を有し、前記予測残差と、予測信号とから画像データを復号する画像復号装置であって、
フィルタ処理の対象となる画素付近の勾配値を算出する勾配値算出手段と、
前記勾配値算出手段により算出された勾配に応じて、前記画像データにフィルタ処理を行うフィルタ手段と、
を更に備え、
前記勾配値算出手段は、フィルタ処理の対象となるブロックの変換係数の大きさと、フィルタ対象画素とその周囲の画素の差分の大きさを用いて、勾配値を算出することを特徴とする画像復号装置。 - 前記勾配値算出手段は、ブロックのサイズが、所定のサイズ以上の場合において、フィルタ処理の対象となるブロックの変換係数の大きさを用いて、又は前記変換係数の大きさと、フィルタ対象画素とその周囲の画素の差分の大きさとを用いて勾配値を算出することを特徴とする請求項1から5の何れかに記載の画像復号装置。
- 前記画素値算出手段は、ブロックに分割して符号化された画像情報を復号する際に、あるブロックと当該あるブロックに隣接する隣接ブロックとの境界近傍に位置する上記あるブロックに属する処理対象画素の画素値を補正する手段であって、
前記勾配値算出手段は、ブロックのサイズが、所定のサイズ以上の場合において、あるブロックに属する2つ以上の画素の画素値間の差分の大きさと、また、隣接ブロックに属する2つ以上の画素の画素値間の差分の大きさから、勾配値を算出することを特徴とする請求項1から5の何れかに記載の画像復号装置。 - 符号化データから、予測残差信号及び予測信号を復号する復号手段と、前記復号手段により復号された予測残差信号を逆量子化及び逆変換することにより予測残差を生成する生成手段と、を有し、前記予測残差と、予測信号とから画像データを復号する画像復号装置であって、
前記復号手段は、予測残差信号の可変長符号化方法を切り替えるフラグを復号する復号手段を備え、
前記予測残差信号は、サイズの異なる複数のブロックに分割して符号化された信号であって、
前記復号手段は、所定のサイズよりも大きいブロックサイズに対しては、逆変換手段に入力する変換係数の数よりも、前記符号化データに含める変換係数の数の方が小さくなることを特徴とする復号手段であって、可変長符号化方法を切り替えるフラグによって、前記変換係数の数を変更する復号手段を備えることを特徴とする画像復号装置。 - 符号化データから、予測残差信号及び予測信号を復号する復号手段と、前記復号手段により復号された予測残差信号を逆量子化及び逆変換することにより予測残差を生成する生成手段と、を有し、前記予測残差と、予測信号とから画像データを復号する画像復号装置であって、
前記予測残差信号は、サイズの異なる複数のブロックに分割して符号化された信号であって、
前記復号手段は、所定のサイズよりも大きいブロックサイズに対しては、逆変換手段に入力する変換係数の数よりも、前記符号化データに含める変換係数の数の方が小さくなることを特徴とする復号手段であって、前記変換係数の数を変更する復号手段を備えることを特徴とする画像復号装置。 - 符号化データから、予測残差信号及び予測信号を復号する復号手段と、前記復号手段により復号された予測残差信号を逆量子化及び逆変換することにより予測残差を生成する生成手段と、を有し、前記予測残差と、予測信号とから画像データを復号する画像復号装置であって、
前記予測残差信号の復号において、前記復号手段は所定の数以上の予測残差信号を復号する時点で、既に復号された予測残差信号の値に応じて、前記符号化データに含める変換係数の位置を変更する手段を備えることを特徴とする画像復号装置。 - 前記予測残差信号の復号において、前記復号手段は、所定の数以上の予測残差信号を復号する時点で、復号された予測残差信号の値の線形和により算出される指数を算出する手段を備え、前記指数が所定の値よりも大きいかに応じて、前記符号化データに含める変換係数の位置を変更する手段を備えることを特徴とする請求項10に記載の画像復号装置。
- 局所復号画像を生成する復号画像生成手段を備える画像符号化装置であって、
前記局所復号画像上のある算出対象画素付近の勾配値を算出する勾配値算出手段と、
前記算出対象となる画素値と、その周辺の画素値と、入力画像の対象画素と同じ位置の画素値から、学習データを算出し、勾配毎に保存する学習データ算出保存手段と、
前記学習データ算出保存手段により保存された勾配毎の学習データを用いて、勾配毎のフィルタパラメータを算出するフィルタパラメータ算出手段と、
を備えることを特徴とする画像符号化装置。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200980152489.1A CN102265618B (zh) | 2008-12-25 | 2009-12-24 | 图像解码设备和图像编码设备 |
BRPI0923603-1A BRPI0923603B1 (pt) | 2008-12-25 | 2009-12-24 | aparelho de decodificação de imagem |
US13/142,027 US8792738B2 (en) | 2008-12-25 | 2009-12-24 | Image decoding apparatus and image coding apparatus |
EP09834968.1A EP2378775B1 (en) | 2008-12-25 | 2009-12-24 | Image decoding device and image coding device |
EA201170888A EA033108B1 (ru) | 2008-12-25 | 2009-12-24 | Устройство декодирования изображения и устройство кодирования изображения |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008330596A JP5490404B2 (ja) | 2008-12-25 | 2008-12-25 | 画像復号装置 |
JP2008-330596 | 2008-12-25 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2010074170A1 true WO2010074170A1 (ja) | 2010-07-01 |
Family
ID=42287777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2009/071482 WO2010074170A1 (ja) | 2008-12-25 | 2009-12-24 | 画像復号装置及び画像符号化装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8792738B2 (ja) |
EP (1) | EP2378775B1 (ja) |
JP (1) | JP5490404B2 (ja) |
CN (1) | CN102265618B (ja) |
BR (1) | BRPI0923603B1 (ja) |
EA (1) | EA033108B1 (ja) |
WO (1) | WO2010074170A1 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9338476B2 (en) | 2011-05-12 | 2016-05-10 | Qualcomm Incorporated | Filtering blockiness artifacts for video coding |
AU2012200319B2 (en) | 2012-01-19 | 2015-11-26 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding the significance map for residual coefficients of a transform unit |
WO2013145642A1 (ja) * | 2012-03-28 | 2013-10-03 | 株式会社Jvcケンウッド | 画像符号化装置、画像符号化方法、画像符号化プログラム、送信装置、送信方法及び送信プログラム、並びに画像復号装置、画像復号方法、画像復号プログラム、受信装置、受信方法及び受信プログラム |
JP5943733B2 (ja) * | 2012-06-20 | 2016-07-05 | キヤノン株式会社 | 画像符号化装置およびその制御方法ならびにプログラム |
CN108712652A (zh) | 2012-06-29 | 2018-10-26 | 韩国电子通信研究院 | 视频编码方法和计算机可读介质 |
WO2017068856A1 (ja) * | 2015-10-21 | 2017-04-27 | シャープ株式会社 | 予測画像生成装置、画像復号装置および画像符号化装置 |
CN108541375B (zh) * | 2016-02-03 | 2022-04-12 | 夏普株式会社 | 运动图像解码装置、运动图像编码装置、以及预测图像生成装置 |
KR101862490B1 (ko) * | 2016-12-13 | 2018-05-29 | 삼성전기주식회사 | 영상 보정 프로세서 및 컴퓨터 판독가능 기록 매체 |
EP3454556A1 (en) * | 2017-09-08 | 2019-03-13 | Thomson Licensing | Method and apparatus for video encoding and decoding using pattern-based block filtering |
MX2020006500A (es) * | 2017-12-29 | 2020-09-17 | Ericsson Telefon Ab L M | Metodos que proporcionan codificacion y/o decodificacion de video usando valores de referencia y dispositivos relacionados. |
KR102632984B1 (ko) * | 2018-03-29 | 2024-02-05 | 소니그룹주식회사 | 화상 처리 장치 및 화상 처리 방법 |
CN109389567B (zh) * | 2018-10-24 | 2021-07-16 | 山东大学 | 一种快速光学成像数据的稀疏滤波方法 |
CN113891075B (zh) * | 2020-07-03 | 2023-02-28 | 杭州海康威视数字技术股份有限公司 | 滤波处理方法及装置 |
CN113763291B (zh) * | 2021-09-03 | 2023-08-29 | 深圳信息职业技术学院 | 保持边界滤波算法的性能评价方法、智能终端及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000101850A (ja) * | 1998-07-02 | 2000-04-07 | Canon Inc | フィルタリング方法および装置、コンピュ―タプログラム製品 |
JP2001204029A (ja) * | 1999-08-25 | 2001-07-27 | Matsushita Electric Ind Co Ltd | ノイズ検出方法、ノイズ検出装置及び画像復号化装置 |
JP2005039766A (ja) * | 2003-06-27 | 2005-02-10 | Mitsubishi Electric Corp | ポストフィルタ及びポストフィルタ処理方法並びに映像信号復号化装置 |
JP2007336468A (ja) * | 2006-06-19 | 2007-12-27 | Sharp Corp | 再符号化装置、再符号化方法およびプログラム |
JP2008533863A (ja) * | 2005-03-10 | 2008-08-21 | クゥアルコム・インコーポレイテッド | フレームレートアップ変換アプリケーションにおける補間されたフレームデブロッキング動作 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5778192A (en) * | 1995-10-26 | 1998-07-07 | Motorola, Inc. | Method and device for optimal bit allocation between different sources of information in digital video compression |
JP3095140B2 (ja) | 1997-03-10 | 2000-10-03 | 三星電子株式会社 | ブロック化効果の低減のための一次元信号適応フィルター及びフィルタリング方法 |
EP0878776B1 (en) * | 1997-05-12 | 2003-08-27 | STMicroelectronics S.r.l. | Adaptive intrafield reducing of gaussian noise by fuzzy logic processing |
KR100243225B1 (ko) * | 1997-07-16 | 2000-02-01 | 윤종용 | 블록화효과 및 링잉잡음 감소를 위한 신호적응필터링방법 및신호적응필터 |
US6178205B1 (en) * | 1997-12-12 | 2001-01-23 | Vtel Corporation | Video postfiltering with motion-compensated temporal filtering and/or spatial-adaptive filtering |
CN1286575A (zh) | 1999-08-25 | 2001-03-07 | 松下电器产业株式会社 | 噪声检测方法、噪声检测装置及图象编码装置 |
FI117533B (fi) | 2000-01-20 | 2006-11-15 | Nokia Corp | Menetelmä digitaalisten videokuvien suodattamiseksi |
PT2268034T (pt) * | 2001-11-22 | 2016-11-18 | Godo Kaisha Ip Bridge 1 | Método de codificação de comprimento variável e método de descodificação de comprimento variável |
CN101448162B (zh) * | 2001-12-17 | 2013-01-02 | 微软公司 | 处理视频图像的方法 |
JP4097587B2 (ja) * | 2002-10-16 | 2008-06-11 | 松下電器産業株式会社 | 画像処理装置および画像処理方法 |
US7292733B2 (en) | 2002-10-16 | 2007-11-06 | Matsushita Electric Industrial Co., Ltd. | Image processing apparatus and image processing method |
KR100582595B1 (ko) * | 2002-12-23 | 2006-05-23 | 한국전자통신연구원 | 이산여현변환에 기반하여 압축된 영상으로부터 블록에지를 검출 및 분류하는 방법 |
JP4042563B2 (ja) * | 2002-12-27 | 2008-02-06 | セイコーエプソン株式会社 | 画像ノイズの低減 |
JP2004336103A (ja) * | 2003-04-30 | 2004-11-25 | Texas Instr Japan Ltd | 画像情報圧縮装置 |
US20130107938A9 (en) * | 2003-05-28 | 2013-05-02 | Chad Fogg | Method And Apparatus For Scalable Video Decoder Using An Enhancement Stream |
JP4617644B2 (ja) | 2003-07-18 | 2011-01-26 | ソニー株式会社 | 符号化装置及び方法 |
CN1224270C (zh) * | 2003-09-30 | 2005-10-19 | 清华大学 | 用于宏块组结构的两阶段预测编码的帧内编码帧编码方法 |
US7346224B2 (en) * | 2003-11-07 | 2008-03-18 | Mitsubishi Electric Research Laboratories, Inc. | System and method for classifying pixels in images |
JP2006054846A (ja) | 2004-07-12 | 2006-02-23 | Sony Corp | 符号化方法、符号化装置、復号方法、復号装置およびそれらのプログラム |
CN1860796B (zh) * | 2004-07-12 | 2010-06-16 | 索尼株式会社 | 编码方法、编码装置、解码方法、及解码装置 |
US7574060B2 (en) * | 2004-11-22 | 2009-08-11 | Broadcom Corporation | Deblocker for postprocess deblocking |
DE102005025629A1 (de) * | 2005-06-03 | 2007-03-22 | Micronas Gmbh | Bildverarbeitungsverfahren zur Reduzierung von Blocking-Artefakten |
US20070183684A1 (en) * | 2006-02-08 | 2007-08-09 | Bhattacharjya Anoop K | Systems and methods for contrast adjustment |
US8913670B2 (en) * | 2007-08-21 | 2014-12-16 | Blackberry Limited | System and method for providing dynamic deblocking filtering on a mobile device |
JP4666012B2 (ja) * | 2008-06-20 | 2011-04-06 | ソニー株式会社 | 画像処理装置、画像処理方法、プログラム |
US8548041B2 (en) * | 2008-09-25 | 2013-10-01 | Mediatek Inc. | Adaptive filter |
US8098931B2 (en) * | 2008-12-09 | 2012-01-17 | Himax Technologies Limited | Method for adaptively selecting filters to interpolate video data |
-
2008
- 2008-12-25 JP JP2008330596A patent/JP5490404B2/ja active Active
-
2009
- 2009-12-24 EP EP09834968.1A patent/EP2378775B1/en active Active
- 2009-12-24 BR BRPI0923603-1A patent/BRPI0923603B1/pt active IP Right Grant
- 2009-12-24 US US13/142,027 patent/US8792738B2/en active Active
- 2009-12-24 CN CN200980152489.1A patent/CN102265618B/zh active Active
- 2009-12-24 EA EA201170888A patent/EA033108B1/ru not_active IP Right Cessation
- 2009-12-24 WO PCT/JP2009/071482 patent/WO2010074170A1/ja active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000101850A (ja) * | 1998-07-02 | 2000-04-07 | Canon Inc | フィルタリング方法および装置、コンピュ―タプログラム製品 |
JP2001204029A (ja) * | 1999-08-25 | 2001-07-27 | Matsushita Electric Ind Co Ltd | ノイズ検出方法、ノイズ検出装置及び画像復号化装置 |
JP2005039766A (ja) * | 2003-06-27 | 2005-02-10 | Mitsubishi Electric Corp | ポストフィルタ及びポストフィルタ処理方法並びに映像信号復号化装置 |
JP2008533863A (ja) * | 2005-03-10 | 2008-08-21 | クゥアルコム・インコーポレイテッド | フレームレートアップ変換アプリケーションにおける補間されたフレームデブロッキング動作 |
JP2007336468A (ja) * | 2006-06-19 | 2007-12-27 | Sharp Corp | 再符号化装置、再符号化方法およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
EA033108B1 (ru) | 2019-08-30 |
EA201170888A1 (ru) | 2012-02-28 |
CN102265618A (zh) | 2011-11-30 |
CN102265618B (zh) | 2014-01-15 |
US8792738B2 (en) | 2014-07-29 |
BRPI0923603B1 (pt) | 2021-01-12 |
US20110255797A1 (en) | 2011-10-20 |
BRPI0923603A2 (pt) | 2019-08-27 |
EP2378775B1 (en) | 2020-03-18 |
EP2378775A1 (en) | 2011-10-19 |
EP2378775A4 (en) | 2012-12-26 |
JP2010154264A (ja) | 2010-07-08 |
JP5490404B2 (ja) | 2014-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5490404B2 (ja) | 画像復号装置 | |
JP6091583B2 (ja) | 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法および符号化データ | |
EP3448038B1 (en) | Decoding method for intra predicting a block by first predicting the pixels at the boundary | |
KR100788220B1 (ko) | 품질기반 영상압축 | |
JP2008507190A (ja) | 動き補償方法 | |
TW202315408A (zh) | 以區塊為基礎之預測技術 | |
JP5594841B2 (ja) | 画像符号化装置及び画像復号装置 | |
US9094687B2 (en) | Video encoder and video decoder | |
RU2573747C2 (ru) | Способ и устройство кодирования видео, способ и устройство декодирования видео и программы для них | |
JP6065613B2 (ja) | 動画像符号化装置 | |
KR102605285B1 (ko) | 다중 그래프 기반 모델에 따라 최적화된 변환을 이용하여 비디오 신호를 인코딩/디코딩하는 방법 및 장치 | |
KR100571920B1 (ko) | 움직임 모델을 이용한 매쉬 기반의 움직임 보상방법을제공하는 영상의 부호화 방법 및 그 부호화 장치 | |
KR20210156256A (ko) | 인트라 예측 방법 및 장치 | |
WO2011105231A1 (ja) | フィルタ係数符号化装置、フィルタ係数復号装置、動画像符号化装置、動画像復号装置、および、データ構造 | |
CN115834882A (zh) | 一种帧内预测方法、装置、电子设备及存储介质 | |
EP2899974A1 (en) | Video coding device, video coding method, and video coding program | |
CN100459714C (zh) | 测量区块假像及关联的编码/解码/译码的方法和设备 | |
JP6992825B2 (ja) | 映像符号化装置、映像符号化方法、映像復号装置、映像復号方法、及び映像符号化システム | |
WO2015045301A1 (ja) | 映像符号化装置、映像符号化方法および映像符号化プログラム | |
JP5375697B2 (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法、及びプログラム | |
WO2024055155A1 (zh) | 一种编解码方法、装置、编码器、解码器及存储介质 | |
JP5298082B2 (ja) | 適応的に直交変換係数の走査順序を決定する符号化装置及び復号装置 | |
CN118175311A (zh) | 视频数据处理方法、装置、存储介质及设备 | |
KR20210058848A (ko) | 적어도 하나의 이미지를 표현하는 데이터 스트림을 인코딩 및 디코딩하기 위한 방법들 및 디바이스들 | |
US20200329232A1 (en) | Method and device for encoding or decoding video signal by using correlation of respective frequency components in original block and prediction block |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200980152489.1 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 09834968 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 13142027 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2009834968 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 5223/CHENP/2011 Country of ref document: IN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 201170888 Country of ref document: EA |
|
REG | Reference to national code |
Ref country code: BR Ref legal event code: B01A Ref document number: PI0923603 Country of ref document: BR |
|
ENP | Entry into the national phase |
Ref document number: PI0923603 Country of ref document: BR Kind code of ref document: A2 Effective date: 20110627 |