表盘状态识别方法及装置、可读存储介质和电子设备与流程

文档序号:18467109发布日期:2019-08-17 02:35阅读:224来源:国知局
表盘状态识别方法及装置、可读存储介质和电子设备与流程

本发明涉及计算机技术领域,尤其涉及一种表盘状态识别方法及装置、可读存储介质和电子设备。



背景技术:

目前,针对表盘状态识别的技术方案有基于图像处理和基于卷积神经网络两类。其中,基于图像处理的方案先从当前输入图像中提取的颜色、纹理和位置等信息,然后按照预定规则判断结果;基于神经网络的方法先拍摄并生成大量训练图像以训练卷积神经网络,然后对输入的图像直接进行分类判断。然而基于图像处理的方案中,当前已有的利用计算机视觉技术识别指针仪表盘的技术存在下述的问题:首先,以往识别方法对图像采集设备安装角度、环境亮度有较高的要求。由于图像采集设备的安装位置受现场的环境制约,不同距离拍摄的仪表盘图像亮度和大小不一致,且当图像采集设备与仪表盘平面存在一定的拍摄角度时,仪表盘图像将出现形变。例如将圆形的表盘拍摄为椭圆形,对后续的判断与识别造成干扰,从而导致识别准确率不高。其次,以往识别方法对表针中心线的定位不准确,特别是当表针处于临界区域时,加重了别率不高的问题。此外,以往的算法大多是针对画面上仅存在单个仪表盘的简单情况进行设计和优化的,要求针对每个仪表盘安装一个摄像头,这在很大程度上提升了项目实施的成本。



技术实现要素:

有鉴于此,本发明实施例提供一种表盘状态识别方法及装置、可读存储介质和电子设备,解决了在复杂的现场环境部署时表盘的亮度、角度不确定性高的问题。

第一方面,本发明实施例提供了一种表盘状态识别方法,包括:

获取表盘图像;

确定指针顶点位置;

确定表盘的第一区域边界线上的第一参考点位置和第二参考点位置;

根据所述指针顶点位置和所述第一参考点位置、所述第二参考点位置确定所述表盘的状态。

所述方法根据顶点以及参考点的位置判断指针在表盘的位置,进而判断表盘的状态,由此可以提高表盘状态识别的准确性。进一步地,所述根据所述指针顶点位置和所述第一参考点位置、所述第二参考点位置确定所述表盘的状态包括:

根据所述指针顶点位置和所述第一参考点位置、第二参考点位置确定第一角度值、第二角度值和第三角度值,所述第一角度值用于表示所述指针顶点到表盘中心的连线和预定参考线的夹角,所述第二角度值用于表示所述第一参考点到表盘中心的连线和预定参考线的夹角,所述第三角度值用于表示所述第二参考点到表盘中心的连线和预定参考线的夹角;

根据所述第一角度值、第二角度值和第三角度值确定表盘状态。

所述方法根据顶点以及参考点的位置获取可以表征所述指针和边界线的相对位置的关系的角度值,基于角度值判断指针在表盘上的位置,由此可以提高对表盘状态识别的准确性。

进一步地,所述获取表盘图像包括:

提取所述表盘图像中的表盘区域;

将所述表盘区域中的表盘形状校正为设定形状。

所述方法可以将因拍摄角度导致变形的表盘恢复原状,避免因表盘变形引起的状态识别不准确。

进一步地,所述表盘形状校正方法为仿射变换。

所述方法可以提高表盘形状校正的精确度。

进一步地,所述确定指针顶点位置包括:

提取包含指针的表盘图像掩膜,将所述包含指针的表盘图像掩膜转换为二值图像;

通过计算所述二值图像的非零区域筛选面积最大的区域轮廓,得到指针区域掩膜图;

计算所述指针轮廓各点与所述二值图像中心点的距离,确定与所述二值图像中心点距离最远的点为指针顶点。

所述确定指针顶点位置的方法通过计算得出指针顶点位置,提高了所述指针顶点位置的准确度,减小了误差。

进一步地,所述确定指针顶点位置还包括:

响应于所述指针顶点与所述二值图像中心点的距离超出设定的第一距离范围,提示错误。

所述方法用于判断所述指针顶点位置的合理性,防止因所述表盘图像过度曝光等原因造成的二值图像中指针轮廓提取错误,指针位置偏移。

进一步地,所述确定表盘的第一区域边界线上的第一参考点位置和第二参考点位置的过程包括:

