Patent ID: 8046169

Claim:
A method of estimating a location of a device, comprising: (a) determining for each of a plurality of locations of said device a set of positional data from signals received from a plurality of sources; (b) filtering said positional data, comprising the steps of: (i) detecting a jump between consecutive positional data if the speed between the consecutive positional data exceeds a predetermined threshold; and (ii) correcting the jump with a processor as a function of the angle and the speed between the consecutive positional data, wherein the step of correcting the jump comprises correcting the jump as a function of the following vector relationship: vector T ={s 1 +[( s 2 −s 1 )/( N− 1)]* T }*[cos(θ 1 +((θ 2 −θ 1 )/( N− 1))* T )]* x+{s 1 +[( s 2 −s 1 )/( N− 1)]* T }*[sin(θ 1 +((θ 2 −θ 1 )/( N− 1))* T )]* y ; and (c) comparing said filtered positional data with data from a road network database wherein said comparing is a function of: (i) a distance from at least one point defined by a set of said filtered positional data to a road in said road network database, and (ii) an angle between a line representing a best fit for plural points defined by corresponding plural sets of said filtered positional data to a line defined by a road in said road network database.