陆海霞 何江 刘立
摘 要:文章分别使用基于像元和基于对象的KNN分类器算法对1024*1024像元大小的宁夏中卫市地区15m空间分辨率Landsat8融合影像进行分类,比较二者分类效率和准确率,探讨其在影像分类上的不同。研究表明无论是基于对象还是基于像元的KNN分类器算总体分类精度都在90%以上。但基于对象的KNN分类器算法相比基于像元的总体分类精度提高1.9%,Kappa系数提高0.026。且使用相同的训练样本进行训练和分类,基于对象的KNN分类器算法仅耗时0.281秒,而基于像元的KNN分类器算法耗时53分7.275秒。
关键词:基于对象;KNN分类器;影像分类
中图分类号:K90 文献标志码:A 文章编号:2095-2945(2019)11-0027-04
Abstract: This paper uses the pixel-based and object-based KNN classifier algorithm to classify the 15m spatial resolution Landsat8 fusion image of Ningxia Zhongwei City with a 1024*1024pixel size, compare the classification efficiency and accuracy, and explore its image classification.The research shows that the overall classification accuracy of both the object-based and pixel-based KNN classifiers is above 90%. However, the object-based KNN classifier algorithm improves the overall classification accuracy by 1.9% and the Kappa coefficient by 0.026. And using the same training samples for training and classification, the object-based KNN classifier algorithm only takes 0.281 seconds, while the pixel-based KNN classifier algorithm takes 53 minutes and 7.275 seconds.
Keywords: object-based; KNN classifier; image classification
引言
機器学习法是一种从海量数据中自动或半自动寻找模式的过程,一旦模式被发现,则具有重复性,不同的解译人员,将该模式应用到其它类似的数据上可以得到相同的结果。大大提高了工作效率的同时结果的可信度具有可比性[1]。目前常用的机器学习法有:决策树、人工神经网络、KNN、支持向量机、随机森林等。
KNN分类算法是一种典型的非参数学习方法,因其实现的简单性及较高的分类精度[2,3]在许多领域得到广泛的应用,一直是数据挖掘、机器学习和统计模式识别研究中的热点问题[4]。算法考察与待分类样本最相似的K个样本,根据这K个样本的类别属性来确定待分类样本的类别,而最相似的K个样本是通过待分类样本和训练样本之间的距离来确定的[5]。在K近邻分类器中,K值的选择很重要,K值选择如果过小,不能充分体现待分类样本的特点,但当K值选择过大时,一些和待分类样本并不相似的样本也被包含进来,导致分类效果降低[6]。
其也存在一些不足:KNN是种惰性的学习方法,它缓存所有训练样本,直到待分类数据需要分类时才建立分类,它存放所有的训练样本,直到测试样本需要分类时才建立分类,当训练集规模较大或维度较高时,会导致分类效率低下[7,8]。传统基于像元的分类方法是以像元为单位来进行影像处理,当影像区域较大时,将严重影响分类效率。而基于对象的影像分析是以对象为基元而不是像元进行影像分类,除了能充分利用地物的光谱、纹理、形状、大小和上下文等信息的优点之外,它能大大减少影像处理的数a宁夏中卫市地区的Landsat8融合数据为数据源,使用KNN分类器分别执行基于像元和基于对象的分类,比较在使用相同的训练样本、验证样本和特征数据集的情况下影像的分类特点,探讨集成基于对象影像分析与KNN算法的多光谱遥感影像分类的优势。
1 研究区概况和数据准备
1.1 研究区概况
研究区位于宁夏中卫市西部,属半干旱气候,具有典型的大陆性季风气候和沙漠气候的特点,干旱少雨。研究区的经纬度范围为105°12′E~105°22′E,37°27′N~35°35′N。研究区的南部为黄河,水源丰富,因此,该区域虽然降雨量少,但灌溉农业发展,分布着大片的水稻田和水浇地[9]。研究区土地覆被类型丰富,主要土地覆被类型有水稻田、水浇地、水域用地、居民地、裸岩地和日光温室等。
1.2 数据准备及预处理
本次研究的数据源是宁夏中卫市2013年6月18日的Landsat8数据。Landsat8卫星携带了两个传感器:陆地成像仪(OLI)和热红外传感器(TIRS)。OLI陆地成像仪包括9个波段,分别是多光谱波段(海岸波段、蓝波段、绿波段、红波段、近红外波段、短波红外波段1和2,30m),全色波段(15m)和卷云波段(30m)。TIRS包括两个热红外波段,空间分辨率为100m。本次研究所用的波段为OLI传感器上的多光谱波段以及全色波段数据。
数据预处理包括几个方面:(1)辐射定标与大气校正:在遥感图像处理平台(ENVI5.3)中对其进行辐射定标和Flaash大气校正获得地表反射率数据,消除由于传感器本身产生的误差和大气辐射影响等非地物变化引起的图像辐射值改变。(2)影像融合:将经过Flaash大气校正的多光谱数据与全色辐射定标得到的表观反射率数据进行融合,得到空间分辨率为15米的多光谱融合数据,所用的方法为Gram-Schmidit算法。(3)研究区裁剪:在空间分辨率为15m的多光谱融合影像上裁剪得到1024*1024像元的子区。
2 原理、方法和步骤
2.1 影像分割-多分辨率分割算法
在基于对象影像分析法中,多分辨率分割算法可有效融入影像的光谱、纹理、形状等特征信息,使同质像元构成大小不同的分割对象,是一种基于区域增长的分割算法,使得内部的一致性以及相邻分割对象间的异质性均达到最大[10]。
eCognitionDeveloper软件中多分辨率分割算法的主要参数包括尺度因子(Scale)、形状因子(Shape)、紧凑度因子(Compactness)。可通过组合3个不同值的参数可以确定影像的分割结果。尺度因子决定单个对象内允许的最大异质性。其中,尺度因子决定影像对象的平均大小,理论上,尺度因子越大,影像对象越大,尺度因子越小,影像对象越小。
形状参数和光谱参数是形状因子的两个构成指标,二者参数和为1,此消彼长,共同决定形状因子的大小,进而在一定程度上影响着所形成的分割多边形的的形状。光滑度和紧凑度的参数之和为1,是紧凑度因子的两个构成元素,二者在紧凑度因子中各自所占的权重比组合可改变紧凑度因子,进而影响可改善分割多边形的形状,起到优化分割结果的作用。
2.2 KNN分类算法原理
2.3 精度评价原理
本文使用eCognition9.0软件提供的Error Matrix based on Samples精度评价方法进行分类精度评价。精度评价的结果包括三个部分,分别是混淆矩阵、单一类别的精度评价结果和总体类别的精度评价结果。
2.4 研究步骤
本次研究包括五个基本步骤:(1)数据预处理。包括
FLAASH大气校正、影像融合和裁剪等步骤。(2)影像分割。基于对象KNN分类算法进行分类时,使用ENVI软件中基于边缘检测的分水岭分割算法进行分割。而用基于像元的KNN分类器算法进行分类时,使用棋盘格分割算法,把分割尺度设为1,将影像分割成单个像元。(3)训练样本和验证样本的选择。将在ENVI中得到的分割结果导入到Arcgis10.2中进行样本的选择。在选择样本的时候,通过在属性表中添加两个文本字段用来标记不同土地覆被类型的训练样本和验证样本。(4)基于KNN分类器进行分类。将预处理后的研究区影像数据以及在ENVI中分割并在Arcgis10.2.中标记了训练样本和验证样本的矢量数据作为专题数据加载到eCognition9.0中,完全依据矢量专题数据对影像进行分割。创建两个图层,一层中导入训练样本(L1)进行基于KNN分类器的影像分类,另一层导入验证样本(L2)用于精度评价。本步骤共执行两次,第一次是基于对象的KNN分类器分类,第二次是基于像元(即将影像分割成单个像元)的KNN分类器分类。(5)精度评价。使用混淆矩阵、生产者精度、用户精度、Hellden精度和Short精度以及条件Kappa系数对每一类土地覆被类型进行精度评价,并用总体精度和Kappa系数评价总体的分类精度。
3 结果分析
分别使用基于像元的KNN分类器算法和基于对象的KNN分类器算法对影像进行分类,分类时使用相同的训练样本和特征数据集,所得到的分类结果如图1所示。从图中可以看出,基于像元的方法的分类结果“椒盐现象”特别明显,而基于对象的分类结果有效的避免了“椒盐现象”,分类结果更为完整。
使用相同的验证样本对分类结果进行精度评价,得到基于像元的KNN分类器算法的总体精度为91.7%,Kappa系数为0.895,而基于对象的KNN分类器算法的总体精度为93.6%,Kappa系数为0.921,相比基于像元的分类算法总体精度和Kappa系数都有所提高,说明影像的分类的总体分类精度相比于基于像元的分类算法有所改善。
从混淆矩阵中可以看出,基于像元的KNN分类器算法,几乎各个土地覆被类型之间都有相互混淆的像元,类别之间的可分性比较差。而基于对象的KNN分类算法,除了个别土地覆被类型(不透水表面和裸地,水浇地和日光温室)之间出现部分混淆之外,大多数地物的之间都没有出现混淆现象,说明各个土地覆被类型的分类精度都有所提高。
对比各个土地覆被类型在基于像元的KNN分类器算法和基于对象的KNN分类器算法的生产者精度、用户精度、Hellden精度、Short精度以及条件Kappa系数(表1-2)。可以发现除裸地的各个精度指标有所降低之外,其他土地覆被类型的各项指标值都有所提高,说明相比基于像元的KNN分类算法有所提高。
从分类的效率来说,基于对象的KNN分类器算法的效率远远大于基于像元的KNN分类器算法。据统计,本次研究中基于对象的KNN分类算法整个分类过程耗时仅为0.218秒,而基于像元的KNN分类器算法耗时53分7.275秒,基于对象的KNN分类器算法大大减少了计算开销。使用KNN分类器算法进行分类时,K值的设定对分类结果的影响较大,需要通过反复试验选择合适的K值,才能得到较优的分类结果。另外,特征参数组合的选择对分类结果的影响也比较关键,并非特征参数选择的越多得到的分类结果就越好,因此,选择一个有效的方法来获取最优的特征参数组合,可以有效的优化分类结果的精度。
综合上述分析结果,不论是基于像元还是基于对象的KNN分类器算法所得的分类结果的精度都比较高,但可以看出集成基于对象影像分析的KNN分类器算法相比基于像元的KNN分类器算法而言具有很大的优势,不仅有效的避免了“椒盐现象”,更能满足制图的需要,同时提高了分类的效率和准确率,对于大数据量的影像分类处理优势尤为明显。
4 结论和讨论
综合上述研究结果,可以得出以下结论:
(1)KNN分类器算法是一个分类精度较高的分类器算法,无论是基于对象还是基于像元进行分类,都能取得较高的分类精度。在本次研究中其总体分类精度都达到了0.9以上,Kappa系数都在0.85以上。
(2)相比基于像元的KNN分类器算法,基于对象的
KNN分类器算法具有较大的优势。基于对象的KNN分类器算法不仅有效的避免了分类的“椒盐现象”,同时还一定程度上提高了分类精度,并且大大提供了分类的效率。
(3)基于像元的KNN分类器算法,训练样本的选择以及K值的设定对分类精度影响特别明显。因此选择合适的训练样本和设定有效的K值是KNN分类器算法的关键所在。
(4)分类特征数据集的选择对KNN分类器算法的分
类精度也比较关键,并非选择的特征越多得到的分类结果就越好。因此,需要寻找一个有效的方法找到最优的特征组合,才能使最终的分类结果更加精确。
KNN分类器算法虽然具有较高的分类精度,但对于大区域影像数据的计算消耗仍然很大,分类效率较低,需要进一步改进算法来提高的分类效率。另外,如何选择训练样本和设定K值以及选择最优的特征参数组合,目前尚未有比较通用的方法,需要进一步进行研究。
参考文献:
[1]张著英,黄玉龙,王翰虎.一个高效的KNN分类算法[J].计算机科学,2008,35(3):170-172.
[2]WITTEN I H, FRANK E. Data Mining: Practical machine learning tools and techniques[M]. Morgan Kaufmann, 2005.
[3]WU X, KUMAR V, QUINLAN J R, et al. Top 10 algorithms in data mining[J]. Knowledge and Information Systems, 2008,14(1):1-37.
[4]冷明伟,陈晓云,谭国律.基于小样本集弱学习规则的KNN分类算法倡[J].计算机应用研究,2011,28(3).
[5]朱彪.基于KNN的地基可见光云图分类方法研究[D].成都信息工程学院,2012.
[6]闫晨.KNN文本分类研究[D].秦皇岛:燕山大学,2010.
[7]丁应逵.训练样本分布不均的KNN分类改进算法[J].价值工程,2014,33(2):180-182.
[8]熊忠阳,杨营辉,张玉芳.基于密度的kNN分类器训练样本裁剪方法的改进[J].计算机应用,2010,30(3):799-801.
[9]孙宇翼.基于对象影像分析的多源遥感影像湿地信息提取方法及其尺度效应研究[D].兰州大学,2016.
[10]王露,刘庆元.高分辨率遥感影像多尺度分割中最优尺度选取方法综述[J].测绘与空间地理信息,2015(3):166-169.
[11]余鹰,苗夺谦,刘财辉,等.基于变精度粗糙集的KNN分类改进算法[J].模式识别与人工智能,2012,25(4):617-623.