DOI QR코드

DOI QR Code

Deep Neural Networks Learning based on Multiple Loss Functions for Both Person and Vehicles Re-Identification

사람과 자동차 재인식이 가능한 다중 손실함수 기반 심층 신경망 학습

  • Kim, Kyeong Tae (Department of Computer and Electronic Systems Engineering, Hankuk University of Foreign Studies) ;
  • Choi, Jae Young (Department of Computer and Electronic Systems Engineering, Hankuk University of Foreign Studies)
  • Received : 2020.07.07
  • Accepted : 2020.07.16
  • Published : 2020.08.31

Abstract

The Re-Identification(Re-ID) is one of the most popular researches in the field of computer vision due to a variety of applications. To achieve a high-level re-identification performance, recently other methods have developed the deep learning based networks that are specialized for only person or vehicle. However, most of the current methods are difficult to be used in real-world applications that require re-identification of both person and vehicle at the same time. To overcome this limitation, this paper proposes a deep neural network learning method that combines triplet and softmax loss to improve performance and re-identify people and vehicles simultaneously. It's possible to learn the detailed difference between the identities(IDs) by combining the softmax loss with the triplet loss. In addition, weights are devised to avoid bias in one-side loss when combining. We used Market-1501 and DukeMTMC-reID datasets, which are frequently used to evaluate person re-identification experiments. Moreover, the vehicle re-identification experiment was evaluated by using VeRi-776 and VehicleID datasets. Since the proposed method does not designed for a neural network specialized for a specific object, it can re-identify simultaneously both person and vehicle. To demonstrate this, an experiment was performed by using a person and vehicle re-identification dataset together.

Keywords

1. 서론

재인식(Re-Identification, Re-ID)은 카메라로 수집된 영상을 통해 한번 인식한 객체의 신원(ID)을 겹치지 않는 시야를 가진 다른 카메라가 동일한 객체의 신원을 찾아내는 것을 목표로 한다. 재인식 기술은 최근 방범CCTV, 자율주행자동차 등에 적용하여 서비스 환경에 투입하려는 시도가 늘고 있다[24]. 또한, 보안의 목적으로 도로, 공항이나 공공시설에서 연중 무휴 쉬지 않고 지속적으로 특정 사람, 자동차를 인식하고 추적함으로 값비싼 사람의 노동력을 대체할 수 있다. 이렇듯이 재인식 기술은 활용할 수 있는 범위가 넓으며 사용자에게 편리성을 제공해준다. 하지만 재인식 기술을 사용하기 위해서는 풀어야할 많은 문제점이 있다. 특히 비제약 환경(Unconstrained environments)에서 서로 다른 카메라에서 촬영될 경우 동일한 객체의 신원이라도 날씨, 조명, 객체의 변형, 촬영 시 각도, 중첩 등의 촬영 환경에 따라 다른 객체의 신원으로 재인식 될 수 있다. 또한, 서로 다른 객체의 신원이라도 카메라 촬영 거리에 의한 해상도 저하에 의해 같은 객체의 신원으로 재인식 될 수 있다. 따라서 재인식 시 동일한 객체의 신원간의 차이는 줄이며, 다른 객체의 신원간의 차이는 늘리는 것이 매우 중요하다.

지난 수십 년간 재인식의 문제점을 해결하여 성능을 개선시키고자 하는 연구가 지속적으로 이루어져왔고 최근에는 딥러닝(Deep learning)을 적용하여 그 동안 해결하기 힘든 문제점을 해결하고 있다[1,2]. 딥러닝을 적용한 재인식 방법은 식별, 검증, 임베딩 (Identification, Verification, Embedding) 방법으로 크게 3가지있다. 식별(Identification) 방법은 심층 신경망 훈련 시 신원(ID)을 이용하여 훈련하고, 테스트 시 심층 신경망의 말단인 ID출력 계층(layer)의 이전 계층에서 출력된 특징 정보를 사용하여 유사도 (similarity)를 구한다. 검증(Verification) 방법은 가중치(weight)를 공유하는 2개의 심층 신경망의 말단에서 각각의 특징을 추출한 뒤, ID가 일치/불일치 여부를 판단한다. 임베딩(Embedding) 방법은 가중치 (weight)를 공유하는 서로 다른 심층 신경망에서 출력된 특징 정보들 간의 거리를 통해 학습을 하고, 테스트 시 심층 신경망의 말단에서 출력된 특징 정보를 통해 유사도(similarity)를 구한다. 자동차 재인식 (Vehicle Re-ID) 기술 중 하나인 AAVER[3]은 식별 (Identification) 방법으로 2개의 병렬 스트림(stream) 으로 심층 신경망을 구성하였다. 첫 번째 스트림은 전역 특징정보를 추출하도록 설계된 모듈이지만, 미묘한 특징 정보는 추출하지 못한다. 이를 보완하고자 두 번째 스트림(stream)은 지역적인 특징 추출 및 자동차의 방향의 키포인트(key-point)를 추출을 통해 병렬적으로 처리되도록 설계하였다. 이 스트림(stream) 들을 학습시키기 위해 분류(Classification) 손실 함수인 L2-Softmax 손실 함수를 사용하였다. 훈련된 심층 신경망에서 추출된 특징은 유사도를 통해 동일한 자동차인지 판단한다. [4]은 CCTV 촬영(자동차 후방부만 촬용하는 카메라)를 사용하여 자동차의 후방부와 번호판을 입력으로 하는 심층 신경망을 검증 (Verification) 방법으로 설계하였다. 첫 번째 스트림 (stream)은 자동차 후방부에 대해 가중치가 적용된 CNN에서 나온 특징정보에 대해 유사도를 구하고 두번째 스트림은 자동차 번호판에 첫 번째 스트림과 동일한 방식으로 유사도를 구한다. 최종적으로 첫 번째와 두 번째 스트림의 유사도를 결합하여 다중개의 완전 연결 계층(fully connected layer)에 입력되어 동일한 자동차인지 여부를 판단한다. 이때 훈련은 분류(Classification) 손실 함수인 Binary Softmax 손실 함수를 사용한다. [5]은 사람에 대한 재인식(Person Re-ID)을 식별(Identification) 방법으로 제안하였다. PCB_RPP[5]는 사람의 신체적 위치를 심층 신경망이 분할하여 보다 구체적인 특징정보를 추출하게 된다. 백본(backbone) 심층 신경망으로 ResNet50[6]을 사용하였으며, ResNet50의 출력 결과인 특징 정보를 6등분(얼굴, 어깨, 허리, 허벅지, 종아리, 발) 으로 분할한다. 이후 Average pooling을 통해 나온 특징을 결합하여 동일한 사람인지 여부를 판단한다. 이 심층 신경망을 훈련하기 위해서 분류(Classification) 손실 함수인 Cross-Entropy 손실 함수를 사용한다. [7]은 식별(Identification) 방법과 검증(Verification) 방법을 결합한 심층 신경망을 제안하였다. 백본(Backbone) 심층 신경망인 CaffeNet[8]을 활용하여 2개의 심층 신경망 구성한 후 식별(Identification) 손실 함수를 각각 연결하였다. 그리고 각 심층 신경망에 연결된 식별(Identification) 손실 함수의 이전 계층(layer)에서 하나의 완전 연결 계층(fully-connected layer)을 연결하여 검증(Verification) 손실 함수를 통해 훈련을 진행하였다.

이렇듯이, 대부분의 재인식(Re-ID) 연구는 사람 혹은 자동차처럼 하나의 객체에 초점을 맞추어 심층 신경망을 설계하였다. 하지만 방범CCTV, 자율자동차처럼 실제 응용 애플리케이션에서는 여러 객체를 포함하고 있으며, 다양한 객체에 대해 활용해야 된다. 하나의 객체에 초점을 맞추어 개발할 경우 많은 심층 신경망이 필요하게 되며, 그에 비례해 많은 메모리(용량)와 처리시간이 걸려 비효율적이기 때문에 실생활에 적용하기에는 무리가 있다. 그리고 재인식(Re-ID) 심층 신경망 훈련 시 식별(Identification) 손실 함수 혹은 검증(Verification) 손실 함수를 사용한다. 하지만 식별(Identification) 손실 함수는 신원(ID) 의 수가 증가함에 따라 점점 더 많은 학습 가능한 파라미터를 필요로 하며, 대부분은 훈련 후에 제거가 된다. 검증(Verification) 손실 함수로 훈련될 심층 신경망은 영상 간의 유사도를 구하게 될 때 각 프로브가 모든 갤러리 영상 간에 많은 조합 수가 생기게 되며 이는 많은 처리비용이 든다. 이를 해결하고자[9]는 임베딩(Embedding) 학습 방법을 제안하였으며, 이 방법을 사용하기 위해 Triplet 손실 함수를 제안하였다. Triplet 손실 함수는 학습을 통해 기준 데이터로부터 근사한 데이터(Positive example)는 가깝게, 근사하지 않은 데이터(Negative example)는 멀리 떨어트려서 적절한 분리 공간에 배치하도록 한다. [9]는 미니배치(mini batch)를 효과적으로 형성하기 위한 샘플링 방법과 프로브와 모든 갤러리 간의 식별이 어려운 샘플(Hardest sample)들만 사용하는 방식으로 조합의 수를 줄였다. 그러나 기존의 Triplet 손실 함수만을 이용하여 학습하면 신원(ID)간의 세밀한 차이를 학습하기 힘들다. 즉 유사하게 생긴 물체들 간의 분류 능력이 저하된다. 따라서 본 논문은 가중치가 적용된 식별(Identification) 손실 함수를 추가하여 ID간의 세밀한 차이를 학습할 수 있도록 Triplet 손실 함수와 식별(Identification) 손실 함수 중 하나인 softmax 손실 함수 결합하는 방법을 제안한다. 제안한 방법은 기존 관련 방법들과 비교하여 다음과 같은 독창성을 갖는다.

• 신원(ID)간의 세밀한 차이를 학습할 수 있도록 가중치가 적용된 식별(Identification) 손실 함수인 Softmax 손실 함수를 Triplet 손실 함수와 최적으로 결합하여 재인식 성능을 극대화하는 방법을 제시한다. 여기서 가중치를 적용하는 이유는 신원을 판별할 수 있는 Softmax 손실 함수에 너무 편중되게 되면 오히려 재인식 성능이 저하될 수 있다. 따라서 한쪽 손실 함수에 편향되지 않으면서 신원간의 세밀한 차이를 학습하도록 최적의 가중치를 실험을 통해 제시 하였다.

