当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]随着Raspberry Pi AI 摄像头的发布,我觉得可以尝试一下它并开发一个应用程序!我上学的时候常常会打瞌睡,但作为一名教师,看到学生打瞌睡可不是一件愉快的事……有时我也会在拥挤的餐厅里注意到有人打瞌睡。在这种情况下,如果能知道有人在打瞌睡的话,应对起来会更容易些!总之,我想创建一个打瞌睡检测应用程序来帮助自己保持清醒……!

随着Raspberry Pi AI 摄像头的发布,我觉得可以尝试一下它并开发一个应用程序!我上学的时候常常会打瞌睡,但作为一名教师,看到学生打瞌睡可不是一件愉快的事……有时我也会在拥挤的餐厅里注意到有人打瞌睡。在这种情况下,如果能知道有人在打瞌睡的话,应对起来会更容易些!总之,我想创建一个打瞌睡检测应用程序来帮助自己保持清醒……!

无需具备高级编程或人工智能方面的知识,但请明白的是,我们将在一定程度上使用 Git 和 Python。

1. 设置 Raspberry Pi 人工智能摄像头

首先,让我们安装树莓派人工智能摄像头。

按照此 Raspberry Pi 拼装指南来安装 Raspberry Pi 人工智能摄像头,以确保所有设置都已完成。

2. 利用树莓派人工智能摄像头进行骨骼检测的实现方法

接下来,让我们运行这个样本,看看能否用树莓派人工智能摄像头来估算骨骼结构!

从零开始实现骨骼估计和显示需要耗费大量的精力和时间。然而,最近我们公司推出了一个叫做“应用模块库”的东西,它能让你轻松创建样本。鉴于这是一个绝佳的机会,我将使用它!

首先,让我们安装 Modlib 仓库。

接下来,按照 UV 文档中提供的安装说明来安装 uv 并进行设置。通过运行以下命令来验证您的 uv 安装是否成功:

然后确保你的树莓派运行的是最新版本的软件:

接下来,我们可以运行 modlib 的 posenet 示例,以此来测试我们的系统并查看关键点的检测结果。

最后,请执行以下命令。最后,请执行以下命令。

太棒了!这个操作很简单,但你可以看到骨骼识别技术运行得非常正常!即便头部低垂并且戴着口罩,它似乎也能很好地识别!现在我们肯定能够检测出正在打瞌睡的人了!

3. 创建应用程序

我们将对第二章中提到的部分样本进行修改,从而真正开发出打瞌睡检测应用程序!这一次,我们将依据骨骼估计过程中关键点的坐标几乎没有变化这一情况来判断某人是否正在打瞌睡。

有多种方法可以判断眼睛是否闭合;您可以根据自己的喜好选择合适的方法来操作!接下来我们就按照以下步骤进行实施。

3.1. 保存骨骼估计数据

首先,创建一个新的 Python 脚本“SleepDetection.py”。然后,为了启动该脚本的逻辑,我们将保存骨骼估计数据。我们将把数据添加到一个名为“poses_record”的列表中。为了比较前一帧和当前帧之间的差异,该列表的长度限制为 2,但您可以根据需要进行更改。我添加了之前程序中用“+”标记的部分。

3.2. 计算估计关键点坐标的距离

接下来,我们将计算前一帧和当前帧中估计关键点坐标之间的距离。为此,我们将编写一个名为“track_motionless()”的新函数。

从之前的数据(即 poses_record[0])和当前的数据(即 poses_record[1])中获取 x、y 坐标,并计算距离。理论上可以获取 17 种关键点!这次我们并没有明确指定使用哪些关键点,但或许设定一些限制会是个好主意,比如只在识别出左眼和右眼时才进行处理。

3.3. 判断距离是否超过阈值

接下来,我们将判断距离是否超过了阈值。我们将使用一个名为“motionless_count”的变量来统计关键点坐标几乎没有变化的帧数。

如果有人正在打瞌睡,且坐标值与之前相比变化不大,我们将增加“静止计数”。我们设定了一个名为“DISTANCE_THRESHOLD”的阈值,用于判断坐标值是否未发生变化,但您可以根据需要进行修改。然而,如果仅检测到一个关键点,数据的可靠性就不是很高,因此只有当多个关键点都低于该阈值时,静止计数才会增加。这也涵盖了没有人在画面中的情况。

