利用电动车进电梯检测系统识别电动车入楼行为,算法上实现的难点与方案

news/2024/5/19 12:48:08 标签: 人工智能, 边缘计算, 算法, 目标检测

目前,我国电动自行车保有量已超过3.5亿辆。有限的充电场所难以满足日益增长的充电需求。许多人选择将电动车通过电梯带进家中充电。因此,火灾事故时有发生。数据显示,与电动车有关的起火事故占火灾总比35%。电梯空间狭小密闭,电动车一旦起火,将对人身安全带来巨大威胁。电梯内一般安装有监控摄像头,而通过人工巡检的方式费时费力,容易造成漏检。因此,许多企业开发了基于人工智能视觉分析的电动车进电梯识别系统。

在实际应用中,大部分电动车进电梯识别系统存在大量误报漏报。因此,如何梯轿厢电动车识别的准确率是面临的一大难点。

难点解析

目前,电动车进电梯识别算法核心问题为召回率与准确率不足。AI视觉识别难点主要分为以下三个方面。

1、电动车进电梯后空间受限且目标遮挡

受到电梯空间、摄像头安装角度、人员密集等条件影响,电动车进电梯后目标被部分或严重遮挡,只有少部分数据可供神经网络学习。由于遮挡数据的多样性与复杂性,模型只能学习到局部特征,容易造成过拟合,从而引发漏报或误报问题。

如上左图,电动车目标被人员遮挡,漏出仪表盘与车筐。如上右图,电动车被人员遮挡,漏出车尾且画质模糊。以上遮挡与模糊问题影响神经网络特征学习。

2、电动车外观形态差异多样

不同品牌型号电动车外观差异多样,如自行车式电动车、电摩。不同电动车装载配饰多样,如带挡风。多样化的外观与配饰差异使模型难以提取共性特征,给模型检测带来了困难。

如上左图,带挡风的电动车为装饰物,其改变了电动车原有特征属性。如上右图,自行车式电动车与自行车形态相似增加了深度学习模型辨别难度。

3、相似目标较难区分

电梯内目标复杂,存在多种与电动车相似物体,比如滑板车,自行车部分特征与电动车相似。由于遮挡问题训练处的过拟合模型,很容易将这些相似目标误报为电动车,导致电动车进电梯识别的不准确。

如上图,滑板车、自行车部分外形特征与电动车相似。由于遮挡数据与细粒度特征学习能力差异,容易导致模型过拟合,产生误报。

解决方案

为了解决电动车进电梯识别中出现的遮挡、形态多样、相似目标引起的模型漏报与误报问题。本方案采取了数据与模型增强方式,提升模型性能与泛化能力。

1、数据增强

(1)Random Erasing

采用Random Erasing数据增强方式,模拟目标被遮挡问题,获取多样性遮挡目标,使模型更加关注区分性特征。具体方法如下。

  • 随机选图:首先设定图像被选中的概率pt,如果随机概率p>pt,则该图像需进行随机擦除
  • 随机区域:在整幅图像中随机选择1个点pi,设置随机擦除的面积s以及目标宽高比t
  • 随机像素:在随机擦除的位置,给每个像素随机赋值[0,255]

(2)CutMix

由于随机擦除的方式让网络接收的有效信息变少,能不能在擦除的同时,用别的特征补上?采用CutMix对电瓶车目标图像随机位置用新图遮盖。图像的特征为两图像的混合,图像的标签为两图像的one-hot编码的加权。这样做的目的:使网络更加关注被检目标的区分性特征,同时学习遮盖图像的有效特征。具体方法如下:

  • 参数设置:设置电瓶车目标图像与遮盖图像的融合率lamda
  • 随机选图:选取遮盖图像,并根据随机区域进行裁剪
  • 随机区域:随机裁剪区域为(rx,ry,rw,rh),这四个值按照公式(2)计算
  • 两图融合:将裁剪出的遮盖图像RegionB覆盖至图像A,在A中的位置与在B中的位置相同,标签为两one-hot标签的加权融合值

2、模型增强

注意力机制模型增强

综合考虑检测精度、待检测目标尺寸等因素,选择yolov5s作为本方案的基础模型;在此基础上,在模型的主干网络中嵌入坐标注意力机制(coordinate attention,CA)以提高网络对遮挡目标的检测能力,坐标注意力是一种将位置信息嵌入到通道中的轻量级注意力机制,可以有效增强网络提取特征的表达效果。将注意力增强后的C3模块命名为C3s。

遮挡目标网络可用特征有限,需要更加关注细粒度的区分性特征,C3s模块关注关键区分性特征,使模型辨别能力更强。


http://www.niftyadmin.cn/n/5480654.html

相关文章

Java面试题:描述观察者模式的工作原理及其在Java中的应用。

观察者模式(Observer Pattern)是一种行为型设计模式,它定义了一种一对多的依赖关系,当一个对象(称为观察者)的状态发生变化时,所有依赖于它的对象(称为订阅者)都将得到通…

C/S医学检验LIS实验室信息管理系统源码 医院LIS源码

LIS系统即实验室信息管理系统。LIS系统能实现临床检验信息化,检验科信息管理自动化。其主要功能是将检验科的实验仪器传出的检验数据经数据分析后,自动生成打印报告,通过网络存储在数据库中,使医生能够通过医生工作站方便、及时地…

【C++第二阶段】文件操作

以下内容仅为当前认识,可能有不足之处,欢迎讨论! 文章目录 文件操作文件写入流程简单的demo写操作 文件读流程二进制写文件二进制读文件 文件操作 文件写入流程 写文件包括以下几个步骤 1.包含头文件 2.创建流对象 3.打开文件&#xff0…

【MATLAB源码-第179期】基于matlab的64QAM调制解调系统频偏估计及补偿算法仿真,对比补偿前后的星座图误码率。

操作环境: MATLAB 2022a 1、算法描述 在通信系统中,频率偏移是一种常见的问题,它会导致接收到的信号频率与发送信号的频率不完全匹配,进而影响通信质量。在调制技术中,QPSK(Quadrature Phase Shift Keyi…

代码随想录-算法训练营day08【字符串01:反转字符串、替换数字、反转字符串里的单词、右旋转字符串】

代码随想录-035期-算法训练营【博客笔记汇总表】-CSDN博客 第四章 字符串part01今日任务 ● 344.反转字符串 ● 541. 反转字符串II ● 卡码网:54.替换数字 ● 151.翻转字符串里的单词 ● 卡码网:55.右旋转字符串详细布置 344.反转字符串 建议&#xff1a…

lanqiao.125卡片换位(2016年蓝桥杯C/C++省赛C组)

题目&#xff1a; 语法点&#xff1a; 1. unordered_map<string,int> dist; //存储图的不同状态及不同状态对应的步数 2. unordered_map的相关操作&#xff0c;详细见C中的unordered_map用法详解-CSDN博客 dist.count(x) //来寻找x出现的次数 dist.find(x) //来…

C++的并发世界(十一)——线程池

0.线程池的概念 1.线程池使用步骤 ①初始化线程池&#xff1a;确定线程数量&#xff0c;并做好互斥访问&#xff1b; ②启动所有线程 ③准备好任务处理基类&#xff1b; ④获取任务接口&#xff1a;通过条件变量阻塞等待任务 2.atomic原子操作 std:atomic是C11标准库中的一个…

C/C++ inline 函数

C/C中包含了一类inline函数&#xff0c;其只是单纯在原本函数申明或者定义前面多了一个inline 但是带来含义的确实不一样的。 如果不带inline那么主函数执行到函数入口处会跳到相应的函数代码除继续执行&#xff0c;在内存 中的代码段内存中这些代码不是连续的&#xff0c;这样…