WO2021056433A1 - 预测值的确定方法、解码器以及计算机存储介质 - Google Patents
预测值的确定方法、解码器以及计算机存储介质 Download PDFInfo
- Publication number
- WO2021056433A1 WO2021056433A1 PCT/CN2019/108598 CN2019108598W WO2021056433A1 WO 2021056433 A1 WO2021056433 A1 WO 2021056433A1 CN 2019108598 W CN2019108598 W CN 2019108598W WO 2021056433 A1 WO2021056433 A1 WO 2021056433A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- template
- current block
- matching
- block
- reference area
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- 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/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- 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/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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- 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/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/523—Motion estimation or motion compensation with sub-pixel accuracy
Definitions
- the first template wherein the first template contains the adjacent reconstructed pixels of the current block; the reference area of the current block is determined; in the reference area, the first template is determined according to the processing parameters of the reference template.
- a template matching template wherein the reference template processing parameter is a parameter included in the decoding parameter and used to construct a matching template; according to the matching template, the matching block of the current block is determined; according to the matching Block, determine the predicted value of the current block.
- FIG. 3 is a schematic flowchart of an optional method for determining a predicted value according to an embodiment of the application
- the reconstructed pixels adjacent and left adjacent to the current block are used as the pixels of the first template.
- the decoder will include all or part of the pixels that have been reconstructed in the image where the current block is located before decoding the current block, and determine it as the reference area; in another possibility In the embodiment, the decoder determines all or part of the pixels that have been reconstructed in images other than the image where the current block is located as the reference area.
- the decoder obtains the rotation angle, and rotates the candidate template around the vertices of the candidate template according to the rotation angle, and the rotated
- the reconstructed block beyond the reference area in the reconstructed block is intercepted, the intercepted reconstructed block is determined as a rotatable reconstruction block, and the pixel matrix of the rotatable reconstructed block is obtained, and then the pixel matrix of the rotatable reconstructed block is used to update the reconstructed block Pixel matrix.
- Fig. 4 is a schematic diagram of the arrangement of templates in an optional rotating frame provided by an embodiment of the application.
- B is the current block
- b is the template of B
- the pixel matrix of is P( ⁇ 0 ).
- the rotated reconstruction block P and the template p of P just do not exceed the reference area, the upper row and the left row of P If the rotation will exceed the reference area, therefore, the height of the reconstruction block from the upper boundary downward is a reconstruction block area, and the height from the left boundary to the right is a reconstruction block area, and the remaining area after the interception is determined to be available Rotate the reconstruction block, and update the reconstruction block with the rotatable reconstruction block.
- the reference template processing parameter may indicate the rotation angle of the template, for example, a clockwise rotation angle or a counterclockwise rotation angle, which is specifically selected according to actual conditions, and is not specifically limited in this embodiment.
- FIG. 5 is a schematic flowchart of another optional method for determining a predicted value provided in an embodiment of this application.
- the decoder determines the matching template of the first template in the reference area according to the reference template processing parameters, including:
- the decoder constructs one or more candidate templates with the same shape as the first template according to the rotation angle.
- the decoder uses a preset first filter to filter one or more reconstructed pixels in the reference area according to the rotation angle to obtain pixel values in the candidate template, where the first filter is a low-pass filter or an interpolation
- the filter is specifically selected according to actual conditions, and this embodiment does not make specific limitations.
- FIG. 6 is a schematic diagram of the arrangement of another optional rotating frame template provided by an embodiment of the application.
- B is the current block
- the vertex coordinates of B are ⁇ 0
- P is For the image block matching the current block
- the vertex coordinate of P is ⁇
- the pixel matrix of B is denoted as P( ⁇ 0 ).
- FIG. 7 is an embodiment of the application An optional structural schematic diagram of the pixels of the template in the rotated frame is provided, as shown in Figure 7, the dotted line is the template p before rotation, and the solid line is the template p after rotation, on the template p before rotation Obtain the pixel value f(a) of point a, the pixel value f(b) of point b, the pixel value f(c) of point c, and the pixel value f(d) of point d, and obtain the value of two adjacent pixels The pixel value of the point p (the rotated point b) is calculated by using the bilinear interpolation method.
- Fig. 8 is a schematic structural diagram of some pixels of the template in the rotated frame in Fig. 7 provided by an embodiment of the application, such as
- the decoder calculates the matching error between one or more candidate templates and the first template, and uses the candidate template with the smallest matching error as the matching template, where one or more candidate matching positions are preset in the reference area
- One or more pixel positions of the pixel position, the pixel position is an integer pixel position or a fractional pixel position.
- the decoder calculates the matching error between one or more candidate templates and the first template according to the matching error criterion, where the matching error criterion includes at least one of the following: sum of square errors, mean square error, sum of absolute errors, The average absolute error and structural similarity are specifically selected according to actual conditions, and this embodiment does not make specific limitations.
- the decoder determines the candidate template corresponding to the first template, and rotates the candidate template according to the preset rotation angle in the reference area.
- the template is rotated. Since the pixels in the template are reduced compared with the pixel points of the image block, the rotation of the template can reduce the calculation of the pixel value of each pixel in the template after the rotation. the amount.
- the process of the decoder to determine the matching block of the current block according to the matching template is specifically as follows: the decoder uses the matching pixels in the area indicated by the matching template and having the same size as the current block as pixels in the matching block. ; Wherein, the relative position between the matching template and the matching block is the same as the relative position between the current block and the first template.
- the decoder uses a preset second filter to filter one or more pixels in the reference area to obtain pixel values in the matching block, where the second filter is a low-pass filter or
- the interpolation filter is specifically selected according to actual conditions, and this embodiment does not make specific limitations.
- S106 Determine the predicted value of the current block according to the matched block.
- the decoder uses the matching block as the predicted value of the current block; or, the decoder uses a linear model to weight the pixel values in the matching block to obtain the predicted value of the current block, where the linear model parameters are as follows One: the preset parameters, the parameters derived according to the preset rules, and the linear model parameters included in the decoding parameters are specifically selected according to actual conditions, and this embodiment does not make specific limitations.
- the decoder parses the bitstream to obtain the prediction residual of the current block; after that, the decoder obtains the current block based on the predicted value and prediction residual of the current block. The reconstructed value of the pixels in the block.
- the pixel matrix provided in this application may be a pixel matrix of chrominance values or a pixel matrix of luminance values, which is not specifically limited in the embodiment of the present application.
- the rotating template mode from the code stream, and in the rotating template mode, obtaining the first template of the current block and determining the reference area of the current block, and in the reference area, according to the reference template processing parameters, determine The matching template of the first template, and then determine the matching block that matches the current block according to the matching template, and then determine the predicted value of the current block.
- more templates can be obtained by processing the template of the image block, and more
- the template is matched with the template of the current block, so that the matching block that best matches the current block can be found, which is conducive to more accurately determine the matching block that best matches the current block, and then determine the predicted value of the current block.
- the calculation method of the rotating template can reduce the amount of calculation in the coding and decoding, thereby improving the coding and decoding efficiency.
- FIG. 9 is a schematic flowchart of an optional method for determining a predicted value provided by an embodiment of the application, refer to FIG. 9 As shown, the method for determining the predicted value may include:
- the encoder obtains the data correlation between the current block and the first template of the current block, where the first template contains adjacent reconstructed pixels of the current block.
- the encoder obtains the adjacent reconstructed pixels of the current block and determines the adjacent reconstructed pixels of the current block as the first template of the current block. After that, the encoder obtains the data correlation between the current block and the first template of the current block.
- FIG. 10 it is a schematic diagram of the structure between the current block and the first template of the current block, and the encoder obtains the data correlation between the current block and the first template of the current block.
- the encoder determines the reference area of the current block.
- the encoder determines the matching block of the current block according to the matching template.
- the encoder determines the prediction value of the current block according to the matched block.
- the encoder determines the prediction residual of the current block according to the predicted value of the current block and the acquired pixel value corresponding to the original image, and then calculates the prediction of the current block.
- the residual and the decoding parameters indicating the use of the rotation template mode are written into the code stream, so that the decoder uses the same prediction value determination method as the encoder provided in this embodiment of the application to determine the prediction value of the current block.
- FIG. 11 is a schematic flowchart of an example of an optional method for determining a predicted value provided by an embodiment of the application. As shown in FIG. 11, the method for determining a predicted value may include:
- the encoder uses an intra-frame rotation template matching method to rotate the template of the reconstructed block; the encoder also uses an intra-frame angle prediction method;
- the encoder After the encoder rotates the template of the reconstructed block, the encoder will traverse all the templates of the reconstructed block (obtained from the reconstructed block) that are the same size as the current block in the search range, and calculate the difference with the current template for each rotated template.
- the square of the difference of the template of the block is rotated according to the initial value of 30 degrees, the step length is 30 degrees, and the angle value less than 360 degrees is the rotation angle to obtain the rotated template, and calculate the value of each rotation angle.
- the encoder selects a template corresponding to the minimum sum of the square of the difference, and uses the pixel value of the reconstruction block to which the template belongs as the predicted value of the current block;
- the encoder obtains the prediction residual according to the obtained prediction value, and obtains the cost cost1 of the intra-frame rotation template matching method according to quantization, change, and entropy coding; the encoder uses angle prediction, and also obtains a cost cost2;
- S405 The encoder compares the size of cost1 and cost2. If cost1 is small, it will save the prediction information obtained by rotating template matching, and if cost2 is small, it will save the prediction information obtained by traditional angle prediction.
- FIG. 12 is a schematic structural diagram 1 of a decoder 1 provided by an embodiment of this application.
- the decoder 1 may include:
- the parsing module 10 is configured to parse the code stream to obtain the decoding parameters of the current block, where the decoding parameters include parameters used in the process of decoding the current block;
- the first obtaining module 11 is configured to obtain a first template of the current block when the decoding parameter indicates that the current block uses the rotation template mode, wherein the first template contains the neighbors of the current block Reconstruction pixel
- the first determining module 12 is configured to determine a reference area of the current block; in the reference area, determine a matching template of the first template according to a reference template processing parameter, wherein the reference template processing parameter is all The parameters included in the decoding parameters and used to construct the matching template; the matching block of the current block is determined according to the matching template; the predicted value of the current block is determined according to the matching block.
- the first acquisition module 11 is specifically configured to determine, according to the preset shape of the first template, the pixels that are included in the shape range among the reconstructed pixels adjacent to the current block As the pixels in the first template.
- the first determining module 12 is specifically configured to determine all or part of the pixels that have been reconstructed in the image where the current block is located before decoding the current block as the reference area.
- the first determining module 12 is specifically configured to determine all or part of the pixels that have been reconstructed in images other than the image where the current block is located as the reference area.
- the reference template processing parameter indicates the rotation angle of the template.
- the first determination module further includes: a first construction sub-module and a first calculation sub-module;
- the first calculation sub-module is configured to calculate the matching error between the one or more candidate templates and the first template, and use the candidate template with the smallest matching error as the matching template.
- the one or more candidate matching positions are preset one or more pixel positions in the reference area, wherein the pixel positions are integer pixel positions or fractional pixel positions.
- the first construction sub-module is specifically configured to use the candidate matching position as a vertex, and after rotating a shape with the same size as the first template around the candidate matching point by the rotation angle, The pixels included in the range of the shape serve as the candidate template.
- the first determining module 12 further includes a first filtering sub-module
- the first filtering sub-module is configured to use a preset first filter to perform filtering processing on one or more reconstructed pixels in the reference area according to the rotation angle to obtain pixel values in the candidate template .
- the first determining module 12 is further configured to use the matching pixels contained in the area with the same size as the current block at the position indicated by the matching template as the pixels in the matching block; wherein, The relative position between the matching template and the matching block is the same as the relative position between the current block and the first template.
- the first filtering submodule is further configured to use a preset second filter to perform filtering processing on one or more pixels in the reference area to obtain pixel values in the matching block.
- the matching error criterion includes at least one of the following: the sum of square errors, the mean square error, the sum of absolute errors, the average absolute error, and the structural similarity.
- the parsing module 10 is also used for parsing the code stream to obtain the prediction residual of the current block
- the first determining module 12 is further configured to obtain the reconstructed value of the pixel in the current block according to the prediction value and the prediction residual of the current block.
- a "unit” may be a part of a circuit, a part of a processor, a part of a program or software, etc., of course, it may also be a module, or it may also be non-modular.
- the first storage medium 15 relies on the first processor 14 to perform operations through the first communication bus 16.
- the method for determining the predicted value corresponding to the above-mentioned decoder is executed.
- An embodiment of the present application provides a first computer storage medium that stores executable instructions.
- the executable instructions are executed by one or more processors, the first processor executes one or more implementations described above.
- FIG. 14 is a first structural diagram of an encoder 2 provided by an embodiment of this application.
- the encoder 2 may include:
- the second determining module further includes: a second construction sub-module and a second calculation sub-module;
- the second filter is a low-pass filter or an interpolation filter.
- the rotation angle is less than 360 degrees.
- the encoder 2 further includes: a writing module
- a "unit” may be a part of a circuit, a part of a processor, a part of a program or software, etc., of course, it may also be a module, or it may also be non-modular.
- the integrated unit is implemented in the form of a software function module and is not sold or used as an independent product, it can be stored in a computer readable storage medium.
- the technical solution of this embodiment is essentially or It is said that the part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product.
- the computer software product is stored in a storage medium and includes several instructions to enable a computer device (which can It is a personal computer, a server, or a network device, etc.) or a processor (processor) that executes all or part of the steps of the method described in this embodiment.
- the aforementioned storage media include: U disk, mobile hard disk, read only memory (Read Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disk and other media that can store program codes.
- FIG. 15 is a second structural diagram of an encoder provided by an embodiment of the application. As shown in FIG. 15, an encoder 2 is provided in an embodiment of the present application.
- It includes a second processor 23 and a second storage medium 24 storing executable instructions of the second processor 23.
- the second storage medium 24 relies on the second processor 23 to perform operations through the second communication bus 25.
- the memory in the embodiments of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memory.
- the non-volatile memory can be read-only memory (Read-Only Memory, ROM), programmable read-only memory (Programmable ROM, PROM), erasable programmable read-only memory (Erasable PROM, EPROM), and electrically available Erase programmable read-only memory (Electrically EPROM, EEPROM) or flash memory.
- the volatile memory may be random access memory (Random Access Memory, RAM), which is used as an external cache.
- RAM static random access memory
- DRAM dynamic random access memory
- DRAM synchronous dynamic random access memory
- DDRSDRAM Double Data Rate Synchronous Dynamic Random Access Memory
- Enhanced SDRAM, ESDRAM Synchronous Link Dynamic Random Access Memory
- Synchlink DRAM Synchronous Link Dynamic Random Access Memory
- DRRAM Direct Rambus RAM
- the processor may be an integrated circuit chip with signal processing capabilities.
- each step of the above method can be completed by an integrated logic circuit of hardware in the processor or instructions in the form of software.
- the above-mentioned processor may be a general-purpose processor, a digital signal processor (Digital Signal Processor, DSP), an application specific integrated circuit (ASIC), a ready-made programmable gate array (Field Programmable Gate Array, FPGA) or other Programming logic devices, discrete gates or transistor logic devices, discrete hardware components.
- DSP Digital Signal Processor
- ASIC application specific integrated circuit
- FPGA ready-made programmable gate array
- the methods, steps, and logical block diagrams disclosed in the embodiments of the present application can be implemented or executed.
- the general-purpose processor may be a microprocessor or the processor may also be any conventional processor or the like.
- the steps of the method disclosed in the embodiments of the present application can be directly embodied as being executed and completed by a hardware decoding processor, or executed and completed by a combination of hardware and software modules in the decoding processor.
- the software module can be located in a mature storage medium in the field, such as random access memory, flash memory, read-only memory, programmable read-only memory, or electrically erasable programmable memory, registers.
- the storage medium is located in the memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.
- the embodiments described herein can be implemented by hardware, software, firmware, middleware, microcode, or a combination thereof.
- the processing unit can be implemented in one or more application specific integrated circuits (ASIC), digital signal processor (Digital Signal Processing, DSP), digital signal processing equipment (DSP Device, DSPD), programmable Logic Device (Programmable Logic Device, PLD), Field-Programmable Gate Array (Field-Programmable Gate Array, FPGA), general-purpose processors, controllers, microcontrollers, microprocessors, and others for performing the functions described in this application Electronic unit or its combination.
- ASIC application specific integrated circuits
- DSP Digital Signal Processing
- DSP Device digital signal processing equipment
- PLD programmable Logic Device
- PLD Field-Programmable Gate Array
- FPGA Field-Programmable Gate Array
- the technical solution of this application essentially or the part that contributes to the existing technology can be embodied in the form of a software product, and the computer software product is stored in a storage medium (such as ROM/RAM, magnetic disk, The optical disc) includes several instructions to enable a terminal (which may be a mobile phone, a computer, a server, or a network device, etc.) to execute the method described in each embodiment of the present application.
- a terminal which may be a mobile phone, a computer, a server, or a network device, etc.
- the code stream is parsed to obtain the decoding parameters of the current block, where the decoding parameters include the parameters used in the process of decoding the current block; when the decoding parameters indicate that the current block uses the rotation template mode, the first template of the current block is obtained , Where the first template contains the adjacent reconstructed pixels of the current block; the reference area of the current block is determined; in the reference area, the matching template of the first template is determined according to the reference template processing parameters, where the reference template processing parameter is decoding
- the parameters included in the parameters are used to construct the matching template; according to the matching template, the matching block of the current block is determined; according to the matching block, the prediction value of the current block is determined; that is, in the embodiment of the present application, the Obtain the rotating template mode in the rotating template mode, and in the rotating template mode, obtain the first template of the current block and determine the reference area of the current block, and in the reference area, determine the matching template of the first template according to the reference template processing parameters, and then according to The matching template determines the matching
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
Claims (44)
- 一种预测值的确定方法,其中,所述方法应用于解码器中,所述方法包括:解析码流,获得当前块的解码参数,其中,所述解码参数包含解码所述当前块过程中使用的参数;当所述解码参数指示所述当前块使用旋转模板模式时,获取所述当前块的第一模板,其中,所述第一模板中包含所述当前块的相邻重建像素;确定所述当前块的参考区域;在所述参考区域中,根据参考模板处理参数,确定所述第一模板的匹配模板,其中,所述参考模板处理参数是所述解码参数中包含的、用于构造匹配模板的参数;根据所述匹配模板,确定所述当前块的匹配块;根据所述匹配块,确定所述当前块的预测值。
- 根据权利要求1所述的方法,所述获取所述当前块的第一模板,包括:根据预设的所述第一模板的形状,将与所述当前块相邻的重建像素中,包含在所述形状范围内的像素作为所述第一模板中的像素。
- 根据权利要求1所述的方法,所述确定所述当前块的参考区域,包括:将包含在解码所述当前块之前,所述当前块所在图像中已经重建的全部或部分像素,确定为所述参考区域。
- 根据权利要求1所述的方法,所述确定所述当前块的参考区域,包括:将所述当前块所在图像之外其他图像中已经重建的全部或部分像素,确定为所述参考区域。
- 根据权利要求1所述的方法,所述参考模板处理参数指示模板的旋转角度。
- 根据权利要求5所述的方法,所述在所述参考区域中,根据参考模板处理参数,确定所述第一模板的匹配模板,包括:对于所述参考区域中的一个或多个候选匹配位置,根据所述旋转角度,构造与所述第一模板形状相同的一个或多个候选模板;计算所述一个或多个候选模板与所述第一模板之间的匹配误差,将匹配误差最小的候选模板作为所述匹配模板。
- 根据权利要求6所述的方法,所述一个或多个候选匹配位置是在所述参考区域中的预先设定的一个或多个像素位置,其中,所述像素位置是整数像素位置或分数像素位置。
- 根据权利要求6所述的方法,所述根据所述旋转角度,构造与所述第一模板形状相同的一个或多个候选模板,包括:以所述候选匹配位置为顶点,将与所述第一模板相同尺寸的形状绕所述候选匹配点旋转过所述旋转角度后,包含在该形状的范围内的像素作为所述候选模板。
- 根据权利要求8所述的方法,所述方法还包括:根据所述旋转角度,使用预设的第一滤波器对所述参考区域中的一个或多个重建像素进行滤波处理,得到所述候选模板中的像素值。
- 根据权利要求1所述的方法,所述根据所述匹配模板,确定所述当前块的匹配块,包括:将位于所述匹配模板指示位置的、与所述当前块大小相同区域内包含的匹配像素作为所述匹配块中的像素;其中,所述匹配模板和所述匹配块之间的相对位置与所述当前块和所述第一模板之间的相对位置相同。
- 根据权利要求10所述的方法,所述方法还包括:使用预设的第二滤波器对所述参考区域内的一个或多个像素进行滤波处理,得到所述匹配块中的像素值。
- 根据权利要求9所述的方法,所述方法还包括:所述第一滤波器是低通滤波器或插值滤波器。
- 根据权利要求11所述的方法,所述方法还包括:所述第二滤波器是低通滤波器或插值滤波器。
- 根据权利要求5或6所述的方法,包括:所述参考模板处理参数中包含初始角度值和间隔步长值;将以所述初始角度为初始值与以所述间隔步长表示的间隔角度的和值作为所述旋转角度。
- 根据权利要求5或6所述的方法,包括:所述旋转角度小于360度。
- 根据权利要求6所述的方法,所述计算所述一个或多个候选模板与所述第一模板之间的匹配误差,包括:根据匹配误差准则,计算所述一个或多个候选模板与所述第一模板之间的匹配误差。
- 根据权利要求16所述的方法,包括:所述匹配误差准则包括以下至少之一:平方误差和、均方误差、绝对误差和、平均绝对误差、结构相似性。
- 根据权利要求1所述的方法,所述根据所述匹配块,确定所述当前块的预测值,包括:将所述匹配块作为所述当前块的预测值;或者,使用线性模型对所述匹配块中的像素取值进行加权处理,得到所述当前块的预测值,其中,所述线性模型参数是以下之一:预设参数、按照预设规则推导得到的参数、所述解码参数中包含的线性模型参数。
- 根据权利要求1所述的方法,所述根据所述匹配块,确定所述当前块的预测值之后,还包括:解析码流,获得所述当前块的预测残差;根据所述当前块的预测值和预测残差,得到所述当前块中像素的重建值。
- 一种预测值的确定方法,其中,所述方法应用于编码器中,所述方法包括:获取当前块与所述当前块的第一模板之间的数据相关性,其中,所述第一模板中包含所述当前块的相邻重建像素;当所述数据相关性大于或者等于预设阈值时,使用旋转模板模式;在所述旋转模板模式下,确定所述当前块的参考区域;在所述参考区域中,根据参考模板处理参数,确定所述第一模板的匹配模板;根据所述匹配模板,确定所述当前块的匹配块;根据所述匹配块,确定所述当前块的预测值。
- 根据权利要求20所述的方法,所述获取所述当前块的第一模板,包括:根据预设的所述第一模板的形状,将与所述当前块相邻的重建像素中,包含在所述形状范围内的像素作为所述第一模板中的像素。
- 根据权利要求20所述的方法,所述确定所述当前块的参考区域,包括:将所述当前块所在图像中已经重建的全部或部分像素,确定为所述参考区域。
- 根据权利要求20所述的方法,所述确定所述当前块的参考区域,包括:将所述当前块所在图像之外其他图像中已经重建的全部或部分像素,确定为所述参考区域。
- 根据权利要求20所述的方法,所述参考模板处理参数指示模板的旋转角度。
- 根据权利要求24所述的方法,所述在所述参考区域中,根据参考模板处理参数,确定所述第一模板的匹配模板,包括:对于所述参考区域中的一个或多个候选匹配位置,根据所述旋转角度,构造与所述第一模板形状相同的一个或多个候选模板;计算所述一个或多个候选模板与所述第一模板之间的匹配误差,将匹配误差最小的候选模板作为所述匹配模板。
- 根据权利要求25所述的方法,所述一个或多个候选匹配位置是在所述参考区域中的预先设定的一个或多个像素位置,其中,所述像素位置是整数像素位置或分数像素位置。
- 根据权利要求26所述的方法,所述根据所述旋转角度,构造与所述第一模板形状相同的一个或多个候选模板,包括:以所述候选匹配位置为顶点,将与所述第一模板相同尺寸的形状绕所述候选匹配点旋转过所述旋转角度后,包含在该形状的范围内的像素作为所述候选模板。
- 根据权利要求27所述的方法,所述方法还包括:根据所述旋转角度,使用预设的第一滤波器对所述参考区域中的一个或多个重建像素进行滤波处理,得到所述候选模板中的像素值。
- 根据权利要求20所述的方法,所述根据所述匹配模板,确定所述当前块的匹配块,包括:将位于所述匹配模板指示位置的、与所述当前块大小相同区域内包含的匹配像素作为所述匹配块中的像素;其中,所述匹配模板和所述匹配块之间的相对位置与所述当前块和所述第一模板之间的相对位置相同。
- 根据权利要求29所述的方法,所述方法还包括:使用预设的第二滤波器对所述参考区域内的一个或多个像素进行滤波处理,得到所述匹配块中的像素值。
- 根据权利要求28所述的方法,所述方法还包括:所述第一滤波器是低通滤波器或插值滤波器。
- 根据权利要求30所述的方法,所述方法还包括:所述第二滤波器是低通滤波器或插值滤波器。
- 根据权利要求24或25所述的方法,包括:所述参考模板处理参数中包含初始角度值和间隔步长值;将以所述初始角度为初始值与以所述间隔步长表示的间隔角度的和值作为所述旋转角度。
- 根据权利要求24或25所述的方法,包括:所述旋转角度小于360度。
- 根据权利要求25所述的方法,所述计算所述一个或多个候选模板与所述第一模板之间的匹配误差,包括:根据匹配误差准则,计算所述一个或多个候选模板与所述第一模板之间的匹配误差。
- 根据权利要求35所述的方法,包括:所述匹配误差准则包括以下至少之一:平方误差和、均方误差、绝对误差和、平均绝对误差、结构相似性。
- 根据权利要求20所述的方法,所述根据所述匹配块,确定所述当前块的预测值,包括:将所述匹配块作为所述当前块的预测值;或者,使用线性模型对所述匹配块中的像素取值进行加权处理,得到所述当前块的预测值,其中,所述线性模型参数是以下之一:预设参数、按照预设规则推导得到的参数。
- 根据权利要求20所述的方法,所述根据所述匹配块,确定所述当前块的预测值之后,所述方法还包括:将所述当前块的预测残差和指示使用所述旋转模板模式的解码参数写入码流中,所述预测残差根据所述当前块的预测值与获取到的与原始图像相对应的像素值确定的。
- 一种解码器,其中,所述解码器包括:解析模块,用于解析码流,获得当前块的解码参数,其中,所述解码参数包含解码所述当前块过程中使用的参数;第一获取模块,用于当所述解码参数指示所述当前块使用旋转模板模式时,获取所述当前块的第一模板,其中,所述第一模板中包含所述当前块的相邻重建像素;第一确定模块,用于确定所述当前块的参考区域;在所述参考区域中,根据参考模板处理参数,确定所述第一模板的匹配模板,其中,所述参考模板处理参数是所述解码参数中包含的、用于构造匹配模板的参数;根据所述匹配模板,确定所述当前块的匹配块;根据所述匹配块,确定所述当前块的预测值。
- 一种解码器,其中,所述解码器包括:处理器以及存储有所述处理器可执行指令的存储介质,所述存储介质通过通信总线依赖所述处理器执行操作,当所述指令被所述处理器执行时,具体步骤为:解析码流,获得当前块的解码参数,其中,所述解码参数包含解码所述当前块过程中使用的参数;当所述解码参数指示所述当前块使用旋转模板模式时,获取所述当前块的第一模板,其中,所述第一模板中包含所述当前块的相邻重建像素;确定所述当前块的参考区域;在所述参考区域中,根据参考模板处理参数,确定所述第一模板的匹配模板,其中,所述参考模板处理参数是所述解码参数中包含的、用于构造匹配模板的参数;根据所述匹配模板,确定所述当前块的匹配块;根据所述匹配块,确定所述当前块的预测值。
- 一种第一计算机存储介质,其中,存储有可执行指令,当所述可执行指令被一个或多个处理器执行的时候,所述处理器执行所述的权利要求1至19任一项所述的预测值的确定方法。
- 一种编码器,其中,所述编码器包括:第二获取模块,用于获取当前块与所述当前块的第一模板之间的数据相关性,其中,所述第一模板中包含所述当前块的相邻重建像素;第二确定模块,用于当所述数据相关性大于或者等于预设阈值时,使用旋转模板模式;在所述旋转模板模式下,确定所述当前块的参考区域;在所述参考区域中,根据参考模板处理参数,确定所述第一模板的匹配模板;根据所述匹配模板,确定所述当前块的匹配块;根据所述匹配块,确定所述当前块的预测值。
- 一种编码器,其中,所述编码器包括:第二处理器以及存储有所述第二处理器可执行指令的存储介质,所述存储介质通过通信总线依赖所述第二处理器执行操作,当所述指令被所述第二处理器执行时,具体步骤为:获取当前块与所述当前块的第一模板之间的数据相关性,其中,所述第一模板中包含所述当前块的相邻重建像素;当所述数据相关性大于或者等于预设阈值时,使用旋转 模板模式;在所述旋转模板模式下,确定所述当前块的参考区域;在所述参考区域中,根据参考模板处理参数,确定所述第一模板的匹配模板;根据所述匹配模板,确定所述当前块的匹配块;根据所述匹配块,确定所述当前块的预测值。
- 一种第二计算机存储介质,其中,存储有可执行指令,当所述可执行指令被一个或多个处理器执行的时候,所述处理器执行所述的权利要求20至38任一项所述的预测值的确定方法。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201980100394.9A CN114424533A (zh) | 2019-09-27 | 2019-09-27 | 预测值的确定方法、解码器以及计算机存储介质 |
EP19947394.3A EP4037314A4 (en) | 2019-09-27 | 2019-09-27 | PREDICTION VALUE DETERMINATION METHOD, DECODER AND COMPUTER STORAGE MEDIA |
KR1020227013644A KR20220065059A (ko) | 2019-09-27 | 2019-09-27 | 예측값의 확정 방법, 디코더 및 컴퓨터 저장 매체 |
JP2022519101A JP7471399B2 (ja) | 2019-09-27 | 2019-09-27 | 予測値の確定方法、復号器及びコンピュータ記憶媒体 |
PCT/CN2019/108598 WO2021056433A1 (zh) | 2019-09-27 | 2019-09-27 | 预测值的确定方法、解码器以及计算机存储介质 |
US17/704,870 US20220217335A1 (en) | 2019-09-27 | 2022-03-25 | Prediction value determination method and decoder |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/108598 WO2021056433A1 (zh) | 2019-09-27 | 2019-09-27 | 预测值的确定方法、解码器以及计算机存储介质 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/704,870 Continuation US20220217335A1 (en) | 2019-09-27 | 2022-03-25 | Prediction value determination method and decoder |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021056433A1 true WO2021056433A1 (zh) | 2021-04-01 |
Family
ID=75166301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2019/108598 WO2021056433A1 (zh) | 2019-09-27 | 2019-09-27 | 预测值的确定方法、解码器以及计算机存储介质 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20220217335A1 (zh) |
EP (1) | EP4037314A4 (zh) |
JP (1) | JP7471399B2 (zh) |
KR (1) | KR20220065059A (zh) |
CN (1) | CN114424533A (zh) |
WO (1) | WO2021056433A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4346200A1 (en) * | 2022-09-27 | 2024-04-03 | Beijing Xiaomi Mobile Software Co., Ltd. | Encoding/decoding video picture data |
EP4346201A1 (en) * | 2022-09-27 | 2024-04-03 | Beijing Xiaomi Mobile Software Co., Ltd. | Encoding/decoding video picture data |
CN116702571B (zh) * | 2023-08-07 | 2023-10-20 | 中国空气动力研究与发展中心计算空气动力研究所 | 基于多重光滑度量因子的数值模拟方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104363449A (zh) * | 2014-10-31 | 2015-02-18 | 华为技术有限公司 | 图像预测方法及相关装置 |
CN105338351A (zh) * | 2014-05-28 | 2016-02-17 | 华为技术有限公司 | 基于模板匹配的帧内预测编、解码、阵列扫描方法及装置 |
CN106464870A (zh) * | 2014-03-31 | 2017-02-22 | 英迪股份有限公司 | 用于对帧内画面进行编码和解码的基于模板匹配的方法和装置 |
US20170339404A1 (en) * | 2016-05-17 | 2017-11-23 | Arris Enterprises Llc | Template matching for jvet intra prediction |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3417617A4 (en) * | 2016-02-17 | 2019-02-27 | Telefonaktiebolaget LM Ericsson (publ) | METHOD AND DEVICES FOR CODING AND DECODING VIDEO IMAGES |
CN110650349B (zh) * | 2018-06-26 | 2024-02-13 | 中兴通讯股份有限公司 | 一种图像编码方法、解码方法、编码器、解码器及存储介质 |
-
2019
- 2019-09-27 WO PCT/CN2019/108598 patent/WO2021056433A1/zh active Application Filing
- 2019-09-27 EP EP19947394.3A patent/EP4037314A4/en not_active Withdrawn
- 2019-09-27 CN CN201980100394.9A patent/CN114424533A/zh active Pending
- 2019-09-27 JP JP2022519101A patent/JP7471399B2/ja active Active
- 2019-09-27 KR KR1020227013644A patent/KR20220065059A/ko active Search and Examination
-
2022
- 2022-03-25 US US17/704,870 patent/US20220217335A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106464870A (zh) * | 2014-03-31 | 2017-02-22 | 英迪股份有限公司 | 用于对帧内画面进行编码和解码的基于模板匹配的方法和装置 |
CN105338351A (zh) * | 2014-05-28 | 2016-02-17 | 华为技术有限公司 | 基于模板匹配的帧内预测编、解码、阵列扫描方法及装置 |
CN104363449A (zh) * | 2014-10-31 | 2015-02-18 | 华为技术有限公司 | 图像预测方法及相关装置 |
US20170339404A1 (en) * | 2016-05-17 | 2017-11-23 | Arris Enterprises Llc | Template matching for jvet intra prediction |
Non-Patent Citations (2)
Title |
---|
See also references of EP4037314A4 * |
Z. ZHANG, V. SZE (MIT): "Non-CE8: Rotate Intra Block Copy", 124. MPEG MEETING; 20181008 - 20181012; MACAO; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11), no. m44025, 14 September 2018 (2018-09-14), XP030190704 * |
Also Published As
Publication number | Publication date |
---|---|
CN114424533A (zh) | 2022-04-29 |
US20220217335A1 (en) | 2022-07-07 |
KR20220065059A (ko) | 2022-05-19 |
EP4037314A4 (en) | 2022-11-09 |
EP4037314A1 (en) | 2022-08-03 |
JP7471399B2 (ja) | 2024-04-19 |
JP2022553624A (ja) | 2022-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021056433A1 (zh) | 预测值的确定方法、解码器以及计算机存储介质 | |
US20220295047A1 (en) | Image prediction method and device | |
WO2015085945A1 (zh) | 用于图像处理的方法和装置 | |
JP6690061B2 (ja) | 動き補償予測方法およびデバイス | |
WO2021196235A1 (zh) | 帧间预测方法、编码器、解码器及存储介质 | |
KR20210042355A (ko) | 비디오 이미지 성분의 예측 방법, 장치 및 컴퓨터 저장 매체 | |
JP6708374B2 (ja) | 画像群内で修正可能要素のセットを決定するための方法、デバイス、プログラム、及び可読媒体 | |
WO2021062772A1 (zh) | 预测方法、编码器、解码器及计算机存储介质 | |
WO2021120122A1 (zh) | 图像分量预测方法、编码器、解码器以及存储介质 | |
KR20210108389A (ko) | 크로마 인트라 예측 방법, 장치 및 컴퓨터 저장 매체 | |
JP7480170B2 (ja) | 画像予測方法、エンコーダー、デコーダー及び記憶媒体 | |
WO2018040869A1 (zh) | 一种帧间预测编码方法及装置 | |
WO2020181474A1 (zh) | 预测值的确定方法、编码器以及计算机存储介质 | |
WO2020181554A1 (zh) | 预测值的确定方法、解码器以及计算机存储介质 | |
CN112470468A (zh) | 解码预测方法、装置及计算机存储介质 | |
WO2020192109A1 (zh) | 图像分量预测方法、编码器、解码器以及存储介质 | |
WO2015196860A1 (zh) | 一种图像处理方法、装置及系统 | |
WO2021196228A1 (zh) | 帧间预测方法、编码器、解码器以及存储介质 | |
WO2020056767A1 (zh) | 视频图像分量的预测方法、装置及计算机存储介质 | |
JP2022528835A (ja) | 画像予測方法、エンコーダ、デコーダ及び記憶媒体 | |
AU2019417996A1 (en) | Prediction decoding method, device and computer storage medium | |
WO2023123467A1 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
US11343508B2 (en) | Method for determining prediction direction, decoder, and computer storage medium | |
WO2023193260A1 (zh) | 编解码方法、码流、编码器、解码器以及存储介质 | |
WO2022170521A1 (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: 19947394 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2022519101 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 20227013644 Country of ref document: KR Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2019947394 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 2019947394 Country of ref document: EP Effective date: 20220428 |