WO2019191888A1 - 环路滤波的方法、装置和计算机*** - Google Patents

环路滤波的方法、装置和计算机*** Download PDF

Info

Publication number
WO2019191888A1
WO2019191888A1 PCT/CN2018/081650 CN2018081650W WO2019191888A1 WO 2019191888 A1 WO2019191888 A1 WO 2019191888A1 CN 2018081650 W CN2018081650 W CN 2018081650W WO 2019191888 A1 WO2019191888 A1 WO 2019191888A1
Authority
WO
WIPO (PCT)
Prior art keywords
threshold
transformation
image
determining
indication information
Prior art date
Application number
PCT/CN2018/081650
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 CN201880012509.4A priority Critical patent/CN110337812A/zh
Priority to PCT/CN2018/081650 priority patent/WO2019191888A1/zh
Publication of WO2019191888A1 publication Critical patent/WO2019191888A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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 the field of video coding and decoding, and more particularly to a method, apparatus and computer system for loop filtering.
  • Loop filtering is a key part of the video codec framework. It is mainly used to reduce the compression distortion such as blockiness and ringing effect generated during the encoding process.
  • the loop filtering techniques are block-based loop filtering techniques and loop filtering techniques based on image non-local similarity.
  • Non-local Structure-Based Filter for Video Coding mainly uses the similar characteristics of the image non-local structure to collaboratively filter the similar structural groups obtained by the search.
  • Singular Value Decomposition Singular Value Decomposition (SVD) method with high complexity is adopted, and the threshold is obtained through offline training, and the general-purpose type is poor, which limits the performance of the loop filtering.
  • Embodiments of the present invention provide a loop filtering method, apparatus, and computer system, which can improve loop filtering performance.
  • a method for loop filtering including: determining a first transformation manner in a plurality of transformation manners; determining a first threshold corresponding to the first transformation manner; and determining, according to the first transformation manner
  • the first threshold is used to filter the image block to be filtered to obtain a reconstructed image block.
  • a device for loop filtering including: a transformation mode determining module, configured to determine a first transformation manner in a plurality of transformation manners; and a threshold determination module, configured to determine a first corresponding to the first transformation manner And a processing module, configured to filter the image block to be filtered according to the first transformation manner and the first threshold, to obtain a reconstructed image block.
  • a computer system comprising: a memory for storing computer executable instructions; a processor for accessing the memory and executing the computer executable instructions to perform the method of the first aspect above The operation in .
  • a computer storage medium having stored therein program code, the program code being operative to indicate a method of performing the first aspect described above.
  • the technical solution of the embodiment of the present invention can improve the universality and robustness of the loop filtering by determining the transformation manner adopted in the multiple transformation manners and determining the threshold value for the adopted transformation manner, thereby improving the loop. Road filtering performance.
  • FIG. 1 is an architectural diagram of a technical solution to which an embodiment of the present invention is applied.
  • FIG. 2 is a schematic diagram of data to be encoded according to an embodiment of the present invention.
  • FIG. 3 is a schematic diagram of an encoding frame in accordance with an embodiment of the present invention.
  • FIG. 4 is a schematic flowchart of a method for loop filtering according to an embodiment of the present invention.
  • FIG. 5 is a schematic block diagram of an apparatus for loop filtering according to an embodiment of the present invention.
  • Figure 6 is a schematic block diagram of a computer system in accordance with an embodiment of the present invention.
  • the size of the sequence numbers of the processes does not imply a sequence of executions, and the order of execution of the processes should be determined by its function and internal logic, and should not be construed as an embodiment of the present invention.
  • the implementation process constitutes any limitation.
  • FIG. 1 is an architectural diagram of a technical solution to which an embodiment of the present invention is applied.
  • system 100 can receive data to be processed 102 and process data to be processed 102 to produce processed data 108.
  • system 100 can receive data to be encoded, encode the data to be encoded to produce encoded data, or system 100 can receive the data to be decoded and decode the data to be decoded to produce decoded data.
  • components in system 100 may be implemented by one or more processors, which may be processors in a computing device or processors in a mobile device (eg, a drone).
  • the processor may be any type of processor, which is not limited in this embodiment of the present invention.
  • the processor may include an encoder, a decoder or a codec, and the like.
  • One or more memories may also be included in system 100.
  • the memory can be used to store instructions and data, such as computer executable instructions to implement the technical solution of the embodiments of the present invention, data to be processed 102, processed data 108, and the like.
  • the memory may be any kind of memory, which is not limited in this embodiment of the present invention.
  • the data to be encoded may include text, images, graphic objects, animation sequences, audio, video, or any other data that needs to be encoded.
  • the data to be encoded may include sensory data from sensors, which may be vision sensors (eg, cameras, infrared sensors), microphones, near field sensors (eg, ultrasonic sensors, radar), position sensors, temperature Sensors, touch sensors, etc.
  • the data to be encoded may include information from a user, such as biometric information, which may include facial features, fingerprint scans, retinal scans, voice recordings, DNA sampling, and the like.
  • FIG. 2 shows a schematic diagram of data to be encoded in an embodiment of the present invention.
  • the data to be encoded 202 may include a plurality of frames 204.
  • multiple frames 204 may represent consecutive image frames in a video stream.
  • Each frame 204 can include one or more stripes or tiles 206.
  • Each strip or tile 206 may include one or more macroblocks or encoding units 208.
  • Each macroblock or coding unit 208 can include one or more blocks 210.
  • Each block 210 can include one or more pixels 212.
  • Each pixel 212 can include one or more data sets corresponding to one or more data portions, such as a luminance data portion and a chrominance data portion.
  • the data unit can be a frame, a stripe, a tile, a coding unit, a macroblock, a block, a pixel, or a group of any of the above.
  • the size of the data unit can vary.
  • one frame 204 may include 100 strips 206, each strip 206 may include ten macroblocks 208, and each macroblock 208 may include four (eg, 2x2) blocks 210, each of which may include 64 (eg, 8x8) pixels 212.
  • Encoding is necessary for efficient and/or secure transmission or storage of data.
  • the encoding of the encoded data may include data compression, encryption, error correction coding, format conversion, and the like.
  • compression of multimedia data such as video or audio
  • Sensitive data such as financial information and personally identifiable information, can be encrypted to protect confidentiality and/or privacy prior to transmission and storage. In order to reduce the bandwidth occupied by video storage and transmission, it is necessary to encode and compress the video data.
  • Any suitable coding technique can be used to encode the data to be encoded.
  • the type of encoding depends on the data being encoded and the specific coding requirements.
  • the encoder can implement one or more different codecs.
  • Each codec may include code, instructions or a computer program that implements different encoding algorithms. Based on various factors, including the type and/or source of the data to be encoded, the receiving entity of the encoded data, the available computing resources, the network environment, the business environment, the rules and standards, etc., a suitable encoding algorithm can be selected to encode the given Data to be encoded.
  • the encoder can be configured to encode a series of video frames. Encoding the data in each frame can take a series of steps.
  • the encoding step can include processing steps such as prediction, transform, quantization, entropy encoding, and the like.
  • the prediction includes two types of intra prediction and inter prediction, and the purpose is to use the prediction block information to remove redundant information of the current image block to be encoded.
  • Intra prediction uses the information of the current frame image to obtain prediction block data.
  • Inter prediction uses the information of the reference frame to obtain prediction block data, the process comprising dividing the image block to be encoded into a plurality of sub image blocks; and then, for each sub image block, searching the reference image for the image that best matches the current sub image block.
  • the block is used as a prediction block; thereafter, the sub-image block is subtracted from the corresponding pixel value of the prediction block to obtain a residual, and the obtained residuals of the respective sub-image blocks are combined to obtain a residual of the image block.
  • Transforming the residual block of the image using the transformation matrix can remove the correlation of the residual of the image block, that is, remove the redundant information of the image block, so as to improve the coding efficiency
  • the transformation of the data block in the image block usually adopts a two-dimensional transformation. That is, the residual information of the data block is multiplied by an NxM transform matrix and its transposed matrix at the encoding end, and the transform coefficients are obtained after multiplication.
  • the transform coefficients are quantized to obtain quantized coefficients, and finally the quantized coefficients are entropy encoded, and finally the entropy-encoded bit stream and the encoded coding mode information, such as intra prediction mode and motion vector information, are performed.
  • the decoder Store or send to the decoder.
  • the entropy-encoded bit stream is first obtained and entropy decoded to obtain a corresponding residual, according to the predicted image block corresponding to the information image block such as the motion vector or the intra prediction obtained by decoding, according to the predicted image block and the image block.
  • the residual is obtained by the value of each pixel in the current sub-image block.
  • FIG. 3 shows a schematic diagram of a coding framework of an embodiment of the present invention.
  • the encoding process can be as follows:
  • the current frame image is acquired.
  • a reference frame image is acquired.
  • motion estimation is performed using the reference frame image to obtain a motion vector (Motion Vector, MV) of each image block of the current frame image.
  • motion compensation is performed using the motion vector obtained by motion estimation to obtain an estimated/predicted value of the current image block.
  • the estimated/predicted value of the current image block is subtracted from the current image block to obtain a residual.
  • the residual is transformed to obtain transform coefficients.
  • the transform coefficients are quantized to obtain quantized coefficients.
  • the quantized coefficients are entropy encoded, and finally the entropy encoded bit stream and the encoded coding mode information are stored or transmitted to the decoding end.
  • the quantized results are inverse quantized.
  • the inverse quantization result is inverse transformed.
  • the reconstructed pixel is obtained using the inverse transform result and the motion compensation result.
  • the reconstructed pixels are filtered (ie, loop filtered).
  • the filtered reconstructed pixels are output. Subsequently, the reconstructed image can be inter-predicted as a reference frame image of other frame images.
  • the encoding process can be as follows:
  • the current frame image is acquired.
  • intra prediction selection is performed on the current frame image.
  • the current image block in the current frame is intra predicted.
  • the estimated value of the current image block is subtracted from the current image block to obtain a residual.
  • the residuals of the image block are transformed to obtain transform coefficients.
  • the transform coefficients are quantized to obtain quantized coefficients.
  • the quantized coefficients are entropy encoded, and finally the bit stream obtained by entropy coding and the encoded coding mode signal are stored or transmitted to the decoding end.
  • the quantized result is inverse quantized.
  • the inverse quantization result is inverse transformed, and in 311, the reconstructed pixel is obtained using the inverse transform result and the intra prediction result.
  • the reconstructed image block can be used for intra prediction of the next image block.
  • the residual information is obtained by using entropy decoding and inverse quantization and inverse transform, and determining whether the current image block uses intra prediction or inter prediction according to the decoded code stream. If it is intra prediction, the prediction information is constructed according to the intra prediction method by using the reconstructed image block in the current frame; if it is inter prediction, the motion information needs to be parsed, and the reconstructed image is used in the reconstructed image.
  • the reference block is determined to obtain prediction information; next, the prediction information is superimposed with the residual information, and the reconstruction information is obtained through the filtering operation.
  • the technical solution of the embodiment of the present invention can be applied to a filtering process of encoding or decoding, for example, can be applied to an NLSF.
  • Block-based loop filtering techniques include bilateral filtering, deblocking filtering, adaptive sample compensation filtering, and adaptive loop filtering.
  • the basic idea of bilateral filtering is that the current pixel is calculated from the weighted average of its own and neighboring four point pixel values to achieve edge-preserving denoising.
  • Deblocking filtering and adaptive sample compensation filtering follow the method in HEVC. Deblocking filtering is used to predict the boundary between the unit and the transform unit, and the trained low-pass filter is used to perform nonlinear weighting of the boundary pixels, thereby reducing the block effect.
  • the adaptive sample compensation filter suppresses the ringing effect by classifying the pixels in the image block and adding the same compensation value to each type of pixel to make the reconstructed image closer to the original image.
  • Adaptive loop filtering is a Wiener filter that is mainly used to minimize the mean square error between the original image and the reconstructed image.
  • Block-based filtering techniques exploit the local similarity of the image and do not adequately consider non-local self-similarity, which limits the performance of the filter. In order to solve this problem, many loop filtering techniques based on image non-local similarity are proposed.
  • the loop filter (NLSF) based on image non-local similarity in video coding mainly uses the similar characteristics of image non-local structure to cooperatively filter the similar structural groups obtained by searching.
  • NLSF The specific processing flow of NLSF is as follows.
  • the image is processed in blocks. Divide the image into sizes K blocks, each block has a number of pixels of B s , and each block is represented by a vector x k Using these blocks as the current block, a square search window of size W s *W s is opened for each current block. In the search window, the image blocks are sequentially extracted in the raster scan order, and the Sum of Squared Differences (SSD) between the current block and the extracted image block is calculated as the similarity, and the calculation formula is as follows.
  • SSD Sum of Squared Differences
  • f(h, w) represents the current block pixel
  • the extracted image blocks are sorted according to similarity, and c image blocks with the smallest SSD, that is, c most similar blocks are selected.
  • the selected c most similar blocks are combined into a set And the pixel values of all the small blocks in the set are represented by a one-dimensional vector of B s *1, and the c one-dimensional vectors are formed into a two-dimensional structure array.
  • each The image block in is used as a column vector.
  • the process of filtering is the processing of the matrix (structure array), the purpose is to filter out the distortion and noise introduced in the encoding process, this process can be called Group-based filtering.
  • the process of SVD decomposition can be understood as a transformation of a matrix, in particular, a two-dimensional matrix can be decomposed into the form of three matrix products.
  • SVD decomposition The purpose of SVD decomposition is to extract the principal components of the structure array.
  • the simple SVD can not play the role of filtering.
  • the key of filtering is to remove noise.
  • the place where noise is removed in NLSF is hard threshold operation.
  • the hard threshold operation is performed on the singular value to achieve the purpose of filtering.
  • hard(x, a) x ⁇ 1(abs(x)-a) represents a hard threshold operation
  • represents the point multiplication of two vectors
  • represents a threshold, which can be obtained by offline training.
  • the matrix in the middle of equation (4) is a diagonal matrix, and the elements on the diagonal are sequentially reduced from the upper left corner to the lower right corner, and the smaller elements can be considered as noise, wherein the "smaller" evaluation criteria can be adopted.
  • a threshold if the threshold is 60, then the portion less than 60 is considered to be noise and is directly set to zero.
  • equation (4) becomes:
  • the resulting matrix and the original matrix to be decomposed may be different, which is the result after filtering out the noise.
  • the reconstructed structure group is obtained based on the result of the singular value decomposition. Since each pixel in the image may be filtered multiple times, the image may eventually be reconstructed by averaging these filtered results.
  • the SVD mode with higher complexity is adopted, and the threshold is obtained through offline training, and the general-purpose type is poor, which limits the performance of the loop filtering.
  • the embodiments of the present invention provide a technical solution, which improves the performance of loop filtering by adopting multiple transform adaptive selection methods and designing different threshold parameters for different transforms.
  • the technical solution of the embodiment of the present invention can be applied to both the encoding end and the decoding end.
  • the described scheme is applicable to both the encoding end and the decoding end unless otherwise specified.
  • FIG. 4 shows a schematic flow diagram of a method 400 of loop filtering in accordance with one embodiment of the present invention.
  • the method 400 can be performed by the system 100 shown in FIG.
  • multiple transform adaptive selection methods are adopted, that is, a transform mode is no longer fixed, but an adaptive transform mode is selected.
  • the plurality of transformation modes may include at least two transformation modes of SVD, Discrete Cosine Transform (DCT), Hadamard transform, Karhunen-Loève Transform (KLT), and Signal Dependent Transform (SDT). For each image block to be filtered, one of the plurality of transformation modes is selected for filtering.
  • DCT Discrete Cosine Transform
  • KLT Karhunen-Loève Transform
  • SDT Signal Dependent Transform
  • the level of the transformation mode selection is an image block level.
  • the image block may be a Coding Tree Unit (CTU), indicating that the transform mode is selected to be a CTU level operation, or the image block may be an entire frame image, indicating that the transform mode is selected to be a frame level operation.
  • CTU Coding Tree Unit
  • the image block may also be other image units/data units in the image, which is not limited by the embodiment of the present invention.
  • the first transformation manner may be determined according to an image feature of the image block.
  • the transform mode is selected for the characteristics of the image block itself.
  • the image features may include at least one of variance, texture, and structural characteristics.
  • the selected transformation mode is associated with the specific content of the image block, and the generality of the filtering can be improved.
  • the first transformation manner may be determined according to an image feature of the image block and a correspondence between the plurality of transformation modes and image features.
  • a, b, c, and d are statistically obtained empirical values, and type 1, 2, 3, ... represent different transformation modes, for example, SVD, DCT, Hadamard transformation, KLT, and the like, respectively.
  • the corresponding transform mode is selected according to the variance ⁇ 2 of the image block.
  • This method can effectively reduce the complexity of the coding end, and the judgment mode is simple, and can also be judged at the decoding end, so that no additional transmission bits are needed to represent the transformation mode selected by the coding end.
  • the image block may be filtered by using the multiple transformation manners to determine a selection index corresponding to each transformation mode; and the selection transformation mode is selected.
  • the first conversion method As the first conversion method.
  • each transform mode can be tried once, and then the optimal transform mode is selected.
  • the selection indicator for determining whether the optimal is the difference may be a difference between the filtered image block and the original image block.
  • the selection indicator may be a Sum of Squared Error (SSE).
  • SSE Sum of Squared Error
  • the first transformation mode is a transformation mode in which the SSE is the smallest.
  • SSE can be calculated using the following formula.
  • H and W represent the height and width of the coded image block (eg CTU or full frame image)
  • f(h, w) represents the original value. Represents the value after filtering reconstruction.
  • selection indicators may also adopt other indicators, which are not limited in this embodiment of the present invention.
  • the encoding end may encode the transform mode indication information, where the transform mode indication information is used to indicate the first transform mode.
  • the transformation manner indication information may be encoded in units of image blocks.
  • the encoding end can write the selected transform mode to the code stream and send it to the decoding end.
  • the decoding end may determine the first transformation manner according to the decoded transformation manner indication information.
  • the manner in which the transformation mode is written into the code stream may be that each CTU transmits a number corresponding to the transformation mode, where there may be a merge operation; or an indication information may be transmitted once per frame, indicating The conversion mode of all CTUs of this frame.
  • the selection of the transformation mode is a frame-level operation, the frame-level transfer method is adopted, that is, the transformation mode most suitable for the entire frame image is selected and transmitted to the decoding end, so that the number of transmitted bits can be reduced.
  • the encoding end may send the conversion mode indication information to the decoding end, or may not send the conversion mode indication information to the decoding end.
  • the decoding end may directly determine the adopted transformation mode according to the transformation mode indication information; if the coding end does not transmit the transformation mode indication information, the decoding end may adopt the coding end. The same method of selection, choose the transformation method used.
  • the threshold corresponding to the transformation mode is determined for the selected transformation manner.
  • the influencing factors of the thresholds of different transformation modes may be different. Therefore, different threshold determination methods may be adopted for different transformation modes.
  • the method for determining the threshold may be an offline estimation method or an online estimation method, and the two threshold determination methods may be selected according to the transformation manner.
  • the first threshold may be determined according to preset threshold information.
  • the method for determining the threshold according to the preset threshold information may be selected for the influencing factor of the threshold of the transformation mode. For example, if the influence factor of the threshold of the selected transform mode has little relationship with the specific content of the video, the offline estimation method may be adopted. That is, the threshold information is determined by the offline estimation method.
  • the relationship between the threshold and the coding parameter may be determined by an offline estimation method, or the relationship between the threshold and the coding parameter may be determined by an offline estimation method.
  • threshold training is performed by coding parameters such as quantization parameter (QP), frame type, inter-frame reference relationship, and image layer, and the functional relationship between them is obtained.
  • QP quantization parameter
  • threshold values can be used to calculate the functional relationship:
  • the values represented by 0.13 and 0.71 are obtained by offline training, different bit depths, different frame types, and chromaticity and brightness correspond to different parameters (values corresponding to positions of 0.13 and 0.71).
  • the first threshold may be determined according to an image feature of the image block.
  • the threshold is determined in a manner of online estimation. Specifically, the threshold is calculated based on the characteristics of the image block itself. For example, if the influence factor of the threshold of the selected transform mode has a large relationship with the image feature, a method of determining the threshold based on the image feature may be employed.
  • the image features may include at least one of variance, texture, and structural characteristics.
  • the image feature as the variance ⁇ 2 as an example, the following threshold calculation formula can be adopted.
  • the encoding end may encode the threshold indication information, where the threshold indication information is used to indicate the first threshold.
  • the encoding end can write the determined threshold value to the code stream and send it to the decoding end.
  • the decoding end may determine the first threshold according to the decoded threshold indication information.
  • the threshold indication information may be in a Video Parameter Set, a Sequence Header, a Sequence Parameter Set, a Picture Header, and a Picture Parameter Set.
  • Encoding in the Slice Header code Decoding end from Video Parameter Set, Sequence Header, Sequence Parameter Set, Picture Header, Picture Parameter Set, Slice Header Decoding the first threshold.
  • images are usually divided into different layers, and images of different levels have different reference prediction relationships, or different importance, or different resolutions, or different coding qualities.
  • the invention can encode the threshold indication information corresponding to different image levels in a video parameter set, a sequence header, a sequence parameter set, and a reference picture set.
  • the decoding end decodes the threshold indication information corresponding to different image levels from the video parameter set, the sequence header, the sequence parameter set, and the reference image set.
  • the encoding end may send the threshold indication information to the decoding end, or may not send the threshold indication information to the decoding end.
  • the decoding end may directly determine the adopted threshold according to the threshold indication information, which can effectively reduce the processing complexity of the decoding end; and decode the decoding end without transmitting the threshold indication information.
  • the terminal can determine the threshold in the same manner as the encoding end.
  • the transformation mode adopted is determined in a plurality of transformation manners, and after determining the threshold value for the adopted transformation manner, the image block is filtered according to the determined transformation manner and the threshold value to obtain a reconstructed image block.
  • the structure array of the created image block may be decomposed according to the first transformation manner and the first threshold, that is, the first transformation manner is used for decomposition.
  • the hard threshold operation adopts the first threshold, and then obtains an array of reconstructed structures according to the decomposed structure array, thereby obtaining a reconstructed image block.
  • the array of structures can be decomposed by the aforementioned SVD method.
  • the technical solution of the embodiment of the present invention can improve the universality and robustness of the loop filtering by determining the transformation manner adopted in the multiple transformation manners and determining the threshold value for the adopted transformation manner, thereby improving the loop. Road filtering performance.
  • FIG. 5 shows a schematic block diagram of a loop filtering apparatus 500 in accordance with one embodiment of the present invention.
  • the apparatus 500 can perform the method of loop filtering of the embodiments of the present invention described above.
  • the apparatus 500 can include:
  • the transform mode determining module 510 is configured to determine the first transform mode in multiple transform modes
  • a threshold determining module 520 configured to determine a first threshold corresponding to the first transform mode
  • the processing module 530 is configured to filter the image block to be filtered according to the first transformation manner and the first threshold, to obtain a reconstructed image block.
  • the transform mode determining module 510 is specifically configured to:
  • the transform mode determining module 510 is specifically configured to:
  • the processing module 530 is configured to:
  • the transformation mode determining module 510 is specifically configured to: select a transformation manner that is optimal for the selection index as the first transformation manner.
  • the selection indicator is SSE
  • the first transformation mode is a SSE minimum transformation mode.
  • the apparatus 500 is applied to an encoding end, and the processing module 530 is further configured to:
  • the coding conversion mode indication information is used to indicate the first transformation mode.
  • the transformation manner indication information is encoded in units of image blocks.
  • the apparatus 500 is applied to a decoding end, and the transformation mode determining module 510 is specifically configured to:
  • the threshold determining module 520 is specifically configured to:
  • the first threshold is determined according to preset threshold information.
  • the threshold information is determined by an offline estimation manner.
  • the threshold information includes a functional relationship between the threshold and the encoding parameter, or a look-up relationship between the threshold and the encoding parameter.
  • the threshold determining module 520 is specifically configured to:
  • the first threshold is determined based on image characteristics of the image block.
  • the image feature comprises at least one of a variance, a texture, and a structural characteristic.
  • the apparatus 500 is applied to an encoding end, and the processing module 530 is further configured to:
  • Encoding threshold indication information the threshold indication information being used to indicate the first threshold.
  • the processing module 530 is configured to encode the threshold indication information in a video parameter set, a sequence header, a sequence parameter set, an image header, an image parameter set, and a slice header.
  • the processing module 530 is configured to encode the threshold indication information corresponding to different image levels in a video parameter set, a sequence header, a sequence parameter set, and a reference image set.
  • the apparatus 500 is applied to a decoding end, and the threshold determining module 520 is specifically configured to:
  • the first threshold is determined based on the decoded threshold indication information.
  • the processing module 530 is further configured to decode the threshold indication information in a video parameter set, a sequence header, a sequence parameter set, an image header, an image parameter set, and a slice header.
  • the processing module 530 is further configured to: in the video parameter set, the sequence header, the sequence parameter set, and the reference image set, decode the threshold indication information corresponding to different image levels.
  • the multiple transformation manners include at least two transformation modes of SVD, DCT, Hadamard transform, KLT, and SDT.
  • the image block is a CTU or an entire frame image.
  • the device for loop filtering in the foregoing embodiment of the present invention may be a chip, which may be specifically implemented by a circuit, but the specific implementation manner of the embodiment of the present invention is not limited.
  • the embodiment of the present invention further provides an encoder, which is used to implement the function of the encoding end in the embodiment of the present invention, and may include the module for the encoding end in the loop filtering device of the embodiment of the present invention.
  • the embodiment of the present invention further provides a decoder, which is used to implement the function of the decoding end in the embodiment of the present invention, and may include a module for the decoding end in the loop filtering device of the embodiment of the present invention.
  • the embodiment of the invention further provides a codec, which comprises the loop filtering device of the embodiment of the invention described above.
  • FIG. 6 shows a schematic block diagram of a computer system 600 in accordance with an embodiment of the present invention.
  • the computer system 600 can include a processor 610 and a memory 620.
  • the computer system 600 may also include components that are generally included in other computer systems, such as input and output devices, communication interfaces, and the like, which are not limited by the embodiments of the present invention.
  • Memory 620 is used to store computer executable instructions.
  • the memory 620 may be various types of memory, for example, may include a high speed random access memory (RAM), and may also include a non-volatile memory, such as at least one disk memory, which is implemented by the present invention. This example is not limited to this.
  • RAM high speed random access memory
  • non-volatile memory such as at least one disk memory
  • the processor 610 is configured to access the memory 620 and execute the computer executable instructions to perform the operations in the loop filtering method of the embodiment of the present invention described above.
  • the processor 610 may include a microprocessor, a field-programmable gate array (FPGA), a central processing unit (CPU), a graphics processing unit (GPU), etc., and is implemented by the present invention. This example is not limited to this.
  • the loop filtering apparatus and computer system of the embodiments of the present invention may correspond to the execution body of the loop filtering method of the embodiment of the present invention, and the above-described and other operations of the loop filtering apparatus and each module in the computer system and/or The functions are respectively implemented in order to implement the corresponding processes of the foregoing methods, and are not described herein for brevity.
  • Embodiments of the present invention also provide an electronic device, which may include the loop filtering device or computer system of the various embodiments of the present invention described above.
  • the embodiment of the invention further provides a computer storage medium, wherein the computer storage medium stores program code, and the program code can be used to indicate a method for performing loop filtering of the embodiment of the invention.
  • the term "and/or” is merely an association relationship describing an associated object, indicating that there may be three relationships.
  • a and/or B may indicate that A exists separately, and A and B exist simultaneously, and B cases exist alone.
  • the character "/" in this article generally indicates that the contextual object is an "or" relationship.
  • the disclosed systems, devices, and methods may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, or an electrical, mechanical or other form of connection.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the embodiments of the present invention.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
  • the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium.
  • the technical solution of the present invention contributes in essence or to the prior art, or all or part of the technical solution may be embodied in the form of a software product stored in a storage medium.
  • a number of instructions are included to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .

Landscapes

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

Abstract

一种环路滤波的方法、装置和计算机***。该方法包括:在多种变换方式中确定第一变换方式(410);确定所述第一变换方式对应的第一阈值(420);根据所述第一变换方式和所述第一阈值,对待滤波的图像块进行滤波,得到重建图像块(430)。通过上述方法能够提高环路滤波的性能。

Description

环路滤波的方法、装置和计算机***
版权申明
本专利文件披露的内容包含受版权保护的材料。该版权为版权所有人所有。版权所有人不反对任何人复制专利与商标局的官方记录和档案中所存在的该专利文件或者该专利披露。
技术领域
本发明涉及视频编解码领域,并且更具体地,涉及一种环路滤波的方法、装置和计算机***。
背景技术
环路滤波是视频编解码框架中的关键部分。它主要用于减少编码过程中产生的块效应、振铃效应等压缩失真。环路滤波技术中有基于块的环路滤波技术和基于图像非局部相似特性的环路滤波技术。
基于块的环路滤波技术利用图像的局部相似特性,但没有充分考虑非局部自相似性。基于图像非局部相似特性的环路滤波器(Non-local Structure-Based Filter for Video Coding,NLSF)主要利用图像非局部结构相似特性,对搜索得到的相似结构组进行协同滤波。目前的NLSF中,采用复杂度较高的奇异值分解(Singular Value Decomposition,SVD)方式,且阈值通过离线训练得到,通用型较差,限制了环路滤波的性能。
因此,需要一种改进的环路滤波的方法,以提高环路滤波的性能。
发明内容
本发明实施例提供了一种环路滤波的方法、装置和计算机***,能够提高环路滤波的性能。
第一方面,提供了一种环路滤波的方法,包括:在多种变换方式中确定第一变换方式;确定所述第一变换方式对应的第一阈值;根据所述第一变换方式和所述第一阈值,对待滤波的图像块进行滤波,得到重建图像块。
第二方面,提供了环路滤波的装置,包括:变换方式确定模块,用于在多种变换方式中确定第一变换方式;阈值确定模块,用于确定所述第一变 换方式对应的第一阈值;处理模块,用于根据所述第一变换方式和所述第一阈值,对待滤波的图像块进行滤波,得到重建图像块。
第三方面,提供了一种计算机***,包括:存储器,用于存储计算机可执行指令;处理器,用于访问所述存储器,并执行所述计算机可执行指令,以进行上述第一方面的方法中的操作。
第四方面,提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码可以用于指示执行上述第一方面的方法。
本发明实施例的技术方案,通过在多种变换方式中确定所采用的变换方式,并针对所采用的变换方式确定阈值,能够提高环路滤波的普适性和鲁棒性,从而能够提高环路滤波的性能。
附图说明
图1是应用本发明实施例的技术方案的架构图。
图2是本发明实施例的待编码数据的示意图。
图3是本发明实施例的编码框架示意图。
图4是本发明实施例的环路滤波的方法的示意性流程图。
图5是本发明实施例的环路滤波的装置的示意性框图。
图6是本发明实施例的计算机***的示意性框图。
具体实施方式
下面将结合附图,对本发明实施例中的技术方案进行描述。
应理解,本文中的具体的例子只是为了帮助本领域技术人员更好地理解本发明实施例,而非限制本发明实施例的范围。
还应理解,本发明实施例中的公式只是一种示例,而非限制本发明实施例的范围,各公式可以进行变形,这些变形也应属于本发明保护的范围。
还应理解,在本发明的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
还应理解,本说明书中描述的各种实施方式,既可以单独实施,也可以组合实施,本发明实施例对此并不限定。
除非另有说明,本发明实施例所使用的所有技术和科学术语与本发明 的技术领域的技术人员通常理解的含义相同。本申请中所使用的术语只是为了描述具体的实施例的目的,不是旨在限制本申请的范围。本申请所使用的术语“和/或”包括一个或多个相关的所列项的任意的和所有的组合。
图1是应用本发明实施例的技术方案的架构图。
如图1所示,***100可以接收待处理数据102,对待处理数据102进行处理,产生处理后数据108。例如,***100可以接收待编码数据,对待编码数据进行编码以产生编码后的数据,或者,***100可以接收待解码数据,对待解码数据进行解码以产生解码后的数据。在一些实施例中,***100中的部件可以由一个或多个处理器实现,该处理器可以是计算设备中的处理器,也可以是移动设备(例如无人机)中的处理器。该处理器可以为任意种类的处理器,本发明实施例对此不做限定。在一些可能的设计中,该处理器可以包括编码器、解码器或编解码器等。***100中还可以包括一个或多个存储器。该存储器可用于存储指令和数据,例如,实现本发明实施例的技术方案的计算机可执行指令,待处理数据102、处理后数据108等。该存储器可以为任意种类的存储器,本发明实施例对此也不做限定。
待编码数据可以包括文本,图像,图形对象,动画序列,音频,视频,或者任何需要编码的其他数据。在一些情况下,待编码数据可以包括来自传感器的传感数据,该传感器可以为视觉传感器(例如,相机、红外传感器),麦克风,近场传感器(例如,超声波传感器、雷达),位置传感器,温度传感器,触摸传感器等。在一些情况下,待编码数据可以包括来自用户的信息,例如,生物信息,该生物信息可以包括面部特征,指纹扫描,视网膜扫描,嗓音记录,DNA采样等。
图2示出了本发明实施例的待编码数据的示意图。
如图2所示,待编码数据202可以包括多个帧204。例如,多个帧204可以表示视频流中的连续的图像帧。每个帧204可以包括一个或多个条带或贴砖(tile)206。每个条带或tile206可以包括一个或多个宏块或编码单元208。每个宏块或编码单元208可以包括一个或多个块210。每个块210可以包括一个或多个像素212。每个像素212可以包括一个或多个数据集,对应于一个或多个数据部分,例如,亮度数据部分和色度数据部分。数据单元可以为帧,条带,tile,编码单元,宏块,块,像素或以上任一种的组。在不同的实施例中,数据单元的大小可以变化。作为举例,一个帧204可以包括100个 条带206,每个条带206可以包括10个宏块208,每个宏块208可以包括4个(例如,2x2)块210,每个块210可以包括64个(例如,8x8)像素212。
编码对于高效和/或安全的传输或存储数据是必需的。对待编码数据的编码可以包括数据压缩,加密,纠错编码,格式转换等。例如,对多媒体数据(例如视频或音频)压缩可以减少在网络中传输的比特数量。敏感数据,例如金融信息和个人标识信息,在传输和存储前可以加密以保护机密和/或隐私。为了减少视频存储和传输所占用的带宽,需要对视频数据进行编码压缩处理。
任何合适的编码技术都可以用于编码待编码数据。编码类型依赖于被编码的数据和具体的编码需求。
在一些实施例中,编码器可以实现一种或多种不同的编解码器。每种编解码器可以包括实现不同编码算法的代码,指令或计算机程序。基于各种因素,包括待编码数据的类型和/或来源,编码数据的接收实体,可用的计算资源,网络环境,商业环境,规则和标准等,可以选择一种合适的编码算法编码给定的待编码数据。
例如,编码器可以被配置为编码一系列视频帧。编码每个帧中的数据可以采用一系列步骤。在一些实施例中,编码步骤可以包括预测、变换、量化、熵编码等处理步骤。
预测包括帧内预测和帧间预测两种类型,其目的在于利用预测块信息去除当前待编码图像块的冗余信息。帧内预测利用本帧图像的信息获得预测块数据。帧间预测利用参考帧的信息获得预测块数据,其过程包括将待编码图像块划分成若干个子图像块;然后,针对每个子图像块,在参考图像中搜索与当前子图像块最匹配的图像块作为预测块;其后,将该子图像块与预测块的相应像素值相减得到残差,并将得到的各子图像块对应的残差组合在一起,得到图像块的残差。
使用变换矩阵对图像的残差块进行变换可以去除图像块的残差的相关性,即去除图像块的冗余信息,以便提高编码效率,图像块中的数据块的变换通常采用二维变换,即在编码端将数据块的残差信息分别与一个NxM的变换矩阵及其转置矩阵相乘,相乘之后得到的是变换系数。变换系数经量化可得到量化后的系数,最后将量化后的系数进行熵编码,最后将熵编码得到的比特流及进行编码后的编码模式信息,如帧内预测模式、运动矢量信息 等,进行存储或发送到解码端。在图像的解码端,首先获得熵编码比特流后进行熵解码,得到相应的残差,根据解码得到的运动矢量或帧内预测等信息图像块对应的预测图像块,根据预测图像块与图像块的残差得到当前子图像块中各像素点的值。
图3示出了本发明实施例的编码框架示意图。
如图3所示,在采用帧间预测时,编码的流程可以如下所示:
在301中,获取当前帧图像。在302中,获取参考帧图像。在303a中,利用参考帧图像,进行运动估计,以得到当前帧图像的各个图像块的运动矢量(Motion Vector,MV)。在304a中,利用运动估计得到的运动矢量,进行运动补偿,以得到当前图像块的估计值/预测值。在305中,将当前图像块的估计值/预测值与当前图像块相减,得到残差。在306中,对残差进行变换,以得到变换系数。在307中,变换系数经量化可得到量化后的系数。在308中,将量化后的系数进行熵编码,最后将熵编码得到的比特流及进行编码后的编码模式信息进行存储或发送到解码端。在309中,对量化的结果进行反量化。在310中,对反量化结果进行反变换。在311中,利用反变换结果以及运动补偿结果,得到重建像素。在312中,对重建像素进行滤波(即环路滤波)。在313中,输出滤波后的重建像素。后续,重建后的图像可以作为其他帧图像的参考帧图像进行帧间预测。
在采用帧内预测时,编码的流程可以如下所示:
在302中,获取当前帧图像。在303b中,对当前帧图像进行帧内预测选择。在304b中,当前帧中的当前图像块进行帧内预测。在305中,将当前图像块的估计值与当前图像块相减,得到残差。在306中,对图像块的残差进行变换,以得到变换系数。在307中,变换系数经量化可得到量化后的系数。在308中,将量化后的系数进行熵编码,最后将熵编码得到的比特流及进行编码后的编码模式信进行存储或发送到解码端。在309中,对量化结果进行反量化。在310中,对反量化结果进行反变换,在311中,利用反变换结果以及帧内预测结果,得到重建像素。重建后的图像块可以用于下一图像块的帧内预测。
对于解码端,则进行与编码端相对应的操作。首先利用熵解码以及反量化和反变换得到残差信息,并根据解码码流确定当前图像块使用帧内预测还是帧间预测。如果是帧内预测,则利用当前帧中已重建图像块按照帧内预 测方法构建预测信息;如果是帧间预测,则需要解析出运动信息,并使用所解析出的运动信息在已重建的图像中确定参考块,得到预测信息;接下来,再将预测信息与残差信息进行叠加,并经过滤波操作便可以得到重建信息。
本发明实施例的技术方案可以应用于编码或解码的滤波过程中,例如,可以应用于NLSF中。
基于块的环路滤波技术包括双边滤波、去块滤波、自适应样值补偿滤波和自适应环路滤波。双边滤波的基本思想是当前像素由它自身和相邻四个点像素值的加权平均来计算,实现保边去噪。去块滤波和自适应样值补偿滤波沿用了HEVC中的方法。去块滤波用于预测单元和变换单元的边界,利用训练得到的低通滤波器进行边界像素的非线性加权,从而减少块效应。自适应样值补偿滤波通过对图像块内像素进行分类,进而为每类像素加上相同补偿值的方式使得重构图像更接近原始图像,从而起到抑制振铃效应的作用。自适应环路滤波是一种维纳滤波器,主要用于最小化原始图像和重构图像之间的均方误差。种基于块的滤波技术利用图像的局部相似特性,没有充分考虑非局部自相似性,这就使得滤波器的性能受到了极大的限制。为了解决这一问题,提出了很多基于图像非局部相似特性的环路滤波技术。
目前视频编码中基于图像非局部相似特性的环路滤波器(NLSF)主要利用图像非局部结构相似特性,对搜索得到的相似结构组进行协同滤波。
NLSF的具体处理流程如下。
(1)相似块匹配与结构数组创建(Group Construction)过程。
对图像按块进行处理。将图像分为大小为
Figure PCTCN2018081650-appb-000001
的K个块,每个块的像素数为B s,每个块用向量x k表示
Figure PCTCN2018081650-appb-000002
以这些块作为当前块,对每个当前块开辟一个大小为W s*W s的正方形搜索窗口。在搜索窗口中按照光栅扫描顺序依次提取图像块,计算当前块和提图像块之间的误差平方和(Sum of Squared Differences,SSD)作为相似度,计算公式如下。
Figure PCTCN2018081650-appb-000003
其中,f(h,w)表示当前块像素,
Figure PCTCN2018081650-appb-000004
表示提取块的像素。
将提取到的图像块按照相似度进行排序,选取SSD最小的c个图像块,即c个最相似块。
然后,将选中的c个最相似块组成集合
Figure PCTCN2018081650-appb-000005
并将集合中所有小块的像素值用B s*1的一维向量来表示,将c个一维向量组成一个二维结构数组
Figure PCTCN2018081650-appb-000006
Figure PCTCN2018081650-appb-000007
其中
Figure PCTCN2018081650-appb-000008
是一个大小为B s*c的矩阵,每个
Figure PCTCN2018081650-appb-000009
中的图像块作为一个列向量。
滤波的过程就是对矩阵(结构数组)的处理过程,目的是滤除编码过程中引入的失真和噪声,此过程可以称为基于结构数组的滤波(Group-based filtering)。
(2)对结构数组进行SVD分解。
SVD分解的过程可以理解为矩阵的变换,具体地可以将二维矩阵分解为三个矩阵乘积的形式。
Figure PCTCN2018081650-appb-000010
例如,
Figure PCTCN2018081650-appb-000011
SVD分解的目的是将结构数组提取主成分,单纯的SVD并不能起到滤波的作用,滤波的关键在于去除噪声,NLSF中去除噪声的地方采用的是硬阈值的操作。
对奇异值进行硬阈值操作,达到滤波的目的。
Figure PCTCN2018081650-appb-000012
其中,hard(x,a)=x⊙1(abs(x)-a)代表硬阈值操作,⊙代表两个向量的点乘,τ代表阈值,可以通过离线训练得到。
式(4)中间的矩阵是一个对角矩阵,对角线上的元素从左上角到右下角依次减小,可以将较小的元素认为是噪声,其中,“较小”的评价标准可以采用一个阈值,如果阈值为60,那么小于60的部分认为是噪声,直接设置为0。
例如,硬阈值操作后,式(4)变为:
Figure PCTCN2018081650-appb-000013
硬阈值操作后,得到的矩阵和原始进行分解的矩阵可以不相同,这就是滤除噪声之后的结果。
(3)图像重构
根据奇异值分解的结果获得重建结构组。由于图像中的每个像素点可能被滤波处理多次,最终可采用将这些滤波结果取平均的方式来重建图像。
Figure PCTCN2018081650-appb-000014
目前的NLSF中,采用复杂度较高的SVD方式,且阈值通过离线训练得到,通用型较差,限制了环路滤波的性能。
鉴于此,本发明实施例提供了一种技术方案,通过多种变换自适应选择的方式,并且针对不同变换设计不同的阈值参数,提高环路滤波的性能。
本发明实施例的技术方案,既可以应用于编码端,也可以应用于解码端。在本发明实施例的技术方案的描述中,除非特别指明,所描述的方案对编码端和解码端都适用。
图4示出了本发明一个实施例的环路滤波的方法400的示意性流程图。该方法400可以由图1所示的***100执行。
410,在多种变换方式中确定第一变换方式。
在本发明实施例中,采用多种变换自适应选择的方式,即不再固定采用一种变换方式,而是自适应选择变换方式。
多种变换方式可以包括SVD、离散余弦变换(Discrete Cosine Transform,DCT)、哈达玛变换、Karhunen-Loève Transform(KLT)和信号依赖变换(Signal Dependent Transform,SDT)中的至少两种变换方式。对于每个待滤波的图像块,在多种变换方式中选择一种变换方式进行滤波。
在本发明实施例中,变换方式选择的级别为图像块级别。例如,图像块可以是为编码树单元(Coding Tree Unit,CTU),表示变换方式选择为CTU级别的操作,或者图像块也可以是整帧图像,表示变换方式选择为帧级别的 操作。应理解,图像块也可以是图像中的其他图像单元/数据单元,本发明实施例对此并不限定。
可选地,在本发明一个实施例中,可以根据图像块的图像特征,确定所述第一变换方式。
在本实施例中,针对图像块本身的特征,选择变换方式。可选地,图像特征可以包括方差、纹理和结构特性中的至少一项。这样,所选择的变换方式与图像块的具体内容关联,能够提高滤波的普适性。
具体地,可以根据所述图像块的图像特征,以及所述多种变换方式与图像特征的对应关系,确定所述第一变换方式。
以图像特征为方差σ 2为例,可以采用如下的对应关系。
type=0,if σ 2>a
type=1,if b<σ 2≤a
type=2,if c<σ 2≤b
type=3,if σ 2≤c
其中,a,b,c,d为统计得到的经验值,type1,2,3,…代表不同的变换方式,例如可以分别代表SVD、DCT、哈达玛变换、KLT等。
在选择变换方式时,根据图像块的方差σ 2,选择对应的变换方式。这种方式可以有效地降低编码端的复杂度,而且,判断方式简单,也可以在解码端进行判断,从而无需额外传输比特来表示编码端选中的变换方式。
可选地,在本发明另一个实施例中,可以分别采用所述多种变换方式对所述图像块进行滤波,确定每种变换方式对应的选择指标;选择所述选择指标最优的变换方式作为所述第一变换方式。
具体而言,在本实施例中,在选择变换方式时,可以对每种变换方式都尝试一遍,然后选择最优的变换方式。可选地,用于判断是否最优的选择指标可以是滤波后的图像块与原始图像块的差异。例如,所述选择指标可以为误差平方和(Sum of Squared Error,SSE),在这种情况下,所述第一变换方式为SSE最小的变换方式。
例如,SSE可以采用如下公式进行计算。
Figure PCTCN2018081650-appb-000015
其中H、W代表编码图像块(例如CTU或者整帧图像)的高度和宽 度,f(h,w)代表原始值,
Figure PCTCN2018081650-appb-000016
代表滤波重建后的值。
应理解,上述选择指标也可以采用其他指标,本发明实施例对此并不限定。
可选地,在本发明另一个实施例中,编码端可以编码变换方式指示信息,所述变换方式指示信息用于指示所述第一变换方式。可选地,所述变换方式指示信息可以以图像块为单位进行编码。
也就是说,编码端可以将所选择的变换方式写入码流,发送给解码端。相应地,解码端可以根据解码的变换方式指示信息,确定所述第一变换方式。
若变换方式的选取是CTU级的操作,变换方式写入码流的方式可以是每个CTU都传递一个变换方式对应的编号,其中可以有合并操作;也可以是每帧传递一次指示信息,指示该帧所有CTU的变换方式。若变换方式的选取是帧级的操作,则采用帧级传递的方式,即选取最适合整帧图像的变换方式,传递至解码端,这样可以减少传输的比特数。
应理解,在本发明实施例中,编码端可以向解码端发送变换方式指示信息,也可以不向解码端发送变换方式指示信息。在编码端发送变换方式指示信息的情况下,解码端可以直接根据该变换方式指示信息,确定所采用的变换方式;在编码端不发送变换方式指示信息的情况下,解码端可以采用与编码端同样的选择方式,选择所采用的变换方式。
420,确定所述第一变换方式对应的第一阈值。
在本发明实施例中,针对所选择的变换方式,确定该变换方式对应的阈值。不同的变换方式的阈值的影响因素可能不同,因此,对于不同的变换方式,可以采用不同的阈值确定方式。阈值的确定方式可以采用离线估计方式或者在线估计方式,这两种阈值确定方式可以根据变换方式进行选择。
可选地,在本发明一个实施例中,可以根据预设的阈值信息,确定所述第一阈值。
在本实施例中,可以针对变换方式的阈值的影响因素,选择根据预设的阈值信息,确定阈值的方式,即离线估计方式。例如,若所选择的变换方式的阈值的影响因素与视频的具体内容关系不大,则可以采用离线估计方式。即,由离线估计方式确定阈值信息。例如,可以通过离线估计方式确定阈值与编码参数的函数关系,或通过离线估计方式确定阈值与编码参数的查表关系。
对于离线估计而言,就是通过量化参数(Quantization Parameter,QP)、帧类型、帧间参考关系、图像层级(layer)等编码参数进行阈值的训练,得到它们之间的函数关系。这种方式与视频、帧内容无关,编解码端固定采用同样的函数关系。
例如,可以采用如下的阈值计算函数关系:
Figure PCTCN2018081650-appb-000017
其中,0.13和0.71代表的数值为离线训练得到的,不同的比特深度,不同的帧类型,以及色度和亮度都对应不同的参数(0.13和0.71对应位置的数值)。
应理解,上述函数关系只是举例,离线估计的参数模型未必是上述这种,也可以采用其他估计方式。
可选地,在本发明另一个实施例中,可以根据所述图像块的图像特征,确定所述第一阈值。
在本实施例中,采用在线估计的方式确定阈值。具体地,基于图像块本身的特征,计算阈值。例如,若所选择的变换方式的阈值的影响因素与图像特征关系较大,则可以采用基于图像特征确定阈值的方式。
可选地,图像特征可以包括方差、纹理和结构特性中的至少一项。以图像特征为方差σ 2为例,可以采用如下的阈值计算公式。
Figure PCTCN2018081650-appb-000018
其中,
Figure PCTCN2018081650-appb-000019
代表压缩噪声的标准差,
Figure PCTCN2018081650-appb-000020
依次代表矩阵
Figure PCTCN2018081650-appb-000021
第k维SVD空间的原始图像标准差。参数c是一个随原始信号分布而改变的常数。例如对于高斯分布信号c=1,拉普拉斯分布c=22。
可选地,在本发明另一个实施例中,编码端可以编码所述阈值指示信息,所述阈值指示信息用于指示所述第一阈值。
也就是说,编码端可以将所确定的阈值写入码流,发送给解码端。相应地,解码端可以根据解码的阈值指示信息,确定所述第一阈值。
应理解,所述阈值指示信息可以在视频参数集(Video Parameter Set)、序列头(Sequence Header)、序列参数集(Sequence Parameter Set)、图像头(Picture Header)、图像参数集(Picture Parameter Set)、条带头(Slice Header)编码中进行编码。解码端从视频参数集(Video Parameter Set)、序列头(Sequence Header)、序列参数集(Sequence Parameter Set)、图像头(Picture  Header)、图像参数集(Picture Parameter Set)、条带头(Slice Header)解码所述第一阈值。
可选的,在视频编解码技术中图像通常分为不同的层级(layer),不同层级的图像具有不同的参考预测关系、或不同的重要性、或不同的分辨率、或不同的编码质量。本发明可在视频参数集、序列头、序列参数集、参考图像集(Reference Picture Set)中编码不同图像层级对应的所述阈值指示信息。解码端从视频参数集、序列头、序列参数集、参考图像集中解码不同图像层级对应的所述阈值指示信息。
应理解,在本发明实施例中,编码端可以向解码端发送阈值指示信息,也可以不向解码端发送阈值指示信息。在编码端发送阈值指示信息的情况下,解码端可以直接根据该阈值指示信息,确定所采用的阈值,这样可以有效降低解码端的处理复杂度;在编码端不发送阈值指示信息的情况下,解码端可以采用与编码端同样的确定方式确定阈值。
430,根据所述第一变换方式和所述第一阈值,对待滤波的图像块进行滤波,得到重建图像块。
在多种变换方式中确定所采用的变换方式,并针对所采用的变换方式确定阈值后,根据确定的变换方式和阈值,对图像块进行滤波处理,得到重建图像块。
具体而言,在创建图像块的结构数组后,可以根据所述第一变换方式和所述第一阈值,对创建的图像块的结构数组进行分解,即,采用所述第一变换方式进行分解,其中的硬阈值操作采用所述第一阈值,然后根据分解的结构数组,获得重建结构数组,进而得到重建图像块。
例如,若所采用的变换方式为SVD,则可以采用前述SVD的方式对结构数组进行分解。
本发明实施例的技术方案,通过在多种变换方式中确定所采用的变换方式,并针对所采用的变换方式确定阈值,能够提高环路滤波的普适性和鲁棒性,从而能够提高环路滤波的性能。
上文中详细描述了本发明实施例的环路滤波的方法,下面将描述本发明实施例的环路滤波的装置和计算机***。
图5示出了本发明一个实施例的环路滤波的装置500的示意性框图。该装置500可以执行上述本发明实施例的环路滤波的方法。
如图5所示,该装置500可以包括:
获变换方式确定模块510,用于在多种变换方式中确定第一变换方式;
阈值确定模块520,用于确定所述第一变换方式对应的第一阈值;
处理模块530,用于根据所述第一变换方式和所述第一阈值,对待滤波的图像块进行滤波,得到重建图像块。
可选地,在本发明另一个实施例中,所述变换方式确定模块510具体用于:
根据所述图像块的图像特征,确定所述第一变换方式。
可选地,在本发明另一个实施例中,所述变换方式确定模块510具体用于:
根据所述图像块的图像特征,以及所述多种变换方式与图像特征的对应关系,确定所述第一变换方式。
可选地,在本发明另一个实施例中,所述处理模块530用于:
分别采用所述多种变换方式对所述图像块进行滤波,确定每种变换方式对应的选择指标;
所述变换方式确定模块510具体用于:选择所述选择指标最优的变换方式作为所述第一变换方式。
可选地,在本发明另一个实施例中,所述选择指标为SSE,所述第一变换方式为SSE最小的变换方式。
可选地,在本发明另一个实施例中,所述装置500应用于编码端,所述处理模块530还用于:
编码变换方式指示信息,所述变换方式指示信息用于指示所述第一变换方式。
可选地,所述变换方式指示信息以图像块为单位进行编码。
可选地,在本发明另一个实施例中,所述装置500应用于解码端,所述变换方式确定模块510具体用于:
根据解码的变换方式指示信息,确定所述第一变换方式。
可选地,在本发明另一个实施例中,所述阈值确定模块520具体用于:
根据预设的阈值信息,确定所述第一阈值。
可选地,在本发明另一个实施例中,所述阈值信息是由离线估计方式确定的。
可选地,在本发明另一个实施例中,所述阈值信息包括阈值与编码参数的函数关系,或阈值与编码参数的查表关系。
可选地,在本发明另一个实施例中,所述阈值确定模块520具体用于:
根据所述图像块的图像特征,确定所述第一阈值。
可选地,在本发明另一个实施例中,所述图像特征包括方差、纹理和结构特性中的至少一项。
可选地,在本发明另一个实施例中,所述装置500应用于编码端,所述处理模块530还用于:
编码阈值指示信息,所述阈值指示信息用于指示所述第一阈值。
可选地,所述处理模块530用于在视频参数集、序列头、序列参数集、图像头、图像参数集、条带头编码所述阈值指示信息。
可选地,所述处理模块530用于在视频参数集、序列头、序列参数集、参考图像集中编码不同图像层级对应的所述阈值指示信息。
可选地,在本发明另一个实施例中,所述装置500应用于解码端,所述阈值确定模块520具体用于:
根据解码的阈值指示信息,确定所述第一阈值。
可选地,所述处理模块530还用于在视频参数集、序列头、序列参数集、图像头、图像参数集、条带头解码所述阈值指示信息。
可选地,所述处理模块530还用于在视频参数集、序列头、序列参数集、参考图像集中解码不同图像层级对应的所述阈值指示信息。
可选地,在本发明另一个实施例中,所述多种变换方式包括SVD、DCT、哈达玛变换、KLT和SDT中的至少两种变换方式。
可选地,在本发明另一个实施例中,所述图像块为CTU或者整帧图像。
应理解,上述本发明实施例的环路滤波的装置可以是芯片,其具体可以由电路实现,但本发明实施例对具体的实现形式不做限定。
本发明实施例还提供了一种编码器,该编码器用于实现本发明实施例中编码端的功能,可以包括上述本发明实施例的环路滤波的装置中用于 编码端的模块。
本发明实施例还提供了一种解码器,该解码器用于实现本发明实施例中解码端的功能,可以包括上述本发明实施例的环路滤波的装置中用于解码端的模块。
本发明实施例还提供了一种编解码器,该编解码器包括上述本发明实施例的环路滤波的装置。
图6示出了本发明实施例的计算机***600的示意性框图。
如图6所示,该计算机***600可以包括处理器610和存储器620。
应理解,该计算机***600还可以包括其他计算机***中通常所包括的部件,例如,输入输出设备、通信接口等,本发明实施例对此并不限定。
存储器620用于存储计算机可执行指令。
存储器620可以是各种种类的存储器,例如可以包括高速随机存取存储器(Random Access Memory,RAM),还可以包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器,本发明实施例对此并不限定。
处理器610用于访问该存储器620,并执行该计算机可执行指令,以进行上述本发明实施例的环路滤波的方法中的操作。
处理器610可以包括微处理器,现场可编程门阵列(Field-Programmable Gate Array,FPGA),中央处理器(Central Processing unit,CPU),图形处理器(Graphics Processing Unit,GPU)等,本发明实施例对此并不限定。
本发明实施例的环路滤波的装置和计算机***可对应于本发明实施例的环路滤波的方法的执行主体,并且环路滤波的装置和计算机***中的各个模块的上述和其它操作和/或功能分别为了实现前述各个方法的相应流程,为了简洁,在此不再赘述。
本发明实施例还提供了一种电子设备,该电子设备可以包括上述本发明各种实施例的环路滤波的装置或者计算机***。
本发明实施例还提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码可以用于指示执行上述本发明实施例的环路滤波的方法。
应理解,在本发明实施例中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理 解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (43)

  1. 一种环路滤波的方法,其特征在于,包括:
    在多种变换方式中确定第一变换方式;
    确定所述第一变换方式对应的第一阈值;
    根据所述第一变换方式和所述第一阈值,对待滤波的图像块进行滤波,得到重建图像块。
  2. 根据权利要求1所述的方法,其特征在于,所述在多种变换方式中确定第一变换方式,包括:
    根据所述图像块的图像特征,确定所述第一变换方式。
  3. 根据权利要求2所述的方法,其特征在于,所述根据所述图像块的图像特征,确定所述第一变换方式,包括:
    根据所述图像块的图像特征,以及所述多种变换方式与图像特征的对应关系,确定所述第一变换方式。
  4. 根据权利要求1所述的方法,其特征在于,所述在多种变换方式中确定第一变换方式,包括:
    分别采用所述多种变换方式对所述图像块进行滤波,确定每种变换方式对应的选择指标;
    选择所述选择指标最优的变换方式作为所述第一变换方式。
  5. 根据权利要求4所述的方法,其特征在于,所述选择指标为误差平方和SSE,所述第一变换方式为SSE最小的变换方式。
  6. 根据权利要求1至5中任一项所述的方法,其特征在于,所述方法还包括:
    编码变换方式指示信息,所述变换方式指示信息用于指示所述第一变换方式。
  7. 根据权利要求6所述的方法,其特征在于,所述变换方式指示信息以图像块为单位进行编码。
  8. 根据权利要求1所述的方法,其特征在于,所述在多种变换方式中确定第一变换方式,包括:
    根据解码的变换方式指示信息,确定所述第一变换方式。
  9. 根据权利要求1至8中任一项所述的方法,其特征在于,所述确定所述第一变换方式对应的第一阈值,包括:
    根据预设的阈值信息,确定所述第一阈值。
  10. 根据权利要求9所述的方法,其特征在于,所述阈值信息是由离线估计方式确定的。
  11. 根据权利要求9或10所述的方法,其特征在于,所述阈值信息包括阈值与编码参数的函数关系,或阈值与编码参数的查表关系。
  12. 根据权利要求1至8中任一项所述的方法,其特征在于,所述确定所述第一变换方式对应的第一阈值,包括:
    根据所述图像块的图像特征,确定所述第一阈值。
  13. 根据权利要求2、3或12所述的方法,其特征在于,所述图像特征包括方差、纹理和结构特性中的至少一项。
  14. 根据权利要求1至13中任一项所述的方法,其特征在于,所述方法还包括:
    编码所述阈值指示信息,所述阈值指示信息用于指示所述第一阈值。
  15. 根据权利要求14所述的方法,其特征在于,在视频参数集、序列头、序列参数集、图像头、图像参数集、条带头编码所述阈值指示信息。
  16. 根据权利要求14所述的方法,其特征在于,在视频参数集、序列头、序列参数集、参考图像集中编码不同图像层级对应的所述阈值指示信息。
  17. 根据权利要求1至8中任一项所述的方法,其特征在于,所述确定所述第一变换方式对应的第一阈值,包括:
    根据解码的阈值指示信息,确定所述第一阈值。
  18. 根据权利要求17所述的方法,其特征在于,在视频参数集、序列头、序列参数集、图像头、图像参数集、条带头解码所述阈值指示信息。
  19. 根据权利要求17所述的方法,其特征在于,在视频参数集、序列头、序列参数集、参考图像集中解码不同图像层级对应的所述阈值指示信息。
  20. 根据权利要求1至19中任一项所述的方法,其特征在于,所述多种变换方式包括奇异值分解SVD、离散余弦变换DCT、哈达玛变换、Karhunen-Loeve变换KLT和信号依赖变换SDT中的至少两种变换方式。
  21. 根据权利要求1至20中任一项所述的方法,其特征在于,所述图像块为编码树单元CTU或者整帧图像。
  22. 一种环路滤波的装置,其特征在于,包括:
    变换方式确定模块,用于在多种变换方式中确定第一变换方式;
    阈值确定模块,用于确定所述第一变换方式对应的第一阈值;
    处理模块,用于根据所述第一变换方式和所述第一阈值,对待滤波的图像块进行滤波,得到重建图像块。
  23. 根据权利要求22所述的装置,其特征在于,所述变换方式确定模块具体用于:
    根据所述图像块的图像特征,确定所述第一变换方式。
  24. 根据权利要求23所述的装置,其特征在于,所述变换方式确定模块具体用于:
    根据所述图像块的图像特征,以及所述多种变换方式与图像特征的对应关系,确定所述第一变换方式。
  25. 根据权利要求22所述的装置,其特征在于,所述处理模块用于:
    分别采用所述多种变换方式对所述图像块进行滤波,确定每种变换方式对应的选择指标;
    所述变换方式确定模块具体用于:选择所述选择指标最优的变换方式作为所述第一变换方式。
  26. 根据权利要求25所述的装置,其特征在于,所述选择指标为误差平方和SSE,所述第一变换方式为SSE最小的变换方式。
  27. 根据权利要求22至26中任一项所述的装置,其特征在于,所述处理模块还用于:
    编码变换方式指示信息,所述变换方式指示信息用于指示所述第一变换方式。
  28. 根据权利要求27所述的装置,其特征在于,所述变换方式指示信息以图像块为单位进行编码。
  29. 根据权利要求22所述的装置,其特征在于,所述变换方式确定模块具体用于:
    根据解码的变换方式指示信息,确定所述第一变换方式。
  30. 根据权利要求22至29中任一项所述的装置,其特征在于,所述阈值确定模块具体用于:
    根据预设的阈值信息,确定所述第一阈值。
  31. 根据权利要求30所述的装置,其特征在于,所述阈值信息是由离线估计方式确定的。
  32. 根据权利要求30或31所述的装置,其特征在于,所述阈值信息包括阈值与编码参数的函数关系,或阈值与编码参数的查表关系。
  33. 根据权利要求22至29中任一项所述的装置,其特征在于,所述阈值确定模块具体用于:
    根据所述图像块的图像特征,确定所述第一阈值。
  34. 根据权利要求23、24或33所述的装置,其特征在于,所述图像特征包括方差、纹理和结构特性中的至少一项。
  35. 根据权利要求22至34中任一项所述的装置,其特征在于,所述处理模块还用于:
    编码阈值指示信息,所述阈值指示信息用于指示所述第一阈值。
  36. 根据权利要求35所述的装置,其特征在于,所述处理模块用于在视频参数集、序列头、序列参数集、图像头、图像参数集、条带头编码所述阈值指示信息。
  37. 根据权利要求35所述的装置,其特征在于,所述处理模块用于在视频参数集、序列头、序列参数集、参考图像集中编码不同图像层级对应的所述阈值指示信息。
  38. 根据权利要求22至29中任一项所述的装置,其特征在于,所述阈值确定模块具体用于:
    根据解码的阈值指示信息,确定所述第一阈值。
  39. 根据权利要求38所述的装置,其特征在于,所述处理模块还用于在视频参数集、序列头、序列参数集、图像头、图像参数集、条带头解码所述阈值指示信息。
  40. 根据权利要求38所述的装置,其特征在于,所述处理模块还用于在视频参数集、序列头、序列参数集、参考图像集中解码不同图像层级对应的所述阈值指示信息。
  41. 根据权利要求22至40中任一项所述的装置,其特征在于,所述多种变换方式包括奇异值分解SVD、离散余弦变换DCT、哈达玛变换、Karhunen-Loève变换KLT和信号依赖变换SDT中的至少两种变换方式。
  42. 根据权利要求22至41中任一项所述的装置,其特征在于,所述图像块为编码树单元CTU或者整帧图像。
  43. 一种计算机***,其特征在于,包括:
    存储器,用于存储计算机可执行指令;
    处理器,用于访问所述存储器,并执行所述计算机可执行指令,以进行根据权利要求1至21中任一项所述的方法中的操作。
PCT/CN2018/081650 2018-04-02 2018-04-02 环路滤波的方法、装置和计算机*** WO2019191888A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201880012509.4A CN110337812A (zh) 2018-04-02 2018-04-02 环路滤波的方法、装置和计算机***
PCT/CN2018/081650 WO2019191888A1 (zh) 2018-04-02 2018-04-02 环路滤波的方法、装置和计算机***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/081650 WO2019191888A1 (zh) 2018-04-02 2018-04-02 环路滤波的方法、装置和计算机***

Publications (1)

Publication Number Publication Date
WO2019191888A1 true WO2019191888A1 (zh) 2019-10-10

Family

ID=68099797

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/081650 WO2019191888A1 (zh) 2018-04-02 2018-04-02 环路滤波的方法、装置和计算机***

Country Status (2)

Country Link
CN (1) CN110337812A (zh)
WO (1) WO2019191888A1 (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101415121A (zh) * 2007-10-15 2009-04-22 华为技术有限公司 一种自适应的帧预测的方法及装置
JP2009272727A (ja) * 2008-04-30 2009-11-19 Toshiba Corp 予測誤差の方向性に基づく変換方法、画像符号化方法及び画像復号化方法
CN102292990A (zh) * 2008-11-25 2011-12-21 汤姆森特许公司 对视频编码和解码进行基于稀疏性的去伪像滤波的方法和装置
CN102918564A (zh) * 2010-03-10 2013-02-06 汤姆森特许公司 具有变换选择的用于视频编码和解码的约束变换的方法和装置
WO2017080887A1 (en) * 2015-11-09 2017-05-18 Thomson Licensing Encoding and decoding method and corresponding devices
CN106791879A (zh) * 2016-11-30 2017-05-31 北京工业大学 一种基于视频编码模式的方向变换方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7162097B1 (en) * 2001-05-29 2007-01-09 Cisco Technology, Inc. Methods and apparatus for transform coefficient filtering
US7760960B2 (en) * 2006-09-15 2010-07-20 Freescale Semiconductor, Inc. Localized content adaptive filter for low power scalable image processing
CN105392005A (zh) * 2006-11-08 2016-03-09 汤姆逊许可证公司 用于环内去伪影滤波的方法和设备
US9357221B2 (en) * 2009-07-23 2016-05-31 Thomson Licensing Methods and apparatus for adaptive transform selection for video encoding and decoding
JP5741076B2 (ja) * 2010-12-09 2015-07-01 ソニー株式会社 画像処理装置及び画像処理方法
EP3395073A4 (en) * 2016-02-04 2019-04-10 Mediatek Inc. VIDEO ENCODING METHOD AND APPARATUS USING NON-LOCAL ADAPTIVE LOOP FILTERS
CN105763881A (zh) * 2016-02-23 2016-07-13 北京大学 利用图像非局部结构相似性特征的视频编码图像滤波方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101415121A (zh) * 2007-10-15 2009-04-22 华为技术有限公司 一种自适应的帧预测的方法及装置
JP2009272727A (ja) * 2008-04-30 2009-11-19 Toshiba Corp 予測誤差の方向性に基づく変換方法、画像符号化方法及び画像復号化方法
CN102292990A (zh) * 2008-11-25 2011-12-21 汤姆森特许公司 对视频编码和解码进行基于稀疏性的去伪像滤波的方法和装置
CN102918564A (zh) * 2010-03-10 2013-02-06 汤姆森特许公司 具有变换选择的用于视频编码和解码的约束变换的方法和装置
WO2017080887A1 (en) * 2015-11-09 2017-05-18 Thomson Licensing Encoding and decoding method and corresponding devices
CN106791879A (zh) * 2016-11-30 2017-05-31 北京工业大学 一种基于视频编码模式的方向变换方法

Also Published As

Publication number Publication date
CN110337812A (zh) 2019-10-15

Similar Documents

Publication Publication Date Title
WO2021244363A1 (zh) 点云压缩方法、编码器、解码器及存储介质
Zhang et al. CONCOLOR: Constrained non-convex low-rank model for image deblocking
US20200329233A1 (en) Hyperdata Compression: Accelerating Encoding for Improved Communication, Distribution &amp; Delivery of Personalized Content
WO2020061005A1 (en) Use of non-linear function applied to quantization parameters in machine-learning models for video coding
WO2019157717A1 (zh) 运动补偿的方法、装置和计算机***
CN108141592B (zh) 用于编码和解码数字图像或视频流的方法和装置
US11394966B2 (en) Video encoding and decoding method and apparatus
CN110024391B (zh) 用于编码和解码数字图像或视频流的方法和装置
WO2019191891A1 (zh) 用于视频处理的方法和设备
Yadav et al. A review on image compression techniques
JP2023515742A (ja) ループ内フィルタリングの方法、コンピュータ可読記憶媒体及びプログラム
Kamisli Block-based spatial prediction and transforms based on 2D Markov processes for image and video compression
US10771815B2 (en) Method and apparatus for processing video signals using coefficient induced prediction
Nguyen et al. A novel steganography scheme for video H. 264/AVC without distortion drift
Zhu et al. Compression-dependent transform-domain downward conversion for block-based image coding
Li et al. Deep image compression based on multi-scale deformable convolution
Yuan et al. Object shape approximation and contour adaptive depth image coding for virtual view synthesis
WO2019191888A1 (zh) 环路滤波的方法、装置和计算机***
Petrov et al. Intra frame compression and video restoration based on conditional markov processes theory
US20230141888A1 (en) Bicriteria Block Splitting Heuristic For Lossy Compression
CN107509074A (zh) 基于压缩感知的自适应3d视频编解码方法
CN111279706B (zh) 环路滤波的方法、装置、计算机***和可移动设备
WO2019191887A1 (zh) 运动补偿的方法、装置和计算机***
WO2019157718A1 (zh) 运动补偿的方法、装置和计算机***
WO2023141970A1 (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: 18913842

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18913842

Country of ref document: EP

Kind code of ref document: A1