REMOTE SENSING

Google Earth Engine(구글 어스 엔진): WDPA(세계 보호지역 데이터베이스) 데이터셋 불러오기

유병혁 2024. 1. 3. 12:53

안녕하세요? 이번 글은 Google Earth Engine(구글 어스 엔진)에서 WDPA(세계 보호지역 데이터베이스) 데이터셋을 불러오는 방법을 정리해 보겠습니다.

 

먼저 ee와 geemap 패키지를 호출하고 GEE를 초기화합니다.

import ee
import geemap

# GEE 초기화
ee.Initialize()

 

WDPA 데이터셋을 불러옵니다.

# WDPA 데이터셋 불러오기
wdpa = ee.FeatureCollection("WCMC/WDPA/current/polygons")

 

ID를 통해 원하는 WDPA 경계를 선택합니다. 여기서는 변산반도국립공원 경계를 선택해 보겠습니다.

 

Protected Planet | Byeonsanbando

Explore the World's Protected Areas in Byeonsanbando

www.protectedplanet.net

wdpa_id = 30712 # 해당 ID를 가진 WDPA 경계 선택
protected_area = wdpa.filter(ee.Filter.eq('WDPAID', wdpa_id))

 

선택된 보호지역의 이름을 출력해 봅니다.

# 선택된 보호지역의 이름 가져오기
area_name = protected_area.first().get('NAME').getInfo()
print("Name:", area_name)
Name: Byeonsanbando

 

Map 변수에 지도 객체를 할당하고 지도의 너비, 높이, 기본 지도를 설정합니다.

# 지도 너비, 높이, 기본 지도 설정
Map = geemap.Map(width="800px", height="500px", basemap='Esri.WorldImagery')

 

참고로 사용 가능한 모든 기본 지도는 다음 코드를 통해 확인하실 수 있습니다.

# 사용 가능한 모든 기본 지도 출력
for basemap_name in geemap.basemaps:
    print(basemap_name)

 

이제 이 레이어를 지도 객체에 추가하고 중심 설정 후 출력해 주면 되겠습니다.

Map.addLayer(protected_area, {'color': 'green'}, area_name) # 레이어 추가
Map.centerObject(protected_area, 12) # 지도의 중심 설정
Map # 지도 객체 출력

 

출력 결과는 다음과 같습니다. 동일한 방식으로 WDPA 데이터셋 중 원하는 보호지역 경계를 호출해 사용하실 수 있습니다.

 

import ee
import geemap

# GEE 초기화
ee.Initialize()

# WDPA 데이터셋 불러오기
wdpa = ee.FeatureCollection("WCMC/WDPA/current/polygons")

wdpa_id = 30712 # 해당 ID를 가진 WDPA 경계 선택
protected_area = wdpa.filter(ee.Filter.eq('WDPAID', wdpa_id))

# 선택된 보호지역의 이름 가져오기
area_name = protected_area.first().get('NAME').getInfo()
# print("Name:", area_name)

# 지도 너비, 높이, 기본 지도 설정
Map = geemap.Map(width="800px", height="500px", basemap='Esri.WorldImagery')
"""
# 사용 가능한 모든 기본 지도 출력
for basemap_name in geemap.basemaps:
    print(basemap_name)
"""
Map.addLayer(protected_area, {'color': 'green'}, area_name) # 레이어 추가
Map.centerObject(protected_area, 12) # 지도의 중심 설정
Map # 지도 객체 출력