Acceleration and Energy Reduction of Object Detection on Mobile Graphics Processing Unit
No Thumbnail Available
Date
2019-06
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Addis Ababa University
Abstract
The evolution of high performance computing in today’s smartphones is enabling
their use in compute-intensive applications. As the compute requirement increases,
the energy required to do the computation cannot increase in proportion because
the cost of providing that energy available and cooling would become prohibitive.
An alternative, potentially power-reducing approach is to use graphics processing
units or special accelerator cores. Today’s smartphones are equipped with systemon-chip
(SoC) devices that house many cores such as graphics processing units, digital
signal processors, and special multimedia encoder/decoder hardware along side
multi-core central processing units. Their inclusion enables applications that require
greater computational power such as real-time computer vision. In this work, we
study the capability of the recently introduced general-purpose graphics processing
unit (GPU) in a smartphone SoC to enable energy-efficient object detection. This
will include understanding the architecture of the recent GPUs that will be used (the
Adreno 320 and Adreno 420 from Qualcomm), the implementation and optimization
of the object detection algorithm used in the Open Computer Vision library
(OpenCV) using these GPUs and measuring the energy consumption of this implementation.
We implemented the Viola-Jones based object detection on the GPU in
an Android tablet. The implementation is 35% faster on average than the same algorithm
running on the CPU on the same device. The implementation also reduces the
average energy consumption by 68% compared to the CPU on the same device. An
application that utilized the object detector on the mobile GPU to detect Ringworm
skin disease was developed. A classifier was trained for this application and it has
an accuracy of 75%.
Description
Keywords
Smartphone, GPU, Object Detection, Acceleration, Ringworm