提取包含第一区域的表盘图像掩膜,将所述包含第一区域的表盘图像掩膜转换为二值图像;

通过计算所述二值图像的非零区域筛选面积最大的区域轮廓,得到表盘第一区域掩膜图;

确定表盘第一区域重心点和所述二值图像的中心点,在经过所述重心点和所述中心点连接的线段中点且垂直于所述线段的直线上确定第一对照点和第二对照点,所述第一对照点和所述第二对照点到所述线段的距离相等;

分别计算所述第一区域轮廓上的点到所述第一对照点和所述第二对照点的距离,选择与所述第一对照点距离最远的点为所述第一参考点,与所述第二对照点距离最远的点为所述第二参考点。

所述确定第一参考点位置和第二参考点位置的方法通过计算得出所述第一参考点位置和第二参考点位置,提高了所述第一参考点位置和第二参考点位置的准确度,减小了误差。

进一步地,所述确定表盘的第一区域边界线上的第一参考点位置和第二参考点位置还包括:

响应于以下至少一种情况,提示错误:

所述第一参考点与所述第一对照点的距离超出第二距离范围、所述第二参考点与所述第二对照点的距离超出第三距离范围、所述第一参考点与所述第二参考点之间的距离超出第四距离范围、所述第一参考点与所述图像中心点连线和所述第二参考点与所述二值图像中心点连线的夹角角度超出角度范围。

所述方法用于判断所述第一参考点位置和第二参考点位置的合理性,防止因所述表盘图像过度曝光等原因造成的二值图像中第一区域轮廓提取错误,第一参考点位置和第二参考点位置偏移。

进一步地,所述方法还包括:

对所述掩膜图进行腐蚀和膨胀操作,消除所述指针轮廓和/或所述第一区域轮廓的干扰像素。

所述方法用于消除所述二值图像掩膜中轮廓边缘的干扰像素,防止因干扰像素造成的所述指针顶点位置和/或所述第一参考点位置和第二参考点位置判断错误。

进一步地,所述确定第一角度值、第二角度值和第三角度值包括:

确定表盘中心点分别与所述指针顶点、第一参考点和第二参考点的第一连接线、第二连接线和第三连接线;

通过以所述表盘中心点为原点,以经过所述表盘中心点的所述预设参考线为半径沿同一方向划至所述第一连接线、所述第二连接线或所述第三连接线确定所述第一角度值、所述第二角度值和所述第三角度值。

所述方法以预设的参考线为对照,通过确定角度值的方式准确的判断所述指针顶点和所述第一参考点、所述第二参考点的相对位置。

进一步地,所述根据所述第一角度值、第二角度值和第三角度值确定表盘状态包括:

响应于所述第一角度值在第二角度值和第三角度值形成的范围外,确定所述指针位于第一区域外。

所述方法通过所述第一角度值、第二角度值和第三角度值确定所述指针顶点所在的指针和所述第一参考点、所述第二参考点围成的第一区域之间的相对位置。

第二方面,本发明实施例提供了一种表盘状态识别装置,包括:

图像获取模块,用于获取表盘图像。

第一定位模块,用于确定指针顶点位置。

第二定位模块,用于确定表盘的第一区域边界线上的第一参考点位置和第二参考点位置。

表盘识别模块,用于根据所述指针顶点位置和所述第一参考点位置、所述第二参考点位置确定所述表盘的状态。

第三方面,本发明实施例提供了一种计算机可读存储介质,所述计算机程序指令在被处理器执行时实现如第一方面任一项所述的方法。

第四方面,本发明实施例提供了一种电子设备,包括存储器和处理器,所述存储器用于存储一条或多条计算机程序指令,其中,所述一条或多条计算机程序指令被所述处理器执行以实现如第一方面任一项所述的方法。

本发明实施例的表盘状态识别方法通过识别仪表表盘指针的顶点和划分表盘区域的边界线的参考点,进而根据顶点以及参考点的位置获取可以表征所述指针和边界线的相对位置的关系的角度值,基于角度值判断指针在表盘上的位置,由此,可以提高对表盘状态识别的准确性,并且具有更好的普适性,可以适用于各类表盘的状态判断和识别。

附图说明

通过以下参照附图对本发明实施例的描述,本发明的上述以及其它目的、特征和优点将更为清楚,在附图中:

图1为本发明实施例的表盘状态识别方法的流程图;

