coredot.today
SAM 2 완전 해부: 이미지를 넘어 영상 분할까지 — 자율주행·의료·VFX의 혁명
블로그로 돌아가기
SAM 2Segment Anything비디오 분할제로샷자율주행의료 AI컴퓨터 비전

SAM 2 완전 해부: 이미지를 넘어 영상 분할까지 — 자율주행·의료·VFX의 혁명

클릭 한 번으로 이미지의 모든 것을 분할하던 SAM이, 이제 영상의 모든 프레임을 관통한다. SAM 2의 메모리 아키텍처, 50.9K 비디오 데이터셋, 그리고 자율주행·의료·VFX까지 — 비디오 이해 AI의 모든 것.

코어닷투데이2025-12-2032

들어가며

2023년 4월, Meta FAIR가 SAM(Segment Anything Model)을 발표했을 때, 컴퓨터 비전 커뮤니티는 열광했다. 이미지 위에 점 하나만 찍으면 — 고양이든, 자동차든, 나뭇잎이든 — AI가 그 객체의 경계를 정확하게 잘라냈다. 11억 개의 마스크로 학습된 이 모델은 "이미지 분할의 GPT 모멘트"라고 불렸다. GitHub 스타 48,000개 이상, 수천 편의 후속 논문이 쏟아졌다.

하지만 SAM에는 결정적 한계가 있었다. 영상(video)을 이해하지 못했다. SAM은 각 프레임을 독립된 이미지로 처리했다. 1번 프레임에서 분할한 고양이가 2번 프레임에서 같은 고양이인지 알 수 없었다. 고양이가 소파 뒤로 숨었다가 다시 나타나면? SAM은 그것이 같은 고양이인지 전혀 모른다.

2024년 7월, SAM 2가 이 문제를 해결했다. 그리고 2025년 11월, SAM 3까지 등장했다.

영상 분할하는 로봇

이 글은 이미지 분할의 역사적 기원부터, SAM 2의 핵심 혁신인 메모리 아키텍처, 실제 산업 적용 사례, 그리고 SAM 3까지의 진화를 완전 해부한다.


제1장: 이미지 분할의 역사 — 픽셀을 나누는 기술

전통적 방법: 손으로 규칙을 만들던 시대

이미지 분할(image segmentation)은 컴퓨터 비전의 가장 오래된 문제 중 하나다. "이미지에서 어떤 픽셀이 어떤 객체에 속하는가?"를 결정하는 것이다.

1970-1990년대의 주요 기법:

  • 임계값(Thresholding): 가장 단순한 방법. 밝기가 특정 값 이상이면 전경, 이하면 배경. 1979년 Otsu가 최적 임계값을 자동 결정하는 방법을 제안
  • 에지 검출(Edge Detection): 1986년 캐니(Canny)가 제안한 다단계 에지 검출기가 대표적
  • 워터셰드(Watershed): 이미지를 지형으로 보고, 배수 유역의 경계를 찾는 기법. 과분할(over-segmentation) 문제가 심각

이 방법들은 규칙 기반이었다. 연구자가 직접 "경계는 이런 모양이다"라는 규칙을 설계해야 했고, 복잡한 장면에서는 무력했다.

딥러닝 혁명: FCN에서 Mask R-CNN까지

FCN (2014): 분류 네트워크(AlexNet, VGG)를 완전 합성곱(fully convolutional)으로 변환해 픽셀 단위 예측을 가능하게 한 최초의 시도. Jonathan Long, Evan Shelhamer, Trevor Darrell. CVPR 2015.

U-Net (2015): 독일 프라이부르크 대학의 Olaf Ronneberger 등이 의료 영상 분할을 위해 설계. 인코더-디코더 구조에 스킵 연결을 추가해 적은 데이터로도 정밀한 분할을 달성. 의료 AI의 표준 아키텍처가 됐다.

Mask R-CNN (2017): Kaiming He 등이 Faster R-CNN에 마스크 예측 분기를 추가. 객체 탐지와 인스턴스 분할을 동시에 수행. RoIAlign으로 서브픽셀 정확도를 달성. ICCV 2017.

FCN (2014) U-Net (2015) Mask R-CNN (2017)
DeepLab v3+ (2018) SAM (2023) SAM 2 (2024)

DeepLab 시리즈 (2015-2018): Google의 Liang-Chieh Chen 등. 확장 합성곱(dilated/atrous convolution)ASPP(Atrous Spatial Pyramid Pooling)로 다중 스케일 컨텍스트를 포착. DeepLabv3+(2018)가 시맨틱 분할의 SOTA를 수립.