• 기존 연구는 사람 혹은 자동차 등의 특정 객체에 맞춰 재인식 심층 신경망을 설계하였으며 그에 따라 복잡성이 증가되며 실제 사용에 있어서 제한적이게 된다. 하지만 실제 응용 어플리케이션에 적용되기 위해서는 다양한 객체 종류에 대해 적용 가능해야 된다. 제안 방법은 특정 객체에 특화시킨 심층 신경망을 설계하지 않았기 때문에 사람과 자동차에 대해 동시에 재인식 가능하다.

본 논문은 사람 재인식 데이터셋인 Martket-1501[10] 및 DukeMTMC-reID[11]와 자동차 재인식 데이터셋인 VeRi-776[12] 및 VehicleID[13]에 대해 각 각 실험을 수행했으며, 특정 객체 유형이 아닌 다양한 객체 유형에 대해 재인식이 가능함을 보이기 위해 사람과 자동차 재인식 데이터셋을 동시에 사용하여 실험을 진행하였다. 실험결과 제안한 방법이 Triplet 손실 함수만 사용했을 때 보다 우수한 성능을 달성하였고 여러 객체에 대해 재인식이 가능함을 보였다.

2. 제안한 방법

Fig. 1은 제안한 방법의 전체도(Overall framework)이다. Fig. 1의 (a)는 Triplet 손실 함수와 가중치가 적용된 식별(Identification) 손실 함수를 결합한 학습 방법을 보여준다. 백본(backbone) 심층 신경망은 resnet50[6]를 활용하였으며, 기존의 resnet50의 완전 연결 계층(fully-connected layer)은 제거하고 새로운 2+1개의 완전 연결 계층을 병렬로 연결하였다. 2개의 완전연결 계층은 Triplet 손실 함수에 연결되며 다른 1개의 완전연결 계층은 식별(Identification) 손실 함수에 연결하였다. Fig. 1의 (b)는 테스트 방법을 나타낸 것으로 (a)에서 학습된 심층 신경망에서 식별(Identification) 손실 함수의 완전 연결 계층을 제거를 한다. 이후 쿼리(Query)와 갤러리 (Gallery)가 입력으로 주어질 때 나온 특징(embedding)을 통해 유사도(similarity)를 구하여 동일한 객체인지 여부를 판단한다.

MTMDCW_2020_v23n8_891_f0001.png 이미지

Fig. 1. Overall framework of training and testing method for Re-ID Deep Neural Network using combined triplet and softmax Losses. (a) Two fully-connected layers connected to triplet loss and one fully-connected layer connected to softmax loss. Herein, the weighted total loss was used for training. (b) When testing, the fully-connected layer connected to softmax loss is removed and the result has a form of rank list obtained using through the similarity between gallery and query as the embedding of fully-connected layer connected triplet loss.

2.1 제안한 Triplet과 softmax 손실 함수 결합

Triplet 손실 함수는 학습을 통해 기준 데이터 (Query)로부터 근사한 데이터(Positive example)는 가깝게, 근사하지 않은 데이터(Negative example)는 멀리 떨어트려서 적절한 분리 공간에 배치하도록 설계되었다. 하지만 ID간의 세밀한 차이를 학습하기 힘들다. 즉 유사하게 생긴 객체들 간의 분류 능력이 저하된다. 따라서 본 논문은 가중치가 적용된 식별 (Identification) 손실 함수를 추가하여 ID간의 세밀한 차이를 학습할 수 있도록 Triplet 손실 함수와 식별(Identification) 손실 함수 결합하는 방법을 제안한다.

2.2 Triplet 손실 함수

훈련 집합을 X= {xi|i = 1, 2, …, N}이라고 할 때 xi는 데이터 집합에서 i번째 영상을 나타내며, N은 훈련 집합에서 총 영상의 개수이다. 객체의 특징은 임베딩 (embedding) 함수 fΘ(xi)∈Rd로 표현되며, d는 유클리드 공간의 차원이다. 이때 임베딩(embedding) 공간 상에서 거리인 Di, j = D(fΘ(xi), fΘ(xj))라 하자. 영상이 3개(Triplet)인 {xa, x(+), x(-)}에서 {xa, x(+)}은 동일한 신원(ID)이며,  {xa, x(-)}은 다른 신원을 나타내며, Triplet 손실 함수는 다음과 같이 표현된다.

\(L_{t r i}(\theta)=\sum_{a,(+),(-) \atop y_{a}=y_{(+)} \neq y_{(-)}} \ln \left(1+e^{m+D_{a(t)}-D_{a,(-)}}\right.)\)       (1)

여기서 a,(+),(-)는 각각 앵커(anchor), 앵커와 동일한 ID의 샘플(positive), 앵커와 동일하지 않은 ID의 샘플(negative)를 나타내며 a와 (+)는 서로 같은 신원에 속함을 의미하며, a와 (–)는 서로 다른 신원에 속함을 의미 한다. 그리고 y는 실제 라벨(groundtruth)를 나타내며, softplus 함수인 ln(1+exp(·))을 사용하였다.

Triplet을 사용 시 서로 다른 두 쌍(pairwise)만 뽑으면 되는 검증(Verification) 방법보다 까다롭기 때문에 배치(Batch) 선택 시 샘플링 방법에 주의해야 한다. 만약 샘플링 시 랜덤으로 진행하게 되면 손실 함수가 0인 triplet이 많이 나오게 되어 학습이 불안정하다. 따라서 참고문헌 [6]을 참고하여 샘플링 방법을 채택하였다. 샘플링 방법은 배치(Batch)를 만들 때 먼저 P명의 사람을 고른 뒤, 각각의 사람 당 K개의 영상을 선택한다. 하지만 이 경우에도 모든 조합의 Triplet을 사용하면 P K*(K-1)*(PK-K)의 여전히 많은 조합 수가 발생된다. 이를 해결하고자 배치(Batch) 내에서 모든 앵커(anchor)에 대해 앵커와 ID가 동일하며 식별이 어려운 샘플(hardest positive), 앵커와 ID가 동일하지 않으며 식별이 어려운 샘플(hardest negative)로 triplet을 구성한다. 이를 Batch Hard(BH)라 부르며 Fig. 2와 같이 PK개의 triplet에서 나온다. 이 방식은 [6]에서 실험을 통해 우수성이 증명되어있다. 따라서 본 논문에서 사용된 triplet 손실 함수는 다음과 같다.

MTMDCW_2020_v23n8_891_f0002.png 이미지

Fig. 2. Visualized illustration of batch sampling method, where weform batches by randomly sampling P identity, and then randomly sampling K images of each identity, thus resulting in a batch of PK images. One anchor is selected from PK images, then only ‘hardest positive’ and ‘hardest negative’ are selected for the anchor. And these are used for training.

\(\begin{array}{c} L_{B H}(\theta, X)=\sum_{i=1}^{P} \sum_{(+)=1}^{K} \ln \left(1+\exp \left(_{(+)=1 . K}^{\max } D\left(f_{\theta}\left(x_{a}^{i}\right), f_{\theta}\left(x_{p}^{j}\right)\right)\right.\right. \\ \left.\left.\min _{-i=1... P \ (-)=1...K \atop j \neq i} D\left(f_{\theta}\left(x_{a}^{i}\right), f_{\theta}\left(x_{n}^{j}\right)\right)\right)\right) \end{array}\)       (2)

여기서 \(\sum_{i=1}^{P} \sum_{(+)=1}^{K}\)는 모든 앵커(anchor)를 나타내며, \(\max _{(+)=1 ... K} D\left(f_{\theta}\left(x_{a}^{i}\right), f_{\theta}\left(x_{p}^{j}\right)\right)\)는 앵커와 ID가 동일하며 식별이 어려운 샘플(hardest positive), \(\begin{aligned} &\min\\ &\underset{(-)=1...K \atop j \neq i}{j=1...P} D\left(f_{\theta}\left(x_{a}^{i}\right), f_{\theta}\left(x_{n}^{j}\right)\right) \end{aligned}\)는 앵커와 ID가 동일하지 않으며 식별이 어려운 샘플 (hardest negative)를 나타낸다.

2.3 Triplet과 softmax 손실 함수 결합

Triplet 손실 함수를 사용하면 같은 ID끼리 가깝도록, 다른 ID끼리 멀어지도록 유도하지만 정작 비슷하지만 다른 ID끼리 구분을 충분히 하지 못한다. 따라서 좀 더 세밀한 부분까지 판단할 수 있도록 가중치가 적용된 Softmax 손실 함수를 triplet 손실 함수에 결합한 방법을 제안한다. 본 연구에서는 각 객체의 ID를 부류(class)로 간주한다. 즉 훈련의 부류의 수는 훈련 집합의 ID의 개수와 같다. 따라서 가중치가 적용된 Softmax 손실 함수는 다음과 같다.

\(L_{s}(\theta, X)=-\frac{1}{M} \sum_{i=1}^{M} \log \frac{\exp \left(W_{y_{i}}^{T} f_{\theta}\left(x^{i}\right)+b_{y_{i}}\right)}{\sum_{j=1}^{C} \exp \left(W_{j}^{T} f_{\theta}\left(x^{i}\right)+b_{j}\right)}\)       (3)

여기서 yi∈{1,2,...,M}는 영상 xi의 부류(class)를 나타내며, M은 총 부류의 개수이다. 그리고 W, b는 완전 연결 계층의 파라미터이다.

수식 (2)와 (3)을 결합을 하되, 부류를 판별할 수 있는 Softmax 손실 함수에 너무 편중되게 되면 오히려 재인식 성능이 저하될 수 있기 때문에 Softmax 손실 함수에 가중치를 적용하여 결합하였다. 다음은 가중치를 적용한 최종 손실 함수이다.

Ltotal(Θ, X) = LBH(Θ, X) + a × Ls(Θ, X)       (4)

여기서 a는 가중치이며, 이때 a는 미세조정 실험 과정을 통해 최적의 값을 결정한다.

2.4 Distance Measure

테스트 시 가중치가 결합된 Softmax 손실 함수와 Triplet 손실 함수로 학습된 심층 신경망에서 Softmax 손실 함수에 연결된 완전연결 계층을 제거한다. 이 심층 신경망은 쿼리(query)와 갤러리(Gallery)가 입력으로 주어질 때 출력된 특징(embedding)을 통해 다음과 같이 유클리디언 거리(Euclidean distance)를 사용하여 유사도(Similarity)를 구하여 신원을 판별한다.

S(xProbe, xGallery)=\(\sqrt{\left(f_{\theta}\left(x^{\text {Probe }}\right)-f_{\theta}\left(x^{\text {Gallery }}\right)\right)^{2}}\)       (5)