图2为本发明实施例一个可选实现方式获取表盘图像的方法流程图;

图3为本发明实施例一个可选实现方式确定指针顶点位置的方法流程图;

图4为本发明实施例一个可选实现方式确定第一参考点位置、第二参考点位置的方法流程图;

图5为本发明实施例一个可选实现方式确定所述表盘的状态的方法流程图;

图6为本发明实施例一个可选实现方式计算角度值的方法流程图;

图7为本发明实施例的确定指针顶点位置的示意图;

图8为本发明实施例的确定第一参考点位置和第二参考点位置的示意图;

图9为本发明实施例的计算角度值示意图;

图10为本发明实施例的表盘状态识别装置的示意图;

图11为本发明实施例的电子设备的示意图。

具体实施方式

以下基于实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。

此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且附图不一定是按比例绘制的。

除非上下文明确要求,否则整个说明书和权利要求书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。

在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。

图1为本发明实施例的表盘状态识别方法的流程图,如图所示,所述表盘状态识别方法包括:

步骤s100:获取表盘图像。

具体地,例如可以通过拍摄照片的方式获取表盘图像,本发明对拍摄照片的方法以及获取图像的方式不做限定。

在获取所述表盘图像之前根据设定的亮度值调整所述表盘图像的亮度,对表盘图像进行亮度的预处理,使所述表盘图像内表盘及指针清晰可见,防止因过度曝光等问题导致表盘图像不清晰,无法识别。

步骤s200:确定指针顶点位置。

具体地,根据所述表盘图像中的指针确定所述指针的顶点位置。进一步地,对确定的指针顶点位置进行合理性判断,防止由于对焦模糊、过度曝光等拍摄问题造成顶点位置确定不准确。

步骤s300:确定表盘的第一区域边界线上的第一参考点位置和第二参考点位置。

具体地,所述步骤s300和上述步骤s200可以同步进行。根据所述表盘图像中的表盘区域确定所述第一参考点和第二参考点的位置。在本实施例中,所述表盘区域为所述指针的运动区域,通过所述指针在表盘区域内所处的位置判断安装了所述表盘的装置的状态。例如当需要判断所述装置的一种状态时,所述表盘区域包括表示所述状态的第一区域,所述指针位于所述第一区域内判断所述装置处于所述状态,所述指针位于所述第一区域外判断所述装置不处于所述状态。例如所述第一区域表示安全时,所述指针在所述第一区域内即判断所述装置安全,所述指针不在所述第一区域内则判断所述装置不安全。所述第一区域包括两条边界线,所述第一参考点和第二参考点分别位于所述第一区域的两条边界线上,可以通过提取所述第一区域确定所述第一参考点位置和第二参考点位置。确定所述第一参考点位置和第二参考点位置后,对所述第一参考点位置和第二参考点位置进行合理性判断,防止由于对焦模糊、过度曝光等拍摄问题造成位置确定不准确。

进一步地,当需要判断所述装置的多个状态时,每个状态可以对应一个区域,根据区域数目确定边界线,再进一步根据所述边界线确定所述区域的参考点。例如所述表盘安装在压力灭火器上时,需要判断所述压力灭火器的压力正常、压力过小和压力过大三种状态。所述表盘区域包括表示压力正常的第一区域,表示压力过小的第二区域和压力过大的第三区域,所述第一区域包括两条边界线,所述第二区域包括两条边界线,所述第三区域包括两条边界线,需要确定六条边界线分别对应的六个参考点位置。

进一步地,当所述表盘区域包括的区域相邻时,不同区域重合的边界线仅需要确定一个参考点。例如当表盘区域仅包括第一区域、第二区域和第三区域时,所述第一区域、第二区域和第三区域的六条边界线有三条重合,则仅需要确定三个参考点。

步骤s400:根据所述指针顶点位置和所述第一参考点位置、所述第二参考点位置确定所述表盘的状态。

具体地,所述第一参考点和所述表盘图像中心点的连线与所述第二参考点和所述表盘图像中心点的连线在所述表盘位置围成了第一区域。当所述指针顶点位于所述第一区域内时,则所述指针位于所述第一区域内,当所述指针顶点位于所述第一区域外时,则所述指针位于第一区域外。若表盘所述第一区域表示正常区域,当所述指针顶点在所述第一区域内,即判断仪表处于正常状态。当所述指针顶点在所述第一区域外,即判断仪表处于非正常状态,需要发起警报提醒。

