[OpenLayers-Users] Geocoding
David Lozzi
dlozzi at delphi-ts.com
Wed Oct 14 19:09:22 EDT 2009
Hi Paul,
WOW. Thanks for the insight, I've been wondering... What geocode service do you use?
David Lozzi
Product Development Manager
Delphi Technology Solutions, Inc.
(978) 988-8007 x204 - www.delphi-ts.com
Blog - LinkedIn - Twitter
-----Original Message-----
From: Paul Spencer [mailto:pagameba at gmail.com]
Sent: Wednesday, October 14, 2009 5:54 PM
To: David Lozzi
Cc: users at openlayers.org
Subject: Re: [OpenLayers-Users] Geocoding
This isn't a direct answer, rather I'm answering why services may be
different and providing some guidance on geocoding based on my
experience. Don't read on if you don't care about that.
The short answer is that differences in location returned by different
geocoders probably depends more on the data source being used by the
geocoder than the geocoder itself.
Address parsing aside, geocoding is actually a fairly straight forward
process that probably uses one of two techniques:
technique 1: linear interpolation
* find the record that matches the requested street (a lot goes into
identifying the correct street, let's leave that out)
* find a segment of the street with a start and end address that
contain the requested street number
* find a point on the segment equivalent to where the requested number
is between the start and end of the line
What is typically different here between geocoders (assuming they find
the same street) is the quality of the street number data (is it
there, is it correct, is it the right way around, is it associated
with the correct side of the street for odd/even etc) and the quality
of the geographic line segment that represents the street.
Some services might also use some heuristic data for adjusting the
interpolated location from being straight linear interpolation to
something (that may be) more accurate.
technique 2: exact location
if you have tax lot/parcel/cadastral data then you can find an exact
match on a street address to a parcel associated with that address and
return the centroid of the parcel (perhaps snapped to the appropriate
street segment).
The other component of a typical geocoder is its ability to parse an
address and match it to a street segment. This can involve a lot of
complicated steps and has to accommodate a seemingly infinite number
of ways that addresses can be written, missing address components, mis-
spellings of all parts, incorrect information such as incorrect zip
code or wrong street type, and more.
You need to evaluate geocoders on a couple of parameters:
* what is the source data they are using and how 'accurate' is it?
* is it accurate enough for you vs what you are paying for it? (a
commercial data set might be arguably more accurate than a free one
for instance)
* given how your addresses are expected to supplied, how well does
each service parse the address, accommodate missing, incorrect or mis-
spelled data and ultimately map that to the right address
(disregarding actual accuracy of the address)
Typically, if you are mapping results of geocoding, you will also want
to ensure the geocoder is using the same source data as for generating
the maps to minimize the visual impact of differences in the quality
of the actual street vector data. In the end, this is usually more
important than the physical accuracy for many use cases.
Cheers
Paul
On 2009-10-14, at 5:21 PM, David Lozzi wrote:
> Hello,
>
> What service are you using to geocode your addresses? I've looked at
> a couple and I've been getting different results per set.
>
> Thanks,
>
> David Lozzi
> Product Development Manager
> Delphi Technology Solutions, Inc.
> (978) 988-8007 x204 - www.delphi-ts.com
>
> Blog - LinkedIn - Twitter
>
> _______________________________________________
> Users mailing list
> Users at openlayers.org
> http://openlayers.org/mailman/listinfo/users
More information about the Users
mailing list