橙派探险记:开箱香橙派 AIpro 与疲劳驾驶检测的奇幻之旅

2024-05-30 10:54

本文主要是介绍橙派探险记:开箱香橙派 AIpro 与疲劳驾驶检测的奇幻之旅,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

引子:神秘包裹的到来

第一章:香橙派AIpro初体验

资源与性能介绍

系统烧录 Linux 镜像(TF 卡)

调试模式

登录模式

第二章:大胆的项目构想

系统架构设计

香橙派 AIpro 在项目中的重要作用

第三章:开发过程中的奇幻旅程

总体设计

系统功能

模型训练

第四章:系统测试与魔法调试

结尾:奇幻之旅的终点与新篇章


🎊【香橙派】专题正在持续更新中,内含香橙派调试,登录,模型训练,昇腾AI等内容✨,欢迎大家前往订阅本专题,获取更多详细信息哦🎏🎏🎏

🪔本系列专栏 -  ​​​​​​香橙派

🍻欢迎大家  🏹  点赞👍  评论📨  收藏⭐️

📌个人主页 - 勾栏听曲_0的博客📝

🔑希望本文能对你有所帮助,如有不足请指正,共同进步吧🏆

🎇粗缯大布裹生涯,腹有诗书气自华

引子:神秘包裹的到来

        在很久很久以前......在一个阳光明媚的下午,我终于收到了期待已久的包裹——香橙派 AIpro。这份礼物辗转两次才到我的手上,每一天我都怀着满心的期待,频繁地查看快递状态。终于,当门铃响起时,我几乎是飞奔到门口,迫不及待地签收了包裹。

        小心翼翼地拆开包装,香橙派 AIpro 闪耀着橙色的光芒,仿佛在向我招手,邀请我踏上一场全新的科技冒险之旅。看着这块小小的开发板,我的心中充满了无限的可能性和期待。接下来和我一起来揭开她的神秘面纱吧!

第一章:香橙派AIpro初体验

        收到香橙派 AIpro 后,我迫不及待地打开包裹,眼前的开发板闪耀着科技的光芒。板上的每个接口、每个芯片,都让我充满了探索的欲望。以下是香橙派 AIpro 开箱的实物图展示,一个C口的充电口,一根电源线,一个OrangePi AIpro:

        进一步打开后,映入眼帘便是充满着科技感的香橙派了,红色框出来的是电源接口,黄色框出来的是散热模块,蓝色框出来的是天线模块,这里要注意的是天线不能折叠贴到香橙派,这样很可能会烧掉香橙派的。

资源与性能介绍

        香橙派 AIpro 搭载了昇腾 AI 处理器,提供 8TOPS INT8 的计算能力,内存有 8GB 和 16GB 两种版本。以下是开发板的详细硬件规格:

  • 处理器:4核 64 位 Arm 处理器 + AI 处理器
  • AI 算力:半精度(FP16):4 TFLOPS
    • 整数精度(INT8):8 TOPS
  • 内存:LPDDR4X,8GB 或 16GB
  • 存储:板载 32MB 的 SPI Flash
    • Micro SD 卡插槽
    • eMMC 插座
    • M.2 M-Key 接口(支持 NVMe SSD 和 SATA SSD)
  • 网络:10/100/1000Mbps 以太网,支持 2.4G 和 5G 双频 Wi-Fi,BT4.2
  • 接口:2 个 USB3.0 Host 接口
    • 1 个 Type-C 接口
    • 2 个 HDMI 接口
    • 2 个 MIPI CSI 摄像头接口
    • 1 个 MIPI DSI 显示接口
  • 音频:1 个 3.5mm 耳机孔,2 个 HDMI 音频输出
  • 扩展接口:40 pin 扩展口(用于 UART、I2C、SPI、PWM 和 GPIO)
  • 电源:支持 Type-C 供电,20V PD-65W 适配器

