CN109583324A - 一种基于单点多盒检测器的指针仪表读数自动识别方法 - Google Patents

一种基于单点多盒检测器的指针仪表读数自动识别方法 Download PDF

Info

Publication number
CN109583324A
CN109583324A CN201811338181.3A CN201811338181A CN109583324A CN 109583324 A CN109583324 A CN 109583324A CN 201811338181 A CN201811338181 A CN 201811338181A CN 109583324 A CN109583324 A CN 109583324A
Authority
CN
China
Prior art keywords
line segment
image
dial plate
point
pointer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201811338181.3A
Other languages
English (en)
Inventor
张海剑
王慧娇
蔡忠强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan University WHU
Original Assignee
Wuhan University WHU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuhan University WHU filed Critical Wuhan University WHU
Priority to CN201811338181.3A priority Critical patent/CN109583324A/zh
Publication of CN109583324A publication Critical patent/CN109583324A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/73Deblurring; Sharpening
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/181Segmentation; Edge detection involving edge growing; involving edge linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20172Image enhancement details
    • G06T2207/20201Motion blur correction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/02Recognising information on displays, dials, clocks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Geometry (AREA)
  • Image Analysis (AREA)

Abstract

本发明提出了一种基于单点多盒检测器的指针仪表读数自动识别方法。采用基于多曝光融合框架的低光增强方法生成增强图像,采用基于两阶段核估计去除运动模糊方法从模糊图像中恢复出清晰图像;设计基于VGG‑16网络和卷积神经网络的表盘检测器SSD结构检测图像中的表盘,输出表盘位置和置信度信息;构建训练数据集并用训练数据集训练SSD网络参数,设定相关参数和学习策略;提取图像的加速鲁棒特征生成特征点描述子,根据特征匹配技术对旋转的表盘图像进行校正;用基于梯度幅值的CannyLines线段检测算法检测提取边缘图像,从边缘图像中收集共线点群并拟合成直线最后验证线段;认定最佳线段为指针的真实位置,利用各角度之间的关系解算出指针在表盘中的示数。

Description

一种基于单点多盒检测器的指针仪表读数自动识别方法
技术领域
本发明属于仪表检测的技术领域,特别涉及一种基于单点多盒检测器的指针仪表读数自动识别方法。
背景技术
指针式仪表被广泛应用在各行各业中,如发电厂、变电站、生产车间、石油开采工地等,目的是获取物体的压力、温度等数据。人工读数是被广泛采用的仪表读数方式。工作人员定期巡逻,通过肉眼估计仪表读数,并记录在册。然而人工读数受到诸多因素影响,如视觉疲劳、精神不振、观测距离过远、观测角度不当等,这会造成不必要的误差,并且无法及时发现设备运行过程中参数的突变。另外,在变电站这类电力企业工厂中,很多区域存在高压电,人工巡检存在很大的危险;而且雾霾、雨雪等恶劣天气下人工巡检容易受到影响。因此,人工读数的方法误差大、效率低且危险性高。这就使得实现指针式仪表示数的自动识别具有重要的工业价值和市场价值,且丞需解决。近年来人工智能技术迅速发展,越来越多的领域开始利用机器视觉进行信息和数据的自动化分析处理。目前利用机器视觉实现指针式仪表自动读数的方法中应用最为广泛的是:减影法、Hough变换检测法、模板匹配法、神经网络检测法。减影法需要采集表盘指针指向零刻度和非零刻度的两幅图像,然后将两幅图像相减,获取指针之间的夹角以此求得表盘示数。它要求两幅图像除指针位置变换外,其他地方完全相同。Hough变换检测圆可以定位表盘位置,Hough变换检测直线则可以检测指针位置。模板匹配法需要先对采集的包含仪表的图像根据光照的不同进行区域划分,然后将指针区域的形状、面积等特征作为约束,满足约束的区域判定为指针所在区域。以上三种传统方法对于特定环境下的检测有一定优越性,但是鲁棒性差,易受光照条件、反光、拍摄角度等因素影响,从而读数准确率低。因此本发明在传统光学摄像头获取的监控视频或图片上。采用基于深度学习的目标检测方法进行仪表检测,加强检测算法鲁棒性,解决传统算法只能检测单一形状表盘的问题,并用CannyLines直线检测算法检测指针位置,用角度法解算最终指针示数。测试阶段,需人为初始化仪表量程以及起始刻度与终点刻度处与水平线的夹角,然后对测试算法输入含表盘的图片,即可输出指针示数。
发明内容
本发明的目的在于提供一种基于单点多盒检测器的指针仪表读数自动识别方法,该方法能够解决光线不足、画面抖动、表盘形状限制和多表盘检测问题。
本发明所采用的基于视频监控的单指针仪表读数自动识别的方法,包括以下步骤:
步骤1:采用基于多曝光融合框架的低光增强方法生成增强图像,采用基于两阶段核估计去除运动模糊方法从模糊图像中恢复出清晰图像;
步骤2:设计基于VGG-16网络和卷积神经网络的表盘检测器单点多盒检测器结构检测图像中的表盘,单点多盒检测器采用多尺度特征图检测生成预测框,经过置信度排序以及非极大值抑制,网络最后输出端到端的检测结果为表盘位置和置信度信息;
步骤3:构建训练数据集并用训练数据集训练单点多盒检测器网络参数,确定真实标签框和先验框匹配关系,设定相关参数和学习策略;
步骤4:提取图像的加速鲁棒特征生成特征点描述子,根据特征匹配技术对旋转的表盘图像进行校正;
步骤5:用基于梯度幅值的CannyLines线段检测算法检测提取边缘图像,从边缘图像中收集共线点群,用最小二乘拟合方法将共线点群拟合成直线,最后验证线段;
步骤6:认定该最佳线段为指针的真实位置,根据表盘指针和表盘中心的位置关系定位指针的象限,手动设定起始刻度与水平线夹角数值和表盘量程,利用各角度之间的关系解算出指针在表盘中的示数;
作为优选,步骤1中所述基于多曝光融合框架的低光增强方法为:
多曝光融合框架由四个主要组件组成;
第一个组件是多重曝光采样器,采样器的输出是一组曝光比{k1,k2,...,kN},其中N是要生成的图像的数量;
第二个名为多重曝光生成器,其关键是查找适合的相机响应模型:曝光比ki与亮度变换函数g的关系是Pi=g(P,ki),Pi表示输入图像P在曝光集中映射的图像;
第三部分,名为多重曝光评估器,决定融合时每幅图像的权重值,输出权重矩阵w,对于所有像素,权重矩阵不均匀:曝光像素权重较大,曝光不足的像素权重较小;
最后一个名为多重曝光合成器,根据权重矩阵将生成的图像融合到增强图像为:
c是三个颜色通道的索引,R为增强后的图像;此方法的关键在于确定多重曝光评估器,即权重矩阵w,确定多重曝光生成器,即亮度变换函数g、确定多重曝光采样器,即曝光比
步骤1中所述基于两阶段核估计去除运动模糊方法为:
I是潜在的清晰图像,k是模糊核,∈是噪声,代表卷积,R是我们看到的模糊图像,即从上一预处理步骤图像增强输出的图像R;
该算法分为两个阶段,第一阶段是模糊核粗略估计,产生一个高效稳健的核估计过程,计算出核的粗略版本;第二阶段是基于ISD算法的核细化,自适应地执行稀疏约束,获得精确的核估计;根据估计出的核对模糊图像进行处理,可得到去除运动模糊后的清晰图像I。
作为优选,步骤2中所述设计基于VGG-16网络和卷积神经网络的表盘检测器单点多盒检测器结构为:
单点多盒检测器网络结构分为基底网络和多尺度卷积层两部分;基础网络是VGG-16的前4层网络,多尺度卷积层是特征图逐渐变小的简单卷积网络由2部分构成;
VGG-16的前4层网络(Conv4-3)分别为Conv3-64(3代表卷积核大小为3×3,64为卷积核个数)、Conv3-128、Conv3-256和Conv-512,且每层网络之间均有最大值池化层降维,因此经过基底网络Conv4-3输出的特征图大小为38×38×512(即大小为38×38,维度为512);
多尺度卷积层第一部分是两个全连接层Conv6、Conv7,使用卷积核大小和个数分别为3×3×1024和1×1×1024,步长为1,输出特征尺寸为19×19×1024;第二部分是从新增的卷积层中提取Conv8-2(卷积层8,步长为2)、Conv9-2、Conv10-2、Conv11-2作为检测所用的卷积层,卷积核大小均为3×3,步长如卷积层名称所示均为2,其提取的特征大小分别是10×10×512、5×5×256、3×3×256、1×1×256;多尺度卷积层提取的多尺度特征图用于检测不同尺度的目标,比较大的特征图用于检测相对较小的目标,而小的特征图负责检测大目标,因此可以生成多尺度预测框;
步骤2中所述非极大值抑制方法:在每个单元设置尺度或宽高比不同的先验框,预测的边界框bounding boxes以这些先验框为基准,每一个预测的bounding boxes,都包含两个部分,第一部分是各个类别的置信度或者评分,第二部分是预测的bounding boxes与先验框的位置偏移;
不同特征图设置的先验框数目不同,同一个特征图上每个单元设置的先验框是相同,这里的数目指的是一个单元的先验框数目;先验框的设置,包括尺度和宽高比两个方面;对于先验框的尺度,其遵守一个线性递增规则:随着特征图大小降低,先验框尺度线性增加:
其中,m指的特征图个数,等于5,因为第一层(Conv4-3层)是单独设置的;sk表示先验框大小相对于图片的比例,smin和smax表示比例的最小值与最大值,smin=0.2,smax=0.9;对于宽高比,一般选取ar∈{1,2,3,1/2,1/3},则每个先验框的宽度与高度就可计算出:
宽高比ar取1时,增加一个先验框,尺寸为
基底网络和多尺度卷积层使用卷积滤波器产生一组固定大小的预测结果;结果为该位置归属于某一个类别的得分,或是该位置相对于先验框的位置偏移Δ(x,y,w,h),x、y指左上角顶点的偏移,w、h指宽、高的偏移。
作为优选,步骤3中所述构建训练数据集的具体步骤为:
首先构建表盘数据集,对表盘图像标注真实标签框,其次对数据集中的图像根据步骤1进行光照增强、去除运动模糊预处理,最后将数据集中的图像按照长宽比例缩放处理得到尺寸为300×300的表盘图像;
步骤3中所述确定真实标签框和先验框匹配关系为:
在训练过程中,首先要确定训练图片中的真实标签框(Ground Truth,GT)与哪个先验框来进行匹配;对于每个GT,都要从不同位置、不同宽高比的先验框中选择合适的bounding box与之匹配;匹配方法是计算先验框与GT的Jaccard系数(用于比较样本之间的相似性),选择Jaccard系数高于阈值0.5的默认框;Jaccard系数计算公式为:
保证每个GT一定与某个先验框匹配,且每个GT可以与多个先验框匹配;
0,表示第i个默认框与类别p的第j个GT匹配的指标,表示匹配,反之与之不匹配;由(1)中的真实标签框与先验框的匹配过程可知即可以有多个与第j个GT相匹配的bounding box;总体目标函数是位置误差(locatization loss,loc)和置信度误差(confidence loss,conf)的加权和:
其中,N是先验框的正样本数量,通过交叉验证将权重项α设置为1,c为类别置信度预测值,l为先验框所对应bounding box的位置预测值,g是GT的位置参数;如果N=0,则将损失函数设置为0;位置损失(loc)是l与g参数之间的平滑L1损失,定义如下:
置信度误差是输入为多个类别的置信度的softmax函数:
为了使模型对输入对象不同的尺寸和形状更加鲁棒,主要采用的技术有水平翻转、随机裁剪加颜色扭曲、随机采集块域、获得小目标训练样本;
步骤3中所述设定相关参数和学习策略具体为:
对已标注的1200张包含仪表的图像,在显卡GTX1080、内存为8G的笔记本中使用单点多盒检测器进行训练,批大小为16,迭代轮次为20000,前面的一些轮次学习率设定为0.001,后面的轮次学习率设定0.0001,用随机梯度下降方法进行训练,时间为12小时;
经过训练的单点多盒检测器网络将各权重参数学习到了最优,利用该检测网络可将任意一个包含表盘的图像中的表盘位置以及该位置处认定为表盘的置信度检测出来;为方便叙述,检测出的表盘图像部分简记为表盘图像C。
作为优选,步骤4中所述提取加速鲁棒特征生成特征点描述子如下:
图像旋转校正的原理是将两幅或多幅图像中的目标物体进行匹配,得到旋转角度,从而校正目标的角度偏移,根据基于加速鲁棒特征的图像匹配技术对多幅表盘图像进行配准,找到表盘偏移角度,校正表盘,为读取示数做准备;
图像C中任意一点X(x,y),对该点构建经过高斯滤波的Hessian矩阵,生成图像局部极值点:
其中,σ代表尺度,Lxy(X,σ)为高斯函数的二阶导数和图像C在点X(x,y)处的卷积;采用方型滤波器与积分图像卷积,通过增大方形滤波器的尺寸,形成图像金字塔;提取特征点,确定特征点主方向,最后生成特征点描述子;
步骤4中所述根据特征匹配技术对旋转的表盘图像进行校正方法为:
计算图像C1的特征点p和图像C2的特征点q之间的欧氏距离:
Des为特征点描述子;设定阈值t,最近邻距离与次近邻距离的比值若小于t,则最近邻的两个特征点匹配,将待校正图像中特征点的位置移至原始图像中对应位置,实现表盘的旋转校正,旋转校正后的图像记为图像X。
作为优选,步骤5中所述基于梯度幅值的CannyLines线段检测算法提取边缘图像方法为:
采用自适应设定阈值的CannyPF算子(Parameter-free Canny Operator)进行边缘检测;具体实现过程如下:图像X的水平线上取长为l的一段,这一段所有像素点的集合为L,假设这些像素点相互独立,对于任何像素xi∈L,其梯度值都满足g(xi)≥μ的概率为:
每一个长度为lk的边缘线段Sk,包含lk×(lk-1)/2条起始点不同、长度不等的线段,故图像X中所有线段的数量Nnum为:
线段S是边缘线段的误报数(Number of False Alarms,NFA)NFA(S)=Nnum×H(μ)l;NFA(S)≤1代表S是有效线段,NFS(S)>1代表S是无效线段;
对于任一边缘线段Sk,若其梯度幅值有下限gmin,且满足NFA(S)≤1,则称这个下限gmin为最小且有意义的梯度幅值;(2)对于任一边缘线段Sk,若其梯度幅值有上限gmax,且满足NFS(S)≥1,则称这个上限gmax为最大且无意义的梯度幅值;
所有有意义的边缘线段中最小长度lmin计算公式:
lmin=-4log(N)/log(p)
其中,N是图像X长和宽中的较大值,也称为最长且有意义的线段lmax,p的值设定为1/8,则图像中所有线段的长度均在范围[lmin,lmax]内;
为平衡概率与视觉,防止图像中平滑区域梯度幅值可能小到人眼看不见这种情况发生,引入参数λv,代表视觉中能被注意到的梯度幅值下限;将gmax修正为通过测试不同场景下拍摄的大量图像的λv值,发现当λv=70时检测到的线段具有最好的完整性和清晰度;
根据梯度幅值对边缘像素点进行快速分类;然后从具有最大梯度幅值的像素点开始,搜索其八邻域的像素点,寻找梯度方向与当前像素点梯度方向在容忍度τ内的点,若有,则与当前像素点连接;容忍度τ设定为τ=π/8;用这种方法遍历所有的边缘像素点;最后对边缘线段进行分割,长度大于阈值θs的线段需要被分割成两条线段,分割点是与原始线段两个端点形成角度最大的像素点;边缘线段有可能会被迭代分割;阈值θs表示需要分割的边缘线段的最小长度,并且等于最短边缘段的两倍;设置θs=lmin/2,则最短边缘段长度为lmin/4;对于大多数图像来说,lmin的值约等于12,因此θs=6,最短边缘段的长度为4;
在边缘连接和分割后,得到一组边缘线段,它们的像素点几乎是共线的,对于这样的一组线段,采用最小二乘法将它们合并成一条线段;
步骤5中所述从边缘图像中收集共线点群,用最小二乘拟合方法将共线点群拟合成直线,从而验证线段的方法具体如下:
一条线段Li,从其端点起沿着线段方向进行延伸;延伸方法为:首先将线段Li端点投影到拟合线li上,以获得真实域中的投影点pr,并将其四舍五入到整数点p;然后在线段Li法线方向上找到点p的八邻域,并搜寻与拟合线li的距离不大于1个像素的三个点到li的距离按递增顺序对其进行排序,并依次检查这些点中是否存在边缘点;如果找到边缘点,我们将其视为扩展假设,否则,我们将此视为一个gap;如果用以上方法找到的像素点也在另一条线段Lj的拟合线段为lj,且li与lj的梯度角度差小于θm,其中θm=2×(2/lmin),当这两条线段的拟合均方误差不大于1个像素时,那么这两条线段可以合并成一条线段;继续延长线段Li,直到在5个连续延伸操作中存在两个gap;当扩展假设的数量大于最小有效长度lmin时,延长的线段Li将被重新拟合;当一个延伸方向终止时,以相同的方式开始另一个延伸方向;
在N×N的图像X中,L为长为n的线段,且存在至少k个像素点与线段L方向一致,则线段L为边缘线段的误报数为:
p代表点与线段对齐的概况,其值设定为1/8;
很显然,高梯度幅值的线段与低梯度幅度的线段相比,当它们有相同的长度和相同数量的对准点时,高梯度幅值的线段会具有更强的特征,重新定义线段L为边缘线段的误报数为:
μ表示线段S中像素点的最小梯度幅度,Nnum表示所有线段的总数。
作为优选,步骤6中所述认定最佳线段为指针真实位置的为:
首先根据线段L的长度由长到短进行排序,设线段两端点坐标为(x1,y1),(x2,y2),长度计算公式为:
Llength=norm((x1,y1)-(x2,y2))
不利用线段长度作为选择最佳线段的决定因素,原因是实际测试中该表盘内会含有液体,液体区域与非液体区域的分界线易被检测出,为防止将其识别为代表指针的线段,需计算表盘中心到各线段的距离来将其剔除;计算表盘中心点到最长的四条线段的距离,设表盘中心坐标为(m,n),距离Ddistance的计算公式为:
距离由短到长的线段依次记为S1,S2,S3,S4,将线段S1暂定为代表指针的线段;若线段S1与S2到表盘中心的距离差值小于2,且线段S2长度大于S1,则将S2定为代表指针的线段;
步骤6中所述根据表盘指针和表盘中心的位置关系定位指针的象限为:
确定代表指针的线段M后,求该M线段斜率θ;线段M穿过表盘中心,两端点分别位于表盘中心的第一象限和第三象限,而实际表盘指针指向表盘中心的第三象限,因此在计算示数前需要判断指针指向表盘中心的第几象限,即距离中心较远的端点位于第几象限;判断方法为:计算表盘中心(m,n)与端点(x1,y1)的距离d1、与端点(x2,y2)的距离d2,若d1>d2,则调换两端点位置,以确保点(x2,y2)是距离表盘中心(m,n)较远的点;若m>x2且n<y2,则点(x2,y2)位于中心(m,n)的第一象限;若m>x2且n>y2,则点(x2,y2)位于中心(m,n)的第二象限,依次类推;
步骤6中所述手动设定起始刻度与水平线夹角数值和表盘量程,利用各角度之间的关系解算出指针在表盘中的示数:
手动设定起始刻度与水平线夹角数值和表盘量程,假设仪表表盘最小刻度为min,最大刻度为max,最小刻度与表盘中心所在直线偏离水平方向角度为θ1,最大刻度与表盘中心所在直线偏离水平方向角度为θ2,由步骤2确定了代表指针的线段中离表盘中心较远的端点相对于表盘中心点的位置,位置不同,指针所指刻度的计算公式也不同。
本发明针对指针式仪表读数问题提出了关于表盘检测、指针检测以及指针读数等方法,本发明所提供的方法能够在一定条件下完成高精度且实时的表盘读数任务。
附图说明
图1:本发明的平台界面图;
图2:本发明图像预处理的原始图像与增强结果;
图3:本发明图像预处理的原始图像与去除运动模糊图像;
图4:本发明的多表盘检测结果;
图5:本发明的特征点匹配结果图;
图6:本发明的旋转校正效果图;
图7:本发明的直线检测结果图;
图8:本发明的判断指针位置示意图;
图9:本发明的表盘示数计算方法
图10:多个圆形表盘检测;
图11:多个方形表盘检测;
图12:表盘非水平放置情况下检测结果;
图13:本发明的方法流程图。
具体实施方式
为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。
本发明实施方式搭建平台如下,如平台界面图图1所示:摄像头采集的图像尺寸为1920×1080,在处理过程中将图像尺寸缩小为960×540;视频源于摄像头实时读取的画面,首先提取一帧图像,由操作人员手动输入图像中仪表的最小刻度线、最大刻度线、最小刻度线与水平方向夹角、最大刻度线与水平方向夹角;然后点击“计算”按钮,“监控画面”框中显示指针识别结果,“仪表读数”框中显示此图像中仪表读数;之后系统在每15帧图像中提取一帧进行检测,并显示当前读数;需要注意的是,对于每一个表盘,只需在初次检测时手动输入其最小刻度线、最大刻度线、最小刻度线与水平方向夹角、最大刻度线与水平方向夹角这四个参数,之后无需再次输入。
下面结合图1至图12介绍本发明的实施方式:
步骤1:采用基于多曝光融合框架的低光增强方法生成增强图像;采用基于两阶段核估计去除运动模糊方法从模糊图像中恢复出清晰图像;
步骤1中所述基于多曝光融合框架的低光增强方法为:
多曝光融合框架由四个主要组件组成;
第一个组件是多重曝光采样器,采样器的输出是一组曝光比{k1,k2,...,kN},其中N是要生成的图像的数量;
第二个名为多重曝光生成器,其关键是查找适合的相机响应模型:曝光比ki与亮度变换函数g的关系是Pi=g(P,ki),Pi表示输入图像P在曝光集中映射的图像;
第三部分,名为多重曝光评估器,决定融合时每幅图像的权重值,输出权重矩阵w,对于所有像素,权重矩阵不均匀:曝光像素权重较大,曝光不足的像素权重较小;
最后一个名为多重曝光合成器,根据权重矩阵将生成的图像融合到增强图像为:
c是三个颜色通道的索引,R为增强后的图像;此方法的关键在于确定多重曝光评估器,即权重矩阵w,确定多重曝光生成器,即亮度变换函数g、确定多重曝光采样器,即曝光比原始图像与增强结果如图2所示;
步骤1中所述基于两阶段核估计去除运动模糊方法为:
I是潜在的清晰图像,k是模糊核,∈是噪声,代表卷积,R是我们看到的模糊图像,即从上一预处理步骤图像增强输出的图像R;
该算法分为两个阶段,第一阶段是模糊核粗略估计,产生一个高效稳健的核估计过程,计算出核的粗略版本;第二阶段是基于ISD算法的核细化,自适应地执行稀疏约束,获得精确的核估计;根据估计出的核对模糊图像进行处理,可得到去除运动模糊后的清晰图像I;原始图像与去除运动模糊图像如图3所示;
步骤2:设计基于VGG-16网络和卷积神经网络的表盘检测器SSD结构检测图像中的表盘;SSD采用多尺度特征图检测生成预测框,经过置信度排序以及非极大值抑制,网络最后输出端到端的检测结果为表盘位置和置信度信息;
步骤2中所述设计基于VGG-16网络和卷积神经网络的表盘检测器SSD结构为:
SSD网络结构分为基底网络和多尺度卷积层两部分;基础网络是VGG-16的前4层网络,多尺度卷积层是特征图逐渐变小的简单卷积网络由5部分构成;
VGG-16的前4层网络(Conv4-3)分别为Conv3-64(3代表卷积核大小为3×3,64为卷积核个数)、Conv3-128、Conv3-256和Conv-512,且每层网络之间均有最大值池化层降维,因此经过基底网络Conv4-3输出的特征图大小为38×38×512(即大小为38×38,维度为512);
多尺度卷积层第一部分是两个全连接层Conv6、Conv7,使用卷积核大小和个数分别为3×3×1024和1×1×1024,步长为1,输出特征尺寸为19×19×1024;第二部分是从新增的卷积层中提取Conv8-2(卷积层8,步长为2)、Conv9-2、Conv10-2、Conv11-2作为检测所用的卷积层,卷积核大小均为3×3,步长如卷积层名称所示均为2,其提取的特征大小分别是10×10×512、5×5×256、3×3×256、1×1×256;多尺度卷积层提取的多尺度特征图用于检测不同尺度的目标,比较大的特征图用于检测相对较小的目标,而小的特征图负责检测大目标,因此可以生成多尺度预测框;
步骤2中所述非极大值抑制方法:在每个单元设置尺度或宽高比不同的先验框,预测的边界框bounding boxes以这些先验框为基准,每一个预测的bounding boxes,都包含两个部分,第一部分是各个类别的置信度或者评分,第二部分是预测的bounding boxes与先验框的位置偏移;
不同特征图设置的先验框数目不同,同一个特征图上每个单元设置的先验框是相同,这里的数目指的是一个单元的先验框数目;先验框的设置,包括尺度和宽高比两个方面;对于先验框的尺度,其遵守一个线性递增规则:随着特征图大小降低,先验框尺度线性增加:
其中,m指的特征图个数,等于5,因为第一层(Conv4-3层)是单独设置的;sk表示先验框大小相对于图片的比例,smin和smax表示比例的最小值与最大值,smin=0.2,smax=0.9;对于宽高比,一般选取ar∈{1,2,3,1/2,1/3},则每个先验框的宽度与高度就可计算出:
宽高比ar取1时,增加一个先验框,尺寸为
基底网络和多尺度卷积层使用卷积滤波器产生一组固定大小的预测结果;结果为该位置归属于某一个类别的得分,或是该位置相对于先验框的位置偏移Δ(x,y,w,h),x、y指左上角顶点的偏移,w、h指宽、高的偏移;
步骤3:构建训练数据集并用训练数据集训练SSD网络参数,确定真实标签框和先验框匹配关系,设定相关参数和学习策略;
步骤3中所述构建训练数据集的具体步骤为:
首先构建表盘数据集,对表盘图像标注真实标签框,其次对数据集中的图像根据步骤1进行光照增强、去除运动模糊预处理,最后将数据集中的图像按照长宽比例缩放处理得到尺寸为300×300的表盘图像;
步骤3中所述确定真实标签框和先验框匹配关系为:
在训练过程中,首先要确定训练图片中的真实标签框(Ground Truth,GT)与哪个先验框来进行匹配;对于每个GT,都要从不同位置、不同宽高比的先验框中选择合适的bounding box与之匹配;匹配方法是计算先验框与GT的Jaccard系数(用于比较样本之间的相似性),选择Jaccard系数高于阈值0.5的默认框;Jaccard系数计算公式为:
保证每个GT一定与某个先验框匹配,且每个GT可以与多个先验框匹配;
0,表示第i个默认框与类别p的第j个GT匹配的指标,表示匹配,反之与之不匹配;由(1)中的真实标签框与先验框的匹配过程可知即可以有多个与第j个GT相匹配的bounding box;总体目标函数是位置误差(locatization loss,loc)和置信度误差(confidence loss,conf)的加权和:
其中,N是先验框的正样本数量,通过交叉验证将权重项α设置为1,c为类别置信度预测值,l为先验框所对应bounding box的位置预测值,g是GT的位置参数;如果N=0,则将损失函数设置为0;位置损失(loc)是l与g参数之间的平滑L1损失,定义如下:
置信度误差是输入为多个类别的置信度的softmax函数:
为了使模型对输入对象不同的尺寸和形状更加鲁棒,主要采用的技术有水平翻转、随机裁剪加颜色扭曲、随机采集块域、获得小目标训练样本;
步骤3中所述设定相关参数和学习策略具体为:
对已标注的1200张包含仪表的图像,在显卡GTX1080、内存为8G的笔记本中使用SSD进行训练,批大小为16,迭代轮次为20000,前面的一些轮次学习率设定为0.001,后面的轮次学习率设定0.0001,用随机梯度下降方法进行训练,时间为12小时;
经过训练的SSD网络将各权重参数学习到了最优,利用该检测网络可将任意一个包含表盘的图像中的表盘位置以及该位置处认定为表盘的置信度检测出来,多表盘检测结果如图4所示;为方便叙述,检测出的表盘图像部分简记为表盘图像C;
步骤4:提取图像的加速鲁棒特征生成特征点描述子,根据特征匹配技术对旋转的表盘图像进行校正;
步骤4中所述提取加速鲁棒特征生成特征点描述子如下:
图像旋转校正的原理是将两幅或多幅图像中的目标物体进行匹配,得到旋转角度,从而校正目标的角度偏移,根据基于加速鲁棒特征的图像匹配技术对多幅表盘图像进行配准,找到表盘偏移角度,校正表盘,为读取示数做准备;
图像C中任意一点X(x,y),对该点构建经过高斯滤波的Hessian矩阵,生成图像局部极值点:
其中,σ代表尺度,Lxy(X,σ)为高斯函数的二阶导数和图像C在点X(x,y)处的卷积;采用方型滤波器与积分图像卷积,通过增大方形滤波器的尺寸,形成图像金字塔;提取特征点,确定特征点主方向,最后生成特征点描述子;
步骤4中所述根据特征匹配技术对旋转的表盘图像进行校正方法为:
计算图像C1的特征点p和图像C2的特征点q之间的欧氏距离:
Des为特征点描述子;设定阈值t,最近邻距离与次近邻距离的比值若小于t,则最近邻的两个特征点匹配,将待校正图像中特征点的位置移至原始图像中对应位置,特征点匹配结果图如图5所示实现表盘的旋转校正,旋转校正后的图像记为图像X,旋转矫正效果图如图6所示;
步骤5:用基于梯度幅值的CannyLines线段检测算法检测提取边缘图像,从边缘图像中收集共线点群,用最小二乘拟合方法将共线点群拟合成直线,最后验证线段;
步骤5中所述基于梯度幅值的CannyLines线段检测算法提取边缘图像方法为:
采用自适应设定阈值的CannyPF算子(Parameter-free Canny operator)进行边缘检测;具体实现过程如下:图像X的水平线上取长为l的一段,这一段所有像素点的集合为L,假设这些像素点相互独立,对于任何像素xi∈L,其梯度值都满足g(xi)≥μ的概率为:
每一个长度为lk的边缘线段Sk,包含lk×(lk-1)/2条起始点不同、长度不等的线段,故图像X中所有线段的数量Nnum为:
线段S是边缘线段的误报数(Number of False Alarms,NFA)NFA(S)=Nnum×H(μ)l;NFA(S)≤1代表S是有效线段,NFS(S)>1代表S是无效线段;
对于任一边缘线段Sk,若其梯度幅值有下限gmin,且满足NFA(S)≤1,则称这个下限gmin为最小且有意义的梯度幅值;(2)对于任一边缘线段Sk,若其梯度幅值有上限gmax,且满足NFS(S)≥1,则称这个上限gmax为最大且无意义的梯度幅值;
所有有意义的边缘线段中最小长度lmin计算公式:
lmin=-4log(N)/log(p)
其中,N是图像X长和宽中的较大值,也称为最长且有意义的线段lmax,p的值设定为1/8,则图像中所有线段的长度均在范围[lmin,lmax]内;
为平衡概率与视觉,防止图像中平滑区域梯度幅值可能小到人眼看不见这种情况发生,引入参数λv,代表视觉中能被注意到的梯度幅值下限;将gmax修正为通过测试不同场景下拍摄的大量图像的λv值,发现当λv=70时检测到的线段具有最好的完整性和清晰度;
根据梯度幅值对边缘像素点进行快速分类;然后从具有最大梯度幅值的像素点开始,搜索其八邻域的像素点,寻找梯度方向与当前像素点梯度方向在容忍度τ内的点,若有,则与当前像素点连接;容忍度τ设定为τ=π/8;用这种方法遍历所有的边缘像素点;最后对边缘线段进行分割,长度大于阈值θs的线段需要被分割成两条线段,分割点是与原始线段两个端点形成角度最大的像素点;边缘线段有可能会被迭代分割;阈值θs表示需要分割的边缘线段的最小长度,并且等于最短边缘段的两倍;设置θs=lmin/2,则最短边缘段长度为lmin/4;对于大多数图像来说,lmin的值约等于12,因此θs=6,最短边缘段的长度为4;
在边缘连接和分割后,得到一组边缘线段,它们的像素点几乎是共线的,对于这样的一组线段,采用最小二乘法将它们合并成一条线段;
步骤5中所述从边缘图像中收集共线点群,用最小二乘拟合方法将共线点群拟合成直线,从而验证线段的方法具体如下:
一条线段Li,从其端点起沿着线段方向进行延伸;延伸方法为:首先将线段Li端点投影到拟合线li上,以获得真实域中的投影点pr,并将其四舍五入到整数点p;然后在线段Li法线方向上找到点p的八邻域,并搜寻与拟合线li的距离不大于1个像素的三个点到li的距离按递增顺序对其进行排序,并依次检查这些点中是否存在边缘点;如果找到边缘点,我们将其视为扩展假设,否则,我们将此视为一个gap;如果用以上方法找到的像素点也在另一条线段Lj的拟合线段为lj,且li与lj的梯度角度差小于θm,其中θm=2×(2/lmin),当这两条线段的拟合均方误差不大于1个像素时,那么这两条线段可以合并成一条线段;继续延长线段Li,直到在5个连续延伸操作中存在两个gap;当扩展假设的数量大于最小有效长度lmin时,延长的线段Li将被重新拟合;当一个延伸方向终止时,以相同的方式开始另一个延伸方向;
在N×N的图像X中,L为长为n的线段,且存在至少k个像素点与线段L方向一致,则线段L为边缘线段的误报数为:
p代表点与线段对齐的概况,其值设定为1/8;
很显然,高梯度幅值的线段与低梯度幅度的线段相比,当它们有相同的长度和相同数量的对准点时,高梯度幅值的线段会具有更强的特征,重新定义线段L为边缘线段的误报数为:
μ表示线段S中像素点的最小梯度幅度,Nnum表示所有线段的总数;
步骤6:认定该最佳线段为指针的真实位置;根据表盘指针和表盘中心的位置关系定位指针的象限;手动设定起始刻度与水平线夹角数值和表盘量程,利用各角度之间的关系解算出指针在表盘中的示数;
步骤6中所述认定最佳线段为指针真实位置的为:
首先根据线段L的长度由长到短进行排序,设线段两端点坐标为(x1,y1),(x2,y2),长度计算公式为:
Llength=norm((x1,y1)-(x2,y2))
不利用线段长度作为选择最佳线段的决定因素,原因是实际测试中该表盘内会含有液体,液体区域与非液体区域的分界线易被检测出,为防止将其识别为代表指针的线段,需计算表盘中心到各线段的距离来将其剔除;计算表盘中心点到最长的四条线段的距离,设表盘中心坐标为(m,n),距离Ddistance的计算公式为:
距离由短到长的线段依次记为S1,S2,S3,S4,将线段S1暂定为代表指针的线段;若线段S1与S2到表盘中心的距离差值小于2,且线段S2长度大于S1,则将S2定为代表指针的线段,直线检测结果图如图7所示;
步骤6中所述根据表盘指针和表盘中心的位置关系定位指针的象限为:
确定代表指针的线段M后,求该M线段斜率θ;线段M穿过表盘中心,两端点分别位于表盘中心的第一象限和第三象限,而实际表盘指针指向表盘中心的第三象限,因此在计算示数前需要判断指针指向表盘中心的第几象限,即距离中心较远的端点位于第几象限;判断指针位置示意图如图8所示,判断方法为:计算表盘中心(m,n)与端点(x1,y1)的距离d1、与端点(x2,y2)的距离d2,若d1>d2,则调换两端点位置,以确保点(x2,y2)是距离表盘中心(m,n)较远的点;若m>x2且n<y2,则点(x2,y2)位于中心(m,n)的第一象限;若m>x2且n>y2,则点(x2,y2)位于中心(m,n)的第二象限,依次类推;
步骤6中所述手动设定起始刻度与水平线夹角数值和表盘量程,利用各角度之间的关系解算出指针在表盘中的示数:
手动设定起始刻度与水平线夹角数值和表盘量程,假设仪表表盘最小刻度为min,最大刻度为max,最小刻度与表盘中心所在直线偏离水平方向角度为θ1,最大刻度与表盘中心所在直线偏离水平方向角度为θ2,由步骤6确定了代表指针的线段所处的象限,象限不同,指针所指刻度的计算公式也不同,具体的表盘示数计算方法如图9所示;
改变测试环境,如改变光线、摄像头和表盘距离、表盘个数、表盘形状等条件,测试在不同条件下,本发明设计的自动检测表盘与指针的准确率以及最终读数的误差等数据,对整个系统实用性进行评估。
用手机和摄像头等工具通过工厂实地采集和实验室模拟等方式,拍摄了2695张图像数据,尺寸为960×544、544×960、1920×1080。通过求取算法的检测结果与真实标签值的IOU值来判定表盘检测的准确率,IOU计算公式如下所示:
当其大于或等于0.85时,表盘检测正确,反之则检测错误。
良好条件下
良好条件指背景简单、无光照影响、表盘图像清晰、摄像头与表盘距离不超过0.5米。在良好条件下测试SSD算法对于单个表盘检测的正确率为98.89%,速度可达20fps。
干扰包括相似物体干扰,即图像中存在与表盘大小相近的圆环形状物体,光线问题包括光线偏暗和光照不均,图像模糊和拍摄角度变化。SSD-D算法在有相似物体干扰的情况下能保证98.89%的正确率;在光线较暗时,检测准确为96.10%;拍摄角度倾斜时,算法准确率为87.79%。
在20个场景下,采用分辨率为960×544的摄像头,半径为6.7cm的表盘,保证光线、拍摄角度等其他条件不变,仅改变摄像头与表盘的距离。在距离为0.5m处,表盘检测准确率为95%,在1m处,准确率为85%。
对于图像中有多个圆形表盘的情况,图10给出了各种情况下SSD的正确率,可以看出对多个表盘检测时正确率相对单个表盘有所降低,但仍保持着较高的正确率。速度相对于单个表盘检测有所变慢。
多个方形表盘检测
方形表盘检测情况见图11,可知其在环境良好、有光线问题、图像模糊、拍摄角度倾斜、摄像头与表盘距离超过1.5m的情况下正确率与圆形表盘接近,验证了本发明所提出的方法不仅适用于圆形表盘,也适用于方形表盘。图9给出了SSD对多个方形表盘和圆形表盘检测的结果示意图。图中蓝色框为检测表盘位置,红色数字为该区域检测为表盘的置信度。
指针检测与分析
在表盘任意放置情况下,检测结果如图12所示。经过上述各项测试,本发明提出的基于视频监控的指针式仪表读数自动识别方法可以解决单一指针式的自动仪表读数。
应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。

