본문 바로가기

인공지능/컴퓨터비전

[논문 리뷰] Diffuse, Attend, and Segment: Unsupervised Zero-Shot Segmentation using Stable Diffusion

Segment Anything과 같은 mask 생성기를 Stable Diffusion의 attention map 만으로 Training 과정없이 해보겠다.

https://arxiv.org/abs/2308.12469

 

Diffuse, Attend, and Segment: Unsupervised Zero-Shot Segmentation using Stable Diffusion

Producing quality segmentation masks for images is a fundamental problem in computer vision. Recent research has explored large-scale supervised training to enable zero-shot segmentation on virtually any image style and unsupervised training to enable segm

arxiv.org

https://github.com/google/diffseg

 

기존 연구의 문제점과 DiffSeg의 해결 방식

기존 연구의 문제점:

  1. 라벨링 데이터 의존성:
    • 기존의 지도학습 기반 모델들은 대량의 픽셀 단위 라벨링 데이터가 필요함.
    • 이러한 데이터 수집과 라벨링 비용이 매우 높음.
  2. Zero-shot과 Unsupervised를 동시에 달성하기 어려움:
    • 일부 연구는 unsupervised 학습을 사용하지만, 여전히 특정 데이터에 대한 사전 학습이 필요함.
    • ReCo와 같은 기존 방법들은 대규모 비라벨링 데이터 풀에 의존하거나 사전에 개념을 식별해야 하는 한계가 있음.
  3. 클러스터링 기반 접근의 한계:
    • 기존의 비지도 학습 방법들은 K-Means와 같은 클러스터링 알고리즘을 사용.
    • 클러스터 수를 사전에 지정해야 하며, 초기화에 따른 비결정적 결과를 초래함.

DiffSeg의 해결 방식:

  1. Stable Diffusion의 Self-Attention 이용:
    • DiffSeg는 Stable Diffusion 모델의 사전 학습된 Self-Attention 레이어를 활용하여 사전에 학습된 시각적 개념을 활용함.
    • 사전 학습된 diffusion 모델은 객체와 장면의 공간적 관계를 내재적으로 학습함.
  2. KL Divergence 기반 Segmentation:
    • KL Divergence를 사용하여 attention map 간의 유사성을 측정하고, 이를 기반으로 주어진 이미지에서 세그먼트가 형성되도록 함.
    • 클러스터 수를 사전에 정의하지 않고, 데이터를 기반으로 동적으로 세그먼트 생성.
  3. 3단계 파이프라인:
    • (1) Attention Aggregation: 여러 해상도의 attention map을 결합하여 세그먼트의 일관성을 보장.
    • (2) Iterative Attention Merging: KL Divergence를 활용해 유사한 attention map을 반복적으로 병합.
    • (3) Non-Maximum Suppression (NMS): 여러 세그먼트 중 가장 강력한 마스크를 선택하는 방식으로 최종 세그먼트 결정.

DiffSeg의 주요 Contribution (기여):

  • Zero-shot & Unsupervised Segmentation 달성: 어떤 데이터도 사전 학습 없이 사용할 수 있는 zero-shot, unsupervised segmentation 기법을 제안함.
  • Self-Attention의 효율적 활용: Stable Diffusion의 self-attention map을 활용해 사전 학습된 개념을 기반으로 segmentation을 수행함.
  • 비지도 클러스터링 한계 극복: 기존 K-means 및 DBSCAN 기반 접근법의 비결정적 특성과 클러스터 수 사전 지정 문제를 해결함.
  • State-of-the-art 성능: COCO-Stuff-27 데이터셋에서 기존 zero-shot SOTA 대비 pixel accuracy 26%p, mIoU 17%p 향상.

모델 프레임워크 (DiffSeg의 구조):

  1. 입력: 원본 이미지를 Stable Diffusion 모델의 U-Net 인코더를 통해 latent space로 변환.
  2. Self-Attention Extraction: U-Net의 self-attention layer에서 4D attention map 추출.
  3. Attention Aggregation: 다양한 해상도의 attention map을 bilinear interpolation을 통해 64x64 해상도로 업샘플링하고 결합.
  4. Iterative Attention Merging:
    • Anchor points를 격자 형태로 생성하여 anchor-based attention map 병합 시작.
    • KL Divergence를 사용하여 유사한 attention map을 반복적으로 병합.
  5. Non-Maximum Suppression (NMS):
    • 최종적으로 가장 강력한 활성화 attention map을 선택하여 세그멘테이션 마스크를 결정.
  6. 출력: 각 객체의 세그멘테이션 마스크를 제공.