๐ WSMA: Multimodal Weak Supervision์ผ๋ก Egocentric Affordance Grounding ํ์ !
๐ (ํ๊ตญ์ด) WSMA: Sentence๋ ํ์ตํด์!(Multimodal ์ฝ์ง๋ ํ์ต)์ผ๋ก Affordance Grounding ๊ณ ๋ํ!
- ์ ๋ชฉ: Weakly Supervised Multimodal Affordance Grounding for Egocentric Images
- ํํ: AAAI 2024
- ์ฝ๋/์ฒดํฌํฌ์ธํธ: GitHub โ WSMA
- ์ ์: Lingjing Xu, Yang Gao, Wenfeng Song, Aimin Hao (Beihang Univ., BISTU)
- ํต์ฌ ํค์๋:
Affordance,Weakly-Supervised,Multimodal,CLIP,Egocentric,Robotics - ์์ฝ: WSMA๋ exocentric ์ด๋ฏธ์ง + ํ ์คํธ ์ค๋ช ์์ affordance ์ง์์ ์ถ์ถํ๊ณ , ์ด๋ฅผ egocentric ์ด๋ฏธ์ง๋ก ์ ์ดํ๋ ์๋ก์ด ๋ฉํฐ๋ชจ๋ฌ ํ๋ ์์ํฌ. ํฝ์ ๋จ์ ์ฃผ์ ์์ด๋ affordance ์์ญ์ ์ ํํ ์ฐพ์ผ๋ฉฐ, ๊ธฐ์กด SOTA๋ณด๋ค ์ฐ์ํ ์ฑ๋ฅ์ ๋ณด์! ๐
๐ ์ฐ๊ตฌ ํต์ฌ ์์ฝ
ํ ์ค ์์ฝ: โWSMA = Exocentric + Text โ Egocentric ์ ์ด โ Weakly supervised๋ก๋ ์ ํํ affordance ์ง์ญํ ๋ฌ์ฑ!โ
1) ์ฐ๊ตฌ ๋ฐฐ๊ฒฝ (Affordance Grounding)
- ๊ฐ์ฒด๊ฐ ์ ๊ณตํ๋ ํ๋ ๊ฐ๋ฅ์ฑ(action possibilities) โ ์ปต์ โ๋ง์๊ธฐโ, ์นผ๋ ์ โ์๋ฅด๊ธฐโ
- ๋ฌธ์ : ๊ธฐ์กด ์ฐ๊ตฌ๋ Pixel ๋จ์ ์ด๋ ธํ ์ด์ ์์กด โ ๋น์ฉโ, ์ค๋ฅโ
- ํ์ค์ ํ์ต: ์ด๋ฏธ์ง ์์ค ๋ผ๋ฒจ(image-level labels) ๋ง์ผ๋ก affordance ์์ญ ํ์ต ํ์(Weakly supervised )
2) WSMA ๋ฐฉ๋ฒ๋ก
- HOI-Transfer Module: exocentric ์ด๋ฏธ์ง(์ฌ๋-๊ฐ์ฒด ์ํธ์์ฉ)์์ affordance ์ง์ ์ถ์ถ โ egocentric ์ด๋ฏธ์ง๋ก ์ ์ด
- Pixel-Text Fusion Module: affordance ํ ์คํธ(CLIP text encoder ํ์ฉ)์ egocentric ์ด๋ฏธ์ง ํน์ง ๊ฒฐํฉ
- Weak Supervision: CAM + Refined Module ๊ธฐ๋ฐ ์ฝ์ง๋ ์ถ๋ก โ ์ธ๋ฐํ ์์ญ ๋ถํ
3) ์ต์ข ์ถ๋ ฅ
- egocentric ์ด๋ฏธ์ง์์ affordance heatmap ์ฐ์ถ
- ํฝ์ ๋จ์ ์ฃผ์ ์์ด๋ โ์ก๊ธฐ, ๋ง์๊ธฐ, ์๋ฅด๊ธฐโ ๋ฑ์ ๊ธฐ๋ฅ ์์ญ ์ ํํ localize
๐ ๊ธฐ์กด ์ฐ๊ตฌ์ ํ๊ณ์ ์ฐจ๋ณ์
- Visual Affordance Grounding ์ฐ๊ตฌ
- Affordance๋ผ ํจ์ Gibson์ ์ํ์ฌ ์ ์๋์ด์ Visual Affordance Grounding ์ฐจ์์์ ์ด์ด์ ธ์๋ค!
- ๋ค๋ง, ํฝ์ ๋จ์ GT์ ์์กด โ ๋น์ธ๊ณ ์ค๋ฅ ๋ง๊ธฐ์ ์ฌ๋ฌ weakly supervised approaches ์ ๊ทผ๋ ์์๋ค.
- ๋ช ๊ฐ์ ์ ์ ๋ฐํ์ผ๋กํ ํ์ต์ด๋ผ๋์ง, ๋น๋์ค๋ก๋ถํฐ์ ํ์ต๋ฒ ๋ฑ!!
- ๊ฐ์ฅ ์ต๊ทผ์๋ ์ด๋ฏธ์ง level์ ๋ ์ด๋ธ๋ง์ ํตํ weakly supervised approaches ๊ฐ ์์์!!
- ๋ณธ ์ฐ๊ตฌ๋ ์ด์ ๋ํด์!! action์ ๋ํ ๊ธ์ ์ ๋ณด๋ฅผ ํ์ฉํ๋ค!!
- Cross-view Knowledge Distillation
- Knowledge distillation ์ ๋ฅ๋ฌ๋ ๊ธฐ์ ์์ ์ ์/ํ์๋ชจ๋ธ์ ๋๊ณ ๊ฐ๋ฅด์น๋ ๊ธฐ๋ฒ.
- ๋ฐ๋ฉด, cross-view knowledge distillation์! ๋ค๋ฅธ ๊ด์ ์์์ ์ง์์ ์ ์ดํ๋๋ฐ ์ง์คํจ!!
- exo์ด๋ฏธ์ง์ ์ง์์ ego ์ด๋ฏธ์ง๋ก ์ ์ดํ๋ ์ฐ๊ตฌ๋ค์ด ์์์!!
- Vision-language Models
- ๋์ด์ ์ค๋ช ์ด ํ์ ์๋ CLIP!!
- CLIP์ ํ์ฉํ segmentation ๋ฑ ๋ค์ํ ์ฐ๊ตฌ๊ฐ์๋ค!
- ์ด๋ฒ ์ฐ๊ตฌ๋ CLIP์ ํตํด textual features๋ฅผ ์ถ์ถํ ๊ทธ๋ค!
๐งฑ WSMA ๊ตฌ์กฐ (Architecture)
- 3๊ฐ์ ์ฃผ์ Branch๋ก ๊ตฌ์ฑ : Exocentric, Egocentric, and Text branches.
- 4๊ฐ์ง Loss๋ก ๊ตฌ์ฑ:
L_cls,L_clip,L_d,L_l_rela
1) Egocentric Branch
- Egocentric ์ด๋ฏธ์ง(I_g)๋ฅผ DINO-ViT๋ก Feature ์ถ์ถ!
- DINO ์ถ์ถ์ ๋ง์ง๋ง 2๊ฐ Layer์ ์ถ๋ ฅ์ ๊ฒฐํฉ, ํด๋น Feature๋ฅผ 2 layer์ MLP๋ก ๋ณด๋ธ๋ค!
- ๊ฒฐ๊ตญ ์ด๋ฏธ์ง Feature (f_g) ์ถ์ถ!!
2) Text Branch
- affordance label (C)์ ๋ํ์ฌ ์ค๋ช ํ Affordance Text(T)๋ฅผ ๋จ์ํ ํ ์คํธ๋ก ํ๊ธฐ์ ๋์์ธ์ ๋ฌธ์ ๊ฐ ์๋ค.
- ์ด์, CoOp ๋ฐฉ์์ ์๊ฑฐ, trainable prompts(V)๋ฅผ ํตํด ๋ง๋ ๋ค.
- CoOp ๋ฐฉ์์ด๋? cut_with ์ ๊ทธ๋๋ก ๋ฃ์์ ์๊ณ , a photo of knife to cut_with๋ก ์ค๊ณํ๊ธด ์ ๋งคํ๋ [V1][V2][V3] ๋ฑ๋ฑ์ผ๋ก ํ๋๊ฒ!!
- ์ด Trainable Token์ด ์ดํ ํ์ต์์ ์กฐ์ ๋๋ฉฐ ์ต์ ์ token์ผ๋ก ์ ์ ๋จ
- ์ต์ข
์ ์ผ๋ก๋, learnable prompt ๊ฐ ๋ค์ด๊ฐ text๋ฅผ ๋ฐํ์ผ๋ก CLIP์ ๋ฃ์ด text feature
f_t๋ฅผ ๋ฝ๋๋ค
3) Pixel-Text Fusion Module
- Ego ์ด๋ฏธ์ง์ Text ์ ๋ณด๋ฅผ ์ ํฉ์น๋ ๋ถ๋ถ!
- ์ด๋ฏธ์ง(f_g), Text(f_t)์ align ํด์ผํ๋ค!!
a. (Alignment1) ์ด๋ฏธ์ง์ ๋ณด(f`_g) ๋ ํ ์คํธ์ ๋ณด(f_t)์ Global align ์ ๋๋ฅผ ํ๊ฐ > L_clip- f_g๋ DINO๋ก์ local ์ ๋ณด๋ง ์๋ค. ๊ทธ๋์ Global์ ๋ณด๋ฅผ ์ถ๊ฐํด์ค๋ค!โ
f'_g fโฒ_g = AttentionPool(Concat(Average(fg), fg)).- Average(fg) : ๊ธ๋ก๋ฒ ์ ๋ณด
- AttentionPool๋ก ๊ฐ๊ณต : local ํจ์น์ global ์ฌ์ด ๊ด๊ณ(์ ์ฌ๋) ๊ณ์ฐ, ์ค์ํ ํจ์น์ ๋์ weight๋ฅผ ์ฃผ์ด ๊ฐ์คํฉ๋ ์๋ก์ด ๋ฒกํฐ f`_g ์ฐ์ถ!!
Z_clip = f_โฒg(0) ยท f_t(transpose), โฒ- ์ด๋ฏธ์ง์ ๋ณด(f`_g) ๋ ํ ์คํธ์ ๋ณด(f_t)๊ฐ ์ผ๋ง๋ ์ ์ฌํ์ง๋ฅผ ์ฐ์ถ(Z_clip)
- ๊ฒฐ๊ตญ Z_clip์ ์ด๋ฏธ์ง์ ๋ณด(f`_g) ๋ ํ ์คํธ์ ๋ณด(f_t)์ align ์ ๋๋ฅผ ํ๊ฐํ๋ฉฐ ์ดํ cross-entropy loss ์ฉ L_clip ์ผ๋ก ํ์ฉ๋
- f_g๋ DINO๋ก์ local ์ ๋ณด๋ง ์๋ค. ๊ทธ๋์ Global์ ๋ณด๋ฅผ ์ถ๊ฐํด์ค๋ค!โ
โ b. (Alignment2) ํ
์คํธ์ ๊ฐ ์ด๋ฏธ์ง ์์น(patch) ๊ฐ์ ์ธ๋ถ์ (local) align ์ ๋๋ฅผ ํ๊ฐ : L_cls
- f_att = f_t ยท [f'_g(1:)](transpose)
- f_t: ํ
์คํธ ์ ๋ณด
- f'_g(1:) : 0๋ฒ์จฐ๋ ์ ์ญ์ ๋ณด๋๊น ๊ทธ๊ฑฐ ๋บด๊ณ 1๋ฒ์จฐ๋ถํฐ
- ๊ฒฐ๊ตญ, f_att๋ ์ง์ญ๋ณ ํจ์น๋ง๋ค์ ํ
์คํธ์ ๋ณด์์ ์ ์ฌ๋ ๊ณ์ฐํ๊ฒ!!
- ์ด์ , ํ
์คํธ ์๋ฏธ๊ฐ ๋ฐ์๋ ์ด๋ฏธ์ง ํน์ง ๋งต(F_g)๋ฅผ ๋ง๋ ๋ค!!
- F_g = f_g X f_att + f_g
- f_g X f_att : ํ
์คํธ ์๋ฏธ์ ๊ด๋ จ ์๋ ์์น
- + f_g : ์๋ ์ด๋ฏธ์ง ํน์ง์ ๋ณด์กด
- F_g๊ฐ 3 ร 3 convolutional layer ๋ FC ์ ์ง๋ ๊ตฌ๋ถ์ ์ c_ego๊ฐ ๋จ!!
- ๊ฒฐ๊ตญ c_ego๋ ์ ์๋ก์ cross-entropy loss L_cls ๋ก ํ์ฉ๋
4) Exocentric Branch
- 1..i..n๊ฐ์ Exo์ด๋ฏธ์ง์์, DINO-ViT ๊ธฐ๋ฐ feature ์ถ์ถ
- ์ด๋ DINO์ ๋ง์ง๋ง 2๊ฐ Layer์ feature๋ฅผ ์ถ์ถ (f_b-1_i, f_b_i) ํด์ concat ํ MLP ํ์ฌ ์ด๋ฏธ์งi์๋ํ ํผ์ฒ (f_i_x)๋ฅผ ๋ง๋ฌ
- f_i_x = MLP(Concat(f_b-1_i, f_b_i))
- (AIM ๋ชจ๋ ์ ์ฉ) ์ ํตํด์ F_i_x๋ฅผ ๊ตฌํจ. F_i_x๋ i๋ฒ์งธ exocentric ์ด๋ฏธ์ง๋ก๋ถํฐ ์ถ์ถ๋, action์ ํน์ง!!
- F_i_x๊ฐ 3 ร 3 convolutional layer ๋ FC ์ ์ง๋ ๊ตฌ๋ถ์ ์
c_exo๊ฐ ๋จ!! - c_exo๋ ์ ์๋ก์ cross-entropy loss
L_cls๋ก ํ์ฉ๋
5) HOI-Transfer Module
- ego ์ด๋ฏธ์ง์์ ์ถ์ถ๋ F_g ๋ exo ์ด๋ฏธ์ง๋ค๋ก ๋ถํฐ ์ถ์ถ๋
F_i_x๊ฐ ์๋ค. - CAM์ ํ์ฉํด์ j-action์ ๋ํด์์ F_j_g, F_j_x ์ local knowledge transfer๋ฅผ ํจ.
L_d๋ ์ด๋ ego์ exo ์ ์ฐจ์ด๋ฅผ ์ต์ํํ๋ ๋ฐฉํฅ์ผ๋ก ํ์ต๋จ.- ๊ฐ์ค์น
w_j๋F_j_{g,x}๋ฅผ ๊ณฑํ๊ณ ๋ํด์ ๋์ค๋Y_j_{g,x} L_d = ย Y_j_g - Y_j_x ย
- ๊ฐ์ค์น
L_l_rela๋ ์๋ก ๋ค๋ฅธ affordance ํ๋๋ค์ด ์ค์ ๋ก๋ ์๋ก ์ฐ๊ด๋์ด ์์ ์ ์์ผ๋๊น, ๋ชจ๋ธ์ด ๊ทธ ๊ด๊ณ๋ฅผ ์ธ์ํ๋๋ก ๋๋ loss์ด๋ค.
(7)Y_g๋Y_x๋ฅผ flatten ํ๋ฉด, ๊ฐ actionC์ ๋์๋๋ 1์ฐจ์๋ฒกํฐ๊ฐ ๋๋ค.
(8) ์ด๋ฅผ ๊ฐ๊ฐ transposeํ๊ฒ์ ๊ณฑํด์ ํ๋ ฌ๋ก ๋ง๋ค๋ฉด, Action ๋ค๊ฐ์ ๊ด๊ณ๋ฅผ ๋ณด์ฌ์ฃผ๋ 2์ฐจ์ ํ๋ ฌ์ด ๋๋ค!!
(9) ์ด์ ๊ตฌํด์ง R_exo๋ R_ego์ ๊ฐ๊ฐ ์๋์ ์๋ฏธ์ ๋์๋๋ค.R_exo: exo ์์ ์์ action ๊ฐ์ ๊ด๊ณ.R_ego: ego ์์ ์์ action ๊ฐ์ ๊ด๊ณ.- ์ด ๋์ cosine ํจ์๋ฅผ ํตํด์ align ์ํจ๋ค!!
6) ์ต์ข
inference๋!?
1. ego ์ด๋ฏธ์ง๋ฅผ DINO-ViT๋ฅผ ํต๊ณผ์ํค๋ฉฐ, ๋ง์ง๋ง 2๊ฐ Layer์ ์ถ์ถํ๋ค
2. ์ถ์ถ๊ฐ๋ค์ concat ํ MLP ํ์ฌ ์ด๋ฏธ์ง ์๋ํ ํผ์ณ๋ก ๋ง๋ค๊ณ local ์ ๋ณด๋ง ์๋ค๊ธฐ์ Global์ ๋ณด๋ฅผ ์ถ๊ฐํ๋ attention pool์ ๊ฑฐ์นจ
3. Learnable + class๋ฅผ encoder์ ๋ฃ์ด์ ํ
์คํธ ํผ์ณ๋ฅผ ๋ง๋ ๋ค!!
4. Pixel-text attention์๋ก, text ์ง์๊ณผ ego ์ด๋ฏธ์ง๊ฐ ์์ธ ๊ฒฐ๊ณผ๊ฐ์ ๋ง๋ค๊ณ , FC layer๋ฅผ ์ง๋๋ค
5. ์์ฑ๋ CAM๊ณผ ego์ attention matrix๋ฅผ ๊ต์ฐจํ๋ฉฐ ์ต์ข
refined heatmap์ ์ถ์ถํ๋ค!
๐งช ์คํ ๊ฒฐ๊ณผ ๋ฐ ablation.
Ablation Test.
- (UnSeen) HOI Transfer์ ์ญํ ์ด ํฌ๊ณ , ๊ทธ ์ ๋ํด์ง Pixel-text fusion์ด ์๋ํ๋ค!!
- (Seen) ์ด๋ฏธ ์ํฉ์ ์๊ณ ์๊ธฐ์ ์ํฉ์ค๋ช ์ด์๋ Pixel-Text Fusion์ด HOI transfer ๋ณด๋ค ์ค์ํ๊ฒ ์๋ํ๋ค!!
๋ฐ์ดํฐ์ & ์งํ
- ADE20K (seen/unseen split)
- HICO-IIF
- ํ๊ฐ ์งํ: KLD โ, SIM โ, NSS โ
๊ฒฐ๊ณผ
- ADE20K-unseen: KLD 1.335, SIM 0.382, NSS 1.220
- ADE20K-seen: KLD 1.176, SIM 0.416, NSS 1.247
- HICO-IIF: KLD 1.465, SIM 0.358, NSS 1.012
- โ LOCATE, Cross-view-AG ๋ฑ ๊ธฐ์กด ๋ชจ๋ธ ๋๋น ์ฑ๋ฅ ์ฐ์
์ ์ฑ์ ๋น๊ต (Qualitative)
- ์ปต์ ์ ๊ตฌ, ์นซ์์ ๋ ๋ฑ ์์ affordance ๋ถ์๋ฅผ ์ ํํ localize
- ๋ฐฐ๊ฒฝ ๊ฐ์ญ ์ต์ ๋ฐ unseen ๊ฐ์ฒด์์๋ ์ผ๋ฐํ ์ ์ํ
๐งช Ablation ๋ถ์
- ๋ชจ๋ ์ ๊ฑฐ ์คํ:
- Ego branch๋ง ์ฌ์ฉ โ ์ฑ๋ฅ ์ ํ
- HOI-Transfer ์ถ๊ฐ โ ์ฑ๋ฅ ๊ฐ์
- Pixel-Text Fusion ์ถ๊ฐ โ ์ฑ๋ฅ ๋ ํฅ์
- ๋ ๋ชจ๋ ๋ชจ๋ ํฌํจ ์ ์ต๊ณ ์ฑ๋ฅ
- Loss ๋ถ์:
- Cross-entropy (L_cls) + CLIP alignment (L_clip) + Distillation loss (L_d) + Relation loss (L_lrela) ์กฐํฉ์ด ๊ฐ์ฅ ํจ๊ณผ์
โ ๊ฒฐ๋ก
- WSMA๋ Multimodal ์ฝ์ง๋ ํ๋ ์์ํฌ๋ก egocentric affordance grounding์ ํฌ๊ฒ ํฅ์
- ์ฃผ์ ๊ธฐ์ฌ:
- HOI-Transfer Module๋ก exocentric affordance ์ง์ ์ ์ด
- Pixel-Text Fusion Module๋ก ํ ์คํธโ์ด๋ฏธ์ง ๊ฒฐํฉ
- ADE20K, HICO-IIF์์ SOTA ์์ค ์ฑ๋ฅ ๋ฌ์ฑ
- โ ๋ก๋ด ์ธ์ง, ์ธ๊ฐ-๋ก๋ด ์ํธ์์ฉ(HOI), AR/VR ๋ฑ ์ค์ธ๊ณ ์์ฉ์ ์ค์ํ ๊ธฐ์ฌ ๐ฏ