SOLUTION
home
OGQ GYN AI for Image
home
🔥

OGQ GYN Developers Day #9 : StreamYOLO

게시일
2023/02/15
관련 태그
AI
Deep Learning
ObjectDetection
Streaming
YOLOX
게시자
Dayeon Oh
Dayeon Oh
1 more property
OGQ GYN Developers Day는 OGQ GYN의 모델 개발 과정 및 논문 등을 많은 기업 분들께 발표하는 자리로, 매월 마지막 주 수요일에 진행되고 있습니다.
이번 컨퍼런스에선 CVPR 2022에 Accept되고, 구두발표까지 진행된 논문인 StreamYOLO에 대해 발표했습니다.

Contents

Conference 개요

일시 : 2023년 01월 25일 13:00 ~ 14:00
장소 : Zoom 미팅
참여기업 (가나다순)
베스트디지탈 BEST DIGITAL
웹게이트 WEBGATE
트루엔 TRUEN
순서
1.
참여 업체 소개
2.
OGQ GYN 발표
사회자: OGQ GYN 우재현 연구원
발표자: OGQ GYN 오다연 연구원
3.
Q&A

1. Previous Presentation Summary

지난 컨퍼런스에서는 메모리 병목현상을 개선하기 위한 MCUNet과 네트워크 연산 엔진을 개선하여 메모리 사용량을 줄인 MCUNetV2에 대해 발표했습니다.

1-1. Low Memory Network

train / inference 시 I/O의 반복으로 메모리 대역폭보다 많은 data가 이동하게 됩니다. 이는 병목현상을 초래하여 inference 시 속도 저하 현상을 유발시킵니다.

1-2. MCUNet

일반적인 접근법
MCUNet
일반적인 경우, output을 위한 공간을 새로운 공간에 할당합니다. 이 때, GPU 메모리 사용량은 2N이 됩니다.
MCUNet은 연산이 끝난 input 메모리에 덮어씌워 할당함으로써 GPU 메모리 사용량을 1+N으로 줄였습니다.

1-3. MCUNetV2

MCUNetV2는 layer 단위로 이루어지던 conv 연산을 patch 단위로 나누어 수행하는 접근법입니다.
덕분에 마이크로 컨트롤러 등 하드웨어가 제한적인 환경에서도 적용 가능하며, 고해상도 이미지로 학습하여 object detection task에서 성능 손실을 줄일 수 있습니다.

2. Online Perception

어떠한 경우, 높은 정확도를 요구하지만 제한적인 하드웨어로 어려움을 겪는 상황이 존재합니다.
대표적으로 자율주행이 이에 해당될 수 있고, 이러한 상황을 극복하기 위해 선택되는 방법으로, Online Perception이 있습니다.

Problem

Streaming perception - Fovea (ICCV 2021)
online perception 시, 속도 저하를 막기 위해 input canvas의 크기를 줄이는 것은 필수적입니다. 일반적인 방법으로는, downsampling이 있습니다.
Fovea는 스트리밍 시 효율적인 처리를 위해 작은 input canvas를 유지하면서 특정 영역을 확대하는 attention 접근법을 제안합니다.
Fovea 이후, Fovea의 속도를 개선시키는 방향으로 연구가 진행되었습니다.
그러나 모델이 아무리 빨라지더라도 모델이 최신 프레임 추론을 하고 난 후, 주변 환경이 바뀌는 문제가 존재합니다. object가 빠른 상황에서는 더욱 부정확해집니다.
StreamYOLO의 저자는 이전의 연구들은 기존 검출기 개선에 초점을 두고 있고, 새로운 스트리밍 인식 모델 설계는 잘 연구되지 않는다는 점을 지적했습니다.
또한, 현재의 Real-Time Object Detector는 충분히 빠르며, 스트리밍 인식의 핵심 솔루션은 현재 상태에서 다음 프레임의 결과를 예측하는 것이라고 주장했습니다.

3. StreamYOLO

StreamYOLO는 YOLOX(Real-Time Detector)에 다음 프레임의 미래를 예측할 수 있는 기능을 직접 부여합니다.
학습을 위해 last, current, next 프레임의 triplet을 구성하고, 모델이 last, current 프레임을 입력받아 next 프레임의 detection 결과를 예측하는 것을 학습합니다.
학습 효율성을 향상시키기 위해 두 가지 중요한 설계를 제안합니다.

3-1. Dual-Flow Perception (DFP)

1.
Moving Tendency (Dynamic flow)
이전 및 현재 frame의 feature를 모두 사용하여, 이동 상태를 포착하고 이동 크기를 추정합니다.
2.
Basic Semantic Information (Static flow)
현재 frame의 feature를 사용하여 검출기가 물체를 localize 및 classify할 수 있도록 합니다.
발생 가능한 문제점
StreamYOLO는 두 개의 이미지를 입력으로 사용합니다. 즉, 두 개의 feature를 생성해야하기 때문에 거의 두 배의 computational cost & time 소모가 발생할 수 있습니다.
위 현상을 방지하기 위해 Feature Buffer를 도입합니다. 이전 프레임의 feature maps을 재사용함으로써, 마치 feature를 하나만 생성하는 것과 비슷한 효과를 제공합니다.

3-2. Trend Aware Loss (TAL)

같은 종류의 object에서도, 이동속도는 상당히 다르게 나타납니다. 이러한 variant trends는 다양한 측면에서 나타나는데, 원인은 다음과 같습니다.
크기
각 object의 이동 상태
겹침
카메라와 물체 간거리

TAL의 목표

빠르게 움직이는 물체에 더 많은 관심을 기울이는 것입니다.

Equation (1) - Max IoU

1.
next 및 current 프레임의 GT값 간의 IoU를 계산합니다.
2.
next 프레임 차원에서 max 값을 취하여 같은 물체로 추정되는 물체와의 mIoU를 구합니다.
(mIoU_i가 작다면, object가 빠름을 의미한다.)

Equation (2) - Threshold 처리

τ\tau
불확실한 이동상태를 감시하기 위한 threshold입니다.
vv
새로운 객체에 대한 attention 정도를 제어합니다.
상단 식
일반적인 물체의 이동에 대한 처리입니다.
하단 식
불확실한 경우에 대한 처리입니다.
불확실한 경우란, 새로운 객체와 겹치거나 너무 빠른 경우를 의미합니다
다음은 상황 별 mIoU 값과 계산된 w값의 예시입니다.
t=0.3, v=1.4 F_{t+1} 상단: threshold 이상 F_{t+1} 하단: threshold 미만
일반적인 이동 또는 속도 있는 이동에 대해서는 큰 값이 도출되며, 특히 속도가 빠른 경우는 2.5로 큰 값을 가집니다.
반면, 다른 object와 겹치거나 지나치게 빨라 IoU값이 낮아질 경우, 불확실하다고 간주하고 가중치를 1/1.4의 낮은 값으로 도출합니다.

Equation (3) - Normalize

object 별로 Regression Loss에 가중치 값이 곱해진다면, total loss의 값의 규모가 변경될 수 있습니다. 그럴 경우 positive 및 negative 샘플의 loss 사이의 균형을 방해하여, 검출 성능 저하를 초래합니다.
따라서, Eq(3)의 normalize를 적용합니다.
덕분에 total loss의 합을 변경하지 않을 수 있습니다.

Equation (4) - Total Loss

YOLOX의 loss 중 regression loss에 w^\hat{w}을 곱해줍니다.

3-3. Experiments

†: TensorRT 적용 (가속화 도구) size: input image의 가장 짧은 변의 길이. (ours: 600*960)
Argoverse-HD 데이터셋의 SOTA 검출기와의 비교입니다.
None-real-time 접근법 대비 StreamYOLO의 접근법이 모든 평가 지표에서 우세합니다.
1st, 2nd 모델에 비해 ours가 아주 높지 않은 것 처럼 보일 수 있지만, 이들은 TensorRT라는 가속화 도구를 적용했을 때의 성능입니다. StreamYOLO에 TensorRT를 적용하고 input size를 1200으로 키울 경우, 1st 모델을 능가합니다.
Search
OGQ GYN Developers Day #22 : ViT-CoMer
OGQ GYN Developers Day #22 : ViT-CoMer
OGQ GYN의 기술블로그를 비상업적으로 사용 시 출처를 남겨주세요. 상업적 용도를 원하실 경우 문의 부탁드립니다. E-mail. tech@gynetworks.com
OGQ Corp. All right reserved.