Correspondência de mapa em tempo real usando o ArcGIS Desktop?


12

Estou trabalhando em um projeto que requer correspondência de mapas em tempo real. Atualmente, estou usando o ArcGIS, mas não tenho certeza se ele irá funcionar.

Aqui está o que acontece com o meu sistema:

os telefones celulares enviavam correções de GPS a cada cinco segundos ao meu servidor e preciso fazer a correspondência em tempo real do mapa para encaixar o ponto em um dos links do mapa e armazenar os pontos correspondentes.

O ArcGIS possui uma ferramenta 'near' para encaixar o ponto no link mais próximo. No entanto, a entrada na ferramenta deve ser um shapefile para os pontos.

Gostaria de saber como posso lidar com os dados em tempo real que recebo no ArcGIS. Criando um arquivo de forma para cada ponto?

Alguma outra sugestão para realizar este trabalho?

Respostas:


3

Crie um recurso de ponto a partir da sua localização GPS (presumivelmente armazenado como um arquivo no formato de tabela) usando os recursos Criar evento XY e copiar e use-o com a ferramenta Próximo - ou tente a ferramenta Junção espacial com a opção 'mais próxima'. Você provavelmente desejará armazenar esses recursos intermediários em um espaço de trabalho temporário / temporário que pode ser excluído após a obtenção da saída final (que você pode anexar ao seu banco de dados).


Olá, obrigado pela sua ajuda. Eu fiz exatamente do jeito que você disse e está resolvido agora. No entanto, há um novo problema. O cálculo leva sete a dez segundos para imprimir os resultados finais de um ponto. Mas o que posso desenvolver é um aplicativo em tempo real que é melhor ser controlado em no máximo 2 a 3 segundos. A importação do Arcpy é o problema, já que este é um módulo grande? Você poderia me dizer onde está o problema e como melhorar o sistema? (Todo o sistema está em Java, o módulo python eu desenvolvi serão chamados a partir dos códigos principais)
user14631

Portanto, parece que o arcpy é importado sempre. É aqui que está o problema? Obrigado.
user14631

1
Você é bem-vindo ao primeiro comentário. Quanto ao seu segundo comentário, recomendo que você publique uma nova pergunta (talvez com referência a essa original) sobre como melhorar seu código, juntamente com o código de exemplo, para que todos possamos avaliar melhor.
CCN

1

Se um ponto está próximo, realmente depende de muitas coisas, não apenas na estrada mais próxima, mas também nos pontos anteriores. Você pode dar uma olhada no algoritmo e nas ferramentas que eu usaria.


1

Existe uma solução de correspondência de mapa em tempo real (no entanto, é em Java, não no ArcGIS) que implementa a correspondência de mapa do modelo Markov oculto, veja aqui: https://github.com/bmwcarit/barefoot

É bastante robusto e o mapa corresponde às trilhas de GPS aos dados do OpenStreetMap, também em tempo real (conhecido como correspondência de mapas on-line). (ATUALIZAÇÃO :) O que você pode estar procurando é implementado como um "servidor independente de rastreador" (com uma API semelhante a REST).

insira a descrição do link aqui


Você saberia se essa funcionalidade está presente agora?
7/16

1
Bem, sim, esta funcionalidade está disponível agora, mas não faz parte do ArcGIS (se essa é a questão). Os olhares resultado como este: github.com/bmwcarit/barefoot#tracker-server-quick-start
sema

0

É provável que você encontre gargalos computacionais e problemas de consistência com qualquer pacote que não tenha um roteamento adequado ou, no mínimo, uma abstração de rede rodoviária. Se você estiver usando dados OSM para a rede rodoviária, verifique TrackMatching no meu perfil. Verifique este algoritmo de correspondência de mapa de threads .


0

Você pode dar uma olhada na nova API de serviço da Microsoft 'Snap to road'. Para detalhes, você pode ver este link

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.