2 minute read

[MTUDA][DM][SS] ControlUDA: Controllable Diffusion-assisted Unsupervised Domain Adaptation for Cross-Weather Semantic Segmentation

  • paper: https://arxiv.org/pdf/2402.06446.pdf
  • github: x
  • archived ‘24-02-09 (인용수: 0회, ‘24-02-12 기준)
  • downstream task: Multi Target UDA for SS

1. Motivation

  • high-fidelity의 data synthesis를 UDA에 적용한 연구는 under-researched되고 있음.
    • 최근 떠오른 large-scale text-to-image diffusion model을 활용하자!
  • GAN기반의 synthesize연구는 small dataset으로 학습함으로, high fidelity가 떨어지고, multi-target에 adapt하기 부적합함
    • controlNet 기반의 flexibile adaptation method를 적용해보면 어떨까?

2. Contribution

  • ControlNet과 연계하여 multi-scale semantic structure 뿐만 아니라, weather controllable + semantic aligned enhanced prompt를 통해 DM을 tuning하는 UDAControlNet을 제안함
    • target label 없는 문제
      • source-only 모델이 만든 pseudo label (target prior)를 통해 target-specific generative model을 학습시켜 만든 generated data로 UDA의 성능을 향상시킬 수 있음을 보임
    • prompt generator (BLIP)이 생성하는 caption 정보가 noisy하고 vague함
      • pseudo target label과 sub-domain의 정보를 추가한 enhanced prompt를 통해 generated prompt의 semantic을 향상시키고, 기존 prompt의 영향력을 줄임
    • semantic label만 가지고 표현력이 부족한 prompt로 conplex driving scene의 semantic을 잘 표현하지 못함
      • pseudo target label뿐 아니라, domain-invariant한 edge detector의 output도 추가하여 semantic을 향상하는 RCF (Residual Condition Fusion) module을 제안함
  • UDA segmentation benchmark에서 SOTA

3. ControlUDA

  • overall digram

3.1. Acquisition of Target Priror Knowledge

  • source-only model의 pseudo label을 활용하여 target domain의 prior를 만듦 $(x_t, \tilde{y_t})$
  • 위 방식은 noisy label을 만들므로, high quality data를 생성할 수 없음 $ \to$ edge detector 사용!
    • pretrained HED의 역할: (weather차이에 대해) domain agnostic한 edge를 추가로 priror knowledge로 사용
  • task-specific한 UDAControlNet을 구현하기 위해 Residual Condition Fusion (RCF) module을 구현

    • $\kappa$: 1x1 conv layer
    • $c_t^{str}, c_t^{seg}$: structure condition (by HED), semantic segmentation condition (by segmentor) for target domain
    • $c_t^f$: fusioned condition for prompt generator
  • small to large object모두 검출하기 위해 multi-scale feature를 사용함

  • BLIP으로 생성한 prompt의 한계

    • vague / noisy information : 애매하게 도움되지 않은 정보 혹은 거짓 label을 추가하여 성능하락이 발생
    • BLIP의 noisy label을 보완하고자, Source-only 모델의 target prior 정보로 만든 prompt + sub-target domian label 정보를 추가하여 enhanced prompt를 생성함
  • Diffusion Traning

    • $\epsilon^{\tau}$: $\tau$ step에서의 noise
    • $\phi, \theta$: ControlNet, pretrained SD weights
    • $z^{\tau}_{\phi,\theta}$: $\tau$ step의 SD가 encode한 noise feature

3.2. Pseudo Target Generation

  • DDIM sampling

    • $z^T$: N(0,1)
    • $c_{(j)}^p$: j번째 target sub domain의 condition
    • D: Decoder
  • Source2Target dataset 취득

    \[D=(\tilde(X)_{s2t|Y_s}, Y_s)\]
    • 2 epoch까지 학습한 initial data랑 final data 그리고 source data로 구성

3.3. Domain Adaptation

  • baseline: MIC

  • supervised loss로 위에서 얻은 target dataset을 가지고 학습

  • 단, noisy label을 선별하기 위해 두 가지 case를 고려

    • pseudo target label과 prediction이 일치 $\to$ 그대로 사용

    • prediction이 threshold 이하 $\to$ false prediction & good generation으로, 학습에 사용

    • prediction이 threshold 이상 $\to$ good prediction & false generation으로, 학습에 비활용

    • Total Loss

4. Experiments

  • Cityscapes2ACDC

    • Quantitative Result

      • Test-set

      • Val-set

    • Qualtitative Result

    • Generated Image Quality

      • Quantitative Result

      • Qualitative Result

    • Ablation

      • No target domain, only source + generated image (생성 이미지의 효과성을 다른 생성 데이터와 비교하고자)

      • Quantitative Result

      • Qualitative Result

    • Confidence Threshold

  • Domain Generalization Result

Updated: