1#ifndef BundleLidarControlPoint_h
2#define BundleLidarControlPoint_h
9#include <QSharedPointer>
11#include "BundleControlPoint.h"
12#include "BundleMeasure.h"
13#include "BundleSettings.h"
BundleControlPoint(BundleSettingsQsp bundleSettings, ControlPoint *point)
Constructs a BundleControlPoint object from a ControlPoint.
int applyLidarRangeConstraints(SparseBlockMatrix &normalsMatrix, LinearAlgebra::MatrixUpperTriangular &N22, SparseBlockColumnMatrix &N12, LinearAlgebra::VectorCompressed &n1, LinearAlgebra::Vector &n2)
Applies range constraint between image and lidar point acquired simultaneously.
BundleLidarControlPoint(BundleSettingsQsp bundleSettings, LidarControlPointQsp lidarControlPoint)
Constructs a BundleLidarControlPoint object from a LidarControlPoint.
BundleLidarRangeConstraintQsp rangeConstraint(int n)
Returns range constraint at index n.
int numberRangeConstraints()
Returns number of range constraints between this lidar point & images acquired simultaneously.
void computeResiduals()
Computes the residuals for this BundleLidarControlPoint.
virtual void applyParameterCorrections(LinearAlgebra::Vector imageSolution, SparseBlockMatrix &sparseNormals, const BundleTargetBodyQsp target)
Apply the parameter corrections to the lidar range.
double range()
Returns range between this point and ?
void copy(const BundleLidarControlPoint &src)
Copies given BundleLidarControlPoint to this BundleLidarControlPoint.
void initializeRangeConstraints()
Initialize range constraints.
~BundleLidarControlPoint()
TODO: implement?
double vtpvRangeContribution()
Returns Weighted sum of squares of range residuals for this point.
double sigmaRange()
Returns sigma of observed range.
Implements range constraint between image position and lidar point acquired simultaneously with the i...
boost::numeric::ublas::compressed_vector< double > VectorCompressed
Definition for an Isis::LinearAlgebra::VectorCompressed of doubles.
boost::numeric::ublas::vector< double > Vector
Definition for an Isis::LinearAlgebra::Vector of doubles.
boost::numeric::ublas::symmetric_matrix< double, boost::numeric::ublas::upper > MatrixUpperTriangular
Definition for an Isis::LinearAlgebra::MatrixUpperTriangular of doubles with an upper configuration.
This is free and unencumbered software released into the public domain.
This is free and unencumbered software released into the public domain.
QSharedPointer< BundleLidarControlPoint > BundleLidarControlPointQsp
QSharedPointer to a BundleLidarControlPoint.
QSharedPointer< BundleSettings > BundleSettingsQsp
Definition for a BundleSettingsQsp, a shared pointer to a BundleSettings object.
QSharedPointer< BundleLidarRangeConstraint > BundleLidarRangeConstraintQsp
Typdef for BundleLidarRangeConstraint QSharedPointer.
QSharedPointer< LidarControlPoint > LidarControlPointQsp
Definition for a shared pointer to a LidarControlPoint.
QSharedPointer< BundleTargetBody > BundleTargetBodyQsp
Definition for BundleTargetBodyQsp, a QSharedPointer to a BundleTargetBody.