| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 用OAK相机做智能跌倒检测仪器 -> 正文阅读 |
|
[人工智能]用OAK相机做智能跌倒检测仪器 |
用OAK相机做智能跌倒检测仪器为什么要做跌倒检测?
对于老人来说,摔倒无疑是对健康的一大威胁。最近,北京市疾控中心公布的抽样调查结果显示:60至69岁老年人每年跌倒发生率为9.8%,70至79岁为15.7%,80岁以上为22.7%,每增长10岁,跌倒发生率会升高0.5倍左右。 因此,设计一种保护人体隐私的情况下监控人体是否摔倒,并且在人体摔倒后第一时间实现报警就变得非常有意义。 我们通过OAK-D这一人工智能利器,结合Movenet神经网络进行姿态识别,全连接层分类网络实现对摔倒的姿态进行分类,实现摔倒报警。它可以实时采集人体关节姿态数据进行摔倒判断,全部识别在OAK相机中完成,不会将人体影像数据传输出去,保护老人的隐私。 如何做跌倒检测?传统做法面临的问题在典型的跌倒检测方法中,从视觉数据中检测出人的行为,并学习特征来区分跌倒和其他活动。现有的方法大多利用从视频数据中提取的基于物理外观的特征来表示跌倒。然而,基于外观的特征在实际环境中的泛化性较差,因为外观特征的变化较大,不同的摄像机视角不同并且背景杂乱。此外,由于大规模公共跌倒数据集的不可用性,大多数现有的跌倒检测器都是使用模拟环境或使用受限数据集(由于隐私问题不能公开共享)进行训练和评估的。因此,这些方法并没有表现出在未见过的真实世界环境中进行跌倒检测的泛化能力。 OAK如何打破传统做法的局限OAK-D智能相机可以为跌倒检测提供低成本的解决方案。它们不会对人体健康造成感官上的副作用,也不会像使用可穿戴设备的系统那样影响老年人的日常活动。 提出一种基于人体姿态的跌倒表示法,该表示法与场景中人物的外观特征、背景、光照条件和空间位置无关。实验表明,在基于2D姿态和3D姿态的跌倒表示上训练的神经网络模型能够成功地推广到了未知的现实环境中进行跌倒识别。 OAK在此类应用上的优势与现有的方法相比,OAK工作的不同之处在于:首先,OAK的框架学习是基于姿态的跌倒特征,这使得框架能够成功地从纯合成数据中学习到的跌倒识别知识迁移到具有未知背景和不同人类角色的真实世界数据中。OAK的框架结合了2D和3D姿态知识,使得框架能够成功地处理2D姿态的模糊性(在单个OAK相机的情况下),而不需要多个摄像机。最后,3D姿态估计和跌倒识别的神经网络模型对姿态数据中的缺失信息具有弹性。这使得框架能够准确地从人的姿势中分辨出跌倒和不跌倒的情况。 OAK-D相机的总体工作流程一、模型训练部分:1.1 准备好姿势检测模型 MoveNet使用 Katsuya Hyodo 提供的转换好的模型 请添加图片描述 1.2 使用 MoveNet 对人体的 RGB 图片数据集进行识别得到人体姿态骨骼数据集使用 MoveNet 模型输出的 17 个人体关节点画出骨骼图(类似于火柴人) 1.3 将骨骼数据集分为训练集与测试集1.4 使用我们准备好的骨骼数据集,在pytorch下训练全连接层神经网络使用 pytorch 构建全连接层:(可参考:https://pytorch.org/tutorials/beginner/basics/quickstart_tutorial.html,或者可以使用我们提供的Jupyter notebook)
因为我们最终要将全连接层神经网络放在OAK-D相机里的 Myriad X 芯片里运行,所以我们要将pytorch训练好的神经网络模型转换成blob文件。我们的转换步骤是先将 pytorch 模型导出到 onnx模型,再将onnx模型转换成openvino支持的格式,在OpenVino下再生成OAK-D需要的blob模型文件 : 以下是将pytorch模型转化为onnx模型的命令:
以下是将ONNX模型转换成OpenVino模型的命令:
最后我们再用OpenVino工具,将OpenVino模型编译成OAK-D相机支持的blob文件。
模型训练好后,我们要开始部署我们的模型到OAK相机上。 二、部署工作2.1 依据 MoveNet 结果生成骨骼图2.2 把骨骼图片传入全连接层2.3 全连接层对骨骼进行判断2.4 输出骨骼状态(fall or normal),并使用宽高比进行辅助判断检验我们的结果在OAK-D相机中运行代码,效果如下: 50种跌倒姿势检测[【OAK实际应用】 想了解更多OAK?首款开源软硬一体OpenCV AI Kit - DepthAI介绍 ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 21:07:17- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |