# Examples User-facing demo scripts for the Orisys SDK. Run from the repository root. ## Layout - `basic_pipeline.py` — compound-eye sensor, OpenCV visualization - `plot_data.py` — compound-eye sensor, force charts (PyQtGraph) - `two_sensor_pipeline.py` — dual-sensor multiprocessing demo - `finger_pipeline.py` — finger UV minimal pipeline - `finger_pipeline_3dview.py` — finger UV unified Qt dashboard - `pipeline/` — runtime acquisition (`FingerPipeline`, `FingerFrameView`) - `gui/` — Qt dashboard composition (3D + 2D + charts in one window) - `viz/` — rendering helpers (offscreen mesh, 2D panels, charts) ## Typical usage ```bash pip install -e ".[gui]" python examples/finger_pipeline_3dview.py -v 0 -c ./config/dd02-ov.json # Sales-demo shim python scripts/qt_viewer_finger.py -v 0 -c ./config/dd02-ov.json ``` ## Requirements - SDK installed (`pip install -e .`) - camera or test video - JSON config under `./config/` GUI examples additionally require: ```bash pip install -e ".[gui]" ``` ## Notes - Dashboard: click **启动** to start acquisition; `Q` quit, `R` reset, `S`/`E` record, `Esc` fullscreen. ## Windows standalone folder (CPU-only) Build a portable folder with bundled Python, packages, `config/`, and `assets/`: ```bat conda activate py310 pip install -e ".[gui]" pip install nuitka ordered-set zstandard build\build_gui_win.bat ``` Output: ``` dist/OrisysDashboard/ OrisysDashboard.exe config/ assets/ README.txt (+ bundled DLLs and runtime files) ``` Run: ```bat cd dist\OrisysDashboard OrisysDashboard.exe --video path\to\video.mp4 ``` After building, smoke-test bundled files and `--help`: ```bat python build\verify.py --gui-dist ``` Manual QA on a machine without Python: 1. Launch `OrisysDashboard.exe` — dashboard window opens 2. Play a bundled or local video — 3D mesh and charts update 3. Confirm default config resolves to `config\dd02-ov.json` 4. Toggle settings (log, displacement arrows, thresholds) Notes: - One-folder layout is recommended (not a single-file exe) for Open3D + PyQt5 reliability - CPU-only: CUDA/CuPy are excluded from the build - Expect a large folder (Open3D, OpenCV, SciPy, Qt) - Frozen path resolution lives in `examples/app_paths.py`