Patents by Inventor James F. Blinn

James F. Blinn 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).

  • Patent number: 7924278
    Abstract: Surfaces defined by Bézier tetrahedron are generated on programmable graphics hardware. Custom programmed vertex processing, performed by either the CPU or the GPU includes the computation of a symmetric tensor and the assignment of the unique elements of the computed symmetric tensor as vertex attribute data. The vertex attribute data is interpolated by the graphics hardware and output to custom programmed pixel processing. The pixel processing uses the interpolated vertex attribute data to reconstruct, at each pixel, the symmetric tensor which enables the determination of the roots of the polynomial defining the surface to be generated. If no real roots exist, the pixel processing can exit early. If the roots of the polynomial exist, the smallest root can be used as the basis for computing a normal to a point on the surface being rendered, enabling the determination of the color and depth of that pixel.
    Type: Grant
    Filed: July 28, 2006
    Date of Patent: April 12, 2011
    Assignee: Microsoft Corporation
    Inventors: Charles T. Loop, James F. Blinn
  • Patent number: 7330864
    Abstract: A method for providing a 16-bit floating point data representation where the 16-bit floating point data representation may be operated upon by a microprocessors native floating point instruction set. The method contemplates the use a variety of techniques for converting the 16-bit floating point number into a representative native floating point value. Thereafter, the native microprocessor floating point instruction set may perform operations upon the converted data. Upon completion, the native floating point data representation may be converted back into the 16-bit floating point value.
    Type: Grant
    Filed: March 1, 2001
    Date of Patent: February 12, 2008
    Assignee: Microsoft Corporation
    Inventors: Gideon A. Yuval, Nicholas P. Wilt, James F. Blinn, Michael D. Stokes
  • Publication number: 20080024490
    Abstract: Surfaces defined by Bézier tetrahedron are generated on programmable graphics hardware. Custom programmed vertex processing, performed by either the CPU or the GPU includes the computation of a symmetric tensor and the assignment of the unique elements of the computed symmetric tensor as vertex attribute data. The vertex attribute data is interpolated by the graphics hardware and output to custom programmed pixel processing. The pixel processing uses the interpolated vertex attribute data to reconstruct, at each pixel, the symmetric tensor which enables the determination of the roots of the polynomial defining the surface to be generated. If no real roots exist, the pixel processing can exit early. If the roots of the polynomial exist, the smallest root can be used as the basis for computing a normal to a point on the surface being rendered, enabling the determination of the color and depth of that pixel.
    Type: Application
    Filed: July 28, 2006
    Publication date: January 31, 2008
    Applicant: Microsoft Corporation
    Inventors: Charles T. Loop, James F. Blinn
  • Patent number: 7085412
    Abstract: Image data processing and image rendering methods and systems whereby images are displayed on display devices having pixels with separately controllable pixel sub-components. Image data, such as data encoded in a three-channel signal, is passed through a low-pass filter to remove frequencies higher than a selected cutoff frequency, which obtain samples from the color components of the signal that map spatially different image regions to individual pixel sub-components. It has been found that color aliasing effects can be significantly reduces at a cutoff frequency somewhat higher than the Nyquist frequency, while enhancing the spatial resolution of the image. The image data is then passed through sampling filters, A generalized set of filters includes nine filters, one for each combination of one color and one pixel sub-component.
    Type: Grant
    Filed: June 24, 2005
    Date of Patent: August 1, 2006
    Assignee: Microsoft Corporation
    Inventors: John C. Platt, Donald P. Mitchell, J. Turner Whitted, James F. Blinn
  • Patent number: 6973210
    Abstract: Image data processing and image rendering methods and systems whereby images are displayed on display devices having pixels with separately controllable pixel sub-components. Image data, such as data encoded in a three-channel signal, is passed through a low-pass filter to remove frequencies higher than a selected cutoff frequency, which obtain samples from the color components of the signal that map spatially different image regions to individual pixel sub-components. It has been found that color aliasing effects can be significantly reduces at a cutoff frequency somewhat higher than the Nyquist frequency, while enhancing the spatial resolution of the image. The image data is then pass through sampling filters, A generalized set of filters includes nine filters, one for each combination of one color and one pixel sub-component.
    Type: Grant
    Filed: January 12, 2000
    Date of Patent: December 6, 2005
    Assignee: Microsoft Corporation
    Inventors: John C. Platt, Donald P. Mitchell, J. Turner Whitted, James F. Blinn
  • Patent number: 6816622
    Abstract: An optimal filter kernel, formed by convolving a box filter with a filter of fixed integer width and unity area, is used to perform image resizing and reconstruction. The optimal filter has forced zeros at locations along a frequency scale corresponding to the reciprocal of the spacing of one or more pixels that comprise a source image to be resized. When a rescale value for a source image is selected, the optimal filter kernel is computed, mapped to the source image, and centered upon a location within the source image corresponding to the position of an output pixel to be generated. The number of pixels that lie underneath the optimal filter kernel is established by multiplying the number of pixels that comprise the width of the source image by the selected rescale value. Upon mapping the optimal filter kernel, the output pixel values that comprise the resized image are then evaluated by processing the one or more source image pixels, such as through interpolation.
    Type: Grant
    Filed: October 18, 2001
    Date of Patent: November 9, 2004
    Assignee: Microsoft Corporation
    Inventors: James F. Blinn, Andrew C. Godfrey, Michael D. Marr, Adrian Secchia
  • Publication number: 20030077000
    Abstract: An optimal filter kernel, formed by convolving a box filter with a filter of fixed integer width and unity area, is used to perform image resizing and reconstruction. The optimal filter has forced zeros at locations along a frequency scale corresponding to the reciprocal of the spacing of one or more pixels that comprise a source image to be resized. When a rescale value for a source image is selected, the optimal filter kernel is computed, mapped to the source image, and centered upon a location within the source image corresponding to the position of an output pixel to be generated. The number of pixels that lie underneath the optimal filter kernel is established by multiplying the number of pixels that comprise the width of the source image by the selected rescale value. Upon mapping the optimal filter kernel, the output pixel values that comprise the resized image are then evaluated by processing the one or more source image pixels, such as through interpolation.
    Type: Application
    Filed: October 18, 2001
    Publication date: April 24, 2003
    Applicant: Microsoft Corporation
    Inventors: James F. Blinn, Andrew C. Godfrey, Michael D. Marr, Adrian Secchia
  • Publication number: 20020184282
    Abstract: A method for providing a 16-bit floating point data representation where the 16-bit floating point data representation may be operated upon by a microprocessors native floating point instruction set. The method contemplates the use a variety of techniques for converting the 16-bit floating point number into a representative native floating point value. Thereafter, the native microprocessor floating point instruction set may perform operations upon the converted data. Upon completion, the native floating point data representation may be converted back into the 16-bit floating point value.
    Type: Application
    Filed: March 1, 2001
    Publication date: December 5, 2002
    Inventors: Gideon A. Yuval, Nicholas P. Wilt, James F. Blinn, Michael D. Stokes
  • Patent number: 6301382
    Abstract: A method for pulling (extracting) a matte of an image of a foreground object from a composite image, using a computer. An image of the foreground object is recorded over at least two backgrounds having arbitrarily different coloring. Each point of one background must have a color that is different than the color of a corresponding point in the other backgrounds. The images may be recorded with an analog camera and digitized with a scanner or recorded with a digital camera. Images should be registered during recording and digitization to eliminate misalignment of corresponding points in each recorded image. A triangulation of corresponding points of each recorded image is performed so that an alpha value (opacity) and a set of color coordinates for each point of an uncomposited image of the foreground object may be determined using either a difference of sums technique or a least squares technique. To facilitate the triangulation, images are recorded of each background alone, without the foreground object.
    Type: Grant
    Filed: June 6, 1997
    Date of Patent: October 9, 2001
    Assignee: Microsoft Corporation
    Inventors: Alvy Ray Smith, James F. Blinn
  • Patent number: 6215503
    Abstract: An image generator takes graphical objects and an occlusion relationship for the objects and resolves non-binary occlusion cycles with image compositing operations to produce an output image of the objects. The image generator takes an occlusion relationship for objects in a scene and a set of antialiased image layers with transparency of the objects and produces an antialiased image of the objects with hidden surfaces eliminated. One implementation operates on subsets of the objects in a scene that form non-binary cycles. This implementation uses a chain of atop operators to combine occluding objects with a selected object from a subset, and then combines this result with other objects in the cycle using over image operations. Another implementation computes a chain of out image operations for each object to combine the image layers of the occluding objects with the image layer of the object. The results of each chain of out image operations are summed to produce an output image.
    Type: Grant
    Filed: May 29, 1998
    Date of Patent: April 10, 2001
    Assignee: Microsoft Corporation
    Inventors: John Snyder, James F. Blinn, Jerome E. Lengyel
  • Patent number: 6184891
    Abstract: A method for simulating fog in 3D graphics rendering applications correctly computes fogged pixel colors even in graphics scenes where two surfaces overlap and the frontmost surface is partially transparent. The method computes the fog for each surface according to the following formula: ƒF atop A, where ƒ is the amount of fog, F is the color of the fog, and A is the color of the pixel being fogged. Each fogged surface can be rendered independently to a separate image layer, called a fogged image layer. The graphics rendering system can then simulate the motion of a fogged image layer by moving the fogged layer in an (x,y) plane without re-computing the fogged pixels, or by moving the fogged layer in the z-direction and independently re-computing the moving fogged layer with a new value for the amount of fog applied to the image layer.
    Type: Grant
    Filed: March 25, 1998
    Date of Patent: February 6, 2001
    Assignee: Microsoft Corporation
    Inventor: James F. Blinn
  • Patent number: 6161119
    Abstract: A scaling multiplier circuit in accordance with the invention includes a multiplier circuit, a carry calculation circuit, a logic circuit, and an adder circuit. The multiplier circuit produces a 16-bit product of two 8-bit input numbers. The 16-bit product has bits m(15:0). The carry calculation circuit produces a first carryout bit from a sum of a first number consisting of bits m(6:0), a second number consisting of bits m(14:8), and a third number consisting of bit m(7). The logic circuit produces intermediate carryout bits from a sum of bit m(7m), m(15), the first carryout bit, and a constant bit having a value of "1". The adder circuit produces the actual scaled product by summing the intermediate carryout bits and a fourth number consisting of bits m(15:8).
    Type: Grant
    Filed: November 5, 1998
    Date of Patent: December 12, 2000
    Assignee: Microsoft Corporation
    Inventors: Steven Allen Gabriel, James F. Blinn