LiDAR点云纹理特征提取方法*
2019-04-26彭认灿
周 唯,彭认灿,董 箭
(1. 中国人民解放军91550部队, 辽宁 大连 116023; 2. 海军大连舰艇学院 军事海洋测绘系, 辽宁 大连 116018; 3. 海军大连舰艇学院 海洋测绘工程军队重点实验室, 辽宁 大连 116018)
机载LiDAR系统采集的点云数据中除了包含高精度的三维坐标信息外,还包括回波强度、回波次数、扫描角度、扫描方向和全球定位系统时间等多种属性信息(为表述方便,后文将“机载LiDAR”简称为“LiDAR”)。此外,还可以根据LiDAR数据中包含的基础属性信息推导出坡度、坡向、点密度和强度密度[1-4]等多种衍生属性,这些属性可以为地物分类、特征提取和表面分析等工作提供重要数据支撑。
近年来,纹理特征作为高程信息或强度信息的一种衍生属性,被大量应用于LiDAR数据的地物分类过程中,用以提高整体分类精度。如:乔纪纲等将经过粗分割后的LiDAR点云内插成高度图像和强度图像,从而求取灰度共生矩阵(Gray-Level Co-occurrence Matrix, GLCM)高度纹理图像,再将包括GLCM高度图像纹理在内的7种纹理作为识别地面覆盖物的特征,结合后向传播神经网络方法对LiDAR数据进行地物识别[5];Zhou等首先利用边界提取和简单线性迭代聚类(Simple Linear Iterative Clustering, SLIC)算法将预处理后的LiDAR点云分割成图像区块和超像素,再分别计算每个区块和超像素的高程图像纹理特征和强度图像纹理特征,最后结合强度统计和支持向量机算法将LiDAR数据分为6种地物类[6]。这些算法都将LiDAR数据的高程或强度信息内插成栅格格式的DSM图像或强度图像,并将生成的图像视为一个波段的“光谱图像”,再利用统计或变换的方法提取图像的纹理属性,从而在图像纹理特征的约束下,结合一些比较成熟的图像处理方法进行地物分类[5-8]。这种分类方法虽然充分利用了栅格图像数据结构简单和易于实现算法的优点,但生成图像纹理特征的过程中,需要对点云进行内插处理,这必然会损失激光脚点的高程精度和原始结构。此外,纹理特征图像的分辨率不可能无限小,一般为点云的平均点间距,因此在利用图像纹理特征约束进行点云分类时(如图1所示),会出现多个距离较近点被分配到同一个像素中的“多义性”问题(如图1中a、b点所示)。图1中中心像素的像素值是通过a、b点的属性值内插得到的,虽然通过对图像纹理特征的分析可以将该像素与其周围像素分为同类或异类,但并不能通过该像素的图像纹理特征属性推断出a、b两点之间的类别关系。
图1 点云与栅格图像叠加显示图Fig.1 Point cloud overlaid on raster image
针对上述问题,本文利用K维(K-Dimension, KD)树构建点云离散点之间的拓扑关系,结合图像处理中的GLCM算法,提出基于LiDAR原始离散点提取点云纹理特征的方法。
1 理论及方法
1.1 图像处理领域中基于GLCM的纹理特征
纹理特征原本是遥感和摄影测量领域中的概念,其反映影像灰度空间中变化和重复出现的局部模式及其排列规则[9]。但由于其形式上的广泛性和多样性,到目前为止还没有统一的定义。图像纹理特征可按提取方法分类为:统计方法、几何方法、结构方法、模型方法和信号处理方法[10]。其中,GLCM是目前应用最广泛的一种从统计学角度出发分析图像纹理特征的方法,它描述了图像灰度空间中像素对之间的相关性和空间结构特性,被证实可有效改善图像分类结果[11-13]。GLCM最早由Haralick等于1973年提出[9],用以描述在θ方向上,相隔d距离的一对像素分别具有灰度值i和j的出现概率。GLCM是d和θ的函数,并且是对称矩阵,其阶数由图像的灰度等级K决定,由GLCM能推导出14种图像纹理特征。
1.2 基于LiDAR原始离散点的GLCM点云纹理特征提取
图像纹理特征可在栅格图像的处理和分析过程中得到很好应用,但应用于LiDAR点云中会出现前文所述的“多义性”问题。此外,点云与图像之间的相互转换过程,不仅会造成高程精度损失,而且会增加运算时间。因此,有必要直接从原始离散点云出发,提取反映离散点之间相关性和结构特征的点云纹理特征。
图像纹理特征反映的是像素与其周围空间邻域像素的灰度分布情况,点云纹理特征反映的是点与其邻域点的属性值分布情况。但点云中的原始离散点之间并不存在拓扑信息,欲直接从原始点云中提取点云纹理特征,需要构建离散点之间的拓扑关系,以满足点云中点邻域查询的需求。而KD树在邻域查询方面具有较好的性能,常用于单个激光点云数据在相邻区域的索引,因此选用KD树对LiDAR点云数据进行索引。进而借鉴图像纹理特征的提取方法,提出点云纹理特征提取算法。
1.2.1 生成偏移点云,构建最近点对集合
对于栅格图像而言,GLCM是方向参数θ和尺度参数d的函数,欲统计某像素与其周围空间邻域像素的灰度分布情况,仅需将图像中的每个像素和沿θ方向距该像素d距离的像素构成像素对,并统计像素对灰度值出现的频数。但对于呈无规则分布的离散点云数据,若点云中某点坐标为(x,y),沿θ方向距该点为d的位置,即(x+dcosθ,y+dsinθ)坐标处,并不一定有与其相对应的点存在。此外,检索图像中的某个像素平移后的对应位置,仅需定位平移后的位置在整个图像矩阵中的行列号。但欲记录点云中每一点平移后的位置,就需记录平移后位置的x、y坐标,而每个点的坐标又是无规律分布的,不利于存储和检索。因此利用构建的平移点云存储每个平移后的点,进而通过检索原始点云和平移点云中点源ID的方式来提高计算效率。
1.2.2 构建GLCM
(1)
1.2.3 计算点云纹理特征值
利用GLCM可以计算出14种图像纹理特征[9],但顾及算法的整体运算量,仅效仿如下3种比较常见的图像纹理特征,计算出对应的点云纹理特征值。
1)同质度(homogeneity)。
(2)
2)不相似性(dissimilarity)。
(3)
3)角二阶矩(angular second moment)。
(4)
2 试验与讨论
2.1 试验数据
选用NOAA提供的两个数据进行实验,数据采自美国海岸带地区。两个点云数据覆盖范围相同,仅采集时间和采集设备不同,各数据具体参数见表1。由于数据2北岸的平静水面上基本没有激光反射点,因此仅采用点云的有效覆盖区域计算数据2的平均点间距。两个点云数据内插得到的数字高程模型(Digital Elevation Model, DEM)和强度图像如图2所示。
表1 LiDAR数据参数列表
(a) 数据1的DSM(a) DSM of data 1 (b) 数据1的强度图像(b) Intensity image of data 1
(c) 数据2的DSM(c) DSM of data 2 (d) 数据2的强度图像(d) Intensity image of data 2图2 DSM和强度图像Fig.2 DSM and intensity image
2.2 整体视觉判读
提出的点云纹理特征属性可以通过LiDAR的高程或强度信息计算得到,但考虑到文章篇幅和算法效率,在此仅分析由LiDAR强度信息推导得到的点云纹理特征。以数据1为例进行整体视觉判读分析,图3为提取的Hom点云纹理特征局部三维效果图,图中每个点的灰度对应着该点的Hom点云纹理特征值。由图中可看出,提取的点云纹理特征不仅可以有效地分辨树木、房屋(如图3(a)所示)和海浪(如图3(b)所示)等大型地物,还可以分辨道路标志、电线和栅栏(如图3(a)所示)等尺度较小的地物。
(a) 树木、房屋、道路标志和栅栏的点云纹理特征 (a) Texture feature of point cloud of trees, houses, road signs, power lines and fences
(b) 海浪的点云纹理特征 (b) Texture feature of point cloud ocean waves图3 点云纹理特征的三维效果图Fig.3 3D rendering of the texture feature of point cloud
计算出的点云纹理属性与点云中各点的高程和强度等信息类似,是点云中点的一组特征值。为便于视觉判读,还将利用点云中各点的点云纹理特征属性,通过内插的方式转化成栅格图像(如图4所示),并与利用文献[10]中所用方法获得的图像纹理特征(如图5所示)进行对比。
(a) Hom
(b) Dis (c) ASM图4 由点云纹理特征导出的灰度图Fig.4 Gray images derived from the texture feature of point cloud
(a) HoM
(b) Dis (c)ASM图5 由LiDAR强度图像求取的图像纹理特征Fig.5 Texture measurements of LiDAR intensity image
Hom反映了目标点属性值(高程或强度等)与其邻域点属性值连续变化的强度和振幅,图4中灰度值越高的区域说明其地物同质性越好。而在不同类地物的交界处和同质性较差的地物(如树木和建筑)灰度值较低。Dis反映的是相邻点之间平均灰度值的差异程度,其值越低说明物体表面越粗糙(如海浪、树木),其值越高说明物体表面纹理越细致(如建筑)。
通过对比图4和图5可发现,点云纹理内插后生成的图像与直接利用图像处理方法获得的图像纹理,在灰度值整体分布上基本一致。但从图4(a)和图5(a)中的停车位标志、道路信号标志和海浪边缘等细节可看出,点云纹理生成的图像能更清晰地反映不同地物之间的区别,说明本文方法提取的点云纹理可以细致到点,而不是一个像素的区域。
2.3 参数分析及优化
本节参照文献[11],通过分析Hom的变异系数cv对影响点云纹理特征的三个参数r、d、K进行优化。
1)r与cv之间的关系如图6所示。由图6(a)可以看出,对于数据1,在d和K固定的条件下,当r在图中虚线范围内变化时,各类地物的cv达到最高(除树木外,由于树木点的强度值分布范围较广,且树木点较为分散,相互之间距离较远),说明此时各类地物之间的可分性最好。由于数据2的强度范围为0~255,其强度的可分性较数据1差,且数据2的点密度比数据1小,因此数据2中cv与r之间的变化规律并不明显。但由图6(b)可以看出,r在虚线范围内变化时,cv趋于平稳。两个数据的平均点间距均在图中虚线范围内,为避免数据的特例性,选择点云的平均点间距作为r的最优取值。
(a) 数据1 (a) Data 1
(b) 数据2 (b) Data 2图6 r与cv之间的关系Fig.6 Relationship between r and cv
2)d与cv之间的关系如图7所示。由图7可以看出,对于数据1和数据2,在r和K固定的条件下,当d在图中虚线范围内变化时,cv达到最低值(树木和数据2中的水除外,数据2中水体的噪声点较多),并相对稳定,而该范围恰恰在平均点间距附近。这可解释为,当某点平移的距离为平均点间距时,一般会遇到自身的邻接点。若该点平移的距离d稍大或稍小于平均点间距时,与该点平移后的位置最近的邻接点应保持不变,从而不会影响点云纹理特征的计算结果。因此d的最优值同样可以选取为平均点间距。
(a) 数据1 (a) Data 1
(b) 数据2 (b) Data 2图8 K与cv之间的关系Fig.8 Relationship between K and cv
3)k与cv之间的关系如图8所示。由图8可以看出,在d和r固定的条件下,cv随着K的增加而线性增大。这是由于K越高,同一地物的点云纹理特征值取值的波动范围越大。cv越大,则不同地物之间的可分性也越强。但K值越大,计算量也越大。因此兼顾计算效率和点云纹理特征的可分性,选择压缩后的灰度等级K为64。
2.4 分类结果及评价
在图像处理领域,图像纹理可有效地应用于图像分类之中。而本文提出的点云纹理属性,同样可作为点云中点的特征值,辅助点云的高程和强度信息,应用于点云分类工作中。为验证点云纹理特征对地物分类的贡献,以数据1为例,利用经典的支持向量机(Support Vector Machine, SVM)[14]分类算法,并结合点云的高程、强度和点云纹理特征对点云进行分类,具体采用以下四种分类方案:①单纯利用高程信息;②单纯利用强度信息;③联合利用高程和强度信息;④联合利用高程、强度和点云纹理特征。
本文的SVM算法基于C++平台和LibSVM库[15]编程实现,SVM分类器的核函数选用线性核。由于该分类方法仅用于测试点云纹理特征约束点云分类的性能,算法中的惩罚系数C和参数γ均取较宽泛的值,C=1000,γ=0.000 1。将地物整体上分为:陆地、海水、房屋和除房屋外的地物(包括树木、电线和汽车等不规则地物)。选取的训练样本和验证样本的点数分别为23 964和74 383,且样本的选择兼顾了典型性和随机性。
单纯利用高程或强度属性进行地物分类的精度很低,分别为75.5%和61.9%,联合高程和强度信息可以将地物分类精度提高至89.4%,而增加了点云纹理信息后,分类精度可以进一步提高至95.0%,这说明在地物分类过程中,LiDAR点云的高程和强度信息都是不可或缺的,而点云纹理特征可以为地物分类起到重要的辅助作用,提高整体的地物分类精度。
进一步结合如图9所示的分类效果图进行分析,由图9(a)~(d)分别可以看出,单纯利用高程信息无法很好地将灌木、电线、汽车和栅栏等低矮地物与陆地区分,而且在海陆交接处对水陆的区分也存在偏差。单纯利用强度信息进行地物分类会使强度值相近的不同地物被错分为同一类,各类地物之间存在普遍的错分现象。联合高程和强度信息虽然能够较好地区分各类地物,但在海陆交界处对水陆的区分仍然存在偏差。而将点云纹理辅助高程和强度信息进行地物分类的效果最好,分类结果基本符合地物实际分布情况,尤其是对海浪和沙滩的区分更加准确。这也证明了将点云纹理特征辅助高程和强度信息进行地物分类,能有效改善分类效果。
(a) 方案1 (b) 方案2 (c) 方案3 (a) Scenario 1 (b) Scenario 2 (c) Scenario 3
(d) 方案4 (d) Scenario 4图9 各方案的地物分类结果Fig.9 Results obtained by using different classification scenarios
图10 联合利用DSM图像、强度图像和图像纹理特征的地物分类结果Fig.10 Results of land cover classification combined use DSM image, intensity image and image texture features
为证明基于离散点提取的点云纹理特征比基于栅格格式的图像纹理特征具有更好的区分地物的能力,还以SVM为基础算法,采用DSM图像+强度图像+图像纹理的特征属性组合方案进行了对比实验。该方法的训练样本和验证样本的分布与图9(d)分类方法中选取的样本分布一致,且SVM分类器中的参数也与之前的设置保持一致。图10为利用图像纹理特征约束的地物分类效果图,对比图9 (d)可以看出,两种方法的地物分类整体效果基本一致,这是因为两种方法采用了相同的参数设置和训练样本分布。但采用DSM图像+强度图像+图像纹理分类方案的分类精度为94.4%,稍低于利用点云纹理特征约束的地物分类精度,对比图9(d)和图10中区域Ⅰ~Ⅳ的细节图也可以看出,利用图像纹理约束进行地物分类时,一些小型地物(如图10中区域Ⅰ的栅栏、图10中区域Ⅱ的道路标志)和建筑物(图10中区域Ⅲ和Ⅳ)存在明显的错分现象,这就是由前文所述的“多义性”问题造成的。上述分析证明了点云纹理特征比图像纹理特征具有更好的区分地物的能力,可以有效避免像素与点之间的“多义性”问题。
3 结论
本文从图像处理领域的图像纹理特征计算方法出发,提出反映LiDAR数据中点与周围点属性分布情况的点云纹理特征属性。通过数据分析对点云纹理特征的三个参数进行优化,并利用SVM分类算法对点云纹理特征的地物分类能力进行验证。实验结果表明:利用点云纹理特征约束进行地物分类可以有效改善地物分类结果,其分类精度可以达到95.0%,尤其在水陆区分方面表现出优秀的性能。此外,相比于图像纹理特征约束下的地物分类方法,利用点云纹理特征进行约束的分类方法能有效避免像素与点之间的“多义性”问题,提高小型地物提取的准确性。点云纹理特征在小型地物的甄别和水陆的区分等方面所体现的优质特性,可以充分地应用到海岸带机载LiDAR数据的精细化分类、海岸带高精度DEM构建和海岸线提取等工作中。
但需要指出的是,所选取的LiDAR数据的地物类别和地形分布都较为简单,而且未对地物类别进行精细划分,因此即使使用较为经典的分类算法也可获得较高的分类精度。在下一步工作中将选取更为复杂的地形数据验证点云纹理特征的性能。此外,本文算法的运算效率尚需进一步提高,下一步工作还将尝试融入并行算法,以缩短整体运算时间。