Le géocodage constitue une transformation des données numériques en données spatiales. Cette transformation n’est possible que par l’intermédiaire d’adresses. Aujourd’hui, de plus en plus de service fonctionne grâce aux bases de données adresses. Google fournit tous les outils pour géocoder ses bases de données gratuitement.
Service Google
Google Maps offre un service de géocodage gratuit. Avec simplement un compte Gmail, vous pouvez géocoder toutes les adresses que vous souhaitez. Vous pouvez récupérer les adresses géocodées au format kml pour les intégrer ensuite sous un SIG. L’inconvénient avec Google maps est qu’il faut entrer ses adresses une par une.
Google fournit le code nécessaire à la création de son propre outil de géocodage. Il est possible de géocoder ses adresses, de définir les informations contenues dans l’infobulle… Attention, le géocodage fournit par Google n’est pas infaillible. Lorsque Google n’arrive pas à trouver une adresse, celui place le point au centre de la commune au mieux, n’importe où au pire. Il y a un certain formalisme à respecter lorsque l’on entre une adresse. Il faut indiquer au minimum:
- le numéro de la voie et son nom ;
- la commune ;
- le pays.
Voici un exemple de service de géocodage que j’ai créé à partir du code fourni par Google : lien.
API Google
Google donne également une API pour géocoder ses adresses. Cette fois ci, la méthode pour géocoder est différente : Il faut entrer les paramètres de l’adresse dans la barre url de votre navigateur web :
http://maps.googleapis.com/maps/api/geocode/output?parameters
A cette url, il faut ajouter 2 paramètres : le format de réponse et l’adresse. Il existe 2 formats de réponse :
- le json : http://maps.googleapis.com/maps/api/geocode/json?/parameters
- le xml: http://maps.googleapis.com/maps/api/geocode/xml?/parameters
Ensuite, il faut ajouter l’adresse à géocoder. Dans le cas présent, nous voulons géocoder l’adresse suivante : 76 avenue Saint-lambert à Nice, en France au format json :
http://maps.googleapis.com/maps/api/geocode/json?address=76+avenue+saint-lambert,+nice,+france&sensor=false
Voici ce que ça donne au format xml :
http://maps.googleapis.com/maps/api/geocode/xml?address=76+avenue+saint-lambert,+nice,+france&sensor=false
Le dernier paramètre correspond au sensor. Il peut-être égale à true ou à false. Je ne sais pas quel est la différence entre ces deux paramètres.
Geocodage sous Qgis
Qgis fournit deux outils pour géocoder des adresses : l’extension geocode et l’extension mmqgis. L’outil geocode permet de geocoder une adresse à la fois. Cet outil génère un fichier shape des adresses géocodées. Il n’est possible de géocoder qu’une adresse à la fois.
Ensuite, il y a mmqgis, le meilleur outil de géocodage d’adresses. Il est capable de géocoder un très grand nombre d’adresses à la fois. l’outil géocode les adresses contenues dans un fichier csv. Les adresses géocodées sont exportées dans un fichier shape. Il peut géocoder plus de 1500 adresses par jour. Qgis se base sur l’API google pour géocoder les adresses.
Les géocodeurs gratuits du web
Il existe des outils de géocodage gratuits sur internet, je vous en présente 2 : batch geocoder et GPS visualizer. Ils permettent de géocoder un grand nombre d’adresses. Ils fournissent les adresses avec leurs coordonnées géographiques. Ils ne reste plus qu’à les projeter grâce à un SIG. Pour les deux géocodeurs, il faut importer un fichier csv avec les adresses à l’intérieur.
Conclusion et mise en garde
Google est le principal service de géocodage sur internet. Les données sont géocodées en WGS84. Mais attention, le géocodage de Google n’est pas infaillible, il faut se référer aux réponses de Google lors du géocodage ( il y a plusieurs messages qui définissent la qualité du géocodage).
Enfin, pour plus d’informations, il faut se référer à la documentation donnée par Google avec le code inhérent au géocodage à cette adresse et cette adresse.