Systems and methods of locating a control object appendage in three dimensional (3D) space
AssigneeUltrahaptics IP Two Limited
InventorDavid S. Holz
Life of this patent
Estimating the term…
Abstract
Methods and systems for capturing motion and/or determining the shapes and positions of one or more objects in 3D space utilize cross-sections thereof. In various embodiments, images of the cross-sections are captured using a camera based on reflections therefrom or shadows cast thereby.
Claims19
A system for recognizing gestures from a control object moving in three dimensional (3D) space, the system including:
- one or more processors coupled to a memory, the memory loaded with computer instructions that, when executed by the one or more processors, implement actions including:
- receiving a result of analyzing a gesture;
- interpreting the result of analyzing a gesture as an instruction to perform an operation,
- wherein the result of analyzing a gesture is obtained from another program, which is executed on a processor, to analyze differences in positions of fit closed curves fit to observed edges of a control object thereby tracking motion of the control object while making a gesture in a 3D space by repeatedly:
- obtaining captured images of a control object moving in 3D space captured from at least two geometrically distinct predetermined vantages;
- calculating observed edges of the control object from the captured images;
- fitting closed curves to the observed edges of the control object as captured in the captured images by selecting a closed curve from a family of similar closed curves that fit the observed edges of the control object as captured using an assumed parameter;
- whenever the control object is a complex control object that includes a palm and multiple fingers, applying actions including obtaining captured images, calculating observed edges, and fitting closed curves to construct multiple fingers of control object appendages;
- and
- fitting cross sections of a palm to observed edges of a palm as captured in the captured images.
A non-transitory computer readable medium storing a plurality of instructions for programming one or more processors, which instructions, when executed by one or more processors, implement actions including:
- receiving a result of analyzing a gesture;
- interpreting as an instruction the result of analyzing a gesture;
- wherein the result of analyzing a gesture is obtained from another program executing on a processor from analysis of differences in positions of fit closed curves fit to observed edges of a control object thereby tracking motion of the control object while making a gesture in a 3D space including repeatedly:
- obtaining captured images of a control object moving in 3D space captured from at least two geometrically distinct predetermined vantages;
- calculating observed edges of the control object from the captured images;
- fitting closed curves to the observed edges of the control object as captured in the captured images by selecting a closed curve from a family of similar closed curves that fit the observed edges of the control object as captured using an assumed parameter;
- and
- whenever the control object is a complex control object that includes a palm and multiple fingers, applying actions including obtaining captured images, calculating observed edges, and fitting closed curves actions to construct multiple fingers of control object appendages;
- and
- fitting cross sections of a palm to observed edges of a palm as captured in the captured images.
A method for executing a gesture command, the method including:
- receiving a result of analyzing a gesture;
- interpreting as an instruction the result of analyzing a gesture;
- wherein the result of analyzing a gesture is obtained from another program executing on a processor from analysis of differences in positions of fit closed curves fit to observed edges of a control object to track motion of the control object while making a gesture in a 3D space including repeatedly:
- obtaining captured images of a control object moving in 3D space captured from at least two geometrically distinct predetermined vantages;
- calculating observed edges of the control object from the captured images;
- fitting closed curves to the observed edges of the control object as captured in the captured images by selecting a closed curve from a family of similar closed curves that fit the observed edges of the control object as captured using an assumed parameter;
- and
- whenever the control object is a complex control object that includes a palm and multiple fingers, applying actions including obtaining captured images, calculating observed edges, and fitting closed curves to construct multiple fingers of control object appendages;
- and
- fitting cross sections of a palm to observed edges of a palm as captured in the captured images.
Dependencies are inferred from the claim text.