패노픽 분할: 통합의 시도 (2019)

2019년, Alexander Kirillov 등(같은 사람이 나중에 SAM을 만든다)이 패노픽 분할(Panoptic Segmentation)을 제안했다. 시맨틱 분할(하늘, 도로 같은 "stuff")과 인스턴스 분할(자동차 A, 자동차 B 같은 "thing")을 하나로 통합하는 과제다. 새로운 평가 지표 PQ(Panoptic Quality)도 제안했다.

이 연구는 SAM의 직접적 전조였다. "분할"을 통합적으로 바라보는 시각이 2023년 "Segment Anything"으로 이어진다.


제2장: SAM — 분할의 GPT 모멘트 (2023)

"Segment Anything"의 등장

2023년 4월, Meta FAIR의 Alexander Kirillov 등 12명이 발표한 "Segment Anything"은 컴퓨터 비전의 판도를 바꿨다.

아키텍처: 프롬프트로 분할하다

SAM 아키텍처 (3개 구성요소)
이미지 인코더 ViT-H (MAE 사전학습)
이미지를 임베딩으로 변환 (1회)
프롬프트 인코더 점, 박스, 텍스트, 마스크
사용자 입력을 인코딩
마스크 디코더 경량 트랜스포머
이미지+프롬프트 → 분할 마스크

핵심 혁신은 프롬프터블 분할(Promptable Segmentation)이다. 사용자가 점을 찍거나, 박스를 그리거나, 텍스트를 입력하면 그에 맞는 분할 결과를 생성한다. "이 점이 가리키는 객체를 잘라내라."

SA-1B: 사상 최대 분할 데이터셋

SAM의 또 다른 기여는 SA-1B 데이터셋이다. 1,100만 장의 이미지에 11억 개의 마스크. 이전 최대 분할 데이터셋(Open Images)보다 이미지는 11배, 마스크는 400배 많다. 3단계 데이터 엔진(수동 보조 → 반자동 → 완전 자동)으로 구축됐다.

SAM의 한계: 프레임 사이의 벽

SAM은 정지 이미지에서 경이로운 성능을 보였다. 하지만 비디오에서는 무력했다:

  1. 시간적 일관성 없음 — 프레임 1의 고양이와 프레임 2의 고양이를 연결 못함
  2. 메모리 없음 — 이전 프레임의 결과를 다음 프레임에 활용할 방법 없음
  3. 가림(occlusion) 처리 불가 — 객체가 숨었다 나타나면 추적 실패
  4. 프레임별 독립 처리 — 영상의 본질인 "시간적 연속성"을 무시

비디오 분할을 위해서는 SAM에 XMem이나 Cutie 같은 별도 추적기를 붙여야 했다. 하지만 이런 조합은 불완전했다.


제3장: SAM 2 — 영상을 이해하는 눈 (2024)

논문 정보

  • 제목: "SAM 2: Segment Anything in Images and Videos"
  • 저자: Nikhila Ravi 등 18명 (Meta FAIR)
  • arXiv: 2408.00714 (2024년 8월)
  • 라이선스: Apache 2.0 (코드+가중치), CC BY 4.0 (데이터셋)

핵심 혁신: 메모리가 있는 분할

SAM 2의 결정적 차이는 메모리(memory)다. SAM이 각 프레임을 독립적으로 처리한다면, SAM 2는 이전 프레임의 기억을 가지고 현재 프레임을 처리한다.

SAM 2 아키텍처 (4개 구성요소)
이미지 인코더 (Hiera) 계층적 ViT — 다중 스케일 특징 추출 (1/4, 1/8, 1/16, 1/32)
SAM의 ViT보다 6배 빠른 130 FPS
메모리 어텐션 4개 트랜스포머 블록
현재 프레임 ← 과거 기억 참조
메모리 뱅크 최근 6프레임(FIFO) + 프롬프트 프레임
+ 객체 포인터 벡터
마스크 디코더 + 가림 헤드 분할 마스크 + 가시성(가림 여부) 예측
메모리 인코더 현재 예측을 메모리로 변환 → 메모리 뱅크 저장

스트리밍 아키텍처: 무한 길이 영상을 실시간으로

