Patents by Inventor Kunal Mukerjee

Kunal Mukerjee 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: 20050053147
    Abstract: Forward motion vectors are predicted by an encoder/decoder using previously reconstructed (or estimated) forward motion vectors from a forward motion vector buffer, and backward motion vectors are predicted using previously reconstructed (or estimated) backward motion vectors from a backward motion vector buffer. The resulting motion vectors are added to the corresponding buffer. Holes in motion vector buffers can be filled in with estimated motion vector values. For example, for interlaced B-fields, to choose between different polarity motion vectors (e.g., “same polarity” or “opposite polarity”) for hole-filling, an encoder/decoder selects a dominant polarity field motion vector. The distance between anchors and current frames is computed using various syntax elements, and the computed distance is used for scaling reference field motion vectors.
    Type: Application
    Filed: September 15, 2004
    Publication date: March 10, 2005
    Applicant: Microsoft Corporation
    Inventors: Kunal Mukerjee, Thomas Holcomb
  • Publication number: 20050053148
    Abstract: An encoder/decoder uses intra-coded B-fields [“BI-fields”]. For example, rather than encoding many of the macroblocks in a field as intra macroblocks at a scene change, an encoder can choose to encode the entire field as intra. Encoding an entire field as a BI-field allows increased coding efficiency through reduced coding overhead at macroblock level, and without intra-frame dependency, the BI-field can still be dropped if appropriate in low-bitrate applications.
    Type: Application
    Filed: September 15, 2004
    Publication date: March 10, 2005
    Applicant: Microsoft Corporation
    Inventor: Kunal Mukerjee
  • Publication number: 20050053149
    Abstract: For interlaced B-frames, an encoder/decoder computes direct mode motion vectors for a current macroblock by selecting at most one representative motion vector for each of the top and bottom fields of the co-located macroblock of the previously decoded, temporally subsequent anchor. For example, the selecting is performed based at least in part on the mode of coding the current interlaced B-frame's macroblock (e.g., 1MV mode, 2 Field MV mode, etc.). For interlaced B-fields, an encoder/decoder selects direct mode motion vectors using logic that favors the dominant polarity if the corresponding macroblock in the corresponding field of the next anchor picture was coded using four motion vectors. For example, if the corresponding macroblock's same polarity motion vectors outnumber its opposite polarity motion vectors, the encoder/decoder calculates the median of the same polarity motion vectors to obtain a motion vector for deriving direct mode motion vectors.
    Type: Application
    Filed: September 15, 2004
    Publication date: March 10, 2005
    Applicant: Microsoft Corporation
    Inventors: Kunal Mukerjee, Thomas Holcomb
  • Publication number: 20050053296
    Abstract: In one aspect, for a first interlaced video frame in a video sequence, a decoder decodes a bitplane signaled at frame layer for the first interlaced video frame. The bitplane represents field/frame transform types for plural macroblocks of the first interlaced video frame. For a second interlaced video frame in the video sequence, for each of at least one but not all of plural macroblocks of the second interlaced video frame, the decoder processes a per macroblock field/frame transform type bit signaled at macroblock layer. An encoder performs corresponding encoding.
    Type: Application
    Filed: September 2, 2004
    Publication date: March 10, 2005
    Applicant: Microsoft Corporation
    Inventors: Sridhar Srinivasan, Chih-Lung Lin, Thomas Holcomb, Kunal Mukerjee, Pohsiang Hsu
  • Publication number: 20050053146
    Abstract: An encoder/decoder switches prediction modes between the fields in a field-coded macroblock of an interlaced B-frame. For example, the encoder/decoder switches between a forward prediction mode for the top field and a backward mode for the bottom field in the field-coded macroblock. Switching between forward and backward prediction modes within the same field-coded macroblock allows more flexibility to find efficient prediction modes for different portions of interlaced B-frames.
    Type: Application
    Filed: September 15, 2004
    Publication date: March 10, 2005
    Applicant: Microsoft Corporation
    Inventor: Kunal Mukerjee
  • Publication number: 20050053297
    Abstract: An encoder/decoder uses “self-referencing” frames. For example, a second B-field in a current frame references the first B-field from the current frame in motion compensated prediction. Allowing the first B-field in a frame to act as a reference for the second B-field in the frame allows more accurate prediction of the second B-field, while also preserving the temporal scalability benefits of having B-fields in the current frame.
    Type: Application
    Filed: September 15, 2004
    Publication date: March 10, 2005
    Applicant: Microsoft Corporation
    Inventors: Kunal Mukerjee, Thomas Holcomb
  • Publication number: 20050053298
    Abstract: For interlaced B-fields or interlaced B-frames, an encoder/decoder uses 4MV coding. For example, 4MV is used in one-direction prediction modes (forward or backward modes), but not in other available prediction modes (e.g., direct, interpolated). Using 4MV allows more accurate motion compensation for interlaced B-fields and interlaced B-frames; limiting 4MV to forward and backward modes reduces coding overhead and avoids decoding complexity associated with combining 4MV with modes such as direct and interpolated.
    Type: Application
    Filed: September 15, 2004
    Publication date: March 10, 2005
    Applicant: Microsoft Corporation
    Inventors: Kunal Mukerjee, Thomas Holcomb
  • Publication number: 20050053300
    Abstract: An encoder sends binary information indicating whether a prediction mode is forward or not-forward for one or more macroblocks in an interlaced B-field. For example, the encoder sends forward/not-forward decision information at B-field level in a compressed bitplane. Sending forward/not-forward prediction mode decision information in a compressed bitplane at B-field level can reduce coding overhead for prediction mode coding. A decoder performs corresponding decoding.
    Type: Application
    Filed: September 15, 2004
    Publication date: March 10, 2005
    Applicant: Microsoft Corporation
    Inventor: Kunal Mukerjee
  • Publication number: 20050053292
    Abstract: For interlaced B-fields or interlaced B-frames, forward motion vectors are predicted by an encoder/decoder using forward motion vectors from a forward motion vector buffer, and backward motion vectors are predicted using backward motion vectors from a backward motion vector buffer. The resulting motion vectors are added to the corresponding buffer. Holes in motion vector buffers can be filled in with estimated motion vector values. An encoder/decoder switches prediction modes between fields in a field-coded macroblock of an interlaced B-frame. For interlaced B-frames and interlaced B-fields, an encoder/decoder computes direct mode motion vectors. For interlaced B-fields or interlaced B-frames, an encoder/decoder uses 4 MV coding. An encoder/decoder uses “self-referencing” B-frames. An encoder sends binary information indicating whether a prediction mode is forward or not-forward for one or more macroblocks in an interlaced B-field. An encoder/decoder uses intra-coded B-fields [“BI-fields”].
    Type: Application
    Filed: June 29, 2004
    Publication date: March 10, 2005
    Applicant: Microsoft Corporation
    Inventors: Kunal Mukerjee, Thomas Holcomb
  • Publication number: 20050053294
    Abstract: A decoder receives luma motion vector information for plural luma motion vectors for a macroblock (e.g., a 4:2:0 macroblock). The decoder derives a chroma motion vector for each of the plural luma motion vectors by performing at least one calculation on the luma motion vector information, maintaining a 1:1 ratio of chroma motion vectors to luma motion vectors for the macroblock. For example, the decoder receives four luma (frame or field) motion vectors for a macroblock and derives four chroma motion vectors for the macroblock. The deriving can comprise sub-sampling and/or rounding (e.g., using a field-based rounding table).
    Type: Application
    Filed: September 2, 2004
    Publication date: March 10, 2005
    Applicant: Microsoft Corporation
    Inventors: Kunal Mukerjee, Pohsiang Hsu
  • Publication number: 20050013497
    Abstract: Techniques and tools for encoding and decoding video images (e.g., interlaced frames) are described. For example, a video encoder or decoder processes 4:1:1 format macroblocks comprising four 8×8 luminance blocks and four 4×8 chrominance blocks. In another aspect, fields in field-coded macroblocks are coded independently of one another (e.g., by sending encoded blocks in field order). Other aspects include DC/AC prediction techniques and motion vector prediction techniques for interlaced frames.
    Type: Application
    Filed: July 18, 2003
    Publication date: January 20, 2005
    Inventors: Pohsiang Hsu, Bruce Lin, Thomas Holcomb, Kunal Mukerjee, Sridhar Srinivasan
  • Publication number: 20050013365
    Abstract: Techniques and tools for coding/decoding of video images, and in particular, B-frames, are described. In one aspect, a video encoder/decoder determines a fraction for a current image in a sequence. The fraction represents an estimated temporal distance position for the current image relative to an interval between a reference images for the current image. The video encoder/decoder processes the fraction along with a motion vector for a first reference image, resulting in a representation of motion (e.g., constant or variable velocity motion) in the current image. Other aspects are also described, including intra B-frames, forward and backward buffers for motion vector prediction, bitplane encoding of direct mode prediction information, multiple motion vector resolutions/interpolation filters for B-frames, proactive dropping of B-frames, and signaling of dropped predicted frames.
    Type: Application
    Filed: July 18, 2003
    Publication date: January 20, 2005
    Inventors: Kunal Mukerjee, Sridhar Srinivasan, Bruce Lin
  • Publication number: 20050013498
    Abstract: Techniques and tools for encoding and decoding motion vector information for video images are described. For example, a video encoder yields an extended motion vector code by jointly coding, for a set of pixels, a switch code, motion vector information, and a terminal symbol indicating whether subsequent data is encoded for the set of pixels. In another aspect, an encoder/decoder selects motion vector predictors for macroblocks. In another aspect, a video encoder/decoder uses hybrid motion vector prediction. In another aspect, a video encoder/decoder signals a motion vector mode for a predicted image. In another aspect, a video decoder decodes a set of pixels by receiving an extended motion vector code, which reflects joint encoding of motion information together with intra/inter-coding information and a terminal symbol. The decoder determines whether subsequent data exists for the set of pixels based on e.g., the terminal symbol.
    Type: Application
    Filed: July 18, 2003
    Publication date: January 20, 2005
    Inventors: Sridhar Srinivasan, Pohsiang Hsu, Thomas Holcomb, Kunal Mukerjee, Bruce Lin
  • Publication number: 20030194010
    Abstract: Various techniques and tools for chrominance motion vector rounding are described. For example, during motion compensation, a video encoder or decoder converts luminance motion vectors into chrominance motion vector having quarter-pixel accuracy. Or, during motion compensation, a video encoder or decoder converts luminance motion vectors into chrominance motion vectors using one of multiple available chrominance motion vector rounding modes.
    Type: Application
    Filed: March 4, 2003
    Publication date: October 16, 2003
    Applicant: Microsoft Corporation
    Inventors: Kunal Mukerjee, Sridhar Srinivasan