Korean Institute of Information Technology
[ Article ]
The Journal of Korean Institute of Information Technology - Vol. 21, No. 2, pp.19-32
ISSN: 1598-8619 (Print) 2093-7571 (Online)
Print publication date 28 Feb 2023
Received 01 Dec 2022 Revised 26 Jan 2023 Accepted 29 Jan 2023
DOI: https://doi.org/10.14801/jkiit.2023.21.2.19

YOLOv5와 Dual Kalman Filter 기반의 폐색영역에 강건한 객체 추적 프레임워크

김다솔* ; 허재석**
*한국공학대학교 스마트팩토리융합학과 석사과정
**한국공학대학교 경영학부 조교수(교신저자)
Robust Object Tracking Framework for Occlusion Area using YOLOv5 and Dual Kalman Filter
Dasol Kim* ; Jaeseok Huh**

Correspondence to: Jaeseok Huh Dept. of Business, Tech University of Korea 237, Sangidaehak-ro, Siheung-si, Gyeonggi-do, Republic of Korea Tel.: +82-31-8041-0675, Email: jshuh@tukorea.ac.kr

초록

YOLO(You Only Look Once)는 실시간으로 객체 검출이 필요한 분야에서 널리 사용되고 있지만, 검출하려는 대상이 다른 객체 혹은 주변 배경 등에 의해 가려지는 폐색영역에서 성능이 낮아지는 한계가 존재한다. 본 연구에서는 YOLOv5와 Dual Kalman Filter(KF)를 활용한 폐색영역에 강건한 객체 추적 프레임워크를 제안한다. 여기서, Dual KF는 상호 보완적인 특성을 가진 2개의 KF로 구성된다. 제안 프레임워크는 YOLOv5가 객체 검출에 실패하면 YOLOv5의 검출 결과에 비중을 두고 업데이트되는 Detection KF의 결과를 사용한다. 만약 폐색영역으로 인해 연속적인 프레임 동안 객체를 검출하지 못하면, KF의 예측 결과에 비중을 두고 업데이트되는 Inference KF의 결과를 사용하여 객체 추적을 시도한다. 폐색영역이 등장하는 데이터를 활용한 실험을 통해, 제안 프레임워크는 기존 방법론보다 연산 속도는 소폭 느리지만, 정확도는 우수한 것을 확인할 수 있었다.

Abstract

Although YOLO(You Only Look Once) is a widely used algorithm in real-time object detection, it has a limitation in that its performance significantly deteriorates in occlusion areas where a detection target is obscured by another object or surrounding background. In this study, we propose a robust object tracking framework that utilizes YOLOv5 and a Dual Kalman Filter(KF) consisting of Detection and Inference KFs to address this issue. The proposed framework uses the Detection KF updated with a high weight on the detection results of YOLOv5 when YOLOv5 fails to detect objects. If the object is not detected over successive frames, the proposed framework attempts to track the object using the Inference KF updated with a high weight on the prediction results of KF. Through experiments using data with occluded regions, we confirmed that the proposed framework outperformed existing approaches in terms of detection accuracy while sacrificing less computation speed.

Keywords:

occlusion area, YOLO, kalman filter, dual kalman filter, object tracking, object detection

Ⅰ. 서 론

CNN(Convolution Neural Networks) 기반의 객체 검출 알고리즘은 영상 안의 움직이는 객체의 외형 변화에 유연하게 대응할 수 있기 때문에 자율 주행, 비전 검사와 같이 높은 객체 검출 정확도를 요구하는 분야에 널리 활용되고 있다[1][2]. 그중에서도 YOLO(You Only Look Once)는 실시간 객체 검출이 가능하며 준수한 검출성능을 보인다.

그러나 YOLO는 폐색영역에서 객체를 검출할 때 검출성능이 저하된다. 여기서, 폐색영역은 검출하고자 하는 객체가 다른 객체 혹은 주변 배경 등에 의해 가려져 보이지 않는 영역을 의미한다. YOLO가 이미지에서 객체의 특징을 추출할 때, 폐색영역이 노이즈로 작용하여 객체의 특징을 정확하게 추출하지 못하기 때문에 YOLO의 검출성능이 감소하게 된다[3].

폐색영역에서 검출성능을 향상시키기 위해서 YOLO와 Kalman Filter(KF)를 결합하여 객체를 추적하는 연구가 시도되었다[4]-[6]. KF는 노이즈가 있는 측정치를 바탕으로 선형 시스템의 상태를 추정하는 재귀 필터로서 영상 속 객체의 이동 궤적 추적에 활용된다[7]. YOLO가 객체 검출에 실패하였을 때, KF는 추적능력을 활용하여 YOLO의 검출성능을 보완한다. 하지만 객체가 다수의 프레임 동안 폐색영역에 위치하면, KF의 추적능력이 저하되는 것은 피할 수 없다.

따라서 본 논문은 다수의 프레임 동안 폐색영역에 위치하는 객체에 대한 추적능력을 강화하기 위해 YOLO와 Dual KF가 결합된 폐색영역에 강건한 객체 추적 프레임워크를 제안한다. 제안 프레임워크는 먼저 YOLOv5를 이용하여 경계박스의 형태로 객체를 검출한다. YOLOv5가 객체 검출에 실패하면 Detection KF는 이전 프레임의 YOLOv5의 검출 결과를 활용하여 객체의 위치를 예측 후 이전 프레임의 추정치에 비중을 두어 업데이트 단계를 진행한다.

한편, 객체가 폐색영역에 진입하여 YOLOv5가 일정 프레임 이상 연속해서 검출에 실패하면 KF의 예측결과에 비중을 두어 결과를 보정하도록 설정된 Inference KF를 활용하여 객체의 위치를 추적한다. 따라서 객체가 폐색영역에 진입하여 YOLOv5의 성능이 크게 저하될 때도 제안 프레임워크는 Dual KF를 이용하여 객체의 이동 궤적을 추적할 수 있다.

드론이 폐색영역에 진입하여 검출되기 어려운 상황을 조성한 영상을 사용하여 제안 프레임워크의 성능을 검증하였다. 실험을 통해서 제안 프레임워크가 기존의 알고리즘들에 비해 객체 검출성능이 우수하다는 것을 확인할 수 있었다.

본 논문의 구성은 다음과 같다. 2장에서는 CNN 기반의 객체 검출 알고리즘인 YOLO와 KF를 활용한 관련 연구에 대해 고찰하며, 3장에서는 제안 프레임워크의 구체적인 작동 과정을 기술한다. 4장에서는 실험과 그 결과를 논하며, 최종적으로 5장에서는 본 연구의 결론과 한계점, 추후 연구를 제시한다.


Ⅱ. 관련 연구

2.1 CNN 기반의 객체 검출 알고리즘

CNN 기반의 객체 검출 알고리즘은 크게 2-Stage Detector와 1-Stage Detector로 분류된다. R-CNN(Region Based Convolution Neural Networks)으로 대표되는 2-Stage Detector는 객체가 존재할 것으로 예상되는 영역을 찾아내고, 선택된 영역을 기반으로 객체의 위치를 예측 후 객체의 클래스를 분류한다[8]. 2-Stage Detector에 속하는 알고리즘들은 반도체 결함 검사와 같은 높은 정확도가 요구되는 환경에서 사용되지만, 검출속도가 느리기 때문에 실시간 객체 검출 분야에 적용되기에는 어려움이 있다[9].

반면 YOLO, SSD(Single Shot Multi-box Detector)와 같은 1-Stage Detector는 객체의 위치를 찾는 과정과 객체의 클래스를 분류하는 과정을 동시에 수행한다[10]. 신경망 구조를 단순화한 1-Stage 계열의 객체 검출 알고리즘은 많은 연산이 필요한 특징 추출을 한 번만 수행하기 때문에 객체 검출속도가 빠르지만 2-Stage Detector와 비교하면 검출 정확도가 낮다는 특징이 있다[11].

그중에서도 YOLO는 이미지 내의 경계박스(Bounding box)와 클래스 확률(Class probability)을 이용하여 객체를 검출한다. 여기서 경계박스는 객체의 위치를 직사각형으로 나타낸 좌표와 신뢰도 점수(Confidence score)를 포함한 벡터 형식으로 정의된다. 구체적으로 YOLO는 먼저 입력된 이미지를 격자(Grid)로 나누고 각각의 격자 내에서 2개의 경계박스를 예측하고 경계박스마다 클래스 확률을 구한다. 그 후 격자마다 클래스 확률이 가장 높은 하나의 객체를 선택한다. 이때, 선택된 객체의 크기가 크거나 객체의 중심 좌표가 격자의 경계에 가까운 경우, 하나의 객체에 다수의 경계박스가 중첩된다[10][11].

이러한 경우, YOLO는 중첩된 경계박스를 제거하는 과정을 수행하는데, 먼저 신뢰도 점수가 기준 이하인 경계박스들을 제거하고, 남은 경계박스들을 신뢰도 점수의 내림차순으로 정렬한다. 그 후, 신뢰도 점수가 가장 높은 경계박스를 기준으로 설정하고, 이 경계박스와 각 경계박스의 겹쳐진 영역을 측정한다. 이때, 겹쳐진 영역이 일정 수준 이상이면 기준 경계박스와 같은 객체를 검출하였다고 판단하여 해당 경계박스는 제거된다. 남겨진 경계박스들은 겹쳐진 영역이 없기 때문에 YOLO는 각 경계박스가 다른 객체를 예측하였다고 판단한다. 이후, 신뢰도 점수가 다음으로 높은 경계박스를 기준으로 위와 같은 과정을 객체마다 하나의 예측된 경계박스가 남을 때까지 반복한다. 이 과정에서 서로 다른 객체가 겹쳐 있다면, 다른 객체를 검출한 경계박스가 기준 경계박스와 같은 객체를 검출했다고 판단하여 제거된다. 따라서, 객체들이 겹쳐 있거나 밀접하게 붙어 있다면 YOLO의 검출성능이 저하될 가능성이 높다[12].

이와 같은 YOLO의 한계를 해결하기 위해서 추가적인 특징맵을 추출하거나 새로운 손실함수를 사용하는 등의 접근법이 연구되었다[13]-[15]. Wei Liu는 이미지에서 다양한 크기의 격자와 특징맵을 사용하여 객체를 검출할 수 있는 SSD를 제안하였다[14]. SSD는 총 6개의 크기가 다른 특징맵에서 각각 다른 가로세로비를 적용한 경계박스를 추출하여 다양한 크기의 객체를 검출하는 것이 가능하다. SSD는 경계박스의 개수를 증가시킴으로써 검출성능을 향상시켰으나, 검출속도가 느리다는 단점이 있다.

한편, T. Lin는 객체 영역과 배경 영역에 동일한 가중치가 적용되어 발생하는 클래스 불균형을 해결하기 위해 새로운 손실함수인 Focal loss를 사용한 RetinaNet를 제안하였다[15]. Focal loss는 쉽게 검출되는 배경 영역에 낮은 가중치를 부여하여 학습하는 Cross Entropy loss이다. RetinaNet은 Focal Loss를 사용하여 객체와 배경에 서로 다른 가중치를 적용하였으며, 효과적으로 객체를 학습하여 검출성능을 증가시켰다. 이와 같은 다양한 연구들에 의해 YOLO는 지속적으로 고도화되어 왔다.

본 논문의 제안 프레임워크는 YOLO의 최신 버전인 YOLOv5를 사용하며, 그림 1은 YOLOv5의 네트워크 구성을 나타낸다. 그림 1에서 Backbone은 입력 이미지를 받아 특징맵으로 변형시켜주는 영역이며, Neck은 Backbone과 Head를 연결해주는 부분으로 특징맵을 재구성하는 역할을 한다. Head는 추출된 특징맵을 바탕으로 객체의 위치를 찾아내고, 최종적으로 경계박스를 생성하는 역할을 담당한다. YOLOv5의 Backbone과 Neck은 CSP Darknet과 PANet을 사용한다[16].

Fig. 1.

Structure of YOLOv5

YOLOv5는 Backbone의 크기가 서로 다른 다섯 가지의 검출 모델(YOLOv5n, YOLOv5s, YOLOv5m, YOLOv5l, YOLOv5x)을 포함하고 있다. 각 검출 모델의 아키텍처는 표 1의 제시된 내용과 같다. YOLOv5n는 신경망의 규모가 작고 검출속도가 빠르며, YOLOv5 중에서 가장 규모가 큰 YOLOv5xl는 속도가 느리지만 검출 정확도가 높다는 특징이 있다[17].

Architectural comparison of YOLOv5’s detection models

2.2 폐색영역에서의 객체 검출 알고리즘

객체 검출 알고리즘의 한계를 보완하고 폐색영역에 강건한 객체 검출 알고리즘을 개발하기 위한 다양한 연구가 수행되고 있다[12][19][20]. B. Hwang은 YOLOv4s의 특징 추출과정을 개선하여 YOLOv4s의 검출성능을 향상시켰다[12]. YOLOv4s는 YOLOv4의 검출모델 중 하나로서, 신경망의 구조가 단순하여 특징을 추출하는 성능에 한계가 있기 때문에 검출 정확도가 낮다. B. Hwang의 알고리즘은 특징맵의 크기를 줄이는 과정에서 발생하는 손실을 방지하고, 객체를 명확하게 구분함으로써 폐색영역에서의 검출 정확도가 증가하였다. 하지만 YOLOv4s는 작은 규모의 모델임에도 특징 추출과정에서 많은 연산을 요구하여 검출속도가 느리다는 한계가 있다.

또한, 영상의 순차적인 정보를 활용하기 위해 RNN(Recurrent Neural Network) 계열의 신경망인 LSTM(Long Short-Term Memory)을 객체 검출 알고리즘에 적용하여 객체를 추적하기 위한 연구가 시도되었다[18]-[20]. J. Lee는 Re3를 활용하여 객체를 추적하여 검출성능을 향상시켰다[19]. Re3는 CNN 기반의 다중 객체 추적 알고리즘으로 객체의 형태 정보를 추출하고 LSTM 구조를 통해 일정 프레임 동안 객체의 속도 정보를 학습하는 추적기다.

Y. Park은 LSTM을 활용하여 객체의 이동 경로 학습을 통해 객체 검출 알고리즘의 성능을 향상시켰다[20]. 하지만 LSTM은 긴 시간 동안 폐색영역에 위치하여 객체가 검출되지 않으면 예측 정보가 사라져 추적에 실패한다는 한계가 존재한다. 또한, 다수의 딥러닝 모델을 사용하여 연산시간이 오래 걸린다는 단점이 있다. 그러므로 폐색영역에 진입한 객체가 장시간 검출에 실패했을 때, 적은 연산량을 통해 연속적인 프레임의 정보를 활용하며 실시간으로 객체를 추적하는 방법이 필요하다.

2.3 KF를 활용한 객체 추적 기법

KF는 노이즈가 포함된 예측값과 측정값을 비교하여 가중치를 실시간으로 조정하며, 각 시점에서의 상태 벡터는 이전 시점의 벡터를 통해 결정된다는 마르코프 연쇄를 가정한다. KF가 시스템의 상태를 추정하는 과정은 예측(Predict) 단계와 업데이트(Update) 단계로 이루어져 있다. 예측 단계에서는 이전 시점의 추정값으로 현재 시점의 예측값을 계산하고, 업데이트 단계는 앞서 예측값과 실제 측정값을 토대로 현재 시점의 상태를 추정한다.

이때 예측값과 측정값 간의 오차를 활용하여 이전 시점의 추정값을 귀납적으로 수정한다. 예측 단계와 업데이트 단계를 반복적으로 수행함으로써 KF는 상태를 추정할 때 노이즈의 영향을 최소화한다[21][22].

J. Fan은 KF의 구조를 이용하여 YOLOv2와 Faster-RCNN의 결과를 보정하고 객체 검출 정확도를 향상시키기 위한 알고리즘을 제안하였다[22]. 하지만 두 개의 객체 검출 알고리즘이 동시에 사용되기 때문에 객체 검출에 많은 시간이 필요하다는 단점이 존재한다.

G. Kim은 YOLOv2와 KF를 결합하여 연속적인 프레임 사이의 정보를 활용하는 방법을 제안하였다[4]. 제안 방법은 KF의 업데이트 식을 통해 프레임 사이의 정보를 재귀적으로 활용하여 노이즈를 제거한 후 객체의 이동 궤적을 예측하였다. 그리고 YOLOv2가 객체 검출에 실패하더라도 이전 프레임에서 저장된 KF의 추정치를 활용하여 객체의 위치를 추적 및 보정하였다. 이로써 제안 방법의 검출성능은 YOLOv2를 단독으로 사용하였을 때보다 7% 향상되었지만, 검출속도는 소폭 감소하였다.

하지만 제안된 방법론은 YOLOv2에 높은 가중치를 두고 칼만이득을 업데이트하기 때문에, 객체가 일정 프레임 이상 폐색영역에 존재하면 YOLOv2의 검출능력이 상실되고, 이는 KF의 추적능력의 저하로 이어진다. 따라서 현재 프레임의 실제 위치와 예측 위치의 오차가 발생하여 일정 기간 오차가 누적되면 추적성능이 감소하는 한계가 있다. 이러한 한계를 해결하기 위해 본 논문에서는 YOLOv5와 Dual KF를 결합하여 폐색영역에 강건한 객체 추적 프레임워크를 제안한다.


Ⅲ. 제안 기법

제안 프레임워크는 예측 단계(Prediction phase)와 추적 단계(Tracking phase)로 구성된다. 그림 2는 제안 프레임워크가 작동하는 과정을 나타내는 흐름도이다. 예측 단계는 사전에 학습된 YOLOv5를 사용해서 객체의 위치를 경계박스로 예측하며, 경계박스의 신뢰도 점수를 기준점(Threshold)과 비교하여 검출 성공 여부를 판단한다.

Fig. 2.

Overall flowchart of the proposed framework

검출 성공 시 NF(Number of False) 값이 0으로 초기화되며, 검출 실패 시 NF 값이 1씩 증가한다. YOLOv5가 객체의 검출에 실패하면, NF 값에 따라 Dual KF가 다르게 작동하여 객체의 위치를 예측한다. 추적 단계에서는 예측 단계에서 KF에 의해 예측된 객체의 위치와 YOLOv5의 검출 결과를 Dual KF가 보정하여 객체의 위치를 추적한다. 마지막으로 NF 값에 따라 추적 결과의 유효성을 판단하여 최종 결과를 출력한다.

3.1 Dual KF의 구조 및 작동과정

Dual KF는 Inference KF와 Detection KF로 구성되어 있으며, 필터의 작동과정은 그림 3과 같다. 극단적인 칼만이득을 얻기 위해 Detection KF와 Inference KF의 노이즈 공분산 행렬(Noise covariance matrix)의 값을 서로 다르게 설정하였다. 구체적으로, 본 논문의 Dual KF는 객체의 위치(x^Result)와 오차 공분산 행렬(PDetection, PInference)을 업데이트할 때, YOLOv5의 검출 결과(x^YOLO)와 KF가 자체적으로 예측한 값(xDetection-, xInference-)을 모두 사용한다. 이때, Detection KF는 전자에, Inference KF는 후자에 높은 가중치를 부여하여 각각의 칼만이득(KDetection,KInference)을 재귀적으로 업데이트하도록 설계되었다.

