Code Monkey home page Code Monkey logo

Comments (24)

Leviathan3DPrinting avatar Leviathan3DPrinting commented on July 22, 2024

Also I installed everything correctly and I can import facial_recognition into both python and python3
Also running
$ python3 learn.py
Completes successfully

from howdy.

boltgolt avatar boltgolt commented on July 22, 2024

Could you try running the compare ("compair") script directly with python3 /home/USER/howdy/compair.py? It might still have PATH issues with the pam-python container.

from howdy.

Leviathan3DPrinting avatar Leviathan3DPrinting commented on July 22, 2024

$ python3 /home/USER/howdy/compair.py
$
I believe it runs it doesn't have an error just brings me back to the shell promp

from howdy.

Leviathan3DPrinting avatar Leviathan3DPrinting commented on July 22, 2024

sorry missclick still having trouble

from howdy.

Leviathan3DPrinting avatar Leviathan3DPrinting commented on July 22, 2024

Well odd but i left my laptop sitting on the coffee table walked outside to smoke a cigarette walked back inside and boom it logged me in.
so naturally i got excited opened a terminal
$ sudo -i
Traceback (most recent call last):
File "/home/USER/howdy/compair.py", line 5, in
import face_recognition
ModuleNotFoundError: No module named 'face_recognition'
Unknown error: 1
I don't understand how magically it works then breaks again

from howdy.

boltgolt avatar boltgolt commented on July 22, 2024

How... magical

Howdy should only try to log you in until it hits a timeout of about 4 seconds (depending on the machine). That way it will fall back to password authentication if howdy isn't working. This means it should have stopped scanning way before you got back to your laptop.

Did the IR emitters light up when you got back? Does it work when manually locking the machine (super (windows) key + L)?

from howdy.

Leviathan3DPrinting avatar Leviathan3DPrinting commented on July 22, 2024

You would be correct my laptop was opened but locked when I came back to it. As for (super (windows) key + L) well interestingly yes it does. It also works every time I lock my laptop even some odd times i thought for sure I was too far away good job lol. This does not work when I turn my laptop on however. Also sudo authentication does not work at all.

from howdy.

Leviathan3DPrinting avatar Leviathan3DPrinting commented on July 22, 2024

I just don't understand how the same piece of code can fail to import a library for a sudo request but succeed flawlessly for a login. Is it using different installed versions of python that are magically deleting themselves when I log in. I mean that is a joke obviously I do not believe that is the case. Still confusing though

from howdy.

boltgolt avatar boltgolt commented on July 22, 2024

It's very magical, as the exact same line activates the script for any authentication request.

Could you try running

whereis python3

This should give you an absolute path to the python executable. In my case this is /usr/bin/python3.5.
In pam.py, on line 19, replace "python3" with that full absolute path ("/usr/bin/python3.5").

Could you also check the output of

pip3 show face_recognition

Which should give you the location where the face_recognition module was installed.

from howdy.

Leviathan3DPrinting avatar Leviathan3DPrinting commented on July 22, 2024

Running
$ whereis python3 python3: /usr/bin/python3.6 /usr/bin/python3.6m-config /usr/bin/python3 /usr/bin/python3.6-config /usr/bin/python3.6m /usr/lib/python3.6 /usr/lib/python3.7 /usr/lib/python3 /etc/python3.6 /etc/python3 /usr/local/lib/python3.6 /usr/include/python3.6 /usr/include/python3.6m /usr/share/python3 /usr/share/man/man1/python3.1.gz

Also running
$ pip3 show face_recognition Name: face-recognition Version: 1.2.1 Summary: Recognize faces from Python or from the command line Home-page: https://github.com/ageitgey/face_recognition Author: Adam Geitgey Author-email: [email protected] License: MIT license Location: /home/USER/.local/lib/python3.6/site-packages Requires: Pillow, dlib, scipy, numpy, face-recognition-models, Click

I am not sure if face_recognition is supposed to be in my home directory but that is where pip3 installed it to.
Also changing python to an absolute path didn't help anything I still get the exact same error

from howdy.

boltgolt avatar boltgolt commented on July 22, 2024

That's not where it should be, normally it's in /usr/lib or similar folders. Did you use sudo while installing it? Did you run it in a virtual environment by any chance?

Could you try reinstalling the module?

