python怎么读取文件读取遥感影像问题

该楼层疑似违规已被系统折叠 

各位大神你们好!我想请问一下,需要做遥感图像处理我想学习python怎么读取文件来实现,请问一下买哪本参考书有用?之前是用IDL/ENVI来实现现在想学学python怎么读取文件。谢谢各位大神


}

唔最近在做作业的时候,一些實验内容涉及到了用ENVI处理遥感图像然后自己手动操作软件一遍遍的输入各种参数神马的感觉挺无聊。。然后决定自己用python怎么读取文件里面的opencv库写个脚本批处理图像反射率的计算试试~

核心步骤就是 遥感影像光谱辐射定标 →大气校正→计算反射率这三步了

①、遥感影像的咣谱辐射定标 

由遥感器的灵敏度特征引起的辐射畸变主要由其光学系统或光电转换系统的特征形成的,光电转换系统的灵敏性特征通常很重複,其校正一般是通过定期的地面测定值进行的。

遥感器光谱辐射定标时采用以下转换算式:

遥感器各波段偏移与增益值从论文找了找后找箌这么一张表~

那么这么个函数就能定标咯:

②、遥感影像的大气校正 任何一种依赖大气物理模型的大气校正方法都需要先进行遥感器的辐射校准。


其中:Lhazel——大气层光谱辐射值;LImin——遥感器每一波段最小光谱辐射值;LI,1%——反射率为1%的黑体辐射值。

关于LImin和LI,1%的计算公式就省略了啊,感兴趣的同学可以自己去查查论文~

而计算Lhazel需要的参数可以从遥感图像的头文件中获得一部分还有一部分是固定的参数~这些都藏在ENVI的背後,不过自己写脚本的时候找出他们还是废了一番功夫的

计算Lhazel的代码如下:

③、计算遥感影像的反射率
根据太阳辐射和大气传输原理与過程,TM/ETM+数据地面反射率反演的数学模型可综合表达为:

其中:ρ——地面相对反射率;D——日地天文单位距离;LsatI——传感器光谱辐射值,即大气顶层的輻射能量;LhazeI——大气层辐射值;ESUNl——大气顶层的太阳平均光谱辐射,即大气顶层太阳辐照度;SZ——太阳天顶角。

这里提一下其中两个参数的计算公式:

I、J、K分别为年、月、日

有了这些最后就能直接算出来反射率啦,粗糙代码如下因为是写着玩的,也没怎么处理:

不过需要注意的昰遥感图像进行计算跟输出的时候,需要使用uint16类型的数组来存储的(uint8长度不够啊。)

一些参数涉及到浮点数计算如果对处理结果有極高要求的话,最好使用专门的科学运算库(像我这种渣学校才不介意这些)


}

我要回帖

更多关于 python怎么读取文件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信