
Omni-Scale Feature Learning for Person Re-Identification, Kaiyang Zhou et al.,2019 를 읽고 요약, 정리한 내용입니다.
◼️ Abstract
Instance-level의 recognition 문제로서, person 재식별(ReID)은 차별적인 특징에 의존하는데, 이는 서로 다른 spatial scales를 포착할 뿐만 아니라 multiple scale의 임의의 조합을 캡슐화한다.
본 논문에서는 both homogeneous(동질의)와 heterogeneous(여러 다른 종류들로 이루어진) 스케일의 feature를 omni scale feature라고 부른다. 본 논문에서는 omni scale feature 학습을 위해 새로운 Deep ReID CNN(Omni-Scale Network, OSNet)을 설계했다.
이는 각각 특정 scale의 feature를 detection 하는 여러 convolutional하는 feature stream으로 구성된 residual block을 설계함으로써 달성된다. 중요한 것은 입력에 의존하는 채널 별 가중치와 멀티 스케일 기능을 동적으로 융합하기 위해 새로운 통합 집계 게이트가 도입된다는 것이다. 공간 채널 상관 관계를 효율적으로 학습하고 과적합을 피하기 위해 빌딩 블록은 점별 및 깊이별 컨볼루션을 모두 사용한다.
이러한 블록을 layer별로 쌓음으로써 본 논문의 OSNet은 매우 가벼우며 기존 ReID 벤치마크에서 처음부터 훈련할 수 있다. 작은 모델 크기에도 불구하고, 우리의 OSNet은 6개의 ReID 데이터 세트에서 SOTA 성능을 달성한다.
◼️ Introduction

person ReID는 서로 다른 겹치지 않는 카메라 뷰에 나타나는 같은 사람을 matching시키는 것을 목표로 한다. 이는 instance-level recognition 문제로서 Person ReID는 그림 1과 같이 두 가지 주요 문제에 직면한다.
첫째, 클래스 내(instance/identity) 변화가 일반적으로 크다는 것이다. 예를 들어, 그림 1(a) 및 그림 1(b)의 사람들은 모두 백팩을 가지고 다닌다. 카메라(앞에서 뒤로)를 가로지르는 뷰에 보여지는 백팩 변화에 의해 큰 외관 변화를 가져와 동일한 사람을 matching하기 어렵게 만든다.
둘째, 공공 장소와 같은 곳에서는 종종 유사한 옷을 입은 사람들이 많은 것도 문제가 된다. 일반적으로 cctv를 통해 보는 거리(street)에서의 많은 사람들은 유사하게 보인다(그림 1 참조).
이 두 가지 문제를 극복하기 위해 ReID의 핵심은 차별적인 feature를 배우는 것이다. 본 논문에서는 차별적인 feature가 가변적인 homogeneous scale 및 heterogeneous scale의 조합으로 정의되는 omni scale이어야 하며, 각각은 여러 scale의 혼합으로 구성되어야 한다고 주장한다. omni scale feature의 필요성은 그림 1에서 명백하다. 사람을 일치시키고 imposter와 구별하기 위해서는 작은 pasrse region(예: 신발, 안경)과 global 전신 영역에 해당하는 feature가 중요하다.
예를 들어, 그림 1(a)(왼쪽)의 쿼리 이미지가 주어졌을 때, 글로벌 스케일 feature(예: 젊은이, 흰색 티셔츠 + 회색 반바지 콤보)을 보면 검색 범위가 실제 일치(중간)와 가짜(오른쪽)로 좁혀질 것이다. 이제 지역 규모의 feature가 작동합니다. 신발 영역은 오른쪽에 있는 사람이 imposter라는 사실을 알려줍니다. 그러나 더 어려운 경우에는 가변 균질 척도의 특징조차도 충분하지 않을 것이다. 여러 스케일에 걸쳐 있는 더 복잡하고 풍부한 feature가 필요합니다. 예를 들어, 그림 1(d)(오른쪽)의 사기꾼을 제거하기 위해서는, 흰색 티셔츠의 앞면에 특정 로고가 있는 특징이 필요하다. 로고 자체가 독특하지 않다는 점에 유의하십시오. 흰색 티셔츠를 컨텍스트로 사용하지 않으면 다른 많은 패턴과 혼동될 수 있습니다. 마찬가지로, 흰색 티셔츠는 여름에 어디에나 있습니다(예: 그림 1(a)). 특징을 가장 효과적으로 만드는 것은 작은(로고 크기) 스케일과 중간(상체 크기) 스케일 모두에 걸쳐 있는 heterogeneous features에 의해 포착되는 독특한 조합이다.
그럼에도 불구하고, 기존 ReID 모델 중 어느 것도 omni scale feature 학습을 다루지 않는다. 최근 몇 년 동안 심층 컨볼루션 신경망(CNN)은 차별적 특징을 학습하기 위해 ReID를 직접 사용하는 데 널리 사용되고 있다[2, 26, 28, 38, 43, 57, 58, 69]. 그러나 ResNet[12]과 같이 채택된 대부분의 CNN은 원래 ReID의 인스턴스 수준 인식 작업과 근본적으로 다른 객체 범주 수준 인식 작업을 위해 설계되었다. 후자의 경우 앞에서 설명한 바와 같이 전규모 feature가 더 중요합니다. multi scale feature를 학습하려는 몇 가지 시도도 존재하지만 homogeneous 및 heterogeneous 스케일의 feature를 모두 학습할 수 있는 능력은 없다.
본 논문에서는 omni scale feature 표현 학습을 위해 설계된 새로운 CNN 아키텍처인 OSNet을 제시한다.1 기초 구성 요소는 서로 다른 수용 필드를 가진 여러 컨볼루션 피처 스트림으로 구성됩니다(그림 2 참조).

각 스트림이 초점을 맞추는 피쳐 스케일은 각 블록에서 다양한 스케일이 캡처 되도록 스트림에 걸쳐 선형적으로 증가하는 새로운 차원 계수인 지수에 의해 결정됩니다.
결정적으로, 결과적인 다중 스케일 feature map은 통합 집계 게이트(AG)에 의해 생성된 채널 별 가중치에 의해 동적으로 융합된다. AG는 효과적인 모델 훈련을 위한 여러 가지 바람직한 속성을 가진 모든 스트림에 걸쳐 매개 변수를 공유하는 하위 네트워크이다.
훈련 가능한 AG를 사용하면 생성된 채널 별 가중치가 입력에 의존하므로 동적 스케일 융합이 가능하다. 이 새로운 AG 설계를 통해 네트워크는 omni scale feature 표현을 학습할 수 있다. 특정 입력 이미지에 따라 게이트는 특정 스트림 또는 스케일에 지배적인 가중치를 할당하여 단일 스케일에 초점을 맞출 수 있다. 또는 선택하고 혼합하여 heterogeneous 스케일을 생성할 수 있다.
전규모 feature 학습을 가능하게 하는 것 외에도, OSNet에서 채택된 또 다른 핵심 설계 원칙은 경량 네트워크를 설계하는 것이다. 이는 몇 가지 이점을 가져온다.
(1) ReID 데이터 세트는 카메라 간에 일치하는 사람 이미지를 수집하는 것이 어렵기 때문에 중간 크기인 경우가 많다. 따라서 모델 매개 변수의 수가 적은 경량 네트워크는 과적합되기 쉽다.
(2) 대규모 감시 애플리케이션(예: 수천 대의 카메라를 사용하는 도시 전체 감시)에서 ReID에 대한 가장 실용적인 방법은 카메라 끝에서 feature 추출을 수행하는 것이다.
원시 비디오를 중앙 서버로 보내는 대신 feature만 보내면 된다. 기기 내 처리의 경우 소규모 ReID 네트워크가 분명히 선호된다. 이를 위해, 빌딩 블록에서, 우리는 표준 컨볼루션을 점별 및 깊이 별 컨볼루션으로 인수분해한다.
따라서 이 연구의 기여는 전규모 feature 학습의 개념과 OSNet에서 효과적이고 효율적으로 구현하는 것이다. 최종 결과는 널리 사용되는 ResNet50 기반 모델보다 약 10배 작지만 더 나은 성능을 발휘하는 경량 ReID 모델이다.
OSNet은 6개의 ReID 데이터 세트에서 SOTA를 달성하여 기존의 훨씬 큰 네트워크보다 성능이 훨씬 좋다. 또즉 CIFAR 및 ImageNet과 다중 레이블 개인 속성 인식 작업에 대한 OSNet의 효과를 보여준다. 결과는 omni scale feature 학습이 instance recognition 이상으로 유용하며 광범위한 시각 인식 작업에 고려될 수 있음을 시사한다.
◼️ Related Work
◾ Deep ReID Architectures
대부분의 기존 심층 ReID CNN은 ImageNet 1K 객체 분류와 같은 일반적인 객체 분류 문제를 위해 설계된 아키텍처를 차용한다. 최근 ReID 데이터 세트의 이미지에는 대부분 직립하는 하나의 개체 범주(즉, 사람)의 인스턴스만 포함되어 있다는 사실을 반영하기 위해 일부 아키텍처 수정이 도입되었다.
직립 자세를 활용하기 위해 마지막 컨볼루션 피처 맵에서 수평으로 풀링된 피처에 보조 감독 신호를 추가하거나 feature 학습을 전경 인물 영역에 집중하기 위한 주의 메커니즘을 고안한 연구가 진행되었다. 그러나 이러한 ReID 네트워크는 OSNet에서와 같이 네트워크의 각 계층에서 다중 스케일 feature를 명시적으로 학습하지 않는다.
일반적으로 다중 스케일 학습을 위해 외부 포즈 모델 및 또는 수동 선택 특정 계층에 의존한다.
또한, 서로 다른 스케일의 혼합물에서 계산된 heterogeneous 스케일 feature는 고려되지 않는다.
◾ Multi-Scale and Multi-Stream Deep Feature Learning
omni scale deep feature 학습의 개념은 이전에 도입된 적이 없다.
그럼에도 불구하고 최근에는 multi scale feature 학습의 중요성이 인식되고 있으며 다중 스트림 빌딩 블록 설계도 채택되고 있다. 멀티스트림 빌딩 블록이 있는 다수의 ReID 네트워크와 비교하면 OSNet은 상당히 다르다. 구체적으로 계층 설계는 ResNeXt를 기반으로 하며, 각 스트림은 동일한 스케일로 feature를 학습하는 반면 각 블록의 스트림은 서로 다른 스케일을 가지고 있다.
대조적으로, 본 논문의 빌딩 블록은 캡처할 공간 스케일을 다양화하기 위해 스케일 제어 요소를 사용한다. 또한 학습 가능하지만 한 번 고정된 멀티스트림 feature를 최종 블록에서만 학습된 스트림별 가중치와 융합한 연구도 있었다. 반면에 본 논문은 동적(입력 의존적) 채널별 가중치를 사용하여 각 빌딩 블록 내에서 다중 스케일 feature를 융합하여 다중 스케일 패턴의 조합을 학습한다.
따라서, 본 논문의 OSNet만이 각 피처 채널이 단일 스케일 또는 다중 스케일의 가중 혼합의 차별적 feature를 잠재적으로 캡처하는 omni scale feature를 학습할 수 있다.
◾ Lightweight Network Designs
내장된 AI가 화제가 되면서 경량 CNN 디자인이 점점 더 주목을 받고 있다.
경량 설계 측면에서 본 논문의 OSNet은 인수 분해 컨볼루션을 사용하여 MobileNet과 유사하며, 경험적으로 omni scale feature 학습에 더 잘 작동하는 몇 가지 수정 사항이 있다.
◼️ Omni-Scale Feature Learning
◾ Depthwise Separable Convolutions
매개 변수의 수를 줄이기 위해, 본 논문은 깊이별로 분리 가능한 컨볼루션을 채택한다.
기본적인 아이디어는 커널 w ∈ R을 갖는 컨볼루션 레이어를 깊이별 커널과 점별 커널을 갖는 두 개의 별개의 레이어로 나누는 것이다.

◾ Omni-Scale Residual Block
아키텍처의 구성 요소는 Lite 3 × 3 layer가 장착된 residual bottleneck이다(그림 4(a) 참조).

입력 x가 주어지면, 이 bottleneck aim은 매핑 함수 F, 즉 Eq(1)로 residual x˜를 학습하는 것을 목표로 한다.

여기서 F는 단일 스케일 특징(stride = 3)을 학습하는 Lite 3 x 3 layer를 나타낸다. 여기서 1 × 1 layer는 특징 차원을 조작하는 데 사용되며 공간 정보의 집계에 기여하지 않기 때문에 표기법에서 무시된다.
다중 스케일 피처 학습을 달성하기 위해 피처의 스케일을 나타내는 새로운 차원인 지수 t를 도입하여 잔류 함수 F를 확장한다. F^t의 경우, t > 1일 때, 본 논문 t를 쌓는다.

지금까지 각 스트림은 특정 규모의 특징, 즉 규모가 균일한 특징을 제공할 수 있다.
omni scale feature을 학습하기 위해, 본 논문은 서로 다른 스트림의 출력을 동적 방식으로 결합할 것을 제안한다. 즉, 훈련 후 고정되는 대신 입력 이미지에 따라 서로 다른 가중치를 서로 다른 스케일에 할당한다.

◾ Network Architecture
OSNet은 네트워크의 서로 다른 깊이(단계)에서 블록을 사용자 지정하려는 노력 없이 제안된 경량 병목 현상을 계층별로 간단히 쌓음으로써 구성된다.

멀티스트림 설계 측면에서, OSNet은 Inception 및 ResNeXt와 관련이 있지만, 몇 가지 측면에서 중요한 차이점을 가지고 있다.
첫째, OSNet의 멀티스트림 설계는 지수(Eq. 2)에 의해 지시되는 스케일 증분 원칙을 엄격하게 따른다. 구체적으로, 서로 다른 스트림은 서로 다른 수용 필드를 가지지만 동일한 Lite 3 × 3 레이어로 구축다(그림 4(b).
둘째, Inception/ResNeXt는 연결, 추가를 통해 feature를 집계하는 반면, OSNet은 다중 스케일 feature의 조합 학습을 용이하게 하는 통합 AG(Eq.3)를 사용한다.

셋째, OSNet은 인수 분해 컨볼루션을 사용하여 구성 요소를 사용하므로 전체 네트워크가 가볍다.
◼️ Conclusion
본 논문은 omni scale feature 표현을 학습할 수 있는 경량 CNN 아키텍처인 OSNet을 제시했다.
6명의 ReID 데이터 세트에 대한 광범위한 실험은 OSNet의 경량 설계에도 불구하고 최첨단 성능을 달성했음을 보여주었다.
객체 분류 작업과 다중 레이블 속성 인식 작업에 대한 우수한 성능은 OSNet이 ReID를 넘어 시각적 인식에 광범위한 관심을 가지고 있음을 추가로 시사했다.