一种指针式仪表的智能读数识别方法及系统转让专利

申请号 : CN202310442793.1

文献号 : CN116189192B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 吴苓芝李天赋王传钦刘呈祥杨西明

申请人 : 东方电子股份有限公司

摘要 :

本发明公开了一种指针式仪表的智能读数识别方法及系统,属于图像识别的技术领域,包括接收预置位图片;获取预置位仪表信息以及读数识别信息;从预设的数据库中查询预先构建的仪表表盘检测模型以及指针实例分割模型;调取表盘位置;确定指针掩码区域;根据所确定的指针掩码区域、预置位仪表信息以及读数识别信息,计算生成指针转角斜率以及标定刻度点转角斜率;计算生成临近刻度值,根据指针转角斜率以及临近刻度值,计算生成指针读数;若指针个数数据和/或表盘个数数据为多个,则生成遍历读数指令并执行。识别系统能够针对多个指针和/或多个表盘的情况进行遍历,实现多表盘、多指针仪表的读数功能。

权利要求 :

1.一种指针式仪表的智能读数识别方法,其特征在于,包括以下步骤:接收预置位图片;

根据所述预置位图片,获取预置位仪表信息以及读数识别信息,所述预置位仪表信息包括表盘圆心坐标数据、表盘刻度坐标以及刻度值数据,所述读数识别信息包括指针个数数据、表盘个数数据、表盘类型数据、读数类型数据以及读数单位数据;

保存所述预置位仪表信息以及所述读数识别信息至数据库中;

从预设的数据库中查询预先构建的仪表表盘检测模型以及指针实例分割模型;

根据所述预置位图片以及仪表表盘检测模型,调取表盘位置;

根据所调取的表盘位置以及所述指针实例分割模型,确定指针掩码区域;

根据所确定的指针掩码区域、所述预置位仪表信息以及读数识别信息,计算生成指针转角斜率以及标定刻度点转角斜率;

根据所述指针转角斜率以及所述标定刻度点转角斜率,计算生成临近刻度值,所述临近刻度值为距离指针最近的两个刻度值;

根据所述指针转角斜率以及所述临近刻度值,计算生成指针读数;

若所述指针个数数据和/或所述表盘个数数据为多个,则生成遍历读数指令并执行;

若所述表盘个数数据为多个,则根据所述指针掩码区域,拟合指针直线信息,所述指针直线信息包括指针端点数据、指针长度数据以及指针中点数据;

使用最小二乘法并根据指针中点数据以及指针长度数据,将各指针的图像数据拟合为直线;

根据直线的两个端点,调取直线长度及指针中点;

根据指针中点距离标定圆心的距离以及指针的长度,确定指针所在表盘;

根据所述预置位仪表信息以及指针所在表盘,重复所述计算生成指针转角斜率以及标定刻度点转角斜率的步骤。

2.根据权利要求1所述的一种指针式仪表的智能读数识别方法,其特征在于,在所述计算生成指针转角斜率以及标定刻度点转角斜率的步骤之中,具体包括:其中,M代表掩码的像素个数,i代表第i个掩码像素点,mask[xi]、mask[yi]分别代表分割得到的掩码像素i对应的x及y坐标,center['x0']、center['y0']分别代表标注工具传递的圆心的x和y坐标,ki代表掩码像素点i的斜率,theta代表指针与圆心的斜率。

3.根据权利要求1所述的一种指针式仪表的智能读数识别方法,其特征在于,在所述计算生成临近刻度值的步骤之中,具体包括:其中,ti代表标定的各个刻度点与圆心的斜率,pi代表第i个刻度点的坐标,center['x0']、center['y0']分别代表标注工具传递的圆心的x和y坐标,di代表标定刻度点与圆心的斜率ti减掉指针与圆心斜率的绝对值;dmin1为绝对值的最小值,保存该最小值对应的刻度值及斜率,即为距离指针最临近的点;将此最小绝对值从列表中删除,再次计算绝对值的最小值dmin2,并保存该最小值对应的刻度值及斜率,即为第二临近指针的点。

