一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于图像分割的水位识别方法、系统及存储介质与流程

2023-01-16 22:07:33 来源:中国专利 TAG:


1.本发明涉及一种基于图像分割的水位识别方法、系统及存储介质。


背景技术:

2.水位是河流湖库的基本水文要素之一,也是国家水资源监控能力罐区农业在线计量监测点建设需要采集的关键数据,因此稳定可靠的水位监测数据对于流域水资源管理具有重要意义。人工观读水位尺是获取水位信息传统的方式,但是存在人眼识别的不准确性和危险性以及恶劣天气无法观测水位等问题。随着传感器的迅速发展,压力传感器式、超声波式、激光式等水位计已经用于水位度量,这些方法存在自动化程度低、建设运维成本高、易受现场环境影响、适应性差等问题。
3.目前国内许多重要的水位观测点均建设有视频监控系统并配有标准水尺,为基于视频图像的水尺水位检测提供了有利条件。图像法利用图像传感器代替人眼获取水尺图像,通过图像处理技术检测水位线对应的读数,从而自动获取水位信息。相比现有方法,图像法在原理上具有非接触、无温漂、无转换误差等优点,因此,近年来图像法水位检测在机器视觉和水利量测领域已成为新的研究热点。然而受复杂现场条件的影响,现有的图像法水位检测方法在测量精度和可靠性上仍然存在较大的局限:中国专利文献公开了一种基于二进制编码字符水尺和图像处理的水位识别方法(公开号:cn107367310a),建立二进制编码字符定位和分割模型及二进制编码字符水尺刻度线提取模型,通过模板匹配方法识别字符,进而换算水位值,在图像分辨率较低,水尺刻度线和字符不清晰的情况下就难以保证检测的精度。
4.市面上的双色水尺主要采用铁质搪瓷板和铝制反光板两种材料,表面涂层在近红外波段下均具有很强的反射特性,导致夜间采用红外补光灯照明时,水尺表面的字符和刻度在图像中呈现出和背景相近的高亮状态而难以辨识,使得夜间无法正常检测水位。


技术实现要素:

