GitHub: https://github.com/jsun969/windows-face-lock
起因
某天,我发现开机输密码太麻烦了其实就是懒。然鹅又是Windows7 系统,没有啥 Windows Hello 可以快捷解锁。于是根据手机可以人脸解锁,电脑又有摄像头,百度了一下如何人脸解锁 Windows
最后都得出来一个叫做LuxandBlink的软件,得,那就下载一下就完事了呗
不过就在我搜下载链接的时候,却发现这玩意儿已经好久没更新了,安全性可想而知。不过现在各种大厂都有自己的人脸识别 api,为何不自己做一个呢?
好了废话说完了,现在是以下为教程
教程
获取百度 API
选择百度API 是由于我想白嫖财力不足,不过既然是免费的,QPS(每秒查询率)肯定不会给我很高,所以就没法直接分享给大家,只能由大家自己申请
这是官网,首先你要登录,直接用**百度账号(就是你登录百度网盘的账号)**就行。
进入控制台,选择人脸识别
然后创建一个应用
创建完以后你会获得一个 API Key和一个 Secret Key,把他复制下来
创建 JSON
想让程序读取你的 API,需要创建一个 JSON。其实这步非常简单
先创建一个文本文件
改文件名和后缀名
在这个文件里输入
{ "api_key": "你复制的API Key", "secret_key": "你复制的Secret Key" }
最后是这样
安装 Python 和模块
这步就请自行百度吧,Python 建议版本是 3.7.6,兼容性好,方便装模块
模块的话,需要装两个模块,直接 pip问题不大
pip install opencv-python
pip install requests
自拍一张
这步貌似没啥好说的,注意不要开美颜啥的就行,将拍好的照片(必须为jpg 格式),命名为face。与你之前创建的 JSON 放在同一个目录
主程序
首先你要在前面这个文件夹里再创建一个error_photos的文件夹,用来存放解锁失败的图片
然后就可以下载主程序了,虽然我在Github 上也上传了,但是鉴于天朝的网络速度,还是分享给大家蓝奏云的下载地址(已失效)吧。同样,解压下来放同一个文件夹,大功告成!
使用及原理
使用的话只要在命令行内输入
python face.py
程序的原理则是:打开程序则监听是否进入锁屏界面(锁屏界面建议不要加设密码),解锁屏幕的时候,程序会自动拍照进行人脸识别,如果没有通过,会将照片自动保存到 error_photos 文件夹内,电脑再次自动锁屏