MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    Facial Recognition - customize your mirror for every user!

    Scheduled Pinned Locked Moved Troubleshooting
    215 Posts 55 Posters 520.2k Views 57 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • PointPubMediaP Offline
      PointPubMedia
      last edited by

      I put the welcomeMessage in my config.js after updating but still can’t see the welcome message…

      tosti007T 1 Reply Last reply Reply Quote 0
      • R Offline
        reaper81
        last edited by

        To update your module i have to use: “git pull https://github.com/paviro/MMM-Facial-Recognition” ?

        1 Reply Last reply Reply Quote 0
        • tosti007T Offline
          tosti007 Module Developer @PointPubMedia
          last edited by

          @PointPubMedia The welcome message means that it shows a notification when changing to a different user.
          @reaper81 if you are in the right folder you dont have to give the link, just git pull should be enough

          If there is anything don't hesitate to contact me!
          ProfileSwitcher, TouchNotifications

          PointPubMediaP 1 Reply Last reply Reply Quote 0
          • PointPubMediaP Offline
            PointPubMedia @tosti007
            last edited by

            @tosti007 said in Facial Recognition - customize your mirror for every user!:

            @PointPubMedia The welcome message means that it shows a notification when changing to a different user.
            @reaper81 if you are in the right folder you dont have to give the link, just git pull should be enough

            Yeah know that, but since the last update it’s not working even with the welcomeMessage: true

            tosti007T 1 Reply Last reply Reply Quote 0
            • tosti007T Offline
              tosti007 Module Developer @PointPubMedia
              last edited by

              @PointPubMedia I gave a look at his code and noticed he made an small mistake. I will send him a message so the problem should be solved as soon as he sees it. For the time being (which, again, probably won’t be long) you just won’t see a message :)

              If there is anything don't hesitate to contact me!
              ProfileSwitcher, TouchNotifications

              1 Reply Last reply Reply Quote 0
              • paviroP Offline
                paviro
                last edited by paviro

                Sorry guys :D Has been a while since I last coded MM modules… It’s fixed now :)
                @benkej Could you provide me a zip containing your complete MM directory?

                We're all stories in the end. Just make it a good one, eh?

                – The Doctor

                B 1 Reply Last reply Reply Quote 0
                • B Offline
                  benkej @paviro
                  last edited by benkej

                  @paviro sure, thank you!
                  here are my MMM-Facial-Recognition-Tools and MMM-Facial-Recognition folders in tar.bz2 format. My config is included in the second archive.

                  1 Reply Last reply Reply Quote 0
                  • PointPubMediaP Offline
                    PointPubMedia
                    last edited by

                    @paviro You think it would be possible to display somewhere in MM2 the output from the camera at the same time as your module with a “debug” option?

                    It would be easier to place the camera at the right location while working on MM!

                    1 Reply Last reply Reply Quote 1
                    • S Offline
                      s1084836
                      last edited by yawns

                      Hello,

                      Thanks for building this great module. When I run the “npm start” I keep getting the following message:

                      [MMM-Facial-Recognition] Webcam Found...
                      [MMM-Facial-Recognition] User undefined with confidence null logged in.
                      [MMM-Facial-Recognition] User undefined logged out.
                      [MMM-Facial-Recognition] User undefined with confidence null logged in.
                      [MMM-Facial-Recognition] User undefined logged out.
                      [MMM-Facial-Recognition] User undefined with confidence null logged in.
                      

                      Sometimes it regoonizes my face, but it is like a 1/1000 change. I’m wondering why, when I run the test script my it recognizes my face really fast and always. I uploaded like 350 photo’s. I’ve tryed diffrend back grounds, with enough light.

                      I just dont understand why it won’t see my face while the test script is 95% of the time right.

                      My config File:

                      `/* Magic Mirror Config Sample
                       *
                       * By Michael Teeuw http://michaelteeuw.nl
                       * MIT Licensed.
                       */
                      
                      var config = {
                      	port: 8080,
                      
                      	language: 'en',
                      	timeFormat: 24,
                      	units: 'metric',
                      
                      	modules: [
                      
                      		{
                      			module: 'clock',
                      			position: 'top_left',
                      			classes: 'default',
                      		},
                      
                      		
                      		{
                      		    module: 'MMM-Facial-Recognition',
                      		    classes: 'default',
                      			config: {
                      		        // 1=LBPH | 2=Fisher | 3=Eigen
                      		        recognitionAlgorithm: 1,
                      		        // Threshold for the confidence of a recognized face before it's considered a
                      		        // positive match.  Confidence values below this threshold will be considered
                      		        // a positive match because the lower the confidence value, or distance, the
                      		        // more confident the algorithm is that the face was correctly detected.
                      		        lbphThreshold: 50,
                      		        fisherThreshold: 250,
                      		        eigenThreshold: 3000,
                      		        // force the use of a usb webcam on raspberry pi (on other platforms this is always true automatically)
                      		        useUSBCam: true,
                      		        // Path to your training xml
                      		        trainingFile: '/home/pi/Desktop/MagicMirror/modules/MMM-Facial-Recognition/training.xml',
                      		        // recognition intervall in seconds (smaller number = faster but CPU intens!)
                      		        interval: 1,
                      		        // Logout delay after last recognition so that a user does not get instantly logged out if he turns away from the mirror for a few seconds
                      		        logoutDelay: 5,
                      		        // Array with usernames (copy and paste from training script)
                      		        users: ['test', 'tom', 'Tom'],
                      		        //Module set used for strangers and if no user is detected
                      		        defaultClass: "default",
                      		        //Set of modules which should be shown for every user
                      		        everyoneClass: "everyone"
                      			
                      		    }
                      		},
                      		
                      
                      		{
                      		        module: 'helloworld',
                      		        position: 'lower_third', // This can be any of the regions.
                      			classes: 'default',
                      		        config: {
                      		            // See 'Configuration options' for more information.
                      		            text: 'OMG, look at you!'
                      		     }
                        		},
                      
                      
                      		{
                      			module: 'compliments',
                      			position: 'upper_third',
                      			classes: 'Tom',
                      		},
                      
                      
                      			{
                      			module: 'newsfeed',
                      			position: 'bottom_left',
                      			classes: 'Tom',
                      			config: {
                      				feeds: [
                      					{
                      						title: "Nu Algemeen nieuws!",
                      						url: "http://www.nu.nl/rss/Algemeen"
                      					}
                      				],
                      				showSourceTitle: true,
                      				showPublishDate: true
                      			
                      			}
                      		},
                      		
                      		
                      	]
                      
                      };
                      
                      /*************** DO NOT EDIT THE LINE BELOW ***************/
                      if (typeof module !== 'undefined') {module.exports = config;}
                      
                      B 1 Reply Last reply Reply Quote 0
                      • B Offline
                        benkej @s1084836
                        last edited by

                        @s1084836 like my mirror. I have the same problem

                        S 1 Reply Last reply Reply Quote 0
                        • S Offline
                          s1084836 @benkej
                          last edited by

                          @benkej Oh, its really strange. Did you manage to work around it?

                          B 1 Reply Last reply Reply Quote 0
                          • B Offline
                            benkej @s1084836
                            last edited by

                            @s1084836 unfortunately not. I switched off the facial recognition

                            1 Reply Last reply Reply Quote 0
                            • Y Offline
                              yakko2001
                              last edited by

                              Hey,

                              my issue is, i cannt select my USB Cam.
                              I set “useUSBCam” to “true”, but still get piCam as the choosen one. (PiCam ausgewählt)

                              MMM-Facial-Recognition] ALGORITHM: LBPH
                              [MMM-Facial-Recognition] Training data loaded!
                              [MMM-Facial-Recognition] --------------------
                              [MMM-Facial-Recognition] PiCam ausgewählt...
                              Whoops! There was an uncaught exception...
                              { Error: mmal: mmal_vc_component_create: failed to create component 'vc.ril.camera' (1:ENOMEM)
                              
                              
                              {
                              		    module: 'MMM-Facial-Recognition',
                              		    config: {
                              		        // 1=LBPH | 2=Fisher | 3=Eigen
                              		        recognitionAlgorithm: 1,
                              		        // Threshold for the confidence of a recognized face before it's considered a
                              		        // positive match.  Confidence values below this threshold will be considered
                              		        // a positive match because the lower the confidence value, or distance, the
                              		        // more confident the algorithm is that the face was correctly detected.
                              		        lbphThreshold: 50,
                              		        fisherThreshold: 250,
                              		        eigenThreshold: 3000,
                              		        useUSBCam: true,
                              		        // Path to your training xml
                              		        trainingFile: 'modules/MMM-Facial-Recognition/training.xml',
                              		        // recognition intervall in seconds (smaller number = faster but CPU intens!)
                              		        interval: 2,
                              		        // Logout delay after last recognition so that a user does not get instantly logged out if he turns away from the mirror for a few seconds
                              		        logoutDelay: 15,
                              		        // Array with usernames (copy and paste from training script)
                              		        users: ['Yakko'],
                              		        //Module set used for strangers and if no user is detected
                              		        defaultClass: "default",
                              		        //Set of modules which should be shown for every user
                              		        everyoneClass: "everyone",
                              		        // Boolean to toggle welcomeMessage
                              		        welcomeMessage: true
                              		    }
                              		},
                              

                              Any Ideas how to force it to take my USB cam?
                              Thanks,
                              Yakko

                              1 Reply Last reply Reply Quote 0
                              • piedanielP Offline
                                piedaniel
                                last edited by

                                Hi everyone. I try to make work the face recognition but always tell me that I´m strange, but when I do test with the facialreconition.py test alway recognize me. Someone know why I have this problem? How can I solve the problem? Thanks

                                1 Reply Last reply Reply Quote 0
                                • E Offline
                                  eliddell
                                  last edited by

                                  I have not loaded this on the mirror yet but did you change the face users and algorithm on the mirror and it’s config?

                                  I’m having an issue where if I train it to recognize two different people the test script recognizes both as the same person :(

                                  strawberry 3.141S 1 Reply Last reply Reply Quote 0
                                  • strawberry 3.141S Offline
                                    strawberry 3.141 Project Sponsor Module Developer @eliddell
                                    last edited by

                                    @eliddell you must be twins :D

                                    Please create a github issue if you need help, so I can keep track

                                    1 Reply Last reply Reply Quote 0
                                    • E Offline
                                      eliddell
                                      last edited by

                                      Actually I found a problem in the config.py

                                      If I comment out the line i= min(0, i-1) and return i-1 in the user_label method it works… Now just want to make sure we don’t get an index out of bounds…

                                      Not terribley familiar with python. So what does that min(int, int) do exactly

                                      1 Reply Last reply Reply Quote 0
                                      • B Offline
                                        b00002561
                                        last edited by

                                        Hi, I seem to be having an issue when trying to implement the face recognition tester. When I run the tester on the file I am getting an error, I cannot seem to resolve it.

                                        This is what displays in terminal:

                                        Loading training data...
                                        
                                        ALGORITHM: LBPH
                                        
                                        Training data loaded!
                                        
                                        Picam selected...
                                        
                                        Traceback (most recent call last):
                                        
                                        File "facerecognition.py", line 61, in 
                                        
                                        label, confidence = model.predict(crop)
                                        
                                        TypeError: 'int' object is not iterable
                                        

                                        My picamera stays active but I can see that it has stopped on my face in the background, Do you have any idea how to resolve this issue, as I am at a loss here.

                                        1 Reply Last reply Reply Quote 0
                                        • J Offline
                                          j.e.f.f Project Sponsor Module Developer
                                          last edited by

                                          Hello

                                          This module looks freaking amazing!! I want to give this a try, but I have a few questions that I haven’t been able to find answers for.

                                          • Do you recommend I used the NoIR camera, or just the regular Pi Camera? The mirror will be in my front hall by the doorway, under what should be adequate light whenever someone will want to use it. No expectation that this should work in the dark

                                          • Where is the best place to mount the camera? My mirror will be based on a 32" TV mounted such that the top of the frame would be slightly higher than my eye level (I’m 188 cm tall), and my wife’s eye level would be at about the halfway point of the mirror. I also have two young boys, aged 8 and 6 and I’d want the camera to recognize them as well. I’m thinking of either mounting the camera on the frame at the top of the mirror, aimed slightly downward, or on one side of the frame at about the vertical center of the mirror. I’ve also read about people mounting the camera behind the mirror, but with mixed results. If that is an option, I could theoretically mount the camera right in the center of the mirror. What’s the best way to route the cable in this case? I don’t plan on having anything in the middle of the screen from the top down to about the center, so I could run the cable from the camera straight up and over the top of the screen. Suppose I would need to colour the cable black or purchase a black cable. Anyone have insight here?

                                          • Given that the Pi Camera has a relatively narrow field of view (approx 35 mm) would you suggest I use one of those phone camera wide angle attachments so that the cam can pick up a wider image and have a better chance of getting the face in the image, or do I just increase the likelihood that several faces will be in the picture, defeating the facial recognition routine?

                                          Thanks!
                                          -Jeff

                                          bheplerB 1 Reply Last reply Reply Quote 0
                                          • A Offline
                                            Advokaten
                                            last edited by

                                            Hey! I managed to ‘complete the training’ and copied training.xml into the modules folder, it recognized my face during testing and everything, however, I get this error when doing npm start and I have no clue what it means:

                                            Starting MagicMirror: v2.1.1
                                            Loading config ...
                                            Loading module helpers ...
                                            Initializing new module helper ...
                                            Module helper loaded: MMM-Facial-Recognition
                                            No helper found for module: clock.
                                            No helper found for module: compliments.
                                            All module helpers loaded.
                                            Starting server on port 8080 ... 
                                            Starting server op port 8080 ... 
                                            Server started ...
                                            Connecting socket for: MMM-Facial-Recognition
                                            Staring module helper: MMM-Facial-Recognition
                                            Sockets connected & modules started ...
                                            Launching application.
                                            [MMM-Facial-Recognition] Facerecognition started...
                                            [MMM-Facial-Recognition] Loading training data...
                                            [MMM-Facial-Recognition] ALGORITHM: LBPH
                                            [MMM-Facial-Recognition] Training data loaded!
                                            [MMM-Facial-Recognition] --------------------
                                            [MMM-Facial-Recognition] Webcam ausgewählt...
                                            Whoops! There was an uncaught exception...
                                            { Error: TypeError: Required argument 'device' (pos 1) not found
                                                at PythonShell.parseError (/home/pi/MagicMirror/modules/MMM-Facial-Recognition/node_modules/python-shell/index.js:183:17)
                                                at terminateIfNeeded (/home/pi/MagicMirror/modules/MMM-Facial-Recognition/node_modules/python-shell/index.js:98:28)
                                                at ChildProcess. (/home/pi/MagicMirror/modules/MMM-Facial-Recognition/node_modules/python-shell/index.js:88:9)
                                                at emitTwo (events.js:106:13)
                                                at ChildProcess.emit (events.js:191:7)
                                                at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
                                                ----- Python Traceback -----
                                                File "modules/MMM-Facial-Recognition/facerecognition/facerecognition.py", line 63, in 
                                                  camera = config.get_camera()
                                                File "/home/pi/MagicMirror/modules/MMM-Facial-Recognition/facerecognition/config.py", line 57, in get_camera
                                                  return webcam.OpenCVCapture(device_id=0)
                                                File "/home/pi/MagicMirror/modules/MMM-Facial-Recognition/facerecognition/webcam.py", line 31, in __init__
                                                  self._camera.open()
                                              traceback: 'Traceback (most recent call last):\n  File "modules/MMM-Facial-Recognition/facerecognition/facerecognition.py", line 63, in \n    camera = config.get_camera()\n  File "/home/pi/MagicMirror/modules/MMM-Facial-Recognition/facerecognition/config.py", line 57, in get_camera\n    return webcam.OpenCVCapture(device_id=0)\n  File "/home/pi/MagicMirror/modules/MMM-Facial-Recognition/facerecognition/webcam.py", line 31, in __init__\n    self._camera.open()\nTypeError: Required argument \'device\' (pos 1) not found\n',
                                              executable: 'python',
                                              options: null,
                                              script: 'modules/MMM-Facial-Recognition/facerecognition/facerecognition.py',
                                              args: [ '{"recognitionAlgorithm":1,"lbphThreshold":50,"fisherThreshold":250,"eigenThreshold":3000,"useUSBCam":true,"trainingFile":"modules/MMM-Facial-Recognition/training.xml","interval":2,"logoutDelay":15,"users":["Alex"],"defaultClass":"default","everyoneClass":"everyone","welcomeMessage":true}' ],
                                              exitCode: 1 }
                                            MagicMirror will not quit, but it might be a good idea to check why this happened. Maybe no internet connection?
                                            If you think this really is an issue, please open an issue on GitHub: https://github.com/MichMich/MagicMirror/issues
                                            
                                            
                                            
                                            1 Reply Last reply Reply Quote 0

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • 1
                                            • 2
                                            • 6
                                            • 7
                                            • 8
                                            • 9
                                            • 10
                                            • 11
                                            • 8 / 11
                                            • First post
                                              Last post
                                            Enjoying MagicMirror? Please consider a donation!
                                            MagicMirror created by Michael Teeuw.
                                            Forum managed by Sam, technical setup by Karsten.
                                            This forum is using NodeBB as its core | Contributors
                                            Contact | Privacy Policy