GIS

QGIS 3.4에서 그래픽 모델러를 이용하여 유역 추출 모델 개발하기

유병혁 2019. 12. 8. 01:10

안녕하세요? 이번 글은 QGIS 3.4에서 그래픽 모델러를 이용하여 유역 추출 모델을 개발해 보겠습니다.


유역을 추출하는 과정은 아래 다이어그램과 같이 여러 절차로 구성되며, 이것을 QGIS와 같은 공간정보

소프트웨어에서 구현하려면 여러 기능들을 사용하게 됩니다. 그래픽 모델러를 이용하면 분석가가 이런

과정을 한번에 처리할 수 있도록 모델을 생성할 수 있습니다. 어떻게 하는지 지금부터 알아보겠습니다.

 

QGIS 3.4에서 SAGA를 이용한 수문학적 분석(hydrological analysis) | http://blog.daum.net/geoscience/1422


일단 '공간 처리 > 그래픽 모델러'를 실행합니다.


다음과 같이 '공간 처리 모델 생성기' 창이 실행됩니다.


일단 모델 속성의 '명칭'과 '그룹'을 다음과 같이 입력해 줍니다.


'모델 저장' 버튼을 클릭해서 위 명칭과 그룹으로 모델을 저장합니다.


여기서는 BASIN_DELINEATION이라는 이름으로 모델을 저장했습니다.


이제 유역 추출 모델에 사용되는 파라미터와 알고리즘을 순차적으로 정의해 주면 되겠습니다.

먼저 DEM과 폴리곤 파라미터를 정의해 봅니다. 먼저 '파라미터 > 래스터 레이어'를 클릭하고,


'DEM' 파라미터를 정의해 줍니다.


아래와 같이 DEM 파라미터가 도형으로 정의됩니다.


이번에는 벡터 레이어를 클릭하고,


폴리곤 파라미터를 정의합니다.


DEM과 폴리곤 파라미터가 도형으로 추가되었습니다. 이번에는 알고리즘을 추가해볼까요?!


알고리즘 탭에서,


키워드로 검색하여 '마스크 레이어로 래스터 자르기(DEM 자르기)' 기능을 클릭합니다.


실행 창에서 입력 레이어와 마스크 레이어에 앞서 정의한 DEM과 폴리곤 파라미터로 지정해 줍니다.


자, 파라미터와 알고리즘이 서로 연결된 것으로 보이시죠?! 이런 방식으로 계속 모델을 확장해 가시면 됩니다.


다음으로 'Fill sinks(수문학적 보정 DEM 생성)' 알고리즘을 실행합니다. 이때 Parent algorithms에 앞서 만든 'DEM 자르기'를 선택하여 모델을 연결합니다.


자, 파라미터와 두 개 모델이 서로 연결된 상태죠?! 다음 알고리즘도 연결해볼까요?!


이번에는 'Catchment area(흐름 누적 계산)' 알고리즘입니다.


다음 알고리즘은 'Channel network(수계망 추출)'입니다. 계속 모델을 확장해 갑니다.


'수계망 추출' 알고리즘에는 '최초 임계치(Initiation Threshold)'라는 값이 있습니다.

이 값은 경우에 따라 다른 값이 부여할 수 있으므로 파라미터로 정의해주는 게 좋겠습니다.


입력 파라미터로 '숫자'를 하나 추가하고,


'최초 임계치' 파라미터를 정의한 후에,


'Channel network' 실행 창에서 'Initiation Threshold'의 좌측 하단 버튼을 선택하고 '모델 입력'을 클릭합니다.


아래와 같이 '최초 임계치' 파라미터를 지정해 줍니다. 어렵지 않죠?!


아래와 같이 '최초 임계치' 파라미터와 '수계망 추출' 알고리즘이 서로 연결됐습니다.


이번 알고리즘은 Watershed basins(유역 추출)'입니다.


이제 '폴리곤화 (래스터를 백터로)' 알고리즘으로 유역 추출 모델 정의를 마무리해 봅니다.


유역 추출 모델의 출력 값은 아래 벡터화한 산출물, 즉 '유역'입니다.


자, 아래와 같이 유역 추출 모델이 정의되었습니다. 7개 기능들이 하나의 모델로 연결되었습니다.

아래와 같이 '모델을 다른 이름으로 저장' 버튼을 눌러서 해당 파일을 별도 저장하실 수도 있습니다.


이렇게 정의된 모델은 '공간처리 툴박스 패널' 하부에 '모델 > 수문학적 분석 > 유역 추출'로 저장되어 있습니다.


'유역 추출'을 실행하면 아래와 같이 분석가가 정의한 파라미터와 출력 값으로 된 창이 표시됩니다. 한번 검증해볼까요?!


직접 만든 유역 추출 모델을 검증하기 위해 지리산국립공원 일대의 행정구역 폴리곤과 DEM 데이터를 사용해 봅니다.


유역 추출 모델을 실행하고 폴리곤은 지리산 일대 행정구역을, 최초 임계치는 10,000,000을, DEM은 지리산 일대 DEM을 선택합니다. 


실행 결과는 아래와 같은데요, 모델이 잘 동작하는 것 같죠..?!

이렇게 정의된 모델은 다른 연구자와 공유하실 수도 있습니다.


유역 추출 모델 다운로드


'공간 처리 툴박스 패널 > 모델을 툴박스에 추가하기'를 통해 해당 모델 파일을 탑재하실 수 있습니다. 상당히 유용한 그래픽 모델러 소개 글이었습니다.