Deep Learning on Raspberry Pi3 for Face Recognition

Total Page:16

File Type:pdf, Size:1020Kb

Deep Learning on Raspberry Pi3 for Face Recognition Deep Learning on Raspberry Pi3 for Face Recognition by Kollu Nimshi A thesis submitted in partial fulfillment of the requirements for the degree of Master of Engineering in Microelectronics and Embedded Systems Examination Committee: Dr. Mongkol Ekpanyapong (Chairperson) Prof. Matthew N. Dailey Dr. A.M. Harsha S. Abeykoon Nationality: Indian Previous Degree: Bachelor of Technology in Electronics and Communication Engineering Jawaharlal Nehru Technological University, Hyderabad, Telangana, India Scholarship Donor: AIT Fellowship Asian Institute of Technology School of Engineering and Technology Thailand December 2019 Acknowledgements My heartfelt thanks to my dear advisor Dr. Mongkol Ekpanyapong. I couldn't have done this without his direct guidance and technical support. He drived me in the right direction whenever I needed it. I would also like to thank my committee members Prof. Matthew N. Dailey and Dr. A.M. Harsha S. Abeykoon for their encouragement and insightful comments. My sincere thanks also go to Mr. Chatchai Pruetong, Mr. Amit Prasad Nayak, Mr Clifford, and Mr Sahuri Bond for the participation in my project and all other technical help. I express my profound gratitude to my family for their unfailing support and constant encouragement and my friends at AIT for being very nice to me during my stay here. Kollu Nimshi December 2019 ii Abstract In the present context, there is one big issue regarding intelligent security system using Face Recognition. In fact, it is a valid question-why do we need to implement only Face Recognition as intelligent security system? There is an effort to implement this on low power edge devices like Raspberry Pi3 and improve the accuracy of face recognition software. Even the smallest changes in the light or orientation could reduce the overall performance of recognition leading to more false positives. Though it can be implemented on powerful machines like CPU, GPU etc., yet it is not the best solution as it consumes large size and more power. It also increases the cost and complexity to maintain. Thus, bringing this application into embedded single board computers is very important .Edge computing by reducing deep learning model size is next coming future scope in Embedded System field and see how we can build intelligent system on low power devices. To increase recognition accuracy, the Deep Neural Networks (DNN) can play a vital role for the implementation of deep learning based computer vision tasks. Earlier such systems have been implemented in this area has been done in two factors: (i) end to end learning for the task using a Convolutional neural network (CNN), and (ii) the availability of large scale training datasets. After training the CNN on a desktop PC we employed a Raspberry pi, model B, for the image classification purpose. However, to utilize this CNN model with millions of free parameters on a low power embedded is much more complex and a challenging objective. This constitutes a challenge for embedded vision systems performing edge inference as opposed to cloud processing. Therefore, this led to the idea of using a Intel Neural Compute Stick as a edge inference for accelerating the performance on Raspberry Pi3.The Intel Neural Compute Stick (NCS) provides a possible route for running large - scale neural networks on a low cost, low power, portable unit. Computer vision has made it possible to acquire, process, analyze and extract high-level understanding for digital images and videos. Researchers are also looking at ways to apply the latest advances in facial-recognition technologies to uncontrolled environments, where success rate is maximum up to only 50% only. In this study, Facenet model using one shot learning algorithm is implemented for face recognition and verification on Raspberry Pi3. This system replaces the use of complete trained Facenet model on pi3 by converting this large model into Intel NCS graph and OpenVINO models format by Intel NCS SDK tools and OpenVINO Model Optimizer. With the advanced NCS API and Inference Engine API we are able to perform the inference on pi3 thereby, improving the speed of recognition of objects/ faces. The goal of this experiment is to describe a simple and easy hardware implementation of face recognition system on Raspberry pi3 that run the trained model which is trained on Custom datasets. This system is programmed using Python and is operated and controlled by Raspberry Pi3 with an USB Camera. Keywords: Intelligent Security System , Face Recognition, Facenet and Dlib, Deep Neural Networks , Convolutional Neural Networks, Embedded Vision Systems , Raspberry Pi3, Edge Inference, Intel Neural Compute Stick (NCS) , NCS SDK AND Inference Engine API , OpenVINO Model Optimizer, NCS Graph , OpenVINO Models, Python iii Table of Contents Chapter Title Page Title Page i Acknowledgments ii Abstract iii Table of Contents iv List of Figures vi List of Tables ix List of Abbreviations x 1 Introduction 1 1.1 Overview 1 1.2 Problem Statement 3 1.3 Objective 4 1.4 Limitations and Scope 4 1.5 Thesis Outline 5 2 Literature Review 6 2.1 Background 6 2.2 Challenges of Face Recognition Algorithm and 11 How Deep Learning Algorithms Can Solve It? Outline of Deep Face Architecture 3 Methodology 12 3.1 Overview 12 3.2 Data Collection 14 3.3 Data Pre-Processing 16 3.4 Main drawback to implement Facenet Model- 25 on Embedded Devices 3.5 Neural Compute Stick Platform 27 3.6 Model Optimizer 30 3.7 Procedure to Convert Facenet Model to 31 NCSDK Graph Format 3.8 Face Recognition on Raspberry Pi3 Using 38 OpenVINO Toolkit 3.9 Software 44 4 Experimental Results 46 4.1 Overview 46 4.2 Face Recognition Results on Raspberry Pi3 46 without Using Intel NCS 4.3 Face Recognition Results on Raspberry Pi3 50 Using Intel NCS and NCSDK iv 5 Conclusion, Recommendations and Future Works 80 5.1 Conclusion 80 80 5.2 Recommendations and Future Works References 81 v List of Figures Figure Title Page 2 1.1 A system set up on Raspberry Pi3 using Intel NCS 2.1 Open Face vs. earlier non-exclusive face recognition 8 Implementations 3.1 Workflow Representation of Methodology 13 3.2 Training image folder 14 3.3 Data collection corresponding to Nimshi label 15 3.4 Hyper parameters Values 16 3.5 Screenshot taken during pre-processing the Facenet Model 16 3.6 Face Detection Outputs after applying MTCNN Algorithm 17 3.7 Bounding Boxes for Face Detection of 4 Person’s 18 3.8 . .npy files 18 3.9 Pre-Trained CNN Model 19 3.10 Screenshot taken during training the Facenet model 20 3.11 Face Embedding Matrices values of 4 Persons 21 3.12 Facenet Classifier Model File 22 3.13 Face Recognition Outputs of 4 Persons 23 3.14 Flowchart representation of training and testing Facenet model 24 with custom data 3.15 Size of my trained model(.pb) and classifier model(.pkl) 25 3.16 Time Taken To load Trained Mode (.pb) l On Raspberry PI3 26 3.17 Time Taken To load Trained Mode (.pb) l On Raspberry PI3 27 3.18 Implementation of the Myriad2 VPU used within the Neural 28 Compute Stick (NCS) platform 3.19 Illustration of using Intel NCS to develop a DNN based Embedded 29 System 3.20 Live-Object Detection on Raspberry Pi 3 using Intel- NCS 30 3.21 Intel NCSDK And OpenVINO Architecture 31 3.22 Facenet Checkpoint Files 32 3.23 Facenet Graph file after Compiling and its Size 34 3.24 Simple Inference Code Flow 35 3.25 FACENET MODEL VIEW 36 3.26 OPENVINO MODEL SIZE PROPERTIES 37 3.27 NEURAL COMPUTE STICK AND NEURAL 38 COMPUTE STICK 2 3.28 MYRIAD X ARCHITECTURE 39 3.29 Command To Convert OpenVINO FP16 Format 40 3.30 Successful Conversion To FP16 OpenVINO IR 40 3.31 Models 41 3.32 Visualization Of Network Topology Of .xml File 42 42 3.33 Convolution to Pooling Layer Of Different Data Reshape to Normalization Layer Showing Different Data Size 43 3.34 44 3.35 OpenVINO .XML Model Structure Transferred OpenVINO Models To Raspberry PI3 vi 3.36 Flowchart For OpenVINO Face Recognition Algorithm 45 4.1 . Face Recognition results on Raspberry pi3 without using Intel 47 NCS 4.2 Counting no of times Face Recognized to generate Confusion 48 Matrix 4.3 Implementation on Raspberry Pi3 using Intel NCS 50 4.4 Face Recognition Results of 5 Persons under Lighting 51 4.5 Face Recognition Results of 5 Persons under Low Lighting 52 4.6 Face Recognition Results under different Emotions 53 4.7 Python Code for Calculating Difference between 2 images 54 4.8 Distance Calculation based on Threshold Value as shown in 54 RaspberryPi3 Shell 4.9 Implementation on Raspberry Pi3 using Intel OpenVINO 55 Inference Engine 4.10 Face Recognition Results on Raspberry Pi3 Using Intel 56 OpenVINO Method 4.11 Face Recognition Results on Raspberry Pi3 Under HAT 57 Conditions Using Intel OpenVINO Method 4.12 Multiple Face Recognition Results on Raspberry Pi3 Using 58 Intel OpenVINO Method 4.13 Inference Time Calculation Using OpenVINO deployed on 59 Intel NCS 4.14 Inference Time Calculation For Multiple Face Recognition 59 Using OpenVINO deployed on Intel NCS 4.15 Inference Time Calculation Using OpenVINO deployed 60 on Intel NCS2 4.16 Inference Time Calculation For Multiple Face Recognition 60 Using OpenVINO deployed on Intel NCS 4.17 Flowchart of how Images are passed through Intel NCS 61 4.18 Time for loading SVM Models 63 4.19 OPENVINO MODEL SIZE PROPERTIES 63 4.20 Time for reading IR Models 63 4.21 Time taken to generate Input and Output Blobs 64 4.22 Time taken to Create Executable Network 64 4.23 Time taken for Pre-Processing on Raspberry Pi3 64 4.24 Time taken for performing inference on my Trained 65 Model 66 4.25 Benchmark Tool Results on my trained .XML File 4.26 Benchmark Tool Results of my trained .XML File on 67 Raspberry PI3 ARM Processor vii 4.27 Facenet Prediction Graph 69 4.28 Facenet Frame Rate Graphs 70 4.29 Printing the Maximum Probability Prediction Confidence Value 77 Corresponding to Clifford Label 4.30 Accuracy for 4 different cases 78 viii List of Tables Table Title Page 2.1 .
Recommended publications
  • EECS 498/598: Brain-Inspired Computing: Models, Architectures, and Programming
    NEW COURSE ANNOUNCEMENT FOR FALL 2019 EECS 498/598: Brain-Inspired Computing: Models, Architectures, and Programming Time: Tuesday and Thursday 1:30 to 3:00 pm Instructor: Prof. Pinaki Mazumder Phone: 734-763-2107; e-mail: [email protected] Brain-inspired computing is a subset of AI-based machine learning and is generally referred to both deep and shallow artificial neural networks (ANN) and spiking neural networks (SNN). Deep convolutional neural networks (CNN) have made pervasive market inroads in numerous commercial applications and their software implementations are widely studied in computer vision, speech processing and other courses. The purpose of this course will be to study the wide gamut of shallow and deep neural network models, the methodologies for specialized hardware design of popular learning algorithms, as well as adapting hardware architectures on crossbar fabrics of emerging technologies such as memristors and spin torque nanomagnetic devices. Existing software development tools such as TensorFlow, Caffe, and PyTorch will be leveraged to teach various aspects of neuromorphic designs. Prerequisites: Senior undergrad and grad student standing in Electrical Engineering, Computer Engineering, Computer Science or Applied Physics program. Outline: i) Fundamentals of brain-inspired computing and history of neural computing, ii) Basics of linear algebra and probability theory needed for modeling of neural networks, iii) Deep learning by convolutional neural networks such as AlexNet, VGG, GoogLeNet, and ResNet, iv) Deep Neural
    [Show full text]
  • A Deep Neural Network for On-Board Cloud Detection on Hyperspectral Images
    remote sensing Article CloudScout: A Deep Neural Network for On-Board Cloud Detection on Hyperspectral Images Gianluca Giuffrida 1,* , Lorenzo Diana 1 , Francesco de Gioia 1 , Gionata Benelli 2 , Gabriele Meoni 1 , Massimiliano Donati 1 and Luca Fanucci 1 1 Department of Information Engineering, University of Pisa, Via Girolamo Caruso 16, 56122 Pisa PI, Italy; [email protected] (L.D.); [email protected] (F.d.G.); [email protected] (G.M.); [email protected] (M.D.); [email protected] (L.F.) 2 IngeniArs S.r.l., Via Ponte a Piglieri 8, 56121 Pisa PI, Italy; [email protected] * Correspondence: [email protected] Received: 31 May 2020; Accepted: 5 July 2020; Published: 10 July 2020 Abstract: The increasing demand for high-resolution hyperspectral images from nano and microsatellites conflicts with the strict bandwidth constraints for downlink transmission. A possible approach to mitigate this problem consists in reducing the amount of data to transmit to ground through on-board processing of hyperspectral images. In this paper, we propose a custom Convolutional Neural Network (CNN) deployed for a nanosatellite payload to select images eligible for transmission to ground, called CloudScout. The latter is installed on the Hyperscout-2, in the frame of the Phisat-1 ESA mission, which exploits a hyperspectral camera to classify cloud-covered images and clear ones. The images transmitted to ground are those that present less than 70% of cloudiness in a frame. We train and test the network against an extracted dataset from the Sentinel-2 mission, which was appropriately pre-processed to emulate the Hyperscout-2 hyperspectral sensor.
    [Show full text]
  • AI EDGE up Series
    AI EDGE UP Series Jason Lu Director, PSM AAEON Centralized AI = Real Time Decision an the Edge AI at the Edge with CPUs + GPUs = Not as Efficient (Gflops/W) AI On The Edge for Robots, Drones, Portable/Mobile Devices Outdoor Devices = Efficient (Gflops/W) Reasonable Cost Industrial Grade Archit. CREDIT SIZED STACKABLE ARTIFICIAL INTELLIGENCE PLATFORM FULLY POWERED by Intel® TECHNOLOGY UP CORE PLUS X86 AI PLUS FPGA AI CORE VPU Intel® Intel® Intel® Cyclone® MOVIDIUS™ Atom x5/x7 + 10 GX + Celeron/Pentium Myriad 2 Low Power Consumption Programmable Versatile Architecture Video Processing Unit Quad Core 64 bit x86 Architecture (Hardware Neural Network) Super Rich I/O GPU integrated Optimized for Machine Learning Good for CPU Offload, and Real Time Rich I/O Real Time High Speed Signal Analysis Pattern Recognition UP CORE PLUS Credit Card Form Factor Low Power Consumption 6th Generation Atom, Celeron Stackable & Expandable Pentium Quad Core 64 bit x86 Architecture GPU integrated Low Power Consumption Intel Sensor HUB Cost Effective Solution Support of Windows 10, Linux Ubuntu, Yocto, Debian UP CORE PLUS Intel® Atom™ x5 / x7 / Celeron ®/ Pentium ® 2/4/8 GB DDRL 4 Dual Channel 2.400 MHz 32/64/128 GB eMMC DP 4K@60 Hz eDP CSI 2 Lane + CSI 4 Lane USB 3.0 Type A USB 3.0 Type B WiFi 802.11 AC 2T2R 2 x 100 pin expansion connector Compatible with UP Core expansion board 12V DC In AI PLUS Programmable Versatile Architecture Rich high speed I/O Credit Card Expansion Board Hardened Floating Point Capabilities Good for CPU Off-loading Reach I/O Real Time
    [Show full text]
  • Artificial Intelligence Computing for Automotive Webcast for Xilinx Adapt: Automotive: Anywhere January 12Th, 2021
    From Technologies to Markets Artificial Intelligence Computing for Automotive Webcast for Xilinx Adapt: Automotive: Anywhere January 12th, 2021 © 2020 AGENDA • Scope • From CPU to accelerators to platforms • Levels of autonomy • Forecasts • Trends • Ecosystem • Conclusions Artificial Intelligence Computing for Automotive | Webcast for Xilinx Adapt: Automotive: Anywhere | www.yole.fr | ©2020 2 SCOPE Not included in the report Robotic cars Autonomous driving Data center computing Cloud computing Performance Understand the impact of Artificial Centralized computing Intelligence on the computing Level 5 Level 4 hardware for automotive Advanced Driver- Assistance Systems Driver environment Infotainment Level 3 (ADAS) Multimedia computing Level 2 Edge computing Computing close to Gesture Speech sensor recognition recognition Artificial Intelligence Computing for Automotive | Webcast for Xilinx Adapt: Automotive: Anywhere | www.yole.fr | ©2020 3 FROM GENERAL APPLICATIONS TO NEURAL NETWORKS The focus for the semiconductor industry is shifting from to General Applications + Neural Networks General workloads + Deep learning workloads • Integer operations + Floating operations • Tend to be sequential in nature + Tend to be parallel in nature Parallelization is key Scalar Engines Platforms and Accelerators explaining why Few powerful cores that tackle computing Hundred of specialized cores working in this is so tasks sequentially parallel popular Only allocate a portion of transistors for Most transistors are devoted to floating floating point operations
    [Show full text]
  • Synopsys and Movidius First-Pass Silicon Success for Myriad 2 Vision Processing Unit with Designware USB 3.0, LPDDR3/2 & MIPI D-PHY IP
    Success Story Synopsys and Movidius First-Pass Silicon Success for Myriad 2 Vision Processing Unit with DesignWare USB 3.0, LPDDR3/2 & MIPI D-PHY IP Selecting Synopsys DesignWare IP and design tools for our low-power, high-performance Myriad 2 VPU gave us peace of mind, a seamless and mature end-to-end design process, and most importantly, first-silicon success.” Sean Mitchell Chief Operating Officer, Movidius Business Benefits Movidius is a vision processor company that designs ``Focused design resources on their core compact, high-performance, ultra low power, competencies computational imaging and vision processing chips, ``Reduced integration risk and achieved first-pass software and development tools, and reference silicon success with DesignWare IP designs. Movidius’ architecture delivers a new wave ``Received excellent technical support from an of intelligent and contextually aware experiences expert team for consumers in mobile and wearable devices, robotics, and other consumer and industrial camera applications. Overview Movidius’ Myriad 2 vision processing unit (VPU) is Challenges designed for high-performance, low-power computer vision applications including wearable devices, ``Obtain a portfolio of proven IP solutions smartphones and tablets. Its unique combination of ``Differentiate the SoC by meeting aggressive power high performance, low power, and programmability and performance budgets enhance the image processing capabilities of ``Deliver a complex 28nm design on a tight timeline devices used in indoor navigation, 3D scanning, and immersive gaming with multi-aperture and multi- spectral cameras. Synopsys Solutions DesignWare® IP including: Movidius’ focus on mobile devices makes minimizing area and power consumption while maximizing ``MIPI D-PHY performance paramount. The Myriad 2 VPU offers ``USB 3.0 PHY and Dual Role Device Controller a small footprint that delivers high computational ``Gen2 DDR multiPHY supporting LPDDR3/2 and images with low power consumption.
    [Show full text]
  • Semi Autonomous Vehicle Intelligence: Real Time Target Tracking for Vision Guided Autonomous Vehicles
    Brigham Young University BYU ScholarsArchive Theses and Dissertations 2007-03-16 Semi Autonomous Vehicle Intelligence: Real Time Target Tracking For Vision Guided Autonomous Vehicles Jonathan D. Anderson Brigham Young University - Provo Follow this and additional works at: https://scholarsarchive.byu.edu/etd Part of the Electrical and Computer Engineering Commons BYU ScholarsArchive Citation Anderson, Jonathan D., "Semi Autonomous Vehicle Intelligence: Real Time Target Tracking For Vision Guided Autonomous Vehicles" (2007). Theses and Dissertations. 869. https://scholarsarchive.byu.edu/etd/869 This Thesis is brought to you for free and open access by BYU ScholarsArchive. It has been accepted for inclusion in Theses and Dissertations by an authorized administrator of BYU ScholarsArchive. For more information, please contact [email protected], [email protected]. SEMI AUTONOMOUS VEHICLE INTELLIGENCE: REAL TIME TARGET TRACKING FOR VISION GUIDED AUTONOMOUS VEHICLES by Jonathan D. Anderson A thesis submitted to the faculty of Brigham Young University in partial fulfillment of the requirements for the degree of Master of Science Department of Electrical and Computer Engineering Brigham Young University April 2007 BRIGHAM YOUNG UNIVERSITY GRADUATE COMMITTEE APPROVAL of a thesis submitted by Jonathan D. Anderson This thesis has been read by each member of the following graduate committee and by majority vote has been found to be satisfactory. Date Dah-Jye Lee, Chair Date James K. Archibald Date Doran K Wilde BRIGHAM YOUNG UNIVERSITY As chair of the candidate’s graduate committee, I have read the thesis of Jonathan D. Anderson in its final form and have found that (1) its format, citations, and bibliographical style are consistent and acceptable and fulfill university and department style requirements; (2) its illustrative materials including figures, tables, and charts are in place; and (3) the final manuscript is satisfactory to the graduate committee and is ready for submission to the university library.
    [Show full text]
  • A Comparative Analysis of Tightly-Coupled Monocular, Binocular, and Stereo VINS
    A Comparative Analysis of Tightly-coupled Monocular, Binocular, and Stereo VINS Mrinal K. Paul, Kejian Wu, Joel A. Hesch, Esha D. Nerurkar, and Stergios I. Roumeliotisy Abstract— In this paper, a sliding-window two-camera vision- few works address the more computationally demanding aided inertial navigation system (VINS) is presented in the tightly-coupled stereo VINS. To the best of our knowledge, square-root inverse domain. The performance of the system Leutenegger et al. [7] and Manderson et al. [10] present the is assessed for the cases where feature matches across the two-camera images are processed with or without any stereo only tightly-coupled stereo VINS, which operate in real- constraints (i.e., stereo vs. binocular). To support the com- time but only on desktop CPUs. Manderson et al. [10] parison results, a theoretical analysis on the information gain employ an extension of PTAM [11] where the tracking and when transitioning from binocular to stereo is also presented. mapping pipelines are decoupled, and hence is inconsistent.1 Additionally, the advantage of using a two-camera (both stereo On the other hand, Leutenegger et al. [7] propose a consistent and binocular) system over a monocular VINS is assessed. Furthermore, the impact on the achieved accuracy of different keyframe-based stereo simultaneous localization and map- image-processing frontends and estimator design choices is ping (SLAM) algorithm that performs nonlinear optimization quantified. Finally, a thorough evaluation of the algorithm’s over both visual and inertial cost terms. In order to maintain processing requirements, which runs in real-time on a mobile the sparsity of the system, their approach employs the follow- processor, as well as its achieved accuracy as compared to ing approximation: Instead of marginalizing the landmarks alternative approaches is provided, for various scenes and motion profiles.
    [Show full text]
  • Using Computer Vision in Retail Analytics
    Marcus Norrgård USING COMPUTER VISION IN RETAIL ANALYTICS MARCUS NORRGÅRD STRATACACHE OY Master of Science Thesis Supervisors: Annamari Soini, Johan Lilius Advisor: Niclas Jern Software Engineering Department of Information Technology Åbo Akademi University 2020 Marcus Norrgård ABSTRACT This thesis comprises the creation of a computer vision-based analytics platform for making age and gender-based inference for retail analytics. Computer vision in retail spaces is an emerging field with interesting opportunities for research. The thesis utilizes modern technologies to create a machine learning pipeline for training two convolutional neural networks for classifying age and gender. Furthermore, this thesis examines deployment and inference computing of the trained neural network models on a Raspberry Pi single board computer. The results presented in this thesis demonstrate the feasibility of the created solution. i Marcus Norrgård ACKNOWLEDGEMENTS I would like to thank professor Johan Lilius and my supervisor Annamari Soini for their help and guidance during the writing of this thesis. I would also like to thank my advisor Niclas Jern for his support and my employer Stratacache OY for giving me the opportunity to make this project a reality. Marcus Norrgård Turku, April 30, 2020 ii Marcus Norrgård Table of Contents ABSTRACT ....................................................................................................................... i ACKNOWLEDGEMENTS .............................................................................................
    [Show full text]
  • Cost-Effective Hardware Accelerator Recommendation for Edge Computing∗
    Cost-effective Hardware Accelerator Recommendation for Edge Computing∗ Xingyu Zhou, Robert Canady, Shunxing Bao, Aniruddha Gokhale Dept of EECS, Vanderbilt University, Nashville,TN (xingyu.zhou,robert.e.canady, shunxing.bao, a.gokhale)@vanderbilt.edu Abstract quire millions of operations for each inference [16]. Hardware accelerator devices have emerged as an alter- Thus, to maintain low latencies and compliance with native to traditional CPUs since they not only help per- the power sensitivity of edge deployment, smaller mod- form computations faster but also consume much less els [8] operating on more efficient hardware are pre- energy than a traditional CPU thereby helping to lower ferred [14]. To that end, hardware acceleration technolo- both capex (i.e., procurement costs) and opex (i.e., en- gies, such as field programmable gate arrays (FPGAs), ergy usage). However, since different accelerator tech- graphical processing units (GPUs) and application- nologies can illustrate different traits for different appli- specific integrated circuits (ASICs) among others, have cation types that run at the edge, there is a critical need shown significant promise for edge computing [20]. for effective mechanisms that can help developers select With the proliferation of different accelerator tech- the right technology (or a mix of) to use in their context, nologies, developers are faced with a significant which is currently lacking. To address this critical need, dilemma: which accelerator technology is best suited we propose a recommender system to help users rapidly for their application needs such that response times are and cost-effectively select the right hardware accelera- met under different workload variations, the overall cost tor technology for a given compute-intensive task.
    [Show full text]
  • Benchmarking of Cnns for Low-Cost, Low-Power Robotics Applications
    Benchmarking of CNNs for Low-Cost, Low-Power Robotics Applications Dexmont Pena, Andrew Forembski, Xiaofan Xu, David Moloney Abstract—This article presents the first known benchmark of Convolutional Neural Networks (CNN) with a focus on inference time and power consumption. This benchmark is important for low-cost and low-power robots running on batteries where it is required to obtain good performance at the minimal power consumption. The CNN are benchmarked either on a Raspberry Pi, Intel Joule 570X or on a USB Neural Compute Stick (NCS) based on the Movidius MA2450 Vision Processing Unit (VPU). Inference performance is evaluated for TensorFlow and Caffe running either natively on Raspberry Pi or Intel Joule and compared against hardware acceleration obtained by using the NCS. The use of the NCS demonstrates up to 4x faster inference time for some of the networks while keeping a reduced power Fig. 1: Embedded environments used to evaluate the inference consumption. For robotics applications this translates into lower time and power consumption of the CNNs. From left to right: latency and smoother control of a robot with longer battery NCS, Intel Joule 570X, Raspberry Pi 3 Model B. life and corresponding autonomy. As an application example, a low-cost robot is used to follow a target based on the inference obtained from a CNN. bedded platforms. Then we show an application of a low-cost follower robot. I. INTRODUCTION Recent advances in machine learning have been shown to II. RELATED WORK increase the ability of machines to classify and locate objects Current benchmarks for Deep Learning Software tools limit using Convolutional Neural Networks (CNN).
    [Show full text]
  • Exploring the Vision Processing Unit As Co-Processor for Inference
    Exploring the Vision Processing Unit as Co-processor for Inference Sergio Rivas-Gomez1, Antonio J. Pena˜ 2, David Moloney3, Erwin Laure1, and Stefano Markidis1 1KTH Royal Institute of Technology 2Barcelona Supercomputing Center (BSC) 3Intel Ireland Ltd. Abstract—The success of the exascale supercomputer is of the exascale supercomputer that we consider the embrace- largely debated to remain dependent on novel breakthroughs in ment of these developments in the near-term future. technology that effectively reduce the power consumption and thermal dissipation requirements. In this work, we consider the In this work, we set the initial steps towards the integra- integration of co-processors in high-performance computing tion of low-power co-processors on HPC. In particular, we (HPC) to enable low-power, seamless computation offloading of analyze the so-called Vision Processing Unit (VPU). This certain operations. In particular, we explore the so-called Vision type of processor emerges as a category of chips that aim to Processing Unit (VPU), a highly-parallel vector processor with provide ultra-low power capabilities, without compromising a power envelope of less than 1W. We evaluate this chip during inference using a pre-trained GoogLeNet convolutional performance. For this purpose, we explore the possibilities network model and a large image dataset from the ImageNet of the Movidius Myriad 2 VPU [13], [14] during inference in ILSVRC challenge. Preliminary results indicate that a multi- convolutional networks, over a large image dataset from the VPU configuration provides similar performance compared to ImageNet ILSVRC 2012 challenge [15]. In our evaluations, reference CPU and GPU implementations, while reducing the we use a pre-trained network from the Berkeley Vision and thermal-design power (TDP) up to 8× in comparison.
    [Show full text]
  • HETEROGENEOUS COMPUTING for AI at the EDGE Webinar Pasca Sarjana Terapan PENS 2 September 2020 Dr
    HETEROGENEOUS COMPUTING FOR AI AT THE EDGE Webinar Pasca Sarjana Terapan PENS 2 September 2020 Dr. –Ing. Arif Irwansyah, S.T., M.Eng. EEPIS-AI CURRICULUM VITAE Arif Irwansyah [email protected] ■ PENDIDIKAN : – S1 T. Elektro ITS, Surabaya – S2 Universitas Teknologi Malaysia – S3 Universitaet Bielefeld, Jerman ■ Pengalaman: – Asisten Peneliti di UTM Malaysia (2007-2009) – Asisten Peneliti di Univ. Paderborn Jerman (2010- 2011) – Asisten Peneliti di Univ. Bielefeld Jerman (2012 – 2016) – Dosen dan Peneliti di PENS (2001 sd saat ini) ■ Bidang Penelitian: – Embedded Vision – Reconfigurable Hardware (FPGA) – Heterogeneous Embedded Systems Background ■ Nowadays, Many applications are required high performance computations. The AI Car Computer for Self-Driving Vehicles Drones Robotics Video Analytic EEPIS-AI Cloud Platform EEPIS-AI Benefits: Faster response Enhanced security Improved mobility Lower communication costs Courtesy: ADLINK Why Heterogeneous Computing is Needed? ■ There are some application's that cannot be fulfilled when using only one type of computing core. ■ Typical Constraints: – Performance / speed – Power Consumptions – Dimension / Size EEPIS-AI ■ Growth in processor performance EEPIS-AI EEPIS-AI Heterogeneous Computing – Systems that employ more than one different computing cores (architecture) – These are multi-core system that gain performance not just by adding cores, but also by incorporating specialized processing capabilities to handle particular tasks. – Diverse types of processors or hardware accelerators cooperate to accelerate the computational tasks – Potentially reduce the power consumption and maximize the computing performance EEPIS-AI HETEROGENEOUS COMPUTING: EEPIS-AI Central processing unit (CPU) Graphics processing unit (GPU) Field programmable gate array (FPGA) Application-specific integrated circuit (ASIC) Application-specific integrated circuit (ASIC) ASICs are custom logic chips designed using a manufacturer’s circuit libraries.
    [Show full text]