Remove dataset replay

This commit is contained in:
Ayzen
2026-10-06 14:31:07 +03:00
parent 4947d5a14e
commit aef549ea76
15 changed files with 32 additions and 650 deletions
+6 -35
View File
@@ -142,8 +142,8 @@ Run the desktop GUI through the launcher for build and single-instance handling:
`start.sh` also supports `--headless` (offscreen, auto-start), `--auto-start`,
`--producer-only`, `--skip-build`, `--build-only`, and `--clean-shm`; see
`./start.sh --help`. Pass `--profile PATH` so launcher provisioning and the GUI
use the same profile. The producer is selected from `radar.model`, with dataset
replay taking precedence. There is no per-device flag. Provision dependencies
use the same profile. The producer is selected from `radar.model`; there is no
per-device flag. Provision dependencies
before unattended use: headless startup does not install missing packages.
For development, `.venv/bin/python -m python_app.gui.main` starts the GUI directly,
@@ -154,12 +154,6 @@ without the launcher's build step or single-instance lock.
`requirements.txt` pins PyQt6 below 6.8 on aarch64 for the older glibc used by
Jetson images. CUDA comes from JetPack in `/usr/local/cuda`; pip CUDA packages
are installed only on x86_64. Use the same build commands and launcher as above.
For dataset replay, first copy the dataset locally and update
`radar.replay.dataset_dir` in the profile; example paths are machine-specific:
```bash
./start.sh --profile run_config_examples/run_config_replay_vna.example.json
```
The USB updater can create a fresh venv with an already installed interpreter,
for example `bash radar_update/update.sh --python 3.13`. The system Python does
@@ -167,12 +161,9 @@ not need to be replaced.
## Running without hardware (emulation)
Two ways to run the full pipeline with no radar attached:
**Mock producer (synthetic data).** The default `run_config.json` already sets
`radar.driver_mode: "mock"`, so the producer generates synthetic S-parameters.
Mock acquisition supports the LibreVNA models; Kamil ADC uses native acquisition
or recorded-dataset replay without devices.
The default `run_config.json` already sets `radar.driver_mode: "mock"`, so the
producer generates synthetic S-parameters and no radar is needed. Mock acquisition
supports the LibreVNA models; Kamil ADC needs native acquisition.
Both LibreVNA modes share one simulator: a point reflector moves back and forth
along the antenna array and between depths 3.25–4.25 m over an eight-second cycle.
Each S21 uses the actual transmitter–target–receiver distance from the configured
@@ -194,26 +185,6 @@ The preprocessor still requires S21 calibration/reference sets. Start the GUI:
Open **Preprocessing…**, use **Create Neutral S21 Sets**, then **Start**. This makes
identity calibration + zero reference, preserving the simulated S21 samples.
**Dataset replay (recorded scene).** When
`radar.replay.dataset_dir` is set in the profile, the supervisor launches
`python_app.scripts.replay_raw_producer` instead of the normal producer: it
replays the collection directories in that folder into the raw ring. Point the
path at a saved stage such as `dataset/preprocessed`, containing
`NNNN_idK_ns<timestamp>/` directories with `meta.json` and `i*_o*_{freq,s21}.npy`.
Replay follows the recorded cadence scaled by `radar.replay.rate_scale`;
`radar.replay.loop` defaults to true. Trace windows preserve the recorded spacing
for SAR, even with accelerated replay. Each collection starts at its actual publication
time for acquisition identity and retains the original duration for legacy GPR.
For an already-preprocessed recording, select neutral through/reference sets
and disable notch and object correction to preserve the recorded S21 values.
A ready profile for the VNA_AlGo tank005 dataset is provided. Its neutral sets are
created once with the **Create Neutral S21 Sets** button of the preprocessing panel:
```bash
# interactive GUI (mode sar3d is pre-selected by the profile's gui section):
./start.sh --profile run_config_examples/run_config_replay_vna.example.json
```
Finer voxels increase SAR3D work as 1/`SAR_VOXEL_M`³. Increase the voxel size when
a faster preview matters more than spatial resolution. Processing failures appear
above the plots and a failed single capture
@@ -518,4 +489,4 @@ GUI profiles, run configs, session state and live processing settings use shared
atomic writers with unique temporary files. Profiles and run/session settings sync
their file and directory; frequent live settings avoid extra disk syncs. A failed
write before replacement leaves the previous file intact. The launcher and supervisor
share acquisition producer selection, with replay taking precedence over the model.
share acquisition producer selection.