이 레슨과 관련된 학습 키워드
인공지능(AI) — 기계가 생각하는 법 → 컴퓨터 비전(Computer Vision) — 기계에게 눈을 주다 → 고급 비전 모델 — 트랜스포머와 멀티모달 → 분할(Segmentation) & 생성
조밀한 예측을 위한 인코더-디코더 아키텍처를 사용하여 이미지의 모든 픽셀에 클래스 라벨을 할당합니다.
시맨틱 분할은 이미지의 모든 픽셀에 클래스 라벨을 부여하는 태스크예요.
분류가 이미지 전체에 라벨 하나를 주는 거라면, 시맨틱 세그멘테이션은 픽셀 하나하나에 라벨을 줘요.
왼쪽 그리드를 보세요. RGB 이미지의 각 픽셀이 sky, tree, car, road 같은 의미를 갖고 있어요.
검출은 그 중간이에요. 바운딩 박스로 물체 위치를 찾지만, 정확한 윤곽은 몰라요.
시맨틱 분할의 입력은 RGB 이미지고, 출력은 같은 크기의 클래스 맵이에요.
가운데 출력 그리드를 보시면, 각 픽셀이 0부터 C 빼기 1까지의 숫자 하나를 가져요.
0은 하늘, 1은 자동차, 2는 나무, 3은 도로예요. 이 숫자가 클래스 번호인 거죠.
모델은 각 픽셀마다 C개 클래스에 대한 확률을 출력하고, argmax로 최종 라벨을 정해요.
그래서 시맨틱 분할은 사실 H 곱하기 W개의 독립적인 분류 문제라고 볼 수 있어요.
오른쪽 비교 표를 보세요. 분류, 검출, 시맨틱 분할, 인스턴스 분할, 파놉틱 분할을 정리했어요.
분류의 단위는 이미지 전체, 검출은 물체, 시맨틱 분할은 픽셀이에요. 해상도가 점점 세밀해지는 거죠.
인스턴스 분할은 같은 클래스의 물체도 개별 ID로 구분해요. 마스크 더하기 ID가 출력이에요.
파놉틱 분할은 시맨틱과 인스턴스를 합친 거예요. 모든 픽셀에 클래스와 인스턴스 정보를 함께 줘요.
대표 데이터셋은 VOC가 21개 클래스, Cityscapes가 19개, ADE20K가 150개 클래스예요.
Cityscapes는 자율주행에, ADE20K는 실내외 장면에 많이 쓰여요. 목적에 맞게 선택하면 돼요.
자율주행에서는 도로, 차선, 보행자를 픽셀 단위로 정확히 구분해야 해서 시맨틱 분할이 핵심이에요.
의료 영상에서도 장기나 병변의 정확한 윤곽을 파악하는 데 시맨틱 분할이 쓰여요.
분할의 어려운 점은 경계예요. 물체와 물체 사이 경계 픽셀을 정확히 분류하는 게 가장 어려워요.
또 클래스 불균형도 문제예요. 배경이 대부분을 차지하고 물체는 작은 영역만 차지하거든요.
하단 강조 박스를 보세요. 핵심을 한 문장으로 정리하면, 시맨틱 분할은 H 곱하기 W개의 독립적 분류 문제예요.
선생님: 시맨틱 분할이 일반 이미지 분류와 가장 다른 점이 뭘까요?
학생: 분류는 이미지 전체에 라벨 하나를 주지만, 시맨틱 세그멘테이션은 모든 픽셀에 각각 라벨을 줘요.
선생님: 맞아요. 그러면 시맨틱 분할의 출력 shape는 어떻게 되나요?
학생: 입력이 H 곱하기 W 곱하기 3이면, 출력은 H 곱하기 W예요. 각 값이 클래스 번호고요.
선생님: 정확해요. 시맨틱 분할이 인스턴스 분할과 다른 점은요?
학생: 시맨틱 분할은 같은 클래스 물체를 구분 못 해요. 사람 세 명이 있어도 전부 같은 라벨이에요. 인스턴스 분할은 각각 다른 ID를 줘요.