OpticalCalibration

执行光学校准TOA/TOC(大气层顶部/树冠顶部)。支持的传感器:QuickBird、Ikonos、WorldView2、FORMOSAT、SPOT5、昂宿星团、Spot6、Spot7。对于其他传感器,该应用程序还允许手动提供校准参数。

描述

该应用程序允许将像素值从Dn(用于数字数字)转换为反射率。定标值称为表面反射率,其值位于 [0, 1] 。第一个级别称为大气顶部(TOA)反射率。它考虑了传感器增益、传感器光谱响应和太阳照度。第二个级别称为冠顶(TOC)反射率。除了传感器增益和太阳照度外,它还考虑了大气的光学厚度、大气压力、水蒸气数量、臭氧数量以及气溶胶气体的组成和数量。也可以指示包含大气参数的AERONET文件(支持Aeronet文件的版本1和版本2)。请注意,计算TOC反射率将首先在内部计算TOA,然后计算TOC反射率。


如果OTB的元数据接口工厂不支持传感器,用户仍有可能向应用程序提供所需的参数。对于TOA转换,这些参数为:

  • 采集日期和月份,或通量归一化系数,或太阳距离(AU);
  • 太阳仰角;
  • 增益和偏差,每个波段的一对值(通过文件传递);
  • 太阳照度,每个波段一个值(通过文件传递)。

对于从dN(数字)到光谱辐射(或‘TOA辐射’)L的转换,使用以下公式:

(1) L(b) = DN(b)/gain(b)+bias(b) (in W/m2/steradians/micrometers) 其中B是频段ID。

这些值由用户通过一个简单的txt文件提供,该文件有两行,一行用于增益,一行用于偏置。每个值必须用冒号(:)分隔,并以空格结尾。不允许使用空行。如果行以‘#’符号开头,则将其视为注释。请注意,有时,某些元数据文件提供的值假定公式L(B)=增益(B)*DC(B)+偏差(B)。在这种情况下,请确保提供反向增益值,以便应用程序可以正确解释它们。

为了将TOA辐射度转换为TOA反射率,使用以下公式:

(2) R(b) = (pi*L(b)*d*d) / (ESUN(b)*cos(θ)) (no dimension) 其中:

  • L(B)是波段b的光谱辐射度
  • 圆周率是著名的数学常数(3.14159...)
  • D是地球到太阳的距离(天文单位),取决于采集的日期和月份
  • ESun(B)是平均TOA太阳辐照度(或太阳照度),单位为W/m2/微米
  • θ是以度为单位的太阳天顶角。

请注意,该应用程序要求提供太阳仰角,并将执行到天顶角本身的转换(Zenith_Angel=90-Elevation_Angel,单位:度)。还要注意的是,eSun(B)不仅取决于波段b,还取决于传感器在该特定波段中的光谱灵敏度。换句话说,光谱灵敏度的影响包含在eSun的不同值内。这些值是由用户提供的,这要归功于遵循与前面相同约定的txt文件。除了提供采集日期,用户还可以提供通量归一化系数或太阳距离(AU)‘fn’。取而代之的公式如下:

(3) R(b) = (pi*L(b)) / (ESUN(b)*fn*fn*cos(θ))

无论使用哪种公式(2或3),用户都应该注意他将提供给应用程序的参数的解释,并考虑到元数据文件采用的原始公式。

下面,我们给出两个包含有关增益/偏置和太阳照明信息的txt文件示例:

  • Antibias.txt:
#每个频段的增益值。每个值必须用冒号(:)分隔,并以空格结尾。
#不允许使用空行。
10.4416:9.529:8.5175:14.0063
每个波段的#偏移值。
0.0:0.0:0.0:0.0

重要说明:对于昂宿星图像校准,波段顺序很重要,它应该给出:红、绿、蓝、近红外(B2、B1、B0、B3)。

  • Solarillation.txt:
#以瓦特/平方米/微米为单位的太阳能照明值(‘微米’实际上是指‘每个波段’)。
#每个值必须用冒号(:)分隔,并以空格结尾。不允许使用空行。
1540.494123:1826.087443:1982.671954:1094.747446

最后,“日志”选项卡提供了有用的消息,可以帮助用户了解进程的不同状态。

参数

Input -in image Mandatory
Input image filename

Output -out image [dtype] Mandatory
Output calibrated image filename

Calibration Level -level [toa|toatoim|toc] Default value: toa

  • Image to Top Of Atmosphere reflectance
  • TOA reflectance to Image
  • Image to Top Of Canopy reflectance (atmospheric corrections)

Convert to milli reflectance -milli bool Default value: false
Flag to use milli-reflectance instead of reflectance. This allows saving the image with integer pixel type (in the range [0, 1000] instead of floating point in the range [0, 1]. In order to do that, use this option and set the output pixel type (-out filename double for example)

Clamp of reflectivity values between [0, 1] -clamp bool Default value: true
Clamping in the range [0, 1]. It can be useful to preserve area with specular reflectance.

采集参数

此组允许设置与采集条件相关的参数。

Minute -acqui.minute int Default value: 0
Minute (0-59)

Hour -acqui.hour int Default value: 12
Hour (0-23)

Day -acqui.day int Default value: 1
Day (1-31)

Month -acqui.month int Default value: 1
Month (1-12)

Year -acqui.year int Default value: 2000
Year

Flux Normalization -acqui.fluxnormcoeff float
Flux Normalization Coefficient

Solar distance -acqui.solardistance float
Solar distance (in AU)

太阳角

该组包含太阳角度

Sun elevation angle (deg) -acqui.sun.elev float Default value: 90
Sun elevation angle (in degrees)

Sun azimuth angle (deg) -acqui.sun.azim float Default value: 0
Sun azimuth angle (in degrees)

视角

此组包含传感器视角

Viewing elevation angle (deg) -acqui.view.elev float Default value: 90
Viewing elevation angle (in degrees)

Viewing azimuth angle (deg) -acqui.view.azim float Default value: 0
Viewing azimuth angle (in degrees)


Gains and biases -acqui.gainbias filename [dtype]
A text file containing user defined gains and biases

注意:对于昂宿星团产品,如果用户没有给出此参数,则默认情况下会在dimap中读取增益和偏移值。如果在dimap中找不到它们,则从校准团队给出的硬编码表中获取它们。

Solar illuminations -acqui.solarilluminations filename [dtype]
Solar illuminations (one value per band, in W/m^2/micron)

大气参数(TOC)

此组允许设置大气参数。

Aerosol Model -atmo.aerosol [noaersol|continental|maritime|urban|desertic] Default value: noaersol

  • No Aerosol Model
  • Continental
  • Maritime
  • Urban
  • Desertic

Ozone Amount (cm-atm) -atmo.oz float Default value: 0
Stratospheric ozone layer content (in cm-atm)

Water Vapor Amount (g/cm2) -atmo.wa float Default value: 2.5
Total water vapor content over vertical atmospheric column (in g/cm2)

Atmospheric Pressure (hPa) -atmo.pressure float Default value: 1030
Atmospheric Pressure (in hPa)

Aerosol Optical Thickness -atmo.opt float Default value: 0.2
Aerosol Optical Thickness (unitless)

Aeronet File -atmo.aeronet filename [dtype]
Aeronet file containing atmospheric parameters

Relative Spectral Response File -atmo.rsr filename [dtype]
Sensor relative spectral response file By default the application gets this information in the metadata

Window radius (adjacency effects) -atmo.radius int Default value: 2
Window radius for adjacency effects correctionsSetting this parameters will enable the correction ofadjacency effects

Pixel size (in km) -atmo.pixsize float Default value: 1
Pixel size (in km) used tocompute adjacency effects, it doesn't have tomatch the image spacing


Available RAM (MB) -ram int Default value: 256
Available memory for processing (in MB).

实例

从命令行执行以下操作:

otbcli_OpticalCalibration -in QB_1_ortho.tif -level toa -out OpticalCalibration.tif

来自Python的评论:

import otbApplication

app = otbApplication.Registry.CreateApplication("OpticalCalibration")

app.SetParameterString("in", "QB_1_ortho.tif")
app.SetParameterString("level","toa")
app.SetParameterString("out", "OpticalCalibration.tif")

app.ExecuteAndWriteOutput()

另请参阅

OTB食谱