SIRGAS 2000, WGS 84 e o polígono que anda 3 metros

O polígono do CAR não cai em cima do talhão no Sentinel. Três metros. Às vezes cinco. Você troca o SRC, o basemap, o plugin. O vizinho no grupo jura que é “porque o satélite tá em WGS 84 e o Brasil é SIRGAS”. Não é.

O IBGE é explícito nisso desde a Resolução 01/2005 e no FAQ do PMRG: para posicionamento GNSS depois de 1º de janeiro de 1994, WGS 84 e SIRGAS 2000 são considerados idênticos para fins práticos. Não há parâmetros oficiais de transformação entre os dois. ΔX = ΔY = ΔZ = 0. Quem inventa um towgs84 de três metros entre EPSG:4326 e EPSG:4674 está resolvendo um problema que o referencial não tem.

SIRGAS 2000 é o oficial do Brasil. Resolução do IBGE em fevereiro de 2005. Período de transição acabou em 25 de fevereiro de 2015. WGS 84 é o que o GPS fala, o que o Google usa, o que o tile do Sentinel-2 nasce. Elipsoide quase o mesmo; o achatamento muda na casa do centímetro. Pra pixel de 10 m, os dois se encostam.

Então de onde vem o deslocamento que você tá vendo?

O que anda ~65 m — e o que anda 3

SAD 69. Esse sim desloca.

Parâmetros oficiais SAD 69 → SIRGAS 2000 (RPR 01/2005), observação GPS depois de 1994:

ΔX = -67,35 m
ΔY = +3,88 m
ΔZ = -38,22 m

No chão isso vira da ordem de 65 metros, nordeste, variando um pouco conforme a região. Amazônia a incerteza da transformação por parâmetro piora (EPSG 15485 declara até 5 m na bacia). Córrego Alegre é pior ainda. Se o seu “três metros” na verdade são sessenta, para de discutir WGS 84. A camada antiga veio em SAD 69 e ninguém transformou. Só mudou a etiqueta.

Três metros é outro filme. Quase sempre operação, não datum.

Atribuiu SRC em vez de reprojetar. O clássico. Camada sem .prj, QGIS pergunta, você clica em SIRGAS 2000 UTM 23S porque “é o do projeto”. Os números dentro do arquivo eram lat/long. Ou eram UTM 22S. O polígono voa. Definir o SRC (Assign layer CRS) só conta uma história sobre o arquivo. Reprojetar (Reproject layer / ogr2ogr / gdalwarp) muda os números. Confundir as duas coisas é o jeito mais barato de fabricar um offset bonito.

Outro: projeto em EPSG:4326, medição em graus, área em “metros” que não são metros. Ou projeto em EPSG:3857 (Web Mercator do XYZ do Google) e você compara o vértice do CAR com o pixel do satélite no fundo da tela. O basemap está em mercator. O vetor está em UTM. O QGIS alinha na hora, on the fly. Você mede em cima da imagem e jura que o INCRA errou 3 m. Desliga o XYZ e mede vetor contra vetor, no CRS do projeto, em metro. O número muda.

Sentinel-2 L1C/L2A vem em UTM / WGS 84. CAR, SICAR, TerraBrasilis, muita base estadual: EPSG:4674. Sobrepor os dois no QGIS 4.2 com reprojeção ligada tem que encostar na casa do metro, se os dois arquivos estiverem honestos. Residual de geolocalização do produto óptico existe. Pixel de 10 m também. Nem tudo que não cola no meio do pixel é briga de datum.

Já vi gente “corrigir” Sentinel aplicando um deslocamento manual de 3,2 m pra casar com o limite do CAR. O CAR é autodeclarado. O limite do vizinho sobe 8 m no shapefile do estado do lado. Você está amarrando um sensor a um polígono que o dono desenhou no Softex. Não faz isso.

Os códigos que você precisa decorar

Geográfico:

  • EPSG:4674 — SIRGAS 2000, lat/long. Oficial.
  • EPSG:4326 — WGS 84, lat/long. GPS, GEE, KML, muita API.
  • EPSG:4618 — SAD 69 geográfico. Base velha. Trata com respeito e ProGriD.

