Patents by Inventor Anantha R. Kancherla

Anantha R. Kancherla 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: 8493619
    Abstract: Methods for mapping color data having at least one color associated therewith to an output device based on an input-device profile and an output-device profile, each profile having a tone curve and a color matrix, are provided. In one embodiment, the method includes receiving color data from an input device and determining whether the color data is in a linear space. If it is determined that the color data is not in a linear space, the method further includes applying the tone curve of the input device profile to the color data to convert it into a linear space. The method further includes converting the color(s) associated with the color data from the input linear space to an output linear space by applying the color matrix of the input device profile and the inverse color matrix of the output device profile to create color-converted image data.
    Type: Grant
    Filed: August 12, 2011
    Date of Patent: July 23, 2013
    Assignee: Microsoft Corporation
    Inventors: Glenn F. Evans, Benjamin Ellett, David R. Blythe, Anantha R. Kancherla, Bradley P. Gibson, Michael D. Stokes, Steven James White, Denis Demandolx
  • Patent number: 8379035
    Abstract: Systems and methods for utilizing intermediate target(s) in connection with computer graphics in a computer system allow serialized programs from graphics APIs to support algorithms that exceed the instruction limits of procedural shaders for single programs. The intermediate buffers may also allow sharing of data between programs for other purposes as well, and are atomically accessible. The size of the buffers, i.e., the amount of data stored in the intermediate targets, can be variably set for a varying amount of resolution with respect to the graphics data. In this regard, a single program generates intermediate data, which can then be used, and re-used, by an extension of the same program and/or any number of other programs any number of times as may be desired, enabling considerable flexibility and complexity of shading programs, while maintaining the speed of modern graphics chips.
    Type: Grant
    Filed: October 31, 2011
    Date of Patent: February 19, 2013
    Assignee: Microsoft Corporation
    Inventors: Michele B Boland, Charles N Boyd, Anantha R Kancherla
  • Publication number: 20120113118
    Abstract: Utilizing intermediate target(s) in connection with computer graphics in a computer system is provided. In various embodiments, intermediate memory buffers in video memory are provided and utilized to allow serialized programs from graphics APIs to support algorithms that exceed the instruction limits of procedural shaders for single programs. The intermediate buffers may also allow sharing of data between programs for other purposes as well, and are atomically accessible. The size of the buffers can be variably set for a varying amount of resolution with respect to the graphics data. In this regard, a single program generates intermediate data, which can then be used, and re-used, by an extension of the same program and/or any number of other programs any number of times as may be desired, enabling considerable flexibility and complexity of shading programs, while maintaining the speed of modern graphics chips.
    Type: Application
    Filed: October 31, 2011
    Publication date: May 10, 2012
    Applicant: Microsoft Corporation
    Inventors: Michele B. Boland, Charles N. Boyd, Anantha R. Kancherla
  • Publication number: 20110298819
    Abstract: Methods for mapping color data having at least one color associated therewith to an output device based on an input-device profile and an output-device profile, each profile having a tone curve and a color matrix, are provided. In one embodiment, the method includes receiving color data from an input device and determining whether the color data is in a linear space. If it is determined that the color data is not in a linear space, the method further includes applying the tone curve of the input device profile to the color data to convert it into a linear space. The method further includes converting the color(s) associated with the color data from the input linear space to an output linear space by applying the color matrix of the input device profile and the inverse color matrix of the output device profile to create color-converted image data.
    Type: Application
    Filed: August 12, 2011
    Publication date: December 8, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: GLENN F. EVANS, BENJAMIN ELLETT, DAVID R. BLYTHE, ANANTHA R. KANCHERLA, BRADLEY P. GIBSON, MICHAEL D. STOKES, STEVEN JAMES WHITE, DENIS DEMANDOLX
  • Patent number: 8063909
    Abstract: Intermediate target(s) are utilized in connection with computer graphics in a computer system. In various embodiments, intermediate memory buffers in video memory are utilized to allow serialized programs from graphics APIs to support algorithms that exceed the instruction limits of procedural shaders for single programs. The intermediate buffers may also allow sharing of data between programs for other purposes as well, and are atomically accessible. The size of the buffers, i.e., the amount of data stored in the intermediate targets, can be variably set for a varying amount of resolution with respect to the graphics data. In this regard, a single program generates intermediate data, which can then be used, and re-used, by an extension of the same program and/or any number of other programs any number of times, enabling considerable flexibility and complexity of shading programs, while maintaining the speed of modern graphics chips.
    Type: Grant
    Filed: June 22, 2009
    Date of Patent: November 22, 2011
    Assignee: Microsoft Corporation
    Inventors: Michele B Boland, Charles N Boyd, Anantha R Kancherla
  • Publication number: 20090256849
    Abstract: Systems and methods for utilizing intermediate target(s) in connection with computer graphics in a computer system are provided. In various embodiments, intermediate memory buffers in video memory are provided and utilized to allow serialized programs from graphics APIs to support algorithms that exceed the instruction limits of procedural shaders for single programs. The intermediate buffers may also allow sharing of data between programs for other purposes as well, and are atomically accessible. The size of the buffers, i.e., the amount of data stored in the intermediate targets, can be variably set for a varying amount of resolution with respect to the graphics data. In this regard, a single program generates intermediate data, which can then be used, and re-used, by an extension of the same program and/or any number of other programs any number of times as may be desired, enabling considerable flexibility and complexity of shading programs, while maintaining the speed of modern graphics chips.
    Type: Application
    Filed: June 22, 2009
    Publication date: October 15, 2009
    Applicant: Microsoft Corporation
    Inventors: Michele B. Boland, Charles N. Boyd, Anantha R. Kancherla
  • Patent number: 7564460
    Abstract: Systems and methods for utilizing intermediate target(s) in connection with computer graphics in a computer system are provided. In various embodiments, intermediate memory buffers in video memory are provided and utilized to allow serialized programs from graphics APIs to support algorithms that exceed the instruction limits of procedural shaders for single programs. The intermediate buffers may also allow sharing of data between programs for other purposes as well, and are atomically accessible. The size of the buffers, i.e., the amount of data stored in the intermediate targets, can be variably set for a varying amount of resolution with respect to the graphics data. In this regard, a single program generates intermediate data, which can then be used, and re-used, by an extension of the same program and/or any number of other programs any number of times as may be desired, enabling considerable flexibility and complexity of shading programs, while maintaining the speed of modem graphics chips.
    Type: Grant
    Filed: July 16, 2002
    Date of Patent: July 21, 2009
    Assignee: Microsoft Corporation
    Inventors: Michele B. Boland, Charles N. Boyd, Anantha R. Kancherla
  • Publication number: 20040164987
    Abstract: Usage semantics allow for shaders to be authored independently of the actual vertex data and accordingly enables their reuse. Usage semantics define a feature that binds data between distinct components to allow them to work together. In various embodiments, the components include high level language variables that are bound by an application or by vertex data streams, high level language fragments to enable several fragments to be developed separately and compiled at a later time together to form a single shader, assembly language variables that get bound to vertex data streams, and parameters between vertex and pixel shaders. This allows developers to be able to program the shaders in the assembly and high level language with variables that refer to names rather than registers. By allowing this decoupling of registers from the language, developers can work on the language separately from the vertex data and modify and enhance high level language shaders without having to manually manipulate the registers.
    Type: Application
    Filed: February 24, 2003
    Publication date: August 26, 2004
    Applicant: Microsoft Corporation
    Inventors: David F. Aronson, Amar Patel, Anantha R. Kancherla, Anuj B. Gosalia, Craig Peeper, Daniel K. Baker, Iouri Tarassov, Loren McQuade
  • Publication number: 20030020741
    Abstract: Systems and methods for utilizing intermediate target(s) in connection with computer graphics in a computer system are provided. In various embodiments, intermediate memory buffers in video memory are provided and utilized to allow serialized programs from graphics APIs to support algorithms that exceed the instruction limits of procedural shaders for single programs. The intermediate buffers may also allow sharing of data between programs for other purposes as well, and are atomically accessible. The size of the buffers, i.e., the amount of data stored in the intermediate targets, can be variably set for a varying amount of resolution with respect to the graphics data. In this regard, a single program generates intermediate data, which can then be used, and re-used, by an extension of the same program and/or any number of other programs any number of times as may be desired, enabling considerable flexibility and complexity of shading programs, while maintaining the speed of modem graphics chips.
    Type: Application
    Filed: July 16, 2002
    Publication date: January 30, 2003
    Inventors: Michele B. Boland, Charles N. Boyd, Anantha R. Kancherla