Computer Vision Applications at the Edge
Author:
Abstract:
Deep learning has forever shaped the field of computer vision applications. Solving computer vision tasks with this technology, has proven to outperform traditional (partially) hand-crafted algorithms in many technical fields. However, the large computational footprint of this technology initially forced models to be deployed on centralized servers with heavy-lifting capabilities. Due to several concerns regarding cost, scalability, response-time, reliability, privacy, and due to new technological advancements, the grand shift towards edge-computing was set in motion. The advantages and new potential applications that emerged from the ability of running neural networks close to their data source on dedicated devices, were unseen. However, limited computational resources on embedded hardware, together with the growing trend in model size and model complexity, poses increasingly difficult challenges. Therefore, novel research on powerful optimization technologies and new hardware topologies are major keystones in preparing edge-computing in computer vision for tomorrow's endeavours. This PhD aims to solve a few of these challenges by presenting five application oriented articles to inspire future work that deals with similar problems. All articles are related to computer vision with deep learning on embedded devices, and ask the same major question: which technologies are needed to realize this specific computer vision application on the edge? The quest for answers brought case-specific novelties regarding dataset collection, target-aware model development, model optimization, and model deployment. To maximize the relevance of our work, the presented topics were chosen based on their academic value and on input from the industry. For the same reason, we visited different computer vision tasks such as image classification, person/object detection, and hand-gesture recognition, while at the same time, aiming for various hardware categories, including embedded Graphics Processing Units (GPUs), Field Programmable Gate Arrays (FPGAs), single-board computers and microcontrollers. Best practices and learned lessons throughout the PhD process are presented in a final dedicated chapter for future reference.