geoapi-pt/main

Geocodificação reversa

jfoclpf opened this issue · 5 comments

@pinanunes @joao

depois de 39 horas a correr o script, finalmente consegui gerar os ficheiros que aglomeram todas as moradas (pontos) do ficheiro OpenAddresses por distrito/município/freguesia/secção/subsecção

Está tudo aqui:
https://github.com/jfoclpf/geoapi.pt/tree/main/res/admins-addresses

Tal vai permitir fazer geocodificação reversa (coodenadas GPS => Código postal e morada) pois o distrito/município/freguesia/secção/subsecção já está a ser detectado rapidamente, e só temos que procurar o ponto/morada mais perto dentro desse ficheiro distrito/município/freguesia/secção/subsecção.json

@pinanunes @joao @waldyrious devemos simplesmente apresentar o ponto mais próximo? Ou devemos dar uma margem máxima? Tipo 50 metros? Ou seja, se nenhum ponto estiver num raio de 50 metros, não devolvemos nada. Qual o valor para o limbo?

Originally posted by @jfoclpf in #44 (comment)

feito

https://geoapi.pt/gps/38.748406,-9.102984

sem recurso ao Open Street Maps

joao commented

@jfoclpf Só agora estou a ver melhor os tickets e esta funcionalidade. Bom trabalho!

Se entendo, a conversão GPS -> endereço é efectuada por aproximação entre o ponto lat/lng do GPS e qual o endereço mais perto correcto?

Não sendo esta a minha área técnica, talvez haja uma melhor forma de fazer isto para muitos dos endereços, vendo em que poligono de um endereço (nomeadamente do edificado) um ponto lat/lng de GPS se insere (ou mais se aproxima).

Para conseguir tal há este projecto da Microsoft: https://github.com/microsoft/GlobalMLBuildingFootprints
Contudo, penso que não tem endereços associados aos poligonos, sendo necessário fazer primeiro uma intersecção entre os endereços do INE e os polígonos.

Seria tal viável? Até para ter um mero dataset separado de polígonos de edificios com moradas correspondentes, seria bastante útil para visualizações que envolvessem endereços, especialmente em cidades, não mostrando somente um ponto, mas um polígono a delimitar uma área.

Olá @joao

sim, o endereço é calculado neste momento, achando o ponto mais próximo num raio de 10 metros (dos pontos do ficheiro do OpenAddresses). Se não houver nenhum ponto nesse raio, recorre-se ao OpenStreetMaps.

Isso que dizes em relação ao projeto da Microsoft é super interessante, mas o Open Street Maps já faz isso, não vale a pena reinventar a roda ;)

image

Além disso esses dados da Microsoft estão a ser alimentados para o Open Street Maps

Estive também a confirmar e sim, tens razão, o ficheiro da Microsoft tem apenas os polígonos dos edifícios, quanto muito seria interessante ter uma página com ambas as camadas sobrepostas, o OSM e o layout dos edifícios realçados

joao commented

@jfoclpf Obrigado pela explicação! Não tinha reparado que o OSM já era recorrido, e que até deverá ser possível obter daí os polignos correspondentes a moradas.

Ainda estou mal habituado a tal ter de ser desenhado manualmente, e só presente em Portugal nos centros das cidades, quando agora tem estas constribuições de grandes empresas.