Tracking, auto-calibration, and map-building system
First Claim
1. A method for tracking an object comprising:
- coupling a sensor subsystem to an estimation subsystem, said sensor subsystem enabling measurement related to relative locations or orientations of sensing elements;
accepting configuration data from the sensor subsystem;
configuring the estimation system according to the accepted configuration data;
repeatedly updating a state estimate, including accepting measurement information from the sensor subsystem, and updating the state estimate according to the accepted configuration data and the accepted measurement data.
5 Assignments
0 Petitions
Accused Products
Abstract
A navigation or motion tracking system includes components associated with particular sensors, which are decoupled from a tracking component that takes advantage of information in the sensor measurements. The architecture of this system enables development of sensor-specific components independently of the tracking component, and enables sensors and their associated components to be added or removed without having to re-implement the tracking component. In a software implementation of the system, sensor-specific software components may be dynamically incorporated into the system and the tracking component is then automatically configured to take advantage of measurements from the corresponding sensors without having to modify the tracking component.
195 Citations
75 Claims
-
1. A method for tracking an object comprising:
-
coupling a sensor subsystem to an estimation subsystem, said sensor subsystem enabling measurement related to relative locations or orientations of sensing elements;
accepting configuration data from the sensor subsystem;
configuring the estimation system according to the accepted configuration data;
repeatedly updating a state estimate, including accepting measurement information from the sensor subsystem, and updating the state estimate according to the accepted configuration data and the accepted measurement data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A tracking system comprising:
-
an estimation subsystem; and
a sensor subsystem coupled to the estimation module and configured to provide configuration data to the estimation module and to provide measurement information to the estimation module for localizing an object;
wherein the estimation module is configured to update a location estimate for the object based on configuration data and measurement information accepted from the sensor subsystem. - View Dependent Claims (31, 32, 33, 34)
-
-
35. A sensor module comprising:
-
a sensor interface for communicating with a measurement sensor;
a communication interface for communication with an estimation system;
wherein the sensor module is configured to receive information related to an expected sensor measurement over the communication interface, receive a measurement signal over the sensor interface, provide measurement information based on the measurement signal over the communication interface. - View Dependent Claims (36, 37)
-
-
38. A method comprising:
-
enumerating a set of sensing elements available to a tracking system that includes an estimation subsystem that estimates a position or orientation of an object; and
providing parameters specific to the set of sensing elements to the tracking system to enable the estimation subsystem to be configured based on the parameters specific to the subset of sensing elements. - View Dependent Claims (39, 40, 41, 42)
-
-
43. A method comprising:
-
computing an estimate of a pose of a target element relative to a sensor element based on an estimate of a pose of a tracked object relative to an environment having affixed thereto either the sensor element or the target element, the computing of the estimate of the pose of the target element relative to the sensor element further based on an estimate of a pose of the affixed element relative to the tracked object and the other element relative to the environment;
computing an estimate of a measurement of the target made by the sensor based on the estimate of the pose of the target relative to the sensor;
making an actual measurement of the target by using the sensor; and
computing a deviation between the actual measurement and the estimated measurement; and
generating a new estimate of the pose of the tracked object based on the deviation. - View Dependent Claims (44, 45, 46)
-
-
47. A method comprising:
-
estimating a first value associated with a pose of a first sensing element relative to a second sensing element, the first sensing element fixed to an environment and the second sensing element fixed to an object being tracked, one of the first and second sensing elements being a sensor and the other being a target;
estimating a second value associated with a pose of the second sensing element relative to the first sensing element;
determining which of the first and second sensing elements is the sensor; and
generating an innovation of a measurement of the target made by the sensor based on the first value when the second sensing element is the sensor. - View Dependent Claims (48, 49)
-
-
50. A method comprising
estimating a calibration parameter of a sensing element that is either a sensor or a target, the sensing element being fixed either to an environment or to an object being tracked; -
determining whether the sensing element is the sensor or the target; and
assigning the calibration parameter as a sensor calibration parameter when the sensing element is a sensor, and generating an innovation of a measurement of a target made by the sensing element based in part on the sensor calibration parameter. - View Dependent Claims (51, 52)
-
-
53. A method of using multiple sensors in a tracking system comprising:
-
providing an estimation module;
coupling one or more sensor modules to the estimation module, each associated with a different set of one or more sensors;
configuring the tracking system, including providing configuration information from each of the sensor modules to the estimation module regarding the characteristics of the sensors associated with the sensor module, and configuring the estimation module using the provided configuration information;
maintaining estimates of tracking parameters in the estimation module, including repeatedly passing data based on the estimates of the tracking parameters from the estimation module to one or more of the sensor modules, receiving from said one or more sensor modules at the estimation module data based on measurements obtained from the associated sensors, and the data passed to the sensor modules, and combining the data received from said one or more sensor modules and the estimates of the tracking parameters in the estimation module to update the tracking parameters. - View Dependent Claims (54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67)
-
-
68. A machine-accessible medium, which when accessed results in a tracking or navigation system that tracks or navigates, respectively, an object, performing operations comprising:
-
enumerating a set of sensing elements available to the tracking or navigation system, the sensing elements available to the tracking or navigation system including at least one of an inside-out sensor and an outside-in sensor, the inside-out sensor being fixed to the object and makes measurements with respect to a target fixed to an environment, the outside-in sensor being fixed to the environment and makes measurements with respect to a target fixed to the object;
configuring an estimation module of the tracking or navigation system based on an enumeration of the set of sensing elements available to the tracking or navigation system so that the estimation module can process measurement information from either inside-out sensors, outside-in sensors, or a combination of inside-out and outside-in sensors depending on the sensors available; and
repeatedly updating an estimated pose of an object based on measurements from the set of sensing elements available to the tracking or navigation system. - View Dependent Claims (69, 70, 71)
-
-
72. A method comprising:
-
receiving sensor configuration information indicating a set of sensing elements available to a tracking or navigation system;
configuring a data processing module of the tracking or navigation system based on the sensor configuration information to selectively perform one of (a) receiving data from at least one inside-out bearing sensor, and updating an estimated pose of an object based on data received from the inside-out bearing sensor, (b) receiving data from at least one outside-in bearing sensor, and updating an estimated pose of an object based on data received from the outside-in bearing sensor, and (c) receiving data from at least one inside-out bearing sensor and at least one outside-in bearing sensor, and updating an estimated pose of an object based on data received from the outside-in bearing sensor and the inside-out bearing sensor. - View Dependent Claims (73)
-
-
74. An apparatus comprising:
an estimation module to estimate a pose of an object based on measurement data from sensing elements, the estimation module configured to enable selective performance of (a) receiving data from at least one inside-out bearing sensor, and updating an estimated pose of an object based on the data received from the inside-out bearing sensor, (b) receiving data from at least one outside-in bearing sensor, and updating an estimated pose of an object based on the data received from the outside-in bearing sensor, and (c) receiving data from at least one inside-out bearing sensor and at least one outside-in bearing sensor, and updating an estimated pose of an object based on the data received from the outside-in bearing sensor and the inside-out bearing sensor.
-
75. An apparatus comprising:
an estimation module to estimate a pose of an object based on measurement data from sensing elements, the estimation module configured to enable selective performance of one of;
(a) updating an estimate of the position or orientation of the object relative to an environment, (b) updating an estimate of the position or orientation, relative to the object, of at least one sensing element fixed to the object, and (c) updating an estimate of the position or orientation, relative to the environment, of at least one sensing element fixed in the environment.
Specification