Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,8 @@ actual_output/
**/test/data/output/

# documentation generation
doc/html/
doc/html/

# user error logs and lookfast details
de430t.bsp
error_logs/
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
[DEFAULT]
#####
# File Paths should be represented as r-strings, or a python representation using forward slashes
# r-string r"C:\this\is\my\windows\file\path\to\something.stuff"
# forward slashed "C:/this/is/my/windows/file/path/to/something.stuff"
#####

# Top Level Output Directory
# Input file path or None to interactively select during first processing
primary_folder = r"\\snl\Collaborative\NSTTF_Optics\OpenCSP_Releases\Releases\2026-06-xx_LookfastExampleData_V1.0_UNDER_CONSTRUCTION\LookfastExampleData_V1.0\LookfastExample_01\output_expected"

# Input Source Video
# Input file path to original video or None to interactively select during first processing
# Original video is never edited, a copy is made within the primary output folder structure and this copy is referenced.
og_video_path = r"\\snl\Collaborative\NSTTF_Optics\OpenCSP_Releases\Releases\2026-06-xx_LookfastExampleData_V1.0_UNDER_CONSTRUCTION\LookfastExampleData_V1.0\LookfastExample_01\input\2025_06_05_LookFast_Cam2_Data.MOV"

# Input Camera Calibration file
file_camera = r"\\snl\Collaborative\NSTTF_Optics\OpenCSP_Releases\Releases\2026-06-xx_LookfastExampleData_V1.0_UNDER_CONSTRUCTION\LookfastExampleData_V1.0\LookfastExample_01\input\camera_object_lab_example.h5"

# Location of astronomy database de430t.bsp necessary for processing. If not specified, multiple automatic downloads will trigger during multiprocessing of celestial body analysis.
ephem_path = r"C:\Users\ajspiel\Documents\OpenCSP\de430t.bsp"

# File Path to figure management specification for sofast-backend plots (not implement yet)

# Code Inputs for Analysis
cam_intensity_fractions = [0.5, 0.4]
analysis_fractions = [0.5]
celestial_object = "sun"
timezone = "America/Denver"

# Initial frame for analysis if selecting a subset of video data, mark as None if the interactive video exploration is desired.
start_frame = 14800
# final frame for analysis if selecting a subset of video data, mark as None if the interactive video exploration is desired.
end_frame = 32700
# reference pixel location in (row, column) that is illuminated during data preview as close to reference distance measurement pixel as possible.
# camera distortion and coordinate system corrections assume that the subject of this pixel with data represents the target latitude, longitude, and elevation provided for celestial vector analysis
reference_pixel = (500, 900)

# (Hours, minutes, seconds) negative values if the camera time is ahead of data acquisition time
camera_time_shift = (0,0,0)

# distance in meters from the camera to optic reference pixel
cam_to_optic_reference_distance = 99.94392

# Define observer location Example ≈NSTTF Tower 260 Level Balcony West Side

# (degree, minute, second) negative degree for south
observer_lat = (34, 57, 44.56)

# (degree, minute, second) negative degree for west
observer_long = (-106, 30, 34.90)

# elevation above sea level in meters
observer_elevation = 1756.8672

# Define target location Example ≈Sun Data Marker 2 In front of 5E8

# (degree, minute, second) negative degree for south
target_lat = (34, 57, 45.92)

# (degree, minute, second) negative degree for west
target_long = (-106, 30, 31.88)

# elevation above sea level in meters
target_elevation = 1706.88

# Pointing Estimate Details
# Input the ideal time that the spot is supossed to be centered in its travers across the camera (year, month, day, hour, minute, second). This needs to be in the same timezone specified as "timezone" in this initilization file.
ideal_time_spot_cross_camera = (2025, 6, 5, 15, 18, 20)

# Input ideal sun spot parameters to define the elliptical shape that traverses across camera and its orientation for pointing estimate model
# coordinates in meters from center of camera
ideal_spot_center = (0,0)
ideal_spot_axis_ratio = 1 # ratio of length between major and minor axis of the elliptical shape ratio of 1 yields a circle
ideal_spot_axis_orientation_angle = 0 # orientation of major axis of elliptical shape with respect to x-axis of planar traverse model
ideal_spot_traverse_direction = 0 # angle between x-axis and direction of travel across the elliptical shape where travel starts at the first point on the shape exterior as the ellipse sweeps right to left
sun_diameter_pad_multi = 1.2 # temporary multiplication value to correct simple ideal spot size and traverse time model to better reflect initial test data for function

# Sections to run, noted if not mandatory for primary functionality
extracted_video_frames = True

# mandatory for primary function, will not re-run if already completed for an analysis unless new cam_intensity_fraction(s) specified, then new levels will generate output
coverage_maps = True

# Useful but not mandatory
accelerated_video = True

# mandatory for primary function, will not re-run if already completed for an analysis unless new cam_intensity_fraction(s) specified, then new levels will generate output
time_history = True

# mandatory for primary function, will not re-run if already completed for an analysis unless new analysis_fraction(s) specified, then new levels will generate output
pixel_transitions = True

# Useful but not mandatory, plotting takes a long time for many active pixels
pixel_transition_plots = True

# mandatory for primary function, will not re-run if already completed for an analysis unless new analysis_fraction(s) specified, then new levels will generate output
celestial_vectors_data = True

# Useful but not mandatory, plotting takes a long time for many active pixels
celestial_vectors_plots = True

# mandatory for primary function, will not re-run if already completed for an analysis unless new analysis_fraction(s) specified, then new levels will generate output
lookfast_camera_adjust = True

# mandatory for primary function, will not re-run if already completed for an analysis unless new analysis_fraction(s) specified, then new levels will generate output
pointing_estimate = True
Loading