WO2013002144A1 - 映像符号化方法,装置,映像復号方法,装置およびそれらのプログラム - Google Patents

映像符号化方法,装置,映像復号方法,装置およびそれらのプログラム Download PDF

Info

Publication number
WO2013002144A1
WO2013002144A1 PCT/JP2012/066010 JP2012066010W WO2013002144A1 WO 2013002144 A1 WO2013002144 A1 WO 2013002144A1 JP 2012066010 W JP2012066010 W JP 2012066010W WO 2013002144 A1 WO2013002144 A1 WO 2013002144A1
Authority
WO
WIPO (PCT)
Prior art keywords
interpolation
interpolation filter
filter coefficient
group
positions
Prior art date
Application number
PCT/JP2012/066010
Other languages
English (en)
French (fr)
Inventor
翔平 松尾
幸浩 坂東
誠之 高村
裕尚 如澤
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to CA2837063A priority Critical patent/CA2837063A1/en
Priority to EP12804866.7A priority patent/EP2704434B1/en
Priority to CN201280026864.XA priority patent/CN103583043B/zh
Priority to BR112013031744A priority patent/BR112013031744A2/pt
Priority to US14/123,054 priority patent/US20140112391A1/en
Priority to KR1020137027950A priority patent/KR101579106B1/ko
Priority to RU2013154584/08A priority patent/RU2573747C2/ru
Priority to ES12804866.7T priority patent/ES2673958T3/es
Publication of WO2013002144A1 publication Critical patent/WO2013002144A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods 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 picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Definitions

  • the present invention relates to a technique for improving performance of an interpolation filter in video coding and improving coding efficiency.
  • This application claims priority based on Japanese Patent Application No. 2011-141724 for which it applied to Japan on June 27, 2011, and uses the content here.
  • inter-frame prediction (motion compensation) coding in which prediction is performed between different screens, a motion vector that minimizes prediction error energy is obtained by referring to an already decoded frame.
  • a signal also called a residual signal
  • quantization is performed, and entropy coding is performed to finally become binary data, that is, a bit stream.
  • a prediction method with high prediction accuracy is required.
  • 16 ⁇ 16 and 8 ⁇ 8 16 ⁇ 8, 8 ⁇ 16, 8 ⁇ 4, 4 ⁇ 8, 4 ⁇ 4, etc.
  • the block size can be divided finely. This tool is called variable block size prediction.
  • a half precision pixel is interpolated from the integer precision pixel of the reference frame using a 6-tap filter, and a quarter precision pixel is generated by linear interpolation using the pixel.
  • the prediction is applied to the decimal precision motion. This tool is called 1/4 pixel accuracy prediction.
  • H. ITU / IEC “MPEG” International Organization for Standardization / International Electrotechnical Commission “Moving Picture Experts Group”
  • ITU- for the development of next-generation video coding standards with higher coding efficiency than H.264 / AVC T “VCEG” (International Telecommunication Union-Telecommunication Standardization Sector “Video Coding Experts Group”) jointly established a study team (Joint Collaborative Team for Video Coding: JCT-VC).
  • the next generation standard system is called High Efficiency Video Coding (High HEV Video Coding: HEVC), and various new encoding technologies are currently gathered from around the world and are being discussed at the JCT-VC meeting.
  • HEVC test Model: HM includes tools to improve the prediction efficiency of motion vectors and block sizes.
  • a tool that expands to 16 ⁇ 16 or more is employed.
  • DCT-IF DCT-based interpolation filter
  • HM Discrete Cosine Transform
  • the conventional interpolation filter will be described in more detail.
  • FIG. 2 is a diagram illustrating a pixel interpolation method with decimal precision in H.264 / AVC.
  • H. In H.264 / AVC as shown in FIG. 10, at the time of interpolation at 1/2 pixel position, interpolation is performed using a total of 6 integer pixels for each of the three left and right points of the target interpolation pixel. In the vertical direction, interpolation is performed using a total of 6 integer pixels for each of the upper and lower three points.
  • the filter coefficients are [(1, -5, 20, 20, -5, 1) / 32], respectively.
  • the 1 ⁇ 4 pixel position is interpolated using an average value filter of [1/2, 1/2].
  • Non-Patent Document 1 Since it is necessary to interpolate all 1 ⁇ 2 pixel positions once, calculation complexity is high, but high-performance interpolation is possible, leading to improved coding efficiency.
  • the above-described interpolation technique using the fixed filter is disclosed in Non-Patent Document 1 and the like.
  • a filter that uses the same coefficient value for all input images and all frames such as a one-dimensional 6-tap filter of H.264 / AVC, is called a fixed interpolation filter (Fixed Interpolation Filter).
  • the DCT-based interpolation filter (DCT-IF) is employed in the HEVC reference software HM.
  • DCT-IF DCT-based interpolation filter
  • a decimal precision pixel interpolation method of this DCT-based interpolation filter is shown in FIG.
  • the interpolation target pixel at the decimal precision position is p
  • the integer position pixel is p x
  • the integer position pixel parameter indicating the position of p is ⁇ (0 ⁇ ⁇ ⁇ 1).
  • the number of pixels at integer positions used for interpolation that is, the tap length is 2M (M is an integer value of 1 or more). Equation (1) is established from the DCT transformation definition equation.
  • equation (2) holds.
  • the pixel interpolation formula at the decimal position ⁇ is given by the following formula (3).
  • This DCT-based interpolation filter is compatible with an arbitrary filter length and interpolation accuracy, and is a high-performance interpolation filter. Therefore, this DCT-based interpolation filter is adopted in the HEVC test model HM.
  • the filter coefficient value is constant regardless of input image conditions (sequence type / image size / frame rate) and encoding conditions (block size / GOP (Group of Pictures) structure / QP (Quantization Parameter)). is there.
  • time-varying effects such as aliasing, quantization error, error due to motion estimation, and camera noise are not considered. Therefore, it is considered that there is a limit to the performance improvement in terms of coding efficiency. Therefore, a method for adaptively changing the interpolation filter coefficient has been proposed in Non-Patent Document 3, and is called a non-separation type adaptive interpolation filter.
  • Non-Patent Document 3 considers a two-dimensional interpolation filter (6 ⁇ 6 total 36 filter coefficients), and the filter coefficient is determined so as to minimize the prediction error energy. H. The encoding efficiency was higher than that of the one-dimensional 6-tap fixed interpolation filter used in H.264 / AVC, but the calculation complexity for obtaining the filter coefficient is very high.
  • Non-Patent Document 4 introduces a proposal for reducing the above.
  • Non-Patent Document 4 The method introduced in Non-Patent Document 4 is called a separable adaptive interpolation filter (SAIF), which uses a one-dimensional 6-tap interpolation filter instead of using a two-dimensional interpolation filter.
  • SAIF separable adaptive interpolation filter
  • FIG. 12A to FIG. 12C are diagrams showing a pixel interpolation method with decimal precision in the separable adaptive interpolation filter (SAIF).
  • SAIF separable adaptive interpolation filter
  • S is an original image
  • P is a decoded reference image
  • x and y are horizontal and vertical positions in the image, respectively.
  • ⁇ x ( ⁇ is a symbol above x; the same applies to others)
  • ⁇ X x + MV x -FilterOffset
  • MV x indicates the horizontal component of the motion vector obtained in advance
  • FilterOffset indicates the offset for adjustment (value obtained by dividing the horizontal filter length by 2).
  • ⁇ y y + MV y
  • MV y represents the vertical component of the motion vector.
  • w ci represents a horizontal filter coefficient group c i (0 ⁇ c i ⁇ 6) to be obtained.
  • Equation (4) IV The same number of linear equations as the filter coefficients obtained in Equation (4) IV are obtained, and the minimization process is performed independently for each decimal pixel position in the horizontal direction. Through this minimization process, three types of 6-tap filter coefficient groups are obtained, and decimal precision pixels a, b, and c are interpolated using the filter coefficient groups.
  • Step 2 of FIG. 12C The filter coefficient in the vertical direction is determined by solving a linear problem similar to that in the horizontal direction. Specifically, the vertical filter coefficient that minimizes the prediction error energy function E V 2 of Equation (5) is analytically determined.
  • S is an original image
  • ⁇ P ( ⁇ is a symbol on P) is an image subjected to interpolation processing in the horizontal direction after decoding
  • x and y indicate horizontal and vertical positions in the image, respectively.
  • ⁇ x 4 ⁇ (x + MV x ) is expressed
  • MV x indicates a horizontal component of the rounded motion vector.
  • w cj represents a vertical filter coefficient group c j (0 ⁇ c j ⁇ 6) to be obtained.
  • the minimization process is performed independently for each decimal precision pixel, and 12 types of 6-tap filter coefficients are obtained. The remaining decimal precision pixels are interpolated using this filter coefficient.
  • the filter coefficients can be inverted and used. That is, if 6 coefficients of d are transmitted, the value can be applied to l.
  • c (d) 1 c (l) 6
  • c (d) 2 c (l) 5
  • c (d) 3 c (l) 4
  • c (d) 4 c (l) 3
  • c ( d) 5 c (l) 2
  • c (d) 6 c (l) 1
  • This symmetry is also available for e and m, f and n, and g and o. The same theory holds for a and c.
  • the filter coefficient to be transmitted for each frame is 51 (15 in the horizontal direction and 36 in the vertical direction).
  • the unit of the prediction error energy minimization processing is fixed in the frame.
  • 51 filter coefficients are determined for one frame. If the encoding target frame is divided into two large (or multiple) texture areas A and B, the optimum filter coefficient is a coefficient group taking into account both (all textures). In the situation where a characteristic filter coefficient originally appears only in the vertical direction in the area A, but in the situation where the filter coefficient can be obtained only in the horizontal direction in the area B, the filter coefficient is derived in the form of averaging both.
  • Non-Patent Document 5 proposes a method for achieving energy reduction and improving coding efficiency.
  • Non-Patent Document 6 grouping is performed for each interpolation position, and the fixed interpolation filter and adaptive interpolation filter are selected for each group so that the prediction error energy can be reduced.
  • a technique for generating an interpolated image has been proposed (see Non-Patent Document 6).
  • Non-Patent Document 4 and Non-Patent Document 5 do not have a function of switching the interpolation filter for each interpolation position, and there is room for improvement in improving motion compensation performance.
  • the interpolation filter having interpolation position adaptability described in Non-Patent Document 6 determines whether to use a fixed interpolation filter defined in advance for each position to be interpolated or an adaptive interpolation filter derived in units of frames.
  • the filter selection is selected from the viewpoint of minimizing the prediction error energy, and either one is always selected.
  • Non-Patent Document 6 assumes interpolation up to a 1/4 pixel precision position, and is divided into four groups according to the position of the interpolation target pixel, and the interpolation filter is switched for each group.
  • the setting of the group is fixed during the encoding process, and the adaptability according to the input image is not considered. If the group setting can be changed according to the nature of the input image, the prediction error energy can be further reduced and the encoding efficiency can be improved.
  • An object of the present invention is to solve the above-mentioned problems and to provide a new method for reducing the prediction error energy in the motion compensation inter-screen prediction as compared with the prior art and improving the coding efficiency.
  • the reference probability of the motion vector is calculated based on the assumption that the performance improvement ratio given by the interpolation filter is higher as the ratio of the interpolation position indicated by the motion vector is higher, and the interpolation filter is calculated from the statistical information. Perform grouping for switching. By using this means, the interpolation position adaptability is widened according to the properties of the input image, and the prediction error energy is reduced, that is, the encoding efficiency is improved.
  • the most characteristic feature of the present invention is that the reference probability of the decimal pixel position indicated by the motion vector is obtained, the interpolation position is grouped according to the reference probability, and an optimum interpolation filter is obtained for each group of interpolation positions.
  • the filter coefficient is selected and the interpolation filter is switched for each group of interpolation positions.
  • the interpolation position group information and the interpolation filter coefficient information are encoded in units of regions such as frames or slices, and transmitted to the decoding device. For the encoding of the interpolation filter coefficient information, it is sufficient that the decoding apparatus can recognize which interpolation filter coefficient is used in each interpolation position group. For example, a set of a plurality of interpolation filter coefficients and an interpolation filter index indicating which interpolation filter is to be used for each interpolation position group may be encoded.
  • the decoding device generates an interpolated image by switching the interpolation filter coefficient for each interpolation position group from the interpolation position group information obtained by decoding the encoded bit stream and the interpolation filter coefficient used at each interpolation position.
  • the decoding process by motion compensation is performed.
  • the following processing is performed.
  • -Perform motion search in units of prediction blocks to obtain motion vectors.
  • -Divide decimal pixel positions which are interpolation positions, into a plurality of groups based on the calculated reference probabilities.
  • For each group of interpolation positions, an interpolation filter is determined and interpolation processing is performed to generate a prediction signal.
  • -Interpolation position group information is encoded, and an interpolation filter index indicating which interpolation filter coefficient is used and each interpolation filter coefficient are encoded.
  • Decode normal encoding information and decode interpolation position group information, interpolation filter index, and interpolation filter coefficient.
  • An interpolation filter to be used for each group of interpolation positions is determined from the interpolation position group information and the interpolation filter index, a prediction signal is generated by performing an interpolation process, and a decoded signal is generated.
  • the operation of the present invention is as follows.
  • a fixed group setting is performed as a unit for switching the interpolation filter, and there is a limit to the performance improvement.
  • pixel positions for switching the interpolation filter are divided into a plurality of groups according to the probability indicated by the motion vector. For example, a position having a high probability of pointing a motion vector is set as one group, and a high-precision interpolation filter is used for the group. In this way, the interpolation filter switching can be set more flexibly, and the coding efficiency can be improved.
  • the interpolation filter application position which could not be taken into consideration with a conventional interpolation filter having interpolation position adaptability, can be made variable, and the shape and filter length of the interpolation filter can be changed for each interpolation position.
  • High-precision interpolation processing can be performed by a portion having a high. Therefore, it is possible to improve the coding efficiency by reducing the prediction error energy.
  • FIG. 1 It is a figure which shows the structural example of the system in the case of implementing embodiment of this invention using a computer and a software program. It is a figure which shows the pixel interpolation method of the decimal precision of a video encoding standard system (H.264 / AVC). It is a figure which shows the pixel interpolation method of the decimal precision of a DCT base interpolation filter (DCT-IF). It is a figure which shows the pixel interpolation method of the decimal precision in a separation-type adaptive interpolation filter (SAIF). It is a figure which shows the pixel interpolation method of the decimal precision in a separation-type adaptive interpolation filter (SAIF). It is a figure which shows the pixel interpolation method of the decimal precision in a separation-type adaptive interpolation filter (SAIF). It is a figure which shows the pixel interpolation method of the decimal precision in a separation-type adaptive interpolation filter (SAIF).
  • SAIF separation-type adaptive interpol
  • FIG. 1 is a diagram illustrating a configuration example of a video encoding device according to an embodiment of the present invention.
  • the interpolation filter coefficient calculation unit 11 calculates the interpolation filter coefficient of the decimal precision pixel used for the reference image in the predictive encoding.
  • the interpolation filter coefficient determination unit 12 calculates the reference probability of the decimal pixel position using the motion vector MV detected by the motion detection unit 132, specifies the importance of the interpolation filter from the calculated reference probability, and further obtained Specify interpolation filter shape, filter length, and bit depth information based on importance.
  • the prediction signal generation unit 13 includes a reference image interpolation unit 131 and a motion detection unit 132.
  • the reference image interpolation unit 131 applies an interpolation filter based on the interpolation filter coefficient selected by the interpolation filter coefficient determination unit 12 to the decoded reference image stored in the reference image memory 17.
  • the motion detection unit 132 calculates a motion vector by performing a motion search on the interpolated reference image.
  • the prediction signal generation unit 13 generates a prediction signal by motion compensation using a decimal precision motion vector calculated by the motion detection unit 132.
  • the prediction encoding unit 14 calculates a residual signal between the input video signal and the prediction signal, orthogonally transforms the signal, and performs prediction encoding by quantization of a transform coefficient.
  • the decoding unit 16 decodes the result of predictive encoding, and stores the decoded image in the reference image memory 17 for later predictive encoding.
  • an in-loop filter for removing coding noise such as a deblocking filter or ALF (Adaptive Loop Filter) may be applied and stored.
  • variable length coding unit 15 performs variable length coding on the quantized transform coefficient and motion vector, and variable lengths the interpolation position group information, the interpolation filter index, and the interpolation filter coefficient that are output from the interpolation filter coefficient determination unit 12. Encode them and output them as an encoded bitstream.
  • FIG. 2 is a diagram illustrating a configuration example 1 of the interpolation filter coefficient determination unit.
  • the portions of the interpolation position reference probability calculation unit 122 and the interpolation target position grouping unit 123 in the interpolation filter coefficient determination unit 12-1 are significantly different from those in the prior art.
  • the interpolation filter information acquisition unit 121 outputs a fixed interpolation filter coefficient value prepared in advance at the time of encoding to the MSE calculation unit 124.
  • a fixed interpolation filter coefficient value prepared in advance at the time of encoding to the MSE calculation unit 124.
  • H.M. A 6-tap coefficient defined in H.264 / AVC, or a DCT-IF 8-tap or 12-tap coefficient may be used.
  • the interpolation position reference probability calculating unit 122 calculates the reference probability of the decimal pixel position using the motion vector (MV) of the encoding target block.
  • the interpolation position reference probability calculation unit 122 uses the input as a motion vector obtained from motion prediction, and obtains the probability indicated by the motion vector for each interpolation position for the entire frame or a part of the image.
  • FIG. 3 shows an example of the reference probability indicated by the motion vector for each interpolation position. For example, when interpolation is performed up to 1 ⁇ 2 pixel accuracy, a probability distribution as shown in FIG. The same calculation can be performed with 1 / n pixel accuracy.
  • FIG. 3B shows an example of the probability distribution when the accuracy is 1/4 pixel.
  • the interpolation position reference probability calculation unit 122 outputs probability distribution information (information expressed in%) for each interpolation position as shown in FIG.
  • the interpolation target position grouping unit 123 receives the interpolation position reference probability information calculated by the interpolation position reference probability calculation unit 122 as an input, and divides the interpolation positions into a plurality of groups according to a predetermined reference order according to a predetermined method. For example, in the case of motion compensation using up to 1/2 pixel accuracy, among the three points excluding integer pixel positions, the upper one point is the first group and the lower two points are the second group. In the case of the example in FIG. 3A, the first group is at the position of ⁇ 25% ⁇ and the second group is at the position of ⁇ 20%, 15% ⁇ .
  • the top 3 points are the first group, the 4th to 7th place is the second group, and the 8th to 11th place is the next.
  • the third group and the remaining lower four points may be the fourth group.
  • the first group is located at ⁇ 13%, 11%, 10% ⁇
  • the second group is located at ⁇ 9%, 8%, 7%, 6% ⁇
  • the third group Is ⁇ 5%, 4%, 3%, 2% ⁇
  • the fourth group is ⁇ 1%, 1%, 1%, 1% ⁇ .
  • the interpolation target position grouping unit 123 outputs the interpolation position group information as described above.
  • the MSE calculation unit 124 outputs the motion vector MV obtained by motion prediction, the decoded signal (local decoded image), the interpolation filter coefficient value generated during encoding in units of frames or regions, and the output from the interpolation filter information acquisition unit 121.
  • the interpolation position group information outputted from the interpolation target position grouping unit 123 is input, and the interpolation image at the position indicated by the motion vector MV is determined from the integer position pixel of the decoded image and the interpolation position group information.
  • MSE Mel Square Error
  • MSE ⁇ (total of original signal ⁇ predicted signal) 2 ⁇ / the number of pixels calculated MSE is output to minimum MSE storage section 125.
  • the minimum MSE storage unit 125 uses the MSE obtained by the MSE calculation unit 124 as an input, and stores the value.
  • the minimum MSE storage unit 125 compares a minimum value stored or defined in advance with an input MSE, (a) If the input MSE value is smaller than the stored minimum value: input MSE value, (b) If the saved minimum value is smaller than the input MSE value: the saved minimum value, Thus, the minimum MSE is determined, and the minimum value is stored and updated. Further, when storing the minimum value, the minimum MSE storage unit 125 stores interpolation position group information and an interpolation filter index for realizing the MSE value.
  • the interpolation filter index is an identification number indicating the interpolation filter. (a) a predefined fixed interpolation filter; (b) an adaptive interpolation filter obtained during the encoding process, Indicates which one to use.
  • the interpolation filter coefficient determination unit 12-1 calculates the MSE for each interpolation position for the possible combinations of the interpolation position and the filter coefficient related to the interpolation filter, and the combination that realizes the minimum MSE, that is, (1) Interpolation position group information, (2) Interpolation filter index, (3) interpolation filter coefficient, The information of is output.
  • FIG. 4 is a diagram illustrating another configuration example 2 of the interpolation filter coefficient determination unit.
  • the interpolation filter coefficient determination unit 12-2 is different from the interpolation filter coefficient determination unit 12-1 of the configuration example 1 described above in the following points. That is, in the configuration example 1, for each group of interpolation positions grouped by the interpolation target position grouping unit 123, a prediction error is calculated by the MSE calculation unit 124 from the interpolation filter coefficients of a plurality of interpolation filters such as an adaptive interpolation filter and a fixed interpolation filter. An interpolation filter coefficient that minimizes energy was selected.
  • the importance determination unit 126 determines the importance of the interpolation position group according to the interpolation position group, and selects an interpolation filter coefficient to be used as an interpolation filter from the importance of the determination result.
  • the processing contents of the interpolation filter information acquisition unit 121, the interpolation position reference probability calculation unit 122, and the interpolation target position grouping unit 123 are the same as those in the configuration example 1 described above.
  • the importance degree determination unit 126 For each interpolation position group, the importance degree determination unit 126 assumes that the importance degree is higher as the reference probability of the decimal pixel position indicated by the motion vector is higher. As the importance degree is higher, the interpolation filter shape, filter length, or bit depth is increased. , Assign high precision. In other words, the importance level determination unit 126 assigns, as the interpolation filter coefficient used for the interpolation position group, the higher the importance level, the larger the interpolation filter shape, the longer filter length, or the larger bit depth.
  • the output of the interpolation filter coefficient determination unit 12-2 in the configuration example 2 includes interpolation position group information indicating which group the interpolation position of decimal precision belongs to, an interpolation filter index indicating which interpolation filter coefficient is used, an interpolation This is a filter coefficient, which is the object of encoding.
  • the interpolation filter index can be omitted.
  • FIG. 5 is a diagram illustrating another configuration example 3 of the interpolation filter coefficient determination unit.
  • the interpolation filter coefficient determination unit 12-3 of the configuration example 3 is configured by combining the interpolation filter coefficient determination unit 12-1 of the configuration example 1 described above and the interpolation filter coefficient determination unit 12-2 of the configuration example 2. Yes.
  • the processing contents of the interpolation filter information acquisition unit 121, the interpolation position reference probability calculation unit 122, and the interpolation target position grouping unit 123 are the same as those in the configuration examples 1 and 2 described above.
  • the importance determination unit 126 receives the interpolation filter coefficient of the adaptive interpolation filter obtained during the encoding process and the filter coefficient of the fixed interpolation filter defined in advance acquired by the interpolation filter information acquisition unit 121. Also, the importance position determination unit 126 receives the interpolation position group information obtained by the interpolation target position grouping unit 123.
  • the importance determination unit 126 determines that the importance is higher as the reference probability of the decimal pixel position indicated by the motion vector is higher for each interpolation position group, and the higher the importance is, the higher the importance is. Select some interpolation filter coefficients with high precision for length or bit depth. In other words, the importance level determination unit 126 sets a plurality of sets of interpolation filter coefficients from among the input interpolation filter coefficients, as the importance level is higher, the interpolation filter shape is larger, the filter length is longer, or the bit depth is larger. elect.
  • the MSE calculation unit 124 inputs the motion vector MV obtained by motion prediction, the decoded signal (local decoded image), and the interpolation filter coefficient selected by the importance determination unit 126, and the position indicated by the motion vector MV for each interpolation position group. Is generated using the integer position pixels of the decoded image and the interpolation filter coefficient, and MSE (MeanMSSquare Error): with the original image is calculated.
  • MSE MobileMSSquare Error
  • the minimum MSE storage unit 125 uses the MSE obtained by the MSE calculation unit 124 as an input, and stores the smallest value among the values.
  • the interpolation filter coefficient determination unit 12-3 calculates the MSE for each interpolation position for the possible combinations of the interpolation position related to the interpolation filter and the interpolation filter coefficient selected by the importance determination unit 126 as described above, A combination that realizes MSE, that is, interpolation position group information that indicates which group the interpolation position of decimal precision belongs to, an interpolation filter index that indicates which interpolation filter coefficient is used, and an interpolation filter coefficient are output.
  • FIG. 6 is a processing flowchart of the video encoding device shown in FIG.
  • the flow of processing when the video encoding device encodes one frame will be described with reference to FIG. In the following, unless otherwise specified, processing with a luminance signal is assumed.
  • step S101 a frame of an original image necessary for encoding processing is input.
  • step S102 for example, H.264 is performed.
  • the fixed interpolation filter provided in the encoder such as the one-dimensional 6-tap filter used in H.264 / AVC and the one-dimensional 8-tap / 12-tap filter of the DCT-based interpolation filter, is used as a predefined interpolation filter.
  • MV motion vector
  • step S103 the coefficient value of the adaptive interpolation filter in the encoding target frame is calculated using the motion vector obtained in step S102.
  • a generally known prediction error energy minimization method linear regression is used to calculate the coefficients of the interpolation filter in this step.
  • step S104 a reference probability for each interpolation target position is calculated from the motion vector obtained in step S102. More specifically, the number of times the motion vector points is obtained, and from the number of motion vectors, the number of motion vectors to which each interpolation target position is referenced is calculated.
  • step S105 the grouping of the interpolation positions is determined from the reference probability result obtained in step S104. For example, when obtaining up to 1 ⁇ 4 pixel accuracy, there are a total of 15 interpolation target positions. At this time, grouping is performed so that the top three are group 1, the top 4 to 7 are group 2, the top 8 to 11 are group 3, and the others are group 4.
  • step S106 the processing of the interpolation filter coefficient determination units 12-1 to 12-3 described in FIGS. 2, 4 and 5 is executed from the grouping result obtained in step S105.
  • the importance of the interpolation position group is set, and the interpolation filter to be used is determined. Since group 1 has a high reference probability, the influence of the filter is large, so that the importance is set high. In this case, for example, an interpolation filter with a long tap length is used, or a filter with high performance is assigned by setting a high quantization bit depth of the filter coefficient value.
  • the reference probability of group 4 is low, even if the performance of the interpolation filter used is low, the influence is small.
  • interpolation filter with a short tap length or set the quantization bit depth low. Further, when there are a plurality of interpolation filter coefficient candidates to be used, MSE is calculated when each interpolation filter coefficient candidate is used, and an interpolation filter coefficient with the smallest prediction error energy is determined.
  • step S107 interpolation processing is performed using the interpolation filter coefficient determined in step S106.
  • step S108 the interpolation position group information obtained in step S105 is encoded.
  • step S109 information necessary for decoding such as the interpolation filter coefficient information and the interpolation filter index obtained in step S103 is encoded.
  • step S110 the remaining information to be encoded, for example, the prediction error signal (texture component information) and the motion vector are all encoded.
  • step S111 it is determined whether the encoded frame has reached the final frame. If the processing frame is not the final frame, the process returns to step S101 to process the next frame. If the processing frame is the last frame, the encoding process is terminated.
  • the function of changing the interpolation position group from the motion vector reference probability described in this embodiment and adjusting the interpolation filter used for each group is not only a luminance signal but also a color difference signal. The same applies.
  • FIG. 7 is a diagram illustrating a configuration example of a video decoding apparatus according to an embodiment of the present invention.
  • variable length decoding unit 21 receives the encoded bit stream and decodes the quantized transform coefficient, motion vector, interpolation position group information, interpolation filter index, interpolation filter coefficient, and the like.
  • the interpolation filter coefficient determination unit 22 determines an interpolation filter coefficient used for each interpolation position from the interpolation position group information and the interpolation filter index.
  • the reference image interpolation unit 231 in the prediction signal generation unit 23 applies the interpolation filter based on the interpolation filter coefficient received from the interpolation filter coefficient determination unit 22 to the decoded reference image stored in the reference image memory 25, and calculates the decimal number of the reference image. Restore precision pixels.
  • the prediction signal generation unit 23 generates a prediction signal of the decoding target block from the reference image in which the decimal precision pixels are restored.
  • the prediction decoding unit 24 performs inverse quantization, inverse orthogonal transformation, and the like on the quantization coefficient decoded by the variable length decoding unit 21, and the prediction error signal calculated thereby, the prediction signal generated by the prediction signal generation unit 23, Are added to generate a decoded image and output as an output image.
  • the decoded image decoded by the predictive decoding unit 24 is stored in the reference image memory 25 for later predictive decoding.
  • an in-loop filter for removing coding noise such as a deblocking filter or ALF (Adaptive Loop Filter) may be applied and stored.
  • FIG. 8 is a processing flowchart of the video decoding apparatus shown in FIG.
  • the flow of processing when the video decoding apparatus decodes one frame will be described with reference to FIG. In the following, unless otherwise specified, processing with a luminance signal is assumed.
  • step S201 information on the frame header (or slice header) is acquired. Subsequently, in step S202, the interpolation position group information is decoded. Subsequently, in step S203, the interpolation filter index and the interpolation filter coefficient are decoded.
  • step S204 all other information necessary for decoding (for example, motion vectors and prediction error signals) is decoded.
  • step S205 an interpolation filter to be used for each interpolation position is determined from the interpolation position group information obtained in step S202, and an interpolation filter to be applied for each interpolation position group is determined.
  • step S206 interpolation processing is performed using the interpolation filter obtained in step S205, and a prediction signal is generated.
  • step S207 the prediction error signal obtained in step S204 and the prediction signal obtained in step S206 are added together to generate a decoded signal.
  • step S208 it is determined whether all the frames to be decoded have been decoded. If all the frames have not been decoded, the process returns to step S201 to proceed to the decoding of the next frame. The decryption process ends.
  • the video encoding and decoding processes described above can be realized by a computer and a software program, and the program can be recorded on a computer-readable recording medium or provided through a network.
  • FIG. 9 shows a configuration example of a system when the embodiment of the present invention is implemented using a computer and a software program.
  • This system includes a CPU (Central Processing Unit) 50 that executes a program, a memory 51 such as a RAM (Random Access Memory) that stores programs and data accessed by the CPU 50, a video signal to be encoded, or a decoded image.
  • a video signal storage unit 52 that stores the video signal
  • a program storage device 53 that stores a program for causing the CPU 50 to execute the processing described in the embodiment of the present invention, and a bit stream of an encoding result or a decoding target
  • the encoded stream storage unit 54 that stores the bit stream is connected by a bus.
  • the program storage device 53 includes a video encoding program 531 for encoding a video signal using the embodiment of the present invention, and a video decoding program 532 for decoding an encoded bitstream using the embodiment of the present invention. One of them is stored.
  • the program storage device 53 may store both of these programs.
  • the video encoding program 531 is loaded into the memory 51, and the CPU 50 sequentially fetches and executes the instructions of the video encoding program 531 loaded into the memory 51,
  • the video signal stored in the video signal storage unit 52 is encoded by the method described in the embodiment of the present invention, and the bit stream of the encoding result is stored in the encoded stream storage unit 54.
  • the bit stream may be output to an external device via an interface such as a network adapter.
  • the video decoding program 532 When the present system is used as a video decoding device, the video decoding program 532 is loaded into the memory 51, and the CPU 50 sequentially fetches and executes the instructions of the video decoding program 532 loaded into the memory 51, and executes the encoded stream.
  • the bit stream stored in the storage unit 54 is decoded by the method described in the embodiment of the present invention, and the decoded video signal is stored in the video signal storage unit 52. Alternatively, the decoded video signal is output to an external playback device.
  • the present invention can be used for video encoding and video decoding using, for example, motion compensated inter-screen prediction. According to the present invention, it is possible to improve the coding efficiency by reducing the prediction error energy.

