技术领域
[0001] 本
发明涉及探地雷达领域,尤其涉及在探地雷达对地
下管线探测时的资料处理,更具体地说,涉及一种探地雷达资料中管线目标的自动识别方法及系统。
背景技术
[0002] 目前从探地雷达资料中提取管线参数的方式主要有三种:偏移处理、
霍夫变换和
模式识别。
[0003] 偏移处理工作原理和
地震反射波勘探原理类似,都是基于
波动方程的偏移成像技术,是目前我国探地雷达应用中主要使用的技术。通过预先设置一个
电磁波在地下传播的
波速,对管线
信号作偏移归位的方式来实现管线的查找。使用这种方式原理简单、效果明显,但是该方式不够自动,需要按照先验信息如地下介质的
介电常数提供一个波速,波速的准确与否会直接影响成像结果。
[0004] 霍夫变换主要是对探地雷达图像进行处理。由于管线在探地雷达图像中呈现双曲线特征,因此常常使用霍夫变换建立双曲线在参数空间的模型,然后在参数空间通过投票的方式找出探地雷达图像中符合特征的所有双曲线从而达到提取管线参数的目的。该方法具有自动、鲁棒性强等特点,但是构建参数空间往往是三维或者四维的,再进行全图搜索,
算法时间复杂度高、对
硬件要求高。
[0005] 近年来,随着
人工智能的发展,很多学者使用模式识别的方式如BP神经网络或者
支持向量机(SVM)算法来对管线进行识别分类。但是BP神经网络的权值太多,计算量大;SVM由于大量的非支持向量参与训练过程,从而进行大量的二次规划计算导致分类计算量大、速度慢。
发明内容
[0006] 为了解决上述传统管线自动识别技术不自动、运算时间长等缺点,本发明采用目前
深度学习中发展迅速的目标识别算法对管线进行快速精准的
定位,然后通过相关运算和一维参数空间的霍夫变换从定位的区域快速提取出管线参数。
[0007] 根据本发明的其中一方面,本发明解决其技术问题所采用的技术方案是:构造一种探地雷达资料中管线目标的自动识别方法,包含如下步骤:
[0008] S1、构建一个探地雷达管线图片的样本库,包含多种地质条件下的探地雷达管线的正演和实测图片,每张图片为一张样本图片;
[0009] S2、对样本库库中的每张样本图片上的双曲线区域位于该样本图片上的最小矩形子图的四个
顶点像素点坐标、样本图片名称及对应的管线材质类型记录下来,保存为一个csv文件;
[0010] S3、采用Faster RCNN读取所述csv文件中的信息进行训练,训练时先设置好训练时的训练步数和评估步后进行训练;
[0011] S4、采用步骤S3训练得到的模型,对待识别的探地雷达图片进行识别,生成对应的识别结果图片,所述识别结果图片中包含识别的双曲线矩形区域的最小矩形子图;其中,样本图片以及待识别的探地雷达图片初始均为灰度图或者初始均被处理为灰度图;
[0012] S5、对识别结果图片中识别出的双曲线区域的相邻信号首先采用互相关运算提取出走时双曲线,然后使用最小二乘法进行曲线拟合得到管线的
水平距离、管径、背景介质介电常数三个参数,接着将这三个参数带入霍夫变换,通过一维霍夫变换得到管线顶点的走时,完成管线的识别。
[0013] 进一步地,在本发明的探地雷达资料中管线目标的自动识别方法中,步骤 S1中,样本图片的总数量在300张以上。
[0014] 进一步地,在本发明的探地雷达资料中管线目标的自动识别方法中,步骤 S2中所述管线材质类型包括金属材质或者非金属材质。
[0015] 进一步地,在本发明的探地雷达资料中管线目标的自动识别方法中,步骤 S5中走时双曲线的提取具体采用如下方法:
[0016] 对每一个识别结果图片中识别出的双曲线区域的相邻信号首先采用互相关运算,提取出每一道信号相对前一道信号的时延ΔTn,给定第1道的初始走时T1,通过递归迭加得到一个管线的走时双曲线,递归迭加的计算公式如下:
[0017]
[0018] 其中,Tn表示第n条A-Scan中目标回波时延,ΔTn=argmaxRn(t),Rn(t)表示第n条A-Scan和第n-1条A-Scan做互相关运算后的相关值, 第n道A-Scan中的目标回波信号 An(u)=αAn-1(t-ΔTn)+ω(u),n=2,3,...,u为时间变量,α是信号幅度衰减因子,ω(t) 表示噪声干扰。
[0019] 进一步地,在本发明的探地雷达资料中管线目标的自动识别方法中,在步骤S5采用互相关运算提取出走时双曲线过程中,将提取到的走时双曲线上的点处最大相关值小于该
阈值的点去除,最终得到的走时双曲线为进行所述去除后所形成的走时双曲线。
[0020] 进一步地,在本发明的探地雷达资料中管线目标的自动识别方法中,在步骤S5中所述接着将这三个参数带入霍夫变换,通过一维霍夫变换得到管线顶点的走时具体包括:
[0021] 在一维参数空间中进行Hough变换:
[0022]
[0023] 然后通过所述Hough变换,确定出
[0024] 其中,R、x0、v分别为进行曲线拟合所分别得到的管线的半径、水平
位置、电磁波在背景介质中的速度;
[0025] 步骤S5中所述完成管线的识别是指得到管线在测线的水平位置x0、管线的埋深v*t0/2以及管线的半径R。
[0026] 根据本发明的另一方面,本发明为解决其技术问题,还提供了一种探地雷达资料中管线目标的自动识别系统,包含如下模
块:
[0027] 样本库构建模块,用于构建一个探地雷达管线图片的样本库,包含多种地质条件下的探地雷达管线的正演和实测图片,每张图片为一张样本图片;
[0028] 样本预处理模块,用于对样本库库中的每张样本图片上的双曲线区域位于该样本图片上的最小矩形子图的四个顶点像素点坐标、样本图片名称及对应的管线材质类型记录下来,保存为一个csv文件;
[0029] 模型训练模块,用于采用Faster RCNN读取所述csv文件中的信息进行训练,训练时先设置好训练时的训练步数和评估步数后进行训练;
[0030] 初步识别模块,用于采用模型训练模块训练得到的模型,对待识别的探地雷达图片进行识别,生成对应的识别结果图片,所述识别结果图片中包含识别的双曲线矩形区域的最小矩形子图;其中,样本图片以及待识别的探地雷达图片初始均为灰度图或者初始均被处理为灰度图;
[0031] 最终识别模块,用于对识别结果图片中识别出的双曲线区域的相邻信号首先采用互相关运算提取出走时双曲线,然后使用最小二乘法进行曲线拟合得到管线的水平距离、管径、背景介质介电常数三个参数,接着将这三个参数带入霍夫变换,通过一维霍夫变换得到管线顶点的走时,完成管线的识别。
[0032] 进一步地,在本发明的探地雷达资料中管线目标的自动识别系统中,最终识别模块中走时双曲线的提取具体采用如下方法:
[0033] 对每一个识别结果图片中识别出的双曲线区域的相邻信号首先采用互相关运算,提取出每一道信号相对前一道信号的时延ΔTn,给定第1道的初始走时T1,通过递归迭加得到一个管线的走时双曲线,递归迭加的计算公式如下:
[0034]
[0035] 其中,Tn表示第n条A-Scan中目标回波时延,ΔTn=argmaxRn(t),Rn(t)表示第n条A-Scan和第n-1条A-Scan做互相关运算后的相关值, 第n道A-Scan中的目标回波信号 An(u)=αAn-1(t-ΔTn)+ω(u),n=2,3,...,u为时间变量,α是信号幅度衰减因子,ω(t) 表示噪声干扰。
[0036] 进一步地,在本发明的探地雷达资料中管线目标的自动识别系统中,在最终识别模块采用互相关运算提取出走时双曲线过程中,将提取到的走时双曲线上的点处最大相关值小于该阈值的点去除,最终得到的走时双曲线为进行所述去除后所形成的走时双曲线。
[0037] 进一步地,在本发明的探地雷达资料中管线目标的自动识别系统中,在最终识别模块中所述接着将这三个参数带入霍夫变换,通过一维霍夫变换得到管线顶点的走时具体包括:
[0038] 在一维参数空间中进行Hough变换:
[0039]
[0040] 然后通过所述Hough变换,确定出
[0041] 其中,R、x0、v分别为进行曲线拟合所分别得到的管线的半径、水平位置、电磁波在背景介质中的速度;
[0042] 最终识别模块中所述完成管线的识别是指得到管线在测线的水平位置x0、管线的埋深v*t0/2以及管线的半径R。
[0043] 实施本发明的探地雷达资料中管线目标的自动识别方法及系统,具有以下有益效果:
[0044] 1.使用区域
卷积神经网络识别出图像中管线特征(双曲线)区域的定位准确、快速,模型的训练时间短;
[0045] 2.使用互相关运算和一维参数空间的霍夫变换从管线特征区域提取管线参数相较于传统的霍夫变换运算时间更短、对硬件要求低;
[0046] 3.使用对全图线进行区域识别,再从区域中提取参数的方式相较于传统的全图搜索、计算的方式避免了对非特征区域的计算,大大提高了计算效率。
附图说明
[0047] 下面将结合附图及
实施例对本发明作进一步说明,附图中:
[0048] 图1是本发明的探地雷达资料中管线目标的自动识别方法一实施例的
流程图;
[0049] 图2是使用标签工具提取出样本图片中双曲线矩形区域顶点的像素点坐标的示意图;
[0051] 图4为训练过程中的损失函数变换曲线图;
[0052] 图5是使用识别程序分别对两个管线的探地雷达图像的识别结果图;
[0053] 图6是通过相关运算提取到的走时双曲线图;
[0054] 图7将两侧噪声点去除后的走时双曲线图;
[0055] 图8(a)是含有多个不同材质管线的探地雷达图像;
[0056] 图8(b)是模型自动识别定位的结果图;
[0057] 图9是从识别出的双曲线区域提取出管线参数图。
具体实施方式
[0058] 为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的具体实施方式。
[0059] 参考图1,本发明主要有两部分组成,第一部分是利用区域卷积神经网络算法(RCNN)中的Faster RCNN算法对探地雷达图像中存在管线的双曲线区域进行自动识别,利用该算法可以识别出双曲线区域在图像中的坐标以及管线的种类。第二部分是从每一个识别出来的双曲线局部区域中提取管线的水平距离、埋深及管径参数。
[0060] 第一部分的实现主要是基于谷歌的开源深度学习
框架TensorFlow,使用 Python编写程序来实现对管线的自动识别。整个过程包括以下几个步骤:
[0061] (1)首先需要在计算机上构建一个探地雷达管线图片的样本库,选取各种地质条件下的探地雷达管线的正演和实测图片作为样本图片,样本图片总数量在300张以上,样本图片被处理为灰度图。
[0062] (2)然后得到这些样本图片
上管线的双曲线区域位于该样本图片上的最小矩形子图的四个顶点像素点坐标,最后将所有的样本图片名称、图片中双曲线区域的最小矩形子图的四个像素点坐标以及该区域对应的管线材质分类(金属/非金属)记录下来,保存为一个csv文件。最小矩形子图即代表双曲线区域,即ROI。参考图2,图2是使用标签工具提取样本图片中双曲线矩形区域的四个顶点像素点坐标。
[0063] (3)训练模型。Faster RCNN会读取第(2)步中的csv文件中的信息,然后将这些信息输入到网络中开始训练,设置好训练时的训练步数和评估步数,然后开始训练。具体可参考图3以及图4,其中图3为训练时迭代窗口图,4 为训练过程中的损失函数变换曲线图。
[0064] (4)通过编程实现对探地雷达图像的自动识别,将灰度图形式的待识别的探地雷达图片放入
指定路径,然后运行识别程序,程序会在该路径下生成该图片对应的识别结果图片,识别结果图片中包含识别的双曲线的最小矩形子图的四个像素点坐标值的csv文件。具体可参考图5,其为是使用识别程序对两张探地雷达图像进行了识别的结果图片。
[0065] 第二部分是在第一部分对双曲线区域定位的
基础上,对每一个双曲线区域的相邻信号首先采用互相关运算提取出双曲线,然后使用最小二乘法进行曲线拟合可得到管线的水平距离、管径、背景介质介电常数三个参数,接着将这三个参数带入霍夫变换,通过一维霍夫变换得到管线顶点的走时。主要包括以下几步骤:
[0066] (1)在探地雷达探测过程中,由于空间
采样间隔一般比较小,因此可以忽略相邻的A-Scan中来自于同一地下目标体的目标回波在
波形上的畸变,认为相邻A-Scan中同一目标的回波具有很强的相关性,因此可以构建出如下的相关模型:
[0067] An(t)=αAn-1(t-ΔTn)+ω(t),n=2,3,... (3.1.1)[0068] 其中An(t)为第n道A-Scan中的目标回波信号,α是信号幅度衰减因子,ΔTn是An(t)相对于An-1的时延,ω(t)表示噪声干扰。设An(t)中目标回波时延为Tn,则:
[0069] ΔTn=Tn-Tn-1,n=2,3,... (3.1.2)
[0070] 基于式3.1.1的相关信号模型用互相关的方法实现B-Scan中目标双曲线的提取,对第n条A-Scan和第n-1条A-Scan做相关运算:
[0071]
[0072] 对于经预处理抑制了直达波的回
波数据,可以采用式3.1.4估计相对回波时延ΔTn:
[0073] ΔTn=argmaxRn(t) (3.1.4)
[0074] 于是第n条A-Scan中目标回波时延Tn则可以递归计算得到:
[0075]
[0076] 采用这种方式可以在第一部分识别双曲线区域的基础上,对探地雷达信号中双曲线区域的信号中相邻信号进行相关运算,提取出每一道信号相对前一道信号的时延ΔTn,给定第1道的初始走时T1为0,通过递归迭加可以得到一个管线的走时双曲线,图6为通过相关运算提取到的某一管线的走时双曲线。
[0077] 由这种方式提取到的双曲线在离双曲线顶点距离越远的两侧有少量的噪声点,出现这些点的原因是因为离双曲线顶点越远的测点处接收到的回波传播的路程越长,因此会由于地质条件和其他噪声造成两侧的信号噪声很大,最大相关值也就越小,因此可以设置一个阈值,提取到的走时双曲线上的点处最大相关值小于该阈值的点去除,得到去除这些噪声点后的最终的走时双曲线如图 7。
[0078] 接着使用最小二乘法来拟合这个走时双曲线,可以得到该双曲线对应的管线的半径R、水平位置x0、电磁波在背景介质中的速度v这三个参数。
[0079] (2)经过步骤(1)已经得到了管线的三个参数,最后还需要得出管线在侧线上的投影点接收到来自于管线的双程走时。奔放买哪个采用霍夫变换,进行一维参数空间的变换,对图像中的像素点进行累加可以得到这个参数。
[0080] Hough变换是一种在
计算机视觉中提取图片中的形状特征的方式。Hough 变换会将直
角坐标系中的一条直线变换为参数空间的一个点,然后对图像所有像素点进行投票,投票数最高的参数空间的点的值即为所需的参数值。在探地雷达图像中,已知管径、管线水平位置、电磁波在背景介质中的速度这三个参数,因此Hough变换只需要在一维参数空间中进行。
[0081]
[0082] 当 中出现陡峭的“尖峰”时表明存在目标双曲线 对于目标的定位只需最终确定参数t0:
[0083]
[0084] 至此,管线的四个参数都已经得到,其中x0为管线在测线的水平位置, v*t0/2为管线的埋深,R为管线的半径。
[0085] 采用上述方法,直至所有的待处理图片均已经完成处理,此时输出所有的管线信息。
[0086] 本发明的技术关键点在于:
[0087] 1.样本库的构建。在样本探地雷达图像中标记的双曲线区域的精确度会影响模型对实际探地雷达图像中双曲线区域自动定位的
精度;并且样本库中样本图片的丰富度也会影响对某些特定情况下双曲线形状发生变化的探地雷达图像的识别。
[0088] 2.训练步数的控制,在模型训练的过程中可以查看模型训练的损失函数的变换以确定模型训练的停止,从而提高识别精确度。
[0089] 3.在对识别的双曲线区域进行霍夫变换时会进行图像的预处理,包括图像时间域滤波、二值化、形态处理、边缘提取等步骤。图像预处理的目的是为了凸显出图片中的特征区域,压制噪声,从而提高霍夫变换投票的效率。
[0090] 使用在室内通过正演
软件模拟的各种探地雷达图像作为样本图片构建样本集,然后输入样本集训练模型。使用训练好的模型对输入的含有多个不同材质管线的探地雷达图像(图8(a))进行识别,结果如图8(b)。
[0091] 由图8(a)、图8(b)可以看出,模型对图像中管线的双曲线区域的定位十分准确,且能够精确的对管线材质进行划分(图8(b)中由左到右第2、4、5个框代表金属管,第1、3个框代表非金属管)。
[0092] 分别对识别出来的区域作相邻信号的相关运算提取出双曲线,然后使用最小二乘拟合和一维参数空间的霍夫变换可提取出该区域对应管线的参数。如图 9所述,左上和右上分别为提取出来的金属和非金属管线双曲线区域,左下和右下为将提取的参数对应的双曲线画到原图(图中黑色实线部分)。
[0093] 从图9可以看出,使用相关运算和霍夫变换的方式可以准确的从双曲线区域提取出管线的参数(提取的参数在图中对应的双曲线在图9中左下和右下使用黑实线标出),提取出来的参数和管线本身的参数之间误差很小,对于图9 中的两个管线的水平距离误差为0.33%,埋深误差为2.94%。
[0094] 上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和
权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。