Abstract:
Examples herein include methods and systems for signal diffusion modeling for a discretized map of signal. An example method includes receiving data related to RSSI for a wireless AP for a plurality of locations of an area, associating the data to a diagram of the area based on the plurality of locations of the area, determining a given partition of the diagram in which a magnitude of a given RSSI associated with the given partition is greater than or equal to a highest magnitude of a given RSSI associated with any partitions of the plurality of partitions, assigning a location of the wireless AP to be within the given partition, and applying a constraint such that a magnitude of a given RSSI associated with other respective partitions is less than or equal to a highest magnitude of a given RSSI associated with neighboring partitions of the other respective partitions.
Abstract:
Within examples, methods and systems for applying weights to information from correlated measurements for likelihood formulations based on time or position density are described. An example method includes receiving data from sensors of a device for an estimation of movement of the device, determining measurements from the data that are collected within a threshold time of each other or collected from locations within a threshold distance of each other, determining a magnitude of a weight to apply to the determined measurements based on a number of measurements in the determined measurements, and applying, by a processor, the weight to the determined measurements to reduce influence of the determined measurements on the estimation of movement of the device.
Abstract:
A system includes one or more processors, and data storage configured to store instructions that, when executed by the one or more processors, cause the system to perform functions. In this example, the functions include receiving sensor data that is collected by one or more sensors of a device over one or more locations and over a time period. Further, in the present example, the functions also include determining location estimates of the device by performing filtering of the sensor data to determine offsets for a least one sensor providing sensor data. The filtering is an iterative process of filtering control input data to determine the sensor bias based on data from a second sensor of the at least two sensors and adjusting the set of sensor data based on the determined bias.
Abstract:
Examples include systems and methods for decomposition of error components between angular, forward, and sideways errors in estimated positions of a computing device. One method includes determining an estimation of a current position of the computing device based on a previous position of the computing device, an estimated speed over an elapsed time, and a direction of travel of the computing device, determining a forward, sideways, and orientation change error component of the estimation of the current position of the computing device, determining a weight to apply to the forward, sideways, and orientation change error components based on average observed movement of the computing device, and using the weighted forward, sideways, and orientation change error components as constraints for determination of an updated estimation of the current position of the computing device.
Abstract:
Examples include systems and methods for adjusting interrupt timestamps associated with sensor measurement data. One method includes receiving from a sensor an interrupt signal, storing an interrupt timestamp corresponding to the interrupt signal, and determining expected sampling rates associated with the sensor. The method also includes determining a first minimal latency timestamp based on a comparison of one or more previously stored interrupt timestamps and the expected sampling rates, and determining a second minimal latency timestamp based on the interrupt timestamp, one or more previously stored interrupt timestamps, and the expected sampling rates. The method also includes determining an estimated sampling rate of the sensor based on the first and second minimal latency timestamps, and determining an adjusted interrupt timestamp corresponding to the interrupt signal based on the estimated sampling rate and the interrupt timestamp.
Abstract:
In one example, a method includes determining, by a first motion module of a computing device and based on first motion data measured by a first motion sensor at a first time, that the mobile computing device has moved, wherein a display operatively coupled to the computing device is deactivated at the first time; responsive to determining that the computing device has moved, activating a second motion module; determining, by the second motion module, second motion data measured by a second motion sensor, wherein determining the second motion data uses a greater quantity of power than determining the first motion data; determining a statistic of a group of statistics based on the second motion data; and responsive to determining that at least one of the group of statistics satisfies a threshold, activating the display.
Abstract:
The present disclosure describes methods, systems, and apparatuses for determining the likelihood that two wireless scans of a mobile computing device were performed in the same location. The likelihood is determined by scanning for wireless networks with a computing device. The scanning includes a receiving a plurality of network attributes for each wireless networks within the range of the mobile computing device. Further, the likelihood is determined by comparing the plurality of network attributes from the scanning with a reference set of network attributes. The comparing of network attributes is used to determine an attribute comparison. Finally, the likelihood between a position associated with the reference set of network attributes and the computing device, based on the attribute comparison, determines a position associated with the network.
Abstract:
Methods and systems for acquiring and batching sensor data using a mobile device are described. In one example, a system in a mobile device is provided. The system includes one or more sensors, a memory, a sensor processor, and a main application processor. The sensor processor is configured to determine sensor data using the one or more sensors on an interval basis and store the sensor data into one or more first-in, first-out (FIFO) queues. Additionally, the sensor processor is configured to replace at least a portion of the stored sensor data if a main application processor of the mobile device does not request the stored sensor data within a certain amount of time. The main application processor is configured to receive data indicating a request for sensor data for a recent time period and, in response, to retrieve the sensor data from the one or more FIFO queues.
Abstract:
Methods and systems for enabling a mobile device to batch sensor data based on events associated with the mobile device and without utilizing one or more main application processors are disclosed. In one example, a system is provided. The system may include one or more sensors, a memory, one or more main application processors, and one or more sensor processors. The one or more main application processors may be configured to, based on an event associated with the mobile device, send data indicating a request for sensor data to the one or more sensor processors. In response, the one or more sensor processors may be configured to determine sensor data using the one or more sensors while the one or more main application processors of the mobile device is in the inactive state. Once the sensor data has been determined, the one or more sensor processors may store the sensor data into one or more first in, first out (FIFO) queues in the memory.
Abstract:
Traces are collected by multiple portable devices moving with an area that includes an indoor region, with each of the traces including measurements of wireless signals at different times, including measurements of wireless signals from signal sources disposed within the area. A motion map for the geographic area is constructed by determining, for each of the cells that make the motion map, respective probabilities of moving in various directions relative to each cell. Location estimates for the portable devices and the signal sources are generated using graph-based SLAM optimization of the location estimates. The graph-based SLAM optimization includes determining to which of the cells of the motion map the location estimate corresponds and applying the measurements of wireless signals sources and the set of probabilities of the cells as a first constraint and a second constraint, respectively, in the graph-based SLAM optimization.