위성·드론 영상에서 필지 경계 자동 추출하기 — AI(SAM) 선따기 원리와 요령
SNS에서 “클릭 한 번에 논밭 경계가 쫙 따지는” QGIS 딥러닝 영상을 보셨을 겁니다. 실제로 그 수준을 브라우저에서 재현하려고 GISDirect의 경계 자동 추출을 여러 방식으로 만들어 봤습니다. 이 글은 그 과정에서 얻은, “무엇이 되고 무엇이 안 되는지”에 대한 솔직한 정리입니다.
경계 추출에는 크게 두 갈래가 있다
1. 영상처리 방식 (엣지·리지 감지)
밝기 차이가 급격한 곳을 “경계”로 보고 선을 추적하는 고전적 방법입니다. 학습이 필요 없고 가볍고 빠릅니다. 논둑처럼 대비가 뚜렷한 경계에는 잘 통하지만, 그림자·질감·작물 무늬를 경계로 오인하기 쉽습니다.
2. AI 세그멘테이션 방식 (SAM 등)
Meta의 SAM(Segment Anything Model) 같은 딥러닝 모델은 “이건 하나의 덩어리”라는 개념을 학습해, 밝기가 아니라 의미 단위로 영역을 나눕니다. 필지·건물처럼 사람이 “한 덩어리”로 인식하는 대상을 더 자연스럽게 잡아냅니다. GISDirect는 SAM 인코더/디코더를 브라우저에서 ONNX로 실행해, 서버 없이 이 방식을 돌립니다.
| 영상처리 | AI 세그멘테이션 | |
|---|---|---|
| 속도 | 빠름 | 느림(모델 로딩) |
| 경계 자연스러움 | 거침 | 매끈함 |
| 오탐(그림자 등) | 많음 | 적음 |
| 필요 조건 | 없음 | 모델 파일 |
잘 뽑히는 조건
어떤 방식이든 “입력 영상의 품질”이 결과의 8할을 정합니다. 경험상 이런 조건에서 결과가 좋았습니다.
- 고해상도: 드론 정사영상이나 고해상 위성처럼 경계가 픽셀 단위로 또렷할수록 좋습니다.
- 뚜렷한 경계: 논둑·밭두렁·도로처럼 인접 구획과 색·질감이 다를 때 잘 갈립니다.
- 낮은 그림자: 정오 무렵 촬영본이 유리합니다. 긴 그림자는 가짜 경계를 만듭니다.
- 단순한 작물 상태: 수확 후 나지나 균일한 생육기 영상이, 반점처럼 얼룩진 상태보다 낫습니다.
현실적인 기대치: “화면의 모든 필지가 100% 빠짐없이, 클릭 한 번에” — 이건 어떤 도구도 완벽히는 못 합니다. SNS 영상은 대개 조건이 좋은 시연 데이터입니다. AI 추출은 초안을 매우 빠르게 만들어 주는 도구로 보고, 몇 군데는 손으로 다듬는다는 전제로 쓰는 게 맞습니다. 그래도 처음부터 전부 손으로 그리는 것에 비하면 시간이 크게 절약됩니다.
추출 후 다듬기
자동 추출 결과는 그대로 쓰기보다 후처리를 거치면 훨씬 쓸 만해집니다.
- 병합·분할: 하나여야 할 필지가 쪼개졌거나, 여러 필지가 붙었으면 정리합니다.
- 직각 보정: 인공 구조물 경계는 45°/90°로 정렬하면 깔끔해집니다.
- 면적 검수: 비정상적으로 작거나 큰 폴리곤을 걸러냅니다. 면적 계산과 중첩 검사가 여기서 유용합니다.
- 내보내기: GeoJSON·SHP·엑셀로 저장해 QGIS·ArcGIS로 넘길 수 있습니다.
브라우저에서 해보기
GISDirect의 경계 자동 추출은 설정 없이 원클릭으로 동작하는 자동 모드와, 클릭 프롬프트로 원하는 영역만 집는 방식, 그리고 “모든 라인 따기”처럼 감지된 선을 전부 벡터화하는 모드를 함께 제공합니다. SAM 모델을 쓰면 더 매끈한 경계가, 영상처리 모드는 더 빠른 초안이 나옵니다.
직접 해보기 → 경계 자동 추출 도구에 위성·드론 영상을 올려 필지·구획 경계를 벡터화해 보세요. 그린 경계를 직접 편집하려면 지오레퍼런싱으로 좌표를 맞춘 뒤 편집 도구를 쓰면 됩니다.