2026-10-02

관측점 사이는 어떻게 채우나 | 공간 보간과 크리깅 | GeoAI 기초 17편

관측점 사이는 어떻게 채우나 | 공간 보간과 크리깅 | GeoAI 기초 17편

🎬 1분 브리핑 영상

📌 3줄 요약

  • 관측소가 없는 곳의 값은 보간으로 추정해 채운다
  • IDW는 거리로, 크리깅은 통계적 상관구조로 채운다
  • 보간 지도는 추정치라 관측소 밀도에 따라 신뢰도가 다르다

비 오는 날 기상청 강우 지도를 보면 전국이 색깔로 빈틈없이 칠해져 있습니다. 그런데 실제로 비를 재는 관측소는 전국에 수백 개뿐이고, 그 사이 공간에는 아무 장비도 없습니다. 그렇다면 관측소가 없는 동네의 색깔은 어디서 온 걸까요. 답은 공간 보간입니다. 알고 있는 몇 개의 점으로 모르는 사이 공간의 값을 추정하는 방법인데, 이 원리를 모르고 지도를 보면 "저기는 비가 30mm 왔다"는 숫자를 관측값처럼 믿어버리기 쉽습니다. 오늘은 이 추정이 어떻게 이뤄지고 어디까지 믿어도 되는지 짚어보겠습니다.

Close-up view of a communication tower with antennas under a clear blue sky, showcasing modern technology.
자료사진 · 사진: Mark Stebnicki / Pexels

🌧️ 관측소가 없는 곳의 강우량은 어떻게 알아내나요

비가 온 양은 빗물을 모으는 우량계라는 장비로 잽니다. 그런데 우량계는 전국에 점처럼 띄엄띄엄 있을 뿐이고, 그 사이 공간에는 장비가 없습니다. 그래서 주변 관측소 값을 이용해 빈 공간의 값을 추정하는데, 이 과정을 공간 보간이라고 부릅니다. 쉽게 말하면 띄엄띄엄 찍힌 점들 사이를 자연스러운 색 그라데이션으로 메우는 작업입니다. 가장 단순한 방식은 가까운 관측소일수록 더 큰 영향을 준다고 보는 것인데, 이것이 바로 다음에 설명할 IDW입니다. 홍수 예보 시스템에서 유역 평균 강우량을 계산할 때도 결국 관측소 값을 보간해 면 단위 데이터로 바꾸는 과정이 먼저 들어갑니다.

📏 IDW는 어떤 원리로 값을 채우나요

IDW는 Inverse Distance Weighting의 줄임말로, 거리의 역수로 가중치를 준다는 뜻입니다. 쉽게 말해 "가까운 관측소 말은 많이 듣고, 먼 관측소 말은 조금만 듣는다"는 원칙입니다. 추정하려는 지점에서 가까운 관측소일수록 그 값이 많이 반영되고, 멀어질수록 영향력이 줄어듭니다. 계산 방식이 단순하고 직관적이어서 미세먼지 농도 지도나 간단한 강우 분포도를 빠르게 그릴 때 많이 쓰입니다. 다만 IDW는 거리만 보기 때문에, 지형이나 바람길처럼 실제 현상에 영향을 주는 다른 요인은 반영하지 못한다는 한계가 있습니다. 산간 지역처럼 거리는 가까워도 고도 차이로 강우 패턴이 크게 다른 곳에서는 IDW 결과가 실제와 어긋날 수 있어, 참고용으로만 보는 자세가 필요합니다.

📊 크리깅은 IDW와 뭐가 다른가요

크리깅은 거리뿐 아니라 "값들이 공간적으로 얼마나 비슷하게 변하는가"라는 통계적 패턴, 즉 공간 상관구조를 분석해 보간합니다. 가까운 지점끼리 값이 비슷한 정도를 베리오그램이라는 그래프로 파악한 다음, 그 패턴에 맞춰 가중치를 계산합니다. IDW보다 계산이 복잡하지만, 추정값이 얼마나 불확실한지도 함께 알려준다는 장점이 있습니다. 미세먼지 측정망처럼 관측소 간격이 일정하지 않은 데이터를 다룰 때, 크리깅은 관측소가 드문 지역의 추정 신뢰도가 낮다는 사실을 수치로 보여줍니다. 재난 상황에서는 이 불확실성 정보가 중요한데, 신뢰도가 낮은 지역에 대피 명령을 내릴 때는 추가 관측이나 현장 확인을 병행해야 한다는 판단 근거가 되기 때문입니다.

🚨 보간 지도를 그대로 믿으면 안 되는 이유는 뭔가요

보간은 어디까지나 수학적 추정이지 실제 관측이 아닙니다. 관측소가 촘촘한 도심에서는 보간 결과가 실제와 비슷하게 맞아떨어지지만, 관측소가 드문 산간이나 해안 지역은 추정 오차가 커질 수 있습니다. 특히 집중호우처럼 짧은 시간에 국지적으로 쏟아지는 비는 관측소 사이 공간에서 전혀 다른 값이 났을 가능성이 있는데, 보간은 이런 급격한 변화를 부드럽게 뭉개버리는 경향이 있습니다. 그래서 보간 지도의 색이 연하다고 안심하면 안 되고, 근처 관측소가 실제로 몇 개나 있는지, 그 지점과 얼마나 떨어져 있는지를 확인하는 습관이 필요합니다. 산사태나 급경사지 위험 판단처럼 사람의 안전과 직결되는 의사결정에서는 보간 지도 한 장만으로 결론 내리지 말고 현장 관측이나 레이더 자료로 교차 확인하는 절차가 꼭 필요합니다.

🔍 내가 사는 동네의 보간 신뢰도는 어떻게 확인하나요

보간 결과를 과신하지 않으려면 직접 확인해보는 절차가 가장 확실합니다. 먼저 관측소 위치를 지도에 띄워놓고 내가 궁금한 지점에서 가장 가까운 관측소까지의 거리를 재봅니다. 거리가 가까우면 신뢰도가 높다고 볼 수 있고, 수십 킬로미터 이상 떨어져 있다면 그 지점의 보간값은 참고 수준으로만 받아들이는 것이 안전합니다. 이것은 해봐야 아는 것인데, 지도만 봐서는 관측소 밀도가 잘 드러나지 않기 때문에 관측소 레이어를 따로 켜고 눈으로 거리를 비교해보는 과정이 꼭 필요합니다. 미세먼지 예보나 강우 특보를 확인할 때도 이 습관을 들이면, 지도 색깔 하나로 성급하게 판단하지 않는 눈을 기를 수 있습니다.

🖥️ 화면에서 따라하기

따라하기 단계

  1. 관측소 레이어 켜기
    QGIS에서 레이어 > 레이어 추가 > 벡터 레이어로 강우 관측소 지점 파일을 불러온다
  2. 보간 도구 열기
    상단 메뉴 처리(Processing) > 툴박스에서 검색창에 interpolation 입력
  3. IDW 실행하기
    IDW 보간 도구를 선택하고 입력 레이어와 보간할 속성 필드를 지정한다
  4. 결과 격자 확인
    출력된 래스터를 지도에 띄워 관측소 주변과 먼 지역의 색 변화를 비교한다
  5. 크리깅 비교해보기
    같은 데이터로 크리깅 도구를 실행해 IDW 결과와 차이를 눈으로 비교한다
  6. 거리 측정하기
    측정 도구로 관심 지점과 가장 가까운 관측소 사이 거리를 재본다
  7. 메뉴 이름은 프로그램
    메뉴 이름은 프로그램 버전에 따라 조금씩 다를 수 있으니, 보이지 않으면 처리 툴박스 검색창에 interpolation이나 kriging을 입력해 찾아보시기 바랍니다.

※ 프로그램 버전에 따라 메뉴 이름이 조금씩 다를 수 있습니다. 위 그림은 순서를 정리한 도식입니다.

✍️ 그대로 복사해 쓰는 프롬프트

보간 지도를 읽을 때 확인해야 할 체크리스트 만들기

역할은 공간정보 분석을 검토하는 선임 연구원입니다. [강우 또는 미세먼지] 보간 지도를 현업에서 검토할 때 확인해야 할 체크리스트를 만들어주세요. 관측소 밀도, 보간 방법의 한계, 극단값 처리, 현장 확인 필요 여부를 포함해 항목별로 한 줄씩 정리하고, 전문용어가 나오면 괄호로 쉬운 설명을 덧붙여 주세요. 확실하지 않은 수치나 기준은 만들어내지 말고 일반적인 주의사항 위주로 작성해 주세요.
확인할 점: 체크리스트에 등장하는 기준이나 수치가 실제 기관 지침과 맞는지, 지어낸 숫자는 없는지 직접 확인해야 합니다.

※ 대괄호 부분을 상황에 맞게 바꿔서 쓰세요. 받은 답은 그대로 쓰지 말고 사실 확인을 거치세요.

🧪 직접 해보기

  • 공개 기상 지도에서 관측소 위치 레이어를 켜고 우리 동네와의 거리를 확인해본다
  • 같은 지역을 IDW와 크리깅으로 각각 보간해보고 결과가 얼마나 다른지 비교해본다
  • 관측소에서 멀리 떨어진 지점의 보간값이 실제 체감과 맞는지 주변 사람에게 물어본다

❓ 자주 묻는 질문

Q. IDW랑 크리깅 중에 뭐가 더 정확한가요
A. 상황에 따라 다릅니다. 데이터 특성과 공간 패턴에 따라 결과가 달라지므로, 같은 데이터를 두 방법으로 모두 돌려보고 비교하는 것이 안전합니다.

Q. 보간 지도의 해상도는 왜 제각각인가요
A. 보간할 때 격자 간격을 분석자가 직접 설정하기 때문입니다. 격자를 촘촘하게 할수록 지도는 부드러워 보이지만, 실제 관측 밀도가 그만큼 촘촘한 것은 아니라는 점을 기억해야 합니다.

Q. 관측소가 하나도 없는 지역은 어떻게 하나요
A. 보간만으로는 한계가 있어 레이더 강우 추정치나 위성 자료 같은 다른 관측 수단을 함께 활용하는 경우가 많습니다.

공간 보간은 빈 곳을 마법처럼 채우는 기술이 아니라, 있는 데이터로 최선의 추정을 하는 통계적 방법일 뿐입니다. 다음 편에서는 이렇게 만들어진 여러 공간 데이터 층을 겹쳐서 위험도를 계산하는 공간 중첩 분석 이야기를 다뤄보겠습니다.

GeoAI 기초 시리즈 17편 · 전체 43편


재난안전과 GeoAI 이야기를 더 보고 싶다면 아래 채널도 함께 보세요.

📌 바로가기

2026-10-01

LiDAR와 DEM | 지형 데이터가 방재에 쓰이는 방식 | GeoAI 기초 16편

LiDAR와 DEM | 지형 데이터가 방재에 쓰이는 방식 | GeoAI 기초 16편

📌 3줄 요약

  • DSM은 건물·나무 윗면, DEM은 맨땅 높이를 담은 지형 데이터다
  • LiDAR 레이저는 나뭇잎 사이를 뚫고 땅바닥 반사를 잡아낸다
  • 지형 정확도가 낮으면 침수·산사태 예측 범위가 크게 틀어진다

산사태 위험지역을 그리는데, 위성사진에는 숲이 초록색으로 빽빽하게 덮여 있어서 그 아래 경사가 얼마나 가파른지 전혀 보이지 않는 상황을 상상해보세요. 나무 꼭대기 높이만 알아서는 실제로 물이 어디로 흐르고 흙이 어디로 무너질지 계산할 수 없습니다. 방재 분야에서 쓰는 지형 데이터는 단순한 배경 지도가 아니라, 침수 범위와 산사태 경로를 계산하는 '입력값' 그 자체입니다. 이번 편에서는 그 입력값을 만드는 핵심 기술인 라이다(LiDAR, 레이저로 거리를 재는 센서)와 DEM(수치표고모델, 땅의 높낮이를 숫자로 담은 데이터)의 관계를 짚어보겠습니다.

A Lufthansa Boeing 747 landing at an airport with Mount Fuji visible in the background on a clear day.
자료사진 · 사진: Guohua Song / Pexels

🏔️ DSM과 DEM, 뭐가 다른가요?

DSM(Digital Surface Model, 수치표면모델)은 드론이나 항공기에서 내려다본 '맨 위 표면'의 높이를 기록합니다. 건물 옥상, 나무 꼭대기, 전선까지 전부 포함됩니다. 반면 DEM(Digital Elevation Model, 수치표고모델)은 그런 구조물과 식생을 걷어내고 순수한 땅바닥 높이만 남긴 데이터입니다. 비유하자면 DSM은 이불을 덮은 채 찍은 사람의 윤곽이고, DEM은 이불을 걷어낸 몸의 실제 윤곽입니다. 물이 흐르는 경로나 경사면이 무너지는 방향을 계산하려면 이불(건물, 나무)이 아니라 몸(지형) 정보가 필요합니다. 그래서 침수 시뮬레이션이나 산사태 모델링에서는 거의 항상 DSM이 아니라 DEM을 기본 입력으로 씁니다.

🌲 LiDAR는 어떻게 나무 아래 땅을 보나요?

LiDAR는 센서에서 레이저 펄스를 초당 수십만 번 쏘고, 반사되어 돌아오는 시간을 측정해 거리를 계산하는 장비입니다. 울창한 숲 위로 비행하면 레이저 중 일부는 나뭇잎에 바로 반사되지만, 나뭇잎 사이 빈틈으로 통과한 레이저는 땅바닥까지 도달해 반사됩니다. 하나의 레이저 펄스에서 여러 번 반사가 돌아오는 경우 이를 '다중 반사(multiple returns)'라고 하는데, 가장 먼저 돌아온 반사는 나무 꼭대기, 가장 마지막에 돌아온 반사는 대체로 지면에 해당합니다. 이 마지막 반사점들만 모아서 보간하면 숲에 가려 위성사진이나 드론 사진으로는 볼 수 없는 지면 높이, 즉 DEM을 만들 수 있습니다. 산사태 취약성 분석에서 경사도와 사면 방향을 정확히 계산하려면 이렇게 식생을 걷어낸 지형이 꼭 필요합니다.

