一种水位测量方法、装置及系统与流程

文档序号:21549741发布日期:2020-07-21 10:49阅读:169来源:国知局
一种水位测量方法、装置及系统与流程

本发明涉及图像处理领域,特别是涉及一种水位测量方法、装置及系统。



背景技术:

一些场景中,由于环境或人力的限制,需要通过对针对待测量场景的图像的分析,确定待测量场景的水位。

相关技术中,通过图像分析实现水位测量的方式通常为:在待测量水域中安装水尺,相机针对待测量水域采集一张包含水尺的图像,通过该图像进行分析,确定该水域的水位线处于水尺的哪一个刻度,从而实现对待测量水域的水位测量。

但是上述方案中,需要读取图像中水尺的刻度,对所采集的图像的要求较高,如果所采集的图像清晰度较差,或图像中的水尺被遮挡,将导致水位测量结果不准确。



技术实现要素:

本发明实施例的目的在于提供一种水位测量方法、装置及系统,以提高水位测量结果的准确性。具体技术方案如下:

本发明实施例提供了一种水位测量方法,所述方法包括:

获取针对待测量水域的水位图像;

对所述水位图像进行轮廓检测,确定所述水位图像中所述待测量水域的水位线;

获取多个预设水位点的标定信息;其中,所述标定信息中包括:每个预设水位点在所述水位图像中对应的像素点与该预设水位点的水位高度之间的对应关系;

根据所述水位线及所述多个预设水位点的标定信息,确定所述待测量水域的水位高度。

可选的,在所述对所述水位图像进行轮廓检测,确定所述水位图像中所述待测量水域的水位线之前,所述方法还包括:

将所述水位图像转化为灰度图像,得到灰度水位图像;

对所述灰度水位图像进行二值化处理,得到二值化水位图像;

所述对所述水位图像进行轮廓检测,确定所述水位图像中的水位线,包括:

对所述二值化水位图像进行轮廓检测,得到所述二值化水位图像中的水位线。

可选的,所述获取多个预设水位点的标定信息,包括:

获取多个预设水位点的水位高度;

针对每个预设水位点,确定该预设水位点在所述水位图像中的像素点与该预设水位点的水位高度之间的对应关系,作为该预设水位点的标定信息,得到所述多个预设水位点的标定信息。

可选的,所述针对每个水位点,确定该水位点在所述水位图像中的像素点与该水位点的水位高度之间的对应关系,作为该水位点的标定信息,包括:

对所述水位图像进行矫正,得到矫正水位图像;

针对每个水位点,确定该水位点在所述矫正水位图像中的像素点与该水位点的水位高度之间的对应关系,作为该水位点的标定信息。

可选的,所述获取多个预设水位点的标定信息,包括:

确定所述水位图像的场景信息;

根据所述场景信息,调用预先存储的与所述场景信息对应的多个预设水位点的标定信息。

可选的,所述多个预设水位点为:最高水位点和最低水位点;所述根据所述水位线及所述多个预设水位点的标定信息,确定所述待测量水域的水位高度,包括:

在所述水位图像中,确定所述水位线距离所述最高水位点的像素点之间的垂直像素差,作为第一像素值,以及所述水位线距离所述最低水位点的像素点之间的垂直像素差,作为第二像素值;

根据所述最高水位点的标定信息、所述最低水位点的标定信息、所述第一像素值以及所述第二像素值,计算得到所述待测量水域的水位高度。

可选的,所述获取针对待测量水域的水位图像,包括:

获取针对待测量水域的多个预设场景的多张水位图像;

所述对所述水位图像进行轮廓检测,确定所述水位图像中所述待测量水域的水位线,包括:

针对每张水位图像,对该水位图像进行轮廓检测,确定该水位图像中所述待测量水域的水位线;

所述获取多个预设水位点的标定信息,包括:

针对每张水位图像,获取该水位图像对应的多个预设水位点的标定信息;

所述根据所述水位线及所述多个预设水位点的标定信息,确定所述待测量水域的水位高度,包括:

针对每张水位图像,根据该水位图像对应的水位线及所述多个预设水位点的标定信息,确定该水位图像对应的所述待测量水域的水位高度;

根据所述多张水位图像对应的所述待测量水域的水位高度,确定所述待测量水域的精确水位高度。

可选的,所述获取针对待测量水域的多个预设场景的多张水位图像,包括:

按照预设规则,依次确定针对待测量水域的目标预设场景,获取针对待测量水域的该目标预设场景的多张水位图像。

可选的,所述根据所述多张水位图像对应的所述待测量水域的水位高度,确定所述待测量水域的精确水位高度,包括:

