System and method for locating, tracking, and/or monitoring the status of personnel and/or assets both indoors and outdoors
First Claim
1. A computer-implemented method of reducing errors in inertial tracking data, the method being implemented by a computer that includes a physical processor, the method comprising:
- obtaining, as input, tracking data for a trackee obtained from inertial sensors, wherein the tracking data includes a collection of tracking points forming a tracking path of the trackee;
dividing the tracking path into segments, each segment having an associated segment line;
generating an input pattern comprising one or more segment lines;
comparing the input pattern to one or more stored base patterns; and
correcting the input pattern by correlating the input pattern to a given base pattern responsive to a determination that the input pattern matches the given base pattern.
0 Assignments
0 Petitions
Accused Products
Abstract
A system and method for locating, tracking, and/or monitoring the status of personnel and/or assets (collectively “trackees”), both indoors and outdoors, is provided. Tracking data obtained from any number of sources utilizing any number of tracking methods may be provided as input to a mapping application. The mapping application generates position estimates for trackees using a suite of mapping tools to make corrections to the tracking data. The mapping application further uses information from building data, when available, to enhance position estimates. Indoor tracking methods including sensor fusion methods, map matching methods, and map building methods may be implemented compute a more accurate tracking estimate for trackees. Outdoor tracking methods may be implemented to enhance outdoor tracking data by combining tracking estimates such as inertial tracks with magnetic and/or compass data if and when available, and with GPS, if and when available.
140 Citations
54 Claims
-
1. A computer-implemented method of reducing errors in inertial tracking data, the method being implemented by a computer that includes a physical processor, the method comprising:
-
obtaining, as input, tracking data for a trackee obtained from inertial sensors, wherein the tracking data includes a collection of tracking points forming a tracking path of the trackee; dividing the tracking path into segments, each segment having an associated segment line; generating an input pattern comprising one or more segment lines; comparing the input pattern to one or more stored base patterns; and correcting the input pattern by correlating the input pattern to a given base pattern responsive to a determination that the input pattern matches the given base pattern. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A system for reducing errors in inertial tracking data, the system comprising:
a computer processor configured to; obtain, as input, tracking data for a trackee obtained from inertial sensors, wherein the tracking data includes a collection of tracking points forming a tracking path of the trackee; divide the tracking path into segments, each segment having an associated segment line; generate an input pattern comprising one or more segment lines; compare the input pattern to one or more stored base patterns; and correct the input pattern by correlating the input pattern to a given base pattern responsive to a determination that the input pattern matches the given base pattern. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
27. A computer readable storage medium comprising executable code for reducing errors in inertial tracking data, the computer executable code, when executed by a processor, causing the processor to:
-
obtain, as input, tracking data for a trackee obtained from inertial sensors, wherein the tracking data includes a collection of tracking points forming a tracking path of the trackee; divide the tracking path into segments, each segment having an associated segment line; generate an input pattern comprising one or more segment lines; compare the input pattern to one or more stored base patterns; and correct the input pattern by correlating the input pattern to a given base pattern responsive to a determination that the input pattern matches the given base pattern.
-
-
28. A computer-implemented method of generating a path estimate of a trackee at a location, the method being implemented by a computer that includes a physical processor, the method comprising:
-
obtaining, as input, inertial tracking data for the trackee obtained from inertial sensors, wherein the inertial tracking data includes a collection of inertial tracking points forming an inertial tracking path of the trackee, and wherein each inertial tracking point includes at least two-dimensional location coordinates; obtaining, as input, Global Positioning System (GPS) tracking data for the trackee that is simultaneously collected and time-synchronized with the inertial tracking data, wherein the GPS tracking data includes a collection of GPS data points forming a GPS tracking path of the trackee; dividing the inertial tracking path into inertial segments of inertial tracking points; generating, for each inertial segment, a corresponding GPS segment of GPS data points collected during the same time interval as the inertial tracking points forming the inertial segment; selecting, from among a sequence of inertial segments and GPS segments, a series of GPS/inertial segment pairs; determining whether an inertial tracking path shape matches a GPS tracking path shape over a predetermined number of consecutive GPS/inertial segment pairs; and correcting, for at least one of the predetermined number of consecutive GPS/inertial segment pairs, an inertial segment of the GPS/inertial segment pair to the corresponding GPS segment of the GPS/inertial segment pair to generate a fused GPS/inertial path estimate responsive to a determination that the inertial tracking path shape matches the GPS tracking path shape over a predetermined number of consecutive GPS/inertial segment pairs. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
-
-
41. A system for generating a path estimate of a trackee at a location, the system comprising:
a computer processor configured to; obtain, as input, inertial tracking data for the trackee obtained from inertial sensors, wherein the inertial tracking data includes a collection of inertial tracking points forming an inertial tracking path of the trackee, and wherein each inertial tracking point includes at least two-dimensional location coordinates; obtain, as input, Global Positioning System (GPS) tracking data for the trackee that is simultaneously collected and time-synchronized with the inertial tracking data, wherein the GPS tracking data includes a collection of GPS data points forming a GPS tracking path of the trackee; divide the inertial tracking path into inertial segments of inertial tracking points; generate, for each inertial segment, a corresponding GPS segment of GPS data points collected during the same time interval as the inertial tracking points forming the inertial segment; select, from among a sequence of inertial segments and GPS segments, a series of GPS/inertial segment pairs; determine whether an inertial tracking path shape matches a GPS tracking path shape over a predetermined number of consecutive GPS/inertial segment pairs; and correct, for at least one of the predetermined number of consecutive GPS/inertial segment pairs, an inertial segment of the GPS/inertial segment pair to the corresponding GPS segment of the GPS/inertial segment pair to generate a fused GPS/inertial path estimate responsive to a determination that the inertial tracking path shape matches the GPS tracking path shape over a predetermined number of consecutive GPS/inertial segment pairs. - View Dependent Claims (42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53)
-
54. A Non-Transitory computer readable storage medium comprising executable code for generating a path estimate of a trackee at a location, the computer executable code, when executed by a processor, causing the processor to:
-
obtain, as input, inertial tracking data for the trackee obtained from inertial sensors, wherein the inertial tracking data includes a collection of inertial tracking points forming an inertial tracking path of the trackee, and wherein each inertial tracking point includes at least two-dimensional location coordinates; obtain, as input, Global Positioning System (GPS) tracking data for the trackee that is simultaneously collected and time-synchronized with the inertial tracking data, wherein the GPS tracking data includes a collection of GPS data points forming a GPS tracking path of the trackee; divide the inertial tracking path into inertial segments of inertial tracking points; generate, for each inertial segment, a corresponding GPS segment of GPS data points collected during the same time interval as the inertial tracking points forming the inertial segment; select, from among a sequence of inertial segments and GPS segments, a series of GPS/inertial segment pairs; determine whether an inertial tracking path shape matches a GPS tracking path shape over a predetermined number of consecutive GPS/inertial segment pairs; and correct, for at least one of the predetermined number of consecutive GPS/inertial segment pairs, an inertial segment of the GPS/inertial segment pair to the corresponding GPS segment of the GPS/inertial segment pair to generate a fused GPS/inertial path estimate responsive to a determination that the inertial tracking path shape matches the GPS tracking path shape over a predetermined number of consecutive GPS/inertial segment pairs.
-
Specification