这个是2012年左右放在百度空间的,谁知百度空间关闭。。。转移到博客园。
最近项目用到3.1.2版本的LEDAPS,新版本的使用情况会在后续文章中慢慢丰富。
HuSr是将LEDAPS项目中的TM/ETM+大气校正流程系列算法中的大气校正模块由linux系统移植到windows下的产物,代码本身改动不大,使用接口不变。
包含文件:
HuSr.exe
6sv1.0b.exe
命令行调用示例:HuSr.exe空格D:\LEDAPS\lndsr.L5014033_03320060801.txt
Vs2005下编译,包含的静态库有:
xdr.lib
libjpeg.lib
zlib.lib
szlib.lib
HD426.lib
HM426.lib
ws2_32.lib
gctp.lib
hdfeos.lib
为结果重复定义,忽略的库包括:libc.lib;libcmtd.lib
原始工程中包含CSALBR.f与CHAND.f两个fotran代码,这两个文件原属于辐射传输包6s中的代码,为了在vs2005的c++工程中加载它们,于是先在linux下使用f2c工具将其代码转换成标准c语言,然后再加载到vs2005的项目中,同时还需将f2c的头文件f2c.h加入。
原始代码中有几个linux系统的函数使用标准c库中的函数代替。Windows下缺少unistd.h函数定义的问题采用的解决方案与编译前两个模块的相同。
程序需要外部调用6s,而代用外部程序的方法linux与windows不同,并且6s在linux与windows中的调用方式也不同,所以在sixs_runs.c文件中对调用6s的部分进行了修改。6s的调用版本是6sv1.0b.exe,原始的fotran代码我在windows下面用f77没有编译成功,只好从网上下载了一个编译好的exe用,结果表明计算结果与linux的相同,应该没问题吧。
对原有的hdf库做了更新,使用hdfeos库为2.18b版本,HDF4库使用4.26版本。没有发现有啥问题。
校正一景TM数据在15分钟左右,要比linux版本的稍快些。
0 (user defined)
29.28 129.03 0.00 0.00 8 1 (geometrical conditions sza saz vza vaz month day)
8 (option for water vapor and ozone)
4.20 0.30 (water vapor and ozone)
1 (continental model)
0 (option for optical thickness at 550 nm)
0.010 (value of aot550
0.000000 (target level)
-1000 (sensor level : -1000=satellite level)
25 (predefined band)
0 (homogeneous surface)
0 (no directional effects)
0 (constant value for rho)
0.140 (value of rho)
-1 (no atmospheric correction)
0
程序中需要的参数用黄色标记:
自己注释用红色字体
******************************* 6sV version 1.0B ******************************
* *
* geometrical conditions identity *
* ------------------------------- *
* user defined conditions *
* *
* month: 8 day : 1 需要的参数与具体日期无关 *
* solar zenith angle: 29.28 deg solar azimuthal angle: 129.03 deg *
* view zenith angle: 0.00 deg view azimuthal angle: 0.00 deg *
* scattering angle: 150.72 deg azimuthal angle difference: 129.03 deg *
* *
* atmospheric model description *
* ----------------------------- *
* atmospheric model identity : *
* user defined water content : uh2o= 4.200 g/cm2 *
* user defined ozone content : uo3 = 0.300 cm-atm *
* aerosols type identity : *
* Continental aerosol model *
* optical condition identity : *
* visibility :****** km opt. thick. 550 nm : 0.0100 *
* *
* spectral condition *
* ------------------ *
* tm 1 *
* value of filter function : *
* wl inf= 0.430 mic wl sup= 0.560 mic *
* *
* Surface polarization parameters *
* ---------------------------------- *
* *
* *
* Surface Polarization Q,U,Rop,Chi 0.00000 0.00000 0.00000 -1.#J *
* *
* *
* target type *
* ----------- *
* homogeneous ground *
* constant reflectance over the spectra 0.140 *
* *
* target elevation description *
* ---------------------------- *
* ground pressure [mb] 1013.00 *
* ground altitude [km] 0.000 高度一直为0 *
* *
*******************************************************************************
*******************************************************************************
* *
* integrated values of : *
* -------------------- *
* *
* apparent reflectance 0.1820603 appar. rad.(w/m2/sr/mic) 96.005 *
* total gaseous transmittance 0.987 *
* *
*******************************************************************************
* *
* coupling aerosol -wv : *
* -------------------- *
* wv above aerosol : 0.182 wv mixed with aerosol : 0.182 *
* wv under aerosol : 0.182 *
*******************************************************************************
* *
* integrated values of : *
* -------------------- *
* *
* app. polarized refl. 0.0075 app. pol. rad. (w/m2/sr/mic) 0.240 *
* direction of the plane of polarization -39.03 *
* total polarization ratio 0.041 *
* *
*******************************************************************************
* *
* int. normalized values of : *
* --------------------------- *
* % of irradiance at ground level *
* % of direct irr. % of diffuse irr. % of enviro. irr *
* 0.881 0.101 0.018 *
* reflectance at satellite level *
* atm. intrin. ref. background ref. pixel reflectance *
* 0.064 0.011 0.107 *
* *
* int. absolute values of *
* ----------------------- *
* irr. at ground level (w/m2/mic) *
* direct solar irr. atm. diffuse irr. environment irr *
* 1344.346 153.382 27.867 *
* rad at satel. level (w/m2/sr/mic) *
* atm. intrin. rad. background rad. pixel radiance *
* 33.758 5.576 56.671 *
* *
* *
* int. funct filter (in mic) int. sol. spect (in w/m2) *
* 0.0604850 114.879 *
* *
*******************************************************************************
*******************************************************************************
* *
* integrated values of : *
* -------------------- *
* *
* downward upward total *
* global gas. trans. : 0.99294 0.99384 0.98684 *
* water " " : 1.00000 1.00000 1.00000T_g_wv[i]*
* ozone " " : 0.99294 0.99384 0.98684tgoz*
* co2 " " : 1.00000 1.00000 1.00000tgco2*
* oxyg " " : 1.00000 1.00000 1.00000tgo2*
* no2 " " : 1.00000 1.00000 1.00000tgno2*
* ch4 " " : 1.00000 1.00000 1.00000tgch4*
* co " " : 1.00000 1.00000 1.00000tgco*
* T_g_og[i]=tgoz*tgco2*tgo2*tgno2*tgno2*tgch4*tgco*
* *
* rayl. sca. trans. : 0.91343T_r_down[i]0.92360T_r_up[i]0.84364T_r[i] *aeros. sca. " : 0.99733T_a_down[ij]0.99783T_a_up[ij]0.99517T_a[ij]
* total sca. " : 0.91057T_ra_down[ij]0.92124T_ra_up[ij]0.83885T_ra[ij]*
* *
* *
* *
* rayleigh aerosols total *
* *
* spherical albedo : 0.12771S_r[i]0.00454 0.13062S_ra[i][j]*
* optical depth total: 0.16504 0.01133 aot_wavelength[i][j] 0.17637*
* optical depth plane: 0.16504 0.01133 0.17637 *
* reflectance I : 0.06415rho_r[i]0.00059rho_a[ij]0.06478rho_ra[ij]*
* reflectance Q : 0.00160 -0.00003 0.00157 *
* reflectance U : -0.00756 0.00000 -0.00744 *
* polarized reflect. : 0.00773 0.00003 0.00760 *
* degree of polar. : 12.04 5.80 11.74 *
* dir. plane polar. : -39.03 90.00 -39.03 *
* phase function I : 1.30737 0.19812 1.23612 *
* phase function Q : -0.17199 0.05671 -0.15730 *
* phase function U : -1.25436 -0.06031 -1.17766 *
* primary deg. of pol: -0.13156 0.28625 -0.12726 *
* sing. scat. albedo : 1.00000 0.89911 0.99352 *
* *
* *
*******************************************************************************
LEDAPS1.3.0版本移植到windows平台----HuSr大气校正模块的更多相关文章
-
LEDAPS1.3.0版本移植到windows平台----HuPm参数初始化模块
这个是2012年左右放在百度空间的,谁知百度空间关闭...转移到博客园. 最近项目用到3.1.2版本的LEDAPS,新版本的使用情况会在后续文章中慢慢丰富. LEDAPS的调用顺序是:HuPm--&g ...
-
LEDAPS1.3.0版本移植到windows平台----HuCsm云掩膜模块
这个是2012年左右放在百度空间的,谁知百度空间关闭...转移到博客园. 最近项目用到3.1.2版本的LEDAPS,新版本的使用情况会在后续文章中慢慢丰富. HuCsm是将LEDAPS项目中的TM/E ...
-
LEDAPS1.3.0版本移植到windows平台----HuCal定标模块
这个是2012年左右放在百度空间的,谁知百度空间关闭...转移到博客园. 最近项目用到3.1.2版本的LEDAPS,新版本的使用情况会在后续文章中慢慢丰富. HuCal是将LEDAPS项目中的TM/E ...
-
Java (JDK 多版本切换)—— Windows平台
0. 背景 常常在不同的应用中需要用到不同版本的Java ,需要切换不同JAVA_HOME. 1. 方法 Step 1. 安装不同版本的JDK(JRE),最好都安装在一个Java目录分支下.例如: S ...
-
Cocos2dx-3.0版本 从开发环境搭建(Win32)到项目移植Android平台过程详解
作为重量级的跨平台开发的游戏引擎,Cocos2d-x在现今的手游开发领域占有重要地位.那么问题来了,作为Cocos2dx的学习者,它的可移植特性我们就需要掌握,要不然总觉得少一门技能.然而这个时候各种 ...
-
移植TensorFlow到Windows平台
2015年11月,Google宣布开源旗下机器学习工具TensorFlow,引发业界热潮.TensorFlow原生支持*unix系和安卓平台,但并不提供对Windows平台的支持.如果想在Window ...
-
将Linux代码移植到Windows的简单方法
一.前言 Linux拥有丰富各种源代码资源,但是大部分代码在Windows平台情况是无法正常编译的.Windows平台根本无法直接利用这些源代码资源.如果想要使用完整的代码,就要做移植工作.因为C/C ...
-
基于Cocos2d-x-1.0.1的飞机大战游戏迁移到Cocos2d-x-3.0版本,并移植到Android平台成功运行
一.版本迁移中的问题 1.游戏元素Sprite.Label.Action等等的创建函数名都改为create. 2.函数的回调callfunc_selectorcallfuncN_selectorcal ...
-
Windows下将ImageMagick移植到Android平台
Windows下将ImageMagick移植到Android平台 原文链接 http://www.pedant.cn/2014/06/18/imagemagick-ported-android/ I ...
随机推荐
-
nginx源码分析之模块初始化
在nginx启动过程中,模块的初始化是整个启动过程中的重要部分,而且了解了模块初始化的过程对应后面具体分析各个模块会有事半功倍的效果.在我看来,分析源码来了解模块的初始化是最直接不过的了,所以下面主要 ...
-
Ubuntu 14.04 无线网卡驱动安装
安装了Ubuntu最新版本 14.04 之后,发现无线网卡不能使用,偿试安装驱动后,问题解决. 首先确定无线网卡类型: lspci -vnn -d 14e4: 比如我的网卡类型为 06:00.0 Ne ...
-
Hausdorff distance
微分动力系统原理 这本书里有介绍 Hausdorff距离是描述两组点集之间相似程度的一种量度,它是两个点集之间距离的一种定义形式:假设有两组集合A={a1,…,ap},B={b1,…,bq},则这两个 ...
-
js判断屏幕分辨率的代码
通过下面的代码判断分辨率 <script language="JavaScript"> <!-- Begin function redirectPage() { ...
-
浅谈PetShop之使用存储过程与PLSQL批量处理(附案例)
1 大概思路 备注:黄色为影响参数 2 PetShop4的经典数据库连接代码回顾 PetShop4有3个函数,具体有: ExecuteReader:可以读一个表的记录,只能读不 ...
-
spring容器IOC原理解析
原理简单介绍: Spring容器的原理,其实就是通过解析xml文件,或取到用户配置的bean,然后通过反射将这些bean挨个放到集合中,然后对外提供一个getBean()方法,以便我们获得这些bean ...
-
企业级中带你ELK如何实时收集分析Mysql慢查询日志
什么是Mysql慢查询日志? 当SQL语句执行时间超过设定的阈值时,便于记录到指定的日志文件中或者表中,所有记录称之为慢查询日志 为什么要收集Mysql慢查询日志? 数据库在运行期间,可能会存在这很多 ...
-
C++中公有继承、保护继承、私有继承的区别
公有继承时基类中各成员属性保持不变,基类中private成员被隐藏.派生类的成员只能访问基类中的public/protected成员,而不能访问private成员:派生类的对象只能访问基类中的publ ...
-
java多线程 -- 创建线程的第三者方式 实现Callable接口
Java 5.0 在 java.util.concurrent 提供了一个新的创建执行线程的方式:Callable 接口Callable 接口类似于 Runnable,两者都是为那些其实例可能被另一个 ...
-
ORACLE 数据找回
-- 找回一个小时前的数据 select * from sys_system_dictionary as of timestamp sysdate - 1/24order by id AS OF TI ...