如何在树莓派上实现人脸识别?

如何在树莓派上实现人脸识别?

[本文来自:www.ii77.com]


[本文来自:www.ii77.com]

本文为雷锋字幕组编译的技术博客,原标题 Facial Recognition & Identification On Raspberry Pi,作者为 Adam Milton-Barker。

翻译/陶玉龙,校对/李欣,整理/凡江


如何在树莓派上实现人脸识别?


介绍

预计在不久后的将来,人脸识别和身份认证技术将在我们的日常生活中扮演一个非常重要的角色。这项技术为我们开辟了一个全新的世界,它几乎适用于我们生活的方方面面。面部识别/身份认证的使用案例包括安全系统、认证系统、个性化智能家居和家庭护理助理等。




我们将搭建什么?

本教程将帮助你建立一个可以训练 HARASCALDES 模型的树莓派,该模型可用于检测已识别的/未识别过的人,使用监控摄像头进行实时监控,并利用物联网 JumpWay 来发送传感和警告消息,进而允许你的设备利用其他物联网 JumpWay 网与其他设备进行通信。


本教程将利用 TechBubble Technologies 物联网 JumpWay Python MQTT 库进行通信,利用 OpenCV 实现计算机视觉,在本地端口上建造移动 Web 流和安全的 NGNX 服务器,以便可以安全地从外部访问视频流。


这个例子是我们最初的 TASS 版本,因为我们的进步依靠了很多更先进的计算机视觉库和框架,所以我们决定将代码进行开源。

 

Python 版本

• 2.7 版本

• 3.4 或更高版本

 

软件要求

• Jessie

