Ajay Gopi

EECS Department, University of California, Berkeley

Technical Report No. UCB/EECS-2020-90

May 29, 2020

http://www2.eecs.berkeley.edu/Pubs/TechRpts/2020/EECS-2020-90.pdf

The Internet of Things (IoT) has been a growing area of recent times. With the large and ever-increasing number of IoT devices being deployed, there has been a rise in interest in incorporating machine learning on these devices. Low-power microcontrollers provide a low-cost compute platform to deploy intelligent IoT applications, but have extremely limited on-chip memory and compute capability. The use of machine learning for these applications highlights the tradeoff between local computation or sending the data to a more computationally powerful resource like the cloud. This paper explores this trade-off space through the computer vision tasks of people classification and people detection; people classification involves determining whether a human exists in an image while people detection involves providing bounding box information for all humans in an image. This paper uses existing models for these tasks and evaluates the tradeoff between running models locally and sending data to the cloud on the metrics of latency, energy, memory, and accuracy. The chosen models are run on the nRF52840 SoC, a low-power MCU system with protocol support for Thread and 802.15.4. Our findings confirm that local computation in low-energy constrained embedded systems makes sense for people classification in considering energy, memory, accuracy, and latency; however, these platforms are incompatible with more complex tasks like people detection due to fundamental memory limitations.

Advisors: Prabal Dutta


BibTeX citation:

@mastersthesis{Gopi:EECS-2020-90,
    Author= {Gopi, Ajay},
    Title= {To Send or to Not Send: A Case Study on Computer Vision for Low Power Edge Devices},
    School= {EECS Department, University of California, Berkeley},
    Year= {2020},
    Month= {May},
    Url= {http://www2.eecs.berkeley.edu/Pubs/TechRpts/2020/EECS-2020-90.html},
    Number= {UCB/EECS-2020-90},
    Abstract= {The Internet of Things (IoT) has been a growing area of recent times. With the large and ever-increasing number of IoT devices being deployed, there has been a rise in interest in incorporating machine learning on these devices.  Low-power microcontrollers provide a low-cost compute platform to deploy intelligent IoT applications, but have extremely limited on-chip memory and compute capability. The use of machine learning for these applications highlights the tradeoff between local computation or sending the data to a more computationally powerful resource like the cloud. This paper explores this trade-off space through the computer vision tasks of people classification and people detection; people classification involves determining whether a human exists in an image while people detection involves providing bounding box information for all humans in an image. This paper uses existing models for these tasks and evaluates the tradeoff between running models locally and sending data to the cloud on the metrics of latency, energy, memory, and accuracy. The chosen models are run on the nRF52840 SoC, a low-power MCU system with protocol support for Thread and 802.15.4. Our findings confirm that local computation in low-energy constrained embedded systems makes sense for people classification in considering energy, memory, accuracy, and latency; however, these platforms are incompatible with more complex tasks like people detection due to fundamental memory limitations.},
}

EndNote citation:

%0 Thesis
%A Gopi, Ajay 
%T To Send or to Not Send: A Case Study on Computer Vision for Low Power Edge Devices
%I EECS Department, University of California, Berkeley
%D 2020
%8 May 29
%@ UCB/EECS-2020-90
%U http://www2.eecs.berkeley.edu/Pubs/TechRpts/2020/EECS-2020-90.html
%F Gopi:EECS-2020-90