srivarra commited on
Commit
b3254d4
·
1 Parent(s): ec6b668

added reset parameters button

Browse files
Files changed (1) hide show
  1. optimize_demo.py +30 -0
optimize_demo.py CHANGED
@@ -605,6 +605,11 @@ def create_gradio_interface(plate_metadata, default_fields, data_xr, pixel_scale
605
  info="Azimuthal angle of illumination tilt",
606
  )
607
 
 
 
 
 
 
608
  gr.Markdown("---")
609
 
610
  # Section 4: Reconstruction Actions
@@ -675,6 +680,7 @@ def create_gradio_interface(plate_metadata, default_fields, data_xr, pixel_scale
675
  na_ill_slider,
676
  tilt_zenith_slider,
677
  tilt_azimuth_slider,
 
678
  num_iterations_slider,
679
  optimize_btn,
680
  reconstruct_btn,
@@ -702,6 +708,7 @@ def _wire_event_handlers(
702
  na_ill_slider,
703
  tilt_zenith_slider,
704
  tilt_azimuth_slider,
 
705
  num_iterations_slider,
706
  optimize_btn,
707
  reconstruct_btn,
@@ -723,6 +730,29 @@ def _wire_event_handlers(
723
  outputs=[z_slider, image_viewer, current_data_xr, current_pixel_scales],
724
  )
725
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
726
  # NA slider linking: Ensure NA_illumination <= NA_detection (physical constraint)
727
  # Only enforce when NA_detection changes (avoid feedback loop)
728
  def enforce_na_constraint(na_det_value, na_ill_value):
 
605
  info="Azimuthal angle of illumination tilt",
606
  )
607
 
608
+ # Reset button
609
+ reset_params_btn = gr.Button(
610
+ "🔄 Reset Parameters", variant="secondary", size="sm"
611
+ )
612
+
613
  gr.Markdown("---")
614
 
615
  # Section 4: Reconstruction Actions
 
680
  na_ill_slider,
681
  tilt_zenith_slider,
682
  tilt_azimuth_slider,
683
+ reset_params_btn,
684
  num_iterations_slider,
685
  optimize_btn,
686
  reconstruct_btn,
 
708
  na_ill_slider,
709
  tilt_zenith_slider,
710
  tilt_azimuth_slider,
711
+ reset_params_btn,
712
  num_iterations_slider,
713
  optimize_btn,
714
  reconstruct_btn,
 
730
  outputs=[z_slider, image_viewer, current_data_xr, current_pixel_scales],
731
  )
732
 
733
+ # Reset parameters to initial values
734
+ def reset_parameters():
735
+ """Reset all reconstruction parameters to their initial config values."""
736
+ return (
737
+ Config.OPTIMIZABLE_PARAMS["z_offset"][1],
738
+ Config.OPTIMIZABLE_PARAMS["numerical_aperture_detection"][1],
739
+ Config.OPTIMIZABLE_PARAMS["numerical_aperture_illumination"][1],
740
+ Config.OPTIMIZABLE_PARAMS["tilt_angle_zenith"][1],
741
+ Config.OPTIMIZABLE_PARAMS["tilt_angle_azimuth"][1],
742
+ )
743
+
744
+ reset_params_btn.click(
745
+ fn=reset_parameters,
746
+ inputs=[],
747
+ outputs=[
748
+ z_offset_slider,
749
+ na_det_slider,
750
+ na_ill_slider,
751
+ tilt_zenith_slider,
752
+ tilt_azimuth_slider,
753
+ ],
754
+ )
755
+
756
  # NA slider linking: Ensure NA_illumination <= NA_detection (physical constraint)
757
  # Only enforce when NA_detection changes (avoid feedback loop)
758
  def enforce_na_constraint(na_det_value, na_ill_value):