SAM 2의 스트리밍 아키텍처는 비디오 프레임을 한 번에 하나씩 순차적으로 처리한다. 전체 비디오를 한꺼번에 볼 필요가 없으므로, 임의의 길이의 영상을 실시간으로 처리할 수 있다.

메모리 뱅크는 슬라이딩 윈도우(기본 6프레임)처럼 작동한다. 오래된 기억은 밀려나고, 최근 기억이 유지된다. 프롬프트가 주어진 프레임은 별도로 보존된다.

메모리가 비어 있으면(= 단일 이미지), SAM 2는 정확히 SAM처럼 작동한다. 하나의 모델이 이미지와 비디오 모두를 처리한다.

가림(Occlusion) 처리: "보이지 않아도 기억한다"

SAM 2의 가장 인상적인 기능 중 하나는 가림 처리다. 전용 가림 헤드(Occlusion Head)가 "이 객체가 현재 보이는가?"를 예측한다.

객체가 가려지면(소파 뒤로 숨은 고양이):

  1. 가림 헤드가 "가려짐"을 예측
  2. 메모리 뱅크에 공간 특징 대신 학습된 가림 임베딩을 저장
  3. 객체 포인터 벡터가 의미 정보를 유지 (= "이건 고양이"라는 정체성)
  4. 객체가 다시 나타나면, 메모리 어텐션이 가림 전 특징을 검색해 재식별

SA-V 데이터셋의 수동 어노테이션 중 42.5%에서 객체가 사라지는 장면이 포함된다. 이것은 의도적 설계다 — 가림과 재출현을 잘 다루도록 모델을 학습시킨 것이다.

SA-V: 50.9K 비디오, 3,550만 마스크

SAM 2를 위해 구축된 SA-V 데이터셋:

항목수치
비디오 수50,900개 (47개국)
총 마스크릿(masklet)642,600개 (수동 190.9K + 자동 451.7K)
개별 마스크3,550만 개
총 영상 시간196시간 (평균 14초/영상)
이전 최대 대비비디오 4.5배, 마스크 53배

성능: 모든 벤치마크에서 SOTA

반자동 비디오 분할 성능 (J&F 점수)
SA-V test
SAM 2: 78.4 vs Cutie: 62.8
MOSE
SAM 2: 77.9 vs Cutie: 71.7
LVOS
SAM 2: 78.0 vs Cutie: 66.0
DAVIS 2017
SAM 2: 90.7 vs JointFormer: 90.1

SA-V에서 이전 SOTA(Cutie) 대비 +15.6포인트, LVOS에서 +12포인트. 이미지 분할에서도 SAM 1보다 6배 빠르면서 동등 이상의 성능.

모델 변형과 속도

모델파라미터A100 FPS용도
Hiera Tiny38.9M47.2모바일/엣지
Hiera Small46M84.8실시간 처리
Hiera Base+80.8M43.8균형
Hiera Large224.4M30.2최고 정확도

어노테이션 혁명: 8.4배 빠르게

SAM 2의 대화형 비디오 어노테이션은 영상 라벨링의 생산성을 극적으로 높인다.

프레임당 어노테이션 시간
SAM (프레임별 수동)
37.8초/프레임
SAM + SAM 2 마스크
7.4초/프레임 (5.1배↑)
SAM 2 전체
4.5초/프레임 (8.4배↑)

워크플로우: 첫 프레임에 프롬프트(클릭/박스) → SAM 2가 전체 영상에 전파 → 오류 프레임에서 수정 프롬프트 → 재전파. 품질은 유지되면서(마스크 정렬 89.1%) 속도가 8.4배 향상.


제4장: 실전 적용 — 자율주행, 의료, VFX

SAM 2 활용 분야

자율주행: 실시간 환경 이해

자율주행에서 SAM 2의 가치는 가림 상황의 강인한 추적에 있다. 앞 차가 보행자를 잠시 가리다 다시 보행자가 나타나는 상황 — 이것은 자율주행 안전의 핵심 시나리오다.

Seg2Track-SAM2 연구 결과: KITTI MOTS 테스트셋에서 차량 추적 HOTA 74.11%, 보행자 추적 59.93%. SAM 2의 메모리 메커니즘이 가림 후 재식별을 안정적으로 수행한다.

실시간 성능도 중요하다. Hiera Small 모델은 A100에서 84.8 FPS — 자율주행에 필요한 30 FPS를 크게 상회한다.

의료 영상: 종양 추적에서 수술 보조까지