🌊 왜 지형이 조금만 틀려도 침수 범위가 달라지나요?

침수 모의는 물이 높은 곳에서 낮은 곳으로 흐른다는 단순한 원리를 바탕으로 하지만, 그 계산은 지형의 미세한 높이 차이에 민감합니다. 예를 들어 제방이나 작은 둔덕이 DEM에서 몇십 센티미터만 낮게 표현돼도, 모델은 그 지점으로 물이 넘친다고 잘못 판단할 수 있습니다. 반대로 실제로는 낮은 배수로인데 데이터 해상도가 거칠어 뭉개져 버리면, 물이 빠질 길이 없는 것처럼 계산되기도 합니다. 그래서 침수 해석에는 격자 간격(해상도)이 촘촘하고 수직 오차가 작은 DEM이 요구되며, 도심처럼 배수 구조가 복잡한 곳일수록 이 민감도가 커집니다. 실무에서는 같은 강우 조건이라도 쓰는 DEM의 해상도와 정확도에 따라 침수 예상도의 모양이 눈에 띄게 달라질 수 있다는 점을 염두에 두어야 합니다.

⛰️ 산사태 모의에서는 지형이 왜 더 까다로운가요?

산사태는 경사, 경사 방향, 사면의 굴곡(오목한지 볼록한지) 같은 지형 변수들을 조합해 위험도를 계산합니다. 이 변수들은 DEM을 한 번 미분하거나 이웃 셀과 비교해서 뽑아내는데, 원본 DEM에 작은 노이즈나 계단 현상이 있으면 경사도 계산 결과가 실제보다 들쭉날쭉하게 나올 수 있습니다. 특히 식생이 우거진 산지는 LiDAR 없이는 지면을 거의 볼 수 없기 때문에, 과거에는 등고선 지도를 디지털화한 거친 DEM을 쓰다가 LiDAR 기반 고해상도 DEM으로 바뀌면서 위험지역 경계가 다시 그려진 사례도 있습니다. 어떤 DEM을 썼는지에 따라 같은 마을이라도 산사태 위험등급이 달라질 수 있으므로, 결과 지도를 받았을 때는 바탕이 된 지형자료의 출처와 제작 연도를 확인하는 습관이 필요합니다.

🔍 내가 쓰는 지형 데이터, 믿을 만한지 어떻게 확인하나요?

지형 데이터를 그대로 받아쓰기 전에 몇 가지는 직접 확인해봐야 합니다. 먼저 해당 DEM이 LiDAR 기반인지, 위성 입체영상 기반인지, 등고선에서 변환한 것인지 메타데이터(데이터에 대한 설명 정보)를 살펴봐야 합니다. 같은 지역을 서로 다른 해상도의 DEM 두 개로 비교해 경사도 지도를 각각 만들어보면, 해상도 차이가 결과에 얼마나 영향을 주는지 눈으로 확인할 수 있습니다. 또한 실제 현장에서 눈에 띄는 배수로나 제방이 DEM 상에서도 제대로 표현되는지 위성지도나 현장 사진과 대조해보는 것도 좋은 점검 방법입니다. 이런 확인 없이 지형 데이터를 그대로 재난 대응 계획에 쓰면, 실제 위험 지점을 놓치거나 반대로 안전한 곳을 위험지역으로 잘못 분류할 수 있습니다.

🖥️ 화면에서 따라하기

따라하기 단계

  1. 지형 데이터 확인
    국가공간정보포털이나 공개 지도 서비스에서 해당 지역 DEM·DSM 제공 여부를 검색한다
  2. QGIS 설치 확인
    QGIS를 실행하고 상단 메뉴에서 래스터 항목이 보이는지 확인한다(버전별로 위치가 다를 수 있음)
  3. DEM 불러오기
    레이어 > 레이어 추가 > 래스터 레이어에서 내려받은 DEM 파일(.tif)을 연다
  4. 음영기복도 만들기
    래스터 > 지형해석 > 음영기복(Hillshade)을 눌러 지형 굴곡을 시각적으로 확인한다
  5. 경사도 계산하기
    래스터 > 지형해석 > 경사(Slope)를 눌러 경사도 레이어를 생성하고 색상을 확인한다
  6. 해상도 비교
    같은 지역의 다른 해상도 DEM이 있다면 둘을 나란히 띄워 경사도 차이를 눈으로 비교한다

※ 프로그램 버전에 따라 메뉴 이름이 조금씩 다를 수 있습니다. 위 그림은 순서를 정리한 도식입니다.

✍️ 그대로 복사해 쓰는 프롬프트

DEM과 DSM 차이를 보고서나 교육자료용으로 쉽게 풀어 설명하는 초안 만들기

역할은 GIS 데이터를 처음 접하는 공무원 대상 교육 자료를 만드는 보조 작성자입니다
[대상 지역]의 침수 또는 산사태 분석 보고서에 들어갈 설명 문단을 작성해주세요
DSM과 DEM의 차이를 건물·식생 유무 중심으로 쉬운 비유를 들어 설명하고
LiDAR가 식생 아래 지형을 얻는 원리를 3문장 이내로 요약하고
왜 이 분석에는 DEM을 썼는지 한 문단으로 정리해주세요
전문용어가 나오면 괄호로 짧은 설명을 덧붙이고 추측성 수치는 넣지 마세요

※ 대괄호 부분을 상황에 맞게 바꿔서 쓰세요. 받은 답은 그대로 쓰지 말고 사실 확인을 거치세요.

🧪 직접 해보기

  • 공개 지도 서비스에서 같은 지점의 위성사진과 지형 음영도를 번갈아 보며 건물·나무가 사라지는지 확인한다
  • QGIS에서 DEM 하나를 불러와 Hillshade와 Slope 도구로 지형 기복과 경사도를 눈으로 비교한다
  • 거주 지역이나 관심 지역의 DEM 제작 연도와 출처(LiDAR인지 등고선 변환인지)를 메타데이터에서 찾아본다

❓ 자주 묻는 질문

Q. DSM과 DEM 중 어느 것이 더 정확한 데이터인가요?
A. 둘 다 정확도의 개념이 다릅니다. DSM은 표면 전체를 얼마나 세밀하게 담았는지가 중요하고, DEM은 지면 높이를 얼마나 왜곡 없이 뽑아냈는지가 중요합니다. 용도에 맞는 데이터를 고르는 것이 핵심입니다.

Q. LiDAR 없이도 산사태 위험지도를 만들 수 있나요?
A. 만들 수는 있지만 식생이 우거진 지역에서는 지형 표현이 거칠어질 수 있습니다. 등고선 기반 DEM이나 위성 입체영상 DEM도 쓰이지만, 산지의 세밀한 경사 변화를 볼 때는 LiDAR 기반 DEM이 더 유리한 경우가 많습니다.

Q. 일반인이 LiDAR DEM 데이터를 구할 수 있나요?
A. 지역과 기관에 따라 공개 여부와 해상도가 다릅니다. 국가 공간정보 포털이나 지방자치단체가 운영하는 공개 데이터 플랫폼에서 제공하는지 직접 검색해 확인하는 것이 가장 정확합니다.

결국 침수지도든 산사태 위험지도든, 그 바탕에는 반드시 지형 데이터가 깔려 있고 그 데이터가 얼마나 땅의 진짜 모습을 담고 있느냐가 결과의 신뢰도를 좌우합니다. 다음 편에서는 이렇게 만든 지형 데이터를 실제로 어떤 방식으로 재난 시뮬레이션 모델에 넣어 계산하는지 살펴보겠습니다.

GeoAI 기초 시리즈 16편 · 전체 43편


재난안전과 GeoAI 이야기를 더 보고 싶다면 아래 채널도 함께 보세요.

📌 바로가기

NaGeoAI 실제 QGIS 실습 4 | Sentinel-2 구름 마스크 실행과 전 픽셀 맑음 결과 검증

실습 목적과 검증 범위

본 실습에서는 QGIS 3.44.12와 NaGeoAI 1.9.0의 추가 분석 → 구름 마스크 기능을 이용하여 Sentinel-2 예제 영상을 처리하였다. 입력 밴드 지정, 모델 실행, 출력 레이어 확인 및 격자 검증을 목적으로 한다. 이번 결과는 540,360픽셀 모두 ‘맑음(0)’으로 분류되었다. 이는 모델 출력에 대한 관찰이며, 실제 구름이 전혀 없거나 정확도가 100%라는 의미는 아니다.

아래 그림은 2026년 10월 1일 QGIS 데스크톱에서 직접 캡처한 화면이다. 입력·설정·완료 로그·속성은 발행 전 재실행 과정에서 확보하였으며, 그림 4는 같은 날 오전 최초 실행 결과를 다시 연 화면이다. 화면을 생성하거나 처리 결과를 꾸미지 않았다.

1. 플러그인 설치와 실행 환경 준비

  1. NaGeoAI-1.9.0.zip 다운로드에서 배포본을 내려받는다. ZIP 파일 자체를 선택하므로 먼저 압축을 풀지 않는다.
  2. QGIS에서 플러그인 → 플러그인 관리 및 설치 → ZIP에서 설치를 연다. 내려받은 ZIP을 선택하여 설치하고 NaGeoAI를 활성화한다.
  3. 상단 NaGeoAI → 필수 프로그램·모델 설치에서 필요한 환경을 확인한다. 이미 설치된 항목은 중복 설치하지 않는다. 이번 실습은 설치된 플러그인을 사용하였으며 재설치하지 않았다. 실제 과거 설치 화면은 실습 1: 설치부터 변화탐지까지를 참고한다.
  4. 구름 마스크에는 OmniCloudMask와 PyTorch 환경이 필요하다. 이번 실행 환경에서는 PyTorch 2.14.0+cu126 및 Rasterio 1.5.1을 확인하였다. 초해상도용 opensr-model을 사용하는 실습은 아니다. 최초 모델 다운로드에는 인터넷 연결이 필요하며, 설치 완료 표시만으로 분석 성공을 판단하지 말고 실제 실행 로그를 확인한다.

2. 예제 파일 다운로드와 자료 확인

GeoAI 공개 Sentinel-2 예제 TIFF 다운로드 링크를 열고 파일을 저장한다. 브라우저에서 파일 내용이 열리면 다운로드 또는 링크를 다른 이름으로 저장 기능을 사용한다. 이번 저장 위치는 D:\QGIS_Plugin\SampleData\NaGeoAI\S2A-L2A-20190318-N0211-R061-6Bands-S2.tif이다. 폴더 위치는 변경할 수 있으나 패널에 실제 파일 경로를 입력해야 한다.

이 자료는 GeoAI 예제에 사용되는 Sentinel-2 L2A 6밴드 TIFF이며, 파일명에 표시된 관측일은 2019년 3월 18일이다. 이번 실습에서 내려받은 파일은 760×711픽셀, UInt16 6밴드, EPSG:32647, 10×10m 격자이다. 로컬 예제 설명에 따른 밴드 순서는 B2·B3·B4·B8·B11·B12이다. TIFF 밴드 설명에는 파장명이 기록되어 있지 않으므로 다른 자료에도 같은 순서를 적용해서는 안 된다.

자료 출처는 opengeos의 GeoAI 예제 배포 경로이다. Sentinel 자료의 기본 이용 조건은 Copernicus Data Space 이용 조건과 Sentinel 자료 이용 고지를 확인하였다. Contains modified Copernicus Sentinel data (2019). 본 글은 분석 화면과 출처 링크를 제공하며, 예제 TIFF 원본을 별도로 재배포하지 않는다. 예제 배포본 자체의 추가 이용 조건은 내려받는 시점에 확인할 필요가 있다.

파일 확인용 SHA-256: 14b92a5523ae8d18b04d61d7a640a4bce26dbb6ce19eb33eac285c75748bffa3.

3. 시작 프로젝트와 입력 레이어 확인

프로젝트 → 열기에서 QGIS_Play.qgz를 연 후 다른 이름으로 저장하여 실습용 복사본을 만든다. 이번 원본 프로젝트는 EPSG:5187이며 원본을 덮어쓰지 않았다. 오전 실행 내용을 저장한 복사본 QGIS_Play_NaGeoAI_20261001_cloudmask.qgz를 발행 전에 다시 열어 확인하였다. 배경지도는 분석 입력으로 사용하지 않았다.

레이어 → 레이어 추가 → 래스터 레이어 추가에서 예제 TIFF를 불러온다. 입력 영상만 보려면 출력 마스크의 체크를 해제한다. 그림 1은 기존 결과를 잠시 숨기고 입력을 확인한 화면이다. 프로젝트의 즉시 재투영 때문에 영상 외곽이 회전되어 보이지만, 원본 래스터의 EPSG:32647과 10m 격자는 바뀌지 않는다. 화면의 기본 RGB 표시 밴드는 1·2·3이며 자연색 조합은 아니다. 자연색 확인이 필요하면 레이어 속성의 심볼에서 빨강 3·초록 2·파랑 1을 지정한다. 지도 표시용 밴드와 모델 입력 밴드를 구분해야 한다.

QGIS 실제 화면 1 입력 영상과 실습 프로젝트 확인

그림 1. 실습 복사본과 입력 영상 확인. 출력 레이어를 숨긴 상태이며, 오른쪽 아래 프로젝트 CRS와 래스터 자체 CRS를 혼동하지 않는다. 그림을 누르면 원본 크기로 확인할 수 있다.

4. 구름 마스크 기능과 입력값 설정

NaGeoAI → 추가 분석을 열고 기능 목록에서 구름 마스크를 선택한다. 입력 래스터에는 예제 TIFF 전체 경로를 넣는다. 빨강 밴드는 3, 초록 밴드는 2, 근적외선 밴드는 4로 입력하였다. 이는 예제 파일의 B4·B3·B8에 해당한다. 출력 파일은 원본과 다른 경로로 지정하고 ‘출력 결과를 지도에 추가’를 선택한다.