Fig. 3.

Dual Kalman Filter의 작동과정

Dual KF는 크게 네 가지 단계를 거쳐 작동한다. Step 1에서는 이전 프레임의 검출 결과(x^Last Frame )와 오차 공분산 행렬을 활용하여 객체의 위치(xDetection-, xInference-)와 오차 공분산 행렬(PDetection-, PInference-)을 예측한다. 위 첨자 ―는 이전 프레임의 정보를 활용하여 현재 프레임의 정보를 예측하였다는 것을 의미한다. Detection KF와 Inference KF는 각각의 식 (1), (2)(3), (4)에 의해 객체의 위치와 오차 공분산 행렬을 계산한다[21].

Step 1에서 사용되는 수식에 등장하는 A는 시간에 따른 객체의 위치변화를 나타낸 상태 전이 행렬(State Transition Matrix)이며, QDetectionQInference 는 각 KF의 예측 과정에서 발생하는 노이즈의 공분산 행렬이다. 노이즈 공분산 행렬의 성분 값이 증가할수록 오차 공분산 행렬의 성분 값도 커진다. 이와 같은 특징을 반영하여 QDetection의 모든 성분을 1으로 설정하여 PDetection-의 성분 값이 커지도록 설정하였다. 반면 Inference KF는 QInference의 모든 성분을 0로 지정하여, PInference-의 성분 값이 작아지도록 설계하였다. 이로써 두 KF의 칼만이득은 서로 다른 성분 값을 가지게 된다.

x^Detection-=Ax^Last Frame-(1) 
P^Detection- =APDetectionAT+QDetection(2) 
x^Inference-=A(x^Last Frame-)(3) 
PInference-=APInferenceAT+QInference(4) 

Step 2에서는 Step 1에서 예측한 현재 프레임의 오차 공분산 행렬을 활용하여 칼만이득을 산출한다. 칼만이득은 x^Result를 추정할 때 가중치로 사용되며, 칼만이득의 모든 성분은 0과 1 사잇값으로 이루어져 있다. 각 KF의 칼만이득은 KDetection, KInference로 표현되며, 식 (5), (6)에 의하여 산출된다[21]. 수식에 포함된 H는 각 KF의 예측 결과와 추정 결과 사이의 관계를 규정한 행렬이다. 계산된 칼만이득의 모든 성분이 0이면, KF의 예측 결과가 정확하다는 것을 의미한다. 이때, KF가 추정해낸 x^Result는 Step 1에서 예측한 KF의 예측 결과와 같아진다. 반면, KF의 예측 결과가 정확하지 않으면 칼만이득의 모든 성분은 1에 가깝게 계산된다. 이때는 KF의 예측 결과에 비중을 두어 결과를 추정하지 않는다.

KDetection=PDetection-HTHPDetection-HT+RDetection-1(5) 
KInference=PInference-HTHPInference-HT+RInference-1(6) 

Detection KF는 식 (5)를 이용하여 KDetection을 선출하며, RDetection은 Detection KF에서 발생하는 노이즈의 공분산행렬이다. 노이즈 공분산 행렬의 모든 성분을 0으로 설정하면, 칼만이득의 모든 성분은 1로 수렴하는 특징이 있다. 식 (6)에서 Inference KF는 RInference 를 활용하여 KInference를 산출한다. 여기서 RInference는 Inference KF의 노이즈 공분산 행렬이며, RInference의 모든 성분 값을 1로 지정하여 KInference의 모든 성분 값이 0으로 수렴하게 설정하였다.

Step 3에서는 Step 1에서 예측한 객체의 위치와 Step 2에서 계산된 칼만이득을 활용하여 객체의 위치를 최종적으로 추정한다. 이때, Dual KF는 NF 값에 따라 식 (7), (8), (9) 중 하나를 사용하여 객체를 추정한다[21]. 이 세 가지 수식은 KF의 업데이트 식을 기반으로 같은 구조로 되어 있지만 각 수식은 서로 다른 칼만이득과 측정 오차항을 이용한다. 측정 오차항은 세 가지 수식에서 괄호 안의 부분을 의미하며, KF의 예측값과 측정값 사이의 오차를 반영한다.

x^Result=x^Detection-+KDetection x^YOLO-Hx^Detection-(7) 
x^Result=x^Detection-+KDetection x^Last Frame-Hx^Detection-(8) 
x^Result=x^Inference-+KInference x^Last Frame-Hx^Inference-(9) 

식 (7), (8)은 YOLOv5의 검출 결과를 기반으로 Detection KF를 업데이트하여 객체를 추적하는 것을 의미한다. 식 (7)은 오차항에 측정값으로 x^YOLO 를 사용하며, x^YOLO에 비중을 주어서 x^Result를 보정한다. 식 (8)x^YOLO를 사용할 수 없는 상황일 때 사용되며, 직전 프레임까지 YOLOv5를 신뢰할 수 있는 상황에서 보정된 x^Last Frame을 측정값으로 이용한다. 장기간 객체가 폐색영역에 위치할 때, Dual KF는 식 (9)를 사용하여 객체의 위치를 추정한다. 식 (9)식 (8)과 다르게 Inference KF를 사용하며, Detection KF와 다른 칼만이득의 값으로 인해서 xInference-에 비중을 주어서 결과를 산출한다.

Step 4에서는 각 KF는 칼만이득과 예측된 오차 공분산 행렬을 반영하여 현재 프레임의 오차 공분산 행렬을 계산한다. 오차 공분산 행렬은 KF에 추정 결과의 정확도를 나타내는 지표이며, KF의 추정 오차를 반영하여 매 프레임 업데이트된다. 오차 공분산 행렬의 반대각성분이 크면 추정 오차가 크고, 오차 공분산 행렬의 반대각성분이 작으면 추정 오차가 작다는 것을 의미한다. 식 (10), (11)에 의해 각 KF의 PDetectionPInference를 계산하며, Detection KF는 PDetection의 성분을 0에 가깝게 보정한다[21]. PInferenceKInference를 사용하여 계산되기 때문에 PInference-에 근접하게 보정된다. Dual KF는 위의 네 가지 단계를 프레임마다 진행하여 x^Result와 각 KF의 오차 공분산 행렬을 갱신하며, x^Last Framex^Result로 대체하여 다음 프레임에서 재귀적으로 활용한다.

PDetection =PDetection--KDetectionHPDetection-(10) 
PInference =PInference--KInferenceHPInference-(11) 

3.2 제안 프레임워크의 작동방식

제안 프레임워크의 작동방식은 YOLOv5의 검출 결과와 NF의 값에 대응하여 그림 2에 나타난 것처럼 크게 세 가지 경우로 나누어진다. 경우마다 Dual KF가 다르게 작동하여 객체의 위치와 오차 공분산 행렬을 추정한다.

Case 1은 YOLOv5가 객체 검출을 성공한 경우이다. Case 1의 예측 단계에서는 먼저 YOLOv5의 검출 결과(x^YOLO)를 사용한다. Dual KF는 x^YOLO가 정확하다고 판단하여 Detection KF를 사용하여 객체를 추적한다. Detection KF는 Step 1 과정을 거쳐 x^Detection-PDetection-을 예측한다.

추적 단계에서는 예측된 x^Detection-PDetection-을 사용하여 나머지 과정을 수행한다. 사전에 RDetection의 모든 성분이 0으로 설정되어, KDetection의 모든 성분은 1에 근접하게 업데이트된다. 따라서 Detection KF는 x^Resultx^YOLO에 가중치를 두어 결과를 보정한다.

Case 2는 YOLOv5가 객체 검출에 실패하고 NF 값이 N(False threshold) 회 미만인 경우이다. 여기서 N은 객체가 폐색영역의 장기간 진입하였다고 판단하는 기준점으로 사전에 정의된 변수이다. YOLOv5의 검출실패로 Case 2에서는 x^YOLO를 받아와 사용할 수 없기 때문에 Dual KF는 x^Last Frame을 사용한다. 이때 Dual KF는 Case 1에서 x^YOLO기반으로 업데이트되어 추적능력이 보장된 Detection KF를 사용한다. Case 2의 예측 단계에서 Detection KF는 Step 1을 수행하여 x^Detection-PDetection-을 예측 후 추적 단계로 진입한다. 추적 단계에서 Detection KF는 나머지 Step을 수행하게 되고, x^Last Framex^Detection-를 사용하여 x^Result를 추정한다. 이때, KDetection가 계산에 이용되기 때문에 x^Resultx^Last Frame에 가중치를 두어 업데이트 된다.

Case 3은 YOLOv5의 지속적인 객체 검출 실패로 NF 값이 N 회 이상으로 누적된 경우이다. 이 경우에 Dual KF는 객체가 다수의 프레임 동안 폐색영역에 존재하였다고 판단하여 Inference KF가 작동한다. 예측 단계에서 Inference KF는 Step 1을 거쳐 x^Inference-PInference-를 예측한다. 그 후 추적 단계에서는 x^Inference-x^Last Frame을 활용하여 객체의 이동 경로를 추적한다. 이때 Inference KF는 YOLOv5의 지속적인 검출 실패로 x^Last Frame을 부정확하다고 판단하여 x^Inference-에 비중을 두어 x^Result를 추정한다. 만약, NF 값이 지속적으로 증가하여 M(Detection threshold) 이상의 값에 도달하게 되면, Dual KF는 결과를 출력하지 않게 된다. 여기서, M은 폐색영역에 장기간 노출된 Dual KF의 추적 결과가 유효하지 않다고 판단하는 기준점을 의미한다.


Ⅳ. 실 험

4.1 YOLOv5의 학습 과정

제안 프레임워크에 사용되는 YOLOv5를 학습시키기 위해 David Chuan-En Lin의 Github와 Kaggle의 Drone Dataset 이미지 데이터를 이용하였다[23][24]. 이미지 데이터는 다양한 배경에서 촬영된 4,000장의 드론 이미지를 포함하고 있으며, 이미지의 크기는 390×280과 900×400이다. 학습 과정에서 과적합이 발생하는 것을 방지하기 위해 이미지 증식(Image augmentation) 사용하여 2,000장의 추가로 제작하였다. 이미지 증식을 통해 얻은 2,000장의 이미지 데이터는 별도의 레이블이 없기 때문에 Label Studio의 Github에서 Labelimg를 활용하여 객체에 위치를 지정해 주었다[25].

학습 데이터와 검증 데이터는 4:1의 비율로 나누어 학습에 사용하였다. 또한 Ik-Su Kim의 연구에 의하면 YOLOv5는 300 Epochs를 넘겼을 때부터 Precision, Recall이 감소하는 현상이 나타나며 300번의 반복 횟수가 YOLOv5의 가장 알맞은 반복 횟수이다[17].

선행 연구에 결과를 반영하여 YOLO의 Epochs는 300회로 설정하였으며, Early topping을 설정하여 100 Epochs 동안 성능이 향상되지 않는다면 학습을 멈추도록 설정하였다.

4.2 실험 환경

본 논문의 제안 프레임워크의 성능을 평가하기 위해 검증 영상에 제안 프레임워크와 기존의 방법론을 적용하여 검출성능을 비교하였다. 그림 4는 검증 영상에 YOLOv5를 적용하였을 때 폐색영역에서의 객체 검출 예시를 나타낸다. 그림 4(a)는 검증 영상에서 YOLO가 객체 검출에 성공한 상태이다. 그림 4(b)는 객체가 폐색영역에 진입하여 검출 실패한 상태를 나타낸다. 검증 영상에서 검출 대상인 드론은 착륙하면서 배경 영역의 공장과 겹쳐지면서 검출이 어려워진다. 그림 4(b)와 같이 YOLOv5는 검증 영상에서 폐색영역으로 진입한 객체를 검출하지 못한다.

Fig. 4.

Detection results of YOLOv5 at test video

성능검증을 위해 일반적으로 객체 검출 알고리즘의 평가 지표로 사용되는 IoU(Intersection of Union), AP(Average Precision), FPS(Frame Per Second)와 검출 성공으로 판단된 프레임의 수를 기록한 평가 지표인 검출 프레임(Detection frame)을 사용하였다. IoU는 예측된 경계박스의 검출 정확도를 나타내는 평가 지표이다. 여기서 IoU는 예측된 경계박스와 실제 객체의 경계박스의 교차하는 영역을 전체 영역으로 나눈 값을 의미한다. 해당 프레임에서 제안 프레임워크와 YOLOv5의 IoU가 IoU-Threshold 이상이면 객체 검출 성공으로 판단한다.

AP는 Precision-Recall Curve에서 그래프 선 아래의 면적을 의미한다. 여기서 Precision-Recall Curve는 Confidence threshold 값의 변화에 대응하여 달라지는 Precision과 Recall을 나타낸 그래프이다. AP는 0에서 1사이의 값을 가지며, AP가 1에 가까울수록 검출성능이 우수하다는 것을 의미한다. 제안 프레임워크의 검출속도를 평가하기 위해 FPS를 측정하였다. FPS는 객체 검출속도를 나타내는 평가 지표로 초당 처리되는 프레임의 숫자를 나타내며, FPS가 높을수록 검출속도가 빠르다는 것을 의미한다.

실험은 각 검출 모델을 5회씩 적용하여 평균값을 비교하였다. 모든 실험은 Ubuntu 20.04 운영체제에서 Intel Xeon E5-2698 v4 2.2GHz CPU, 2TB RAM, NVIDIA Tesla V-100DGXS-32GB GPU를 가진 서버 환경에서 진행하였으며, 라이브러리는 python 3.8.12 와 openCV 4.1.2 그리고 pytorch 1.7.0을 사용하였다.

4.3 실험 결과

Dual KF의 N과 M은 실험을 통해서 설정하였다. 실험을 진행하였을 때, YOLOv5가 60회 전후로 객체 검출에 실패하면 Detection KF의 추적 결과의 IoU 값이 0.25 밑으로 감소하였다. 또한 Inference KF의 사용이 60 프레임 이상 연속적으로 사용되면 IoU 값이 0으로 수렴하는 것을 확인하였다. 따라서 N은 60으로 설정하였으며, M은 Inference KF가 사용되기 시작하는 60 프레임에서 60 프레임을 더하여 120 프레임으로 설정하였다.

표 2는 제안 프레임워크와 기존 방법론의 검출 결과를 보여주며, 굵은 글씨는 해당 성능 지표에서 우수한 성능을 보인 모델의 성능 값을 의미한다. 제안 프레임워크와 기존의 방법론은 모두 YOLOv5n을 사용하였으며, 총 502개의 프레임을 검출 대상으로 삼았다. 각 프레임에서 IoU가 0.5 이상인 프레임을 세어 검출 프레임에 기재하였다.

Detection results using YOLOv5n

검출 프레임과 AP 측면에서 제안 프레임워크는 기존 방법론에 비해 우수한 성능을 도출하였다. 이를 통해, 기존의 방법론들이 객체를 검출하지 못하는 프레임에서 제안 프레임워크는 Dual KF를 활용하여 객체를 추적하는 것을 확인할 수 있다. 반면 기존 방법론들에 비해 제안 프레임워크의 FPS는 감소하였는데, 이는 Dual KF의 적용으로 제안 프레임워크의 연산량이 증가하였기 때문이다.

그림 5는 실험에 사용된 방법론들의 IoU를 그래프로 나타낸다. 빨간 점선은 IoU-Threshold이며, IoU 값을 0.5로 설정하여 검출 성공 여부를 판단하였다. 제안 프레임워크는 기존의 방법론들보다 전체적으로 IoU 값이 증가하는 것을 확인하였다. 구체적으로 YOLOv5는 검은 박스로 표시된 100에서 200 프레임 사이 구간에서 객체가 폐색영역에 진입하여 객체 검출에 실패한다. 반면 KF를 사용한 방법론들은 객체 추적에 성공한 것을 확인하였다. 하지만 Gicheol의 알고리즘은 130에서 200 프레임 사이 구간에서 IoU 값이 0.5 이하로 감소하였다. 이는 객체가 폐색영역에 다수의 프레임 동안 위치하여 KF의 추적능력이 저하되었기 때문이다. 반면 제안 프레임워크는 100에서 200 프레임 사이 구간에서 0.5 이상의 IoU를 유지한다. 이를 통해 Dual KF의 적용으로 폐색영역에서 검출성능이 향상되는 것을 확인하였다.

Fig. 5.

IoU comparison of proposed framework and existing algorithms

그림 6은 제안 프레임워크의 성능을 시각적으로 표현하기 위해, 제안 프레임워크와 YOLOv5의 실시간 객체 검출 과정을 프레임별로 비교한 그림이다. 실선으로 표현된 영역은 실제 객체의 위치이며, 점선으로 표현된 영역은 제안 프레임워크와 YOLOv5의 검출 결과를 나타낸다. 107 프레임에서는 두 기법 모두 객체 검출에 성공하였지만 이후 프레임에서는 제안 프레임워크만 추적에 성공하였다. 137 프레임과 157 프레임의 경우 객체가 배경 영역에 완전히 겹쳐져서 YOLOv5는 검출에 실패하였지만, 제안 프레임워크는 객체를 추적하는 것을 확인할 수 있다.

Fig. 6.

Comparison of detection results in occlusion area

그림 7은 YOLOv5의 검출성능이 Dual KF의 추적능력에 미치는 영향을 분석하기 위해 다양한 검출 모델의 검출 결과를 그림 5와 같은 방식으로 나타내고 있다. YOLOv5m과 YOLOv5l은 100에서 200 프레임 사이 폐색영역에서 IOU 값이 급격히 감소하는 것을 확인할 수 있다. 반면 YOLOv5s는 100에서 200 프레임 사이 구간에서 IoU 값이 IoU-Threshold보다 높게 유지되며, YOLOv5x는 100에서 170 프레임 사이 구간에서 IoU-Threshold보다 높은 IoU 값을 유지한다. 이는 객체가 폐색영역에 진입하기 직전인 검은 박스로 표시된 영역에서 YOLOv5s와 YOLOv5x의 IOU 값이 0.8 이상으로 높은 검출 정확도를 보이기 때문이다. 이로 인해 YOLOv5에 높은 가중치를 부여하는 Detection KF가 보다 더 확실한 검출 결과를 기반으로 업데이트되어 제안 알고리즘이 추적능력이 향상되는 것이다.

Fig. 7.

Comparison of IoU for each detection model

표 3은 각 검출 모델의 Confidence-threshold의 변화에 따른 기존의 방법론과 제안 프레임워크의 AP를 비교한 결과이다. 괄호에 표시된 수는 실험에서의 Confidence-threshold를 의미한다. 실험은 각각의 Confidence-threshold마다 5회씩 반복 후 평균값을 비교하였다. 여기서 모든 Confidence-threshold에 대해 제안 프레임워크의 AP가 기존 방법론들보다 높은 것을 확인하였으며, YOLOv5를 단독으로 사용하였을 때보다 평균적으로 22.22% 증가하였다. 또한 제안 프레임워크와 Gicheol의 알고리즘의 결과를 비교하였을 때 AP가 평균적으로 9.35% 증가하였다.

AP of each detection model according to confidence score

표 4는 기존의 방법론과 제안 프레임워크의 Confidence-threshold를 다르게 설정하여 FPS를 비교하였다. 모든 검출 모델에서 기존의 방법론들에 비해 제안 프레임워크의 FPS가 낮다. YOLOv5 단독 사용과 비교하여 FPS가 평균 2.82 감소하였다. 이는 Dual KF의 적용으로 추가적인 연산량이 발생하기 때문이며, Gicheol의 알고리즘에 비해 제안 프레임워크의 FPS가 평균 0.056 감소하였다. 하지만 제안 프레임워크의 검출속도는 30 FPS 이상이기 때문에 제안 프레임워크를 실시간 객체 검출에 적용 가능하다[4].

FPS of each detection model according to confidence score


Ⅴ. 결론 및 향후 계획

본 논문은 YOLOv5와 Dual KF를 결합하여 객체의 검출이 어려운 폐색영역에 진입하여도 강건하게 추적할 수 있는 프레임워크를 제안하였다. 제안 프레임워크는 YOLOv5가 검출 실패했을 때 Detection KF를 사용하여 객체를 추적한다. 일정 프레임 이상 검출에 실패하면 제안 프레임워크는 Detection KF와 상반된 특성을 가진 Inference KF를 사용하여 객체를 추적한다. 기존의 객체 검출 알고리즘과 제안 프레임워크를 동일한 검증 데이터에 적용한 결과 검출성능이 기존 방법론들보다 향상되었으며, 검출속도는 소폭 감소하였다. Confidence-threshold를 변화시키며 제안 프레임워크와 YOLOv5의 검출성능을 비교하였으며, YOLOv5의 검출성능이 감소하여도 Dual KF가 객체를 성공적으로 추적하는 것을 검증하였다.

그러나 본 연구의 제안 프레임워크는 단일 객체의 검출 및 추적만 가능하다는 한계가 존재한다. 향후 연구에서는 다수의 객체를 동시에 검출할 수 있도록 매칭 알고리즘을 추가적으로 적용하여 제안 프레임워크를 고도화할 계획이다. 또한, 학습에 사용된 데이터는 한가지 클래스만 존재하였으며 다양한 클래스를 가진 데이터를 확보하여 다중 클래스 검출이 가능하도록 할 예정이다.

Acknowledgments

본 연구는 2022년 과학기술정보통신부의 재원으로 정보통신산업진흥원의 지원[S0317-21-1002]에 의한 연구임

References

  • J. Choi, S. Choi, and T. Kang, "Smartphone Authentication System using Personal Gaits and CNN", The Journal of Korean Institute of Information Technology, Vol. 20, No. 10, pp. 71-82, Oct. 2022. [https://doi.org/10.14801/jkiit.2022.20.10.71]
  • G. Jo, Y. Heo, H. Cho, and Y. Song, "Implementation of OLED Display Defect Detection System using CNN", The Journal of Korean Institute of Information Technology, Vol. 20, No. 6, pp. 1-8, Jun. 2022. [https://doi.org/10.14801/jkiit.2022.20.6.1]
  • J. Lee, G. Ham, K. Bae, and H. Park, "Detection Ability of Occlusion Object in Deep Learning Algorithm depending on Image Qualities", The Journal of the Korean Association of Geographic Information Studies, Vol. 22, No. 3, pp. 82-98, Sep. 2019. [https://doi.org/10.11108/kagis.2019.22.3.082]
  • G. Kim, S. Son, M. Kim, J. Jeon, I. Lee, J. Cha, and H. Choi, "Object Tracking Method using Deep Learning and Kalman Filter", The Journal of Broadcast Engineering, Vol. 24, No. 3, pp. 495-505, May 2019. [https://doi.org/10.5909/JBE.2019.24.3.495]
  • Y. Park and Y. Song, "A Method for Detecting Unexpected Situations from Highway Driving Images using Object Detection and Tracking", The Journal of Korean Institute of Information Technology, Vol. 20, No. 5, pp. 47-54, May 2022. [https://doi.org/10.14801/jkiit.2022.20.5.47]
  • M. F. Sanjurjo, M. Mucientes, and M. Brea, "Real-time multiple object visual tracking for embedded GPU systems", IEEE Internet of Things Journal, Vol. 8, No. 11, pp. 9177-9188, Jun. 2021. [https://doi.org/10.1109/JIOT.2021.3056239]
  • S. Park and D. Yoo, "Quadratic Kalman Filter Object Tracking with Moving Pictures", The Journal of Korea Navigation Institute, Vol. 20, No. 1, pp. 53-58, Feb. 2016. [https://doi.org/10.12673/jant.2016.20.1.53]
  • S. Ren, K. He, R. Girshick, and J. Sun, "Faster r-cnn: Towards real-time object detection with region proposal networks", IEEE Transactions on Pattern Analysis & Machine Intelligence, Vol. 39, No. 6, pp. 1137-1149, Jun. 2016. [https://doi.org/10.1109/TPAMI.2016.2577031]
  • J. Han and S. Hong, "Semiconductor process inspection using mask R-CNN", Journal of the Semiconductor & Display Technology, Vol. 19, No. 3, pp. 12-18, Sep. 2020.
  • J. Redmon, S. Divvala, R. Girshick, and A. Farhadi, "You only look once: Unified, real-time object detection", In Proc. of the IEEE conference on computer vision and pattern recognition, pp. 779-788, Oct. 2016. [https://doi.org/10.1109/CVPR.2016.91]
  • S. Oh and Y. Bae, "Braille Block Recognition Algorithm for the Visually Impaired Based on YOLO V3", Journal of Korean Institute of Intelligent Systems, Vol. 31, No. 1, pp. 60-67, Feb. 2021. [https://doi.org/10.5391/JKIIS.2021.31.1.060]
  • B. Hwang, S. Lee, and S. Lee, "Modified YOLOv4S based on Deep learning with Feature Fusion and Spatial Attention", Journal of the Korea Convergence Society, Vol. 12, No. 12, pp. 31-37, Dec. 2021. [https://doi.org/10.15207/JKCS.2021.12.12.031]
  • C. Wang, A. Bochkovskiy, and H. Liao, "Scaled-yolov4: Scaling cross stage partial network", In Proc. of the IEEE/cvf conference on computer vision and pattern recognition, pp. 13029-13038, Jun. 2021. [https://doi.org/10.1109/CVPR46437.2021.01283]
  • W. Liu, D. Anguelov, D. Erhan, C. Szegedy, S. Reed, C. Fu, and A. Berg, "SSD: Single shot multibox detector", In European conference on computer vision, Springer, Cham, pp. 21-37, Oct. 2016. [https://doi.org/10.1007/978-3-319-46448-0]
  • T. Lin, P. Goyal, R. Girshick, K. He, and P. Dollár, "Focal loss for dense object detection", In Proc. of the IEEE international conference on computer vision, pp. 2980-2988, Jun. 2017. [https://doi.org/10.48550/arXiv.1708.02002]
  • S. Jeon, J. Lee, M. Kim, S. Hong, J. Bang, and H. Kim, "A Study on Helmet Wear Identification Using YOLOv5 Object Recognition Model", Proc. of Symposium of the Korean Institute of communications and Information Sciences, pp. 1293-1294, Feb. 2022. [https://doi.org/10.1109/ICPECA51329.2021.9362711]
  • I. Kim, M. Lee, and Y. Jeon, "Comparative Analysis of Defect Detection Using YOLO of Deep Learning", The Journal of the Korean Society of Manufacturing Technology Engineers, Vol. 30, No. 6, pp. 514-519, Dec. 2021. [https://doi.org/10.7735/ksmte.2021.30.6.513]
  • S. Park and D. Yoo, "One-dimensional Object Tracking using LSTM Neural Network", The Journal of Korea Navigation Institute, Vol. 25, No. 2, pp. 150-155, Apr. 2021. [https://doi.org/10.12673/jant.2021.25.2.150]
  • J. Lee, G. Park, and B. Kim, "Robust Multiple Object Tracking Algorithm for Occlusion Handling using LSTM and Kalman Filter", In Proc. of the Korean Society of Broadcast Engineers Conference, The Korean Institute of Broadcast and Media Engineers, pp. 251-254, Jul. 2020.
  • Y. Park and Y. Song, "A Method for Detecting Unexpected Situations from Highway Driving Images using Object Detection and Tracking", Journal of Korean Institute of Information Technology, Vol. 20, No. 5, pp. 47-54, May 2022. [https://doi.org/10.14801/jkiit.2022.20.5.47]
  • R. Kalman, "A new approach to linear filtering and prediction problems", Vol. 82, No. 1, pp. 35-45, Mar. 1960. [https://doi.org/10.1115/1.3662552]
  • J. Fan, J. Lee, I. Jung, and Y. Lee, "Improvement of object detection based on faster R-CNN and YOLO", In 2021 36th International Technical Conference on Circuits/Systems, Computers and Communications, IEEE, pp. 1-4, Jun. 2021. [https://doi.org/10.1109/ITC-CSCC52171.2021.9501480]
  • https://github.com/chuanenlin/drone-net, [acceseed: Jan. 12, 2022]
  • https://github.com/dasmehdix/drone-dataset, [acceseed: Jan. 12, 2022]
  • https://github.com/heartexlabs/labelImg, [acceseed: Feb. 21, 2022]
저자소개
김 다 솔 (Dasol Kim)

2021년 2월 : 한국공학대학교 기계공학과(공학사)

2021년 3월 ~ 현재 : 한국공학대학교 스마트팩토리융합학과 석사과정

관심분야 : Object Detection, 기계학습의 산업응용

허 재 석 (Jaeseok Huh)

2013년 8월 : 서울대학교 산업공학과(공학사)

2019년 2월 : 서울대학교 산업공학과(공학박사)

2019년 9월 ~ 현재 : 한국공학대학교 경영학부 조교수

2021년 4월 ~ 현재 : Gauss Labs Inc. 자문교수

2021년 4월 ~ 현재 : 대한민국육군 군수분과 자문위원

관심분야 : 제조 시스템 최적화, Scheduling·Dispatching, AI 산업응용

Fig. 1.

Fig. 1.
Structure of YOLOv5

Fig. 2.

Fig. 2.
Overall flowchart of the proposed framework

Fig. 3.

Fig. 3.
Dual Kalman Filter의 작동과정

Fig. 4.

Fig. 4.
Detection results of YOLOv5 at test video

Fig. 5.

Fig. 5.
IoU comparison of proposed framework and existing algorithms

Fig. 6.

Fig. 6.
Comparison of detection results in occlusion area

Fig. 7.

Fig. 7.
Comparison of IoU for each detection model

Table 1.

Architectural comparison of YOLOv5’s detection models

Layers Params
(M)
Weight size
(MB)
YOLOv5n 270 17.6 4
YOLOv5s 270 70.2 14
YOLOv5m 369 208.7 41
YOLOv5l 468 4061.3 89
YOLOv5x 567 862.1 166

Table 2.

Detection results using YOLOv5n

YOLOv5 Gicheol Ours
Detection frame 358 374 441
AP 0.6378 0.68 0.8096
FPS 101.01 97.08 93.45

Table 3.

AP of each detection model according to confidence score

Model YOLOv5
n s m l x
AP
(0.25)
YOLO 0.691 0.841 0.824 0.735 0.666
Gicheol 0.797 0.929 0.885 0.791 0.746
Ours 0.869 0.968 0.921 0.844 0.802
AP
(0.35)
YOLO 0.721 0.813 0.788 0.718 0.655
Gicheol 0.765 0.888 0.867 0.773 0.746
Ours 0.883 0.966 0.881 0.803 0.794
AP
(0.5)
YOLO 0.604 0.756 0.748 0.676 0.616
Gicheol 0.722 0.873 0.846 0.754 0.737
Ours 0.857 0.965 0.953 0.886 0.861

Table 4.

FPS of each detection model according to confidence score

Model YOLOv5
n s m l x
FPS
(0.25)
YOLO 97.88 92.27 69.94 52.76 44.45
Gicheol 96.99 89.46 66.83 51.08 43.13
Ours 95.45 88.06 65.82 50.52 43.01
FPS
(0.35)
YOLO 99.22 92.47 68.73 53.65 45.01
Gicheol 97.18 88.41 66.52 50.12 42.49
Ours 96.44 88.52 65.46 49.5 42.31
FPS
(0.5)
YOLO 98.15 90.78 69.07 53.08 44.50
Gicheol 91.25 84.79 64.53 49.71 39.91
Ours 90.02 84.76 64.14 49.61 38.18