QGIS를 사용하여 점에서 선까지의 최단 거리를 계산합니까?


12

QGIS에서 일련의 주소 지점에 대해 가장 가까운 도로에서 거리를 계산하는 가장 좋은 방법은 무엇입니까? (QGIS 2.0.1, Win XP)

이전의 비슷한 질문에 대한 답변을 읽었습니다.

QGIS에서 선과 점 사이의 거리 측정

PyQGIS에서 수직선을 그리시겠습니까?

QGIS에서 점과 다각형 사이의 최소 거리를 계산합니까?

/programming/16448402/distance-of-point-feature-to-nearest-polygon-in-r

그렇지만:

  1. MMQGIS 플러그인은 가장 짧은 (수직) 거리가 아닌 라인 네트워크의 가장 가까운 노드에 대한 거리를 찾습니다.

  2. R과 Python에서 제안한 스크립트는 작은 데이터 세트에 대해 올바르게 작동하며 모델러에서 구현할 수 있지만 내 작업에는 약 135'000 개의 기능이있는 530 개의 지점과 지역 거리 계층이 있으며 모든 기능을 순환 한 다음 가장 짧은 거리를 차지합니다. 모든 포인트는 엄청난 시간이 걸립니다

  3. QGIS 2.0.1에서 GRASS가 작동하는 데 문제가 있습니다 (QGIS의 GRASS가 작동 하지 않음 (Windows XP) ).


1
GRASS 플러그인과 v.distance 도구를 통해 QGIS 1.8.0의 최소 거리를 계산했습니다 . 실행하는 데 약 15 분이 소요됩니다 (그리고 GRASS를 올바르게 설정하고 레이어를 가져 오는 데 걸리는 시간도 포함됩니다 ...). ArcGIS (es, 공간 위치에 의한 결합)가 여전히 왜 그렇게 빠른가?
mic_cord

1
작업에 최적화 된 공간 인덱스와 코드가 필요합니다. 방금 라우팅 라이브러리 (RW Net 4)를 확인하여 거리 네트워크 앱에 대해 초당 2000 회 계산을 수행 할 수 있습니다. 당신과 같은 크기입니다. GRASS 플러그인보다 약 4000 배 더 빠릅니다.
Uffe Kousgaard

3
PostGIS와 빨리 그것을해야
니클라스 따방

1
@mic_cord GRASS 플러그인 v.distance 방법에 대한 자세한 설명을 제공해 주시겠습니까? QGIS 외부에서 GRASS를 사용하여 작업 할 수있는 v.distance를 성공적으로 얻었지만 Processing toolbox (QGIS 2.6) 내에서 작동 할 수 없습니다.
user25976

답변:


6

우리는 비슷한 문제를 해결하고있었습니다. 우리에게 가장 빠르고 빠른 방법은 다음과 같습니다.

  1. 선 레이어 래스터 화 (래스터 / 변환 / 래스터 화 ...)
  2. 근접으로 변환 (래스터 / 분석 / 근접 ...)
  3. 플러그인 포인트 샘플링 도구를 사용하여 래스터에서 모든 포인트의 값을 가져옵니다.

5

QGIS에서 선과 점 사이의 거리 측정 에 대한 답변 중 일부는 NNJoin QGIS 플러그인 ( http://arken.nmbu.no/~havatv/gis/qgisplugins/NNJoin/ )을 권장합니다 . 가장 가까운 인접 공간 결합을 수행하고 결과에 거리를 포함시킵니다. NNJoin의 합리적 대규모 데이터 세트를 처리해야하므로 플러그인, 공간 인덱스를 사용합니다.


Tveite, 나는 당신의 제안을 두 번째로합니다. 이 플러그인이 R의 권장 패키지 (즉, geosphere :: dist2Line)보다 빠르게 작동한다는 사실에 매우 놀랐습니다.
Johanness
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.