所述方法根据指针顶点以及第一参考点和第二参考点的位置判断指针在表盘上的位置,由此,可以提高对表盘状态识别的准确性,并且具有更好的普适性,可以适用于各类表盘的状态判断和识别。

图2为本发明实施例一个可选实现方式获取表盘图像的方法流程图,如图2所示,所述获取表盘图像的方法包括:

步骤s110:提取所述表盘图像中的表盘区域。

具体地,在获取所述表盘图像之前根据设定的亮度值调整所述表盘图像的亮度,对表盘图像进行亮度的预处理。再通过经过训练的级联回归分类器对所述预处理后的表盘图像中存在表盘的位置进行初始判断,最后通过设定的形状进一步检测,以提取表盘图像中的表盘区域。

步骤s120:将所述表盘区域中的表盘图像校正为设定图像。

具体地,当所述表盘为圆形表盘时,因在不同的角度下拍摄的圆形为椭圆,因此,需要设定图像为圆形,将椭圆形表盘矫正为圆形表盘。

所述表盘形状校正方法例如为仿射变换。获得包含表盘区域的椭圆形轮廓,获得分别代表圆心横横轴位置、圆心纵轴位置、长轴半径、短轴半径和旋转角的参数(x,y,r1,r2,a)。根据所述椭圆的圆心(x,y)、圆周c和预设图像边界b,从所述表盘图像中提取包含表盘的roi1矩形区域,根据圆周c上各像素在水平和垂直方向的最小值和最大值,定位roi1左上角x值为roi1x=min_x(c)-b/2,左上角y值为roi1y=min_y(c)-b/2,宽值为roi1w=2×(max_x(c)-x)+b/2,高值为roi1h=2×(max_y(c)-y)+b/2,提取roi1图像区域。在roi1图像上取椭圆长轴和圆周的两个交点,取短轴与圆周的一个交点,组成第一组参考点(pe1,pe2,pe3)。以椭圆圆心中心为中心,以椭圆长轴r1为半径生成圆周,在圆周上分别取对应第一组参考点位置的第二组参考点(pc1,pc2,pc3)。根据两组参考点组成的矩阵对roi1图像进行仿射变换,将椭圆区域恢复为圆区域,随后使用霍夫变换的方法检测圆,定位roi1区域中的圆形,按圆周的最小外接矩形对roi1进行再次截取,获得圆形表盘图像roi2。

进一步地,按照预设的像素值对roi2图像进行尺寸缩放,并将表盘圆形以外的区域置为黑色,避免背景区域对后续步骤造成的干扰。

所述方法针对因图像采集设备表盘平面存在角度差造成的图像形变,使用仿射变换方法将变形表盘恢复成表盘的初始形状,例如将椭圆恢复成圆形,将平行四边形恢复成正方形等。防止因表盘图像形变造成的识别误差。

应理解,进行图像校正的目的在于将变形的表盘恢复成表盘的初始形状,本领域技术人员也可以采用其它的现有算法来实现上述图像校正步骤。在可以保证获取的图像的规范性的前提下,在某些应用场景下,也可以不进行所述图像校正步骤。

图3为本发明实施例一个可选实现方式确定指针顶点位置的方法流程图。如图3所示,所述确定指针顶点位置的方法包括:

步骤s210:提取包含指针的表盘图像掩膜,将所述包含指针的表盘图像掩膜转换为二值图像。

在本实现方式中,表盘中的不同区域可以通过颜色和/或亮度区分,由此,可以基于颜色和/或亮度提取包含指针的表盘图像掩膜,基于颜色和/或亮度来对图像进行进行分割,从而识别出不同区域的边界线。

具体地,先通过颜色和/或亮度分割的方法提取包含指针的表盘图像掩膜,例如所述表盘图像中指针为黑色、第一区域为绿色、第一区域以外的表盘区域为红色,则通过提取黑色的区域掩膜来获取包含指针的表盘图像掩膜。再将所述包含指针的表盘图像掩膜转换为二值图像。所述转换过程例如可以通过颜色空间转换完成,所述颜色空间转换例如可以将图像从rgb颜色空间转换至ycrcb颜色空间。

步骤s220:通过计算所述二值图像的非零区域筛选面积最大的区域轮廓,得到指针区域掩膜图。

具体地,所述步骤s210中将表盘图像转换为了包含指针区域的二值图像掩膜,则所述二值图像中的指针区域为1,其他区域为0。因此通过计算所述二值图像的非零区域筛选出面积最大区域的轮廓为指针区域轮廓。进一步地,对所述掩膜图进行腐蚀和膨胀操作,消除所述指针轮廓的干扰像素,避免出现所述指针轮廓提取不完全的问题。

步骤s230:计算所述指针轮廓各点与所述二值图像中心点的距离,确定与所述二值图像中心点距离最远的点为指针顶点。

具体地,设所述指针轮廓为c,计算指针轮廓上各点pi=(xi,yi)与所述二值图像的中心点pc=(xc,yc)之间的距离,确定得到的距离最远点pn为指针顶点,即

进一步地,当所述指针顶点与所述二值图像中心点的距离超出设定的第一距离范围时判断顶点位置不合理,提示错误。例如当预设的第一距离范围为d时,则当dmin≤distance(pn,pc)≤dmax时判断所述顶点位置合理。当distance(pn,pc)<dmin或distance(pn,pc)>dmax时判断所述指针顶点位置不合理,提示错误。

所述方法可以根据颜色和/或亮度分割、轮廓筛选、距离计算精确的提取所述指针的顶点位置,避免出现误差。

应理解,本领域技术人员也可以采用其它的现有算法来实现上述确定指针顶点位置的步骤。

图4为本发明实施例一个可选实现方式确定第一参考点位置、第二参考点位置的方法流程图,如图4所示,所述确定第一参考点位置、第二参考点位置的方法包括:

s310:提取包含第一区域的表盘图像掩膜,将所述包含第一区域的表盘图像掩膜转换为二值图像。

在本实现方式中,表盘中的不同区域通过颜色和/或亮度区分,由此,可以基于颜色和/或亮度提取包含第一区域的表盘图像掩膜,基于颜色和/或亮度来对图像进行进行分割,从而识别出不同区域的边界线。

具体地,先通过颜色和/或亮度分割的方法提取包含第一区域的表盘图像掩膜,例如所述表盘图像中指针为黑色、第一区域为绿色、第一区域以外的表盘区域为红色,则通过提取绿色的图像掩膜来获取包含第一区域的表盘图像掩膜。再将所述包含第一区域的表盘图像掩膜转换为二值图像。所述转换过程例如可以通过颜色空间转换完成,所述颜色空间转换例如可以将图像从rgb颜色空间转换至ycrcb颜色空间。

s320:通过计算所述二值图像的非零区域筛选面积最大的区域轮廓,得到表盘第一区域掩膜图。

具体地,所述步骤s210中将表盘图像转换为了包含第一区域的二值图像掩膜,则所述二值图像中的第一区域为1,其他区域为0。因此通过计算所述二值图像的非零区域筛选出面积最大区域的轮廓为第一区域轮廓。进一步地,对所述掩膜图进行腐蚀和膨胀操作,消除所述第一区域轮廓的干扰像素。例如所述第一区域内的刻度颜色为与第一区域不同的颜色,根据颜色和/或亮度分割提取到的所述第一区域掩膜图在刻度部分有部分缺失,通过上述操作可以弥补所述掩膜图中的缺失部分,避免出现所述第一区域轮廓提取不完全的问题。

s330:确定表盘第一区域重心点和所述二值图像的中心点,在经过所述重心点和所述中心点连接的线段中点且垂直于所述线段的直线上确定第一对照点和第二对照点。

具体地,所述第一对照点和第二对照点到所述重心点和中心点连接的线段中点的距离相等。例如通过计算得出所述表盘图像第一区域的重心点为pg,做所述重心点pg和所述二值图像中心点pc之间连接的线段计算所述线段的中点ph,确定所述线段两侧与ph距离为预设值的两个点为第一对照点pr1和第二对照点pr2。

s340:分别计算第一区域轮廓上的点到所述第一对照点和第二对照点的距离,确定第一参考点和第二参考点。

具体地,所述第一参考点为第一区域轮廓上与所述第一对照点距离最远的点,所述第二参考点为第一区域轮廓上与所述第二对照点距离最远的点。例如分别计算包括第一区域的掩膜图轮廓上各点pi=(xi,yi)与第一对照点pr1=(xr1,yr1)和第二对照点pr2=(xr2,yr2)之间的距离,得到与pr1距离最远的点pb1为第一参考点,与pr2距离最远的点pb2为第二参考点。进一步地,根据设定的第二区域范围、第三区域范围、第四区域范围和角度范围判断所述第一参考点和第二参考点的合理性。响应于以下至少一种情况,所述角度范围时提示错误:所述第一参考点与第一对照点的距离超出第二距离范围、所述第二参考点与第二对照点的距离超出第三距离范围、所述第一参考点与第二参考点之间的距离超出第四距离范围、所述第一参考点与图像中心点连线和所述第二参考点与图像中心点连线的夹角角度超出角度范围。

即当所述第二区域范围为d1,所述第三区域范围为d2,所述第四区域范围为d3,所述角度范围为a时,同时满足以下条件:dmin1≤distance(pb1,pc)≤dmax1、dmin2≤distance(pb2,pc)≤dmax2、dmin3≤distance(pb1,pb2)≤dmax3、时,判断所述第一参考点和第二参考点的位置合理,否则认为所述第一参考点和/或第二参考点的位置不合理,即提取的所述第一区域有误,提示错误。

所述方法可以根据颜色和/或亮度分割、轮廓筛选、距离计算精确的提取所述第一区域轮廓的第一参考点和第二参考点位置,通过合理性判断增加确定的第一参考点和第二参考点位置的可靠性,避免出现误差。

应理解,本领域技术人员也可以采用其它的现有算法来实现上述确定第一参考点和第二参考点位置的步骤。

图5为本发明实施例一个可选实现方式确定所述表盘的状态的方法流程图,如图5所示,所述确定表盘状态的方法包括:

步骤s410:根据所述指针顶点位置和所述第一参考点位置、所述第二参考点位置确定第一角度值、第二角度值和第三角度值。

具体地,所述指针顶点、第一参考点和第二参考点分别对应第一角度值、第二角度值和第三角度值。所述第一角度值用于表示所述指针顶点到表盘中心的连线和预定参考线的夹角,所述第二角度值用于表示所述第一参考点到所述表盘中心的连线和所述预定参考线的夹角,所述第三角度值用于表示所述第二参考点到所述表盘中心的连线和所述预定参考线的夹角。在一个可选实现方式中,将一条经过所述表盘图像中心点的线作为参考线。例如当经过所述表盘图像的中心的射线沿所述表盘图像的中心以逆时针为增长方向运动时,分别经过所述顶点、第一参考点和第二参考点时与沿所述表盘图像的中心水平向右的线的夹角的角度值为第一角度值、第二角度值和第三角度值。

步骤s420:根据所述第一角度值、第二角度值和第三角度值确定表盘状态。

具体地,响应于所述第一角度值在第二角度值和第三角度值形成的范围外,确定所述指针位于第一区域外。所述第二角度值和第三角度值形成了一个角度范围,当所述第一角度值在所述角度范围内时,判断所述指针位置位于所述第一区域内。当所述第一角度值在所述角度范围外,判断所述指针位置位于所述第一区域外。例如当所述第二角度值和第二角度值形成的角度范围为[第二角度值,第三角度值],第二角度值<第一角度值<第三角度值时,判断所述指针位置位于所述第一区域内。第二角度值<第一角度值或第一角度值>第三角度值时,判断所述指针位置位于所述第一区域外。进一步地,若表盘所述第一区域表示正常区域,当所述第一角度值在所述角度范围内,即判断仪表处于正常状态。当所述第一角度值在所述角度范围外,即判断仪表处于非正常状态,需要发起警报提醒。

图6为本发明实施例一个可选实现方式计算角度值的方法流程图,如图6所示,所述计算角度值的方法包括:

s411:确定表盘中心点分别与所述指针顶点、第一参考点和第二参考点的第一连接线、第二连接线和第三连接线。

具体地,通过计算所述表盘图像得到表盘中心点位置,再根据所述步骤s200和s300中确定的指针顶点位置、所述第一参考点位置和所述第二参考点位置使连接所述表盘中心点分别连接所述指针顶点、所述第一参考点和所述第二参考点,得到第一连接线、第二连接线和第三连接线。

s412:通过以所述表盘中心点为原点,以经过所述表盘中心点的所述预设参考线为半径沿同一方向划至所述第一连接线、所述第二连接线或所述第三连接线确定所述角度值。

具体地,确定一条由所述表盘中心点发出的射线为参考线,再通过以所述表盘中心点为原点,以所述参考线为半径沿同一方向划至所述第一连接线、所述第二连接线或所述第三连接线确定第一角度值、第二角度值和第三角度值。例如:沿所述参考线的逆时针方向计算,所述参考线划动至与所述第一连接线重合的位置时经过的角度值为第一角度值,划动至与所述第二连接线重合的位置时经过的角度值为第二角度值,划动至与所述第三连接线重合的位置时经过的角度值为第三角度值。

应理解,本领域技术人员也可以采用其它的现有算法来实现上述计算角度值的步骤。

图7为本发明实施例的确定指针顶点位置的示意图,如图7所示,所述包含指针的二值图像掩膜中,所述二值图像中的指针区域71的值为1,其他区域72的值为0。因此通过计算所述二值图像的非零区域筛选出面积最大区域的轮廓为指针区域轮廓。再通过计算得到所述指针顶点在轮廓上的位置。设所述指针轮廓为c,计算指针轮廓上各点pi=(xi,yi)与所述二值图像的中心点pc=(xc,yc)之间的距离,确定得到的距离最远点pn为指针顶点,即进一步地,当所述指针顶点与所述二值图像中心点的距离超出设定的第一距离范围时提示错误。例如当预设的第一距离范围为d时,则当dmin≤distance(pn,pc)≤dmax时判断所述顶点位置合理。当distance(pn,pc)<dmin或distance(pn,pc)>dmax时判断所述指针顶点位置不合理,提示错误。

图8为本发明实施例的确定第一参考点位置和第二参考点位置的示意图,如图8所示,所述包含第一区域的二值图像掩膜中,所述二值图像中的第一区域81的值为1,其他区域82的值为0。因此通过计算所述二值图像的非零区域筛选出面积最大区域的轮廓为第一区域轮廓。所述第一区域的重心点与所述二值图像的中心点不重合,因此可以做所述第一区域重心点和二值图像中心点的连线。在经过所述重心点和中心点连接的线段中点且垂直于所述线段的直线上确定第一对照点和第二对照点。具体地,所述第一对照点和第二对照点到所述重心点和中心点连接的线段中点的距离相等。例如:通过计算得出所述表盘图像第一区域的重心点为pg,做所述重心点pg和所述二值图像中心点pc之间连接的线段计算所述线段的中点ph,确定所述线段线段两侧与ph距离为预设值的两个点为第一对照点pr1和第二对照点pr2。

所述第一参考点为所述第一区域轮廓上与所述第一对照点距离最远的点,所述第二参考点为所述第一区域轮廓上与所述第二对照点距离最远的点。例如:分别计算包括第一区域的掩膜图轮廓上各点pi=(xi,yi)与第一对照点pr1=(xr1,yr1)和第二对照点pr2=(xr2,yr2)之间的距离,得到与pr1距离最远的点pb1为第一参考点,与pr2距离最远的点pb2为第二参考点。

图9为本发明实施例的计算角度值示意图,如图9所示,所述指针顶点为pn,所述第一参考点为pb1,所述第二参考点为pb2,所述表盘图像的中心点为pc。在一个可选实现方式中,将一条经过所述表盘图像中心点的线段作为参考线。所述表盘图像的中心点pc分别连接指针顶点pn、第一参考点pb1和第二参考点pb1,得到第一连接线第二连接线和第三连接线通过以所述表盘中心点为原点,以经过所述表盘中心点的所述预设参考线为半径沿同一方向划至所述第一连接线、所述第二连接线或所述第三连接线确定所述角度值,例如计算所述参考线沿逆时针方向分别划动至与所述第一连接线、第二连接线和第三连接线重合位置时经过的角度值为第一角度值第二角度值和第三角度值

图10为本发明实施例的表盘状态识别装置的示意图,如图10所示,所述表盘识别装置包括图像获取模块101、第一定位模块102、第二定位模块103和表盘识别模块104。

具体地,图像获取模块101用于获取表盘图像。第一定位模块102用于确定指针顶点位置。第二定位模块103用于确定表盘的第一区域边界线上的第一参考点位置和第二参考点位置。表盘识别模块104用于根据所述指针顶点位置和所述第一参考点位置、所述第二参考点位置确定所述表盘的状态。

进一步地,所述表盘识别模块包括:

计算模块,用于根据所述指针顶点位置和所述第一参考点位置、所述第二参考点位置确定第一角度值、第二角度值和第三角度值,所述第一角度值用于表示所述指针顶点到表盘中心的连线和预定参考线的夹角,所述第二角度值用于表示所述第一参考点到所述表盘中心的连线和所述预定参考线的夹角,所述第三角度值用于表示所述第二参考点到所述表盘中心的连线和所述预定参考线的夹角。

