GRASS의 v.kernel을 어떻게 사용합니까?


12

GRASS의 v.kernel 사용법에 대해 잘 알고 있습니다.

약 250 만 포인트의 벡터 레이어가 있습니다. v.kernel을 사용하여 집중도를 표시하는 히트 맵을 만들고 싶습니다. 점이 겹치는 가변 인스턴스가 있고 때로는 겹치는 경우가 많기 때문입니다.

GRASS에서이 벡터 레이어를 이미 얻었으며 제대로 표시됩니다.

여기와 다른 포럼에서 본 내용을 기반으로 GRASS의 v.kernel 명령을 사용해 보았지만 분홍색 사각형 인 래스터 출력 외에는 아무것도 할 수 없었습니다.

내가 사용하는 명령은 다음과 같습니다.

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

나는 stddeviation 을 1000000에서 .000001 까지 모든 종류의 값으로 변경했으며 아무런 영향을 미치지 않았습니다.

나는 v.kernel 문서를 반복해서 읽었으며 실제로 무엇을 얻고 있는지 이해하지 못합니다. 적어도 지침은 난해한 개념에 관한 것이지 실용적이지 않습니다. 나는 또한 소스 코드를 확인했으며 실제로 그것을 이해하지 못한다. 예, C를 읽을 수 있습니다. 문제는 GRASS GIS의 다른 곳에 정의 된 많은 것들에 달려 있다는 것입니다.

또한 많은 Google 검색을 수행했으며 포괄적 인 가이드를 찾을 수 없습니다. 내가 얻는 모든 것은 v.kernel doc / man 페이지의 사본이나 흩어져있는 사람들이 소란없이 일하게 된 사람들입니다.

또한 커널 밀도 추정 (KDE) 개념을 확인한 후에도 v.kernel 명령을 사용하는 방법을 보지 못했습니다. 이 명령은 KDE를 구체적으로 해석 한 것으로 보입니다. 스위치는 일반적인 KDE 개념과 잘 맞지 않는 것 같습니다.

GRASS 제품 개발에 익숙하지 않은 사람이 어떻게 v.kernel 명령을 사용할 수 있습니까? 사용 가능한 일반 언어 번역이 있습니까?

답변:


9

v.kernel알고리즘은 래스터 맵의 각 셀에 대한 벡터 점의 밀도를 계산합니다. 지금까지 벡터 객체 만 사용했다면 region, 범위를 정의 할뿐만 아니라 래스터 해상도를 적절하게 region설정하지 않았을 가능성이 있습니다. 수단 v.kernel알고리즘은 전체지도를 통해 하나의 값으로 커널 밀도를 계산합니다. 벡터 맵은 해상도 설정에 신경 쓰지 않기 때문에 래스터 맵을 사용하지 않으면 이와 같은 영역 설정이 좋습니다. 지역 설정을 사용하여 확인 g.region -p하고, 경우 rowscols, 1로 설정되어 사용하여 해상도를 증가

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

또는

g.region res=<length>

여기서 <length>해상도 단위의 길이는지도 단위입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.