재실행 출력 경로: D:\QGIS_Plugin\SampleData\NaGeoAI\verification\cloud_mask_replay_20261001.tif. 기존 오전 출력은 cloud_mask_gui_20261001.tif이며 덮어쓰지 않았다. 이 패널에서 모델 버전을 별도로 지정하지 않았으므로, 다른 설치 시점의 모델까지 동일한 결과라고 보장할 수 없다.

QGIS 실제 화면 2 구름 마스크 입력값 빨강3 초록2 근적외선4

그림 2. 구름 마스크 기능, 입력 파일, 밴드 3·2·4 및 별도 출력 경로 설정.

5. 실행과 완료 로그 확인

실행을 누른다. 패널의 시작 메시지에 이어 Starting cloud_mask 및 Cloud mask complete를 확인하였다. 새 GeoTIFF가 레이어 목록에 자동 추가되었다. 이번 화면은 QGIS 데스크톱 패널에서 직접 실행한 결과이며, 별도 Python 점검을 GUI 실행으로 표시한 것이 아니다.

로그에는 입력 TIFF의 Photometric 색상 채널 수와 SamplesPerPixel이 일치하지 않아 비색상 채널을 ExtraSamples로 취급한다는 경고가 표시되었다. 출력 저장 시 BLOCKXSIZE가 TILED=YES에서만 사용된다는 경고도 나타났다. 완료 및 파일 읽기는 확인하였으나 경고를 무시해도 모든 분석에 적합하다는 의미는 아니다. 후속 실무 분석에는 밴드 구조와 TIFF 메타데이터를 별도로 점검할 필요가 있다.

QGIS 실제 화면 3 구름 마스크 완료 로그와 출력 레이어

그림 3. 재실행 직후 완료 로그와 자동 추가된 출력 레이어. 경고 메시지도 함께 기록한다.

6. 검은 출력 화면의 의미 확인

출력은 한 밴드의 분류값 래스터이다. GeoAI 구현의 클래스는 0=맑음, 1=두꺼운 구름, 2=얇은 구름, 3=구름 그림자이다. 이번 결과는 값 0만 존재하여 기본 단일밴드 회색조에서는 검게 보인다. 검은 화면만 보고 처리 실패 또는 구름 영역이라고 판단해서는 안 된다. 값의 의미와 실제 픽셀 분포를 확인해야 한다.

QGIS 실제 화면 4 오전 출력 마스크 다시 열기 값0의 검은 화면

그림 4. 같은 날 오전 최초 출력 마스크를 다시 연 화면. 검은 영역은 기본 렌더러에서 표현된 클래스 0이다. 재실행 결과도 같은 분류 분포를 보였다.

7. 속성·격자·픽셀 분포 검증

출력 레이어를 더블클릭하여 레이어 속성 → 정보를 연다. 그림 5에서 760×711픽셀, Byte 자료형, GeoTIFF 형식 및 최소·최대값 0을 확인하였다. QGIS 통계는 근사 통계로 표시되어 있으므로, 전체 픽셀의 고유값 집계는 별도의 Rasterio 읽기로 확인하였다.

QGIS 실제 화면 5 출력 속성 크기 자료형 최소최대0 검증

그림 5. 출력 GeoTIFF의 실제 QGIS 속성 화면. 너비·높이·자료형과 통계값을 확인한다.

점검 항목확인 결과
출력 크기·밴드760×711픽셀, 1밴드 UInt8
래스터 CRS·해상도EPSG:32647, 10×10m
입력과 출력 격자CRS, 크기, Affine 변환 모두 일치
래스터 범위좌하단 (901340, 1806040), 우상단 (908940, 1813150)
전체 픽셀 집계0: 540,360개 / 1·2·3: 각 0개
NoData출력 파일에 별도 NoData 값이 설정되어 있지 않음

따라서 이번 자료에서는 입력→모델 처리→출력 레이어 추가→파일 읽기와 격자 정합을 확인할 수 있었다. 그러나 정답 구름 마스크가 없어 분류 정확도, 구름 누락률 또는 구름 그림자 탐지 성능은 검증하지 않았다. 값 0을 NoData로 지정하면 맑음 클래스가 숨겨지므로 주의한다. 구름 제거 영상이나 시계열 합성영상까지 생성한 실습도 아니다.

8. 프로젝트 저장과 종료 시 주의사항

실습을 마치면 프로젝트 → 저장으로 실습용 복사본만 저장하고 QGIS를 정상 종료한다. 이번 오전 최초 실행과 발행 전 재실행 모두 복사본 저장 및 창의 정상 종료를 확인하였다. 재실행에서는 출력 속성 화면 확인 후 일시적인 응답 지연이 있었으나, 응답이 회복된 뒤 속성 창을 닫고 복사본을 저장하였다. 강제 종료는 사용하지 않았다. 최종 복사본은 QGIS_Play_NaGeoAI_20261001_cloudmask.qgz이며, 원본 QGIS_Play.qgz의 수정 시각과 파일 크기는 유지되었다.

결과와 적용 한계

본 실습에서는 NaGeoAI 구름 마스크의 입력 밴드를 지정하고 실제 QGIS 패널에서 처리를 수행한 결과, 동일 격자의 분류 래스터가 생성됨을 확인하였다. 전 픽셀이 맑음으로 분류된 사례를 통하여 지도 색상과 클래스 의미를 구분할 필요가 있음을 알 수 있었다. 실제 구름 탐지 성능을 평가하려면 구름과 그림자가 포함된 추가 장면, 검증 라벨 및 일관된 비교 기준을 확보해야 한다. 본 결과를 현장 판단의 확정 근거로 사용해서는 안 된다.

참고: GeoAI 원본 프로젝트, GeoAI 구름 마스크 구현과 클래스 정의, OpenGeoAI 교재, NaGeoAI 1.9.0 배포 페이지. 이 글의 화면은 실제 프로그램 캡처이며 원본·예제 자료와 분석 결과를 구분하여 기록하였다.

드론 사진측량 | 사진 몇 장이 지도가 되기까지 | GeoAI 기초 15편

드론 사진측량 | 사진 몇 장이 지도가 되기까지 | GeoAI 기초 15편

📌 3줄 요약

  • 사진 한 장은 그림일 뿐, 겹쳐 찍어야 입체 지도가 된다
  • GCP와 SfM으로 사진들을 정확한 좌표의 지형으로 바꾼다
  • 정사영상·DSM·점군은 재난 현장 판단의 기초 자료가 된다

큰비가 지나간 다음 날, 산사면 일부가 흘러내렸다는 신고가 들어옵니다. 사람이 걸어 들어가기 위험한 지역이라 드론을 띄워 사진 수백 장을 찍어 왔습니다. 그런데 이 사진들을 모니터에 하나씩 띄워 본다고 지도가 되는 건 아닙니다. 사진 더미가 좌표를 가진 정확한 지형 정보로 바뀌는 과정, 그 뒤에는 중복도·기준점·컴퓨터 비전이라는 세 가지 장치가 숨어 있습니다. 오늘은 드론 사진이 어떻게 '지도'가 되는지, 그리고 그 결과물이 재난 현장에서 실제로 어떻게 쓰이는지 짚어보겠습니다.

drone aerial mapping survey
자료사진 · 사진: Pexels / Pixabay

🛰️ 드론 사진 한 장으로는 왜 지도가 안 될까요?

지도는 위에서 내려다본 평면이 아니라 실제 좌표와 높이를 가진 자료입니다. 사진 한 장만으로는 이 지점이 정확히 어디인지, 얼마나 높은지 알 수 없습니다. 그래서 드론은 같은 지점을 여러 각도에서 여러 번 찍도록 비행 경로를 짜는데, 이때 옆 사진과 얼마나 겹치는지를 중복도(overlap)라고 부릅니다. 보통 앞뒤로 겹치는 정도(종중복)와 좌우로 겹치는 정도(횡중복)를 따로 설정하는데, 겹침이 부족하면 뒤에서 설명할 계산이 아예 실패하거나 지형이 울퉁불퉁하게 왜곡됩니다. 산사태 현장처럼 지형 기복이 심한 곳은 평지보다 중복도를 넉넉히 잡아야 그림자 지역이나 급경사면이 누락되지 않습니다.

📍 GCP는 왜 꼭 찍어야 하나요?

사진들을 이어 붙이면 지형 모양은 나오지만, 그 모양이 지구 어디에 있는지는 또 다른 문제입니다. 이를 위해 땅 위에 좌표를 정확히 아는 점, 즉 지상기준점(GCP, Ground Control Point)을 표식으로 놓고 GPS 측량기로 정밀 좌표를 기록합니다. 드론이 자체적으로 저장하는 위치 정보만으로도 대략적인 지도는 만들 수 있지만, 피해 면적을 산정하거나 실제 거리·경사를 계산해 보고서에 넣으려면 GCP로 보정한 결과가 필요합니다. 특히 복구 공사비를 산정하거나 법적 근거 자료로 쓸 때는 오차 범위를 명시해야 하는 경우가 많아, GCP 유무와 개수는 그 산출물의 신뢰도를 가르는 기준이 됩니다.

🧩 사진들이 어떻게 입체 지형이 되나요?

수백 장의 사진을 입체 지형으로 바꾸는 계산 방식을 SfM(Structure from Motion, 움직임으로부터 구조 복원)이라고 합니다. 원리는 사람 눈이 두 눈으로 거리를 가늠하는 것과 비슷한데, 서로 겹치는 사진들에서 같은 지점(특징점)을 찾아 이 점이 사진마다 조금씩 다른 위치에 찍힌 정도를 계산해 드론의 위치와 지형의 높낮이를 동시에 복원합니다. 이 과정은 특징점 추출, 사진 간 매칭, 카메라 위치 계산, 조밀한 점군 생성의 순서로 진행되며 대체로 전용 소프트웨어가 자동으로 처리합니다. 다만 안개가 끼거나 사진이 흔들리면 특징점 매칭이 실패해 구멍이 뚫린 지형이 나올 수 있어, 처리 결과는 반드시 눈으로 확인해야 합니다.

🗺️ 정사영상·DSM·점군은 재난 현장에서 어떻게 쓰이나요?

SfM 처리가 끝나면 세 가지 산출물이 나옵니다. 위에서 수직으로 내려다본 것처럼 왜곡을 바로잡은 사진인 정사영상, 지표면과 건물·나무까지 포함한 높이 정보인 DSM(수치표면모델), 그리고 각 지점을 점으로 표현한 3차원 점군입니다. 정사영상은 침수 범위나 산불 피해 구역의 경계를 육안으로 그리는 데 쓰이고, DSM은 토사 유출량이나 붕괴 전후 지형 변화를 계산하는 데 쓰입니다. 점군은 건물 균열이나 붕괴된 구조물의 형태를 세밀하게 살필 때 유용합니다. 이 세 자료를 겹쳐 보면 '어디가 얼마나 무너졌고 어디로 물이 흘렀는지'를 현장에 들어가지 않고도 가늠할 수 있어, 초동 대응 회의 자료로 자주 활용됩니다.

📋 비행 전에 확인해야 할 제도적 사항은 뭔가요?

드론 촬영은 장비만 있다고 바로 할 수 있는 게 아닙니다. 지역에 따라 비행 자체에 사전 승인이 필요할 수 있고, 특정 시설 인근은 촬영이 제한되거나 별도 허가를 받아야 할 수 있습니다. 재난 현장이라 해도 예외가 자동 적용되는 것은 아니므로, 관할 기관과 비행 구역의 규정은 촬영 계획 단계에서 반드시 확인해야 합니다. 이는 인터넷 검색만으로 판단하지 말고, 관할 항공 당국이나 지자체 담당 부서에 직접 문의해 그날그날의 규정을 확인하는 것이 안전합니다. 규정 확인을 건너뛰고 비행했다가는 촬영 결과가 아무리 좋아도 자료로 쓰지 못하는 상황이 생길 수 있습니다.

🖥️ 화면에서 따라하기

따라하기 단계

  1. 샘플 데이터 받기
    OpenDroneMap 공식 저장소 등 공개된 예제 사진 세트를 폴더째 다운로드
  2. 처리 프로그램 준비
    WebODM 설치 후 브라우저 접속, Dashboard에서 New Project 클릭
  3. 사진 업로드
    Select Images 버튼으로 사진 폴더 선택 후 Start Processing 클릭
  4. 출력 옵션 확인
    Processing Options에서 Orthophoto, DSM, Point Cloud 항목 체크
  5. 결과 확인
    처리 완료 후 좌측 탭에서 Orthophoto·DSM·Point Cloud 각각 미리보기
  6. QGIS로 불러오기
    레이어 > 레이어 추가 > 래스터 레이어에서 정사영상 파일 선택 후 확인(메뉴 이름은 버전에 따라 다를 수 있어 못 찾으면 레이어 패널 우클릭 메뉴를 살펴보세요)

※ 프로그램 버전에 따라 메뉴 이름이 조금씩 다를 수 있습니다. 위 그림은 순서를 정리한 도식입니다.

✍️ 그대로 복사해 쓰는 프롬프트

드론 재난 촬영 전 점검할 제도적·안전 체크리스트 초안 만들기

당신은 공공기관의 드론 촬영 담당자를 돕는 보조자입니다
[대상 재난]으로 인한 피해 현장을 [지역명]에서 드론으로 촬영하려 합니다
비행 승인 여부 확인, 촬영 제한 구역 여부 확인, 기상 조건 확인, GCP 설치 여부, 조종자 자격 확인 항목을 포함한 점검 체크리스트를 표 형식으로 작성해 주세요
각 항목에는 확인해야 할 담당 기관이나 확인 방법을 함께 적어 주세요
확실하지 않은 법령 조항이나 수치는 적지 말고 "관할 기관에 확인 필요"라고 표시해 주세요

※ 대괄호 부분을 상황에 맞게 바꿔서 쓰세요. 받은 답은 그대로 쓰지 말고 사실 확인을 거치세요.

