🟢 Starting Calibration Pipeline === Processing MDCP3D-SL-006_W029(6)_2026-03-05 === ------------------------------------------------------------------- Step 1: Digitization ------------------------------------------------------------------- [🔄] Full PTD mode: Processing ALL images then creating calibration subset [📸] Digitizing ALL images... [📸] Full dataset mode: Processing ALL images (no debug visualizations) [INFO] Found 4 las0.zip files to process Processing Rigs: 0%| | 0/4 [00:00 Calculating the casing center ... [INFO] Using 80 total sampled bright frames Computing max image from bright frames: 0%| | 0/80 [00:00", line 198, in _run_module_as_main File "", line 88, in _run_code File "/app/slick/__main__.py", line 754, in main() File "/app/slick/__main__.py", line 703, in main best_params = run_calibration( ^^^^^^^^^^^^^^^^ File "/app/slick/__main__.py", line 337, in run_calibration fx_params: Parameters = optimize_sequentially( ^^^^^^^^^^^^^^^^^^^^^^ File "/app/slick/calibrate/optimize.py", line 339, in optimize_sequentially updated_params = optimize_param_set( ^^^^^^^^^^^^^^^^^^^ File "/app/slick/calibrate/optimize.py", line 125, in optimize_param_set initial_score = round(scorer.evaluate_dataset(dataset, base_params), 3) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/slick/calibrate/scorers.py", line 38, in evaluate_dataset undistorted = undistorted_copy_dataset(dataset, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/slick/undistort/undistort.py", line 210, in undistorted_copy_dataset new_dataset.add_rig(undistorted_copy_group(group, params)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/slick/undistort/undistort.py", line 197, in undistorted_copy_group new_frames = [undistorted_copy_frame(frame, params) for frame in group.frames] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/slick/undistort/undistort.py", line 197, in new_frames = [undistorted_copy_frame(frame, params) for frame in group.frames] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/slick/undistort/undistort.py", line 193, in undistorted_copy_frame return frame.copy_with_new_points(undistort_points(frame.points, params)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/slick/undistort/undistort.py", line 156, in undistort_points raise ValueError("Points must be Nx2") ValueError: Points must be Nx2