4.根据权利要求1所述的一种指针式仪表的智能读数识别方法,其特征在于,在所述计算生成指针读数的步骤之中,具体包括:其中,theta代表指针与圆心的斜率,p1['value']、p2['value']分别代表指针临近两个刻度点的刻度值,theta1、theta2分别代表指针临近的两个刻度点与圆心的斜率,value代表计算得到的指针指向的刻度值。

5.根据权利要求1所述的一种指针式仪表的智能读数识别方法,其特征在于,在所述生成遍历读数指令并执行的步骤之后,还包括:若所述表盘类型数据为双指针组合读数表盘,则根据所述指针掩码区域,计算生成指针长度;

将长度较短的指针刻度值作为十位、长度较长的指针刻度值作为个位数,计算生成最终结果值。

6.一种指针式仪表的智能读数识别系统,其特征在于,包括:

预置位图片接收模块(1),用于接收预置位图片;

仪表信息识别模块(2),用于根据所述预置位图片,获取预置位仪表信息以及读数识别信息,所述预置位仪表信息包括表盘圆心坐标数据、表盘刻度坐标以及刻度值数据,所述读数识别信息包括指针个数数据、表盘个数数据、表盘类型数据、读数类型数据以及读数单位数据;

仪表信息保存模块(3),用于保存所述预置位仪表信息以及所述读数识别信息至数据库中;

预设模型查询模块(4),用于从预设的数据库中查询预先构建的仪表表盘检测模型以及指针实例分割模型;

表盘位置调取模块(5),用于根据所述预置位图片以及仪表表盘检测模型,调取表盘位置;

指针掩码区域确定模块(6),用于根据所调取的表盘位置以及所述指针实例分割模型,确定指针掩码区域;

指针转角斜率以及标定刻度点转角斜率生成模块(7),用于根据所确定的指针掩码区域、所述预置位仪表信息以及读数识别信息,计算生成指针转角斜率以及标定刻度点转角斜率;

临近刻度值计算模块(8),用于根据所述指针转角斜率以及所述标定刻度点转角斜率,计算生成临近刻度值,所述临近刻度值为距离指针最近的两个刻度值;

指针读数生成模块(9),用于根据所述指针转角斜率以及所述临近刻度值,计算生成指针读数;

遍历读数指令生成模块(10),用于若所述指针个数数据和/或所述表盘个数数据为多个,则生成遍历读数指令并执行。

说明书 :

一种指针式仪表的智能读数识别方法及系统

技术领域

[0001] 本发明涉及图像识别的技术领域,尤其涉及一种指针式仪表的智能读数识别方法及系统。

背景技术

[0002] 近几年,远程智能巡视系统通过智能化、数字化手段,改变传统作业方式,推动作业智能化转型,将运维人员从繁杂低效的劳动中解放出来,提高运维工作效率。智能技术的应用,替代了人工例行巡视、熄灯巡视以及部分特殊巡视,极大的提高了变电站设备的运维效率,有效提升了变电站的智能运检水平。
[0003] 变电站巡视的设备种类多样,其中指针式仪表是变电站最典型的设备,在巡视中占重要位置。指针式仪表外观样式繁多,指针颜色有黑色、红色、白色、银色、黄色以及粉色等;指针样式有针形、箭形、镂空形、粗针、细针、长针以及短针等;指针数量有单指针、双指针、三指针以及四指针等;表盘样式有圆形表盘、方形表盘以及矩形表盘等;表盘数量有单表盘以及双表盘等。
[0004] 然而,现有的识别系统只能对一个或两个指针的仪表进行常规读数,读数方式较为单一,当指针式仪表需要组合读数、存在两个以上指针或存在两个以上表盘时,识别系统无法识别仪表的读数,基于以上问题,需要找到一种通用指针式仪表读数识别方法。

发明内容

