Various embodiments described herein relate to positioning, and more particularly, to positioning of pedestrians.
Various schemes have been devised for positioning of pedestrians by using satellite-based navigation systems such as the Global Positioning System (GPS) or the Global Navigation Satellite System (GNSS). In indoor environments, such as buildings or structures in which signals from navigation satellites are blocked or severely degraded due to attenuation or multipath effects, for example, local wireless positioning systems such as Wi-Fi based positioning systems have been utilized for the positioning of pedestrians. In typical Wi-Fi based positioning systems for pedestrian use, inertial sensors may be used to help the navigation system determine the pedestrian's motion.
In the absence of inertial sensors, typical Wi-Fi based pedestrian positioning systems may not be able to obtain direct observation of pedestrian motion, and instead may rely on predictive motion models for estimating the position of the pedestrian user. For example, a typical Wi-Fi based pedestrian positioning system may be implemented with a conventional predictive algorithm, which computes a predicted or estimated position of a pedestrian user at a future instant of time based on the time elapsed and a default motion model. As a consequence of this, when the user is static, the estimated position of the pedestrian user may continue to move, thereby resulting in large errors as the time elapses.
Exemplary embodiments of the invention are directed to apparatus and method for estimating the position of a pedestrian by using a movement sensor, for example, a pedometer, in combination with a wireless positioning system, for example, a Wi-Fi based positioning system, in an environment such as a structure or a building.
In an embodiment, a method of estimating a position of a pedestrian is provided, the method comprising: detecting, by a movement sensor on the pedestrian, whether the pedestrian is moving; propagating particles based on a predictive pedestrian movement model upon detecting that the pedestrian is moving; and updating, by a wireless network, the position of the pedestrian upon failure by the movement sensor to detect that the pedestrian is moving.
In another embodiment, an apparatus configured to perform operations to estimate a position of a pedestrian is provided, the apparatus comprising: a memory; and a processor for executing a set of instructions stored in the memory, the set of instructions comprising instructions for: detecting, by a movement sensor on the pedestrian, whether the pedestrian is moving; propagating particles based on a predictive pedestrian movement model upon detecting that the pedestrian is moving; and updating, by a wireless network, the position of the pedestrian upon failure by the movement sensor to detect that the pedestrian is moving.
In another embodiment, an apparatus configured to estimate a position of a pedestrian is provided, the apparatus comprising: means for detecting, by a movement sensor on the pedestrian, whether the pedestrian is moving; means for propagating particles based on a predictive pedestrian movement model upon detecting that the pedestrian is moving; and means for updating, by a wireless network, the position of the pedestrian upon failure by the movement sensor to detect that the pedestrian is moving.
In another embodiment, machine-readable storage medium encoded with instructions executable to perform operations to estimate a position of a pedestrian is provided, the operations comprising: detecting, by a movement sensor on the pedestrian, whether the pedestrian is moving; propagating particles based on a predictive pedestrian movement model upon detecting that the pedestrian is moving; and updating, by a wireless network, the position of the pedestrian upon failure by the movement sensor to detect that the pedestrian is moving.
Some exemplary embodiments of the invention are described below in the Detailed Description and illustrated by the drawings. The invention, however, is defined by the claims and is not limited by the exemplary embodiments described and illustrated.
The accompanying drawings are presented to aid in the description of embodiments of the invention and are provided solely for illustration of the embodiments and not limitations thereof.
Aspects of the invention are disclosed in the following description and related drawings directed to specific embodiments of the invention. Alternate embodiments may be devised without departing from the scope of the invention. Additionally, well known elements of the invention will not be described in detail or will be omitted so as not to obscure the relevant details of the invention.
The word “exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any embodiment described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments. Likewise, the term “embodiments of the invention” does not require that all embodiments of the invention include the discussed feature, advantage or mode of operation.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of embodiments of the invention. As used herein, the singular forms “a,” “an,” and “the,” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises,” “comprising,” “includes,” or “including,” when used herein, specify the presence of stated features, integers, steps, operations, elements, or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or groups thereof. Moreover, it is understood that the word “or” has the same meaning as the Boolean operator “OR,” that is, it encompasses the possibilities of “either” and “both” and is not limited to “exclusive or” (“XOR”), unless expressly stated otherwise.
In an embodiment, the pedestrian 104 is equipped with a movement sensor 112, such as a pedometer or another device that is capable of sensing movement of the pedestrian 104 by detecting the pedestrian's steps or strides when walking or running. In an embodiment, the pedestrian 104 is also equipped with a mobile device 114 which is capable of sending and receiving wireless signals to and from one or more of the wireless access points 108a, 108b and 108c of the wireless network 106 for positioning of the pedestrian 104. The movement sensor 112 may communicate with the wireless device 114 through wired or wireless connections, and the wireless device 114 may transmit sensor data from the movement sensor 112 to the wireless network 106 through one or more of the wireless access points 108a, 108b and 108c. Alternatively, if the movement sensor 112 is equipped with a wireless transmitter, such as a Wi-Fi transmitter, it may communicate directly with one or more of the wireless access points 108a, 108b and 108c.
In an embodiment, the movement sensor 112, such as a pedometer, is used in combination with a wireless positioning system provided by a wireless network 106, for example, a Wi-Fi assisted positioning system, to improve positioning performance and user experience. The pedometer, however, may not always reliably output pedometer data when the pedestrian 104 is moving. For example, the pedometer may wrongly indicate that the pedestrian 104 is not walking when in fact he is. As another example, a pedestrian 104 may be moving but not walking, and thus the pedometer would not be capable of detecting movement by the pedestrian 104. Examples of such scenarios include a person in a wheelchair, on a moving sidewalk, or on an escalator. Regardless of whether the pedestrian 104 is actually moving, the indoor positioning system may freeze and stop updating the pedestrian's positions until the pedometer recovers its function, that is, until the pedometer resumes outputting step events indicating that the pedestrian is moving.
Furthermore, in the absence of inertial sensors, a typical indoor positioning system such as one that relies on a wireless network 106, for example, a Wi-Fi network, does not have direct observation of the motion of the pedestrian 104. In the absence of direct observation of the pedestrian's motion, a default motion model may be used to predict the movement of the pedestrian 104. One example of such a default motion model is called a particle filter to model the movement of objects in two or three dimensions. In a particle filter model, a “particle,” which represents a statistical sample of a position of the pedestrian at a given time, may transition from an initial position to a subsequent position over a period of time in any one of an indefinite number of directions from the initial position. Possible transitions to particular subsequent positions may be modeled according to a probabilistic model conditioned on the initial position. For example, the likelihood that a particle may have a particular subsequent location, velocity and heading may be conditioned on an initial location, velocity and heading for that particular particle.
In an embodiment, the particle filter may be implemented as a software program in the mobile device 114 carried by the pedestrian 104. Alternatively, the particle filter may be implemented as a software program in the wireless network 106, in the location server 110, or in one or more of the wireless access points 108a, 108b and 108c. If the particle filter is implemented outside of the mobile device 114 carried by the pedestrian 104, the estimated locations, velocities or headings resulting from particle filtering may be transmitted from one or more of the wireless access points 108a, 108b and 108c to the mobile device 114, for example.
In embodiments according to the present invention, pedometer outputs are integrated into particle filters which include fallback modes in case the pedometer temporarily stops functioning or outputting pedometer data properly.
In an embodiment, the particle filter utilizes a particle motion model that is triggered by a pedometer event, that is, when the movement sensor 112 such as a pedometer detects a step movement by the pedestrian 104. Because in reality, a pedometer event is a probabilistic event considering that the pedometer may sometimes fail to output movement data when the pedestrian is moving, there is a threshold probability P, that is, the probability that the pedometer fails to output step events or otherwise erroneously indicates that the pedestrian is stationary even though the pedestrian is in fact moving. The threshold probability P may be predetermined and programmed into the particle filter. For example, the threshold probability P may be set at 0.2. In an embodiment, particle propagation is based on a predictive pedestrian movement model, such as a step length model.
In a further embodiment, the probabilistic distribution of step lengths is a Gaussian distribution, and the predetermined parameters for such a Gaussian distribution include a mean (μ) approximately equal to an average distance of a walking step by the pedestrian. In yet a further embodiment, the predetermined parameters for the Gaussian distribution also include a standard deviation (μ) equal to approximately one-quarter (¼) of the average distance of a walking step. For example, if the average distance of a walking step by a typical adult pedestrian is about 2 feet (60 cm), the mean (μ) would be 2 feet (60 cm) while the standard deviation (σ) would be 0.5 foot (15 cm) if particle propagation is based on a step length model with Gaussian distribution.
In an embodiment, if the pedestrian is moving along the edge of a wall or partition, or along a known hallway, then the probabilistic distribution of particle propagation may be skewed by taking into account the existence of such edge, wall or hallway. On the other hand, if there is no existing information about the direction of the pedestrian's movement, it may be assumed that the pedestrian may make an independent decision to turn in any direction at a given grid point. However, it may also be assumed that the pedestrian is more likely to continue along the current direction if no other information regarding his or her intended future direction is available, thus resulting in a skewed distribution in favor of continuation along the pedestrian's current direction.
In an embodiment, if the pedestrian's movement is confined by predetermined paths in a building or structure, or by walls or partitions, the probabilistic distribution of step lengths along multiple directions may be skewed in favor of confinement by the predetermined paths even if no other information about the pedestrian's movement is available.
The position of the pedestrian may be repeatedly measured by the Wi-Fi positioning system in short intervals of time to determine whether the pedestrian has been static or has moved. For example, the Wi-Fi positioning system may measure the position of the pedestrian for a period of 2 seconds, and if it determines that the pedestrian's position has not been stationary in the last 2 seconds, thereby indicating that the pedestrian has moved, the particle filter may resample the particles based on the measurements of the pedestrian's positions obtained by the Wi-Fi positioning system in the last 2 seconds and update the pedestrian's current position accordingly. If, in the meantime, the movement sensor or pedometer carried by the pedestrian also outputs step events during this time interval, the current position of the pedestrian may be updated by taking into account both the Wi-Fi data from the Wi-Fi positioning system and the pedometer data from the pedometer.
On the other hand, if the movement sensor fails to detect movement by the pedestrian or fails to output data indicating that the pedestrian is moving, only the measurements obtained by the wireless network may be available for determining whether the pedestrian is moving. Thus, the positions of the particles in the particle filter may be resampled and updated to generate an estimated position of the pedestrian based only on the measurements from the wireless network, as illustrated in
new_position=α*old_position+(1−α)*wifi_position (1)
where new_position is the computed new position of the pedestrian, old_position is an old position of the pedestrian, which may be a known starting point or a previously computed position of the pedestrian, wifi_position is an estimated recent position based on Wi-Fi measurements, and α is the weighting factor for the old position. In an embodiment, each particle, which represents a probabilistically sampled position of the pedestrian, may have its position updated by deriving its new position from weighted averaging of its old position and its recently estimated Wi-Fi position, according to equation (1) above. In an embodiment, the new position of the pedestrian is derived from a cluster of particles in their new positions based on weighted averaging of their respective old positions and recently estimated Wi-Fi positions.
In some scenarios, during a period in which the movement sensor or pedometer is not outputting any indication that the pedestrian is moving, repeated resampling and updating of particles to derive the new position of the pedestrian without particle propagation may result in the particle cloud clustering around or collapsing into one or a few particles. In an embodiment, in order to maintain particle diversity during a period in which the movement sensor or pedometer is not outputting an indication that the pedestrian is moving, fresh particles may be introduced, resampled and updated. For example, in each iteration of resampling and updating, a number of fresh particles equal to approximately 20% of existing particles may be introduced in proximity to the last known or estimated position of the pedestrian to maintain particle diversity. Moreover, during a period in which the movement sensor or pedometer is not outputting any indication of movement by the pedestrian, regardless of whether the pedestrian is in fact moving or not, the new position of the pedestrian may be heavily weighted in favor of maintaining the old position. For example, a predetermined weighting factor α of 0.9 may be assigned to equation (1) above, in favor of the old position.
In a typical indoor wireless positioning environment, a plurality of wireless access points such as wireless access points 108a, 108b and 108c as shown in
In an alternate embodiment, the positions of the particles may be resampled based on a weighted average of measurements obtained by multiple access points in the wireless network, if it is known as to which of the access points in the wireless network provides better positioning data than others. For example, the mobile device 114 carried by the pedestrian 104 in
An indication or warning may be sent to the pedestrian if the estimated new position resulting from the resampling and updating of particles based only on positioning data obtained from the wireless network when the movement sensor or pedometer fails to detect movement by the pedestrian is away from the last frozen position of the pedestrian by at least a relatively large predetermined distance, for example, about 20 feet (6 m). In an embodiment, the step of updating the position of the pedestrian further includes the steps of determining whether the movement sensor has resumed outputting movement signals, and indicating to the pedestrian that the movement sensor has recovered functioning upon determining that the movement sensor has resumed outputting movement signals.
In an embodiment, a flag may be set to indicate that the pedometer is not reliable if the estimated new position is away from the last frozen position of the pedestrian by at least the predetermined distance, and further positioning computations would be based only on measurements from the wireless network. In a further embodiment, after the flag is set indicating that the movement sensor or pedometer is unreliable, if the movement sensor or pedometer outputs new step events or signals indicating that the pedestrian is moving, then the flag is reset and the wireless positioning system resumes its mode of position estimation based on outputs from both the wireless network and the movement sensor or pedometer.
Those of skill in the art will appreciate that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof
Further, those of skill in the art will appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the invention.
Furthermore, many embodiments are described in terms of sequences of actions to be performed by, for example, elements of a computing device. It will be recognized that various actions described herein can be performed by specific circuits, such as application specific integrated circuits (ASICs), by program instructions being executed by one or more processors, or by a combination of both. Additionally, these sequences of actions described herein can be considered to be embodied entirely within any form of computer readable storage medium having stored therein a corresponding set of computer instructions that upon execution would cause an associated processor to perform the functionality described herein. Thus, various aspects of the invention may be embodied in a number of different forms, all of which have been contemplated to be within the scope of the claimed subject matter. In addition, for each of the embodiments described herein, the corresponding form of any such embodiments may be described herein as, for example, “logic configured to” perform the described action.
The methods, sequences or algorithms described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM, flash memory, ROM, EPROM, EEPROM, registers, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In an alternative, the storage medium may be integral to the processor.
Accordingly, an embodiment of the invention can include a computer readable medium embodying a method of estimating a position of a pedestrian. Accordingly, the invention is not limited to illustrated examples and any means for performing the functionality described herein are included in embodiments of the invention.
While the foregoing disclosure describes illustrative embodiments of the invention, it should be noted that various changes and modifications could be made herein without departing from the scope of the invention as defined by the appended claims. The functions, steps or actions in the method and apparatus claims in accordance with the embodiments of the invention described herein need not be performed in any particular order unless explicitly stated otherwise. Furthermore, although elements of the invention may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated.