- min_frames_for_inference: 32 (RoPE/attention needs ≥32 frames) - inference_timeout_s: 10800 (GX029818 timed out at 7200s with 493 frames) Authored-by: Poulpe <claude@nowyouknow.fr>
38 lines
1.2 KiB
YAML
38 lines
1.2 KiB
YAML
# QA thresholds — tuned from iteration cron
|
|
usbl:
|
|
min_points_per_segment: 5 # fewer → degraded
|
|
max_gap_seconds: 30 # gap > this → split segment
|
|
mad_sigma: 3.0 # MAD outlier threshold
|
|
moving_avg_window: 5 # smoothing window
|
|
|
|
ingest:
|
|
min_video_seconds: 120 # shorter segments skipped
|
|
max_timestamp_delta_seconds: 60 # EXIF vs USBL match tolerance
|
|
|
|
frame_extract:
|
|
fps: 1
|
|
width: 518
|
|
height: 294
|
|
underwater_r_minus_g: 5 # R < G-5 AND R < B-5 → hors eau
|
|
trim_min_frames: 8 # skip if fewer underwater frames
|
|
bottom_visible_pct_min: 25 # abaissé 30→25 — GX019817 (29%) récupérable, iter auto 2026-05-12
|
|
|
|
inference:
|
|
ply_conf_threshold: 1.5
|
|
max_frame_num: 1024
|
|
mode: streaming
|
|
keyframe_interval: 1
|
|
min_frames_for_inference: 32 # fewer frames → RoPE/attention mismatch errors
|
|
inference_timeout_s: 10800 # 3h (was 7200=2h, GX029818 timed out with 493 frames)
|
|
|
|
align:
|
|
max_translation_m: 500 # sanity check on alignment
|
|
min_inlier_ratio: 0.3 # umeyama inlier ratio
|
|
|
|
stitch:
|
|
voxel_size: 0.05
|
|
icp_max_distance: 0.5
|
|
icp_iterations: 50
|
|
use_ransac: true
|
|
ransac_iterations: 100000
|