🧪 직접 해보기

  • 공개 드론 예제 사진으로 WebODM에서 정사영상을 직접 만들어 본다
  • 국토정보플랫폼이나 지자체 공간정보 서비스에서 기존 드론 정사영상을 열어 해상도를 비교해 본다
  • 우리 지역 관할 항공 당국 홈페이지에서 드론 비행 승인 절차를 검색해 본다

❓ 자주 묻는 질문

Q. 드론 사진측량에 꼭 GCP가 필요한가요?
A. 대략적인 지도라면 드론 내장 GPS만으로도 가능하지만, 정확한 면적·거리 계산이나 법적 근거 자료로 쓸 때는 GCP로 보정한 결과가 신뢰도 면에서 유리합니다.

Q. 중복도는 얼마나 잡아야 하나요?
A. 지형 기복과 촬영 목적에 따라 달라지므로 일률적인 수치보다 장비·소프트웨어 매뉴얼의 권장값을 확인하고, 실제 처리 결과에서 지형이 끊기는 곳이 있는지 직접 확인하는 방식이 안전합니다.

Q. 재난 상황이면 비행 승인 없이 바로 날려도 되나요?
A. 재난 대응이라도 비행 구역과 절차는 관할 기관 규정을 따라야 하는 경우가 많아, 사전에 담당 부서와 승인 절차를 확인하는 것이 필요합니다.

드론 사진 한 장 한 장은 평범한 풍경 사진처럼 보이지만, 중복도와 GCP, SfM 계산을 거치면 재난 현장의 좌표와 높이를 담은 지도로 바뀝니다. 다음 편에서는 이렇게 만들어진 정사영상이나 점군 위에 AI를 올려 피해 구역을 자동으로 찾아내는 방법을 살펴보겠습니다.

GeoAI 기초 시리즈 15편 · 전체 43편


재난안전과 GeoAI 이야기를 더 보고 싶다면 아래 채널도 함께 보세요.

📌 바로가기

2026-09-30

산불을 위성으로 감시하고 피해를 추정하는 법 | GeoAI 기초 14편

산불을 위성으로 감시하고 피해를 추정하는 법 | GeoAI 기초 14편

🎬 1분 브리핑 영상

📌 3줄 요약

  • 열적외선 밴드로 열이 나는 화점을 찾아냅니다
  • dNBR로 불탄 정도(심도)를 지도로 만듭니다
  • 조기 감지와 사후 평가는 쓰임새가 다릅니다

새벽 세 시, 산속 어딘가에서 불씨가 번지기 시작합니다. 사람 눈에 연기가 보이기 전, 위성은 이미 그 자리의 온도 변화를 감지하고 있을 수 있습니다. 반대로 불이 다 꺼진 뒤에는 "얼마나 탔는지"를 알아야 복구 계획을 세울 수 있는데, 이건 또 다른 방식의 분석이 필요합니다. 산불 하나를 두고도 위성이 하는 일은 시점에 따라 완전히 다릅니다. 이번 편에서는 화점을 찾는 열적외선 원리와, 피해 정도를 수치로 매기는 dNBR을 나눠서 살펴보겠습니다.

Satellite wildfire heat detection
자료사진 · 사진: xresch / Pixabay

🔥 위성은 산불이 난 걸 어떻게 알아채나요?

사람이 하늘에서 산불을 확인하려면 연기나 불빛이 보여야 합니다. 하지만 위성은 그럴 필요가 없습니다. 열적외선(thermal infrared, 물체가 내는 열을 감지하는 파장 대역) 밴드는 연기나 야간의 어둠과 상관없이 지표면의 온도 자체를 잽니다. 불이 붙은 지점은 주변보다 훨씬 뜨거워서 이 밴드에서 밝은 점, 즉 화점(hotspot)으로 나타납니다. 이 방식 덕분에 야간이나 구름이 옅게 낀 상황에서도 최초 발화 신호를 비교적 빨리 잡아낼 수 있어, 산불 초기 대응에서 골든타임을 버는 데 실제로 활용됩니다.

🌡️ 열적외 밴드로 화점을 어떻게 골라내나요?

열적외 영상은 각 픽셀의 밝기온도(brightness temperature, 복사에너지를 온도로 환산한 값)를 계산합니다. 이 값이 주변 배경보다 일정 수준 이상 높으면 화점 후보로 표시하는 방식이 일반적입니다. 문제는 뜨거운 공장 지붕, 용광로, 사막의 뜨거운 암석 같은 것도 비슷하게 잡힐 수 있다는 점입니다. 그래서 여러 밴드를 함께 보거나 주변 픽셀과 비교하는 알고리즘을 씁니다. 실제 재난 대응에서는 위성 화점 정보를 그대로 신고 접수처럼 쓰지 않고, 지자체나 산림 당국이 다른 관측 자료와 교차 확인한 뒤 출동 여부를 판단하는 참고 자료로 활용합니다.

🌲 불이 지나간 자리, 얼마나 심하게 탔는지 어떻게 아나요?

불이 꺼진 뒤에는 화점 대신 정규탄화지수(NBR, Normalized Burn Ratio)를 씁니다. 식생은 근적외선을 잘 반사하고 단파적외선은 잘 흡수하는데, 타고 나면 이 관계가 뒤집힙니다. 이 차이를 이용해 화재 전 NBR에서 화재 후 NBR을 뺀 값을 dNBR(differenced NBR)이라 부르고, 값이 클수록 심하게 탄 것으로 해석합니다. dNBR 지도는 색깔로 등급을 나눠 보여주는 경우가 많아 어디가 완전 연소되고 어디가 살아남았는지 한눈에 보입니다. 이 지도는 복구 우선순위를 정하거나 산사태 위험이 커진 지역을 미리 파악하는 데 쓰입니다.

⏱️ 조기 감지와 사후 평가는 왜 역할이 다른가요?

조기 감지는 속도가 생명입니다. 해상도가 다소 거칠어도 하루에 여러 번 지나가는 위성으로 "지금 어디가 뜨거운가"를 빨리 알리는 게 목적입니다. 반면 사후 평가는 속도보다 정밀도가 중요합니다. 해상도가 좋은 영상으로 시간을 들여 dNBR을 계산하고, 피해 면적과 심도 등급을 구분해 보고서에 담습니다. 이 둘을 헷갈리면 곤란합니다. 화점 탐지 결과로 피해 면적을 발표하거나, dNBR 지도로 "지금 불이 어디 있는지"를 판단하려 하면 시점과 목적이 맞지 않는 분석이 됩니다.

⚠️ 위성으로 본 산불 정보, 그대로 믿어도 될까요?

위성 자료는 강력하지만 절대적이지 않습니다. 두꺼운 연기나 구름은 열적외선도 방해할 수 있고, dNBR 역시 지역의 식생 종류나 촬영 시기 차이에 따라 값이 흔들릴 수 있습니다. 그래서 실무에서는 위성 결과를 발표하기 전에 반드시 지상 조사나 드론 영상, 다른 위성 자료와 겹쳐 확인하는 절차를 거칩니다. 이건 해봐야 아는 부분인데, 같은 화재 전후 영상을 다른 임계값으로 나눠 보면 심도 등급 경계가 달라지는 걸 직접 확인할 수 있습니다. 이런 검증 없이 지도를 그대로 배포하면 복구 예산이나 위험 지역 판단이 어긋날 수 있어 주의가 필요합니다.

🖥️ 화면에서 따라하기

따라하기 단계

  1. 사이트 접속
    NASA FIRMS 같은 공개 화재 지도 웹사이트에 접속해 지도 화면을 연다
  2. 지역 선택
    지도를 이동하거나 검색창에 확인하려는 지명을 입력한다
  3. 레이어 켜기
    화면 오른쪽 레이어 패널에서 화점 레이어(예: VIIRS, MODIS)를 켠다
  4. 기간 설정
    화면 하단 날짜 슬라이더로 확인할 날짜 범위를 선택한다
  5. 화점 확인
    지도 위 표시된 점을 클릭해 감지 시각과 밝기온도 정보를 본다
  6. 전후 비교
    Google Earth Engine에서 화재 전후 Sentinel-2 영상을 불러와 NBR 값을 비교한다(메뉴 이름은 버전에 따라 다를 수 있어 못 찾으면 도움말이나 레이어 목록 쪽을 살펴보세요)

※ 프로그램 버전에 따라 메뉴 이름이 조금씩 다를 수 있습니다. 위 그림은 순서를 정리한 도식입니다.

✍️ 그대로 복사해 쓰는 프롬프트

dNBR 분석 결과를 바탕으로 산불 피해 보고서 초안 만들기

당신은 재난안전 부서에서 산불 피해 현황을 정리하는 담당자입니다. 아래 정보를 바탕으로 보고서 초안을 작성해 주세요.
화재 발생 지역: [지역명]
화재 발생 및 진화 일시: [일시]
dNBR 분석 결과: 심함 [면적/비율], 중간 [면적/비율], 약함 [면적/비율]
보고서에는 피해 요약, 등급별 해석, 향후 복구 시 우선 확인이 필요한 지역을 순서대로 담아 주세요.
전문 용어는 처음 나올 때 한 줄로 풀어서 설명하고, 확인되지 않은 수치나 원인은 추정하지 말고 "현장 확인 필요"로 표시해 주세요.
결과를 받으면 등급 구분 기준과 면적 수치가 실제 분석값과 일치하는지 반드시 대조해서 확인하세요.

※ 대괄호 부분을 상황에 맞게 바꿔서 쓰세요. 받은 답은 그대로 쓰지 말고 사실 확인을 거치세요.

🧪 직접 해보기

  • NASA FIRMS 같은 공개 화재 지도에서 최근 화점이 표시된 지역을 찾아본다
  • Google Earth Engine에서 화재 전후 Sentinel-2 영상으로 NBR 값을 계산해 비교해본다
  • 같은 화재 지역을 다른 날짜 범위로 조회해 화점 개수가 어떻게 달라지는지 확인해본다

❓ 자주 묻는 질문

Q. 산불 연기가 있으면 위성으로 화점을 못 찾나요?
A. 가시광선 영상은 연기에 가려지지만 열적외 밴드는 연기를 어느 정도 투과해 열원을 감지합니다. 다만 아주 두꺼운 연기나 구름은 여전히 방해가 될 수 있습니다.

Q. dNBR 값이 높으면 무조건 다 탔다는 뜻인가요?
A. dNBR은 상대적인 지표라 절대적인 판단 기준은 아니고, 지역별로 임계값을 나눠 등급으로 해석합니다. 지상 조사와 함께 확인하는 것이 안전합니다.

Q. 화점 탐지와 실제 화재 발생은 항상 일치하나요?
A. 아닙니다. 뜨거운 지붕이나 공장 같은 열원도 화점으로 잘못 표시될 수 있어 추가 영상이나 현장 확인이 필요합니다.

화점 탐지가 "지금 어디가 급한가"를 알려준다면, dNBR은 "얼마나 심각했는가"를 알려주는 도구입니다. 두 역할을 구분해 쓰는 것만으로도 산불 대응 보고서의 신뢰도가 달라집니다. 다음 편에서는 이렇게 얻은 피해 지도가 산사태나 토사 유출 위험과 어떻게 이어지는지 살펴보겠습니다.

GeoAI 기초 시리즈 14편 · 전체 43편


재난안전과 GeoAI 이야기를 더 보고 싶다면 아래 채널도 함께 보세요.

📌 바로가기

NaGeoAI 실제 QGIS 실습 3 | STAC로 Sentinel-2 영상 검색·다운로드와 자산 키 검증

실습 목적과 범위

이번 실습에서는 QGIS 3.44.12와 NaGeoAI 1.9.0의 추가 분석 → 위성영상 다운로드 기능으로 Microsoft Planetary Computer의 STAC(SpatioTemporal Asset Catalog)에서 Sentinel-2 L2A 자료를 검색하고 자산을 내려받았다. 검색 결과의 자산 키, 파일 형식, 좌표계, 구름량을 확인하는 데 목적이 있다. 영상분류나 변화탐지를 수행한 것은 아니다.

플러그인 설치와 예제 자료

  1. NaGeoAI 1.9.0 ZIP 배포본을 다운로드한다.
  2. QGIS의 플러그인 → 플러그인 관리 및 설치 → ZIP에서 설치에서 다운로드한 파일을 선택한다. 설치 후 플러그인을 활성화하고 NaGeoAI → 추가 분석 → 위성영상 다운로드를 연다.
  3. 이번 실습에서는 플러그인을 다시 설치하지 않았다. 설치 단계의 실제 과거 화면은 실습 1을 참고한다. 이 글의 QGIS 화면은 오늘 수행한 STAC 실습의 실제 캡처다.
  4. 별도 예제 파일을 선행 다운로드할 필요는 없다. 이 기능의 예제 자료는 Microsoft Planetary Computer의 Sentinel-2 STAC 카탈로그에서 아래 입력값으로 내려받는다. 이미 가진 QGIS 프로젝트의 배경지도는 분석 입력으로 사용하지 않았다.

실습 시작 프로젝트는 QGIS_Play.qgz(EPSG:5187)이고, 원본은 보존했다. 실습 내용은 QGIS_Play_NaGeoAI_20260930_stac.qgz라는 복사본에 저장한 후 QGIS를 정상 종료했다. 시작 프로젝트에는 분석용 래스터가 없으므로 이번 실습의 입력은 STAC 원격 검색 조건이다.

단계 1. 검색 조건 입력

NaGeoAI 패널에서 컬렉션 sentinel-2-l2a, 검색 영역(BBOX, 경도·위도 순서) 127.00,37.50,127.01,37.51, 기간 2024-06-01/2024-06-30, 자산 키 preview, 최대 항목 수 1을 입력했다. 출력 폴더를 지정하고 지도에 추가 옵션을 선택했다. 프로젝트 CRS(EPSG:5187)와 검색 영역의 경위도 입력을 혼동하지 않아야 한다.

실제 QGIS 화면 1: 시작 프로젝트와 STAC 검색 입력값

그림 1. 시작 프로젝트와 STAC 검색 입력값(2026년 9월 30일 실제 QGIS 화면)

단계 2. 첫 결과와 구름량 확인

