Measuring 3d basketball trajectory, spin rate and spin axis
Abstract
Embodiments are disclosed for determining a three-dimensional (3D) trajectory, spin rate and spin axis of a basketball in flight. In some embodiments, a method comprises: capturing, using a first camera, a first set of images of a basketball in motion after the basketball is released by a player; capturing, using a second camera, a second set of images of the basketball when it contacts a rim of a basketball hoop; measuring, using a radar, radar data associated with the basketball; and generating, using the first and second sets of images, an observed three-dimensional trajectory of the basketball, based on two-dimensional position data determined from the first and second sets of images, intrinsic parameters of the first and second cameras, extrinsic parameters of the first and second cameras and the radar data.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method comprising:
capturing, using a first camera, a first set of images of a basketball in motion after the basketball is released by a player; capturing, using a second camera, a second set of images of the basketball when it contacts a rim of a basketball hoop; measuring, using a radar, radar data associated with the basketball; and generating, using the first and second sets of images, an observed three-dimensional (3D) trajectory of the basketball, based on two-dimensional (2D) position data determined from the first and second sets of images, intrinsic parameters of the first and second cameras, extrinsic parameters of the first and second cameras and the radar data.
2 . The method of claim 1 , wherein the first camera has a first frame rate and a first field of view (FOV) directed towards the player, and the second camera has a second frame rate and a second FOV directed toward the rim of the basketball hoop.
3 . The method of claim 2 , wherein the first frame rate is faster than the second frame rate and the first FOV is wider than the second FOV, and where the first camera captures the release of the basketball by the player, and the second camera captures the basketball before it contacts with the rim of the basketball hoop.
4 . The method of claim 1 , wherein the radar data includes a perceived radial speed of the basketball while the basketball is in motion.
5 . The method of claim 4 , wherein generating the observed 3D trajectory of the basketball further comprises:
iterating through a number of flight trajectories of the basketball constructed from the 2D position data and the radar data; reprojecting each flight trajectory into camera coordinates using the intrinsic camera parameters; calculating a perceived 2D pixel error by comparing the observed 3D trajectory with 3D flight path data generated by a flight model; minimizing the 2D pixel error to obtain the observed 3D basketball trajectory; and converting the observed 3D basketball trajectory from camera coordinates to real-world coordinates using the extrinsic parameters.
6 . The method of claim 5 , wherein the 3D flight path data is randomly generated.
7 . The method of claim 1 , further comprising:
analyzing the second set of images using computer vision or deep learning to determine at least one of an impact time when the basketball contacts the rim, impact position of the basketball at the impact time, descent angle, spin rate, spin axis or contact speed; generating performance data based on the analyzing and observed 3D trajectory; and providing feedback on the performance data through one or more visual or audio devices.
8 . The method of claim 7 , further comprising:
measuring the spin rate and the spin axis of the basketball by tracking a logo, seam line or other elements on the basketball.
9 . The method of claim 7 , further comprising:
determining the impact position of the basketball based on the observed 3D trajectory and a circumference of the rim.
10 . The method of claim 7 , wherein vibration of the rim captured by the second camera is used to determine the impact time.
11 . The method of claim 7 , further comprising:
determining kinematics data from the first set of camera images; and determining the performance data by combining the kinematics data with the impact position.
12 . A system comprising:
a first camera; a second camera; a radar; at least one processor; memory storing instructions that when executed by the at least one processor, cause the at least one processor to perform operations comprising:
capturing, using the first camera, a first set of images of a basketball in motion after the basketball is released by a player;
capturing, using the second camera, a second set of images of the basketball when it contacts a rim of a basketball hoop;
measuring, using the radar, radar data associated with the basketball; and
generating, using the first and second sets of images, an observed three-dimensional (3D) trajectory of the basketball, based on two-dimensional (2D) position data determined from the first and second sets of images, intrinsic parameters of the first and second cameras, extrinsic parameters of the first and second cameras and the radar data.
13 . The system of claim 11 , wherein the first camera has a first frame rate and a first field of view (FOV) directed towards the player, and the second camera has a second frame rate and a second FOV directed toward the rim of the basketball hoop.
14 . The system of claim 13 , wherein the first frame rate is faster than the second frame rate and the first FOV is wider than the second FOV, and where the first camera captures the release of the basketball by the player, and the second camera captures the basketball before it contacts with the rim of the basketball hoop.
15 . The system of claim 11 , wherein the radar data includes a perceived radial speed of the basketball while the basketball is in motion.
16 . The system of claim 15 , wherein generating the observed 3D trajectory of the basketball further comprises:
iterating through a number of flight trajectories of the basketball constructed from the 2D position data and the radar data; reprojecting each flight trajectory into camera coordinates using the calibrated intrinsic camera parameters; calculating a perceived 2D pixel error by comparing the observed 3D trajectory with 3D flight path data generated by a flight model; minimizing the 2D pixel error to obtain the observed 3D basketball trajectory; and converting the observed 3D basketball trajectory from camera coordinates to real-world coordinates using the extrinsic parameters.
17 . The system of claim 16 , wherein the 3D flight path data is randomly generated.
18 . The system of claim 11 , wherein the operations further comprise:
analyzing the second set of images using computer vision or deep learning to determine at least one of impact time when the basketball contacts the rim, impact position of the basketball at the impact time, descent angle, spin rate, spin axis or contact speed; generating performance data based on the analyzing and observed 3D trajectory; and providing feedback on the performance data through one or more visual or audio devices.
19 . The system of claim 18 , wherein the operations further comprising:
measuring the spin rate and the spin axis of the basketball by tracking a logo, seam line or other elements on the basketball.
20 . The system of claim 18 , wherein the operations further comprising:
determining the impact position of the basketball based on the observed 3D trajectory of the basketball and a circumference of the rim.
21 . The system of claim 18 , further comprising:
determining kinematics data from the first set of camera images; and determining the performance data from the kinematics data and the impact position of the basketball.
22 . The system of claim 18 , wherein vibration of the rim captured by the second camera is used to determine the impact time.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.