毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

这篇具有很好参考价值的文章主要介绍了毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

前言

课题背景和意义

实现技术思路

一、系统整体设计

二、智能安防车硬件系统设计

三、室内安防车自动巡逻机制的实现

四、基于 OpenCV 图像识别的火焰识别

五、分类器设计及软件实现

代码部分

实现效果图样例

最后


前言


    📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的毕设项目越来越难,有不少课题是研究生级别难度的,对本科同学来说是充满挑战。为帮助大家顺利通过和节省时间与精力投入到更重要的就业和考试中去,学长分享优质的选题经验和毕设项目与技术思路。

🚀对毕设有任何疑问都可以问学长哦!

选题指导: https://blog.csdn.net/qq_37340229/article/details/128243277

大家好,这里是海浪学长毕设专题,本次分享的课题是

🎯基于机器视觉的室内智能安防车系统 -STM32和 OpenCV 

课题背景和意义

室内安防对于检测室内火灾、煤气泄漏、入室盗窃 等险情具有重要的意义。目前室内安防的主要手段包 括基于摄像头的视频监控设备和基于一系列传感器的 定点检测设备,能够对煤气泄漏、火灾、入室盗窃等室内 危险情况进行检测并报警,但这些传统的安防设备最大 的缺点就是位置固定,存在检测死角,要实现无死角检 测将会增加成本 。移动式的智能安防设备能够很好 地弥补传统安防设备的不足,但移动式安防设备主要受 限于定位与导航技术。目前已有很多技术成熟的室外 移动式安防设备,如美国 KnightScope 公司的 K5、日本 Secom 公司的安防无人机,国内中智科创和浙江国自的 智能安防机器人等,但用于室内的移动式安防设备十分 欠缺。针对室内移动式安防设备的关键问题提出 了一种室内安防车的系统整体设计与实现方法、一种将 测距法与地磁计结合的路线规划导航方法以及一种基于特征识别的火焰检测方法。 这种集火焰识别与定位、路线规划、自动巡逻、环境参数检测、险情预警等功能于一体的室内智能安防车 设计,计解决了传统室内安防设备安装位置固定 导致检测死角的问题,给未来的室内智能移动安防设计提供了一定的参考价值。

实现技术思路

一、系统整体设计

图为室内智能安防车系统的功能框图,系统由Android 手机端、智能安防车、云平台三部分组成。

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

 1)Android 手机端实现了用户与小车的交互,用户通过手机端为小车自动巡逻规划路线,路线数 据的生成分为路线规划与路线学习两种方式。

2)智能小车对实时获取的视频数据进行火焰和入室人员检测,检测后的图像数据压缩编码并上传至云平台

3)网关作为小车与云平台通信的桥梁,实现了与无线 路 由 器 的 连 接 以 及 TCP 数 据 与 串 口 数 据 的 相 互转换。

4)云平台作为手机端与智能车通信的中转站,向上转发视频与环境数据,向下转发指令与线路数据。

二、智能安防车硬件系统设计

为智能安防车的硬件结构框图,硬件系统由STM32、树莓派、网关构成。

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

1)STM32F407 核心板外围配备多种传感器实现对环境参数的采集;

2)树莓派为核心板的机器视觉单元通过 CSI 接口连接 CMOS 摄像头,通过串口与 STM32 双向通信,通过双绞与网关进行连接,实现其采集图像数据的 上 传 。

3)以 AR9331 为 核 心 板 的 网 关 ,主要实现云平台与小车的双向数据传输,向云平台传送采集视频及各种环境参数,向小车传送由手机端发出的各种控制命令。

三、室内安防车自动巡逻机制的实现

路线数据生成原理
任意路线数据在一定的测量精度下都可以分解成为线段的组合,此时只需得到线段的长度和连续线段之间的偏转方向和角度作为导航信息,在保证小车行驶路线为直线和转向精确的前提下实现小车的精确导航。

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

