GIS

QGIS: 야생동물 위치의 토지피복지도 값 샘플링(sample raster values)

유병혁 2020. 10. 7. 04:53

안녕하세요? 이번 글은 야생동물 위치에 해당하는 토지피복지도(land cover map) 분류값을 샘플링해 보도록 하겠습니다. 야생동물이 어느 토지피복에 머물렀는지를 통계적으로 추출할 수 있는 기본 자료를 획득하기 위함입니다. 해당 기능은 Sample raster values 기능을 이용하시면 됩니다.

 

QGIS: KDE(커널밀도추정)을 이용한 야생동물 행동권 분석

안녕하세요? 이번 글은 QGIS에서 KDE(Kernel Density Estimation)을 이용한 행동권 분석(home range analysis) 방법을 정리해 보겠습니다. 행동권은 동물이 주기적으로 서식하고 이동하는 영역을 나타내며, KDE는

blog.daum.net

자, 먼저 토지피복지도를 확보해 보겠습니다. ESA/CCI(European Space Agency/Climate Change Initiative, 유럽우주국/기후변화 이니셔티브)에서 제공하는 300m급 전세계 토지피복도(global land cover map)을 사용할 것입니다. 아래 링크를 클릭합니다.

 

ESA/CCI viewer

Data access Please enter a few details about yourself, before downloading the requested product.

maps.elie.ucl.ac.be

데이터 접근을 위해 웹사이트 우측의 'Data access'를 접속합니다.

Name, Organization, e-mail 주소를 입력하고 아래 동의를 체크하고 'Valldate'를 클릭하시면 됩니다.

접속 후 아래 링크에서 'by year: 24 tif files, 1 band'를 클릭합니다. 1992년부터 2015년까지 연도별 토지피복지도를 단일 밴드 tif 또는 nc 파일로 제공하고 있습니다. 파일당 용량은 약 300MB입니다.

현재 우리가 다루는 데이터는 1998년 자료이므로, 아래 파일 중 tif 포맷을 내려받아 보겠습니다.

Legend에서 Legend (csv), Symbology for QGIS(.qml) 파일도 함께 받아봅니다. 토지피복 속성 조인과 심볼 설정에 도움을 줍니다. 

다운로드 후 기존 프로젝트에 토지피복지도를 올려본 화면입니다. 스타일을 지정해 보겠습니다.

레이어 명을 더블클릭해서 '레이어 속성' 창을 실행한 후, '스타일 > 스타일 불러오기'를 클릭해서 앞서 내려받은 qml 포맷 파일을 지정해 줍니다. 이 파일에는 각각의 토지피복 코드에 해당하는 토지피복 분류명과 R/G/B 화소값이 저장되어 있습니다. 

자, 이제 아래와 같이 값, 색상, 라벨이 정의되었습니다.

적용 결과는 아래와 같습니다. 토지피복이 뚜렷해졌는데요, 어느 토지피복이 가장 많았을까요?!

이를 위해 '래스터 값 샘플링(Sample raster values) 기능을 실행합니다.

해당 기능에 대한 설명은 다음 링크를 참조하면 됩니다. 사용법은 QGIS Documentation에서 시작됩니다!

docs.qgis.org/3.10/en/docs/user_manual/processing_algs/qgis/rasteranalysis.html#sample-raster-values

 

23.1.9. Raster analysis — QGIS Documentation documentation

Performs algebraic operations using raster layers. The resulting layer will have its values computed according to an expression. The expression can contain numerical values, operators and references to any of the layers in the current project. Note When us

docs.qgis.org

아래와 같이 입력 포인트 레이어, 샘플링할 래스터 레이어를 각각 황새 좌표, 토지피복지도로 지정하겠습니다. 출력 열 접두어는 토지피복지도 값이 저장될 필드명의 접두어로 보시면 됩니다(예: 출력 열 접두어가 'rvalue'이면, 출력 필드명은 'rvalue_1'. 1은 1번 밴드의 의미).

결과는 아래와 같은데요, 이번에는 'rvalue_1'에 저장된 토지피복 분류코드와 일치하는 분류명을 속성 추가해 볼까요?!

이를 위해 앞서 내려받은 csv 파일을 사용하겠습니다. 'NB_LAB'이 'rvalue_1'과 속성 조인되면 되겠습니다.

샘플링된 포인트의 레이어 속성에서 '조인' 탭을 선택하고,

'새 조인 추가' 버튼을 클릭해서,

아래와 같이 '조인 레이어', '조인 필드', '대상 필드'를 정의해 줍니다. '조인된 필드'는 필요한 만큼만 지정해 주겠습니다.

자, 결과는 아래와 같습니다.

이 상태를 저장하기 위해 샘플링된 포인트 레이어를 우클릭한 후 '내보내기 > 객체를 다른 이름으로 저장'을 실행합니다.

차트를 그릴 때 일반적으로 사용하는 xlsx 포맷으로 저장해 보겠습니다.

QGIS에 내장된 차트 기능도 있지만, 아래와 같이 보편화된 차트도구(Excel)에서도 그려볼 수 있겠습니다.

주로 경작지(Cropland)와 초본피복(Herbaceous cover)에서 황새 좌표가 많은 것으로 확인되고 있습니다.

다음 실습을 위해 ESRI shapefile로도 파일을 저장하도록 하겠습니다. 이상으로 야생동물 위치의 토지피복지도 값 샘플링 방법을 정리해 봤습니다.