Patents by Inventor Michael Isard

Michael Isard 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: 10437573
    Abstract: General-purpose distributed data-parallel computing using a high-level language is disclosed. Data parallel portions of a sequential program that is written by a developer in a high-level language are automatically translated into a distributed execution plan. The distributed execution plan is then executed on large compute clusters. Thus, the developer is allowed to write the program using familiar programming constructs in the high level language. Moreover, developers without experience with distributed compute systems are able to take advantage of such systems.
    Type: Grant
    Filed: July 10, 2017
    Date of Patent: October 8, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Yuan Yu, Dennis Fetterly, Michael Isard, Ulfar Erlingsson, Mihai Budiu
  • Publication number: 20170371721
    Abstract: General-purpose distributed data-parallel computing using a high-level language is disclosed. Data parallel portions of a sequential program that is written by a developer in a high-level language are automatically translated into a distributed execution plan. The distributed execution plan is then executed on large compute clusters. Thus, the developer is allowed to write the program using familiar programming constructs in the high level language. Moreover, developers without experience with distributed compute systems are able to take advantage of such systems.
    Type: Application
    Filed: July 10, 2017
    Publication date: December 28, 2017
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Yuan Yu, Dennis Fetterly, Michael Isard, Ulfar Erlingsson, Mihai Budiu
  • Patent number: 9747726
    Abstract: Methods for generating and displaying images associated with one or more virtual objects within an augmented reality environment at a frame rate that is greater than a rendering frame rate are described. The rendering frame rate may correspond with the minimum time to render images associated with a pose of a head-mounted display device (HMD). In some embodiments, the HMD may determine a predicted pose associated with a future position and orientation of the HMD, generate a pre-rendered image based on the predicted pose, determine an updated pose associated with the HMD subsequent to generating the pre-rendered image, generate an updated image based on the updated pose and the pre-rendered image, and display the updated image on the HMD. The updated image may be generated via a homographic transformation and/or a pixel offset adjustment of the pre-rendered image.
    Type: Grant
    Filed: August 3, 2016
    Date of Patent: August 29, 2017
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Oliver Michael Christian Williams, Paul Barham, Michael Isard, Tuan Wong, Kevin Woo, Georg Klein, Douglas Kevin Service, Ashraf Ayman Michail, Andrew Pearson, Martin Shetter, Jeffrey Neil Margolis, Nathan Ackerman, Calvin Chan, Arthur C. Tomlin
  • Patent number: 9720743
    Abstract: General-purpose distributed data-parallel computing using a high-level language is disclosed. Data parallel portions of a sequential program that is written by a developer in a high-level language are automatically translated into a distributed execution plan. The distributed execution plan is then executed on large compute clusters. Thus, the developer is allowed to write the program using familiar programming constructs in the high level language. Moreover, developers without experience with distributed compute systems are able to take advantage of such systems.
    Type: Grant
    Filed: July 23, 2015
    Date of Patent: August 1, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Yuan Yu, Dennis Fetterly, Michael Isard, Ulfar Erlingsson, Mihai Budiu
  • Patent number: 9514571
    Abstract: Methods for generating and displaying images associated with one or more virtual objects within an augmented reality environment at a frame rate that is greater than a rendering frame rate are described. The rendering frame rate may correspond with the minimum time to render images associated with a pose of a head-mounted display device (HMD). In some embodiments, the HMD may determine a predicted pose associated with a future position and orientation of the HMD, generate a pre-rendered image based on the predicted pose, determine an updated pose associated with the HMD subsequent to generating the pre-rendered image, generate an updated image based on the updated pose and the pre-rendered image, and display the updated image on the HMD. The updated image may be generated via a homographic transformation and/or a pixel offset adjustment of the pre-rendered image.
    Type: Grant
    Filed: July 25, 2013
    Date of Patent: December 6, 2016
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Oliver Michael Christian Williams, Paul Barham, Michael Isard, Tuan Wong, Kevin Woo, Georg Klein, Douglas Kevin Service, Ashraf Ayman Michail, Andrew Pearson, Martin Shetter, Jeffrey Neil Margolis, Nathan Ackerman, Calvin Chan, Arthur C. Tomlin
  • Publication number: 20160343172
    Abstract: Methods for generating and displaying images associated with one or more virtual objects within an augmented reality environment at a frame rate that is greater than a rendering frame rate are described. The rendering frame rate may correspond with the minimum time to render images associated with a pose of a head-mounted display device (HMD). In some embodiments, the HMD may determine a predicted pose associated with a future position and orientation of the HMD, generate a pre-rendered image based on the predicted pose, determine an updated pose associated with the HMD subsequent to generating the pre-rendered image, generate an updated image based on the updated pose and the pre-rendered image, and display the updated image on the HMD. The updated image may be generated via a homographic transformation and/or a pixel offset adjustment of the pre-rendered image.
    Type: Application
    Filed: August 3, 2016
    Publication date: November 24, 2016
    Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Oliver Michael Christian Williams, Paul Barham, Michael Isard, Tuan Wong, Kevin Woo, Georg Klein, Douglas Kevin Service, Ashraf Ayman Michail, Andrew Pearson, Martin Shetter, Jeffrey Neil Margolis, Nathan Ackerman, Calvin Chan, Arthur C. Tomlin
  • Patent number: 9229956
    Abstract: Image search results are obtained by providing weights to visual features to emphasize features corresponding to objects of interest while simultaneously deemphasizing irrelevant or inconsistent features that lead to poor search results. In order to minimize the impact of visual features that are unreliable or irrelevant with respect to the objects of interest in the image, context-dependent weights are provided to detect visual features such that those visual features pertaining to the objects of interest are more heavily weighted than those visual features that pertain to irrelevant or unreliable portions of the image. Visual features may be weighted for images in a searchable database. Training data may be obtained and used in weighting visual features in a query image and, alternatively, in searchable database images.
    Type: Grant
    Filed: January 10, 2011
    Date of Patent: January 5, 2016
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Qifa Ke, Jia Deng, Simon Baker, Michael Isard
  • Publication number: 20150324242
    Abstract: General-purpose distributed data-parallel computing using a high-level language is disclosed. Data parallel portions of a sequential program that is written by a developer in a high-level language are automatically translated into a distributed execution plan. The distributed execution plan is then executed on large compute clusters. Thus, the developer is allowed to write the program using familiar programming constructs in the high level language. Moreover, developers without experience with distributed compute systems are able to take advantage of such systems.
    Type: Application
    Filed: July 23, 2015
    Publication date: November 12, 2015
    Inventors: Yuan Yu, Dennis Fetterly, Michael Isard, Ulfar Erlingsson, Mihai Budiu
  • Patent number: 9110706
    Abstract: General-purpose distributed data-parallel computing using a high-level language is disclosed. Data parallel portions of a sequential program that is written by a developer in a high-level language are automatically translated into a distributed execution plan. The distributed execution plan is then executed on large compute clusters. Thus, the developer is allowed to write the program using familiar programming constructs in the high level language. Moreover, developers without experience with distributed compute systems are able to take advantage of such systems.
    Type: Grant
    Filed: February 9, 2009
    Date of Patent: August 18, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Yuan Yu, Dennis Fetterly, Michael Isard, Ulfar Erlingsson, Mihai Budiu
  • Publication number: 20150029218
    Abstract: Methods for generating and displaying images associated with one or more virtual objects within an augmented reality environment at a frame rate that is greater than a rendering frame rate are described. The rendering frame rate may correspond with the minimum time to render images associated with a pose of a head-mounted display device (HMD). In some embodiments, the HMD may determine a predicted pose associated with a future position and orientation of the HMD, generate a pre-rendered image based on the predicted pose, determine an updated pose associated with the HMD subsequent to generating the pre-rendered image, generate an updated image based on the updated pose and the pre-rendered image, and display the updated image on the HMD. The updated image may be generated via a homographic transformation and/or a pixel offset adjustment of the pre-rendered image.
    Type: Application
    Filed: July 25, 2013
    Publication date: January 29, 2015
    Inventors: Oliver Michael Christian Williams, Paul Barham, Michael Isard, Tuan Wong, Kevin Woo, Georg Klein, Douglas Kevin Service, Ashraf Ayman Michail, Andrew Pearson, Martin Shetter, Jeffrey Neil Margolis, Nathan Ackerman, Calvin Chan, Arthur C. Tomlin
  • Patent number: 8933931
    Abstract: A system and method for providing an augmented reality environment in which the environmental mapping process is decoupled from the localization processes performed by one or more mobile devices is described. In some embodiments, an augmented reality system includes a mapping system with independent sensing devices for mapping a particular real-world environment and one or more mobile devices. Each of the one or more mobile devices utilizes a separate asynchronous computing pipeline for localizing the mobile device and rendering virtual objects from a point of view of the mobile device. This distributed approach provides an efficient way for supporting mapping and localization processes for a large number of mobile devices, which are typically constrained by form factor and battery life limitations.
    Type: Grant
    Filed: November 28, 2012
    Date of Patent: January 13, 2015
    Assignee: Microsoft Corporation
    Inventors: Alexandru Balan, Jason Flaks, Steve Hodges, Michael Isard, Oliver Williams, Paul Barham, Shahram Izadi, Otmar Hiliges, David Molyneaux, David Kim
  • Patent number: 8914782
    Abstract: Source code is generated that includes one or more iterator-based expressions such as declarative queries. The source code is translated into an intermediate language that classifies operators making up the iterator-based expressions into classes based on whether the operators are aggregating, element-wise, or sink operators. The intermediate language, including the identified classes, is processed using an automaton to replace the iterator-based expressions with one or more equivalent non-iterator-based expressions. Where an iterator-based expression is nested, the nested expression is processed using an equivalent number of nested automatons. The resulting optimized source code may be compiled and executed using fewer virtual function calls than the equivalent non-optimized source code.
    Type: Grant
    Filed: November 10, 2010
    Date of Patent: December 16, 2014
    Assignee: Microsoft Corporation
    Inventors: Michael Isard, Yuan Yu, Derek Gordon Murray
  • Patent number: 8787680
    Abstract: Methods are disclosed for finding images from a large corpus of images that at least partially match a query image. The present method makes use of feature detectors to bundle features into local groups or bundles. These bundled features are repeatable and much more discriminative than an individual SIFT feature. Equally importantly, the bundled features provide a flexible representation that allows simple and robust geometric constraints to be efficiently enforced when querying the index.
    Type: Grant
    Filed: August 27, 2012
    Date of Patent: July 22, 2014
    Assignee: Microsoft Corporation
    Inventors: Michael Isard, Qifa Ke, Jian Sun, Zhong Wu
  • Patent number: 8661449
    Abstract: Computations are performed on shared datasets in a distributed computing cluster using aggressive speculation and a distributed runtime that executes code transactionally. Speculative transactions are conducted with currently available data on the assumption that no dependencies exist that will render the input data invalid. For those specific instances where this assumption is found to be incorrect—that the input data did indeed have a dependency (thereby impacting the correctness of the speculated transaction)—the speculated transaction is aborted and its results (and all transactions that relied on its results) are rolled-back accordingly for re-computation using updated input data. In operation, shared state data is read and written using only the system's data access API which ensures that computations can be rolled-back when conflicts stemming from later-determined dependencies are detected.
    Type: Grant
    Filed: June 17, 2011
    Date of Patent: February 25, 2014
    Assignee: Microsoft Corporation
    Inventors: Christopher J. Rossbach, Jean-Philippe Martin, Michael Isard
  • Patent number: 8565520
    Abstract: A system for providing augmented reality detects foreground occluders in an image of a video stream. One or more virtual objects are then rendered appropriately with respect to the occluders. Location information associated with the image is used to retrieve a three dimensional representation of the location where the image was taken. Features that are expected to appear in the image based on the three dimensional location but that cannot be located are used to determine regions of the image that are likely to include foreground occluders. Pixels in these regions are used to train a color model that classifies pixels as either part of the background of the image or part of one or more foreground occluders. The pixels in the image are classified using the model, and one or more virtual objects are rendered so that they appear behind any foreground occluders.
    Type: Grant
    Filed: June 10, 2011
    Date of Patent: October 22, 2013
    Assignee: Microsoft Corporation
    Inventors: Oliver M. C. Williams, Michael Isard, Paul R. Barham
  • Patent number: 8543574
    Abstract: An efficient manner of performing an M-out-of-N partial matching search of indexed documents (e.g., web pages) is provided herein. More particularly, indexed words are arranged into a global location space (GLS), providing for respective occurrences of words in indexed documents being searched to have continuous locations on a one-dimensional GLS. Documents within the GLS are separated by end of document word marking boundaries between consecutive documents. The query words are then separated into an active set, comprising the left-most query words, and a non-active set. A partial matching operator transverses the GLS, applying active geometric constraints, in a sequential manner, to words in the active set. This causes shifting of the active set along the GLS to comprise M left-most query words. If a document satisfies constraints associated with M words in an active set, the document comprises at least M-out-of-N words.
    Type: Grant
    Filed: June 5, 2009
    Date of Patent: September 24, 2013
    Assignee: Microsoft Corporation
    Inventors: Qifa Ke, Michael Isard
  • Publication number: 20130169626
    Abstract: A system and method for providing an augmented reality environment in which the environmental mapping process is decoupled from the localization processes performed by one or more mobile devices is described. In some embodiments, an augmented reality system includes a mapping system with independent sensing devices for mapping a particular real-world environment and one or more mobile devices. Each of the one or more mobile devices utilizes a separate asynchronous computing pipeline for localizing the mobile device and rendering virtual objects from a point of view of the mobile device. This distributed approach provides an efficient way for supporting mapping and localization processes for a large number of mobile devices, which are typically constrained by form factor and battery life limitations.
    Type: Application
    Filed: November 28, 2012
    Publication date: July 4, 2013
    Inventors: Alexandru Balan, Jason Flaks, Steve Hodges, Michael Isard, Oliver Williams, Paul Barham, Shahram Izadi, Otmar Hiliges, David Molyneaux, David Kim
  • Patent number: 8452792
    Abstract: Techniques for defocusing queries over big datasets and dynamic datasets are provided to broaden search results and incorporate all potentially relevant data and avoid overly narrowing queries. An analytic component can receive queries directed at one region of a dataset and analyze the queries to generate inferences about the queries. The queries can then be defocused by a defocusing component and incorporate a larger dataset than originally searched to broaden the queries. The larger dataset can incorporate all, or a part of the original dataset and can also be disparate from the original dataset. Clusters of queries can also be merged and unified to deal with ‘local minima’ issues and broaden the understanding of the dataset. In other embodiments, dynamic data can be monitored and changes tracked, to ensure that all portions of the dataset are being searched by the queries.
    Type: Grant
    Filed: October 28, 2011
    Date of Patent: May 28, 2013
    Assignee: Microsoft Corporation
    Inventors: Roger Barga, Alexander Sasha Stojanovic, Henricus Johannes Maria Meijer, Carl Carter-Schwendler, Michael Isard, Savas Parastatidis
  • Publication number: 20130117257
    Abstract: Techniques for efficiently performing queries are provided. A search component can receive a request for information based on data, and a management component can determine a degree of accuracy requested for the information. In turn, the search component can render the information based on the degree of accuracy requested. In an aspect, the search generates a query configured to determine the first information, and the management component instructs the search component to perform the query to a level of completion less than full completion when the degree of accuracy requested is below a predetermined threshold to cause the search component to render an estimation of the first information. In another aspect, a tracking component can track information associated with multiple query requests and an analysis determine and employ a related aspect of the tracked information to a new query request to determine an answer for a the new query request.
    Type: Application
    Filed: November 3, 2011
    Publication date: May 9, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Henricus Johannes Maria Meijer, Michael Isard, Alexander Sasha Stojanovic, Carl Carter-Schwendler, Stephen Harris Toub
  • Publication number: 20130117272
    Abstract: Data management techniques are provided for handling of big data. A data management process can account for attributes of data by analyzing or interpreting the data, assigning intervals to the attributes based on the data, and effectuating policies, based on the attributes and intervals, that facilitate data management. In addition, the data management process can determine relations among data in a data collection and generate and store approximate results concerning the data based on the attributes, intervals, and the policies.
    Type: Application
    Filed: November 3, 2011
    Publication date: May 9, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Roger Barga, Alexander Sasha Stojanovic, Henricus Johannes Maria Meijer, Carl Carter-Schwendler, Michael Isard