-
GroundingDINO ์ ๋ฆฌ๋ ผ๋ฌธ ์ ๋ฆฌ 2025. 7. 9. 16:25
- Motivation & Background (์ ํ์ํ๊ฐ?)
- Model Overview (๊ตฌ์กฐ ๋ฐ ํต์ฌ ์์ด๋์ด)
- Loss Functions
- Experiments & Results
- Limitations & Insights
- Takeaways
1. Motivation & Background (์ ํ์ํ๊ฐ?)
Open-Set Object Detection์ด๋?
๋ฌธ์ ์ ์: Open-Set Object Detection
- ๊ธฐ์กด Closed-set Object Detection ๋ชจ๋ธ์ ์ ํด์ง ๋ฒ์ฃผ์ ๊ฐ์ฒด๋ง ์ธ์ ๊ฐ๋ฅ
- ์: COCO ํ์ต ๋ชจ๋ธ์ '์ฝ๋ผ๋ฆฌ'๋ผ๋ ํด๋์ค๊ฐ ์์ผ๋ฉด, ์ฝ๋ผ๋ฆฌ๋ฅผ ํ์งํ ์ ์์
- ํ์ง๋ง ์ค์ ์ธ์์ Open-world ํ๊ฒฝ
- ์ธ์ ๋ ์๋ก์ด ๊ฐ์ฒด ๋ฑ์ฅ ๊ฐ๋ฅ
- ์ฌ์ฉ์ ์ ์ ์ง์(์: "red umbrella")์ ๊ธฐ๋ฐํ ํ์ง๊ฐ ํ์ํจ
๐ก ๋ชฉํ: ์์ฐ์ด๋ก ์ง์ ํ ์์์ ๊ฐ์ฒด๋ฅผ ํ์งํ ์ ์๋ ๋ชจ๋ธ์ด ํ์
๊ธฐ์กด ๋ชจ๋ธ๋ค์ ํ๊ณ์ (e.g. GLIP, OV-DETR์ ๋ชจ๋ฌ ์ตํฉ ๋ฐฉ์ ํ๊ณ)
- GLIP: ์ด๋ฏธ์ง์ ํ
์คํธ๋ฅผ early fusionํ์ฌ grounding task๋ก ํ์ต
- ๋จ์ : ๋ชจ๋ฌ ์ตํฉ์ด **๋จ์ผ ๋จ๊ณ(Neck)**์๋ง ๊ตญํ๋จ → ๋ชจ๋ฌ๋ฆฌํฐ ์ ๋ ฌ ๋ถ์กฑ
- OV-DETR: ํ
์คํธ ์๋ฒ ๋ฉ์ query๋ก ์ฌ์ฉ (Head๋ง ํ
์คํธ์ ์ฐ๊ฒฐ)
- ๋จ์ : fusion depth๊ฐ ๋ฎ์ ์ธ๋ฐํ ์ ๋ ฌ ๋ถ์กฑ
- CLIP ๊ธฐ๋ฐ ๋ฐฉ์๋ค: ์ฃผ๋ก image-text pair ํ์ต → region-level grounding ์ฑ๋ฅ ํ๊ณ
๐ ์์ฝ: ๊ธฐ์กด ๋ชจ๋ธ๋ค์ ์ธ์ด์ ์๊ฐ ์ ๋ณด ์ตํฉ์ด ๋์จํ๊ฑฐ๋ ์ ํ์
Grounding DINO๊ฐ ๋ฑ์ฅํ ์ด์
- ๊ธฐ์กด DETR ๊ธฐ๋ฐ ๋ชจ๋ธ(DINO)์ ์ฅ์ ์ ํ์ฉ:
- Layer-by-layer ๊ตฌ์กฐ๋ก ํ ์คํธ์ ์ด๋ฏธ์ง ์ตํฉ์ ์ ์ฐํ๊ฒ ์ค๊ณ ๊ฐ๋ฅ
- Grounding DINO๋ 3๋จ๊ณ ๋ชจ๋ฌ ์ตํฉ(tight fusion) ์ ์:
- Feature Enhancer (neck): ํ ์คํธ์ ์ด๋ฏธ์ง ํน์ฑ ์ ๋ ฌ
- Language-Guided Query Selection (query): ํ ์คํธ ๊ธฐ๋ฐ์ผ๋ก ์ฟผ๋ฆฌ ์ ํ
- Cross-Modality Decoder (head): ์ต์ข ์์ธก์ ์ ๋ชจ๋ฌ ์ ๋ณด ํตํฉ
๐ฏ ํต์ฌ ์์ด๋์ด: ๋ค์ํ ๋ ๋ฒจ์์ ์ธ์ด-์๊ฐ ์ ๋ณด๋ฅผ ๊ธด๋ฐํ๊ฒ ์ ๋ ฌ(fusion)
2. Model Overview (๊ตฌ์กฐ ๋ฐ ํต์ฌ ์์ด๋์ด)
Grounding DINO์ ์ ์ฒด ์ํคํ ์ฒ ์๊ฐ
Grounding DINO๋ ์ด๋ฏธ์ง์ ํ ์คํธ ์ ๋ณด๋ฅผ ๋ชจ๋๋ณ๋ก ์ ์ง์ ์ผ๋ก ์ ๋ ฌ(fusion)ํ์ฌ ์ต์ข ์ ์ผ๋ก ๊ฐ์ฒด๋ฅผ ํ์งํ๋ ๋ฐฉ์์ด๋ค.
๐ผ๏ธ Image Backbone
- ๋ชฉ์ : ์ด๋ฏธ์ง์์ multi-scale feature ์ถ์ถ
- ์ฌ์ฉ ๋ชจ๋ธ: Swin Transformer (Tiny, Large ๋ฑ)
- ์ถ๋ ฅ: ๋ค์ํ ํด์๋(8×, 16×, 32×)์ vanilla image features
๐ Text Backbone
- ๋ชฉ์ : ์ ๋ ฅ ํ ์คํธ(์ง์ ๋ฌธ์ฅ ๋๋ ์นดํ ๊ณ ๋ฆฌ ์ด๋ฆ๋ค)์์ ์ธ์ด ์๋ฒ ๋ฉ ์ถ์ถ
- ์ฌ์ฉ ๋ชจ๋ธ: BERT (HuggingFace BERT-base)
- ์ถ๋ ฅ: vanilla text features (๋ฌธ์ฅ or sub-sentence ๋จ์)
๐ Feature Enhancer
- ๋ชฉ์ : ํ ์คํธ์ ์ด๋ฏธ์ง feature ๊ฐ์ ์ํธ์์ฉ์ ํตํด ์ ๋ณด๋ฅผ ์ ๋ ฌ
- ๊ตฌ์ฑ:
- Deformable Self-Attention (์ด๋ฏธ์ง ์ ์ฉ) : ๋๊ท๋ชจ ๊ณ ํด์๋ ์ด๋ฏธ์ง ์ฒ๋ฆฌ์์ ํจ์จ์ฑ๊ณผ ์ฑ๋ฅ์ ๋์์ ์ก๊ธฐ ์ํด ๋ฑ์ฅํ ๊ฐ์ ๋ self-attention ๋ฐฉ์
- Text Self-Attention (ํ ์คํธ ์ ์ฉ)
- Text-to-Image & Image-to-Text Cross-Attention (์๋ฐฉํฅ ์ ๋ ฌ)
- ๊ฒฐ๊ณผ: Cross-modality ์ ๋ ฌ๋ feature ์ถ๋ ฅ
- ํต์ฌ ์ฌํญ : GLIP์์ ์๊ฐ์ ๋ฐ์, Image-to-Text Cross-Attention, Text-to-Image Cross-Attention ๋ ๊ฐ์ง ๋ชจ๋์ ์ถ๊ฐ๋ก ์ฌ์ฉํ์ฌ ์๋ก ๋ค๋ฅธ modality๊ฐ์ feature ์ ๋ ฌ์ ๋์์ค๋ค!
๐ฏLanguage-Guided Query Selection
- ๋ชฉ์ : ์ด๋ฏธ์ง feature ์ค ํ ์คํธ์ ๊ฐ์ฅ ๊ด๋ จ ์๋ ๋ถ๋ถ๋ง ์ ํํด์ ์ฟผ๋ฆฌ๋ก ์ฌ์ฉ
- ๋ฐฉ์:
- ์ด๋ฏธ์ง์ ํ ์คํธ feature ๊ฐ ์ ์ฌ๋ ๊ณ์ฐ
- ์ ์ฌ๋๊ฐ ๋์ ์์ N๊ฐ(image region)๋ฅผ ์ฟผ๋ฆฌ๋ก ์ฌ์ฉ
- ๊ฒฐ๊ณผ: Cross-Modality Queries ์์ฑ
- ํต์ฌ์ฌํญ : Grounding DINO๋ ์ด๋ฏธ์ง ์ ์ฒด๋ฅผ ๋ณด์ง ์๊ณ , ํ ์คํธ์ ๊ด๋ จ ์๋ ์์ญ๋ง ์ ํํ๋ค! ์ด ๋ชจ๋ ๋๋ถ์ ํ ์คํธ-์ด๋ฏธ์ง ์๋ฏธ ์ ๋ ฌ์ด ์ ๋๊ณ Open-set/Zero-shot ๊ฐ์ฒด ํ์ง์์๋ ์ฑ๋ฅ์ด ์ข์์ง๋ ํต์ฌ ์์๊ฐ ๋๋ค.
๐ง Cross-Modality Decoder
- ๋ชฉ์ : ์ ํ๋ ์ฟผ๋ฆฌ๋ค์ ์ด๋ฏธ์ง+ํ ์คํธ ์ ๋ณด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ ๋ฐ์ดํธํ๊ณ bounding box ์์ธก
- ๊ตฌ์ฑ:
- Self-Attention
- Image Cross-Attention
- Text Cross-Attention
- FFN (Feed Forward Network)
- ์ถ๋ ฅ: ๊ฐ์ฒด์ bounding box์ ํ ์คํธ(label) ๋งค์นญ
- ํต์ฌ์ฌํญ : Grounding DINO์ ๋์ฝ๋๋ ๊ธฐ์กด DINO ๋์ฝ๋๋ณด๋ค ํ๋์ ์ธต์ด ๋ ์๋ค! → ๋ฐ๋ก ์ถ๊ฐ๋ Text Cross-Attention Layer๋ค. ์ด ์ธต์ ํตํด ํ ์คํธ ์ ๋ณด๋ฅผ ์ฟผ๋ฆฌ์ ์ง์ ์ฃผ์ ํจ์ผ๋ก์จ ์๊ฐ-์ธ์ด ์ ๋ ฌ์ ๋ ์ ํํ๊ฒ ์ํํ ์ ์๋๋ก ํ๋ค.
- ์ ์ค์ํ๊ฐ? : ๊ธฐ์กด DETR/DINO๋ ํ ์คํธ ์ ๋ณด ์์ด ์ฟผ๋ฆฌ๋ง์ผ๋ก ์์ธก, Grounding DINO๋ ์ฟผ๋ฆฌ ์์ฒด๊ฐ ์ด๋ฏธ์ง + ํ ์คํธ ์ตํฉ๋ ์ํ์ฌ์ผ → Open-set/Referring/Zero-shot๋ฑ ๋ณต์กํ ์ํฉ์์๋ ๊ฐ๋ ฅํ ์ฑ๋ฅ ๋ฐํ ๊ฐ๋ฅ
๊ฒฐ๊ณผ
- Grounding DINO๋ (Image, Text) ์์ ๋ฐ์,
- ํด๋น ์ด๋ฏธ์ง์์ ์ ๋ ฅ ํ ์คํธ์ ํด๋นํ๋ ๊ฐ์ฒด๋ค์ bounding box์ ํ ์คํธ label์ ์(pair)์ผ๋ก ์ถ๋ ฅํจ.
ํ ์ค ์์ฝ
Grounding DINO๋ ํ ์คํธ์ ์ด๋ฏธ์ง ์ ๋ณด๋ฅผ ๋ชจ๋๋ณ๋ก ์ ์ง์ ์ผ๋ก ๊น์ด ์ ๋ ฌ์์ผ,
๊ธฐ์กด ๋ชจ๋ธ ๋๋น ์ ํํ๊ณ ์ผ๋ฐํ๋ open-set ๊ฐ์ฒด ํ์ง๋ฅผ ๊ฐ๋ฅํ๊ฒ ํ ๊ตฌ์กฐ์ด๋ค.
Tight Modality Fusion (3๋จ๊ณ ์ตํฉ: Neck / Query / Head)
๐ ์ ํ์ํ๊ฐ?
๊ธฐ์กด์ Open-set Object Detector๋ค์ ํ ์คํธ ์ ๋ณด๋ฅผ ์ ํ๋ ์์น์๋ง ์ฃผ์ ํ๋ ๋ฐฉ์(GLIP: Neck๋ง, OV-DETR: Head๋ง)์ด ๋ง์์.
์ด๋ ๊ฒ ํ๋ฉด ์ธ์ด-์๊ฐ ์ ๋ ฌ์ ๊น์ด๊ฐ ์์์ ธ ์ผ๋ฐํ ์ฑ๋ฅ์ด ๋จ์ด์ง ์ ์์.
๐ง Grounding DINO์ ํด๊ฒฐ์ฑ : 3๋จ๊ณ ์ตํฉ (Tight Fusion)
Grounding DINO๋ ์ธ์ด์ ์ด๋ฏธ์ง ์ ๋ณด๋ฅผ ์ด 3๋จ๊ณ์ ๊ฑธ์ณ ๊น๊ฒ ์ตํฉํจ์ผ๋ก์จ,
Cross-Modality Alignment๋ฅผ ๊ทน๋ํํ๊ณ ์ ํ๋ค.
๐ 1๋จ๊ณ: Feature Fusion A (Neck)
- ์์น: Image Backbone → Neck ์ฌ์ด
- ๋ด์ฉ:
- ์ด๋ฏธ์ง feature๋ฅผ Text Feature์ ์ด๊ธฐ ์ ๋ ฌ
- Cross-Attention์ ํตํด ํ ์คํธ ๊ธฐ๋ฐ์ผ๋ก ์ด๋ฏธ์ง ์๋ฏธ ์ฌ๊ตฌ์ฑ
- GLIP๋ ์ฌ๊ธฐ๊น์ง๋ง ์ฌ์ฉํจ
๐ 2๋จ๊ณ: Feature Fusion B (Query Initialization)
- ์์น: Neck → Head ์ฌ์ด
- ๋ด์ฉ:
- Language-Guided Query Selection
- ํ ์คํธ์ ์ ์ฌ๋๊ฐ ๋์ ์ด๋ฏธ์ง ์์ญ๋ง Query๋ก ์ ํ
- DETR ๊ณ์ด ์ฟผ๋ฆฌ ๊ตฌ์กฐ์ ํธํ
- OV-DETR๋ ์ด ๋จ๊ณ๋ง ์ฌ์ฉํจ
๐ 3๋จ๊ณ: Feature Fusion C (Head)
- ์์น: Head ๋ด๋ถ (๋์ฝ๋)
- ๋ด์ฉ:
- ๋์ฝ๋ ๋ ์ด์ด์์ Image Cross-Attention + Text Cross-Attention ๋์ ์ ์ฉ
- ์ฟผ๋ฆฌ๊ฐ ์ด๋ฏธ์ง์ ํ ์คํธ ์์ชฝ์ผ๋ก๋ถํฐ ์๋ฏธ๋ฅผ ์ง์์ ์ผ๋ก ์ ๋ฐ์ดํธ ๋ฐ์
๐ฏ ์ถ๊ฐ: Contrastive Loss ์ ์ฉ ์์น
- Loss A: Neck์์ ์ด๋ฏธ์ง-ํ ์คํธ Feature ์ ๋ ฌ
- Loss B: Head์์ ์์ธก๋ ๊ฐ์ฒด-ํ ์คํธ๊ฐ ์ ๋ ฌ
๐ก ์์ฝ ๋ฌธ์ฅ
Grounding DINO๋ Neck, Query Init, Head์ 3๋จ๊ณ์ ๊ฑธ์ณ ํ ์คํธ-์ด๋ฏธ์ง ์ ๋ ฌ์ ์ํํ๋ Tight Fusion ๊ตฌ์กฐ๋ฅผ ์ ์ฉํด,
๊ธฐ์กด ๋ชจ๋ธ ๋๋น ๋ ๊น๊ณ ์ ๋ฐํ Cross-Modality ํ์ต์ ๊ฐ๋ฅํ๊ฒ ํ๋ค.
feature fusion ๋จ๊ณ๋ฅผ ์ธ์ธํ๊ฒ ํด์ฃผ๋ฉด ๋ณต์กํ์ง๋ง ์ฑ๋ฅ ํฅ์์ ๊ธฐ๋ํ ์ ์๋ค!
๐ ๊ธฐ์ค: Fig. 2์ Feature Fusion ์์น A / B / C
๋ชจ๋ธ๋ช BackboneFusion ์์นText ์ฒ๋ฆฌํน์ง ์์ฝ
GLIP DyHead A (Neck) ๋จ์ด(word) ์์ค ์กฐ๊ธฐ ์ตํฉ, grounding pre-train ๊ธฐ๋ฐ OV-DETR Deformable DETR B (Query Init) ๋ฌธ์ฅ(sentence) ์์ค ํ ์คํธ ๊ธฐ๋ฐ query ์ด๊ธฐํ OmDet Sparse R-CNN C (Head) ๋ฌธ์ฅ(sentence) ๋์ฝ๋ ๋จ๊ณ์์ ์ธ์ด ์ ๋ณด ์ฝ์ MDETR DETR A, C ๋จ์ด ์์ค ๋ค์ํ task์ ํ์ฅ ๊ฐ๋ฅ Grounding DINO DINO A, B, C (๋ชจ๋) sub-sentence ์์ค ์ธ ๋จ๊ณ ๋ชจ๋ ์ตํฉํ tight fusion ๊ตฌ์กฐ
Sub-Sentence Text Prompt ์์ด๋์ด
ํ ์คํธ๊ฐ ๋ชจ๋ธ์ ์ด๋ป๊ฒ ์ ๋ ฅ๋๊ณ ํด์๋๋๋์ ๋ฐ๋ผ ์ฑ๋ฅ๊ณผ ํํ ์ ๋ ฌ ํ์ง์ด ๋ฌ๋ผ์ง๊ธฐ ๋๋ฌธ์ ๋งค์ฐ ์ค์ํ ๋ถ๋ถ!
โ ๊ธฐ์กด ๋ฌธ์ ์
Open-set detection์์ ํ ์คํธ ํ๋กฌํํธ(์ ๋ ฅ ๋ฌธ์ฅ)๋ ์นดํ ๊ณ ๋ฆฌ ์ด๋ฆ์ ๋์ดํ๊ฑฐ๋ ์ ์ฒด ๋ฌธ์ฅ์ ๋ฌธ๋งฅ์ผ๋ก ์ธ์ฝ๋ฉํ๋ ๋ฐฉ์์ด ์ฌ์ฉ๋์ด ์์.
๊ทธ๋ฌ๋ ์ด ๋ ๋ฐฉ์์๋ ๊ฐ๊ฐ ๋จ์ ์ด ์กด์ฌํจ:
(a) Sentence Level
- ์ ์ฒด ๋ฌธ์ฅ์ ํ๋์ ๋ฒกํฐ๋ก ํํ → ๋๋ฌด ์์ถ๋จ
- ๋ฌธ์ฅ ๋ด ๊ฐ๋ณ ๋จ์ด(๊ฐ์ฒด๋ช )์ ์ ๋ณด๊ฐ ํฌ์๋จ
- ์์: "A cat sits on a table." → ํ๋์ ์ ์ฒด ๋ฒกํฐ
(b) Word Level
- ๊ฐ ๋จ์ด๋ฅผ ๋ ๋ฆฝ์ ์ผ๋ก ์ธ์ฝ๋ฉํ๊ธด ํ์ง๋ง
- ์ฌ๋ฌ ์นดํ ๊ณ ๋ฆฌ๋ฅผ ๋จ์ ๋์ดํ ๊ฒฝ์ฐ,
- → ์๋ก ๋ฌด๊ดํ ๋จ์ด๋ค ๊ฐ์ attention์ด ๋ฐ์ํด ์ ๋ณด ๊ฐ์ญ์ด ์๊น
- ์์: "cat, baseball glove, a table"์์ ‘cat’๊ณผ ‘glove’๊ฐ ์๋ก ์ํฅ์ ์ค
(C) Grounding DINO์ ํด๊ฒฐ์ฑ : Sub-Sentence Level Prompt
Grounding DINO๋ ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด Sub-sentence Level Representation์ ๋์ ํจ.
โจ ํต์ฌ ์์ด๋์ด
- ์ ๋ ฅ ํ ์คํธ๋ฅผ ๋จ์ด ์์ค์ผ๋ก ์ธ์ฝ๋ฉํ๋ฉด์,
- ์๋ก ๊ด๋ จ ์๋ ๋จ์ด๋ค ์ฌ์ด์ attention์ ๋ง์คํน(masking) ํจ
- → ์ฆ, "cat", "baseball glove", "a table" ๊ฐ์๋ ์๋ก ์ฃผ์๋ฅผ ์ฃผ์ง ์์
- → ๋จ์ด ๊ฐ ๊ฐ์ญ์ ๋ฐฉ์งํ๋ฉด์๋ ๋ฏธ์ธํ ์๋ฏธ ํํ์ ์ ์ง
๐ฏ ๊ฒฐ๊ณผ์ ์ผ๋ก
- ๋ถํ์ํ ๊ฐ์ญ ์์ด ์ ํํ ๊ฐ์ฒด-ํ ์คํธ ์ ๋ ฌ
- ํนํ ๋ค์ค ๊ฐ์ฒด ํ์ง, ๋ณต์กํ ๋ฌธ์ฅ ํ๋กฌํํธ ์ํฉ์์ ์ฑ๋ฅ ํฅ์
๐ ์ฑ๋ฅ ํฅ์
- Ablation ์คํ ๊ฒฐ๊ณผ, Sub-sentence Prompt๋→ COCO Zero-shot์์๋ ๊ธ์ ์ ํจ๊ณผ
- → ๋ชจ๋ธ ํ๋ผ๋ฏธํฐ ์ฆ๊ฐ ์์ (๊ฐ๋ณ๊ณ ํจ์จ์ )
- → LVIS ์ฑ๋ฅ์ +0.5 AP ํฅ์
๐ ์์ฝ ๋ฌธ์ฅ
Sub-sentence Prompt๋ ๋จ์ด ๊ฐ ๋ถํ์ํ attention์ ์ฐจ๋จํ์ฌ,
ํ ์คํธ ๋ด๋ถ์ ์๋ฏธ ์ถฉ๋ ์์ด ๋ ์ ๋ฐํ ๊ฐ์ฒด-์ธ์ด ์ ๋ ฌ์ ๊ฐ๋ฅํ๊ฒ ํ๋ค.
3. Loss Functions
Grounding DINO๋ DETR-like ๊ตฌ์กฐ๋ฅผ ๋ฐ๋ฅด๋ฉด์๋ ๋ฉํฐ๋ชจ๋ฌ ์ ๋ ฌ๊ณผ ๋ฐ์ค ํ๊ท ์ฑ๋ฅ์ ๋์์ ํฅ์์ํค๊ธฐ ์ํด ์ฌ๋ฌ ์์ค ํจ์๋ฅผ ์กฐํฉํจ. ์๋ ์ธ ๊ฐ์ง ์ถ์ผ๋ก ๊ตฌ์ฑ๋จ:
Contrastive Loss + Focal Loss
Classification Loss: Contrastive Loss + Focal Loss
- ์ญํ : ์์ธก๋ ๊ฐ์ฒด๊ฐ ์ด๋ค ํ ์คํธ(๋จ์ด)์ ํด๋นํ๋์ง๋ฅผ ๋ถ๋ฅํ๋ ๋ฐ ์ฌ์ฉ
- ๋ฐฉ์:
- ๊ฐ ๋์ฝ๋ ์ฟผ๋ฆฌ(= ์์ธก๋ ๊ฐ์ฒด ํน์ง)์ ํ ์คํธ ํ ํฐ ๊ฐ dot product → ๋ก์ง(logit) ์์ฑ
- → ์ด ๋ก์ง์ ๋ํด Focal Loss ์ ์ฉ
- ์ Focal Loss?
- ์ ๋ต ํด๋์ค ์๊ฐ ์ ๊ณ ๋๋ถ๋ถ์ด ๋ฐฐ๊ฒฝ์ธ ์ํฉ (object detection์์ ํํจ)
- → hard negative์ ์ง์ค, easy negative๋ ๋ฌด์
L1 Loss & GIoU for box regression
- L1 Loss: ์์ธก๋ ๋ฐ์ค์ ์ ๋ต ๋ฐ์ค์ ์ขํ ์ฐจ์ด๋ฅผ ์ง์ ๊ณ์ฐ
- GIoU (Generalized IoU):
- ๋จ์ IoU๋ฅผ ๋์ด ๋ฐ์ค๊ฐ ์ผ๋ง๋ ์ ๋ง๋ฌผ๋ฆฌ๋์ง ์ธก์
- overlap์ด ์๋ ๊ฒฝ์ฐ์๋ gradient๋ฅผ ์ค ์ ์์
- → ๋ ์์ค์ ๊ฐ์ด ์จ์ ์ ํํ ์์น ์์ธก๊ณผ ๋ฐ์ค ํํ์ ์ ํฉ์ฑ์ ๋ชจ๋ ์ก์
Auxiliary Loss ๊ฐ๋
Grounding DINO์์๋ ๋์ฝ๋์ ๊ฐ layer์ encoder์ถ๋ ฅ ๋ชจ๋์ auxiliary loss์ ์ฉ → ๋ ๋์ ์ ๋ ฌ ํ์ต๊ณผ ๋ฐ์ค ์์ธก ๊ฐ๋ฅ
- ๊ฐ ๋์ฝ๋ ๋ ์ด์ด์ ์ค๊ฐ ์ถ๋ ฅ์ ๋ํด์๋ ๋์ผํ ์์ค ๊ณ์ฐ
- ๋ชฉ์ : ๋ชจ๋ธ ํ์ต ์ ์กฐ๊ธฐ ์๋ ด์ ๋ง๊ณ ์์ ์ ์ธ gradient ํ๋ฆ ์ ๊ณต
- DETR ๊ณ์ด ๋ชจ๋ธ์ ํน์ง์ผ๋ก, “deep supervision” ํจ๊ณผ๋ฅผ ์ค
๐ ์์ฝ ๋ฌธ์ฅ
Grounding DINO๋ ํ ์คํธ-๊ฐ์ฒด ์ ๋ ฌ์ ์ํ Contrastive + Focal Loss,
๋ฐ์ค ์ ๋ฐ๋๋ฅผ ์ํ L1 + GIoU Loss,
ํ์ต ์์ ํ๋ฅผ ์ํ Auxiliary Loss๋ฅผ ์กฐํฉํ์ฌ
๋ฉํฐ๋ชจ๋ฌ ๊ฐ์ฒด ํ์ง์ ์ ํ์ฑ๊ณผ ์ผ๋ฐํ ์ฑ๋ฅ์ ๋์์ ์ก์๋ค.
4. Experiments & Results
Grounding DINO๋ ๋ค์ํ ๋ฒค์น๋งํฌ์์ ๊ธฐ์กด ๋ชจ๋ธ(GLIP, DINO, GLIPv2 ๋ฑ)๊ณผ ๋น๊ต๋๋ฉฐ, Zero-shot ์ผ๋ฐํ, REC ์ ๋ฐ๋, ์ธ๋ถ ๋ชจ๋ ๊ธฐ์ฌ๋ ๋ถ์์์ ๊ฐ๋ ฅํ ์ฑ๋ฅ์ ์ ์ฆํจ.
Zero-shot COCO / LVIS / ODinW ์ฑ๋ฅ ๋น๊ต (vs GLIP, DINO, GLIPv2 ๋ฑ)
Zero-Shot ์ฑ๋ฅ ํ๊ฐ
์ด๋ค ๋ฐ์ดํฐ ์ธํธ๋ค์ธ์ง ๋ถ์ํ๋ ๊ฒ๋ ์ค์! → annotaion, label์์ฑ ๊ณผ์ ์ ์ฐธ๊ณ ํด์ ๋ง๋ค๋ฉด ๋น ๋ฅด๊ฒ ๊ตฌ์ถํ ์ ์๊ธฐ์!
๐ COCO Benchmark
- Grounding DINO (w/o COCO ํ์ต): 52.5 AP (SOTA)
- GLIP ๋๋น +1.8 AP / DINO ๋๋น +0.5 AP ํฅ์
- Fine-tuning ์: 63.0 AP (→ SOTA)
- โ๏ธ COCO ๋ฐ์ดํฐ ์์ด๋ ๋์ ์ฑ๋ฅ = ์ ๋ก์ท ๊ฐ์ ์ ์ฆ
๐ LVIS Benchmark (๋กฑํ ์ผ ๊ฐ์ฒด ํฌํจ)
- Rare categories ์ฑ๋ฅ์ GLIP๋ณด๋ค ๋ฎ์ (DETR ๊ณ์ด์ ํ๊ณ)
- ๊ทธ๋ฌ๋ Grounding DINO๋ caption data ํ์ฉ ์ +1.8 AP ์์น → ๋ฐ์ดํฐ ํ์ฅ์ฑ ์ฐ์
- DetCLIPv2์๋ ๋ฐ๋ฆผ (ํจ์ฌ ํฐ ๋ฐ์ดํฐ ๊ท๋ชจ ๋๋ฌธ)
๐ ODinW Benchmark (Object Detection in the Wild)
- 35๊ฐ ๋ค์ํ ๋๋ฉ์ธ ํ ์คํธ
- 26.1 AP (Zero-shot ๊ธฐ์ค) → SOTA ์ฑ๋ฅ ๊ธฐ๋ก
- GLIPv2๋ณด๋ค ํ๊ท ์ฑ๋ฅ์ ๋น์ท, ํ์ง๋ง median ์ฑ๋ฅ์ ํจ์ฌ ๋์ (11.9 vs 8.9)
- → ๋ค์ํ ๋๋ฉ์ธ์์ ์ผ๊ด๋ ์ฑ๋ฅ ๋ณด์ฌ์ค
- ๋ชจ๋ธ ํฌ๊ธฐ๋ ์์ (172M vs 232M)
REC task์์์ ์ฑ๋ฅ ๋ฐ ํ๊ณ
Referring Expression Comprehension (REC) Task
๐ฏ ๋ชฉํ:
์ฃผ์ด์ง ๋ฌธ์ฅ(์: "the man in the red shirt")์ผ๋ก ํน์ ๊ฐ์ฒด๋ฅผ ์ ํํ ์ฐพ์๋ด๋ ๊ฒ
- Zero-shot ์ํฉ์์ GLIP ๋ฐ Grounding DINO ๋ชจ๋ ์ฑ๋ฅ ๋ฎ์
- → ํ์ต ์์ REC ๋ฐ์ดํฐ ํฌํจ ์ฌ๋ถ๊ฐ ์ฑ๋ฅ์ ๊ฒฐ์ ์ ์ํฅ
- RefCOCO/+/g ๋ฐ์ดํฐ ํฌํจ ์ Grounding DINO๊ฐ GLIP์ ํฐ ํญ์ผ๋ก ๋ฅ๊ฐ
๐ ๊ฒฐ๋ก :
ํ์ฌ์ open-set ๋ชจ๋ธ๋ค์ fine-grained detection (์ ๊ตํ ๊ฐ์ฒด ๊ตฌ๋ถ)์ ์ฝํจ
→ REC ๋ฐ์ดํฐ๋ ๋ ํฐ ๋ชจ๋ธ, caption ๋ฐ์ดํฐ๊ฐ ํ์
Ablation Study ๊ฒฐ๊ณผ ์์ฝ (์ด๋ค ๋ชจ๋์ด ์ฑ๋ฅ ํฅ์์ ๊ธฐ์ฌํ๋์ง)
Grounding DINO๋ ์ฌ๋ฌ ๋ชจ๋๋ก ๊ตฌ์ฑ๋์ด ์์ผ๋ฉฐ, ๊ฐ ๋ชจ๋์ด ์ฑ๋ฅ์ ์ด๋ป๊ฒ ๊ธฐ์ฌํ๋์ง ์คํ์ ํตํด ๊ฒ์ฆ๋จ.
๐ง ๋ชจ๋COCO Zero-shotLVIS์ค๋ช
Encoder Fusion (Neck ์ตํฉ) +0.8 AP โ๏ธ ๊ฐ์ฅ ํฐ ์ฑ๋ฅ ํฅ์ Language-guided Query Selection โ๏ธ +3.0 AP ํ ์คํธ ๊ธฐ๋ฐ ์๋ฏธ ์๋ ์ฟผ๋ฆฌ ์ ํ Text Cross-Attention (Head) +0.6 AP +1.8 AP ํ ์คํธ์ ์ ๋ ฌ๋ ๋์ฝ๋ฉ ๊ฐ๋ฅ Sub-Sentence Prompt ~ +0.5 AP ํ ์คํธ ์ ๋ ฌ ์์ ํ - COCO Fine-tune ์ฑ๋ฅ์ ์ํฅ ์ ์: ํด๋น ๋ชจ๋๋ค์ด ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฐ๊พธ์ง ์๊ธฐ ๋๋ฌธ
- ์ ์ฒด์ ์ผ๋ก, Encoder Fusion > Text Cross-Attention > Query Selection > Prompt ์์ผ๋ก ๊ธฐ์ฌ๋
๐ ์ด์ ๋ฆฌ ํ ๋ฌธ์ฅ
Grounding DINO๋ ๋ค์ํ ๋ฒค์น๋งํฌ์์ ์ ๋ก์ท ์ฑ๋ฅ, ๋ฒ์ฉ์ฑ, ์ผ๊ด์ฑ ์ธก๋ฉด์์ ์ฐ์์ฑ์ ์ ์ฆํ์ผ๋ฉฐ, ํนํ Tight Fusion ๊ตฌ์กฐ์ Query Selection, Sub-Sentence Prompt ๋ฑ์ ์ค๊ณ๊ฐ ํฐ ๊ธฐ์ฌ๋ฅผ ํจ.
5. Limitations & Insights
Segmentation ๋ถ๊ฐ
- Grounding DINO๋ ๊ฐ์ฒด ์ธ์(box ๋จ์)๊น์ง๋ง ์ํ ๊ฐ๋ฅ.
- ๋ฐ๋ฉด GLIPv2 ๋ฑ ์ผ๋ถ ๋ชจ๋ธ์ segmentation (pixel ๋จ์ ๋ถํ )๋ ์ง์.
- → Downstream Task ํ์ฅ์๋ ์ ์ฝ์ด ์กด์ฌํจ.
REC Task ์ฑ๋ฅ์ Fine-tuning ํ์
- Referring Expression Comprehension (REC)์์๋:
- Zero-shot ์ฑ๋ฅ ๋ฎ์
- → RefCOCO/+/g ๊ฐ์ ํนํ ๋ฐ์ดํฐ ์์ด๋ ์ฑ๋ฅ ๋จ์ด์ง
- ์ค์ ์คํ์์๋ REC ๋ฐ์ดํฐ ํฌํจ ํ ์ฑ๋ฅ์ด ํฐ ํญ์ผ๋ก ํฅ์๋จ
- โ๏ธ Fine-tuning ์์ด ์ ๊ตํ ๊ฐ์ฒด ์ธ์์ ์ด๋ ค์
์ผ๋ถ hallucination ์ฌ๋ก ์กด์ฌ
- ์ผ๋ถ ์คํ์์ ์กด์ฌํ์ง ์๋ ๊ฐ์ฒด๋ฅผ ์์ธกํ๋ ์ค๋ฅ(hallucination) ๊ด์ฐฐ๋จ
- ํนํ ๋ณต์กํ๊ฑฐ๋ ์ ๋งคํ ๋ฌธ์ฅ, ๋๋ฌธ ๊ฐ์ฒด์์ ๋ฐ์ ๊ฐ๋ฅ
- → open-set ๋ชจ๋ธ์ ์ธ์ด ํด์๊ณผ ์๊ฐ ์ ๋ณด ์ ๋ ฌ์ ๋ถ์์ ์ฑ ๋ฐ์
๐ก ํต์ฐฐ ๋ฐ ํฅํ ๋ฐฉํฅ
- Scaling up (๋ฐ์ดํฐ, ๋ชจ๋ธ ํฌ๊ธฐ)๊ฐ ์ฌ์ ํ ์ค์
- ํนํ:
- ํ ์คํธ-์ด๋ฏธ์ง ์ ๋ ฌ ๊ฐํ๋ฅผ ์ํ pretraining ๊ธฐ๋ฒ
- REC/segmentation ํ์ฅ์ ์ํ ๋ฉํฐํ์คํฌ ํ์ต
- Hallucination ๋ฐฉ์ง๋ฅผ ์ํ ์ ๊ตํ loss ์ค๊ณ๊ฐ ์์ผ๋ก์ ๊ณผ์
6. Takeaways
Grounding DINO์ ํต์ฌ ๊ธฐ์ฌ ์์ฝ
- Open-set object detection์ ์ต์ ํ๋ ๊ตฌ์กฐ: ๊ธฐ์กด DINO ๊ธฐ๋ฐ์ Transformer ์ํคํ ์ฒ์ language modality๋ฅผ ํจ๊ณผ์ ์ผ๋ก ๊ฒฐํฉ
- Tight Modality Fusion: ์ด๋ฏธ์ง์ ํ ์คํธ์ ์ ๋ ฌ์ neck–query–head 3๋จ๊ณ์ ๊ฑธ์ณ ์ํ, ๊ธฐ์กด ๋ชจ๋ธ(GLIP, OV-DETR ๋ฑ) ๋๋น ์ ๋ ฌ ํ์ง ํฅ์
- Sub-sentence Text Prompt ๋์ : ๋จ์ด ๊ฐ ์๋ฏธ ๊ฐ์ญ ์ต์ํ, fine-grained ํํ ๊ฐ์
- Zero-shot ์ผ๋ฐํ ์ฑ๋ฅ ์ฐ์: COCO, LVIS, ODinW์์ SOTA ๋ฌ์ฑ
์ ํฉํ Task vs ํ๊ณ Task
์ ํฉํ Taskํ๊ณ ์๋ Task
Open-set Object Detection (์ ๋ก์ท ๊ฐ์ฒด ํ์ง) Segmentation (ํฝ์ ๋จ์ ๋ถํ ์ ๋ถ๊ฐ) Referring Object Detection (fine-tune ์) Fine-tuning ์์ด REC ์ฑ๋ฅ ๋ฎ์ ๋ค์ํ ๋๋ฉ์ธ์ ๋ํ generalization ์ผ๋ถ hallucination ์ฌ๋ก ์กด์ฌ ์ฐ๋ฆฌ ํ๋ก์ ํธ์์ ์ฐ๊ณ ๊ฐ๋ฅ์ฑ
์ฐ๋ฆฌ ํ ๋ชฉํ: ๊ธฐ์กด ๋ชจ๋ธ์ ์๋ก์ด modality ์ถ๊ฐ
- Grounding DINO๋ ๋ฉํฐ๋ชจ๋ฌ ์ตํฉ์ ์ค๊ณ ์์๋ก ๋งค์ฐ ์ ํฉ
- → Tight Fusion ๊ตฌ์กฐ, Cross-Modality Decoder, Query Selection ๋ฑ์ ํ modality ํ์ฅ ์์๋ ์ ์ฉ ๊ฐ๋ฅ
- ์ฐ๋ฆฌ๊ฐ ์๋ํ ์ ์๋ ์์ด๋์ด:
- ์๋ก์ด modality (์: ์ค๋์ค, Depth, segmentation ๋ฑ)๋ฅผ neck/query/head ๋จ๊ณ ์ค ํ๋์ ์ตํฉํ๋ ์คํ
- Sub-sentence prompt ๊ฐ๋ ์ ๋ค๋ฅธ ํํ์ ์ธ์ด ์ ๋ ฌ ๋ฐฉ์์๋ ํ์ฅ
- hallucination ๊ฐ์ ์ ๋ต ์ ์ฉ ์คํ (e.g. hard negative mining, filtering)
๐ ๋ง๋ฌด๋ฆฌ ํ๋ง๋
Grounding DINO๋ “ํ ์คํธ๋ก ๊ฐ์ฒด๋ฅผ ์ฐพ๋” ๊ฐ๋ ฅํ ๊ธฐ๋ฐ์ ์ ๊ณตํ๋ฉฐ,
๋ชจ๋ฌ๋ฆฌํฐ ์ตํฉ ์คํ์ ์ถ๋ฐ์ ์ด์ ํ์ฅ ๊ฐ๋ฅํ ํ๋ ์์ํฌ๋ก์ ํฐ ๊ฐ๋ฅ์ฑ์ ๋ณด์ฌ์ค๋ค.
'๋ ผ๋ฌธ ์ ๋ฆฌ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
NExT-GPT: Any-to-Any Multimodal LLM ์ ๋ฆฌ (2) 2025.07.09