실행 로그에 1개 항목과 1개 자산의 처리가 기록되었다. 내려받은 항목 ID는 S2B_MSIL2A_20240630T021539_R003_T52SCG_20240630T062540이다. QGIS 지도에 추가된 preview TIFF는 거의 흰색으로 보였다. STAC 메타데이터의 eo:cloud_cover 값은 99.778891%였다. 따라서 다운로드 성공과 분석에 적합한 장면의 확보는 서로 다른 판단이다.

실제 QGIS 화면 2: 첫 다운로드 직후 로그와 출력 레이어

그림 2. 첫 다운로드 직후 로그와 출력 레이어(2026년 9월 30일 실제 QGIS 화면)

단계 3. 출력 파일의 공간정보 검증

QGIS 레이어 속성에서 첫 TIFF의 크기가 343×343픽셀임을 확인했다. 별도의 GDAL 점검 결과 형식은 GeoTIFF, 밴드는 RGB 3개, 좌표계는 EPSG:32652, 픽셀 크기는 320m였다. EPSG:5187 프로젝트에서 보이더라도 래스터 자체의 좌표계는 EPSG:32652이므로 후속 분석에는 좌표계와 해상도를 구분해야 한다.

실제 QGIS 화면 3: GeoTIFF 레이어 속성과 격자 정보

그림 3. GeoTIFF 레이어 속성과 격자 정보(2026년 9월 30일 실제 QGIS 화면)

단계 4. 다른 날짜와 자산 키 확인

구름량이 더 낮은 항목을 확인하기 위해 기간을 2024-09-23/2024-09-23으로 변경하고 같은 검색 영역, 컬렉션, 최대 항목 수를 사용했다. 해당 항목 ID는 S2A_MSIL2A_20240923T021531_R003_T52SCG_20240923T053200, STAC 구름량은 0.42%였다. 다만 이 항목에는 preview 자산이 없어 실행 로그에 다운로드 0개가 기록되었다. 자산 키는 모든 항목에 동일하게 존재한다고 가정하면 안 된다.

실제 QGIS 화면 4: 낮은 구름량 장면 검색을 위한 날짜 변경

그림 4. 낮은 구름량 장면 검색을 위한 날짜 변경(2026년 9월 30일 실제 QGIS 화면)

실제 QGIS 화면 5: preview 자산이 없는 경우의 실행 로그

그림 5. preview 자산이 없는 경우의 실행 로그(2026년 9월 30일 실제 QGIS 화면)

단계 5. 사용 가능한 자산으로 다시 실행

자산 키를 rendered_preview로 변경해 다시 실행한 결과, 로그에서 1개 자산 다운로드를 확인했다. 출력은 1024×1024픽셀, RGBA 4밴드 PNG였다. 파일에 공간 좌표계와 지오리퍼런스가 없으므로 시각 확인용 미리보기로만 사용한다. 공간 분석용 래스터라고 표시하지 않는다. 플러그인은 이 PNG를 QGIS 지도 레이어로 자동 추가하지 않았다.

실제 QGIS 화면 6: rendered_preview 다운로드 완료 로그

그림 6. rendered_preview 다운로드 완료 로그(2026년 9월 30일 실제 QGIS 화면)

결과와 주의사항

실제로 검증한 범위는 STAC 검색, 원격 자산 다운로드, QGIS 로그, 첫 GeoTIFF의 레이어 속성, 두 번째 PNG 파일의 형식 확인이다. 첫 장면은 구름이 매우 많고, 두 번째 결과는 좌표정보 없는 미리보기다. 분광 분석이나 정밀 위치 비교에는 각 항목의 지오리퍼런스가 있는 visual 또는 분광 밴드 자산을 별도로 선택·다운로드하고, 라이선스·좌표계·해상도·구름 마스크를 다시 확인할 필요가 있다. 오늘 그 후속 분석은 수행하지 않았다.

자료 출처: Microsoft Planetary Computer STAC 문서 및 Sentinel-2 카탈로그. Sentinel 자료의 이용 조건은 Copernicus Data Space 이용 조건도 확인한다. 서비스의 서명된 자산 URL과 인증 문자열은 글에 게시하지 않는다.

2026-09-29

AI 재난상황관리 시스템, 도시안전 정책이 바뀐다 | 재난안전과 GeoAI

AI 재난상황관리 시스템, 도시안전 정책이 바뀐다 | 재난안전과 GeoAI

🎬 1분 브리핑 영상

📌 3줄 요약

  • 한국전기안전공사가 2026년 9월 AI 재난상황관리 시스템 '케스코-사이렌'을 구축했다.
  • 서울에서 세계 도시 리더들이 모여 AI 시대 도시 안전 정책 해법을 논의했다.
  • Esri ArcGIS Living Atlas에 NOAA 홍수 침수 예측 지도가 새롭게 추가됐다.

안녕하세요! GeoAI와 생성형 AI가 재난안전·도시공간 정책의 핵심 도구로 자리를 잡아가는 요즘, 현장에서 체감할 수 있는 변화들이 속속 들어오고 있습니다. 오늘은 AI 기반 재난상황관리 시스템 구축 소식부터, 도시 안전 정책 포럼, ArcGIS 공간정보 플랫폼 업데이트, 원격탐사 역량 강화 세미나까지 폭넓게 정리해 드립니다.

특히 흩어진 재난정보를 한 곳에 통합해서 보여주는 AI 시스템이 공공기관에 실제로 도입됐다는 점, 그리고 세계 도시 리더들이 AI 시대 도시 안전을 주제로 머리를 맞댄다는 소식은 '재난안전'이 이제 단순한 현장 대응을 넘어 도시 설계와 정책 전반으로 확장되고 있음을 보여줍니다. 오늘 브리핑도 천천히 읽어 주세요.

🚨 AI로 재난정보를 한눈에 볼 수 있는 시스템이 생겼나요?

한국전기안전공사가 2026년 9월 29일 기준으로 AI 기반 재난상황관리 시스템인 '케스코-사이렌(KESCO-SIREN)'을 구축했다고 알려졌습니다. 이 시스템은 기존에 여러 경로로 흩어져 있던 재난 관련 정보를 하나의 플랫폼에서 통합 조회하고 관리할 수 있도록 설계된 것으로 보입니다. 전기안전 분야에 AI를 결합해 재난 상황을 실시간으로 감지하고 대응하는 역량을 높이겠다는 취지로 이해됩니다. 자세한 시스템 구성과 운영 방식은 원문을 참고하시기 바랍니다.

재난안전학적 관점에서 이 소식은 '통합 재난상황 모니터링(Integrated Emergency Monitoring)'이라는 개념이 공공기관 현장에 실제로 적용되기 시작했다는 점에서 주목할 만합니다. 학과에서 배우는 BCP(업무연속성계획)나 재난 초기 대응 체계는 정보 통합과 신속한 상황 판단이 핵심인데, 이처럼 AI가 정보 수집·분류를 자동화해 주면 담당자의 판단 부하가 크게 줄어들 것으로 보입니다. 충북·제천처럼 전기 인프라가 분산된 지역에서도 이런 시스템이 연계된다면 지역 재난 대응력 향상에 실질적인 기여를 할 수 있을 것이라고 생각합니다.

📰 기사 원문: 한국전기안전공사, AI 재난상황관리 시스템 '케스코-사이렌' 구축 - webeconomy.co.kr

🔗 흩어진 재난정보를 통합한다는 게 구체적으로 어떤 의미인가요?

같은 날 보도된 또 다른 기사에서도 한국전기안전공사의 '케스코-사이렌' 시스템 구축 소식을 다루고 있습니다. 이 매체에서는 "흩어진 재난정보를 한눈에" 볼 수 있다는 점을 강조하며, 기관 내 재난상황 대응의 가시성(visibility)을 높이는 것이 이 시스템의 핵심 목표임을 전하고 있습니다. 한국전기안전공사는 2026년 9월 해당 시스템을 구축 완료한 것으로 알려졌으며, 전기안전 분야의 AI 기반 재난관리 역량을 한 단계 끌어올린 사례로 평가받을 것으로 보입니다.

재난안전 분야에서 정보 통합은 오래전부터 '골든타임 확보'의 핵심 과제로 꼽혀 왔습니다. 다양한 센서·신고·기상 데이터가 각각 따로 존재하면 상황 판단이 늦어지는데, AI가 이를 실시간으로 분류·시각화해 준다면 초기 대응 속도가 눈에 띄게 개선될 수 있습니다. GeoAI 관점에서는 이런 통합 플랫폼에 공간정보(위치 기반)를 결합하면 재난 발생 위치, 피해 반경, 대피 경로까지 한 화면에서 의사결정을 지원하는 진정한 스마트 재난관리 체계로 발전할 수 있다고 봅니다.

📰 기사 원문: 흩어진 재난정보 한눈에… 전기안전公, 케스코사이렌 구축 - jjn.co.kr

🌏 세계 도시 리더들이 서울에서 AI 도시 안전을 논의한다고요?

2026년 9월 28일 보도에 따르면, 서울에 세계 각지의 도시 리더들이 모여 AI 시대의 도시 정책 해법을 모색하는 자리가 마련됐다고 알려졌습니다. 글로벌 도시들이 AI를 활용해 안전하고 지속가능한 도시를 만드는 방법을 공유하고, 서로의 정책 경험을 교류하는 장으로 서울이 선택된 것으로 보입니다. 행사의 구체적인 참여 도시 수나 세부 의제는 원문에서 확인하시기 바랍니다.

도시 안전 정책이 국제적 수준에서 논의된다는 사실은, 재난안전이 이제 지역 단위의 현장 대응을 넘어서 도시 설계·거버넌스 차원의 글로벌 의제가 됐음을 잘 보여줍니다. 공간정보 기술과 GeoAI가 도시 위험 분석, 취약 지구 식별, 대피 경로 최적화 등에 활발히 쓰이는 시대인 만큼, 이번 서울 포럼에서 어떤 정책 선언이나 공동 협력 방안이 나오는지 관심 있게 지켜볼 필요가 있습니다. 충북이나 제천 같은 지방 중소도시도 글로벌 스마트시티 정책 흐름에서 배울 점을 적극적으로 찾아야 할 것으로 보입니다.

📰 기사 원문: 서울에 모이는 세계 도시 리더들…AI 시대 도시정책 해법 찾는다 - 더글로벌기빙뉴스

🗺️ ArcGIS Living Atlas에 NOAA 홍수 침수 예측 지도가 추가됐나요?

2026년 9월 25일자 Esri ArcGIS 블로그에 따르면, 미국 해양대기청(NOAA)의 홍수 침수 예측 지도가 ArcGIS Living Atlas에 새롭게 추가됐다고 합니다. ArcGIS Living Atlas는 Esri가 운영하는 글로벌 공간정보 데이터 허브로, 누구나 접근해 분석에 활용할 수 있는 레이어를 모아 놓은 플랫폼으로 잘 알려져 있습니다. 이번 업데이트로 NOAA가 생산하는 홍수 범람 예측 데이터를 ArcGIS 환경에서 바로 불러와 시각화하고 분석에 활용할 수 있게 됐습니다. 자세한 레이어 구성이나 접근 방법은 원문 블로그를 참고하시기 바랍니다.

홍수 침수 예측 지도를 공간정보 플랫폼에서 실시간으로 활용할 수 있게 됐다는 것은 재해영향평가나 침수 위험 분석 실습에도 직접적인 의미를 가집니다. 학과 수업에서 GIS 기반 자연재해 위험도 분석을 공부할 때, 이런 공개 데이터 레이어를 활용하면 실제 침수 예측 시나리오를 만들어 볼 수 있는 좋은 실습 기회가 됩니다. 한국도 국가 수자원 관리 기관과 ArcGIS Living Atlas 수준의 공개 데이터 연계를 강화한다면, 지역별 침수 위험 예측의 정확도와 접근성이 크게 높아질 것이라고 봅니다.

📰 기사 원문: NOAA flood inundation prediction maps now in ArcGIS Living Atlas - Esri ArcGIS Blog

📡 원격탐사 역량을 키우는 세미나가 열렸다고요?

2026년 9월 25일을 전후해 '2026 원격탐사 역량 강화 세미나'가 개최됐다고 알려졌습니다. 원격탐사(Remote Sensing)는 위성·항공 이미지를 활용해 지표면 변화, 재해 피해 현황, 환경 모니터링 등을 수행하는 공간정보 핵심 기술로, 재난안전·국토관리·농업·기후 분야에서 폭넓게 활용됩니다. 이번 세미나에서 어떤 기술과 사례가 공유됐는지는 원문 블로그에서 더 자세히 확인할 수 있습니다.

원격탐사 기술은 GeoAI와 결합될 때 진가를 발휘합니다. 위성 이미지를 딥러닝 모델로 분석해 산사태 취약 지점을 미리 탐지하거나, 침수 지역 경계를 자동으로 추출하는 기술이 이미 국내외 연구·실무 현장에서 쓰이고 있습니다. 재난안전학을 공부하는 분이라면 원격탐사의 기초 개념(해상도, 밴드 조합, 변화탐지 등)을 익혀 두면 GeoAI 실무 역량과 직접 연결되니, 이런 세미나 정보를 꾸준히 챙겨보시기를 권합니다.

📰 기사 원문: 2026 원격탐사 역량 강화 세미나 - yuiverse (네이버블로그)

🧰 AI 재난관리 시스템과 GeoAI 공간정보 플랫폼, 이렇게 활용하세요

첫째, AI 재난상황관리 시스템의 핵심은 '정보 통합과 시각화'입니다. 케스코-사이렌처럼 여러 소스의 재난 데이터를 하나의 플랫폼으로 모으고, 그것을 공간정보와 연동해 지도 위에 표현하면 상황 판단 속도가 크게 향상됩니다. 재난안전 업무를 담당하거나 관심 있는 분이라면, 우리 기관·지역의 재난정보가 얼마나 통합되어 있는지 점검해 보는 것이 좋습니다.