确定所述多张水位图像对应的所述待测量水域的水位高度中的异常值;

从所述多张水位图像对应的所述待测量水域的水位高度中剔除所述异常值,得到剩余水位高度;

根据所述剩余水位高度,确定所述待测量水域的精确水位高度。

可选的,所述确定所述多张水位图像对应的所述待测量水域的水位高度中的异常值,包括:

计算所述多张水位图像对应的所述待测量水域的水位高度中的最大值、最小值、平均值和标准差;

根据预设筛选规则、所述最大值、所述最小值、所述平均值和所述标准差,确定所述多张水位图像对应的所述待测量水域的水位高度中的异常值。

可选的,所述获取针对待测量水域的多个预设场景的多张水位图像,包括:

按照预设的周期,获取针对待测量水域的多个预设场景的多张水位图像;

在所述根据所获取的不同场景对应的所述待测量水域的水位高度,计算得到所述待测量水域的精确水位高度之后,所述方法还包括:

判断所述精确水位高度是否大于预设阈值;

若大于,则触发水位报警,在下一周期内,增加一个或多个备用场景,作为针对所述待测量水域的预设场景。

本发明实施例还提供了一种水位测量装置,所述装置包括:

获取模块,用于获取针对待测量水域的水位图像;

检测模块,用于对所述水位图像进行轮廓检测,确定所述水位图像中所述待测量水域的水位线;

标定模块,用于获取多个预设水位点的标定信息;其中,所述标定信息中包括:每个预设水位点在所述水位图像中对应的像素点与该预设水位点的水位高度之间的对应关系;

确定模块,用于根据所述水位线及所述多个预设水位点的标定信息,确定所述待测量水域的水位高度。

可选的,所述检测模块,具体用于:

将所述水位图像转化为灰度图像,得到灰度水位图像;

对所述灰度水位图像进行二值化处理,得到二值化水位图像;

对所述二值化水位图像进行轮廓检测,得到所述二值化水位图像中的水位线。

可选的,所述标定模块,具体用于:

获取多个预设水位点的水位高度;

针对每个预设水位点,确定该预设水位点在所述水位图像中的像素点与该预设水位点的水位高度之间的对应关系,作为该预设水位点的标定信息,得到所述多个预设水位点的标定信息。

可选的,所述标定模块,具体用于:

对所述水位图像进行矫正,得到矫正水位图像;

针对每个水位点,确定该水位点在所述矫正水位图像中的像素点与该水位点的水位高度之间的对应关系,作为该水位点的标定信息。

可选的,所述标定模块,具体用于:

确定所述水位图像的场景信息;

根据所述场景信息,调用预先存储的与所述场景信息对应的多个预设水位点的标定信息。

可选的,所述多个预设水位点为:最高水位点和最低水位点;所述确定模块,具体用于:

在所述水位图像中,确定所述水位线距离所述最高水位点的像素点之间的垂直像素差,作为第一像素值,以及所述水位线距离所述最低水位点的像素点之间的垂直像素差,作为第二像素值;

根据所述最高水位点的标定信息、所述最低水位点的标定信息、所述第一像素值以及所述第二像素值,计算得到所述待测量水域的水位高度。

可选的,所述获取模块,具体用于获取针对待测量水域的多个预设场景的多张水位图像;

所述检测模块,具体用于针对每张水位图像,对该水位图像进行轮廓检测,确定该水位图像中所述待测量水域的水位线;

所述标定模块,具体用于针对每张水位图像,获取该水位图像对应的多个预设水位点的标定信息;

所述确定模块,具体用于针对每张水位图像,根据该水位图像对应的水位线及所述多个预设水位点的标定信息,确定该水位图像对应的所述待测量水域的水位高度;根据所述多张水位图像对应的所述待测量水域的水位高度,确定所述待测量水域的精确水位高度。

可选的,所述获取模块,具体用于按照预设规则,依次确定针对待测量水域的目标预设场景,获取针对待测量水域的该目标预设场景的多张水位图像。

可选的,所述确定模块,具体用于:

确定所述多张水位图像对应的所述待测量水域的水位高度中的异常值;

从所述多张水位图像对应的所述待测量水域的水位高度中剔除所述异常值,得到剩余水位高度;

根据所述剩余水位高度,确定所述待测量水域的精确水位高度。

可选的,所述确定模块,具体用于:

计算所述多张水位图像对应的所述待测量水域的水位高度中的最大值、最小值、平均值和标准差;

根据预设筛选规则、所述最大值、所述最小值、所述平均值和所述标准差,确定所述多张水位图像对应的所述待测量水域的水位高度中的异常值。

可选的,所述装置还包括:判断模块;

所述获取模块,具体用于按照预设的周期,获取针对待测量水域的多个预设场景的多张水位图像;

所述判断模块,具体用于判断所述精确水位高度是否大于预设阈值;若大于,则触发水位报警,在下一周期内,增加一个或多个备用场景,作为针对所述待测量水域的预设场景。

本发明实施例还提供了一种水位测量系统,所述系统包括:

图像采集设备,用于获取针对待测量水域的水位图像;

处理设备,用于对所述水位图像进行轮廓检测,确定所述水位图像中的水位线;标定所述水位图像中的多个水位点,得到所述多个水位点的水位高度;根据所述水位线及所述多个水位点的水位高度,确定所述待测量水域的水位高度。

本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现上述任一所述的水位测量方法。

本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的水位测量方法。

本发明实施例提供的水位测量方法、装置及系统,通过获取针对待测量水域的水位图像,对水位图像进行轮廓检测,确定水位图像中待测量水域的水位线,然后,获取多个预设水位点的标定信息,其中,标定信息中包括:每个预设水位点在水位图像中对应的像素点与该预设水位点的水位高度之间的对应关系,进而,根据水位线及多个预设水位点的标定信息,确定待测量水域的水位高度。

这样,在确定待测量水域的水位高度时,可以通过对检测到的水位图像中的水位线以及获取到的多个预设水位点的标定信息的计算,实现确定待测量水域的水位高度,而不需要读取水位图像中水尺的刻度,因此,对水位图像的要求较低,即使水位图像清晰度较差,或水位图像中的水尺被遮挡,也可以得到较为准确的待测量水域的水位高度。

当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种水位测量方法的流程示意图;

图2为一种实现方式中,图像采集设备的安装场景示意图;

图3为本发明实施例提供的另一种水位测量方法的流程示意图;

图4为本发明实施例提供的一种水位测量装置的结构示意图;

图5为本发明实施例提供的一种水位测量系统的结构示意图;

图6为本发明实施例提供的一种电子设备的示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

一些场景中,由于环境或人力的限制,需要通过对针对待测量场景的图像的分析,确定待测量场景的水位。

相关技术中,通过图像分析实现水位测量的方式通常为:在待测量水域中安装水尺,相机针对待测量水域采集一张包含水尺的图像,通过该图像进行分析,确定该水域的水位线处于水尺的哪一个刻度,从而实现对待测量水域的水位测量。

但是上述方案中,需要读取图像中水尺的刻度,对所采集的图像的要求较高,如果所采集的图像清晰度较差,或图像中的水尺被遮挡,将导致水位测量结果不准确。

为了解决上述技术问题,本发明提供了一种水位测量方法,该方法可以应用于电子设备,如网络摄像机、移动终端、计算机等等,本发明实施例对此不做限定。

下面从总体上对本发明实施例提供的水位测量方法进行说明。

一种实现方式中,上述水位测量方法包括:

获取针对待测量水域的水位图像;

对所述水位图像进行轮廓检测,确定所述水位图像中所述待测量水域的水位线;

获取多个预设水位点的标定信息;其中,所述标定信息中包括:每个预设水位点在所述水位图像中对应的像素点与该预设水位点的水位高度之间的对应关系;

根据所述水位线及所述多个预设水位点的标定信息,确定所述待测量水域的水位高度。

由以上可见,本发明实施例提供的水位测量方法,在确定待测量水域的水位高度时,可以通过对检测到的水位图像中的水位线以及获取到的多个预设水位点的标定信息的计算,实现确定待测量水域的水位高度,而不需要读取水位图像中水尺的刻度,因此,对水位图像的要求较低,即使水位图像清晰度较差,或水位图像中的水尺被遮挡,也可以得到较为准确的待测量水域的水位高度。

下面通过具体实施例,对本发明实施例提供的水位测量方法进行详细说明。

如图1所示,为本发明实施例提供的一种水位测量方法的流程示意图,包括如下步骤:

s101:获取针对待测量水域的水位图像。

举例而言,可以利用图像采集设备采集针对待测量水域的水位图像,在水位图像中,可以看清待测量水域的水位线,可以理解,为了便于进行水位测量,水位图像中水位线的位置背景最好是较为平滑的河堤或者垂直的桥墩平面,图像采集设备视野范围中在水位波动较大的情况下依然能够看到水位线。

其中,图像采集设备可以为球型摄像机,也可以为枪型摄像机,具体不做限定。如图2所示,为一种实现方式中,图像采集设备的安装场景示意图。

在获取针对待测量水域的水位图像之后,可以先对水位图像进行一些处理,简化图像中的不必要的信息,从而便于后续进一步根据水位图像测量水位。

