These pages describe how to use YORU v2.0.0-beta.4.
This is pre-release software. It targets the
develop4branch. For general lab use, v1.1.2 remains the recommended stable release, and its workflow is documented in the User Guides.Do not switch a running experiment to the beta halfway through. See Behaviour that changed below.
The full change list is on the Beta Release Notes page. These guides are the task-by-task version of the same information.
| Stable v1.1.2 | Beta v2.0.0-beta.4 | |
|---|---|---|
| Launcher | Google Chrome + local server (Eel) | Native window (pywebview), no browser, no port |
| Python | 3.10 | 3.10 |
| Detection / training backends | YOLOv5, YOLOv8 / YOLO11, RT-DETR, torchvision | YOLOv5 (bundled, as in v1), YOLOv8 / YOLO11, RT-DETR, torchvision, ONNX |
YOLOv5 .pt weights from v1 |
Supported | Supported again from Beta 4, with the same boxes as v1 |
| Default model of a new project | YOLOv5 (yolov5s.pt) |
YOLOv5 (yolov5s.pt); YOLO11 in an OBB project |
| PyTorch build (uv) | CUDA 12.4 | CUDA 12.8 — RTX 50-series supported, driver 570 or newer |
| Oriented bounding boxes (OBB) | — | YOLOv8 / YOLO11 |
| LabelImg | The one on PATH |
Bundled copy, with Click to Box and rotated boxes |
| Frame Capture | By hand | By hand, or Automatic Extraction (uniform / kmeans), in three dockable windows |
| Compute device | Automatic (CUDA → MPS → CPU) | Automatic (CUDA → MPS → CPU) |
| Trained model output | <project>/exp/ (YOLOv5), <project>/train2/ (ultralytics) |
<project>/exp_<model>/ |
trigger_pin in condition file |
Ignored (always pin 13) | Honoured |
trigger_threshold_configuration |
Ignored (fires at any confidence) | Applied |
| Evaluation of OBB models | — | Scored by the rotated boxes (polygon IoU, from Beta 4) |
| Guides | User Guides | These pages |
Every YORU screen opens sized to the monitor it is on, and centred. You can resize or maximise the window freely. Each screen has a Window menu:
| Item | What it does |
|---|---|
| Fit window to this screen | Resizes and re-centres the window for the display it is on now. Use this after moving YORU to a different monitor. |
| Maximize window | Fills the screen. |
| Text size | Small / Normal / Large, applied immediately. |
| Save layout now | Saves the current arrangement without waiting for you to close the window. |
| Reset layout to default | Forgets the saved arrangement and goes back to the built-in one. |
logs/ (yoru_windows.ini, and one custom_layout_<screen>.ini for each of those screens). If YORU cannot write there, they go to %LOCALAPPDATA%\YORU. Deleting the files has the same effect as Reset layout to default.uv sync; conda users install it by hand. The conda environment does not have to be recreated. See Install.tracking_id across versions. Video Analysis tracking was fixed, so re-analysing a movie can give different IDs. See Video Analysis.close(). See Custom Trigger Plugins.Everything above applies, plus the Beta 3 changes:
uv sync.w, h, angle were inserted between y_center and confidence. See Video Analysis.logs/custom_layout_analysis.ini.Everything above applies, plus the Beta 2 changes:
trigger_pin in every condition file. Beta 1 always used pin 13 regardless of this value; the beta now uses what the file says. Edit the YAML or rewire before your next experiment.trigger_threshold_configuration. Beta 1 never read it, so the trigger fired on any detection of the trigger class. It is now applied, so the trigger fires less often. If the value was raised to compensate, lower it back.exp_<model>/, not train/.config/custom_layout_*.ini files. Saved window layouts moved to logs/, so layouts reset once.Everything above applies, plus:
yolo_model_type: yolov5 or auto uses the bundled YOLOv5. See Training.Results produced under the beta are not always directly comparable with earlier versions:
.jpg / .jpeg / .bmp / .tif / .tiff as well as .png. Do not re-split a project mid-experiment — the split will differ from the one Beta 1 produced.trigger.result_max_age.tracking_id changed in Beta 4. Matching now uses only real distances and numbers IDs without gaps. See Video Analysis.yoru.log. Run it directly from a terminal to see the error, e.g. python -m yoru.train_GUI, and always launch YORU from the repository root.