//blog/tags/about/friends

调用百度 API 人脸解锁 Windows

- code ai python baidu facial recognition

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 文件夹内,电脑再次自动锁屏