Performance Optimization of Object Tracking Algorithms in OpenCV on GPUs

Machine-learning-based computer vision is increasingly versatile and being leveraged by a wide range of smart devices. Due to the limited performance/energy budget of computing units in smart devices, the careful implementation of computer vision algorithms is critical. In this paper, we analyze the...

Full description

Bibliographic Details
Main Authors: Jaehyun Song, Hwanjin Jeong, Jinkyu Jeong
Format: Article
Language:English
Published: MDPI AG 2022-08-01
Series:Applied Sciences
Subjects:
Online Access:https://www.mdpi.com/2076-3417/12/15/7801
_version_ 1797414621658742784
author Jaehyun Song
Hwanjin Jeong
Jinkyu Jeong
author_facet Jaehyun Song
Hwanjin Jeong
Jinkyu Jeong
author_sort Jaehyun Song
collection DOAJ
description Machine-learning-based computer vision is increasingly versatile and being leveraged by a wide range of smart devices. Due to the limited performance/energy budget of computing units in smart devices, the careful implementation of computer vision algorithms is critical. In this paper, we analyze the performance bottleneck of two well-known computer vision algorithms for object tracking: object detection and optical flow in the Open-source Computer Vision library (OpenCV). Based on our in-depth analysis of their implementation, we found the current implementation fails to utilize Open Computing Language (OpenCL) accelerators (e.g., GPUs). Based on the analysis, we propose several optimization strategies and apply them to the OpenCL implementation of object tracking algorithms. Our evaluation results demonstrate the performance of the object detection is improved by up to 86% and the performance of the optical flow by up to 10%. We believe our optimization strategies can be applied to other computer vision algorithms implemented in OpenCL.
first_indexed 2024-03-09T05:36:03Z
format Article
id doaj.art-d5176203241f4cda9575d35dc9a786a0
institution Directory Open Access Journal
issn 2076-3417
language English
last_indexed 2024-03-09T05:36:03Z
publishDate 2022-08-01
publisher MDPI AG
record_format Article
series Applied Sciences
spelling doaj.art-d5176203241f4cda9575d35dc9a786a02023-12-03T12:29:25ZengMDPI AGApplied Sciences2076-34172022-08-011215780110.3390/app12157801Performance Optimization of Object Tracking Algorithms in OpenCV on GPUsJaehyun Song0Hwanjin Jeong1Jinkyu Jeong2College of Information and Communication Engineering, Sungkyunkwan University, Suwon 16419, KoreaCollege of Information and Communication Engineering, Sungkyunkwan University, Suwon 16419, KoreaCollege of Information and Communication Engineering, Sungkyunkwan University, Suwon 16419, KoreaMachine-learning-based computer vision is increasingly versatile and being leveraged by a wide range of smart devices. Due to the limited performance/energy budget of computing units in smart devices, the careful implementation of computer vision algorithms is critical. In this paper, we analyze the performance bottleneck of two well-known computer vision algorithms for object tracking: object detection and optical flow in the Open-source Computer Vision library (OpenCV). Based on our in-depth analysis of their implementation, we found the current implementation fails to utilize Open Computing Language (OpenCL) accelerators (e.g., GPUs). Based on the analysis, we propose several optimization strategies and apply them to the OpenCL implementation of object tracking algorithms. Our evaluation results demonstrate the performance of the object detection is improved by up to 86% and the performance of the optical flow by up to 10%. We believe our optimization strategies can be applied to other computer vision algorithms implemented in OpenCL.https://www.mdpi.com/2076-3417/12/15/7801GPUOpenCLOpenCVoptimizationkernel occupancy
spellingShingle Jaehyun Song
Hwanjin Jeong
Jinkyu Jeong
Performance Optimization of Object Tracking Algorithms in OpenCV on GPUs
Applied Sciences
GPU
OpenCL
OpenCV
optimization
kernel occupancy
title Performance Optimization of Object Tracking Algorithms in OpenCV on GPUs
title_full Performance Optimization of Object Tracking Algorithms in OpenCV on GPUs
title_fullStr Performance Optimization of Object Tracking Algorithms in OpenCV on GPUs
title_full_unstemmed Performance Optimization of Object Tracking Algorithms in OpenCV on GPUs
title_short Performance Optimization of Object Tracking Algorithms in OpenCV on GPUs
title_sort performance optimization of object tracking algorithms in opencv on gpus
topic GPU
OpenCL
OpenCV
optimization
kernel occupancy
url https://www.mdpi.com/2076-3417/12/15/7801
work_keys_str_mv AT jaehyunsong performanceoptimizationofobjecttrackingalgorithmsinopencvongpus
AT hwanjinjeong performanceoptimizationofobjecttrackingalgorithmsinopencvongpus
AT jinkyujeong performanceoptimizationofobjecttrackingalgorithmsinopencvongpus