둘째, ArcGIS Living Atlas처럼 공개된 글로벌 공간정보 데이터를 적극 활용하세요. NOAA 홍수 예측 지도처럼, 이미 검증된 공개 데이터를 분석에 바로 활용할 수 있다면 별도의 데이터 수집 없이도 재해영향평가나 위험도 분석의 질을 높일 수 있습니다. 학생이라면 ArcGIS Living Atlas에 무료로 접근해 실습 데이터로 활용해 볼 것을 권합니다.

셋째, 원격탐사와 GeoAI의 결합이 재난 대응의 '선제성'을 좌우합니다. 사후 대응 중심에서 벗어나 위성 이미지 분석으로 위험 징후를 조기에 포착하는 역량을 갖추는 것이 앞으로 재난안전 전문가에게 필수 역량이 될 것이므로, 관련 교육과 세미나에 지속적으로 참여하는 것이 중요합니다.

❓ 자주 묻는 질문

Q. 한국전기안전공사의 케스코-사이렌 시스템이 정확히 어떤 기능을 하나요?
A. 케스코-사이렌은 한국전기안전공사가 2026년 9월 구축한 AI 기반 재난상황관리 시스템으로, 기존에 분산되어 있던 재난 관련 정보를 하나의 플랫폼에서 통합 조회하고 관리할 수 있도록 설계된 것으로 알려져 있습니다. 세부 기능 구성은 원문 기사를 참고하시기 바랍니다.

Q. ArcGIS Living Atlas에 추가된 NOAA 홍수 침수 예측 지도는 누가 사용할 수 있나요?
A. ArcGIS Living Atlas는 Esri가 운영하는 글로벌 공간정보 데이터 허브로, ArcGIS 계정이 있는 사용자라면 누구나 NOAA 홍수 침수 예측 레이어를 불러와 분석에 활용할 수 있는 것으로 알려져 있습니다. 학생이나 연구자도 무료 혹은 교육용 계정으로 접근이 가능한 경우가 많으니 Esri 공식 블로그의 원문을 확인해 보시기 바랍니다.

Q. 원격탐사 역량 강화 세미나는 어디서 참여할 수 있나요?
A. 2026년에 개최된 원격탐사 역량 강화 세미나는 관련 블로그에서 소개된 것으로 알려졌으며, 구체적인 참여 방법이나 다음 일정은 원문 블로그나 주최 기관의 공지를 통해 확인하시는 것이 가장 정확합니다. 일반적으로 원격탐사 관련 세미나는 국토교통부, Esri Korea, 한국항공우주연구원 등에서 정기적으로 개최하니 관심 있는 분은 해당 기관의 홈페이지를 즐겨찾기에 추가해 두시길 권합니다.

오늘 소식들을 관통하는 흐름을 한 문장으로 정리하면, "AI와 공간정보 기술이 재난 대응의 사후 처리에서 선제적 예측·통합 관리 단계로 확실히 이동하는 흐름이 공공기관과 글로벌 플랫폼 양쪽에서 동시에 확인된 하루였습니다."

앞으로도 GeoAI·생성형AI·공간정보 분야의 재난안전 동향을 꾸준히 전해 드리겠습니다. 궁금한 점이나 다루어 줬으면 하는 주제가 있다면 댓글로 남겨 주세요. 감사합니다!


재난안전과 GeoAI 이야기를 더 보고 싶다면 아래 채널도 함께 보세요.

📌 바로가기

NaGeoAI 실제 QGIS 실습 2 | 2019·2022 NAIP 영상의 시계열 합성

본 실습에서는 동일 격자로 정합한 두 시기의 NAIP 항공영상을 NaGeoAI의 시계열 합성 기능으로 처리하고, 픽셀별 중앙값 합성영상을 QGIS에서 확인한다. 실제 실행 화면과 출력 파일을 함께 검증하였다.

1. 설치와 예제 파일 다운로드

  1. QGIS 3.44.12를 실행한다. NaGeoAI 1.9.0 ZIP을 내려받는다.
  2. QGIS에서 플러그인 → 플러그인 관리 및 설치 → ZIP에서 설치를 열어 ZIP을 선택하고, 설치 후 NaGeoAI → 추가 분석 메뉴가 나타나는지 확인한다. 설치 과정의 화면은 실습 1에 수록하였다. 이번 실습은 이미 설치된 플러그인을 사용했으며 ZIP 재설치 자체를 다시 검증한 것은 아니다.
  3. 2019년 예제 TIFF와 2022년 예제 TIFF를 내려받는다. 파일명은 각각 las_vegas_naip_2019_a.tif, las_vegas_naip_2022_a.tif이다. 제공 저장소는 Source Cooperative의 GeoAI 데이터셋이다.

원래 두 TIFF는 격자가 조금 다르다. 2022년 영상을 2019년 영상의 격자에 재표본화한 파생본이 필요하다. 이 PC에서는 앞선 실습에서 생성한 las_vegas_naip_2022_a_aligned_replay.tif을 사용했다. 해당 파일은 원본이 아닌 bilinear 정합 파생자료이며 블로그에서 재배포하지 않는다. NAIP 원자료의 배포·이용 정보는 미국 정부 자료 목록에서 확인할 수 있다. 원본 저장소의 개별 재배포 조건도 확인할 필요가 있다.

2. 입력 영상 검증

두 실습 입력은 모두 EPSG:26911, 4밴드, 2,721×1,420픽셀이며 픽셀 크기는 0.6m이다. 좌상단 좌표는 (649647.6, 4020075)로 같다. 각 파일의 gdalinfo -json 결과로 이 값을 비교했다. 시작 프로젝트 QGIS_Play.qgz의 CRS는 EPSG:5187이지만, 합성 계산은 동일한 두 입력 래스터 격자를 기준으로 수행한다. 프로젝트 원본은 보존하고 별도 복사본에서 작업했다.

3. QGIS에서 합성 실행

  1. QGIS에서 QGIS_Play.qgz를 열고 프로젝트 → 다른 이름으로 저장으로 실습용 복사본을 만든다.
  2. NaGeoAI → 추가 분석 패널을 열고 기능을 시계열 합성으로 설정한다.
  3. 입력 영상 목록에 2019년 TIFF와 정합된 2022년 TIFF를 한 줄에 하나씩 입력한다. 원본 2022년 TIFF를 정합 없이 바로 사용하지 않는다.
  4. 합성 방식은 median, 출력은 temporal_median_gui_20260929.tif로 지정한다. 공간 결과를 지도에 추가를 켠 다음 실행을 누른다.
  5. 로그의 입력 수, 밴드 수, 크기, 완료 메시지를 확인하고 출력 레이어를 지도에서 확인한다.
QGIS NaGeoAI 시계열 합성 입력값과 실행 로그 및 지도 결과
그림 1. 실제 QGIS의 NaGeoAI 시계열 합성 입력·로그·지도 결과. 클릭하면 원본 크기로 볼 수 있다.

4. 출력 검증과 해석 범위

QGIS 로그에는 Creating median composite from 2 scenes, 4 bands, 2721x1420 pixels, Valid observations: 7727640/7727640 (100.0%), Composite created from 2 rasters가 기록되었다. 출력 TIFF의 별도 검사에서도 EPSG:26911, 4밴드, 2,721×1,420픽셀, 0.6m 격자가 유지되었다. 출력은 QGIS 지도에 추가되어 영상 형태로 확인되었다.

QGIS에서 확인한 NAIP 중앙값 합성 영상
그림 2. QGIS 지도에서 확인한 중앙값 합성영상. 이 화면은 변화탐지도가 아니다.

두 장의 유효 관측값에 대한 중앙값은 두 값의 중간값이다. 따라서 이 결과는 시기 사이의 변화를 직접 표시하지 않으며, 두 시기의 피복 상태를 평균화할 수 있다. 촬영 시각·계절·태양고도·센서 차이와 정합 오차는 별도로 검토해야 한다. 분석에 사용하지 않은 배경지도 서비스의 연결 정보는 글과 화면에 포함하지 않았다.

2026-09-28

NaGeoAI 실제 QGIS 실습 1 | 설치부터 NAIP 변화탐지 결과 확인까지

실습 목적과 검증 범위

본 실습에서는 QGIS 3.44.12에서 NaGeoAI 1.9.0의 변화탐지를 실행하여 미국 라스베이거스 지역의 2019년·2022년 NAIP 예제 영상으로 이진 차분 마스크를 작성하였다. 아래 화면은 이번 작업에서 실제로 확인한 장면이다. 설치 ZIP 선택 화면은 재설치 완료 증거가 아니며, 이미 설치된 NaGeoAI의 실행과 분석 결과는 별도로 확인하였다.

1. NaGeoAI ZIP 내려받기와 설치 화면

NaGeoAI-1.9.0.zip 직접 다운로드 또는 GitHub 릴리스 페이지에서 배포본을 받는다. 배포 ZIP SHA-256은 479B508625839070AE952DF5A5E7CE04308A3971A81DF33B238F71AC4FCF9288이다. 설치 전 파일의 출처와 해시를 확인한다.

GitHub 릴리스에서 NaGeoAI 1.9.0 ZIP 다운로드 위치 확인
그림 1. GitHub 릴리스에서 NaGeoAI 1.9.0 ZIP 다운로드 위치 확인

QGIS에서 플러그인 → 플러그인 관리 및 설치 → ZIP에서 설치를 열고 내려받은 ZIP을 지정한다. 새로 설치하는 경우 설치 단추를 누른 뒤 QGIS를 다시 시작하고 NaGeoAI → 변화탐지 메뉴 또는 도구 모음이 나타나는지 확인한다. 이번 컴퓨터는 이미 1.9.0이 설치된 상태였으며, 재설치 단추는 누르지 않았다. 플러그인 관리자가 응답하지 않는 현상이 있어 그 단계의 완료 화면은 제시하지 않는다.

QGIS 플러그인 관리자의 ZIP에서 설치 탭에 배포본을 지정한 화면
그림 2. QGIS 플러그인 관리자의 ZIP에서 설치 탭에 배포본을 지정한 화면

2. 예제 영상 준비

예제는 Source Cooperative의 opengeos/geoai 공개 페이지에 있는 두 NAIP GeoTIFF다. 2019 영상 직접 다운로드와 2022 영상 직접 다운로드를 각각 받는다. 자료를 재배포하지 않고 원본 페이지로 연결한다. 이용 조건은 실제 활용 전에 자료 제공처에서 다시 확인한다.

Source Cooperative의 2019년 NAIP 예제 파일 화면
그림 3. Source Cooperative의 2019년 NAIP 예제 파일 화면
Source Cooperative의 2022년 NAIP 예제 파일 화면
그림 4. Source Cooperative의 2022년 NAIP 예제 파일 화면

두 영상은 모두 EPSG:26911, 2721×1420픽셀, 0.6m 픽셀 크기다. 그러나 2022 영상의 격자 원점은 2019 영상과 일치하지 않는다. 2019 영상의 범위 649647.6 4019223 651280.2 4020075와 크기 2721×1420을 기준으로 GDAL gdalwarp의 bilinear 재표본화를 적용해 2022 영상 사본을 정합하였다. 이는 QGIS에 포함된 GDAL 명령으로 수행한 전처리이며, QGIS의 ‘래스터 정렬’ GUI를 실행 완료했다고 주장하지 않는다. 원본 TIFF는 보존하였다. 작업 폴더가 영상이 있는 위치일 때의 재현 명령은 다음과 같다.

gdalwarp -of GTiff -co TILED=YES -co COMPRESS=LZW -s_srs EPSG:26911 -t_srs EPSG:26911 -te 649647.6 4019223 651280.2 4020075 -ts 2721 1420 -r bilinear las_vegas_naip_2022_a.tif verification/las_vegas_naip_2022_a_aligned_replay.tif

3. QGIS 프로젝트 사본과 입력 영상 확인

기존 QGIS_Play.qgz를 열고 프로젝트 → 다른 이름으로 저장으로 QGIS_Play_NaGeoAI_20260928_replay.qgz 사본을 만들었다. 현재 원본 프로젝트는 EPSG:5187의 빈 레이어 상태로 열렸으므로, 예제 분석은 복사 프로젝트에 새 레이어를 추가하여 수행하였다. 저장된 프로젝트 좌표계와 분석 자료 좌표계는 구별해야 한다.

원본을 덮어쓰지 않고 만든 QGIS 실습 프로젝트 사본
그림 5. 원본을 덮어쓰지 않고 만든 QGIS 실습 프로젝트 사본
QGIS에 불러온 2019년·2022년 원본 NAIP 래스터
그림 6. QGIS에 불러온 2019년·2022년 원본 NAIP 래스터

4. NaGeoAI 변화탐지 실행

QGIS 도구 모음의 변화탐지를 열어 이전 영상은 2019 원본, 이후 영상은 앞서 정합한 2022 사본으로 지정하였다. 분석 밴드는 1(Red), 방식은 절대 차분(원본 픽셀값), 임계값은 20, 출력은 새 GeoTIFF change_mask_gui_replay_20260928.tif로 지정하고 변화탐지 실행을 눌렀다.

NaGeoAI 변화탐지 패널의 이전·이후 영상 및 임계값 설정
그림 7. NaGeoAI 변화탐지 패널의 이전·이후 영상 및 임계값 설정

실제 QGIS 실행 로그에는 “유효 픽셀 3,861,099개 중 변화 2,165,338개 (56.08%)”가 표시되었다. 출력 래스터는 2721×1420픽셀, EPSG:26911, 0.6m 격자이며 0·1 이진값과 NoData 255를 가진다. 화면의 흰색은 설정 임계값을 넘은 후보 픽셀이다.

QGIS 지도에 추가된 변화 마스크와 NaGeoAI 완료 로그
그림 8. QGIS 지도에 추가된 변화 마스크와 NaGeoAI 완료 로그

결과 해석 시 주의사항

56.08%는 적색 밴드의 밝기 차이가 20을 초과한 유효 픽셀 비율이다. 실제 토지피복 변화율·피해면적·분류 정확도가 아니다. 촬영 시기, 조명, 색조, 재표본화와 정합 오차가 결과에 영향을 줄 수 있다. 현장 기준자료나 혼동행렬에 의한 정확도 검증은 이번 실습에서 수행하지 않았다. 모델 기반 기능에 필요한 PyTorch·OpenSR 모델 설치 여부 역시 본 변화탐지 결과만으로 확인할 수 없다.

생성형 AI 사용법 4 | 이미지 생성과 저작권 주의점

생성형 AI 사용법 4 | 이미지 생성과 저작권 주의점

📌 3줄 요약

  • 이미지 생성 AI는 개념 설명용 삽화엔 유용하지만 지도·통계 시각화엔 쓰면 안 된다.
  • 생성된 이미지는 실존 인물·건물·로고가 섞일 수 있어 출처 표기와 검토가 필수다.
  • 저작권·초상권 위험을 줄이려면 생성 전 프롬프트, 생성 후 사용 맥락을 모두 점검해야 한다.

재난안전 업무를 하다 보면 발표 자료나 교육 슬라이드에 넣을 이미지가 늘 부족합니다. 홍수 현장 사진은 저작권이 걸려 있고, 직접 찍은 사진은 화질이 아쉽고, 무료 스톡 이미지는 딱 맞는 장면을 찾기 어렵습니다. 그때 이미지 생성 AI를 쓰면 금방 그럴싸한 그림이 나와서 편리하게 느껴집니다.

그런데 막상 써보면 "이 이미지를 공식 자료에 넣어도 되나?", "지도처럼 생긴 그림을 AI가 만들어 줬는데 정보가 맞나?" 하는 의문이 생깁니다. 이번 글에서는 이미지 생성 AI의 기본 흐름을 살펴보고, 재난안전 실무 자료에 쓸 때 반드시 알아야 할 한계와 주의점을 정리합니다. 지난 편에서 다룬 환각(hallucination) 문제가 텍스트에만 국한되지 않는다는 것, 이미지에서도 똑같이 나타난다는 점이 이번 글의 출발점입니다.

🖼️ 이미지 생성 AI는 어떤 순서로 쓰는 건가요?

이미지 생성 AI는 사용자가 문장(프롬프트)을 입력하면 그 문장에서 단어와 맥락을 읽어 픽셀 단위의 이미지를 만들어 내는 도구입니다. 작동 원리는 수억 장의 이미지-텍스트 쌍을 학습해 "이런 단어가 들어오면 이런 시각 패턴이 어울린다"는 연결을 내부에 쌓아둔 것입니다. 마치 미술학원 선생님이 수천 장의 그림을 보고 나서 "폭우 속 도시"를 그려 달라 하면 빗줄기, 젖은 도로, 어두운 하늘을 함께 구성하는 것과 비슷합니다.

사용 흐름은 대체로 이렇습니다. 도구에 접속해 새 생성 창을 열고, 영어 또는 한국어로 원하는 장면을 구체적으로 묘사한 프롬프트를 입력합니다. 스타일(사진 느낌인지, 일러스트인지), 시점(위에서 내려다보는지, 사람 눈높이인지), 분위기(주간·야간·흐림)를 함께 쓸수록 의도에 가까운 결과가 나옵니다. 생성된 이미지 중 마음에 드는 것을 내려받고, 쓰임에 맞는지 검토한 뒤 자료에 삽입합니다. 재난안전 교육 슬라이드에서 "대피 행동 요령"을 시각화할 때 삽화 스타일 이미지를 빠르게 얻는 용도로 활용할 수 있습니다.

🚫 지도나 통계 그래프를 AI에게 그리게 해도 되나요?

결론부터 말하면, 지도·통계 그래프·수치가 들어간 도표를 이미지 생성 AI로 만드는 것은 실무 자료에 쓰기 매우 위험합니다. 이미지 생성 AI는 '그럴싸하게 보이는 시각 패턴'을 만들도록 학습되었을 뿐, 지리적 좌표나 실측 수치를 내부에 갖고 있지 않습니다. 생성된 지도 이미지에 나오는 행정경계선, 도로망, 강의 위치는 학습 이미지에서 가져온 패턴이지 실제 공간 정보가 아닙니다.

예를 들어 "경상남도 산사태 위험 지역 지도"를 프롬프트로 넣으면 지도처럼 생긴 이미지가 나옵니다. 그러나 거기 표시된 위험 구역은 완전히 지어낸 위치이고, 보는 사람은 그것을 실제 자료로 오해할 수 있습니다. 통계 막대 그래프도 마찬가지로 숫자가 맞지 않습니다. 지도와 통계 시각화는 반드시 QGIS, Google Earth Engine, 공공 데이터 포털의 검증된 데이터로 직접 만들어야 합니다. 홍수 피해 현황 지도를 AI가 그린 이미지로 대체했다가 잘못된 위치 정보가 보고서에 들어가면 의사결정 오류로 이어질 수 있습니다.

⚖️ 생성된 이미지의 저작권은 누구에게 있나요?

이미지 생성 AI로 만든 결과물의 저작권은 나라마다 판단 기준이 다르고, 도구를 제공하는 서비스의 이용 약관에 따라서도 달라집니다. 현재 여러 나라에서 논의가 진행 중이므로, "내가 프롬프트를 썼으니 내 것"이라고 단정하기 어렵습니다. 중요한 것은 두 가지입니다. 첫째, 사용하려는 도구의 이용 약관에서 생성물의 상업적 사용 허용 여부와 출처 표기 의무를 직접 확인해야 합니다. 약관은 서비스가 업데이트될 때마다 바뀔 수 있으므로, 중요한 공공 자료를 만들 때는 사용 시점 기준으로 다시 읽어두는 것이 안전합니다.

둘째, 생성된 이미지가 학습 데이터에 포함된 특정 작가의 화풍을 그대로 재현하거나, 실존하는 유명 사진과 유사한 구도로 나올 수 있습니다. 이럴 때는 원본 저작물 침해 논란이 생길 수 있습니다. 재난안전 기관의 공식 홍보물이나 보도 자료에 사용할 때는 법무 담당자 또는 기관의 저작권 지침을 먼저 확인하는 절차가 필요합니다.

👤 실존 인물이나 실제 장소가 나올 때 어떻게 판단하나요?

이것이 '해봐야 아는 것' 영역입니다. 프롬프트에 특정 인물 이름이나 실제 건물·장소 이름을 쓰지 않더라도, 생성된 이미지에 실존하는 사람의 얼굴과 유사한 인물이 등장하거나 특정 기관의 건물·로고와 닮은 요소가 섞여 나오는 경우가 있습니다. 이를 직접 확인하는 절차는 다음과 같습니다. 생성된 이미지를 눈으로 먼저 살피고, 인물이 포함되어 있다면 역이미지 검색(Google 이미지 검색 또는 유사 서비스에서 이미지를 업로드해 검색)을 해서 실존 인물 사진과 유사한지 확인합니다. 건물이나 로고가 나왔다면 유사성을 직접 비교합니다. 유사도가 높다고 판단되면 해당 이미지는 쓰지 않고 프롬프트를 바꿔 다시 생성하는 것이 안전합니다.

초상권은 살아있는 사람뿐 아니라 일부 나라에서는 사망한 공인에게도 인정될 수 있습니다. 재난 상황을 묘사하는 이미지에서 피해자처럼 보이는 인물이 특정인을 닮았다면 명예훼손이나 초상권 문제로 번질 수 있습니다. 산불 대피 훈련 홍보 포스터에 생성 이미지를 넣을 때도 동일한 기준으로 점검해야 합니다.

📋 생성 이미지를 자료에 넣을 때 어떻게 표기하나요?

생성형 AI 이미지를 공식 자료나 교육 자료에 사용할 때는 출처 표기 방식을 미리 정해두는 것이 좋습니다. 일반적으로는 이미지 아래 또는 자료 말미에 "AI 생성 이미지(사용 도구명, 생성 연월)" 형식으로 표기합니다. 여기서 사용 도구명은 자신이 실제로 쓴 서비스 이름을 그대로 씁니다. 이렇게 하면 자료를 보는 사람이 해당 이미지가 실제 현장 사진이 아니라는 점을 알 수 있고, 정보 오독을 막을 수 있습니다.

기관 내부 지침이나 보고서 작성 기준에 따라 AI 생성물 사용 자체가 제한될 수 있으므로, 처음 쓰기 전에 소속 기관의 관련 지침을 확인하는 것이 순서입니다. 표기 없이 사진처럼 제시하는 것은 정보 윤리 측면에서 문제가 됩니다. 대피 경로 안내 리플릿이나 재난 대응 매뉴얼 같은 신뢰도가 중요한 자료일수록 표기를 명확히 해야 합니다.

🖥️ 화면에서 따라하기

따라하기 단계

  1. 새 생성 창 열기
    사용하는 이미지 생성 AI 도구에 로그인 후 새 이미지 생성 또는 Create 버튼 클릭
  2. 프롬프트 입력
    텍스트 입력란에 장면·스타일·시점·분위기를 포함한 구체적 문장 입력 (예: "aerial view of a flooded residential area, illustration style, daytime")
  3. 이미지 생성
    Generate 또는 이미지 생성 버튼 클릭 후 결과 이미지 4컷 내외 확인
  4. 인물·건물 점검
    생성된 이미지를 구글 이미지 검색 창에 드래그하거나 '이미지로 검색' 클릭해 실존 인물·건물 유사 여부 확인
  5. 이미지 저장
    문제 없으면 Download 또는 저장 버튼으로 파일 내려받기 (도구마다 메뉴 위치가 다를 수 있으며, 못 찾을 때는 도구 공식 도움말에서 'download' 또는 '내려받기' 검색)
  6. 출처 표기
    자료에 삽입 후 이미지 하단에 "AI 생성 이미지([도구명], [생성 연월])" 문구 추가

※ 프로그램 버전에 따라 메뉴 이름이 조금씩 다를 수 있습니다. 위 그림은 순서를 정리한 도식입니다.

✍️ 그대로 복사해 쓰는 프롬프트

재난안전 교육 슬라이드용 삽화 프롬프트를 구체적 맥락 없이 막연하게 쓸 때와 맥락을 갖춰 쓸 때를 비교해 더 나은 결과를 얻기 위한 참고용

[막연한 요청 예시 — 결과 품질이 낮은 이유를 확인하려는 목적]
홍수 그림 그려줘.

[맥락을 갖춘 요청 예시 — 실제로 사용할 때 이 형태로 쓴다]
너는 재난안전 교육 자료를 위한 삽화를 만드는 역할이야.
다음 조건에 맞는 이미지 프롬프트(영어)를 작성해줘. 내가 이미지 생성 AI 도구에 직접 붙여 넣을 거야.
장면: [홍수로 침수된 주택가, 주민이 대피 가방을 들고 이동하는 모습]
스타일: 실사 사진이 아닌 깔끔한 디지털 일러스트레이션
시점: 사람 눈높이
인물: 특정 인종·성별을 연상시키지 않는 중립적 실루엣
포함하지 말 것: 실존 건물 로고, 특정 인물 얼굴, 지명이 적힌 간판
결과 형식: 이미지 생성 AI에 바로 쓸 수 있는 영어 프롬프트 1개, 한국어 설명 1~2줄

※ 대괄호 부분을 상황에 맞게 바꿔서 쓰세요. 받은 답은 그대로 쓰지 말고 사실 확인을 거치세요.

🧪 직접 해보기

  • 이미지 생성 AI 도구에서 "홍수 피해 현장 지도" 같은 지도형 프롬프트를 입력해 결과가 실제 지리 정보와 얼마나 다른지 직접 눈으로 확인해 본다.
  • 생성된 이미지를 구글 이미지 검색의 '이미지로 검색' 기능에 업로드해 실존 인물·사진과 얼마나 유사한지 비교해 보고, 유사 결과가 나오는지 확인한다.
  • 자신이 사용하려는 이미지 생성 AI 도구의 이용 약관 페이지에서 '상업적 사용', '저작권', '출력물 소유권' 항목을 찾아 현재 기준을 직접 읽어본다.

❓ 자주 묻는 질문

Q. AI가 만든 이미지를 공공기관 보고서에 써도 되나요?
A. 기관마다 내부 지침이 다르고, 도구별 이용 약관도 다르므로 일률적으로 답하기 어렵습니다. 먼저 소속 기관의 저작물·AI 활용 지침을 확인하고, 사용 도구의 약관에서 공공·상업적 사용 허용 여부를 직접 읽어본 뒤 결정하는 것이 안전합니다.

Q. 프롬프트에 특정 인물 이름을 쓰지 않으면 초상권 문제가 없나요?
A. 이름을 쓰지 않아도 생성된 이미지가 실존 인물을 닮은 얼굴로 나오는 경우가 있습니다. 결과물을 역이미지 검색으로 직접 확인하고, 유사성이 높다고 판단되면 사용하지 않는 편이 안전합니다.

Q. AI 이미지에 출처를 어떻게 표기해야 하나요?
A. 정해진 국제 표준은 아직 명확하지 않지만, "AI 생성 이미지(사용 도구명, 생성 연월)" 형식을 이미지 아래나 자료 말미에 적는 방식이 일반적으로 쓰입니다. 기관 내부 가이드라인이 있다면 그것을 따르는 것이 우선입니다.

이미지 생성 AI는 개념 설명용 삽화나 분위기 묘사 이미지를 빠르게 얻는 데 유용한 도구입니다. 하지만 지도, 통계 그래프, 수치 정보처럼 정확성이 생명인 시각 자료를 대체할 수 없고, 저작권·초상권 문제는 생성 전과 생성 후 두 단계에서 모두 점검해야 합니다. 무엇보다 AI가 만든 이미지라는 사실을 자료에 명시하는 것이 정보 신뢰를 지키는 기본입니다. 재난안전 실무에서 시각 자료의 신뢰성은 곧 현장 대응 판단의 신뢰성과 연결됩니다. 다음 편에서는 이미지가 아닌 표·서식 같은 구조화된 자료를 생성형 AI로 만들 때 어떤 방식이 효과적이고 어디서 오류가 자주 생기는지를 살펴볼 예정입니다.

생성형AI 사용법 시리즈 4편 · 전체 15편


재난안전과 GeoAI 이야기를 더 보고 싶다면 아래 채널도 함께 보세요.

📌 바로가기

산사태 위험지도는 어떻게 만드나 | 취약성 모델링 | GeoAI 기초 13편

산사태 위험지도는 어떻게 만드나 | 취약성 모델링 | GeoAI 기초 13편

🎬 1분 브리핑 영상

📌 3줄 요약

  • 경사·지질·강우 등 공간 인자를 조합해 산사태 취약성 지도를 만든다.
  • 통계 모델과 머신러닝 모델은 원리가 다르지만 목표는 같다.
  • 위험지도의 숫자는 확률이지 예언이 아니므로 해석에 주의가 필요하다.

장마철이 끝나고 뉴스에 "이 지역은 산사태 위험 1등급"이라는 자막이 뜹니다. 그 숫자는 어디서 나온 걸까요? 누군가가 산을 직접 걸어 다니며 위험도를 매긴 것은 아닙니다. 경사각, 지질 특성, 과거 강우 기록, 토지피복 정보 같은 여러 공간 데이터를 모아 모델에 넣고 계산한 결과입니다.

산사태 위험지도를 만드는 과정을 취약성 모델링이라고 합니다. 취약성(vulnerability)이란 어떤 조건에서 재난이 발생하기 쉬운 정도를 수치로 표현한 것입니다. 이 모델이 어떻게 만들어지고, 지도를 읽을 때 무엇을 조심해야 하는지 차근차근 살펴보겠습니다.

🏔️ 산사태 위험지도를 만들 때 어떤 데이터가 필요한가요?

취약성 모델링의 첫 단계는 입력 인자를 고르는 일입니다. 입력 인자란 산사태 발생과 관련이 있다고 알려진 지형·지질·기상 정보를 말합니다. 가장 기본이 되는 것은 경사각입니다. 경사가 가파를수록 중력 방향으로 토양이 미끄러지기 쉽습니다. 여기에 경사 방향(사면향), 곡률(지표면이 오목한지 볼록한지)도 함께 씁니다.

지질 정보도 중요합니다. 같은 경사라도 암석이 풍화된 정도, 점토 함량, 투수성에 따라 물이 스며드는 속도가 달라집니다. 강우 자료는 누적 강우량과 시간당 강도를 모두 고려합니다. 토지피복(숲, 나지, 논밭 등)은 뿌리가 토양을 붙잡는 효과를 반영합니다. 이 밖에 도로 절개지나 계곡 거리 같은 인위적 요소도 포함할 수 있습니다. 실무에서는 각 기관이 보유한 수치 표고 모델(DEM)과 지질도, 기상 관측 데이터를 GIS에서 같은 격자 크기로 정렬하는 작업부터 시작합니다.

📊 통계 모델로 취약성을 계산하면 어떤 원리인가요?

통계 기반 모델의 대표적인 방식은 로지스틱 회귀(logistic regression)입니다. 회귀라는 이름이 낯설어도 개념은 단순합니다. 과거에 산사태가 났던 지점과 나지 않은 지점을 비교해서, 어떤 인자 조합이 산사태와 얼마나 함께 나타났는지 수치로 정리하는 것입니다. 결과는 0과 1 사이의 값, 즉 발생 가능성으로 표현됩니다.

비슷한 원리의 도구로 빈도비(frequency ratio) 방법이 있습니다. 전체 지역에서 특정 경사 범위가 차지하는 면적 대비 그 범위에서 실제 산사태가 일어난 비율을 계산해 가중치를 매기는 방식입니다. 계산이 투명해서 결과를 설명하기 쉽다는 장점이 있습니다. 재난안전 담당자가 지방자치단체에 위험 등급을 설명할 때, 어떤 인자가 얼마나 기여했는지 보여 줄 수 있어 실무에서도 많이 활용됩니다.

🤖 머신러닝 모델은 통계 모델과 무엇이 다른가요?

머신러닝 모델은 인자 간의 비선형 관계를 스스로 찾아냅니다. 예를 들어 랜덤 포레스트(random forest)는 수백 개의 결정 트리를 만들고 투표로 결과를 냅니다. 결정 트리는 "경사 30도 이상이면서 점토 함량이 높으면 위험"처럼 조건을 나무 가지처럼 분기하는 구조입니다. 여러 트리의 의견을 합치니 한 트리가 과적합되는 문제를 줄일 수 있습니다.

모델을 직접 써보고 싶다면 파이썬의 scikit-learn 라이브러리로 시작할 수 있습니다.

from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import roc_auc_score

X_train, X_test, y_train, y_test = train_test_split(
    features, labels, test_size=0.2, random_state=42
)
model = RandomForestClassifier(n_estimators=100, random_state=42)
model.fit(X_train, y_train)
print("AUC:", roc_auc_score(y_test, model.predict_proba(X_test)[:,1]))

AUC(수신자 조작 특성 곡선 아래 면적)는 모델이 산사태 발생 지점과 미발생 지점을 얼마나 잘 구분하는지 보여주는 지표입니다. 1에 가까울수록 구분 능력이 높습니다. 실무 적용 전에 검증 데이터로 반드시 이 값을 확인해야 합니다.

🗺️ 완성된 위험지도, 어떻게 읽어야 하나요?

취약성 지도는 격자(픽셀) 또는 소유역 단위로 색깔을 달리해 등급을 표시합니다. '매우 높음'으로 표시된 구역은 과거 발생 패턴과 입력 인자를 종합했을 때 상대적으로 위험도가 높다는 뜻입니다. 반드시 기억해야 할 점은 이 값이 확률이지 예언이 아니라는 것입니다. 위험도가 낮은 구역에서도 예상치 못한 강우나 지형 변화로 산사태가 발생할 수 있고, 높은 구역이라고 해서 반드시 이번 장마에 무너진다는 뜻이 아닙니다.

해봐야 아는 것도 있습니다. 모델이 출력한 지도를 현장 사진이나 최근 항공영상과 겹쳐보면, 실제 산사태 흔적이 고위험 구역과 얼마나 일치하는지 직접 눈으로 확인할 수 있습니다. QGIS에서 래스터 레이어를 불러온 뒤 레이어 패널에서 오른쪽 클릭 > 속성 > 심볼로지 탭에서 단계 구분 색상을 설정하고, 위성영상 레이어를 아래에 깔아 투명도를 조절해 보면 지도의 신뢰성을 직관적으로 점검할 수 있습니다.

⚠️ 위험지도를 실무에 쓸 때 어떤 한계를 알아야 하나요?

모델은 학습 데이터 품질에 크게 좌우됩니다. 과거 산사태 목록이 불완전하거나 특정 지역에만 편중되어 있으면, 모델도 그 편향을 그대로 이어받습니다. 또한 입력 인자의 공간 해상도가 낮으면(예: 경사 데이터가 30m 격자일 때) 좁은 계곡이나 절개지처럼 세밀한 위험 구역을 놓칠 수 있습니다.

모델 종류마다 결과가 다르게 나오는 것도 흔한 일입니다. 같은 지역을 로지스틱 회귀와 랜덤 포레스트로 각각 분석하면 고위험 구역의 위치와 면적이 달라질 수 있습니다. 따라서 단일 모델의 결과를 절대적으로 믿기보다는 여러 모델의 결과를 비교하거나 앙상블(여러 모델의 결과를 합산)하는 방법을 씁니다. 실무에서는 위험지도를 만든 기관, 사용한 데이터의 기준 연도, 모델 검증 지표를 메타데이터로 함께 보관해야 다음 담당자가 지도를 올바르게 해석할 수 있습니다.

🖥️ 화면에서 따라하기

따라하기 단계

  1. DEM 내려받기
    국토지리정보원 공개 DEM 포털에서 연구 대상 지역의 수치 표고 모델 파일을 내려받는다.
  2. QGIS 불러오기
    QGIS 상단 메뉴 레이어 > 레이어 추가 > 래스터 레이어에서 내려받은 DEM 파일을 선택하고 추가를 누른다.
  3. 경사 계산
    상단 메뉴 래스터 > 분석 > 경사(Slope)를 선택하고 입력 레이어에 DEM을 지정한 뒤 실행을 누른다 (메뉴 위치는 QGIS 버전에 따라 다를 수 있으며, 못 찾으면 상단 검색창에 'Slope'를 입력한다).
  4. 심볼로지 설정
    경사 레이어에서 오른쪽 클릭 > 속성 > 심볼로지 탭에서 단일 밴드 의사 색상을 선택하고 등급 수를 5로 지정한 뒤 분류를 누른다.
  5. 위성영상 겹치기
    XYZ Tiles에서 Google Satellite 레이어를 레이어 패널 아래쪽으로 드래그해 배치하고, 경사 레이어의 투명도를 50%로 조절해 두 레이어를 함께 본다.
  6. 결과 점검
    실제 산사태 발생 이력 지점(시도 재난안전 부서 제공 데이터)을 벡터 레이어로 불러와 고경사 구역과 일치 여부를 눈으로 확인한다.

※ 프로그램 버전에 따라 메뉴 이름이 조금씩 다를 수 있습니다. 위 그림은 순서를 정리한 도식입니다.

✍️ 그대로 복사해 쓰는 프롬프트

산사태 취약성 분석 결과를 주민 설명 자료나 내부 보고서 형식으로 정리할 때 사용

당신은 재난안전 분야 보고서 작성을 돕는 전문 보조자입니다.
아래 조건에 맞게 산사태 취약성 분석 결과 요약문을 작성해 주세요.

- 대상 지역: [시·군·구명]
- 분석에 사용한 주요 인자: [경사, 지질, 강우 등 실제 사용 인자 목록]
- 모델 종류: [로지스틱 회귀 / 랜덤 포레스트 / 기타]
- 고위험 구역 비율: [전체 면적 대비 %]
- 모델 검증 지표(AUC 등): [값]

작성 조건:
1. 주민이나 비전문가도 이해할 수 있도록 전문용어는 괄호 안에 짧게 설명한다.
2. 위험지도는 확률적 결과이며 예언이 아님을 명시하는 문장을 반드시 포함한다.
3. 결과를 과장하거나 특정 지점이 반드시 붕괴된다는 표현은 쓰지 않는다.
4. 분량은 A4 반 페이지(약 400자) 이내로 한다.
5. 작성 후 사람이 확인해야 할 항목을 별도로 3가지 나열한다.

※ 대괄호 부분을 상황에 맞게 바꿔서 쓰세요. 받은 답은 그대로 쓰지 말고 사실 확인을 거치세요.

🧪 직접 해보기

  • 국토지리정보원 브이월드(Vworld) 지도 서비스에서 '산사태 위험지도' 레이어를 켜고, 내가 사는 지역의 등급을 직접 확인해 본다.
  • QGIS에서 공개 DEM 데이터를 내려받아 경사 분석을 실행하고, 결과 색상이 지형과 눈으로 봤을 때 일치하는지 위성영상과 겹쳐 비교해 본다.
  • 같은 지역에 대해 로지스틱 회귀와 랜덤 포레스트를 각각 돌려 결과 지도가 어떻게 달라지는지 비교하며 모델 선택의 영향을 직접 느껴본다.

❓ 자주 묻는 질문

Q. 산사태 위험지도에서 '1등급'이 나오면 무조건 위험한 건가요?
A. 1등급은 동일한 조건의 지역 중 상대적으로 취약성이 높다는 뜻이지, 반드시 산사태가 발생한다는 예언이 아닙니다. 등급은 모델이 사용한 데이터와 기준에 따라 달라질 수 있으므로, 지도를 만든 기관의 메타데이터(사용 데이터, 기준 연도, 검증 지표)를 함께 확인하는 것이 중요합니다.

Q. 머신러닝 모델이 통계 모델보다 항상 더 정확한가요?
A. 어떤 모델이 더 정확한지는 데이터 품질, 지역 특성, 학습 샘플 수에 따라 달라집니다. 머신러닝 모델은 복잡한 패턴을 잘 잡지만 결과를 설명하기 어렵고, 통계 모델은 해석이 쉽지만 비선형 관계를 놓칠 수 있습니다. 두 접근법의 장단점을 이해하고 목적에 맞게 선택하는 것이 바람직합니다.

Q. 강우 데이터 없이 경사와 지질 정보만으로도 위험지도를 만들 수 있나요?
A. 가능은 하지만 정확도가 떨어질 수 있습니다. 산사태는 강우가 방아쇠 역할을 하는 경우가 많아, 강우 인자를 제외하면 같은 지형에서도 발생 시점을 반영하지 못합니다. 보유한 데이터 종류에 따라 인자를 조합하되, 모델 검증 지표로 결과의 신뢰성을 반드시 점검해야 합니다.

산사태 위험지도는 수십 년의 지형·지질 정보와 기상 기록을 수치로 압축한 결과물입니다. 그 지도를 보는 사람이 확률과 예언의 차이를 이해하고 있어야 올바른 대피 계획과 예산 결정으로 이어질 수 있습니다. 모델이 틀릴 수 있다는 것을 알면서도 최선의 판단을 내리는 것, 그것이 재난안전 실무의 핵심입니다. 다음 편에서는 이렇게 만들어진 위험지도를 대피로 계획이나 주민 대피 의사결정에 어떻게 연결하는지, 공간 네트워크 분석의 기초를 함께 살펴보겠습니다.

GeoAI 기초 시리즈 13편 · 전체 43편


재난안전과 GeoAI 이야기를 더 보고 싶다면 아래 채널도 함께 보세요.

📌 바로가기

GeoAI 위성·드론 영상 분석, 재난대응 산업이 뜬다 | 재난안전과 GeoAI

GeoAI 위성·드론 영상 분석 기술이 재난대응 산업의 중심으로 떠오르고 있다. 누리호 5차 발사, 위성·드론 영상 분석 스타트업, ArcGIS 경사지 위험 분석 서비스까지 오늘의 관련 소식을 정리했다. 📌 3줄 요약 아크넥사는 위성·드론 영상을...