法律状态公告日
法律状态信息
法律状态
2020-05-26
授权
授权
2019-04-02
实质审查的生效 IPC(主分类):G01F23/04 申请日:20181102
实质审查的生效
2019-03-08
公开
公开
技术领域
本发明涉及计算机视觉、神经网络与图像处理领域,具体涉及一种基于图像处理的实时水位标尺提取与水位检测的方法。
背景技术
现有水位监测前期基础建设投入大、无法适应复杂背景环境、设备安装要求精度高,需要经常性检修、恶劣天气环境下人工读数不可取;传统基于图像处理的智能水位识别系统中的水位测量标尺定位方法未消除强光与水面折射引起的读数干扰,未考虑到前端视频输入设备的视点选择(即视角选择位于标尺顶部或底部,造成水位标尺侧向边界不平行,存在畸变,对后续水位提取的精度影响;另外由于倾斜矫正后的修正图像存在缺值区域若其倾斜角度过大,直接裁剪会导致标尺有效区域的缺失;在另一方面传统基于图像处理的智能水位识别系统中的水位测量方法对水位标尺主体上下边界的确定是通过向"非零区域"逼近获得的,而对于"非零区域"的定位非常模糊。这种方法没有考虑到复杂水文背景对其的干扰因素,例如在存在倒影、水面以下标尺的折射异或标尺背景为复杂自然环境的情况下,其精度会大大减弱甚至失效。
发明内容
本发明所要解决的技术问题是克服现有技术的缺陷,提供一种精度高、误差小的基于图像处理的水位标尺定位及水位测量方法。
为解决上述技术问题,本发明采用以下技术方案:
在一个方面,本发明提供了一种基于图像处理的水位标尺定位方法,其包括:
步骤一、计算预先提取的水位标尺图像的标杆主体纵向倾角;针对标杆主体纵向倾角采用旋转矫正技术得到倾斜矫正后的水位标尺主体图像;
步骤二、对倾斜矫正后的水位标尺主体图像使用标定点技术,修正透视畸变;
步骤三、使用投影法对畸变修正后图像中的缺值部分进行邻近像素修补;并对修补后的图像依据左右分割线的坐标方程进行精确目标裁剪;
步骤四、识别水位标尺的起始位置和与水面分界线位置并以此进行水位标尺主体位置裁剪。
进一步地,步骤一具体包括:
1.1:对水位标尺图像进行灰度化并作直方图均衡化处理;
1.2:对步骤1.1得到的水位标尺图像进行边缘检测:使用sobel算子对图像进行纵向边缘检测,使用均值滤波去除图像噪声;
1.3:对纵向边缘检测结果作霍夫变换,计算霍夫变换累加器中三个极大值点,其分别对应了水位标尺的左边缘、有边缘以及中心分割线,获取水位标尺左右边缘与中轴线直线方程;
1.4计算三条直线在铅直方向上的偏转角度并记录最大偏转角度θmax;将图像依据θmax进行仿射变换实现倾斜矫正得到倾斜矫正后的水位标尺主体图像,
对应左右边缘的表达式如式1,中轴线直线方程的表达式如式2:
y=kmx+bm(2)
其中kl、km、kr分别对应左中右边缘直线的斜率,bl、bm、br分别对应左中右边缘直线的截距。
进一步地,步骤二包括:
通过水位标尺左右边缘与中轴线直线方程求解纵坐标为
将这六个点[(xl1,y1),(xl2,y2),(xl3,y3),(xr1,y1),(xr2,y2),(xr3,y3)]作为标定点,以[(xl2,y1),(xl2,y2),(xl2,y3),(xr2,y1),(xr2,y2),(xr2,y3)]作为目标点做仿射变换,完成透视畸变矫正。
进一步地,步骤三具体包括:
对畸变修正后的图像中每个缺值点将具体其最近的非缺值点的像素值复制给该点,得到缺值修补后的图像;再次利用霍夫变换对修补后图像进行边缘检测,得到经过两次变换后左右边缘以及中心分割线的新位置。
进一步地,步骤四具体包括:
4.1:复制步骤三中缺值修补后的图像得到副本图像并使用最大类间方差法将副本图像二值化;
4.2:自上而下使用平面扫描算法,寻找满足标准水尺形态学特征的起始位置;
4.3:将原RGB图像转入HSV三通道下;
4.4:对HSV图像对应的明度矩阵并使用能量函数将二维明度矩阵转换为一维矩阵;
4.5:依据标准水尺主体部分与水面阴影之间的明度关系计算得水位标尺主体与倒影部分的分割线所在位置;
4.6:将4.1中获得的副本二值化图像,依据水尺主体起始位置为上界upper,水位线位置lower为下界对二值化图像进行分割,获得水位标尺有效部分。
在另一方面,本发明提供了基于图像处理的水位测量方法,其特征在于包括:(一)水位标尺定位:包括:
步骤101:计算预先提取的水位标尺图像的的标杆主体纵向倾角;针对标杆主体纵向倾角采用旋转矫正技术得到倾斜矫正后的水位标尺主体图像;
步骤102:对倾斜矫正后的水位标尺主体图像使用标定点技术,修正透视畸变;
步骤103:使用投影法对畸变修正后图像中的缺值部分进行邻近像素修补,并对修补后的图像依据左右分割线的坐标方程进行精确目标裁剪;具体包括:
对畸变修正后的图像中每个缺值点将具体其最近的非缺值点的像素值复制给该点,得到缺值修补后的图像;
再次利用霍夫变换对修补后图像进行边缘检测,得到经过两次变换后左右边缘以及中心分割线的新位置。
步骤104:识别水位标尺的起始位置和与水面分界线位置并以此进行水位标尺主体位置裁剪。具体包括:
复制步骤3中缺值修补后的图像得到副本图像并使用最大类间方差法将副本图像二值化得到副本二值化图像;
自上而下使用平面扫描算法,寻找满足标准水尺形态学特征的起始位置;
将原RGB图像转入HSV三通道下;
对HSV图像对应的明度矩阵并使用能量函数将二维明度矩阵转换为一维矩阵;
依据标准水尺主体部分与水面阴影之间的明度关系计算得水位标尺主体与倒影部分的分割线所在位置;
将副本二值化图像,依据水尺主体起始位置为上界upper,水位线位置lower为下界对二值化图像进行分割,获得水位标尺有效部分图像。
(二)水位测量:包括:
步骤201:将水位标尺有效部分图像分割为左右两部分;分别统计左右刻度尺中刻度线条数,最后一条刻度线位置与宽度;
步骤202:将刻度线条数、最后一条刻度线位置与宽度以及上边界坐标和水位线坐标代入数学模型求解实时水位高度。
进一步地,步骤201包括:
依据经过两次变换后左右边缘以及中心分割线的新位置,将获得水位标尺有效部分图像分割为左右两部分得到左右分割图像;
记左右分割图像宽度为wid,取大小为
使用行算子η1,对分割后的左右两部分图像进行形态学操作,即先膨胀轴腐蚀,消除数字并断开分界线;
使用行算子η2,对左右分割图像进行闭操作即先腐蚀后膨胀,平滑刻度线;
分别统计左右二值化图像刻度线条数numleft,numright,最后一条刻度线宽度widthleft,widthright,平均刻度线宽度aveleft,averight与最后一条刻度线下边界所在位置depthleft,depthright。
进一步地,步骤202包括:比较左右分割图像最后一条刻度线下边界,表达式如下:
depth=max(depthleft,depthright),
其中depth为标杆主体(本发明中所有“标杆主体”均指完整图像即未被分割的图像)最后一条刻度线下边界所在位置;
depthleft为标杆左侧分割图像最后一条刻度线下边界所在位置
depthright为标杆右侧分割图像最后一条刻度线下边界所在位置
并记录最后一条刻度线对应像素宽度width;
计算所有刻度线的平均宽度ave,计算公式如下:
其中ave为标杆主体刻度线的平均宽度(单位:px)
aveleft,averight分别对应标杆左/右侧分割图像平均刻度线宽度(单位:px)
numleft,numright分别对应标杆左/右侧分割图像中包含刻度线条数
计算刻度线总条数,每三条作为一个分块计算得分块数block以及余留刻度线条数leave,计算公式如下:
leave=num-3×block
其中:
num为标杆主体所含的刻度线总条数
block为标杆主体所含分块个数;
leave为标杆主体最后一个未满分块中的刻度线条数
代入左右边缘与中轴线直线方程计算水面上方水位标尺长度height,公式如下:
其中:block为标杆主体所含分块个数
leave为标杆主体最后一个未满分块中的刻度线条数;
depth为标杆主体最后一条刻度线下边界所在位置;
width为最后一条刻度线对应像素宽度;
ave为标杆主体刻度线的平均宽度
lower为水位线位置
标准水位标尺长度为1m,代入模型计算水面下部水深dep,公式如下:
其中pos为水位标尺安装位置。
再进一步地,步骤101包括以下步骤:
1.1:对水位标尺图像进行灰度化并作直方图均衡化处理;
1.2:对步骤1.1得到的水位标尺图像进行边缘检测:使用sobel算子对图像进行纵向边缘检测,使用均值滤波去除图像噪声;
1.3:对纵向边缘检测结果作霍夫变换,计算霍夫变换累加器中三个极大值点,其分别对应了水位标尺的左边缘、有边缘以及中心分割线,获取水位标尺左右边缘与中轴线直线方程;
1.4计算三条直线在铅直方向上的偏转角度并记录最大偏转角度θmax;将图像依据θmax进行仿射变换实现倾斜矫正得到倾斜矫正后的水位标尺主体图像,对应左右边缘方程的表达式如式1,中轴线直线方程的表达式如式2:
y=kmx+bm(2)
其中kl、km、kr分别对应左中右边缘直线的斜率,bl、bm、br分别对应左中右边缘直线的截距。
再进一步地,步骤102包括以下步骤:
通过水位标尺左右边缘与中轴线直线方程求解纵坐标为
将这六个点[(xl1,y1),(xl2,y2),(xl3,y3),(xr1,y1),(xr2,y2),(xr3,y3)]作为标定点,以[(xl2,y1),(xl2,y2),(xl2,y3),(xr2,y1),(xr2,y2),(xr2,y3)]作为目标点做仿射变换,完成透视畸变矫正。
本发明所达到的有益效果:
1、本发明针对倾角矫正后的水位标尺图像进行了畸变矫正,解决了图像的视点选择角度造成的目标侧向边界不平行而产生的畸变问题,提高了目标提取的精度;
2、本发明采用了缺值修补方法有效填补了由于倾斜矫正后的修正图像存在的缺值区域,避免了直接剪裁可能会导致的目标有效区域的缺失;
3、若在水位标尺定位过程中标尺上下边界的确定是通过向"非零区域"逼近获得的,其对于"非零区域"的定位非常模糊因为没有考虑到复杂水面环境下倒影、水面以及标尺的折射异或标尺背景的情况,其精度会大大减弱甚至失效;
4、本发明方法考虑到水面上方标尺有效区域的明度远大于其水面下方提出了依据明度关系的自适应水位线的确定方法,能较强地适应复杂水文环境大大提高水位线识别精度。
附图说明
图1是本发明水位测量方法具体实施例的的流程图;
图2是本发明水位测量方法具体实施例使用的标准标杆示意图;
图3是本发明水位测量方法具体实施例的标杆主体粗定位效果展示示意图;
图4是本发明水位测量方法具体实施例缺值图像修补方法示意图;
图5是本发明水位测量方法具体实例中图像矫正以及修补的效果展示示意图;
图6是本发明水位测量方法具体扫描线法确定水尺主体示意图;
图7是本发明水位测量方法具体倒影分割方法示意图;
图8是本发明水位测量方法具体经过平滑操作后的标杆二值化图像示意图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
在图1示出的具体实施例中,提供了基于图像处理的水位测量方法,其中包括了基于图像处理水位标尺定位方法。
基于图像处理水位标尺定位方法包括图像预处理部分,
包括:步骤一、计算预先提取的水位标尺图像的左右边缘与中轴线直线模型;采用旋转矫正技术得到倾斜矫正后的水位标尺主体图像;
步骤二、对倾斜矫正后的水位标尺主体图像使用标定点技术,修正透视畸变;
步骤三、使用投影法对畸变修正后图像中的缺值部分进行邻近像素修补;并对修补后的图像依据左右分割线的坐标方程进行精确目标裁剪;
进一步的,在具体实施例中预先提取水位标尺图像指的是在待测水文环境区域固定一个标准标杆(水位标尺)(如图2所示),通过前端摄像机获取实时水位图像,并对原始图像进行水位标尺图像提取。
对原始图像进行水位标尺图像提取时优选的,采用以下方法:
将原图像使用基于YOLO v3网络的目标检测技术进行检测,裁剪出含有水位标杆的有效图像,如图3所示,具体方法如下:
(1)采集若干不同时间、不同角度的水位标杆图像,标注出其中水位标杆的位置坐标(x,y,w,h),对原始图像进行随机尺度变换、光照变换、色彩饱和度变换等步骤,并将图片集划分为训练集和测试集。训练集用来建立训练模型,得到网络参数,测试集用于验证模型的实际能力;
(2)进行网络模型的训练,首先将输入图片转换为大小固定的标准输入图片,使用基于YOLO v3的Darknet53卷积神经网络进行训练,经过卷积层提取图像特征,采用logisitc方法将特征进行分类,当平均损失收敛到0.01以下时得到训练完的模型;
(3)在训练时,每隔10个周期便改变模型输入尺寸,随机选择一种新的输入图像尺寸继续训练,以使模型对不同分辨率图像具有普适性,最终生成水位标杆的检测模型。
(4)将步骤1中相机采集的实际图像输入(3)中生产的检测模型,经过卷积层提取特征,使用回归的方法得到目标框的位置和大小,经logisitc分类器后,即可确定标杆是否存在以及标杆的坐标;
优选的,若未能检测到目标标杆,则警告工作人员进行设备检修;否则截取分割出标定的标杆图像。本实施例中采用YOLO v3进行水位标尺图像提取的目的不仅可以进行粗定位,并可以据此判断图像中有无目标标尺,即视角是否需要调整;其区别于常规水位提取算法中固定输入设备视角,并对送入的图像进行固定位置的裁剪,采用这种技术可以适应一定的视角偏移,不需要频繁检修。
进一步的,步骤一具体包括:
1.1:对水位标尺图像进行灰度化并作直方图均衡化处理;
1.2:对步骤1.1得到的水位标尺图像进行边缘检测:使用sobel算子对图像进行纵向边缘检测,使用均值滤波去除图像噪声;
1.3:对纵向边缘检测结果作霍夫变换,计算霍夫变换累加器中三个极大值点,其分别对应了水位标尺的左边缘、有边缘以及中心分割线,获取水位标尺左右边缘与中轴线直线方程;
1.4计算三条直线在铅直方向上的偏转角度并记录最大偏转角度θmax;将图像依据θmax进行仿射变换实现倾斜矫正得到倾斜矫正后的水位标尺主体图像,对应左右边缘方程的表达式如式1,中轴线直线方程的表达式如式2:
y=kmx+bm(2)
其中kl、km、kr分别对应左中右边缘直线的斜率,bl、bm、br分别对应左中右边缘直线的截距。
进一步的,步骤二包括:
通过水位标尺左右边缘与中轴线直线方程求解纵坐标为
将这六个点[(xl1,y1),(xl2,y2),(xl3,y3),(xr1,y1),(xr2,y2),(xr3,y3)]作为标定点,以[(xl2,y1),(xl2,y2),(xl2,y3),(xr2,y1),(xr2,y2),(xr2,y3)]作为目标点做仿射变换,完成透视畸变矫正。
进一步的,步骤三具体包括:
对畸变修正后的图像中每个缺值点将具体其最近的非缺值点的像素值复制给该点,得到缺值修补后的图像;
再次利用霍夫变换对修补后图像进行边缘检测,得到经过两次变换后左右边缘以及中心分割线的新位置。
本具体实施例中,基于图像处理的水位测量方法中的水位标尺定位方法还包括标杆(也为水位标尺)主体分割的步骤,即步骤四:识别水位标尺的起始位置和与水面分界线位置并以此进行水位标尺主体位置裁剪,具体包括:
4.1:复制步骤三中缺值修补后的图像得到副本图像,并使用最大类间方差法(OTSU)将副本图像二值化;
4.2:自上而下使用平面扫描算法,寻找满足标准水尺形态学特征的起始位置;
4.3:将原RGB图像转入HSV三通道下;
4.4:对HSV图像对应的明度矩阵并使用能量函数将二维明度矩阵转换为一维矩阵;
4.5:依据标准水尺主体部分与水面阴影之间的明度关系计算得水位标尺主体与倒影部分的分割线所在位置;
4.6:将4.1中获得的副本二值化图像,依据水尺主体起始位置为上界upper,水位线位置lower为下界对二值化图像进行分割,获得水位标尺有效部分。
具体依据图4示出,从图像顶端以一像素为步长,对图像进行横向扫描;记录第一个满足下列条件的纵坐标即为水尺有效区域的起始位置。
记p为图像矩阵,大小为[line×rank],中轴线位置mid,p[i][j]为扫描线法对应(i,j)位置的灰度值且p[i][j]∈{0,1},当满足:
认为此时的横坐标i为标杆有效位置的上边界upper。
将原RBG图像转入HSV通道。
获取明度矩阵saturation[line×rank]并依据以下能量函数,将二维明度矩阵转换至一维空间下,记为reflection,公式如下:
依据标准水尺主体部分与水面阴影之间的明度关系计算得水位标尺主体与倒影部分的分割线所在位置;在具体实施例中依据阴影区域与标杆主体区域交界处的侧向明度投影图像存在“雪崩式”的递减,阴影区域的明度侧向投影值远小于标杆主体区域明度投影值,我们通过以下公式获取分割线位置。
认为满足条件的第一个的坐标i为标杆有效位置的下边界lower。
修正二值化图像p,依据下述公式,将水尺主体部分以外区域置为白色;
本具体实施例在以上水位标尺定位方法具体实施例的基础上提供一种水位测量方法,还包括:(二)水位测量,
水位测量的方法包括:
步骤201:将水位标尺有效部分图像分割为左右两部分;分别统计左右刻度尺中刻度线条数,最后一条刻度线位置与宽度;
步骤202:将刻度线条数、最后一条刻度线位置与宽度以及上边界坐标和水位线坐标代入数学模型求解实时水位高度。
具体包括:依据中轴线位置mid将原图像矩阵p分割为左右刻度图像pleft,pright(记其对应宽度为lrank,rrank。
在本实施例中分别使用宽度为
使用
使用宽度的行算子进行闭操作的好处是可以平滑刻度线,使每一条刻度线所在区域的宽度均正好等于图像宽度。
对平滑处理后的标杆二值化图像依据下述公式做侧向投影:
其中:pleft,pright为左右刻度图像对应的二维矩阵
lleft,rleft为左右刻度图像通过上述公式转入一维空间所对应的一维矩阵;
获取并存储lleft[i],rleft[i]中数值等于lrank,rrank的纵坐标于linef,liner。
下述公式获取刻度线位置并依此统计刻度线条数:
linef[i]+1≠linef[i+1],liner[j]+1≠liner[j+1]
记录左右刻度图像最后一条刻度线位置leftline,rightline,最后一条刻度线宽度leftwidth,rightwidth,左右刻度线条数leftnum,rightnum与平均刻度线宽度leftave,rightave,代入模型计算最低刻度线位置lastline,平均宽度avewidth,总计刻度线条数linenum,公式如下:
代入模型计算得到标杆水面上方高度height,所述模型表达式如下:
leave=num-3×block
其中:block为标杆主体所含分块个数,
leave为标杆主体最后一个未满分块中的刻度线条数;
depth为标杆主体最后一条刻度线下边界所在位置;
width为最后一条刻度线对应像素宽度;
ave为标杆主体刻度线的平均宽度
lower为水位线位置;
需要说明的是由于标杆主体上一个分块”E”对应三条刻度线并在现实中为5cm,则记每三条刻度线为一个分块。
利用预置标杆安装位置pos,水尺长度1m,代入模型计算水面下部水深dep
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
机译: 利用水位标尺和地下水位测量方法的地下水位测量装置
机译: 利用水位标尺和地下水位测量方法的地下水位测量装置
机译: 利用图像处理的水位测量方法和水位测量装置