Imagens Formas De Relevo - Imagens Formas De Relevo - BRAINCP
Imagens Formas De Relevo - BRAINCP

Como criar imagens de formas de relevo a partir de dados topográficos

A primeira coisa que todo mundo tenta fazer é abrir o software, carregar um DEM e apertar um botão. O resultado geralmente parece uma fotografia aérea mal processada, com sombras irreais e sem textura de terreno. Eu passei meses tentando salvar isso antes de entender o problema. Não é sobre oDEM em si, é sobre como você interpreta os valores de elevação e aplica o sombreamento. Vamos começar pelo que realmente importa: a fonte de luz. Na cartografia tradicional, o padrão é 315 graus (noroeste) com 45 graus de elevação. Isso não é Arbitrary. É o padrão ISO 5454 e funciona porque o olho humano está acostumado a ver a luz vindo do noroeste. Quando você inverte para 135 graus, o terreno parece flutuado, como se estivesse sendo visto de baixo. Eu já vi gente usar isso de propósito para criar visualizações artísticas, mas para mapas técnicos, é erro de principiante.

Download de ferramentas e fontes de dados

Para gerar imagens formas de relevo de qualidade, você precisa de dois ingredientes: um Modelo Digital de Elevação (MDE ou DEM) e um processador. A fonte gratuita mais confiável hoje é o USGS Earth Explorer, que entrega dados do SRTM com resolução de 30 metros para a maior parte do globo. O Copernicus DEM oferece 12,5 metros onde disponível. Para o Brasil, a SNHI tem dados LiDAR regionais, mas a cobertura é irregular. O software pode ser o QGIS, que é gratuito e roda em Linux, Windows ou macOS. No QGIS, o caminho é Raster Análise de Relevo Relevo. Mas o QGIS não é a única opção. O GRASS GIS tem o comando r.relief, que é mais rápido para grandes extensões. Eu uso o r.relief quando preciso processar mais de 50 km² de uma vez, porque o plugin do QGIS trava em alguns casos.

Há também a opção via linha de comando com Python e GDAL. Se você já trabalha com scripts, é mais eficiente. O código é simples: gdaldem relievemask input.tif output.tif -z 2 -s 1.0 -compznor. O parâmetro -z controla o exagero vertical. Valores maiores que 2 criam terrenos dramáticos, mas distorcem a forma real. Eu uso 1.5 como padrão para mapas de estudo, porque mantém a proporção sem achatamento excessivo. Agora, sobre o problema que eu encontrei e que nunca vi bem documentado: dados SRTM na região amazônica têm buracos de nuvens. O SRTM usa radar, então nuvens densas geram valores de elevação zerados ou fantasmas. Se você processar um DEM cru, a imagem terá áreas brancas ou cinza que não correspondem ao terreno. Eu gastei duas semanas entendendo por que meu relevo tinha manchas retangulares perfeitas no meio da floresta. A solução foi usar interpolação bilinear com ogdal_fillnodata antes de gerar o relevo. O comando fica: gdal_fillnodata -ms 50 input_raw.tif output_filled.tif. O parâmetro -ms define o raio de busca em pixels. 50 funciona bem para SRTM, que tem resolução de 30 metros.

👉 Clique no botão abaixo para saber mais sobre o assunto!

Outra armadilha comum é a unitização. Alguns DEMs usam metros, outros feet. O USGS SRTM é sempre em metros, mas dados do NED americano vêm em feet. Se você processar sem converter, o sombreamento ficará completamente errado. Verifique com gdalinfo antes de tudo. A linha "Upper Left" ou "Vertical CRS" revela a unidade. Se estiver em foot, rode gdalwarp -t_srs EPSG:4326 com -tr 30 30 para reamostrar, mas primeiro multiplique a banda por 0.3048 para converter para metros. O processo completo leva, em média, 15 a 20 minutos para uma área de 100 km² usando QGIS em hardware médio. Com GRASS, esse tempo cai para 3 minutos. A diferença não é só velocidade, é controle. O GRASS permite empilhar múltiplas camadas de sombreamento: hillshade principal, contorno suave e textura de aspecto. Eu faço isso quando preciso de mapas topográficos para publicações acadêmicas, porque uma única camada de hillshade nunca captura a complexidade do terreno.

Para aplicar cores, você pode usar o modelo hipsoométrico. Em vez de escala de cinza, cada faixa de elevação recebe uma cor. O QGIS faz isso automaticamente na simbologia do raster: Classificado, com intervalsos de cor fixos. Verde abaixo de 200 metros, amarelo entre 200 e 500, marrom acima de 1000. Ajuste os breakpoints conforme a geografia local. Um mapa do Pantanal com as mesmas cores de uma área montanhosa ficará completamente ilegível. O passo final é exportar. Use 300 DPI mínimo para impressão, 72 DPI para tela. O formato TIFF preserva a qualidade, mas o arquivo fica grande. PNG é mais leve e ainda assim sem perda. Eu normalmente salvo em TIFF para arquivamento e converto para PNG quando preciso compartilhar. O GDAL faz isso com gdal_translate -of PNG input.tif output.png, e leva cerca de 30 segundos para uma imagem de 5000x5000 pixels.

Uma limitação que poucas pessoas mencionam: o sombreamento é uma representação subjetiva. Dois cartógrafos podem gerar imagens diferentes do mesmo DEM, com fontes de luz e intensidades distintas. Não existe uma verdade absoluta. O importante é documentar os parâmetros usados. Coloque no rodapé do mapa: "Hillshade gerado com fonte de luz a 315°, intensidade 1.0, exagero vertical 1.5". Sem isso, a imagem perde credibilidade científica. Se você precisa de algo mais automatizado e tem dezenas de áreas para processar, o script Python abaixo resolve. Ele baixa o DEM do USGS, preenche buracos, gera o hillshade e exporta em TIFF, tudo em uma execução. O tempo médio de processamento é de 8 minutos para 200 km².

O código está disponível gratuitamente, mas a lógica por trás dele é o que realmente importa. Entender cada parâmetro é mais valioso do que copiar e colar. Quando o resultado não sai como esperado, quem sabe o que faz cada flag consegue corrigir em minutos. Quem apenas executa perde horas caçando erros que poderiam ser evitados.