Landscapes

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

Abstract

 動き補償画面間予測における予測誤差エネルギーを低減させ,符号化効率の改善を図る。小数精度の動き補償を用いる映像符号化方法は,動き探索を行って動きベクトルを取得するステップと,取得した動きベクトルが指し示す小数画素位置の参照確率を算出するステップと,算出された参照確率から小数画素位置である補間位置を複数のグループに分けるステップと,前記補間位置のグループごとに,複数の補間フィルタ係数の候補の中から補間予測画像の生成に用いる補間フィルタ係数を選出するステップと,前記補間位置のグループごとに,選出された補間フィルタ係数を用いて前記補間予測画像を生成し,前記補間予測画像から前記小数精度の動き補償による符号化を実施するステップと,前記補間位置のグループ分けを示す情報および各補間位置のグループにおいてどの補間フィルタ係数を用いるかを示す情報を符号化するステップとを有する。

Description

映像符号化方法,装置,映像復号方法,装置およびそれらのプログラム
 本発明は,映像符号化における補間フィルタの性能改善を図り,符号化効率を改善する技術に関するものである。
 本願は,2011年6月27日に日本へ出願された特願2011-141724号に基づき優先権を主張し,その内容をここに援用する。
 映像符号化において,異なる画面間で予測を実行する画面間予測(動き補償)符号化では,すでに復号されたフレームを参照して,予測誤差エネルギーを最小にする動きベクトルが求められ,その予測誤差信号(残差信号とも呼ばれる)が直交変換される。その後,量子化が施され,エントロピー符号化を経て,最終的にバイナリーデータ,すなわちビットストリームとなる。符号化効率を高めるためには予測誤差エネルギーの低減が不可欠であり,予測精度の高い予測方式が求められる。
 映像符号化標準方式には,数多くの画面間予測の精度を高めるためのツールが導入されている。例えばH.264/AVCでは,直近のフレームにオクルージョンが存在する場合は,時間的に少し離れたフレームを参照したほうが予測誤差エネルギーを低減できるため,複数のフレームを参照可能としている。本ツールを複数参照フレーム予測と呼ぶ。
 また,複雑な形状の動きにも対応可能とするために,16×16および8×8に加えて,16×8,8×16,8×4,4×8,4×4のように,ブロックサイズを細かく分割可能としている。本ツールを可変ブロックサイズ予測と呼ぶ。
 これらと同様に,参照フレームの整数精度画素から6タップのフィルタを用いて1/2精度の画素を補間し,さらにその画素を利用して1/4精度の画素を線形補間で生成する。これにより,小数精度の動きに対して予測が当たるようになる。本ツールを1/4画素精度予測と呼ぶ。
 H.264/AVCよりも符号化効率の高い次世代映像符号化標準方式の策定に向け,国際標準化組織ISO/IEC“MPEG”(International Organization for Standardization/International Electrotechnical Commission "Moving Picture Experts Group")およびITU-T“VCEG”(International Telecommunication Union-Telecommunication Standardization Sector "Video Coding Experts Group")が共同で検討チーム(Joint Collaborative Team for Video Coding:JCT-VC)を設立した。次世代標準方式は,高能率映像符号化方式(High Efficiency Video Coding: HEVC)と呼ばれ,現在世界各国から様々な新規符号化技術が集められ,JCT-VC会合にて審議されている。
 その中で,特に画面間予測(動き補償)に関連する提案は多くなされており,HEVC用参照ソフトウェア(HEVC test Model:HM)には,動きベクトルの予測効率を改善するツールや,ブロックサイズを16×16以上に拡張するツールが採用されている。
 また,小数精度画素の補間精度を高めるツールも提案されており,補間フィルタ係数をDCT(Discrete Cosine Transform)係数の基底から導出したDCTベース補間フィルタ(DCT-based Interpolation Filter: DCT-IF)は効果が高く,HMに採用されている。さらに補間精度を上げるため,補間フィルタ係数をフレーム単位で適応的に変化させる補間フィルタも提案されており,適応補間フィルタ(Adaptive Interpolation Filter:AIF)と呼ばれる。適応補間フィルタは符号化効率改善の効果が高く,VCEG主導で作成された次世代映像符号化向け参照ソフトウェア(Key Technical Area: KTA)にも採用されている。符号化効率向上への寄与が高いため,補間フィルタの性能改善は非常に期待される領域である。
 従来の補間フィルタについて,さらに詳しく説明する。
 〔固定的補間〕
 図10は,H.264/AVCにおける小数精度の画素補間方法を示す図である。H.264/AVCにおいては,図10に示すように1/2画素位置の補間時は,対象となる補間画素の左右3点ずつ計6整数画素を用いて補間を行う。垂直方向については,上下3点ずつ計6整数画素を用いて補間する。フィルタ係数は,それぞれ[(1,-5,20,20,-5,1)/32]となっている。1/2画素位置が補間された後,1/4画素位置は[1/2,1/2]の平均値フィルタを用いて補間を行う。一度,1/2画素位置をすべて補間して求める必要があるため,計算複雑度は高いものの,性能の高い補間が可能となり,符号化効率向上を導いている。以上の固定フィルタによる補間の技術は,非特許文献1等に示されている。
 H.264/AVCの1次元6タップフィルタのように,係数値が全入力画像および全フレームに対して同じ値を用いるフィルタは,固定補間フィルタ(Fixed Interpolation Filter)と呼ばれる。
 H.264/AVCに採用されている補間フィルタの性能をさらに改善する方式として,HEVC用参照ソフトウェアHMでは,DCTベース補間フィルタ(DCT-IF)が採用されている。このDCTベース補間フィルタの小数精度の画素補間方法を,図11に示す。図11のように,小数精度位置における補間対象画素をp,整数位置画素をp,pの位置を示す整数位置画素間パラメータをα(0≦α≦1)とする。このとき,補間に使用する整数位置の画素数,すなわちタップ長を2M(Mは1以上の整数値)とする。DCT変換の定義式より,式(1) が成立する。
Figure JPOXMLDOC01-appb-M000001
また,逆DCT変換の定義式より,式(2) が成立する。
Figure JPOXMLDOC01-appb-M000002
xを位置とみなすことにより,小数位置αにおける画素補間式は以下の式(3) となる。
Figure JPOXMLDOC01-appb-M000003
 式(3) より,補間に用いるタップ長2Mおよび補間対象位置αが定まれば,一意に係数を導出することができる。以上の議論から得られる補間フィルタの事例を表1および表2にまとめる。以上の詳細については,非特許文献2に示されている。
Figure JPOXMLDOC01-appb-T000004
Figure JPOXMLDOC01-appb-T000005
 このDCTベース補間フィルタは,任意のフィルタ長および補間精度に対応でき,性能の高い補間フィルタであるため,HEVC用テストモデルHMに採用されている。
 〔適応的補間〕
 H.264/AVCでは,入力画像条件(シーケンス種類/画像サイズ/フレームレート)や符号化条件(ブロックサイズ/GOP(Group of Pictures)構造/QP(Quantization Parameter))に関わらず,フィルタ係数値は一定である。フィルタ係数値が固定である場合,例えば,エイリアシング,量子化誤差,動き推定による誤差,カメラノイズといった時間的に変化する効果が考慮されていない。したがって,符号化効率の点で性能向上に限界があると考えられる。そこで,補間フィルタ係数を適応的に変化させる方式が非特許文献3では提案されており,非分離型の適応補間フィルタと呼ばれている。
 非特許文献3では,2次元の補間フィルタ(6×6の計36フィルタ係数)を考えており,予測誤差エネルギーを最小にするようにフィルタ係数が決定される。H.264/AVCに用いられている1次元6タップの固定補間フィルタを用いるよりも高い符号化効率が実現できたが,フィルタ係数を求める上での計算複雑度が非常に高いため,その計算複雑度を低減するための提案が非特許文献4で紹介されている。
 非特許文献4で紹介されている手法は分離型適応補間フィルタ(SAIF:Separable Adaptive Interpolation Filter )と呼ばれ,2次元の補間フィルタを用いるのではなく,1次元の6タップ補間フィルタを用いる。
 図12A~図12Cは,分離型適応補間フィルタ(SAIF)における小数精度の画素補間方法を示す図である。手順としては,図12BのStep1に示すように,まず水平方向の画素(a,b,c)を補間する。フィルタ係数の決定には整数精度画素C1からC6が用いられる。式(4) の予測誤差エネルギー関数E を最小化するような水平方向フィルタ係数が,一般に知られた最小二乗法(非特許文献3参照)により,解析的に決定される。
Figure JPOXMLDOC01-appb-M000006
 ここで,Sは原画像,Pは復号済参照画像,xおよびyはそれぞれ画像中の水平および垂直方向の位置を示す。また,~x(~はxの上に付く記号;他も同様)は,
  ~x=x+MV-FilterOffset
であり,MVは事前に得られた動きベクトルの水平成分, FilterOffset は調整のためのオフセット(水平方向フィルタ長を2で割った値)を示している。垂直方向については,~y=y+MVとなり,MVは動きベクトルの垂直成分を示す。wciは求めるべき水平方向フィルタ係数群c(0≦c<6)を示す。
 式(4) で求めるフィルタ係数と同じ数の一次方程式が得られることになり,最小化処理は,水平方向の小数画素位置ごとに独立に実施される。この最小化処理を経て,3種類の6タップフィルタ係数群が求まり,そのフィルタ係数群を用いて小数精度画素a,b,cが補間される。
 水平方向の画素補間が完了した後,図12CのStep2に示すように,垂直方向の補間処理を実施する。水平方向と同様の線形問題を解くことで垂直方向のフィルタ係数を決定する。具体的には,式(5) の予測誤差エネルギー関数E を最小化するような垂直方向フィルタ係数が,解析的に決定される。
Figure JPOXMLDOC01-appb-M000007
 ここで,Sは原画像,^P(^はPの上に付く記号)は復号後に水平方向に補間処理された画像,xおよびyはそれぞれ画像中の水平および垂直方向の位置を示す。また,~x=4・(x+MV)で表現され,MVは丸められた動きベクトルの水平成分を示す。垂直方向については,~y=y+MV-FilterOffset で表現され,MVは動きベクトルの垂直成分, FilterOffset は調整のためのオフセット(フィルタ長を2で割った値)を示す。wcjは求めるべき垂直方向フィルタ係数群c(0≦c<6)を示す。
 最小化処理は小数精度画素ごとに独立に実施され,12種類の6タップフィルタ係数が得られる。このフィルタ係数を用いて,残りの小数精度画素が補間される。
 以上より,合計90(=6×15)のフィルタ係数を符号化して復号側に伝送する必要がある。特に低解像度の符号化については,このオーバーヘッドが大きくなるため,フィルタの対称性を用いて,伝送すべきフィルタ係数を削減している。例えば,図12Aでは,b,h,i,j,kの位置は,補間方向に関して各整数精度画素から見て中心に位置しており,水平方向であれば,左3点に用いる係数を反転させて右3点に適用できる。同様に,垂直方向であれば,上3点に用いる係数を反転させて下3点に適用できる(c=c,c=c,c=c)。
 他にもdとlの関係はhを挟んで対称となっているため,フィルタ係数もそれぞれ反転して利用できる。すなわち,dの6係数を伝送すれば,その値をlにも適用できる。c(d)=c(l),c(d)=c(l),c(d)=c(l),c(d)=c(l),c(d)=c(l),c(d)=c(l)となる。この対称性は,eとm,fとn,そしてgとoにも利用可能となる。aとcについても同様の理論が成立するが,水平方向は垂直方向の補間にも結果が影響を及ぼすため,対称性は用いずに,aとcはそれぞれ別々に伝送を行う。以上の対称性を利用した結果,フレームごとに伝送すべきフィルタ係数は51(水平方向が15,垂直方向が36)となる。
 以上,非特許文献4の適応補間フィルタは,予測誤差エネルギーの最小化処理の単位がフレームで固定されていた。1枚のフレームに対して,51のフィルタ係数が決定される。符号化対象フレームが仮に大きな2種類(もしくは複数種類の)テクスチャ領域A,Bに分けられる場合,最適なフィルタ係数はその両者(すべてのテクスチャ)を考慮した係数群になる。Aの領域では本来垂直方向のみ特徴的なフィルタ係数が出ていたとして,Bの領域で水平方向のみフィルタ係数が得られるような状況では,その両方が平均化された形でフィルタ係数が導出される。
 1枚のフレームにつき1つのフィルタ係数群(51係数)に限定されずに,画像の局所的性質に応じて,領域分割を行い,分割された領域ごとに補間フィルタ係数を生成して,予測誤差エネルギーの低減を達成し,符号化効率の改善を実現する方法が,非特許文献5にて提案されている。
 また,非特許文献4の適応補間フィルタの性能改善を目的として,補間位置ごとにグルーピングを行い,予測誤差エネルギーを低減できるように,そのグループ単位で固定補間フィルタと適応補間フィルタの選択をして補間画像を生成する技術が提案されている(非特許文献6参照)。
