周建国,彭 朵,蒋卫国,黎建洲
(1.湖北工业大学 土木建筑与环境学院,武汉 430068; 2.湖南五凌电力科技有限公司, 长沙 410004;3.长江科学院 工程安全与灾害防治研究所, 武汉 430010)
作为重要的水利枢纽建筑之一,水库大坝在防洪、发电及灌溉等方面发挥重要作用。截至2020年4月,全世界共有水库大坝58 713座,其中我国占据了40%以上[1]。随着水库大坝数量的增加及运营年限的增长,其潜在安全风险备受关注[2],一旦发生垮坝事故,易产生灾难性后果,故为保障水库大坝的健康运行,对其进行安全监测必不可少[3-4]。大坝安全监测的主要内容包括内观、外观及环境量等[5],智能全站仪作为地表位移监测的典型设备,近些年来在连续自动化的大坝外观监测中发挥了重要作用。如渠守尚等[6]利用智能全站仪在计算机的控制下实现了对大坝的全自动实时变形监测;张思洪等[7]利用智能全站仪及全球导航卫星系统(Global Navigation Satellite System,GNSS)在瀑布沟和枕头坝等大坝构建了自动化变形监测系统。
因与坝体变形关系密切,库水位是大坝安全监测的一项重要环境量[8-9],准确获取大坝水位的变化情况对其变形分析及安全运行具有重要意义。尤其在汛期,需要根据库水位的实时变化情况调整安全监测的频率[10]。传统人工读取水尺的方法连续性较差,精度较低。雷达水位计[11]和超声波水位计[12]能够实现非接触式测量且测量精度高,但使用维护成本高,易受自然环境及现场条件影响。随着机器视觉技术的快速发展,利用图像进行水位测量的方法被越来越多的研究人员所利用。以水位尺作为目标,刘铭辉等[13]提出一种不定长水尺图像水位测量方法,该方法借助透视投影关系,利用阈值法检测出水位线位置计算出水位值。张振等[14]通过设计水尺模板图像,建立透视投影变换关系,再利用阈值法检测出水位线得到水位值。在无水位尺的情况下,鲍江等[15]通过图像处理提取图像边界,并对其进行横向分段,然后利用Haar特征计算最佳水位,这种方法受强烈光照及倒影的影响较大。王伟等[16]设计了一种实时水文监测系统,利用ARM与图像处理技术对水位线与河岸线进行提取并计算水位线高度,但是此系统易受相机安放位置及拍摄角度的影响。聂鼎等[17]通过透视原理和图像处理方法,自动检测识别水位线,再利用相似原理计算水位,但该方法主要针对小型水库,具有一定的局限性。智能全站仪除了测角测距之外,大多集成了望远镜相机[18-19],由此可在执行大坝外观自动化监测任务的同时,通过拍摄图像辅助水位测量,此时相机角度可根据水位变化灵活调整,且无需水位尺等额外设备支持。
智能全站仪是一种集自动目标识别、照准、跟踪、测角测距及记录于一体的测量平台。在大坝外观自动化监测中,位于观测房内固定测站的智能全站仪定期对目标监测点进行测角测距计算其位移情况。同时,可以利用智能全站仪的望远镜同轴相机拍摄图像辅助水位测量。
首先利用智能全站仪获取初始的库水位。如图1所示,选择合适的竖直坝体拍摄区域,人工将观测房内固定测站A的智能全站仪望远镜十字丝瞄准水位线拍摄图像,然后在水位线处放置棱镜,获取该位置的斜距S、水平方向角α、竖直角γ,初始数据采集完毕即可撤掉棱镜。根据已知的测站点高程和三角高程测量原理[20],可以计算得到当前库水位,即:
图1 智能全站仪初始水位测量示意Fig.1 Schematic diagram of initial water level measurement with robotic total station
HWL=HA+hi+Dtanγ;
(1)
D=Scosγ。
(2)
式中:D为测站点到拍摄坝体位置的水平距离;HWL为大坝库水位高程;HA为测站点A的已知高程;hi为仪器高。
根据所拍摄图像的水位线像素坐标点集(ui,vi)进行最小二乘直线拟合得到水位线直线方程为
v=ku+b。
(3)
当保持智能全站仪望远镜相机的水平方向α读数不变拍摄图像时,水位的上升或下降不会改变图像中水位线的斜率,故在周期性水位测量阶段可根据该斜率k在图像中寻找水位线。
2.2.1 库水位预测
由于库水位会发生变化,为了指导智能全站仪自动瞄准水位线,需要首先结合历史数据对库水位进行预测,预测算法很多,以卡尔曼滤波为例[21]进行预测。卡尔曼滤波方程是一组递推计算公式,其计算过程是一个不断地预测、修正的过程。在求解时不需要储存大量的观测数据,并且当得到新的观测数据时,可随时算得新的滤波值,便于实时处理观测成果。
用pt、vt、at分别表示库水位在t时刻的位置、上升速度、加速度等状态,可得到状态方程和观测方程为:
Xt=AXt-1+Bat+μt;
yt=HXt+σt。
(4)
利用卡尔曼滤波预测水位的主要过程如下:
第一步,预测阶段,结合t-1时刻库水位状态来预测t时刻的库水位状态Xt,即
(5)
(6)
第三步,为下一步估计t+1时刻的最优水位值的迭代,需要进行更新协方差估计
(7)
在初始水位测量阶段得到的库水位信息可认为是上式中的Xt-1,将其代入卡尔曼滤波的计算过程,可不断预测修正下一时刻的水位。
2.2.2 水位图像采集
(8)
在周期性水位测量中,即可控制智能全站仪的望远镜在竖直方向调整γt,然后拍照获取图像进行后续处理。
2.2.3 水位线提取
水体与竖直坝体在图像上的分界较为明显,可以利用二值化、边缘检测等图像处理技术进行水位线的分割和特征提取。首先对智能全站仪拍摄的图像灰度化,通过最大类间方差法自适应确定阈值对图像二值化处理,然后利用边缘检测算法[22]进行水位线分割。边缘是图像局部强度变化最明显的地方,是由于灰度的不连续而产生的,常通过导数来检测图像灰度值的不连续性。以Roberts边缘检测算子[23]为例进行水位线的分割,该算子利用局部差分寻找边缘,采用对角线方向相邻两像素之差近似梯度幅值检测边缘,具有运行速度快,定位精度高等优点,其梯度算子可近似表达为
G(u,v)=|∇uf(u,v)|+|∇vf(u,v)| 。
(9)
则图像离散化的对角线Roberts算子为
如前所述,固定水平方向获取的图像的水位线的斜率保持不变。为提取根据预测值拍摄的图像的水位线特征,在边缘检测的基础上首先利用霍夫变换提取图像中的直线。霍夫变换是一项重要的特征提取算法,能够从黑白图像中检测出直线,被广泛应用于图像处理、计算机视觉和数字图像处理领域。通过霍夫变换提取图像上的多条直线li之后,筛选出斜率等于初始水位测量阶段得到的水位线直线斜率k±ε的直线,考虑坝体噪声及水浸渍干扰,选取截距bmax最大的直线作为拍摄图像的水位线。
2.2.4 水位验证与计算
由于根据卡尔曼滤波进行库水位预测会存在误差,故需要进行判断并验证。若根据预测水位拍摄图像提取的水位线截距bmax与初始水位测量拟合得到的直线截距b一致,则表明预测准确,此时将竖直角γt代入式(2)即可计算当前的水位高程。若不一致,计算截距差值Δb=b-bmax,并根据Δb、焦距f、图像分辨率R及测站点到水位线的斜距D/cosγt计算预测库水位与实际库水位的差值ΔHp,即:
(11)
图2 智能全站仪辅助水位测量流程Fig.2 Flow chart of water level measurement assisted by robotic total station
利用智能全站仪拍摄图像进行水位测量的精度主要受到仪器设备、传播路径及水位检测算法等的影响。本方法水位测量的基本原理是三角高程测量,故仪器设备的测角测距误差及其相对于坝体的位置会影响水位测量的精度。传播路径对水位测量精度的影响主要包括地球曲率和大气折光。当仪器设备位置固定时,地球曲率误差可根据地球平均半径进行改正,而大气折光误差则因为变化且未知的大气折光系数K而无法统一改正。对水位测量精度影响最大的因素为水位检测算法误差,且该误差受到仪器到坝体距离的影响。假定各影响因素相对独立,基于式(2),根据误差传播定律可得水位测量误差σWL的综合公式为
σWL=
(12)
式中:σD和σγ分别为仪器的标称测距、测角误差;σK为大气折光误差;σpixl为图像水位线检测像素误差;D为仪器到坝体的水平距离;γ为水位线居中时竖直角;ρ为进行角度与弧度之间的转换的常数,ρ=206 265;w为影像传感器尺寸;f为焦距;R为图像分辨率。
为了分析所提方法的可行性及精度,在湖南省保靖县碗米坡水电站展开了试验。该水电站拦河坝为碾压混凝土重力坝,坝顶高程254.50 m,最大坝高66.50 m,坝顶长度238.00 m。如图3所示,在距离坝体约350 m的右岸上游架设徕卡TS60智能全站仪展开试验。TS60为徕卡新一代高精度智能全站仪,测角精度0.5″,测距精度0.6 mm+1 mm/km,其集成的广角相机和望远镜相机为测量工作提供了更多可能。TS60的望远镜相机采用500万像素CMOS传感器,其视场角为1.5°,拍摄图片分辨率可达2 560×1 920。
图3 试验现场情况Fig.3 Test site conditions
首先对卡尔曼滤波预测水位精度的适用性进行了分析,主要利用了该水电站水位计实测的4 d共计96期库水位数据。根据上述实测水位采用卡尔曼滤波预测结果如图4所示。由图4可以看出,采用卡尔曼滤波预测库水位的误差最大不超过0.5 m。由于TS60的望远镜相机视场角为1.5°,根据视场角公式可计算在上述位置拍摄坝体图像的实际范围约为5.5 m。该范围远大于卡尔曼滤波预测的最大误差,故可确保智能全站仪根据卡尔曼滤波预测结果拍摄得到的坝体图像始终包含水位线,验证了采用卡尔曼滤波预测水位精度的可用性,为后续图像处理中有效检测出水位线提供了保障。
图4 卡尔曼滤波预测误差分析Fig.4 Error analysis of Kalman filter prediction
为验证所采用的图像处理技术提取水位线的可行性,试验中首先将智能全站仪的望远镜十字丝瞄准水位线拍摄图像模拟初始水位测量,并根据所拍摄图像的水位线像素坐标点集拟合得到初始水位线直线方程为v0=0.050 3u0+912.42。然后调整望远镜的竖直角分别拍摄水位线位于上中下不同位置的图像,依次进行灰度化、二值化、Robert算子边缘检测以及霍夫变换直线检测等图像处理步骤,并依据初始水位线直线方程斜率k=0.050 3对水位线进行提取。整个提取过程及结果如图5所示。由图5可以看出,无论水位线位于图像的任何位置,根据所提的方法均可较好地检测出水位线。
图5 图像处理水位线提取过程Fig.5 Processes of water level line extraction based on image processing
自动检测出的位于不同位置的水位线直线方程如式(12)所示,水位线居中时的自动检测结果与初始人工拟合水位线直线方程的截距差约为8个像素,进一步证实了根据上述步骤自动提取水位线的精度较高。同时将水位线位于不同位置与初始位置的截距差代入式(11)并与实测结果对比,验证了利用其对卡尔曼滤波预测误差进行纠正并反推智能全站仪应调整的竖直角的可用性。
(13)
通过图像处理提取到居中的水位线之后,即可利用智能全站仪的观测值根据式(2)计算水位高程。测量得到的水位高程不仅与图像水位线提取精度有关,也受到全站仪观测误差的影响。对此将全站仪测得水位高程与水位计高程进行了对比,首先对坝顶已知高程点进行观测得到全站仪测站点高程,然后将全站仪望远镜相机十字丝瞄准水位线根据观测值计算得到水位高程为240.785 m,查取同期得水位计测量结果为240.74 m。二者差异约为5 cm,显示出智能全站仪辅助水位测量可满足实际需求。
现代智能全站仪集成了多种传感器,除了传统的利用其测角测距计算坐标外还有诸多应用尚待开拓。本文基于卡尔曼滤波预测与图像处理技术,在智能全站仪进行大坝外观自动化监测的同时,利用其望远镜相机对动态变化的库水位进行测量。试验结果表明,该方法无需额外设备支持即可实现周期性库水位动态测量,其结果满足实际应用需求。
本方法目前仅针对混凝土重力坝展开了试验,在接下来的工作中将对于坝体分别为曲面和斜面的拱坝与堆石坝的水位提取与测量展开研究。同时也将对本方法测量库水位的精度进一步量化分析。