Skip to content

Instantly share code, notes, and snippets.

@dlebauer
Last active February 15, 2019 20:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dlebauer/372d67a673cc56a82acfd8cf209332ec to your computer and use it in GitHub Desktop.
Save dlebauer/372d67a673cc56a82acfd8cf209332ec to your computer and use it in GitHub Desktop.
{
"dimensions": {
"wavelength": 955,
"wvl_nvr": 1024,
"x": 1600,
"y": 468
},
"flx_dwn": {
"dims": ["wavelength"],
"type": "float",
"long_name": "Downwelling spectral irradiance",
"standard_name": "surface_downwelling_radiative_flux_per_unit_wavelength_in_air",
"units": "watt meter-2 meter-1"
},
"flx_sns": {
"dims": ["wvl_nvr"],
"type": "float",
"long_name": "Flux sensitivity of each band (irradiance per count)",
"provenance": "EnvironmentalLogger calibration information from file S05673_08062015.IrradCal provided by TinoDornbusch and discussed here: https://github.com/terraref/reference-data/issues/30#issuecomment-217518434",
"units": "joule count-1"
},
"frametime": {
"dims": ["y"],
"type": "double",
"units": "days since 1970-01-01 00:00:00",
"calender": "gregorian"
},
"rfl_img": {
"dims": ["wavelength","y","x"],
"type": "float",
"long_name": "Reflectance of image",
"meaning": "Counts on scale from 0 to 2^16-1 = 65535",
"standard_name": "surface_albedo",
"units": "1"
},
"rfl_wht": {
"dims": ["wavelength"],
"type": "float",
"long_name": "Reflectance of white reference",
"units": "1"
},
"wavelength": {
"dims": ["wavelength"],
"type": "double",
"long_name": "Hyperspectral Wavelength",
"units": "meter",
"standard_name": "radiation_wavelength"
},
"wvl_dlt": {
"dims": ["wvl_nvr"],
"type": "float",
"long_name": "Bandwidth of environmental sensor",
"notes": "Bandwidth, also called dispersion, is between 0.455-0.495 nm across all channels. Values computed as differences between midpoints of adjacent band-centers.",
"standard_name": "bandwidth",
"units": "meter"
},
"wvl_nvr": {
"dims": ["wvl_nvr"],
"type": "float",
"long_name": "Wavelength of environmental sensor",
"provenance": "EnvironmentalLogger calibration information from file S05673_08062015.IrradCal provided by TinoDornbusch and discussed here: https://github.com/terraref/reference-data/issues/30#issuecomment-217518434",
"standard_name": "sensor_band_central_radiation_wavelength",
"units": "meter"
},
"x": {
"dims": ["x"],
"type": "double",
"algorithm": "CSZ implemented these fake data to be replaced by real formula once available.",
"long_name": "North-south offset from start position",
"units": "meter"
},
"xps_drk": {
"dims": ["wavelength","x"],
"type": "short",
"long_name": "Exposure from dark reference sheet/panel",
"units": "Counts on scale from 0 to 2^16-1 = 65535"
},
"xps_img": {
"dims": ["wavelength","y","x"],
"type": "short",
"long_name": "Exposure counts",
"meaning": "Counts on scale from 0 to 2^16-1 = 65535",
"units": "1"
},
"xps_wht": {
"dims": ["wavelength","x"],
"type": "short",
"long_name": "Exposure from white reference sheet/panel",
"units": "Counts on scale from 0 to 2^16-1 = 65535"
},
"y": {
"dims": ["y"],
"type": "double",
"algorithm": "Based on https://github.com/terraref/computing-pipeline/issues/144. y is defined as 0.9853 mm per pixel. Exact number is 0.98526434004512529576754637665 mm.",
"long_name": "East-west offset from start position",
"units": "meter"
},
"attrs": {
"title": "None given (supply with --trr ttl=\"Title\")",
"created_by": "yanliu",
"Conventions": "CF-1.5",
"Project": "TERRAREF",
"terraref_script": "terraref.sh",
"terraref_hostname": "cg-gpu01",
"terraref_version": "4.6.0",
"history": "Thu Sep 1 11:09:33 2016: ncap2 -A -S /gpfs/largeblockFS/projects/arpae/sw/computing-pipeline/scripts/hyperspectral/terraref.nco /gpfs_scratch/arpae/imaging_spectrometer/terraref_tmp_att.nc.pid44592.fl00.tmp /gpfs_scratch/arpae/imaging_spectrometer/terraref_tmp_att.nc.pid44592.fl00.tmp\nThu Sep 1 11:09:31 2016: ncks -A /gpfs_scratch/arpae/imaging_spectrometer/terraref_tmp_jsn.nc.pid44592.fl00.tmp /gpfs_scratch/arpae/imaging_spectrometer/terraref_tmp_att.nc.pid44592.fl00.tmp\nThu Sep 01 11:09:30 2016: python input/0596c17f-2e4c-4d43-9d77-cde8ffbde663_raw /gpfs_scratch/arpae/imaging_spectrometer/terraref_tmp_jsn.nc.pid44592.fl00.tmp",
"NCO": "\"4.6.0\"",
"history_of_appended_files": "Thu Sep 1 11:09:33 2016: Appended file /gpfs_scratch/arpae/imaging_spectrometer/terraref_tmp_att.nc.pid44592.fl00.tmp had following \"history\" attribute:\nThu Sep 1 11:09:31 2016: ncks -A /gpfs_scratch/arpae/imaging_spectrometer/terraref_tmp_jsn.nc.pid44592.fl00.tmp /gpfs_scratch/arpae/imaging_spectrometer/terraref_tmp_att.nc.pid44592.fl00.tmp\nThu Sep 01 11:09:30 2016: python input/0596c17f-2e4c-4d43-9d77-cde8ffbde663_raw /gpfs_scratch/arpae/imaging_spectrometer/terraref_tmp_jsn.nc.pid44592.fl00.tmp\nThu Sep 1 11:09:31 2016: Appended file /gpfs_scratch/arpae/imaging_spectrometer/terraref_tmp_jsn.nc.pid44592.fl00.tmp had following \"history\" attribute:\nThu Sep 01 11:09:30 2016: python input/0596c17f-2e4c-4d43-9d77-cde8ffbde663_raw /gpfs_scratch/arpae/imaging_spectrometer/terraref_tmp_jsn.nc.pid44592.fl00.tmp\n",
"nco_openmp_thread_number": 1
},
"groups": {
"gantry_system_fixed_metadata": {
"attrs": {
"gantry_fixed_data_2": "Todo",
"gantry_fixed_data_1": "Todo",
"System_manufacturer": "LemnaTec Corp."
}
},
"gantry_system_variable_metadata": {
"u": {
"type": "double",
"long_name": "Gantry_Speed_in_X_Direction",
"units": "meter second-1"
},
"v": {
"type": "double",
"long_name": "Gantry_Speed_in_Y_Direction",
"units": "meter second-1"
},
"w": {
"type": "double",
"long_name": "Gantry_Speed_in_Z_Direction",
"units": "meter second-1"
},
"x": {
"type": "double",
"long_name": "Position_in_X_Direction",
"units": "meter"
},
"y": {
"type": "double",
"long_name": "Position_in_Y_Direction",
"units": "meter"
},
"z": {
"type": "double",
"long_name": "Position_in_Z_Direction",
"units": "meter"
},
"attrs": {
"Camnera_box_light_4_is_on": "True",
"Position_in_]_Direction": "0.97",
"Camnera_box_light_2_is_on": "True",
"Camnera_box_light_1_is_on": "True",
"Gantry_Speed_in_]_Direction": "0",
"Time": "04/07/2016 16:15:45",
"Camnera_box_light_3_is_on": "True"
}
},
"header_info": {
"blue_band_index": {
"type": "double"
},
"green_band_index": {
"type": "double"
},
"red_band_index": {
"type": "double"
},
"attrs": {
"HSIII_VERSION": "E51215 vs64",
"POST_AOI_left": "0",
"Col_binning": "1",
"AOI_width": "1600",
"Row_binning": "1",
"FrameIndex": "frameIndex.txt",
"AOI_height": "960",
"header_offset": "0",
"Lens_EFL": "17",
"Serial_Number": "SN-G4-384",
"samples": "1600",
"byte_order": "0",
"Lens_folder": "",
"description": "{[HEADWALL Hyperspec III]}",
"default_bands": "{140,234,500}",
"bands": "955",
"POST_Row_binning": "1",
"POST_AOI_width": "1600",
"file_type": "ENVI Standard",
"Nuc_folder": "",
"data_type": "12",
"AverageDispersion": "0.63986398",
"POST_Col_binning": "1",
"Array_Pixel_Pitch": "6.5",
"sensor_type": "Unknown",
"POST_AOI_height": "955",
"lines": "468",
"interleave": "bil",
"AOI_top": "600",
"Pixel0": "3.100546185",
"AOI_left": "480",
"POST_AOI_top": "5"
}
},
"sensor_fixed_metadata": {
"attrs": {
"sensor_serial_number": "Todo",
"sensor_purpose": "Todo",
"sensor_product_name": "VNIR",
"sensor_description": "Todo",
"sensor_manufacturer": "Headwall Scientific"
}
},
"sensor_variable_metadata": {
"constmirrorpos": {
"type": "double",
"long_name": "constmirrorpos"
},
"createdatacube": {
"type": "double",
"long_name": "createdatacube"
},
"exposure": {
"type": "double",
"long_name": "exposure",
"red_band_index": 140,
"green_band_index": 234,
"blue_band_index": 500
},
"frameperiod": {
"type": "double",
"long_name": "frameperiod"
},
"speed": {
"type": "double",
"long_name": "speed"
},
"startpos": {
"type": "double",
"long_name": "startpos"
},
"stoppos": {
"type": "double",
"long_name": "stoppos"
},
"useexternaltrigger": {
"type": "double",
"long_name": "useexternaltrigger"
},
"userotatingmirror": {
"type": "double",
"long_name": "userotatingmirror"
},
"attrs": {
"exposure": "45",
"startpos": "-70",
"frameperiod": "50",
"userotatingmirror": "0",
"speed": "100",
"useexternaltrigger": "0",
"constmirrorpos": "0",
"createdatacube": "0",
"stoppos": "70"
}
},
"user_given_metadata": {
"attrs": {
"first_wheat_test_by_Markus_Radermacher": "",
"experiment_info_1": "...",
"and_so_on_and_so_on...": "..."
}
}
}
}
dimensions:
radiation_wavelength = 955 ;
x= 1600 ;
y= 5191 ;
time = 5191 ;
wvl_clb = 2201 ;
variables:
double time(time) ;
frametime:units = "days since 1970-01-01 00:00:00" ;
frametime:calender = "gregorian" ;
frametime:notes = "Each time of the scanline of the y taken" ;
double radiation_wavelength(wavelength) ;
radiation_wavelength:long_name = "Hyperspectral Wavelength" ;
radiation_wavelength:units = "meter" ;
radiation_wavelength:standard_name = "radiation_wavelength" ;
double longitude(x) ;
longitude:units = "degrees_east" ;
longitude:long_name = "longitude" ;
double latitude(y) ;
latitude:units = "degrees_north" ;
latitude:long_name = "latitude" ;
double x(x) ;
x:units = "meter" ;
x:reference_point = "Southeast corner of field" ;
x:long_name = "North distance from southeast corner of field" ;
double y(y) ;
y:units = "meter" ;
y:reference_point = "Southeast corner of field" ;
y:long_name = "West distance from southeast corner of field" ;
float surface_albedo(wavelength, x, y) ;
surface_albedo:long_name = "Reflectance of image" ;
surface_albedo:standard_name = "surface_albedo" ;
surface_albedo:units = "1" ;
... any additional metadata below this, preferably in order of importance
// global attributes:
:geometry = "geojson string" ;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment