张肃
摘要:无人机航空摄影技术在近年来得到了迅速的发展,无人机具有起降方便,分辨率高,响应速度快的特点,在抢险救灾,地质灾害监测等方面发挥了重要作用。无人机航空摄影生成的地形图中的高程点提取是地形图制作的重要步骤,本文提出了一种自适应的地形图高程点提取算法,相对于传统的算法,具有精确度高,计算简单,实用性强等特点。该算法的基础是数学形态学中的图像膨胀算法。本文将此算法用于陕西省丹凤县和紫阳县的无人机航摄生成的地形图中,提取了符合要求的高程点。结果表明,提取的高程点完全满足了地形图的要求,说明了该算法的准确性和实用性。
关键词:无人机;地形图;高程点;算法
A fast extraction algorithm for surface peaks of DEM derived from
UAV aerial photography
zhang su
Abstract:UAV aerial photography technology has been rapidly developed in recent years. UAV has the advantag- es of convenient take-off and landing, high resolution and fast response, and plays an important role in disaster relief and geological disaster monitoring. The surface peaks extraction in the topographic map generated by aerial photogra- phy of UAV is an important step in topographic map production. This paper proposes an adaptive topographic map sur- face peaks extraction algorithm, which has higher accuracy and simple calculation than traditional algorithms. And this method is more practical. The basis of this algorithm is the image expansion algorithm in mathematical morphology. In this paper, the algorithm is applied to the topographic map generated by the UAV aerial photography in Danfeng County and Ziyang County of Shaanxi Province, and the surface peaks that meet the requirements are extracted. The results show that the extracted surface peaks fully meet the requirements of topographic maps, indicating the accuracy and practicability of the algorithm.
key word:UAV ,DEM ,surface peaks, algorithm
1.无人机航摄的应用与发展
无人机航空遥感是近年来发展起来的一种遥感技术的新手段和遥感技术研究的一个热点领域,具有低空云下飞行、起降方便、分辨率高的特点,是卫星遥感和有人机航空遥感的重要补充,现在无人机摄影已经广泛用于地质灾害抢险救灾等领域[1]。无人机航空数据相对卫星数据来说,受天气的影响要小,数据快速获取的效率更高。例如,在2018年10月发生的西藏雅鲁藏布江沿岸山体滑坡及四川与西藏交界金沙江山体滑坡形成堰塞湖时,无人机都发挥了重要作用,在第一时间取得了灾害区域的影像,为抢险救灾提供了重要的数据影像支持,为救灾的决策提供了重要的依据[2]。而传统卫星由于重访期和云层遮蔽的关系,有可能不能获得实时的卫星影像。
无人机航空摄影除了可以取得航摄区域的高精度影像,还可以根据拍摄的航片,通过数据处理软件例如PixGrid,Pix4d Mapper等软件,得到航摄区域的DEM数据(数字高程模型)。如果有地面测量的控制点资料,无人机生成的DEM数据精度可以达到米级。相对于传统的地形图生产制作模式,无人机航摄数据制作的地形图具有精度高,制作时间短等特点,非常适合小规模区域内的地形图快速制作。
2.地形图高程点的提取的基本原理
地形图制作中很重要的一个步骤是高程点的提取。传统的地形图中,高程点即标有高程数值的信息点,通常与等高线配合表达地貌特征的高程信息。高程点分布表达上具有丰富的影像相关特征,除个体高程属性上的差异外,一方面与重要地形特征单元(如山峰、鞍部及山谷等)、河流、道路等自然或人文要素目標间的分布关系,使得个体高程点在地理性质上具有不同的重要性意义;另一方面区域地形的起伏变化,使得高程点群在空间分布上呈现不同的疏密关系,在地形起伏变化较大,即地形的变化高频地区,高程点的密度也较大。在地形起伏变化较小,即地形的变化低频地区,高程点的密度也较小。高程点信息和无人机的影像一起给地形图使用者提供了重要的地形信息及决策判断依据[3]。
地形图上的高程点一般分为三类:(1)地形特征高程点。例如山峰、山体鞍部、洼地等地形特征,山峰是局部区域制高点,并且山峰的视线最为广阔、鞍部处于两座山峰之间,是连接两座山峰的路径选择的必经区域、洼地所处的地势是局部最低的,并且是水源存在的地方,因此地形特征上的高程点提供的高程信息明确地指出了这些特殊的地形。
(2)重要地理目标临近的高程点。重要地理目标如道路、居民地、特殊建筑、河流等。这些地理目标是地图表达的重要对象,邻近区域内的高程信息更为地形图使用者所重视,如道路两侧的高程信息是公路建设选线需要考虑的一个重要因素。河流的高程点信息可以表现河流的平缓程度,对于水路运输是否可行提供了重要的参考信息。这一类高程点可以根据影像上的地理目标加以判断,并在关注的地理目标旁进行高程点的标注。
(3)分布范围上的关键高程点。这一类高程点对于高程点空间分布的特征有重要的影像,属于特征的重要组成部分。一旦关键的高程点被删除,整个高程点的空间分布会发生重大改变。这一类高程点可以利用空间分布的权重进行分析并加以判断。
本文的主要研究目的是研究第一类高程点的提取,传统的提取方法包括由等高线生成栅格DEM模型,针对每个高程点设置以该点为中心的R×R栅格窗口,然后分析中心栅格点与周围其他栅格点的高程关系进行判断。Wood J.提出了从地形特征点的几何形态特征研究了DEM提取山顶点的算法[4],提出在局部区域内用x方向和y方向关于高程z的二阶偏导数的正负性来判断山顶点算法,从而提取出高程点。刘淑琼等人提出了通过栅格数据的空间分析,窗口计算功能以及叠置分析提取DEM的山顶点的算法[5]。陈盼盼等人提出了GIS栅格数据邻域分析功能快速提取山顶点的算法[6]。邹宝裕等人提出了基于封闭等高线套合法提取山顶的算法[7]。刘宏建等人以基于流域剖分的山顶点自动提取方法为基础,详细阐述了流域剖分提取高程点模型的建立过程[8]。以上方法均需要在专业软件如Arcgis中进行空间分析及运算,步骤较为复杂。本文提出了一种改进的自适应的高程点提取算法,可以调整提取的高程点群的空间分布疏密程度,从而满足不同使用者对于地形图的要求,并且运算的复杂度和传统的算法相比要简单,有更高的计算效率和实用性。
3.研究方法及技术路线
本文算法的思路是通过对无人机生成的DEM进行动态的、全局的分析,并通过搜索局部极值的方式来寻找第一类高程点。DEM数据可以认为是一组2维的矩阵,山峰在影像上的形态可以等同于DEM矩阵上局部最大值。算法的核心思想是通过局部极大值间距的确定,对2维矩阵进行图像膨胀运算,通过局部极大值的算法寻找局部极大值并进行标注。该算法的优点在于,可以自定义极大值之间的距离,从而人工的调节极大值疏密程度,满足不同的使用者对于地形图信息的需求。当地形图使用者仅仅是需要整个区域内的地形大致分信息时,可以将极大值的间距调稍大一些。如果地形图使用者对区域内的地形图的地形信息要求非常的详细准确时,可以极大值的间距调稍小一些,生成密度较大的高程点群,满足使用者的要求。当寻找完DEM区域内的高程点后,可以将高程点群的平面坐标和高程值进行输出,并将高程点所在矩阵的行列数转换为大地平面直角坐标系,以便用于高程点在地形图上的标注。对于寻找洼地等最低值,可以将DEM的高程值取其绝对值的负数,然后运行此算法,即可将寻找洼地的最低值转换为寻找局部最大值的问题。整个程序在MATLAB軟件中进行编译和运行。寻找高程点的算法流程图如图1所示。
3.1DEM数据从地理坐标转换为矩阵坐标
无人机处理软件得到的DEM数据一般为.tif格式或者为.img格式,通常带有DEM的坐标信息,而坐标信息详细的描述了每一个点所在的平面直角坐标系所处的位置,将DEM数据转换为二维矩阵,导入到MATLAB软件之后,每一个DEM点对应矩阵的一个元素,需要将DEM点的地理坐标转换为矩阵的行列数,地理坐标和矩阵坐标之间的关系可以由公式(1)进行描述:
x_image=y_matlab;
y_image=a(1)-x_matlab;
x_arcgis=R*x_image+x1;
y_arcgis=R*y_image+y1;(1)
其中,x_matlab,y_matlab,表示矩阵的行列数,而x_arc-gis,y_arcgis表示了DEM点的地理坐标,R为DEM的空间分辨率,x1,y1分别为DEM在地理坐标系中x轴最小值和y轴最小值。x_image,y_image表示了DEM点在一幅普通的影像上的坐标值。通过公式(1),即可将DEM的点映射到相应的二维矩阵上。
3.2确定局部极大值之间的间距
对于一副地形图,不同的使用者对高程点的疏密程度有不同的要求。如果为了得到更加详尽的高程点信息,可以先将局部极大值的间距调整为一个较小的值,本文使用的地形图为1∶5000比例尺的地形图,采用了50m的极大值间距进行处理。如果发现生成的高程点分布过密,可以加大极大值的间距,重新进行运算,得到相对稀疏的高程群分布。在程序中,通过设定mindist变量的值进行极大值间距定义,具体语句为:
minDist=[2525];
因为DEM的分辨率为2m,所以实际的极大值间距为50m。
3.3通过局部极大值搜索算法寻找高程点群
本文采用的局部极大值的搜索算法为数学形态学的膨胀算法,膨胀算法主要用途为消除噪声;分割出独立的图像元素,在图像中连接相邻的元素;寻找图像中明显的极大值区域;其基本算法步骤如下:
1定义一个卷积核B
核可以是任何的形状和大小,且拥有一个单独定义出来的参考点-锚点(anchorpoint);
通常和为带参考点的正方形或者圆盘,可将核称为模板或掩膜;
2将核B与图像A进行卷积,计算核B覆盖区域的像素点最大值;
3将这个最大值赋值给参考点指定的像素。通过局部极大值的算法,可以寻找到二维矩阵的局部极大值,其原理示意图如图2所示。
从图2中可以看出,标注为黑色“*”的点即为局部极大值点,标注为青色“*”极为局部极小值的点,通过该算法就可以寻找山峰和洼地两类高程点。
3.4调整局部极大值的间距并且得到需要的高程点群
根据使用者的需求,调整mindist变量的值,根据不同的局部极大值的间距的值,得到不同疏密程度的高程点群的空间分布,直到该分布满足使用者的预期要求为止,图3显示了不同的间距对于高程点群的空间分布的影像,可以看出,间距为50m时,得到的高程点密度明显要大于间距为100m时的高程点密度。
3.5转换高程点群的坐标并输出高程点文件
高程点在矩阵中的位置为行列数,应该将行列数转换为平面直角坐标,才能与地形图的坐标系相匹配。本步骤也可以通过公式(1)进行坐标系的转换。得到平面直角坐标之后,和高程点的高程值一起,用xlswrite命令输出到Ex-cel文件中,将.xls文件导入到Arcgis软件之中,便可以得到高程点文件。
4.研究结果
本文对陕西省丹凤县和紫阳县无人机航测生成的地形图进行了高程点的提取,结果如图4所示,地形图使用的比例尺为1∶10000,该地形图的主要用途的地质灾害遥感解译。图4分别展示了丹凤县和紫阳县的局部地形,从图中可以看出,该算法很好的提取了所需要的高程点,较好地完成了高程点的标注任务。
5.结论
本文提出了一种自适应动态的高程点提取算法,对传统的高程点提取算法进行了改进,该算法相对于传统算法,步骤和计算过程都相对简单,减小了使用者的操作及学习负担。该算法可以自由地调整高程点之间的间距,从而得到最适合使用者需求的高程点群分布。本文通过对不同区域的无人机航摄生成的地形图进行试验,提取了符合要求的高程點群,说明了此算法的稳定性和实用性。表明了此算法是日益发展的无人机航摄地形图制作过程的有效工具。参考文献:
[1]支卫斌.无人机航空摄影测量在地形测绘中的应用[J].江西建材,2015(08):224-225.
[2]汤国安,刘学军,闾国年.数字高程模型及地学分析的原理与方法[M].科学出版社,2005.
[3]金沙江西藏段河道水情基本恢复正常,中国政府网.
[4]Wood J,1996,The geomorphological characterization of Digital Ele- vation Models, PhD Thesis Department of Geography, University of Lancaster, UK
[5]刘淑琼,邹时林,邹胜武,etal.基于规则格网DEM提取山顶点的研究[J].东华理工大学学报(自然科学版),2013(s1):93-95.
[6]陈盼盼,张友顺,王春,etal.基于DEM的山顶点快速提取技术[J].现代测绘,2006,29(02):11-13.
[7]邹宝裕,董丞妍,苟娇娇,etal.数字高程模型提取山顶点及空间格局差异[J].遥感信息,2016,31(02):124-128.
[8]刘宏建,刘建忠,蔡中祥,etal.一种基于流域剖分的山顶点提取方法[J].测绘科学技术学报,2014(02):12-15.