3.4. 如果静止时间超过阈值,则判定为打瞌睡。

接下来,我们将根据“静止计数”是否超过阈值来判断是否处于打瞌睡状态。不过,这其实并不复杂,只需添加以下内容即可:

3.5. 用户界面显示

最后,让我们明确地显示出有人正在在用户界面上打瞌睡的情况!这一次,我们使用 OpenCV 在图像上显示“睡眠”字样。

您还可以使用其他工具或方法,比如发出声音!在这里,我只提取了与用户界面显示相关的部分。

完整方案

最后,我将给出完整的程序。该程序也已在 GitHub 上公开提供,您大可随意参考它!

您可以使用以下命令来运行它。如果您需要一个 pyproject.toml 文件,我们的 Github 上已经提供了该文件,所以如果您感兴趣的话,请尝试一下吧!

结论

在这篇文章中,我使用了树莓派人工智能摄像头来开发了一个打瞌睡检测应用程序。

虽然仅仅为了监测打瞌睡行为而购买专用设备可能看起来没有必要,但树莓派人工智能摄像头却是一个功能强大的平台,可以被重新用于许多其他计算机视觉项目——因此它不仅仅局限于这一单一用途,是一个非常实用的选择。

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读

标准的 WiFi(2.4/5GHz)的覆盖范围可达 50 至 100 米。LoRa 能够覆盖一定距离,但其带宽太窄,无法传输 JPEG 图像。4G 在有信号覆盖的地方都能使用,但需要 SIM 卡以及每日重复计费的数据套餐...

关键字: LoRa 人工智能 NE101

在当今的生活中,查看天气状况或日常日程安排通常需要解锁智能手机或唤醒明亮的电脑显示器。这往往会导致“通知泛滥”现象——你查看时间,看到一条无关的电子邮件,然后突然就花了 20 分钟沉浸在负面情绪中。我们的家中布满了发光的...

关键字: 显示屏 树莓派 Flexbox

在过去的 250 年里,我们在自动化方面取得了巨大的进步。这为我们带来了远超我们想象的更多舒适与便利。很快,我们甚至还会创造出音乐、食物、娱乐、战争和爱情。目前还有一项工作尚未着手:哲学。

关键字: 机器人 树莓派 摄像头

在该项目中,我们正在利用树莓派 Pico W 构建一个自主式的“猎鹰式”目标定位系统。与简单的感应运动玩具不同,该系统采用了一个 3 区段的被动红外线运动探测器阵列来检测目标的大致方向,然后启动精确的超声波雷达扫描,以确...

关键字: 树莓派 超声波雷达 传感器

将 Kindle 变成打字机或许在实际应用上意义不大——但这是完全可行的(前提是你的 Kindle 已经被破解)。在这个过程中,这个项目会迫使你按照一定的限制条件进行操作,比如在受限的 Linux BusyBox 环境中...

关键字: Kindle 打字机 树莓派

疲劳驾驶是导致致命交通事故的最危险且报道最少的因素之一。像梅赛德斯、宝马或特斯拉那样的商用驾驶员监控系统价格高达数千欧元,并且只能安装在特定车辆上。而用于车队管理的独立系统则需要网络连接,并且还需要支付定期费用。

关键字: DrowSAFE 树莓派 边缘人工智能

从感知科学到行为改变,e络盟播客深入剖析技术如何助力释放人类潜能

关键字: 人工智能 脑科学

上篇我们完成了 BLC、LSC、AWB、CCM 的客观标定,建立了科学的成像基准。本篇将继续主观调试、IQ 文件配置、常见问题排查等,直至完整 ISP 调试流程落地。

关键字: ISP 摄像头 开发板

中国 上海,2026年5月13日——照明与传感创新的全球领导者艾迈斯欧司朗(SIX:AMS)今日宣布,推出OSLON™ Black IR:6 C系列高功率红外发射器。汽车智能化程度正日益提高,其中一个特征是驾驶辅助系统和...

关键字: 驾驶辅助系统 传感器 摄像头

湖州2026年5月12日 /美通社/ -- 5月9日,在第十个中国品牌日到来之际,由新华社品牌工作办公室指导,中国搜索主办的2026世界品牌莫干山大会"搜索•点赞•传播品牌好故事论坛"在浙江德清成功举...

关键字: 人工智能 AI 代码 多模
关闭