火灾检测、人流量统计… 这个开源项目太香了!
随着以深度学习为代表的人工智能技术的成熟,国内众多行业都在基于人工智能技术推进行业变革与创新,积极探寻有效、有价值的应用场景进行商业化落地,其中尤以安防行业表现最为活跃。如灾害监控、人流量监控、施工安全监控、吸烟检测、口罩检测等。
虽然深度学习发展取得了不错的成绩,但是在产业落地时仍然面临诸多问题:训练数据获取难、模型泛化能力差、性能或效率达不到生产要求等。为此,百度飞桨结合实际经验,选取了火灾烟雾检测、人流量统计、安全帽检测这3个经典的场景,提供了从数据准备、模型训练优化,到模型部署的全流程可复用方案,降低产业落地门槛。
听说文档和代码已经开源了,赶紧来围观:
https://github.com/PaddlePaddle/awesome-DeepLearning
接下来我们就一起看下这三个案例吧:
火灾烟雾检测
据统计,全国共接报火灾25.2万起,死亡1183人,受伤775人,直接财产损失40.09亿元。传统的火灾烟雾检测存在监管难度大、人员管理难、工地数量多且分散等问题。针对以上问题,我们与普宙科技针对城市和森林两大场景,基于开源数据集和自研数据集进行烟雾和火灾检测的合作研发。
为了让模型结果更具说服力,我们重新定义了评价指标:
1)图片级别的召回率:只要在有目标的图片上检测出目标(不论框的个数),该图片被认为召回。批量有目标图片中被召回图片所占的比例,即为图片级别的召回率。
2)图片级别的误检率:只要在无目标的图片上检测出目标(不论框的个数),该图片被认为误检。批量无目标图片中被误检图片所占的比例,即为图片级别的错误率。
本案例分别选用了单阶段检测模型YOLOV3、PPYOLOV1、PPYOLOV2进行实验。模型优化策略包括数据增强、可变形卷积、加入背景图片等,下表详细展示了不同实验结果(单卡NVIDIA Tesla V100下同):
注:
aug:RandomHorizontalFlip + RandomDistort + RandomCrop + RandomExpand+MixupImage
aug1:RandomResizeByShort + RandomHorizontalFlip
根据上述实验数据,我们的方案降低了错误率、提高了召回率。推荐使用backbone为ResNet101的PPYOLOV2模型,通过使用数据增强、加入背景图、COCO预训练、空间金字塔池化(SPP)等优化策略,实现96%召回率,2.2%的误检率。更多优化策略详解请关注我们的直播课。
将我们AI模型装入无人机,可以实现无人机森林智能巡检,及时发现火情。此外,借力AI也可以发现非法越境、贩毒等违法犯罪行为,便于及时取证调查。
人流量统计
在商场或火车站等人流量较大的公开场合,其管理者可能需要进行动态人流量统计来监控商场/火车站每天的客流量数。因为人员基数较大、流动性较高,通过人工来进行流量统计并不现实。针对该问题,本项目与上海音智达公司合作,智能高效地实现动态场景下的人流量统计。
本案例技术的实现采用目前精度和速度都表现很好的多目标跟踪算法FairMOT,全部实验结果如下表所示(单卡NVIDIA Tesla V100)。通过尝试不同的优化策略,更改优化器、损失函数、使用数据增强、增加可变形卷积(dcn)、开启跨卡同步batch normalization(syncbn)、使用指数移动平均(EMA)、更换主干网络等,模型的最高跟踪准确度(MOTA)达到71.7。更多优化策略细节可以关注我们的直播课程。
用户可以直接使用我们开源的高精度行人检测跟踪模型进行fine-tuning或完成其他任务,如静态场景下的人员计数任务,助力公开场合的人员管理工作。该技术方案还可以用于车流量统计、嫌疑人跟踪等更多任务场景中。更多场景将在直播中解锁~
安全帽检测
在施工现场,对于来往人员以及工作人员而言,安全问题至关重要。而安全帽更是保障施工现场在场人员安全的第一防线,因此需要对场地中的人员进行安全提醒。当人员未佩戴安全帽进入施工场所时,人为监管耗时耗力,而且不易实时监管,过程繁琐、消耗人力且实时性较差。
针对以上问题,上海天覆科技有限公司基于百度同学自研、工业界表现超高性价比的PP-YOLOV2模型进行实验,获得如下数据。
推荐使用backbone为ResNet50的PPYOLOV2模型,添加可变形卷积dcn、输入图像大小为608的情况下,安全帽ap高达96.83%,推理速度达到13.7fps。使用NV-Jetson进行部署,实现很好的检测效果。
为了让大家更加深入地了解这些案例,获取产业实现方案,百度高工将于10月26-28日围绕四大行业、八大真实场景亲授产业实践案例课,欢迎小伙伴们锁定我们的直播间!
扫码报名直播课,立即加入技术交流群
精彩内容抢先看
点击下方“阅读原文”也可报名:
火灾检测、人流量统计… 这个开源项目太香了!相关推荐
- 超越YOLOv5,1.3M超轻量,高效易用,这个目标检测开源项目太香了!
这个目标检测神器简直香炸了!它不仅连续登录Github全球趋势榜,拥有的全球尖端算法论文也接连登录全球技术趋势榜PaperWithCode. 这个神器就是刚刚全面升级的PaddleDetection2 ...
- 卧槽!火爆github!超越YOLOv5,1.3M超轻量,高效易用,这个目标检测开源项目太香了!...
这个目标检测神器简直香炸了!它不仅连续登录Github全球趋势榜,拥有的全球尖端算法论文也接连登录全球技术趋势榜PaperWithCode. 这个神器就是刚刚全面升级的PaddleDetection2 ...
- 维护开源项目太难,Redis之父:只做自己想做的
本文转载自 InfoQ 最近,开源项目 Docz 作者 Pedro 发表短文称繁重的开源维护工作不可持续,自己曾处于"崩溃"状态. Pedro 表示最初为了开发 Docz,他可以提 ...
- vs2008编译QT开源项目--太阳神三国杀源码分析(一) 项目编译及整体分析
请参看 http://tieba.baidu.com/f?kz=1508964881 按照上面的网址教程,下载三国杀源码,swig工具,并下载最新的QT4.8.2 for vs2008.我本机已经安装 ...
- vs2008编译QT开源项目--太阳神三国杀源码分析(四) 动画
太阳神三国杀中,每当玩家出杀或吃桃子时,就会有一个动画效果,使界面非常生动绚丽.现在我们就分析一下QT中动画的原理,及实现方式,这里我们只分析吃桃子时的动画效果实现.由于三国杀有多个在线玩家同时游戏, ...
- vs2008编译QT开源项目--太阳神三国杀源码分析(三) 皮肤
太阳神三国杀的界面很绚丽,界面上按钮的图标,鼠标移入移出时图标的变化,日志和聊天Widget的边框和半透明等效果,既可以通过代码来控制,也可以使用皮肤文件qss进行控制.下面我们分析一下三国杀的qss ...
- 开源项目-太阳神三国杀-QT4编译教程
待更中 转载于:https://www.cnblogs.com/sinpener/p/10734692.html
- vs2008编译QT开源项目--太阳神三国杀源码分析(二) 客户端添加武将
接着上篇文章继续分析,我们来看看进入到roomScene(房间场景)后,点击add a robot按钮,是如何创建武将的.首先找到add to robot按钮的创建代码: add_robot = ne ...
- vs2008编译QT开源项目--太阳神三国杀源码分析(五) 分牌及出牌
游戏开始时选择武将后,服务端统一控制向玩家分发初始手牌,并向客户端发生绘制手牌的命令.跟踪的流程如下:服务端向客户端发送命令drawCards及随后的一串使用加号(+)连接起来的牌编号(drawCar ...
最新文章
- Asp.net导出Excel
- Doubly Linked List,( Aizu - ALDS1_3C )
- 二十八、layui的日历组件使用
- JavaScript中String和JSON互换
- Android应用开发经常使用知识
- springboot+thymeleaf+jpa博客多级评论展示案例
- ITK:建立一个Hello World程序
- 算法导论-排序(四)计数排序(线性时间排序)
- 文件共享服务器imac,iMac怎么在网络上共享设备windows文件夹和服务 | MOS86
- amd sata controller下载_AMD发布全新锐龙芯片组驱动:告别卡死、报错
- php 期望参数1为资源,PHP:mysql_fetch_array()期望参数1是资源,布尔给定
- mysql 同一天多条记录只取第一条_MySQL面试高频100问(二)
- hibernate笔记(一)
- 金融科技大数据产品推荐:金蜂巢大数据集成与脱敏系统
- [Python]利用python+ffmpeg合并B站视频及格式转换
- 异步电机无差拍模型预测电流控制(MPCC)
- 基于边缘特征的二值化阈值选取方法--ywp125
- 移动CPU异步多核和大小核的那些事
- 网络技术学习:虚拟专用网络
- HTML基础常识问答(二)
热门文章
- squid+iptables实现透明代理
- ORACLE中实现表变量的方法
- 静态方法调用注入对象(springMvc)
- Hadoop十岁!Doug Cutting成长史+他眼中大数据技术的未来
- java wms open,OpenLayers - 调用WMS安全层
- java异常类型和基本处理原则_Java异常控制机制和异常处理原则
- echo mysql_mysql select
- 学习编译原理对下面这段java跳不出死循环大概能有较好的解释吧
- unsupported operand type(s) for + NoneType and int
- android文件的读取方法,Android读取写入文件的方法