- Object detection은 겹치는 물체들을 처리하기 위한 NMS와 같은 후처리가 필요하다.
- 본 논문에서 제안하는 DETR은 이를 end-to-end로 간소화한 transformer 기반의 모델이다.
- Transformer를 기반으로 하기 때문에 별도의 후처리 없이 한 번에 추정이 가능하다.
- DETR은 panoptic segmentation을 빠르게 수행할 수 있는 모델이라고도 볼수 있다.
- Transformer가 원래 영상 용은 아니기 때문에 입력 영상으로부터 특징을 추출하기 위한 CNN 백본이 사용되기는한다.
- 탐지된 객체의 크기에 따라 loss가 달라지고 클래스 예측이 잘 되었는지 아닌지에 따라서도 loss가 달라져야 하는 등 복잡한 조건을 가지고 있기 때문에 이를 위한 손실함수를 별도로 고안하였다.
- 제안된 손실함수를 쉽게 설명하면, 클래스에 대한 손실은 반드시 N개의 결과를 추정하기 때문에 객체의 개수가 그것보다 적은 경우는 no-object라는 클래스를 만들어 처리하고, 디코더가 예측하는 객체의 클래스가 ground truth 객체에 포함이 될 때 낮은 손실을 가지게 하는 방식이다. Box에 대한 손실은 box의 크기로 인한 영향을 제외하기 위한 손실이 추가 된다.
- 훈련을 위한 자원이 엄청 투입되고, 학습 시간도 오래걸리는 것 같다.
- 내 생각: Transformer를 vision 분야에 활용하여 유용한 결과물을 만들려고 노력한 것 같은데...학습과 구현이 이렇게 어려우면 사용하고 싶은 생각이 싹 사라지는...
* NMS: Non-maximum suppression
* Transformer: RNN을 사용하지는 않지만 기존의 seq2seq처럼 인코더에서 입력 시퀀스를 받고 디코터에서 출력 시퀀스를 출력하는 인코더 디코터를 유지. 하지만 인코더와 디코더라는 단위가 N개가 존재할 수 있음. 주로 자연어 처리 등에서 사용. end-to-end의 형태를 가지고 있다는 것도 자연어 처리 등에서 주로 사용되는 용어.
* Panoptic segmentation: sementic segmentation + instance segmentation
댓글