Automated Attendance System Using Deep Learning

From Psych 221 Image Systems Engineering
Revision as of 19:12, 14 December 2018 by imported>Student2018 (Introduction)
Jump to navigation Jump to search

Introduction

Edge devices such as drones, IoT devices and cameras are becoming ubiquitous and playing an important role in our daily lives. For example, these devices are used more and more frequently for sensing tasks such as target tracking or object detection. These tasks require low latency and tend to be computationally and power consuming. Due to the real-time nature of the tasks and the limited power and computation capabilities of the edge devices, the edge devices offload the large amounts of collected sensory raw data to the cloud or to a centralized data-center, where it is processed and analyzed.

In this project we are interested in building an automated attendance prototype system. The system is constructed from two main hardware components, the camera (edge device) and the cloud. The camera takes photos of all the students entering the class and sends them to the cloud. In the cloud, these images are processed using state-of-the-art Convolutional Neural Networks (CNN). This design is optimal when the data transfer rate is high, and the raw data reaches the cloud in a timely manner. However, in real scenarios, the data is sent over bandwidth-constrained and fluctuating networks. Therefore, we are interested in analyzing the relationship between image compression (such as JPEG) and the accuracy of inference models.



Background

Results

Original image (29KB).
Compressed image with a quality factor of 10 (4KB).
File:SizeReductionVsQuality.png

Conclusions

Data compression is paramount in sharing data between devices in an efficient and quick manner. Therefore, data compression is used everywhere over the internet. In this project, we were interested in understanding how different JPEG compression quality affect the accuracy of inference models. We were surprised to find out that with 90% in image size reduction, one can achieve over 80% of inference accuracy. We believe that with a more comprehensive dataset and by improving the inference model, we can achieve higher accuracy levels for significantly compressed images. Such compression will enable the automated attendance system to scale-up efficiently to numerous cameras taking images of students simultaneously, without degrading the performance of any edge device or being too computationally expensive.

Appendix

In this project, we also analyzed how different blur techniques affect the inference accuracy. As with JPEG compression, we used OpenCV library to blur the images. We used three types of blurring techniques: average, median and Gaussian. Average blurring is done by convolving the image with a kernel of size k×k. This type of blurring replaces the center element with the average of the pixel values under the kernel area. Median blurring is similar to average blurring, but, the central value is replaced with the median value under the kernel area. Gaussian blurring convolves the image with a Gaussian kernel. In this part we tried to convolve the image with different kernel sizes and compare between the different blurring techniques.

Accuracy According to Blur Type (%)
Kernel Size Average Median Gaussian
5 85.7142 77.5510 89.7959
7 67.3469 63.2653 79.5918
9 61.2245 57.1429 75.5102
11 53.0612 44.8979 69.3877
15 38.7755 34.6939 67.3469
21 30.6122 32.6530 51.0204
27 20.4081 30.6122 38.7755
(From left to right) Average, Median and Gaussian blur, (from top to bottom) blur level 5 and 27.