1. GEE(Google Earth Engine)란 무엇인가?
1) 위성 데이터 분석 플랫폼
Google Earth Engine(GEE)은 구글에서 제공하는 대규모 위성 영상 및 지리정보 처리 플랫폼입니다.
MODIS, Landsat, Sentinel-2와 같은 공개 위성 데이터를 웹 브라우저에서 불러오고, 분석하고, 이미지로 저장할 수 있습니다.
- 웹 기반 – 별도 설치 없이 사용 가능
- JavaScript 기반 스크립트 환경 제공
- NDVI, LST 등의 계산 및 시계열 분석 가능
2) 사용 배경
프로젝트를 시작하며 다음과 같은 의문이 있었습니다.
“송도는 해안도시인데 왜 여름에도 더울까?”
이 질문에 답하려면 지표면 온도(LST)나 식생지수(NDVI)와 같은 숫자 기반의 공간 데이터가 필요했습니다.
하지만 해당 데이터를 수집·전처리하기 위해서는 복잡한 과정이 필요했고, 이를 간단하게 처리할 수 있는 도구로 GEE를 선택했습니다.
2. GEE를 활용한 위성 데이터 수집
1) 수집한 데이터 목록
항목 | 출처 | 설명 |
---|---|---|
LST | MODIS/006/MOD11A1 | 지표면 온도 데이터 (일별, 1km 해상도) |
NDVI | MODIS/006/MOD13A1 | 식생지수 (16일 간격, 500m 해상도) |
2) GEE에서 GeoTIFF 내보내기
- 관심지역(송도)을 사각형 영역으로 지정
- NDVI / LST 평균값 산출
- GeoTIFF 포맷으로 Google Drive에 내보내기
※ Windows에서는 로컬 저장이 어려워 Colab에서 실행 - QGIS 및 Python에서 후속 분석에 활용
3. Python을 활용한 GeoTIFF 해석
1) 분석 준비: 필요한 패키지 및 데이터 구조
GEE에서 받은 GeoTIFF는 단순한 이미지가 아닌 좌표 + 픽셀 값이 포함된 공간 데이터입니다.
이를 Python의 rasterio
, geopandas
패키지를 활용하여 분석하였습니다.
import rasterio
import pandas as pd
from shapely.geometry import Point
2) 분석 격자 생성: 송도 영역 설정
# 분석 범위: 약 6km x 4km
xmin, xmax = 126.60, 126.68
ymin, ymax = 37.37, 37.41
interval = 0.005 # 500m 간격
def frange(start, stop, step):
while start < stop:
yield round(start, 6)
points = []
for lon in frange(xmin, xmax, interval):
for lat in frange(ymin, ymax, interval):
points.append({'lon': lon, 'lat': lat, 'geometry': Point(lon, lat)})
3) GeoTIFF에서 NDVI/LST 값 추출
import geopandas as gpd
gdf = gpd.GeoDataFrame(points, crs="EPSG:4326")
def get_value(tiff_path, lon, lat):
with rasterio.open(tiff_path) as src:
for val in src.sample([(lon, lat)]):
return val[0]
gdf["ndvi"] = gdf.apply(lambda row: get_value("songdo_ndvi.tif", row.lon, row.lat), axis=1)
gdf["lst"] = gdf.apply(lambda row: get_value("songdo_lst.tif", row.lon, row.lat), axis=1)
4) 결과 저장
gdf.to_file("ndvi_lst_points.geojson", driver="GeoJSON")
4. 요약 및 활용 가능성
1) 분석 결과 정리
이 과정을 통해 송도 지역 전역의 각 지점별 NDVI 및 지표면 온도 값을 확보할 수 있었습니다.
해당 데이터는 QGIS에서의 시각화, Python 기반 통계 분석 등 다양한 후속 활용이 가능합니다.
2) GEE의 의의
GEE는 단순히 위성 데이터를 시각화하는 도구를 넘어서, “도시가 왜 덥고 어디가 시원한지”를 정량적으로 설명할 수 있는 분석 도구였습니다.
'데이터 프로젝트 > 송도 열섬효과 및 계절별 에너지 소비 시뮬레이션' 카테고리의 다른 글
[6] 도시 구조 변화가 주택 거래가에 미치는 영향 (2) | 2025.05.17 |
---|---|
[5] 송도 열섬 분석: NDVI와 LST로 본 도시 기후의 구조 (0) | 2025.05.11 |
[4] 건물 단위로 본 송도의 열환경 – QGIS 기반 NDVI·LST 시각화 분석 (2) | 2025.05.09 |
[2] 선행연구_도시열섬 및 에너지 수요 분석 관련 논문 정리 (0) | 2025.04.23 |
[1] 송도국제도시 열섬 및 계절별 열환경 시뮬레이션 개요 (0) | 2025.04.23 |