假设线段 ab, bc 是用户绘制的路线中 的两段,为了让小车能够按照这两条线段行走 ,需求出 行驶距离、转弯角度及转向。行驶距离为线段 ab 和线 段 bc 的模,转弯角度为线段 ab 的延长线 bd 与线段 bc 的 夹角,转向为线段 ab至 bc的拐向。
用户在 APP上绘制路线时,每一条线段的端点坐标 可以被获取,以向量的方式进行运算,最后根据比例尺 映射到实际的路线之中,向量的模的公式为:

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

向量的夹角计算,第一步计算两向量夹角的余弦值,第二步通过反余弦计算角度,向量夹角余弦公式如下:

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

计 算 线 段 的 拐 向 通 过 向 量 叉 积 的 正 负 实 现 ,公式为:

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

 如果叉积结果大于 0,拐向为右拐;叉积结果小于0,拐向为左拐。

通过上面的方法得到路线数据后,手机端 APP 将其按一定的格式组成路线数据帧发送给安防车,控制其实现自动巡逻。路线数据帧格式如表:

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

导航原理及实现机制

 图为智能车自动巡逻导航流程,每读取一帧如表 所示数据,安防车自动行驶一段路,直到数据帧读完,则 安防车行驶完整条路线,导航结束。 首先对行径控制标 识进行判断,如果标识为前进或后退,控制器控制电机 旋转,从而驱动安防车,在行驶过程中通过电机编码器 对电机转速进行测量。

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

要实现直线行驶,就需要控制 4 个轮子的转速和方向保持一致,如果要实现原地旋转,只需在 4 个轮子转速一致的情况下, 使左右两组电机方向不同,在此使用 PID 算法 PID 的连续系统表达式如下:

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

 由于 MCU 处理的是离散信号,因此需使用PID离 散化公式。假设采样时间间隔为 T,则在 k时刻,偏差为 e ( k ),积分为 e ( k ) + e ( k - 1 ) + e ( k - 2 ) + … + e ( 0 ),微分为( e ( k ) - e ( k - 1 ) ) T,离散化后的公式如下:

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

 式中:比例系数为 Kp;积分系数为 Kp T Ti,用 Ki 表示; 微分系数为 Kp Td T,用 Kd表示。可以写成如下形式

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

 旋转精确角度实现机制

地磁传感器能够通过实时测量地球磁场在当前位置的三维投影解算出当前系统的航向角信息。在环境 不变的情况下,地磁传感器每个姿态感受的磁场强度是 相同的。在没有偏差和传感器内部三轴相互垂直的情况 下,传感器三轴的值可在三维空间中组成一个球面。
因此在使用前需要进行校准,由于本次设计只需用到两轴的测量数据,故只需在二维平面校正,本次设计采用最小二乘进行椭圆拟合来校正误差。 椭圆方程的二次多项式为:

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

P i ( x i , y i ) 为地磁传感器 X Y 轴方向旋转一圈得到的磁感应强度,其点数不小于5 ,根据最小二乘原理:

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

要使 F最小,即下式成立:

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

通过拟合就得到椭圆的系数,接下来将二次多项式方程转换成标准方程,求得长轴和短轴的值,最终根据式求得椭圆方位角:

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

 再由上式进行数据补偿,下式得到偏航角:

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

为了进一步减少误差,设计中使用相对角度进行导航,即在转向起始时刻获取一个航向角,加上或减去路线数据中的角度得到目标航向角。

四、基于 OpenCV 图像识别的火焰识别

Haar⁃Like 矩形特征是用于物体检测的一种数字图 像特征。Adaboost 是一种迭代算法,其核心思想是针 对同一个训练集训练不同的分类器(弱分类器),然后把 这些弱分类器集合起来,构成一个更强的最终分类器 (强分类器)。
1 ) Adaboost算法
初 始 化 样 本 权 重 为 D 1 = (ω 11 , ω 12 ,⋯, ω 1 m ) , 使 ω 1 i = 1 m ; i = 1, 2,⋯, m  
2 )迭代训练弱分类器。
以第 K 个弱分类器为例,使用具有权重 D k 的样本集训练,得到弱分类器 G k ( x ) 。由式 计算 G k ( x ) 的分类误差率以及弱分类器的系数。

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

更新样本集的权重分布:

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

  3)将各个弱分类器加权平均得到强分类器

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

五、分类器设计及软件实现

利用 OpenCV 库实现,首先训练用于检测 火焰的分类器,在准备好一定数量的正负样本以及对样 本进行预处理后,通过 OpenCV 自带的命令进行训练, 设计设置分类器的级联层数为 20,每一层的最低 正确检测率为 0.999,最大错误接受率为 0.5,1 000 个正 样本,600 个负样本,图片宽高为 60,在 CPU 为双核四线 程 2.6 GHz,内存为 8 GB 配置的 PC 上耗时 8 h 15 min 完成。

代码部分

void display(uchar temp) //判断障碍距离小车的距离,左转180,前进,峰呤器报警1602显示

{ uint ge,shi,bai,i;

if((temp<=20)&&(temp>2)) //小于15厘米 小车后退 再左转 { back(); left_180(); } if(count>=20) {bai=temp/100; //1602显示数据 date_data[5]=bai; shi=(temp0)/10; date_data [6]=shi; ge=temp0; date_data[7]=ge; for(i=0;i<8;i++) { LCD1602_WriteCom(0x80+i); LCD1602_WriteData(date_data[i]+48); } count=0; } }

void bizhang_test() { int i,j=0;

uchar distance_dat; delay(50); for(i=0;i<8;i++) { LCD1602_WriteCom(0x80+i); LCD1602_WriteData(ENCHAR_PuZh7[i]); } while(1) { run(); EA=0; //关总中断 TRIG=1; // 发射20us脉冲信号 delay(30);

'.

.

TRIG=0;

while(ECHO==0); //等待接收信号 state=0; //标志清零 EA=1; //开总中断 EX0=1; //打开外部中断0 P3.2外部中断0引脚 此时为高电平 TH0=0x00; //定时器0 初值 TL0=0x00;

TF0=0; // 定时器0方式1计数溢出标志 TR0=1; // 定时器0方式1启动定时器1

while(state!=1);

EX0=0; // 关闭外部中断0 TR0=0; // 关闭定时器0中断 TF0=0; // 定时器1方式1计数溢出标志 if(state==1) //检测到障碍物计算离障碍物的距离 { time=(timeH*4.352+timeL*0.017); //设定超声波的速度为340m/s 计数一次1us distance_dat=time; } else //未检测到障碍物 无返回信号 {

distance_dat=0; } distance[j]=distance_dat; j++; if(j==3) { if(distance[0]>distance[1]) {} else { distance[0]=distance[1]; } if(distance[0]>distance[2]) {} else { distance[0]=distance[2]; } if(distance[0]>distance[3]) {} else { distance[0]=distance[3];

'.

定时 } distance_dat=distance[0]; j=0; display(distance_dat); } count++; } }

void xunji_test() { int i; delay(50); for(i=0;i<8;i++) {

LCD1602_WriteCom(0x80+i);

LCD1602_WriteData(ENCHAR_PuZh6[i]); } while(1) {

// delay(10); state_1=HW;

DAT=state_1&(0x0f); //判断低4位的状态 switch(DAT) { case 0x00: run(); break; case 0x01: right_120(); break; case 0x02: right_90(); break; case 0x04: left_90(); break; case 0x06: run(); break; case 0x03: right_120(); break; case 0x08: left_120();

实现效果图样例

图为室内智能安防车手机端监控界面:
a )为进行路线数据生成的界面, 6b)为巡逻过程的数据显示界面

毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV

我是海浪学长,创作不易,欢迎点赞、关注、收藏、留言。

毕设帮助,疑难解答,欢迎打扰!文章来源地址https://www.toymoban.com/news/detail-416724.html

最后

到了这里,关于毕业设计-基于机器视觉的室内智能安防车系统 -STM32和 OpenCV的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 毕业设计-基于机器视觉的手势识别系统-OPENCV

    目录 前言 课题背景和意义 实现技术思路 一、系统总体设计 二、手势区域特征提取 三、系统设计与实现 四、总结 实现效果图样例 最后     📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年

    2024年02月08日
    浏览(51)
  • 毕业设计-基于机器视觉的交通标志识别系统

    目录 前言 课题背景和意义 实现技术思路 一、交通标志识别系统 二、交通标志识别整体方案 三、实验分析 四、总结 实现效果图样例 最后     📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几

    2024年02月03日
    浏览(35)
  • 毕业设计-基于机器视觉道路视频车道线检测识别

    目录 前言 课题背景和意义 实现技术思路 摄像机校准 ​编辑 透视变换  车道像素查找  识别车道面积 实现效果图样例     📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的

    2024年02月01日
    浏览(52)
  • 人工智能课程设计毕业设计——基于机器学习的贷款违约预测

    摘  要 随着人们对于贷款的需求量不断增加以及我国债券市场和信贷市场违约事件频发,商业银行不良资产率与用户个人贷款违约风险成为了政府和银行业关心的核心问题,而对信用贷款违约风险进行有效评估和测度也成为了商业银行提高其经营管理水平的核心要务。 本小

    2024年04月16日
    浏览(43)
  • 毕业设计选题:基于深度学习的舌头分割系统 人工智能 YOLO 计算机视觉

    目录 前言 课题背景和意义 实现技术思路 一、 算法理论基础 1.1 Snake模型  1.2 几何约束  1.3 切片重组 二、 数据集 三、实验及结果分析 最后     📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。

    2024年02月19日
    浏览(64)
  • 人工智能课程设计毕业设计——基于机器学习的手写汉字识别系统

    《机器学习》课程设计实验 报告 题目:基于深度学习的手写汉字识别系统 目录 基于深度学习的手写汉字识别系统实验报告 1. 绪论 ............................................................................................................................................................ 1 1.1 研究背景及意义..

    2024年02月20日
    浏览(47)
  • 毕业设计选题 基于深度学习的人流量预测系统 人工智能 YOLO 计算机视觉

    目录  前言 设计思路 一、课题背景与意义 二、算法理论原理 2.1 卷积神经网络 2.2 注意力机制 三、检测的实现 3.1 数据处理 3.2 实验环境搭建 3.3 实验及结果分析 最后        📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要

    2024年01月19日
    浏览(51)
  • 毕业设计:基于深度学习的绝缘子缺陷检测系统 人工智能 YOLO 计算机视觉

    目录 前言 一、课题背景与意义 二、设计思路 2.1.多尺度特征融合 2.2 绝缘子缺陷检测 三、模型训练 3.1 实验环境 3.2 结果分析 最后 前言  📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各

    2024年01月18日
    浏览(42)
  • 毕业设计选题:基于机器学习的虚假新闻识别系统 人工智能 python

      目录  前言 设计思路 一、课题背景与意义 二、算法理论原理 2.1 机器学习 2.2 深度学习  三、检测的实现 3.1 数据集 3.3 实验及结果分析 最后        📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精

    2024年01月19日
    浏览(52)
  • 毕业设计:基于深度学习的危险驾驶(抽烟、打电话)检测系统 人工智能 python 计算机视觉

    目录 前言 一、课题背景与意义 二、算法理论技术 2.1 双路金字塔网络 2.2 算法实现 三、模型训练 3.1 实验环境 3.2 结果分析 最后  📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要

    2024年04月09日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包