基于树莓派的面部识别系统设计方案

描述

本文将介绍使用AWSRekognition和Pi-Timolo的RaspberryPi的面部识别系统。

树莓派

描述

Pi-detector与Pi-Timolo一起使用,通过利用AWSRekognition在运动生成的图像中搜索面部匹配。在其当前状态下,匹配项被写入event.log。通过一些额外的改造和工作,你可以利用它发送通知或允许/拒绝其他人访问房间,并且这只需稍微进行修改。安装脚本会将适当的文件放在/etc/rc.loal中以在启动时启动。

构建要求

树莓派(使用Rpi3测试)

Picamera

AWSRekognitionAccess(提供免费套餐选项)

作为替代方案,可以修改这组脚本以查看包含图像的任何目录。例如,如果您从另一台相机收集静止图像并将它们保存到磁盘,您可以更改图像路径以对创建的任何新照片运行面部识别。

AWS识别

在安装之前,最好在AWS上启动并运行。对于我的项目,我使用的是AWS免费套餐服务。使用它可以让您每月进行5000次API调用,这对于这个项目来说已经足够了。登录到您的控制台并创建一个具有Rekognition管理权限的新IAM用户。

树莓派

用户组的视图

树莓派

您需要做的是复制您的aws_access_key_id和aws_access_key_secret。要获取此信息,请单击“安全凭证”选项卡(来自上图中的IAM用户页面)。如果这是您的第一次使用,您可能需要生成一个新密钥。启动安装脚本后,系统将询问您此信息。

树莓派

安装

使用RaspbianJessie设置RaspberryPi

通过SSH连接到您的Raspberrypi(或将其连接到监视器并使用pi作为用户名和raspberry作为密码登录)。不要忘记将下面的IP地址更改为您的pi的IP。如果您需要帮助在网络上查找它,请使用nmap(nmap-sn192.168.1.0/24)

sshpi@192.168.1.120

克隆repo并安装:

树莓派

在安装过程中,系统将提示您输入之前设置的aws凭据。询问时,输入您的AWS密钥ID、AWS秘密访问密钥,并将区域设置为us-east-1(调整以匹配您之前设置AWSRekognition时选择的区域)。示例输出类似于下图:

树莓派

入门

首先,您需要在AWSRekognition上创建一个新集合。创建一个“Home”集合,例如:

树莓派

接下来,将图像添加到pi-detector/faces文件夹。一个人的图像越多,您将获得更好的检测结果。我会在不同的灯光下推荐几个不同的姿势。

树莓派

之后我发现最好的方法是在相机放置的同一区域拍照,并使用picam。如果你准备这样做,还可以创建一个小的python脚本来拍摄一张延迟10秒的照片,然后将它放入pi-detector/faces文件夹中。要使用它:

树莓派

完成后,您可以返回并重命名文件并重复上述步骤以将您的图像添加到AWSRekognition。创建新集合或添加新图像后,将创建两个参考文件作为未来参考。如果您计划在将来删除图像或集合,这些将非常有用。

此时,设置已准备就绪。您可以在Rpi上设置Wi-Fi,并将相机放置在您家中的任何位置。插入Rpi后,它应该开始工作,无需用户进行额外工作。要检查您的日志,只需ssh进入Rpi并检查event.log文件夹以获取对您的检测的引用。

要从您的收藏中删除人脸,请使用以下命令:

树莓派

如果您需要查找图像ID或集合名称,请参考您的faces.txt和collections.txt文件。

要删除集合:

树莓派

请注意,上述操作也会删除您存储在AWS中的所有面孔。

最后一个脚本是facematch.py。如果您更新了图像并且只想针对您存储在AWS上的人脸测试静态照片,请执行以下操作:

树莓派

结果会打印到屏幕上,包括相似性和置信度的百分比。

实物照片

树莓派

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分