Opened 12 years ago

Closed 12 years ago

#1333 closed enhancement (fixed)

Support geocoding of cross streets

Reported by: arencambre Owned by: robe
Priority: medium Milestone: PostGIS 2.0.0
Component: tiger geocoder Version: master
Keywords: Cc: aren@…, woodbri

Description

The current geocode function does not handle cross streets (e.g., hollywood & vine, los angeles, ca). This feature request is to implement something like geocode_intersection(roadway1, roadway2, city, state, zip) that would allow this geocoding.

The final result should probably be directly in the middle of the intersection instead of offset as with geocode.

Change History (9)

comment:1 by robe, 12 years ago

Status: newassigned

comment:2 by woodbri, 12 years ago

Cc: woodbri added

I do not recommend using an '&' character as the intersection indicator from the point of view that the Tiger data does have street names the contain an '&' character like "B & O", "Tom & Ann" or something like that, and others. I already did this analysis when looking at PAGC geocoder and Tiger data. You will also find the word "and" in some street names so that is not good as a separator either. In PAGC I arbitrarily pick the '@' character as it is not used in the Tiger data and it reads as "street a (at) street b" which seems as good as any definition for an intersection.

comment:3 by robe, 12 years ago

Done at r8275 (also documented). I'm keeping this open though because the performance is not as good as the project I cut it from. Granted that was doing a bit of cheating and osme oter things like (500 feet from the intersection of etc) which most of which is not appropriate for a generic solution, but I think the performance can be significantly improved. For the samples I'm doing on my windows box, I'm getting like 3-4 second timings which is worse than the under 1 second I'm getting in my other app.

comment:4 by robe, 12 years ago

Make that r8275 and r8276. I had forgotten to actually include the new function and update the upgrade and install scripts in last commit.

comment:5 by arencambre, 12 years ago

I implemented the latest tiger_2010 extra package and get no results when I use geocode_intersection. I am getting valid results when I use geocode on a nearby address.

I've tried this on a few addresses and am getting consistent results each time.

Don't know if it matters, but it takes a few seconds to run geocode, whereas geocode_intersection returns results in about 30 ms.

I used http://www.letseehere.com/postgis-geocoder-using-tiger-2010-data to set up my geocoding DB. I initially set it up a few weeks ago, before geocode_intersection was in tiger_2010. Today, I ran upgrade_geocode.sql against the latest revision 8354 of http://svn.osgeo.org/postgis/trunk/extras/tiger_geocoder/tiger_2010/.

comment:6 by robe, 12 years ago

Aren,

Which cross streets were you trying to geocode and can you provide the statement you were using. I don't have all the states loaded in my Db, but the ones I have tried have worked.

Also did you check the manual? http://www.postgis.org/documentation/manual-svn/Geocode_Intersection.html

Also Which PostgreSQL version are you running on?

comment:7 by arencambre, 12 years ago

The problem is capitalization of the state field. Filed new bug report at #1366. I think it was you who posted this on the postgis email list?

comment:8 by robe, 12 years ago

correct. Thanks

comment:9 by robe, 12 years ago

Resolution: fixed
Status: assignedclosed

This is done, but I'll put the improve performance as separate ticket which is not guaranteed to happen in 2.0

Note: See TracTickets for help on using tickets.