Como você usa o v.kernel do GRASS?

12

Estou confuso sobre como usar o v.kernel do GRASS.

Eu tenho uma camada vetorial de cerca de 2,5 milhões de pontos. Quero fazer um mapa de calor usando o v.kernel para mostrar concentrações, já que tenho instâncias variáveis ​​com pontos sobrepostos, às vezes enormes sobreposições.

Eu já obtive essa camada vetorial no GRASS, e é exibida muito bem.

Eu tentei usar o comando v.kernel do GRASS com base no que vi aqui e em outros fóruns, e não consigo fazer nada além de gerar uma varredura que é apenas um quadrado rosa.

Aqui está o comando que estou usando:

v.kernel --verbose input=master_grass7 output=master_grass7a_heatmap stddeviation=.0001

Eu variei o desvio padrão para todos os tipos de valores de 1000000 a .000001, e isso não teve efeito.

Eu li a documentação do v.kernel repetidamente e realmente não entendo o que está acontecendo. Pelo menos, as instruções são sobre conceitos esotéricos, nada prático. Também verifiquei o código-fonte e também não o entendo. Sim, eu posso ler C. O problema é que depende de muitas coisas definidas em outras partes do GRASS GIS.

Também fiz muitas pesquisas no Google e não consigo encontrar um guia completo. Tudo o que estou recebendo são cópias dispersas da página doc / man do v.kernel ou pessoas que aparentemente conseguiram que ela funcionasse sem problemas.

Também verifiquei o conceito de estimativa de densidade de kernel (KDE) e, mesmo assim, não vejo como usar o comando v.kernel. Esse comando parece ser uma interpretação específica do KDE; suas opções não parecem corresponder bem aos conceitos genéricos do KDE.

Voltando à questão principal aqui: como alguém que não é íntimo do desenvolvimento de produtos GRASS pode usar o comando v.kernel? Existe uma tradução em idioma comum disponível?

Aren Cambre
fonte

Respostas:

9

O v.kernelalgoritmo calcula a densidade de pontos vetoriais para cada célula de um mapa raster. Se você, até agora, usou apenas objetos vetoriais, é provável que não tenha configurado regionadequadamente (que não apenas define as extensões, mas também a resolução de varredura): Você provavelmente regionconfigurou apenas uma linha e uma coluna, o que significa que o v.kernelalgoritmo computará apenas a densidade do kernel como um valor único em todo o mapa. Uma configuração de região como esta é boa se você não usar nenhum mapa de varredura, porque os mapas vetoriais não se importam com as configurações de resolução. Verifique as configurações da sua região usando g.region -p, e se rowse colsestiver definido como 1, aumente a resolução usando

g.region rows=<number of rows> cols=<number of columns>

ou

g.region res=<length>

onde <length>é o comprimento de uma célula de resolução em unidades de mapa.

Jake
fonte