[0005] 本发明提供一种指针式仪表的智能读数识别方法及系统,能够针对多个指针和/或多个表盘的情况进行遍历,实现多表盘、多指针仪表的读数功能。
[0006] 本发明提供的一种指针式仪表的智能读数识别方法及系统采用如下的技术方案:
[0007] 第一方面,本发明提供一种指针式仪表的智能读数识别方法,包括以下步骤:
[0008] 接收预置位图片;
[0009] 根据所述预置位图片,获取预置位仪表信息以及读数识别信息,所述预置位仪表信息包括表盘圆心坐标数据、表盘刻度坐标以及刻度值数据,所述读数识别信息包括指针个数数据、表盘个数数据、表盘类型数据、读数类型数据以及读数单位数据;
[0010] 保存所述预置位仪表信息以及所述读数识别信息至数据库中;
[0011] 从预设的数据库中查询预先构建的仪表表盘检测模型以及指针实例分割模型;
[0012] 根据所述预置位图片以及仪表表盘检测模型,调取表盘位置;
[0013] 根据所调取的表盘位置以及所述指针实例分割模型,确定指针掩码区域;
[0014] 根据所确定的指针掩码区域、所述预置位仪表信息以及读数识别信息,计算生成指针转角斜率以及标定刻度点转角斜率;
[0015] 根据所述指针转角斜率以及所述标定刻度点转角斜率,计算生成临近刻度值,所述临近刻度值为距离指针最近的两个刻度值;
[0016] 根据所述指针转角斜率以及所述临近刻度值,计算生成指针读数;
[0017] 若所述指针个数数据和/或所述表盘个数数据为多个,则生成遍历读数指令并执行。
[0018] 通过采用上述技术方案,识别系统首先构建标定工具,标定表盘圆心及刻度信息,并对应的配置读数识别所需的参数,其次使用表盘检测模型对指针式仪表的表盘进行检测定位;然后在图像中抠取指针式仪表表盘区域,使用指针实例分割模型实现指针的掩码区域分割;最后构建通用读数识别方法,根据标定工具传入的参数及实例分割得到的指针掩码区域,计算指针掩码区域与圆心的斜率及标定各刻度点与圆心的斜率,从而求出距离指针区域最近的两个刻度坐标及值,根据指针临近两点之间的角度和刻度值比例,计算出指针读数;识别系统能够针对多个指针和/或多个表盘的情况进行遍历,实现多表盘、多指针仪表的读数功能。
[0019] 进一步的,在所述计算生成指针转角斜率以及标定刻度点转角斜率的步骤之中,具体包括:
[0020]
[0021]
[0022] 其中,M代表掩码的像素个数,i代表第i个掩码像素点,mask[xi]、mask[yi]分别代表分割得到的掩码像素i对应的x及y坐标,center['x0']、center['y0']分别代表标注工具传递的圆心的x和y坐标,ki代表掩码像素点i的斜率,theta代表指针与圆心的斜率。
[0023] 进一步的,在所述计算生成临近刻度值的步骤之中,具体包括:
[0024]
[0025]
[0026]
[0027]
[0028] 其中,ti代表标定的各个刻度点与圆心的斜率,pi代表第i个刻度点的坐标,center['x0']、center['y0']分别代表标注工具传递的圆心的x和y坐标,di代表标定刻度点与圆心的斜率ti减掉指针与圆心斜率的绝对值;dmin1为绝对值的最小值,保存该最小值对应的刻度值及斜率,即为距离指针最临近的点;将此最小绝对值从列表中删除,再次计算绝对值的最小值dmin2,并保存该最小值对应的刻度值及斜率,即为第二临近指针的点。
[0029] 进一步的,在所述计算生成指针读数的步骤之中,具体包括:
[0030]
[0031] 其中,theta代表指针与圆心的斜率,p1[‘value’]、p2[‘value’]分别代表指针临近两个刻度点的刻度值,theta1、theta2分别代表指针临近的两个刻度点与圆心的斜率,value代表计算得到的指针指向的刻度值。
[0032] 进一步的,在所述生成遍历读数指令并执行的步骤之后,还包括:
[0033] 若所述表盘类型数据为双指针组合读数表盘,则根据所述指针掩码区域,计算生成指针长度;
[0034] 将长度较短的指针刻度值作为十位、长度较长的指针刻度值作为个位数,计算生成最终结果值。
[0035] 进一步的,在所述生成遍历读数指令并执行的步骤之后,还包括:
[0036] 若所述表盘个数数据为多个,则根据所述指针掩码区域,拟合指针直线信息,所述指针直线信息包括指针端点数据、指针长度数据以及指针中点数据;
[0037] 根据指针中点数据、指针长度数据以及表盘圆心坐标数据,确定指针所在表盘;
[0038] 根据所述预置位仪表信息以及指针所在表盘,重复所述计算生成指针转角斜率以及标定刻度点转角斜率的步骤。
[0039] 第二方面,本发明提供一种指针式仪表的智能读数识别系统,包括:
[0040] 预置位图片接收模块,用于接收预置位图片;
[0041] 仪表信息识别模块,用于根据所述预置位图片,获取预置位仪表信息以及读数识别信息,所述预置位仪表信息包括表盘圆心坐标数据、表盘刻度坐标以及刻度值数据,所述读数识别信息包括指针个数数据、表盘个数数据、表盘类型数据、读数类型数据以及读数单位数据;
[0042] 仪表信息保存模块,用于保存所述预置位仪表信息以及所述读数识别信息至数据库中;
[0043] 预设模型查询模块,用于从预设的数据库中查询预先构建的仪表表盘检测模型以及指针实例分割模型;
[0044] 表盘位置调取模块,用于根据所述预置位图片以及仪表表盘检测模型,调取表盘位置;
[0045] 指针掩码区域确定模块,用于根据所调取的表盘位置以及所述指针实例分割模型,确定指针掩码区域;
[0046] 指针转角斜率以及标定刻度点转角斜率生成模块,用于根据所确定的指针掩码区域、所述预置位仪表信息以及读数识别信息,计算生成指针转角斜率以及标定刻度点转角斜率;
[0047] 临近刻度值计算模块,用于根据所述指针转角斜率以及所述标定刻度点转角斜率,计算生成临近刻度值,所述临近刻度值为距离指针最近的两个刻度值;
[0048] 指针读数生成模块,用于根据所述指针转角斜率以及所述临近刻度值,计算生成指针读数;
[0049] 遍历读数指令生成模块,用于若所述指针个数数据和/或所述表盘个数数据为多个,则生成遍历读数指令并执行。
[0050] 第三方面,本发明提供一种智能终端,包括存储器和处理器,所述存储器上存储有能够被处理器加载并执行上述一种指针式仪表的智能读数识别方法的计算机程序。
[0051] 第四方面,本发明提供一种计算机可读存储介质,存储有能够被处理器加载并执行上述一种指针式仪表的智能读数识别方法的计算机程序。
[0052] 综上所述,与现有技术相比,上述技术方案的有益效果是:
[0053] 本发明所述的一种指针式仪表的智能读数识别方法及系统,能够首先构建标定工具,标定表盘圆心及刻度信息,并对应的配置读数识别所需的参数,其次对指针式仪表的表盘进行检测定位;然后在图像中抠取指针式仪表表盘区域,实现指针的掩码区域分割;最后构建通用读数识别方法,根据标定工具传入的参数及实例分割得到的指针掩码区域,计算指针掩码区域各点与圆心的斜率及标定各刻度点与圆心的斜率,从而求出距离指针区域最近的两个刻度坐标及值,根据指针临近两点之间的角度和刻度值比例,计算出指针读数;识别系统能够针对多个指针和/或多个表盘的情况进行遍历,实现多表盘、多指针仪表的读数功能。

