WO2011121716A1 - 動画像符号化方法、復号化方法、符号化装置および復号化装置 - Google Patents
動画像符号化方法、復号化方法、符号化装置および復号化装置 Download PDFInfo
- Publication number
- WO2011121716A1 WO2011121716A1 PCT/JP2010/055641 JP2010055641W WO2011121716A1 WO 2011121716 A1 WO2011121716 A1 WO 2011121716A1 JP 2010055641 W JP2010055641 W JP 2010055641W WO 2011121716 A1 WO2011121716 A1 WO 2011121716A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- pixel
- filter
- interpolation
- image signal
- interpolated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
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/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/167—Position within a video image, e.g. region of interest [ROI]
-
- 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
-
- 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/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
Definitions
- the present disclosure relates to a moving image encoding method, a decoding method, an encoding device, and a decoding device.
- H.V. is one of the international standards for moving picture coding.
- H.264 The H.264 interpolation filter first calculates a pixel value of a half pixel, and calculates a pixel value of a quarter pixel by an average of the calculated half pixels. Further, as another interpolation filter, first, a rounding process is applied to a value calculated by filtering in the first direction to calculate a base value that is a base of the decimal pixel, and the first base value is calculated using the calculated base value.
- interpolation filter that generates a decimal pixel by applying a filter in a second direction different from the direction and further performing a rounding process
- another method for improving the prediction efficiency by motion compensation is to send the filter information including the filter coefficient designed on the encoding side to the decoding side, and use a common loop filter on the encoding and decoding side.
- ALF Adaptive Loop Filter
- This disclosure aims to reduce the amount of calculation while improving the prediction efficiency.
- a video decoding method includes a loop filter information of a decoding target image, a vector indicating a displacement of a pixel position, and a reproduction difference from encoded data. And a filter process is performed on the decoded image signal based on the loop filter information to generate a reference image signal having a pixel value of an integer pixel, and an interpolation pixel obtained from the vector is the integer pixel. And the interpolated pixel is not a pixel located on the horizontal or vertical column of the integer pixels, and the interpolated pixel is shifted from the integer pixel by a half pixel in the horizontal direction and in the vertical direction.
- a filter process using a symmetric first filter is performed to obtain a pixel value of the interpolation pixel, and the interpolation pixel is the first fractional image.
- filter processing is performed with an asymmetric second filter having a tap length in the horizontal or vertical direction shorter than that of the first filter to obtain a pixel value of the interpolated pixel, and the integer pixel and Generating an interpolated image signal including a pixel value of the interpolated pixel, generating a predicted image signal based on the interpolated image, and obtaining an output image signal from the predicted image signal and the reproduction difference signal.
- the moving image encoding method includes a filtering process based on loop filter information that is control information when performing a filtering process on a locally decoded image signal indicating an image signal decoded for each integer pixel.
- a filtering process based on loop filter information that is control information when performing a filtering process on a locally decoded image signal indicating an image signal decoded for each integer pixel.
- To generate a reference image signal having a pixel value of an integer pixel generate a vector indicating displacement of a pixel position based on externally input image data and the reference image signal, and an interpolation pixel obtained from the vector is
- the pixel is not an integer pixel, and the interpolation pixel is not a pixel located on the horizontal or vertical column of the integer pixel, and the interpolation pixel is a half pixel horizontally from the integer pixel.
- the pixel value of the interpolated pixel is filtered by an asymmetric second filter having a tap length in the horizontal or vertical direction shorter than that of the first filter.
- an interpolated image signal including pixel values of the integer pixel and the interpolated pixel, generating a predicted image signal based on the interpolated image, and an input image signal that is an input image signal and the predicted image signal And converting the difference signal indicating the difference between the quantization transform coefficient information to generate quantized transform coefficient information, and encoding the quantized transform coefficient information, the loop filter information, and the vector to generate encoded data. It is characterized by that.
- the video decoding device 100 includes an entropy decoding unit 101, an inverse quantization and inverse transformation unit 102, an addition unit 103, a loop filter processing unit 104, an image buffer unit 105, an interpolation filter processing unit 106, and a prediction.
- a signal generation unit 107 is included.
- the entropy decoding unit 101 decodes the encoded data sent from the moving image encoding apparatus to obtain quantized transform coefficient information, loop filter information, and a displacement amount.
- the loop filter information is information for controlling filter processing including filter coefficient information, and is generated in units of slices, for example.
- the filter coefficient information is information indicating filter coefficients used for integer pixels in the filtering process.
- a displacement amount (also referred to as a vector amount) indicates a motion vector if it is between screens, and indicates a displacement from the target pixel or block if it is within the same screen.
- a displacement amount is a motion vector.
- the inverse quantization and inverse transform unit 102 dequantizes the quantized transform coefficient information decoded by the entropy decoding unit 101 and then performs inverse orthogonal transform to generate a reproduction difference signal.
- the reproduction difference signal is a signal obtained by reproducing on the decoding side a difference signal, which is a difference between the input image data (signal) and the predicted image signal, generated by the moving image encoding apparatus.
- the adder 103 receives the reproduction difference signal from the inverse quantization and inverse transform unit 102 and the prediction image signal from the prediction signal generation unit 107 described later and adds them together to generate a decoded image signal.
- the loop filter processing unit 104 receives the decoded image signal from the adding unit 103 and the filter coefficient information from the entropy decoding unit 101. Then, the loop filter processing unit 104 performs a filtering process on the decoded image signal in accordance with the filter coefficient information to generate a reference image signal. The loop filter processing unit 104 outputs the reference image signal as an output image signal to the outside as necessary.
- the image buffer unit 105 receives and accumulates the reference image signal generated by the loop filter processing unit 104.
- the interpolation filter processing unit 106 receives the displacement amount from the entropy decoding unit 101 and the reference image signal from the image buffer unit 105. Then, the interpolation filter processing unit 106 calculates an interpolation pixel with decimal pixel accuracy using the integer pixel of the reference image with reference to the displacement amount, and generates an interpolation image signal.
- the generation of the interpolation pixel will be described as processing of the pixel value.
- the pixel value may be a luminance value or a color difference signal value, and can be applied regardless of the color space.
- the reference image signal from the image buffer unit 105 is an image signal that has already been decoded in the same screen.
- the prediction signal generation unit 107 receives the interpolation image signal from the interpolation filter processing unit 106, performs prediction processing such as motion compensation prediction using a motion vector, and generates a prediction image signal.
- the interpolation filter processing unit 106 will be described in detail with reference to the flowchart of FIG. Note that here, the fractional pixel is described by taking a quarter pixel as an example, but the invention is not limited to a quarter pixel, and the same applies to fractional pixels such as an eighth pixel and a sixteenth pixel. Can be processed.
- step S201 the reference image signal is received from the image buffer unit 105 and the motion vector is received from the entropy decoding unit 101, and it is determined whether or not the interpolation pixel obtained from the motion vector is an integer pixel.
- the reference image is output as it is without performing the interpolation process. If the interpolated pixel to be obtained is not an integer pixel, that is, a decimal pixel, the process proceeds to step S202.
- step S202 it is determined whether or not the interpolation pixel is on a horizontal or vertical column of integer pixels. If the position of the interpolation pixel is on the horizontal or vertical column of integer pixels, the process proceeds to step S203. If the position of the interpolation pixel does not exist on the horizontal or vertical column of integer pixels, the process proceeds to step S205.
- step S203 an 8-tap filter corresponding to the position of the decimal pixel in the horizontal direction or the vertical direction is applied to calculate the interpolation pixel.
- Expressions (1) to (3) show the 8-tap filters used at this time.
- Expression (1) is used to calculate the position of a quarter pixel
- Expression (2) is used to calculate the position of a half pixel
- Expression (3) is used to calculate the position of three quarter pixels.
- Equations (1) and (3) are asymmetric filters with no symmetry in filter coefficients
- Equation (2) is a symmetric filter with symmetry in filter coefficients.
- step S204 the rounding process using equation (4) is performed on the value calculated in step S203.
- f is a rounded value
- fa is a value calculated using any one of Expressions (1) to (3)
- X is a maximum value that can be expressed by the pixel bit length of the input image. Indicates. Further, “>> 8” is equivalent to an 8-bit right arithmetic shift operation, that is, dividing by 2 8 and truncating the remainder.
- Clip (a, b, c) indicates a clipping process in which c is within a range of a to b, as shown in Expression (5).
- step S205 determination is performed according to the horizontal position of the interpolation pixel. If the interpolated pixel is at a position shifted by a quarter of a pixel in the horizontal direction from the position of the integer pixel, the process proceeds to step S206. If the interpolated pixel is at a position shifted by a half pixel in the horizontal direction from the integer pixel, the process proceeds to step S207. If the interpolated pixel is at a position that is shifted by 3/4 of a pixel in the horizontal direction from the integer pixel, the process proceeds to step S208.
- step S206 a filtering process is performed on the interpolated pixel at a position shifted by a quarter of a pixel from the integer pixel by applying a 6-tap asymmetric filter in the horizontal direction using Equation (6).
- H1 to H6 in Equation (6) indicate pixel values of integer pixels.
- step S207 the interpolation pixel at a position shifted by a half pixel from the integer pixel is subjected to a filtering process by applying an 8-tap symmetric filter in the horizontal direction.
- the same symmetric filter as that of the equation (2) may be used.
- step S208 a filtering process is performed on the interpolated pixel at a position shifted by 3/4 pixels from the integer pixel by applying a 6-tap asymmetric filter in the horizontal direction using Equation (7).
- step S209 determination is performed according to the position of the interpolation pixel in the vertical direction. If the interpolated pixel is at a position shifted by a quarter of a pixel in the vertical direction from the integer pixel, the process proceeds to step S210. If the interpolated pixel is at a position that is shifted by a half pixel in the vertical direction from the integer pixel, the process proceeds to step S210. If the interpolated pixel is at a position that is shifted by 3/4 pixels in the vertical direction from the integer pixel, the process proceeds to step S212.
- step S210 the interpolated pixel at a position shifted by a quarter pixel in the vertical direction from the integer pixel is filtered by applying a 6-tap asymmetric filter in the vertical direction using equation (6) in the same manner as in step S206. I do. Note that the pixel value of the decimal pixel calculated in any of steps S206 to S208 is used in place of the integer pixel in equation (6).
- step S211 the interpolation pixel at a position shifted by a half pixel in the vertical direction from the integer pixel is subjected to a filtering process by applying an 8-tap symmetric filter in the vertical direction.
- the same symmetric filter as that of the equation (2) may be used.
- the pixel value of the decimal pixel calculated in any of steps S206 to S208 is used in place of the integer pixel in equation (2).
- step S212 a filtering process is performed by applying a 6-tap asymmetric filter in the vertical direction to the interpolated pixel located at a position shifted by three-quarters of the pixel in the vertical direction from the integer pixel in the same manner as in step S208. I do. Note that the pixel value of the decimal pixel calculated in any one of steps S206 to S208 is used instead of the integer pixel in equation (7).
- step S213 a rounding process is performed on the decimal pixel value calculated by filtering in two stages in the horizontal direction and the vertical direction using Expression (8).
- fb indicates a value obtained by filtering in two steps in the horizontal direction and the vertical direction.
- step S301 the rounding process is performed on the interpolated pixel calculated by applying the filter in the horizontal direction after finishing any one of the processes from step S206 to step S208 using Expression (4).
- step S302 the rounding process is performed on the interpolated pixel calculated by filtering in the vertical direction using the value rounded in step S301 as an input value.
- the interpolation filter processing is performed in the vertical direction after performing the interpolation filter processing in the horizontal direction, but the interpolation is performed in the vertical direction.
- Interpolation filter processing may be performed in the horizontal direction after performing filter processing.
- the tap length of the asymmetric filter used when generating the interpolated pixels on the horizontal or vertical columns of integer pixels does not affect the worst number of multiplications, so it does not have to be shorter than the tap length of the symmetric filter. .
- the tap length of the asymmetric filter used when generating interpolated pixels that are not on the horizontal or vertical columns of integer pixels is the same as when generating interpolated pixels on the horizontal or vertical columns of integer pixels. Shorten the tap length of the asymmetric filter used.
- an 8-tap filter is used as a symmetric filter and a 6-tap filter is used as an asymmetric filter for pixels that do not exist on a horizontal or vertical column of integer pixels. It only needs to be short. That is, any combination is possible as long as the tap length of the asymmetric filter is shorter than the tap length of the symmetric filter, such as using a 12-tap filter as the symmetric filter and a 6-tap filter as the asymmetric filter.
- the 8-tap filter coefficients shown in Expressions (1) to (3) and the tap filter coefficients shown in Expressions (6) and (7) are used. Is not limited to this, and other 8-tap and 6-tap filter coefficients may be used.
- the symmetric filter uses a coefficient. Since the number of multiplications can be reduced by calculating all together, the total number of multiplications can be reduced by performing the interpolation process using the symmetric filter before the interpolation process using the asymmetric filter.
- FIG. 4 an example of the interpolation pixel calculated by the interpolation filter processing unit 106 will be described with reference to FIG.
- four integer pixels 401 and 15 decimal pixels 402 are shown.
- the decimal pixel 402 is calculated using the upper left integer pixel 401 as a reference (hereinafter referred to as a reference integer pixel).
- the fractional pixel a is represented by equation (1)
- the fractional pixel b is represented by equation (2)
- the fractional pixel c is represented by The 8-tap filter process shown in Expression (3) is performed to calculate the pixel value of the decimal pixel.
- the decimal pixels d, h, and i are arranged in the same column in the vertical direction as the reference integer pixel 401, the decimal pixel d is expressed by the equation (1), the decimal pixel h is expressed by the equation (2), and the decimal pixel i is expressed by the equation (2).
- the pixel value of the decimal pixel can be calculated by performing the 8-tap filter process shown in 3). For the remaining decimal pixels e, f, g, i, j, k, m, n, and o, the pixel value of the decimal pixel is calculated by performing the two-stage filter processing as described above. For example, when calculating the pixel value of the decimal pixel e, first, since it is shifted by a quarter of a pixel in the horizontal direction from the reference integer pixel 401, the process of step S206 in FIG. 6-tap asymmetric filter processing is performed.
- the 6-tap asymmetric filter processing shown in Expression (6) of step S210 is performed using the value calculated by the horizontal filter processing as an input. Just do it.
- the 8-tap symmetric filter processing shown in step S207 is performed.
- the 6-tap asymmetric filter processing shown in Expression (7) of step S212 is performed with the value calculated in the horizontal filter processing as input. Just do it.
- FIG. 5 shows integer pixels 502 and decimal pixels 503 necessary for calculating the decimal pixels in the 4 pixel ⁇ 4 pixel block (the processing target area 501 surrounded by a broken line).
- an interpolation process is performed using an 8-tap symmetrical filter in the horizontal direction. After performing this, interpolation processing is performed using a 6-tap asymmetric filter in the vertical direction.
- the interpolation filter processing is performed only for the area inside the screen boundary 505, and the interpolation pixel calculated in the area inside the screen boundary 505 is used for the other areas. You may use the method of copying. Specifically, in the processing target area 501, interpolation filter processing is performed only on the fractional pixel 504 calculated using nine reference pixels from E3 to E5, F3 to F5, and G3 to G5 as reference integer pixels. For the integer pixels D2 to D5, E2, F2, and G2 located outside, the pixel value of the interpolation pixel in the adjacent screen is copied without performing the interpolation filter processing.
- the filter processing it is not necessary to use the integer pixels A0 to A8 and B0 to K0 for the filter processing, so that the amount of calculation can be reduced and the amount of memory can be reduced.
- the pixel values of the interpolation pixels outside the screen boundary 505 do not coincide with the case where the interpolation process is performed using the integer pixels A0 to K8 as in the above-described method.
- padding processing is to copy the pixel value in the area on the screen as the pixel value in the area outside the screen.
- padding processing is performed on a sufficiently large area 601 including a screen area 602 having a height V and a width H.
- a pixel value of one column of pixels at the right end in the screen area 602 is copied to the area 603 on the right side of the screen.
- the pixel value of one column of pixels at the left end in the screen region 602 is displayed in the area 604 on the left side of the screen, and the pixel value of one column of pixels at the upper end of the screen area 602 is displayed in the region 605 on the screen.
- the pixel value of one column of pixels at the lower end in the screen area 602 is copied.
- the pixel values at the four corners in the screen area 602 are copied.
- the area where the pixel value is copied by the padding process is not necessarily adjacent to the screen area 602 as shown in FIG. 6, and is generated by the interpolation filter process between the area where the padding process is performed and the screen area. There may be a region where the pixel value of the interpolated pixel is stored. In this case, like the integer pixel, the pixel value of the interpolation pixel may be copied to the area where the padding process is performed. Further, the pixel value at an appropriate position may be directly used by the condition determination without copying the pixel value. By doing so, it is not necessary to prepare a memory for storing pixels outside the screen, and it is possible to realize a process equivalent to the case of copying pixel values while reducing the memory.
- X is the maximum value that can be expressed by the bit length of the pixel input to the interpolation filter processing unit 106
- V is a value to be rounded
- U is a value to be added to round up the value
- R is Indicates the number of bits for the right arithmetic shift operation.
- number of bits R for performing right arithmetic shift operations are values U to be added in order to perform the rounding up of N and the value becomes 2 N-1.
- the rounding after filtering the first stage may be the R to N smaller value N S.
- the sum of the filter coefficients used for the first-stage filter processing is 2 A
- the sum of the filter coefficients used for the second-stage filter processing is 2 B
- the bit length of the pixel input to the interpolation filter processing unit 106 If the maximum value that can be expressed by is 2 M ⁇ 1 , U is 2 Ns ⁇ 1 , and X is 2 M + (A ⁇ Ns) ⁇ 1. Accordingly, even in the rounding process after the second-stage filtering, R is (A + B ⁇ N S ), U is 2 (A + B) ⁇ Ns ⁇ 1 , and X is 2 M ⁇ 1 . By making R smaller than N, the calculation accuracy in the filter processing can be increased.
- R is (A + B) and U is 2 (A + B-1) .
- the rounding process described so far is equivalent to rounding off the decimals by dividing the value 2 R, or the decimal.
- the tap length of the asymmetric filter used is made smaller than the tap length of the symmetric filter.
- the number of multiplications can be reduced, and a decoding process can be performed with a reduced overall calculation amount.
- a video encoding apparatus corresponding to the video decoding apparatus according to the first embodiment will be described in detail with reference to FIG.
- a moving image encoding apparatus 700 according to the second embodiment includes a subtraction unit 701, a transform and quantization unit 702, an inverse quantization and inverse transform unit 703, an adder 704, a loop filter processing unit 705, an image buffer unit 706, A displacement amount generation unit 707, an interpolation filter processing unit 708, a prediction signal generation unit 709, and an entropy encoding unit 710 are included.
- the inverse quantization and inverse transform unit 703, the image buffer unit 706, the interpolation filter processing unit 708, and the prediction signal generation unit 709 are the inverse quantization and inverse transform unit 102, the image buffer unit 105, and the image buffer unit 105 according to the first embodiment. Since the same operations as the interpolation filter processing unit 106 and the prediction signal generation unit 107 are performed, detailed description thereof is omitted here.
- the subtraction unit 701 receives input image data (signal) from the outside and a prediction image signal from a prediction signal generation unit 709 described later, and outputs a difference between the input image data and the prediction image signal as a difference signal.
- the conversion unit and quantization unit 702 receives the difference signal from the subtraction unit 701, converts and quantizes the difference signal, and generates quantization conversion coefficient information.
- the addition unit 704 operates in the same manner as the addition unit 103 according to the first embodiment. Specifically, the reproduction difference signal is received from the inverse quantization and inverse transform unit 703, and the prediction image signal is received from the prediction signal generation unit 709 described later. Then, the adding unit 704 adds the reproduction difference signal and the predicted image signal to generate a locally decoded image signal.
- the locally decoded image signal is an image signal obtained by decoding pixel values of pixels in a processing block unit.
- the loop filter processing unit 705 performs substantially the same operation as the loop filter processing unit 104 according to the first embodiment. Specifically, the local decoded image signal is received from the adder 704 and the loop filter information is received from the outside, and the local decoded image signal is filtered based on the loop filter information to generate a reference image signal.
- the displacement amount generation unit 707 receives a reference image signal from the image buffer unit 105 and input image data from the outside, and generates a displacement amount (here, a motion vector). Since a general method is used for the generation method of the displacement amount, a description thereof is omitted here.
- the entropy encoding unit 710 receives the quantized transform coefficient information from the transform and quantization unit 702, the loop filter information from the loop filter processing unit 705, and the displacement amount from the displacement amount generation unit 707. Then, the entropy encoding unit 710 encodes the quantized transform coefficient information, the loop filter information, and the displacement amount, and generates encoded data.
- the second embodiment described above it is possible to reduce the number of multiplications in the filter processing by performing the same processing as the interpolation filter processing unit of the video decoding device according to the first embodiment. Thus, it is possible to perform an encoding process in which the entire calculation amount is reduced.
- the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying constituent elements without departing from the scope of the invention in the implementation stage.
- various inventions can be formed by appropriately combining a plurality of components disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment.
- constituent elements over different embodiments may be appropriately combined.
- DESCRIPTION OF SYMBOLS 100 Video coding apparatus, 101 ... Entropy decoding part, 102,703 ... Inverse quantization and inverse transformation part, 103, 704 ... Adder, 104, 705 ... Loop filter Processing unit 105, 706 ... Image buffer unit 106, 708 ... Interpolation filter processing unit 107, 709 ... Prediction signal generation unit 401, 502 ... Integer pixels 402, 503, 504 ..Decimal pixels, 501... Processing target area, 505... Screen boundary, 601, 603, 604, 605, 606, 607... Area, 602. 701 ... subtraction unit, 702 ... transformation and quantization unit, 707 ... displacement amount generation unit, 710 ... entropy coding unit.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
符号化されたデータから、ループフィルタ情報とベクトルとを復号化する復号化部101と、ループフィルタ情報に基づいて復号化画像信号にフィルタ処理を行い参照画像信号を生成するループフィルタ処理部104と、補間画素が全ての整数画素の水平方向または垂直方向の列上にない場合、整数画素から水平方向に2分の1画素ずれかつ垂直方向に2分の1画素ずれた第1小数画素には対称フィルタを用いてフィルタ処理を行い、補間画素が第1小数画素以外の第2小数画素である場合には、対称フィルタのタップよりもタップ長が短い非対称フィルタを用いてフィルタ処理を行い、ベクトルにより求める全ての補間画素に対してフィルタ処理を行い、補間画素の画素値を求め補間画像信号を生成する補間フィルタ処理部106と、前記補間画像から予測画像信号を生成する予測信号生成部107と、を具備する。
Description
本開示は、動画像符号化方法、復号化方法、符号化装置および復号化装置に関する。
小数画素精度の動き補償に用いる補間フィルタとして、動画像符号化の国際標準規格の一つであるH.264/MPEG-4AVC(以下、H.264という)で用いられる補間フィルタがある。H.264の補間フィルタは、はじめに2分の1画素の画素値を算出し、算出された2分の1画素の平均により4分の1画素の画素値を算出する。
また、別の補間フィルタとして、まず第1の方向にフィルタをかけて算出した値に丸め処理を適用して小数画素の基となる基値を算出し、算出した基値を用いて第1の方向とは異なる第2の方向にフィルタをかけ、さらに丸め処理を行うことによって小数画素を生成する補間フィルタがある(例えば、特許文献1参照)。
さらに、動き補償による予測効率を改善する別の手法としては、符号化側で設計したフィルタ係数を含むフィルタ情報を復号化側に送り、符号化および復号化側で共通のループフィルタを用いて画質を向上させるALF(Adaptive Loop Filter)がある(例えば、非特許文献1参照)。
また、別の補間フィルタとして、まず第1の方向にフィルタをかけて算出した値に丸め処理を適用して小数画素の基となる基値を算出し、算出した基値を用いて第1の方向とは異なる第2の方向にフィルタをかけ、さらに丸め処理を行うことによって小数画素を生成する補間フィルタがある(例えば、特許文献1参照)。
さらに、動き補償による予測効率を改善する別の手法としては、符号化側で設計したフィルタ係数を含むフィルタ情報を復号化側に送り、符号化および復号化側で共通のループフィルタを用いて画質を向上させるALF(Adaptive Loop Filter)がある(例えば、非特許文献1参照)。
T. Chujoh, N. Wada, G. Yasuda, "Quadtree-based Adaptive Loop Filter," ITU-T Q.6/SG16 Doc., C181, Geneva, January 2009.
H.264の補間フィルタとALFとを同時に用いた場合、生成された1/2画素を用いて平均値を算出するバイリニアフィルタが使用されることにより、補間された参照画像の高域成分が過度に落とされるため、予測効率が低下してしまう。
上記特許文献1に示す補間フィルタとALFとを同時に用いた場合、予測効率が向上する。その一方で、整数画素と水平方向および垂直方向に同列に存在しない小数画素を補間する場合においては、乗算の最大回数が大幅に増加する。それは、4分の1画素および4分の3画素の位置において、同一タップ長の対称フィルタよりも乗算回数の多い非対称フィルタを用いるためである。
上記特許文献1に示す補間フィルタとALFとを同時に用いた場合、予測効率が向上する。その一方で、整数画素と水平方向および垂直方向に同列に存在しない小数画素を補間する場合においては、乗算の最大回数が大幅に増加する。それは、4分の1画素および4分の3画素の位置において、同一タップ長の対称フィルタよりも乗算回数の多い非対称フィルタを用いるためである。
本開示は、予測効率を向上させながら演算量を削減することを目的とする。
上述の課題を解決するため、本発明の一態様に係る動画像復号化方法は、符号化されたデータから、復号化対象画像のループフィルタ情報と、画素位置の変位を示すベクトルと、再生差分信号とを取得し、前記ループフィルタ情報に基づいて復号化画像信号に対してフィルタ処理を行い、整数画素の画素値を有する参照画像信号を生成し、前記ベクトルにより求める補間画素が前記整数画素でなく、かつ前記補間画素が前記整数画素の水平方向又は垂直方向の列上に位置する画素ではない場合であって、前記補間画素が前記整数画素から水平方向に2分の1画素ずれかつ垂直方向に2分の1画素ずれた第1画素である場合には対称な第1フィルタによるフィルタ処理を行い前記補間画素の画素値を求め、また、前記補間画素が該第1小数画素以外の第2小数画素である場合には前記第1フィルタよりも水平方向または垂直方向のタップ長が短い非対称の第2フィルタによるフィルタ処理を行い前記補間画素の画素値を求め、前記整数画素及び前記補間画素の画素値を含む補間画像信号を生成し、前記補間画像に基づいて予測画像信号を生成し、前記予測画像信号と前記再生差分信号とから出力画像信号を求めることを具備することを特徴とする。
また、本発明の一態様に係る動画像符号化方法は、整数画素ごとに復号した画像信号を示す局所復号画像信号に、フィルタ処理を行う際の制御情報であるループフィルタ情報に基づいてフィルタ処理を行い整数画素の画素値を有する参照画像信号を生成し、外部からの入力画像データと前記参照画像信号とに基づいて、画素位置の変位を示すベクトルを生成し、前記ベクトルにより求める補間画素が前記整数画素でなく、かつ前記補間画素が前記整数画素の水平方向又は垂直方向の列上に位置する画素ではない場合であって、前記補間画素が前記整数画素から水平方向に2分の1画素ずれかつ垂直方向に2分の1画素ずれた第1画素である場合には対称な第1フィルタによるフィルタ処理を行い前記補間画素の画素値を求め、また、前記補間画素が該第1小数画素以外の第2小数画素である場合には前記第1フィルタよりも水平方向または垂直方向のタップ長が短い非対称の第2フィルタによるフィルタ処理を行い前記補間画素の画素値を求め、前記整数画素及び前記補間画素の画素値を含む補間画像信号を生成し、前記補間画像に基づいて予測画像信号を生成し、入力された画像信号である入力画像信号と前記予測画像信号との差分を示す差分信号を変換して量子化し量子化変換係数情報を生成し、前記量子化変換係数情報、前記ループフィルタ情報および前記ベクトルを符号化して符号化データを生成することを具備することを特徴とする。
以下、図面を参照しながら本発明の実施形態に係る動画像符号化方法、復号化方法、符号化装置および復号化装置について詳細に説明する。なお、以下の実施形態では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。
(第1の実施形態)
本実施形態に係る動画像復号化装置100は、エントロピー復号化部101、逆量子化及び逆変換部102、加算部103、ループフィルタ処理部104、画像バッファ部105、補間フィルタ処理部106および予測信号生成部107を含む。
エントロピー復号化部101は、動画像符号化装置から送られた符号化データを復号化して量子化変換係数情報、ループフィルタ情報および変位量を得る。ループフィルタ情報は、フィルタ係数情報を含むフィルタ処理を制御するための情報であり、例えばスライス単位に生成される。フィルタ係数情報は、フィルタ処理において整数画素に用いるフィルタ係数を示す情報である。変位量(ベクトル量とも称す)は、画面間であれば動きベクトルを示し、同一画面内であれば対象画素またはブロックからの変位を示す。なお、以下では、変位量が動きベクトルである場合を例として説明する。
本実施形態に係る動画像復号化装置100は、エントロピー復号化部101、逆量子化及び逆変換部102、加算部103、ループフィルタ処理部104、画像バッファ部105、補間フィルタ処理部106および予測信号生成部107を含む。
エントロピー復号化部101は、動画像符号化装置から送られた符号化データを復号化して量子化変換係数情報、ループフィルタ情報および変位量を得る。ループフィルタ情報は、フィルタ係数情報を含むフィルタ処理を制御するための情報であり、例えばスライス単位に生成される。フィルタ係数情報は、フィルタ処理において整数画素に用いるフィルタ係数を示す情報である。変位量(ベクトル量とも称す)は、画面間であれば動きベクトルを示し、同一画面内であれば対象画素またはブロックからの変位を示す。なお、以下では、変位量が動きベクトルである場合を例として説明する。
逆量子化及び逆変換部102は、エントロピー復号化部101で復号化された量子化変換係数情報を逆量子化したのち逆直交変換し、再生差分信号を生成する。再生差分信号は、動画像符号化装置にて生成された、入力画像データ(信号)と予測画像信号との差分である差分信号を復号化側で再生した信号である。
加算部103は、逆量子化及び逆変換部102から再生差分信号を、後述する予測信号生成部107から予測画像信号をそれぞれ受け取って加算し、復号化画像信号を生成する。
ループフィルタ処理部104は、加算部103から復号化画像信号を、エントロピー復号化部101からフィルタ係数情報をそれぞれ受け取る。そしてループフィルタ処理部104は、復号化画像信号についてフィルタ係数情報に応じてフィルタ処理を行い、参照画像信号を生成する。また、ループフィルタ処理部104は、参照画像信号を出力画像信号として必要に応じて外部に出力する。
画像バッファ部105は、ループフィルタ処理部104で生成された参照画像信号を受け取り、蓄積する。
補間フィルタ処理部106は、エントロピー復号化部101から変位量を、画像バッファ部105から参照画像信号をそれぞれ受け取る。そして補間フィルタ処理部106は、変位量を参照して参照画像の整数画素を用いて小数画素精度の補間画素を算出し、補間画像信号を生成する。以下では、補間画素の生成は画素値の処理として説明するが、その画素値は輝度値または色差信号値でもよく、色空間によらず適用可能である。なお、同一画面内で補間フィルタ処理を行う場合は、画像バッファ部105からの参照画像信号は、同一画面内において既に復号化された画像信号である。
予測信号生成部107は、補間フィルタ処理部106から補間画像信号を受け取り、動きベクトルを用いた動き補償予測などの予測処理を行い、予測画像信号を生成する。
次に、補間フィルタ処理部106の動作を図2のフローチャートを用いて詳細に説明する。なお、ここでは小数画素は4分の1画素を例として説明するが、4分の1画素に限らず、例えば8分の1画素、16分の1画素などの小数画素に対しても同様に処理することができる。
ステップS201では、画像バッファ部105から参照画像信号を、エントロピー復号化部101から動きベクトルをそれぞれ受け取り、動きベクトルにより求める補間画素が整数画素かどうかを判定する。求める補間画素が整数画素である場合は、補間処理を行わずに参照画像をそのまま出力する。求める補間画素が整数画素でない、つまり小数画素である場合は、ステップS202に進む。
ステップS202では、補間画素が、整数画素の水平方向または垂直方向の列上にあるかどうかを判定する。補間画素の位置が、整数画素の水平方向または垂直方向の列上にある場合は、ステップS203に進む。補間画素の位置が、整数画素の水平方向または垂直方向の列上に存在しない場合は、ステップS205に進む。
ステップS203では、補間画素を算出するために、水平方向または垂直方向の小数画素の位置に応じた8タップのフィルタをかける。このとき使用する8タップのフィルタを式(1)から式(3)に示す。なお、式(1)は4分の1画素の位置、式(2)は2分の1画素の位置、式(3)は4分の3画素の位置を算出する場合に用いる。
各式中のX1からX8は整数画素の画素値を示し、「・」は乗算を示す。なお、式(1)および式(3)は、フィルタ係数に対称性がない非対称フィルタであり、式(2)はフィルタ係数に対称性がある対称フィルタである。
式(4)中で、fは丸め処理を施した値、faは式(1)から式(3)のいずれかを用いて算出した値、Xは入力画像の画素ビット長で表現できる最大値を示す。さらに、「>>8」は8ビットの右算術シフト演算すること、すなわち28で割り算し余りを切り捨てる場合に等しい。また、Clip(a,b,c)は、式(5)に示すように、cをa以上b以下の範囲に収めるクリッピング処理を示す。
ステップS205では、補間画素の水平方向の位置に応じて判定を行う。補間画素が整数画素の位置から水平方向に4分の1画素ずれた位置にある場合、ステップS206に進む。補間画素が整数画素から水平方向に2分の1画素ずれた位置にある場合、ステップS207に進む。補間画素が整数画素から水平方向に4分の3画素ずれた位置にある場合、ステップS208に進む。
なお、式(6)中のH1からH6は整数画素の画素値を示す。
ステップS207では、整数画素から2分の1画素ずれた位置にある補間画素について、水平方向に8タップの対称フィルタをかけてフィルタ処理を行う。ここでは、式(2)と同じ対称フィルタを用いればよい。
ステップS209では、補間画素の垂直方向の位置に応じて判定を行う。補間画素が整数画素から垂直方向に4分の1画素ずれた位置にある場合、ステップS210に進む。補間画素が整数画素から垂直方向に2分の1画素ずれた位置にある場合、ステップS210に進む。補間画素が整数画素から垂直方向に4分の3画素ずれた位置にある場合、ステップS212に進む。
ステップS210では、整数画素から垂直方向に4分の1画素ずれた位置にある補間画素について、ステップS206と同様に式(6)を用いて、垂直方向に6タップの非対称フィルタをかけてフィルタ処理を行う。なお、式(6)中の整数画素の代わりに、ステップS206~S208のいずれかで算出した小数画素の画素値を用いる。
ステップS211では、整数画素から垂直方向に2分の1画素ずれた位置にある補間画素について、垂直方向に8タップの対称フィルタをかけてフィルタ処理を行う。ここでは、式(2)と同じ対称フィルタを用いればよい。なお、式(2)中の整数画素の代わりに、ステップS206~S208のいずれかで算出した小数画素の画素値を用いる。
ステップS212では、整数画素から垂直方向に4分の3画素ずれた位置にある補間画素について、ステップS208と同様に式(7)を用いて、垂直方向に6タップの非対称フィルタをかけてフィルタ処理を行う。なお、式(7)中の整数画素の代わりに、ステップS206~S208のいずれかで算出した小数画素の画素値を用いる。
式(8)中における、fbは水平方向および垂直方向に2段階でフィルタをかけた値を示す。以上で補間フィルタ処理部106の動作を終了する。この補間フィルタ処理を各小数画素に適応することにより、補間フィルタ処理対象となるブロック内の小数画素を算出した小数画素精度の補間画像信号を生成することができる。
このように、小数画素の位置に応じて非対称フィルタのタップ長を変化させ、予測画像を生成する際に影響が大きい整数画素の列以外で、比較的演算回数の多い小数画素にタップ長が短い非対称フィルタをかけることで、演算量を削減することができる。
このように、小数画素の位置に応じて非対称フィルタのタップ長を変化させ、予測画像を生成する際に影響が大きい整数画素の列以外で、比較的演算回数の多い小数画素にタップ長が短い非対称フィルタをかけることで、演算量を削減することができる。
ここで、補間フィルタ処理部106の動作の別例について図3のフローチャートを参照して説明する。
図3に示す動作はステップS301が追加された以外は図2の動作とほぼ同様であるので、ここでのその他のステップの説明は省略する。
ステップS301では、式(4)を用いて、ステップS206からステップS208のいずれかの処理を終えた後に、水平方向にフィルタをかけて算出した補間画素について丸め処理を行う。
図3に示す動作はステップS301が追加された以外は図2の動作とほぼ同様であるので、ここでのその他のステップの説明は省略する。
ステップS301では、式(4)を用いて、ステップS206からステップS208のいずれかの処理を終えた後に、水平方向にフィルタをかけて算出した補間画素について丸め処理を行う。
ステップS302では、ステップS301で丸め処理を行った値を入力値として、垂直方向にフィルタをかけて算出した補間画素について丸め処理を行う。
このように、一方向のフィルタ処理を終えるごとに丸め処理を行うことで、水平方向および垂直方向のフィルタ処理を終えてまとめて丸め処理を行うよりも無駄な処理量を仮定しなくて済むので、乗算器の回路規模を小さくすることができる。
なお、ここでは、整数画素の水平方向または垂直方向の列上でない補間画素の算出方法では、水平方向に補間フィルタ処理を行った後に垂直方向に補間フィルタ処理を行っているが、垂直方向に補間フィルタ処理を行った後に水平方向に補間フィルタ処理を行ってもよい。さらに、整数画素の水平方向または垂直方向の列上にある補間画素を生成するときに使用する非対称フィルタのタップ長は、最悪の乗算回数に影響しないため対称フィルタのタップ長より短くしなくともよい。つまり、整数画素の水平方向または垂直方向の列上にない補間画素を生成するときに使用する非対称フィルタのタップ長は、整数画素の水平方向または垂直方向の列上の補間画素を生成するときに使用する非対称フィルタのタップ長より短くする。
なお、ここでは、整数画素の水平方向または垂直方向の列上でない補間画素の算出方法では、水平方向に補間フィルタ処理を行った後に垂直方向に補間フィルタ処理を行っているが、垂直方向に補間フィルタ処理を行った後に水平方向に補間フィルタ処理を行ってもよい。さらに、整数画素の水平方向または垂直方向の列上にある補間画素を生成するときに使用する非対称フィルタのタップ長は、最悪の乗算回数に影響しないため対称フィルタのタップ長より短くしなくともよい。つまり、整数画素の水平方向または垂直方向の列上にない補間画素を生成するときに使用する非対称フィルタのタップ長は、整数画素の水平方向または垂直方向の列上の補間画素を生成するときに使用する非対称フィルタのタップ長より短くする。
さらに、整数画素の水平方向または垂直方向の列上に存在しない画素について、対称フィルタとして8タップのフィルタ、非対称フィルタとして6タップのフィルタを用いているが、対称フィルタのタップ長より非対称フィルタのタップ長が短ければよい。すなわち、対称フィルタとして12タップのフィルタ、非対称フィルタとして6タップのフィルタを用いるなど、対称フィルタのタップ長より非対称フィルタのタップ長が短い組み合わせであれば何でもよい。
また、本実施形態では、式(1)から式(3)に示す8タップのフィルタ係数、および、式(6)と式(7)とに示すタップのフィルタ係数を用いているが、フィルタ係数はこれに限らず、他の8タップおよび6タップのフィルタ係数を用いてもよい。
さらに、整数画素の水平方向または垂直方向の列上にない補間画素の補間フィルタ処理において、水平方向のフィルタ処理と垂直方向のフィルタ処理との間に丸め処理を行う場合は、対称フィルタは係数をまとめて計算して乗算回数を少なくできるので、対称フィルタを用いた補間処理を非対称フィルタを用いた補間処理よりも先に行うことで全体の乗算回数を削減することができる。
また、本実施形態では、式(1)から式(3)に示す8タップのフィルタ係数、および、式(6)と式(7)とに示すタップのフィルタ係数を用いているが、フィルタ係数はこれに限らず、他の8タップおよび6タップのフィルタ係数を用いてもよい。
さらに、整数画素の水平方向または垂直方向の列上にない補間画素の補間フィルタ処理において、水平方向のフィルタ処理と垂直方向のフィルタ処理との間に丸め処理を行う場合は、対称フィルタは係数をまとめて計算して乗算回数を少なくできるので、対称フィルタを用いた補間処理を非対称フィルタを用いた補間処理よりも先に行うことで全体の乗算回数を削減することができる。
ここで、補間フィルタ処理部106で算出される補間画素の一例について図4を参照して説明する。
図4では、4個の整数画素401と15個の小数画素402(aからoまで)とが示される。4個の整数画素401のうち、左上の整数画素401を基準(以下、基準整数画素という)として、小数画素402を算出する。
具体的には、小数画素a、b、cは基準整数画素401と水平方向に同列に並んでいるので、小数画素aは式(1)、小数画素bは式(2)、小数画素cは式(3)に示す8タップのフィルタ処理をそれぞれ行って小数画素の画素値を算出する。同様に、小数画素d、h、iは基準整数画素401と垂直方向に同列に並んでいるので、小数画素dは式(1)、小数画素hは式(2)、小数画素iは式(3)に示す8タップのフィルタ処理を行うことで小数画素の画素値を算出することができる。
残りの小数画素e、f、g、i、j、k、m、n、oについては、上述したように2段階のフィルタ処理を行って小数画素の画素値を算出する。例えば、小数画素eの画素値について算出する場合は、まず、基準整数画素401から水平方向に4分の1画素ずれているので、図2中のステップS206の処理を行い、式(6)に示す6タップの非対称フィルタ処理を行う。次に、基準整数画素401から垂直方向に4分の1画素ずれているので、水平方向のフィルタ処理で算出した値を入力として、ステップS210の式(6)に示す6タップの非対称フィルタ処理を行えばよい。同様に、小数画素nを算出する場合は、基準整数画素401から水平方向に2分の1画素ずれているので、ステップS207に示す8タップの対称フィルタ処理を行う。次に、基準整数画素401から垂直方向に4分の3画素ずれているので、水平方向のフィルタ処理で算出した値を入力としてステップS212の式(7)に示す6タップの非対称フィルタ処理を行えばよい。
図4では、4個の整数画素401と15個の小数画素402(aからoまで)とが示される。4個の整数画素401のうち、左上の整数画素401を基準(以下、基準整数画素という)として、小数画素402を算出する。
具体的には、小数画素a、b、cは基準整数画素401と水平方向に同列に並んでいるので、小数画素aは式(1)、小数画素bは式(2)、小数画素cは式(3)に示す8タップのフィルタ処理をそれぞれ行って小数画素の画素値を算出する。同様に、小数画素d、h、iは基準整数画素401と垂直方向に同列に並んでいるので、小数画素dは式(1)、小数画素hは式(2)、小数画素iは式(3)に示す8タップのフィルタ処理を行うことで小数画素の画素値を算出することができる。
残りの小数画素e、f、g、i、j、k、m、n、oについては、上述したように2段階のフィルタ処理を行って小数画素の画素値を算出する。例えば、小数画素eの画素値について算出する場合は、まず、基準整数画素401から水平方向に4分の1画素ずれているので、図2中のステップS206の処理を行い、式(6)に示す6タップの非対称フィルタ処理を行う。次に、基準整数画素401から垂直方向に4分の1画素ずれているので、水平方向のフィルタ処理で算出した値を入力として、ステップS210の式(6)に示す6タップの非対称フィルタ処理を行えばよい。同様に、小数画素nを算出する場合は、基準整数画素401から水平方向に2分の1画素ずれているので、ステップS207に示す8タップの対称フィルタ処理を行う。次に、基準整数画素401から垂直方向に4分の3画素ずれているので、水平方向のフィルタ処理で算出した値を入力としてステップS212の式(7)に示す6タップの非対称フィルタ処理を行えばよい。
次に、第1の実施形態に係わる補間フィルタ処理部106の補間フィルタ処理において、画面外の画素値が必要となる場合の処理方法について図5および図6を参照して詳細に説明する。
図5は、4画素×4画素ブロック内(破線で囲まれた処理対象領域501)の小数画素を算出するために必要な整数画素502および小数画素503を表しており、整数画素502をA0からA8、B0からB8、・・・、K0からK8で示し、小数画素503を「○」で示し、小数画素504を「×」で示す。なお、太線は画面境界505であり、小数画素504は図4における小数画素fの位置であると仮定する。
図5は、4画素×4画素ブロック内(破線で囲まれた処理対象領域501)の小数画素を算出するために必要な整数画素502および小数画素503を表しており、整数画素502をA0からA8、B0からB8、・・・、K0からK8で示し、小数画素503を「○」で示し、小数画素504を「×」で示す。なお、太線は画面境界505であり、小数画素504は図4における小数画素fの位置であると仮定する。
小数画素fは基準整数画素から水平方向に2分の1画素、垂直方向に4分の1画素ずれた位置にあるため、本実施形態では、水平方向に8タップの対称フィルタを用いて補間処理を行った後、垂直方向に6タップの非対称フィルタを用いて補間処理を行うことになる。
処理対象領域501内の小数画素を算出する場合に、例えば2段階目の垂直方向の補間フィルタ処理を行って最終的な小数画素504を得るには、図5に示すように36個の2分の1画素である小数画素503が必要となる。これらの小数画素503を生成するためには、1段階目の水平方向の補間フィルタ処理において、A0からK8までの99個の整数画素502を参照する必要がある。ここで、画面境界505の外側に位置する整数画素C2やD2などの整数画素502は、本来画素値が存在しない領域となっているため、画面境界505の内側の整数画素の画素値をコピーした後に補間フィルタ処理を行う。このように、動きベクトルが指し示す画素に応じて、画面内の画素値をコピーして画素値の存在しない部分を補間する。
処理対象領域501内の小数画素を算出する場合に、例えば2段階目の垂直方向の補間フィルタ処理を行って最終的な小数画素504を得るには、図5に示すように36個の2分の1画素である小数画素503が必要となる。これらの小数画素503を生成するためには、1段階目の水平方向の補間フィルタ処理において、A0からK8までの99個の整数画素502を参照する必要がある。ここで、画面境界505の外側に位置する整数画素C2やD2などの整数画素502は、本来画素値が存在しない領域となっているため、画面境界505の内側の整数画素の画素値をコピーした後に補間フィルタ処理を行う。このように、動きベクトルが指し示す画素に応じて、画面内の画素値をコピーして画素値の存在しない部分を補間する。
なお、画面外の画素値を算出する別の方法として、画面境界505の内側の領域に対してのみ補間フィルタ処理を行い、それ以外の領域には画面境界505の内側の領域で算出した補間画素をコピーする方法を用いてもよい。具体的には、処理対象領域501では、基準整数画素としてE3からE5、F3からF5、G3からG5までの9個を用いて算出される小数画素504のみ補間フィルタ処理を行い、画面境界505より外にある整数画素D2からD5、E2、F2、G2については補間フィルタ処理を行わずに、隣接する画面内の補間画素の画素値をコピーする。こうすることで、整数画素A0からA8、B0からK0をフィルタ処理に用いる必要がなく、演算量が削減できるとともにメモリ量も削減することができる。但し、上述した方式のように整数画素A0からK8までを用いて補間処理を行う場合とは画面境界505の外側の補間画素の画素値が一致しない結果となることに留意すべきである。
次に、画面外の領域に対するパディング処理の一例について図6を参照して詳細に説明する。
本実施形態におけるパディング処理とは、画面外の領域にある画素値として画面内の領域にある画素値をコピーすることである。図6では、高さV、幅Hの画面領域602を含む、充分に大きな領域601にパディング処理を行う。まず、画面右の領域603には、画面領域602内の右端にある画素の一列の画素値をコピーする。同様に、画面左の領域604には画面領域602内の左端にある画素の一列の画素値を、画面上の領域605には画面領域602内の上端にある画素の一列の画素値を、画面下の領域606には画面領域602内の下端にある画素の一列の画素値をコピーする。領域601の4隅にある領域607、608、609、610に関しては、それぞれ画面領域602内の四隅の画素値をコピーする。このようにパディング処理を行うことで、補間フィルタ処理部106は、画面外の画素が必要な場合でも適切に補間フィルタ処理を行うことができる。
なお、パディング処理の順序としては、補間フィルタ処理の後に、または処理の間に行ってもよい。また、パディング処理は1度とは限らず、例えば水平方向のフィルタ処理を行った後にパディング処理を行い、さらに垂直方向のフィルタ処理を行った後に再度パディング処理を行ってもよい。
本実施形態におけるパディング処理とは、画面外の領域にある画素値として画面内の領域にある画素値をコピーすることである。図6では、高さV、幅Hの画面領域602を含む、充分に大きな領域601にパディング処理を行う。まず、画面右の領域603には、画面領域602内の右端にある画素の一列の画素値をコピーする。同様に、画面左の領域604には画面領域602内の左端にある画素の一列の画素値を、画面上の領域605には画面領域602内の上端にある画素の一列の画素値を、画面下の領域606には画面領域602内の下端にある画素の一列の画素値をコピーする。領域601の4隅にある領域607、608、609、610に関しては、それぞれ画面領域602内の四隅の画素値をコピーする。このようにパディング処理を行うことで、補間フィルタ処理部106は、画面外の画素が必要な場合でも適切に補間フィルタ処理を行うことができる。
なお、パディング処理の順序としては、補間フィルタ処理の後に、または処理の間に行ってもよい。また、パディング処理は1度とは限らず、例えば水平方向のフィルタ処理を行った後にパディング処理を行い、さらに垂直方向のフィルタ処理を行った後に再度パディング処理を行ってもよい。
また、パディング処理で画素値をコピーする領域は、必ずしも図6に示したように画面領域602に隣接しているわけではなく、パディング処理を行う領域と画面領域との間に補間フィルタ処理によって生成された補間画素の画素値が格納されている領域が存在する場合もある。この場合は、整数画素と同様に、パディング処理を行う領域に補間画素の画素値をコピーすればよい。さらに、画素値をコピーせずに条件判定によって適切な位置の画素値を直接用いてもよい。こうすることで、画面外の画素を格納するメモリを用意する必要がなく、メモリを削減しながら画素値をコピーした場合と等価な処理を実現することができる。
さて、補間フィルタ処理部106で行う丸め処理については、式(4)および式(8)を用いるが、これに限らず、実施形式に応じた右算術シフト演算であればよい。一例として、式(9)のように丸め処理を表現したとする。
式(9)において、Xは補間フィルタ処理部106へ入力される画素のビット長で表現できる最大値、Vは丸め処理を行う値、Uは値の切り上げを行うために加算する値、Rは右算術シフト演算を行うビット数を示す。使用するフィルタのフィルタ係数の総和を2Nとすると、右算術シフト演算を行うビット数RはNとなり、値の切り上げを行うために加算する値Uは2N-1となる。ただし、水平方向および垂直方向に2段階でフィルタ処理を行う場合は、1段階目のフィルタ処理後の丸め処理において、RをNより小さい値NSにすることもできる。この場合、1段階目のフィルタ処理に使用するフィルタ係数の総和を2A、2段階目のフィルタ処理に使用するフィルタ係数の総和を2B、補間フィルタ処理部106へ入力される画素のビット長で表現できる最大値を2M-1とすると、Uは2Ns-1、Xは2M+(A-Ns)-1となる。それに応じて、2段階目のフィルタ処理後の丸め処理でも、Rは(A+B-NS)、Uは2(A+B)-Ns-1、Xは2M-1となる。RをNより小さくすることにより、フィルタ処理における演算精度を高めることができる。また、途中に丸め処理を挟まず、水平方向および垂直方向に2段階でフィルタ処理を行った場合の丸め処理では、Rは(A+B)、Uは2(A+B-1)となる。なお、これまでに説明した丸め処理は、値を2Rで割って小数点以下を四捨五入することと等価であるが、小数点以下を切り捨ててもよい。
以上に示した第1の実施形態によれば、整数画素の水平方向または垂直方向の列上にない補間画素を生成するときに、使用する非対称フィルタのタップ長を対称フィルタのタップ長より小さくすることで乗算回数を削減することができ、全体の演算量を削減した復号化処理を行うことができる。
(第2の実施形態)
第1の実施形態に係る動画像復号化装置に対応する動画像符号化装置について図7を参照して詳細に説明する。
第2の実施形態に係る動画像符号化装置700は、減算部701、変換及び量子化部702、逆量子化及び逆変換部703、加算部704、ループフィルタ処理部705、画像バッファ部706、変位量生成部707、補間フィルタ処理部708、予測信号生成部709およびエントロピー符号化部710を含む。
なお、逆量子化及び逆変換部703、画像バッファ部706、補間フィルタ処理部708および予測信号生成部709は、第1の実施形態に係る逆量子化及び逆変換部102、画像バッファ部105、補間フィルタ処理部106および予測信号生成部107とそれぞれ同様の動作を行うため、ここでの詳細な説明は省略する。
第1の実施形態に係る動画像復号化装置に対応する動画像符号化装置について図7を参照して詳細に説明する。
第2の実施形態に係る動画像符号化装置700は、減算部701、変換及び量子化部702、逆量子化及び逆変換部703、加算部704、ループフィルタ処理部705、画像バッファ部706、変位量生成部707、補間フィルタ処理部708、予測信号生成部709およびエントロピー符号化部710を含む。
なお、逆量子化及び逆変換部703、画像バッファ部706、補間フィルタ処理部708および予測信号生成部709は、第1の実施形態に係る逆量子化及び逆変換部102、画像バッファ部105、補間フィルタ処理部106および予測信号生成部107とそれぞれ同様の動作を行うため、ここでの詳細な説明は省略する。
減算部701は、外部から入力画像データ(信号)を、後述する予測信号生成部709から予測画像信号をそれぞれ受け取り、入力画像データと予測画像信号との差分を差分信号として出力する。
変換部及び量子化部702は、減算部701から差分信号を受け取り、差分信号を変換して量子化し、量子化変換係数情報を生成する。
加算部704は、第1の実施形態に係る加算部103と同様の動作をする。具体的には、逆量子化及び逆変換部703から再生差分信号を、後述する予測信号生成部709から予測画像信号をそれぞれ受け取る。そして加算部704は、再生差分信号と予測画像信号とを加算し、局所復号化画像信号を生成する。局所復号化画像信号は、処理ブロック単位内の画素の画素値を復号化した画像信号である。
ループフィルタ処理部705は、第1の実施形態に係るループフィルタ処理部104とほぼ同様の動作をする。具体的には加算部704から局所復号化画像信号を、外部からループフィルタ情報をそれぞれ受け取り、ループフィルタ情報に基づいて局所復号化画像信号にフィルタ処理を行い、参照画像信号を生成する。
変位量生成部707は、画像バッファ部105から参照画像信号を、外部から入力画像データを受け取り、変位量(ここでは、動きベクトル)を生成する。変位量の生成法は一般的な手法を用いるためここでの説明は省略する。
エントロピー符号化部710は、変換及び量子化部702から量子化変換係数情報を、ループフィルタ処理部705からループフィルタ情報を、変位量生成部707から変位量をそれぞれ受け取る。そしてエントロピー符号化部710は、量子化変換係数情報、ループフィルタ情報および変位量を符号化し、符号化データを生成する。
以上に示した第2の実施形態によれば、第1の実施形態に係る動画像復号化装置の補間フィルタ処理部と同様の処理を行うことで、フィルタ処理における乗算回数を削減することができ、全体の演算量を削減した符号化処理を行うことができる。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
100・・・動画像符号化装置、101・・・エントロピー復号化部、102,703・・・逆量子化及び逆変換部、103,704・・・加算部、104,705・・・ループフィルタ処理部、105,706・・・画像バッファ部、106,708・・・補間フィルタ処理部、107,709・・・予測信号生成部、401,502・・・整数画素、402,503,504・・・小数画素、501・・・処理対象領域、505・・・画面境界、601,603,604,605,606,607・・・領域、602・・・画面領域、700・・・動画像符号化装置、701・・・減算部、702・・・変換及び量子化部、707・・・変位量生成部、710・・・エントロピー符号化部。
Claims (16)
- 符号化されたデータから、復号化対象画像のループフィルタ情報と、画素位置の変位を示すベクトルと、再生差分信号とを取得し、
前記ループフィルタ情報に基づいて復号化画像信号に対してフィルタ処理を行い、整数画素の画素値を有する参照画像信号を生成し、
前記ベクトルにより求める補間画素が前記整数画素でなく、かつ前記補間画素が前記整数画素の水平方向又は垂直方向の列上に位置する画素ではない場合であって、前記補間画素が前記整数画素から水平方向に2分の1画素ずれかつ垂直方向に2分の1画素ずれた第1画素である場合には対称な第1フィルタによるフィルタ処理を行い前記補間画素の画素値を求め、また、前記補間画素が該第1小数画素以外の第2小数画素である場合には前記第1フィルタよりも水平方向または垂直方向のタップ長が短い非対称の第2フィルタによるフィルタ処理を行い前記補間画素の画素値を求め、前記整数画素及び前記補間画素の画素値を含む補間画像信号を生成し、
前記補間画像に基づいて予測画像信号を生成し、
前記予測画像信号と前記再生差分信号とから出力画像信号を求めることを具備することを特徴とする動画像復号化方法。 - 前記補間画像信号を生成することは、前記第2小数画素であって、前記補間画素の位置が前記整数画素から水平方向または垂直方向の一方向である第1方向に2分の1画素ずれた位置であれば前記第1方向に前記第1フィルタを用い、前記第1方向以外の方向に前記第2フィルタを用いることを特徴とする請求項1記載の動画像復号化方法。
- 前記補間画像信号を生成することは、前記第2小数画素の前記補間画素に対して、前記第1方向に関して前記補間画素の位置が前記第1方向に2分の1画素ずれた第1位置であれば前記第1方向に前記第1フィルタを用い、前記補間画素の位置が第1位置以外であれば、前記第1方向に前記第2フィルタを用いて第1値を算出する第1処理と、
前記第1方向以外の第2方向に関して、前記補間画素の位置が前記第2方向に2分の1画素ずれた第2位置であれば前記第1値を入力として前記第2方向に前記第1フィルタを用いて前記補間画素の画素値を算出し、前記補間画素の位置が第2位置以外であれば、前記第1値を入力として前記第2方向に前記第2フィルタを用いて前記補間画素の画素値を算出する第2処理と、を有することを特徴とする請求項2に記載の動画像復号化方法。 - 前記補間画像信号を生成することは、前記補間画素が前記整数画素でなく、かつ前記整数画素の水平方向又は垂直方向の列上に位置する画素を、前記第2フィルタのタップ長よりも長い第3フィルタを用いて前記補間画素の画素値を求めることを特徴とする請求項1に記載の動画像復号化方法。
- 前記ベクトルは、画面間で予測をおこなう場合は動きベクトルであり、画面内で予測をおこなう場合は対象画素またはブロックからの変位を示すことを特徴とする請求項1に記載の動画像復号化方法。
- 前記補間画像信号を生成することは、前記第1値に対して丸め処理を行って所定のビット精度に変換した第2値を、前記第2フィルタ処理の入力とすることを特徴とする請求項1に記載の動画像復号化方法。
- 前記第2小数画素の画素値を算出する際に前記第1フィルタおよび前記第2フィルタを用いる場合は、前記第1フィルタを用いたフィルタ処理を前記第2フィルタを用いたフィルタ処理よりも先に行うことを特徴とする請求項6に記載の動画像復号化方法。
- 整数画素ごとに復号した画像信号を示す局所復号画像信号に、フィルタ処理を行う際の制御情報であるループフィルタ情報に基づいてフィルタ処理を行い整数画素の画素値を有する参照画像信号を生成し、
外部からの入力画像データと前記参照画像信号とに基づいて、画素位置の変位を示すベクトルを生成し、
前記ベクトルにより求める補間画素が前記整数画素でなく、かつ前記補間画素が前記整数画素の水平方向又は垂直方向の列上に位置する画素ではない場合であって、前記補間画素が前記整数画素から水平方向に2分の1画素ずれかつ垂直方向に2分の1画素ずれた第1画素である場合には対称な第1フィルタによるフィルタ処理を行い前記補間画素の画素値を求め、また、前記補間画素が該第1小数画素以外の第2小数画素である場合には前記第1フィルタよりも水平方向または垂直方向のタップ長が短い非対称の第2フィルタによるフィルタ処理を行い前記補間画素の画素値を求め、前記整数画素及び前記補間画素の画素値を含む補間画像信号を生成し、
前記補間画像に基づいて予測画像信号を生成し、
入力された画像信号である入力画像信号と前記予測画像信号との差分を示す差分信号を変換して量子化し量子化変換係数情報を生成し、
前記量子化変換係数情報、前記ループフィルタ情報および前記ベクトルを符号化して符号化データを生成することを具備することを特徴とする動画像符号化方法。 - 前記補間画像信号を生成することは、前記第2小数画素であって、前記補間画素の位置が前記整数画素から水平方向または垂直方向の一方向である第1方向に2分の1画素ずれた位置であれば前記第1方向に前記第1フィルタを用い、前記第1方向以外の方向に前記第2フィルタを用いることを特徴とする請求項8記載の動画像符号化方法。
- 前記補間画像信号を生成することは、前記第2小数画素の前記補間画素に対して、前記第1方向に関して前記補間画素の位置が前記第1方向に2分の1画素ずれた第1位置であれば前記第1方向に前記第1フィルタを用い、前記補間画素の位置が第1位置以外であれば、前記第1方向に前記第2フィルタを用いて第1値を算出する第1処理と、
前記第1方向以外の第2方向に関して、前記補間画素の位置が前記第2方向に2分の1画素ずれた第2位置であれば前記第1値を入力として前記第2方向に前記第1フィルタを用いて前記補間画素の画素値を算出し、前記補間画素の位置が第2位置以外であれば、前記第1値を入力として前記第2方向に前記第2フィルタを用いて前記補間画素の画素値を算出する第2処理と、を有することを特徴とする請求項9に記載の動画像符号化方法。 - 前記補間画像信号を生成することは、前記補間画素が前記整数画素でなく、かつ前記整数画素の水平方向又は垂直方向の列上に位置する画素を、前記第2フィルタのタップ長よりも長い第3フィルタを用いて前記補間画素の画素値を求めることを特徴とする請求項8に記載の動画像符号化方法。
- 前記ベクトルは、画面間で予測をおこなう場合は動きベクトルであり、画面内で予測をおこなう場合は対象画素またはブロックからの変位を示すことを特徴とする請求項8に記載の動画像符号化方法。
- 前記補間画像信号を生成することは、前記第1値に対して丸め処理を行って所定のビット精度に変換した第2値を、前記第2フィルタ処理の入力とすることを特徴とする請求項8に記載の動画像符号化方法。
- 前記第2小数画素の画素値を算出する際に前記第1フィルタおよび前記第2フィルタを用いる場合は、前記第1フィルタを用いたフィルタ処理を前記第2フィルタを用いたフィルタ処理よりも先に行うことを特徴とする請求項13に記載の動画像符号化方法。
- 符号化されたデータを復号化し、復号化対象画像のループフィルタ情報と、画素位置の変位を示すベクトルと、再生差分信号とを取得する復号化部と、
前記ループフィルタ情報に基づいて復号化画像信号にフィルタ処理を行い、参照画像を示す参照画像信号を生成するループフィルタ処理部と、
前記ベクトルにより求める補間画素が整数画素でなく、かつ前記補間画素が前記整数画素の水平方向又は垂直方向の列上に位置する画素ではない場合であって、前記補間画素が前記整数画素から水平方向に2分の1画素ずれかつ垂直方向に2分の1画素ずれた第1画素である場合には対称な第1フィルタによるフィルタ処理を行い前記補間画素の画素値を求め、また、前記補間画素が該第1小数画素以外の第2小数画素である場合には前記第1フィルタよりも水平方向または垂直方向のタップ長が短い非対称の第2フィルタによるフィルタ処理を行い前記補間画素の画素値を求め、前記整数画素及び前記補間画素の画素値を含む補間画像信号を生成する補間フィルタ処理部と、
前記補間画像に基づいて予測画像信号を生成する予測信号生成部と、を具備することを特徴とする動画像復号化装置。 - 整数画素ごとに復号した画像信号を示す局所復号画像信号に、フィルタ処理を行う際の制御情報であるループフィルタ情報に基づいてフィルタ処理を行い参照画像を示す参照画像信号を生成するループフィルタ処理部と、
外部からの入力画像データと前記参照画像信号とに基づいて、画素位置の変位を示すベクトルを生成する変位量生成部と、
前記ベクトルにより求める補間画素が前記整数画素でなく、かつ前記補間画素が前記整数画素の水平方向又は垂直方向の列上に位置する画素ではない場合であって、前記補間画素が前記整数画素から水平方向に2分の1画素ずれかつ垂直方向に2分の1画素ずれた第1画素である場合には対称な第1フィルタによるフィルタ処理を行い前記補間画素の画素値を求め、また、前記補間画素が該第1小数画素以外の第2小数画素である場合には前記第1フィルタよりも水平方向または垂直方向のタップ長が短い非対称の第2フィルタによるフィルタ処理を行い前記補間画素の画素値を求め、前記整数画素及び前記補間画素の画素値を含む補間画像信号を生成する補間フィルタ処理部と、
前記補間画像に基づいて予測画像信号を生成する予測信号生成部と、
入力された画像信号である入力画像信号と前記予測画像信号との差分を示す差分信号を変換して量子化し量子化変換係数情報を生成する変換及び量子化部と、
前記量子化変換係数情報、前記ループフィルタ情報および前記ベクトルを符号化して符号化データを生成する符号化部と、を具備することを特徴とする動画像符号化装置。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2010/055641 WO2011121716A1 (ja) | 2010-03-30 | 2010-03-30 | 動画像符号化方法、復号化方法、符号化装置および復号化装置 |
| JP2012507943A JP5323252B2 (ja) | 2010-03-30 | 2010-03-30 | 動画像符号化方法、復号化方法、符号化装置および復号化装置 |
| US13/627,198 US9100650B2 (en) | 2010-03-30 | 2012-09-26 | Video encoding method, decoding method, and apparatus |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2010/055641 WO2011121716A1 (ja) | 2010-03-30 | 2010-03-30 | 動画像符号化方法、復号化方法、符号化装置および復号化装置 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US13/627,198 Continuation US9100650B2 (en) | 2010-03-30 | 2012-09-26 | Video encoding method, decoding method, and apparatus |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2011121716A1 true WO2011121716A1 (ja) | 2011-10-06 |
Family
ID=44711510
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2010/055641 Ceased WO2011121716A1 (ja) | 2010-03-30 | 2010-03-30 | 動画像符号化方法、復号化方法、符号化装置および復号化装置 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US9100650B2 (ja) |
| JP (1) | JP5323252B2 (ja) |
| WO (1) | WO2011121716A1 (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2013534119A (ja) * | 2010-07-09 | 2013-08-29 | サムスン エレクトロニクス カンパニー リミテッド | 映像補間方法及びその装置 |
| JP2014520488A (ja) * | 2011-06-24 | 2014-08-21 | 株式会社Nttドコモ | 動き補償予測のための方法及び装置 |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105338366B (zh) * | 2015-10-29 | 2018-01-19 | 北京工业大学 | 一种视频序列中分数像素的解码方法 |
| KR20180042899A (ko) * | 2016-10-19 | 2018-04-27 | 디지털인사이트 주식회사 | 적응적 보간 필터를 사용하는 비디오 코딩 방법 및 장치 |
| WO2020259507A1 (en) * | 2019-06-24 | 2020-12-30 | Huawei Technologies Co., Ltd. | Method for computing position of integer grid reference sample for block level boundary sample gradient computation in bi-predictive optical flow computation and bi-predictive correction |
| CN111724321B (zh) * | 2020-06-19 | 2023-04-28 | 上海富瀚微电子股份有限公司 | 一种图像滤波方法及系统 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2000041261A (ja) * | 1998-07-23 | 2000-02-08 | Sony Corp | 画像復号装置及び画像復号方法 |
| JP2000041258A (ja) * | 1997-11-20 | 2000-02-08 | Hitachi Ltd | 低解像度ビデオ・デコーダで画質を改善するための方法及び装置 |
| JP2004007337A (ja) * | 2002-04-25 | 2004-01-08 | Sony Corp | 画像処理装置およびその方法 |
| JP2006340211A (ja) * | 2005-06-03 | 2006-12-14 | Matsushita Electric Ind Co Ltd | 動き補償予測装置 |
| WO2007114368A1 (ja) * | 2006-03-30 | 2007-10-11 | Kabushiki Kaisha Toshiba | 画像符号化装置及び方法並びに画像復号化装置及び方法 |
Family Cites Families (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7620109B2 (en) * | 2002-04-10 | 2009-11-17 | Microsoft Corporation | Sub-pixel interpolation in motion estimation and compensation |
| KR100472476B1 (ko) * | 2002-08-31 | 2005-03-10 | 삼성전자주식회사 | 움직임 보상을 위한 보간 방법 및 그 장치 |
| US7609762B2 (en) * | 2003-09-07 | 2009-10-27 | Microsoft Corporation | Signaling for entry point frames with predicted first field |
| EP1617672A1 (en) | 2004-07-13 | 2006-01-18 | Matsushita Electric Industrial Co., Ltd. | Motion estimator/compensator including a 16-bit 1/8 pel interpolation filter |
| WO2006108654A2 (en) * | 2005-04-13 | 2006-10-19 | Universität Hannover | Method and apparatus for enhanced video coding |
| JP4824703B2 (ja) * | 2005-12-19 | 2011-11-30 | パナソニック株式会社 | 2次元フィルタ演算装置及び方法 |
| US8189934B2 (en) * | 2006-03-27 | 2012-05-29 | Panasonic Corporation | Image coding apparatus and image decoding apparatus |
| WO2007116551A1 (ja) | 2006-03-30 | 2007-10-18 | Kabushiki Kaisha Toshiba | 画像符号化装置及び画像符号化方法並びに画像復号化装置及び画像復号化方法 |
| US8942505B2 (en) * | 2007-01-09 | 2015-01-27 | Telefonaktiebolaget L M Ericsson (Publ) | Adaptive filter representation |
| KR101369746B1 (ko) * | 2007-01-22 | 2014-03-07 | 삼성전자주식회사 | 적응적 보간 필터를 이용한 영상 부호화, 복호화 방법 및장치 |
| EP2048886A1 (en) * | 2007-10-11 | 2009-04-15 | Panasonic Corporation | Coding of adaptive interpolation filter coefficients |
| US8971412B2 (en) * | 2008-04-10 | 2015-03-03 | Qualcomm Incorporated | Advanced interpolation techniques for motion compensation in video coding |
| WO2011086672A1 (ja) * | 2010-01-13 | 2011-07-21 | 株式会社 東芝 | 動画像符号化装置および復号装置 |
| PL2953355T3 (pl) * | 2010-09-30 | 2017-12-29 | Samsung Electronics Co., Ltd | Urządzenie do interpolacji obrazów przy użyciu wygładzającego filtru interpolacyjnego |
| ES2701978T3 (es) * | 2011-06-28 | 2019-02-26 | Samsung Electronics Co Ltd | Procedimiento de decodificación usando un filtro de interpolación |
| JP6120707B2 (ja) * | 2013-07-08 | 2017-04-26 | ルネサスエレクトロニクス株式会社 | 動画像符号化装置およびその動作方法 |
-
2010
- 2010-03-30 JP JP2012507943A patent/JP5323252B2/ja active Active
- 2010-03-30 WO PCT/JP2010/055641 patent/WO2011121716A1/ja not_active Ceased
-
2012
- 2012-09-26 US US13/627,198 patent/US9100650B2/en active Active
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2000041258A (ja) * | 1997-11-20 | 2000-02-08 | Hitachi Ltd | 低解像度ビデオ・デコーダで画質を改善するための方法及び装置 |
| JP2000041261A (ja) * | 1998-07-23 | 2000-02-08 | Sony Corp | 画像復号装置及び画像復号方法 |
| JP2004007337A (ja) * | 2002-04-25 | 2004-01-08 | Sony Corp | 画像処理装置およびその方法 |
| JP2006340211A (ja) * | 2005-06-03 | 2006-12-14 | Matsushita Electric Ind Co Ltd | 動き補償予測装置 |
| WO2007114368A1 (ja) * | 2006-03-30 | 2007-10-11 | Kabushiki Kaisha Toshiba | 画像符号化装置及び方法並びに画像復号化装置及び方法 |
Cited By (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9317896B2 (en) | 2010-07-09 | 2016-04-19 | Samsung Electronics Co., Ltd. | Image interpolation method and apparatus |
| JP2013534119A (ja) * | 2010-07-09 | 2013-08-29 | サムスン エレクトロニクス カンパニー リミテッド | 映像補間方法及びその装置 |
| US9860532B2 (en) | 2011-06-24 | 2018-01-02 | Ntt Docomo, Inc. | Method and apparatus for motion compensation prediction |
| JP2016015761A (ja) * | 2011-06-24 | 2016-01-28 | 株式会社Nttドコモ | 動き補償予測のための方法及び装置 |
| JP2014222941A (ja) * | 2011-06-24 | 2014-11-27 | 株式会社Nttドコモ | 動き補償予測のための方法及び装置 |
| JP2017098984A (ja) * | 2011-06-24 | 2017-06-01 | 株式会社Nttドコモ | 動き補償予測のための方法及び装置 |
| JP2014520488A (ja) * | 2011-06-24 | 2014-08-21 | 株式会社Nttドコモ | 動き補償予測のための方法及び装置 |
| JP2018082459A (ja) * | 2011-06-24 | 2018-05-24 | 株式会社Nttドコモ | 動き補償予測のための方法 |
| US10171816B2 (en) | 2011-06-24 | 2019-01-01 | Ntt Docomo, Inc. | Method and apparatus for motion compensation prediction |
| JP2019071661A (ja) * | 2011-06-24 | 2019-05-09 | 株式会社Nttドコモ | 動き補償予測のための方法及び装置 |
| US10721481B2 (en) | 2011-06-24 | 2020-07-21 | Ntt Docomo, Inc. | Method and apparatus for motion compensation prediction |
| US10735746B2 (en) | 2011-06-24 | 2020-08-04 | Ntt Docomo, Inc. | Method and apparatus for motion compensation prediction |
| JP2020145723A (ja) * | 2011-06-24 | 2020-09-10 | 株式会社Nttドコモ | 動き補償予測のための方法及び装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP5323252B2 (ja) | 2013-10-23 |
| US20130022109A1 (en) | 2013-01-24 |
| JPWO2011121716A1 (ja) | 2013-07-04 |
| US9100650B2 (en) | 2015-08-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2278087T3 (es) | Filtro bicubico aproximado. | |
| JP5590574B2 (ja) | 多重解像度ビデオ符号化および復号化のための再サンプリングおよび画像サイズ変更の演算 | |
| JP6114420B2 (ja) | 非対称形の補間フィルタを利用して、映像を補間する方法及びその装置 | |
| CN104980738B (zh) | 通过使用平滑插值滤波器对图像进行插值的方法和装置 | |
| JP5766815B2 (ja) | 画像符号化方法、および画像符号化装置 | |
| JP2003333599A (ja) | 動き予測および動き補償におけるサブピクセル補間 | |
| JP5073004B2 (ja) | 画像符号化装置及び画像符号化方法並びに画像復号化装置及び画像復号化方法 | |
| JP2003333604A (ja) | ベクトル変換方法およびシステム | |
| US9860532B2 (en) | Method and apparatus for motion compensation prediction | |
| WO2012115420A2 (ko) | 필터링을 이용한 화면 내 예측 방법 및 이러한 방법을 사용하는 장치 | |
| JP5323252B2 (ja) | 動画像符号化方法、復号化方法、符号化装置および復号化装置 | |
| JP6487002B2 (ja) | 復号方法および復号装置 | |
| JP2005318297A (ja) | 動画像符号化・復号方法及び装置 | |
| JP2007060673A (ja) | 画像予測装置、画像符号化装置、画像復号化装置、画像予測方法、画像符号化方法、画像復号化方法、記録媒体及びプログラム | |
| JP5612177B2 (ja) | 動画像符号化方法、復号化方法、符号化装置および復号化装置 | |
| JP4559811B2 (ja) | 情報処理装置及び情報処理方法 | |
| JP2006157531A (ja) | 動画像符号化復号化装置 | |
| JP6564315B2 (ja) | 符号化装置、復号装置、及びプログラム | |
| KR20260044999A (ko) | 모드 전역 설정에 의한 행렬 기반 인트라 예측 | |
| CN101128846B (zh) | 像素内插方法与设备 | |
| KR102038818B1 (ko) | 화면 내 예측 방법 및 이러한 방법을 사용하는 장치 | |
| JP2015111961A (ja) | 画像復号方法および画像復号装置 | |
| JP5404857B2 (ja) | 画像符号化装置及び画像符号化方法並びに画像復号化装置及び画像復号化方法 | |
| JP5353560B2 (ja) | 画像処理回路および画像符号化装置 | |
| CN119054276A (zh) | 用于视频编解码的参考图片重采样 |
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: 10848896 Country of ref document: EP Kind code of ref document: A1 |
|
| DPE1 | Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101) | ||
| WWE | Wipo information: entry into national phase |
Ref document number: 2012507943 Country of ref document: JP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 10848896 Country of ref document: EP Kind code of ref document: A1 |

