Brazil/Utilizações Governamentais/De precisão
- ATENCAO, revisar tudo em função da Grade Estatística IBGE (projeção Albers)
Prefeituras, cartórios e outros órgãos devem cumprir com normas mais rigorosas de mapeamento e precisão de medida. Talvez o tema mais delicado, devido à quantidade de casos, seja o mapeamento de lotes urbanos, finalidade para a qual o OSM raramente é usado, mas há uma pressão crescente de uso neste sentido.
As questões relativas a precisão, neste contexto pode ser de três tipos:
- precisão dos dados na importação de mapas oficiais (ex. do IBGE para o OSM).
- precisão dos dados do mapeador usual do OSM Brasil, baseados em GPS e fontes similares.
- incompatibilidade entre as normas oficiais brasileiras e as configurações adotadas no OSM
Amostras para avaliação dos problemas
Exemplos de caso, servem de referência para os testes e entendimento das demandas por precisão:
- Coordenadas oficiais do Marco Zero de São Paulo (praça da Sé),
as coordenadas são fornecidas pelo governo (? ref?) com precisão milimétrica, e estudos ou aparelhos na região pode ser calibrados por ela. - uma linha reta de ~10m passando pelo Marco Zero de São Paulo (praça da Sé), e a comparação da transformação desses 10m em diferentes sistemas.
- uma linha reta de ~300m traçada sobre a Ponte Internacional da Amizade.
Comparação similar, mas numa região diferente do país. Também ajuda a exemplificar casos onde podem surgir "disputas oficiais" — imaginar que 1mm de erro na única referência em 100km de fronteira (sobre o rio) significa perda de área de 100m2 ou mais de território nacional. - BBOX de São Paulo, capital, um retângulo de ~3000 km².
Cada um desses exemplos codificado em SQL PostGIS no final (anexo abaixo), ou em JSON.
Padrões
Padrões brasileiros ou oficialmente utilizados pelo governo brasileiro:
- Datum código EPSG:4674: Sistema de Coordenadas Geográficas SIRGAS 2000 (ou GCS_SIRGAS2000 – Geographic Coordinate System, SIRGAS 2000 Datum).
- no dia-a-dia trabalha-se com
SIRGAS2000=WGS84
, fato registrado: ref/epsg/4674 faz bypass explicito "TOWGS84[0,0,0,0,0,0,0]".
- no dia-a-dia trabalha-se com
- Coordenadas UTM, zonas 18N a 20N e 18S a 25S (ref1, ref2).
- ...
As aplicações governamentais mais exigentes em termos de precisão são principalmente aquelas vinculadas a edificações (encaixe de plantas de grandes edificações no espaço geográfico), agrimensura (terrenos) e registros imobiliários (limites entre terrenos ou edificações vizinhos).
A seguir Problemas e aferições, fazendo uso dos exemplos e dos padrões, cada uma das "questões relativas a precisão" é abordada com mais detalhes e testes são ilustrados através dos exemplos de caso.
Precisão na importação
O padrão brasileiro para Elipsóide de referência é o SIRGAS2000.
Dados 2D
Para aplicações usuais, no plano, o SIRGAS2000 foi concebido para ser equivalente ao WGS84.
Em sua versão mais atualizada o SIRGAS2000 recebe o código de urn:ogc::EPSG::4989
(além disso outros códigos equivalentes são o 4674 e o 4988). Independente da versão estes códigos EPSG do SIRGAS2000, no plano, são sinônimos exatos do WGS84 (ou seja EPSG 4326).
Dados 3D
Apesar de não ser o padrão usual (WGS84), alguns orgãos oficiais distribuem seu material com ele. Como o OSM faz uso do WGS84, e fazemos o processamento com PostGIS, tecnicamente não há barreira alguma; havendo ou não diferença, toda a precisão será mantida se o protocolo recomendado for seguido.
A recomendação de conversão de dados SIRGAS2000 para WGS84 é a seguinte:
- rec1. Se os dados forem 3D e houver demanda de precisão, ou seja, se estiver trabalhando com coordenada Z além das horizontais, a correção do SIRGAS2000 pode vir a ser necessária. O uso de dados 3D georeferenciados com SIRGAS2000 ainda não foi avaliado pela Comunidade OSM Brasil, nem foi encontrada recomendação explícita do IBGE. PS: caso precisar ajude a desenvolver esta recomendação.
- rec2. Manter nos scripts de importação automática a função ST_Transform(geometria,datum) para transformar com precisão SIGAS2000 em WGS84, ou seja, ST_Transform(geometria,4326).
NOTA: apesar do bypass explicito "TOWGS84[0,0,0,0,0,0,0]", conforme no PostGIS há um pequeno risco de "efeito colateral", a rara e eventual mudança (uma a cada milhão de coordenadas processadas) por conta de algum arredondamento no bit menos significativo do valor de ponto flutuante. Isso não afeta o valor real medido da coordenada, que tem erro superior e é permitida tal variação de bit em trocas de dados. A transformação oferece risco simplesmente de ST_Equals() resultar em falso (ser interpretado como geometria diferente da original), por exemplo ao se verificar nova versão de uma geometria.
- rec3. em caso de praticidade ou necessidade (nota de "efeito colateral"), se o operador estiver ciente, pode-se equiparar manualmente (recomenda-se não deixar isso "escondido" num script), atribuindo WGS84 ao que antes era SIGAS2000, sem efetuar transformação.
Precisão de coordenadas de marcos de referência
Alguns marcos geográficos possuem alta precisão de posicionamento, para que possam ser publicamente utilizados como pontos de controle em mapas e imagens, ou na calibração de equipamentos. Exemplo: o Monumento a Washington, nos EUA, foi confirmado com precisão de fração de milímetros.
É importante que se tenha um relatório com procedimentos e resultados para marcos localizados no território brasileiro, por exemplo Marco da Praça da Sé, capital de SP.
Elipsóide de referência na calibração de marcos de referência
Depois da revisão do WGS em 2004, deixaram de existir parâmetros de transformação entre SIRGAS2000 e WGS 84... Infelizmente não há uma norma afirmando que são 100% equivalentes, apenas afirma-se vagamente que podem ser equiparados, sem expessar as condições em que essa equiparação seria permitida.
Segundo a nota de esclarecimento do FAQ-IBGE "... basta o usuário referir seus resultados ao SIRGAS2000 que, automaticamente, estará gerando resultados em WGS 84 (e vice-versa)", sec12 do FAQ-geodesia. Ma sec. 11 reforça que "SIRGAS2000≡ WGS" (sinal "=" com 3 linhas é o sinal equivalência).
O documento cria ambiguidade ao afirmar todavia ao afirmar que "são praticamente iguais", não exatamante equiparados. Da leitura da introdução da sec. 11, "... SIRGAS2000 e WGS 84 ...são praticamente iguais ... DX = 0, DY = 0 e DZ = 0", e à luz de uma auditoria complementar (exemplo ufrgs.br/engcart), pode-se inferir que a equiparação vale porque arredondamos valores (DZ, DY e DZ) da ordem de meio metro para zero.
Conclui-se que "em medidas de precisão" (mas fica a pergunta "qual precisão?") esse arredondamento não vale.
Dada a natureza do problema geodésico, o erro poderá variar conforme diferentes regiões do Brasil, algumas sendo mais afetadas, outras menos. É importante portanto indicar as direções ou distribuição espacial desse erro.
Precisão em medidas de lotes urbanos e aferições oficiais
Conforme exemplificado, pode-se usar a linha reta de 10m como padrão para conferir quantitativamente quanto esses 10m são afetados.
Uso oficial das coordenadas UTM
A latitude/longitude (latlong) sempre teve adoção ampla, e isso veio a se reforçar com a ISO 6709 na década de 1980. Com latlong não há o problema da projeção. Por outro lado mapas e aferições de lotes urbanos sempre foram realizados com referência no plano, e no Brasil a planificação padronizada se deu com o uso da projeção UTM e da sua grade padronizada.
Até a década de 2000, no Brasil, os mapas construídos em escalas 1:250000 e maiores (por IBGE e DSG), se encontravam em projeção UTM. No mapeamento municipal também era comum a projeção UTM; exemplos de leis municipais de São Paulo que citam coordenadas UTM:
- DECRETO Nº 51.085, DE 8 DE DEZEMBRO DE 2009, UTM e "Datum SAD-69 N".
- LEI Nº 13.136, 09 DE JUNHO DE 2001, UTM e "Sistema Cartográfico Metropolitano (EMPLASA), na escala 1:10.000".
Em outras aplicações, não-oficiais mas com certificação oficial, tais como levantamentos topográficos (pequena porção da superfície da Terra) e projetos de engenharia, é importante o uso de sistemas de coordenadas ortogonais, e a escolha natural é também o padrão UTM:
- levantamento cartográfico com UTM ou UTM Regional (RTM): distâncias inferiores a ~25 km, por exemplo, pequenos municípios, minifúndios, etc.
- projetos de Engenharia com RTM ou UTM local (LTM): é fundamental que se adote um sistema de coordenadas ortogonal, e muitas vezes com precisão maior, onde se faz necessário o uso de uma projeção centrada localmente (no município)
Grade Estatística oficial
- Resumo de Grade Estatística Oficial
Apesar de sua relevância, o Brasil só foi estabelecer a sua Grade Estatística em 2015, quando o IBGE lançou a sua proposta de grade com os dados do censo de 2010. A proposta foi bem aceita e hoje pode-se considerar como a "grade oficial", ou seja, a grade a ser utilizada em diversas outras aplicações, que não apenas a disseminação de dados do Censo. A grade com dados de população pode ser baixada do ftp do Censo 2010 do IBGE.
O SINTER vem aí
O novo padrão para lotes urbanos será o SINTER, mas como não foi lançado, as informações ainda andam desencontradas:
- "oito centímetros de raio" em forest-gis.com/2018/03
- "Precisão cartográfica de 4 cm no urbano e 50 cm no rural" em sites mais antigos.
Referências
Sobre "SIRGAS vs WGS":
- Coordenada de marco de referência com precisão sub-milimétrica, "2013–2014 Survey of the Washington Monument, Washington, D.C.", https://www.ngs.noaa.gov/PUBS_LIB/NOAA_TR_NOS_NGS_51_2015_02_16.pdf
- valor das diferenças WGS84 e SIRGAS2000 http://www.ufrgs.br/engcart/Teste/refer_exp.html
Sobre UTM: (revisar)
- https://www.lapig.iesa.ufg.br/lapig/cursos_online/gvsig/a_projeo_utm.html
- Exemplo de relatório de marco geográfico em Sampa (marco V-2548 EG = RN-2548 EG)
- Introdução e boas ilustrações sobre UTM, http://www.leg.ufpr.br/lib/exe/fetch.php/disciplinas:verao2007:pdf:sistema_utm.pdf
- Estudo bom sobre áreas de minifundios (INCRA) inferidas por UTM ao invés RTM https://www3.ufpe.br/cgtg/SIMGEOIV/CD/artigos/Todos_Artigos/185_3.pdf
- resumo zonas UTM no Brasil https://www.lapig.iesa.ufg.br/lapig/cursos_online/gvsig/a_projeo_utm_no_brasil.html
ANEXO
Exemplos expressos em SQL PostGIS. Fontes na Wikidata e Ponte (nodes 3421384769 e 3838800747). Preparo da tabela das amostras listadas acima, com carga do samples.json original:
CREATE TABLE amostras (
id serial, name text, geom geometry
);
INSERT INTO amostras (name,geom)
SELECT value->>'name',ST_GeomFromGeoJSON(value->>'geom')
FROM jsonb_array_elements($$
[
{"name":"SP/SaoPaulo-BBOX",
"geom":{"type":"Polygon","coordinates":[[
[-46.8264088,-24.007],[-46.8264088,-23.3570001],
[-46.3650899,-23.3570001],[-46.3650899,-24.007],
[-46.8264088,-24.007]
]]}
},
{"name":"SP/SaoPaulo-MarcoZeroPt",
"geom":{"type":"Point","coordinates":[-46.633956,-23.550385]}
},
{"name":"SP/SaoPaulo-MarcoZeroLinha",
"geom":{"type":"LineString","coordinates":[
[-46.633956,-23.550385],[-46.633969,-23.5503]
]}
},
{"name":"PonteLadoBR-Linha",
"geom":{"type":"LineString","coordinates":[
[-25.5094927,-54.5981432],[-25.5094742,-54.6008332]
]}
}
]
$$::jsonb)
;
Resultado para conferir registro correto das geometrias, com select name,st_area(geom,true),ST_Length(geom,true) from amostras
name | st_area | st_length |
---|---|---|
SP/SaoPaulo-BBOX | 3387448476.86884 | 0 |
SP/SaoPaulo-MarcoZeroPt | 0 | 0 |
SP/SaoPaulo-MarcoZeroLinha | 0 | 9.50701455031506 |
PonteLadoBR-Linha | 0 | 299.442793027803 |
Consulta para conferir equiparação entre WGS84 e SIRGAS200. Acrescentando o SAD69 apenas a título ilustrativo, mostrando comportamento de caso com não-equivalência.
WITH transfs AS (
SELECT name, ST_SetSRID(geom,4326) geom_wgs84,
ST_Transform(ST_SetSRID(geom,4674),4326) geom_sirgas,
ST_Transform(ST_SetSRID(geom,4618),4326) geom_sad69
FROM amostras
)
SELECT name, st_area(geom_wgs84,true) - st_area(geom_sirgas,true) diff_area_sirgas,
st_equals( geom_wgs84,geom_sirgas) is_equal_sirgas,
st_area(geom_wgs84,true)-st_area(geom_sad69,true) diff_sad69,
st_equals( geom_wgs84,geom_sad69) is_equal_sad69
FROM transfs
;
Resultado:
name | diff_area_sirgas | is_equal_sirgas | diff_sad69 | is_equal_sad69 |
---|---|---|---|---|
SP/SaoPaulo-BBOX | 0 | t | -31093.7349090576 | f |
SP/SaoPaulo-MarcoZeroPt | 0 | t | 0 | f |
SP/SaoPaulo-MarcoZeroLinha | 0 | t | 0 | f |
PonteLadoBR-Linha | 0 | t | 0 | f |
Grades de referência e sua padronização
Grades de discretização permitem que coordenadas contínuas sejam discretizadas e tratadas computacionalmente no processamento de mapas e objetos de um banco de dados geográfico. As células da grade também podem ser utilizadas como "nomes" ou identificadores das regiões nela delimitadas. Por isso as grandes de discretização são padronizadas.
O "globo", no conceito Grade Discreta Global, pode ser relativo à "cobertura por grade" de pelo menos três objetetos distintos:
- A superfície topográfica da Terra, onde a "realidade geográfica" é mensurada com todas as suas coordenadas, (φ, λ, z), ou seja, mede-se também a elevação z em relação ao nível do mar (padronizado pelo elipsóide de referência). Grades de modelagem de elevação de terreno cobrem essa superfície.
- Um elipsóide de referência (faz papel de "geóide simplificado padrão"). As grades de latitude-longitude tradicionais são traçadas sobre essa superfície. A coordenada z é zero para toda a grade, podendo ser omitida, (φ, λ).
- Uma superfície de projeção. Normalmente, as coordenadas geográficas (φ, λ) são projetadas (com alguma distorção) no plano de mapeamento 2D com coordenadas cartesianas (x, y). No Brasil os objetos mais usados são os cilindros do padrão UTM.
Ao trabalhar com uma grade, é importante especificar qual desses objetos (1, 2 ou 3) foi coberto por ela.