[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结构光)。因此,我们希望大家不要在对安全性要求非常高的环境中使用它。有关已知问题,如“认证时间较长”“光线环境影响识别的准确性”等,我们将努力对它们进行优化。

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

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

Reply Favorite View the author
All Replies
1 / 2
To page
bluesky_
deepin
2022-04-06 18:43
#1

seetaface光照要求高,如果光线不好会降低许多准确率,尝试加入seetaface质量检测模型吧,对光照强度,分辨质量进行判断一下,攻击检测模型也可以加载使用一下,现在主流消费级cpu完全能支撑这些额外的开支,特别是质量检测,在环境质量不好的情况下可以明显提升检测速度和成功率。或则考虑一下换一个引擎试试,我最近正在研究ncnn,从目前演示demo来看,比seetaface快

Reply View the author
Comments
guaguale
2022-04-06 23:50
之前以为 https://github.com/boltgolt/howdy 这个开源的方案呢
bluesky_
deepin
2022-04-06 19:00
#2
bluesky_

seetaface光照要求高,如果光线不好会降低许多准确率,尝试加入seetaface质量检测模型吧,对光照强度,分辨质量进行判断一下,攻击检测模型也可以加载使用一下,现在主流消费级cpu完全能支撑这些额外的开支,特别是质量检测,在环境质量不好的情况下可以明显提升检测速度和成功率。或则考虑一下换一个引擎试试,我最近正在研究ncnn,从目前演示demo来看,比seetaface快

同时从我使用来看,录取人脸步骤过于简单,这个步骤一定要加入质量检测模型对人脸进行判断,对目前人脸出现的问题给予提示,对于识别来说,底像质量是非常重要的。

Reply View the author
zkr
deepin
2022-04-06 21:20
#3

可以!我老旧的电脑都能人脸识别,但你必须要做出你录入时的表情

Reply View the author
绍贝格尔
deepin
2022-04-08 04:23
#4

双摄像头,默认是后置摄像头不能切换

Reply View the author
sjepy
deepin
2022-04-08 06:44
#5

image.png

人脸识别登录进入系统后会弹出上面的对话框

人脸识别成功后还要点一下下面的按钮,不太方便,最好识别成功直接进入系统

Reply View the author
zhangfr
deepin
2022-04-08 19:44
#6
sjepy

image.png

人脸识别登录进入系统后会弹出上面的对话框

人脸识别成功后还要点一下下面的按钮,不太方便,最好识别成功直接进入系统

现在倒是方便了,输入一条sudo 命令我还没确认就给我执行了 ,不过我喜欢😂

Reply View the author
csworldcup
deepin
2022-04-08 22:59
#7

这个人脸解锁我就没成功过😂

Reply View the author
186******36
deepin
2022-04-09 00:39
#8

人脸验证成功后,需要敲一下回车,能不敲不?

Reply View the author
linzhongdan
deepin
2022-04-09 21:10
#9

人脸识别功能:光强了不行,弱了也不行,开机识别成功你就直接进去吧!还要手动点一下,你是要我逗留一会看看界面风景还是干啥撒?confused鼠标点一下才能和我手动输个密码进入有区别吗? 识别灵敏度太低了。管理员权限打开文件,我每次都手动输入密码,比人脸识别还快,no 希望在识别上多下功夫,另外识别成功后请直接进入桌面,deepin不支持我电脑的指纹模块,就指望人脸识别了

Reply View the author
lylisq
deepin
2022-04-11 18:09
#10
sjepy

image.png

人脸识别登录进入系统后会弹出上面的对话框

人脸识别成功后还要点一下下面的按钮,不太方便,最好识别成功直接进入系统

我的登录系统后,也出现这个!

Reply View the author
lylisq
deepin
2022-04-11 18:10
#11
linzhongdan

人脸识别功能:光强了不行,弱了也不行,开机识别成功你就直接进去吧!还要手动点一下,你是要我逗留一会看看界面风景还是干啥撒?confused鼠标点一下才能和我手动输个密码进入有区别吗? 识别灵敏度太低了。管理员权限打开文件,我每次都手动输入密码,比人脸识别还快,no 希望在识别上多下功夫,另外识别成功后请直接进入桌面,deepin不支持我电脑的指纹模块,就指望人脸识别了

关键笔记本上还有个红外摄像头,不知道起作用了没

Reply View the author
lylisq
deepin
2022-04-12 16:28
#12
lylisq

关键笔记本上还有个红外摄像头,不知道起作用了没

已确认红外摄像头不起作用,但不确定是系统不识别设备还是不调用

Reply View the author
seawencheng
deepin
2022-04-12 21:53
#13

识别成功率太低了,经常在镜头前晃半天也解不开,只有输入密码了

Reply View the author
deepin
2022-04-13 06:01
#14

我的是小新pro16,刚升级了20.05,人脸解锁很准确,特别赞,sudo再也不用输入密码了😍 👍 yeah

Reply View the author
Rubbish
deepin
2022-04-13 07:05
#15

ToF和结构光还没有支持,不知道是否方便支持呢?

Reply View the author
松鼠哥哥/pinesong
deepin
2022-04-13 08:11
#16

非常帮,识别很快。先体验了,也把deepin作为自己常态办公环境了,告别windows了,常规替代软件都已经配置到位。希望系统越来越稳定。

Reply View the author
松鼠哥哥/pinesong
deepin
2022-04-13 08:15
#17

这是第二次返回使用deepin,一起助力国产系统功能越来越完善,生态越来越完善。

Reply View the author
kernelry
deepin
2022-04-13 16:48
#18

未来UOS会有这个功能吗?😃

Reply View the author
deepin
2022-04-14 17:06
#19

我的是小新pro16,刚升级了20.05,人脸解锁很准确,特别赞,sudo再也不用输入密码了😍 👍 yeah

刚开始很惊艳,随着光线变化,识别率确实下降了;

因为我的环境比较固定,所以我的做法是在不同的时间段录入多个人脸,这样就临时吧识别率过低的问题绕过去了😂

Reply View the author
liangjingle
deepin
2022-04-14 22:29
#20

别搞什么人脸识别了,不太好用。

Reply View the author
1 / 2
To page