DEM 및 DSM을 단일 래스터로 병합
먼저, 나는 이것에 완전히 새로운 것이므로 어휘가 부족해서 이것이 조금 불분명하다면 나에게 드러내주세요.
두 개의 래스터 레이어 (DEM 및 DSM)가 있습니다. DEM 레이어는 큰 직사각형 영역을 포함하는 반면 DSM은 동일한 영역 (도시 부분)의 일부만 포함하고 영역의 모양은 복잡한 다각형입니다.
DEM과 DSM의 모든 정보를 포함하는 단일 래스터를 생성하고 싶습니다. 이 두 가지를 병합하려고하면 유효한 결과 (모든 것이 잘 정렬 됨)가 표시되지만 DSM이 DEM에 투영되는 것처럼 보이며 이로 인해 간격이 생깁니다.
첨부 된 이미지가 상황을 명확히 할 수 있기를 바랍니다. 아래에서 3D보기 (위) 및 2D보기 (아래)에서 DEM 및 DSM 래스터를 병합 한 결과를 볼 수 있습니다.
추신 : GRASS를 사용하려고 r.patch했지만 안타깝게도 UI가 QGIS 3.10에서 레이어 순서를 선택할 수 없습니다.
답변
@MrXsquared가 말했듯이 먼저 데이터가 아닌 문제 또는 null 문제를 해결해야한다고 생각합니다. 이것은 매우 일반적이며 데이터 유형과 래스터 생성 방법에 따라 다릅니다.
이 웹 사이트에서 검색하여 해결 방법을 찾을 수 있습니다.
Null 값 이 QGis 에서 인식되는 경우 (예 : -9999 ( SAGA 사용 )). Raster Calculator두 래스터의 간단한 합계를 사용하여 절차를 수행 할 수 있습니다. 그런 것 :
(@dsm > 0 ) * (@dem + @dsm)
작업 설명 :
왼쪽에서 오른쪽으로 읽으십시오. 첫 번째는 null 값을 제외하는 조건부입니다. 그런 다음 곱하기 연산자가 조건을 충족하는 픽셀에 할당을 수행하여 두 래스터의 합계 결과를 할당합니다.
조건을 충족하지 않는 항목을 처리하기 위해 다른 연산을 합계 기호로 연결할 수 있습니다. 다음과 같이 표시됩니다.
(@dsm > 0) * (@dem + @dsm) + (@dsm < 0) * @dem
래스터 계산기에서 DEM의 확장을 지정합니다. 데이터 없음의 값에 따라이 작업을 변경할 수 있습니다.
그러나 데이터 없음의 값으로 인해 작업을 수행 할 수없는 경우 먼저 번역 프로세스 또는 처음에 말씀 드린 다른 옵션으로 변경해야합니다.
해결책 1 :
r.patchDSM 및 DEM 파일이 알고리즘에 올바르게 입력되면 문제를 해결했습니다. 불행히도 UI에서 파일 순서를 변경하는 것은 명확하지 않습니다. 확인을 클릭하기 전에 선택 창에서 순서대로 드래그해야합니다.
해결책 2 :
@MrXsquared가 초기 게시물의 주석에서 설명했듯이 "nodata area"가 데이터 (제 경우에는 0)로 설명 될 때이 문제가 발생합니다. 이 경우 r.null에도 문제가 해결되지만 제거하려는 데이터의 가치에 대한 사전 지식이 필요합니다. 시행 착오 (-9999, NULL, 0 등)로 이것을 파악해야했습니다.
GIS 데이터에 대한 제한된 지식으로 인해 r.patch가 문제를 해결하는 동안 실제로 데이터를 수정하기 때문에 r.null 솔루션이 더 좋아 보입니다. 그러나 해수면에서 작업하는 경우 몇 가지 문제가 발생할 수 있습니다!
에 의한 결과 r.null
최종 결과 merge
모두 감사합니다!