基于改进YOLOv8的指针式仪表读数识别算法

张 震1,2,刘建昌1,葛帅兵1,张俊杰3,张 凯3

(1.郑州大学 河南先进技术研究院,河南 郑州 450001;2.郑州大学 电气与信息工程学院,河南 郑州 450001;3.河南汇融油气技术有限公司,河南 郑州 450001)

摘 要:针对现有深度学习的仪表读数识别算法在边缘设备上存在资源消耗较大和传统图像处理算法在复杂场景下鲁棒性不足、误差累积以及难以实现端到端指针提取等问题,提出了一种轻量化改进的YOLOv8模型实现仪表检测,并采用YOLOv8-pose关键点模型提取仪表盘关键点,拟合指针与刻度线结合角度法计算仪表读数。首先,设计轻量级的RGELAN模块替代C2f模块,降低骨干和颈部网络复杂度;其次,将考虑多尺度特征贡献的CASC-Head检测头替代解耦头,减少检测头参数量;最后,引入Shape-IoU优化回归损失函数,提升检测准确性。实验结果表明: 改进后的模型YOLOv8-RSS在PmAP@50:95上分别为98.5%和90.6%,相较于原始YOLOv8的PmAP@50:95仅损失了0.3%和0.4%,但参数量、计算量和模型大小分别减少了48.3%,44.4%和46%;在复杂场景下,仪表读数阶段算法的平均相对误差、平均引用误差、参数量和检测速度分别为1.425%,0.557%,3.08M和78帧/s,与其他算法相比,该算法降低了空间占用和读数误差,提升了检测速度。

关键词:仪表读数识别; 轻量化YOLOv8; SIFT倾斜校正; 关键点检测; 角度法

指针式仪表因其简易构造、抗电磁干扰等特性而广受欢迎[1]。传统模式下,由人工进行读数效率低下[2]。随着人工智能技术的进步,利用巡检机器人等边缘计算设备结合图像处理技术识别仪表读数,正逐步成为仪表巡检领域的主流方向。然而,巡检环境中光照、图像模糊等因素会严重影响采集的图像质量,增加了仪表漏检和误检的风险[3]

目前,指针式仪表读数识别算法主要分为基于传统图像处理和基于深度学习的两类算法[4]。巩方超等[5]提出SURF与FLANN联合算法实现仪表定位,并利用概率Hough变换实现指针提取。该方法依赖高质量模板,且在复杂环境中仪表定位效果不佳。李巍等[6]结合HOG特征和支持向量机检测仪表目标,采用Hough变换定位指针,由角度法计算读数。传统指针提取多采用Hough变换算法,检测效果易受光照不均、图像模糊等因素的影响,导致指针提取难度大,并且其步骤繁琐易导致误差累积,难以实现端到端的指针提取。

近年来,深度学习的发展为指针式仪表读数提供了新思路。Zhang等[7]利用YOLOv7实现仪表定位,使用Hough变换检测指针,最后通过角度法计算读数。Wu等[8]利用改进的U-Net网络分割仪表指针和刻度线,结合K-means聚类算法计算圆心,通过角度法计算仪表读数,但分割方法高度依赖精确的标注,且像素级输出易带有噪声。宫倩等[9]提出基于关键点检测的读数算法,通过零刻度点、中心点和指针端点位置信息结合角度法计算读数。Jiao等[10]提出了多分辨率可变形卷积网络进行关键点检测计算仪表示数,读数精度较高,但该方法需要输出大量的高分辨热图以预测关键点,会产生较大的计算开销。基于深度学习的仪表读数识别算法中,普遍存在模型复杂度较高的问题。研究表明,通常模型的参数量超过10M[11]或计算量超过5GFLOPs[12]时,不适用于资源受限的边缘设备。

综上所述,现有基于深度学习的仪表读数识别算法存在资源消耗较大、传统图像处理算法在复杂场景下指针提取效果不稳定、步骤繁琐以及难以实现端到端指针提取的问题。针对以上问题,本文提出了一种基于改进YOLOv8的指针式仪表三阶段读数识别算法。该方法可以在光照不均、图像模糊以及图像倾斜等复杂场景下显著提升指针检测效果,快速稳定地读取仪表示数。

1 指针式仪表读数识别算法框架

本文提出的指针式仪表读数识别算法流程分为3个阶段,如图1所示。

图1 指针式仪表读数识别算法流程图

Figure 1 Algorithm flowchart for pointer meter reading recognition

第1阶段通过改进的轻量化YOLOv8模型进行仪表的识别与定位,截取表盘区域,去除复杂背景的干扰,提高后续表盘处理的精度和效率。

第2阶段利用尺度不变特征变换SIFT(scale invariant feature transform)算法实现倾斜仪表的校正,减少拍摄角度引起的比例失真对读数准确率的影响。

第3阶段利用YOLOv8关键点检测模型对校正后表盘图像进行关键点检测,得到零刻度点、终止刻度点、仪表中心点和指针端点。通过4个关键点的几何关系利用角度法计算最终的仪表读数。

1.1 基于轻量化YOLOv8模型的仪表检测

YOLO算法通过一次处理可以同时获取目标位置与分类结果,检测速度优于两阶段算法[13]。YOLOv8[14]基于YOLOv5[15]改进而来,在目标检测、姿态估计等任务中表现出色。YOLOv8的整体结构由骨干网络、颈部网络和检测头组成。骨干网络采用CSPDarknet,结合C2f模块提取多尺度特征;颈部以FPN+PAN结构实现特征双向融合;检测头采用解耦头结构,分类头与检测头分别负责类别预测和边界框回归,分类分支使用二值交叉熵损失,回归分支使用CIoU Loss与Distribution Focal Loss。

为降低仪表读数识别算法所需的计算和空间资源,本文基于YOLOv8n提出了一种轻量级的YOLOv8-RSS仪表检测模型实现仪表的检测与提取。首先,参考ELAN(efficient layer aggregation networks)结构[16]的思想设计了RGELAN模块替换原始的C2f模块,降低了骨干和颈部网络的复杂度;其次,设计CASC-Head(channel alignment shared convolutional head)检测头替代了原始的解耦头,降低检测头结构复杂度的同时保证了模型的检测精度;最后,引入Shape-IoU优化回归损失函数,提高了模型的检测精度。

1.1.1 RGELAN模块

C2f模块是YOLOv8骨干和颈部网络的核心组件,由多个Bottleneck块组成,每个块都包含两个卷积层,能够捕捉图像中的复杂特征,Bottleneck和C2f结构分别如图2(a)和图2(b)所示。然而,堆叠较多的Bottleneck块会消耗更多的存储空间和计算资源,对资源受限型设备不够友好。

图2 Bottleneck、C2f、ELAN与RGELAN结构

Figure 2 Structure of Bottleneck,C2f,ELAN,and RGELAN

因此,结合高效层聚合网络ELAN结构的思想,重新设计C2f模块,得到了一种轻量化的RGELAN模块。ELAN结构通过多个3×3的卷积分支提取不同尺度的特征,实现多尺度的特征融合,提升了模型对不同尺度目标的感知能力,ELAN结构如图2(c)所示。舍弃C2f中复杂度较高的Bottleneck块,替换成卷积核为3×3的标准卷积,减少了计算量和参数量。为了弥补替换残差块所带来的性能损失,在梯度流通分支上使用重参数卷积RepConv[17],以此来增强特征提取和梯度流通的能力。RepConv在训练阶段采用多分支卷积层结构,以捕获更丰富的特征表达,而在推理阶段重参数化为一个等效的3×3卷积层,从而降低计算量和参数量。在梯度流通的最后一个分支上,借鉴GhostNet[12]中的设计理念,传统卷积神经网络计算时产生的特征图往往存在冗余,采用廉价的1×1的标准卷积操作生成一部分冗余特征图,以此来保持网络模型强大的特征提取能力。RGELAN模块结构如图2(d)所示。实验表明,将模型中的C2f模块替换为RGELAN模块,在检测精度略有下降的情况下,有效降低了模型的复杂度。

1.1.2 CASC-Head检测头

YOLOv8的检测头采用无锚框的解耦头结构,不依赖于预设的锚框,实现定位和分类任务的分离。首先,对于每个检测头的两个任务分支,分别包含两个3×3普通卷积和一个1×1的普通卷积,这种设计虽提升了检测精度,但是会显著增加检测层的参数量;其次,单尺度预测结构未考虑其他尺度特征对于检测结果的作用,在多尺度目标检测中存在不足。基于以上问题,本文重新设计了一个轻量级的通道对齐共享卷积头CASC-Head。CASC-head的结构如图3所示。

图3 CASC-Head结构

Figure 3 Structure of CASC-Head

为降低批次大小对归一化效果的影响,在CASC-Head检测头结构中引入了组归一化卷积GN_Conv,将普通卷积中的批归一化BN层替换为组归一化GN层,已被证明可以大大提高检测头的定位和分类性能[18]。首先,检测层接收颈部网络输出的3种不同尺度的特征图,对每种尺度特征图分别进行1×1的GN_Conv卷积操作,将特征图通道数调整为与共享卷积层的输入通道数一致,同时提取空间特征;其次,使用两个3×3共享的GN_Conv层提取更深层次的特征,共享卷积层的使用有效降低了模型的复杂度;再次,将经过处理的每种尺度特征分成两个分支,一路输入回归分支负责回归边界框,另一路输入分类分支负责类别预测,两个分支均采用共享卷积设计,但彼此之间的权重独立;最后,通过Scale层定义的可学习缩放因子对回归层的输出特征进行缩放,用于定位不同尺度的仪表目标。该结构可以在保持检测精度的前提下有效降低检测头结构的计算量和参数量,同时允许检测头具有更强的多尺度检测能力,从而降低模型在资源受限型设备中的应用难度。

1.1.3 Shape-IoU损失函数

YOLOv8的检测分支默认采用CIoU损失函数计算边界框回归损失,考虑了预测框和真实框的重叠度、中心点距离和宽高比3种因素。虽然CIoU涵盖了多种关键因素,但是只通过预测框和真实框的几何关系来度量损失,忽略了目标框本身的形状和尺寸对于回归结果的影响。对于本文的指针式仪表数据集,由于拍照时角度和距离的影响,造成图片中的仪表目标长宽比存在失衡和目标尺度跨度较大,因此应该对目标框的固有属性给予关注。本文通过引入Shape-IoU损失函数[19]替代CIoU损失函数,在考量几何关系基础上,增加对样本目标框本身形状和尺寸的关注,增强回归预测的准确性。Shape-IoU计算示意图如图4所示,其计算公式如式(1)所示。

LShapeIoU=1-IoU+Ldis+0.5LShape

(1)

图4 Shape-IoU示意图

Figure 4 Schematic diagram of Shape IoU

式中:LShapeIoU表示总损失;IoU表示交并比;Ldis表示距离损失;LShape表示形状损失。

(2)

(3)

式中:b代表预测框;bgt代表真实框;HW分别表示垂直和水平方向的权重系数,与真实框的宽高有关,如式(5)所示;(xc,yc)表示预测框中心点坐标,表示真实框中心点坐标;c表示包含预测框和真实框的最小外接矩形框的对角线长度。

(4)

式中:θ=4表示对形状损失的关注程度;ωwωh分别表示宽度和高度损失。

(5)

式中:wgthgt表示真实框的宽和高;scale表示尺度因子。

(6)

式中:wh表示预测框的宽度和高度。

1.2 指针式仪表倾斜校正

指针式仪表读数精度在正视状态下读数较为准确,对仪表图像进行倾斜校正操作可有效提升读数准确性,但因其圆形设计具有高度对称性,难以基于表盘边界线确定校正参考点。针对这一问题,本文采用SIFT算法[20]进行仪表图像校正,仪表校正流程如图5所示。

图5 仪表倾斜校正流程

Figure 5 Meter tilt correction process

首先,利用SIFT局部特征检测算法提取图像中的特殊关键点,比如角点、边缘点以及极值点等,其在角度或光照变化下仍具稳定性,并生成具有旋转和尺度不变性的描述符;其次,将模板图像和倾斜图像的特征点准确匹配,采用快速最近邻(fast library for approximate nearest neighbors,FLANN)匹配器结合k-d树算法加速特征点匹配,通过欧氏距离度量相似性[21],并利用比率测试筛选可靠匹配点,欧式距离的定义如式(7)所示;再次,引入随机抽样一致 (random sample consensus,RANSAC)算法进行内点筛选,剔除误匹配点[22],通过不断迭代计算最佳的单应性矩阵M,提高匹配的准确度;最后,基于最佳的单应性矩阵M进行透视变换,获得正视状态下的表盘图像。透视变换的完整形式和校正后坐标[4]分别如式(8)和式(9)所示。

(7)

(8)

(9)

式中:d表示欧氏距离;m(i)和n(i)均为特征向量的第i维分量;uv为校正前图像中的某点坐标;M为3×3的最佳单应性矩阵;xy为最终校正后的图像中的某点坐标。

1.3 关键点检测和读数计算

仪表读数准确度依赖于指针的提取精度[23]。针对传统指针提取方法中存在步骤繁琐、难以实现端到端的指针提取的问题,考虑两点确定一条直线的原理,本文提出一种基于关键点检测的方法,通过提取表盘的指针关键点和刻度点,实现指针线和刻度线的拟合,并结合角度法计算仪表示数。该方法优化了读数流程,提高了读数算法精度和鲁棒性。

(1)关键点检测。本文基于YOLOv8n-pose关键点检测模型[14]对仪表关键点进行检测,该模型复杂度相对较低,占用设备资源较小,符合本文贯彻的轻量化网络思想。使用Labelme工具对表盘图像的各个关键特征点按顺序标注,并将生成的JSON文件转化为YOLO格式文件,标注示意图如图6(a)所示。由图6(a)可知,本文根据仪表特征选取4个关键点,关键点OA用于拟合指针线,BC分别定位零刻度与终止刻度线。将标注数据集送入YOLOv8n-pose模型训练后,用训练好的模型预测关键点,预测样例如图6(b)所示,仪表中心点和指针端点可以较好地拟合指针线。

图6 关键点标注、预测与角度法示意图

Figure 6 Schematic diagram of key point annotation,prediction,and angle method

(2)读数计算。根据预测出的仪表中心O、指针端点A、零刻度点B和终止刻度点C,利用角度法得到仪表示数,如图6(c)所示。指针偏转角度α和始末刻度角度β[24]分别如式(10)与式(11)所示。仪表读数R[9]如式(12)所示。

α=360-atan 2(OB×OA,OB·OA)×180/π;

(10)

β=360-atan 2(OB×OC,OB·OC)×180/π;

(11)

(12)

式中:αβ取[0,360°]内的等效值;OA表示指针向量;OB表示零刻度向量;OC表示终止刻度向量;L表示指针式仪表量程。

2 实验结果与分析

2.1 仪表数据集及实验平台

目前,缺乏公共的工业指针式仪表标准数据集。本文结合实际业务需求,主要聚焦于线性刻度的单指针仪表,采用燃气场站拍摄与网络收集相结合的方式,构建了包含1 592张图像的指针式仪表数据集。数据集如图7所示,包括4种指针式仪表类型,图像为1 920×1 080像素,使用Labelme工具标注。数据集包含复杂背景、光照不均、图像模糊以及仪表倾斜等复杂场景,保证了仪表图像数据的多样性。

图7 部分指针式仪表图片

Figure 7 Partial picture of pointer meter

实验运行于Windows 10系统,硬件配置包括QEMU Virtual CPU(16 GB)、NVIDIA GRID T4-8Q GPU(8 GB)。深度学习框架使用PyTorch 1.10.0,CUDA版本为10.2,Python版本为3.8。仪表检测、仪表关键点检测及读数实验均在此平台上完成。

2.2 参数设置及评价指标

在仪表检测定位实验中,将仪表数据集1 592张图像按照4∶1的比例划分为训练集和验证集。模型训练参数中batch-size设置为8,epochs为150,训练时输入模型的图像尺寸为640×640像素。实验采用AdamW优化器,初始学习率为0.01,初始动量为0.9,权重衰减系数为0.000 5。

模型检测性能评价指标采用精确率P、平均精度均值mAP@50:95。精确率P表示预测正确的仪表数量占预测为仪表目标总数的百分比;mAP@50:95指IoU阈值从0.5到0.95(步长0.05)计算的平均mAP。在工业仪表检测中,需综合考虑检测精度与模型复杂度。实验采用参数量和计算量(GFLOPs)衡量模型复杂度,数值越大表示模型越复杂;模型大小反映模型所需的存储空间。

2.3 模型消融实验

为了研究各个改进模块对YOLOv8-RSS模型的作用,在YOLOv8n模型的基础上进行消融实验,实验结果如表1所示。实验1表示原始YOLOv8n模型。实验2表示采用RGELAN模块替换原始模型的C2f模块。参数量、计算量和模型大小分别减少了27%、26%和25%,PmAP@50:95仅下降了0.1%和0.8%,表明RGELAN结构可以有效地降低模型复杂度。实验3表示引入CASC-Head检测头。在保证检测精度基本稳定前提下,参数量、计算量和模型大小分别减少了21.3%、19.8%和21%。实验4表示引入Shape-IoU代替CIoU,由于考虑了边界框的自身属性对回归结果的影响,PmAP@50:95分别提升了0.4%和0.6%。实验5表示同时加入RGELAN和CASC-Head,进一步降低了模型复杂度。实验6表示3种改进同时加入YOLOv8n模型,YOLOv8-RSS模型在PmAP@50:95上分别为98.5%和90.6%,参数量、计算量和模型大小分别减少48.3%、44.4%和46%;同时PmAP@50:95仅仅损失了0.3%和0.4%。

表1 消融实验

Table 1 Ablation experiment

实验PmAP@50:95参数量/MBGFLOPs模型大小/MB10.9880.9103.008.15.9620.9870.9022.196.04.4730.9850.9082.366.54.7140.9920.9163.008.15.9650.9820.9031.554.53.2260.9850.9061.554.53.22

2.4 模型对比实验

实验选取YOLOv3-tiny[25]、YOLOv5n、YOLOv5s、YOLOv6n[26]、YOLOv7-tiny[27]和YOLOv9t[28]模型与本文提出的模型进行对比,实验结果如表2所示。

表2 模型对比实验

Table 2 Comparative experiment of model

模型mAP@50:95参数量/MBGFLOPs模型大小/MBYOLOv3-tiny0.8988.6712.916.60YOLOv5n0.8851.764.13.68YOLOv5s0.8957.0015.813.70YOLOv6n0.8904.2011.110.00YOLOv7-tiny0.8576.0013.011.70YOLOv8n0.9103.008.15.96YOLOv9t0.9051.887.14.21本文模型0.9061.554.53.22

由表2可知,YOLOv3-tiny、YOLOv5s、YOLOv6n和YOLOv7-tiny的参数量、计算量以及模型大小相对较高,同时检测精度低于本文模型。YOLOv5n的计算量最低,但参数量和模型大小高于本文模型,并且检测精度较低。虽然YOLOv9t与本文模型检测精度基本持平,但参数量、计算量和模型大小分别是本文模型的1.2倍、1.6倍和1.3倍。因此,本文模型兼具检测性能优和轻量化特性。

2.5 倾斜仪表校正实验

本文使用SIFT算法进行校正实验,针对曝光、过暗、阴影以及图像模糊等复杂场景进行了大量测试,实验效果如图8所示,SIFT算法均能有效地校正仪表图像。同时,为了定量评估倾斜校正算法对仪表读数精度的影响,选取了曝光和模糊两种典型场景下的图像作为测试样本,对校正前后的图像进行读数,校正前后的关键点检测效果和读数结果分别如图9和表3所示。由表3可知,曝光样本的相对误差从1.86%降至0.82%,模糊样本的相对误差从3.42%降至0.21%,验证了仪表校正算法的有效性。

表3 校正读数对比实验

Table 3 Calibration reading comparison experiment

类别真实值校正前读数校正后读数曝光6.256.1346.301模糊6.256.4646.263

图8 倾斜仪表的校正效果

Figure 8 Calibration effect of tilt instrument

图9 校正前后检测效果

Figure 9 Detection effect before and after calibration

2.6 关键点检测及读数实验

选取仪表检测模型提取的949张表盘图像,包含不同拍摄角度、光照强度及模糊条件下的样本,使用Labelme工具对仪表关键点进行标注,得到仪表关键点数据集,并按照4∶1的比例划分为训练集与验证集。模型训练参数中batch-size为4,epochs为150。使用关键点数据集对YOLOv8n-pose模型进行训练,训练过程中的mAP@50:95和关键点定位损失(pose loss)变化如图10所示。

图10 mAP@50:95和定位损失变化曲线

Figure 10 Variation curve of mAP@50:95 and pose loss

由图10可知,模型大致在50轮以后趋于稳定,最终精度值稳定在0.995,损失值稳定在0.01。利用训练后的模型对图8中的表盘图像进行关键点检测,检测效果如图11所示。由图11可以看出,模型能够较为准确地检测出仪表中各关键点。

图11 关键点检测效果

Figure 11 Keypoint detection results

2.7 仪表读数识别实验

为验证本文提出的关键点指针提取方法在复杂场景下的有效性,与传统Hough变换方法进行对比实验,针对验证集的190张图像进行指针提取。实验结果如表4所示。提取成功表示能够检测到指针,无论其位置是否存在偏差;提取失败指未能检测到指针。本文方法的成功率为100%,充分证明了其在复杂场景下的高鲁棒性。同时,对于存在指针阴影的典型仪表图像,进行指针提取效果对比,如图12所示,进一步验证了本文方法的优越性。

表4 指针提取实验

Table 4 Pointer extraction experiment

算法提取成功数提取失败数成功率/%Hough变换1771393.2本文算法1900100

图12 指针提取效果对比

Figure 12 Comparison of pointer extraction results

由图12可以看出,由于图像中存在指针阴影,Hough变换提取出了包含指针阴影在内的多条指针,而本文方法较好地提取指针和始末刻度线位置,实现了端到端的指针提取。

本文选取近年来同样基于关键点检测以及传统Hough变换的指针式仪表读数方法进行对比分析,对验证集的190张仪表样本进行读数识别测试,实验结果如表5所示。用平均相对误差e1和平均引用误差e2衡量读数精度[23],分别如式(13)和式(14)所示,误差越小表示读数精准度越高;帧率反映算法读数效率。

(13)

(14)

表5 不同读数算法对比实验

Table 5 Comparison experiment of different reading algorithms

算法e1/%e2/%参数量/MB帧率/(帧·s-1)Hough变换3.1202.237—59HRNet[29]1.3970.51628.5823文献[24]1.9600.834113.3641文献[9]1.8720.7383.6765本文算法1.4250.5573.0878

式中:n为测试样本个数;Rtrue为真实值;R为预测值;L表示指针式仪表量程。

由表5可知,本文仪表读数阶段算法的平均相对误差和平均引用误差分别为1.425%和0.557%。与HRNet算法的读数误差基本持平,但本文算法的参数量仅为3.08 MB,远远低于HRNet的28.58 MB,帧率约为HRNet算法的3.4倍。同时,本文算法相较于传统Hough变换算法在复杂场景下具有更低的读数误差和更高的读数效率。因此,本文读数算法兼具准确性和高效性。

3 结论

针对深度学习仪表读数算法资源消耗较大、传统读数算法误差累积与鲁棒性不足的问题,提出了一种轻量化改进的YOLOv8-RSS仪表检测模型及基于关键点检测的读数识别算法,主要工作如下。

(1)轻量化仪表检测模型。设计RGELAN模块替代C2f模块,降低骨干和颈部网络复杂度;采用考虑多尺度特征贡献的CASC-Head检测头,减少参数量;引入Shape-IoU损失函数提升检测精度。改进的YOLOv8-RSS模型在PmAP@50:95仅损失0.3%和0.4%的情况下,参数量、计算量和模型大小分别减少48.3%,44.4%和46%。

(2)基于关键点检测的读数算法。采用YOLOv8-pose模型提取指针与刻度关键点,通过拟合指针线和刻度线结合角度法计算读数,实现端到端的指针提取,避免累积误差。实验结果表明:仪表读数阶段算法的平均相对误差、平均引用误差、参数量和检测速度分别为1.425%,0.557%,3.08 MB和78帧/s,在读数误差与效率上优于同类算法。

参考文献:

[1] ZHANG J Q,ZHANG M,QI G W,et al.Reading recognition method of mechanical pointer meter based on machine vision[J].Engineering Advances,2023,3(1): 34-38.

[2] 钱玉宝,王紫涵,邱腾煌.指针式仪表读数识别的研究现状与发展[J].电子测量技术,2024,47(8): 110-119.QIAN Y B,WANG Z H,QIU T H.Research status and development of pointer meter reading recognition[J].Electronic Measurement Technology,2024,47(8): 110-119.

[3] 陶中涵,万熠,张桂新,等.改进YOLOv8与特征匹配的单指针仪表识别方法研究[J/OL].机械科学与技术,2024: 1-7.(2024-06-20)[2025-03-22].https:∥link.cnki.net/doi/10.13433/j.cnki.1003-8728.20240082.TAO Z H,WAN Y,ZHANG G X,et al.Research on improved YOLOv8and feature matching for single-pointer instrument recognition method[J/OL].Mechanical Science and Technology for Aerospace Engineering,2024: 1-7.(2024-06-20)[2025-03-22].https:∥link.cnki.net/doi/10.13433/j.cnki.1003-8728.20240082.

[4] 张建寰,曾亮,刘涛,等.户外巡检机器人指针式仪表识别方法研究[J].仪表技术与传感器,2023(11): 51-56,64.ZHANG J H,ZENG L,LIU T,et al.Research on pointer meter recognition algorithm of outdoor inspection robots[J].Instrument Technique and Sensor,2023(11): 51-56,64.

[5] 巩方超,王硕禾,周启斌,等.基于SURF和FLANN算法的变电所仪表定位与读数识别[J].石家庄铁道大学学报(自然科学版),2020,33(1): 110-115.GONG F C,WANG S H,ZHOU Q B,et al.Location and readout identification of instrument in transformer substation based on SURF and FLANN algorithm[J].Journal of Shijiazhuang Tiedao University (Natural Science Edition),2020,33(1): 110-115.

[6] 李巍,王鸥,刚毅凝,等.一种自动读取指针式仪表读数的方法[J].南京大学学报(自然科学),2019,55(1): 117-124.LI W,WANG O,GANG Y N,et al.An automatic reading method for pointer meter[J].Journal of Nanjing University (Natural Science),2019,55(1): 117-124.

[7] ZHANG C L,SHI L,ZHANG D D,et al.Pointer meter recognition method based on Yolov7 and hough transform[J].Applied Sciences-basel,2023,13(15): 8722.

[8] WU H,QI Z Y,TIAN H P,et al.SF6 pointer pressure meter reading method based on fusion attention feature UNet[J].IEEE Access,2023,11: 107451-107462.

[9] 宫倩,别必龙,范新南,等.基于关键点检测的指针仪表读数算法[J].电子测量与仪器学报,2023,37(3): 66-73.GONG Q,BIE B L,FAN X N,et al.Pointer meter reading algorithm based on key point detection[J].Journal of Electronic Measurement and Instrumentation,2023,37(3): 66-73.

[10] JIAO W H,ZHAO D,MEI X,et al.Multiresolution deep feature learning for pointer meters reading recognition[J].Journal of Manufacturing Processes,2024,114: 168-177.

[11] TAN M,LE Q.EfficientNet: Rethinking model scaling for convolutional neural networks[EB/OL].(2019-05-28)[2025-03-22].https:∥arxiv.org/abs/1905.11946.

[12] HAN K,WANG Y H,TIAN Q,et al.GhostNet: more features from cheap operations[C]∥2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).Piscataway: IEEE,2020: 1577-1586.

[13] 张震,陈可鑫,陈云飞.优化聚类和引入CBAM的YOLOv5管制刀具检测[J].郑州大学学报(工学版),2023,44(5): 40-45,61.ZHANG Z,CHEN K X,CHEN Y F.YOLOv5 with optimized clustering and CBAM for controlled knife detection[J].Journal of Zhengzhou University (Engineering Science),2023,44(5): 40-45,61.

[14] Ultralytics.YOLOv8[EB/OL].(2023-01-10)[2025-03-23].https:∥github.com/ultralytics/ultralytics.

[15] Ultralytics.YOLOv5[EB/OL].(2020-05-18)[2025-03-23].https:∥github.com/ultralytics/yolov5.

[16] WANG C Y,LIAO H M,YEH I H.Designing network design strategies through gradient path analysis[EB/OL].(2022-11-09)[2025-03-23].https:∥arxiv.org/abs/2211.04800v1.

[17] DING X H,ZHANG X Y,MA N N,et al.RepVGG: making VGG-style ConvNets great again[C]∥2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).Piscataway: IEEE,2021: 13733-13742.

[18] TIAN Z,SHEN C H,CHEN H,et al.FCOS: fully convolutional one-stage object detection[C]∥2019 IEEE/CVF International Conference on Computer Vision (ICCV).Piscataway: IEEE,2019: 9626-9635.

[19] ZHANG H,ZHANG S J.Shape-IoU: more accurate metric considering bounding box shape and scale[EB/OL].(2024-01-12)[2025-03-23].https:∥arxiv.org/abs/2312.17663.

[20] LOWE D G.Distinctive image features from scale-invariant keypoints[J].International Journal of Computer Vision,2024,60(2): 91-110.

[21] 张香怡.基于机器视觉的指针式仪表智能读数方法研究[D].北京: 中国石油大学(北京),2021.ZHANG X Y.Research on intelligent reading method of pointer instrument based on machine vision[D].Beijing: China University of Petroleum (Beijing),2021.

[22] 夏臻康,李维刚,田志强.基于YOLOv5的指针式仪表自动读数方法研究[J].仪表技术与传感器,2023(6): 44-51.XIA Z K,LI W G,TIAN Z Q.Research on automatic reading method of pointer meter based on YOLOv5[J].Instrument Technique and Sensor,2023(6): 44-51.

[23] ZHOU D K,YANG Y,ZHU J,et al.Intelligent reading recognition method of a pointer meter based on deep learning in a real environment[J].Measurement Science and Technology,2022,33(5): 055021.

[24] NI T,MIAO H F,WANG L L,et al.Multi-meter intelligent detection and recognition method under complex background[C]∥2020 39th Chinese Control Conference (CCC).Piscataway: IEEE,2020: 7135-7141.

[25] REDMON J,FARHADI A.YOLOV3: an incremental improvement[EB/OL].(2018-04-08)[2025-03-22].https:∥arxiv.org/abs/1804.02767.

[26] LI C Y,LI L L,GENG Y F,et al.YOLOv6 v3.0: a full-scale reloading[EB/OL].(2023-01-13)[2025-03-22].https:∥arxiv.org/abs/2301.05586v1.

[27] WANG C Y,BOCHKOVSKIY A,LIAO H M.YOLOv7: trainable bag-of-freebies sets new state-of-the-art for real-time object detectors[C]∥2023 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).Piscataway: IEEE,2023: 7464-7475.

[28] WANG C Y,YEH I H,LIAO H M.YOLOv9: learning what you want to learn using programmable gradient information[EB/OL].(2024-02-29)[2025-03-28].https:∥arxiv.org/abs/2402.13616v2.

[29] SUN K,XIAO B,LIU D,et al.Deep high-resolution representation learning for human pose estimation[C]∥2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).Piscataway: IEEE,2019: 5693-5703.

Pointer Meter Reading Recognition Algorithm Based on Improved YOLOv8

ZHANG Zhen1,2,LIU Jianchang1,GE Shuaibing1,ZHANG Junjie3,ZHANG Kai3

(1.Henan Institute of Advanced Technology,Zhengzhou University,Zhengzhou 450001,China; 2.School of Electrical and Information Engineering,Zhengzhou University,Zhengzhou 450001,China; 3.Henan Huirong Oil &Gas Technology Co.,Ltd.,Zhengzhou 450001,China)

AbstractTo address the issues of existing deep learning-based meter reading algorithms on edge devices,such as high resource consumption,the lack of robustness,error accumulation,and difficulty in end-to-end pointer extraction in traditional image processing methods in complex scenarios,a lightweight improved YOLOv8 model was proposed for meter detection.Meanwhile,the YOLOv8-pose keypoint model was employed to extract keypoints from the meter dial,and the reading was calculated using an angle-based method by fitting the pointer and scale lines.Firstly,a lightweight RGELAN module was designed to replace the C2f module,reducing the complexity of the backbone and neck networks.Then,the CASC-Head detection head,which considered multi-scale feature contributions,replaced the decoupled head,reducing detection parameters.Finally,the Shape-IoU optimized regression loss was introduced to improve detection accuracy.Experimental results showed that the improved YOLOv8-RSS model achieved 98.5% precision and 90.6% mAP@50:95,with only 0.3% and 0.4% losses compared with the original YOLOv8,while reducing parameters,computation,and model size by 48.3%,44.4%,and 46%,respectively.In complex scenarios,it achieved an average relative error of 1.425%,average absolute error of 0.557%,3.08 MB parameters,and 78 frame per second.Compared with existing methods,the proposed algorithm reduced space consumption and reading errors,and improved detection speed.

Keywordsmeter reading recognition; lightweight YOLOv8; SIFT tilt correction; key point detection; angle method

中图分类号:TP391

文献标志码:A

doi:10.13705/j.issn.1671-6833.2025.06.008

收稿日期:2025-11-12;修订日期:2025-12-30

基金项目:河南省重点研发专项项目(231111211600)

作者简介:张震(1966—),男,河南郑州人,郑州大学教授,博士,博士生导师,主要从事计算机视觉研究,E-mail:zhangzhen66@126.com。

引用本文:张震,刘建昌,葛帅兵等.基于改进YOLOv8的指针式仪表读数识别算法[J].郑州大学学报(工学版),2026,47(3):83-91.(ZHANG Z,LIU J C,GE S B,et al.Pointer meter reading recognition algorithm based on improved YOLOv8[J].Journal of Zhengzhou University (Engineering Science),2026,47(3):83-91.)

文章编号:1671-6833(2026)03-0083-09