Updates:
Facial Recognition: (Ryan, Kurtis, Brad)
Facial recognition is mostly working, however there is one big hiccup. If a new user walks up to the mirror, we expect the facial recognition algorithm to not find a match. Instead, this new user may be misidentified as an existing profile. This is a strange issue because once the user is registered with the mirror, the identification works great.
To debug this issue we have tried a number for tactics.
- Changing thresholds for valid face detection
- Different algorithms for face detection using OpenCV
- Changing camera resolution
- Adding more pictures to the repository for recognition
Nothing has worked so far. We have an inkling that it could be because the version of OpenCV we are using. We are using version 2.4, however there is a newer OpenCV 3 that is known to have improved algorithms for face detection. We will be installing this new version to see if we have noticable improvements in new user detection.
Mobile Application: Updates (Brandon)
The web server on the Raspberry Pi is now up and running. The HTML login form is accessible on the web server when the Magic Mirror is running to users on a smartphone, tablet, or laptop. Below are images of the login form accessed through an iPhone.

Gesture Control (Ryan, Kurtis)
We ordered the gesture sensor at Hover, (shown below). The product should be in our hands for gesture-sensing development within a week.

Smart Mirror ON/OFF Protocol (Brad)
Initially, we were planning to use our camera to continuosly run in order to detect motion. The motion would be used to determine whether the MagicMirror should be ON. However, after some more thought, we realized that there may be a problem in the mirror running multiple modules concurrently. We’d have to figure out how to run both the facial detection module and the proximity-sensor like module at the same time to let the mirror know when it should turn off. Instead of worrying about the cross-functionality between two modules, we decided that it’d be simpler to use a seperate piece of hardware to handle the ON/OFF functionality. We found a module online and implemented it into our mirror.

Next Steps:
Facial Recognition: (Ryan, Kurtis, Brad)
For the most part, facial recognition is fully implemented on our MagicMirror. Once we get the facial detection algorithm working the way that we want to, we are planning to automate the profile creation process which is currently run through two seperate python scripts. With just one script that consolidates all the of the actions needed for training the facial detection system, profile creation should be seamless if the mirror ever recognizes an unknown user.
Mobile Application: (Brandon)
Incorporating the PHP and MySQL into the Login form is underway to determine whether the user has a profile on the Magic Mirror. Creating a Registration form with the same backend PHP and MySQL is also being worked on for new users to create a profile and customize.
Gesture Control: (Ryan, Kurtis)
Currently, we are brainstorming functionality for the gestures that we can use to interface with our MagicMirror. One idea that we had was to use it to drag-and-drop to customize each user’s profile. We will probably discover user inputs that we will need in the future as we continue to develop our mirror.
Smart Mirror ON/OFF Protocol (Brad)
The way that the module turns “off” our mirror makes our monitor display an ugly image stating that there is no signal from the HDMI. We are planning to change the brightness of the screen in order to simulate the ON/OFF functionality in order to alleviate this problem. We are hoping to get this proximity sensor module fully integrated into the MagicMirror by the end of the week.