基于深度学习的仪表盘识别

代码:https://github.com/HibikiJie/ReadMeter

权重文件:链接: https://pan.baidu.com/s/1wTPo1wJXrNyEFSu8RrD8Xw 密码: t0p4
将其放置于weight文件夹下,运行test.py,即可测试data\images\val下的图像文件

讲解

  1. 使用语义分割模型,在不同通道上分割出表盘和指针
  2. 环形的表盘展开为矩形图像
  3. 二维图像转换为一维数组
  4. 对刻度数组用均值滤波
  5. 定位指针相对刻度的位置
  6. 输出相对位置

语义分割模型采用的是U2Net

1、分割

使用U2NET分割得到指针和表盘的图像

2、表盘展开

通过以图像中心为原点,以一定宽度进行扫描,将仪表盘的刻度和指针展开为矩形的图像。

3、二维图像转换为一维数组

两张图像通过竖向叠加,转变为一维数组,绘制为折线图,如下图所示。

代码示例如下

def convert_1d_data(self, line_image):"""将图片转换为1维数组:param line_image: 展开的图片:return: 一维数组"""data_1d = numpy.zeros((self.line_width), dtype=numpy.int16)for col in range(self.line_width):for row in range(self.line_height):if line_image[row, col] == 1:data_1d[col] += 1return data_1d

通过定位每一个尖峰的点,即可得刻度盘的个度数量,以及刻度的位置。

并可定位到指针在刻度盘中的相对位置,即可得到该表盘的百分比数值。

输出为:

{'scale_num': 32, 'num_sacle': 12.643678012947584, 'ratio': 0.39573756459893383}

其中指针的相对位置为 0.39573756459893383

而满刻度值为1.6,即可得度数为0.633

基于深度学习的仪表读数读取相关推荐

  1. 毕业设计-基于深度学习的指针式仪表读数识别系统

    目录 前言 课题背景和意义 实现技术思路 一.指针式仪表读数识别算法的设计 二.指针和刻度线提取及仪表示数识别 实现效果图样例 最后 前言

  2. 基于深度学习的指针式仪表图像智能读数方法

    针对传统图像处理的仪表识别方法鲁棒性较差,难以满足复杂环境下的指针式仪表图像读数,而深度学习的方法通过样本的训练能够适应更多的复杂场景,越来越多的仪表读数解决方案更偏向于使用深度学习的方法.而现在的基 ...

  3. 水位尺读数识别 python_一种基于深度学习的水尺识别方法与流程

    本发明涉及水位监测 技术领域: :,具体地说,涉及一种基于深度学习的水尺识别方法. 背景技术: ::近些年来,随着图像处理技术的发展,通过计算机获得图像里的详细信息成为了一种非常方便且高效的方式.将图 ...

  4. 深度学习 数码管_创新研发基于深度学习的可见光智能检测技术

    "随着国家智能电网战略布局的不断实施,依托于巡检机器人的变电站智能巡检技术必将逐步取代人力,成为电网巡检的主流.国电瑞源智能巡检机器人搭载基于可见光的智能检测技术实现输电设备异物检测.变电站 ...

  5. 无人驾驶汽车系统入门:基于深度学习的实时激光雷达点云目标检测及ROS实现...

    参加 2018 AI开发者大会,请点击 ↑↑↑ 作者:申泽邦(Adam Shan),兰州大学在读硕士研究生,主要研究方向无人驾驶,深度学习:兰大未来计算研究院无人车团队负责人,自动驾驶全栈工程师. 近 ...

  6. 基于深度学习OpenCV与python进行字符识别

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 当我们在处理图像数据集时,总是会想有没有什么办法以简单的文本格式检 ...

  7. 换种监控姿势:基于深度学习+流处理的时序告警系统

    来自:DBAplus社群 作者介绍 左喻灏,新炬网络AIOps高级工程师.拥有丰富的HBase运维经验和专业的机器学习知识,擅长使用人工智能技术解决大数据运维中的实际问题.2019年开始基于各类机器学 ...

  8. 基于深度学习识别模型的缺陷检测

    根据读者反映,咱们的这个PCB素材设置的不对,应该是没有漆,铜线等等,应该是黑白的.额,具体我也知道,但没去过工厂,实在很难获得这些素材... 所以就当是一次瑕疵识别的实践,具体的数据集你可以自己定义 ...

  9. 清华大学矣晓沅:“九歌”——基于深度学习的中国古典诗歌自动生成系统

    授权自AI科技大本营(ID:rgznai100) 本文共2714字,建议阅读6分钟. 本文为你介绍清华自然语言处理与社会人文计算实验室的自动作诗系统--"九歌"及其相关的技术方法和 ...

最新文章

  1. 【设计模式】三大类:创建型模式、结构型模式、行为型模式
  2. 用结点实现链表LinkedList,用数组和结点实现栈Stack,用数组和结点链表实现队列Queue
  3. JavaScript + Thymeleaf + Spring Boot——易班优课YOOC课群在线测试自动答题解决方案(十八)模板脚本
  4. dubbo之分组聚合
  5. CentOS自动打开网络连接
  6. mysql+imx6+移植_imx6ulevk---MfgTool的使用心得
  7. 深入理解docker graph driver - DeviceMapper
  8. Laravel 数据库配置
  9. 《Python黑帽子》python3代码实现(第五章)
  10. FLUENT边界条件和计算模型
  11. 适用于Windows的Xcode:在PC上安装Xcode的5种方法
  12. 【Unity3D】游戏开发数学基础
  13. shell之数学运算
  14. 【NLP】学不会打我 半小时学会基本操作 12 命名实例提取
  15. 【Python】批量爬取OSM建筑瓦片数据并整合为shp格式数据
  16. SQL注入测试神器sqlmap
  17. 疾病研究:LEMS和先天性肌无力患者指南
  18. java程序员工作中遇到的问题解决记录
  19. NBIOT 设备接入ONENET平台
  20. vue3+quasar+capacitor开发多平台项目,使用cordova和capacitor插件(支持所有前端框架)

热门文章

  1. 特种车辆的机架式聚合路由器通信方案
  2. SN65HVD485EDR半双工收发器
  3. 单片机GD32F303RCT6 (Macos环境)开发 (二十四)—— W25Q32 spi flash的使用
  4. vue实现随机验证码(数字类型、字母类型)业务【适用于登录页、网页安全码】
  5. 客户端连接mysql失败问题
  6. java 检查 mac 地址_使用Java在本地计算机上获取MAC地址
  7. Tomcat日志乱码解决
  8. 实机安装CentOS7.9操作系统图文(保姆级)教程
  9. FormPanel,EditorGridPanel的赋值和传参、数据的保存删除
  10. SpreadJs 如何自定义右键菜单