我购买了一款 Alienware 15 r3,它启用了 Windows Hello,这意味着包含所有硬件。
Windows Hello 基本上是 Win10 上添加的面部检测系统。它与双摄像头和激光笔配合使用(双摄像头用于 3 维,激光用于测量深度)。只要摄像头(整个装置)看到我,它就会让我登录。它还可以用作高级面部识别安全配件,可以存储我的密码,并且只有我在场时才使用它。由于装置中带有红外线,即使在弱光(甚至没有光)下也相当准确。
我已经安装了 Ubuntu 16.04,但找不到任何可以替代 Windows Hello 的软件包。请给我一个好的替代方案,它可以使用人脸检测登录,还可以利用硬件中的红外线在弱光下进行检测。
答案1
如果有人仍在寻找解决方案,我有自己的脚本,其工作原理与 Windows Hello 相同(使用红外摄像头和面部识别)。它是可定制的,与 PAM 集成,并且基本上可以在任何地方使用:登录、锁定屏幕、sudo、su 等。
它以 PPA 形式提供在 github 上如果你想尝试一下。
答案2
由于所有答案似乎都误解了这个问题(据我所知:]),并且我没有评论的代表,所以我只会尝试回答/提供帮助。
简而言之:Windows Hello 登录似乎使用红外点云来获取视野/面部的 3D 深度(提高面部识别的准确性)。由于这基本上与 Kinect 相同,我建议研究 Kinect 项目和库。
由于没有可以插入和使用的完成的库,我建议采用现有的 Ubuntu 人脸 ID 模块,通过向人脸识别算法中添加点云库(PCL)来对其进行修改。
Ubuntu PAM 人脸识别:我会尝试一些比看似废弃的 pam-face-authenticate 更新的东西,比如这个 pam-facial-auth,https://github.com/devinaconley/pam-facial-auth分叉它,并将输入数据修改为来自红外网络摄像头的点云图像。
PCL python 绑定到网络摄像头:http://pointclouds.org/documentation/tutorials/depth_sense_grabber.php
希望能帮助到你!
答案3
到 Ubuntu 17.10 为止,似乎没有真实的Hello 的替代品。有一些项目,主要基于 dlib(机器学习),例如这个 Python 脚本:http://pythonopencv.com/worlds-simplest-facial-recognition-api-for-pythonubuntu-only/
然而,到目前为止,它们似乎都没有与 PAM 集成
答案4
对 Magnus Persson 的建议 (在我看来,这是非常正确的) 做一点补充,并希望有一天有人能从这个帖子中获得一些启发:
我认为 Linux 上它的用例远远超出了登录屏幕。
如果我们可以使用某个 PCL 签名作为秘密来加密用户密码,然后通过快捷方式触发它,那就太棒了。这将允许面部识别用于sudo
命令,甚至用于网站、应用程序或几乎任何地方。
我认为我不是唯一一个sudo
因为必须输入密码而害怕做任何事情的 Linux 用户……
当然,安全性在这里成为一个小问题,但我认为有办法可以强化这一概念。