针对传统图像处理的仪表识别方法鲁棒性较差,难以满足复杂环境下的指针式仪表图像读数,而深度学习的方法通过样本的训练能够适应更多的复杂场景,越来越多的仪表读数解决方案更偏向于使用深度学习的方法。而现在的基于深度学习的方法在仪表识别的解决方案中主要有以下两种方法:
1、目标检测仪表定位(YOLO、Mask RCNN、Faster RCNN等)+ 传统图像处理指针识别(Hough变换、最小二乘法、模板匹配等);
2、目标检测仪表定位(YOLO、Mask RCNN、Faster RCNN等)+ 语义分割方法进行指针及刻度线的像素级分割(Mask RCNN、FCN、UNet等)+ 指针线识别(Hough变换直线检测、最小二乘法直线拟合等)。
以上两种方法各有特点,但是总感觉有点不足,就是对指针的处理上最后还是用到了传统图像处理的方法。传统图像处理的方法总是少了图像预处理,函数调参等步骤,例如Hough变换直线检测中需要调好几个参数,不太好把握。因此,为了提高指针的检测精度,本文提出了一种基于深度学习的指针式仪表智能读数方法,通过改进的YOLOv5模型端到端提取指针和表盘刻度关键点。同时通过字符识别算法对仪表刻度数进行识别。所提方法不需要提前采集待识别仪表图像的模板图像,可对任意类型的指针式仪表读数,并且对于采集的倾斜状态下的仪表图像在未矫正的情况下识别准确度可达98%。识别的一般步骤包括:
论文参考:Intelligent Reading Recognition Method of Pointer Meter Based on Deep Learning in Real Environment
一、表盘定位;
仪表定位的主要目的是从复杂的背景环境中提取表盘区域,通过表盘定位过滤背景干扰信息,提高后续仪表特征信息,包括指针、刻度区域的检测精度。如果机器人携带的可见光相机或者其他拍摄工具通过变焦可以得到高倍的仪表图像,则可以省略仪表定位步骤,从而提高算法效率。考虑一般的情况,难以直接得到高倍的表盘图像,因此,仪表图像识别中表盘定位步骤不可避免。传统的仪表定位方法有Hough变换表盘圆检测方法、模板匹配方法等,但是这些方法难以应对复杂的自然环境,在背景环境改变下容易失效。

为了提高仪表检测的准确率,本文使用yolov5目标检测算法进行仪表定位,yolov5仪表检测结果如下:

二、指针及刻度线识别;
针对传统的指针提取方法预处理步骤较多,容易产生累计误差,以及仪表示数判读方法中传统角度法误差较大,距离法计算量较大等问题,本文提出一种端到端的基于半指针检测的快速指针提取方法。将表盘图像上的半指针、表盘中心、和刻度字符为目标对象,使用yolov5进行检测,根据检测结果连接表盘中心和指针的针尖构成指针线,同时根据检测的刻度中心点通过欧式距离寻找指针的近邻刻度线。至于这里为什么选择半指针以及选择半指针的优点大家感兴趣可以去看论文,这里就不过多赘述,最终指针及指针的近邻刻度线检测结果如下图所示。可见,检测结果还是非常好的,可以对各种复杂情况下的仪表准确的检测出表盘指针线。

三、刻度数字识别;
其实,刻度字符识别也不是仪表识别中的必要过程,可以通过其他方法代替本过程,从而提高算法的效率,比如通过配置文件提前存储待识别仪表的信息。为了避免每次增加新的仪表需要存储新类型仪表的参数信息过程,同时也为了提高未知类型仪表识别的准确率,同时这里也介绍一种表盘刻度字符识别方法。将刻度字符0-9作为10个目标对象进行检测,根据检测结果进行推断刻度值。刻度字符识别结果如下

四、计算仪表读数。
根据指针及其近邻刻度线之间的夹角关系,使用角度法读数。最终仪表读数结果如下

基于深度学习的指针式仪表图像智能读数方法相关推荐

  1. 基于深度学习的遥感图像场景识别方法研究

    文章目录 概述 方法原理 代码实现 结果分析 SVM Resnet LSTM 概述 从2012年深度卷积神经网络(AlexNet)成功应用于图像识别以来,发展出多个改进的卷积神经网络构架,包括2014 ...

  2. 基于InceptionV3深度学习实现岩石图像智能识别与分类

    基于InceptionV3深度学习实现岩石图像智能识别与分类 文章目录 基于InceptionV3深度学习实现岩石图像智能识别与分类 总体流程 数据预处理 构建InceptionV3模型 训练.保存模 ...

  3. 基于深度学习的弹道目标智能分类

    关注微信公众号:人工智能技术与咨询.了解更多资讯! 来源:系统工程与电子技术,作者李江等 摘要 针对弹道目标微动分类前需平动补偿及典型雷达散射截面积(radar cross-section, RCS) ...

  4. 目标检测YOLO实战应用案例100讲-基于深度学习的航拍图像YOLOv5目标检测研究及应用(论文篇)

    目录 基于深度学习的航拍图像目标检测研究 航拍图像目标检测 评价指标与数据集

  5. 3种基于深度学习的有监督关系抽取方法

    摘要:本文对几种基于深度学习的有监督关系抽取方法进行了介绍,包括CNN关系抽取.BiLSTM关系抽取以及BERT关系抽取. 本文分享自华为云社区<基于深度学习的有监督关系抽取方法简介>,作 ...

  6. DeepARG——一种基于深度学习更加准确预测ARG的方法

    DeepARG--一种基于深度学习更加准确预测ARG的方法 本文介绍的是发表于Microbiome名为DeepARG: a deep learning approach for predicting ...

  7. 基于深度学习的自然图像和医学图像分割:网络结构设计

    来源:知乎.极市平台.深度学习爱好者作者丨李慕清@知乎 https://zhuanlan.zhihu.com/p/104854615 本文约5100字,建议阅读10分钟 本文首先介绍一些经典的语义分割 ...

  8. 基于深度学习的2D图像目标检测

    参见第一部分网址1,第二部分网址2 目前学术和工业界出现的目标检测算法分成3类:(参见一文读懂目标检测:R-CNN.Fast R-CNN.Faster R-CNN.YOLO.SSD) 1. 传统的目标 ...

  9. 基于深度学习的岩石样本智能识别研究——第九届“泰迪杯”挑战赛B题优秀作品

    1 前言 1.1 研究背景 岩石是现代建筑业和制造业的重要原材料,除了作为原材料使用以外,还可以对其进行勘探开发挖掘岩油气藏,若能智能且准确地识别岩石岩性.计算岩石含油量,这将会是一笔巨大的社会财富. ...

最新文章

  1. 首届“AIIA杯”人工智能巡回赛起航,5大赛区邀你来战
  2. Python中使用数据库SQLite
  3. css杂项,清除浮动
  4. python opencv 图像网络传输
  5. 【Microstation】第一章:Microstation三维模型构建概述
  6. 初次见面,如何令人永远难忘
  7. Spring中WebApplicationInitializer的理解
  8. 控制台:Unable to import maven project: See logs for details日志:Unable to create injector, see the follow
  9. 基于Java+SpringBoot+vue+element实现前后端分离牙科诊所管理系统详细设计
  10. Python基础项目实践之:面向对象方法实现模拟银行管理系统
  11. xcode java mac_mac 下常用命令(xcode常用命令,环境相关等)
  12. 对于已有的【寄存】代码,【式样】变更,【参照】其他代码修正时的注意事项!
  13. Mathematics Base - 期望、方差、协方差、相关系数总结
  14. 各种Python简单功能代码
  15. MAC m1芯片 Ubuntn配置过程
  16. ubuntu显卡驱动掉了重新装
  17. 深度学习双显卡配置_更新深度学习装备:双(1080Ti)显卡装机实录
  18. STM32F103C8T6的TIM1的CH1、CH2、CH3三路互补PWM实现四路PWM两两输出
  19. 达内微软mta证书有用吗_mta证书值得拿吗 怎么样才能拿到mta证书
  20. 《Unix Linux 大学教程》 - 附录F

热门文章

  1. 通过NSURL获取网络标准时间
  2. 蓝桥杯_note_2016
  3. 《算法导论》第三版第3章 函数的增长 练习思考题 个人答案
  4. Mac OS 使用Metal渲染NV12、YUV420、CMSampleBufferRef视频
  5. 排版中字号、磅值、毫米换算表
  6. 数字IC设计中的均衡器
  7. 西电计算机网络ppt,计算机网络-西电个人主页-西安电子科技大学.ppt
  8. 棒球队训练课程教案·棒球1号位
  9. pbe服务器维护,云顶之弈手游PBE服停机:更新版本时出错,10.5版本的发布时间...
  10. 软考初级程序员下午题