识别模块,用于根据所述第一角度值、第二角度值和第三角度值确定所述表盘的状态。

进一步地,所述图像获取模块包括:

图像提取模块,用于提取所述表盘图像中的表盘区域。

图像校正模块,用于将所述表盘区域中的表盘形状校正为设定形状。

进一步地,所述表盘形状校正方法为仿射变换。

进一步地,所述第一定位模块包括:

第一图像转换模块,用于提取包含指针的表盘图像掩膜,将所述包含指针的表盘图像掩膜转换为二值图像。

第一轮廓提取模块,用于通过计算所述二值图像的非零区域筛选面积最大的区域轮廓,得到指针区域掩膜图。

顶点定位模块,用于计算所述指针轮廓各点与所述二值图像中心点的距离,确定与所述二值图像中心点距离最远的点为所述指针顶点。

进一步地,所述第一定位模块还包括:

第一检测模块,用于检测所述指针顶点与所述二值图像中心点的距离是否超出设定的第一距离范围。

进一步地,所述第二定位模块包括:

第二图像转换模块,用于提取包含第一区域的表盘图像掩膜,将所述包含第一区域的表盘图像掩膜转换为二值图像。

第二轮廓提取模块,用于通过计算所述二值图像的非零区域筛选面积最大的区域轮廓,得到表盘第一区域掩膜图。

对照点定位模块,用于确定表盘第一区域重心点和所述二值图像的中心点,在经过所述重心点和所述中心点连接的线段中点且垂直于所述线段的直线上确定第一对照点和第二对照点,所述第一对照点和所述第二对照点到所述线段的距离相等。

参考点定位模块,用于分别计算所述第一区域轮廓上的点到所述第一对照点和所述第二对照点的距离,选择与所述第一对照点距离最远的点为所述第一参考点,与所述第二对照点距离最远的点为所述第二参考点。

进一步地,所述第二定位模块还包括:

第二检测模块,用于检测所述第一参考点与所述第一对照点的距离是否超出第二距离范围、所述第二参考点与所述第二对照点的距离是否超出第三距离范围、所述第一参考点与所述第二参考点之间的距离是否超出第四距离范围、所述第一参考点与所述图像中心点连线和所述第二参考点与所述二值图像中心点连线的夹角角度是否超出角度范围。

进一步地,所述计算模块包括:

参考线确定模块,用于确定表盘中心点分别与所述指针顶点、第一参考点和第二参考点的第一连接线、第二连接线和第三连接线。

角度值确定模块,用于通过以所述表盘中心点为原点,以经过所述表盘中心点的所述预设参考线为半径沿同一方向划至所述第一连接线、所述第二连接线或所述第三连接线确定所述第一角度值、所述第二角度值和所述第三角度值。

进一步地,所述识别模块包括:

第一区域识别模块,用于根据所述第一角度值是否在第二角度值和第三角度值形成的范围外,确定所述指针位于第一区域外。

本发明实施例的表盘状态识别方法通过识别仪表表盘指针的顶点和划分表盘区域的边界线的参考点,进而根据顶点以及参考点的位置判断指针在表盘上的位置,由此,可以提高对表盘状态识别的准确性,并且具有更好的普适性,可以适用于各类表盘的状态判断和识别。

图11为本发明实施例电子设备的示意图,如图11所示,在本实施例中,所述电子设备包括服务器、终端等。如图所示,所述电子设备包括:至少一个处理器112;与至少一个处理器通信连接的存储器111;以及与存储介质通信连接的通信组件113,所述通信组件113在处理器的控制下接收和发送数据;其中,存储器111存储有可被至少一个处理器112执行的指令,指令被至少一个处理器112执行以实现上述实施例中的表盘状态识别方法。

具体地,所述存储器111作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。处理器112通过运行存储在存储器中的非易失性软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述表盘状态识别方法。

存储器111可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储选项列表等。此外,存储器111可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器111可选包括相对于处理器112远程设置的存储器,这些远程存储器可以通过网络连接至外接设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

一个或者多个模块存储在存储器111中,当被一个或者多个处理器112执行时,执行上述任意方法实施例中的表盘状态识别方法。

上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果,未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。

本发明还涉及一种计算机可读存储介质,用于存储计算机可读程序,所述计算机可读程序用于供计算机执行上述部分或全部的方法实施例。

即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1