当前位置:网站首页>使用百度EasyDL实现森林火灾预警识别
使用百度EasyDL实现森林火灾预警识别
2022-08-11 03:53:00 【飞桨PaddlePaddle】
项目说明
业务背景
据统计,2021年全国共接报火灾74.8万起,直接财产损失高达67.5亿元。火灾已经成为危害人们生命财产安全的一种多发性灾害。 针对住宅、加油站、公路、森林等火灾高发场景,如果不能在火灾初始阶段就及时发现并扑灭,会导致更高的扑救难度及损失。
业务难度
多数火灾发生在偏远地区,且面积大,预警信息快速反馈尤为重要,仅靠人工巡检,效率慢且容易发现漏识别情况。
解决思路
通过EasyDL物体检测任务最快可在15分钟内训练出一个高精度的烟雾和火灾检测模型,通过AI应用有效地预防此类问题,可以自动检测监控区域内的烟雾和火灾,帮助相关人员及时应对,最大程度降低人员伤亡及财物损失。
数据准备
数据采集与导入
建议采集真实应用场景的数据,如森林火灾现场图片,如无对应丰富样本,也可从历史森林火灾事故视频中抽取森林背景下的火灾烟雾和火种图片。
一般情况下,使用无人机进行巡检是常见的预警手段,数据采集时的图片视角需与无人机摄像头角度保持一致,如下图:
采集完毕的原图图片可以打包上传到平台,使用平台内置的物体检测标注工具进行标注。采集图片时,EasyDL智能数据服务提供数据采集功能,即您下载数据采集软件到本地后,通过使用AK、SK与平台联动,现场采集的图片可以实时回传到平台,用于您下一步的标注与训练。
您可以根据摄像头与时间,定制化选择需要回传的摄像头数据,将会按照您设定的抽帧规则,进行图片截取展示。
除通过摄像头采集本地软件直接将数据发送到平台外,还可通过本地上传或将数据保存至百度bos或网盘后通过分享链接上传。
数据标注
由于需训练一个目标检测模型,检测图片中的烟火,所以标注时需选择目标检测模版进行标注,标注时注意所有图片中出现的烟雾、火种都需要被框出(框可以重叠),检测框应包含整个识别对象,且尽可能不要包含多余的背景。
提示:由于烟火检测干扰样本多,极容易造成误检,生活中有很多物体和烟火是非常接近的,很难区分(比如:云朵、红色的灯光等),容易造成模型误检,所以建议也采集一定数量的数据作为负样本。
模型训练
选择物体检测任务类型,点击创建模型,根据实际业务自定义命名 平台支持选择公有云、本地服务器、边缘小型设备等多种部署方式,详情参见:https://ai.baidu.com/ai-doc/EASYDL/dk38n33k4 在烟雾和火灾检测场景中,我们希望模型能在火情发生的第一时间及时做出响应,对模型推理速度有较高的要求,所以建议将模型部署至离监控地点较近的边缘节点,降低网络带宽的同时也缩短了服务请求延时。选择算法时,可以选择高性能算法,获得更快的推理速度。
模型部署
由于烟火检测场景对实时性要求较高,建议使用边缘小型设备部署方式,可通过离线下载sdk手工部署或使用端云协同功能直接将部署包下发到边缘设备中。
效果优化
训练一次无法得到良好的模型效果是常见业务问题,您可以通过以下方式持续优化您的模型效果: 通过查看模型评估报告,发现识别错例或难例的分布特征,并针对性的扩充对应场景的数据集,如在本案例中发现烟火识别错误的case更多集中在大雾天气,因大雾天气导致烟火无法准确识别或者将大雾错误识别为烟,您可以采集更多此场景的数据扩充数据集 ,通过预测服务回流,采集更多真实场景数据,持续迭代模型效果 。
常见问题
问题1:我该采集多少数据?
在数据采集数量上,一是要保证每个标签的数据量不低于50,理论上标签量越多,模型效果更好;二是尽量保证各个标签的数据量不要差异太大,也就是要具有一定的均衡性。
问题2:真实场景中火灾事件不经常发生,如何采集更多训练数据?
为方便更快获取丰富多样的违规场景数据,可添加开源数据集(需保证开源数据集与真实场景匹配),或通过数据增强技术生成虚拟图片。
问题3:模型部署完成后,需在视频流中检测烟火,需进行视频抽帧后才可调用模型获取预测结果,有没有简单开发量较少的方式?
建议使用IEC智能边缘控制台,通过IEC,可以方便地在本地进行EasyDL SDK的部署,可视化接入本地和远程摄像头,详情参见:https://ai.baidu.com/ai-doc/EASYDL/Gktuwc59w
本文同步分享在 博客“飞桨PaddlePaddle”(CSDN)。
如有侵权,请联系 [email protected] 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。
边栏推荐
- Alibaba Cloud releases 3 high-performance computing solutions
- Graphical LeetCode - 640. Solving Equations (Difficulty: Moderate)
- shell监视gpu使用情况
- [ADI low-power 2k code] Based on ADuCM4050, ADXL363, TMP75 acceleration, temperature detection and serial port printing, buzzer playing music (lone warrior)
- Docker 链接sqlserver时出现en-us is an invalid culture错误解决方案
- Qnet Weak Network Test Tool Operation Guide
- typedef定义结构体数组类型
- DNS separation resolution and intelligent resolution
- “顶梁柱”滑坡、新增长极难担重任,阿里“蹲下”是为了跳更高?
- Leetcode 450. 删除二叉搜索树中的节点
猜你喜欢
[C Language] Getting Started
【FPGA】名词缩写
DNS separation resolution and intelligent resolution
What is ensemble learning in machine learning?
"98 BST and Its Verification" of the 13th day of leetcode brushing series of binary tree series
When EasyCVR is connected to the GB28181 device, what is the reason that the device is connected normally but the video cannot be played?
获取Qt的安装信息:包括安装目录及各种宏地址
QueryDet:级联稀疏query加速高分辨率下的小目标检测
【FPGA】day22-SPI协议回环
EasyCVR接入GB28181设备时,设备接入正常但视频无法播放是什么原因?
随机推荐
How can users overcome emotional issues in programmatic trading?
uni-app - 城市选择索引列表 / 通过 A-Z 排序的城市列表(uview 组件库 IndexList 索引列表)
"110 Balanced Binary Tree Judgment" in leetCode's 14-day binary tree series
Echart地图的省级,以及所有地市级下载与使用
Description of ESB product development steps under cloud platform
Will oracle cardinality affect query speed?
E-commerce project - mall time-limited seckill function system
watch监听
Power Cabinet Data Monitoring RTU
C language recv() function, recvfrom() function, recvmsg() function
es-head plugin insert query and conditional query (5)
使用jackson解析json数据详讲
程序化交易改变了什么?
Binary tree related code questions [more complete] C language
Roewe imax8ev cube battery security, what blackening and swelling are hidden behind it?
"104 Maximum Depth of Binary Trees" in LeetCode's Day 12 Binary Tree Series
shell monitors gpu usage
阿里云发布3大高性能计算解决方案
Enter the starting position, the ending position intercepts the linked list
拼多多店铺营业执照相关问题