Criando serviço da web de geocodificação / gazeta?


14

Gostaria de escrever um serviço da web de geocodificação para genealogia em Java. Porque é para genealogia, não preciso descer até o nível da rua. Eu só preciso ir até o município.

Analisando dados de genealogia, nomes com erros ortográficos são muito comuns. As pessoas também usam muitas abreviações fora do padrão. Por exemplo, para o condado de Baltimore, pode parecer com:

  1. Baltimore
  2. Baltimore County
  3. Baltimore Co
  4. Baltimore Cty

Respostas:


10

Eu não acho que essa pergunta seja explicitamente geográfica, porque você só está interessado em nomes, então você pode perguntar no Stack Overflow . Você pode responder sua pergunta com duas informações: o estado e o nome do município corrigido. Para executar as correções, você provavelmente desejaria usar a distância de Levenshtein ( exemplo & implementação em java ) para corresponder os dados difusos aos valores corrigidos.


+1 Isso provavelmente é verdade. Levenshtein parece um bom lugar para começar e parece que o Postgres ainda o suporta. Obrigado.
Jay Askren

Eu acho que combinar a distância de Levenshtein com os dados de Geonames ( geonames.org ) pode funcionar para mim. Obrigado.
Jay Askren

5

Um serviço de geocodificação precisa de dados geográficos geográficos, um gazetteer associado (para lidar com alternativas de nomes e nomes) e uma interface do usuário (para mediar a pesquisa). Para um geocoder reverso, você precisará adicionar um validador de topologia. Para Java, o JTS Topology Suite de código aberto seria a escolha natural: http://www.vividsolutions.com/jts/jtshome.htm

As geometrias de condados dos Estados Unidos podem ser encontradas no Censo: http://www.census.gov/geo/www/cob/co2000.html

Para começar no gazetteer, o US Board on Geographic Names possui um banco de dados: http://geonames.usgs.gov/

Criar um banco de dados sólido de gazetteers e algoritmos de tecelagem que toleram correspondências aproximadas de pesquisa são a parte difícil.


Os algoritmos são o que estou procurando.
Jay Askren

Consultas sobre algoritmos de similaridade semântica podem ter mais respondentes no site principal do stackoverflow.
Glennon


1

O Google tem uma ótima API para geocodificação , se você pode seguir os termos de serviço. A demonstração básica pode ser encontrada aqui .

A utilização do serviço está sujeita a algumas limitações, mas o resultado é intuitivo, rápido, preciso e familiar para a maioria dos usuários. Isso permitirá que você se concentre no desenvolvimento da parte genealógica do seu serviço.


Eu realmente gostaria de hospedar tudo em casa e não depender de uma API externa.
Jay Askren

Então, você está procurando um banco de dados de geocodificação licenciado de código aberto?
Adam Matan
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.