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 ...
随机推荐
- 常见的java设计模式
单例模式 简单点说,就是一个应用程序中,某个类的实例对象只有一个,你没有办法去new,因为构造器是被private修饰的,一般通过getInstance()的方法来获取它们的实例. getInstan ...
- 【RL-TCPnet网络教程】第12章 TCP传输控制协议基础知识
第12章 TCP传输控制协议基础知识 本章节为大家讲解TCP(Transmission Control Protocol,传输控制协议),通过本章节的学习,需要大家对TCP有个基本的认识,方 ...
- [Swift]LeetCode335. 路径交叉 | Self Crossing
You are given an array x of n positive numbers. You start at point (0,0) and moves x[0] metres to th ...
- [Swift]LeetCode468. 验证IP地址 | Validate IP Address
Write a function to check whether an input string is a valid IPv4 address or IPv6 address or neither ...
- [Swift]LeetCode810. 黑板异或游戏 | Chalkboard XOR Game
We are given non-negative integers nums[i] which are written on a chalkboard. Alice and Bob take tu ...
- 剖析项目多个logback配置(下)
来源:http://www.cnblogs.com/guozp/p/5973038.html 上篇大概描述了logback的加载顺序以及加载的源码,本篇将分析如果在你的Maven或者其他多模块的项目中 ...
- MySQL忘记密码后找回密码
停止mysql服务 在mysql配置文件里[mysqld]下添加skip-grant-tables 3.重启服务,进入mysql 4.修改密码: MariaDB [mysql]> update ...
- 微信扫码登录(3)---授权码code获取用户基本信息
授权码code获取用户基本信息 上一遍已经获得微信回调的code,网址:回调获取code 那这篇通过code和其它参数去获得用户基本信息. 1.UserServiceImpl关键代码 @Ove ...
- 【java提高】---queue集合
queue集合 什么是Queue集合? 答:Queue用于模拟队列这种数据结构.队列通常是指“先进先出(FIFO)”的容器.队列的头部保存在队列中存放时间最长的元素,尾部保存存放时间最短的元素. 新元 ...
- Django项目开发
1.django中Form验证.CSRF.Cookie.Session.Model操作数据库 2.django介绍&快速实现简单留言系统 3.django开发在线教育网站