全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > MEMS传感器 >

基于RTT-Draco的疲劳驾驶监控系统设计案例

时间:2023-08-02 16:16

人气:

作者:admin

标签: 驾驶  RTT-Draco  基于  疲劳   

导读:疲劳驾驶一直是交通界的焦点与痛点,每年都有大量司机因疲劳驾驶导致伤亡。传统的疲劳驾驶预防,大都基于司机 自身角度,通过正常的作息和合理的行车安排来提前减少疲劳驾驶发...

疲劳驾驶一直是交通界的焦点与痛点,每年都有大量司机因疲劳驾驶导致伤亡。传统的疲劳驾驶预防,大都基于司机 自身角度,通过正常的作息和合理的行车安排来提前减少疲劳驾驶发生的可能性,而未能从疲劳驾驶已经可能发生的角度及时的避免疲劳驾驶的继续。

从这个角度出发,我们将传统的疲劳驾驶预防与提醒方式,与人脸识别结合,设计了疲劳驾驶监测与提醒装置。可以识别抽烟、喝水、使用手机、闭眼、睁眼、闭嘴、张嘴等行为状态。

注:本项目为2022中国大学生计算机设计大赛RT-Thread@中智讯物联网专项赛参赛作品。项目已在github上整体开源,赛后将在本论坛整体开源,这里只做部分代码及流程解释。

使用平台:RTT—DracoAI套件
模型部署插件:RT-AK
代码编写工具:RT-Thread Stdio 2.1.5

我就不按比赛要求写那种产品介绍类的东西了,技术平台直接上干货,模型部分使用yolo-fastest,模型流程图如下

1.jpg

1.jpg

1.jpg

使用RT-AK进行部署

基础运行命令

python aitools.py --project= --model= --model_name= --platform=k210 --clear

示例

$ D:Projectedge-aiRT-AKrt_ai_tools>python aitools.py --project=D:ProjectK210_Demok210_rthread_bsp --model=.Modelsmnist.tflite --model_name=mnist --platform=k210 --embed_gcc=D:Projectk210_third_toolsxpack-riscv-none-embed-gcc-8.3.0-1.2bin --dataset=.platformsplugin_k210datasetsmnist_datasets

部署成功示意图

1.jpg

在RT-Thread stdio中工程目录下更新软件包,将会使用到LCD,Camera,USART做监控串口,SPI1(wifi),以及co2传感器使用的i2c。setting中配置图如下

1.jpg

接下来就是软件包的包含,使用了sgp30和gps_rmc,rw007驱动软件包会自动包含,具体配置不做赘述(rw007驱动记得改频率不然用不了),会在整体开源后补充。

这里展示以下部分代码流程截图,首先进行硬件初始化和模型初始化

1.jpg

之后为了保证流畅运行,各外设进行了多线程的创建和处理

1.jpg

这里遇到了一个神奇的bug,将摄像头采集的图片裁剪后放入kpu中会倒是kpu的图像失败

只有不裁剪的240*320图片直接进入kpu中才能完美显示,这里重写了一个image_seg函数解决了这个问题,进入模型进行运算并对运算结果进行处理

1.jpg

之后就是屏幕显示onenet上传图片巴拉巴拉的就可以了,上传图片使用了http post,onenet自己的那个软件包不好用,这里就不赘述了。模型各类别的准确度如下图

1.jpg

因为抽烟这样的行为在屏幕中表现的实在是太小了,准确度相较于其他略有下降,在RTT-Draco上的运行时间约为360ms。这里没有办法插入视频,就从视频里截了一张识别的效果图。

1.jpg

到此,该项目完成了车辆定位,车内co2浓度检测,驾驶员不良行为检测等功能,且具备了声光震动提醒,基本符合疲劳驾驶监控系统的定位和要求。

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信