LOST
0.0.1
LOST: Open-source Star Tracker
|
A set of algorithms that describes all or part of the star-tracking "pipeline". More...
#include <io.hpp>
Public Member Functions | |
Pipeline ()=default | |
Pipeline (CentroidAlgorithm *, StarIdAlgorithm *, AttitudeEstimationAlgorithm *, unsigned char *) | |
Construct a pipeline using the given algorithms, some of which may be null. More... | |
PipelineOutput | Go (const PipelineInput &) |
Run all stages of a pipeline. More... | |
std::vector< PipelineOutput > | Go (const PipelineInputList &) |
Convenience function to run the main Pipeline::Go function on each input. More... | |
Friends | |
Pipeline | SetPipeline (const PipelineOptions &values) |
Create a pipeline from command line options. More... | |
A set of algorithms that describes all or part of the star-tracking "pipeline".
A centroiding algorithm identifies the (x,y) pixel coordinates of each star detected in the raw image. The star id algorithm then determines which centroid corresponds to which catalog star. Finally, the attitude estimation algorithm determines the orientation of the camera based on the centroids and identified stars.
|
default |
lost::Pipeline::Pipeline | ( | CentroidAlgorithm * | centroidAlgorithm, |
StarIdAlgorithm * | starIdAlgorithm, | ||
AttitudeEstimationAlgorithm * | attitudeEstimationAlgorithm, | ||
unsigned char * | database | ||
) |
Construct a pipeline using the given algorithms, some of which may be null.
database | A pointer to the raw bytes of the database the star ID algorithm expects. If the database is NULL or not the type of database the star ID algorithm expects (almost always a multi-database), you'll get an error trying to identify stars later. |
PipelineOutput lost::Pipeline::Go | ( | const PipelineInput & | input | ) |
Run all stages of a pipeline.
This is the "main" method for pipelines. In space (or when using an image file as input), the PipelineInput will contain only an InputImage. In this case, Go
runs each star tracking algorithm in turn, passing the result of each step into the next one. When running on a generated image (or any pipeline input where methods other than InputImage are available), or using a Pipeline where some algorithms are not set, the behavior is more nuanced. Each algorithm will be run on the return value of the corresponding input method from the PipelineInput object, unless an earlier algorithm in the Pipeline returned a result, in which case that intermediate value is used instead of the value from the PipelineInput.
Definition at line 913 of file io.cpp.
std::vector< PipelineOutput > lost::Pipeline::Go | ( | const PipelineInputList & | inputs | ) |
Convenience function to run the main Pipeline::Go
function on each input.
Definition at line 1015 of file io.cpp.
|
friend |