Updates:


Facial Recognition: (Ryan, Kurtis, Brad)

Last week we thought we fixed our main face detection issue. The issue was that a stranger standing in front of the mirror gave us a false positive and identified them as an existing user. The mirror seemed to work with a few of the strangers we tested, but of course when we tried to demo it to the TA’s it gave us false positives again. We need to improve this so that we can pass our mother of all demos, which involves setting a stranger up with a new profile. So far we have tried adjusting thresholds and including more negative photos to avoid false positives, but we still aren’t getting consistently good results.

The other aspect of the face recognition is the training procedure itself. Currently, to train the data you need to run commands on the terminal to activate python scripts. We would like the user to have the ability to set up the training by interacting with the mirror itself through a touch sensor. Currently we are writing python scripts to automate this process. The tough part is integrating these python scripts with the node.js server that is running our smart mirror application. To accomplish this we are looking into the python-shell package. So far the script is able to capture the necessary images, but next we need to automate the processing these images.

Mobile Application: Updates (Brandon)

Currently the Web App works independently. However, after the “Registration” button is pushed, the Web App needs to signal the Smart Mirror to begin capturing photos for the new user. The major issues currently is that the Apache Web Server cannot access files outside of its Root Directory. Finding ways to give the Web App permission to call scripts inside the Smart Mirror directory of the Pi has been the major debugging task for this past week.

Gesture Control (Ryan, Kurtis, Brad)

The Hover gesture sensor has finally arrived (Monday) and development has already started for when we get the sensor in our hands. The JS, Python, Node.JS, and package.json files were coded up with reference from other modules that we have. Assuming these portions do not have any bugs, the only aspect that gesture control will need to be functional is the code for what we want the gesture sensor to do for each gesture. This will be located in the modules that we want the gesture signals to be sent to in their notificationReceived functions.

Smart Mirror ON/OFF Protocol (Brad)

No Updates

Smart Mirror Frame (Ryan, Kurtis, Brandon, Brad)

We are planning to measure the dimensions of the screen needed on Thursday. On Friday, Brad will purchase and pick up the acrylic frame from TAP plastics.


Next Steps:


Facial Recognition: (Ryan, Kurtis, Brad)

We still need to troubleshoot why strangers are being recognized as false positives. There are so many variables on what could cause the issue- busy background, lighting changes, negative image issues, etc. We just need to start testing possible issues and narrowing down the cause.

Next week we will work on finalizing the training protocol and hopefully will start including visual feedback to the user during this process.

Mobile Application: (Brandon)

Ryan currently has the signal for the python script that will initiate capturing of photos for a new user ready. My PHP file needs to signal to the python script after the “Registration” button on the Web App is pressed. Permission issues continue to be a major roadblock for this current task.

After successfully calling the training script, tying the username that was entered through the Web App to the collection of photos and their saved settings through the Remote Control Web App for the user is the next step.

Gesture Control: (Ryan, Kurtis, Brad)

Our group still needs to decided and finalize what we want to do with gestures from the gesture sensor. From there, we will need to handle the signals that our built Hover module sends out. We will also have to do the wire hookups for the sensor.

The pinout between the Hover and the Raspberry Pi 3 is as follows:

  • Hover - Raspberry Pi 3
  • HOST_V+ - Pin #02 (5V Pin)
  • 3.3 V - Pin #01 (3.3V Pin)
  • GND - Pin #09 (Ground)
  • TS - GPIO6 (Normal GPIO)
  • RESET - GPIO05 (Normal GPIO)
  • LED - None (Gestures will be defined as received through the software)
  • SCL - GPIO03 (SCL1, I2C)
  • SDA - GPIO02 (SDA1, I2C)

Smart Mirror ON/OFF Protocol (Brad)

Our group still needs to tweak the protocol so that the mirror turns on and off for appropriate distances and time. Also, we will need to implement a way for the proximity sensor module to run while the mirror is in the idle state. We plan to use CEC protocol to toggle the monitor ON/OFF through HDMI.

Smart Mirror Frame (Ryan, Kurtis, Brandon, Brad)

We will delay finalizing the frame until the rest of the mirror software is completed (Week 9/10).