1 of 10

MaskMatcher

By: Connor Johst, Joshua Wu, Aaditya Suri, and Eran Deutsch

2 of 10

What is MaskMatcher?

MaskMatcher is an IOT device that can lock or unlock a door based on if a customer is following a store’s mask policy.

3 of 10

MaskMatcher - Use and Functionality

  • Some businesses or organisations may want to go above and beyond current Provincial health guidelines.
  • Enforcement could become an issue in areas where mask mandates differ store to store such as malls
  • MaskMatcher handles enforcement so it does not become a staffing concern.
  • We use a camera to detect if a person is wearing a mask, and send a signal to unlock a door if MaskMatcher determines they are in compliance with our stores mask policy.
  • Our web app makes administration easy!
  • We embed a live feed so MaskMatcher can double as a security camera.

4 of 10

Signing in

5 of 10

Signing up

6 of 10

Authentication UI

  • Used Flask-Login library which provides user session management for the MaskMatcher dashboard
  • Used Flask-SQLAlchemy to represent the user model of the app and interface with the SQLite database
  • Emphasizes as an administrative dashboard rather than a customer-facing dashboard

7 of 10

Home Page

  • The livestream image is received via Python Websocket
  • MaskMode OFF: turns off the mask detection feature
  • Locked: does not permit any entry
  • Override: temporary override the lock to allow anyone to enter
  • Green circle indicates if door is open

8 of 10

Hardware implementation and networking

  • The Raspberry Pi uses a program called Motion in order to create a livestream of the camera feed. It uses OpenCV in order to process the livestream and return individual frames.
  • We used Python Websockets in order to communicate between the Raspberry Pi and the server. The images from the livestream were converted into byte arrays, and then sent to the server every second.

Raspberry Pi

Virtual Machine

Livestream Image

Mask Prediction

Lock/Unlock the door

9 of 10

Mask Detection - How it works?

  • Uses the openCV library and Haar cascade to detect eyes. The eyes are an indicator of a face in the frame, it only runs the Neural Network to detect masks after a face is detected.
  • When the model is run, it provides a confidence interval for each category
  • If the confidence of the image predicted as with a mask is above 90%, the image is detected as with a mask
  • The model is trained on a large dataset of over 4000 images in each category, we were able to achieve close to a 92% accuracy while testing. This dataset also goes under multiple different transforms to increase accuracy for different sets of images.

10 of 10

Concluding Remarks!

We hope that you’ve enjoyed our presentation.

We welcome any feedback and questions regarding the design.

Thank you very much for listening!