Patents by Inventor Yunqing Wang
Yunqing Wang has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20250071319Abstract: Techniques are described for motion vector resolution based motion vector prediction for video coding. A motion vector precision level for coding a current block is determined, a motion vector reference list is generated using the motion vector precision level, an index into the motion vector reference list is determined, where the index identifies a motion vector candidate from the motion vector reference list, and a motion vector for inter prediction of the current block is coded using the motion vector candidate. The motion vector precision level can indicate a single resolution for generating the motion vector reference list or a first resolution for generating the motion vector reference list and a second resolution for coding motion vector residuals of the motion vector.Type: ApplicationFiled: August 21, 2024Publication date: February 27, 2025Inventors: Yunqing Wang, Jingning Han, Bohan Li, Yaowu Xu
-
Publication number: 20240430415Abstract: Filtering for a block of pixels that uses variable rounding bits to change the resolution of a filter result is described. The rounding bits are derived adaptively for the block for high precision in the filtering calculations. While useful to change the bit depth in single-stage filtering, the techniques are particularly useful for multi-stage filtering. A first filtering operation may be performed on the block having an input bit depth. The output is an intermediate filter result with a precision greater than the input bit depth. A rounding bit value for modifying the precision of the intermediate filter result is adaptively determined. The precision is modified using the rounding bit value. Thereafter, a second filtering operation may be performed on the intermediate filter result. An output of the second filtering operation is a filtered block of pixels, with which a coding operation may be performed.Type: ApplicationFiled: June 23, 2023Publication date: December 26, 2024Inventor: Yunqing Wang
-
Publication number: 20240388690Abstract: Video coding using warped motion compensation is described. Extended rotations for the warped motion compensation can be explicitly signaled. For example, motion parameters for predicting the current block and a rotation angle can be decoded. A warping matrix is obtained using the motion parameters and the rotation angle, and a prediction block is obtained by projecting the current block to a quadrilateral in a reference frame. Also described is determining a prediction model of the current block and obtaining a prediction block by projecting the current block to a quadrilateral in a reference frame. Determining the prediction model can include determining whether to predict the current block using a motion vector, a local warping model, or a global motion model, obtaining motion parameters of the prediction model, decoding a rotation angle, and obtaining a warping matrix using the motion parameters and the rotation angle.Type: ApplicationFiled: July 15, 2021Publication date: November 21, 2024Inventors: Yue Chen, Yu Wang, Hui Su, Debargha Mukherjee, Yunqing Wang
-
Patent number: 11044480Abstract: A method for encoding a block of a video using inter prediction includes selecting, during motion estimation for the block, a first sub-pixel interpolation filter for sub-pixel interpolation of fractional motion; selecting, during motion compensation, a second sub-pixel interpolation filter based on the first sub-pixel interpolation filter; and encoding, in a compressed bitstream, the second sub-pixel interpolation filter. The first sub-pixel interpolation filter is a 2-tap filter. The first sub-pixel interpolation filter includes weight tuples. Each weight tuple includes two weights and used for sub-pixel interpolation at a sub-pixel location between a first pixel and a second pixel. For at least one weight tuple of the weight tuples, the two weights are not based on a first distance between the sub-pixel location and the first pixel and a second distance between the sub-pixel location and the second pixel.Type: GrantFiled: January 24, 2019Date of Patent: June 22, 2021Assignee: GOOGLE LLCInventor: Yunqing Wang
-
Patent number: 10812813Abstract: Described herein are classifiers that are used to determine whether or not to partition a block in frame during prediction using recursive partitioning. Blocks of training video frames are encoded using recursive partitioning to generate encoded blocks. Training instances are generated for the encoded blocks that include values of features extracted from each encoded block and a label indicating whether or not the encoded block is partitioned into smaller blocks in the recursive partitioning. The classifiers are trained for different block sizes using the training instances associated with the block size as input to a machine-learning process. When encoding frames of a video sequence, the output of the classifiers determines whether input blocks are partitioned during encoding.Type: GrantFiled: July 19, 2019Date of Patent: October 20, 2020Assignee: GOOGLE LLCInventors: Yunqing Wang, Xintong Han, Yang Xian
-
Publication number: 20200244971Abstract: A method for encoding a block of a video using inter prediction includes selecting, during motion estimation for the block, a first sub-pixel interpolation filter for sub-pixel interpolation of fractional motion; selecting, during motion compensation, a second sub-pixel interpolation filter based on the first sub-pixel interpolation filter; and encoding, in a compressed bitstream, the second sub-pixel interpolation filter. The first sub-pixel interpolation filter is a 2-tap filter. The first sub-pixel interpolation filter includes weight tuples. Each weight tuple includes two weights and used for sub-pixel interpolation at a sub-pixel location between a first pixel and a second pixel. For at least one weight tuple of the weight tuples, the two weights are not based on a first distance between the sub-pixel location and the first pixel and a second distance between the sub-pixel location and the second pixel.Type: ApplicationFiled: January 24, 2019Publication date: July 30, 2020Inventor: Yunqing Wang
-
Patent number: 10645417Abstract: Video blocks of stereo or non-stereo video sequences are coded using a parameterized motion model. For example, encoding a current block of a stereo video sequence can include determining a block-level disparity between first and second frames and identifying plane normal candidates within the current block of the first frame based on the block-level disparity. One of the plane normal candidates is selected based on rate-distortion values, and warping parameters are determined for predicting motion within the current block using the selected plane normal candidate. The current block is then encoded using a reference block generated by applying the warping parameters. Decoding that encoded block can include receiving a bitstream representing an encoded stereo video sequence, determining warping parameters for predicting motion within the encoded block based on syntax elements encoded to the bitstream, and decoding encoded block using a reference block generated by applying the warping parameters.Type: GrantFiled: October 9, 2017Date of Patent: May 5, 2020Assignee: GOOGLE LLCInventors: Yunqing Wang, Yiming Qian
-
Patent number: 10582212Abstract: A motion vector candidate list is generated that can be used to encode or decode a motion vector used to predict the current block. A motion mode and motion information for a source block is determined. A motion vector used to predict the source block is added to the list responsive to determining that the motion mode for the source block is a translational motion mode and that a reference frame for the source block matches the reference frame for the current block. A warped reference motion vector is instead added to the list responsive to determining that the motion mode for the source block is a warped motion mode and that the reference frame for the source block matches the reference frame for the current block. A reference motion vector from the list is selected for encoding or decoding the current block motion vector.Type: GrantFiled: December 19, 2017Date of Patent: March 3, 2020Assignee: GOOGLE LLCInventors: Debargha Mukherjee, Yunqing Wang
-
Patent number: 10554965Abstract: A method and apparatus for video coding using motion-compensated partitioning is provided. Video coding using motion-compensated partitioning may include identifying a current block of a current frame of an input video stream, generating an encoded block by encoding the current block using motion-compensated partitioning, wherein encoding the current block using motion-compensated partitioning includes, generating coarse motion estimation information for the current block, partitioning the current block, generating fine motion estimation information for the current block, and transmitting or storing the encoded block.Type: GrantFiled: August 18, 2014Date of Patent: February 4, 2020Assignee: GOOGLE LLCInventor: Yunqing Wang
-
Patent number: 10542258Abstract: Tile copying may include decoding a current frame from an encoded video bitstream by decoding, from the encoded video bitstream, tile information for a current tile of the current frame. Decoding the tile information for the current tile of the current frame includes decoding a reference tile offset, and the tile information for the current tile omits encoded tile content information corresponding to the current tile. From the encoded video bitstream, encoded tile content information corresponding to the reference tile is identified based on the reference tile offset, a decoded tile corresponding to the current tile is generated by decoding the encoded tile content information corresponding to the reference tile as the current tile, and the decoded tile is output or stored.Type: GrantFiled: January 25, 2016Date of Patent: January 21, 2020Assignee: GOOGLE LLCInventor: Yunqing Wang
-
Publication number: 20190342561Abstract: Described herein are classifiers that are used to determine whether or not to partition a block in frame during prediction using recursive partitioning. Blocks of training video frames are encoded using recursive partitioning to generate encoded blocks. Training instances are generated for the encoded blocks that include values of features extracted from each encoded block and a label indicating whether or not the encoded block is partitioned into smaller blocks in the recursive partitioning. The classifiers are trained for different block sizes using the training instances associated with the block size as input to a machine-learning process. When encoding frames of a video sequence, the output of the classifiers determines whether input blocks are partitioned during encoding.Type: ApplicationFiled: July 19, 2019Publication date: November 7, 2019Inventors: Yunqing Wang, Xintong Han, Yang Xian
-
Patent number: 10382770Abstract: Described herein are classifiers that are used to determine whether or not to partition a block in frame during prediction using recursive partitioning. Blocks of training video frames are encoded using recursive partitioning to generate encoded blocks. Training instances are generated for the encoded blocks that include values of features extracted from each encoded block and a label indicating whether or not the encoded block is partitioned into smaller blocks in the recursive partitioning. The classifiers are trained for different block sizes using the training instances associated with the block size as input to a machine-learning process. When encoding frames of a video sequence, the output of the classifiers determines whether input blocks are partitioned during encoding.Type: GrantFiled: February 6, 2017Date of Patent: August 13, 2019Assignee: GOOGLE LLCInventors: Yunqing Wang, Xintong Han, Yang Xian
-
Publication number: 20190110075Abstract: Video blocks of stereo or non-stereo video sequences are coded using a parameterized motion model. For example, encoding a current block of a stereo video sequence can include determining a block-level disparity between first and second frames and identifying plane normal candidates within the current block of the first frame based on the block-level disparity. One of the plane normal candidates is selected based on rate-distortion values, and warping parameters are determined for predicting motion within the current block using the selected plane normal candidate. The current block is then encoded using a reference block generated by applying the warping parameters. Decoding that encoded block can include receiving a bitstream representing an encoded stereo video sequence, determining warping parameters for predicting motion within the encoded block based on syntax elements encoded to the bitstream, and decoding encoded block using a reference block generated by applying the warping parameters.Type: ApplicationFiled: October 9, 2017Publication date: April 11, 2019Inventors: Yunqing Wang, Yiming Qian
-
Publication number: 20190110063Abstract: A motion vector candidate list is generated that can be used to encode or decode a motion vector used to predict the current block. A motion mode and motion information for a source block is determined. A motion vector used to predict the source block is added to the list responsive to determining that the motion mode for the source block is a translational motion mode and that a reference frame for the source block matches the reference frame for the current block. A warped reference motion vector is instead added to the list responsive to determining that the motion mode for the source block is a warped motion mode and that the reference frame for the source block matches the reference frame for the current block. A reference motion vector from the list is selected for encoding or decoding the current block motion vector.Type: ApplicationFiled: December 19, 2017Publication date: April 11, 2019Inventors: Debargha Mukherjee, Yunqing Wang
-
Publication number: 20180227585Abstract: Described herein are classifiers that are used to determine whether or not to partition a block in frame during prediction using recursive partitioning. Blocks of training video frames are encoded using recursive partitioning to generate encoded blocks. Training instances are generated for the encoded blocks that include values of features extracted from each encoded block and a label indicating whether or not the encoded block is partitioned into smaller blocks in the recursive partitioning. The classifiers are trained for different block sizes using the training instances associated with the block size as input to a machine-learning process. When encoding frames of a video sequence, the output of the classifiers determines whether input blocks are partitioned during encoding.Type: ApplicationFiled: February 6, 2017Publication date: August 9, 2018Inventors: Yunqing Wang, Xintong Han, Yang Xian
-
Patent number: 9955163Abstract: Disclosed is a method for encoding a block of video. The method includes identifying, by a processor, a transformed video data block including a plurality of transformed video data, identifying a first portion of the plurality of transformed video data, identifying a second portion of the plurality of transformed video data, determining a plurality of quantized values based on the second portion of the plurality of transformed video data, and generating a quantization coefficient data block including a first portion of a plurality of quantized data values corresponding to the first portion of the plurality of transformed video data and set to a default value and including a second portion of the plurality of quantized data values corresponding to the second portion of the plurality of transformed video data and set to the plurality of quantized values.Type: GrantFiled: June 17, 2013Date of Patent: April 24, 2018Assignee: GOOGLE LLCInventor: Yunqing Wang
-
Publication number: 20180007366Abstract: A method for encoding a video signal includes estimating a space requirement for encoding a tile of a video frame, writing a first value in a first value space of the bitstream, wherein the first value describes a size of a second value space, and defining the second value space in the bitstream, wherein the size of the second value space is based on an estimated space requirement. The method also includes writing encoded content in a content space of the bitstream, determining a size of the content space subsequent to writing encoded content in the content space, and writing a second value in the second value space of the bitstream, wherein the second value describes the size of the content space.Type: ApplicationFiled: September 15, 2017Publication date: January 4, 2018Inventors: Yunqing Wang, Jingning Han
-
Patent number: 9794574Abstract: A method for encoding a video signal includes estimating a space requirement for encoding a tile of a video frame, writing a first value in a first value space of the bitstream, wherein the first value describes a size of a second value space, and defining the second value space in the bitstream, wherein the size of the second value space is based on an estimated space requirement. The method also includes writing encoded content in a content space of the bitstream, determining a size of the content space subsequent to writing encoded content in the content space, and writing a second value in the second value space of the bitstream, wherein the second value describes the size of the content space.Type: GrantFiled: January 11, 2016Date of Patent: October 17, 2017Assignee: GOOGLE INC.Inventors: Yunqing Wang, Jingning Han
-
Publication number: 20170214920Abstract: Tile copying may include decoding a current frame from an encoded video bitstream by decoding, from the encoded video bitstream, tile information for a current tile of the current frame. Decoding the tile information for the current tile of the current frame includes decoding a reference tile offset, and the tile information for the current tile omits encoded tile content information corresponding to the current tile. From the encoded video bitstream, encoded tile content information corresponding to the reference tile is identified based on the reference tile offset, a decoded tile corresponding to the current tile is generated by decoding the encoded tile content information corresponding to the reference tile as the current tile, and the decoded tile is output or stored.Type: ApplicationFiled: January 25, 2016Publication date: July 27, 2017Inventor: YUNQING WANG
-
Publication number: 20170201752Abstract: A method for encoding a video signal includes estimating a space requirement for encoding a tile of a video frame, writing a first value in a first value space of the bitstream, wherein the first value describes a size of a second value space, and defining the second value space in the bitstream, wherein the size of the second value space is based on an estimated space requirement. The method also includes writing encoded content in a content space of the bitstream, determining a size of the content space subsequent to writing encoded content in the content space, and writing a second value in the second value space of the bitstream, wherein the second value describes the size of the content space.Type: ApplicationFiled: January 11, 2016Publication date: July 13, 2017Inventors: Yunqing Wang, Jingning Han