반응형
Google Earth Engine (GEE)을 사용하여 Python 환경에서 Change Detection을 수행하려면 먼저 Google Earth Engine API를 설치하고 인증해야 합니다.
- Google Earth Engine API 설치:
Python 환경에서 GEE를 사용하려면 먼저 Google Earth Engine Python API를 설치해야 합니다. 터미널이나 명령 프롬프트에서 다음 명령을 실행하세요.
pip install earthengine-api
- 인증:
API를 설치한 후 Google Earth Engine 계정을 인증해야 합니다. 인증을 위해 다음 명령을 실행하세요.
import ee
ee.Authenticate()
웹 브라우저에서 열리는 페이지에서 로그인하고 인증 코드를 생성한 후 터미널이나 명령 프롬프트에 붙여넣으세요.
- Change Detection 수행:
Google Earth Engine API를 사용하여 Python 환경에서 Change Detection을 수행하려면 다음 예제 코드를 참고하세요.
import ee
# Initialize the Earth Engine library.
ee.Initialize()
# Define the area of interest (geometry).
aoi = ee.Geometry.Rectangle([126.869, 37.522, 127.180, 37.658])
# Define the time range for change detection.
start_date = '2020-01-01'
end_date = '2020-12-31'
# Load Sentinel-2 data for the specified time range and area of interest.
sentinel2 = ee.ImageCollection("COPERNICUS/S2") \
.filterDate(start_date, end_date) \
.filterBounds(aoi) \
.sort('CLOUD_COVER')
# Compute the median of the Sentinel-2 data.
median_image = sentinel2.median().clip(aoi)
# Define NDVI function.
def add_ndvi(image):
ndvi = image.normalizedDifference(['B8', 'B4']).rename('NDVI')
return image.addBands(ndvi)
# Calculate NDVI for the median image.
median_ndvi = add_ndvi(median_image)
# Define threshold values for change detection.
threshold = 0.1
# Identify changes based on the threshold values.
change = median_ndvi.select('NDVI').subtract(median_ndvi.select('NDVI')).gt(threshold)
# Display the change detection results.
print(change.getInfo())
위 코드는 Sentinel-2 위성 데이터를 사용하여 특정 지역에서 NDVI 변화를 감지하는 예제입니다. 필요에 따라 영역, 날짜 범위, 위성 데이터, 지수 계산 및 임계값을 변경하여 다양한 상황에 맞게 변경 감지를 수행할 수 있습니다.
반응형
'🗺️ GIS & RS > 🛰️ RS (원격탐사)' 카테고리의 다른 글
[원격탐사] USGS EarthExplorer에서 Landsat 데이터 다운받는 법 (0) | 2023.05.08 |
---|---|
[Google Earth Engine] 구글어스엔진 API 키 등록하는 방법 (0) | 2023.05.08 |
[Google Earth Engine] 구글어스 엔진 타임랩스 (0) | 2023.05.08 |
[원격탐사] Sentinel-2 (0) | 2023.05.08 |
[원격탐사] LUE 모델 (Light-use Efficiency) (0) | 2023.05.03 |
댓글