This repo is the application layer in the vision-stack cluster. It owns CLI parsing,
app configuration, runtime wiring, visualization, and end-to-end execution flow.
CMakeLists.txt: actual build requirements, backend options, and fetched dependenciescmake/versions.cmake: dependency-ref derivation and version-loading behaviordocs/generated/supported-model-types.md: generated upstream TaskFactory model-type inventory
neuriplo-infer: CLI, configuration, runtime wiring, visualization, end-to-end app flowneuriplo-tasks: task contracts, preprocessing, postprocessing, result types, model-specific task logicneuriplo: backend abstractions, backend adapters, runtime compatibility, backend dependency versionsvideocapture: source semantics, file/stream/camera handling, video backend priority and behavior
- Tensor shapes, dtype semantics, and result-schema meaning
- Backend implementation details or backend package versions
- Video backend selection policy beyond wiring through
videocapture - Upstream model-type inventory beyond the subset this app routes and validates end to end
Those contracts live in sibling repos and should not be redefined here in hand-maintained prose.
- The build currently requires CMake 3.24 and C++20. Read these from
CMakeLists.txt, not from copied snippets in docs. - This repo derives a shared dependency ref for
neuriplo-tasks,neuriplo, andvideocaptureincmake/versions.cmake. - Backend package versions such as ONNX Runtime, TensorRT, LibTorch, OpenVINO, TensorFlow, and CUDA are owned by
neuriploand consumed through setup/build wiring here.
The generated list in docs/generated/supported-model-types.md
reflects the upstream neuriplo-tasks TaskFactory inventory.
That list is broader than the guarantees made by this application repo. End-to-end behavior still depends on the app's own CLI validation, task routing, rendering, and test coverage.
The app runtime is split by responsibility:
CommandLineParser: parses CLI flags and validates app-owned input paths and task-specific assets.NeuriploInfer: sets up logging, builds anInferencePipeline, and selects a CLI command.InferencePipelineBuilder: wires labels, backend engine, model metadata,neuriplo-taskstask config, task instance, and result renderer.CLICommands: owns executable workflows such as normal inference, warmup, benchmarking, image-understanding dispatch, and metadata export.ResultRenderer: rendersneuriplo-tasks::Resultvariants for each routedTaskType.TaskRouting: maps app model-type strings toneuriplo_tasks::TaskTypeand must stay aligned withneuriplo_tasks::TaskFactory.
--export_metadata follows the same backend and task setup path as inference, then prints model type, routed task type, input layers, and output layers before exiting. It intentionally does not require a source.
Repo-local validation remains the canonical CMake test flow from ops metadata. For deeper local checks, scripts/check_code_quality.sh runs format checking, cppcheck, an AddressSanitizer/UndefinedBehaviorSanitizer test build, and a ThreadSanitizer test build when those tools are installed.