配电房数字式仪表读数识别算法开发

news2024/12/24 10:27:35

文章目录

    • 一、概述
    • 二、训练数据准备
      • 2.1 自动生成图片
      • 2.2 爬虫搜集图片
    • 三、模型训练及测试
      • 3.1 数据集组成
      • 3.2 模型训练及评价
      • 3.3 预测结果可视化
    • 四、小结

一、概述

数字式仪表是指以数字的形式呈现仪表读数的仪表类型,其特点是读数比较直观,如下图为配电房常用数字式仪表

在这里插入图片描述

对于数字仪表的读数识别实质上就是0-9十个数字字符的识别,可以把它当成一个具有10个类别的目标检测任务来实现,由于当前目标检测算法比较成熟,因此算法方面不是难点,最关键的是训练数据集的搜集和准备。目前仅有70张来自实际配电房场景的数字仪表相关图片,这显然无法满足目标检测算法的训练要求,因此还需要想各种办法增加或扩充训练数据。本文主要介绍配电房数字式仪表读数识别算法的开发过程,其中重点阐述训练数据的扩充过程。

二、训练数据准备

由于来自实际场景的图片很难搜集,因此主要通过以下两种方式对训练数据进行扩充,一是根据图片特点,自动生成相关训练图片;二是利用爬虫技术从互联网爬取相关图片。

2.1 自动生成图片

由于数字仪表中的数字读数部分是一种数码管字体,因此可以考虑利用相应的数码管字体产生相应的数字字符串,然后将这些数字字符串叠加到背景图片中,从而达到自动生成数字字符训练图片的目的,由于生成过程是通过程序控制的,因此在生成图片的同时,还能够同步获取这些数字字符在图片中的坐标信息,从而可以生成这些图片对应的标注文件,这样就能够节省大量的数据标注工作,可以无限量地自动生成训练图片及其对应的标注文件。

为了能够更加贴合实际场景,背景图片选择实际配电房场景的图片。

为了增加数据的丰富性,生成的数字字符串的颜色、大小和放置位置都在一定范围内随机产生,且不同字符串之间不重叠。

以下为代码自动生成的图片示例
在这里插入图片描述

2.2 爬虫搜集图片

上一步中利用代码可以自动生成无限量的训练图片及其标注文件,但为了防止过拟合,还需要一些其他来源的训练数据,为此,可以借助爬虫技术从网络中爬取一些相关的图片,作为训练集的补充。

利用爬虫脚本,分别以“数字表计”、“数字仪表”、“数码管仪表”等为关键词,从百度图片网址爬取下载图片,共获得1500多张图片,经过清洗筛选,得到 **452 **张可用于训练的数字表计图片,如下图所示:

可以看到,网上爬取的图片五花八门,虽与配电房场景不太匹配,但在已有大量生成图片的基础上,可以作为训练集的补充和完善,进一步丰富数据的来源,防止过拟合的发生。

三、模型训练及测试

3.1 数据集组成

上述第二步描述了训练数据的自动生成方法,理论上可以生成无限量的训练图片,但由于生成图片毕竟与实际图片有些不同,如果生成图片数量过多,会导致过拟合的发生。因此,经过综合考虑和衡量,决定生成3000张图片用于训练,然后再将利用爬虫得到的452张图片,以及来自实际场景的70张图片合并到一起,组成一个3522张图片的数据集,然后再将该数据集按照6:2:2的比例随机划分为训练集、验证集、测试集。数据集组成如下表所示

图片类别生成图片网络爬取图片实际场景图片合计训练集图片验证集图片测试集图片
数量30004527035222113704705

3.2 模型训练及评价

准备好数据集后,利用yolov8目标检测算法对数据集进行训练,经过200轮的训练,得到的yolov8模型在测试集上进行测试,最终的精确率、召回率如下表所示

测试集图片精确率P召回率R
7050.9930.983

3.3 预测结果可视化

训练得到模型后,对测试集图片进行推理预测,得到的可视化结果如下所示

四、小结

