Non-linear motion capture using Frenet-Serret frames
First Claim
Patent Images
1. A method of accurately capturing a non-linear gestural path of a hand-gesture in three-dimensional (3D) sensory space, the method including:
- capturing with a camera a sequence of multiple images of a user'"'"'s hand making a non-linear free-form hand-gesture performed by the user'"'"'s hand, moving freely and substantially independently of contact with other objects in a three-dimensional (3D) sensory space monitored by the camera;
using a first coordinate system associated with the camera, determining from the sequence of multiple images a first set of coordinates of a plurality of 3D positions along a hand-gesture movement path made by the user'"'"'s hand during the non-linear free-form hand-gesture captured;
determining an orientation invariant trajectory for the hand-gesture movement path during the non-linear free-form hand-gesture by transforming the first set of coordinates of the plurality of 3D positions along the hand-gesture movement path captured in the first coordinate system into a second set of coordinates in a second coordinate system according to a transform defining a relationship between the first coordinate system and the second coordinate system, including;
transforming points in the images captured representing positions in space of portions of the user'"'"'s hand captured using the first coordinate system corresponding to coordinates of the camera into corresponding points using the second coordinate system by attaching to select ones of the points a frame of reference consisting of an orthonormal vector set andbuilding a sequence of orthonormal vector sets at sequential points of the select ones of the points thereby describing motion of the user'"'"'s hand at the select ones of the points as the sequence of orthonormal vector sets;
applying at least one filter to the second set of coordinates to obtain filtered curvilinear motion data for the hand-gesture movement path;
comparing the orientation invariant trajectory for the hand-gesture movement path to a library of known gestures electronically stored as records in a database to detect a gesture; and
when a similar trajectory for a user'"'"'s hand located in the library of known gesture is found, providing a command input to control a system based upon the gesture detected; and
generating for display a smoothened representation of the hand-gesture movement path using an approximate best-fit curve that predicts a trajectory for the user'"'"'s hand by connecting points along the hand-gesture movement path.
12 Assignments
0 Petitions
Accused Products
Abstract
Implementations of the technology disclosed convert captured motion from Cartesian/(x,y,z) space to Frenet-Serret frame space, apply one or more filters to the motion in Frenet-Serret space, and output data (for display or control) in a desired coordinate space—e.g., in a Cartesian/(x,y,z) reference frame. The output data can better represent a user'"'"'s actual motion or intended motion.
22 Citations
17 Claims
-
1. A method of accurately capturing a non-linear gestural path of a hand-gesture in three-dimensional (3D) sensory space, the method including:
-
capturing with a camera a sequence of multiple images of a user'"'"'s hand making a non-linear free-form hand-gesture performed by the user'"'"'s hand, moving freely and substantially independently of contact with other objects in a three-dimensional (3D) sensory space monitored by the camera; using a first coordinate system associated with the camera, determining from the sequence of multiple images a first set of coordinates of a plurality of 3D positions along a hand-gesture movement path made by the user'"'"'s hand during the non-linear free-form hand-gesture captured; determining an orientation invariant trajectory for the hand-gesture movement path during the non-linear free-form hand-gesture by transforming the first set of coordinates of the plurality of 3D positions along the hand-gesture movement path captured in the first coordinate system into a second set of coordinates in a second coordinate system according to a transform defining a relationship between the first coordinate system and the second coordinate system, including; transforming points in the images captured representing positions in space of portions of the user'"'"'s hand captured using the first coordinate system corresponding to coordinates of the camera into corresponding points using the second coordinate system by attaching to select ones of the points a frame of reference consisting of an orthonormal vector set and building a sequence of orthonormal vector sets at sequential points of the select ones of the points thereby describing motion of the user'"'"'s hand at the select ones of the points as the sequence of orthonormal vector sets; applying at least one filter to the second set of coordinates to obtain filtered curvilinear motion data for the hand-gesture movement path; comparing the orientation invariant trajectory for the hand-gesture movement path to a library of known gestures electronically stored as records in a database to detect a gesture; and
when a similar trajectory for a user'"'"'s hand located in the library of known gesture is found, providing a command input to control a system based upon the gesture detected; andgenerating for display a smoothened representation of the hand-gesture movement path using an approximate best-fit curve that predicts a trajectory for the user'"'"'s hand by connecting points along the hand-gesture movement path. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A non-transitory computer readable medium storing instructions to accurately capture a non-linear gestural path of a hand-gesture in three-dimensional (3D) sensory space, which instructions when executed by a processor perform actions including:
-
capturing with a camera a sequence of multiple images of a user'"'"'s hand making a non-linear free-form hand-gesture performed by the user'"'"'s hand, moving freely and substantially independently of contact with other objects in a three-dimensional (3D) sensory space monitored by the camera; using a first coordinate system associated with the camera, determining from the sequence of multiple images a first set of coordinates of a plurality of 3D positions along a hand-gesture movement path made by the user'"'"'s hand during the non-linear free-form hand-gesture captured; determining an orientation invariant trajectory for the hand-gesture movement path during the non-linear free-form hand-gesture by transforming the first set of coordinates of the plurality of 3D positions along the hand-gesture movement path captured in the first coordinate system into a second set of coordinates in a second coordinate system according to a transform defining a relationship between the first coordinate system and the second coordinate system, including; transforming points in the images captured representing positions in space of portions of the user'"'"'s hand captured using the first coordinate system corresponding to coordinates of the camera into corresponding points using the second coordinate system by attaching to select ones of the points a frame of reference consisting of an orthonormal vector set and building a sequence of orthonormal vector sets at sequential points of the select ones of the points thereby describing motion of the user'"'"'s hand at the select ones of the points as the sequence of orthonormal vector sets; applying at least one filter to the second set of coordinates to obtain filtered curvilinear motion data for the hand-gesture movement path; and comparing the orientation invariant trajectory for the hand-gesture movement path to a library of known gestures electronically stored as records in a database to detect a gesture; and
when a similar trajectory for a user'"'"'s hand located in the library of known gesture is found, providing a command input to control a system based upon the gesture detected; andgenerating for display a smoothened representation of the hand-gesture movement path using an approximate best-fit curve that predicts a trajectory for the user'"'"'s hand by connecting points along the hand-gesture movement path.
-
-
17. A system of accurately capturing non-linear gestural path of a hand-gesture in three-dimensional (3D) sensory space, the system including:
-
at least one camera to capture a sequence of multiple images of a user'"'"'s hand making a non-linear free-form gesture performed by the user'"'"'s hand, moving freely and substantially independently of contact with other objects in a three-dimensional (3D) sensory space monitored by the camera; a processor; a processor-executable object-detection model to determine from the sequence of multiple images a first set of coordinates of a plurality of 3D positions along a hand-gesture movement path made by the user'"'"'s hand during a non-linear free-form hand-gesture captured using a first coordinate system associated with the camera; a processor-executable filtering module to; determine an orientation invariant trajectory for the hand-gesture movement path by transforming the first set of coordinates of the plurality of 3D positions along the hand-gesture movement path captured in the first coordinate system into a second set of coordinates in a second coordinate system according to a transform defining a relationship between the first coordinate system and the second coordinate system, including; transforming points in the images captured representing positions in space of portions of the user'"'"'s hand captured using the first coordinate system corresponding to coordinates of the camera into corresponding points using the second coordinate system by attaching to select ones of the points a frame of reference consisting of an orthonormal vector set and building a sequence of orthonormal vector sets at sequential points of the select ones of the points thereby describing motion of the user'"'"'s hand at the select ones of the points as the sequence of orthonormal vector sets; apply at least one filter to the second set of coordinates to obtain filtered curvilinear motion data for the hand-gesture movement path; and compare the orientation invariant trajectory for the hand-gesture movement path to a library of known gestures electronically stored as records in a database to detect a gesture; and
when a similar trajectory for a user'"'"'s hand located in the library of known gesture is found, providing a command input to control a system based upon the gesture detected; andgenerate for display a smoothened representation of the hand-gesture movement path using an approximate best-fit curve that predicts a trajectory for the user'"'"'s hand by connecting points along the hand-gesture movement path.
-
Specification