Opdrachtgever

Bram Duvigneau

Titel

GPS API voor blinden

Opdracht

Ik wil een applicatie laten maken die d.m.v. GPS tijdens het lopen belangrijke informatie geeft aan blinde/slechtziende gebruikers. Denk hierbij aan de zijstraten/kruisingen die je nadert, POIs en eventueel andere belangrijke zaken. Dit soort toepassingen zijn al wel beschikbaar in relatief dure standalone GPS apparaten voor blinden.Ik zat te denken aan een architectuur waar een HTTP service/API op basis van de richting en coördinaten de benodigde informatie terug geeft. Op die manier kunnen er op ten duur relatief makkelijk client applicaties voor Android, iOS etc worden ontwikkeld.

De benodigde data zit in Google Maps, maar is niet via de API te gebruiken. Kijk bijvoorbeeld eens naar de applicatie Intersection Explorer (in Google Play Store). Deze app gebruikt niet-publieke API calls om de informatie te leveren. Vrijwel alle accessibility related apps van Google zijn open source, maar Intersection Explorer dus niet. Navraag bij Google gaf het antwoord dat deze applicatie niet te opensourcen was door het gebruik van "proprietary Google maps techniques". De enig mogelijke databron lijkt tot nu toe Openstreetmap te zijn. Een database die de queries kan afhandelen die nodig zijn lijkt Neo4J te zijn. Dit heb ik echter nog niet goed getest en ik sta dus open voor elke database/datalaag. De Neo4J GIS extensions zijn niet al te best gedocumenteerd en het gebruik hiervan is dus afhankelijk van hoe je het bekijkt lastig of een goede leeroefening om testcases door te spitten.

 Om het project behapbaar te maken zat ik aan de volgende fasering/opbouw te denken:

  • Implementeren webservice
  • Implementeren web client (HTML) die gegeven een locatie de webservice kan raadplegen en dmv hyperlinks de mogelijkheid biedt om de kaart te verkennen. Dit is standalone al zinvol en handig om te testen.
  • Implementeren Android app zoals hierboven beschreven die de GPS positie gebruikt

Bijzondere eis bij de componenten die door eind-gebruikers gebruikt gaan worden is natuurlijk dat het door een blinde te gebruiken moet zijn.Het is de bedoeling dat het eindresultaat onder een nog nader te bepalen open source licentie wordt vrijgegeven.

Technologie

  • Google Maps
  • Neo4J GIS
  • REST API
  • GPS
  • Android

Contact

Bram Duvigneau