系统烧录 Linux 镜像(TF 卡)

        要在香橙派 AIpro 上运行 Linux 系统,需要先将 Linux 镜像烧录到 TF 卡上。以下是具体步骤:

  1. 准备 TF 卡和读卡器:使用容量至少为 32GB 的 TF 卡(建议使用 64GB 或以上),并准备一个 TF 卡读卡器。
  2. 下载镜像和烧录工具:从香橙派官网 下载镜像 和 balenaEtcher 烧录工具。
  3. 烧录镜像:将 TF 卡插入读卡器并连接到电脑。
    1. 打开 balenaEtcher,选择下载的 Linux 镜像文件和 TF 卡,然后点击“Flash”开始烧录。
    2. 烧录完成后,将 TF 卡插入香橙派 AIpro 的 TF 卡槽。

调试模式

  1. TTL 调试模式

        开发板默认使用 uart0 做为调试串口。需要注意的是,uart0 的 tx 和 rx 引脚同时接到了两个地方:

        根据上图可知uart0 的 tx 和 rx 引脚接到了 40 pin 扩展接口中的 8 号和 10 号引脚,此种方式需要准备一个 3.3v 的 USB 转 TTL 模块和相应的杜邦线,然后才能正常使用开发板的调试串口功能。连接的实物图如下:

  1. 串口调试模式

        uart0 的 tx 和 rx 引脚又接到了开发板的 CH343P 芯片上,再通过 CH343P 芯片引出到 Micro USB 接口上。此种方式只需要一根 Micro USB 接口的数据线将开发板连接到电脑的 USB 接口就可以开始使用开发板的调试串口功能了,无需购买 USB 转 TTL 模块。连接的实物图任如下:

        以上两种方法连接成功后,进入MobaXterm旋转串口连接,选择设备到的串口号,波特率设置为115200,就可以登录我们的香橙派啦,第一次登录用户名和密码是默认的,自己可以去修改。

初始账号

初始密码

root

Mind@123

HwHiAiUser

Mind@123

登录模式

        其实上面介绍的调试方法就已经是登录上了香橙派的系统了,除此之外,再介绍两种登录方式。

  1. 远程登录模式

        使用网线连接电脑,再通过ssh远程连接香橙派,以下是连接实物图,红色框出来的是电源接口,黄色框出来的是电源接通后的指示灯,蓝色框出来的是网线接口,紫色框出来的是网线接口指示灯:

        使用 SSH 远程登录重新拍。确保开发板已连接以太网或 Wi-Fi,获取 IP 地址后,通过 SSH 连接到开发板(默认用户名:HwHiAiUser,密码:Mind@123)。

  1. 本机登录(HDMI)模式

        将 HDMI0 接口连接到显示器,通过 USB 接口连接键盘和鼠标,开机后进入 Linux 系统桌面。以下是连接实物图,红色框出来的是HDMI0,黄色框出来的是USB接口:

第二章:大胆的项目构想

        在我收到香橙派 AIpro 后,便萌生了一个大胆的构想——利用这块强大的开发板,实现一个基于深度学习与 OpenCV 的疲劳驾驶检测系统。香橙派 AIpro 不仅为该项目提供了强大的计算能力和丰富的接口支持,更在多个环节中发挥了关键作用。

        随着汽车数量的增加和交通事故的频发,疲劳驾驶已成为道路交通安全的重大隐患。为了减少因疲劳驾驶引发的事故,我决定构建一个智能疲劳驾驶检测系统。该系统将基于香橙派 AIpro 硬件平台,结合深度学习与 OpenCV 技术,对驾驶员的疲劳状态进行实时监测和预警。

系统架构设计

        该系统的整体架构如下:

硬件平台

香橙派 AIpro

摄像头与智能补光灯

用于实时捕捉驾驶员面部图像与根据环境补偿亮度

数据预处理

  • 图像灰度转换
  • 图像缩放与旋转
  • 图像平滑与增强

人脸检测

采用 Haar 特征级联分类器

特征提取与分类

基于卷积神经网络(CNN)的深度学习模型

疲劳状态评估

  • 面部表情评分:眼睑闭合、口腔张合等
  • 头部姿态分析:通过人脸 3D 模型计算欧拉角,判断是否有瞌睡点头行为

