Patent application number | Description | Published |
20100197390 | POSE TRACKING PIPELINE - A method of tracking a target includes receiving from a source an observed depth image of a scene including the target. Each pixel of the observed depth image is labeled as either a foreground pixel belonging to the target or a background pixel not belonging to the target. Each foreground pixel is labeled with body part information indicating a likelihood that that foreground pixel belongs to one or more body parts of the target. The target is modeled with a skeleton including a plurality of skeletal points, each skeletal point including a three dimensional position derived from body part information of one or more foreground pixels. | 08-05-2010 |
20100228694 | Data Processing Using Restricted Boltzmann Machines - Data processing using restricted Boltzmann machines is described, for example, to pre-process continuous data and provide binary outputs. In embodiments, restricted Boltzmann machines based on either Gaussian distributions or Beta distributions are described which are able to learn and model both the mean and variance of data. In some embodiments, a stack of restricted Boltzmann machines are connected in series with outputs of one restricted Boltzmann machine providing input to the next in the stack and so on. Embodiments describe how training for each machine in the stack may be carried out efficiently and the combined system used for one of a variety of applications such as data compression, object recognition, image processing, information retrieval, data analysis and the like. | 09-09-2010 |
20100278384 | Human body pose estimation - Techniques for human body pose estimation are disclosed herein. Depth map images from a depth camera may be processed to calculate a probability that each pixel of the depth map is associated with one or more segments or body parts of a body. Body parts may then be constructed of the pixels and processed to define joints or nodes of those body parts. The nodes or joints may be provided to a system which may construct a model of the body from the various nodes or joints. | 11-04-2010 |
20110033122 | Image Processing Using Masked Restricted Boltzmann Machines - Image processing using masked restricted Boltzmann machines is described. In an embodiment restricted Boltzmann machines based on beta distributions are described which are implemented in an image processing system. In an embodiment a plurality of fields of masked RBMs are connected in series. An image is input into a masked appearance RBM and decomposed into superpixel elements. The superpixel elements output from one appearance RBM are used as input to a further appearance RBM. The outputs from each of the series of fields of RBMs are used in an intelligent image processing system. Embodiments describe training a plurality of RBMs. Embodiments describe using the image processing system for applications such as object recognition and image editing. | 02-10-2011 |
20110188715 | Automatic Identification of Image Features - Automatic identification of image features is described. In an embodiment, a device automatically identifies organs in a medical image using a decision forest formed of a plurality of distinct, trained decision trees. An image element from the image is applied to each of the trained decision trees to obtain a probability of the image element representing a predefined class of organ. The probabilities from each of the decision trees are aggregated and used to assign an organ classification to the image element. In another embodiment, a method of training a decision tree to identify features in an image is provided. For a selected node in the decision tree, a training image is analyzed at a plurality of locations offset from a selected image element, and one of the offsets is selected based on the results of the analysis and stored in association with the node. | 08-04-2011 |
20110210915 | Human Body Pose Estimation - Techniques for human body pose estimation are disclosed herein. Images such as depth images, silhouette images, or volumetric images may be generated and pixels or voxels of the images may be identified. The techniques may process the pixels or voxels to determine a probability that each pixel or voxel is associated with a segment of a body captured in the image or to determine a three-dimensional representation for each pixel or voxel that is associated with a location on a canonical body. These probabilities or three-dimensional representations may then be utilized along with the images to construct a posed model of the body captured in the image. | 09-01-2011 |
20110293180 | Foreground and Background Image Segmentation - 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. | 12-01-2011 |
20120157207 | POSE TRACKING PIPELINE - A method of tracking a target includes receiving from a source a depth image of a scene including the human subject. The depth image includes a depth for each of a plurality of pixels. The method further includes identifying pixels of the depth image that belong to the human subject and deriving from the identified pixels of the depth image one or more machine readable data structures representing the human subject as a body model including a plurality of shapes. | 06-21-2012 |
20120194516 | Three-Dimensional Environment Reconstruction - Three-dimensional environment reconstruction is described. In an example, a 3D model of a real-world environment is generated in a 3D volume made up of voxels stored on a memory device. The model is built from data describing a camera location and orientation, and a depth image with pixels indicating a distance from the camera to a point in the environment. A separate execution thread is assigned to each voxel in a plane of the volume. Each thread uses the camera location and orientation to determine a corresponding depth image location for its associated voxel, determines a factor relating to the distance between the associated voxel and the point in the environment at the corresponding location, and updates a stored value at the associated voxel using the factor. Each thread iterates through an equivalent voxel in the remaining planes of the volume, repeating the process to update the stored value. | 08-02-2012 |
20120194517 | Using a Three-Dimensional Environment Model in Gameplay - Use of a 3D environment model in gameplay is described. In an embodiment, a mobile depth camera is used to capture a series of depth images as it is moved around and a dense 3D model of the environment is generated from this series of depth images. This dense 3D model is incorporated within an interactive application, such as a game. The mobile depth camera is then placed in a static position for an interactive phase, which in some examples is gameplay, and the system detects motion of a user within a part of the environment from a second series of depth images captured by the camera. This motion provides a user input to the interactive application, such as a game. In further embodiments, automatic recognition and identification of objects within the 3D model may be performed and these identified objects then change the way that the interactive application operates. | 08-02-2012 |
20120194644 | Mobile Camera Localization Using Depth Maps - Mobile camera localization using depth maps is described for robotics, immersive gaming, augmented reality and other applications. In an embodiment a mobile depth camera is tracked in an environment at the same time as a 3D model of the environment is formed using the sensed depth data. In an embodiment, when camera tracking fails, this is detected and the camera is relocalized either by using previously gathered keyframes or in other ways. In an embodiment, loop closures are detected in which the mobile camera revisits a location, by comparing features of a current depth map with the 3D model in real time. In embodiments the detected loop closures are used to improve the consistency and accuracy of the 3D model of the environment. | 08-02-2012 |
20120194650 | Reducing Interference Between Multiple Infra-Red Depth Cameras - Systems and methods for reducing interference between multiple infra-red depth cameras are described. In an embodiment, the system comprises multiple infra-red sources, each of which projects a structured light pattern into the environment. A controller is used to control the sources in order to reduce the interference caused by overlapping light patterns. Various methods are described including: cycling between the different sources, where the cycle used may be fixed or may change dynamically based on the scene detected using the cameras; setting the wavelength of each source so that overlapping patterns are at different wavelengths; moving source-camera pairs in independent motion patterns; and adjusting the shape of the projected light patterns to minimize overlap. These methods may also be combined in any way. In another embodiment, the system comprises a single source and a mirror system is used to cast the projected structured light pattern around the environment. | 08-02-2012 |
20120195471 | Moving Object Segmentation Using Depth Images - Moving object segmentation using depth images is described. In an example, a moving object is segmented from the background of a depth image of a scene received from a mobile depth camera. A previous depth image of the scene is retrieved, and compared to the current depth image using an iterative closest point algorithm. The iterative closest point algorithm includes a determination of a set of points that correspond between the current depth image and the previous depth image. During the determination of the set of points, one or more outlying points are detected that do not correspond between the two depth images, and the image elements at these outlying points are labeled as belonging to the moving object. In examples, the iterative closest point algorithm is executed as part of an algorithm for tracking the mobile depth camera, and hence the segmentation does not add substantial additional computational complexity. | 08-02-2012 |
20120196679 | Real-Time Camera Tracking Using Depth Maps - Real-time camera tracking using depth maps is described. In an embodiment depth map frames are captured by a mobile depth camera at over 20 frames per second and used to dynamically update in real-time a set of registration parameters which specify how the mobile depth camera has moved. In examples the real-time camera tracking output is used for computer game applications and robotics. In an example, an iterative closest point process is used with projective data association and a point-to-plane error metric in order to compute the updated registration parameters. In an example, a graphics processing unit (GPU) implementation is used to optimize the error metric in real-time. In some embodiments, a dense 3D model of the mobile camera environment is used. | 08-02-2012 |
20120207359 | Image Registration - Image registration is described. In an embodiment an image registration system executes automatic registration of images, for example medical images. In an example, semantic information is computed for each of the images to be registered comprising information about the types of objects in the images and the certainty of that information. In an example a mapping is found to register the images which takes into account the intensities of the image elements as well as the semantic information in a manner which is weighted by the certainty of that semantic information. For example, the semantic information is computed by estimating posterior distributions for the locations of anatomical structures by using a regression forest and transforming the posterior distributions into a probability map. In an example the mapping is found as a global point of inflection of an energy function, the energy function having a term related to the semantic information. | 08-16-2012 |
20120219209 | Image Labeling with Global Parameters - Image labeling with global parameters is described. In an embodiment a pose estimation system executes automatic body part labeling. For example, the system may compute joint recognition or body part segmentation for a gaming application. In another example, the system may compute organ labels for a medical imaging application. In an example, at least one global parameter, for example body height is computed for each of the images to be labeled. In an example, the global parameter is used to modify an image labeling process. For example the global parameter may be used to modify the input image to a canonical scale. In another example, the global parameter may be used to adaptively modify previously stored parameters of the image labeling process. In an example, the previously stored parameters may be computed from a reduced set of training data. | 08-30-2012 |
20120225719 | Gesture Detection and Recognition - A gesture detection and recognition technique is described. In one example, a sequence of data items relating to the motion of a gesturing user is received. A selected set of data items from the sequence are tested against pre-learned threshold values, to determine a probability of the sequence representing a certain gesture. If the probability is greater than a predetermined value, then the gesture is detected, and an action taken. In examples, the tests are performed by a trained decision tree classifier. In another example, the sequence of data items can be compared to pre-learned templates, and the similarity between them determined. If the similarity for a template exceeds a threshold, a likelihood value associated with a future time for a gesture associated with that template is updated. Then, when the future time is reached, the gesture is detected if the likelihood value is greater than a predefined value. | 09-06-2012 |
20120239174 | Predicting Joint Positions - Predicting joint positions is described, for example, to find joint positions of humans or animals (or parts thereof) in an image to control a computer game or for other applications. In an embodiment image elements of a depth image make joint position votes so that for example, an image element depicting part of a torso may vote for a position of a neck joint, a left knee joint and a right knee joint. A random decision forest may be trained to enable image elements to vote for the positions of one or more joints and the training process may use training images of bodies with specified joint positions. In an example a joint position vote is expressed as a vector representing a distance and a direction of a joint position from an image element making the vote. The random decision forest may be trained using a mixture of objectives. | 09-20-2012 |
20120269407 | AUTOMATIC ORGAN LOCALIZATION - Automatic organ localization is described. In an example, an organ in a medical image is localized using one or more trained regression trees. Each image element of the medical image is applied to the trained regression trees to compute probability distributions that relate to a distance from each image element to the organ. At least a subset of the probability distributions are selected and aggregated to calculate a localization estimate for the organ. In another example, the regression trees are trained using training images having a predefined organ location. At each node of the tree, test parameters are generated that determine which subsequent node each training image element is passed to. This is repeated until each image element reaches a leaf node of the tree. A probability distribution is generated and stored at each leaf node, based on the distance from the leaf node's image elements to the organ. | 10-25-2012 |
20120306734 | Gesture Recognition Techniques - In one or more implementations, a static geometry model is generated, from one or more images of a physical environment captured using a camera, using one or more static objects to model corresponding one or more objects in the physical environment. Interaction of a dynamic object with at least one of the static objects is identified by analyzing at least one image and a gesture is recognized from the identified interaction of the dynamic object with the at least one of the static objects to initiate an operation of the computing device. | 12-06-2012 |
20120306876 | GENERATING COMPUTER MODELS OF 3D OBJECTS - Generating computer models of 3D objects is described. In one example, depth images of an object captured by a substantially static depth camera are used to generate the model, which is stored in a memory device in a three-dimensional volume. Portions of the depth image determined to relate to the background are removed to leave a foreground depth image. The position and orientation of the object in the foreground depth image is tracked by comparison to a preceding depth image, and the foreground depth image is integrated into the volume by using the position and orientation to determine where to add data derived from the foreground depth image into the volume. In examples, the object is hand-rotated by a user before the depth camera. Hands that occlude the object are integrated out of the model as they do not move in sync with the object due to re-gripping. | 12-06-2012 |
20130028476 | POSE TRACKING PIPELINE - A method of tracking a target includes receiving from a source a depth image of a scene including the human subject. The depth image includes a depth for each of a plurality of pixels. The method further includes identifying pixels of the depth image that belong to the human subject and deriving from the identified pixels of the depth image one or more machine readable data structures representing the human subject as a body model including a plurality of shapes. | 01-31-2013 |
20130106994 | Depth Image Compression | 05-02-2013 |
20130129230 | Computing Pose and/or Shape of Modifiable Entities - Computing pose and/or shape of a modifiable entity is described. In various embodiments a model of an entity (such as a human hand, a golf player holding a golf club, an animal, a body organ) is fitted to an image depicting an example of the entity in a particular pose and shape. In examples, an optimization process finds values of pose and/or shape parameters that when applied to the model explain the image data well. In examples the optimization process is influenced by correspondences between image elements and model points obtained from a regression engine where the regression engine may be a random decision forest. For example, the random decision forest may take elements of the image and calculate candidate correspondences between those image elements and model points. In examples the model, pose and correspondences may be used for control of various applications including computer games, medical systems, augmented reality. | 05-23-2013 |
20130156297 | Learning Image Processing Tasks from Scene Reconstructions - Learning image processing tasks from scene reconstructions is described where the tasks may include but are not limited to: image de-noising, image in-painting, optical flow detection, interest point detection. In various embodiments training data is generated from a 2 or higher dimensional reconstruction of a scene and from empirical images of the same scene. In an example a machine learning system learns at least one parameter of a function for performing the image processing task by using the training data. In an example, the machine learning system comprises a random decision forest. In an example, the scene reconstruction is obtained by moving an image capture apparatus in an environment where the image capture apparatus has an associated dense reconstruction and camera tracking system. | 06-20-2013 |
20130156298 | Using High-Level Attributes to Guide Image Processing - Using high-level attributes to guide image processing is described. In an embodiment high-level attributes of images of people such as height, torso orientation, body shape, gender are used to guide processing of the images for various tasks including but not limited to joint position detection, body part classification, medical image analysis and others. In various embodiments one or more random decision forests are trained using images where global variable values such as player height are known in addition to ground-truth data appropriate for the image processing task concerned. In some examples sequences of images are used where global variables are static or vary smoothly over the sequence. In some examples one or more trained random decision forests are used to find global variable values as well as output values for the task concerned such as joint positions or body part classes. | 06-20-2013 |
20130241833 | POSE TRACKING PIPELINE - A method of tracking a target includes receiving from a source a depth image of a scene including the human subject. The depth image includes a depth for each of a plurality of pixels. The method further includes identifying pixels of the depth image that belong to the human subject and deriving from the identified pixels of the depth image one or more machine readable data structures representing the human subject as a body model including a plurality of shapes. | 09-19-2013 |
20130244782 | REAL-TIME CAMERA TRACKING USING DEPTH MAPS - Real-time camera tracking using depth maps is described. In an embodiment depth map frames are captured by a mobile depth camera at over 20 frames per second and used to dynamically update in real-time a set of registration parameters which specify how the mobile depth camera has moved. In examples the real-time camera tracking output is used for computer game applications and robotics. In an example, an iterative closest point process is used with projective data association and a point-to-plane error metric in order to compute the updated registration parameters. In an example, a graphics processing unit (GPU) implementation is used to optimize the error metric in real-time. In some embodiments, a dense 3D model of the mobile camera environment is used. | 09-19-2013 |
20130266182 | HUMAN BODY POSE ESTIMATION - Techniques for human body pose estimation are disclosed herein. Depth map images from a depth camera may be processed to calculate a probability that each pixel of the depth map is associated with one or more segments or body parts of a body. Body parts may then be constructed of the pixels and processed to define joints or nodes of those body parts. The nodes or joints may be provided to a system which may construct a model of the body from the various nodes or joints. | 10-10-2013 |
20130343619 | DENSITY ESTIMATION AND/OR MANIFOLD LEARNING - Density estimation and/or manifold learning are described, for example, for computer vision, medical image analysis, text document clustering. In various embodiments a density forest is trained using unlabeled data to estimate the data distribution. In embodiments the density forest comprises a plurality of random decision trees each accumulating portions of the training data into clusters at their leaves. In embodiments probability distributions representing the clusters at each tree are aggregated to form a forest density which is an estimate of a probability density function from which the unlabeled data may be generated. A mapping engine may use the clusters at the leaves of the density forest to estimate a mapping function which maps the unlabeled data to a lower dimensional space whilst preserving relative distances or other relationships between the unlabeled data points. A sampling engine may use the density forest to randomly sample data from the forest density. | 12-26-2013 |
20130346346 | SEMI-SUPERVISED RANDOM DECISION FORESTS FOR MACHINE LEARNING - Semi-supervised random decision forests for machine learning are described, for example, for interactive image segmentation, medical image analysis, and many other applications. In examples, a random decision forest comprising a plurality of hierarchical data structures is trained using both unlabeled and labeled observations. In examples, a training objective is used which seeks to cluster the observations based on the labels and similarity of the observations. In an example, a transducer assigns labels to the unlabeled observations on the basis of the clusters and certainty information. In an example, an inducer forms a generic clustering function by counting examples of class labels at leaves of the trees in the forest. In an example, an active learning module identifies regions in a feature space from which the observations are drawn using the clusters and certainty information; new observations from the identified regions are used to train the random decision forest. | 12-26-2013 |
20140078141 | POSE TRACKING PIPELINE - A method of tracking a subject includes receiving from a source a depth image of a scene including the subject. The depth image includes a depth for each of a plurality of pixels. The method further includes identifying pixels of the depth image that image the subject and deriving from the identified pixels of the depth image one or more machine readable data structures representing the subject as a model including a plurality of shapes. | 03-20-2014 |
20140126821 | FOREGROUND AND BACKGROUND IMAGE SEGMENTATION - 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. | 05-08-2014 |
20140204013 | PART AND STATE DETECTION FOR GESTURE RECOGNITION - Part and state detection for gesture recognition is useful for human-computer interaction, computer gaming, and other applications where gestures are recognized in real time. In various embodiments a decision forest classifier is used to label image elements of an input image with both part and state labels where part labels identify components of a deformable object, such as finger tips, palm, wrist, lips, laptop lid and where state labels identify configurations of a deformable object such as open, closed, up, down, spread, clenched. In various embodiments the part labels are used to calculate a center of mass of the body parts and the part labels, centers of mass and state labels are used to recognize gestures in real time or near real-time. | 07-24-2014 |
20140205138 | DETECTING THE LOCATION OF A KEYBOARD ON A DESKTOP - Methods and systems for detecting the location of a keyboard on a desktop. The method includes receiving an image of the desktop with the keyboard situated thereon and analyzing the image of the desktop to identify an area of the image corresponding to the keyboard. In one example, the image of the desktop is a depth image and analyzing the image of the desktop includes identifying an image element of the depth image that forms part of the keyboard, identifying first and second corners of the keyboard from the identified image element and determining the area of the image corresponding to the keyboard based on the first and second corners. | 07-24-2014 |
20140208274 | CONTROLLING A COMPUTING-BASED DEVICE USING HAND GESTURES - Methods and system for controlling a computing-based device using both input received from a traditional input device (e.g. keyboard) and hand gestures made on or near a reference object (e.g. keyboard). In some examples, the hand gestures may comprise one or more hand touch gestures and/or one or more hand air gestures. | 07-24-2014 |
20140241617 | CAMERA/OBJECT POSE FROM PREDICTED COORDINATES - Camera or object pose calculation is described, for example, to relocalize a mobile camera (such as on a smart phone) in a known environment or to compute the pose of an object moving relative to a fixed camera. The pose information is useful for robotics, augmented reality, navigation and other applications. In various embodiments where camera pose is calculated, a trained machine learning system associates image elements from an image of a scene, with points in the scene's 3D world coordinate frame. In examples where the camera is fixed and the pose of an object is to be calculated, the trained machine learning system associates image elements from an image of the object with points in an object coordinate frame. In examples, the image elements may be noisy and incomplete and a pose inference engine calculates an accurate estimate of the pose. | 08-28-2014 |
20140247212 | Gesture Recognition Techniques - In one or more implementations, a static geometry model is generated, from one or more images of a physical environment captured using a camera, using one or more static objects to model corresponding one or more objects in the physical environment. Interaction of a dynamic object with at least one of the static objects is identified by analyzing at least one image and a gesture is recognized from the identified interaction of the dynamic object with the at least one of the static objects to initiate an operation of the computing device. | 09-04-2014 |
20140307956 | IMAGE LABELING USING GEODESIC FEATURES - Image labeling is described, for example, to recognize body organs in a medical image, to label body parts in a depth image of a game player, to label objects in a video of a scene. In various embodiments an automated classifier uses geodesic features of an image, and optionally other types of features, to semantically segment an image. For example, the geodesic features relate to a distance between image elements, the distance taking into account information about image content between the image elements. In some examples the automated classifier is an entangled random decision forest in which data accumulated at earlier tree levels is used to make decisions at later tree levels. In some examples the automated classifier has auto-context by comprising two or more random decision forests. In various examples parallel processing and look up procedures are used. | 10-16-2014 |