日本特開2011-82725号公報
大久保榮, 角野眞也, 菊池義浩, 鈴木輝彦:"H.264/AVC教科書改訂三版",インプレス, pp. 119-123,2009 Ken McCann, Woo-Jin Han, Il-Koo Kim, Jung-Hye Min, Elena Alshina, Alexander Alshin, Tammy Lee, Jianle Chen, Vadim Seregin, Sunil Lee, Yoon-Mi Hong, Min-Su Cheon, Nikolay Shlyakhov, "Samsung's Response to the Call for Proposals on Video Compression Technology", JCTVC-A124 r2, pp. 12-14, 1st JCT-VC Meeting, Dresden, Apr. 2010 Y. Vatis, B. Edler, D. T. Nguyen , J. Ostermann: "Motion-and aliasing-compensated prediction using a two-dimensional non-separable adaptive Wiener interpolation filter", Proc. ICIP2005, IEEE International Conference on Image Processing, pp. II 894-897, Genova, Italy, Sep. 2005 S. Wittmann, T. Wedi: "Separable adaptive interpolation filter for video coding",  Proc. ICIP2008, IEEE International Conference on Image Processing, pp. 2500-2503, San Diego, California, USA, Oct. 2008 Shohei Matsuo, Yukihiro Bandoh, Seishi Takamura, Hirohisa Jozawa: "Enhanced region-based adaptive interpolation filter" , Proc. PCS2010, IEEE Picture Coding Symposium, pp. 526-529, Nagoya, Japan, Dec. 2010 Faouzi Kossentini, Nader Mahdi, Hsan Guermazi, Mohammed Ali Ben Ayed: "An Adaptive Interpolation Filtering Technique", JCTVC-E284, 5th JCT-VC Meeting, Geneva, Mar. 2011
 非特許文献4や非特許文献5に記載の補間フィルタでは,補間位置ごとに補間フィルタを切り替える機能がなく,動き補償の性能向上に改善の余地がある。
 非特許文献6に記載の補間位置適応性を有する補間フィルタは,補間する位置ごとに事前に定義された固定補間フィルタを用いるか,フレーム単位で導出した適応補間フィルタを用いるかを判断する。フィルタ選択は予測誤差エネルギー最小化の観点で選択され,どちらかを必ず選択する方式となっている。
 補間位置に応じて,複数の補間フィルタから適応的に選択することで符号化効率向上を狙う場合,補間位置の設定が符号化効率改善性能に影響を与えると考えられる。非特許文献6に記載の方法は,1/4画素精度位置までの補間を想定しており,補間対象画素の位置に応じて4グループに分けて,そのグループ単位で補間フィルタを切り替えている。そのグループの設定は符号化処理中で固定となっており,入力画像に応じた適応性は考慮されていない。グループの設定を入力画像の性質に応じて変更できれば,より予測誤差エネルギーを低減させ,符号化効率の改善が実現可能である。
 本発明は,上記課題の解決を図り,動き補償画面間予測における予測誤差エネルギーを従来技術よりも低減させ,符号化効率を改善させる新しい方式を提供することを目的とする。
 上記目的を達成するための方法として,動きベクトルが指す補間位置の割合が高いほど補間フィルタの与える性能改善割合が高いという想定に基づき,動きベクトルの参照確率を算出し,その統計情報から補間フィルタ切り替えのためのグループ分けを実施する。本手段を用いることで,入力画像の性質に応じて補間位置適応性に幅を持たせて,予測誤差エネルギーの低減,すなわち符号化効率の改善を実現する。
 以上のように,本発明の最も特徴とするところは,動きベクトルが指し示す小数画素位置の参照確率を求め,参照確率によって補間位置のグルーピングを行い,補間位置のグループごとに最適な補間フィルタとなるフィルタ係数を選出して,補間位置のグループごとに補間フィルタを切り替える点である。補間位置グループ情報と補間フィルタ係数情報は,フレーム単位もしくはスライスなどの領域単位で符号化し,復号装置に伝送する。補間フィルタ係数情報の符号化は,各補間位置グループでどの補間フィルタ係数を用いるかが復号装置側で認識できる情報であれば十分である。例えば複数組の補間フィルタ係数のセットと補間位置グループごとにどの補間フィルタを用いるかを示す補間フィルタインデックスを符号化の対象としてもよい。
 復号装置では,符号化ビットストリームを復号して得られた補間位置グループ情報と各補間位置で用いる補間フィルタ係数とから,補間位置グループごとに補間フィルタ係数を切り替えて補間画像を生成し,小数精度の動き補償による復号処理を行う。
 詳しくは,映像符号化では,例えば以下の処理を行う。
・予測ブロック単位で動き探索を行い,動きベクトルを取得する。
・取得した動きベクトルが指し示す参照先の小数画素位置の参照確率(確率分布)を算出する。
・算出された参照確率から,補間位置である小数画素位置を複数のグループに分ける。
・補間位置のグループごとに,補間フィルタを決定して補間処理を行い,予測信号を生成する。
・補間位置グループ情報を符号化し,また,どの補間フィルタ係数を用いるかを示す補間フィルタインデックスと,各補間フィルタ係数とを符号化する。
・他の符号化情報をすべて符号化する。
 映像復号では,例えば以下の処理を行う。
・通常の符号化情報を復号するとともに,補間位置グループ情報,補間フィルタインデックスおよび補間フィルタ係数を復号する。
・補間位置グループ情報と補間フィルタインデックスとから,補間位置のグループごとに使用する補間フィルタを確定し,補間処理を行って予測信号を生成し,復号信号を生成する。
 本発明の作用は以下のとおりである。従来の補間位置適応性を有する補間フィルタでは,補間フィルタを切り替える単位として,固定されたグループ設定を行っており,性能改善には限界があった。一方,本発明では,補間フィルタを切り替える画素位置を,動きベクトルの指し示す確率に応じて複数のグループに分ける。例えば,動きベクトルの指し示す確率が高い位置を1つのグループとして,そのグループに高精度の補間フィルタを用いる。このようにすることによって,より柔軟に補間フィルタの切り替えを設定でき,符号化効率を改善できる。
 本発明によれば,従来の補間位置適応性を有する補間フィルタでは考慮できなかった,補間フィルタ適用位置を可変にでき,かつ補間フィルタの形状やフィルタ長を補間位置ごとに変更可能となり,参照確率が高い部分により高精度な補間処理をすることができる。したがって,予測誤差エネルギーの低減による符号化効率改善が達成できる。
本発明の一実施形態である映像符号化装置の構成例を示す図である。 補間フィルタ係数判定部の構成例1を示す図である。 補間位置ごとの動きベクトルが指し示す参照確率の例を示す図である。 補間フィルタ係数判定部の構成例2を示す図である。 補間フィルタ係数判定部の構成例3を示す図である。 本発明の一実施形態である符号化処理のフローチャートである。 本発明の一実施形態である映像復号装置の構成例を示す図である。 本発明の一実施形態である復号処理のフローチャートである。 本発明の実施形態をコンピュータとソフトウェアプログラムとを用いて実施する場合のシステムの構成例を示す図である。 映像符号化標準方式(H.264/AVC)の小数精度の画素補間方法を示す図である。 DCTベース補間フィルタ(DCT-IF)の小数精度の画素補間方法を示す図である。 分離型適応補間フィルタ(SAIF)における小数精度の画素補間方法を示す図である。 分離型適応補間フィルタ(SAIF)における小数精度の画素補間方法を示す図である。 分離型適応補間フィルタ(SAIF)における小数精度の画素補間方法を示す図である。
 以下,図面を用いながら,本発明の一実施形態について説明する。
 〔映像符号化装置の構成例〕
 図1は,本発明の一実施形態である映像符号化装置の構成例を示す図である。
 映像符号化装置10において,補間フィルタ係数算出部11は,予測符号化における参照画像に対して用いる小数精度画素の補間フィルタ係数を算出する。補間フィルタ係数判定部12は,動き検出部132が検出した動きベクトルMVを用いて小数画素位置の参照確率を算出し,算出された参照確率から補間フィルタの重要度を指定し,さらに得られた重要度から補間フィルタの形状,フィルタ長,ビット深度の情報を指定する。
 予測信号生成部13は,参照画像補間部131と動き検出部132とを備える。参照画像補間部131は,参照画像メモリ17に格納された復号済み参照画像に,補間フィルタ係数判定部12が選択した補間フィルタ係数による補間フィルタを適用する。動き検出部132は,補間後の参照画像に対して動き探索を行うことにより,動きベクトルを算出する。予測信号生成部13は,動き検出部132によって算出された小数精度の動きベクトルによる動き補償により予測信号を生成する。
 予測符号化部14は,入力映像信号と予測信号との残差信号を算出し,それを直交変換し,変換係数の量子化などによって予測符号化を行う。また,復号部16は,予測符号化の結果を復号し,復号画像を後の予測符号化のために参照画像メモリ17に格納する。このとき,デブロッキングフィルタやALF(Adaptive Loop Filter)などの符号化ノイズ除去のためのインループフィルタを施してから,格納してもよい。
 可変長符号化部15は,量子化された変換係数,動きベクトルを可変長符号化するとともに,補間フィルタ係数判定部12の出力である補間位置グループ情報,補間フィルタインデックス,補間フィルタ係数を可変長符号化し,これらを符号化ビットストリームとして出力する。
 〔補間フィルタ係数判定部の構成例1〕
 図2は,補間フィルタ係数判定部の構成例1を示す図である。補間フィルタ係数判定部12-1における補間位置参照確率計算部122および補間対象位置グルーピング部123の部分が,特に従来技術と顕著に異なる。
 補間フィルタ係数判定部12-1において,補間フィルタ情報取得部121は,符号化時に予め用意されている固定補間フィルタ係数値をMSE算出部124に出力する。例えば,H.264/AVCに定義されている6タップの係数や,DCT-IFの8タップもしくは12タップの係数を用いてもよい。
 補間位置参照確率計算部122は,符号化対象ブロックの動きベクトル(MV)を用いて小数画素位置の参照確率を算出する。この補間位置参照確率計算部122では,入力を動き予測から求まる動きベクトルとし,フレーム全体ないしは画像における一部の領域に対して,補間位置ごとに動きベクトルが指し示す確率を求める。
 図3に,補間位置ごとの動きベクトルが指し示す参照確率の例を示す。例えば,1/2画素精度まで補間する場合,図3(A)に示すような確率分布が得られる。1/n画素精度でも同様に計算できる。図3(B)は,1/4画素精度のときの確率分布の例を示している。補間位置参照確率計算部122は,図3に示されるような補間位置ごとの確率分布情報(%で表記される情報)を出力する。
 補間対象位置グルーピング部123は,補間位置参照確率計算部122が算出した補間位置参照確率情報を入力とし,あらかじめ定められた方法により補間位置を参照確率の高い順番に従って複数のグループに分ける。例えば,1/2画素精度まで用いる動き補償の場合,整数画素位置を除いた3点のうち,上位1点を第一グループ,下位2点を第二グループとする。図3(A)の例の場合,第一グループが{25%}の位置,第二グループが{20%,15%}の位置となる。また,1/4画素精度まで用いる動き補償の場合,整数画素位置を除いた15点のうち,上位3点を第一グループ,続く4~7位を第二グループ,続く8~11位までを第三グループ,残る下位4点を第四グループなどとしてよい。図3(B)の例の場合,第一グループが{13%,11%,10%}の位置,第二グループが{9%,8%,7%,6%}の位置,第三グループが{5%,4%,3%,2%}の位置,第四グループが{1%,1%,1%,1%}の位置というように分けられる。補間対象位置グルーピング部123は,以上のような補間位置グループ情報を出力する。
 MSE算出部124は,動き予測で求まる動きベクトルMV,復号信号(ローカルデコード画像),フレーム単位ないしは領域単位などで,符号化中に生成される補間フィルタ係数値,補間フィルタ情報取得部121から出力される固定補間フィルタ係数値,補間対象位置グルーピング部123から出力される補間位置グループ情報を入力とし,動きベクトルMVが指し示す位置における補間画像を,復号画像の整数位置画素と補間位置グループ情報から判断されるフィルタ係数を用いて生成し,原画像とのMSE(Mean Square Error:平均二乗誤差) ,すなわち,予測残差エネルギーを計算する。
 MSEの計算には,例として,以下のような式を用いることができる。
  MSE={(原信号-予測信号)の総和}/画素数
