Tim Schmit wrote:
Hi,
As there are more and more bits per pixel (MODIS-=12) and at least
some ABI bands will be 14 bits, I think the LUT approach makes less
sense.
Although the LUT approach would generalize linear and non-linear calibration
with the same construct, the tables would get pretty large - 16bit not
too bad,
but the next size up is 32 ( can NetCDF have types in between ?). LUTs
should
perhaps be recognized if they are present, but not required considering
Tim's
point, and that there's quite a bit of data already where the conversion is
linear.
Why not include a few conversion coefficients (and the equations)?
Linear (scale/offset) is well understood, I guess there'd have to be way
to represent/parse
and apply equations in general.
As was stated, the conversion from scaled integers to say radiance is
often linear.
I can add that this is the case for MODIS.
The conversion from radiance to Planck is a few constants (how many
depend on the implementation method). For example, does one use
central wavenumber and 2 band correction values, or use the same band
correction values with 2 other constants (FK1, FK2).
Tim
Tom Whittaker wrote:
...
tom
---------- Forwarded message ----------
From: Ken Knapp <Ken.Knapp@xxxxxxxx>
Date: Wed, May 26, 2010 at 3:25 PM
Subject: [cf-satellite] Calibration Look Up tables
To: cf-satellite@xxxxxxxxxxxxxxxx
Raw satellite data are generally stored as integers (DN=digital
numbers) that are then
1. converted to radiances linearly (or sometimes non-linearly) that
can then be
2. converted to brightness temperatures.
With steps that are nonlinear, the scale factor offset doesn't work.
If a coefficient is tweaked/corrected, then the entire variable would
need to be rewritten.
Satellite data often use lookup tables to more easily and quickly
convert from DN to whatever (radiance/temperature). Updates would then
be made to calibration tables, rather than equations.
So I would propose something like the following CDL where variable
image has range from 0-255 and its attribute lookup means that the
table to convert to meaningful units is table_1
dimensions:
lat = 100
lon = 100
num_bins = 256
int image(lat,lon)
image:long_name = "GOES Water vapor channel"
image:units = "digital number"
image:lookup = "table_1"
image:valid_range = 0, 255
float table_1(num_bins)
table_1:long_name = "Brightness temperature"
table_1:units = "Kelvin"
Thoughts?
-Ken