基于超像素和图割算法的智能视觉水位识别

计算机仿真2021年3月第38卷第3期
文章编号:1006 -9348(2021 )03 -0430 -07
基于超像素和图割算法的智能视觉水位识别
夏平I’2,王峰''雷帮军师冬霞I’2
(1.三峡大学水电工程智能视觉监测湖北省重点实验室,湖北宜昌443002;
2.三峡大学计算机与信息学院,湖北宜昌443002)
网站摘要:针对水位测量中由于水尺污渍和倾斜的影响,造成观读数据极易出错的问题,提出了一种基于改进的超像素与图割算 法的智能视觉水位识别算法。对水尺图像进行预处理的基础上,为校正水尺图像的角度倾斜,提出了金字塔结构Hough变 换的角度倾斜校正算法,将水尺图像进行2抽取,得到不同分辨率的金字塔结构图像,对从低到高分辨率图像应用Hough变 换,逐步缩小搜素倾斜角度范围,得到水尺的精确倾斜角度并进行校正;其次,为解决因水尺污溃而影响读数的问题,将中值 滤波思想融入超像素种子点定位中,通过改进的超像素算法在滤去污渍噪声的同时对校正后的水尺图像进行预分割;在图 割算法中构建邻域像素相似度的能量函数边界项,应用改进的图割算法实现水尺图像的可靠分割,确定水尺头部区域和测 量区域;最后,分别对水尺头部和测量区域进行识别,得到准确的水
位数据。实验结果表明,对比实际的测试结果,所提算法 识别出的水位数据准确性高,具有较高的应用价值。
关键词:机器学习;智能水位识别;超像素分割;图割
中图分类号:TP391 文献标识码:B
Intelligent Visual Water Level Recognition Algorithm
Based on Super - pixel and Graph Cut Segmentation
XIA PingI2,WANG Feng12,LEI B ang-jun12,SHI D ong-xia1,2
(1. Hubei Key Laboratory of Intelligent Vision Based Monitoring for Hydroelectric Engineering,
Three Gorges University, YiChang Hubei 443002, China;
2. College of Computer and Information Technology, Three Gorges University, YiChang Hubei 443002, China )
A B S T R A C T: Aiming at the problem that reading the water level is prone to error in water level
measurement due to
the effect of water ruler's stains and tilt, an algorithm of intelligent visual water level recognition is proposed based on improved super - pixel and graph cut. On the basis of pre — processing the water ruler image, an angle tilt correction algorithm of the pyramid structure Hough transform is proposed for correcting the angle tilt of the water ruler image.
The water ruler image was extracted 2 times to obtain pyramid structure images with different resolutions. Hough transform was applied to low -to - high - resolution images, and gradually the range of search tilt angles was re­duced, then the accurate tilt angle of the water ruler was obtained and corrected. Secondly, in order to solve the problem of readings affected by water meter stains, the idea of median filtering was incorporated, the improved super pixel algorithm was used to filter the noise of the stain and pre - segment the corrected water rule image. Third, the energy function boundary term of the neighborhood pixel similarity was constructed in the graph cut algorithm, the im­proved graph cut algorithm was applied to achieve reliable segmentation of the water ruler image, and the head area and measurement area of the water ruler were determined. Finally, the head of the water ruler and the measurement area were identified separately to obtain accurate water level data. The experimental results show that compared with
基金项目:国家重点研发计划资助(2016Y FB0800403 );国家自然科学
基金(联合基金)项目(U1401252);湖北省重点实验室开放基金项目
(2018SD SJ07)
收稿日期:2020-03 -03 修回日期:2020-03 -06
—430—
the  actual  test  results , the  proposed  algorithm  has  higher  accuracy  in  water  level  data  identification  and  has  high  ap ­plication  value .
K E Y W O R D S :Machine  learning ; Intelligent  water  level  recognition ; Super  - pixel  segmentation ; Graph  - cut
i 引言
水位作为航道安全的重要指标,是指导船舶合理配载、
农业科技网络书屋保障船舶安全航行的重要参考+2]。水尺作为测量水位的标 尺,在水位监测中发挥着不可替代的作用u]。
长江流域河床 摆幅大,雨季和旱季水位落差大,使得航道的变化十分频繁, 对过往的船舶航行存在安全隐患,因此,采用便捷方式实现 对长江流域的水尺识别并精确读取其水位数据,对提升长江 航道通行能力,保障船舶航行安全具有重要意义[4<。影响 水尺读数的因素主要来源于两个方面:一是由于水尺长期浸 泡在水中,受各种复杂环境因素影响,不可避免地沾染上污 溃[7];二是受水面波浪、大风影响,造成一定的角度倾斜18]。 目前,水文检测站多数使用传统测量方法进行水位测量, 传统的水位测量方法中,获取水位数据的重要手段为人工观 读水尺,即由航道人员到现场观读,工作量大,且极易出错; 长江流域的自动水位站采用气泡式水位计,受水温、水密、水 位的变化,会破坏气管压力与水位的平衡关系,影响水位读 数的准确性。通过人工水尺与自动水位站水位进行比测是 目前提高自动水位站水位准确率最有效的方法,但该方法耗 时耗力,工作量大,降低了工作效率[1°]。
结合视频自动识别技术,本文提出了一种智能视觉水位 识别与测报算法,该算法通过对水尺图像进行处理、识别,获 取水尺水面以上的读数,再通过对水尺粧信息的识别,在水 尺〇点高程数据字典中到对应的〇点高程完成水位计算, 获取水位数据。该算法对水尺图像进行识别,弥补了传统人 工观读水尺的不足,识别出的水位数据准确度高,误差在 5c m 以内,较好地满足了水利监测的需要,具有较高的实际 应用价值。2
智能视觉水位识别原理
如图1所示,设水尺总高度为T ,头部高度为H ,水尺水 面之上的高度为L ,水尺水面以下高度(即待求水位值)为 D ,红、蓝螺旋带单位高度为K ,不足一个螺旋带宽的高度为 P 1,P 2。则水位值D 计算原理:
1) 根据水尺头部的一维码水平条纹区域,识别出该水
尺的 Rulerld ;
2)
从头部区域垂直向下,对水尺螺旋条纹区域进行识
别。读取水面以上的红、蓝螺旋带数N 、及不足一个螺旋带 宽度的高度P 1,如图丨U )所示,或不足一个螺旋带宽度的高 度P 1、P 2,如图1(b )所示;
3)
根据每个红、蓝螺旋带设定的垂直带宽K ,计算水面
以上不包括头部的高度L ,则L  = N * K  + Pl  +P 2;最后,得到 水面以下的水尺高度D  = T  - L  - H ,即为当前的水位。
(a )只存在P 1的情况
(b )Pl , P 2同时存在的情况
图1
水尺水位计算原理图
2.1金字塔结构Hough 变换的角度倾斜校正
水位识别中,水尺固定,摄像头安装在观测船上,受到水 面波浪、大风等因素的影响使船体晃动,导致摄像头拍摄的 水尺图像存在一定的角度倾斜[11]。为精确识别,需要对水 尺图像进行倾斜校正,使图像中的水尺呈竖直朝向。
目前,常用的倾斜校正方法有投影法傅里叶变换 法、Rad ™变换法[13]、霍夫变换法[1<]等。投影法[12]按一定 的角度对图像进行预投影,以此搜索投影最窄的角度,并将 其视为图像的倾斜角度,该算法计算倾斜角的投影形式、分 析投影图形时均较复杂,而且,要得到精确的投影角需要不 断减小预投影的角度,计算量大;傅里叶变换法首先将图像 从空域变换至频域,进行图像频谱校正,再进行逆变换,该算 法效率较低;R a d o n 变换法将对图像直线的检测问题转化为 在参数空间域中对亮点的检测,该方法往往不能获得期望的 分辨率变换结果,且计算量大;H o u g h 变换[14]是一种检测和 定位
图像中直线的常用检测方法,本文采用H o u g h 变换来检 测水尺图像中的直线,以此来进行水尺图像的倾斜校正。
利用H o u g h 变换旨在检测图像中水尺竖直直线边界,据 H o u g h 变换原理可知直线对应于参数空间的点。传统的 H o u g h 变换算法对噪声不敏感,为此,本文提出了一种两级
分层的H o u g h 变换倾斜校正算法,并改进了仅搜索最大累积
矩阵值的常用方法,而是将累积矩阵的值从大到小进行排 序,用最大值和次大值的均值作为水尺图像的倾斜角度。如
图2所示。金字塔结构的H o u g h 变换算法:1)
对水尺图像进行2抽取,得到分辨率低一级图像,对
该图像再进行2抽取,得到分辨率更低一级的水尺图像,形 成了不同分辨率的金字塔结构图像;
2)
分别对最低分辨率、次低分辨率、及原始图像设定相
应的角度,进行如下H o u g h 变换,获取各分辨率图像的倾斜 角度;
—431
3) 在p 和0所设定的搜索范围内设置一个离散的参数
空间;
4) 构建以p 为行为列的累积矩阵M (P ,0),并初始化
M {p ,e ) =〇;
5) 选择图像目标像素(*,>•),对应角度为=V c o s  y
+ /sin <?',相应的累积矩阵:
M (p ,e ) = M (p ',e ') +/
(l )
式中,/为单位矩阵;
6) 累积矩阵具有对应于特定y 的局部最大值。 设定阈值r ,为:
r, = A • maxM(p,0)
(2)
式中A <1。当M (p ,幻中元素值小于或等于阈值7\时,该 元素置〇,从而消除由较短线段引起的干扰;最后,累加每一 列
,获取行向量M '(0),向量中最大元素对应的角度
即为倾斜角度。
7)
消除伪极值。考虑到霍夫变换可能带来伪极值问
题,本文采用累积投票法消除伪极值的影响。累积矩阵M 进行从大到小排列,出对应于的累积矩阵中前2个0值。 计算其平均值,作为水尺图像倾斜角度的值。
该算法不仅精度较髙,合适的2抽取有助于提髙算法的 抗噪声性能。
2.2融合中值滤波的超像素预分割算法
超像素(superpixel  algorithms )算法"5 — 17]是依据视觉特 征相似性准则和空间距离将具有相似纹理、颜、亮度等特 征的相邻像素构成有一定视觉意义的不规则像素区域块。 它利用像素间特征的相似性将像素分组,用少量的超像素代 替大量的像素来描述图像特征,极大地降低了图像后续处理 的复杂度。
水尺长期浸泡在水中,受到各种复杂环境的影响,不可 避免的会沾染上污渍,影响水尺水位识别,为此,本文在超像 素算法中融人中值滤波思想,提出了一种改进的超像素算 法,进行水尺图像的预分割,以达到预分割同时滤去部分污 溃噪声的目的。
超像素算法中,传统的S U C 算法[|5]选取初始聚类中心 后,将每个聚类中心定位在3x 3邻域的最低梯度位置;由于 水尺长期浸泡在水中,不可避免的会沾染上污渍,因而水尺 —
432 —
图像的这部分像素值将发生畸变,本文在传统的S U C 算法 中融入中值滤波算法,对这部分畸变的像素进行中值滤波同 时进行预分割;考虑水尺本身为红蓝相间配,在C IE L A B  颜空间中,对水尺
图像进行灰度化处理后,a 分量呈亮白 ,针对a 分量的颜特征,本文对传统S U C 算法的种子点 定位方法进行改进,改进的S U C 算法:
1〉在图像网格S 中确定像素初始化聚类中心
ck  =
L k ,a k ,bk ,xk ,yk^T  (3)
式中,=
表示亮度,a t 、6t 表不彩;为其
坐标值;v /^,/V 为图像总像素点数目,/C 为预分割超像
素的数目;
2) 对每个聚类中心3x 3邻域的像素点P ,〇 = 1,2,…,
9)的a 分量进行排序,确定其中值,以中值所在的像素点P 5 为新的聚类中心。
3) 对每个聚类中心&,根据空间距离Z ),为每个像素分
配最近的聚类中心,仅考虑2S  x 2S 像素的搜索区域与其位 置重叠的中心。如图3所示。
图3 SLIC 搜索的范围
4)
以聚类的所有像素的平均向量Q 作为新的聚类中
心。其中,< =
5) 返回至步骤3),计算新的聚类中心和残差£, BP ,原聚类中心和重新定义的中心间的距离,直到£矣阈值r 2。 若原聚类中心为c = 新的聚类中心为=
[//^',^
,/:^残差^为:
E  =
-L )2 + (a ' -a )2 + (b ' - b )2
|
m (x 1 - x )2 + (y ' ~ r )2 ji/2
s 2
式中,m 表示最大颜距离,本文设为10;空间距离S  = y ^,/V 为图像像素数目J 为预分割超像素数目。
2.3改进的图割算法
为进一步克服污溃像素的影响,提高水尺分割精度,在 传统图割(Graph -cuts )算法[18]基础上,本文提出了使用邻 域像素相似度构造能量函数的边界项[19],以精确确定水尺 区域中水尺头部的带状区域和测量部份的带状区域。分割 中,将图像中水尺区域所在的超像素块设为目标区域,区域 超像素块为背景区域,并对水尺区域所在的超像素块应用改 进的Graph  - cuts 算法进行精细分割。
根据水尺区域所在的超像素计算水尺区域在水平方向
的边缘点,将这些水平边缘点投影到水平方向,出符合要 求的行坐标,根据此行坐标确定水尺的上下边缘,并记录各 水平边缘点的相位角,以此定义水平边缘相位角的能量函数e(x)
e(x)= ^O A P^)(5)
i = l
式中,*为水尺区域底部到顶部的纵向坐标为第;个水平 边缘点为%位置水平边缘点个数,&(/^)为水平边缘点 的相位角。
从底向上寻第一个相位角能量大于阈值r3的;c位 置,即为水尺头部和测量部分分界线的位置。由于水尺测量 部分各位置的水平边缘点都是一个朝向,相位角  e [0°,90°]。但水尺头部的水平边缘点是环形的,相位角范围 超出90°。当一个水平位置上出现多个边缘点,且处于环形 线上时,理想情况下该水平位置上所有边缘点的相位角相加 是180°;为容错,阈值r3可设置比180°稍小,该阈值可根据 图像质量进行调整。当存在一个分割i时,构建图割(G m M -〇^)算法的能量函数[2°]
E(L)= \R(L)+ B(L)(6)
式中,扒i)为能量函数,A为权重系数,則//) =
P^P
为区域项,为像素点;>分配到标记&的概率J U)= y«(p)〇
利用双向快速增广路径算法计算能量函数的最小值£
来求得图像的最小割,从而实现水尺区域的精细分割。
3智能视觉水位识别算法
智能视觉水位识别算法的流程如图4所示。
图4水位识别测置算法流程图
3.1水尺图像预处理
为精确地识别的水尺标示,获取的水尺图像需要进行畸 变校正、灰度处理与灰度压缩、中值滤波、边缘检测等一系列 预处理。
采用加权平均法进行灰度化处理,由于水尺颜为红蓝
配,为突出水尺区域,根据式(6)对水尺图像的R、S两个
分量进行加权平均
f(i j)= O.S5R(i J)+0. (7)
式中为目标图像转换后的灰度值J、B分别为彩图
像的红、蓝分量。
为抑制水尺图像的背景光照,便于后续的水尺区域提
取,需要对灰度化处理后的水尺图像进行局部灰度压缩,增
强图像中水尺的灰度区域,抑制图像中其它不重要的灰度
区域。
为便于后期对水尺区域的提取与划分,消除图像中水尺
周围的边界点和小结构元素的噪声点,对灰度压缩后图像进
行腐蚀操作。
采集的水尺图像通常含有一些噪声点,导致图像退化,
影响到后期对水尺头部一维码带状区域和测量部螺旋带状
区域的识别,导致识别出的水位数据精度不高。本文采用中
值滤波器来滤除噪声,并选用Prewitt算子对图像进行边缘
检测。
3.2水尺图像角度倾斜校正
水尺图像的倾斜角度校正步骤:
1) 在30° ~ 150°范围内进行分辨率最低图像的H o u g h变 换,从矩阵M,(p,0)得到倾斜角&;
2) 在(0, -2°) ~(仏+2°)范围内进行次低分辨率图像 的tfou#变换,并从矩阵(p,0)获得倾斜角(92;
3) 在(込-1°) ~ (02 + 1°)范围内进行原始图像的
格陵兰海变换,得到03,即为图像的倾斜角;
4)检测到水尺图像倾斜角度后,对图像进行倾斜校正, 该过程采用式(8)的旋转变换
/x'\/cos0sin/X \
(8)
(7)=(一)
\ - sin0cos〇/\ y/
^ /cos0sin6\
式中,(,,/厂是(17厂旋转后的坐标,.为
\ - s m0cos6)
旋转矩阵。
5)据式(8),可确定旋转后倾斜图像的像素点的位置。
为保证旋转坐标为整数,对图像旋转后采用插值操作。最近
邻插值法,双线性插值法和双三次插值法是较常用的插值
法。本文在图像旋转过程中采用双线性插值法对图像进行
内插。倾斜校正后的水尺图像如图5所示。
3.3水尺区域分割
对水尺图像进行预处理和倾斜校正之后,再对水尺区域
进行分割提取,以确定水尺区域的头部带状区域和测量部带
状区域。本文提出了一种基于改进的超像素算法将图像中
具有相同或相似特征的相邻像素被分组在几个有意义的均
匀区域中,该算法分割水尺图像时能描述图像像素的相互关
系,从而有利于对水尺头部水平条纹和测量部螺旋条纹的分力量组合
割提取,因此,采用2.2节提出的算法进行预分割,得到较高
贴合度的边界;
—433
7),(3,5,8),(3,6,7),(3,6,8),(3,7,8),(4,5,6),(4,5,7) ,(4,5,8),(4,6,7),(4,6,8),(4,7,8),(5,6,7),(5,6,8) ,(5,7,8),(6,7,8)。
由C 〗=56可知,存在56个可使用的头部矢量,通过对 水尺头部的识别计算出图像中水尺的编号,由此编号可以自 动查询出本水尺的水尺0点高程。
对测量部的图像识别分两种不同的情况处理,如图7所 示。①透明水质,水尺水面下的部分清晰可见,但由于水的
折射,水上最后一个螺旋K x )与水面z U )的交点可通过对^ (x )上各点的曲率变化分析(基于区域非变性能量消耗)得 到;②不透明的水质,水上最后-个螺旋t (x )与水面的交点
可通过它与水尺两个不同颜区域与水面的交会曲线求交 叉得到;交点求出就可以确定水尺水面上的高度,通过编号 査询到的〇点高程就可以得到当前的绝对水位值。
西安pm2.5
(a )透明水质
(h )不透明水质
图7
两种不同水质中进行水位测置的图像
4实验结果与分析
4.1实验结果
利用本文提出的智能视觉水位识别算法对透明水域和 不透明水域的水尺进行识别,结果如图8、图9所示。4.2结果分析
图10(a )为2019 -02 - 16至2019 -28日时间段内,对
W 原始水尺图像
(b )预处理和朝向校正后的水尺图像
图S
水尺图像处理前后对比
在此基础上,应用2. 3节改进的图割(Crap/i  -orfs )算法 进行水尺图像的精细分割。3.4水尺读数识别
经过对水尺图像中水尺区域的提取与划分,确定了水尺 区域的头部带状区域和测量部带状区域,采用基于特殊设计 的一维码头部编号对水尺头部带状区域的识别。如图6所示。
高度为100m m
(a )头部水平条纹区域
(b )测量部螺旋条纹区域图6
水尺区域图
水尺头部共划分为7个带区,其中0带区、5带去和末带 区的高度均为8m m 。1带区、2带区、3带区、4带区的髙度总 和为72m m  = 9 * 8m m 。如图6中的a l 、a 2、a 3是头部的变式。
a \ - n \ * 8 m m  (9)a 2 =
n 2 * 8 m m
(10)a 3 = n 3 * 8 m m
(11)
式中,(n l ,n 2, n 3)是由三个整数构成的一个向量。整数向 量可能的取值范围依次如下:
(1,2,3),(1,2,4),(1,2,5),(1,2,6),(1,2,7),(1,2,8),(1,3,4),(1,3,5),(1,3,6),(1,3,7),(1,3,8),(1,45) ,(1,4,6),(1,4,7),(1,4,8),(1,5,6),(1,5,7),(1,58),(1,6,7),(1,6,8),(1,7,8),(2,3,4),(2,3,5),(2,36) ,(2,3,7),(2,3,8),(2,4,5),(2,4,6),(2,4,7),(2,48),(2,5,6),(2,5,7),(2,5,8),(2,6,7),(2,6,8),(2,7 8),(3,4,5),(3,4,6),(3,4,7),(3,4,8),(3,5,6),(3,5,
—434
p308o
f
v
__
_
>2
.
1A-1
-5
一一

本文发布于:2024-09-21 15:44:53,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/307758.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:水尺   图像   进行
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议