本文主要介绍了配电房数字式仪表读数识别算法的开发过程,在严重缺乏实际场景图片的情况下,采用了两种数据扩增方法,一种是利用代码自动生成大量图片,另一种是利用爬虫技术从网络爬取相关图片,然后将所有数据组成一个数据集,并进行模型训练,所得模型在测试集的精确率、召回率分别达到0.993、0.983,同时从可视化预测结果来看,模型也具有很好的识别效果,与预期相符,表明了本文提出的数据生成方法及读数识别算法的有效性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2125567.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

react 安装使用 antd+国际化+定制化主题+样式兼容

安装antd 现在从 yarn 或 npm 或 pnpm 安装并引入 antd。 yarn add antd修改 src/App.js&#xff0c;引入 antd 的按钮组件。 import React from react; import { Button } from antd;const App: React.FC () > (<div className"App"><Button type&q…

【鸿蒙】HarmonyOS NEXT星河入门到实战5-基础语法

目录 一、字符串拼接 1.1 常规字符串拼接 1.2 模板字符串hello(符号在键盘的tab上面) 二、类型转换 &#xff08;数字和字符串&#xff09; 2.1 字符串转数字 2.2 数字转字符串 三、交互 3.1 点击事件 3.2 状态管理 3.3 计数器案例 四、运算符 4.1 算数运算符 4.2 赋…

[001-03-007].第26节:分布式锁迭代3->优化基于setnx命令实现的分布式锁-防锁的误删

我的博客大纲 我的后端学习大纲 1、问题分析&#xff1a; 1.1.问题&#xff1a; 1.锁的超时释放&#xff0c;可能会释放其他服务器的锁 1.2.场景&#xff1a; 1.如果业务逻辑的执行时间是7s。执行流程如下 1.index1业务逻辑没执行完&#xff0c;3秒后锁被自动释放。2.index…

企业会议室预约管理系统

基于springbootvuemysql实现的企业会议室预约管理系统&#xff08;源码数据库部署视频&#xff09; ### 主要技术 SpringBoot、Vue、MySQL ### 系统角色 员工、管理员 ### 系统功能 1&#xff09;管理员&#xff1a;数据统计&#xff08;会议室使用统计-柱状图、设备状态统计…

C++:2024/9/11

B. Increase/Decrease/Copy 原题链接&#xff1a;Problem - B - Codeforces 题目大意&#xff1a; ​ 给一颗树&#xff0c;规定编号为1的节点为根节点&#xff0c;每个节点上初始会有一个值&#xff0c;你每次可以进行操作&#xff0c;这个操作是选定一个非叶子节点的节点…

Parallels Desktop 20 最新版,带来哪些新功能(附下载链接)!

很兴奋地向大家宣布&#xff0c;Parallels Desktop 20 for Mac 正式发布啦——这是我们产品迄今为止最强大的版本&#xff01; 这次最大的亮点是全新推出的 Parallels AI 工具包&#xff0c;它提供安全的、可下载的预装虚拟机&#xff0c;让你可以在离线环境中迅速提升 AI 开发…

python中swift包的安装

魔搭社区上经常会有swift这种包需要导,但是在pip install swift怎么装都装不上,这时候需要: pip install ms-swift -U

蓝牙也会更新?新功能有这些便捷之处

本周&#xff0c;蓝牙技术联盟发布了蓝牙 6.0 的最新版本&#xff0c;其中引入了一项名为“信道探测”的新功能。这一功能将大幅提升苹果设备上的“查找”应用表现&#xff0c;为用户带来前所未有的距离感知能力。蓝牙 6.0 承诺&#xff0c;未来的蓝牙设备和配件将能够实现“相…

Eprime学习【E-basic语言、心理学实验程序设计】

文章目录 Eprime学习心理学实验程序设计的基本框架一、实验设计的基本原则二、实验过程&#xff08;procedure&#xff09;与实验列表&#xff08;list&#xff09;三、心理学实验设计的基本模式四、心理学常用的功能与制作 E-basic语言 Eprime学习 心理学实验程序设计的基本框…

MySQL表操作(中)

查询 去重 //相同的行只会保留一个 select distinct 某个列/多个列 from 表名; 这个去重必须是所要进行去重的列的所要去重的数据都是相同&#xff0c;单一某一列相同并不会进行去重的效果。例子如下图&#xff0c;数学得分相同的并未进行去重&#xff0c;必须名字和得分都相同…

工厂安灯系统在设备管理中的重要性

在现代制造业中&#xff0c;设备管理是确保生产效率和产品质量的关键环节。随着工业4.0的推进&#xff0c;越来越多的企业开始采用智能化的设备管理系统&#xff0c;其中安灯系统作为一种有效的管理工具&#xff0c;逐渐受到重视。安灯系统最初源于日本的丰田生产方式&#xff…

友思特方案 | 搭建红外桥梁:嵌入式视觉接口助力红外热像仪传输

导读 为红外成像设备数据传输快速搭桥&#xff01;友思特嵌入式视觉接口能帮助用户快速享有 GigE Vision 协议优势&#xff0c;是红外成像设备视觉接口集成、开发高性能相机的高效快捷方案。 引言 红外热像仪作为一种非接触式设备&#xff0c;能够检测红外能量&#xff08;热量…

Vm软件安装_链接相机

工业相机的驱动连接 下载安装MVS MVS 客户端支持安装在 Windows XP/7/10 32/64bit&#xff0c;Linux 32/64bits 以及MacOS64bits操作系统上。本文以 Windows 系统为例进行介绍。 具体操作步骤如下&#xff1a; 请从海康机器人官网&#xff08;www.hikrobotics.com&#xff0…

【鸿蒙开发从0到1 day09】

鸿蒙开发基础-ArkUI基本布局 一 .设计资源-图标库1.阿里矢量图图标库2.HarmonyOS图标库 二.布局属性1.内边距2.外边距3.边框线4.边框圆角 三.背景属性1.背景颜色2.背景图片(1)背景图的缩放(2)背景图的显示位置 四.颜色渐变1.线性渐变2.径向渐变 五.阴影六.可选择链操作符(?)七…

密码学---真题演练

✨Base加密&#xff1a;题目-base? 靶场网址&#xff1a;https://polarctf.com/ Base100加密&#xff01;&#xff01;&#xff01; 得到的新的一串密码是 rot47 密码&#xff0c;属于凯撒密码的一种变体. 拓展&#xff1a;ROT&#xff08;Rotate&#xff09;编码是一种替换…

远程操作电脑的方法有哪些?

随着远程办公、远程技术支持和跨地域协作的需求不断增加&#xff0c;远程操作电脑的方法也越来越多样化。无论是个人用户还是企业&#xff0c;选择合适的远程控制方法&#xff0c;可以大大提高工作效率。本文将详细介绍几种常见的远程操作电脑的方法&#xff0c;并帮助你选择适…

动态规划(算法)---03.斐波那契数列模型_最小花费爬楼梯

题目链接&#xff1a; 746. 使用最小花费爬楼梯 - 力扣&#xff08;LeetCode&#xff09;https://leetcode.cn/problems/min-cost-climbing-stairs/description/ 一、题目解析 题目&#xff1a; 解析&#xff1a; 题目说cost[i]为从某一个台阶向上爬的的费用&#xff0c;我们…

基于SpringBoot+Vue+MySQL的房屋租赁管理系统

系统展示 用户前台界面 管理员后台界面 系统背景 二十一世纪互联网的出现&#xff0c;改变了几千年以来人们的生活&#xff0c;不仅仅是生活物资的丰富&#xff0c;还有精神层次的丰富。在互联网诞生之前&#xff0c;地域位置往往是人们思想上不可跨域的鸿沟&#xff0c;信息的…

不可错过的10款电脑监控软件,电脑监控软件推荐收藏

随着科技的飞速发展&#xff0c;企业和个人对电脑监控软件的需求也越来越大。这类软件不仅可以帮助企业有效监控员工工作状态&#xff0c;提高工作效率&#xff0c;还能确保信息安全&#xff0c;防止数据泄露。本文将为您推荐10款不可错过的电脑监控软件&#xff0c;帮助您提升…

VS Code 配置 Rust-Analyzer 报错

报错信息&#xff1a; Bootstrap Error" rust-analyzer requires glibc > 2.28 in latest build. 参考了好多地方&#xff0c; https://github.com/rust-lang/rust-analyzer/issues/11558 https://blog.csdn.net/aLingYun/article/details/120923694 https://rust-anal…