NOTE: The cf-satellite
mailing list is no longer active. The list archives are made available for historical reasons.
Hi Tom and all:this seems like a good starting proposal to discuss. here are some issues from my POV:
1) "units(band)". I think if there are really different units, its probably a different variable. Do you have a concrete example where the units vary? Note also that "bands with different resolution" would also be a different variable (martin's question).
2) what is the mechanism for associating the scale/offset to the imageData? 3) you need ImageData:coordinates = "band lat lon time" maybe even ImageData:coordinates = "band lat lon time wavelength" 4) what is the meaning of band(band) ?? Tom Whittaker wrote:
We would like to suggest the following as a "starting point" that we can refine toward the goal of agreeing on a "basic" set of metadata and structure. It is an example of a multi-banded image structure that contains navigation on a point-by-point basis, and provides for linear calibration. The variable "names" are not critical, but the "standard_name" should be used by applications to identify the quantity. (In the following, most of the numbers are just samples....to make it more readable...) dimensions: x = 5304 ; y = 2438 ; band=16 variables: float lat(y, x); lat:standard_name = "latitude" ; lat:units = "degrees_north" ; lat:valid_range = -90.f, 90.f ; float lon(y, x) ; lon:standard_name = "longitude" ; lon:units = "degrees_east" ; lon:valid_range = -180.f, 180.f ; int band(band); double time; time:long_name = "Nominal time of image"; time:units="s since 1990-1-1 0:0:0"; string bandname(band); bandname:standard_name = "band_name" ; float offset(band) ; offset:standard_name="linear_calibration_offset"; float scale(band) ; scale:standard_name="linear_calibration_scale_factor"; float wavelength(band); wavelength:standard_name="radiation_wavelength"; wavelength:units="micron"; string units(band); units:standard_name="band_units"; short ImageData(band, y, x) ; ImageData:coordinates = "band lat lon" ; ImageData:valid_min = 1s ; ImageData:_FillValue = 0s ; ImageData:missing_value = 0s ; and for people who want/need to use a table look-up for calibration -- instead of the "linear_calibration..." variables, we would use: float lookup(band, 256); lookup:standard_name="calibration_lookup_table"; As Russ Rew pointed out, if there is only one band, it would be possible to dimension the Data as (y,x) but have the coordinates attribute contain "band". tom (with help from Tom Rink and Kaba Bah)
cf-satellite
archives: