Où puis-je trouver des données SIG pour tester les opérations de coordonnées SIG?


13

J'essaie de trouver des données qui peuvent être utilisées pour tester les opérations de coordonnées SIG d'un CRS à un autre CRS. Jusqu'à présent, tout ce que j'ai trouvé est l' ensemble de données Gold et également divers exemples de points dans l' EPSG G7-2 . Les données d'or sont OK pour tester certaines projections de WGE et les quelques points du document G7-2 sont bons pour tester des opérations individuelles. Ce dont j'ai besoin maintenant, ce sont des points qui peuvent tester des opérations de coordination concentrées implicites et explicites telles que EPSG: 4277 à EPSG: 4230 par exemple, pour lesquelles j'avais trouvé un exemple dans http://www.epsg.org/Exchange /1065.pdf . Il doit y avoir une bonne source avec plus d'un point et des CRS utilisant plusieurs datums. Volez, singes Google, volez!

ÉDITER:

J'ai aussi trouvé quelque chose qui s'appelle GIGS


2
Y a-t-il une raison explicite pour laquelle vous ne pouvez pas simuler les données vous-même (c.-à-d. Pourquoi vous ne pouvez pas créer votre propre étalon-or et voir comment le changement des systèmes de référence a un impact sur cela)?
Andy W

L'un des problèmes des tests est que si je présente les données de test, c'est comme si j'étais l'autorité sur ce qui est correct, ce qui est loin d'être le cas. Cela devra être le plan de sauvegarde, mais je préférerais les données d'un expert.
Dandy

Andy W: peut être une bonne idée de retravailler votre commentaire en réponse. Si rien ne se produit, c'est certainement la bonne réponse.
Dandy

Je n'arrive pas à trouver quelque chose de vraiment utile sur l'intégrité géospatiale des applications géoscientifiques (GIGS). Je n'aime vraiment pas ce que j'ai fait dans osr_ct_test.py . Cela me donne seulement une idée de l'endroit où chercher d'éventuels problèmes, mais je viens de commencer avec 0, 0, donc les points n'ont souvent pas beaucoup de sens.
Kurt Schwehr

Réponses:


5

Pour ajouter au commentaire / réponse d'Andy W:

Vous pourriez (devriez) générer un ensemble de données de test avec recoupement via plusieurs API de reprogrammation tierces différentes, ce qui vous donne plus de confiance que vous ne reproduisez pas seulement, par exemple, un bogue proj.4.

En outre, vous pouvez créer diverses identités, erreur de virgule flottante modulo, que vous pouvez tester de manière aléatoire - par exemple, un aller-retour via CRS A -> CRS B -> CRS A devrait vous donner le même point que vous avez commencé.


Proj4 et GCTP sont les deux seuls que je connaisse, y en a-t-il d'autres (non basés sur Proj4)?
Dandy

Il peut être difficile de savoir s'ils utilisent Proj4 / GCTP rebaptisé sous le capot, mais ESRI embarque un moteur de reprojection, tout comme FME. (Un petit indice de recherche sur Google selon lequel ESRI propose plusieurs moteurs de reprojection: forums.esri.com/Thread.asp?c=9&f=1193&t=147790 ) FME vous permet de choisir le moteur de reprojection: docs.safe.com/fme/2009 /html/FFT/func_reproject.htm
Dan S.

Le site FME mentionne GTRANS qui peut être earth-info.nga.mil/GandG/geotrans Je ne sais pas sur quoi il est basé, s'il est basé sur quelque chose mais les gens semblent le comparer à Proj4 donc je suppose que c'est un candidat ainsi que.
Dandy

Je pense que c'est ce GTRANS, en fait: translate.google.com/translate?hl=en&sl=sv&u=http://… Ce n'est pas nécessairement un lien utile. ;)
Dan S.

Étant donné le manque d'un ensemble de données aussi complet, j'ai créé le mien en utilisant Proj4 et la base de données EPSG. J'ai testé chaque CRS dans la base de données contre tous les autres CRS. Je produis un rapport et compare les différences, si les différences sont importantes, je recherche cette opération individuelle.
Dandy

4

Nous (Safe Software) proposons un exemple de jeu de données à utiliser dans les formations et les didacticiels. Il existe toutes sortes de jeux de données, de formats et de systèmes de coordonnées différents (principalement Texas TX83)

Je ne sais pas si c'est exactement ce que vous cherchez, mais vous êtes libre de l'utiliser si cela vous aide.


J'ai besoin de quelque chose où le point n ° 1 dans l'ensemble de données A dans CRS Y représente le même emplacement physique que le point n ° 1 dans l'ensemble de données B dans CRS Z. Cela me permet de tester si les opérations de coordonnées utilisées pour transformer les coordonnées entre ces deux CRS sont correctes. Je vais fouiller un peu dans vos données et voir si je peux trouver quelque chose comme ça.
Dandy


1

