6SV2.1模型编译心得(WINDOWS7)

网易博客完蛋了,文章大家看不见,很多人给我发邮件要这篇文章,转发到这里。

补充1(20181122): envi的FLAASH已经可以批量使用了,大家有需要也可以朝这方面努力。

按:最近需要做批量大气校正,但是envi的FLAASH不能批量运行,最佳的LEDAPS要用LINUX运行,手头也没有合适的电脑装上LINUX系统,配置起来也比较困难,最终敲定了6S模型。在网上搜索的6S模型的过程中,发现以第一版6SV1.1编译生成的模型居多,没有找到2015年更新的6SV2.1,于是自己动手进行编译。

参考网站:

1.6S模型主页:http://6s.ltdri.org/index.html。(下载、获取用户手册)

2.http://py6s.readthedocs.io/en/latest/installation.html(py6S是面向python调用6S模型的接口,安装成功全靠这,英文)

首先可以明确,6SV2.1模型也是通过FORTRAN77编写的,变动不是很大,选用它进行校正,看重的是其对ETM数据的支持。我们常见的用IDL调用6S模型,都是调用的.exe,而下载下来的是6S的FORTRAN源码,从源码到.exe我们需要经历一道编译的工作。虽然看似简单的编译,但是也耗费了一天。

安装过程,过程内容主要翻译自:http://py6s.readthedocs.io/en/latest/installation.html。感谢Robin Wilson及其团队。

PS:为了保证安装和运行的顺利,尽量保证在C盘,最浅目录进行。

1.WINDOWS系统需要下载UNIX工具,因为之后需要对makefile文件进行编译,这里需要下载make和tar两个工具(http://gnuwin32.sourceforge.net/packages.html)并用缺省值安装。

2.安装FORTRAN编译器,根据文章的解释,FORTRAN77是有悠久历史的语言,新的FORTRAN编译器未必能起到很好的支持,因此下载FORT99.zip(http://www.cse.yorku.ca/~roumani/fortran/ftn.htm)。

*解压以后,将文件夹下的G77复制到C盘根目录。

3.环境变量配置,右键“我的电脑”-》“更改设置”-》“高级”-》“环境变量”,在环境变量中添加cmd.exe所在的路径,一般为C:\Windows\System32,在系统变量中,找到path,添加上C:\Program Files\GNUWin32\bin;C:\G77\bin

4.下载6SV2.1并解压。

5.编辑makefile文件,用文本文档打开makefile,找到结尾附近的-lm进行删除。

6.编译6S模型。以管理员身份打开cmd.exe,打开6S模型所在的目录(即解压后.f文件所在的文件夹),在命令提示行输入 make 命令进行编译。编译成功后得到6SV2.1文件就是6SV2.1.exe


补充,发现没有安装minGW的包导致可能不能使用6S.exe和没有make命令,不能进行makefile的问题,参照下面的文章进行补充
http://blog.csdn.net/pdcxs007/article/details/8582559

猜你喜欢

转载自blog.csdn.net/u010472858/article/details/84345773