举例而言,可以理解,通常获取到的水位图像为彩色图像,彩色图像是由r(红色)、g(绿色)、b(蓝色)三原色按比例混合而成,即一个像素需要3个由0-255级r、g、b表示原色。基于此,一种实现方式中,可以先将水位图像转化为灰度图像,得到灰度水位图像,灰度图像是用不同饱和度的黑色来表示每个图像点,在图像中采用0-255数字表示“灰色”程度。将rgb图像转化为灰度图,实际上是人眼对于彩色的感觉到亮度感觉的转换。

比如,可以采用如下公式,将水位图像转化为灰度图像,得到灰度水位图像:

grey=0.299*r+0.587*g+0.114*b

其中,grey表示灰度值,r表示r通道的像素值,g表示g通道的像素值、b表示b通道的像素值,根据这个公式,依次读取每个像素点的r,g,b值,进行计算灰度值,将灰度值赋值给新图像的相应位置,所有像素点遍历一遍后完成转换。

或者,也可以通过其他的方式进行灰度转化,比如,可以取r、g、b通道的平均值,等等,具体不做限定。

然后,可以对灰度水位图像进行二值化处理,得到二值化水位图像。

比如,可以采用基于wall算法的自适应阈值二值化,举例而言,可以采用如下公式:

其中,pn为图像中位于点n处的的像素,fs(n)是点n处最后s个像素的总和,据经验值,拟定s取值135,t取值15,获取自适应阈值二值化图像。根据上述公式,图像t(n)是黑色(1)还是白色(0),根据其是否比前s个像素的平均值的百分之t更暗而决定。

或者,也可以采用其他的二值化处理的方式,比如,可以预设二值化阈值,当灰度值大于刚阈值时,则取值为黑色,反之则为白色。

一种情况下,可以获取针对待测量水域的多个预设场景的多张水位图像,相比于对单张水位图像进行水位检测,得到的结果更为准确。比如,可以按照预设规则,依次确定针对待测量水域的目标预设场景,获取针对待测量水域的该目标预设场景的多张水位图像,或者,也可以随机获取多张水位图像,具体不做限定。

s102:对水位图像进行轮廓检测,确定水位图像中待测量水域的水位线。

举例而言,可以采用图像腐蚀和图像膨胀处理方法,检测图像的轮廓,获取图像的水位线,或者,也可以通过基于神经网络的图像边缘检测算法,确定图像的边缘,进而确定水位图像中的水位线,具体不做限定。

s103:获取多个预设水位点的标定信息;其中,标定信息中包括:每个预设水位点在水位图像中对应的像素点与该预设水位点的水位高度之间的对应关系。

其中,预设水位点的数量至少为2个,在标定时,可以使用测量工具测出预设水位点的高度信息,并在图像中确定预设水位点的像素点和水位高度的对应关系。进一步的,还可以对水位线进行标定,作为检测参考。

一种情况下,可以先获取多个预设水位点的水位高度,然后,针对每个预设水位点,确定该预设水位点在水位图像中的像素点与该预设水位点的水位高度之间的对应关系,作为该预设水位点的标定信息,得到多个预设水位点的标定信息。其中,预设水位点可以分别为最高水位点和最低水位点。

在根据水位线及多个预设水位点的标定信息,确定待测量水域的水位高度之前,可以先对水位图像进行矫正,得到矫正水位图像,然后,针对每个水位点,确定该水位点在矫正水位图像中的像素点与该水位点的水位高度之间的对应关系,作为该水位点的标定信息。

其中,可以采用基于投影的倾斜矫正方法对获取的水位图像进行矫正:

式中,

其中,f(x,y)为原图像,rθ(x’)是图像f(x,y)在θ方向上的线的积分,对于垂直场景,θ是图像采集设备与水平方向的角度。

这样,通过对水位图像的矫正,可以减少图像成像过程中的畸变,从而进一步提高水位测量的准确性。

或者,也可以通过其他方式进行矫正,比如人工矫正、几何矫正,或通过神经网络模型进行矫正,等等,具体不做限定。

可以理解,在另一种情况下,水位图像针对一个或多个固定场景,这种情况下,对水位图像中的多个水位点的标定也可以是预先完成的,可以先确定水位图像的场景信息,然后,根据场景信息,调用预先存储的与所述场景信息对应的多个预设水位点的标定信息,而不需要对水位图像进行标定。

s104:根据水位线及多个预设水位点的标定信息,确定待测量水域的水位高度。