UTM SIRGAS 2000 (sul):

  • 31981 fuso 21S
  • 31982 fuso 22S
  • 31983 fuso 23S
  • 31984 fuso 24S

O equivalente WGS 84 é 32721, 32722, 32723, 32724. Se o projeto é no Brasil e o entregável é laudo, eu deixo o projeto em SIRGAS UTM da zona e deixo o Sentinel reprojetar na tela. Não fico convertendo tile inteiro “pra ficar brasileiro” sem necessidade. gdalwarp de uma cena S2 só pra trocar 32723 por 31983 é ritual. Os eixos UTM são os mesmos; o datum, na prática, coincide.

Fuso errado não dá 3 m. Dá quilômetro. Santa Catarina e Paraná na borda 22/23, oeste de SP, oeste do PR: olha o fuso antes de olhar o datum. Quem já exportou um perímetro de pivô no oeste paulista em 23S e abriu em 22S sabe. Não é sutil.

O que fazer no QGIS sem teatro

Abre o projeto. Canto inferior direito: CRS. Se estiver EPSG:4326 porque o QGIS nasceu assim, troca. Projeto novo no Brasil: SIRGAS 2000 UTM da zona. Camada nova herda isso.

Clica na camada. Propriedades → Fonte. O SRC que está escrito é o que o arquivo diz que é. Não o que você gostaria. Se o .prj mente, aí sim você atribui. Se o .prj está certo e você quer outro sistema, reprojeta e salva outro arquivo. GeoPackage. Um arquivo, várias camadas, SRC dentro do GPKG, sem o circo do .shp + .shx + .dbf + .prj que viajou separado no e-mail.

Linha de comando, quando o QGIS vira caixa-preta:

Bash

ogr2ogr -t_srs EPSG:31982 destino.gpkg origem.shp
gdalwarp -t_srs EPSG:31982 -r near -dstnodata 0 in.tif out.tif

-t_srs reprojeta. -s_srs só declara origem quando o arquivo não tem. Se você usar -s_srs errado, fabricou o offset com as próprias mãos.

SAD 69 de verdade: ProGriD no site do IBGE, grade NTv2 onde a grade existe, parâmetro da RPR 01/2005 onde não existe. Não confie no “salvar como” do QGIS se a transformação entre 4618 e 4674 aparecer cinza ou com aviso de acurácia de 5 m e você estiver em laudo. Olha qual pipeline o diálogo escolheu. Já vi transformação cair em identidade, o polígono “converte” e não anda. Spoiler: não converteu.

Área e comprimento: só em projetado. Em 4674 o QGIS até calcula se você insistir. O número é lixo útil pra conversa de corredor.

O limite honesto

Pra série de soja no Mato Grosso, máscara de nuvem, MapBiomas, pixel de 10–30 m, tratar 4326 e 4674 como o mesmo chão. O GEE vive em WGS 84. O tile do Sentinel também. Você não vai ganhar acurácia de memorial descritivo “passando pra SIRGAS” um raster de 10 m.

Pra INCRA, licenciamento e qualquer vértice que alguém vai bater com GNSS de verdade: SIRGAS 2000, época e método no relatório, sem atalho. Placa sul-americana anda da ordem de um a dois centímetros por ano. De 2000,4 até agora isso não explica 3 m. Explica por que rede de referência e época aparecem em serviço geodésico sério — e não no seu recorte de Sentinel da terça.

SICAR e alguns sistemas estaduais já pediram upload em WGS 84 geográfico enquanto o restante do Estado entrega base em SIRGAS. Não é contradição pra você resolver no chute. É formulário. Atende o que o campo pede; guarda o original em 4674.

Minha opinião: a mitologia “WGS 84 desloca 3 metros no Brasil” sobrevive porque é mais fácil do que admitir que o .prj estava vazio e o basemap estava em Mercator. O datum oficial é SIRGAS 2000. O satélite não está conspirando. O polígono anda quando o SRC do arquivo é uma história errada sobre os números que estão dentro dele.

Antes de aplicar um deslocamento de 3 m “de correção”, abre a propriedade da camada e lê o EPSG. Se for EPSG:4326 em cima de um CAR que o metadado diz 4674, o problema não é o satélite.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *