[QGIS] 토지피복지도 용도별 면적계산법(feat. 벡터를 래스터로 변환)

 1. 기술 개요

환경공간정보서비스에서 제공하는 토지피복지도 데이터를 활용하여 용도별 면적을 산출한 뒤 지역의 특징변수로 활용이 가능합니다. 토지피복도의 개념 및 분석 활용 사례에 대한 설명 후, Q-gis를 이용하여 면적을 계산하는 방법에 대해 자세하게 알려드리겠습니다.

가. 토지피복지도

– 토지피복지도란, 주제도(Thematic Map)의 일종으로, 지구표면 지형지물의 형태를 일정한 과학적 기준에 따라 분류하여 동질의 특성을 지닌 구역을 Color Indexing 한 후 지도의 형태로 표현한 공간정보 DB를 말합니다.

– 위성사진과 비교를 하여 보면 개념을 조금 더 이해하기 쉽습니다. 습지, 하천, 나지, 도로 등 동일 용도별로 묶어 같은 색으로 칠해 표현한 지도입니다.

<(좌)위성사진, (우)토지피복지도>

– 토지피복지도의 분류체계는 대분류(7개 항목), 중분류(22개 항목), 세분류(41개 항목)로 나뉩니다. 분석 난이도, 목적, 크기 등을 고려하여 대분류, 중분류, 세분류 중 상황에 맞게 데이터를 선택하여 다운로드 받을 수 있습니다. 

대분류(7개 항목)중분류(22개 항목)세분류(41개 항목)
분류항목명분류코드분류항목명분류코드분류항목명분류코드
시가화·건조지역100주거지역110단독주거시설111
공동주거시설112
공업지역120공업시설121
상업지역130상업·업무시설131
혼합지역132
문화·체육·휴양지역140문화·체육·휴양시설141
교통지역150공항151
항만152
철도153
도로154
기타교통·통신시설155
공공시설지역160환경기초시설161
교육·행정시설162
기타공공시설163
농업지역200210경지정리가 된 논211
경지정리가 안 된 논212
220경지정리가 된 밭221
경지정리가 안 된 밭222
시설재배지230시설재배지231
과수원240과수원241
기타재배지250목장·양식장251
기타재배지252
산림지역300활엽수림310활엽수림311
침엽수림320침엽수림321
혼효림330혼효림331
초지400자연초지410자연초지411
인공초지420골프장421
묘지422
기타초지423
습지(수변식생)500내륙습지(수변식생)510내륙습지(수변식생)511
연안습지520갯벌521
염전522
나지600자연 나지610해변611
강기슭612
암벽·바위613
인공 나지620채광지역621
운동장622
기타나지623
수역700내륙수710하천711
호소712
해양수720해양수721

<토지피복 분류체계(출처:환경부)>

– 토지피복지도는 지표면의 현상을 가장 잘 반영하기 때문에 생태면적률 산정, 변화지 분석 등에 폭넓게 활용이 가능합니다. 예시로 중앙정부 및 지방정부의 환경정책수립의 과학적 근거로서 위상을 가지고 있고 관련 학계의 다양한 연구자료로 활용되고 있습니다.

나. 기술 활용 예시

1) 생태면적률 산정

– 토지피복지도를 활용하여 전체 개발 면적 중 생태적 기능 및 자연순환기능이 있는 토양 면적이 차지하는 비율(생태면적률)을 산정할 수 있습니다. 뒤에서 설명드릴  Q-gis 구획 히스토그램 기능을 활용하면 손쉽게 용도별 면적을 계산할 수 있습니다. 분석 수행 시, 주거지역, 농업지역, 하천지역 등 필요한 용도별 면적 데이터를 정형화하여 가중치 및 변수로 사용할 수 있습니다.

<생태면적률 산정 사례(출처: 환경부)>

2) 변화지 분석

– 토지피복지도는 시계열 자료를 통해 변화지에 대한 분석이 가능합니다. 시계열 데이터가 있다면 이를 활용하여 특정기간동안 특정지역에 어느정도 변화가 있었는지 정량적인 값을 구할 수 있습니다.

–  토지피복지도를 기준으로 분석을 수행할 동일 년도의 데이터를 조인하여 면적을 계산함으로써, 데이터만 활용한 분석에 비해 신뢰성과 가독성이 높은 결과를 도출할 수 있습니다. 예시로 하남시 신장동 택지 개발 전/후의 농업지역, 주거지역의 변화를 면적 기준으로 산정하여 분석할 수 있습니다.  

대분류중분류세분류
[2010년대 말] 전국[2022] 전국[2022] 전국 
[2000년대 말] 전국 [2018] 수도권(세분류전환)[2021] 전국 
[1990년대 말] 전국 [2013] 경상권 제외 전국[2020] 전국 
[1980년대 말] 전국[2009년] 수도권,충청권[2019] 전국 
[2007년] 전국[2018] 광주.전남권역
[2000~2004] 전국[2017] 강원권역 
[2016] 전북권역 
[2016] 전북.제주권역 
[2015] 세종특별자치시
[2015] 대전.세종. 충남권역
[2014] 인천.경기권역
[2014] 남,북한강 유역
[2013] 영남권역 
[2013] 서울.성남,용인
[2012] 낙동강 중.하류
[2011] 낙동강 상류 
[2010] 남,북한강 유역 

<토지피복지도 자료제공 현황(출처: 환경공간정보서비스)>

<변화지 분석 사례(출처: 환경부)>

2. 기술 사용 상세

분석 수행 시, Q-gis 기능을 사용하여 지역별, 토지용도별 면적 파생변수를 생성하였습니다. 아래는 기술 활용 상세 설명입니다. 면적계산 대상 지역은 강원특별자치도 정선군으로 선정하여 예시를 작성하였습니다. 

Q-gis 모든 기능은 “공간 처리 툴박스”에서 검색하여 사용할 수 있습니다. 수행 과정 중 생성되는 모든 파일은 “객체를 다른이름으로 저장” 기능으로 저장을 하여 파일이 유실되지 않도록 관리해야 합니다.

 가. 데이터 다운로드

1) 환경공간정보서비스 토지피복지도

– 환경공간정보서비스에 회원가입 및 로그인하여 원하는 지역의 토지피복지도 shp파일을 다운로드 받습니다.

<환경공간정보서비스 자료신청 화면 예시>

2) 연속수치지형도

– 국토교통부 국토지리정보원에서 원하는 지역의 연속수치지형도 shp파일을 원하는 단위로 선택하여 다운로드 받습니다. 

– Shp 파일 형식의 데이터를 수집하는 경우에는 좌표계 설정 값을 필수로 확인합니다. 일반적으로 좌표계가 자동으로 설정이 되지만, 안되는 경우도 있기 때문에 그 때는 수동으로 적용을 해주어야 합니다.

나. 토지피복지도 전처리

1) 토지피복지도 병합

– 토지피복지도는 격자 모양으로 이루어져 있기 때문에 원하는 지역의 모양에 맞게 교차편집을 해주어야합니다.

– 이를 수행하기 위해 가장 먼저 “공간 처리 툴박스” →  “벡터 레이어 병합” 기능을 사용하여 격자 단위로 쪼개져 있는 토지피복도 파일들 모두를 병합해줍니다. 

<벡터 레이어 병합_입력레이어>

<(좌)병합 전, (우)병합 후>

2) 연속수치지형도와 토지피복지도 교차

– “공간 처리 툴박스” → “교차영역” 기능을 사용하여 정선군의 연속수치지형도와 토지피복지도를 교차해 줍니다.

– 입력 레이어에 크롭해야할 대상인 병합된 토지피복지도를 입력하고, 중첩 레이어에 크롭 모양의 기준이 되는 정선군 읍면동 연속수치지형도를 입력합니다.

– 교차영역을 수행 결과 파일이 정선군 모양으로 크롭된 토지피복지도라고 보시면 됩니다. 속성테이블에는 토지피복지도 정보와 연속수치지형도 정보가 열 병합되어 있습니다.

<교차 영역>

<(좌)교차 전, (우)교차 후>

3) 필드 재작성

– 토지피복지도의 벡터형식을 래스터형식으로 변경해야 이미지를 활용하여 토지피복지도 분류체계 별 면적 계산이 가능합니다. 래스터형식으로 변환할 때 기준이 되는 컬럼을 결정해야 합니다.

– 토지피복 분류체계의 분류코드별로 구분되어 이미지 변환이 되어야 하기 때문에 토지피복 분류체계의 분류코드를 의미하는 ‘L2_CODE’ 컬럼을 기준 컬럼으로 결정합니다.

<속성 테이블>

– “공간 처리 툴박스” → “레이어 속성” 기능을 사용하여 교차 완료된 토지피복지도의 변수들의 데이터 타입이 올바르게 설정되어 있는지 확인합니다.

<레이어 속성>

– ‘L2_CODE’ 컬럼의 데이터타입이 잘못 되어 있는 것을 발견하였으니, “공간 처리 툴박스” → “필드 재작성” 기능을 사용하여 ‘L2_CODE’의 데이터 타입을 텍스트에서 Integer(64bit)로 변경합니다.

<필드 재작성>

4) 래스터화

– “공간 처리 툴박스” → “래스터화” 기능을 사용하여 필드 재작성된 토지피복지도의 벡터형식을 래스터형식으로 변경합니다.

– 산출래스터 크기 단위를 설정합니다. (설정한 너비와 높이가 5X5인 경우 결과 값에 25를 곱하면 면적이 됩니다.)

<벡터를 래스터로 변환>

<변환에 성공한 래스터 이미지>

다. 용도별 면적계산

1) 구획 히스토그램

– “공간 처리 툴박스” → “구획 히스토그램” 기능을 사용하여 래스터레이어를 앞에서 변환한 레스터 데이터로 설정하고  구역을 담고 있는 벡더레이어는 정선의 읍면동 벡터 레이어로 설정합니다.(정선군의 시군구별 용도별 면적을 계산하고 싶다면 처음부터 읍면동 레이어 대신 시군구 레이어로 같은 과정을 수행하면 됩니다.) 산출될 컬럼 앞에 사용될 접두어도 설정합니다.

<구획 히스토그램>

– 결과테이블을 확인합니다. 강원특별자치도의 정선군 읍면동 별로 토지피복 분류체계의 분류코드별 면적을 계산하기 위한 값이 나옵니다. 5 X 5 격자 안의 면적비율 값을 뜻하므로 결과값에 25를 곱해야 정확한 면적 값을 구할 수 있습니다.

<결과 테이블>

2) 면적 계산

– 정확한 면적 값을 구하기 위해 속성테이블의 정보를 엑셀 파일로 내보내는 과정입니다. 구획 히스토그램 결과 레이어를 우측클릭으로 선택한 후 “벡터 레이어를 다른 이름으로 저장” 을 클릭합니다.

– 포맷은 쉼표로 구분된 값(csv)으로 설정하고, 한글이 깨지지 않도록 인코딩은 EUC-KR 또는 UTF-8 로 설정니다. 파일이름 우측에 있는 […] 을 눌러 파일보호기가 뜨면 그 정해진 위치에 파일명을 입력 후 저장합니다. 

<벡터 레이어를 다른 이름으로 저장>

– 엑셀로 저장된 파일을 열어 결과를 확인하고 함수를 사용하여 정확한 면적 값을 계산합니다. 그 후 결과를 상황에 맞게 활용합니다. 

<결과 엑셀 파일>

3. 결론

위의 기술을 활용하여 “유해 야생동물에 의한 농작물 피해가 많은 시군구의 토지 특성을 통해 피해 발생 위험 지역 예측” 분석을 수행할 때 가장 중요한 변수인 용도별 면적 데이터를 생성할 수 있었습니다.

토지피복지도를 통해 읍면동별 산림, 농림, 주거지 등의 면적을 독립변수로 두고 특정 시군의 읍면동 단위 피해 발생 위험지역을 도출해냈습니다. 이 분석 주제 외에도 면적 변수를 유용하게 사용될 수 있을거라 판단하여 제 지식을 공유드렸습니다. 

또한, 이 기술을 통해 토지피복지도와 유사한 벡터 및 래스터 데이터를 자유롭게 편집하여 다양한 분야의 공간 분석을 보다 수월하게 할 수 있습니다.