疲劳判断模型

结合预设的阈值和规则,生成专属的疲劳驾驶判断模型

报警系统

当检测到驾驶员疲劳时,通过声音、图像或文字发出警报和提醒

香橙派 AIpro 在项目中的重要作用

        香橙派 AIpro 作为该系统的核心硬件平台,发挥了至关重要的作用:

  1. 强大的计算能力:香橙派 AIpro 搭载了昇腾 AI 处理器,提供 8TOPS INT8 的计算能力,为深度学习模型的实时推理提供了强大的算力支持。这使得系统能够快速处理和分析大量的面部图像数据,实时评估驾驶员的疲劳状态。
  2. 丰富的接口支持:香橙派 AIpro 提供了多种接口,包括 HDMI、MIPI CSI 摄像头接口、USB 接口等,极大地简化了硬件连接和数据传输。通过这些接口,可以轻松连接摄像头、显示器和其他外设,保证系统的高效运行。
  3. 稳定的系统支持:香橙派 AIpro 支持多种操作系统,包括 Ubuntu 和 openEuler。这为开发和调试提供了灵活性和便利性,使得系统的搭建和优化过程更加顺利。

第三章:开发过程中的奇幻旅程

总体设计

        疲劳驾驶检测系统作为控制终端,将智能补光灯辅助的摄像头采集到的图像数据传递给 OpenCV 进行图像数据处理,然后将数据处理结果交给 TensorFlow 中的卷积神经网络(CNN)进行分析与评分,并更新驾驶员专属数据库。最后,对分析结果进行判断驾驶员是否疲劳驾驶,并在判断为疲劳驾驶时进行对应的报警提醒。总体框架如下图所示:

        系统硬件连接图如下图所示,紫色框中的是摄像头,负责捕捉驾驶员图像;在其两侧淡蓝色框中的是智能红外补光灯,负责光线不足时的补光;蓝色框中的是智能语音播报器,负责播报指令与驾驶员进入疲劳状态后的听觉报警;红色框中的是电机(代替震动电机,凑合用一下啦),负责驾驶员进入疲劳状态后的触觉报警;黄色框中的是LED灯珠,负责驾驶员进入疲劳状态后的视觉报警:

系统功能
  1. 人脸识别检测

        系统通过摄像头捕捉并定位图像中的人脸区域,对其进行裁剪和归一化处理。将检测到的人脸与数据库中已录入的驾驶员人脸进行对比,如数据库中不存在此人脸,则建立新的数据库来收集新驾驶员的脸部特征信息;如存在,则加入该驾驶员的历史脸部特征数据来建立专属的疲劳驾驶检测模型。

  1. 眼部状态识别

系统根据眼睛左右眼面部标志的特征点,计算眼睛长宽比(EAR)值,以判断是否眨眼或眯眼。眼睛长宽比 EAR 值是指眼睛垂直距离与水平距离的比值,反映眼睛的开合程度。系统通过深度神经网络模型从人脸区域中提取左右眼特征点,并使用公式计算 EAR 值。

  1. 嘴部状态识别

        系统根据嘴部张合程度(MAR)和张合时间,判断驾驶员是否打哈欠。打哈欠是指嘴部张开到一定程度并持续一定时间的行为。系统通过深度神经网络模型从人脸区域中提取嘴部轮廓和面积,并计算嘴部张合角度和持续时间。

  1. 头部状态识别

        系统根据头部的 XYZ 轴旋转角度,判断头部的俯仰程度。头部的俯仰程度是指头部相对于水平面的倾斜角度。通过计算眼睛、鼻子等特征点的中心坐标来实现头部中心和头部方向向量的计算,构建旋转矩阵,并计算出欧拉角以判断驾驶员是否有瞌睡点头行为。

  1. 疲劳程度评估

        系统根据眼部状态、嘴部状态和头部状态识别的结果,综合考虑时间和场景因素,结合数据库中每位驾驶员的脸部特征与日常习惯特征,对驾驶员的疲劳程度进行评估。

  1. 警报或提醒生成

        系统根据疲劳程度评估结果,通过视觉、听觉、触觉等方式给予驾驶员警报,提醒其休息或更换司机。

