Re: Navigation for the blind (algorithm of redirection)

This is one of those points that is so stupid, but easy to overlook and still worth making. Data is important, too.

I actually know something about this subject because I've been writing my own GPS navigation app for a while now. Nothing released, because the last thing I need is some idiot to sue me for getting killed because it tells them that crossing a 4-lane highway is safe, or to ask me a bunch of questions about how to install Docker to run the importer.

But if you're getting directions from a routing service, you're probably getting point-to-point directions. You really need geospatial maps--as in, linestrings for roads so you can use point-to-line calculations to figure out what road someone is on. You also need context, and a *lot* of tuning. As pointed out, GPS readings can actually be pretty accurate. One optimization I've put into my code is for the app to not change what road it reports the person as being on until they're some distance, 50 meters or so, from the previous road. Otherwise, it'd assume I was on a new road as I stepped into the intersection. And technically it was right, it just wasn't particularly useful information to me, nor was it safe having my phone prattle at me every time I set foot on a cross street. smile There's no easy way to figure this stuff out in advance, either. You have to walk, and walk and walk and walk. And ride around in cars and buses. And regularly re-import your data to ensure that you've got the latest, because OSM isn't always as accurate as we might wish.

I'd suggest looking into a few projects. Look at spatialite for map storage. That'll get you an SQLite-based geospatial datastore which gives you all the complex queries you'd need. For import, look into ogr2ogr, which converts from just about any spatial/cartographic format into just about any other. Grab OSM data for your location in pbf format, convert it to a spatialite database, and learn how the queries work by reading through the tutorials and working in the command line tool.

Also, connectivity. About 10 years or so ago, when phones were less powerful and had just a few GB of storage, I built this as an online-only service. You may or may not be surprised at how quickly and easily connections drop, fail, etc. Streaming services work around this in a number of ways, but be prepared to spend lots of time debugging connection dropouts and such. It's really better to suck it up and go the offline route if you can teach yourself the relevant SQL.

I should probably open source this stuff someday, and slap a big fat old "get killed at your own risk" disclaimer on it, along with "if you can't build the importer Docker containers yourself then this isn't for you." So much work, though...

-- 
Audiogames-reflector mailing list
Audiogames-reflector@sabahattin-gucukoglu.com
https://sabahattin-gucukoglu.com/cgi-bin/mailman/listinfo/audiogames-reflector
  • ... AudioGames . net Forum — Developers room : arbuz via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : camlorn via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : Kyleman123 via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : camlorn via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : nolan via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : arbuz via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : vortex1024 via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : camlorn via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : arbuz via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : camlorn via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : defender via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : arbuz via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : camlorn via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : arbuz via Audiogames-reflector
    • ... AudioGames . net Forum — Developers room : nolan via Audiogames-reflector

Reply via email to