Saqr/README.md

52 lines
1.5 KiB
Markdown

# Saqr — PPE Safety Detection on Unitree G1
Real-time PPE compliance (helmet, vest, boots, gloves, goggles) using YOLO11n,
designed to run on a Unitree G1 humanoid with an Intel RealSense D435I. On
UNSAFE the robot speaks a warning and plays the `reject` arm action.
## Layout
```
saqr/ # python package
core/ # detection + tracking + events (shared by CLI/GUI/bridge)
apps/ # CLI entry points (saqr, detect, train, manager, view_stream)
gui/ # PySide6 desktop GUI
robot/ # G1 bridge + DDS controller
utils/ # logger
scripts/ # deploy.sh, start_saqr.sh, run_local.sh, run_robot.sh, systemd unit
config/ # logging.json
data/ # dataset/, models/ (gitignored)
runtime/ # captures/, logs/, runs/ (gitignored)
docs/ # DEPLOY.md, start.md, use_case_catalogue.pdf
```
## Quick start
```bash
# Install the package (editable)
pip install -e .
# Local dev run (webcam)
saqr --source 0
# PySide6 GUI
pip install -e ".[gui]"
saqr-gui
# On the Unitree G1 (bridge owns the R2+X / R2+Y flow)
saqr-bridge --iface eth0 --source realsense --headless -- --stream 8080
```
Without installing, everything still works via `python -m`:
```bash
python -m saqr.apps.saqr_cli --source 0
python -m saqr.robot.bridge --iface eth0 --source realsense --headless
```
## Docs
- [docs/DEPLOY.md](docs/DEPLOY.md) — full deploy + robot setup.
- [docs/start.md](docs/start.md) — systemd auto-start workflow.
- [docs/use_case_catalogue.pdf](docs/use_case_catalogue.pdf) — PPE use-case spec.