模型训练

1. 数据收集与标注

  • 收集大量的驾驶员面部图像,包含各种表情和姿态。
  • 对图像进行标注,标记出面部区域、眼睛状态(如开眼、闭眼)、打哈欠等信息。

2. 模型选择与训练

  • 选择卷积神经网络(CNN)作为深度学习模型,用于特征提取和分类。
  • 使用收集和标注好的数据集进行模型训练,调整模型参数以提高准确率和实时性。

3. 模型部署

  • 将训练好的模型部署到香橙派 AIpro 上,使用其强大的算力进行实时推理和分析。
  • 优化模型推理代码,确保在香橙派 AIpro 上能够高效运行。

import tensorflow as tfmodel = tf.keras.models.load_model('fatigue_detection_model.h5')def predict_fatigue(image):processed_image = preprocess_image(image)prediction = model.predict(processed_image.reshape(1, 224, 224, 1))return prediction

        香橙派 AIpro 在模型训练中的优势在于它强大的计算能力香橙派 AIpro 搭载了昇腾 AI 处理器,提供 8TOPS INT8 的计算能力,能够高效处理大量数据并快速进行深度学习模型的推理。这对于实时疲劳检测系统来说至关重要,因为系统需要在毫秒级别内处理并分析图像数据,以确保及时识别出驾驶员的疲劳状态并发出警报。之前也使用过树莓派去训练模型,但是这一次只能说香橙派AIpro太香了。

第四章:系统测试与魔法调试

        激动人心的时候来啦,将训练好的模型部署在香橙派AIpro上后,运行代码,是骡子是马,该拉出来遛遛了。

        运行截图如下(视频就不展示啦,笔者害羞),效果还是可以的啦,人脸68个关键点都检测出来了,正常眨眼,打哈欠,瞌睡点头都很识别出来。到了设定的阈值也能及时报警:

结尾:奇幻之旅的终点与新篇章

        回顾这段旅程,真是一场充满挑战和乐趣的奇幻之旅。从最初收到香橙派 AIpro 时的兴奋,到一步步克服困难、实现目标的满足感,每一个瞬间都让我感受到了技术的魅力和创新的力量。

        香橙派 AIpro 不仅是一个工具,更像是我的伙伴,陪伴我走过了这段精彩的开发历程。它强大的计算能力、丰富的接口支持以及灵活的开发环境,使我能够顺利实现疲劳驾驶检测系统的构想。每当我遇到问题时,香橙派 AIpro 的性能总能让我找到解决的办法。无论是复杂的数据处理,还是实时的图像分析,它都表现得游刃有余。

        然而,这只是一个开始。通过这次项目,我积累了宝贵的经验和技能,也激发了我对未来更多项目的无限想象。我计划继续探索香橙派 AIpro 的更多可能性,尝试新的项目和挑战。无论是智能家居、物联网还是更多的人工智能应用,香橙派 AIpro 都将是我不可或缺的伙伴。

        🍻同时欢迎大家关注和订阅我的频道,让我们一起探索科技的无尽可能。如果你有任何问题或建议,也欢迎在评论区留言,我会尽力解答。

这篇关于橙派探险记:开箱香橙派 AIpro 与疲劳驾驶检测的奇幻之旅的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1016160

相关文章

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

烟火目标检测数据集 7800张 烟火检测 带标注 voc yolo

一个包含7800张带标注图像的数据集,专门用于烟火目标检测,是一个非常有价值的资源,尤其对于那些致力于公共安全、事件管理和烟花表演监控等领域的人士而言。下面是对此数据集的一个详细介绍: 数据集名称:烟火目标检测数据集 数据集规模: 图片数量:7800张类别:主要包含烟火类目标,可能还包括其他相关类别,如烟火发射装置、背景等。格式:图像文件通常为JPEG或PNG格式;标注文件可能为X

基于 YOLOv5 的积水检测系统:打造高效智能的智慧城市应用

在城市发展中,积水问题日益严重,特别是在大雨过后,积水往往会影响交通甚至威胁人们的安全。通过现代计算机视觉技术,我们能够智能化地检测和识别积水区域,减少潜在危险。本文将介绍如何使用 YOLOv5 和 PyQt5 搭建一个积水检测系统,结合深度学习和直观的图形界面,为用户提供高效的解决方案。 源码地址: PyQt5+YoloV5 实现积水检测系统 预览: 项目背景

JavaFX应用更新检测功能(在线自动更新方案)

JavaFX开发的桌面应用属于C端,一般来说需要版本检测和自动更新功能,这里记录一下一种版本检测和自动更新的方法。 1. 整体方案 JavaFX.应用版本检测、自动更新主要涉及一下步骤: 读取本地应用版本拉取远程版本并比较两个版本如果需要升级,那么拉取更新历史弹出升级控制窗口用户选择升级时,拉取升级包解压,重启应用用户选择忽略时,本地版本标志为忽略版本用户选择取消时,隐藏升级控制窗口 2.

[数据集][目标检测]血细胞检测数据集VOC+YOLO格式2757张4类别

数据集格式:Pascal VOC格式+YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):2757 标注数量(xml文件个数):2757 标注数量(txt文件个数):2757 标注类别数:4 标注类别名称:["Platelets","RBC","WBC","sickle cell"] 每个类别标注的框数:

Temu官方宣导务必将所有的点位材料进行检测-RSL资质检测

关于饰品类产品合规问题宣导: 产品法规RSL要求 RSL测试是根据REACH法规及附录17的要求进行测试。REACH法规是欧洲一项重要的法规,其中包含许多对化学物质进行限制的规定和高度关注物质。 为了确保珠宝首饰的安全性,欧盟REACH法规规定,珠宝首饰上架各大电商平台前必须进行RSLReport(欧盟禁限用化学物质检测报告)资质认证,以确保产品不含对人体有害的化学物质。 RSL-铅,

YOLOv8/v10+DeepSORT多目标车辆跟踪(车辆检测/跟踪/车辆计数/测速/禁停区域/绘制进出线/绘制禁停区域/车道车辆统计)

01:YOLOv8 + DeepSort 车辆跟踪 该项目利用YOLOv8作为目标检测模型,DeepSort用于多目标跟踪。YOLOv8负责从视频帧中检测出车辆的位置,而DeepSort则负责关联这些检测结果,从而实现车辆的持续跟踪。这种组合使得系统能够在视频流中准确地识别并跟随特定车辆。 02:YOLOv8 + DeepSort 车辆跟踪 + 任意绘制进出线 在此基础上增加了用户

PRN(20201231):驾驶人驾驶决策机制遵循最小作用量原理

王建强, 郑讯佳, 黄荷叶. 驾驶人驾驶决策机制遵循最小作用量原理[J]. 中国公路学报, 2020, v.33;No.200(04):159-172. 观点: 为提升智能汽车的自主决策能力,使其能够学习人的决策智慧以适应复杂多变的道路交通环境,需要揭示驾驶人决策机制。 依据: 物理学中常用最小作用量原理解释自然界(包括物理和生物行为)极值现象。同时,最小作用量原理还用于解释蚂蚁在觅

独立按键单击检测(延时消抖+定时器扫描)

目录 独立按键简介 按键抖动 模块接线 延时消抖 Key.h Key.c 定时器扫描按键代码 Key.h Key.c main.c 思考  MultiButton按键驱动 独立按键简介 ​ 轻触按键相当于一种电子开关,按下时开关接通,松开时开关断开,实现原理是通过轻触按键内部的金属弹片受力弹动来实现接通与断开。  ​ 按键抖动 由于按键内部使用的是机

基于stm32的河流检测系统-单片机毕业设计

文章目录 前言资料获取设计介绍功能介绍具体实现截图参考文献设计获取 前言 💗博主介绍:✌全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对象是咱们电子相关专业的大学生,希望您们都共创辉煌!✌💗 👇🏻 精彩专栏 推荐订阅👇🏻 单片机设计精品