Ocean
|
This class implements a set of pose projections. More...
Data Structures | |
class | ErrorObject |
This class implements a error object. More... | |
Public Types | |
typedef std::vector< PoseProjection > | PoseProjections |
Definition of a vector holding pose projections. More... | |
typedef std::vector< ErrorObject > | ErrorObjects |
Definition of a vector holding error objects. More... | |
Public Member Functions | |
PoseProjectionSet () | |
Creates an empty set of pose projections. More... | |
~PoseProjectionSet () | |
Destructs a set of pose projections. More... | |
unsigned int | width () const |
Returns the width of the camera in pixel used for all projections. More... | |
unsigned int | height () const |
Returns the height of the camera in pixel used for all projections. More... | |
void | addPoseProjection (const PoseProjection &poseProjection) |
Adds a new pose projection. More... | |
const PoseProjections & | poseProjections () const |
Returns the registered pose projections. More... | |
size_t | size () const |
Returns the number of registered pose projections. More... | |
void | setDimension (const unsigned int width, const unsigned int height) |
Sets the dimension of the camera used for all pose projections. More... | |
void | clear () |
Clears the projection set. More... | |
template<Geometry::Estimator::EstimatorType tEstimator> | |
HomogenousMatrix4 | findPoseWithMinimalError (const Geometry::ImagePoint *imagePoints, const size_t numberImagePoints, const size_t validImagePoints, const Geometry::Error::ErrorDetermination errorDetermination, Scalar *resultingError=nullptr, Worker *worker=nullptr) |
Returns the pose with the minimal distance error. More... | |
template<Geometry::Estimator::EstimatorType tEstimator> | |
unsigned int | findPosesWithMinimalError (const Geometry::ImagePoint *imagePoints, const size_t numberImagePoints, const size_t validImagePoints, const Geometry::Error::ErrorDetermination errorDetermination, const size_t numberPoses, HomogenousMatrix4 *poses, Scalar *resultingErrors=nullptr, Worker *worker=nullptr) |
Returns the poses with the minimal distance error. More... | |
bool | isEmpty () const |
Returns whether this set holds no pose projections. More... | |
operator bool () const | |
Returns whether this set holds at least one pose projection. More... | |
Private Member Functions | |
template<Geometry::Estimator::EstimatorType tEstimator> | |
void | findPoseWithMinimalErrorSubset (const Geometry::ImagePoint *imagePoints, const size_t numberImagePoints, const size_t validImagePoints, const Geometry::Error::ErrorDetermination errorDetermination, ErrorObject *errorObjects, const unsigned int firstProjection, const unsigned int numberProjections) |
Returns the pose with the minimal distance error for a subset of the pose projections. More... | |
Private Attributes | |
PoseProjections | projectionSetPoseProjections |
All registered pose projections. More... | |
unsigned int | projectionSetCameraWidth |
Width of the camera in pixel used for all pose projections. More... | |
unsigned int | projectionSetCameraHeight |
Height of the camera in pixel used for all pose projections. More... | |
This class implements a set of pose projections.
typedef std::vector<ErrorObject> Ocean::Tracking::PoseProjectionSet::ErrorObjects |
Definition of a vector holding error objects.
typedef std::vector<PoseProjection> Ocean::Tracking::PoseProjectionSet::PoseProjections |
Definition of a vector holding pose projections.
Ocean::Tracking::PoseProjectionSet::PoseProjectionSet | ( | ) |
Creates an empty set of pose projections.
Ocean::Tracking::PoseProjectionSet::~PoseProjectionSet | ( | ) |
Destructs a set of pose projections.
|
inline |
Adds a new pose projection.
poseProjection | Pose projection to be added |
void Ocean::Tracking::PoseProjectionSet::clear | ( | ) |
Clears the projection set.
unsigned int Ocean::Tracking::PoseProjectionSet::findPosesWithMinimalError | ( | const Geometry::ImagePoint * | imagePoints, |
const size_t | numberImagePoints, | ||
const size_t | validImagePoints, | ||
const Geometry::Error::ErrorDetermination | errorDetermination, | ||
const size_t | numberPoses, | ||
HomogenousMatrix4 * | poses, | ||
Scalar * | resultingErrors = nullptr , |
||
Worker * | worker = nullptr |
||
) |
Returns the poses with the minimal distance error.
The number of given image points must be equal or small to the number of internal pose points of this object.
imagePoints | Image points to find corresponding pose points for |
numberImagePoints | Number of given image points |
validImagePoints | Number of valid image points expecting to have corresponding points in the pose points, with range [1, numberImagePoints] |
errorDetermination | Depending on this flag uniqueAveragedRobustErrorInPointCloud, approximatedAveragedRobustErrorInPointCloud() or ambiguousAveragedRobustErrorInPointCloud() will be used |
numberPoses | Number of poses to be found |
poses | Resulting poses, make sure that the memory block provides enough space |
resultingErrors | Optional resulting minimal average square errors individual for each returned pose, make sure that the memory block provides enough space |
worker | Optional worker object to distribute the computation |
tEstimator | Estimator to be applied |
|
inline |
Returns the pose with the minimal distance error.
The number of given image points must be equal or small to the number of internal pose points of this object.
imagePoints | Image points to find corresponding pose points for |
numberImagePoints | Number of given image points |
validImagePoints | Number of valid image points expecting to have corresponding points in the pose points, with range [1, numberImagePoints] |
errorDetermination | Depending on this flag uniqueAveragedRobustErrorInPointCloud, approximatedAveragedRobustErrorInPointCloud() or ambiguousAveragedRobustErrorInPointCloud() will be used |
resultingError | Optional resulting minimal average square error |
worker | Optional worker object to distribute the computation |
tEstimator | Estimator to be applied |
|
private |
Returns the pose with the minimal distance error for a subset of the pose projections.
imagePoints | Image points to find corresponding pose points for |
numberImagePoints | Number of given image points |
validImagePoints | Number of valid image points expecting to have corresponding points in the pose points, with range [1, numberImagePoints] |
errorDetermination | Depending on this flag uniqueAveragedRobustErrorInPointCloud, approximatedAveragedRobustErrorInPointCloud() or ambiguousAveragedRobustErrorInPointCloud() will be used |
errorObjects | Error objects receiving the estimated error values |
firstProjection | First projection to be handled |
numberProjections | Number of projections to be handled |
tEstimator | Estimator to be applied |
|
inline |
Returns the height of the camera in pixel used for all projections.
|
inline |
Returns whether this set holds no pose projections.
|
inlineexplicit |
Returns whether this set holds at least one pose projection.
|
inline |
Returns the registered pose projections.
|
inline |
|
inline |
Returns the number of registered pose projections.
|
inline |
Returns the width of the camera in pixel used for all projections.
|
private |
Height of the camera in pixel used for all pose projections.
|
private |
Width of the camera in pixel used for all pose projections.
|
private |
All registered pose projections.