当前位置:网站首页>使用百度EasyDL实现施工人员安全装备检测
使用百度EasyDL实现施工人员安全装备检测
2022-08-11 03:53:00 【飞桨PaddlePaddle】
项目说明
业务背景
一些如输电线路检修、施工现场、石化厂区等高危区域,由于部分作业人员安全意识淡薄、安全技能缺乏,无知、图省事、从众等心理导致”三违”行为频发。
业务难点
传统的监控方案需监察人员24小时被动式值守观察,难免遗漏,只能用于事后回放、时候追责。
解决思路
以人工智能技术为手段,精准把握 “高精度质量检测,大范围安全管理”的行业需求。通过建立一套安全作业智能监控管理系统,实现实时监控、自动发现问题、主动预警,提高了过去依靠肉眼或“远水救不了近火”的窘境,及时发现各生产环节的安全隐患,以便于能够及时分析和处理隐患,最终实现安全生产。 客户是一家有丰富系统开发经历但没有AI开发能力的企业,在技术选型阶段,标准AI模型采买、付费请AI厂商开发定制模型、通过PaddlePaddle等开源AI开发套件自研等方式都有进入考虑范围,最终结合自身技术能力、成本、效率等因素,最终决定使用飞桨生态下的EasyDL物体检测任务自主完成AI模型的开发,将AI能力集成入自研智能监测系统中。

数据准备
数据采集与导入
选取出实际作业场景中不同时刻、不同拍照角度、光线条件、背景元素的图片作为训练数据,训练数据覆盖的场景越多,模型的泛化能力越强,训练数据与实际情况越贴近,模型效果越好。


EasyDL支持通过以图片、压缩包、和API的形式将本地数据导入至EasyDL里创建的数据集中,也可通过百度云BOS 、以及分享链接将平台内已有的数据集导入目标数据集。针对数据量较大的场景,推荐使用API形式进行导入。

数据标注
EasyDL提供了单人标注、多人标注、智能标注三种标注方式。使用多人标注功能可通过团队协作方式,提高数据标注效率。任务发起后,系统会生成任务链接发送至团队成员邮箱,并根据团队成员数自动分发任务量,标注成员提交任务后,管理员可以进行标注结果校验。使用智能标注,可以通过提供少量人工标注数据和未标注数据,通过智能标注能力进行自动标注,或使用现有的模型对新增的数据进行预标注,辅助您快速完成数据标注工作,并将数据用于模型的训练。

模型训练
数据准备工作完成后,选择物体检测任务类型,点击创建模型,根据您的实际需求对模型进行命名。 客户开发的智能监控使用环境可连接外部网络,同时对模型精度要求较高,创建训练时部署方式和算法类型就可分别选择「公有云部署」、「精度提升-百度超大规模预训练模型」。

部署方式和算法类型通常需要结合实际业务需求选择,EasyDL提供了多种精度、性能侧重点不同的算法供选择,侧重精度的算法拥有更好的识别效果,但对算力的消耗也越大。侧重性能算法相对高精度算法模型精度会所降低,但模型体积更小,拥有毫秒级响应的性能,适用于对性能有要求的场景。 如若需要使用私有化/离线部署,EasyDL提供了从服务器到通用小型设备、边缘终端(EdgeBoard、Jetson)等部署方式。 公有云部署:训练完成的模型存储在云端,可通过独立Rest API调用模型,实现AI能力与业务系统或硬件设备整合具有完善的鉴权、流控等安全机制,GPU集群稳定承载高并发请求。 私有服务器部署:将训练完成的模型部署在私有CPU/GPU服务器上,支持私有API和服务器端SDK两种集成方式,可在内网/无网环境下使用模型,确保数据隐私。 设备端SDK部署:训练完成的模型被打包成适配智能硬件(不含服务器)的SDK,可进行设备端离线计算。满足推理阶段数据敏感性要求、更快的响应速度要求(支持iOS、Android、Linux、Windows四种操作系统)。

模型部署
当对训练后的模型效果满意时,进入「发布模型」功能,选择所需发布的模型和版本,填写服务名称与接口名称等信息即可提交发布申请。完成申请提交后,点击在线服务,即通过审核的该条服务会展示在您的在线服务列表中,您可以点击服务详情,获取http地址,为保证您接口调用时的安全性、保密性,请您按照操作指引,前往控制台完成应用创建,即可获取对应的接口AK、SK,保证调用授权。

效果优化
由于光线、拍摄角度等环境变化的原因可能导致AI模型检测效果出现下降。此时建议周期性的将新采集的数据和保存的漏识别数据进行标注并使用「增量训练」功能再对模型进行优化,提升AI模型在业务场景中的检测效果。增量训练是在模型迭代训练时,用户在原训练数据上增加了训练数据,可通过加载原训练数据训练的模型参数进行模型训练,获得效果更好的模型。

本文同步分享在 博客“飞桨PaddlePaddle”(CSDN)。
如有侵权,请联系 [email protected] 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。
边栏推荐
- .NET service registration
- LeetCode刷题第16天之《239滑动窗口最大值》
- 我的 archinstall 使用手册
- Echart地图的省级,以及所有地市级下载与使用
- [FPGA] day19- binary to decimal (BCD code)
- LeetCode刷题第17天之《3 无重复字符的最长子串》
- [FPGA] Design Ideas - I2C Protocol
- Where can machine learning be applied?What is machine learning useful for?
- What problems should we pay attention to when building a programmatic trading system?
- 【组成原理 九 CPU】
猜你喜欢

Qnet弱网测试工具操作指南

Unity2D animation (1) introduction to Unity scheme - animation system composition and the function of use

Which one to choose for mobile map development?

【FPGA】day19-二进制转换为十进制(BCD码)

leetCode刷题14天二叉树系列之《 110 平衡二叉树判断》

【力扣】22.括号生成
![Binary tree related code questions [more complete] C language](/img/85/a109eed69cd54be3c8290e8dd67b7c.png)
Binary tree related code questions [more complete] C language

Power Cabinet Data Monitoring RTU

机器学习可以应用在哪些场景?机器学习有什么用?

【FPGA】day21- moving average filter
随机推荐
Redis老了吗?Redis与Dragonfly性能比较
【FPGA】day21- moving average filter
Which one to choose for mobile map development?
Is Redis old?Performance comparison between Redis and Dragonfly
"110 Balanced Binary Tree Judgment" in leetCode's 14-day binary tree series
App基本框架搭建丨日志管理 - KLog
App Basic Framework Construction丨Log Management - KLog
用户如何克服程序化交易中的情绪问题?
【Yugong Series】August 2022 Go Teaching Course 036-Type Assertion
【FPGA】day22-SPI协议回环
[FPGA] Design Ideas - I2C Protocol
【组成原理 九 CPU】
Will oracle cardinality affect query speed?
STC8H开发(十五): GPIO驱动Ci24R1无线模块
【FPGA】abbreviation
【愚公系列】2022年08月 Go教学课程 035-接口和继承和转换与空接口
Multi-serial port RS485 industrial gateway BL110
STC8H development (15): GPIO drive Ci24R1 wireless module
FTP错误代码列表
“顶梁柱”滑坡、新增长极难担重任,阿里“蹲下”是为了跳更高?