实战 | 工业表智能读数模型流程

Python涨薪研究所

共 896字,需浏览 2分钟

 ·

2022-07-27 17:46

工业表智能读数:

项目介绍:

在制造业等传统行业有部分场景的环境比较严苛,比如高温或者狭窄的环境,在这样的环境中的数据采集与监控,如果由人工完成会比较困难和不及时。

借助于计算机视觉的算法应用,可以借助于摄像头等设备采集图像数据进行实时数据同步,比如工业表的计数场景。

本项目以工业场景的刻度表智能视觉计数为例,讲解神经网络应用于表盘读数的不同环节及全流程,包括工具库与环境配置,视觉工具库使用,目标检测表盘识别,语义分割刻度读取,刻度转化与读数计算,实时预测与部署。

案例说明:

基于百度的PaddleX工具库实现对传统机械式指针表计的检测与自动读数功能,开放表计数据和预训练模型,并提供在windows系统的服务器端以及linux系统的jetson嵌入式设备上的部署指南。

核心重点:

这是非常典型的计算机视觉应用,完成整个任务的几个阶段都依托于计算机视觉的典型场景和模型解决。大家专注在对应阶段涉及的目标检测和语义分割模型应用,及对应的优化方式及部署方法。

读表流程:

表计读数共分为三个步骤完成:

第一步,使用目标检测模型检测出图像中的表计

第二步,使用语义分割模型将各表计的指针和刻度分割出来

第三步,根据指针的相对位置和预知的量程计算出各表计的读数

每个阶段的模型选择:

表计检测:由于本案例中没有面积较小的表计(实际在智能读表的长下,表盘一般都会有一定的图片占比),所以目标检测模型选择性能更优的YOLOv3。考虑到本案例主要在有GPU的设备上部署,所以骨干网路选择精度更高的DarkNet53。

刻度和指针分割:考虑到刻度和指针均为细小区域,语义分割模型选择效果更好的DeepLab v3+。

读数后处理:首先,对语义分割的预测类别图进行图像腐蚀操作,以达到刻度细分的目的。然后把环形的表盘展开为矩形图像,根据图像中类别信息生成一维的刻度数组和一维的指针数组。接着计算刻度数组的均值,用均值对刻度数组进行二值化操作。最后定位出指针相对刻度的位置,根据刻度的根数判断表盘的类型以此获取表盘的量程,将指针相对位置与量程做乘积得到表盘的读数。

扫下方二维码学习CV项目:

浏览 6
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报