Study/머신러닝

Semantic Segmentation

김 도경 2025. 1. 3. 15:54
Semantic Segmentation
  • Semantic segmentation
    - Pixel-wise로 각각의 Class를 예측하여 물체 Category 별로 분할
    - Category: 각 픽셀의 Label 예측
    - Architecture: Backbone (Encoder) + Decoder

  • Object Detection vs Semantic Segmentation

  • 사용 예시
    - 자율주행
    - 의료 영상 진단

  • Dataset
    - KITTI
           - 차량 주행중 촬영된 자동차 및 사물 이미지 데이터
           - Semantic Label이 있는 200개의 Train Set과 200개의 Test Set으로 구성
    - Cityscape
           - 도시 거리 장면 이미지 데이터
           - 50개의 도시의 다양한 시간/계절/날씨를 촬영한 장면 내의 30개의 물체(Class)
           - Classes: Group 기준 Flat road, Human, Vehicle, Construction, Object, Nature, Sky, Void 등
           - 5,000장의 이미지 Annotation (Fine-annotation 기준)
    - Pascal VOC (Visual Object Classes)
           - 시각 객체 클래스 인식을 위한 20개의 사물 클래스 이미지 데이터
           - 2012년 데이터 기준 11,530개의 이미지와 6,929개의 Segmentation Annotation

  • 성능 평가 방법
    - Intersection-over-Union (IoU)
          - Pixel-wise IoU 사용

  • Segmentation의 종류

Semantic Segmentation using CNNs

 

  • Sliding Window
    - 픽셀 주변의 정보밖에 고려하지 못함
    - 많은 패치가 중복되는 영역을 처리하기 때문에 계산 비용 증가

  • Size Preserving Convolutional Layers
    - Receptive field가 여전히 제한적

  • Downsampling + Upsampling
    - 큰 Receptive Field를 가짐

 

FCN for Semantic Segmentation
  • FCN (Fully Convolutional Networks)

  • Convolution (Downsampling)
    - Backbone (Convolution Layers)를 통해 Features 추출

  • Deconvolution (Upsampling)
    - Feature Map을 확장하여 입력 이미지와 동일한 크기의 Segmentation Map 생성
    - Stride (S): Filter를 얼마만큼의 간격으로 움직이는 지를 나타냄

  • Skip Connection
    - Upsampling의 결과와 Backbone의 중간 Layer에서 나오는 Feature Map과 결합

  • Training Process

 

  • Test Process

 

 

U-Net

- MICCAI 2015에 출판된 논문으로, 바이오메디컬 이미징 분야에서 사용하다 보편화 됨

- U-Net의 이름은 U자 모양의 아키텍처에서 유래

  • Encoder
    - 입력 이미지를 Downsampling
    - 이미지의 공간 정보를 계층적으로 추상화 및 중요한 Feature 추출

  • Decoder
    - Encoder가 추출한 Feature를 Upsampling
    - Upsampling하여 Segmentation Map 생성

  • Skip Connection
    - Encoder와 Decoder 간의 정보 전달
    - Decoder에서 Upsampling된 Feature와 동일한 해상도의 Encoder Feature를 결합

  • FCN vs U-Net
    - FCN (Fully Convolutional Network), U-Net 모두 Segmentation 수행
    - 차이점 : U-Net은 Encoder와 Decoder 사이에 Skip connection 존재하며, 중간 Layer 정보 계층적으로 전달
            - FCN은 skip-connection을 더해주고, U-Net은 채널을 추가해줌

 

 

'Study > 머신러닝' 카테고리의 다른 글

Object Detection  (2) 2025.01.06
CV Metrics  (0) 2025.01.06
Object Detection  (1) 2025.01.03
Image Classification  (0) 2025.01.03
CNN  (0) 2025.01.03