Quais são as regras que a função de rasterização Gdal segue para alocar um valor a uma célula?

8

Como a ferramenta de rasterização decide qual valor representar quando uma célula cobre uma área que inclui valores diferentes? Neste caso, preciso de polígonos, mas também gostaria de saber sobre linhas e pontos. Quais são as regras a seguir.

Andre Wise
fonte

Respostas:

7

Olhando para a fonte aqui e aqui , parece que o GDAL começa no topo da lista e desce, então fica na ordem em que as formas são armazenadas, substituindo todos os dados armazenados em um determinado pixel. Não tenho certeza se ele faz alguma coisa com índices de atributo.

Termo aditivo

O rasterizador por padrão apenas usa o centro do pixel para polígonos, ou o algoritmo de Bresenham para linhas (presumivelmente os pontos são o vizinho mais próximo). Parece haver uma opção para preencher qualquer pixel tocado que possa, eu acho, ser fornecido na linha de comando. Há um comentário para esse efeito no código :

462  * <dt>"ALL_TOUCHED":</dt> <dd>May be set to TRUE to set all pixels touched
463  * by the line or polygons, not just those whose center is within the polygon
464  * or that are selected by brezenhams line algorithm.  Defaults to FALSE.</dd>

Portanto, não há mistura e não tenta fazer nada inteligente.

MerseyViking
fonte
Obrigado pela resposta. Deve ser útil mais tarde. O que eu gostaria de saber é como a função rasterize seleciona o valor representativo da forma. Utiliza o valor do ponto central ou a cobertura percentual mais alta e como lida com uma situação 50/50, etc? A fonte ainda é um pouco complicada para eu entender, desculpe.
Andre Sábio