Claims (7)

1.一种基于单点多盒检测器的指针仪表读数自动识别方法,其特征在于,包括:
步骤1:采用基于多曝光融合框架的低光增强方法生成增强图像,采用基于两阶段核估计去除运动模糊方法从模糊图像中恢复出清晰图像;
步骤2:设计基于VGG-16网络和卷积神经网络的表盘检测器SSD结构检测图像中的表盘,SSD采用多尺度特征图检测生成预测框,经过置信度排序以及非极大值抑制,网络最后输出端到端的检测结果为表盘位置和置信度信息;
步骤3:构建训练数据集并用训练数据集训练SSD网络参数,确定真实标签框和先验框匹配关系,设定相关参数和学习策略;
步骤4:提取图像的加速鲁棒特征生成特征点描述子,根据特征匹配技术对旋转的表盘图像进行校正;
步骤5:用基于梯度幅值的CannyLines线段检测算法检测提取边缘图像,从边缘图像中收集共线点群,用最小二乘拟合方法将共线点群拟合成直线,最后验证线段;
步骤6:认定该最佳线段为指针的真实位置,根据表盘指针和表盘中心的位置关系定位指针的象限,手动设定起始刻度与水平线夹角数值和表盘量程,利用各角度之间的关系解算出指针在表盘中的示数。
2.根据权利要求1所述的基于单点多盒检测器的指针仪表读数自动识别方法,其特征在于,
步骤1中所述基于多曝光融合框架的低光增强方法为:
多曝光融合框架由四个主要组件组成;
第一个组件是多重曝光采样器,采样器的输出是一组曝光比{k1,k2,...,kN},其中N是要生成的图像的数量;
第二个名为多重曝光生成器,其关键是查找适合的相机响应模型:曝光比ki与亮度变换函数g的关系是Pi=g(P,ki),Pi表示输入图像P在曝光集中映射的图像;
第三部分,名为多重曝光评估器,决定融合时每幅图像的权重值,输出权重矩阵w,对于所有像素,权重矩阵不均匀:曝光像素权重较大,曝光不足的像素权重较小;
最后一个名为多重曝光合成器,根据权重矩阵将生成的图像融合到增强图像为:
c是三个颜色通道的索引,R为增强后的图像;此方法的关键在于确定多重曝光评估器,即权重矩阵w,确定多重曝光生成器,即亮度变换函数g、确定多重曝光采样器,即曝光比
步骤1中所述基于两阶段核估计去除运动模糊方法为:
I是潜在的清晰图像,k是模糊核,∈是噪声,代表卷积,R是我们看到的模糊图像,即从上一预处理步骤图像增强输出的图像R;
该算法分为两个阶段,第一阶段是模糊核粗略估计,产生一个高效稳健的核估计过程,计算出核的粗略版本;第二阶段是基于ISD算法的核细化,自适应地执行稀疏约束,获得精确的核估计;根据估计出的核对模糊图像进行处理,可得到去除运动模糊后的清晰图像I。
3.根据权利要求1所述的基于单点多盒检测器的指针仪表读数自动识别方法,其特征在于,
步骤2中所述设计基于VGG-16网络和卷积神经网络的表盘检测器SSD结构为:
SSD网络结构分为基底网络和多尺度卷积层两部分;基础网络是VGG-16的前4层网络,多尺度卷积层是特征图逐渐变小的简单卷积网络由5部分构成;
VGG-16的前4层网络(Conv4-3)分别为Conv3-64(3代表卷积核大小为3×3,64为卷积核个数)、Conv3-128、Conv3-256和Conv-512,且每层网络之间均有最大值池化层降维,因此经过基底网络Conv4-3输出的特征图大小为38×38×512(即大小为38×38,维度为512);
多尺度卷积层第一部分是两个全连接层Conv6、Conv7,使用卷积核大小和个数分别为3×3×1024和1×1×1024,步长为1,输出特征尺寸为19×19×1024;第二部分是从新增的卷积层中提取Conv8-2(卷积层8,步长为2)、Conv9-2、Conv10-2、Conv11-2作为检测所用的卷积层,卷积核大小均为3×3,步长如卷积层名称所示均为2,其提取的特征大小分别是10×10×512、5×5×256、3×3×256、1×1×256;多尺度卷积层提取的多尺度特征图用于检测不同尺度的目标,比较大的特征图用于检测相对较小的目标,而小的特征图负责检测大目标,因此可以生成多尺度预测框;
步骤2中所述非极大值抑制方法:在每个单元设置尺度或宽高比不同的先验框,预测的边界框bounding boxes以这些先验框为基准,每一个预测的bounding boxes,都包含两个部分,第一部分是各个类别的置信度或者评分,第二部分是预测的bounding boxes与先验框的位置偏移;
不同特征图设置的先验框数目不同,同一个特征图上每个单元设置的先验框是相同,这里的数目指的是一个单元的先验框数目;先验框的设置,包括尺度和宽高比两个方面;对于先验框的尺度,其遵守一个线性递增规则:随着特征图大小降低,先验框尺度线性增加:
其中,m指的特征图个数,等于5,因为第一层(Conv4-3层)是单独设置的;sk表示先验框大小相对于图片的比例,smin和smax表示比例的最小值与最大值,smin=0.2,smax=0.9;对于宽高比,一般选取ar∈{1,2,3,1/2,1/3},则每个先验框的宽度与高度就可计算出:
宽高比ar取1时,增加一个先验框,尺寸为
基底网络和多尺度卷积层使用卷积滤波器产生一组固定大小的预测结果;结果为该位置归属于某一个类别的得分,或是该位置相对于先验框的位置偏移Δ(x,y,w,h),x、y指左上角顶点的偏移,w、h指宽、高的偏移。
4.根据权利要求1所述的基于单点多盒检测器的指针仪表读数自动识别方法,其特征在于,
步骤3中所述构建训练数据集的具体步骤为:
首先构建表盘数据集,对表盘图像标注真实标签框,其次对数据集中的图像根据步骤1进行光照增强、去除运动模糊预处理,最后将数据集中的图像按照长宽比例缩放处理得到尺寸为300×300的表盘图像;
步骤3中所述确定真实标签框和先验框匹配关系为:
在训练过程中,首先要确定训练图片中的真实标签框(Ground Truth,GT)与哪个先验框来进行匹配;对于每个GT,都要从不同位置、不同宽高比的先验框中选择合适的boundingbox与之匹配;匹配方法是计算先验框与GT的Jaccard系数(用于比较样本之间的相似性),选择Jaccard系数高于阈值0.5的默认框;Jaccard系数计算公式为:
保证每个GT一定与某个先验框匹配,且每个GT可以与多个先验框匹配;
表示第i个默认框与类别p的第j个GT匹配的指标,表示匹配,反之与之不匹配;由(1)中的真实标签框与先验框的匹配过程可知即可以有多个与第j个GT相匹配的bounding box;总体目标函数是位置误差(locatization loss,loc)和置信度误差(confidence loss,conf)的加权和:
其中,N是先验框的正样本数量,通过交叉验证将权重项α设置为1,c为类别置信度预测值,l为先验框所对应bounding box的位置预测值,g是GT的位置参数;如果N=0,则将损失函数设置为0;位置损失(loc)是l与g参数之间的平滑L1损失,定义如下:
置信度误差是输入为多个类别的置信度的softmax函数:
为了使模型对输入对象不同的尺寸和形状更加鲁棒,主要采用的技术有水平翻转、随机裁剪加颜色扭曲、随机采集块域、获得小目标训练样本;
步骤3中所述设定相关参数和学习策略具体为:
对已标注的1200张包含仪表的图像,在显卡GTX1080、内存为8G的笔记本中使用SSD进行训练,批大小为16,迭代轮次为20000,前面的一些轮次学习率设定为0.001,后面的轮次学习率设定0.0001,用随机梯度下降方法进行训练,时间为12小时;
经过训练的SSD网络将各权重参数学习到了最优,利用该检测网络可将任意一个包含表盘的图像中的表盘位置以及该位置处认定为表盘的置信度检测出来,为方便叙述,检测出的表盘图像部分简记为表盘图像C。
5.根据权利要求1所述的基于单点多盒检测器的指针仪表读数自动识别方法,其特征在于,
步骤4中所述提取加速鲁棒特征生成特征点描述子如下:
图像旋转校正的原理是将两幅或多幅图像中的目标物体进行匹配,得到旋转角度,从而校正目标的角度偏移,根据基于加速鲁棒特征的图像匹配技术对多幅表盘图像进行配准,找到表盘偏移角度,校正表盘,为读取示数做准备;
图像C中任意一点X(x,y),对该点构建经过高斯滤波的Hessian矩阵,生成图像局部极值点:
其中,σ代表尺度,Lxy(X,σ)为高斯函数的二阶导数和图像C在点X(x,y)处的卷积;采用方型滤波器与积分图像卷积,通过增大方形滤波器的尺寸,形成图像金字塔;提取特征点,确定特征点主方向,最后生成特征点描述子;
步骤4中所述根据特征匹配技术对旋转的表盘图像进行校正方法为:
计算图像C1的特征点p和图像C2的特征点q之间的欧氏距离:
Des为特征点描述子;设定阈值t,最近邻距离与次近邻距离的比值若小于t,则最近邻的两个特征点匹配,将待校正图像中特征点的位置移至原始图像中对应位置,实现表盘的旋转校正,旋转校正后的图像记为图像X。
6.根据权利要求1所述的基于单点多盒检测器的指针仪表读数自动识别方法,其特征在于,
步骤5中所述基于梯度幅值的CannyLines线段检测算法提取边缘图像方法为:
采用自适应设定阈值的CannyPF算子(Parameter-free Canny operator)进行边缘检测;具体实现过程如下:图像X的水平线上取长为l的一段,这一段所有像素点的集合为L,假设这些像素点相互独立,对于任何像素xi∈L,其梯度值都满足g(xi)≥μ的概率为:
每一个长度为lk的边缘线段Sk,包含lk×(lk-1)/2条起始点不同、长度不等的线段,故图像X中所有线段的数量Nnum为:
线段S是边缘线段的误报数(Number of False Alarms,NFA)NFA(S)=Nnum×H(μ)l;NFA(S)≤1代表S是有效线段,NFS(S)>1代表S是无效线段;
对于任一边缘线段Sk,若其梯度幅值有下限gmin,且满足NFA(S)≤1,则称这个下限gmin为最小且有意义的梯度幅值;(2)对于任一边缘线段Sk,若其梯度幅值有上限gmax,且满足NFS(S)≥1,则称这个上限gmax为最大且无意义的梯度幅值;
所有有意义的边缘线段中最小长度lmin计算公式:
lmin=-4log(N)/log(p)
其中,N是图像X长和宽中的较大值,也称为最长且有意义的线段lmax,p的值设定为1/8,则图像中所有线段的长度均在范围[lmin,lmax]内;
为平衡概率与视觉,防止图像中平滑区域梯度幅值可能小到人眼看不见这种情况发生,引入参数λv,代表视觉中能被注意到的梯度幅值下限;将gmax修正为通过测试不同场景下拍摄的大量图像的λv值,发现当λv=70时检测到的线段具有最好的完整性和清晰度;
根据梯度幅值对边缘像素点进行快速分类;然后从具有最大梯度幅值的像素点开始,搜索其八邻域的像素点,寻找梯度方向与当前像素点梯度方向在容忍度τ内的点,若有,则与当前像素点连接;容忍度τ设定为τ=π/8;用这种方法遍历所有的边缘像素点;最后对边缘线段进行分割,长度大于阈值θs的线段需要被分割成两条线段,分割点是与原始线段两个端点形成角度最大的像素点;边缘线段有可能会被迭代分割;阈值θs表示需要分割的边缘线段的最小长度,并且等于最短边缘段的两倍;设置θs=lmin/2,则最短边缘段长度为lmin/4;对于大多数图像来说,lmin的值约等于12,因此θs=6,最短边缘段的长度为4;
在边缘连接和分割后,得到一组边缘线段,它们的像素点几乎是共线的,对于这样的一组线段,采用最小二乘法将它们合并成一条线段;
步骤5中所述从边缘图像中收集共线点群,用最小二乘拟合方法将共线点群拟合成直线,从而验证线段的方法具体如下:
一条线段Li,从其端点起沿着线段方向进行延伸;延伸方法为:首先将线段Li端点投影到拟合线li上,以获得真实域中的投影点pr,并将其四舍五入到整数点p;然后在线段Li法线方向上找到点p的八邻域,并搜寻与拟合线li的距离不大于1个像素的三个点到li的距离按递增顺序对其进行排序,并依次检查这些点中是否存在边缘点;如果找到边缘点,我们将其视为扩展假设,否则,我们将此视为一个gap;如果用以上方法找到的像素点也在另一条线段Lj的拟合线段为lj,且li与lj的梯度角度差小于θm,其中θm=2×(2/lmin),当这两条线段的拟合均方误差不大于1个像素时,那么这两条线段可以合并成一条线段;继续延长线段Li,直到在5个连续延伸操作中存在两个gap;当扩展假设的数量大于最小有效长度lmin时,延长的线段Li将被重新拟合;当一个延伸方向终止时,以相同的方式开始另一个延伸方向;
在N×N的图像X中,L为长为n的线段,且存在至少k个像素点与线段L方向一致,则线段L为边缘线段的误报数为:
p代表点与线段对齐的概况,其值设定为1/8;
很显然,高梯度幅值的线段与低梯度幅度的线段相比,当它们有相同的长度和相同数量的对准点时,高梯度幅值的线段会具有更强的特征,重新定义线段L为边缘线段的误报数为:
μ表示线段S中像素点的最小梯度幅度,Nnum表示所有线段的总数。
7.根据权利要求1所述的基于单点多盒检测器的指针仪表读数自动识别方法,其特征在于,
步骤6中所述认定最佳线段为指针真实位置的为:
首先根据线段L的长度由长到短进行排序,设线段两端点坐标为(x1,y1),(x2,y2),长度计算公式为:
Llength=norm((x1,y1)-(x2,y2))
不利用线段长度作为选择最佳线段的决定因素,原因是实际测试中该表盘内会含有液体,液体区域与非液体区域的分界线易被检测出,为防止将其识别为代表指针的线段,需计算表盘中心到各线段的距离来将其剔除;计算表盘中心点到最长的四条线段的距离,设表盘中心坐标为(m,n),距离Ddistance的计算公式为:
距离由短到长的线段依次记为S1,S2,S3,S4,将线段S1暂定为代表指针的线段;若线段S1与S2到表盘中心的距离差值小于2,且线段S2长度大于S1,则将S2定为代表指针的线段;
步骤6中所述根据表盘指针和表盘中心的位置关系定位指针的象限为:
确定代表指针的线段M后,求该M线段斜率θ;线段M穿过表盘中心,两端点分别位于表盘中心的第一象限和第三象限,而实际表盘指针指向表盘中心的第三象限,因此在计算示数前需要判断指针指向表盘中心的第几象限,即距离中心较远的端点位于第几象限;判断方法为:计算表盘中心(m,n)与端点(x1,y1)的距离d1、与端点(x2,y2)的距离d2,若d1>d2,则调换两端点位置,以确保点(x2,y2)是距离表盘中心(m,n)较远的点;若m>x2且n<y2,则点(x2,y2)位于中心(m,n)的第一象限;若m>x2且n>y2,则点(x2,y2)位于中心(m,n)的第二象限,依次类推;
步骤6中所述手动设定起始刻度与水平线夹角数值和表盘量程,利用各角度之间的关系解算出指针在表盘中的示数:
手动设定起始刻度与水平线夹角数值和表盘量程,假设仪表表盘最小刻度为min,最大刻度为max,最小刻度与表盘中心所在直线偏离水平方向角度为θ1,最大刻度与表盘中心所在直线偏离水平方向角度为θ2,由步骤6确定了代表指针的线段所处的象限,象限不同,指针所指刻度的计算公式也不同。
CN201811338181.3A 2018-11-12 2018-11-12 一种基于单点多盒检测器的指针仪表读数自动识别方法 Pending CN109583324A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811338181.3A CN109583324A (zh) 2018-11-12 2018-11-12 一种基于单点多盒检测器的指针仪表读数自动识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811338181.3A CN109583324A (zh) 2018-11-12 2018-11-12 一种基于单点多盒检测器的指针仪表读数自动识别方法

Publications (1)

Publication Number Publication Date
CN109583324A true CN109583324A (zh) 2019-04-05

Family

ID=65922193

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811338181.3A Pending CN109583324A (zh) 2018-11-12 2018-11-12 一种基于单点多盒检测器的指针仪表读数自动识别方法

Country Status (1)

Country Link
CN (1) CN109583324A (zh)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110059622A (zh) * 2019-04-18 2019-07-26 华北电力大学(保定) 一种基于无线传感器网络的指针式仪表示值识别系统
CN110097114A (zh) * 2019-04-26 2019-08-06 新华三技术有限公司 一种应用于神经网络的先验框确定方法及装置
CN110458203A (zh) * 2019-07-19 2019-11-15 北京科技大学 一种广告图像素材检测方法
CN110487314A (zh) * 2019-08-02 2019-11-22 惠州市德赛西威汽车电子股份有限公司 一种仪表指针自动检测方法
CN110543878A (zh) * 2019-08-07 2019-12-06 华南理工大学 一种基于神经网络的指针仪表读数识别方法
CN111160337A (zh) * 2019-12-12 2020-05-15 武汉工程大学 一种指针式仪表读数的自动识别方法、系统、介质及设备
CN111161255A (zh) * 2019-12-31 2020-05-15 云领电气智能科技(苏州)有限公司 基于机器视觉的电力仪表自动检测方法
CN112036390A (zh) * 2020-07-22 2020-12-04 四川长宁天然气开发有限责任公司 一种基于页岩气田生产三针类仪表读数的识别方法
CN112036232A (zh) * 2020-07-10 2020-12-04 中科院成都信息技术股份有限公司 一种图像表格结构识别方法、系统、终端以及存储介质
CN112036321A (zh) * 2020-09-01 2020-12-04 南京工程学院 一种基于ssd-roi级联神经网络的安全帽检测方法
CN112464949A (zh) * 2020-11-16 2021-03-09 广东电网有限责任公司 一种消除液位线对仪表指针识别影响的方法
CN112990179A (zh) * 2021-04-20 2021-06-18 成都阿莱夫信息技术有限公司 一种基于图片处理的单指针型表盘读数自动识别方法
CN113066017A (zh) * 2021-02-27 2021-07-02 华为技术有限公司 一种图像增强方法、模型训练方法及设备
CN113326838A (zh) * 2021-06-24 2021-08-31 浙江理工大学 一种基于深度学习网络的手机导光板模号识别方法
CN113449659A (zh) * 2021-07-05 2021-09-28 淮阴工学院 一种车道线的检测方法
CN113807328A (zh) * 2021-11-18 2021-12-17 济南和普威视光电技术有限公司 一种基于算法融合的目标检测方法、设备及介质
EP4195164A1 (en) 2021-12-13 2023-06-14 Ispark Robust remote instrument reading
CN117798654A (zh) * 2024-02-29 2024-04-02 山西漳电科学技术研究院(有限公司) 汽轮机轴系中心智能调整系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104197900A (zh) * 2014-09-16 2014-12-10 江苏天诚车饰科技有限公司 一种汽车仪表指针刻度识别方法
CN105554486A (zh) * 2015-12-22 2016-05-04 Tcl集团股份有限公司 一种投影校正方法和装置
CN106960417A (zh) * 2016-01-08 2017-07-18 中国科学院沈阳自动化研究所 一种基于图像显著结构的噪声模糊图像盲目反卷积方法
CN107301412A (zh) * 2017-05-08 2017-10-27 浙江工业大学 一种基于图像处理的指针式仪表读数方法
CN107833184A (zh) * 2017-10-12 2018-03-23 北京大学深圳研究生院 一种基于多曝光生成再融合框架的图像增强方法
CN108764257A (zh) * 2018-05-23 2018-11-06 郑州金惠计算机系统工程有限公司 一种多视角的指针式仪表识别方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104197900A (zh) * 2014-09-16 2014-12-10 江苏天诚车饰科技有限公司 一种汽车仪表指针刻度识别方法
CN105554486A (zh) * 2015-12-22 2016-05-04 Tcl集团股份有限公司 一种投影校正方法和装置
CN106960417A (zh) * 2016-01-08 2017-07-18 中国科学院沈阳自动化研究所 一种基于图像显著结构的噪声模糊图像盲目反卷积方法
CN107301412A (zh) * 2017-05-08 2017-10-27 浙江工业大学 一种基于图像处理的指针式仪表读数方法
CN107833184A (zh) * 2017-10-12 2018-03-23 北京大学深圳研究生院 一种基于多曝光生成再融合框架的图像增强方法
CN108764257A (zh) * 2018-05-23 2018-11-06 郑州金惠计算机系统工程有限公司 一种多视角的指针式仪表识别方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
HU XH ET AL: "《CannyLines: A parameter-free line segment detector》", 《IEEE》 *
LI X ET AL: "《Two-Phase Kernel Estimation for Robust Motion Deblurring》", 《ACM》 *
LIU W ET AL: "《SSD: Single Shot MultiBox Detector》", 《SPRINGERLINK》 *
ROSS G ET AL: "《Fast R-CNN》", 《IEEE》 *
SIMONYAN K ET AL: "《Very deep convolutional networks for large-scale image recognition》", 《ARXIV》 *

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110059622A (zh) * 2019-04-18 2019-07-26 华北电力大学(保定) 一种基于无线传感器网络的指针式仪表示值识别系统
CN110097114A (zh) * 2019-04-26 2019-08-06 新华三技术有限公司 一种应用于神经网络的先验框确定方法及装置
CN110097114B (zh) * 2019-04-26 2021-06-29 新华三技术有限公司 一种应用于神经网络的先验框确定方法及装置
CN110458203A (zh) * 2019-07-19 2019-11-15 北京科技大学 一种广告图像素材检测方法
CN110458203B (zh) * 2019-07-19 2021-11-30 北京科技大学 一种广告图像素材检测方法
CN110487314A (zh) * 2019-08-02 2019-11-22 惠州市德赛西威汽车电子股份有限公司 一种仪表指针自动检测方法
CN110487314B (zh) * 2019-08-02 2022-02-01 惠州市德赛西威汽车电子股份有限公司 一种仪表指针自动检测方法
CN110543878B (zh) * 2019-08-07 2022-03-29 华南理工大学 一种基于神经网络的指针仪表读数识别方法
CN110543878A (zh) * 2019-08-07 2019-12-06 华南理工大学 一种基于神经网络的指针仪表读数识别方法
CN111160337A (zh) * 2019-12-12 2020-05-15 武汉工程大学 一种指针式仪表读数的自动识别方法、系统、介质及设备
CN111160337B (zh) * 2019-12-12 2022-04-29 武汉工程大学 一种指针式仪表读数的自动识别方法、系统、介质及设备
CN111161255A (zh) * 2019-12-31 2020-05-15 云领电气智能科技(苏州)有限公司 基于机器视觉的电力仪表自动检测方法
CN112036232B (zh) * 2020-07-10 2023-07-18 中科院成都信息技术股份有限公司 一种图像表格结构识别方法、系统、终端以及存储介质
CN112036232A (zh) * 2020-07-10 2020-12-04 中科院成都信息技术股份有限公司 一种图像表格结构识别方法、系统、终端以及存储介质
CN112036390A (zh) * 2020-07-22 2020-12-04 四川长宁天然气开发有限责任公司 一种基于页岩气田生产三针类仪表读数的识别方法
CN112036321A (zh) * 2020-09-01 2020-12-04 南京工程学院 一种基于ssd-roi级联神经网络的安全帽检测方法
CN112464949A (zh) * 2020-11-16 2021-03-09 广东电网有限责任公司 一种消除液位线对仪表指针识别影响的方法
CN112464949B (zh) * 2020-11-16 2024-03-29 广东电网有限责任公司 一种消除液位线对仪表指针识别影响的方法
CN113066017A (zh) * 2021-02-27 2021-07-02 华为技术有限公司 一种图像增强方法、模型训练方法及设备
CN113066017B (zh) * 2021-02-27 2023-03-10 华为技术有限公司 一种图像增强方法、模型训练方法及设备
CN112990179A (zh) * 2021-04-20 2021-06-18 成都阿莱夫信息技术有限公司 一种基于图片处理的单指针型表盘读数自动识别方法
CN113326838A (zh) * 2021-06-24 2021-08-31 浙江理工大学 一种基于深度学习网络的手机导光板模号识别方法
CN113449659A (zh) * 2021-07-05 2021-09-28 淮阴工学院 一种车道线的检测方法
CN113449659B (zh) * 2021-07-05 2024-04-23 淮阴工学院 一种车道线的检测方法
CN113807328B (zh) * 2021-11-18 2022-03-18 济南和普威视光电技术有限公司 一种基于算法融合的目标检测方法、设备及介质
CN113807328A (zh) * 2021-11-18 2021-12-17 济南和普威视光电技术有限公司 一种基于算法融合的目标检测方法、设备及介质
EP4195164A1 (en) 2021-12-13 2023-06-14 Ispark Robust remote instrument reading
WO2023110210A1 (en) 2021-12-13 2023-06-22 Ispark Robust remote instrument reading
CN117798654A (zh) * 2024-02-29 2024-04-02 山西漳电科学技术研究院(有限公司) 汽轮机轴系中心智能调整系统
CN117798654B (zh) * 2024-02-29 2024-05-03 山西漳电科学技术研究院(有限公司) 汽轮机轴系中心智能调整系统

