遥感图像分类后处理.docx
《遥感图像分类后处理.docx》由会员分享,可在线阅读,更多相关《遥感图像分类后处理.docx(24页珍藏版)》请在冰豆网上搜索。
遥感图像分类后处理
遥感图像分类后处理
遥感图像分类后处理
一、实验目的与要求
监督分类和决策树分类等分类方法得到的一般是初步结果,难于达到最终的应用目的。
因此,需要对初步的分类结果进行一些处理,才能得到满足需求的分类结果,这些处理过程就通常称为分类后处理。
常用分类后处理通常包括:
更改分类颜色、分类统计分析、小斑点处理(类后处理)、栅矢转换等操作。
本课程将以几种常见的分类后处理操作为例,学习分类后处理工具。
二、实验内容与方法
1.实验内容
1.小斑块去除
●Majority和Minority分析
●聚类处理(Clump)
●过滤处理(Sieve)
2.分类统计
3.分类叠加
4.分类结果转矢量
5.ENVIClassic分类后处理
●浏览结果
●局部修改
●更改类别颜色
6.精度评价
1.实验方法
在ENVI5.x中,分类后处理的工具主要位于Toolbox/Classification/PostClassification/;
三、实验设备与材料
1.实验设备
装有ENVI5.1的计算机
2.实验材料
以ENVI自带数据"can_tmr.img"的分类结果"can_tmr_class.dat"为例。
数据位于"...\13数据\"。
其他数据描述:
•can_tmr.img——原始数据
•can_tmr_验证.roi——精度评价时用到的验证ROI
四、实验步骤
1.小斑块去除
应用监督分类或者非监督分类以及决策树分类,分类结果中不可避免地会产生一些面积很小的图斑。
无论从专题制图的角度,还是从实际应用的角度,都有必要对这些小图斑进行剔除或重新分类,目前常用的方法有Majority/Minority分析、聚类处理(clump)和过滤处理(Sieve)。
1)Majority和Minority分析
Majority/Minority分析采用类似于卷积滤波的方法将较大类别中的虚假像元归到该类中,定义一个变换核尺寸,主要分析(MajorityAnalysis)用变换核中占主要地位(像元数最多)的像元类别代替中心像元的类别。
如果使用次要分析(MinorityAnalysis),将用变换核中占次要地位的像元的类别代替中心像元的类别。
下面介绍详细操作流程:
(1)打开分类结果——"\12.分类后处理\数据\can_tmr_class.dat";
(2)打开Majority/Minority分析工具,路径为Toolbox/Classification/PostClassification/Majority/MinorityAnalysis,在弹出对话框中选择"can_tmr_class.dat",点击OK;
(3)在Majority/MinorityParameters面板中,点击SelectAllItems选中所有的类别,其他参数按照默认即可,如下图所示。
然后点击Choose按钮设置输出路径,点击OK执行操作。
图1Majority/MinorityParameters面板参数设置
(4)查看结果如图所示,可以看到原始分类结果的碎斑归为了背景类别中,更加平滑。
注:
参数说明如下
∙SelectClasses时,用户可根据需要选择其中几个类别;
∙如果选择AnalysisMethods为Minority,则执行次要分析;
∙KernelSize为核的大小,必须为奇数×奇数,核越大,则处理后结果越平滑;
∙中心像元权重(CenterPixelWeight)。
在判定在变换核中哪个类别占主体地位时,中心像元权重用于设定中心像元类别将被计算多少次。
例如:
如果输入的权重为1,系统仅计算1次中心像元类别;如果输入5,系统将计算5次中心像元类别。
权重设置越大,中心像元分为其他类别的概率越小。
图2原始分类结果(左),Majority分析结果(右)
2)聚类处理(Clump)
聚类处理(clump)是运用数学形态学算子(腐蚀和膨胀),将临近的类似分类区域聚类并进行合并。
分类图像经常缺少空间连续性(分类区域中斑点或洞的存在)。
低通滤波虽然可以用来平滑这些图像,但是类别信息常常会被临近类别的编码干扰,聚类处理解决了这个问题。
首先将被选的分类用一个膨胀操作合并到一块,然后用变换核对分类图像进行腐蚀操作。
下面介绍详细操作流程:
(1)打开分类结果——"\分类后处理\数据\can_tmr_class.dat";
(2)打开聚类处理工具,路径为Toolbox/Classification/PostClassification/ClumpClasses,在弹出对话框中选择"can_tmr_class.dat",点击OK;
(3)在ClumpParameters面板中,点击SelectAllItems选中所有的类别,其他参数按照默认即可,如下图所示。
然后点击Choose按钮设置输出路径,点击OK执行操作。
图3ClumpParameters面板参数设置结果
(4)查看结果如下图所示,可以看到原始分类结果的碎斑归为了背景类别中,更加平滑。
注:
参数说明如下
∙SelectClasses时,用户可根据需要选择其中几个类别;
∙OperatorSizeRows和Cols为数学形态学算子的核大小,必须为奇数,设置的值越大,效果越明显。
图4原始分类结果(左),聚类处理结果(右)
3)过滤处理(Sieve)
过滤处理(Sieve)解决分类图像中出现的孤岛问题。
过滤处理使用斑点分组方法来消除这些被隔离的分类像元。
类别筛选方法通过分析周围的4个或8个像元,判定一个像元是否与周围的像元同组。
如果一类中被分析的像元数少于输入的阈值,这些像元就会被从该类中删除,删除的像元归为未分类的像元(Unclassified)。
下面介绍详细操作流程:
(1)打开分类结果——"\12.分类后处理\数据\can_tmr_class.dat";
(2)打开过滤处理工具,路径为Toolbox/Classification/PostClassification/SieveClasses,在弹出对话框中选择"can_tmr_class.dat",点击OK;
(3)在SieveParameters面板中,点击SelectAllItems选中所有的类别,GroupMinThreshold设置为5,其他参数按照默认即可,如下图所示。
然后点击Choose按钮设置输出路径,点击OK执行操作;
图5SieveParameters面板参数设置
(4)查看结果如下图所示,可以看到原始分类结果的碎斑归为了背景类别中,更加平滑。
注:
参数说明如下
∙SelectClasses时,用户可根据需要选择其中几个类别;
∙过滤阈值(GroupMinThreshold),一组中小于该数值的像元将从相应类别中删除,归为未分类(Unclassified);
∙聚类领域大小(NumberofNeighbors),可选四连通域或八连通域。
分别表示使用中心像元周围4个或8个像元进行统计。
图6原始分类结果(左),过滤处理结果(右)
2.分类统计
分类统计(Classstatistics)可以基于分类结果计算源分类图像的统计信息。
基本统计包括:
类别中的像元数、最小值、最大值、平均值以及类中每个波段的标准差等。
可以绘制每一类对应源分类图像像元值的最小值、最大值、平均值以及标准差,还可以记录每类的直方图,以及计算协方差矩阵、相关矩阵、特征值和特征向量,并显示所有分类的总结记录。
下面介绍详细操作流程:
(1)打开分类结果和原始影像——"\12.分类后处理\数据\can_tmr_class.dat"和"can_tmr.img";
(2)打开分类统计工具,路径为Toolbox/Classification/PostClassification/ClassStatistics,在弹出对话框中选择"can_tmr_class.dat",点击OK;
(3)在StatisticsInputFile面板中,选择原始影像"can_tmr.img",点击OK;
(4)在弹出的ClassSelection面板中,点击SelectAllItems,统计所有分类的信息,点击OK;
注:
可根据需要只选择分类列表中的一个或多个类别进行统计。
(5)在ComputeStatisticsParameters面板可以设置统计信息(如下图所示),按照图中参数进行设置,点击ReportPrecision…按钮可以设置输入精度,按默认即可。
点击OK;
图7统计结果参数设置面板
注1:
统计功能包含三种统计类型,分别为:
∙基本统计(BasicStats):
基本统计信息包括所有波段的最小值、最大值、均值和标准差,若该文件是多波段的,还包括特征值。
∙直方图统计(Histograms):
生成一个关于频率分布的统计直方图,列出图像直方图(如果直方图的灰度小于或等于256)中每个DN值的Npts(点的数量)、Total(累积点的数量)、Pct(每个灰度值的百分比)、和AccPct(累积百分比)。
∙协方差统计(Covariance):
协方差统计信息包括协方差矩阵和相关系数矩阵以及特征值和特征向量,当选择这一项时,还可以将协方差结果输出为图像(CovarianceImage)。
注2:
输出结果的方式有三种:
输出到屏幕显示(OutputtotheScreen)、生成一个统计文件(.sta)和生成一个文本文件。
其中生成的统计文件可以通过以下工具打开:
∙ENVI5.x:
Toolbox/Statistics/ViewStatisticsFile
∙ENVIClassic:
Classification>PostClassification>ViewStatisticsFile
(6)如下图所示为显示统计结果的窗口,统计结果以图形和列表形式表示。
从SelectPlot下拉命令中选择图形绘制的对象,如基本统计信息、直方图等。
从Statsfor标签中选择分类结果中类别,在列表中显示类别对应输入图像文件DN值统计信息,如协方差、相关系数、特征向量等信息。
在列表中的第一段显示的为分类结果中各个类别的像元数、占百分比等统计信息。
图7显示统计结果的窗口
3.分类叠加
分类叠加(OverlayClasses)功能,可以将分类结果的各种类别叠加在一幅RGB彩色合成图或者灰度图像上,从而生成一幅RGB图像。
如果要想得到较好的效果,在叠加之前,背景图像经过拉伸并保存为字节型(8bit)图像,下面是具体操作过程。
(1)打开分类结果和原始影像——"\分类后处理\数据\can_tmr_class.dat"和"can_tmr.img";
注:
这里将原始影像的真彩色图像作为背景图像。
(2)打开拉伸工具(Toolbox/RasterManagement/StretchData),在弹出的对话框中选择"can_tmr.img"文件,然后点击下方的SpectralSubset(如下图所示),在弹出面板中选择波段1、2、3,点击OK;
图8选择拉伸文件和波段选择
(3)在DataStretching面板中,按照下图进行参数设置,点击OK即可;
图9拉伸参数设置
(4)打开分类叠加工具,路径为Toolbox/Classification/PostClassification/OverlayClasses;
(5)在打开的InputOverlayRGBImageInputBands面板中,R、G、B分别选择拉伸结果"can_tmr_background.dat"的band3、2、1,点击OK;
注:
如果需要一个灰度背景,为RGB三个通道输入同样的波段即可。
图10选择背景图像的RGB波段组合
(6)在ClassificationInputFile面板中选择分类图像"can_tmr_class.dat",点击OK;
(7)在ClassOverlaytoRGBParameters面板中选择要叠加显示的类别(如下图所示),这里选择林地、裸地、沙地三个类别,设置输出路径,点击OK即可。
注:
按住Ctrl键,点击鼠标左键可以实现多选。
图11选择要叠加显示的类别
(8)查看叠加结果,如下图所示。
注:
可以通过File>SaveAs将"can_tmr_overlay.dat"转换为TIFF格式,这样使用普通图片查看器便可以进行浏览,并保持了背景拉伸效果与原始类别颜色。
图12叠加效果
4.分类结果转矢量
可以利用ENVI提供的ClassificationtoVector工具,将分类结果转换为矢量文件,下面介绍详细操作步骤:
(1)打开分类结果——"\12.分类后处理\数据\can_tmr_class.dat";
(2)打开转矢量工具,路径为Toolbox/Classification/PostClassification/ClassificationtoVector;
(3)在RastertoVectorInputBand面板中,选择"can_tmr_class.dat"文件的波段,点击OK;
(4)在RastertoVectorParameters面板中设置矢量输出参数。
这里选择林地和沙地两个类别,设置输出路径,点击OK即可。
注:
Output可选SingleLayer和OneLayerperClass两种情况。
如果选择SingleLayer,则所有的类别均输出到一个evf矢量文件中;如果选择OneLayerperClass,则每一个类别输出到一个单独的evf矢量文件中。
图13输出矢量参数设置
(5)查看输出结果,打开刚才生成的evf文件,并加载到视图中。
可以在图层列表右键点击矢量文件名(如下图左),选择Properties,在弹出面板中可以根据Class_Name修改不同类别的颜色,如下图(右)所示,修改林地和裸地分别为红色和蓝色,点击OK,最终效果如图所示。
图14设置矢量图层属性
图15矢量显示最终效果
5.ENVIClassic分类后处理
以上的分类后处理在ENVIClassic和ENVI5.x版本中均能完成,操作步骤基本一致。
本节的操作需要在ENVIClassic下完成的,主要为局部手动修改、更改类别颜色等。
1)浏览结果
打开ENVIClassic,使用File>OpenImageFile打开"can_tmr.img"和"can_tmr_class.dat"。
在显示"can_tmr.img"的Display中,选择Overlay>Classification,打开InteractiveClassToolInputFile面板中选择"can_tmr_class.dat",将分类结果叠加显示在Display上。
如下图所示,可以勾选复选框进行类别的叠加显示。
图16InteractiveClassTool面板
2)局部修改
对于局部错分、漏分的像元,可以手动进行修改。
在InteractiveClassTool面板可利用两个工具进行修改。
∙将一定范围内像元都并入其他一个类别中
(1)在InteractiveClassTool面板中,选择Edit>Mode:
PolygonAddtoClass;
(2)在InteractiveClassTool面板中,鼠标左键单击"Unclassified"前面的方型色块,让"Unclassified"类别处于激活状态;
(3)选择一个编辑窗口:
Image,在Image窗口中绘制多边形,多边形以内的像元全部归于"Unclassified"一类。
图17设置激活类别
∙将一定范围内某一类像元并入其他一类中
(1)在InteractiveClassTool面板中,选择Edit>Mode:
PolygonDeletefromClass;
(2)选择Edit>SetdeleteclassValue,选择并入的目标类,以林地为例,如下图所示;
图18设置删除归入的目标类别
(3)在InteractiveClassTool面板中,鼠标左键单击"Unclassified"前面的方型色块,让"Unclassified"类别处于激活状态。
(4)选择一个编辑窗口:
Image,在Image窗口中绘制多边形,多边形以内的类别"Unclassified"全部归于"林地"。
(5)选择Edit>UndoChanges,可以取消修改,选择File>SavechangestoFile,可以将修改结果保存。
3)更改类别颜色
(1)在InteractiveClassTool面板中,选择Option>Editclasscolors/names,如下图所示,直接在对应的类别中修改颜色。
(2)在ClassColorMapEditing面板中选择RGB、HLS或HSV其中一种颜色系统。
单击"Color"按钮选择标准颜色,或者通过移动颜色调整滑块分别调整各个颜色分量定义颜色。
选择Options>ResetColorMapping,可以恢复初始值。
注:
也可以根据一个显示的RGB影像来自动分配类别颜色,打开主菜单>Classification>PostClassification>AssignClassColors。
图19分类颜色和名字的更改
6.精度评价
常用的精度评价的方法有两种:
一是混淆矩阵;二是ROC曲线。
其中,比较常用的为混淆矩阵,ROC曲线可以用图形的方式表达分类精度,比较形象。
真实参考源可以使用两种方式:
一是标准的分类图;二是选择的感兴趣区(验证样本区)。
两种方式的选择都可以通过以下工具实现:
∙ENVI5.x:
/Classification/PostClassification/ConfusionMatrixUsing…和ROCCurvesUsing…
∙ENVIClassic:
Classification>PostClassification>ConfusionMatrix和ROCCurves
真实的感兴趣区参考源的选择可以是在高分辨率影像上选择,也可以是野外实地调查获取,原则是确保类别参考源的真实性。
验证样本选择方法和训练样本的选择过程是一样的,这里不再赘述,直接使用"\12.分类后处理\数据\can_tmr_验证.roi"作为验证样本。
下面以ENVI5.1为例,介绍详细操作步骤:
(1)打开分类结果影像——"\12.分类后处理\数据\can_tmr_class.dat";
(2)打开验证样本,打开File>Open,选择"\12.分类后处理\数据\can_tmr_验证.roi",在弹出的FileSelection对话框(如下图所示)中选择"can_tmr_class.dat",点击OK;
图20选择与ROI绑定的文件
(3)选择混淆矩阵计算工具,路径为Toolbox/Classification/PostClassification/ConfusionMatrixUsingGroundTruthROIs,在弹出面板中选择"can_tmr_class.dat",点击OK;
(4)软件会根据分类代码自动匹配,如不正确可以手动更改(下图左)。
点击ok后选择混淆矩阵显示风格(像素和百分比,下图右);
图21验证操作面板
(5)点击OK,就可以得到精度报表(如下图所示)。
图21分类精度评价混淆矩阵
这里说明一下混淆矩阵中的几项评价指标,如下:
∙总体分类精度
等于被正确分类的像元总和除以总像元数。
被正确分类的像元数目沿着混淆矩阵的对角线分布,总像元数等于所有真实参考源的像元总数,如本次精度分类精度表中的OverallAccuracy=(2258/2346)96.2489%
∙Kappa系数
它是通过把所有真实参考的像元总数(N)乘以混淆矩阵对角线(XKK)的和,再减去某一类中真实参考像元数与该类中被分类像元总数之积之后,再除以像元总数的平方减去某一类中真实参考像元总数与该类中被分类像元总数之积对所有类别求和的结果。
Kappa计算公式如下:
∙错分误差
指被分为用户感兴趣的类,而实际属于另一类的像元,它显示在混淆矩阵里面。
本例中,总共划分为林地有441个像元,其中正确分类418个,23个是其他类别错分为林地(混淆矩阵中林地一行其他类的总和),那么其错分误差为23/441=5.22%。
∙漏分误差
指本身属于地表真实分类,当没有被分类器分到相应类别中的像元数。
如在本例中的林地类,有真实参考像元419个,其中418个正确分类,其余1个被错分为其余类(混淆矩阵中耕地类中一列里其他类的总和),漏分误差1/419=0.24%
∙制图精度
是指分类器将整个影像的像元正确分为A类的像元数(对角线值)与A类真实参考总数(混淆矩阵中A类列的总和)的比率。
如本例中林地有419个真实参考像元,其中418个正确分类,因此林地的制图精度是418/419=99.76%。
∙用户精度
是指正确分到A类的像元总数(对角线值)与分类器将整个影像的像元分为A类的像元总数(混淆矩阵中A类行的总和)比率。
如本例中林地有418个正确分类,总共划分为林地的有441,所以林地的用户精度是418/441=94.78%。
注:
监督分类中的样本选择和分类器的选择比较关键。
在样本选择时,为了更加清楚的查看地物类型,可以适当的对图像做一些增强处理,如主成分分析、最小噪声变换、波段组合等操作,便于样本的选择;分类器的选择需要根据数据源和影像的质量来选择,比如支持向量机对高分辨率、四个波段的影像效果比较好。