举例而言,预设水位点可以跟别为最高水位点和最低水位点,在根据水位线及多个预设水位点的标定信息,确定待测量水域的水位高度时,可以先在水位图像中,确定水位线距离最高水位点的像素点之间的垂直像素差,作为第一像素值,以及水位线距离最低水位点的像素点之间的垂直像素差,作为第二像素值,然后,根据最高水位点的标定信息、最低水位点的标定信息、第一像素值以及第二像素值,计算得到待测量水域的水位高度。

比如,设图像的最高水位点为a,最低水位点为b,当前水位线距离a位置垂直像素值为m,当前水位线距离b位置垂直像素值为n,当前水位高度为l的计算公式为:

一种实现方式中,可以采用巡航功能,在一个巡航周期内采集多个场景的水位数据。那么,可以针对每张水位图像,根据该水位图像对应的水位线及多个预设水位点的标定信息,确定该水位图像对应的待测量水域的水位高度,然后,根据多张水位图像对应的待测量水域的水位高度,确定待测量水域的精确水位高度。

其中,在确定待测量水域的精确水位高度之前,可以先确定多张水位图像对应的待测量水域的水位高度中的异常值,然后,从多张水位图像对应的待测量水域的水位高度中剔除异常值,得到剩余水位高度,进而,根据剩余水位高度,确定待测量水域的精确水位高度。这样,可以有效剔除多张水位图像中存在异常的数据,计算得到更准确的水位高度。

举例而言,确定多张水位图像对应的待测量水域的水位高度中的异常值的方式,可以为:首先,计算多张水位图像对应的待测量水域的水位高度中的最大值、最小值、平均值和标准差,然后,根据预设筛选规则、最大值、最小值、平均值和标准差,确定多张水位图像对应的待测量水域的水位高度中的异常值。

比如,假设获取到5次测量数据(n=5),分别为:5.26、5.38、5.33、5.19、6.98,单位:m。首先,可以计算平局值x=5.628,标准差s=0.759,然后,计算得到平均值与最小值之差为0.368,最大值与平均值之差为1.352,进而,通过如下公式进行计算:

gi=(xi-x)/s

其中,i为排列序号,gi为中间值:

进入,通过查询查格拉布斯表,根据选定的p值(比如0.95)和测量次数n(此处为5),而临界值g95(5)=1.672,g5>g95(5),因此,可以得出g5为异常值。

一种情况下,多张水位图像是按照预设的周期获取的,这种情况下,可以在根据所获取的不同场景对应的待测量水域的水位高度,计算得到待测量水域的精确水位高度之后,判断精确水位高度是否大于预设阈值,若大于,则触发水位报警,在下一周期内,增加一个或多个备用场景,作为针对待测量水域的预设场景。其中,在首次巡航时,可以设定常用场景和备用场景皆巡航采集一遍。

也就是说,当上一个周期采集到水位信息超过预设阈值时,可以在下一个采集周期内将在原来场景基础上增加备用标定场景检测,进一步提高水位监测准确性,从而有效对待测量水域的水位情况进行监测,从而尽可能避免意外的发生。

由以上可见,本发明实施例提供的水位测量方法,在确定待测量水域的水位高度时,可以通过对检测到的水位图像中的水位线以及获取到的多个预设水位点的标定信息的计算,实现确定待测量水域的水位高度,而不需要读取水位图像中水尺的刻度,因此,对水位图像的要求较低,即使水位图像清晰度较差,或水位图像中的水尺被遮挡,也可以得到较为准确的待测量水域的水位高度。

如图3所示,本发明实施例还提供了另一种水位测量装置,包括如下步骤:

s301:获取针对待测量水域的多个预设场景的多张水位图像。

其中,可以利用图像采集设备采集针对待测量水域的水位图像,在水位图像中,可以看清待测量水域的水位线,可以理解,为了便于进行水位测量,水位图像中水位线的位置背景最好是较为平滑的河堤或者垂直的桥墩平面,图像采集设备视野范围中在水位波动较大的情况下依然能够看到水位线。图像采集设备可以为球型摄像机,也可以为枪型摄像机,具体不做限定。

举例而言,可以按照预设规则,依次确定针对待测量水域的目标预设场景,获取针对待测量水域的该目标预设场景的多张水位图像,或者,也可以随机获取多张水位图像,具体不做限定。

在获取针对待测量水域的水位图像之后,可以先对水位图像进行一些处理,简化图像中的不必要的信息,从而便于后续进一步根据水位图像测量水位。

举例而言,可以理解,通常获取到的水位图像为彩色图像,彩色图像是由r(红色)、g(绿色)、b(蓝色)三原色按比例混合而成,即一个像素需要3个由0-255级r、g、b表示原色。基于此,一种实现方式中,可以先将水位图像转化为灰度图像,得到灰度水位图像,灰度图像是用不同饱和度的黑色来表示每个图像点,在图像中采用0-255数字表示“灰色”程度。将rgb图像转化为灰度图,实际上是人眼对于彩色的感觉到亮度感觉的转换。

比如,可以采用如下公式,将水位图像转化为灰度图像,得到灰度水位图像:

grey=0.299*r+0.587*g+0.114*b

其中,grey表示灰度值,r表示r通道的像素值,g表示g通道的像素值、b表示b通道的像素值,根据这个公式,依次读取每个像素点的r,g,b值,进行计算灰度值,将灰度值赋值给新图像的相应位置,所有像素点遍历一遍后完成转换。

或者,也可以通过其他的方式进行灰度转化,比如,可以取r、g、b通道的平均值,等等,具体不做限定。

然后,可以对灰度水位图像进行二值化处理,得到二值化水位图像。

比如,可以采用基于wall算法的自适应阈值二值化,举例而言,可以采用如下公式:

其中,pn为图像中位于点n处的的像素,fs(n)是点n处最后s个像素的总和,据经验值,拟定s取值135,t取值15,获取自适应阈值二值化图像。根据上述公式,图像t(n)是黑色(1)还是白色(0),根据其是否比前s个像素的平均值的百分之t更暗而决定。

或者,也可以采用其他的二值化处理的方式,比如,可以预设二值化阈值,当灰度值大于刚阈值时,则取值为黑色,反之则为白色。

s302:针对每张水位图像,对该水位图像进行轮廓检测,确定该水位图像中待测量水域的水位线。

举例而言,可以采用图像腐蚀和图像膨胀处理方法,检测图像的轮廓,获取图像的水位线,或者,也可以通过基于神经网络的图像边缘检测算法,确定图像的边缘,进而确定水位图像中的水位线,具体不做限定。

s303:针对每张水位图像,获取该水位图像对应的多个预设水位点的标定信息。

其中,每张水位图像对应的预设水位点的数量至少为2个,在标定时,可以使用测量工具测出预设水位点的高度信息,并在图像中确定预设水位点的像素点和水位高度的对应关系。进一步的,还可以对水位线进行标定,作为检测参考。

一种情况下,可以先获取多个预设水位点的水位高度,然后,针对每个预设水位点,确定该预设水位点在水位图像中的像素点与该预设水位点的水位高度之间的对应关系,作为该预设水位点的标定信息,得到多个预设水位点的标定信息。其中,预设水位点可以分别为最高水位点和最低水位点。

在根据水位线及多个预设水位点的标定信息,确定待测量水域的水位高度之前,可以先对水位图像进行矫正,得到矫正水位图像,然后,针对每个水位点,确定该水位点在矫正水位图像中的像素点与该水位点的水位高度之间的对应关系,作为该水位点的标定信息。

其中,可以采用基于投影的倾斜矫正方法对获取的水位图像进行矫正:

式中,

其中,f(x,y)为原图像,rθ(x’)是图像f(x,y)在θ方向上的线的积分,对于垂直场景,θ是图像采集设备与水平方向的角度。

这样,通过对水位图像的矫正,可以减少图像成像过程中的畸变,从而进一步提高水位测量的准确性。

或者,也可以通过其他方式进行矫正,比如人工矫正、几何矫正,或通过神经网络模型进行矫正,等等,具体不做限定。

可以理解,在另一种情况下,水位图像针对一个或多个固定场景,这种情况下,对水位图像中的多个水位点的标定也可以是预先完成的,可以先确定水位图像的场景信息,然后,根据场景信息,调用预先存储的与所述场景信息对应的多个预设水位点的标定信息,而不需要对水位图像进行标定。

s304:针对每张水位图像,根据该水位图像对应的水位线及多个预设水位点的标定信息,确定该水位图像对应的待测量水域的水位高度。

举例而言,预设水位点可以跟别为最高水位点和最低水位点,在根据水位线及多个预设水位点的标定信息,确定待测量水域的水位高度时,可以先在水位图像中,确定水位线距离最高水位点的像素点之间的垂直像素差,作为第一像素值,以及水位线距离最低水位点的像素点之间的垂直像素差,作为第二像素值,然后,根据最高水位点的标定信息、最低水位点的标定信息、第一像素值以及第二像素值,计算得到待测量水域的水位高度。

比如,设图像的最高水位点为a,最低水位点为b,当前水位线距离a位置垂直像素值为m,当前水位线距离b位置垂直像素值为n,当前水位高度为l的计算公式为:

s305:根据多张水位图像对应的待测量水域的水位高度,确定待测量水域的精确水位高度。

在确定待测量水域的精确水位高度之前,可以先确定多张水位图像对应的待测量水域的水位高度中的异常值,然后,从多张水位图像对应的待测量水域的水位高度中剔除异常值,得到剩余水位高度,进而,根据剩余水位高度,确定待测量水域的精确水位高度。这样,可以有效剔除多张水位图像中存在异常的数据,计算得到更准确的水位高度。

举例而言,确定多张水位图像对应的待测量水域的水位高度中的异常值的方式,可以为:首先,计算多张水位图像对应的待测量水域的水位高度中的最大值、最小值、平均值和标准差,然后,根据预设筛选规则、最大值、最小值、平均值和标准差,确定多张水位图像对应的待测量水域的水位高度中的异常值。

比如,假设获取到5次测量数据(n=5),分别为:5.26、5.38、5.33、5.19、6.98,单位:m。首先,可以计算平局值x=5.628,标准差s=0.759,然后,计算得到平均值与最小值之差为0.368,最大值与平均值之差为1.352,进而,通过如下公式进行计算:

gi=(xi-x)/s

其中,i为排列序号,gi为中间值:

进入,通过查询查格拉布斯表,根据选定的p值(比如0.95)和测量次数n(此处为5),而临界值g95(5)=1.672,g5>g95(5),因此,可以得出g5为异常值。

一种情况下,多张水位图像是按照预设的周期获取的,这种情况下,可以在根据所获取的不同场景对应的待测量水域的水位高度,计算得到待测量水域的精确水位高度之后,判断精确水位高度是否大于预设阈值,若大于,则触发水位报警,在下一周期内,增加一个或多个备用场景,作为针对待测量水域的预设场景。其中,在首次巡航时,可以设定常用场景和备用场景皆巡航采集一遍。

也就是说,当上一个周期采集到水位信息超过预设阈值时,可以在下一个采集周期内将在原来场景基础上增加备用标定场景检测,进一步提高水位监测准确性,从而有效对待测量水域的水位情况进行监测,从而尽可能避免意外的发生。

由以上可见,本发明实施例提供的水位测量方法,在确定待测量水域的水位高度时,可以通过对检测到的水位图像中的水位线以及获取到的多个预设水位点的标定信息的计算,实现确定待测量水域的水位高度,而不需要读取水位图像中水尺的刻度,因此,对水位图像的要求较低,即使水位图像清晰度较差,或水位图像中的水尺被遮挡,也可以得到较为准确的待测量水域的水位高度。

与上述水位测量方法相对应,本发明实施例还提供了一种水位测量装置,如图4所示,为本发明实施例提供的一种水位测量装置的结构示意图,该装置包括:

获取模块401,获取模块,用于获取针对待测量水域的水位图像;

检测模块402,用于对所述水位图像进行轮廓检测,确定所述水位图像中所述待测量水域的水位线;

标定模块403,用于获取多个预设水位点的标定信息;其中,所述标定信息中包括:每个预设水位点在所述水位图像中对应的像素点与该预设水位点的水位高度之间的对应关系;

确定模块404,用于根据所述水位线及所述多个预设水位点的标定信息,确定所述待测量水域的水位高度。

一种实现方式中,所述检测模块402,具体用于:

将所述水位图像转化为灰度图像,得到灰度水位图像;

对所述灰度水位图像进行二值化处理,得到二值化水位图像;

对所述二值化水位图像进行轮廓检测,得到所述二值化水位图像中的水位线。

一种实现方式中,所述标定模块403,具体用于:

获取多个预设水位点的水位高度;

针对每个预设水位点,确定该预设水位点在所述水位图像中的像素点与该预设水位点的水位高度之间的对应关系,作为该预设水位点的标定信息,得到所述多个预设水位点的标定信息。

一种实现方式中,所述标定模块403,具体用于:

对所述水位图像进行矫正,得到矫正水位图像;

针对每个水位点,确定该水位点在所述矫正水位图像中的像素点与该水位点的水位高度之间的对应关系,作为该水位点的标定信息。

一种实现方式中,所述标定模块403,具体用于:

确定所述水位图像的场景信息;

根据所述场景信息,调用预先存储的与所述场景信息对应的多个预设水位点的标定信息。

一种实现方式中,所述多个预设水位点为:最高水位点和最低水位点;所述确定模块404,具体用于:

在所述水位图像中,确定所述水位线距离所述最高水位点的像素点之间的垂直像素差,作为第一像素值,以及所述水位线距离所述最低水位点的像素点之间的垂直像素差,作为第二像素值;

根据所述最高水位点的标定信息、所述最低水位点的标定信息、所述第一像素值以及所述第二像素值,计算得到所述待测量水域的水位高度。

一种实现方式中,所述获取模块401,具体用于获取针对待测量水域的多个预设场景的多张水位图像;

所述检测模块402,具体用于针对每张水位图像,对该水位图像进行轮廓检测,确定该水位图像中所述待测量水域的水位线;

所述标定模块403,具体用于针对每张水位图像,获取该水位图像对应的多个预设水位点的标定信息;

所述确定模块404,具体用于针对每张水位图像,根据该水位图像对应的水位线及所述多个预设水位点的标定信息,确定该水位图像对应的所述待测量水域的水位高度;根据所述多张水位图像对应的所述待测量水域的水位高度,确定所述待测量水域的精确水位高度。

一种实现方式中,所述获取模块401,具体用于按照预设规则,依次确定针对待测量水域的目标预设场景,获取针对待测量水域的该目标预设场景的多张水位图像。

一种实现方式中,所述确定模块401,具体用于:

确定所述多张水位图像对应的所述待测量水域的水位高度中的异常值;

从所述多张水位图像对应的所述待测量水域的水位高度中剔除所述异常值,得到剩余水位高度;

根据所述剩余水位高度,确定所述待测量水域的精确水位高度。

一种实现方式中,所述确定模块404,具体用于:

计算所述多张水位图像对应的所述待测量水域的水位高度中的最大值、最小值、平均值和标准差;

根据预设筛选规则、所述最大值、所述最小值、所述平均值和所述标准差,确定所述多张水位图像对应的所述待测量水域的水位高度中的异常值。

一种实现方式中,所述装置还包括:判断模块405;

所述获取模块401,具体用于按照预设的周期,获取针对待测量水域的多个预设场景的多张水位图像;

所述判断模块405,具体用于判断所述精确水位高度是否大于预设阈值;若大于,则触发水位报警,在下一周期内,增加一个或多个备用场景,作为针对所述待测量水域的预设场景。

由以上可见,本发明实施例提供的水位测量装置,在确定待测量水域的水位高度时,可以通过对检测到的水位图像中的水位线以及获取到的多个预设水位点的标定信息的计算,实现确定待测量水域的水位高度,而不需要读取水位图像中水尺的刻度,因此,对水位图像的要求较低,即使水位图像清晰度较差,或水位图像中的水尺被遮挡,也可以得到较为准确的待测量水域的水位高度。

与上述水位测量方法相对应,本发明实施例还提供了一种水位测量系统。

如图5所示,为本发明实施例提供的一种水位测量系统的结构示意图,该系统包括:

图像采集设备501,用于获取针对待测量水域的水位图像;

处理设备502,用于对所述水位图像进行轮廓检测,确定所述水位图像中的水位线;标定所述水位图像中的多个水位点,得到所述多个水位点的水位高度;根据所述水位线及所述多个水位点的水位高度,确定所述待测量水域的水位高度。

由以上可见,本发明实施例提供的水位测量系统,在确定待测量水域的水位高度时,可以通过对检测到的水位图像中的水位线以及获取到的多个预设水位点的标定信息的计算,实现确定待测量水域的水位高度,而不需要读取水位图像中水尺的刻度,因此,对水位图像的要求较低,即使水位图像清晰度较差,或水位图像中的水尺被遮挡,也可以得到较为准确的待测量水域的水位高度。

本发明实施例还提供了一种电子设备,如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,

存储器603,用于存放计算机程序;

处理器601,用于执行存储器603上所存放的程序时,实现如下步骤:

获取针对待测量水域的水位图像;

对所述水位图像进行轮廓检测,确定所述水位图像中所述待测量水域的水位线;

获取多个预设水位点的标定信息;其中,所述标定信息中包括:每个预设水位点在所述水位图像中对应的像素点与该预设水位点的水位高度之间的对应关系;

根据所述水位线及所述多个预设水位点的标定信息,确定所述待测量水域的水位高度。

上述电子设备提到的通信总线可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述电子设备与其他设备之间的通信。

存储器可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

由以上可见,本发明实施例提供的水位测量方法,在确定待测量水域的水位高度时,可以通过对检测到的水位图像中的水位线以及获取到的多个预设水位点的标定信息的计算,实现确定待测量水域的水位高度,而不需要读取水位图像中水尺的刻度,因此,对水位图像的要求较低,即使水位图像清晰度较差,或水位图像中的水尺被遮挡,也可以得到较为准确的待测量水域的水位高度。

在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述水位测量方法。

在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的水位测量方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、系统实施例、电子设备实施例和存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

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