[Share Experiences] deepin20.5——人脸解锁背后的那些事
Tofloor
poster avatar
zimo1
deepin
2022-04-06 17:51
Author

deepin 20.5 更新消息一经发布,人脸识别功能模块便成为国内外用户的兴趣焦点。

01人脸识别.jpg

国外知名linux资讯网站也发布文章《Deepin OS Becomes the First Linux Distro to Offer Face Unlock》by Abhishek (https://news.itsfoss.com/deepin-os-20-5-release/),表达对deepin 20.5的认可,提出人脸识别是版本中的亮点。

032.png

人脸识别功能所引发的国内外关注度攀升,于我们既是激励也是鞭策,未来深度社区团队将在智能化、人性化方面对操作系统做持续改进。

考虑到部分用户对人脸识别功能模块的建议与疑问,接下来我们将从功能体验、技术实现、隐私处理三部分做系统解释,为各位答疑解惑。

如还有其他疑问,欢迎您在深度社区论坛进行反馈。

地方.png

功能体验

如何在深度操作系统上体验人脸识别功能?操作流程为:控制中心-生物认证-人脸-添加人脸,即可完成人脸录入的过程。

企业微信截图_16492097238606.png

录入成功后,用户可对数据进行重命名、删除等操作。人脸识别将作为登录方式之一,嵌入到登录界面中。在下一次进入登录界面时,用户可点击图中按钮切换到人脸识别,系统将开启前置摄像头,进行人脸信息采集并实时计算,所出现的异常提醒会即时反馈至登陆界面。

人脸识别.png

如果识别成功,登录界面将提示“人脸解锁成功”,此时点击图标或者按下回车键即可进入系统。

技术实现

deepin 20.5 中添加的人脸识别鉴权功能采用了“人脸识别引擎”方案,代码实现来自于中科视拓的开源方案,其使用项目中提到的轻量版本的神经网络模型:face_recognizer_light.csta。

结构如下图所示:

image.png

第一层为进行用户身份认证的软件,如“登录”、“屏幕解锁”程序。第二层为Linux发行版普遍使用的用户身份验证模块,简称PAM;第三层为被PAM所调用的动态库插件,通过插件为PAM增加新的用户认证方式。deepin中的人脸识别则通过Deepin Authentication Service模块,来支持人脸识别或指纹识别。

当一次认证操作开始,LightDM程序将通过PAM请求认证此用户身份,在登录界面等待用户输入密码、进行人脸识别、选择合适的认证方式。如用户使用人脸识别,请求最终会到达Seetaface。Seetaface将使用摄像头中的数据和已录入的人脸数据进行比对。比对成功则将结果反馈给PAM,通知LightDM程序,最后为此用户进行登录操作。

以上为人脸识别的技术流程。其中, Seetaface 中包含了实现人脸识别功能的核心代码,它处于整个认证框架中的最底层。deepin目前所使用的是 Seetaface6 版本,它是一个开源项目。

源代码在:github.com/SeetaFace6Open/index

image.png

关于它的详细介绍,请查阅它的官方文档:**https://github.com/SeetaFace6Open/index/blob/master/README.md

但是 Seetaface6 只提供中文说明,如果你需要英文版本,请参考它在旧版本项目中的内容:https://github.com/seetaface/SeetaFaceEngine

此外,中科视拓在2016年发表过一篇关于 Seetaface 的技术实现论文,如果你关注它的技术方案,还可以查看:https://arxiv.org/abs/1609.03892

隐私处理

深度社区非常注重个人隐私问题。在开发人脸识别功能之初,所选取的方案是一个纯粹的离线模式。它不依赖于任何网络服务,所需要的神经网络模型已预装在系统硬盘内,进行识别操作时直接使用本地机器的CPU/GPU进行运算。此过程中所采集的摄像头数据仅限于在内存中使用,识别过程结束后不会留存。

此外,已经录入的人脸数据会保存在系统目录中并进行加密处理,仅限root用户访问(这意味着任何第三方应用都无法获取到它)。除用于人脸识别的功能,该数据不会用于任何其它操作,并且我们更不会将此数据上传到任何的服务器中。

最后需要声明的是——对于一个纯离线的人脸识别算法而言,它受限于神经网络模型的大小和计算机的性能。事实上,人脸识别的首个版本并不十分完美。当前所添加的人脸识别功能适用于任何摄像头设备,作为通用方案而言,这既是优点,也会带来部分缺点,例如它的安全性会低于专用设备(如iphone的3D结构光)。因此,我们希望大家不要在对安全性要求非常高的环境中使用它。有关已知问题,如“认证时间较长”“光线环境影响识别的准确性”等,我们将努力对它们进行优化。

为了交互过程能更具人性化,更加智能,期待大家多多体验和反馈,给我们更多宝贵的建议(欢迎联系我们:[email protected]),帮助我们快速地进行功能的完善!

更多精彩,尽在deepin20.5,欢迎大家体验!

Reply Favorite View the author
All Replies
2 / 2
To page
Ron
deepin
2022-04-14 23:01
#21

什么时候考虑支持硬件人脸识别方案,我笔记本是 机械革命 蛟龙7x 支持人脸解锁。

Reply View the author
阿甘
deepin
2022-09-07 14:44
#22

这个功能不错,人脸识别算法的准确性,环境适应性还有改进的空间。

Reply View the author
xuqi
deepin testing team
2022-10-09 22:41
#23

like

Reply View the author
2 / 2
To page