【딥 러닝 비디오 감지】 모바일을 위한 고성능 비디오 객체 감지를 향하여

요약

최근 데스크톱 GPU에서 비디오 객체 감지에 성공했음에도 불구하고 해당 아키텍처는 여전히 모바일 장치에 비해 너무 무겁습니다. 희소 기능 전파 및 다중 프레임 기능 집계의 주요 원칙이 매우 제한된 컴퓨팅 리소스에 적용되는지 여부는 불분명합니다. 본 논문에서는 모바일 디바이스를 위한 경량 비디오 객체 탐지 ​​네트워크 아키텍처를 제안합니다. 희소 키프레임에 경량 이미지 개체 감지기를 적용합니다. Light Flow라는 매우 작은 네트워크는 프레임 간의 대응을 설정하도록 설계되었습니다. 또한 키프레임에 대한 기능을 효율적으로 집계하기 위해 흐름 기반 GRU 모듈을 설계합니다.

키프레임이 아닌 경우 희소 기능 전파가 수행됩니다. 전체 네트워크를 엔드투엔드(end-to-end) 학습할 수 있습니다. 제안된 시스템은 모바일 장치(예: Huawei Mate 8)에서 25.6fps로 설정된 ImageNet VID 검증에서 60.2%의 mAP 점수를 달성했습니다.

여기에 이미지 설명을 삽입하세요

소개

최근 몇 년 동안 심층 신경망을 이용한 객체 탐지 ​​분야에서 상당한 진전이 이루어졌습니다[1]. 일반적인 추세는 더 높은 정확도를 달성하기 위해 더 깊고 복잡한 객체 감지 네트워크[2, 3, 4, 5, 6, 7, 8, 9, 10, 11]를 구축하는 것입니다. 그러나 정확도 향상의 이러한 발전이 반드시 크기와 속도 측면에서 네트워크를 더 효율적으로 만드는 것은 아닙니다. 로봇공학, 자율주행차, 증강현실, 휴대폰 등 다양한 실제 애플리케이션에서 객체 감지 작업은 컴퓨팅 리소스가 제한된 플랫폼에서 실시간으로 수행되어야 합니다.

최근에는 SqueezeNet[12], MobileNet[13], ShuffleNet[14]과 같은 모바일 및 임베디드 비전 애플리케이션의 설계 요구 사항에 쉽게 적용할 수 있는 매우 작고 지연 시간이 짧은 모델을 구축하는 데 중점을 두고 있습니다. 이러한 구조는 일반적이지만 개체 감지 작업을 위해 특별히 설계된 것은 아닙니다. 이를 위해 YOLO [15], YOLOv2 [11], Tiny YOLO [16] 및 Tiny SSD [17]와 같은 정적 이미지 개체 감지에 적합한 일부 작은 심층 신경망 아키텍처가 탐색되었습니다. 그러나 이러한 감지기를 비디오에 직접 적용하는 것은 새로운 과제에 직면합니다. 첫째, 모든 비디오 프레임에 심층 네트워크를 적용하는 것은 계산상 엄청나게 많은 비용이 듭니다. 둘째, 모션 블러, 비디오 디포커스, 드문 포즈 등 정지 이미지에서는 거의 볼 수 없는 비디오의 품질 저하로 인해 인식 정확도가 영향을 받습니다.

이러한 문제를 해결하기 위해 현재 모범 사례[19, 20, 21]는 시간 정보를 활용하여 비디오의 탐지 속도를 높이고 정확도를 향상시킵니다. 한편으로는 희소 특징 전파가 [19, 21]에서 사용되어 대부분의 프레임에서 값비싼 특징 계산을 절약합니다. 이러한 프레임의 기능은 희소 키프레임에서 전파됩니다. 반면에 [20, 21]에서는 특징 품질과 검출 정확도를 향상시키기 위해 다중 프레임 특징 집합을 수행합니다.

이 두 가지 원칙을 기반으로 최신 연구[21]는 데스크톱 GPU에서 우수한 속도-정확도 균형을 달성했습니다. 그러나 이 아키텍처는 모바일 친화적이지 않습니다. 예를 들어, 기능 전파 및 집계의 핵심이자 공통 구성 요소인 스트리밍 추정은 모바일 장치의 실시간 계산 요구에 여전히 충분하지 않습니다. 장기적인 종속성이 있는 집계는 모바일 장치의 제한된 런타임 메모리로 인해 제한됩니다.