5.为解决现有技术对水位水尺的图像获取不清晰或难以辨认导致的检测精度和可靠性低的技术问题,本发明实施例提供一种基于图像分割的水位识别方法、系统及存储介质。
6.本发明实施例通过下述技术方案实现:第一方面,本发明实施例提供一种基于图像分割的水位识别方法,包括:获取水位水尺图像;对水位水尺图像进行处理,得到标准化图像;利用图像分割模型检测出水尺区域以及水面区域;比较预置框与模型输出水尺区域的交并比,定位模型检测出的水尺在物理空间的顺序;根据所述水尺区域、水面区域以及水尺在物理空间的顺序,共同定位出水位线;
根据水尺规格及水位线,得到水位读数。
7.进一步的,对水位水尺图像进行处理,得到标准化图像;包括:对水位水尺图像进行预处理以去除图像噪点、归一化处理和标准化处理得到标准化图像。
8.进一步的,对水位水尺图像进行预处理以去除图像噪点、归一化处理和标准化处理得到标准化图像;包括:用高斯滤波对水位水尺图像进行滤波降噪处理,得到降噪的水位水尺图像;将降噪的水位水尺图像的像素值范围归到0与1之间,得到归一化的水位水尺图像;将归一化的水位水尺图像采用公式(像素值-像素值均值)/方差进行标准化,得到标准化图像。
9.进一步的,利用图像分割模型检测出水尺区域以及水面区域,包括:利用encoder-decoder模型检测出水尺区域以及水面区域;其中,encoder-decoder模型包括:加入空间卷积的深度卷积神经网络;其中,深度卷积神经网络由resnet-101神经网络将步长为2的最大池化替换为深度可分离卷积,并在深度可分离卷积之后增加bn层和relu层得到。
10.进一步的,利用图像分割模型检测出水尺区域以及水面区域,包括:将标准化图像送入加入空间卷积的深度卷积神经网络处理,得到背景、水尺和水面区域像素分布图;根据所述背景、水尺和水面区域像素分布图计算水面区域的轮廓,得到水面区域;根据所述背景、水尺和水面区域像素分布图分别计算水尺区域的轮廓和计算面积最大的水尺区域的轮廓的外接矩形,得到水尺区域。
11.进一步的,比较预置框与模型输出水尺区域的交并比,定位模型检测出的水尺在物理空间的顺序;包括:计算预置框与模型输出水尺区域的网络输出水尺框的交并比,以交并比最大的水尺框为当前预置框的实际框;从模型输出水尺区域的网络输出水尺框中提取置信度信息,得到ouputboxes;a.遍历gaugeboxes中的网络输出水尺框得到gaugeboxn,计算 gaugeboxn与ouputboxes的交并比,得到valuen,根据valuen最大值的索引确定gaugeboxn中对应ouputboxes中的网络输出水尺框的顺序;其中,n为≥1的正整数;n 1赋值给n,返回a,直至n的值等于网络输出水尺框的数量,执行b;b. 根据各个网络输出水尺框的valuen的最大值的索引定位模型检测出的水尺在物理空间的顺序。
12.进一步的,根据所述水尺区域、水面区域以及水尺在物理空间的顺序,共同定位出水位线;包括:判断水面区域和水尺区域的网络输出水尺框底边是否存在交点或交点位置,若是则判定水尺在水中或被遮挡导致水尺没在水中,以水面区域和水尺区域的网络输出水尺框底边交点的最低点作为最终读数的水位线;若否,则判定水尺没有在水中或没有被其他物体遮挡,以网络输出水尺框的最低
点作为最终读数的水位线。
13.进一步的,根据水尺规格及水位线,得到水位读数;包括:根据水尺区域确定水尺在图像中的规格;从水尺的最高刻度处相隔固定间距沿水尺描点,通过线性回归的方式获得最终水位读数;计算一定时间一定数量图片的水尺的最终水位读数,计算所有水尺的最终水位读数的标准差;并通过标准差过滤水尺的最终水位读数以排除遮挡数据,将排除遮挡数据后的所有水尺读数的平均值作为水位读数。
14.第二方面,本发明实施例提供一种基于图像分割的水位识别系统,包括:获取单元,用于获取水位水尺图像;处理单元,用于对水位水尺图像进行处理,得到标准化图像;检测单元,用于利用图像分割模型检测出水尺区域以及水面区域;顺序定位单元,用于比较预置框与模型输出水尺区域的交并比,定位模型检测出的水尺在物理空间的顺序;水位线定位单元,用于根据所述水尺区域、水面区域以及水尺在物理空间的顺序,共同定位出水位线;以及读数单元,用于根据水尺规格及水位线,得到水位读数。
15.第三方面,本发明实施例提供一种存储介质,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,执行所述基于图像分割的水位识别方法。
16.本发明实施例与现有技术相比,具有如下的优点和有益效果:本发明实施例的一种基于图像分割的水位识别方法、系统及存储介质,通过获取水位水尺图像;对水位水尺图像进行处理,得到标准化图像;利用图像分割模型检测出水尺区域以及水面区域;比较预置框与模型输出水尺区域的交并比,定位模型检测出的水尺在物理空间的顺序;根据所述水尺区域、水面区域以及水尺在物理空间的顺序,共同定位出水位线;根据水尺规格及水位线,得到水位读数;解决了现有技术对水位水尺的图像获取不清晰或难以辨认导致的检测精度和可靠性低的技术问题。
附图说明
17.为了更清楚地说明本发明示例性实施方式的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
18.图1为基于图像分割的水位识别方法的流程示意图。
19.图2为基于图像分割的水位识别系统的结构示意图。
20.图3为示例的水尺照片。
21.图4为示例的boundboxes1和contours2示意图。
22.图5为示例的预置框示意图。
23.图6为示例的水位线示意图。
24.图7为示例的配置水尺规格示意图。
25.图8为示例的水尺读数示意图。
26.图9为示例的人员遮挡水尺读数示意图。
27.图10为示例的人员遮挡最终水尺读数示意图。
具体实施方式
28.为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
29.在以下描述中,为了提供对本发明的透彻理解阐述了大量特定细节。然而,对于本领域普通技术人员显而易见的是:不必采用这些特定细节来实行本发明。在其他实施例中,为了避免混淆本发明,未具体描述公知的结构、电路、材料或方法。
30.在整个说明书中,对“一个实施例”、“实施例”、“一个示例”或“示例”的提及意味着:结合该实施例或示例描述的特定特征、结构或特性被包含在本发明至少一个实施例中。因此,在整个说明书的各个地方出现的短语“一个实施例”、“实施例”、“一个示例”或“示例”不一定都指同一实施例或示例。此外,可以以任何适当的组合和、或子组合将特定的特征、结构或特性组合在一个或多个实施例或示例中。此外,本领域普通技术人员应当理解,在此提供的示图都是为了说明的目的,并且示图不一定是按比例绘制的。这里使用的术语“和/或”包括一个或多个相关列出的项目的任何和所有组合。
31.在本发明的描述中,术语“前”、“后”、“左”、“右”、“上”、“下”、“竖直”、“水平”、“高”、“低”“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明保护范围的限制。
实施例
32.为解决现有技术对水位水尺的图像获取不清晰或难以辨认导致的检测精度和可靠性低的技术问题,第一方面,本发明实施例提供一种基于图像分割的水位识别方法,参考图1所示,包括:s1.获取水位水尺图像;s2.对水位水尺图像进行处理,得到标准化图像;s3.利用图像分割模型检测出水尺区域以及水面区域;s4.比较预置框与模型输出水尺区域的交并比,定位模型检测出的水尺在物理空间的顺序;s5.根据所述水尺区域、水面区域以及水尺在物理空间的顺序,共同定位出水位线;s6.根据水尺规格及水位线,得到水位读数。
33.本发明实施例通过获取水位水尺图像;对水位水尺图像进行处理,得到标准化图像;利用图像分割模型检测出水尺区域以及水面区域;比较预置框与模型输出水尺区域的交并比,定位模型检测出的水尺在物理空间的顺序;根据所述水尺区域、水面区域以及水尺
在物理空间的顺序,共同定位出水位线;根据水尺规格及水位线,得到水位读数;解决了现有技术对水位水尺的图像获取不清晰或难以辨认导致的检测精度和可靠性低的技术问题。
34.进一步的,s2.对水位水尺图像进行处理,得到标准化图像;包括:s21.对水位水尺图像进行预处理以去除图像噪点、归一化处理和标准化处理得到标准化图像。
35.进一步的,对水位水尺图像进行预处理以去除图像噪点、归一化处理和标准化处理得到标准化图像;包括:用高斯滤波对水位水尺图像进行滤波降噪处理,得到降噪的水位水尺图像;将降噪的水位水尺图像的像素值范围归到0与1之间,得到归一化的水位水尺图像;将归一化的水位水尺图像采用公式(像素值-像素值均值)/方差进行标准化,得到标准化图像。
36.进一步的,利用图像分割模型检测出水尺区域以及水面区域,包括:利用encoder-decoder模型检测出水尺区域以及水面区域;其中,encoder-decoder模型包括:加入空间卷积的深度卷积神经网络;其中,深度卷积神经网络由resnet-101神经网络将步长为2的最大池化替换为深度可分离卷积,并在深度可分离卷积之后增加bn层和relu层得到。
37.进一步的,利用图像分割模型检测出水尺区域以及水面区域,包括:将标准化图像送入加入空间卷积的深度卷积神经网络处理,得到背景、水尺和水面区域像素分布图;根据所述背景、水尺和水面区域像素分布图计算水面区域的轮廓,得到水面区域;根据所述背景、水尺和水面区域像素分布图分别计算水尺区域的轮廓和计算面积最大的水尺区域的轮廓的外接矩形,得到水尺区域。
38.进一步的,比较预置框与模型输出水尺区域的交并比,定位模型检测出的水尺在物理空间的顺序;包括:计算预置框与模型输出水尺区域的网络输出水尺框的交并比,以交并比最大的水尺框为当前预置框的实际框;从模型输出水尺区域的网络输出水尺框中提取置信度信息,得到ouputboxes;a.遍历gaugeboxes中的网络输出水尺框得到gaugeboxn,计算 gaugeboxn与ouputboxes的交并比,得到valuen,根据valuen最大值的索引确定gaugeboxn中对应ouputboxes中的网络输出水尺框的顺序;其中,n为≥1的正整数;n 1赋值给n,返回a,直至n的值等于网络输出水尺框的数量,执行b;b. 根据各个网络输出水尺框的valuen的最大值的索引定位模型检测出的水尺在物理空间的顺序。
39.进一步的,根据所述水尺区域、水面区域以及水尺在物理空间的顺序,共同定位出水位线;包括:判断水面区域和水尺区域的网络输出水尺框底边是否存在交点或交点位置,若是则判定水尺在水中或被遮挡导致水尺没在水中,以水面区域和水尺区域的网络输出水尺框底边交点的最低点作为最终读数的水位线;
若否,则判定水尺没有在水中或没有被其他物体遮挡,以网络输出水尺框的最低点作为最终读数的水位线。
40.进一步的,根据水尺规格及水位线,得到水位读数;包括:根据水尺区域确定水尺在图像中的规格;从水尺的最高刻度处相隔固定间距沿水尺描点,通过线性回归的方式获得最终水位读数;计算一定时间一定数量图片的水尺的最终水位读数,计算所有水尺的最终水位读数的标准差;并通过标准差过滤水尺的最终水位读数以排除遮挡数据,将排除遮挡数据后的所有水尺读数的平均值作为水位读数。
41.示例性的,基于图像分割的水位识别方法,包括:(1)对图像进行预处理,去除图像噪点,并且做归一化、标准化处理。
42.步骤(1)中,对图像大小没有限制,但目标水尺宽度在图像中需大于80,如图3所示,图像宽为1920,高为1080。图像预处理主要采用高斯滤波的方法对图像进行滤波降噪处理,归一化和标准化同时处理,本次数据集mean(均值)为[123.675, 116.28, 103.53],std(方差)为[58.395, 57.12, 57.375]。
[0043]
(2)利用训练的图像分割模型检测出水尺的区域以及水面的区域。
[0044]
步骤(2)中,使用的分割模型是经过特殊设计以及优化的,我们使用的分割模型是encoder-decoder架构。架构如下:encoder:1、encoder阶段使用到的深度卷积网络(dcnn,加入了一个空间卷积atrous conv,可以生成任意维度的特征)是基于resnet-101进行修改。
[0045]
其中,将步长为2的最大池化(max-pooling)替换为深度可分离卷积,并在深度可分离卷积之后增加了bn层和relu层,进一步提高分割算法的精度在全卷积网络中,在全卷积网络中,特征图(feature map)上像素点的感受野取决于卷积和池化操作。resnet是由残差块(residual building block)构建的,残差块由多个级联的卷积层和一个shortcut connections组成,将二者的输出值累加后,通过relu激活层得到残差块的输出。多个残差块可以串联起来,从而实现更深的网络。本次使用resnet-101,表示卷积层、全连接层的层数一共101层。 在分割任务中,resnet-101中的池化层为最大池化,该池化可能会造成丢失过多的特征,从而对分割精度造成较大的损失,因此我们将步长为2的最大池化(max-pooling)替换为深度可分离卷积。深度可分离卷积主要分为两个过程,分别为逐通道卷积(depthwise convolution)和逐点卷积(pointwise convolution)。depthwise convolution的一个卷积核负责一个通道,一个通道只被一个卷积核卷积,这个过程产生的feature map通道数和输入的通道数完全一样,无法扩展feature map。并且这种运算对输入层的每个通道独立进行卷积运算,没有有效的利用不同通道在相同空间位置上的feature信息。因此需要pointwise convolution来将这些feature map进行组合生成新的feature map。pointwise convolution的运算与常规卷积运算非常相似,它的卷积核的尺寸为 1
×1×
m,m为上一层的通道数。所以这里的卷积运算会将上一步的featuremap在深度方向上进行加权组合,生成新的feature map,可以通过控制卷积核的个数来扩展
feature map(有几个卷积核就有几个输出feature map)。
[0046]
另外,普通卷积的感受野每次只能增加两个像素,增长速度过于缓慢。传统卷积网络的感受野的增大一般采用池化操作来完成,但是池化操作在增大感受野的同时会降低图像的分辨率,从而丢失一些信息。而且对池化之后的图像在进行上采样会使很多细节信息无法还原,最终限制了分割的精度和速度。空洞卷积就是往卷积操作中加入“空洞”(值为0的点)来增加感受野。空洞卷积引入了扩张率(dilated ration)这个超参来制定空洞卷积上两个有效值之间的距离:扩张率为α的空洞卷积,两个有效值之间α-1有个空洞。在本层空洞卷积中,可以生成任意维度的特征。
[0047]
2.aspp(空洞空间卷积池化金字塔)模块。随着空洞卷积的扩张率的增大,卷积核中有效的权重越来越少,因为随着扩张率的变大,会有越来越多的像素点的计算没法使用全部权重。当扩张率足够大时,只有中间的一个权重有作用,这时空洞卷积便退化成了1*1卷积。丢失权重的缺点还是其次,重要的丢失了图像全局的信息。为了解决这个问题,第一个分支使用全局平均池化(gap)将特征a压缩至1*1,再使用1*1的卷积将通道数调整为256,最后再经过bn层以及双向性插值上采样将图像的分辨率调整到目标分辨率。另一个分支由1个1*1的卷积和三个扩张率依次为{6、12、18}的3*3空洞卷积组成,最后两个分支拼接组合在一起,得到特征c。使用1*1卷积将特征c的通道数减少为256,后接bn层、relu层和dropout层得到特征d。(bn层、relu层和dropout层都是帮助模型收敛、提高模型精度的方法)decoder:1、encoder阶段会得到两个特征,一个是低级语义特征以及高级语义特征,decoder阶段将该两个特征通过采样、卷积、拼接的方式融合,最终通过上采样的方式共同输出预测结果。
[0048]
模型工作:encoder:将预处理后的数据送入改造过后的主流深度卷积网络(dcnn,加入了一个空间卷积atrous conv,可以生成任意维度的特征),得到高级语义特征a和低级语义特征b。高级语义特征a进入到空洞卷积金字塔池化模块aspp。该aspp有两个分支,第一个分支使用全局平均池化(gap)将特征a压缩至1*1,再使用1*1的卷积将通道数调整为256,最后再经过bn层以及双向性插值上采样将图像的分辨率调整到目标分辨率,另一个分支由1个1*1的卷积和三个扩张率依次为{6、12、18}的3*3空洞卷积组成,最后两个分支拼接组合在一起,得到特征c。接着,使用1*1卷积将特征c的通道数减少为256,后接bn层、relu层和dropout层得到特征d。(bn层、relu层和dropout层都是帮助模型收敛、提高模型精度的方法)decoder:将特征d使用双线性插值进行上采样四倍,得到特征e,与通过深度卷积网络层得到的低级语义特征b具有相同的分辨率。特征b依次经过1*1的卷积层将通道数减少为48、bn层和relu层,得到特征f。采用1*1的卷积核主要为了对低级语义特征b进行压缩,这样可以使得后面的特征对于encoder得到的特征有一个偏重,可以更好保证高级语义特征的信息。将特征e和特征f拼接起来,融合高级语义特征和低级语义特征,得到特征g。特征g经过一个3*3的卷积以及bn层、relu层、dropout层进行细化,最终通过双线性上采样四倍,得到预测结果。
[0049]
本发明使用该encoder-decoder架构图像分割模型检测出水尺区域以及水面区域,该场景中,背景区域像素值为0,水尺区域像素值为1,水面区域像素值为2。将步骤(1)中预处理后的数据缩放为网络输入大小(512,512,3),经过深度卷积网络的处理得到高级语义特征a [128,128,256],高级语义特征b[32,32,2048],经过aspp模块后得到特征c[32,32,2048],使用1*1卷积将特征c的通道数减少为256,后接bn层、relu层和dropout层得到特征d[32,32,256],将特征d使用双线性插值进行上采样四倍,得到特征e[128,128,256],特征b依次经过1*1的卷积层将通道数减少为48、bn层和relu层,得到特征f[128,128,48],将特征e和特征f拼接起来,融合高级语义特征和低级语义特征,得到特征g[128,128,304],特征g经过一个3*3的卷积以及bn层、relu层、dropout层进行细化,得到网络预测结果[3,128,128],其中3为该分割任务的类别数,最后通过双线性上采样四倍、softmax以及argmax等操作获得预测结果[3,512,512],再缩放为原图大小即得到最终预测结果[3,1080,1920],最终得到背景、水尺、水面区域像素分布图;生成一张背景像素值为0、宽1920,高1080的黑色背景图,与水尺区域、水面区域分别做“与操作”,并分别计算出水尺区域的轮廓contours1、水面区域的轮廓contours2;通过计算出的水尺区域轮廓contours1,计算出该contours1外接矩形boundboxes1=[[[1373, 1049], [1380, 0], [1446, 0], [1440, 1049]] ,[[1008, 530], [1017, 175], [1076, 177], [1066, 530]]]。在计算单个水尺轮廓时,由于图像质量、天气的原因,可能会出现水尺轮廓不止一个的情况,此时选择面积最大的轮廓计算外接矩boundboxes1,如图4所示。灰色框为网络模型输出水尺区域,灰色背景为网络输出水面区域。
[0050]
(3)通过预先设置框与模型输出水尺区域的iou,定位模型检测出的水尺在物理空间的顺序。
[0051]
步骤(3)中,预置框如图5所示,gaugeboxes=[[983, 163, 1077, 580], [1345, 40, 1475, 1070]],网络输出的水尺框可能有多个且没有顺序,网络输出为[[1.3721278e 03,0.0000000e 00 1.4477577e 03,1.0508801e 03,9.9981087e-01],[1.0085917e 03,1.7725479e 02,1.0744137e 03 5.3038257e 02,9.9978009e-01]],因此,为了对应各个水尺框,本发明提出计算预置框(灰色框)与网络输出框的iou(交并比),取iou值最大的水尺框为当前预置框的实际框,从而将网络输出水尺框与预置框对应起来。
[0052]
网络输出中的信息除了水尺框之外,还有置信度信息。首先,将水尺框信息从网络输出中提出出来,得到ouputboxes。预置框gaugeboxes的顺序在我们配置时,是按照图中顺序从左到右配置。遍历gaugeboxes中的框得到gaugebox1,计算 gaugebox1与ouputboxes的iou,得到value1[0,0.59436],取得value1最大值的索引为1,表示gaugebox1中对应ouputboxes中的第二个框。同理gaugebox2与ouputboxes的iou,得到value2 [0.56572,0.0],取得value2最大值的索引为0,表示gaugebox2中对应ouputboxes中的第一个框。
[0053]
因此,本次实例计算的最终顺序记做order[1,0],表示第一个预置框对应网络输出第二个框,第二个预置框对应网络输出第一个框。
[0054]
(4)通过模型检测出的水面以及水尺区域,共同定位出水位线。
[0055]
步骤(4)中,计算contours2(灰色区域)与boundboxes1框(灰色框)底边是否存在交点以及交点位置。contours2代表的是水面区域,boundboxes1代表的水尺区域,首先通过判断boundboxes1的底边与水面区域(contours2)是否有交点,如果有交点,代表水尺在水
中,如果没有交点,表示水尺没有在水中,或者被其他物体遮挡导致没在水中。首先,遍历boundboxes1中的区域,得到boundbox1,通过点的大小取得底边坐标bottomline1为[[1373, 1049],[1440, 1049]],截取contours2中 1373到1440的点集为pointset1,只计算contours2中横坐标1373到1440的点与bottomline1的交点。通过opencv中pointpolygontest方法判定pointset1中的点是否在bottomline1上,并取两者交点的最低点作为该水尺区域的水位线,但在本案列中,boundbox1与pointset1没有交点,因此将bottomline1视为水位线进行读数。为了与预置框的横坐标对应,将bottomline1中的横坐标替换为预置框的横坐标,最终waterline1为[1345, 1049, 1475, 1049]。同理,遍历boundboxes1中的区域,得到boundbox2,底边坐标bottomline2为[[1008, 530],[1066, 530]],截取contours2中 1008到1066的点集为pointset2,通过opencv中pointpolygontest的方法判定,最低点的交点intersection为[1060,530],为了与预置框的横坐标对应,将intersection中的点扩展为预置框区域的线,最终waterline2为[983, 530, 1077, 530]。
[0056]
(5)利用水尺规格以及水位线,回归最终水位读数。
[0057]
步骤(5)中,我们提出灵活配置水尺规格。有的水尺并不是完完整整的呈现在图像中,如图6-8所示,靠右的水尺只有部分在图像中。这种情况,如果根据水尺初始规格以及水位线回归读数,最终的读数会有较大误差。因此,我们提出灵活配置水尺规格。首先,根据图像中呈现的水尺区域确定该水尺在图像中的规格,如图7所示,靠右的水尺我们将其配置为1.5m。接着,从1.5米刻度处开始描点,两点之间的距离为0.1m,最终回归读数时,将该水尺视为1.5米回归最终水位线读数,如此便解决了水尺在图像中不完整时读数的问题。靠右水尺1.5米处在图像中的坐标为[1414,56],水位线waterline1为[1345, 1049, 1475, 1049],通过线性回归的方式获得最终的读数为0.1m。同理,靠左水尺配置为2.0m,顶部在图像中的坐标为[1048,189],水位线waterline2为[983, 530, 1077, 530],通过线性回归的方式获得最终的读数为1.463m。
[0058]
另外,部分水尺区域可能会出现人员走动以及动物活动的情况,如图9所示,当人员或者动物遮挡水尺时,水尺读数会出现较大波动。
[0059]
本发明还提出一种解决人员或动物遮挡水尺的方法:通过计算一定时间(短时间)一定数量图片的水尺读数,计算水尺读数的标准差,并通过标准差过滤差异较大的数据(遮挡数据),最终将一定数量图片各个水尺读数的平均数作为最终水位读数。最终该场景最终读数如图10所示,靠左水尺读数为1.46m,靠右水尺读数为0.10m。
[0060]
另外,部分水尺区域可能会出现人员走动以及动物活动的情况,如图9所示,当人员或者动物遮挡水尺时,短时间内水尺的读数会出现较大的波动。本发明还提出一种解决人员或动物遮挡水尺的方法:通过计算一定时间(短时间内水位实际读数变化不大,人员或者动物也不会长时间逗留在该区域)一定数量图片的水尺读数,计算这一系列图片同位置上的水位读数的标准差,并通过标准差过滤差异较大的数据(差异较大我们认为它是遮挡数据),最终计算同位置保留下来的水位读数的平均数,将该平均数视为该场景下水尺的水位读数。在图9的案例中,我们在20s内取了该场景的5张图,靠左水尺读数gaugevalue1为[1.463,1.462,1.465,1.464,1.463],靠右水尺读数gaugevalue2为[1.132,0.10,0.101,0.10,0.10],靠左水尺标准差std1为0.0017,计算标准差与原数据减去标准差的差,结果为
[-0.0006198039027188415,0.00038019609728127046,0.0005801960972816925,-0.0004198039027184194,
ꢀ‑
0.0006198039027188415],差异不大,因此计算gaugevalue1的平均值为1.463,将其视为这根水尺的最终读数。同理,计算靠右水尺标准差std2为0.4127,计算标准差与原数据减去标准差的差,结果为[0.41269981826996965,
ꢀ‑
0.20610018173003022,-0.20710018173003023,-0.20610018173003022,
ꢀ‑
0.20610018173003022],0.41269与其他数据差异较大,因此将该数据过滤,最终计算剩下数据gaugevalue2的平均数为0.100,将其视为这根水尺的最终读数。
[0061]
第二方面,本发明实施例提供一种基于图像分割的水位识别系统,参考图2所示,包括:获取单元,用于获取水位水尺图像;处理单元,用于对水位水尺图像进行处理,得到标准化图像;检测单元,用于利用图像分割模型检测出水尺区域以及水面区域;顺序定位单元,用于比较预置框与模型输出水尺区域的交并比,定位模型检测出的水尺在物理空间的顺序;水位线定位单元,用于根据所述水尺区域、水面区域以及水尺在物理空间的顺序,共同定位出水位线;以及读数单元,用于根据水尺规格及水位线,得到水位读数。
[0062]
第三方面,本发明实施例提供一种存储介质,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,执行所述基于图像分割的水位识别方法。
[0063]
本发明实施例具备如下优点:(1)鲁棒性强。本发明利用水尺图像和水面图像的特征,通过深度学习神经网络模型输出水尺区域以及水面区域,最终定位水位线。模型使用了大量的多场景、多样式的数据,因此具有较强的鲁棒性。
[0064]
(2)检测精度高。本发明可在图像模糊不清的条件提供水尺的细节信息,采用图像分割模型,检测精度能达到单个像素。且当水尺未被水面覆盖时,也能精确检测到水尺0刻度的水位线。
[0065]
(3)适用于复杂天气场景。本发明适用于白天、雨天、雾天、阳光反照、夜晚、红外照明等条件,能有效避免因自然光照和夜间补光引起图像色彩分布不均匀时出现的误检。
[0066]
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献