안녕하세요? 이번 글은 SNAP을 이용해서 Sentinel-1 GRD 영상을 전처리한 후, QGIS에서 해당 데이터를 통해 침수 지역의 변화탐지를 진행해 보겠습니다.
합성 개구 레이더(SAR: Synthetic Aperture Radar) 이해
SNAP(Sentinel Application Platform) 다운로드 및 설치
Sentinel-1(센티널-1) SAR 데이터 다운로드
실습용 데이터, 먼저 Sentinel-1(센티널-1) SAR 데이터 2장(침수 전, 침수 후)가 필요한데요, 다음 링크에서 내려받으실 수 있습니다. 침수 전(2023년 6월 12일)과 침수 후(2023년 7월 18일) 영상 2장과 서브셋 생성을 위한 안동시 행정경계를 제공하고 있습니다.
Sentinel-1 GRD Preprocessing(전처리)
SNAP을 실행하고 Sentinel-1 GRD 전처리 작업흐름을 진행해 보겠습니다.
'File > Import > SAR Sensors > SENTINEL-1'을 클릭하고 침수 전(2023년 6월 12일) 영상을 먼저 열어보도록 하겠습니다.
아래와 같이 밴드 목록 중 'Amplitude_VV'를 더블클릭해 보겠습니다.
침수 후 데이터를 안동시 크기로 잘라내 보겠습니다. 'Layer Manager > Add Layer'를 실행합니다.
'ESRI Shapefile > Next'를 클릭합니다.
안동시 행정구역(ANDONG.shp)을 선택하고 'Next'를 클릭합니다.
'Raster > Subset'을 실행합니다.
안동시 크기로 영상이 잘려진 서브셋이 생성되었습니다. 전처리를 진행해 보겠습니다.
1. Apply Orbit File(궤도 파일 적용)
'Radar > Apply Orbit File'을 실행합니다. 이 기능은 제품 메타데이터의 각 SAR 영상에 대한 궤도 상태 벡터를 자동으로 다운로드하고 업데이트함으로써 정확한 위성 위치와 속도 정보를 제공합니다.
2. Thermal Noise Removal(열 잡음 제거)
'Radar > Radiometric > S-1 Thermal Noise Removal'을 실행합니다. 이 기능은 서브 스와스 간 텍스처(inter-sub-swath texture)의 잡음 영향을 줄이는 데 기여하며, 특히 전체 Sentinel-1 영상 내 후방산란(backscatter) 신호를 정규화하여 다중 스와스 획득 모드에서 영상의 서브 스와스 간 불연속성을 줄이는 결과를 낳습니다.
3. Border Noise Removal(경계 잡음 제거)
'Radar > Sentinel-1 TOPS > S-1 Remove GRD Border Noise'를 실행합니다. 이 기능은 영상 경계의 낮은 강도 잡음과 유효하지 않은 데이터를 제거하기 위해 설계되었습니다.
4. Calibration(보정)
'Radar > Radiometric > Calibrate'를 실행합니다. 이 기능은 디지털 픽셀 값(digital pixel values)을 방사적으로 보정된 SAR 후방산란(backscatter)으로 변환하는 절차입니다. 보정 방정식을 적용하는데 필요한 정보는 Sentinel-1 GRD 제품에 포함되어 있으며, 특히 제품에 부가 정보로 포함된 보정 벡터(calibration vector)를 사용하면 이미지 강도(image intensity) 값을 시그마 노트(sigma nought, σ₀) 값으로 간단히 변환할 수 있습니다.
6. Range Doppler Terrain Correction(레인지 도플러 지형 보정)
'Rader > Geometric > Terrain Correction > Range-Doppler Terrain Correction'을 실행합니다. SAR 데이터는 일반적으로 0도보다 큰 다양한 관측각으로 감지되며, 이로 인해 측면 관측 지오메트리(side-looking geometry)와 관련된 일부 왜곡이 있는 이미지가 생성됩니다. SNAP에서 제공하는 레인지 도플러 지형 보정 연산자는 레이다 지오메트리 이미지에서 SAR 영상을 지오코딩하기 위한 레인지 도플러 정사보정법(Range Doppler orthorectification method)을 구현합니다. 이 연산자는 메타데이터의 사용 가능한 궤도 상태 벡터 정보, 레이다 타이밍 부가 정보 및 경사-지면 범위 변환 매개변수를 기준 수치표고모델 데이터와 함께 활용하여 정확한 지리위치 정보를 도출합니다.
7. Conversion to dB(데시벨로의 변환)
'Raster > Data Conversion > Converts bands to/from dB'을 실행합니다. 전처리 작업흐름의 마지막 단계로, 무차원 후방산란 계수(unitless backscatter coefficient)는 로그 변환을 사용하여 데시벨(dB)로 변환됩니다. 이때 소스 밴드는 Sigma0_VV_db만 선택해 주겠습니다.
'File > Export > GeoTIFF'를 클릭하고 결과물을 GeoTIFF 포맷으로 저장합니다. 이 과정을 데이터 침수 후(2023년 7월 18일) 데이터에도 동일하게 적용해 줍니다.
아래와 같이 두 장의 데이터가 생성되었습니다.
침수 지역 변화탐지
QGIS를 실행하고 두 데이터를 추가한 후, '래스터 > 기타 사항 > 가상 래스터 생성'을 실행합니다.
'Input layers'에서 침수 후 데이터(1번 밴드), 침수 전 데이터(2번 밴드) 순으로 레이어를 추가합니다.
'Place each input file into a separate band'를 체크, 'Nodata value(s) for input bands'는 0을 입력하고 실행합니다.
가상 래스터에서 Red 밴드는 밴드 2를, Green 밴드는 밴드 1을 선택합니다. *밴드 합성 방식은 다음 글 내용을 참고했습니다: http://wiki.awf.forst.uni-goettingen.de/wiki/index.php/SAR_change_detection_with_SNAP
결과물에 VworldHybrid와 VworldSatellite 레이어를 추가해 보겠습니다.
MapSwipe Tool을 설치하고 침수 지역 변화탐지 결과물과 VworldSatellite를 비교해 봅니다. 하천과 주차장 등 침수 지역을 확인하실 수 있습니다. 여기까지 Sentinel-1 GRD 전처리 및 침수 지역 변화탐지 과정을 정리해 봤습니다.