-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge remote-tracking branch 'refs/remotes/origin/main'
- Loading branch information
Showing
30 changed files
with
1,746 additions
and
724 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,110 @@ | ||
# This file is an example of a configuration file, and entries will change during the processing depending on your specifics | ||
|
||
[General] | ||
mission_dir = D:/Specim/Missions/2022-08-31-Rem�y/2022-08-31_0800_HSI/processed/ | ||
pose_export_type = h5_embedded | ||
model_export_type = geoid # Change to dem_file if you have local terrain model (a.k.a 2.5D), or ply_file if you have *.ply mesh model of terrain (a.k.a 3D ) | ||
sensor_type = Specim FX10 # Change to sensor model name | ||
offset_x = 2951833.126067576 | ||
offset_y = 293161.63041865156 | ||
offset_z = 5627566.333684149 | ||
max_ray_length = 200 # Change to roughly 3x flying height for your platform (better too large than too small) | ||
blue_wave_length = 460 # Wavelength for making rgb composites | ||
green_wave_length = 530 # Wavelength for making rgb composites | ||
red_wave_length = 590 # Wavelength for making rgb composites | ||
wavelength_unit = Nanometers # Change to your unit | ||
radiometric_unit = (mW/cm^2*sr*um)*1000.0000 # Change to your unit | ||
|
||
[Coordinate Reference Systems] # Edit proj_epsg | ||
proj_epsg = 25832 # Change to your projected system to be used for orthorectification (this one is UTM 32, see https://epsg.io/25832) | ||
geocsc_epsg_export = 4978 # Geocentric system used for ray tracing with terrain model | ||
pos_epsg_orig = 4978 # The position CRS from navigation data | ||
|
||
[Relative Paths] # Optionally edit, Only relevant if you want to use the default generation of folders from a top folder. | ||
calib_folder = Input/Calib/ # Where *.xml file with camera calibration file lies | ||
h5_folder = Input/H5/ # Where h5 data lies | ||
dem_folder = Input/GIS/ # Possible to put dem in thi | ||
rgb_point_cloud_folder = Output/3Dmodels/ | ||
footprint_folder = Output/GIS/FootPrints/ | ||
rgb_composite_folder = Output/GIS/RGBComposites/ # Where orthorectified composites end up | ||
orthorectified_cube_folder = Output/GIS/HSIDatacubes/ # Where orthorectified datacubes end up | ||
anc_folder = Output/GIS/AncillaryData/ # Where ancillary data ends up | ||
dem_path = Input/GIS/DEM_downsampled_deluxe.tif | ||
hsi_calib_path = Input/Calib/HSI_2b.xml | ||
model_path = Input/GIS/model.ply | ||
pose_path = Intermediate/pose.csv | ||
|
||
[HDF.raw_nav] # Optionally edit, although easiest to not. | ||
rotation_reference_type = eul_ZYX | ||
eul_zyx = raw/nav/euler_angles # h5 path to euler angle array (n,3) ordered roll pitch yaw | ||
eul_is_degrees = True | ||
position = raw/nav/position_ecef # h5 path to ECEF position (n,3) | ||
timestamp = raw/nav/timestamp # h5 path to UNIX time (number of seconds since 1970 or something) | ||
is_global_rot = False | ||
|
||
[HDF.hyperspectral] # Optionally edit | ||
datacube = processed/radiance/dataCube # h5 path Where data cube should be | ||
exposuretime = processed/radiance/exposureTime # h5 path Where exposure time should be | ||
timestamp = processed/radiance/timestamp # h5 path Where data cube UNIX time should be | ||
is_calibrated = True # Recommended option | ||
|
||
[HDF.processed_nav] # Auto-generated | ||
folder = processed/nav/ | ||
quaternion_ecef = processed/nav/quaternion_ref_ecef | ||
position_ecef = processed/nav/position_ref_ecef | ||
pos0 = processed/nav/position_offset | ||
timestamp = processed/nav/timestamp_hsi | ||
|
||
[HDF.calibration] # Optionally edit | ||
band2wavelength = processed/radiance/calibration/spectral/band2Wavelength # Where the band center wavelength array should be (n,) | ||
fwhm = processed/radiance/calibration/spectral/fwhm # Optionally where the band width array should be (n,) | ||
darkframe = processed/radiance/calibration/radiometric/darkFrame # If is_calibrated is false where the darkframe should be (m,n) | ||
radiometricframe = processed/radiance/calibration/radiometric/radiometricFrame # If is_calibrated is false where the radiometric frame should be (m,n) | ||
|
||
|
||
[Georeferencing] # No need to edit, ancillary data from georeferencing, which is orthorectified accordingly | ||
folder = processed/georef/ | ||
position_ecef = processed/nav/position_hsi_ecef # Where hsi positions are stored | ||
quaternion_ecef = processed/nav/quaternion_hsi_ecef # Where hsi orientations are stored | ||
points_ecef_crs = processed/georef/points_ecef_crs # Where intersection points are stored | ||
points_hsi_crs = processed/georef/point_hsi_frame # Intersection points from HSI coordinate reference system (local) | ||
normals_hsi_crs = processed/georef/normals_hsi_frame # Surface normals expressed in HSI coordinate reference system (local) | ||
theta_v = processed/georef/theta_v # Nadir angles of HSI | ||
theta_s = processed/georef/theta_s # Nadir angles of sun | ||
phi_v = processed/georef/phi_v # Azimuth angles of HSI | ||
phi_s = processed/georef/phi_s # Azimuth angles of sun | ||
normals_ned_crs = processed/georef/normals_ned_crs # Surface normals in North-East-Down at intersections | ||
unix_time_grid = processed/georef/unix_time_grid # Time at intersections | ||
pixel_nr_grid = processed/georef/pixel_nr_grid # Pixel number at intersections | ||
frame_nr_grid = processed/georef/frame_nr_grid # Frame number at intersections | ||
hsi_tide_gridded = processed/georef/hsi_tide_gridded # Tide level wrt geoid (if tide file is supplied) | ||
hsi_alts_msl = processed/georef/hsi_alts_msl # HSI height above mean sealevel (e.g. to be used for atmos correction) | ||
|
||
[Orthorectification] | ||
resample_rgb_only = False # If True, only RGB composites are made. This is much faster | ||
resample_ancillary = True # If ancillary is needed for further analysis of data, set to True | ||
chunk_size_cube_gb = 1 # The working chunk size for orthorectification, set well below available RAM | ||
resolutionhyperspectralmosaic = 0.1 # Change to your target ground resolution | ||
interleave = bsq # Do not edit | ||
ancillary_suffix = _anc | ||
nodata = -9999 | ||
raster_transform_method = north_east # Can be set to minimal_rectangle giving the memory-optimal raster transform, but these rotated rasters are unfortunaty not well supported by downstream tools | ||
|
||
|
||
[Absolute Paths] # Edit these according to need. For this example, the top folder is D:/Specim/Missions/2022-08-31-Rem�y/2022-08-31_0800_HSI/processed/ | ||
calib_folder = D:/Specim/Missions/2022-08-31-Rem�y/2022-08-31_0800_HSI/processed/Input/Calib/ | ||
h5_folder = D:/Specim/Missions/2022-08-31-Rem�y/2022-08-31_0800_HSI/processed/Input/H5/ | ||
rgb_point_cloud_folder = D:/Specim/Missions/2022-08-31-Rem�y/2022-08-31_0800_HSI/processed/Output/3Dmodels/ | ||
footprint_folder = D:/Specim/Missions/2022-08-31-Rem�y/2022-08-31_0800_HSI/processed/Output/GIS/FootPrints/ | ||
rgb_composite_folder = D:/Specim/Missions/2022-08-31-Rem�y/2022-08-31_0800_HSI/processed/Output/GIS/RGBComposites/ | ||
orthorectified_cube_folder = D:/Specim/Missions/2022-08-31-Rem�y/2022-08-31_0800_HSI/processed/Output/GIS/HSIDatacubes/ | ||
anc_folder = D:/Specim/Missions/2022-08-31-Rem�y/2022-08-31_0800_HSI/processed/Output/GIS/AncillaryData/ | ||
dem_folder = D:/Specim/Missions/2022-08-31-Rem�y/2022-08-31_0800_HSI/processed/Input/GIS/ | ||
tide_path = D:/Specim/Missions/2022-08-31-Rem�y/2022-08-31_0800_HSI/processed/Input/tidevann_nn2000_NMA.txt | ||
dem_path = D:/HyperspectralDataAll/HI/2022-08-31-060000-Remoy-Specim/Input/GIS/DEM_downsampled.tif | ||
hsi_calib_path = D:/Specim/Missions/2022-08-31-Rem�y/2022-08-31_0800_HSI/processed/Input/Calib/HSI_2b.xml | ||
pose_path = D:/Specim/Missions/2022-08-31-Rem�y/2022-08-31_0800_HSI/processed/Intermediate/pose.csv | ||
model_path = D:/Specim/Missions/2022-08-31-Rem�y/2022-08-31_0800_HSI/processed/Input/GIS/model.ply # Change this path if model_export_type='ply_file' | ||
dem_path = D:/Specim/Missions/2022-08-31-Rem�y/2022-08-31_0800_HSI/processed/Input/GIS/DEM_downsampled_deluxe.tif # Change this path if model_export_type='dem_file' | ||
geoid_path = C:/Users/haavasl/VSCodeProjects/hyperspectral_toolchain/data/world/geoids/no_kv_HREF2018A_NN2000_EUREF89.tif # Change this path | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.