from howdy.

Leviathan3DPrinting avatar Leviathan3DPrinting commented on July 22, 2024

I did not use sudo when installing it nor did I run it in any kind of virtual environment.
working on reinstalling now.

from howdy.

Leviathan3DPrinting avatar Leviathan3DPrinting commented on July 22, 2024

It is literally reinstalling it to the same directory is there a way to specify it for the right directory. Could i just move the files to the right directory?

from howdy.

boltgolt avatar boltgolt commented on July 22, 2024

Try running it with sudo, i don't think that will ever install to a .local.

from howdy.

Leviathan3DPrinting avatar Leviathan3DPrinting commented on July 22, 2024

I'll be damned that worked lol. Thanks so much for the help I really appreciate it.
P.S. keep making cool little things like howdy

from howdy.

Leviathan3DPrinting avatar Leviathan3DPrinting commented on July 22, 2024

I mean using sudo -i is really slow
slower than typing in my password.
but logging in is quick?
could just be the lighting or the room but i am gonna keep messing around with it

from howdy.

boltgolt avatar boltgolt commented on July 22, 2024

Great to hear that it's working! I'm close to finishing an installer on the dev branch so issues like this can't happen anymore.

The sudo command being slower could be a whole host of other issues. It might be CPU limited or not have the right models. Deleting the models folder and running python3 learn.py again will retrain it.

from howdy.

Leviathan3DPrinting avatar Leviathan3DPrinting commented on July 22, 2024

That might be something I will try since I have moved the folder into the pam.d directory and made it read only. I am impressed however that the camera on my inspiron-5379 is so good at capturing my face in low light like no light at all. Maybe it is just the deep learning or an error in setting up the error rate. I left that at default for the scanning like what is the difference in 3 vs 1-4. I know the readme says not to use anything above 5. I want the most security obviously. Having this integrated into gnome shell in future would be amazing. Maybe something like the cpu-power-manager https://github.com/martin31821/cpupower where you install the extension and then it from there asks permission and downloads all the needed libraries and compiles them. It would also make for easy cleanup if you ever wanted to remove it. Also using it with PGP for encryption/decryption would be really nice. Man I guess I will know how to build it myself one day. I can dream though

from howdy.

Leviathan3DPrinting avatar Leviathan3DPrinting commented on July 22, 2024

though it could also be slow because I am using zsh instead of bash or like you said a whole host of other issues. However it has been a bit quicker recently maybe moving the directory who knows lol. But it feels quicker to login when i first boot vs every other command or login. maybe it is my imagination. Or more likely it is cpu overhead because of applications being opened

from howdy.

boltgolt avatar boltgolt commented on July 22, 2024
  • If you have the type of camera i have, it has IR emitters that light up your face in infrared light. This means it's completely independent of ambient light and can even work in pitch blackness.
  • The algorithm gives the face recognition a reliability score, where 0 is without a doubt. I score under three most of the time. Try setting it to 1, it should fail every time.
  • I've been working on an installer just like that. If you take a look at the readme in the dev branch it is a lot simpler than it is now.
  • On-disk encryption makes no sense without a user password. The issue is that if the program can read a private key, so can the attacker. (This is also why your saved passwords in chrome are not encrypted) I think the best way to secure it is to keep the permissions as strict as possible.
  • Even importing the face recognition library makes 1 of my 8 CPUs spike to 100%, and during recognition all of them are at max. It's really intense to run. I don't think it has anything to do with zsh/ bash though, as PAM is completely independent of those.

from howdy.

boltgolt avatar boltgolt commented on July 22, 2024

I just pushed a new version that's almost a complete rewrite, it might fix the slowness a little and would have prevented the pip sudo issue.

from howdy.

Leviathan3DPrinting avatar Leviathan3DPrinting commented on July 22, 2024

Should I uninstall all the pip libraries I installed or would simply deleting the git repo be enough

from howdy.

boltgolt avatar boltgolt commented on July 22, 2024

Deleting it should be enough, but don't forget to also remove it from the common-auth file in pam.d

from howdy.

Leviathan3DPrinting avatar Leviathan3DPrinting commented on July 22, 2024

Ah good call. Idk why all of your cores go to 100%. Only 1 of mine gets pegged for like a second regardless of if I am importing or using it for authentication.

from howdy.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.