LEDAPS1.3.0版本移植到windows平台----HuSr大气校正模块
这个是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 ...
- Windows平台摄像头或屏幕RTMP推送介绍:OBS VS SmartPublisher
好多开发者问道,既然有了OBS,你们为什么还要开发SmartPublisher? 的确,在我们进行Windows平台RTMP推送模块开发之前,市面上为数不多的Windows平台RTMP推流工具当属OB ...
- 基于Cocos2d-x-1.0.1的飞机大战游戏迁移到Cocos2d-x-3.0版本,并移植到Android平台成功运行
一.版本迁移中的问题 1.游戏元素Sprite.Label.Action等等的创建函数名都改为create. 2.函数的回调callfunc_selectorcallfuncN_selectorcal ...
随机推荐
- php免杀教程【绝对原创】
.函数回调. 使用其他函数进行调用,并执行. 如:array_map('a'.'s'.'se'.'r'.'t',array($_POST['x'])); 详细教程 + 测试结果(安全狗+360主机卫士 ...
- 1 小时 SQL 极速入门(一)
前几天,我在论坛溜达.看到一个人发帖说 做了6年的企业级开发,总是被互联网行业的人认为没技术含量,不就是CRUD么 先解释下 CRUD 是什么.CRUD 就是我们常说的增删改查(Create,Retr ...
- SDL 开发实战(一):SDL介绍及开发环境配置
一.什么是SDL? SDL是 “Simple DirectMedia Layer”的缩写,SDL是一个开源的跨平台的多媒体库,封装了复杂的音视频底层操作,简化了音视频处理的难度. SDL使用C语言写成 ...
- LeetCode题解39.Combination Sum
39. Combination Sum Given a set of candidate numbers (C) (without duplicates) and a target number (T ...
- [Swift]LeetCode434. 字符串中的单词数 | Number of Segments in a String
Count the number of segments in a string, where a segment is defined to be a contiguous sequence of ...
- [Swift]LeetCode522. 最长特殊序列 II | Longest Uncommon Subsequence II
Given a list of strings, you need to find the longest uncommon subsequence among them. The longest u ...
- 为什么大一先要学C语言(面向过程)再学C++或JAVA(面向对象)?
面向对象和面向过程各有千秋 一.面向过程与面向对象对比 面向过程:强调的是每一个功能的步骤,有很多很多方法组成,这些方法相互调用,完成需求. 面向对象:强调的是对象,然后由对象去调用功能. 面向过程 ...
- python bz2模块
bz2模块提供了使用bzip2算法压缩和解压缩数据一套完整的接口. bz2模块包括: 用于读写压缩文件的open()函数和BZ2File类 用于一次性压缩和解压缩的compress() 和 decom ...
- python之定义参数模块argparse(二)高级使用 --传参为函数的实现
我们在文章python之定义参数模块argparse的基本使用中介绍了argparse模块的基本使用方法 当前传入的参数只能是int.str.float.comlex类型,不能为函数,这有点不方便,但 ...
- Android--从系统Gallery获取图片
前言 在Android应用中,经常有场景会需要使用到设备上存储的图片,而直接从路径中获取无疑是非常不便利的.所以一般推荐调用系统的Gallery应用,选择图片,然后使用它.本篇博客将讲解如何在Andr ...