의료 분야는 SAM 2의 가장 활발한 응용 영역이다.

일반 의료 영상: SAM 2를 파인튜닝하면 평균 IoU가 0.690에서 0.827로 +13.7% 향상, Dice 계수가 +15.58% 향상된다.

수술 영상 분할(SurgiSAM2): 이전 SOTA 대비 24/30 장기 클래스(80%)에서 우위. 학습하지 않은 장기에 대해서도 77.8% SOTA 수준의 일반화.

실시간 수술 보조(SurgSAM-2): EndoVis17 데이터셋에서 J&F 88.0%, Dice 91.4% 달성. SAM 2 대비 3배 빠른 FPS.

적용 장기: 뇌종양, 간, 췌장, 간혈관, 비장, 폐, 전립선, 대장 등에서 평가.

VFX와 영상 편집: 로토스코핑의 종말

로토스코핑(rotoscoping) — 영상에서 객체를 프레임별로 수동 분리하는 작업 — 은 VFX에서 가장 노동 집약적인 작업 중 하나였다. 숙련된 아티스트가 1분 영상에 수일을 투자해야 했다.

SAM 2는 이것을 분 단위로 줄인다. 첫 프레임에서 객체를 클릭하면 나머지 프레임에 자동 전파. 오류가 있는 프레임만 수정하면 된다.

적용 사례: 객체 제거, 배경 교체, 합성, 추적 인포그래픽 오버레이, 초현실적 풍경 합성 등.

로보틱스: 실세계에서 시뮬레이션으로

GRS(Generating Robotic Simulation tasks) 연구에서 SAM 2는 real-to-sim 파이프라인의 핵심이다. 실제 장면을 SAM 2로 분할 → 3D 에셋 매칭 → 시뮬레이션 환경 자동 생성. 로봇이 실제 환경에서 데이터를 수집하지 않고도 가상 환경에서 학습할 수 있게 된다.

관절 객체 조작: SAM 2의 추적이 3D 동역학을 포착해, 로봇 팔의 정밀한 축 추정과 조작 계획에 활용된다.


제5장: SAM 2.1과 커뮤니티 확장 (2024-2025)

SAM 2.1 (2024년 9월)

출시 2개월 만에 SAM 2.1 Developer Suite가 공개됐다. 주요 개선:

  • 다양한 데이터셋에서 전반적 성능 향상 (SA-V, MOSE, LVOSv2)
  • 시각적으로 유사한 객체 간 혼동 감소
  • 가림 강인성 향상
  • 학습/파인튜닝 코드 공개 (도메인 특화 적응 가능)
  • 2025년 2월부터 AWS SageMaker JumpStart에서 사용 가능

커뮤니티의 혁신적 변형들

이름발표핵심 혁신성능
SAMURAI2024칼만 필터 기반 모션 모델링빠른 이동/가림 객체 강화
SAM2LongICCV 2025메모리 트리 (긴 영상용)평균 +3.7 J&F (학습 불필요)
DAM4SAMCVPR 2025방해물 인식 메모리7개 벤치마크 중 6개 SOTA
EfficientTAM2025ViT-Tiny/Small 경량화iPhone 15 Pro에서 ~10 FPS
SAM2-UNet2025SAM 2 인코더 + U-Net의료+자연 이미지 분할

특히 EfficientTAM은 SAM 2를 모바일 기기로 가져왔다. 파라미터 2.4배 감소, 속도 1.6배 향상. iPhone 15 Pro Max에서 10 FPS로 비디오 객체 분할이 가능하다.


제6장: SAM 3 — 개념으로 분할하다 (2025)

"Segment Anything with Concepts"

2025년 11월, Meta FAIR는 한 단계 더 나아간 SAM 3를 발표했다.

  • arXiv: 2511.16719
  • 파라미터: 848M
  • 핵심 혁신: 프롬프터블 개념 분할(Promptable Concept Segmentation)

SAM 2가 "이 점/박스가 가리키는 객체를 분할하라"고 했다면, SAM 3는 "이 개념의 모든 인스턴스를 분할하라"고 한다.

예를 들어: "이 영상에서 모든 강아지를 찾아 분할하라." 텍스트, 이미지 예시, 또는 둘 다로 개념을 지정할 수 있다.

SAM 시리즈 진화 — 무엇을 분할하는가
SAM 1 (2023) "이 점/박스가 가리키는 하나의 객체이 이미지에서 분할"
SAM 2 (2024) "이 점/박스가 가리키는 하나의 객체전체 영상에서 추적·분할"
SAM 3 (2025) "이 개념(텍스트/이미지)모든 인스턴스이미지/영상에서 탐지·분할·추적"

