Re: [cf-satellite] cf-satellite prototype beta

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)




  • 2010 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the cf-satellite archives: