利用OpenCV、CNN进行人脸识别 门锁开门
- 摄像头初始化,人脸识别模块加载,树莓派GPIO定义初始化,红外传感初始化
- 红外传感器感受到是否有人准备进门,是=> 摄像头采集图片给人脸识别模块识别。
- 是管理员,给门锁模块发送一个请求,表示可以开门了。
- 不是管理员,不反应。(或是给一个识别失败的信号,灯)
- 假如没有检测到用户进入,则一直等待。
- Infared.py 树莓派GPIO口定义,驱动红外传感器,和外部灯
- read_camera.py 摄像头和人脸识别模块初始化,(获取一张图片,以及实时的视频流的代码),同时通过model预测当前人是否是管理员
- read_img read_data 和train_model 训练相关的代码,很简单那
- pick_face 图片预处理。把图片中的人脸识别出来并存储为灰度图以便于我们后面的训练使用,数据预处理
- 其他没啥意思了
- 训练模型 python train_model.py 数据集在 res目录下,,假如我们想训练训练识别自己的脸,使用pick_face.py 将图片假如进去
- 打开摄像头并使用实时的人脸预测, python read_camera.py