遥感影像处理实习3.docx
《遥感影像处理实习3.docx》由会员分享,可在线阅读,更多相关《遥感影像处理实习3.docx(19页珍藏版)》请在冰豆网上搜索。
遥感影像处理实习3
实习序号及题目
实习3——遥感影像反差增强
实习人姓名
任课教师姓名
实习地点
榆中校区实验楼
A109
实习日期时间
2012年11月14日
实习目的
1、理解遥感影像辐射增强的概念和意义,掌握运用ENVI进行辐射增强步骤和方法。
2、提高目视解译和提取单波段遥感影像地学信息的能力。
3、初步学会使用ROI进行像元采样分析。
实习内容
1、利用ROI工具分别选取水体、农田样本,并利用四种拉伸方法作交互式对比度拉伸以突出黄河水面信息,并以其他文件名加以保存。
线性拉伸(linear)、分段线性拉伸(piecewiselinear)、高斯拉伸(gaussioan)、直方图均衡化拉伸(equalization);
2、直方图匹配,使一幅影像的所有波段的直方图与另一幅影像对应波段的直方图结构类似,并使用Link工具将分别在两个视窗中打开的匹配前后影像链接起来,并实现联动,查看匹配前后的影像直方图信息;
3、利用MODIS数据坏道填补。
针对MODIS原始影像扫描成像特点对其原始数据进行积处理,以达到去除扫描条带的目的。
基本原理
1、反差拉伸:
通过调整影像像元显示亮度值的方法来改变影像对比度,从而改善影像质量和视觉效果的处理方法,亦称为辐射增强(RadiometricEnhancement),或者对比度增强;反差拉伸在算法实质上就是基于某一线性或非线性函数变换关系式逐一完成影像像元的运算,从而得到一景新的影像。
并且,新影像灰度动态度(值域)原则上要大于原影像灰度的动态度。
2、线性反差拉伸:
按比例扩大原始灰度级的范围使变换后,影像的直方图的黑白两端达到极值,以充分利用显示设备的动态范围。
实现方法:
最小—最大值反差拉伸a1=min、a2=max;线性百分比和标准差反差拉伸,a1=在累积直方图中从最小灰度级开始起算,小于某一百分比或x倍标准差的像元总数的对应灰度级a2=在累积直方图中从最高灰度级开始起算,小于某一百分比或标准差的像元总数的对应灰度级;
3、分段线性拉伸:
将1~255整个灰级区间分成若干直线段,每一个直线段都有一个局部的线性变换关系。
分段线段的端点(或连接点)称为断点,两个相邻的断点就组成断点对。
对于多峰值影像进行分段线性拉伸会取得理想的效果;
4、直方图均值化拉伸:
针对原始影像数据往往相对比较集中地分布在局部一些波段的特点,利用累积直方图作为影像变换函数,将大约相等数量的像元分配到各个输出灰度级上,实现影像信息的均衡显示。
5、直方图匹配:
使一幅影像的直方图变成规定形状的直方图而对影像进行变换的增强操作。
由此产生的影像与供提取规定形状直方图的参考影像在灰阶/色调特征上更加接近。
规定直方图的形式:
一幅参考影像的直方图;特定函数形式的直方图。
方法:
对两个直方图都做均衡化,变成相同的归一化的均匀直方图。
以此均匀直方图为基准变换关系式,再对待变换的影像做均衡化的逆运算。
目前主要用于影像镶嵌制图。
6、影像镶嵌:
将两幅或多幅影像拼接起来形成一幅无缝合成影像的过程。
条件:
统一的影像投影和坐标系、统一的空间分辨率、统一的波段组合、统一的辐射特征
实施步骤:
将每景影像进行几何精纠正,使之保持地图投影和坐标系的统一;在条件允许的情况下完成大气辐射校正,保持待镶嵌影像之间在辐射特征上的统一;选定其中一景作为基准影像。
按照基准影像的直方图对所要进行镶嵌的其他影像进行直方图匹配,使它们具有相近的灰度分布特征;对相邻图幅边界进行羽化处理,取边界两侧一定范围内重叠部分像元的灰度平均值代替基准影像和匹配影像的值;生成结果影像;
数据准备
1、反差拉伸:
整景影像LT51310352009209IKR00;
2、直方图匹配:
wasia1_mss,wasia2_mss;
3、去条带:
MODIS数据;
操作方法及过程
1、裁剪子区:
basictools→resizedata选择整景影像→spatialsubset选择image裁剪一个2500*2500的子区,注意子区中要包含水体、农田等地物。
重采样方法选择双线性内插法→choose生成子区影像如下:
2、查看子区信息:
双击影像;
scrnRGB:
拉伸后RGB的DN值(默认为2%的裁剪拉伸);
Data:
RGB对应的原始DN值;
2%的裁剪拉伸是基于直方图分布,对于图像DN值分布在2%和98%之间的做线性拉伸。
及拉伸时出去小于2%和大于98%的值,这样做的结果是绝大多数的异常值会在拉伸时舍弃,显示出漂亮直观的效果。
也可以查看没有拉伸的原始影像:
enhance→[scroll]0-255拉伸,查看结果:
我们发现第一行和第五行的RGB数值显示一致,观察到没有经过拉伸的影像明显偏暗,这样不利于我们查看影像和进行目视解译,对于选择ROI也很不利,因此ENVI系统默认在打开一幅遥感影像的时候要进行2%的裁剪拉伸。
当然可以改变系统默认来修改:
file→preference→displaydefaultsdisplaydefaultsstreth进行修改。
这里有其他选项诸如分段拉伸、高斯拉伸、均值化拉伸等,也可以根据需要自己进行设定拉伸的百分比。
3、计算NDVI,操作:
basictools→bandmath;
注意:
表达式是有要求的!
查看“存在问题与解决办法”
(1)、将六个波段DN值进行变成浮点型,表达式:
float(b1):
输入表达式→addtolist选中后点击OK;
在这里要点击mapvariabletoinputfile选中子区影像,否则只选择一个波段例如b1,就不会产生预期的结果;在这里b1并不代表第一波段,与下面第二个表达式是有区别的。
得到结果后查看影像信息:
(2)、计算NDVI,表达式:
float(b4-b3)/(b4+b3);
输入表达式→addtolist选中后点击OK;
这里找到上一步生成的影像,将第三波段添加到b3,第四波段添加到b4,如果不慎添加错误,选中后点击clear后重新加载。
得到生成结果查看影像信息:
(3)、观察到现在的data数值存在小于0的部分,因此将data*10000后变成整数得到合适的结果,表达式:
fix(b1*10000);
输入表达式→addtolist选中后点击OK;
选择上一步中生成的影像,因为之后一个波段,所以直接添加;choose输出后查看结果和影像信息;
4、利用ROI工具分别选取水体、农田样本,并利用四种拉伸方法作交互式对比度拉伸以突出河水面信息;
ROI工具介绍:
window:
所提取的窗口;
横轴依次为:
ROI名称、颜色、包含的像元数、面层个数和像元数,线层个数和像元数、点曾层数和像元数
Newregion:
新建新区域;goto:
转到区域;deletepart:
删除部分区域;
Stats:
统计;grow:
;pixel:
;deleteROI:
删除ROI;
Selectall:
选择全部;hideRCIs:
隐藏ROI;
选择ROI鼠标操作:
左击选取,右击合并首尾,再一次右击完成;
注意:
要分清楚到底是在哪一个窗口中操作,在哪一个影像中操作(如果一次打开多个影像);
A、提取农田:
(1)、在影像中右击→ROItools
在选择面层的时候要在影像的多个区域选取农田,另外要灵活运用三个窗口选择和off的合作操作,大区域选择image,小区域选择zoom等,选择完毕之后要选择off,否则不正当操作可能造成结果的错误。
(2)、点击stats查看统计结果:
查看到农田的data一般分布于2482——6666之间。
(3)、进行线性拉伸(linear),操作:
enhance→交互式拉伸stretch_type→linear
将stretch范围输入为2482——6666,apply;
保存:
file→图像另存为→图像文件resolution选择8-bit灰度图;输出文件类型选择ENVI;choose
将得到结果与原影像进行link;
B、提取水体:
(1)、在影像中右击→ROItools
在选择面层的时候image窗口中选则面积较大的水库,另外用线层选择比较细的黄河要在zoom从窗口中选择,并与off的操作合作一起使用,大区域选择image,线型域选择zoom等,选择完毕之后要选择off。
(2)、点击stats查看统计结果:
查看到水体的data一般分布于-3513——-303之间。
(3)、进行线性拉伸(linear),操作:
enhance→交互式拉伸stretch_type→linear
将stretch范围输入为-3513——-303,apply;
保存:
file→图像另存为→图像文件resolution选择8-bit灰度图;输出文件类型选择ENVI;choose
将得到结果与原影像进行link;
(4)、进行分段线性拉伸(piecewiselinear),操作:
enhance→交互式拉伸stretch_type→piecewiselinear;在分短线上添加两个点:
点击鼠标中间的滚轮;删除操作,在原点上再次点击滚轮;option→editpiecewiselinear;
(注意:
这里为什么我没有输入-3513是有问题的,参见提出问题与解决办法)
设置分段如下图所示:
保存:
file→图像另存为→图像文件resolution选择8-bit灰度图;输出文件类型选择ENVI;choose
将得到结果与原影像进行link;
(5)、进行高斯拉伸(gaussioan),操作:
enhance→交互式拉伸stretch_type→piecewiselinear;
将stretch范围输入为-3513——-303,apply;
保存:
file→图像另存为→图像文件resolution选择8-bit灰度图;输出文件类型选择ENVI;choose
将得到结果与原影像进行link;
(6)、进行直方图均值化拉伸(equalization),操作:
enhance→交互式拉伸stretch_type→equalization;
将stretch范围输入为为-3513——-303,apply;
保存:
file→图像另存为→图像文件resolution选择8-bit灰度图;输出文件类型选择ENVI;choose
将得到结果与原影像进行link;
5、直方图匹配,使一幅影像的所有波段的直方图与另一幅影像对应波段的直方图结构类似。
首先窗口中打开两幅待匹配的影像,观察两幅影像有重叠的区域,但是两幅影像的总体颜色有差异。
在第二幅影像中打开:
enhance→直方图匹配matchto选择第一幅影像,匹配类型选择band,因为要对所有波段进行匹配,ok得到结果如下:
6、两两幅影像镶嵌成一幅影像,重合部分要合适,边界不能太明显;操作:
Map→mosaicking→georeferenced打开镶嵌工具,import加载两幅影像ok
选择第一幅影像右击→editentry羽化值设置为20,datavaluetoignore设置为0
颜色匹配RGB分别对应为3、2、1;色彩平衡选择为adjust调整;
选择第二幅影像右击→editentry羽化值设置为20,datavaluetoignore设置为0
颜色匹配RGB分别对应为3、2、1;色彩平衡选择为fix匹配;
保存镶嵌后的影像:
file→apply重采样方法选择双线性内插法,色彩平衡选择stasfromoverlappingregionschoose,
7、MODIS数据坏道填补:
针对MODIS原始影像扫描成像特点对其原始数据进行积处理,以达到去除扫描条带的目的。
首先打开坏道影像,观察到每隔20行像素就会产生一行坏道,因此在修补的时候要按照这个顺序来进行。
第一个坏道在4行,最后一个坏道在4044行。
8、坏到修复操作工具:
BasicTools→Preprocessing→GeneralPurposeUtilities→replaceBadlines选择要修复的影像badline中输入坏道行号4、24、44等当然我们不能一个一个输入,因此需要采用excel相关工具。
Halfwidthtoaverage:
选择为1代表用坏道两侧各一行的像素进行修复。
因此一共需要两行数据,选择2则需要四行数据,以此类推。
将数据保存以便在excel中打开save以及输出结果:
结果与分析
1、提取农田ROI生成结果分析:
在进行线性拉伸之后,明显发现DN值等于0的像素最多,也就是黑色像素最多,而查看影像与原影像连接之后查看发现,在白色区域即农田中的农作物区域,不仅仅农田被选择出来,东南部大面积的草地林地等也被选择出来,因为他们都是绿色植物,因此在第三波段和第四波段计算的NDVI差异不大,选择ROI时并不能将这几种植物区分开来,就造成白色区域不仅有农田的情况出现。
2、用线性拉伸方法提取水体的结果分析,我们发现大部分水体都能够提取出来,包括湖泊和河流,直方图信息显示白色区域最多,这也跟我们得到的结果相符,但是线性拉伸之后水体的颜色比较淡,而且层次分明,这也是水体含沙量不同的体现,另外线性拉伸中有许多面积较小的水体并没有完全提取出来,一方面是算法本身的原因,另一方面也是ROI选取并没有完全体现水体DN值特点的结果。
3、用分段线性拉伸输出结果发现在水体颜色上面比线性拉伸要深一些但是还是很浅,在小面积水体的提取上比较明显,但是后一个最大的特点就是,其他地物并没有完全屏蔽掉,因为分段线性拉伸对于非水体部分也是做拉伸处理的,其实拉伸的范围不大也会在结果中有体现;
4、用高斯拉伸之后生成的结果分析,我们发现高斯拉伸之后水体的颜色要更深一些,而且与非水体地物差异明显,小面积水体提取也很明显,这一点要比线性拉伸要好。
但是高斯拉伸有一个最大的弱点就是,在东北部把大部分不是水体的地物也同样提取出来了,挂差原影像发现这个地方有大片的薄云,对于结果产生影响,还需要寻找方法屏蔽掉这些云朵产生的误差。
5、最后用均质化直方图拉伸方法,观察到水体颜色要更深一些但是跟高斯拉伸有同样的问题就是把云彩也提取出来了,与此同时对于城市居民地也不能很好地区分,再沿黄河的兰州市区有很多暗斑都是提取错误的地方。
6、用分段线性反差拉伸方法从遥感影像中提取水域信息而屏蔽陆地信息,所谓分段线性拉伸就是不同的范围不同对待,将水体部分提取出来,就是将水体所在的数值范围拉伸的特别大,例如从1到254,当然这是一种极端方法,实际操作中并不需要这么设置也能产生效果,将其他信息屏蔽起来,就是在拉伸的时候其他信息所在的数值范围,存在的DN值范围要尽量小,比如250到255,0到5这样就可以将水体与其他地物区分开来,这也是分段线性拉伸的公式所体现的内容;
7、在进行影像镶嵌之后得到的结果分析,总体上,影像镶嵌的还可以,对于边缘的融合以及羽化的数值设定,需要进行多次试验才能最终确定,本次实习中采用羽化值为20,还可以隐约看到一点边缘效果,最好的效果是完全看起来像一幅影像。
存在问题与解决办法
(1)、bandmath中的表达式是有规定的,我在之前实验的时候输入float(A),结果报错,之后查阅了相关书籍得到结果,bandmath中的变量都需要用Bn或者bn来表示,其他的表达式都是不符合标准的;
(2)、在进行分段线性拉伸的时候,不知道为什么系统默认的数值最小值要比我通过ROI统计得到的数值要大,也就是我设置的水体的最小值不能被输入,按照我想的情况,分段线性拉伸的最小值应该就是本影像像素的最小值,而事实并非如此,我通过第一次实习的方法进行统计波段的结果是存在最小值的,且这个最小值要比ROI统计的要小,因此不知道其中是什么原因,另外每次输入拉伸范围之后点击apply,这个拉伸范围都会相应的发生跳动变化,而且每次变化的结果都一样(对于四种拉伸方法而言),这两者其中是不是有什么联系。
(3)、在enhance中有许多默认的拉伸方法,其中一些拉伸方法分为scroll、image、zoom三种方式,这说明拉伸方法是根据显示情况来进行的,这也是为什么原影像和才裁剪的子区相同波段显示情况下相同地物显示不一样的原因,默认的2%的拉伸所计算的基础是不也一样的;
(4)、计算NDVI还有一种方法,是系统默认的,在transform→NDVI中,经过输出影像查看之后我们发现这种计算方法和我们一步一步操作得到的影像是不一样的,这个工具的结果每隔像素的值都在-1到+1之间,当然我们把它乘以10000也会得到之前的结果,两者有这一点的区别;
总结
本次实习中学习了影像的反差拉伸的四中操作,以及他们之间的区别和联系,反差拉伸是一种很实用的影像处理方法,它把影像原本隐藏的信息提取出来,便于我们的观察和分类,另外还有影像镶嵌技术,这样将两幅影像拼接的操作,对于进行大面积的摇杆研究很有帮助,最后学习了坏道修补操作,我们知道有很多遥感影像都不是那么完美,又因为我们研究的需要,不得不对不好的影像进行修复以便符合我们的而研究标准,这样对于坏道的修补就显得尤为重要。