Similar Documents

Publication Publication Date Title
CN109583324A (zh) 一种基于单点多盒检测器的指针仪表读数自动识别方法
CN106127204B (zh) 一种全卷积神经网络的多方向水表读数区域检测算法
CN108830188A (zh) 基于深度学习的车辆检测方法
CN109635806B (zh) 基于残差网络的电表数值识别方法
CN111368690B (zh) 基于深度学习的海浪影响下视频图像船只检测方法及系统
CN103324937B (zh) 标注目标的方法和装置
CN104112269B (zh) 一种基于机器视觉的太阳能电池激光刻线参数检测方法及系统
CN110543878A (zh) 一种基于神经网络的指针仪表读数识别方法
CN110148162A (zh) 一种基于复合算子的异源图像匹配方法
CN108734143A (zh) 一种巡检机器人的基于双目视觉的输电线路在线检测方法
CN101142584A (zh) 面部特征检测的方法
CN110084165A (zh) 基于边缘计算的电力领域开放场景下异常事件的智能识别与预警方法
CN109583357A (zh) 一种改进lbp和轻量卷积神经网络级联的人脸识别方法
CN113869162A (zh) 一种基于人工智能的违章识别方法及系统
CN103593648B (zh) 一个面向开放环境的人脸识别方法
CN115272652A (zh) 基于多元回归和自适应焦点损失的密集物体图像检测方法
CN107240112A (zh) 一种复杂场景下个体x角点提取方法
CN110263790A (zh) 一种基于卷积神经网络的电厂电表字符定位和识别方法
CN109145846A (zh) 材料微观结构智能识别分析系统及分析方法
CN109146974A (zh) 一种指针式仪表读数识别方法及系统
CN110427943A (zh) 一种基于r-cnn的智能电表数值识别方法
CN109086781A (zh) 一种基于深度学习的机柜灯状态识别方法
CN112084860A (zh) 目标对象检测、火力发电厂检测方法和装置
CN115019294A (zh) 一种指针式仪表读数识别方法及系统
Hou et al. A pointer meter reading recognition method based on YOLOX and semantic segmentation technology

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20190405

RJ01 Rejection of invention patent application after publication