CommonLibraries/README.md

35 lines
2.0 KiB
Markdown
Raw Normal View History

# YoloRuntime
Shared C++17 Runtime, C ABI 5, for Windows x64 CPU and Linux AArch64 RK3588.
This is the sole production source for Studio, its SDK packages and MatchVerify.
Detect, CLS, Seg, OBB and Pose are retained. Seg supports minimum enclosing circle
and minimum-area rotated rectangle; no robust-circle algorithm is added.
## Build and consume
Windows: `powershell -ExecutionPolicy Bypass -File scripts/verify.ps1`.
Set `ONNXRUNTIME_ROOT` as a CMake cache path when using a non-default SDK.
Linux AArch64: configure with explicit `RKNN_MODEL_ZOO_ROOT` and the cross compiler;
Studio's build-runtime scripts supply these external dependencies. Native Linux
geometry/ABI tests can build with RKNN backends disabled.
Consumers may use `add_subdirectory` or installed `find_package(YoloRuntime CONFIG REQUIRED)`
and `YoloRuntime::Runtime`. Public headers and API names remain unchanged.
Use `yolo_runtime_infer_image` and `yolo_result_set_get_seg_geometry` with an explicit
geometry mode. Views are borrowed until `yolo_result_set_release`; copy masks first.
Angles are radians and all returned image coordinates are original-image pixels.
Entry-point paths and configuration model paths are UTF-8 on both platforms.
Every install includes `source-identity.json` and `runtime-manifest.json`.
The source revision hashes production sources/build scripts, not a moving branch name.
The manifest hashes all installed files. Consumers must deploy the full matching
dependency set and verify it before loading/packaging; they must never silently use
an older decoder. Rebuild/redeploy to update installed applications; no hot updater.
`python scripts/artifacts.py verify --root <install>` verifies the manifest.
The Windows and RK3588 source revisions must match before a dual-platform delivery.
Binary hashes differ between platforms and build toolchains by design.
Historical origin: RK3588_AI_Platform Runtime ABI 5 at repository HEAD
868a5f22f00ff2c81c3d0a6d2037400f037ac924, with its working source preserved during migration.