Patents by Inventor Toby Sharp

Toby Sharp 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: 8422769
    Abstract: Methods of image segmentation using reduced foreground training data are described. In an embodiment, the foreground and background training data for use in segmentation of an image is determined by optimization of a modified energy function. The modified energy function is the energy function used in image segmentation with an additional term comprising a scalar value. The optimization is performed for different values of the scalar to produce multiple initial segmentations and one of these segmentations is selected based on pre-defined criteria. The training data is then used in segmenting the image. In other embodiments further methods are described: one places an ellipse inside the user-defined bounding box to define the background training data and another uses a comparison of properties of neighboring image elements, where one is outside the user-defined bounding box, to reduce the foreground training data.
    Type: Grant
    Filed: March 5, 2010
    Date of Patent: April 16, 2013
    Assignee: Microsoft Corporation
    Inventors: Carsten Curt Eckard Rother, Toby Sharp, Andrew Blake, Vladimir Kolmogorov
  • Patent number: 8411948
    Abstract: A method of up-sampling binary images for segmentation is described. In an embodiment, digital images are down-sampled before segmentation. The resulting initial binary segmentation, which has a lower resolution than the original image, is then up-sampled and smoothed to generate an interim non-binary solution which has a higher resolution than the initial binary segmentation. The final binary segmentation for the image is then computed from the interim non-binary solution based on a threshold. This method does not use the original image data in inferring the final binary segmentation solution from the initial binary segmentation. In an embodiment, the method may be applied to all images and in another embodiment, the method may be used for images which comprise a large number of pixels in total or in single dimension and smaller images may not be down-sampled before segmentation.
    Type: Grant
    Filed: March 5, 2010
    Date of Patent: April 2, 2013
    Assignee: Microsoft Corporation
    Inventors: Carsten Curt Eckard Rother, Toby Sharp
  • Patent number: 8351654
    Abstract: Image processing using geodesic forests is described. In an example, a geodesic forest engine determines geodesic shortest-path distances between each image element and a seed region specified in the image in order to form a geodesic forest data structure. The geodesic distances take into account gradients in the image of a given image modality such as intensity, color, or other modality. In some embodiments, a 1D processing engine carries out 1D processing along the branches of trees in the geodesic forest data structure to form a processed image. For example, effects such as ink painting, edge-aware texture flattening, contrast-aware image editing, forming animations using geodesic forests and other effects are achieved using the geodesic forest data structure. In some embodiments the geodesic forest engine uses a four-part raster scan process to achieve real-time processing speeds and parallelization is possible in many of the embodiments.
    Type: Grant
    Filed: April 28, 2009
    Date of Patent: January 8, 2013
    Assignee: Microsoft Corporation
    Inventors: Antonio Criminisi, Toby Sharp
  • Patent number: 8290295
    Abstract: A system for multi-modal mapping of images is described. Embodiments are described where the image mapping system is used for visualizing high dynamic range images such as medical images, satellite images, high dynamic range photographs and the like and also for compressing such images. In examples, high bit-depth images are tone-mapped for display on equipment of lower bit-depth without loss of detail. In embodiments, the image mapping system computes statistics describing an input image and fits a multi-modal model to those statistics efficiently. In embodiments, the multi-modal model is a Gaussian mixture model and a plurality of sigmoid functions corresponding to the multi-modal model are obtained. In an embodiment the sigmoid functions are added to form a tone-mapping function which is used to transform a high bit-depth image such as 16 or 12 bits per pixel to a low bit-depth image such as 8 bits per pixel.
    Type: Grant
    Filed: March 3, 2009
    Date of Patent: October 16, 2012
    Assignee: Microsoft Corporation
    Inventors: Antonio Criminisi, Evgeny Salnikov, Toby Sharp
  • Patent number: 8290882
    Abstract: Methods and apparatus for evaluating decision trees on a GPU are described. In an embodiment, the structure of a decision tree is converted into a 2D “tree” array with each row representing a node in the tree. Each row comprises details of any child nodes and the parameters which are required to perform the binary test at the node. A pixel shader can then be used to evaluate the decision tree in parallel for each input data point in an input array by navigating through rows in the 2D tree array. For each row, data is read from the input array dependent upon the parameters in the row and the shader moves to another row dependent upon the result of the binary test. On reaching a row which represents a leaf node, the pixel shader outputs evaluation results, such as a leaf node index or a probability distribution over classes.
    Type: Grant
    Filed: October 9, 2008
    Date of Patent: October 16, 2012
    Assignee: Microsoft Corporation
    Inventor: Toby Sharp
  • Publication number: 20120257814
    Abstract: Image completion using scene geometry is described, for example, to remove marks from digital photographs or complete regions which are blank due to editing. In an embodiment an image depicting, from a viewpoint, a scene of textured objects has regions to be completed. In an example, geometry of the scene is estimated from a depth map and the geometry used to warp the image so that at least some surfaces depicted in the image are fronto-parallel to the viewpoint. An image completion process is guided using distortion applied during the warping. For example, patches used to fill the regions are selected on the basis of distortion introduced by the warping. In examples where the scene comprises regions having only planar surfaces the warping process comprises rotating the image. Where the scene comprises non-planar surfaces, geodesic distances between image elements may be scaled to flatten the non-planar surfaces.
    Type: Application
    Filed: April 8, 2011
    Publication date: October 11, 2012
    Applicant: Microsoft Corporation
    Inventors: Pushmeet KOHLI, Toby SHARP, Carsten Curt Eckard ROTHER
  • Publication number: 20120166462
    Abstract: The present discussion relates to automated image data processing and visualization. One example can facilitate generating a graphical user-interface (GUI) from image data that includes multiple semantically-labeled user-selectable anatomical structures. This example can receive a user selection of an individual semantically-labeled user-selectable anatomical structure. The example can locate a sub-set of the image data associated with the individual semantically-labeled user-selectable anatomical structure and can cause presentation of the sub-set of the image data on a subsequent GUI.
    Type: Application
    Filed: December 28, 2010
    Publication date: June 28, 2012
    Applicant: Microsoft Corporation
    Inventors: Sayan D. Pathak, Antonio Criminisi, Steven J. White, Liqun Fu, Khan M. Siddiqui, Toby Sharp, Ender Konukoglu, Bryan Dove, Michael T. Gillam
  • Publication number: 20110293180
    Abstract: Foreground and background image segmentation is described. In an example, a seed region is selected in a foreground portion of an image, and a geodesic distance is calculated from each image element to the seed region. A subset of the image elements having a geodesic distance less than a threshold is determined, and this subset of image elements are labeled as foreground. In another example, an image element from an image showing at least a user, a foreground object in proximity to the user, and a background is applied to trained decision trees to obtain probabilities of the image element representing one of these items, and a corresponding classification assigned to the image element. This is repeated for each image element. Image elements classified as belonging to the user are labeled as foreground, and image elements classified as foreground objects or background are labeled as background.
    Type: Application
    Filed: May 28, 2010
    Publication date: December 1, 2011
    Applicant: Microsoft Corporation
    Inventors: Antonio Criminisi, Jamie Daniel Joseph Shotton, Andrew Fitzgibbon, Toby Sharp, Matthew Darius Cook
  • Publication number: 20110227934
    Abstract: Architecture for volume rendering is described. In an embodiment volume rendering is carried out at a data centre having a cluster of rendering servers connected using a high bandwidth connection to a database of medical volumes. For example, each rendering server has multiple graphics processing units each with a dedicated device thread. For example, a surgeon working from home on her netbook or thin client is able to have a medical volume rendered remotely at one of the rendering servers and the resulting 2D image sent to her over a relatively low bandwidth connection. In an example a master rendering server carries out load balancing at the cluster. In an example each rendering server uses a dedicated device thread for each graphics processing unit in its control and has multiple calling threads which are able to send rendering instructions to appropriate ones of the device threads.
    Type: Application
    Filed: March 19, 2010
    Publication date: September 22, 2011
    Applicant: Microsoft Corporation
    Inventor: Toby Sharp
  • Publication number: 20110228055
    Abstract: Space skipping for multi-dimensional image rendering is described. In an embodiment a ray-casting engine is used to form a two dimensional image from an at least three dimensional image volume by computing rays extending from a camera location, through the two dimensional image and into the volume. For example, a space skipping logic is used to clip the rays such that computationally expensive aspects of ray-casting only need to be performed along the clipped rays. For example a volume pyramid is formed by repeatedly reducing the resolution of the volume data. In an example, each ray is intersected with the lowest resolution volume of the pyramid and clipped using data from that volume. In examples, the clipping is then repeated at higher resolutions in order to clip the ray closely to non-transparent voxels in the volume and optimize the task of rendering the image.
    Type: Application
    Filed: March 22, 2010
    Publication date: September 22, 2011
    Applicant: Microsoft Corporation
    Inventor: Toby Sharp
  • Publication number: 20110228997
    Abstract: Medical image rendering is described. In an embodiment a medical image visualization engine receives results from an organ recognition system which provide estimated organ centers, bounding boxes and organ classification labels for a given medical image. In examples the visualization engine uses the organ recognition system results to select appropriate transfer functions, bounding regions, clipping planes and camera locations in order to optimally view an organ. For example, a rendering engine uses the selections to render a two-dimensional image of medical diagnostic quality with minimal user input. In an embodiment a graphical user interface populates a list of organs detected in a medical image and a clinician is able to select one organ and immediately be presented with the optimal view of that organ. In an example opacity of background regions of the medical image may be adjusted to provide context for organs presented in a foreground region.
    Type: Application
    Filed: March 17, 2010
    Publication date: September 22, 2011
    Applicant: Microsoft Corporation
    Inventors: Toby Sharp, Antonio Criminisi, Khan Mohammad Siddiqui
  • Publication number: 20110216965
    Abstract: Methods of image segmentation using reduced foreground training data are described. In an embodiment, the foreground and background training data for use in segmentation of an image is determined by optimization of a modified energy function. The modified energy function is the energy function used in image segmentation with an additional term comprising a scalar value. The optimization is performed for different values of the scalar to produce multiple initial segmentations and one of these segmentations is selected based on pre-defined criteria. The training data is then used in segmenting the image. In other embodiments further methods are described: one places an ellipse inside the user-defined bounding box to define the background training data and another uses a comparison of properties of neighboring image elements, where one is outside the user-defined bounding box, to reduce the foreground training data.
    Type: Application
    Filed: March 5, 2010
    Publication date: September 8, 2011
    Applicant: Microsoft Corporation
    Inventors: Carsten Curt Eckard Rother, Toby Sharp, Andrew Blake, Vladimir Kolmogorov
  • Publication number: 20110216976
    Abstract: Methods of updating image segmentation following user input are described. In an embodiment, the properties used in computing the different portions of the image are updated as a result of one or more user inputs. Image elements which have been identified by a user input are given more weight when updating the properties than other image elements which have already been assigned to a particular portion of the image. In another embodiment, an updated segmentation is post-processed such that only regions which are connected to an appropriate user input are updated.
    Type: Application
    Filed: March 5, 2010
    Publication date: September 8, 2011
    Applicant: Microsoft Corporation
    Inventors: Carsten Curt Eckard Rother, Toby Sharp, Andrew Blake, Vladimir Kolmogorov
  • Publication number: 20110216975
    Abstract: A method of up-sampling binary images for segmentation is described. In an embodiment, digital images are down-sampled before segmentation. The resulting initial binary segmentation, which has a lower resolution than the original image, is then up-sampled and smoothed to generate an interim non-binary solution which has a higher resolution than the initial binary segmentation. The final binary segmentation for the image is then computed from the interim non-binary solution based on a threshold. This method does not use the original image data in inferring the final binary segmentation solution from the initial binary segmentation. In an embodiment, the method may be applied to all images and in another embodiment, the method may be used for images which comprise a large number of pixels in total or in single dimension and smaller images may not be down-sampled before segmentation.
    Type: Application
    Filed: March 5, 2010
    Publication date: September 8, 2011
    Applicant: Microsoft Corporation
    Inventors: Carsten Curt Eckard Rother, Toby Sharp
  • Publication number: 20110141121
    Abstract: Parallel processing for distance transforms is described. In an embodiment a raster scan algorithm is used to compute a distance transform such that each image element of a distance image is assigned a distance value. This distance value is a shortest distance from the image element to the seed region. In an embodiment two threads execute in parallel with a first thread carrying out a forward raster scan over the distance image and a second thread carrying out a backward raster scan over the image. In an example, a thread pauses when a cross-over condition is met until the other thread meets the condition after which both threads continue. In embodiments distances may be computed in Euclidean space or along geodesics defined on a surface. In an example, four threads execute two passes in parallel with each thread carrying out a raster scan over a different quarter of the image.
    Type: Application
    Filed: December 11, 2009
    Publication date: June 16, 2011
    Applicant: Microsoft Corporation
    Inventors: Toby Sharp, Antonio Criminisi
  • Publication number: 20100272367
    Abstract: Image processing using geodesic forests is described. In an example, a geodesic forest engine determines geodesic shortest-path distances between each image element and a seed region specified in the image in order to form a geodesic forest data structure. The geodesic distances take into account gradients in the image of a given image modality such as intensity, color, or other modality. In some embodiments, a 1D processing engine carries out 1D processing along the branches of trees in the geodesic forest data structure to form a processed image. For example, effects such as ink painting, edge-aware texture flattening, contrast-aware image editing, forming animations using geodesic forests and other effects are achieved using the geodesic forest data structure. In some embodiments the geodesic forest engine uses a four-part raster scan process to achieve real-time processing speeds and parallelization is possible in many of the embodiments.
    Type: Application
    Filed: April 28, 2009
    Publication date: October 28, 2010
    Applicant: Microsoft Corporation
    Inventors: Antonio Criminisi, Toby Sharp
  • Publication number: 20100226547
    Abstract: A system for multi-modal mapping of images is described. Embodiments are described where the image mapping system is used for visualizing high dynamic range images such as medical images, satellite images, high dynamic range photographs and the like and also for compressing such images. In examples, high bit-depth images are tone-mapped for display on equipment of lower bit-depth without loss of detail. In embodiments, the image mapping system computes statistics describing an input image and fits a multi-modal model to those statistics efficiently. In embodiments, the multi-modal model is a Gaussian mixture model and a plurality of sigmoid functions corresponding to the multi-modal model are obtained. In an embodiment the sigmoid functions are added to form a tone-mapping function which is used to transform a high bit-depth image such as 16 or 12 bits per pixel to a low bit-depth image such as 8 bits per pixel.
    Type: Application
    Filed: March 3, 2009
    Publication date: September 9, 2010
    Applicant: Microsoft Corporation
    Inventors: Antonio Criminisi, Evgeny Salnikov, Toby Sharp
  • Publication number: 20100094800
    Abstract: Methods and apparatus for evaluating decision trees on a GPU are described. In an embodiment, the structure of a decision tree is converted into a 2D “tree” array with each row representing a node in the tree. Each row comprises details of any child nodes and the parameters which are required to perform the binary test at the node. A pixel shader can then be used to evaluate the decision tree in parallel for each input data point in an input array by navigating through rows in the 2D tree array. For each row, data is read from the input array dependent upon the parameters in the row and the shader moves to another row dependent upon the result of the binary test. On reaching a row which represents a leaf node, the pixel shader outputs evaluation results, such as a leaf node index or a probability distribution over classes.
    Type: Application
    Filed: October 9, 2008
    Publication date: April 15, 2010
    Applicant: Microsoft Corporation
    Inventor: Toby Sharp
  • Publication number: 20090290795
    Abstract: A method of geodesic image and video processing is proposed. In an embodiment, the method uses a geodesic distance transform to construct an image filter. The filter can be used in a variety of image editing operations such as segmentation, denoising, texture smoothing, image stitching and cartooning. In one embodiment, the method may be made efficient by utilizing parallelism of the algorithm to carry out processing steps on at least two processing cores concurrently. This efficiency may enable high-resolution images and video to be processed at ‘real time’ rates without the need for specialist hardware.
    Type: Application
    Filed: May 23, 2008
    Publication date: November 26, 2009
    Applicant: Microsoft Corporation
    Inventors: Antonio Criminisi, Toby Sharp
  • Publication number: 20080178087
    Abstract: Using in-scene editing, an added title, or object, moves as the camera moves through the imaged scene. Previously this has been complex to achieve, requiring expert users to explicitly align 3D coordinate systems in the image sequence and on the added title or object. For example, this has been used to add 3D objects into live-action footage in big-budget movies or advertising. A simple, easy to use system is described for achieving in-scene editing. A user specifies projection constraints by making 2D actions on one or more images in the image sequence. A 3D motion trajectory is computed for a 3D object model on the basis of the specified projection constraints and a smoothness indicator. Using the computed trajectory the 3D object model is added to the image sequence. Projection constraints may be added, amended or deleted to position the 3D object model and/or to animate it.
    Type: Application
    Filed: January 19, 2007
    Publication date: July 24, 2008
    Applicant: Microsoft Corporation
    Inventors: Andrew Fitzgibbon, Toby Sharp