完善 Autocal 多测点标定流程及会话复核
统一测点坐标、保持窗口和试验目录,补齐逐点初步分析。定向测试与真实视频闭环通过;两项轮询失败在修改前版本同样复现。
This commit is contained in:
@@ -271,25 +271,24 @@
|
||||
"uv": "U / V (px)",
|
||||
"position": "Mesh position",
|
||||
"levels": "Load levels (N)",
|
||||
"hold": "Planned hold",
|
||||
"hold_tip": "The planned hold time is saved; levels and recording do not advance automatically.",
|
||||
"hold": "Hold per level",
|
||||
"hold_tip": "Count down after arrival confirmation. End the hold window and prompt the next level; video continues. Time alone does not verify stability.",
|
||||
"reference": "Manual reference force (N)",
|
||||
"start": "Record this site",
|
||||
"start_tip": "Create one trial folder for this site and continuously record images and sensor output. This does not move the platform. One load-unload cycle uses this folder.",
|
||||
"confirm": "Mark load reached",
|
||||
"confirm_tip": "After reaching the target and entering the manual reference force, mark this level's start and begin its hold timer. Images are already recording.",
|
||||
"finish": "Stop and complete",
|
||||
"finish_tip": "After all levels are marked, stop recording, flush the files, and check this trial.",
|
||||
"abort": "Abort this recording",
|
||||
"abort_tip": "Stop recording, keep this folder, and mark it incomplete. Starting again creates a new folder; it does not resume this one.",
|
||||
"start": "Start this trial",
|
||||
"start_tip": "Create a trial in this calibration session. Record initial zero, loading, unloading and recovery continuously; no platform motion is issued.",
|
||||
"confirm": "Target reached: start hold",
|
||||
"confirm_tip": "Reach the current target and enter the actual reference load. Keep the load unchanged until the countdown ends.",
|
||||
"finish": "Complete this trial",
|
||||
"finish_tip": "After initial zero and every loading/unloading hold, stop recording, check and save the trial.",
|
||||
"abort": "End early (keep incomplete data)",
|
||||
"abort_tip": "End this trial immediately and keep its incomplete data. A retry creates a new trial in the same calibration session.",
|
||||
"load": "Load",
|
||||
"unload": "Unload",
|
||||
"next_step": "Next: {branch} to {load:g} N",
|
||||
"before_start": "Select a site and start the input, then begin recording",
|
||||
"ready_to_finish": "All levels marked; recording can be stopped",
|
||||
"next_step": "{branch} to {load:g} N; enter actual reference load and start hold",
|
||||
"before_start": "Select a site and start input, then start the trial with initial zero",
|
||||
"ready_to_finish": "All hold windows complete; complete this trial",
|
||||
"no_step": "No step pending",
|
||||
"progress": "Progress {done}/{total} · {status}",
|
||||
"held": " · Current level held {seconds:.1f} s",
|
||||
"source_state": "Input: {status} · frame {frame} · capture drops {dropped}",
|
||||
"replay_note": "Video replay is for debugging; manual reference loads cannot be synced to the original experiment.",
|
||||
"idle": "Idle",
|
||||
@@ -303,7 +302,17 @@
|
||||
"invalid_site": "Select a valid UV site first",
|
||||
"start_input": "Start camera or video input first",
|
||||
"reference_required": "Enter the actual reference load",
|
||||
"output_required": "Choose an output directory"
|
||||
"output_required": "Choose an output directory",
|
||||
"zero": "Initial zero",
|
||||
"holding": "Hold {branch} {load:g} N · {seconds:.1f} s remaining; do not change load",
|
||||
"close_session": "Finish calibration session",
|
||||
"close_session_tip": "Close the session containing multiple sites and trial attempts. Incomplete trials keep the session incomplete. The next trial creates a new session.",
|
||||
"session_none": "No calibration session yet; the first trial creates it.",
|
||||
"session_active": "Calibration session: {sites} sites · {trials} attempts\n{path}",
|
||||
"session_closed": "Calibration session closed ({status}): {path}",
|
||||
"close_before_mapping": "Finish the calibration session before changing UV mapping or bundle",
|
||||
"path": "Trial path (N): {path}",
|
||||
"invalid_levels": "Enter strictly increasing levels greater than 0 and at most 30 N"
|
||||
},
|
||||
"finger": {
|
||||
"title": "Finger calibration-point debug",
|
||||
@@ -362,13 +371,28 @@
|
||||
"preview_no_gl": "No OpenGL context: {error}",
|
||||
"preview_draw_failed": "Drawing failed: {error}",
|
||||
"preview_solve_failed": "Solve failed: {error}",
|
||||
"col_x": "x", "col_y": "y", "col_z": "z",
|
||||
"col_nx": "nx", "col_ny": "ny", "col_nz": "nz",
|
||||
"col_X": "X", "col_Y": "Y", "col_Z": "Z",
|
||||
"col_yaw": "yaw", "col_pitch": "pitch", "col_residual": "residual(°)",
|
||||
"col_x": "x",
|
||||
"col_y": "y",
|
||||
"col_z": "z",
|
||||
"col_nx": "nx",
|
||||
"col_ny": "ny",
|
||||
"col_nz": "nz",
|
||||
"col_X": "X",
|
||||
"col_Y": "Y",
|
||||
"col_Z": "Z",
|
||||
"col_yaw": "yaw",
|
||||
"col_pitch": "pitch",
|
||||
"col_residual": "residual(°)",
|
||||
"loaded": "Bundle loaded: {vertices} vertices · {triangles} triangles · {extent} mm · {scale} mm per unit",
|
||||
"load_failed": "Load failed: {error}",
|
||||
"picked": "Picked: residual {residual}° · yaw {yaw}° · pitch {pitch}°"
|
||||
"picked": "Picked: residual {residual}° · yaw {yaw}° · pitch {pitch}°",
|
||||
"export_sites": "Export operator site list…",
|
||||
"export_sites_tip": "Export all points in displayed order, with UV pixels and sensor/platform millimetres. UV origin matches calibration.",
|
||||
"export_no_points": "Pick UV sites first",
|
||||
"export_edited_point": "Point {order} was edited in 3D and no longer matches its UV pixel; pick it again before exporting",
|
||||
"sites_exported": "Operator site list exported: {path}",
|
||||
"col_u_px": "U (px)",
|
||||
"col_v_px": "V (px)"
|
||||
},
|
||||
"sequence": {
|
||||
"title": "Test sequence design",
|
||||
@@ -446,5 +470,33 @@
|
||||
"bas_loaded": "BAS loaded",
|
||||
"yes": "Yes",
|
||||
"no": "No"
|
||||
},
|
||||
"review": {
|
||||
"open": "Review calibration data…",
|
||||
"title": "Exploratory calibration review",
|
||||
"notice": "Inspection only: manual hold windows have not been verified stable. Replay does not establish original experiment timing. Fits are exploratory and never written to sensor configuration.",
|
||||
"save": "Save new review",
|
||||
"no_sites": "No sites in this session",
|
||||
"candidate": "Candidate window",
|
||||
"insufficient_samples": "Insufficient valid samples",
|
||||
"replay": "Replay debug",
|
||||
"unverified": "Stability unverified",
|
||||
"fit": "Exploratory loading fit: sensitivity {sensitivity_raw_per_n:.6g} raw/N; gain {gain_n_per_raw:.6g} N/raw; offset {offset_n:.6g} N; fit RMSE {rmse_n:.4g} N (not independent validation error)",
|
||||
"no_fit": "Insufficient load levels or raw-signal variation for a fit.",
|
||||
"fit_line": "Exploratory loading fit",
|
||||
"raw_axis": "Raw normal signal (raw)",
|
||||
"force_axis": "Manual reference force (N)",
|
||||
"chart_title": "Hold-window means: loading vs unloading",
|
||||
"uv_title": "Site sensitivity: blue→red {low:.4g}→{high:.4g} raw/N; grey has no fit",
|
||||
"issues": "Skipped {count} incomplete trials; complete holds still require stability review.",
|
||||
"saved": "Saved new review: {path}",
|
||||
"col_trial": "Trial",
|
||||
"col_branch": "Phase",
|
||||
"col_load": "Reference (N)",
|
||||
"col_samples": "Valid samples",
|
||||
"col_mean": "Raw mean",
|
||||
"col_std": "Raw std",
|
||||
"col_duration": "Hold (s)",
|
||||
"col_quality": "Quality"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user