附图说明

[0054] 图1是本发明实施例一种指针式仪表的智能读数识别方法的流程示意图。
[0055] 图2是本发明实施例中计算生成最终结果值的流程示意图。
[0056] 图3是本发明实施例中确定指针所在表盘的流程示意图。
[0057] 图4是本发明实施例中各模块的模块框图。
[0058] 附图标记说明:1、预置位图片接收模块;2、仪表信息识别模块;3、仪表信息保存模块;4、预设模型查询模块;5、表盘位置调取模块;6、指针掩码区域确定模块;7、指针转角斜率以及标定刻度点转角斜率生成模块;8、临近刻度值计算模块;9、指针读数生成模块;10、遍历读数指令生成模块。

具体实施方式

[0059] 以下结合全部附图对本发明作进一步详细说明。
[0060] 本发明实施例公开一种指针式仪表的智能读数识别方法及系统,参照图1,一种指针式仪表的智能读数识别方法,包括:
[0061] S101、接收预置位图片。
[0062] 具体的,变电站内设置有多个监控摄像机,监控摄像机能够实时拍摄变电站内仪表盘的监控录像,监控摄像机获取变电站内的具体表盘图像,生成预置位图片并发送,此时,读数识别系统接收监控摄像机发送的预置位图片。
[0063] S102、获取预置位仪表信息以及读数识别信息。
[0064] 具体的,读数识别系统根据预置位图片,通过标定工具获取预置位仪表信息以及读数识别信息,其中,预置位仪表信息包括表盘圆心坐标数据、表盘刻度坐标以及刻度值数据,读数识别信息包括指针个数数据、表盘个数数据、表盘类型数据、读数类型数据以及读数单位数据。另外,读数识别系统还构建有预置位纠偏算法,当摄像机晃动或预置位变动等原因导致预置位发生偏移时,预置位纠偏算法能够对表盘进行自动纠偏。
[0065] S103、保存预置位仪表信息以及读数识别信息至数据库中。
[0066] 具体的,读数识别系统获取到需要进行读数的仪表盘的预置位仪表信息以及读数识别信息后,保存预置位仪表信息以及读数识别信息至数据库中,以便于后续读数的直接调用,后续每次对仪表盘进行读数操作时都可以直接调取使用第一次标定的信息,简化了仪表盘读数的步骤。
[0067] S104、从预设的数据库中查询预先构建的仪表表盘检测模型以及指针实例分割模型。
[0068] 具体的,对仪表盘进行读数操作前,读数识别系统通过收集的几万张含各类指针式仪表的图片,构建训练数据集,并使用YOLOv5深度学习目标检测神经网络构建了表盘检测模型并将其存储至预设的数据库,进而定位表盘位置,以便在进行读数操作时直接调用,简化了仪表盘读数的步骤。
[0069] 此外,读数识别系统通过收集的几万张含指针式仪表图片裁减表盘小图,制作指针实例分割数据集,使用Mask R‑CNN实例分割算法,构建指针实例分割模型并将其存储至预设的数据库,进而预测指针掩码区域,以便在进行读数操作时直接调用,简化了仪表盘读数的步骤。
[0070] S105、调取表盘位置。
[0071] 具体的,读数识别系统根据预置位图片以及仪表表盘检测模型,调取表盘位置,进而准确识别确定当前仪表盘的实际位置,有利于读数识别系统对指针式仪表进行准确读数操作。
[0072] S106、确定指针掩码区域。
[0073] 具体的,读数识别系统根据所调取的表盘位置以及指针实例分割模型,确定指针掩码区域,进而准确识别确定当前仪表盘内各个指针的实际位置,有利于读数识别系统对指针式仪表的指针角度进行准确计算分析的操作。
[0074] S107、计算生成指针转角斜率以及标定刻度点转角斜率。
[0075] 具体的,读数识别系统根据所确定的指针掩码区域、预置位仪表信息以及读数识别信息,计算生成指针转角斜率以及标定刻度点转角斜率。
[0076] S108、计算生成临近刻度值。
[0077] 具体的,读数识别系统根据指针转角斜率以及标定刻度点转角斜率,计算生成临近刻度值,其中,临近刻度值为距离指针最近的两个刻度值。
[0078] S109、计算生成指针读数。
[0079] 具体的,读数识别系统根据指针转角斜率、标定刻度点转角斜率以及临近刻度值,计算生成指针读数。
[0080] S110、若指针个数数据和/或表盘个数数据为多个,则生成遍历读数指令并执行。
[0081] 具体的,当需要读数的指针个数数据和/或表盘个数数据为多个时,读数识别系统则生成遍历读数指令并执行,重复执行S105‑S109的步骤,其中,重复次数具体为指针个数和/或表盘个数,使读数识别系统针对多个指针的情况进行遍历,实现多指针读数;也能够针对多个表盘的情况进行遍历,实现多表盘多指针读数。
[0082] 进行指针式仪表的读数操作时,读数识别系统首先构建标定工具,标定表盘圆心及刻度信息,并对应的配置读数识别所需的参数,其次对指针式仪表的表盘进行检测定位;然后在图像中抠取指针式仪表表盘区域,实现指针的掩码区域分割;最后构建通用读数识别方法。
[0083] 读数识别系统根据标定工具传入的参数及实例分割得到的指针掩码区域,计算指针掩码区域各点与圆心的斜率及标定各刻度点与圆心的斜率,从而求出距离指针区域最近的两个刻度坐标及值,根据指针临近两点之间的角度和刻度值比例,计算出指针读数;识别系统能够针对多个指针和/或多个表盘的情况进行遍历,实现多表盘、多指针仪表的读数功能。
[0084] 参照图2,S110之后还根据表盘刻度坐标生成最终结果值,具体包括以下步骤:
[0085] S201、若表盘类型数据为双指针组合读数表盘,则计算生成指针长度。
[0086] 具体的,进行指针式仪表的读数操作时,若表盘类型数据为双指针组合读数表盘,读数识别系统则根据指针掩码区域,分别计算各个指针的长度,进而生成与各指针相对应的指针长度。
[0087] S202、计算生成最终结果值。
[0088] 具体的,读数识别系统将长度较短的指针刻度值作为十位、长度较长的指针刻度值作为个位数,计算生成最终结果值。
[0089] 作为本发明的另一种实施方式,当表盘类型为单表盘三指针组合读数表盘(这类仪表的最大值和最小值为不需要读数的废弃值)时,读数识别系统则根据指针的读数大小,将最大值和最小值丢弃,取中间值作为当前指针式仪表的刻度值。
[0090] 参照图3,S110之后还根据调取指针直线信息确定指针所在表盘,并重复计算生成指针转角斜率以及标定刻度点转角斜率的步骤,具体包括以下步骤:
[0091] S301、若表盘个数数据为多个,则调取指针直线信息。
[0092] 具体的,若表盘个数数据为多个,读数识别系统则根据指针掩码区域,拟合指针直线信息,其中,指针直线信息包括指针端点数据、指针长度数据以及指针中点数据。
[0093] S302、确定指针所在表盘。
[0094] 具体的,读数识别系统根据指针中点数据、指针长度数据以及表盘圆心坐标数据,进一步确定指针所在表盘。读数识别系统使用最小二乘法将各指针的图像数据拟合为直线,并计算直线两端点,从而得到直线长度及指针的中点,读数识别系统根据指针中点距离标定圆心的距离以及指针的长度,进而分析判断指针所在的表盘。
[0095] S303、重复计算生成指针转角斜率以及标定刻度点转角斜率的步骤。
[0096] 具体的,读数识别系统根据预置位仪表信息以及指针所在表盘,重复计算生成指针转角斜率以及标定刻度点转角斜率的步骤,直到完成对所有表盘的读数操作,进而实现对多个指针式仪表的依次读数操作。
[0097] 在另一实施例中,S107具体包括以下子步骤:
[0098]
[0099]
[0100] 其中,M代表掩码的像素个数,i代表第i个掩码像素点,mask[xi]、mask[yi]分别代表分割得到的掩码像素i对应的x及y坐标,center['x0']、center['y0']分别代表标注工具传递的圆心的x和y坐标,ki代表掩码像素点i的斜率,theta代表指针与圆心的斜率。
[0101] 在另一实施例中,S108具体包括以下子步骤:
[0102]
[0103]
[0104]
[0105]
[0106] 其中,ti代表标定的各个刻度点与圆心的斜率,pi代表第i个刻度点的坐标,center['x0']、center['y0']分别代表标注工具传递的圆心的x和y坐标,di代表标定刻度点与圆心的斜率ti减掉指针与圆心斜率的绝对值;dmin1为绝对值的最小值,保存该最小值对应的刻度值及斜率,即为距离指针最临近的点;将此最小绝对值从列表中删除,再次计算绝对值的最小值dmin2,并保存该最小值对应的刻度值及斜率,即为第二临近指针的点。
[0107] 在另一实施例中,S109具体包括以下子步骤:
[0108]
[0109] 其中,theta代表指针与圆心的斜率,p1[‘value’]、p2[‘value’]分别代表指针临近两个刻度点的刻度值,theta1、theta2分别代表指针临近的两个刻度点与圆心的斜率,value代表计算得到的指针指向的刻度值
[0110] 本发明实施例一种指针式仪表的智能读数识别方法的实施原理为:读数识别系统首先构建标定工具,标定表盘圆心及刻度信息,并配置读数识别所需的参数,同时构建预置位纠偏算法,当摄像机晃动等因素导致预置位偏移时,进行自动纠偏;其次构建YOLOv5深度学习目标检测网络模型,实现指针式仪表的表盘检测定位;然后在图像中抠取指针式仪表表盘区域,构建Mask R‑CNN深度学习实例分割网络模型,实现指针的掩码区域分割;最后构建通用读数识别方法,根据标定工具传入的参数及实例分割到的指针掩码区域,计算指针掩码区域各点与圆心的斜率及标定各刻度点与圆心的斜率,从而求出距离指针区域最近的两个刻度坐标及值,根据指针临近两点之间的角度和刻度值比例,计算出指针读数;针对多个指针的情况进行遍历,实现多指针读数;针对多个表盘的情况进行遍历,实现多表盘多指针仪表的读数。
[0111] 基于上述方法,本发明实施例还公开一种指针式仪表的智能读数识别系统。参照图4,一种指针式仪表的智能读数识别系统,包括:
[0112] 预置位图片接收模块1,预置位图片接收模块1用于接收预置位图片。
[0113] 仪表信息识别模块2,仪表信息识别模块2用于根据预置位图片,获取预置位仪表信息以及读数识别信息,预置位仪表信息包括表盘圆心坐标数据、表盘刻度坐标以及刻度值数据,读数识别信息包括指针个数数据、表盘个数数据、表盘类型数据、读数类型数据以及读数单位数据。
[0114] 仪表信息保存模块3,仪表信息保存模块3用于保存预置位仪表信息以及读数识别信息至数据库中。
[0115] 预设模型查询模块4,预设模型查询模块4用于从预设的数据库中查询预先构建的仪表表盘检测模型以及指针实例分割模型。
[0116] 表盘位置调取模块5,表盘位置调取模块5用于根据预置位图片以及仪表表盘检测模型,调取表盘位置。
[0117] 指针掩码区域确定模块6,指针掩码区域确定模块6用于根据所调取的表盘位置以及指针实例分割模型,确定指针掩码区域。
[0118] 指针转角斜率以及标定刻度点转角斜率生成模块7,指针转角斜率以及标定刻度点转角斜率生成模块7用于根据所确定的指针掩码区域、预置位仪表信息以及读数识别信息,计算生成指针转角斜率以及标定刻度点转角斜率。
[0119] 临近刻度值计算模块8,临近刻度值计算模块8用于根据指针转角斜率以及标定刻度点转角斜率,计算生成临近刻度值,临近刻度值为距离指针最近的两个刻度值;
[0120] 指针读数生成模块9,指针读数生成模块9用于根据指针转角斜率以及临近刻度值,计算生成指针读数。
[0121] 遍历读数指令生成模块10,遍历读数指令生成模块10用于若指针个数数据和/或表盘个数数据为多个,则生成遍历读数指令并执行。
[0122] 本发明实施例还公开一种智能终端,其包括存储器和处理器,其中,存储器上存储有能够被处理器加载并执行如上述的一种指针式仪表的智能读数识别方法的计算机程序。
[0123] 本发明实施例还公开一种计算机可读存储介质。计算机可读存储介质内存储有能够被处理器加载并执行如上述的一种指针式仪表的智能读数识别方法的计算机程序,计算机可读存储介质例如包括:U盘、移动硬盘、只读存储器(Read‑Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0124] 以上实施例仅用以说明本发明的技术方案,而非对发明的保护范围进行限制。显然,所描述的实施例仅仅是本发明部分实施例,而不是全部实施例。基于这些实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明所要保护的范围。尽管参照上述实施例对本发明进行了详细的说明,本领域普通技术人员依然可以在不冲突的情况下,不作出创造性劳动对本发明各实施例中的特征根据情况相互组合、增删或作其他调整,从而得到不同的、本质未脱离本发明的构思的其他技术方案,这些技术方案也同样属于本发明所要保护的范围。