IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IGN API Géoportail Discussion :

Beta 2 : résultat faux


Sujet :

IGN API Géoportail

  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2009
    Messages
    872
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2009
    Messages : 872
    Points : 371
    Points
    371
    Par défaut Beta 2 : résultat faux
    Salut à tous
    En testant mon webservice de géoréférencement inverse (voir le json plus bas), j'arrive sur un cas intéressant, voire faux !
    La recherche s'effectue dans un carré de 1x1km autour des coordonnées 1.067589/45.937252.
    Sur la carte ci-dessous, vous trouverez :
    - Une aiguille verte correspondant au point de recherche ; vous noterez la proximité avec la limite communale entre Veyrac (là où est situé le point de recherche) et Oradour-sur-Glane.
    - Une aiguille orange correspondant à la seule réponse (exceptée la commune) du webservice beta 2
    - Un rond orange figurant un lieu-dit habité sur la commune de Veyrac.

    Question : pourquoi des POI de la commune de Veyrac plus proches du point de recherche ne sont-il pas retournés, "La boine" ou "le moulin du puy imbart" par exemple ?
    Remarque : mon webservice "old school" retourne des résultats correctes (voir plus bas le json)


    Nom : Capture d’écran 2022-12-29 112621.jpg
Affichages : 98
Taille : 331,2 Ko

    Voici la requête beta 2
    https://wxs.ign.fr/calcul/geoportail...dinates%22:%5B[[1.0739828331,45.9416985334],[1.0611944418,45.9416980292],[1.0611961922,45.9328051101],[1.0739825328,45.9328056143],[1.0739828331,45.9416985334]]]}&lon=1.067589&lat=1.067589&limit=20&citycode=87202
    Le json de mon webservice beta 2
    {
    "GeoReferencement": {
    "Lieudit_commune_point": {
    "NotFound": "0",
    "Origine": "IGN",
    "C_Pays": "FR",
    "C_Departement": "87",
    "C_Commune": "Veyrac",
    "C_INSEE": "202",
    "C_ID": "COMMUNE_0000000009751330",
    "C_Nature": "administratif commune",
    "C_LAT": 45.897463042,
    "C_LONG": 1.106081112,
    "C_TERRITOIRE": "FXX",
    "C_distance": 43.32146608,
    "L_Nature": "cours d'eau",
    "L_Municipality": "la Glane",
    "L_StreetNumber": null,
    "L_Street": null,
    "L_ID": "COURNOMM0000000010549464",
    "L_LAT": 45.93437076,
    "L_LONG": 1.087624548,
    "L_ExtendedGeocodeMatchCode": "poi",
    "L_distance": 592.44147978
    },
    "Lieudit_plus_proche": {
    "NotFound": "0",
    "Origine": "IGN",
    "C_Pays": "FR",
    "C_Departement": "87",
    "C_Commune": "Oradour-sur-Glane",
    "C_INSEE": "110",
    "C_ID": "COMMUNE_0000000009751331",
    "C_Nature": "administratif commune",
    "C_LAT": 45.931237011,
    "C_LONG": 1.032360847,
    "C_TERRITOIRE": "FXX",
    "C_distance": 38.40646376,
    "L_Nature": "construction lin\u00e9aire,pont",
    "L_Municipality": "Construction lin\u00e9aire",
    "L_StreetNumber": null,
    "L_Street": null,
    "L_ID": "CONSLINE0000000010559698",
    "L_LAT": 45.937381904,
    "L_LONG": 1.064013789,
    "L_ExtendedGeocodeMatchCode": "poi",
    "L_distance": 273.05907235
    },
    "Adresse_plus_proche": {
    "NotFound": "0",
    "Origine": "IGN",
    "C_Pays": "FR",
    "C_Departement": "87",
    "C_Commune": "Oradour-sur-Glane",
    "C_INSEE": "110",
    "C_LAT": 45.937482,
    "C_LONG": 1.064432,
    "C_TERRITOIRE": "FXX",
    "L_Nature": "Adresse",
    "L_Municipality": null,
    "L_StreetNumber": "75",
    "L_Street": "Route de Peyrilhac",
    "L_LAT": 45.937482,
    "L_LONG": 1.064432,
    "L_ExtendedGeocodeMatchCode": "ban",
    "L_distance": 246.15850775
    },
    "Lieudit_wnat_plus_proche": {
    "NotFound": "0",
    "Origine": "WNAT",
    "unik_commune": "121961",
    "unik_pays": "78",
    "unik_territoire": "6",
    "C_Pays": "FR",
    "territoire": "FXX",
    "C_Departement": "87",
    "C_INSEE": "202",
    "C_Commune": "VEYRAC",
    "L_LONG": "1.074330",
    "L_LAT": "45.933517",
    "L_Municipality": "le moulin du puy imbart",
    "L_Distance": "856.9326631755089",
    "L_Point": "POINT(45.933517 1.07433)"
    }
    }
    }
    Le json "old school".
    {
    "GeoReferencement": {
    "Lieudit_clic": {
    "Origine": "IGN",
    "C_Pays": "FR",
    "C_Departement": "87",
    "C_Commune": "Veyrac",
    "C_INSEE": "202",
    "C_Nature": "Commune",
    "C_LAT": "45.894403",
    "C_LONG": "1.105939",
    "C_TERRITOIRE": "FXX",
    "C_ExtendedGeocodeMatchCode": "City",
    "C_distance": "5612.75",
    "L_Nature": "Lieu-dit habit\u00e9",
    "L_Municipality": "le moulin du puy imbart",
    "L_StreetNumber": null,
    "L_Street": null,
    "L_LAT": "45.933517",
    "L_LONG": "1.074330",
    "L_ExtendedGeocodeMatchCode": "Toponym",
    "L_distance": "667.57"
    },
    "Lieudit_plus_proche": {
    "Origine": "IGN",
    "C_Pays": "FR",
    "C_Departement": "87",
    "C_Commune": "Oradour-sur-Glane",
    "C_INSEE": "110",
    "C_Nature": "Commune",
    "C_LAT": "45.931072",
    "C_LONG": "1.032735",
    "C_TERRITOIRE": "FXX",
    "C_ExtendedGeocodeMatchCode": "City",
    "C_distance": "2781.63",
    "L_Nature": "Lieu-dit non habit\u00e9",
    "L_Municipality": "le vilard",
    "L_StreetNumber": null,
    "L_Street": null,
    "L_LAT": "45.940093",
    "L_LONG": "1.063693",
    "L_ExtendedGeocodeMatchCode": "Toponym",
    "L_distance": "436.99"
    },
    "Adresse_plus_proche": {
    "Origine": "IGN",
    "C_Pays": "FR",
    "C_Departement": "87",
    "C_Commune": "Oradour-sur-Glane",
    "C_INSEE": "110",
    "C_LAT": "45.931072",
    "C_LONG": "1.032735",
    "C_TERRITOIRE": "FXX",
    "L_Nature": "Adresse",
    "L_Municipality": null,
    "L_StreetNumber": "56",
    "L_Street": "rte de peyrilhac",
    "L_LAT": "45.937082",
    "L_LONG": "1.062913",
    "L_ExtendedGeocodeMatchCode": "Street number",
    "L_distance": "363.09"
    }
    }
    }

  2. #2
    Membre actif
    Homme Profil pro
    Architecte progiciel et développeur informatique
    Inscrit en
    Février 2011
    Messages
    232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte progiciel et développeur informatique

    Informations forums :
    Inscription : Février 2011
    Messages : 232
    Points : 293
    Points
    293
    Par défaut
    Hello Pascal,

    Alors, juste pour t'aider un peu peut-être, j'ai vu que tu mettais le filtre &citycode, et à mon avis pour des résultats pertinents, il le faut pas.
    Tu avais également une erreur sur &lat qui a la même valeur que &lon. Je sais pas si ça à une grosse incidence, mais pour le calcul des distances, ça va poser problème, et comme tu as pu remarqué, c'est effectivement trié maintenant.

    Nouvelle requête corrigée par ces 2 points :
    https://wxs.ign.fr/calcul/geoportail/geocodage/rest/0.1/reverse?index=poi&searchgeom={"type":"Polygon","coordinates":[[[1.0739828331,45.9416985334],[1.0611944418,45.9416980292],[1.0611961922,45.9328051101],[1.0739825328,45.9328056143],[1.0739828331,45.9416985334]]]}&lon=1.067589&lat=45.93712237458308&limit=20

    Maintenant, tu t'étonnes de ne pas voir 'le moulin du puy imbart, 87520 Veyrac', mais en fait, il n'est pas dans ta zone de recherche.

    Aperçu de ta zone et le moulin : https://geojson.io/#data=data:application/json,{"type":"FeatureCollection","features":[{"type":"Feature","properties":{},"geometry":{"type":"Polygon","coordinates":[[[1.0739828331,45.9416985334],[1.0611944418,45.9416980292],[1.0611961922,45.9328051101],[1.0739825328,45.9328056143],[1.0739828331,45.9416985334]]]}},{"type":"Feature","properties":{},"geometry":{"coordinates":[1.0676372613689011,45.93712237458308],"type":"Point"}},{"type":"Feature","properties":{"marker-color":"#e02424","marker-size":"medium"},"geometry":{"coordinates":[1.074373,45.933547],"type":"Point"}}]}

    Si on décale ta zone de recherche vers la droite, là, cette fois, le moulin ressort.

    Requête avec la zone décalé : https://wxs.ign.fr/calcul/geoportail/geocodage/rest/0.1/reverse?index=poi&searchgeom={"type":"Polygon","coordinates":[[[1.0757985312020923,45.940577505225946],[1.0638585969583567,45.94051799919315],[1.064047007910019,45.93265168301361],[1.067742147336075,45.93276285733346],[1.0762131914007231,45.932593089642516],[1.0757985312020923,45.940577505225946]]]}&lon=1.068446129992509&lat=45.936754874625336&limit=20

    Aperçu de la zone décalée et du moulin : https://geojson.io/#data=data:application/json,{"type":"FeatureCollection","features":[{"type":"Feature","properties":{},"geometry":{"coordinates":[[[1.0757985312020923,45.940577505225946],[1.0638585969583567,45.94051799919315],[1.064047007910019,45.93265168301361],[1.067742147336075,45.93276285733346],[1.0762131914007231,45.932593089642516],[1.0757985312020923,45.940577505225946]]],"type":"Polygon"}},{"type":"Feature","properties":{},"geometry":{"coordinates":[1.068446129992509,45.936754874625336],"type":"Point"}},{"type":"Feature","properties":{"marker-color":"#e02424","marker-size":"medium"},"geometry":{"coordinates":[1.074373,45.933547],"type":"Point"}}]}

    Je te laisse vérifier tes résultats, et voir si c'est toujours faux.

    A+
    Xav

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2009
    Messages
    872
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2009
    Messages : 872
    Points : 371
    Points
    371
    Par défaut
    Salut Xav

    Certes, l'url que j'ai collé avait une erreur dans la lat.

    L'utilisation du citycode est intentionnel car je veux obtenir les POI les plus proches dans la commune dans laquelle est situé le point de recherche.
    Ceci dit, avec l'url

    https://wxs.ign.fr/calcul/geoportail...dinates%22:%5B[[1.0739828331,45.9416985334],[1.0611944418,45.9416980292],[1.0611961922,45.9328051101],[1.0739825328,45.9328056143],[1.0739828331,45.9416985334]]]}&lon=1.067589&lat=45.937252&limit=20&citycode=87202

    hormis le résultat de la commune de Veyrac, le seul résultat est "La Glane" aux coordonnées 1.087624548/45.93437076, réputée à 592m alors que ces coordonnées sont à 1,59 km du point de recherche et largement hors du carré.

    A mon sens, et c'est ce qui m'a insisté à trouver les résultats faux, ces coordonnées à 1,58 km sont fausses et induisent un biais

    ],
    "toponym":"la Glane",
    "extrafields":{
    "cleabs":"COURNOMM0000000010549464",
    "names":[
    "la glane"
    ]
    },
    "category":[
    "cours d'eau"
    ],
    "_score":0.8968628480780722,
    "distance":592.44147978,
    "_type":"poi"
    },
    "geometry":{
    "type":"Point",
    "coordinates":[
    1.087624548,
    45.93437076

    ]
    }
    Nom : Sans titre-1.fw.png
Affichages : 59
Taille : 379,4 Ko

    Concernant la zone de recherche carrée, les côtés sont proche du km, qui est une contrainte de beta 2 pour les recherches polygon.
    Cette contrainte est à mon sens une régression par rapport à l'ancienne API qui elle, permettait une recherche dans un cercle de 1km de rayon radius=1000.


    https://wxs.ign.fr/calcul/geoportail...0A%3C%2FXLS%3E

Discussions similaires

  1. calcul entre réels et résultat faux
    Par loukoum82 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 01/12/2009, 14h40
  2. Résultats faux avec Rechdom
    Par Amstra dans le forum VBA Access
    Réponses: 2
    Dernier message: 01/04/2009, 16h16
  3. Réponses: 5
    Dernier message: 18/01/2007, 10h09
  4. Réponses: 1
    Dernier message: 08/04/2006, 11h41
  5. [BDE][PARADOX][D7]Filter et RecordCount = résultat faux
    Par N1bus dans le forum Bases de données
    Réponses: 2
    Dernier message: 15/10/2004, 21h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo