Identificazione del sistema di coordinate di Shapefile quando sconosciuto?


Risposte:


49

C'è sempre il metodo "forza bruta":

  1. Prendi un livello con un sistema di coordinate noto che dovrebbe sovrapporsi al tuo livello sconosciuto.

  2. Ora fai alcune ipotesi plausibili su quale proiezione potrebbe essere lo strato sconosciuto. (UTM, Plate Carree, ecc.). Proietta il tuo livello di sistema di coordinate noto in ogni proiezione fino a quando non ne trovi uno che corrisponda il più possibile al livello sconosciuto.


1
questo è anche il mio metodo. Uso due software diversi per "dimostrarlo". Potresti anche esaminare questa domanda per alcune indicazioni di base sulle proiezioni. gis.stackexchange.com/questions/2769/…
Brad Nesom

6
È possibile semplificare un po 'il passaggio 2 semplicemente modificando la proiezione del frame di dati (ArcMap) e lasciando riproiettare al volo il layer noto.
Brandon Copeland,

13
Nota che non dovresti proiettare i dati. Dovresti definire la proiezione. La proiezione dei dati modifica le coordinate. La definizione della proiezione assegna solo una proiezione a quei dati e indica al software in quale proiezione sono già presenti i dati. Questi sono due diversi strumenti in ArcMap, "Definisci proiezione" è quello che vuoi usare.
Sean,

Preferisco leggere i valori delle coordinate, di solito posso dire se sono gradi decimali, metri o piedi (più difficili da distinguere) e quindi passare al sistema migliore. Inizia con WGS 84 se appare decimale, UTM se metri, piano statale se piedi. Una volta ne avevo uno che nessuno poteva risolvere (per anomalie gravitazionali). Era un aereo dello stato USA con un'unità lineare di ...... chilometri. Potrei dire dal fatto che era vicino avevo il sistema giusto ma lo stato era minuscolo, ahh chilometri era l'unità lineare.
Se non lo sapete, basta GIS il

33

Sto promuovendo i commenti di Mapperz e Brandon Copeland aggiungendo una risposta che utilizza la loro tecnica.

  1. Se si dispone di ArcGIS Desktop, aggiungere ad ArcMap alcuni dati di riferimento che coprono la stessa area. Questi dati di riferimento devono avere una definizione di sistema di coordinate (proiezione) valida.
  2. Aggiungi i dati in un sistema di coordinate sconosciuto.
  3. Ricerca quali possibili sistemi di coordinate vengono utilizzati in quest'area. Un posto da controllare è il registro EPSG .
  4. Impostare il sistema di coordinate del frame di dati sulle possibilità. Se i dati con un coordsys noto si allineano con i dati senza un coordsys noto, probabilmente hai identificato il sistema di coordinate.

Questa tecnica sfrutta il fatto che ArcMap può convertire i dati in un nuovo sistema di coordinate in memoria. I dati senza un Coordsys noto non possono essere convertiti, quindi vengono semplicemente visualizzati. Proiettando i dati noti in memoria, possiamo vedere rapidamente quali coordinate ha nei vari possibili sistemi di coordinate.


4
Nota a margine: in QGIS la riproiezione in memoria è chiamata "al volo".
underdark

3
Si chiama 'al volo' anche in ArcGIS! Continuo a trovare molte persone che non capiscono quella frase, quindi ho cercato di usare "in memoria" invece.
mkennedy,

Questo link è ancora valido? Sembra un po 'più complicato di come lo ricordo, tuttavia c'è questo epsg-registry.org
GISKid

1
@GISKid Hai ragione. Penso che il sito web epsg-registry.org abbia post-date quando ho scritto questa risposta. Aggiornerò.
mkennedy,

1
Un'altra grande risorsa: epsg.io
GISKid,

29

Dal momento che questa domanda non invecchia mai, ho creato un sito che utilizza il metodo Brute Force . Se trascini uno shp + shx zippato sulla mappa, verrà mappato in ogni sistema di coordinate disponibile in PostGIS. Supponendo che tu sappia che aspetto ha "corretto", puoi ingrandire l'area e fare clic sul poligono per ottenere il file .prj da epsg.io.


15
idea eccezionale, ma penso che il sito web non funzioni davvero
Fábio Dias,


22

Nel mio ultimo lavoro, avevo un livello di dati Geologia (poligono) chiamato "FSU_Geol.shp". Il mio capo me lo ha dato e mi ha chiesto di scoprire una serie di cose. Prima di tutto, gli è stato consegnato questo file di forma dal client e non c'era alcun file .prj, quindi voleva che lo capissi. Voleva anche che capissi quali fossero le categorie di geologia. Potrei andare avanti all'infinito, ma lasciamo andare all'inseguimento ... L'ho cercato su Google e sono finito QUI .

L'acronimo nella convenzione di denominazione stava per "geologia di superficie dell'ex Unione Sovietica" e la ricerca di Google mi ha portato "direttamente" alla fonte (USGS). Tutto quello che potrei mai aver bisogno di sapere su questo shapefile era nel link in alto che ho colpito. Non sto dicendo che Google possa trovare qualsiasi cosa , ma ero appena uscito dall'università e stavo solo facendo uno "scatto al buio", e guarda il feedback che ho ricevuto!

In un altro caso, qualcuno in ufficio aveva scaricato un certo numero di shapefile usando una funzione batch. Al momento non ricordo il nome del pacchetto software, ma mancavano i file .prj. Sono semplicemente andato ai metadati in ArcCatalog e in realtà ho trovato la mia risposta lì. Ancora una volta, non citarmi, ma penso che ci fosse un URL per la fonte lì dentro.

Da quel giorno "inizio" con una ricerca su Google se non ci sono indizi nei metadati!


18

Chiedi al produttore.

Se conosci i CRS comuni per la tua regione geografica, puoi provarne alcuni. Ma chiedere è meglio.


L'unico problema è che non posso chiedergli ... Questo è stato anche il primo pensiero che ho avuto.
com

Quindi, dovrai usare la forza bruta come diceva Brenth.
underdark

18

Adoro questo strumento Web: http://projfinder.com/ . Controlla il tuo file e cerca alcune coordinate. Ingrandisci approssimativamente lo stesso punto del globo e lascialo indovinare.


Questo è in realtà lo strumento migliore che ho trovato. Le congetture in ArcMap non sono davvero utili a lungo termine o se non sai cosa dovrebbe essere. Non posso aiutare con i sistemi di coordinate homebrew e la mancanza di uno completamente, ma chi può!
Martin

Peccato che non funzioni più: qualcuno sa a chi rivolgersi?
sventechie,


13

La migliore risposta che ho trovato a questa domanda non è tecnica: scopri da dove provengono i tuoi dati. Le agenzie e le organizzazioni tendono ad essere coerenti con il loro uso delle proiezioni. Sai che è venuto dal tuo stato DOT? Guarda il resto dei loro dati e vedi cosa ti dice. Non sai da dove viene? Un'ipotesi istruita è altrettanto probabile che ti mandi lungo la strada giusta.

Almeno rende un po 'più fattibile affrontare il problema con la forza bruta!


11

Seriamente obsoleto a questo punto, ma Werner Flacke e Birgit Klaus hanno pubblicato Find Projection su ArcScripts nel 2007. Purtroppo non credo che il codice sorgente sia lì. È basato su VBA quindi utilizzabile solo in ArcGIS Desktop v9.2 e possibilmente 9.3. Comprende due shapefile con le aree di interesse dal set di dati dei parametri geodetici EPSG che potrebbero essere utilizzati per restringere le possibilità.

Blue Marble Geographic Calculator e Geographic Transformer dispongono di strumenti di recupero del sistema di coordinate.


Grazie per la punta Melita. Il codice è lì (* .frm). La licenza è di dominio pubblico. PrjFinder è un compagno del libro "Lavorare con le proiezioni e le trasformazioni di riferimento in ArcGIS" (2006).
matt wilkie,

4

Prova il programma ogrinfo fornito come parte di GDAL.

Vedi Come accedere ai metadati di Shapefile usando OGR?

Quindi ogrinfo potrebbe non fornirti le informazioni di proiezione senza un file .prj, ma è comunque uno strumento utile per aiutarti a esaminare l'elenco di potenziali proiezioni.

Per esempio:

Geometry: Polygon
Feature Count: 269 
Extent: (320000.000000, 505000.000000) - (323000.000000, 511000.000000) 

Questa risposta mi suggerisce che lo shapefile sta usando un sistema di riferimento basato su metri e non su gradi.

Supponendo che tu sappia da dove provengono i dati, ora hai un elenco più breve di possibili proiezioni.

Altre buone pratiche potrebbero essere:

  • Chiedi in primo luogo alle persone che ti hanno fornito i dati, anche se non sanno esattamente che dovrebbero avere un elenco di possibili proiezioni che potrebbero essere esaminate in prima istanza.
  • Controlla se ci sono metadati associati.

Probabilmente è meglio iniziare da qualche posizione di noti, piuttosto che cercare di forzare la forza bruta da zero.


1
Questo non risponde alla domanda che è stata posta.
Dan C

1
Se non è presente alcun file prj, gallina ogrinfo non restituirà risultati per le informazioni sul sistema di coordinate.
Devdatta Tengshe,

4

Per aggiungere alle altre risposte in questo post, aggiungerei quanto segue:

Procedura: identificare un sistema di coordinate proiettate sconosciuto utilizzando ArcMap

Fornire un controllo specifico su NAD1927

Se le coordinate sono in gradi decimali, ad esempio tra la longitudine -180 e +180 e la latitudine -90 e +90, identificare il sistema di coordinate geografiche (dato) utilizzato per i dati. Prima della versione 9.2, ArcMap assegna GCS_Assumed_Geographic_1 ai dati, per impostazione predefinita. Ciò posiziona i dati sul dato NAD_1927

Inoltre

Se i dati si trovano negli Stati Uniti e mostrano in che misura le coordinate a sinistra del decimale sono 6, 7 o 8 cifre, i dati vengono probabilmente proiettati sul piano di stato o sui sistemi di coordinate UTM.

FAQ: Nozioni di base sulla proiezione: cosa deve sapere il professionista GIS

Questa pagina fornisce numerosi controlli su come determinare le proiezioni che sono importanti per aiutare a cercare di identificare un sistema di coordinate sconosciuto.

I seguenti concetti sono fondamentali per comprendere l'uso delle proiezioni cartografiche in ArcGIS. Si noti tuttavia che l'argomento delle proiezioni è estremamente ampio e questo articolo non può fare altro che toccare alcuni argomenti importanti.

  1. I sistemi di coordinate, noti anche come proiezioni cartografiche, sono designazioni arbitrarie di dati spaziali. Il loro scopo è di fornire una base comune per la comunicazione su un particolare luogo o area sulla superficie terrestre. Il problema più critico nella gestione delle proiezioni delle mappe è sapere qual è la proiezione e avere le informazioni corrette sul sistema di coordinate associate a un set di dati.

  2. Quando furono concepite le prime proiezioni cartografiche, si presumeva, erroneamente, che la terra fosse piatta. Più tardi l'assunzione fu rivista e la terra fu considerata una sfera perfetta. Nel 18 ° secolo, le persone iniziarono a rendersi conto che la terra non era perfettamente rotonda. Questo è stato l'inizio del concetto di sferoide cartografico.

  3. Per rappresentare più accuratamente le posizioni sulla superficie terrestre, i creatori di mappe hanno studiato la forma della terra (geodesia) e creato il concetto di sferoide. Quindi sono stati ideati i sistemi di coordinate geografiche (GCS), che includono un dato, unità di misura e un meridiano primo. Un dato collega uno sferoide a una particolare porzione della superficie terrestre. I dati recenti sono progettati per adattarsi bene all'intera superficie terrestre.

  4. I datum più utilizzati in Nord America sono:

• NAD 1927 (North American Datum 1927) utilizzando lo sferoide Clarke 1866
• NAD 1983 (North American Datum 1983) utilizzando lo sferoide GRS 1980
• WGS 1984 (World Geodetic Survey 1984) utilizzando lo sferoide WGS 1984

I nuovi sferoidi sono sviluppati dalle misurazioni satellitari e sono più precisi di quelli sviluppati da Clarke nel 1866. I termini "sistema di coordinate geografiche" e "dato" sono usati in modo intercambiabile, ma come notato sopra, un GCS include un dato, sferoide, unità di misura e un meridiano primo.

  1. Le coordinate per i dati cambiano in base al dato e allo sferoide su cui si basano tali coordinate, anche se utilizzano la stessa proiezione e parametri della mappa.

Ad esempio, le coordinate geografiche di seguito si riferiscono a un singolo punto situato all'interno della città di Bellingham, Washington, utilizzando 3 diversi riferimenti:

Codice: DATUM X-Coordinate Y-Coordinate NAD_1927 -122.466903686523 48.7440490722656 NAD_1983 -122.46818353793 48.7438798543649 WGS_1984 -122.46818353793 48.7438798534299

  1. Un principio di buona gestione dei dati è quello di ottenere i parametri di proiezione dall'origine dati che fornisce i dati. Non fare congetture sulla proiezione dei dati, perché il risultato sarà un database GIS impreciso. I parametri necessari sono i seguenti:

• Proiezione
• Unità di misura
• ZONA (per UTM)
• Zona FIPS (per piano di stato)
• Riferimento

Possono essere richiesti altri parametri, a seconda della proiezione. Ad esempio, le proiezioni di Albers e Lambert richiedono i seguenti parametri:

• 1 ° parallelo standard, in gradi, minuti e secondi (DMS)
• 2 ° parallelo standard (DMS)
• Meridiano centrale (DMS)
• Latitudine dell'origine delle proiezioni (DMS)
• Falso est e unità di misura
• Falso nord e unità di misura
• X-shift e unità di misura
• Y-shift e unità di misura


Cosa devo fare se ho un livello griglia che mostra solo un sistema di coordinate sconosciuto e non riesco ad assegnargli nulla? Grazie.
AndrewLebron,

2

Ho avuto lo stesso problema mentre stavo lavorando al mio progetto (DEM). Una delle DEM era coordinate sconosciute e non può essere proiettata, quindi ho fatto il "georeferenziamento" utilizzando lo strumento di georeferenziazione in ArcMap . Dopo il georeferenziamento, otterrai il tuo file prj.


0

Guarda questo sito Web:

http://www.egger-gis.at/shapefile-projectionfinder/

Sono lo sviluppatore di questo strumento gratuito. Forse questo strumento può aiutarti a trovare e definire la corretta proiezione del tuo shapefile. Si basa sull'idea di http://projfinder.com/ di Aaron Racicot.

Puoi anche provare queste soluzioni speciali per:

Austria (tedesco): https://www.data.gv.at/anwendungen/checkaustrianprojection/

Australia: https://maegger.github.io/map_australia.html

UTM - Zone: https://maegger.github.io/map_utm.html


0

Potresti discriminare tra coordinate geografiche e cartografiche, il primo lat / lon è in gradi il secondo nord / est sono in metri Se il file ha forma potresti scaricare le coordinate della geometria con shapelib-1.3.0 e vedere i valori quindi. ..


0

Puoi farlo con Fiona.

    import fiona as f
    a = fiona.open("C:\QGIS_ShapeFile\qgis\shafile_XXX.shp")
    print(a.crs)

Riceverai risposta come

    {'init': 'epsg:4326'}

Sei sicuro che funzionerà senza un file .prj? come lo saprà Fiona?
JR

No senza file .prj, non funzionerà
Sandip Nepal,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.