硬件需求清单
Raspberry Pi 3 Model B(已通过验证)
兼容Linux操作系统的摄像头模块(支持Windows的摄像头需额外脚本调整)
Raspberry Pi官方专用摄像头组件(可作为备选方案)
项目背景介绍
本项目基于AWS Rekognition服务与Pi-Timolo框架,实现树莓派人脸识别功能。通过运动检测触发图像捕捉,并结合云端分析技术,构建高效安防解决方案。
系统功能描述
Pi-detector与Pi-Timolo协同运作,利用AWS Rekognition对运动触发生成的图像进行人脸特征匹配分析。当前版本将识别结果实时记录至事件日志文件,用户可通过简单代码修改扩展功能,例如发送实时通知或实现门禁权限管理。安装脚本自动配置/etc/rc.local启动项,确保系统开机即运行。
基础配置要求
Raspberry Pi设备(建议采用3B+或更高版本)
Picamera驱动程序(必需组件)
AWS Rekognition服务(免费版本每月提供5000次API调用额度)
该系统脚本具备高度可扩展性,可监控任意指定目录的图像文件。例如,若用户通过其他摄像头设备捕获静态图像并存储至本地磁盘,仅需调整图像路径参数即可对新照片执行人脸识别流程。
AWS Rekognition配置指南
在安装前需预先配置AWS服务环境。推荐使用AWS免费层级服务,其每月5000次API调用完全满足项目需求。登录AWS控制台创建新IAM用户,并授予Rekognition全管理权限。
用户组权限视图
复制aws_access_key_id和aws_access_key_secret密钥信息(在IAM用户页面的"安全凭证"选项卡生成新密钥)。首次使用时需执行密钥生成操作,安装脚本将调用这些凭证信息。
https://docs.aws.amazon.com/rekognition/latest/dg/setting-up.html
配置用户权限后,需将服务区域设置为us-east-1(当前支持Rekognition服务的少数区域之一)。区域修改路径:访问EC2或Rekognition服务控制台,定位页面右上角区域切换选项。
系统安装步骤
https://www.raspberrypi.com/software/
使用Raspbian Jessie系统初始化树莓派设备,启用SSH远程连接(或通过显示器直连,默认用户名pi,密码raspberry)。通过nmap扫描定位设备IP地址:
nmap -sn 192.168.1.0/24
执行SSH连接命令(替换实际IP地址):
ssh pi@192.168.1120
克隆项目仓库并执行安装:
git clone https://github.com/af001/pi-detector.git
cd pi-detector/scripts
sudo chmod +x install.sh
sudo ./install.sh
安装过程将提示输入AWS凭证信息,包括密钥ID、访问密钥及区域设置(需与AWS控制台配置保持一致)。区域参数务必设置为us-east-1,示例输出如下:
操作使用指南
首先在AWS Rekognition创建新集合(例如命名为"home"):
cd pi-detector/scripts
python add_collection.py -n 'home'
将人脸图像添加至pi-detector/faces目录(样本数量影响识别精度,建议包含不同光线与角度的照片):
cd pi-detector/faces
python ../scripts/add_image.py -i 'image.jpg' -c 'home' -l 'Tom'
推荐使用专用脚本拍摄10秒延迟自拍照片(自动保存至faces目录):
cd pi-detector/scripts
python take_selfie.py
完成上述步骤后重命名文件并执行添加命令。系统自动生成collections.txt和faces.txt参考文件,便于后续管理操作。设备连接Wi-Fi后部署至监控区域,系统将自动运行并记录日志:
ssh连接后检查event.log目录
删除集合中人脸数据:
cd pi-detector/scripts
python del_faces.py -i '000-000-000-000' -c 'home'
测试静态图像匹配度(显示相似度与置信度):
cd pi-detector/scripts
python facematch.py
删除整个集合:
cd pi-detector/scripts
python del_collections.py -c 'home'