• TechBubble IoT JumpWay Python MQTT Client(https://github.com/TechBubbleTechnologies/IoT-JumpWay-Python-MQTT-Clients)

• Linux 驱动

• Nginx

 

硬件要求

• 树莓派

• Linux 兼容摄像头


准备工作

在开始之前,有几个教程你应该看一下,尤其是如果这是你第一次按照我们的树莓派教程,或者如果这是你第一次使 TekBaseIO-JavaWoW 开发程序。如果这是你第一次在物联网项目中使用 TechBubble IoT JumpWay,在你创建 IOT 设备之前需要..开发帐户,并在进行一些基本的设置。访问下面的物联网 JumpWay 开发者使用文档(5-10 分钟阅读/设置 https://github.com/TechBubbleTechnologies/IoT-JumpWay-Docs/),并查看引导来进行..并设置你的位置、区域、设备和应用程序(大约 5 分钟)。


• 物联网 JumpWay 开发者程序文档 

• 准备你的树莓派

•设置区域名字 & 树莓派的 SSL

•在你的树莓派上配置 OpenCV

•在你的树莓派上配置 Linux 驱动

•在树莓派上为 Linux 驱动安装

•用 IPTables 确保树莓派的安全


准备你的树莓派

花一些时间来确保你的树莓派的硬件和包都是最新的,并且确保你的准备过程严格按照树莓派 3 的教程文件(https://github.com/TechBubbleTechnologies/IoT-JumpWay-RPI-Examples/blob/master/_DOCS/1-Raspberry-Pi-Prep.md),设备是安全的。


复制 Repo

你将需要将 echBubble IoT JumpWay (https://github.com/TechBubbleTechnologies/IoT-JumpWay-RPI-Examples)树莓派实例 Examples 示例库下载到你的树莓派上,并导航到你想下载的目录,以下命令是将其下载到主目录最简单的方式。

如何在树莓派上实现人脸识别?


安装要求

接下来,你需要将计算机视觉库导航到目录并按照要求进行安装,如果你已经将库复制到你的主目录上,那么这一部分的命令如下:

如何在树莓派上实现人脸识别?

 

安装 OpenCV

OpenCV 需要遵循树莓派教程(https://github.com/TechBubbleTechnologies/IoT-JumpWay-RPI-Examples/blob/master/_DOCS/2-Installing-OpenCV.md)进行安装,它是我们将使用的一种计算机视觉库。

 

安装 Linux 驱动

我们将使用 Linux 驱动把视频流传送到树莓派本地端口上,OpenCV 在这里连接到视频流并从中读取图像帧。为了建立 Linux 驱动,遵循安装教程(https://github.com/TechBubbleTechnologies/IoT-JumpWay-RPI-Examples/blob/master/_DOCS/5-Installing-Motion.md)在你的树莓派教上安装 Linux 驱动。


这里有一些修改,在驱动安装教程的第 9 部分中,它告诉你如何修改媒体的保存目录,在本教程中,你应该将这些设置更改为:

如何在树莓派上实现人脸识别?


不要忘记注意第 10 部分中关于关闭图像保存来节省磁盘空间的问题。

 

设置域名和 SSL

 我们希望我们提供的教程可以确保帮助人们学会创建安全的项目。为了使视频流安全工作,你需要设置指向你的树莓派域名,你也需要设置 SSL 证书来确保用于视频流的服务器是安全的。树莓派域名和 SSL 设置教程(https://github.com/TechBubbleTechnologies/IoT-JumpWay-RPI-Examples/blob/master/_DOCS/3-Raspberry-Pi-Domain-And-SSL.md)会向你详细解释如何做到这一点,如果有疑问,你可以让你的..员或主机来协助你。如果你将这个存储库复制到你的主目录中,你需要使用如下的 CSR 和密钥生成的路径:

如何在树莓派上实现人脸识别?


一旦你从证书颁发机构收到你的签名 crt.crt 和 ca.crt 文件,你需要将它们上传到:

如何在树莓派上实现人脸识别?

 

为 Linux 驱动安装安全的 

NGINX 服务器

我们将使用 NGNIX 作为我们的服务器解决方案,并在 QualSS-SSL 实验室 SSL 报告中将其设置为 A 级+ SSL 等级。为了做到这一点,我们提供了一个可以在 RasBuriPi 上的 Linux 驱动上安装 NGINX 服务器的指南(https://github.com/TechBubbleTechnologies/IoT-JumpWay-RPI-Examples/blob/master/_DOCS/6-Secure-Nginx-Server-For-Motion.md)。


在开始这一步之前,你需要在你的树莓派上安装 Linux 驱动(https://github.com/TechBubbleTechnologies/IoT-JumpWay-RPI-Examples/blob/master/_DOCS/5-Installing-Motion.md),并为你的树莓派设置域名和 SSL(https://github.com/TechBubbleTechnologies/IoT-JumpWay-RPI-Examples/blob/master/_DOCS/3-Raspberry-Pi-Domain-And-SSL.md)。


用 IPTables 保证树莓派的安全


 下一个你应该采取的安全步骤是设置 IPTABLE。遵循 Securing Your Raspberry Pi With IPTables 文件(https://github.com/TechBubbleTechnologies/IoT-JumpWay-RPI-Examples/blob/master/_DOCS/4-Securing-Your-Raspberry-Pi-With-IPTables.md)来实现这一点。

 

视频流

如果你遵循了以上步骤,如果它们还没有运行,你需要按照下面的步骤操作

如何在树莓派上实现人脸识别?


 重要的是:这种流式传输是一个新的特性,我们仍然在消除一些扭结,如果你想让 OpenCV 直接访问网络摄像头,而不需要驱动/NGNIX 流,那么在 TASS.py 重取消注释 43 行,注释 44 行和 45 行。


连接证书和传感设置

• 下一步是在互联网 JumpWay 开发者控制台中安装设备实例。遵循 IoT JumpWay Location Device Doc (https://github.com/TechBubbleTechnologies/IoT-JumpWay-Docs/blob/master/4-Location-Devices.md)来设置你的设备。你将需要设置一个有闭路监控的设备,并且添加了传感器/执行器部分。


• 检索你的连接证书并用新的连接证书和相机 ID 设置更新配置文件 JSON 文件(你需要在创建它之后进入设备页面以获得正确的摄像头 ID)。

如何在树莓派上实现人脸识别?

 

训练你的数据

 现在基本构架已经搭建好,是时候用你自己的照片训练你的模型了。当你下载这个 RPO 时,在那个被处理的文件夹中已经有一个经过训练的模型和被处理的图像,但是这个模型不会识别你。你需要选择自己在不同的位置和灯光下的照片。你训练模型的照片越多,它就越精确,如果你的设备没有识别你,你只需要用更多的图像来训练它。


你可以添加你喜欢的图片(这取决于你的树莓派 3 可用的空间),有很多像你这样人。为了将训练数据导航到训练文件夹中并创建目录,目录应该是一个数字,而且不是那个已处理文件夹中的数字。


一旦你建立了图像的文件夹,进入 Tas.Py 文件改变第 34 行(self.train = 0)为 self.train = 1,并启动程序。程序将循环检测你的图像,如果它检测到脸部,它将以模型所需的格式重新创建一个图像,将其保存到匹配文件夹处理后的目录中中,并删除原始图像以节省空间。如果它没有检测到面部,它将简单地删除原始图像,因为它是无效的面部识别。


一旦处理阶段完成,你的新模型将自动开始训练,训练完成后,它将自动运行主面部识别程序。把你的脸放在你连接的摄像头前面,看着程序的输出你是谁。


注意:从处理目录中删除 read me 文件。

 

执行程序

如何在树莓派上实现人脸识别?


自主物联网通信

当你的设备每次检测到一个人时,设备会把传感器数据传送到 TechBubble IoT JumpWay(https://iot.techbubbletechnologies.com/),当运动传感器检测到入侵者时会发出警报。你可以使用传感器值和警告消息与连接到 IoT JumpWay Location 的其他设备实现自主通信。


在「设备编辑」页面上,向下滚动到「执行器/传感器」下的「创建规则」部分。你可以在这里利用下拉菜单创建规则,允许你的设备发电子邮件给你,或者在状态更新、传感器数据和警告的情况下自主地与其网络上的其他设备进行通信。

 

查看数据

每次你的设备检测到一个人或一个入侵者,它将发送数据到 TechBubble IoT JumpWay。你将能够访问 TechBubble IoT JumpWay 开发区中的数据(https://iot.techbubbletechnologies.com/developers/dashboard/)。一旦登录到开发区,访问 TechBubble IoT JumpWay Location Devices Page 页面(https://iot.techbubbletechnologies.com/developers/location-devices),找到你的设备,然后访问传感器/执行器页和警告页,查看从你的设备发送的数据。物联网 JumpWay 树莓派计算机视觉实例缺陷/问题

 当你在运行物联网 JumpWay 树莓派计算机视觉实例遇到困难时请保持一种释然,当你遇到麻烦时你也可以在提问区寻求帮助。

 

物联网 JumpWay 树莓派

实例贡献者

TechBubble 科技公司创始人:Adam Milton Barker(https://github.com/AdamMiltonBarker)

TechBubble Technologies Dev 公司:Andrej Petelin(https://github.com/AndrejPetelin)

 原文链接:https://www.hackster.io/AdamMiltonBarker/facial-recognition-identification-on-raspberry-pi-1c7495

雷锋网链接:https://club.leiphone.com/page/TextTranslation/624

热门文章

  1. 手背上有一个治疗 “ 结节 ” 的穴位 ,多灸它,好处甚多!2024-05-03
  2. 李一桐演过的电视剧有哪些(李一桐演过的电视剧有哪些)2024-05-03
  3. 中国人民志愿军战歌歌词(中国人民志愿军战歌歌词简谱)2024-05-03
  4. 偏头痛的原因和治疗方法(男性偏头痛的原因和治疗方法)2024-05-03
  5. 光荣之家门牌发放标准(光荣之家门牌发放要自己去领取吗)2024-05-03
  6. 农业银行卡余额查询方法(农业银行卡余额如何查询)2024-05-03
  7. 闲鱼二手自行车转让(闲鱼二手市场自行车)2024-05-03
  8. 恒生指数连续第九个交易日收涨,创2018年以来最长连涨纪录2024-05-03
  9. 碧桂园:4月合同销售金额约38.5亿元2024-05-03
  10. 微笑的英文(微笑的英文smiling)2024-05-03
  11. 杭州机场出发,“五一”假期热门目的地出炉!出境游别忘了这件事→2024-05-03
  12. 中国铁路客服中心(中国铁路客服中心服务网站)2024-05-03
  13. 【文明有礼沈阳人】大东区开展“‘听评书 学党史’——大别山精神的内涵与时代价值”主题宣讲活动2024-05-03
  14. 美的空气净化器(美的空气净化器显示的数字)2024-05-03
  15. 烤箱做蛋糕10寸配方(烤箱做十寸蛋糕)2024-05-03
  16. 五一假期安全提示!2024-05-03
  17. 寄小读者主要内容(寄小读者主要内容)2024-05-03
  18. 父亲过世留下债务,未成年子女能否保留必要遗产份额?2024-05-03
  19. 三监之乱(西周三监之乱)2024-05-03
  20. KEEP涨超20%,总市值近51亿港元2024-05-03
自媒体 微信号:ii77 扫描二维码关注公众号
爱八卦,爱爆料。

小编推荐

  1. 1 有所为有所不为,泽塔云异军突起的背后

    北京泽塔云科技股份有限公司(ZETTAKIT)成立于2014年11月。4年的创业之路,逐渐在激烈的市场竞争中站住了脚跟,也见证了超融合在国内市场的成熟之路。 超融合概念刚进入中国市场

  2. 2 机器人产业走向何方,英飞凌有话说!

    据《中国机器人产业发展报告》数据显示,2018年全球机器人市场规模将达到 298.2亿美元, 2013-2018年的平均增长率约为15.1%。其中, 工业机器人168.2亿美元,服务机器人92.5亿美元,特种

  3. 3 类脑智能引领实现通用人工智能或催生重大变革

    全球技术地图 创新丨前沿丨科普丨资讯 人工智能已成为新一轮科技革命和产业变革的核心驱动力,是未来数十年人类社会发展进步的重要支撑。然而,尽管现阶段的人工智能在机器学

  4. 4 呼叫?发射?对讲机你知道的功能太少了

    今天小编将为大家解锁 应急指挥调度通信系统中移动终端实用但却“鲜为人知”的功能—— 是不是“行家”一看就知道? 1 个呼 终端通过一键进入联系人列表,发起个人对个人呼叫

  5. 5 传日本俄罗斯将禁华为中兴设备

    据日本《产经新闻》报道,日本政府基于华为与中兴被美国与澳大利亚视为存在安全问题,决定在引进政府项目的情报系统时,排除中国华为或中兴的电信设备。无疑华为与中兴被美

  6. 6 中国5G在澳洲被禁,看3GPP专家怎么说?

    8月23日,华为澳大利亚公司在其官方推特上表示:“我们接到政府通知,华为和中兴通讯被禁止为澳大利亚提供5G技术。这对消费者来说是一个非常令人失望的决定。华为是5G技术的全

  7. 7 【8月Github爆款Top10】机器学习热门开源项目新鲜出炉!

    八月最火GitHub项目!

  8. 8 106㎡现代风婚房,紧凑舒适的三居室!

    客厅客厅设计以米色为主色调,搭配橡木家具及布艺沙发,呈现出舒适休闲的一个客厅氛围;电视背景墙铺贴花卉壁纸,用

  9. 9 设计思维决定方案优劣:同一套户型6种设计方案

    为什么提到住宅设计的思维培养,人的所有想法、选择、都受到了思维的限制,当思维跟别人不同的时候,你的选择也会跟别人不一样,我们通过对设计思维的培养,了解设计的价值,

  10. 10 安缦的御用设计大师,永远的大师!

    设计大师Kerry Hill于2018.08.26逝世他是安曼酒店御用设计师,也是涵碧楼的设计者,他至今坚持

本文内容来自网友供稿,如有信息侵犯了您的权益,请联系反馈核实

Copyright 2024.爱妻自媒体,让大家了解更多图文资讯!