일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- Infotaxis
- vlm #clip #object detection
- vlm 정리 #glip #object detection
- path planning #mcts
- ste
- vision language model #transformer
- 세계에서 이 세상이 사라진다 해도
- dino #grounding dino #vlm #object detection
- 책 #오늘 밤
- ROS2
- 자율주행 #로봇공학과
- planning #ste #논문 리뷰
- 로봇 #로봇공학과 #공대생 #대학생 #일상 #휴무 #교수
- 경로 계획
- 정보이론
- 소울러닝 #책리뷰 #느낀점
- Unity
- ROS1
- 탐색
- AirSim #RL #Drone
- 코드 트리 #개발자 #언어 공부 #코딩 공부
- 개발 일기
- Today
- Total
퇴근할게요 교수님
[논문 리뷰] VLM 돌파하기 - DINO: Detr with Improved DeNoising Anchor Boxes for End-to-End Object Detection 본문
[논문 리뷰] VLM 돌파하기 - DINO: Detr with Improved DeNoising Anchor Boxes for End-to-End Object Detection
휴무 교수 2025. 4. 2. 20:05이후 Grounding DINO(현재 사용하고 있는) 논문을 리뷰하기 위해, Vision-language model(VLM)은 아니지만, 최근 많은 사람들이 사용하고 있는 Object Detection 논문이다. 이 논문을 알고 있다면, 앞으로 리뷰할 논문에 대해서 편하게 이해할 수 있다.
DINO: Grounded Language-Image Pre-training DINO: Detr with Improved DeNoising Anchor Boxes for End-to-End Object Detection

DINO는 DETR(Detection Transformer, 순서가 살짝 꼬였지만 이후 보는 사람은다음을 참고하자.) 구조에 기반하여 object detection 성능을 향상시킨 방식이다.
DINO가 나오기 이전 DETR는 혁신적인 학습 기반 SOTA Object Detection 알고리즘이었다. 하지만 그런 DETR도 다음과 같은 문제가 있었다.
DETR는 학습 속도가 느리고, 학습이 수렴할 때 많은 epoch가 필요하다는 문제가 있었다. 또한, DETR이 생성한 Bounding Box 안에서 찾으려는 객체가 없을 때 혹은 객체가 겹쳐 있을 때, 인지가 제대로 되지 않는다는 문제점이 있었다. DINO는 DETR의 구조를 유지한 채, 학습 안정성과 수렴 속도, 성능을 모두 향상시키기 위해서 다음 3가지 기법을 사용하였다.
CDN (Contrastive DeNoising)

DINO의 가장 핵심적인 기법이다. 기존의 DETR의 모델을 학습할 시 노이즈에 대해서 민감하고, 어떤 데이터가 좋은 데이터인 지 구별을 하는 데 어려움이 있었다. 이를 해결하기 위해서 DINO는 denoising 이라는 학습 방식을 도입하였다. denoising은 2가지의 방식으로 구성된다.
- Positive Queries: GT (Ground Truth) 객체의 bounding box와 label을 약간 변형하여 입력한다. 예를 들어 GT box의 좌표에 노이즈를 추가하거나, class label에 약간의 변형을 가한다.
- Negative Queries: 완전히 잘못된 box나 label을 생성하여 함께 넣는다.
수식을 통해서 조금 더 자세히 살펴보자.
LCDN=Lcls+Lbbox+λcontra⋅Lcontra
- Lcls: classification loss (cross entropy)
- Lbbox: bounding box regression loss (L1 + GIoU)
- Lcontra: contrastive loss
- λcontra: weighting coefficient for the contrastive loss
Contrastive Loss는 positive와 negative queries 간의 특징간 거리를 조절하여 다음과 같이 정의한다. 이는 단순히 Bounding Box 회귀와 classification loss만 사용하는 게 아니라, positive는 더 가까이, negetive는 더 멀어지도록 유도하는 것을 도입해서 객체를 더 명확하게 구별하게 해준다.
Lcontra=−logexp(sim(q,k+)/τ)∑Ni=0exp(sim(q,ki)/τ)
- q: query feature
- k+: positive key
- ki: negative keys
- sim(q,k)=q⊤k‖: cosine similarity
- \tau: temperature scaling parameter
이를 통해서, 모델이 더 빠르게 수렴하게 되고, 노이즈에 강건한 학습을 할 수 있게 된다.
Mixed Query Selection
기존의 DETR에서는 query가 모두 초기화되며, 학습 초반에는 Detection 성능이 불안전했다. DINO에서는 이를 보완하기 위해서 query를 섞어 사용한다는 개념을 들고왔다. 말로만 하면 이해하기 어려우니 자세히 보자.
1. Learnable Queries (Anchor Queries)
고정된 위치에서 학습이 가능한 query들을 초기화한다. DETR는 모두 랜덤하게 초기화 되어 아무런 정보가 없었지만, 고정된 위치에서 초기화 하기 때문에 기존의 특징을 가지고 있어 anchor box처럼 특정 영역을 담당하게 유도된다.
2. Random Queries
그렇다고 무작위의 query를 사용하지 않는 것은 아니다. 무작위의 query도 함께 사용하여 다양한 객체를 포괄적으로 탐지할 수 있도록 하였다.
3. CDN Queries
앞서 얘기했던 denoising한 query들도 함께 포함한다.
다양한 query를 섞어 사용함으로써, 모델은 초기부터 안정적인 학습이 가능해졌다.
Look Forward Twice
이 내용 중에 가장 간단한 내용이다. DETR은 하나의 디코더 블록을 고려하지만, DINO는 2개의 블록을 동시에 고려하여 예측하는구조를 형성한다.

이를 통해서 객체의 위치나 모양 정보가 계층적으로 더 정확히 보정된다는 장점이 있고, 더 넓은 정보를 활용할 수 있게 된다는 장점이 있다.
DINO는 단순히 성능 향상을 넘어, 학습 안정성과 속도까지 개선한 DETR 기반의 차세대 object detection 모델이다. 이 구조를 바탕으로 이후 Vision-Language 모델인 Grounding DINO로 자연스럽게 확장되며, VLM 기반 탐지에서도 강력한 성능을 보이고 있다.
Object Detection에 집중하여 리뷰를 하는게 처음이라 너무 어렵게 작성되지 않았을까 하는 걱정이 된다. 스스로도 어려운 내용이라 더욱 그런 것 같다. 하나씩 리뷰를 진행하면서 잘 설명할 수 있게 노력해보겠다.