Wednesday, May 02, 2007

Geocoding with Google Maps and the mysterious "bewar"

As part of my current line of research on semantic photo annotation suggestion (i.e. trying to make it easy to do semantic classifications on Risukun.com), I started to revisit some prototype code I had kicking around for doing geo-annotations of photos via a Google Maps mashup. The API makes it very easy to throw an interactive map on your own page and write some javascript/ajax to make it interactive. In my case, it just simply allows you to specify the latitude & longitude of either an individual photo or a location concept (setting the location of an album will result in the location concept being inherited by all photos in the album) by clicking on the map. If the visitor is not the content owner, then the map simply shows the location if available. The zoom level is also saved so that at reasonable idea of the location's size can be inferred. The Google Maps API also provides a function to do a location search by address, place name, etc.

Since I have way too many photos to go back and do obsessive geo-annotation, I decided to compromise by just specifying the geo-coordinates for each location concept in my "Places" hierarchy. This got me down to only 162 places to geo-tag by hand, with about 7,600 photos associated with those locations. Clearly, I need to go back and do some more location tagging, but that'll be enough to do some initial experiments.

Now, getting back to Google Maps. The first thing I noticed was that the Japanese support had gotten much better since I had played with my prototype code last fall, from the Japanese place names being available to the support for Japanese cities and addresses using kanji. Very nice. :) However, I also quickly discovered that many searches for common landmarks, areas, etc. that work well on maps.google.com, like "Chinatown, San Francisco", "Coit Tower, San Francisco", etc., just fail on the Google Maps API version (I think I'm using V2 from the URL). This has resulting in my doing Google searches in a separate window (with regular Google providing a map most of the time above the web page results), and then requiring me to find the location by hand using the map on my own site. In addition, these locations often show up with labels on the current release version of Google Maps, but are nowhere to be found using the API. Even which streets are highlighted as being 'major streets' is different between the two. I guess they really want you to pay for the 'business' version of their maps service.

One final thing for thought that I wonder if anyway else as noticed. For kicks, I edited a Google Maps URL to go to latitude=0, longitude=0. In case you didn't know/remember, this is just a section of ocean off the western coast of Africa. However, if you zoom in anywhere between the 3rd & 7th closest zoom levels, there is a strange text label that appears: "bewar". Zoom in all the way and you get nothing but blue, zoom out enough and it disappears. Not the full word "beware" and not capitalized like a place name... just kind of... strange. Google searching only seems to find a city in India "Bewar" and numerous misspellings of "beware". Is this a bug? A strange easter egg? I wasn't able to find much about this. Perhaps some else knows about this?

No comments: