Identificando o sistema de coordenadas do Shapefile quando desconhecido?

Respostas:

49

Sempre existe o método "força bruta":

  1. Pegue uma camada com um sistema de coordenadas conhecido que deve sobrepor-se à sua camada desconhecida.

  2. Agora faça algumas suposições sobre qual projeção a camada desconhecida poderia ser. (UTM, Plate Carree, etc). Projete sua camada do sistema de coordenadas conhecida em cada projeção até encontrar uma que corresponda ao máximo à camada desconhecida.

brenth
fonte
1
este é o meu método também. Utilizo dois softwares diferentes para "prová-lo". Você também pode ler esta pergunta para obter algumas orientações básicas sobre projeções. gis.stackexchange.com/questions/2769/…
Brad Nesom
6
Você pode simplificar um pouco a etapa 2 apenas alterando a projeção do quadro de dados (ArcMap) e deixando a camada conhecida reprojetar rapidamente.
Brandon Copeland
13
Observe que você não deve projetar os dados. Você deve definir a projeção. Projetar os dados altera as coordenadas. Definir a projeção apenas atribui uma projeção a esses dados e informa ao software em que projeção os dados já estão. Essas são duas ferramentas diferentes no ArcMap: "Definir projeção" é o que você deseja usar.
31411 Sean
Eu prefiro ler os valores das coordenadas, geralmente posso dizer se são graus decimais, metros ou pés (mais difícil de distinguir) e depois passar para o melhor sistema. Comece com WGS 84 se parecer decimal, UTM se metros, Estado plano se pés. Certa vez, tive uma que ninguém conseguiu consertar (por anomalias gravitacionais). Era o avião do estado dos EUA com uma unidade linear de ...... quilômetros. Eu poderia dizer que, por estar perto, eu tinha o sistema certo, mas o estado era pequeno, ahh quilômetros era a unidade linear.
Se você não sabe- apenas GIS
33

Estou promovendo comentários de Mapperz e Brandon Copeland adicionando uma resposta que usa sua técnica.

  1. Se você possui o ArcGIS Desktop, adicione alguns dados de referência que cubram a mesma área ao ArcMap. Esses dados de referência devem ter uma definição válida do sistema de coordenadas (projeção).
  2. Adicione os dados em um sistema de coordenadas desconhecido.
  3. Pesquise quais sistemas de coordenadas possíveis são usados ​​nessa área. Um lugar para verificar é o Registro EPSG .
  4. Defina o sistema de coordenadas do quadro de dados para as possibilidades. Se os dados com uma coordsys alinhados com os dados sem coordsys, você provavelmente identificou o sistema de coordenadas.

Essa técnica aproveita o fato de que o ArcMap pode converter dados em um novo sistema de coordenadas na memória. Os dados sem coordsys conhecidos não podem ser convertidos, apenas exibidos. Ao projetar os dados conhecidos na memória, podemos ver rapidamente quais coordenadas ele possui nos vários sistemas de coordenadas possíveis.

mkennedy
fonte
4
Nota lateral: No QGIS, a reprojeção na memória é chamada "on-the-fly".
Underdark
3
É chamado de 'on-the-fly' no ArcGIS também! Eu continuo encontrando muitas pessoas que não entendem essa frase, então tentei usar 'in-memory'.
mkennedy
Este link ainda é válido? Parece um pouco mais complicado do que como eu me lembro, no entanto, há este epsg-registry.org
GISKid
1
@GISKid Você está certo. Acho que o site epsg-registry.org está pós-data quando escrevi esta resposta. Eu vou atualizar.
mkennedy
1
Outro grande recurso: epsg.io
GISKid
29

Como essa pergunta nunca envelhece, criei um site que usa o método Brute Force . Se você arrastar um shp + shx compactado no mapa, ele será mapeado em todos os sistemas de coordenadas disponíveis no PostGIS. Supondo que você saiba como é a aparência "correta", é possível aumentar o zoom nessa área e clicar no polígono para obter o arquivo .prj em epsg.io.

jmk
fonte
15
idéia excelente, mas acho que o site não está realmente funcionando
Fábio Dias
22

No meu último trabalho, eu tinha uma camada de dados de geologia (polígono) chamada "FSU_Geol.shp". Meu chefe me deu e me pediu para descobrir várias coisas. Primeiro, ele recebeu esse shapefile pelo cliente e não havia arquivo .prj, então ele queria que eu descobrisse isso. Ele também queria que eu descobrisse quais eram as categorias de Geologia. Eu poderia continuar, mas vamos direto ao assunto ... Eu pesquisei no Google e acabei AQUI .

O acrônimo na convenção de nomenclatura significava "Geologia da superfície da antiga União Soviética", e a pesquisa no Google me levou "diretamente" à fonte (USGS). Tudo o que eu precisava saber sobre esse shapefile estava no link superior que eu atingi. Não estou dizendo que o Google pode encontrar tudo e qualquer coisa , mas eu estava recém-saído da universidade, apenas dando um "tiro no escuro", e veja o feedback que recebi!

Em outro exemplo, alguém no escritório havia baixado vários arquivos de forma usando uma função em lote. Não lembro o nome do pacote de software no momento, mas os arquivos .prj estavam ausentes. Eu simplesmente fui aos metadados no ArcCatalog e encontrei minha resposta lá. Novamente, não me cite, mas acho que havia uma URL para a fonte lá.

Desde esse dia, eu "começo" com uma pesquisa no Google, se não houver pistas nos metadados!

Dano
fonte
18

Pergunte ao produtor.

Se você conhece um CRS comum para sua região geográfica, pode experimentar alguns deles. Mas perguntar é melhor.

underdark
fonte
O único problema é que não posso perguntar a ele ... Esse também foi o primeiro pensamento que tive.
com
Então, você terá que usar força bruta, como disse brenth.
Subterrâneo
18

Eu realmente amo essa ferramenta da web: http://projfinder.com/ . Verifique seu arquivo e procure algumas coordenadas. Aumente o zoom aproximadamente para o mesmo local do globo e deixe-o adivinhar.

johanvdw
fonte
Esta é realmente a melhor ferramenta que eu encontrei. A adivinhação no ArcMap não é realmente útil a longo prazo ou se você não sabe o que deve ser. Não posso ajudar com os sistemas de coordenadas homebrew e a falta de um completamente, mas quem pode!
Martin
Pena que não está mais funcionando - alguém sabe com quem entrar em contato?
11388 sventechie
16

Não é uma ferramenta (eu não conheço uma que exija que você faça isso), mas confira a resposta de @ mkennedy em Como eu converteria esse ponto no WKID 4326? . Ela explica como chegou à referência espacial correta. SpatialReference.org e paciência serão seus amigos.

Além disso, o Esri fornece um guia sobre como adivinhar um sistema de coordenadas (embora eu prefira o método de mkennedy se você souber um pouco mais sobre os dados).

Sasa Ivetic
fonte
13

A melhor resposta que encontrei para esta pergunta é não técnica: descubra de onde vieram seus dados. Agências e organizações tendem a ser consistentes com o uso de projeções. Sabe que veio do seu estado DOT? Veja o restante dos dados e veja o que ele diz. Não sabe de onde veio? Um palpite fundamentado tem a mesma probabilidade de enviar você pelo caminho certo.

Pelo menos, torna o combate ao problema com força bruta um pouco mais viável!

Jason Baker
fonte
11

Seriamente desatualizado neste momento, mas Werner Flacke e Birgit Klaus postaram Find Projection no ArcScripts em 2007. Infelizmente, não acho que o código fonte esteja lá. É baseado em VBA, portanto, apenas utilizável no ArcGIS Desktop v9.2 e possivelmente 9.3. Inclui dois shapefiles com as áreas de interesse do EPSG Geodetic Parameter Dataset que podem ser usados ​​para restringir as possibilidades.

A Calculadora Geográfica Blue Marble e o Transformador Geográfico têm ferramentas de recuperação do sistema de coordenadas.

mkennedy
fonte
Obrigado pela dica Melita. O código está lá (* .frm). A licença é de domínio público. PrjFinder é companheiro do livro "Trabalhando com projeções e transformações de dados no ArcGIS" (2006).
precisa saber é o seguinte
4

Experimente o programa ogrinfo fornecido como parte do GDAL.

Consulte Como acessar os metadados do Shapefile usando o OGR?

Portanto, o ogrinfo pode não fornecer as informações da projeção sem um arquivo .prj, mas ainda é uma ferramenta útil para ajudá-lo a investigar a lista de projeções em potencial.

Por exemplo:

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

Essa resposta me sugere que o shapefile está usando um sistema de referência baseado em medidores e não em graus.

Supondo que você saiba de onde são os dados, agora você tem uma lista mais curta de projeções possíveis.

Outras práticas recomendadas podem ser:

  • Pergunte às pessoas que forneceram os dados em primeiro lugar, mesmo que não saibam exatamente, elas devem ter uma lista de possíveis projeções que podem ser vistas em primeira instância.
  • Veja se há algum metadado associado.

Provavelmente é melhor começar com alguma posição conhecida, em vez de tentar fazer força bruta a partir do zero.

nmtoken
fonte
1
Isso não responde à pergunta que foi feita.
21814 Dan C
1
Se não houver arquivo prj, o hen ogrinfo não retornará resultados para as informações do sistema de coordenadas.
Devdatta Tengshe 13/03/14
4

Para adicionar às outras respostas neste post, eu adicionaria o seguinte:

Como: Identificar um sistema de coordenadas projetado desconhecido usando o ArcMap

Forneça uma verificação específica no NAD1927

Se as coordenadas estiverem em graus decimais, como entre a longitude -180 e +180, e a latitude -90 e +90, identifique o Sistema de coordenadas geográficas (referência) usado para os dados. Antes da versão 9.2, o ArcMap atribui GCS_Assumed_Geographic_1 aos dados, por padrão. Isso coloca os dados no dado NAD_1927

além do que, além do mais

Se os dados estiverem nos Estados Unidos e mostrarem até que ponto as coordenadas à esquerda da casa decimal são 6, 7 ou 8 dígitos, os dados provavelmente serão projetados nos sistemas de coordenadas do Plano Estadual ou UTM.

FAQ: Noções básicas de projeção: o que o profissional de GIS precisa saber

Esta página fornece várias verificações na determinação de projeções, o que é importante para ajudar na tentativa de identificar um sistema de coordenadas desconhecido.

Os seguintes conceitos são fundamentais para entender o uso de projeções de mapas no ArcGIS. Observe, porém, que o tópico das projeções é extremamente amplo, e este artigo não pode fazer nada além de abordar alguns tópicos importantes.

  1. Os sistemas de coordenadas, também conhecidos como projeções de mapas, são designações arbitrárias para dados espaciais. Seu objetivo é fornecer uma base comum para a comunicação sobre um determinado local ou área na superfície da Terra. A questão mais crítica ao lidar com projeções de mapas é saber o que é a projeção e ter as informações corretas do sistema de coordenadas associadas a um conjunto de dados.

  2. Quando as primeiras projeções do mapa foram elaboradas, assumiu-se, incorretamente, que a Terra era plana. Mais tarde, a suposição foi revisada e a terra foi assumida como uma esfera perfeita. No século 18, as pessoas começaram a perceber que a terra não era perfeitamente redonda. Este foi o começo do conceito do esferóide cartográfico.

  3. Para representar com mais precisão as localizações na superfície da Terra, os cartógrafos estudaram a forma da Terra (geodésia) e criaram o conceito do esferóide. Em seguida, foram criados sistemas de coordenadas geográficas (GCS), que incluem um dado, unidades de medida e um meridiano de referência. Um dado liga um esferóide a uma porção específica da superfície da Terra. Dados recentes são projetados para caber bem em toda a superfície da Terra.

  4. Os dados mais usados ​​na América do Norte são:

• NAD 1927 (datado da América do Norte 1927) usando o esferóide Clarke 1866
• NAD 1983 (datado da América do Norte 1983) usando o esferóide GRS 1980
• WGS 1984 (World Geodetic Survey 1984) usando o esferóide WGS 1984

Os esferóides mais recentes são desenvolvidos a partir de medições de satélite e são mais precisos que os desenvolvidos por Clarke em 1866. Os termos 'sistema de coordenadas geográficas' e 'dado' são usados ​​de forma intercambiável, mas, como observado acima, um GCS inclui um dado, esferóide, unidades de medida e um meridiano de primeira linha.

  1. As coordenadas dos dados são alteradas dependendo do dado e do esferóide no qual essas coordenadas se baseiam, mesmo se estiverem usando os mesmos parâmetros e projeção de mapa.

Por exemplo, as coordenadas geográficas abaixo são para um único ponto localizado na cidade de Bellingham, Washington, usando três dados diferentes:

Código: DATUM Coordenada X Coordenada Y NAD_1927 -122.466903686523 48.7440490722656 NAD_1983 -122.46818353793 48.7438798543649 WGS_1984 -122.46818353793 48.7438798534299

  1. Um princípio do bom gerenciamento de dados é obter os parâmetros de projeção da fonte de dados que os fornece. Não faça um palpite sobre a projeção de dados, porque o resultado será um banco de dados GIS impreciso. Os parâmetros necessários são os seguintes:

• Projeção
• Unidades de medida
• ZONA (para UTM)
• Zona FIPS (para plano estadual)
• Dado

Outros parâmetros podem ser necessários, dependendo da projeção. Por exemplo, as projeções de Albers e Lambert requerem os seguintes parâmetros:

• 1º paralelo padrão, em graus, minutos e segundos (DMS)
• 2º paralelo padrão (DMS)
• Meridiano central (DMS)
• Latitude da origem das projeções (DMS)
• Falso leste e unidades de medida
• Falso norte e unidades de medida
• Turno X e unidades de medida
• Turno Y e unidades de medida

whyzar
fonte
O que devo fazer se tiver uma camada de grade que apenas mostre um sistema de coordenadas desconhecido e não conseguir atribuir nada a ele? Obrigado.
AndrewLebron
2

Eu tive o mesmo problema enquanto estava trabalhando no meu projeto (DEMs). Uma das DEM era de coordenadas desconhecidas e não pode ser projetada, então fiz o 'georreferenciamento' utilizando a ferramenta de georreferenciamento no ArcMap . Após o georreferenciamento, você receberá seu prj.file.

ndr
fonte
0

Veja este site:

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

Eu sou o desenvolvedor desta ferramenta gratuita. Talvez essa ferramenta possa ajudá-lo a encontrar e definir a projeção correta do seu shapefile. Baseia-se na idéia de http://projfinder.com/ de Aaron Racicot.

Você também pode tentar estas soluções especiais para:

Áustria (alemão): https://www.data.gv.at/anwendungen/checkaustrianprojection/

Austrália: https://maegger.github.io/map_australia.html

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

Manfred Egger
fonte
0

Você pode discriminar entre coordenadas geográficas e de cartografia, as primeiras lat / lon estão em graus e as segundas Norte / Leste estão em metros. Se o arquivo tiver forma, você poderá despejar as coordenadas da geometria com shapelib-1.3.0 e ver os valores. ..

natan
fonte
0

Você pode fazer isso com Fiona.

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

Você receberá resposta como

    {'init': 'epsg:4326'}
Sandip Nepal
fonte
Tem certeza de que funcionará sem um arquivo .prj? como Fiona saberá?
JR
Não sem o arquivo .prj, ele não funcionará
Sandip Nepal 17/10