3. 실험 결과 및 고찰

3.1 실험 데이터셋

본 연구에서 제안한 방법은 사람 재인식 실험 평가로 많이 사용되는 Market-1501 데이터셋[10]과 DukeMTMC-reID 데이터셋[11]을 사용하였고, 자동차 재인식 실험 평가는 VeRi-776 데이터셋[12]와 VehicleID 데이터셋[13]을 사용하여 평가하였다. 재인식 평가방법은 [3,5,9,17-19,20-23]와 같이 프로브와 갤러리 집합의 각 템플릿 영상에 대해 영상 기술자(descriptor)를 생성한 후 영상간의 유사도 점수 (Similarity score)를 계산하며, 이 유사도 점수를 내림차순으로 정렬하여 순위 목록(Rank list)를 생성한다. 단, 모든 영상에는 객체의 ID와 카메라 ID가 포함되어 있기 때문에 테스트 시 프로브와 갤러리 집합의 각 템플릿 간의 동일한 카메라 ID의 영상은 제외하여 유사도를 계산한다. 순위 목록 중에 상위 첫 번째에 목록 분류를 통해 얻은 라벨 정보와 실제 라벨이 동일한지 여부를 나타내는 Rank-1 재인식(Re-Identification) 성능과 상위 다섯 번째 만에 분류를 통해 얻은 라벨 정보와 실제 라벨이 동일한지 여부를 측정하는 Rank-5 재인식(Re-Identification) 성능을 사용하였다. Fig. 3은 실험에 사용된 영상의 일부를 보여준다. 모든 데이터셋은 표준 프로토콜[10-13]을 참조하여 최신 재인식 방법과 비교하였고 공정한 비교를 위해 최신 재인식 방법들의 rank-1, rank-5 성능을 논문[3,5,9,17-19,20-23]에서 직접 인용하였다.

MTMDCW_2020_v23n8_891_f0003.png 이미지

Fig. 3. Example images used in our experiments, from top to bottem, named Market-1501, DukeMTMC-reID, VeRi-776, and VehicleID datasets, respectively.

Market-1501 (Person dataset)

DukeMTMC-reID (Person dataset)

VeRi-776 (Vehicle dataset)

VehicleID (Vehicle dataset)

∙ Market-1501 데이터셋[10]은 Tsinghua University의 슈퍼마켓 앞에서 수집되었다. 5개의 고해상도 카메라와 1개의 저해상도 카메라를 포함하여 총 6개의 카메라가 사용되었고, 서로 다른 카메라 간에 오버랩이 존재한다. 이 데이터셋은 ID가 총 1,501개이며, 36,036개의 주석(annotation)이 있는 128 x 68 크기의 영상으로 구성되어 있다. 이 중 751개의 ID에 대해 12,936개의 영상이 훈련에 사용되고, 나머지 750개의 ID에서 나온 19,732개의 영상은 갤러리 (Gallery)에 사용되며 3,368개의 영상은 쿼리(Query) 에 사용된다. 이때 갤러리(Gallery)에는 훼방용(distrator) 영상이 있으며, 사람이 일부 혹은 검출되지 않은 영상으로 이루어져 있다.

∙ DukeMTMC-reID 데이터셋[11]은 Duke University 캠퍼스에서 고해상도 카메라 8개로 촬영되었으며 서로 다른 카메라 간에 오버랩이 존재한다. 두 대 이상의 카메라에 촬영된 ID는 1,404개이며 한 대의 카메라에만 촬영된 ID는 480개가 있다. 이 중 702개의 ID는 훈련 집합으로 선택되고 나머지 702개의 ID는 갤러리(Gallery)에 사용된다. 그리고 한 대의 카메라에만 촬영된 ID의 영상은 갤리리(Gallery)에 추가되어 훼방용(distractor) 영상으로 사용된다. 따라서 훈련 집합(총 ID: 702)은 16,522장, 갤러리(총 ID: 702+480)는 17,661장이고 쿼리(총 ID: 702)는 2,228장으로 구성되어있다.

∙ VeRi-776 데이터셋[12]은 20대의 교통감시 카메라로 촬영되었으며, 776개의 ID를 가진 51,003장의 영상으로 구성되어 있다. 이 중 훈련 집합은 37,746장 (총 ID: 576), 갤러리(Gallery)는 11,579장(총 ID: 200) 으로 구성되어 있다. 쿼리(Query)는 갤러리와 동일한 ID가진 1,678장으로 구성되어 있다.

∙ VehicleID 데이터셋[13]은 자동차 재인식에 사용되는 또 다른 대규모 데이터셋이며, 26,328개의 ID를 가진 221,567개의 영상으로 구성되어있다. 자동차 ID의 절반, 즉 13,164장은 훈련 집합으로 구성되어 잇고 나머지 절반은 평가 집합이다. 갤러리 ID가 800, 1600, 2400, 3200, 6000 및 13,164인 6개의 테스트 스플릿(test split)이 있다. 최근의 연구 [14,15]에서는 처음 세 개의 스플릿(800, 1600, 2400)이 사용되었다. VehicleID 데이터셋의 제안 된 평가 프로토콜은 테스트 스플릿을 기반으로 각 ID에 대한 영상을 무작위로 선택하여 갤러리를 형성하고 나머지 영상은 쿼리로 사용한다. 이 절차는 10회 반복하여 평균 rank-1 및 rank-5 재인식 성능을 보여주도록 되어있다.

3.2 실험 및 구현환경

본 실험에서 모든 입력 이미지는 224×224로 크기를 조정하였고, 사전 훈련 모델인 resnet50[6]을 사용하였다. 그리고 미니 배치(mini-batch) 생성 시 K =4, P = 16으로 샘플링(Sampling)하여 총 64(4×16)개의 영상으로 구성하였다. 그리고 [9]를 참고하여 학습 속도 미세조절(learning rate decay) 방식을 채택하였으며 다음과 같다.

\(\epsilon(t)=\left\{\begin{array}{ll} \epsilon_{0} & \text { if } t \leq t_{0} \\ e_{0} 0.001^{\frac{t-t_{0}}{t_{1}-t_{0}}} & \text { if } t_{0} \leq t \leq t_{1} \end{array}\right.\)       (5)

여기서 초기 학습 속도(learning rate)는 ε0 = 3e - 4이고 훈련 반복(iteration)은 t0 = 25000, t1 = 50000이며, t 1에 도달했을 때 훈련은 멈추게 된다. 그리고 훈련에 사용된 Adam optimizer [16]은 ε = 10-3 , β1 = 0.9, β2 = 0.999로 설정하였다. 실험 시 하드웨어는 ASUSx299칩셋(메인보드), i9-10900X(CPU), 128GB RAM (메모리), RTX 2080ti(GPU)를 사용하였다.

3.3 triplet 손실 함수와 softmax 손실 함수 결합 시 가중치 변화를 통한 재인식 성능평가

2.2절에서 수식 (2)는 기준 데이터로부터 근사한 데이터(Positive example)는 가깝게, 근사하지 않은데이터(Negative example)는 멀리 떨어트려서 적절한 분리 공간에 배치하도록 한다. 하지만 ID는 다르지만 유사한 객체일 경우 적절한 분리 공간 배치가 안 될 수 있다. 따라서 ID간의 세밀한 차이를 학습할 수 있도록 2.3절의 수식 (3)번을 결합하여 학습하였다. 하지만 수식 (3)의 중요도가 너무 커버리게 되면 훈련한 심층 신경망이 ID 분류에 초점이 맞춰서 오히려 재인식 성능이 저하될 수 있다. 따라서 수식 (2)가 적절한 분리 공간을 생성할 수 있으며 ID간의 세밀한 차이를 학습하도록 수식 (4)와 같이 수식 (3)에 가중치를 부여하여 훈련을 진행하였다. 최적의 가중치를 구하기 위해 DukeMTMC-ReID 데이터셋[11]을 사용하여 가중치 파라미터 a를 0.0에서 1.0까지 0.1단위로 총 11번 실험을 통해 재인식 성능과 재인식 모델 훈련 시 소요되는 시간을 Fig. 4에 나타내었다. 성능 평가 결과 수식 (2)만 사용(a = 0.0)했을 경우보다 수식 (3)을 같이 사용했을 때 재인식 성능이 향상되었다(Fig.4 (a), (b)참고). 그리고 Rank-1에 대해 a =0.4 일 때 재인식 성능이 가장 높았으며, Rank-5에 대해 a = 0.5일 때 재인식 성능이 가장 우수하다. 따라서 triplet 손실 함수만 사용하는 것보다 식별(Identification) 손실 함수를 같이 사용하는 것이 재인식 성능 측면에서 우수하며, 가중치 파라미터 a는 [0.4,0.5] 로 설정하였을 때 가장 우수한 성능을 얻을 수가 있었다. Fig. 4의 (c)는 모델을 훈련 시 훈련 시간(속도) 을 나타낸 것으로 a = 0.0일 때 약 26시간이 소요되며, 최적의 성능인 a = [0.4,0.5]일 때 약 34시간이 소요된다. 이는 triplet 손실 함수만 사용했을 때보다 제안한 결합 손실함수를 사용할 때가 훈련 시간이 더 소요된다. 이는 서로의 손실함수들이 상호보완적으로 작용하여 훈련이 되기 때문에 훈련 시간이 더 소요되는 것을 의미하다.

MTMDCW_2020_v23n8_891_f0004.png 이미지

Fig. 4. Re-identification performances and convergence time with respect to change in weight a . (a) Rank-1 re-ID accuracy. (b) Rank-5 re-ID accuracy. (c) Training (or learning) time.​​​​​​​

3.3 실험 결과 및 최신 재인식 방법들과의 성능비교

Table 1과 2는 사람과 자동차 재인식 데이터셋 (Person & Vehicle ReID-Dataset)인 Market-1501[10], DukeMTMC-ReID[11], VeRi-776[12] 그리고 VehicleID[13]를 사용하여 제안한 방법과 최신 재인식 방법들의 재인식 성능을 비교하였다. 제안방법과 Triplet 손실 함수만으로 훈련한 TriNet[9]과 비교하였을 때 Market-1501[10]에 대해 Rank-1은 3.79%, Rank-5는 3.32%증가하였으며, DukeMTMC-ReID[11]에 대해 Rank-1은 7.13%, Rank-5는 3.5% 증가하였다. 이는 Triplet 손실 함수만으로 훈련한 것보다 Softmax 손실 함수도 같이 사용하였을 때 더 우수하다는 것을 보여준다. 하지만 Market-1501에 대해 사람에 대해 특화시킨 재인식 심층 신경망인 SPreID[17]와 비교하였을 때 Rank-1은 3.24% 하락하였으며, PCB+RPP[5]는 Rank-1이 2.54% Rank-5는 0.6% 하락하였다. 또한 DukeMTMC-ReID에 대해서 SPreID[17]는 Rank-1이 3.13%, PCB+RPP[5]는 Rank1이 2.23%, Rank-5이 1.45%하락하였다. 자동차에 특화 시킨 재인식 심층 신경망인 AAVER[3]은 자동차 재인식 데이터셋인 VeRi-776[12]에서 Rank-1이 1.18%, Rank-5이 0.28% 향상하였다. 하지만 Vehicle ID 데이터셋[13]의 경우 SAN[18]와 비교하였을 때 테스트 크기가 800(test size = 800)에 대해 Rank-1은 7.5% 하락하였고 Rank-5는 0.04% 상승하였으며, 테스트 크기가 1600(test size = 1600)에 대해 Rank1은 12.08%, Rank-5는 1.15%, 그리고 테스트 크기가 2400(test size = 1600)에 대해 Rank-1은 14.2%, Rank5는 2.7% 하락하였다. 특정 객체에 특화 시킨 심층 신경망에 비해 재인식 성능이 다소 떨어지는 것을 확인할 수 있다. 하지만 본 논문에서는 특정 객체에 특화시킨 심층 신경망을 설계하지 않았기 때문에 사람과 자동차에 대해 동시에 재인식 가능하며 이를 증명하기 위해 사람과 자동차 재인식 데이터셋을 함께 사용하여 실험을 진행하였다. Table 3은 Market1501[10], VeRi-776[12]을 동시에 사용하여 훈련하였으며 각각의 데이터셋으로 재인식 성능을 평가하였다. 사람과 자동차의 특성상 비율이 다르지만 실험에서는 영상 크기를 동일하게 맞추었다. 비록 특정 객체에 특화시킨 심층 신경망에 비해 재인식 성능이 다소 저조하지만 다른 최신 알고리즘과 달리 자동차와 사람을 동시에 재인식이 가능함을 보였다.

Table 1. Comparisons of average Rank-1, Rank-5 Re-Identification rates (in percent) under evaluation protocols on Market-1501 and DukeMTMC-ReID Dataset​​​​​​​

MTMDCW_2020_v23n8_891_t0001.png 이미지

Table 2. Comparisons of average Rank-1, Rank-5 Re-Identification rates (in percent) under evaluation protocols on VeRi-776 and VehicleID Dataset​​​​​​​

MTMDCW_2020_v23n8_891_t0002.png 이미지

Table 3. Comparisons of average Rank-1, Rank-5 Re-Identification rates (in percent) under evaluation protocols on Market-1501 and VeRi-776 Dataset​​​​​​​

MTMDCW_2020_v23n8_891_t0003.png 이미지

- P : Training and testing were performed using only Person ReID-dataset.

- V : Training and testing were performed using only Vehicle ReID-dataset.

- P+V : Training was performed using both Person and Vehicle ReID-datasets; and each dataset were tested.​​​​​​​

4. 결론

본 논문에서는 사람과 자동차 재인식(Re-Identification)을 위해 Triplet과 Softmax 손실함수를 결합한 심층 신경망 학습 방법을 제안하였다. 신원(ID) 간의 세밀한 차이를 학습할 수 있도록 가중치가 적용된 식별(Identification) 손실 함수인 Softmax 손실 함수를 Triplet 손실 함수와 최적으로 결합하여 재인식 성능을 극대화하였다. 여기서 가중치를 적용하는 이유는 신원을 판별할 수 있는 Softmax 손실 함수에 너무 편중되게 되면 오히려 재인식 성능이 저하될 수 있다. 따라서 한쪽 손실 함수에 편향되지 않으면서 신원간의 세밀한 차이를 학습하도록 최적의 가중치를 실험을 통해 제시하였다. 실험결과 Triplet 손실 함수만 사용했을 때보다 가중치가 적용된 Softmax 손실함수를 같이 사용하였을 때 더 우수한 성능을 나타내었다. 최신 연구들과 비교하였을 때 특정 객체 (사람 혹은 자동차)에 특화 시킨 심층 신경망에 비해 재인식 성능이 다소 낮은 경우도 있지만 사람과 자동차에 대해 동시에 재인식이 가능하도록 사전 학습된 심층 신경망을 크게 변형하지 않고 손실함수로만 성능을 향상시켰다. 향후 연구에서는 사람과 자동차뿐만 아니라 더 많은 객체가 적용될 수 있으면서 더 많은 손실함수들을 효과적으로 결합하여 재인식 성능이 더욱더 향상되고 강인한 심층 신경망을 설계하여 본 논문에서 제시한 결합 손실함수로 훈련 및 평가를 수행할 계획이다.

References

  1. Q. Leng, M. Ye, and Q. Tian, “A Survey of Open-world Person Re-identification,” IEEE Transactions on Circuits and Systems for Video Technology, Vol. 30, No. 4, pp. 1092-1108, 2019. https://doi.org/10.1109/tcsvt.2019.2898940
  2. S.D. Khan and H. Ullah, "A Survey of Advances in Vision-based Vehicle Re-identification," Computer Vision and Image Understanding, Vol. 182, pp. 50-63, 2019. https://doi.org/10.1016/j.cviu.2019.03.001
  3. P. Khorramshahi, A. Kumar, N. Peri, S.S. Rambhatla, J.C. Chen, and R. Chellappa, "A Dual-path Model with Adaptive Attention for Vehicle Re-identification," Proceedings of the IEEE International Conference on Computer Vision, pp. 6132-6141, 2019.
  4. I.O. de Oliveira, K.V. Fonseca, and R. Minetto, "A Two-stream Siamese Neural Network for Vehicle Re-identification by Using Non-Overlapping Cameras," Proceeding of IEEE International Conference on Image Processing, pp. 669-673, 2019.
  5. Y. Sun, L. Zheng, Y. Yang, Q. Tian, and S. Wang, "Beyond Part Models: Person Retrieval with Refined Part Pooling (and a Strong Convolutional Baseline)," Proceedings of the European Conference on Computer Vision, pp. 480-496, 2018.
  6. K. He, X. Zhang, S. Ren, and J. Sun, "Deep Residual Learning for Image Recognition," Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 770-778, 2016.
  7. Z. Zheng, L. Zheng, and Y. Yang, “A Discriminatively Learned CNN Embedding for Person Re-identification,” ACM Transactions on Multimedia Computing, Communications, and Applications, Vol. 14, No. 1, pp. 1-20, 2017. https://doi.org/10.1145/3152118
  8. A. Krizhevsky, I. Sutskever, and G.E. Hinton, "ImageNet Classification with Deep Convolutional Neural Networks," Proceedings of the International Conference on Neural Information Processing Systems, pp. 1097-1105, 2012.
  9. A. Hermans, L. Beyer, and B. Leibe, "In Defense of the Triplet Loss for Person Reidentification," arXiv Preprint arXiv:1703. 07737,2017.
  10. L. Zheng, L. Shen, L. Tian, S. Wang, J. Wang, and Q. Tian, "Scalable Person Re-identification: A Benchmark," Proceedings of the IEEE International Conference on Computer Vision, pp. 1116-1124, 2015.
  11. Z. Zheng, L. Zheng, and Y. Yang, "Unlabeled Samples Generated by Gan Improve the Person Re-identification Baseline in Vitro," Proceedings of the IEEE International Conference on Computer Vision, pp. 3754-3762, 2017.
  12. X. Liu, W. Liu, T. Mei, and H. Ma, "A Deep Learning-based Approach to Progressive Vehicle Re-identification for Urban Surveillance," Proceeding of European Conference on Computer Vision, pp. 869-884, 2016.
  13. H. Liu, Y. Tian, Y. Yang, L. Pang, and T. Huang, "Deep Relative Distance Learning: Tell the Difference between Similar Vehicles," Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 2167-2175, 2016.
  14. Y. Shen, T. Xiao, H. Li, S. Yi, and X. Wang, "Learning Deep Neural Networks for Vehicle Re-id with Visual-spatio-temporal Path Proposals," Proceeding of IEEE International Conference on Computer Vision, pp. 1918-1927, 2017.
  15. Z. Wang, L. Tang, X. Liu, Z. Yao, S. Yi, J. Shao, et al., "Orientation Invariant Feature Embedding and Spatial Temporal Regularization for Vehicle Re-identification," Proceeding of IEEE Conference on Computer Vision and Pattern Recognition, pp. 379-387, 2017.
  16. D.P. Kingma and J. Ba, "Adam: A Method for Stochastic Optimization," arXiv Preprint arXiv: 1412.6980, 2014.
  17. M.M. Kalayeh, E. Basaran, M. Gokmen, M.E. Kamasak, and M. Shah, "Human Semantic Parsing for Person Re-identification," Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 1062-1071, 2018.
  18. J. Qian, W. Jiang, H. Luo, and H. Yu, "Stripebased and Attribute-aware Network: A Twobranch Deep Model for Vehicle Re-identification," Measurement Science and Technology, Vol. 31, no. 9, 2020.
  19. K. Han, J. Guo, C. Zhang, and M. Zhu, "Attribute-aware Attention Model for Fine-grained Representation Learning," Proceedings of the 26th ACM International Conference on Multimedia, pp. 2040-2048, 2018.
  20. R. Quispe and H. Pedrini, "Improved Person Re-identification Based on Saliency and Semantic Parsing with Deep Neural Network Models," arXiv Preprint arXiv:1807.05618, 2019.
  21. Y. Zhou and L. Shao, "Aware Attentive Multi-view Inference for Vehicle Re-identification," Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 6489-6498, 2018.
  22. B. He, J. Li, Y. Zhao, and Y. Tian, "Part-regularized Near-duplicate Vehicle Re-identification," Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 3997-4005, 2019.
  23. X. Liu, S. Zhang, Q. Huang, and W. Gao, "Ram: A Region-aware Deep Model for Vehicle Reidentification," Proceeding of IEEE International Conference on Multimedia and Expo, pp. 1-6, 2018.
  24. S.C. Lim and D.Y. kim, “Object Tracking Using Feature Map from Convolutional Neural Network,” Journal of Korea Multimedia Society, Vol. 20, No. 2, pp. 126-133, 2017. https://doi.org/10.9717/kmms.2017.20.2.126