計算されたMSEは,最小MSE記憶部125に出力される。
 最小MSE記憶部125は,入力をMSE算出部124で得られるMSEとし,その値を保存する。最小MSE記憶部125は,事前に保存もしくはあらかじめ定義されている最小値と,入力されるMSEとを比較し,
(a) 保存済みの最小値よりも入力MSE値が小さい場合:入力MSE値,
(b) 保存済みの最小値の方が入力MSE値よりも小さい場合:保存済みの最小値,
というように,最小となるMSEを判定して,最小値の保存と更新を行う。また,最小MSE記憶部125は,その最小値を保存する際には,そのMSE値を実現する補間位置グループ情報,補間フィルタインデックスを保存する。
 補間フィルタインデックスは,補間フィルタを示す識別番号であり,
(a) 事前定義された固定補間フィルタ,
(b) 符号化処理中に得られる適応補間フィルタ,
のどちらを用いるかを示す。
 補間フィルタ係数判定部12-1は,以上のように補間フィルタに関わる補間位置とフィルタ係数の取り得る組み合わせについて,補間位置ごとにMSEを算出した後,最小MSEを実現する組み合わせ,すなわち,
(1) 補間位置グループ情報,
(2) 補間フィルタインデックス,
(3) 補間フィルタ係数,
の情報を出力する。
 〔補間フィルタ係数判定部の構成例2〕
 図4は,補間フィルタ係数判定部の他の構成例2を示す図である。補間フィルタ係数判定部12-2が,前述した構成例1の補間フィルタ係数判定部12-1と異なるのは,次の点である。すなわち,構成例1では,補間対象位置グルーピング部123がグルーピングした補間位置のグループごとに,適応補間フィルタや固定補間フィルタなどの複数の補間フィルタの補間フィルタ係数の中からMSE算出部124によって予測誤差エネルギーが最小となる補間フィルタ係数を選出していた。これに対し,構成例2では,補間位置グループに応じて,重要度判定部126が補間位置グループの重要度を判定し,判定結果の重要度から補間フィルタとして用いる補間フィルタ係数を選出する。
 補間フィルタ係数判定部12-2において,補間フィルタ情報取得部121,補間位置参照確率計算部122,補間対象位置グルーピング部123の処理内容は,前述した構成例1の場合と同様である。
 重要度判定部126は,各補間位置グループについて,動きベクトルが指し示す小数画素位置の参照確率が高いほど重要度が高いものとし,重要度が高いほど,補間フィルタの形状,フィルタ長またはビット深度について,高精度となるものを割り当てる。すなわち,重要度判定部126は,重要度が高いほど,補間フィルタの形状が大きいもの,またはフィルタ長が長いもの,またはビット深度が大きいものを,その補間位置グループに用いる補間フィルタ係数として割り当てる。
 構成例2における補間フィルタ係数判定部12-2の出力は,小数精度の補間位置がどのグループに所属するか示す補間位置グループ情報と,どの補間フィルタ係数を用いるかを示す補間フィルタインデックスと,補間フィルタ係数であり,これが符号化の対象となる。なお,補間フィルタインデックスは省略することも可能である。
 〔補間フィルタ係数判定部の構成例3〕
 図5は,補間フィルタ係数判定部の他の構成例3を示す図である。構成例3の補間フィルタ係数判定部12-3は,前述した構成例1の補間フィルタ係数判定部12-1と,構成例2の補間フィルタ係数判定部12-2とを組み合わせた構成となっている。
 補間フィルタ係数判定部12-3において,補間フィルタ情報取得部121,補間位置参照確率計算部122,補間対象位置グルーピング部123の処理内容は,前述した構成例1,2の場合と同様である。
 重要度判定部126には,符号化処理中に得られる適応補間フィルタの補間フィルタ係数や,補間フィルタ情報取得部121が取得した事前に定義されている固定補間フィルタのフィルタ係数が入力される。また,重要度判定部126には,補間対象位置グルーピング部123が求めた補間位置グループ情報が入力される。
 重要度判定部126は,これらの入力から,各補間位置グループについて,動きベクトルが指し示す小数画素位置の参照確率が高いほど重要度が高いものとし,重要度が高いほど,補間フィルタの形状,フィルタ長またはビット深度について,高精度となる補間フィルタ係数をいくつか選出する。すなわち,重要度判定部126は,重要度が高いほど,補間フィルタの形状が大きく,またはフィルタ長が長く,またはビット深度が大きい補間フィルタ係数のセットを,入力した補間フィルタ係数の中から複数組選出する。
  MSE算出部124は,動き予測で求まる動きベクトルMV,復号信号(ローカルデコード画像),重要度判定部126で選出された補間フィルタ係数を入力し,補間位置グループごとに,動きベクトルMVが指し示す位置における補間画像を,復号画像の整数位置画素と補間フィルタ係数とを用いて生成し,原画像とのMSE(Mean Square Error:平均二乗誤差) を計算する。このMSEの計算は,構成例1で説明した計算と同様である。
 最小MSE記憶部125は,入力をMSE算出部124で得られるMSEとし,その値の中で最小となるものを保存する。
 補間フィルタ係数判定部12-3は,以上のように補間フィルタに関わる補間位置と重要度判定部126で選出された補間フィルタ係数の取り得る組み合わせについて,補間位置ごとにMSEを算出した後,最小MSEを実現する組み合わせ,すなわち,小数精度の補間位置がどのグループに所属するか示す補間位置グループ情報と,どの補間フィルタ係数を用いるかを示す補間フィルタインデックスと,補間フィルタ係数を出力する。
  〔符号化の処理フロー〕
 図6は,図1に示す映像符号化装置の処理フローチャートである。以下,図6に従って,映像符号化装置が1枚のフレームを符号化する場合の処理の流れを説明する。以下では,特に断りがない限り,輝度信号での処理を仮定する。
 まず,ステップS101にて,符号化処理に必要となる原画像のフレームを入力する。続いて,ステップS102にて,例えば,H.264/AVCに採用されている1次元6タップフィルタやDCTベース補間フィルタの1次元8タップ/12タップフィルタなど,符号化器に備わっている固定補間フィルタを事前定義補間フィルタとして,その補間フィルタを用いてフレーム全体の動きベクトル(MV)を導出する。ここで,固定補間フィルタに限らず,前フレームなどで算出された適応補間フィルタのフィルタを採用してもよい。
 続いて,ステップS103にて,ステップS102にて得られた動きベクトルを用いて,符号化対象フレームにおける適応補間フィルタの係数値を算出する。本ステップにおける補間フィルタの係数算出には,一般に知られている予測誤差エネルギー最小化方法(線形回帰)を用いる。
 続いて,ステップS104にて,ステップS102で求まった動きベクトルから補間対象位置ごとの参照確率を計算する。具体的には動きベクトルの指し示す回数を求め,その回数から全体の動きベクトルのうち,各補間対象位置が何個の動きベクトルから参照されたかを計算する。
 続いて,ステップS105にて,ステップS104で求まった参照確率結果から,補間位置のグループ分けを決定する。例えば,1/4画素精度まで求める場合,全部で15点の補間対象位置が存在する。このとき,上位3位までをグループ1,上位4位から7位までをグループ2,上位8位から11位までをグループ3,それ以外をグループ4というようにグループ分けを行う。
 続いて,ステップS106にて,ステップS105で求まったグルーピング結果から,図2,図4,図5で説明した補間フィルタ係数判定部12-1~12-3の処理を実行する。例えば,補間位置グループの重要度を設定し,使用する補間フィルタを決定する。グループ1は参照確率が高いため,フィルタの影響が大きいので重要度が高いと設定される。この場合,例えばタップ長の長い補間フィルタを用いたり,フィルタ係数値の量子化ビット深度を高く設定したりすることで,性能の高いフィルタを割り当てる。逆にグループ4は参照確率が低いため,使用する補間フィルタは性能が低くても影響は少ない。タップ長の短い補間フィルタを用いたり,量子化ビット深度を低く設定したりする。また,使用する補間フィルタ係数の候補が複数ある場合に,補間フィルタ係数の各候補を用いた場合のMSEを算出し,予測誤差エネルギーが最も小さくなる補間フィルタ係数を決定する。
 続いて,ステップS107にて,ステップS106で決定された補間フィルタ係数を用いて補間処理を行う。
 続いて,ステップS108にて,ステップS105で求まった補間位置グループ情報を符号化する。続いて,ステップS109にて,ステップS103で求まった補間フィルタ係数情報および補間フィルタインデックスなどの復号に必要な情報を符号化する。
 続いて,ステップS110にて,残りの符号化すべき情報,例えば,予測誤差信号(テクスチャ成分情報)や動きベクトルなどをすべて符号化する。
 続いて,ステップS111にて,符号化フレームが最終フレームに到達しているかどうかの判定を行う。もし処理フレームが最終フレームでなければ,次のフレームを処理するためにステップS101に戻る。もし処理フレームが最終フレームであった場合,符号化処理を終了する。
 なお,本実施形態で述べている動きベクトルの参照確率から補間位置のグループを変更し,グループごとに使用する補間フィルタを調整して符号化する機能は,輝度信号だけでなく,色差信号にも同様に適用可能である。
 〔映像復号装置の構成例〕
 図7は,本発明の一実施形態である映像復号装置の構成例を示す図である。
 映像復号装置20において,可変長復号部21は,符号化されたビットストリームを入力して,量子化変換係数,動きベクトル,補間位置グループ情報,補間フィルタインデックス,補間フィルタ係数などの復号を行う。補間フィルタ係数判定部22は,補間位置グループ情報と補間フィルタインデックスとから各補間位置に用いる補間フィルタ係数を決定する。
 予測信号生成部23における参照画像補間部231は,参照画像メモリ25に格納された復号済み参照画像に,補間フィルタ係数判定部22から受け取った補間フィルタ係数による補間フィルタを適用し,参照画像の小数精度画素の復元を行う。予測信号生成部23は,小数精度画素の復元が行われた参照画像から,復号対象ブロックの予測信号を生成する。
 予測復号部24は,可変長復号部21で復号した量子化係数の逆量子化,逆直交変換などを行い,それにより算出された予測誤差信号と,予測信号生成部23が生成した予測信号とを足し合わせて復号画像を生成し,出力画像として出力する。また,予測復号部24が復号した復号画像は,後の予測復号のために,参照画像メモリ25に格納する。このとき,デブロッキングフィルタやALF(Adaptive Loop Filter)などの符号化ノイズ除去のためのインループフィルタを施してから,格納してもよい。
  〔復号の処理フロー〕
 図8は,図7に示す映像復号装置の処理フローチャートである。以下,図8に従って,映像復号装置が1枚のフレームを復号する場合の処理の流れを説明する。以下では,特に断りがない限り,輝度信号での処理を仮定する。
 ステップS201にて,フレームヘッダ(ないしはスライスヘッダ)の情報を取得する。続いて,ステップS202にて,補間位置グループ情報を復号する。続いて,ステップS203にて,補間フィルタインデックス,補間フィルタ係数の復号を行う。
 続いて,ステップS204にて,復号に必要なその他の情報(例えば動きベクトルや予測誤差信号など)をすべて復号する。
 続いて,ステップS205にて,ステップS202で得られた補間位置グループ情報から,各補間位置に用いるための補間フィルタの判定を行い,補間位置グループごとに適用する補間フィルタを決定する。
 続いて,ステップS206にて,ステップS205にて求まった補間フィルタを用いて補間処理を行い,予測信号を生成する。続いて,ステップS207にて,ステップS204で得られた予測誤差信号と,ステップS206で得られた予測信号を足し合わせて,復号信号を生成する。
 続いて,ステップS208にて,復号すべきフレームがすべて復号されたかの判定を行い,すべて復号されていない場合には,ステップS201へ戻って次のフレームの復号に移り,すべて復号されている場合は復号処理を終了する。
 以上,輝度信号での説明を行ったが,本フローは色差信号にも同様に適用することができる。
 〔ソフトウェアプログラムを用いた場合の構成例〕
 以上の映像符号化,復号の処理は,コンピュータとソフトウェアプログラムとによっても実現することができ,そのプログラムをコンピュータ読み取り可能な記録媒体に記録することも,ネットワークを通して提供することも可能である。
  図9は,本発明の実施形態をコンピュータとソフトウェアプログラムとを用いて実施する場合のシステムの構成例を示している。
 本システムは,プログラムを実行するCPU(Central Processing Unit)50と,CPU50がアクセスするプログラムやデータが格納されるRAM(Random Access Memory)等のメモリ51と,符号化対象の映像信号,または復号画像の映像信号を記憶する映像信号記憶部52と,本発明の実施形態で説明した処理をCPU50に実行させるためのプログラムが格納されたプログラム記憶装置53と,符号化結果のビットストリームまたは復号対象のビットストリームを記憶する符号化ストリーム記憶部54とがバスで接続された構成になっている。
 プログラム記憶装置53は,本発明の実施形態を用いて映像信号を符号化するための映像符号化プログラム531,本発明の実施形態を用いて符号化ビットストリームを復号するための映像復号プログラム532のいずれかを格納している。プログラム記憶装置53は,これらのプログラムの双方を格納していてもよい。
 また,本システムが映像符号化装置として用いられる場合,映像符号化プログラム531がメモリ51にロードされ,CPU50は,メモリ51にロードされた映像符号化プログラム531の命令を逐次フェッチして実行し,映像信号記憶部52に格納されている映像信号を,本発明の実施形態で説明した手法により符号化して,符号化結果のビットストリームを符号化ストリーム記憶部54に格納する。または,ネットワークアダプタ等のインタフェースを介して,ビットストリームを外部装置に出力してもよい。
 また,本システムが映像復号装置として用いられる場合,映像復号プログラム532がメモリ51にロードされ,CPU50は,メモリ51にロードされた映像復号プログラム532の命令を逐次フェッチして実行し,符号化ストリーム記憶部54に格納されているビットストリームを,本発明の実施形態で説明した手法により復号して,復号結果の映像信号を映像信号記憶部52に格納する。または,外部の再生装置に復号結果の映像信号を出力する。
 以上,本発明の実施形態を図面を参照して説明してきたが,これら実施形態は本発明の例示に過ぎず,本発明がこれら実施形態に限定されるものでないことは明らかである。したがって,本発明の要旨を逸脱しない範囲で構成要素の追加,省略,置換,その他の変更を行うようにしても良い。すなわち,本発明は上述した説明に限定されるものではなく,以下に述べる請求の範囲の範囲のみに限定される。
 本発明は,例えば,動き補償画面間予測を用いた映像符号化および映像復号に利用可能である。本発明によれば,予測誤差エネルギーの低減による符号化効率改善が達成できる。
 10 映像符号化装置
 11 補間フィルタ係数算出部
 12,22 補間フィルタ係数判定部
 121 補間フィルタ情報取得部
 122 補間位置参照確率計算部
 123 補間対象位置グルーピング部
 124 MSE算出部
 125 最小MSE記憶部
 126 重要度判定部
 13,23 予測信号生成部
 131,231 参照画像補間部
 132 動き検出部
 14 予測符号化部
 15 可変長符号化部
 16 復号部
 17,25 参照画像メモリ
 20 映像復号装置
 21 可変長復号部
 24 予測復号部

Claims (8)

  1.  小数精度の動き補償を用いる映像符号化方法であって,
     動き探索を行って動きベクトルを取得するステップと,
     取得した動きベクトルが指し示す小数画素位置の参照確率を算出するステップと,
     算出された参照確率から小数画素位置である補間位置を複数のグループに分けるステップと,
     前記補間位置のグループごとに,複数の補間フィルタ係数の候補の中から補間予測画像の生成に用いる補間フィルタ係数を選出するステップと,
     前記補間位置のグループごとに,選出された補間フィルタ係数を用いて前記補間予測画像を生成し,前記補間予測画像から前記小数精度の動き補償による符号化を実施するステップと,
     前記補間位置のグループ分けを示す情報および各補間位置のグループにおいてどの補間フィルタ係数を用いるかを示す情報を符号化するステップと
     を有する映像符号化方法。
  2.  請求項1に記載の映像符号化方法において,
     前記補間フィルタ係数の選出では,前記複数の補間フィルタ係数の候補の中から予測誤差エネルギーが最小となる補間フィルタ係数を選出する
     映像符号化方法。
  3.  請求項1または請求項2に記載の映像符号化方法において,
     前記補間フィルタ係数の選出では,前記参照確率から,参照確率が大きいほど補間位置のグループの重要度が高いものとして重要度を設定し,設定された重要度から,重要度が高いほど補間フィルタの形状が大きい,またはフィルタ長が長い,またはビット深度が深い補間フィルタ係数またはその候補を選出する
     映像符号化方法。
  4.  小数精度の動き補償を用いる映像符号化装置であって,
     動き探索を行って動きベクトルを取得する動きベクトル取得部と,
     取得した動きベクトルが指し示す小数画素位置の参照確率を算出する参照確率算出部と,
     算出された参照確率から小数画素位置である補間位置を複数のグループに分けるグルーピング部と,
     前記補間位置のグループごとに,複数の補間フィルタ係数の候補の中から補間予測画像の生成に用いる補間フィルタ係数を選出する補間フィルタ係数選出部と,
     前記補間位置のグループごとに,選出された補間フィルタ係数を用いて前記補間予測画像を生成し,前記補間予測画像から前記小数精度の動き補償による符号化を実施する第1の符号化部と,
     前記補間位置のグループ分けを示す情報および各補間位置のグループにおいてどの補間フィルタ係数を用いるかを示す情報を符号化する第2の符号化部と
     を備える映像符号化装置。
  5.  小数精度の動き補償を用いる映像復号方法であって,
     小数画素位置である補間位置のグループ分けを示す情報および各補間位置のグループにおいてどの補間フィルタ係数を用いるかを示す情報を復号するステップと,
     前記復号された情報から,補間位置のグループごとに補間予測画像の生成に用いる補間フィルタ係数を決定するステップと,
     動きベクトルおよび予測残差信号を復号するステップと,
     前記決定された補間フィルタ係数により定まる補間フィルタを用いて前記補間予測画像を生成し,動き補償における予測信号を生成するステップと,
     復号した予測残差信号および生成された予測信号を用いて復号画像を生成するステップと
     を有する映像復号方法。
  6.  小数精度の動き補償を用いる映像復号装置であって,
     小数画素位置である補間位置のグループ分けを示す情報および各補間位置のグループにおいてどの補間フィルタ係数を用いるかを示す情報を復号する第1の復号部と,
     前記復号された情報から,補間位置のグループごとに補間予測画像の生成に用いる補間フィルタ係数を決定する補間フィルタ係数決定部と,
     動きベクトルおよび予測残差信号を復号する第2の復号部と,
     前記決定された補間フィルタ係数により定まる補間フィルタを用いて前記補間予測画像を生成し,動き補償における予測信号を生成する予測信号生成部と,
     復号した予測残差信号および生成された予測信号を用いて復号画像を生成する復号画像生成部と
     を備える映像復号装置。
  7.  請求項1,請求項2または請求項3に記載の映像符号化方法を,コンピュータに実行させるための映像符号化プログラム。
  8.  請求項5に記載の映像復号方法を,コンピュータに実行させるための映像復号プログラム。
