Expand description
From files on disk to a conditioning report.
The core provides the pieces — downsampling, normals, an index, ICP, conditioning — and every front end has to assemble them in the same order, with the same defaults, or its numbers stop being comparable with anyone else’s. While that assembly lived inside the binary the second front end had to copy it, and two copies drift. It lives here instead, and the command line and the viewer call the same code.
Nothing here knows about argument parsing or about drawing.
use rigidity_pipeline::{PrepareParams, RegisterParams, prepare, register_pair};
let params = PrepareParams::default();
let moving = prepare("source.ply".as_ref(), ¶ms)?;
let fixed = prepare("target.ply".as_ref(), ¶ms)?;
let result = register_pair(&moving, &fixed, &RegisterParams::default());
println!("{:.5} m", result.rmse);Structs§
- Prepare
Params - Settings shared by everything that turns a raw cloud into a surface.
- Prepared
- A cloud ready to be registered: points, normals and an index over them.
- Progress
- How far along one stage is.
- Register
Params - Settings of the registration itself.
- Report
Params - What the numbers in a report are measured against.
Enums§
- Pipeline
Error - Anything that can go wrong between a file and a report.
- Stage
- Which part of the work a
Progressreport is about.
Functions§
- analyse_
cloud - The conditioning of a single surface.
- analyse_
registration - The conditioning of a registration, at a given pose.
- prepare
- Reads a cloud and prepares it.
- prepare_
cloud - Prepares a cloud that is already in memory.
- prepare_
cloud_ observed - The same, reporting progress.
- prepare_
observed - The same, reporting progress.
- register_
pair - Registers
movingontofixed, starting from the identity. - register_
pair_ observed - The same, from a given initial pose and with an observer.
- transform_
cloud - Applies a pose to every point of a cloud.