MagicMirror² v2.4.1 is available! For more information about this release, check out this topic.
Please read the release notes carefully since this update requires adjustments to your Raspberry Pi configuration!

Facial Recognition - Where do elements go go?

  • Hi

    Can someone give me a bit of help getting this going please?
    I’m making a real rookie mistake here I’m sure - This is the first module I’ve tried to add in after getting the modules in the sample config file configured & working.

    I’ve put the main(?) module folder called MMM-Facial-Recognition-master in /home/pi/MagicMirror/modules/default/.
    I’ve installed the dependencies OK.
    I’ve used the tool to create the training images.
    I’ve added my ‘name’ to the facerecognition_tester/lib/ file
    I’ve used the trainer to create the XML file.

    The next step in the test tool instructions have me stuck though:
    "2. Copy your training.xml from tools/facetrainer into the root folder of this tool."
    And having added the module info to the MagicMirror conf file all I get is a blank screen now.

    So, some questions please:
    Is the MMM-Facial-Recognition-master folder in the right place?
    Is anything from the capture, training, and testing tools required for the module to work other than the xml file?
    If not, why does adding the config for the face recognition module to config.js result in a completely blank output on the mirror?

    With regards to the testing tool…
    There is no ‘tools’ folder. Does it have to be in a folder called ‘tools’? If so, where should it be?
    When I try to use the test tool I get this error:
    pi@MirrorPi3:~/MagicMirror/Tools/facerecognition_tester $ python
    Loading training data…
    Training data loaded!
    OpenCV Error: Assertion failed (scn == 3 || scn == 4) in cvtColor, file /build/opencv-ISmtkH/opencv-, line 3737
    Traceback (most recent call last):
    File “”, line 42, in
    image = cv2.cvtColor(frame, cv2.COLOR_RGB2GRAY)
    cv2.error: /build/opencv-ISmtkH/opencv- error: (-215) scn == 3 || scn == 4 in function cvtColor

    Any idea what the issue is here?

    Many thanks,

  • Moderator

    No modules get installed in the /modules/default folder, just in /modules.

  • Many thanks @KirAsh4 .
    I’ve tried it there, still no joy though…

  • Moderator

    Yeah, you’d have to ask the module’s author for help, or others who use this module.

  • Module Developer

    From one rookie to another:

    I had to add ‘classes’ in config.js with ‘default’, ‘for_all’ or person’s name in all modules I wanted to be shown.


                        module: 'alert',
                        classes: 'default'

  • Moderator

    That should not be necessary. If you had to do that and MM² loaded up after that, then there’s something seriously wrong with the module for it to “leak” like that.

  • Admin

    It is because I hide every module that is not for everyone at startup.
    default modules are for users that are not recognized or if there is no user at all.
    for_all are modules shown for everyone.

  • Module Developer

    @paviro Would it make more sence to say that no “classes” equals to “default” and therefore would be visible?

  • Admin

    @Cato i think there was a reason why I did not do that but if you would like to look into it you can send me a pull request! 🙂

  • Hello,

    I’m trying to use facial trainer but i got this error ( when executing python
    reference :

    What do you want to do?
    [1] Capture training images from webcam
    [2] Convert ‘*.jpg’ pictures from other cameras to training images
    –> 1

    Enter the name of the person you want to capture or convert images for.
    –> plumcraft
    Images will be placed in ./training_data/plumcraft

    Starting process…

    Capturing positive training images.
    Press enter to capture an image.
    Press Ctrl-C to quit.

    Capturing image…
    OpenCV Error: Assertion failed (scn == 3 || scn == 4) in cvtColor, file /build/opencv-ISmtkH/opencv-, line 3737
    Traceback (most recent call last):
    File “”, line 35, in
    File “/home/pi/MMM-Facial-Recognition-Tools/facetrainer/lib/”, line 57, in capture
    image = cv2.cvtColor(image, cv2.COLOR_RGB2GRAY)
    cv2.error: /build/opencv-ISmtkH/opencv- error: (-215) scn == 3 || scn == 4 in function cvtColor

    I’m using a raspberry pi 3 with pi camera.

    Looking forward to use this module.