본 문서에서는 모바일 장치를 위한 경량 비디오 객체 감지 네트워크 아키텍처에 대해 설명합니다. 이는 주로 키프레임이 아닌 대부분의 기능을 전파하는 동시에 희박한 키프레임의 기능을 계산하고 집계하는 두 가지 원칙을 기반으로 합니다. 그러나 속도, 크기 및 정확성을 고려하여 두 구조를 모두 신중하게 다시 설계해야 합니다. 모든 프레임에서 우리는 모바일 장치에서 사용할 수 있는 기능 흐름을 추정하기 위한 매우 작은 심층 신경망인 Light Flow를 제안합니다. 희소 키프레임에서는 메모리가 제한된 플랫폼에서 효율적인 집계인 흐름 기반 GRU(Gated Recurrent Unit) 기능 집계를 제안합니다. 또한, 우리는 깊이별 분리 컨볼루션[22] 및 Light-Head R-CNN[23]과 같은 고급 및 효율적인 기술을 사용하여 키프레임의 특징을 계산하기 위해 경량 이미지 개체 감지기를 활용합니다.

제안된 기법은 end-to-end 학습 시스템으로 통합됩니다. 광범위한 실험을 통해 이 모델은 모바일 장치에서 고성능 비디오 객체 감지를 향한 성능(속도-정확도 균형) 경계를 꾸준히 확장하고 있는 것으로 나타났습니다. 예를 들어, 모바일 장치(예: Huawei Mate 8)에서 초당 25.6프레임으로 설정된 ImageNet VID 검증에서 60.2%의 mAP 점수를 달성했습니다. 이는 빠른 물체 감지에 대한 이전의 최선의 노력보다 훨씬 빠르고 비슷한 정확도입니다(그림 1 참조). 우리가 아는 한, 우리는 모바일 장치에서 처음으로 합리적인 정확도로 실시간 비디오 객체 감지를 달성했습니다.

비디오 객체 감지 기준 재검토

정적 이미지의 객체 감지는 심층 컨볼루션 신경망(CNN)을 사용하여 최근 몇 년 동안 눈에 띄는 발전을 이루었습니다[1]. 최첨단 감지기는 두 가지 개념적 단계로 구성된 유사한 네트워크 아키텍처를 공유합니다. 첫 번째 단계는 특징 네트워크로, 완전 컨벌루션 백본 네트워크 [24, 25, 26, 27, 28, 29, 30, 13, 14]를 통해 입력 이미지 I에서 컨벌루션 기능 맵 F 세트를 추출합니다. Nf 먹다(I) = F. 두 번째 단계는 검출 네트워크로, 희소 객체 제안을 위한 특징 맵 F에 대해 영역 분류 및 경계 상자 회귀를 수행하여 다중 분기 서브 네트워크를 사용하여 검출 결과 y를 생성합니다[2, 3, 4, 5, 6, 7,8,9] 또는 조밀한 슬라이딩 윈도우 [10,15,11,31], 즉 Ndet(F) = y입니다.

Nf eat로 무작위로 초기화되고 훈련됩니다.

이러한 감지기를 비디오 객체 감지에 직접 적용하는 것은 두 가지 과제에 직면합니다. 속도 측면에서 백본 네트워크 Nfeat는 일반적으로 깊고 느리기 때문에 모든 비디오 프레임에 단일 이미지 감지기를 적용하는 것은 효율적이지 않습니다.

정확도 측면에서 모션 블러, 비디오 디포커스, 희귀한 포즈 등 정지 이미지에서는 거의 관찰되지 않는 비디오의 외관 저하로 인해 감지 정확도가 저하됩니다.

현재 모범 사례 [19, 20, 21]는 속도 및 정확성 문제를 각각 해결하기 위해 희소 기능 전파 및 다중 프레임 기능 집계를 통해 시간 정보를 활용합니다.

희소 특징 전파 연속적인 프레임 사이의 콘텐츠 간의 강한 상관 관계로 인해 대부분의 프레임에서 철저한 특징 추출 계산을 수행할 필요가 없습니다. Deep Feature Flow [19]는 희소 키프레임(예: 10번째 프레임마다)에서만 값비싼 기능 네트워크를 계산하고 키프레임 기능 맵을 키프레임이 아닌 대부분에 전파하는 효율적인 방법을 제공하여 5배 더 빠르지만 정확도는 약간 떨어집니다.

추론 중에 키프레임이 아닌 i의 기능 맵은 이전 키프레임 k에서 전파됩니다. 즉,

여기에 이미지 설명을 삽입하세요
다중 프레임 특징 집합 검출 정확도를 높이기 위해 흐름 유도 특징 집합(FGFA)[20]은 추정된 광학 흐름에 따라 잘 정렬된 인근 프레임의 특징 맵을 집계합니다.

프레임 i의 집계된 특징 맵 ˆFi는 근처 프레임의 특징 맵을 가중 평균하여 구하며 그 표현은 다음과 같습니다.
여기에 이미지 설명을 삽입하세요
여기에 이미지 설명을 삽입하세요
모든 프레임에 대한 조밀한 집계를 피하기 위해 [21] 제안된 희소 재귀 특징 집계 키프레임. 이 접근 방식은 계산 비용을 줄이면서 집계된 기능 품질을 유지합니다.

특히 두 개의 연속 키프레임 k와 k0에서 프레임 k0의 집계된 특징은 다음과 같이 계산됩니다.

여기에 이미지 설명을 삽입하세요

모바일 연습

희소 특징 전파와 다중 프레임 특징 집계의 두 가지 원칙은 고성능(속도 및 정확도 절충) 비디오 객체 감지를 위한 데스크톱 GPU에 대한 모범 사례를 산출했습니다[21]. 그러나 모바일 장치에서는 컴퓨팅 성능과 런타임 메모리가 매우 제한되어 있으므로 모바일 장치에 적용할 수 있는 원리를 탐구해야 합니다.

  • 기능 추출 및 집계는 희소 키프레임에서만 작동하는 반면, 경량 기능 전파는 키프레임이 아닌 대부분에서 수행됩니다.
  • 흐름 추정은 특성 전파 및 집계의 핵심입니다. 그러나 [19, 20, 21]에서 사용된 플로우 네트워크 Nflow는 모바일 실시간 처리에 아직 충분하지 않습니다. 구체적으로 FlowNet[32]은 동일한 입력 해상도에서 MobileNet[13]의 FLOP의 11.8배를 갖습니다. [19]에서 사용된 가장 작은 FlowNet Inception조차도 1.6배 더 많은 FLOP를 갖습니다. 따라서 보다 가벼운 Nf low가 필요합니다.
  • 기능 집계는 광학 흐름에 따라 정렬된 기능 맵에서 작동해야 합니다. 그렇지 않으면 큰 개체 움직임으로 인한 변위로 인해 집계에 심각한 오류가 발생할 수 있습니다. 더 나은 기능 품질을 위해 더 많은 시간 정보를 융합할 수 있으므로 집계의 장기적인 종속성도 환영합니다.
  • 단일 이미지 감지기의 백본은 희소 키프레임의 특징을 계산하는 데 필요하므로 가능한 한 작아야 합니다.

모바일용 모델 아키텍처

위의 원칙을 바탕으로 움직이는 비디오 객체 감지를 위한 더 작은 네트워크 아키텍처를 설계합니다. 추론 파이프라인은 그림 2에 나와 있습니다.

여기에 이미지 설명을 삽입하세요

여기에 이미지 설명을 삽입하세요

여기에 이미지 설명을 삽입하세요

다음으로, 모바일 장치를 위한 보다 효율적인 흐름 네트워크인 Light Flow와 더 나은 품질과 정확성을 위해 장기적인 종속성을 더 잘 모델링하기 위한 흐름 지향 GRU 기반 기능 집계를 포함하여 모바일 장치용으로 특별히 설계된 두 가지 새로운 기술을 소개합니다.

빛의 흐름

FlowNet[32]은 원래 픽셀 수준의 광학 흐름 추정을 위해 제안되었습니다. 이는 인코더-디코더 모델과 다중 해상도 광학 흐름 예측기로 설계되었습니다. 두 개의 입력 RGB 프레임이 함께 ​​연결되어 6채널 입력을 형성합니다. 인코더에서 일련의 컨벌루션 레이어를 통해 입력은 공간 차원에서 입력 크기의 1/64로 축소된 기능 맵 묶음으로 변환됩니다. 디코더에서는 고해상도 광 흐름 예측을 달성하기 위해 특징 맵이 여러 deconvolutional 레이어에 공급됩니다. 각 디콘볼루션 레이어 이후에 특징 맵은 동일한 공간 해상도와 업샘플링된 거친 광학 흐름 예측을 사용하여 인코더의 마지막 특징 맵과 연결됩니다. 각 디코더의 연결된 특징 맵 뒤에는 여러 개의 광학 흐름 예측기가 옵니다. 손실 함수는 각 예측 변수에 적용되지만 추론 중에는 가장 정밀한 예측만 사용됩니다.

플로우 네트워크 Nflow를 크게 가속화하기 위해 우리는 몇 가지 신중한 설계를 갖춘 FlowNet [32] 기반의 경량 플로우 네트워크인 Light Flow를 제안합니다. 정확도는 약간만 감소하지만(종료점 오류 15% 증가) 이론적으로는 거의 65배 더 빠릅니다(표 2 참조).
인코더 부분에서 컨볼루션은 항상 계산의 병목 현상입니다. MobileNet[13]에서 영감을 받아 모든 컨볼루션을 3×3 깊이별 분리 가능한 컨볼루션[22]으로 대체합니다(각 3×3 깊이별 분리 가능한 컨볼루션 뒤에 1×1 포인트별 컨볼루션이 옵니다). 표준 3×3 컨볼루션과 비교하여 3×3 깊이별 분리 컨볼루션의 계산 비용은 8~9배 감소하고 정확도는 약간 감소합니다[13].

디코더 부분에서 각 디컨볼루션 작업은 가장 가까운 이웃 업샘플링과 깊이별 분리 가능한 컨볼루션으로 대체됩니다. [33] 디콘볼루션으로 인해 발생한 체커보드 아티팩트를 해결하기 위해 디콘볼루션을 최근접 업샘플링과 표준 컨볼루션으로 대체했습니다. 대조적으로, 우리는 계산 비용을 줄이기 위해 이 아이디어를 빌려 표준 컨볼루션을 깊이 분리 가능한 컨볼루션으로 대체합니다.

마지막으로 다중 해상도 예측을 고려하는 간단하고 효과적인 방법을 채택합니다. 이는 다중 해상도 의미론적 분할 예측을 명시적 합산 방식으로 최종 예측으로 융합하는 FCN [34]에서 영감을 받았습니다.

[32]와 달리 추론 중 최종 예측으로 가장 미세한 광학 흐름 예측을 사용하는 것은 아닙니다. 대신, 여러 해상도의 예측은 가장 정밀한 예측과 동일한 공간 해상도로 업샘플링된 다음 최종 예측으로 평균화됩니다. 또한 훈련 중에는 각 예측 후 여러 손실 함수 대신 단일 손실 함수만 평균 광학 흐름 예측에 적용됩니다. 이 접근 방식은 끝점 오류를 거의 10%까지 줄일 수 있습니다.

Light Flow의 네트워크 아키텍처와 구현은 표 1에 설명되어 있습니다. 각 컨볼루션 작업 뒤에는 고정 기울기 0.1을 사용하여 일괄 정규화[35]와 Leaky ReLU 비선형 변환[36]이 이어집니다. [32, 37]과 유사하게 Light Flow는 Flying Chairs 데이터 세트에서 사전 훈련되었습니다. Light Flow를 훈련할 때 Adam [38]은 가중치 감쇠가 0.00004인 최적화 방법으로 사용됩니다. 각각 64개의 이미지 쌍을 보유하는 4개의 GPU에서 70,000번의 반복이 수행되었습니다.

워밍업 학습률 전략이 채택되었으며, 먼저 10,000회 반복에 대해 0.001의 학습률로 모델을 교육합니다. 그런 다음 20,000회 반복에 대해 0.01의 학습률을 사용하고 10,000회 반복마다 학습률을 2로 나눕니다.

Light Flow를 우리 방법에 적용할 때 속도를 더욱 높이기 위해 두 가지 수정이 이루어졌습니다. 먼저 [19, 20, 21]과 같이 Light Flow를 feature network의 입력 해상도의 절반으로 적용하여 stride 4의 이미지를 출력한다. 기능 네트워크의 출력 스트라이드가 16이므로 흐름 필드는 기능 맵의 해상도와 일치하도록 다운샘플링됩니다. 둘째, Light Flow가 매우 작고 계산량이 탐지 네트워크 Ndet의 계산량과 비슷하기 때문에 탐지 네트워크의 중간 특징 맵에 희소 특징 전파가 적용됩니다(RPN의 256차원 특징 맵 섹션 3.3 참조). ] 및 CNN의 Light-Head R -490차원 특징 맵[23])을 사용하여 키프레임이 아닌 계산을 더욱 줄입니다.

약간 뒤쳐짐

Guess you like

Origin blog.csdn.net/x1131230123/article/details/132203259