2010/X Marks the Spot: Applying OpenStreetMap to the High Seas
The United States has a treasure trove of nautical charts in digital form, including plots of shipwrecks, navigation buoys, coastal and river depths, and other fine booty. OpenStreetMap is an open source, open format collaborative project for building a free map of the world. Join this session to find out more of the marine secrets of the National Oceanographic and Atmospheric Administration (NOAA), OpenSeaMap’s plans to extend OSM to the high seas, and splicing the two (and your mainbrace) together. We’ll use the Geospatial Data Abstraction Library (GDAL), OGR, Python, and the OSM API.
Return to this session's details
Contributed notesPresenters live on houseboat in Redwood City, which they describe as a "den of villainy and piracy" (on account of the stolen iPhone). Got interested in nautical stuff.
Started mapping kayak trips, both w/Android/GPS/GMaps and on paper. Why homemade maps? So they could give names to unnamed places ("boring inlet," "Mutagen Corp. Building"). GMaps labels their dock incorrectly, making it difficult to find. So they switched to OpenStreetMap (which is community-editable) and fixed the data there.
OSM arose because many countries restrict their state-gathered geographic data (so they can sell it and recoup costs). Presenter remembers thinking, "That'd be like creating an encyclopedia from scratch. That'll never work!" :-) Recently, the UK Ordnance Survey saw the usefulness of OSM and agreed to open up some data.
OSM has an API, which happens to play well with Python (see
ogr2osm.py. Like the early days of Perl, most of the things people are building are glue. The downside is that nobody likes to show their glue code, where demons lurk.
Example use of API: find out who's posting data, (and, by extension, who's obsessed with fire hydrants or mailboxes or whatever).
Presenter got interested in buoys, and started learning about the color / notation codes (e.g., color indicates upstream vs. downstream). Downloaded free charts for their area as S-57 ENC object catalogs. Used
ogrinfo to parse layers from ENC. Terse field names are "gloriously seventies."
Layers include points, lines, polygons. Points are easiest, so presenter started there. Found beacons they recognized in the real world. "Now I'm a... data tourist."
Interesting comparison between UN's slow, top-down, all-encompassing hydrographic standards vs. OSM's ground-up, consensus-based, social-engineering-required (page where people vote on whether voting is a good idea) approach.
Presenters' goal is to remove the emptiness from our maps of the sea. Because "empty" means "let's exploit it."