SA-Co 벤치마크와 성능

SAM 3를 위한 SA-Co 벤치마크: 120K 이미지와 1.7K 비디오에 걸쳐 207K 고유 개념의 완전 마스크. 기존 벤치마크보다 50배 많은 개념을 포함한다.

  • 개념 분할(cgF1)에서 기존 시스템 대비 2배 향상
  • Gemini 2.5 Pro, OWLv2, LLMDet을 능가
  • 사용자 선호도: SAM 3 vs OWLv2에서 약 3:1 비율로 SAM 3 선호
  • H200 GPU에서 이미지당 30ms

오픈소스로 공개됐으며, Meta의 Instagram Edits 앱과 Meta AI Vibes에 통합 예정이다.


제7장: 실무 가이드 — SAM 2를 어떻게 활용할 것인가

시작하기

SAM 2는 Apache 2.0 라이선스로 완전 오픈소스다.

hljs language-python
# SAM 2 기본 사용 (Python)
from sam2.build_sam import build_sam2_video_predictor

predictor = build_sam2_video_predictor(
    "sam2_hiera_large",
    "sam2_hiera_large.pt"
)

# 비디오 초기화
state = predictor.init_state(video_path="my_video.mp4")

# 첫 프레임에 프롬프트 (점 클릭)
predictor.add_new_points(
    state, frame_idx=0,
    obj_id=1,
    points=[[500, 300]],
    labels=[1]  # 1=전경
)

# 전체 비디오에 전파
for frame_idx, obj_ids, masks in predictor.propagate_in_video(state):
    # masks: 각 프레임의 분할 결과
    process_frame(frame_idx, masks)

파인튜닝 가이드

도메인 특화 응용(의료, 위성, 산업)에서는 파인튜닝이 성능을 크게 향상시킨다.

  • 의료: 파인튜닝으로 IoU +13.7%, Dice +15.58% 향상
  • 데이터: 도메인별 최소 100-500개의 라벨링된 이미지/비디오 권장
  • SAM 2.1부터 학습 코드가 공개되어 커스텀 파인튜닝 가능

모델 선택 가이드

SAM 2 모델 선택 가이드
모바일/엣지 배포 EfficientTAM (ViT-Tiny)
iPhone에서 ~10 FPS, 파라미터 20x 감소
실시간 처리 (30+ FPS) Hiera Small (46M params, 84.8 FPS)
자율주행, 실시간 모니터링에 적합
최고 정확도 Hiera Large (224.4M params, 30.2 FPS)
의료, VFX 등 정밀도가 최우선인 경우

마치며

SAM에서 SAM 3까지의 여정을 돌아보면, 하나의 명확한 방향이 보인다.

SAM (2023): 이미지 분할의 기초 모델
SAM 2 (2024): 시간 축으로 확장 (메모리)
SAM 3 (2025): 의미 축으로 확장 (개념)

점 → 객체 → 시간 → 개념. 프롬프트의 표현력이 확장될수록, AI가 이해하는 시각 세계의 깊이가 달라진다.

SAM 2가 특별한 이유는, 비디오 이해를 기초 모델(foundation model) 수준으로 끌어올렸다는 것이다. FCN(2014)에서 SAM 2(2024)까지 10년간의 분할 기술 발전이, 하나의 오픈소스 모델에 응축됐다. 그리고 그 모델이 자율주행, 의료, VFX, 로보틱스, 농업, 위성 영상까지 — 시각 AI가 필요한 거의 모든 산업에 파급되고 있다.

"Segment Anything in Images and Videos" — 제목 그대로, 이미지와 영상의 모든 것을 분할하는 시대가 열렸다.


참고 논문:

  • Kirillov, A. et al. (2023). "Segment Anything." ICCV 2023. arXiv:2304.02643.
  • Ravi, N. et al. (2024). "SAM 2: Segment Anything in Images and Videos." arXiv:2408.00714.
  • Meta FAIR (2025). "SAM 3: Segment Anything with Concepts." arXiv:2511.16719.
  • He, K. et al. (2017). "Mask R-CNN." ICCV 2017. arXiv:1703.06870.
  • Ronneberger, O. et al. (2015). "U-Net: Convolutional Networks for Biomedical Image Segmentation."