PCT/JP2012/066010 2011-06-27 2012-06-22 映像符号化方法,装置,映像復号方法,装置およびそれらのプログラム WO2013002144A1 (ja)

Priority Applications (8)

Application Number Priority Date Filing Date Title
CA2837063A CA2837063A1 (en) 2011-06-27 2012-06-22 Method and apparatus for encoding video, method and apparatus for decoding video, and programs therefor
EP12804866.7A EP2704434B1 (en) 2011-06-27 2012-06-22 Method and device for encoding video image, method and device for decoding video image, and program therefor
CN201280026864.XA CN103583043B (zh) 2011-06-27 2012-06-22 影像编码方法、装置、影像解码方法、装置
BR112013031744A BR112013031744A2 (pt) 2011-06-27 2012-06-22 método e aparelho para codificação de vídeo, método e aparelho para decodificação de vídeo e programas para os mesmos
US14/123,054 US20140112391A1 (en) 2011-06-27 2012-06-22 Method and apparatus for encoding video, method and apparatus for decoding video, and programs therefor
KR1020137027950A KR101579106B1 (ko) 2011-06-27 2012-06-22 영상 부호화 방법, 장치, 영상 복호 방법, 장치 및 그 프로그램
RU2013154584/08A RU2573747C2 (ru) 2011-06-27 2012-06-22 Способ и устройство кодирования видео, способ и устройство декодирования видео и программы для них
ES12804866.7T ES2673958T3 (es) 2011-06-27 2012-06-22 Método y dispositivo para codificar imágenes de vídeo, método y dispositivo para decodificar imágenes de vídeo y programa de los mismos

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011-141724 2011-06-27
JP2011141724A JP5649523B2 (ja) 2011-06-27 2011-06-27 映像符号化方法,装置,映像復号方法,装置およびそれらのプログラム

Publications (1)

Publication Number Publication Date
WO2013002144A1 true WO2013002144A1 (ja) 2013-01-03

Family

ID=47424039

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/066010 WO2013002144A1 (ja) 2011-06-27 2012-06-22 映像符号化方法,装置,映像復号方法,装置およびそれらのプログラム

Country Status (11)

Country Link
US (1) US20140112391A1 (ja)
EP (1) EP2704434B1 (ja)
JP (1) JP5649523B2 (ja)
KR (1) KR101579106B1 (ja)
CN (1) CN103583043B (ja)
BR (1) BR112013031744A2 (ja)
CA (1) CA2837063A1 (ja)
ES (1) ES2673958T3 (ja)
RU (1) RU2573747C2 (ja)
TW (1) TWI502966B (ja)
WO (1) WO2013002144A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014078068A1 (en) * 2012-11-13 2014-05-22 Intel Corporation Content adaptive transform coding for next generation video
JP6700489B2 (ja) * 2016-09-30 2020-05-27 華為技術有限公司Huawei Technologies Co.,Ltd. インター予測を介する画像符号化および復号のための方法および装置
US10341659B2 (en) * 2016-10-05 2019-07-02 Qualcomm Incorporated Systems and methods of switching interpolation filters
KR20180056313A (ko) * 2016-11-18 2018-05-28 삼성전자주식회사 텍스처를 처리하는 방법 및 장치
US10455253B1 (en) * 2017-02-28 2019-10-22 Google Llc Single direction long interpolation filter
US11044490B2 (en) * 2017-09-28 2021-06-22 Sharp Kabushiki Kaisha Motion compensation filter apparatus, image decoding apparatus, and video coding apparatus
US10841610B2 (en) * 2017-10-23 2020-11-17 Avago Technologies International Sales Pte. Limited Block size dependent interpolation filter selection and mapping
JP7109558B2 (ja) * 2018-02-14 2022-07-29 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 適応型補間フィルタ
CN112997485A (zh) 2018-11-05 2021-06-18 北京字节跳动网络技术有限公司 用于具有细化的帧间预测的插值
KR20220052991A (ko) * 2019-09-04 2022-04-28 인터디지털 브이씨 홀딩스 프랑스 에스에이에스 스위칭가능한 보간 필터들

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011082725A (ja) 2009-10-06 2011-04-21 Nippon Telegr & Teleph Corp <Ntt> 映像符号化方法,映像符号化装置,映像復号方法,映像復号装置,映像符号化・復号方法,およびプログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
HU228615B1 (en) * 2002-01-14 2013-04-29 Nokia Corp Method of coding of digital video pictures
RU2305377C2 (ru) * 2003-05-20 2007-08-27 Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." Способ уменьшения искажения сжатого видеоизображения и устройство для его реализации
US20060133495A1 (en) * 2004-12-22 2006-06-22 Yan Ye Temporal error concealment for video communications
US7983341B2 (en) * 2005-02-24 2011-07-19 Ericsson Television Inc. Statistical content block matching scheme for pre-processing in encoding and transcoding
US8208564B2 (en) * 2005-06-24 2012-06-26 Ntt Docomo, Inc. Method and apparatus for video encoding and decoding using adaptive interpolation
US8428135B2 (en) * 2005-11-14 2013-04-23 Fastvdo, Llc Device and method for fast sub sample block-matching motion estimation in video encoders
KR100867995B1 (ko) * 2006-01-07 2008-11-10 한국전자통신연구원 동영상 데이터 인코딩/디코딩 방법 및 그 장치
ES2535314T3 (es) * 2006-12-28 2015-05-08 Nippon Telegraph And Telephone Corporation Método de codificación de vídeo, método de decodificación, dispositivo de los mismos, programa de los mismos, y medio de almacenamiento que contiene el programa
US8942505B2 (en) * 2007-01-09 2015-01-27 Telefonaktiebolaget L M Ericsson (Publ) Adaptive filter representation
KR101369746B1 (ko) * 2007-01-22 2014-03-07 삼성전자주식회사 적응적 보간 필터를 이용한 영상 부호화, 복호화 방법 및장치
EP1983759A1 (en) * 2007-04-19 2008-10-22 Matsushita Electric Industrial Co., Ltd. Estimation of separable adaptive interpolation filters for hybrid video coding
JP4739295B2 (ja) * 2007-08-27 2011-08-03 日本電信電話株式会社 映像信号生成装置、映像信号生成方法、映像信号生成プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体
US8462842B2 (en) * 2008-04-10 2013-06-11 Qualcomm, Incorporated Symmetry for interpolation filtering of sub-pixel positions in video coding
WO2010063881A1 (en) * 2008-12-03 2010-06-10 Nokia Corporation Flexible interpolation filter structures for video coding

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011082725A (ja) 2009-10-06 2011-04-21 Nippon Telegr & Teleph Corp <Ntt> 映像符号化方法,映像符号化装置,映像復号方法,映像復号装置,映像符号化・復号方法,およびプログラム

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
FAOUZI KOSSENTINI; NADER MAHDI; HSAN GUERMAZI; MOHAMMED ALI BEN AYED: "An Adaptive Interpolation Filtering Technique", JCTVC-E284, 5TH JCT-VC MEETING, March 2011 (2011-03-01)
KEN MCCANN; WOO-JIN HAN; II-KOO KIM; JUNG-HYE MIN; ELENA ALSHINA; ALEXANDER ALSHIN; TAMMY LEE; JIANLE CHEN; VADIM SEREGIN; SUNIL L: "Samsung's Response to the Call for Proposals on Video Compression Technology", JCTVC-A124 R2, April 2010 (2010-04-01), pages 12 - 14
KOSSENTINI,F. ET AL.: "An Adaptive Interpolation Filtering Technique", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC)OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 JCTVC-E284, 16 March 2011 (2011-03-16), XP030008790 *
MATSUO,S. ET AL.: "Region-based adaptive interpolation filter", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC)OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 JCTVC-E078, 10 March 2011 (2011-03-10), XP030008584 *
S. WITTMANN; T. WEDI: "Separable adaptive interpolation filter for video coding", PROC. ICIP2008, IEEE INTERNATIONAL CONFERENCE ON IMAGE PROCESSING, October 2008 (2008-10-01), pages 2500 - 2503, XP031374548
SAKAE OKUBO; SHINYA KADONO; YOSHIHIRO KIKUCHI; TERUHIKO SUZUKI: "H.264/AVC Textbook: 3rd Revised Edition", IMPRESS R&D, 2009, pages 119 - 123
SHOHEI MATSUO; YUKIHIRO BANDOH; SEISHI TAKAMURA; HIROHISA JOZAWA: "Enhanced region-based adaptive interpolation filter", PROC. PCS2010, IEEE PICTURE CODING SYMPOSIUM, December 2010 (2010-12-01), pages 526 - 529, XP031885224, DOI: doi:10.1109/PCS.2010.5702554
Y. VATIS; B. EDLER; D. T. NGUYEN; J. OSTERMANN: "Motion-and aliasing-compensated prediction using a two-dimensional non-separable adaptive Wiener interpolation filter", PROC. ICIP2005, IEEE INTERNATIONAL CONFERENCE ON IMAGE PROCESSING, September 2005 (2005-09-01), pages II 894 - 897

Also Published As

Publication number Publication date
CN103583043B (zh) 2017-02-22
RU2013154584A (ru) 2015-08-10
EP2704434A4 (en) 2014-11-26
EP2704434B1 (en) 2018-03-21
KR20140011482A (ko) 2014-01-28
JP2013009240A (ja) 2013-01-10
KR101579106B1 (ko) 2015-12-21
CN103583043A (zh) 2014-02-12
US20140112391A1 (en) 2014-04-24
TWI502966B (zh) 2015-10-01
BR112013031744A2 (pt) 2016-12-13
CA2837063A1 (en) 2013-01-03
EP2704434A1 (en) 2014-03-05
ES2673958T3 (es) 2018-06-26
RU2573747C2 (ru) 2016-01-27
TW201309029A (zh) 2013-02-16
JP5649523B2 (ja) 2015-01-07

Similar Documents

Publication Publication Date Title
JP5649523B2 (ja) 映像符号化方法,装置,映像復号方法,装置およびそれらのプログラム
JP5563403B2 (ja) 映像符号化方法,映像復号方法,映像符号化装置,映像復号装置およびそれらのプログラム
JP5485851B2 (ja) 映像符号化方法,映像復号方法,映像符号化装置,映像復号装置およびそれらのプログラム
TWI504241B (zh) 影像編碼方法、裝置、影像解碼方法、裝置及其程式產品
US9609318B2 (en) Video encoding method, video decoding method, video encoding apparatus, video decoding apparatus, and programs thereof
JP5762243B2 (ja) 映像符号化方法,装置,映像復号方法,装置およびそれらのプログラム
JP5488684B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
JP5488685B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
AU2015255215B2 (en) Image processing apparatus and method
JP6102977B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
JP6102978B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
JP5776804B2 (ja) 画像処理装置および方法、並びに記録媒体
JP5776803B2 (ja) 画像処理装置および方法、並びに記録媒体

Legal Events

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

Ref document number: 12804866

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20137027950

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2837063

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 14123054

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112013031744

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 2013154584

Country of ref document: RU

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 112013031744

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20131210