En général, PROJ.4 et sa descendance sont assez bons, vous pouvez tester les coordonnées sur le Web en utilisant spatialreference.org - la carte Web rapporte les coordonnées d'entrée et de sortie, bien que les coordonnées d'entrée soient limitées à la géographie.

Si vous souhaitez vérifier la précision et ne pas faire confiance aux implémentations logicielles existantes, vous pouvez toujours essayer de faire le calcul directement - ce n'est pas trop onéreux pour de nombreuses projections. L'article de Wikipedia sur les transformations d'Helmert est utile, tout comme les projections cartographiques de John Snyder: un manuel de travail ( PDF ).



0

La réponse de Dan S. est ce que je pensais à l'origine, bien qu'en y réfléchissant davantage, une telle approche en deux étapes ne ferait pas de distinction entre l'erreur survenue dans la première transformation ou la deuxième transformation.

J'espère toujours qu'un ensemble de données que vous voulez existe, bien qu'il puisse toujours y avoir des limitations et quel que soit votre objectif qui vous amène à vouloir générer des données d'une manière spécifique (outre l'erreur absolue entre les points, on peut être intéressé par la direction erreur, ou erreur dans la distance entre les points, ou erreur dans la taille des zones).

Alors que diriez-vous de cette solution, volant une partie de l'approche de Dan S.;

Disons que vous avez vos données d'étalon-or dans CRS B. Vous générez ensuite des données dans CRS A qui, lorsqu'elles sont transformées, s'alignent parfaitement avec votre étalon-or dans CRS B (je suppose que ces transformations n'ont pas d'erreur stochastique). Ensuite, vous pouvez transformer les points étalons d'or dans CRS B en CRS A, et vous saurez où ils devraient se trouver.

Cela élimine la possibilité que la transformation de CRS A -> CRS B soit la cause de l'erreur, et toute erreur n'est attribuable qu'à la transformation CRS B -> CRS A.

ÉDITER:

Malheureusement, je n'ai rencontré aucun ensemble de données répondant à vos besoins. La plupart des documents sur la précision du géocodage que j'ai dans ma bibliothèque utilisent les stations de surveillance de l'air de l'EPA. Ce document a utilisé une plus grande variété de sources, dont je ne pense pas qu'elles répondent à vos exigences. Parmi ceux que vous voudrez peut-être consulter la page Web du National Geodetic Survey . Je suppose qu'ils ont le meilleur pari d'avoir de telles informations (des sources que j'ai vues).

Bonne chance, et si vous trouvez quelque chose en retour avec cette source.


Les opérations de test et leur inverse peuvent être effectuées individuellement sur chaque opération spécifique. Il existe des données pour cela, accompagnant souvent les équations. Le problème avec les tests apparaît vraiment lorsque j'essaie de convertir de CRS A en CRS D. Il peut y avoir plusieurs façons de le faire, mais l'une d'entre elles est meilleure. Il peut être plus rapide d'utiliser une opération A -> D mais le chemin correct peut être A -> B -> C -> D ou A -> C -> D ou même A -> Z -> D. Tous doivent vous mettre à portée d'un cratère à gauche de la lune mais j'aimerais l'avoir le plus près possible d'un cratère causé par une vache qui tombe.
Dandy

N'avez-vous pas toujours besoin d'évaluer de quelle transformation spécifique provient l'erreur? Mon exemple peut être étendu à plusieurs CRS. Je m'abstiendrai de donner plus de suggestions, car je suis un peu en dehors de ma zone de confort et vous êtes évidemment plus informé que moi sur le sujet. Je continuerai de vérifier et de voir si certains ensembles de données répondent à votre norme. Je pense que certains articles épidémiologiques évaluant la précision du géocodage que j'ai lus peuvent éventuellement répondre à vos besoins. C'est un gros peut-être cependant.
Andy W

L'essentiel est de tester si les opérations individuelles sont utilisées correctement plutôt que si elles sont elles-mêmes correctes.
Dandy

0

Je connais 3 endroits où vous pouvez trouver de telles données. Les 2 premiers sont liés à Proj4:

1. Les fichiers de test Proj4 : https://github.com/OSGeo/proj.4/tree/master/nad

Les fichiers ayant "test" dans leurs noms sont des scripts exécutant des commandes de transformation proj4. L'entrée se trouve dans ces fichiers de test. Les données de sortie attendues se trouvent dans les fichiers correspondants avec "_out.dist" dans leurs noms. À la fin de l'entrée et de la sortie est comparée à la commande diff.

2. https://github.com/Beman/boost-trunk-git-svn/blob/master/libs/geometry/test_extensions/gis/projections/projections.cpp

Ce sont des données synthétiques. Je peux confirmer que c'est correct avec Proj 4.8.0.

3. Le pack Gold Data de GeoTrans : http://earth-info.nga.mil/GandG/coordsys/Conversion_Software/index.html

Je n'ai jamais essayé ça, j'espère que ça pourrait vous être utile!

Ps Un bel outil web que j'utilise et sur lequel je m'appuie: http://cs2cs.mygeodata.eu/ (également basé sur proj4)

Bonne chance!

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.