Isis Developer Reference
|
An image bundle adjustment object. More...
#include <BundleAdjust.h>
Public Slots | |
bool | solveCholesky () |
Compute the least squares bundle adjustment solution using Cholesky decomposition. More... | |
void | abortBundle () |
Flag to abort when bundle is threaded. More... | |
void | outputBundleStatus (QString status) |
Slot for deltack and jigsaw to output the bundle status. More... | |
ControlNetQsp | controlNet () |
Returns a pointer to the output control network. More... | |
SerialNumberList * | serialNumberList () |
Returns a pointer to the serial number list. More... | |
QString | fileName (int index) |
Return the ith filename in the cube list file given to constructor. More... | |
QString | iterationSummaryGroup () const |
Returns the iteration summary string. More... | |
bool | isConverged () |
Returns if the BundleAdjust converged. More... | |
Table | cMatrix (int index) |
Return the updated instrument pointing table for the ith cube in the cube list given to the constructor. More... | |
Table | spVector (int index) |
Return the updated instrument position table for the ith cube in the cube list given to the constructor. More... | |
QString | modelState (int index) |
Return the updated model state for the ith cube in the cube list given to the constructor. More... | |
int | numberOfImages () const |
Returns the number of images. More... | |
double | iteration () const |
Returns what iteration the BundleAdjust is currently on. More... | |
Signals | |
void | statusUpdate (QString) |
void | error (QString) |
void | iterationUpdate (int) |
void | pointUpdate (int) |
void | statusBarUpdate (QString) |
void | resultsReady (BundleSolutionInfo *bundleSolveInformation) |
void | finished () |
Public Member Functions | |
BundleAdjust (BundleSettingsQsp bundleSettings, const QString &cnetFile, const QString &cubeList, bool printSummary=true) | |
Construct a BundleAdjust object from the given settings, control network file, and cube list. More... | |
BundleAdjust (BundleSettingsQsp bundleSettings, QString &cnet, SerialNumberList &snlist, bool printSummary=true) | |
Construct a BundleAdjust object with held cubes. More... | |
BundleAdjust (BundleSettingsQsp bundleSettings, Control &cnet, SerialNumberList &snlist, bool bPrintSummary) | |
Constructs a BundleAdjust object using a Control object. More... | |
BundleAdjust (BundleSettingsQsp bundleSettings, ControlNet &cnet, SerialNumberList &snlist, bool printSummary=true) | |
Constructs a BundleAdjust object using a ControlNet object. More... | |
BundleAdjust (BundleSettingsQsp bundleSettings, ControlNetQsp cnet, const QString &cubeList, bool printSummary=true) | |
Constructs a BundleAdjust from an already created ControlNet within a shared pointer. More... | |
BundleAdjust (BundleSettingsQsp bundleSettings, Control &control, QList< ImageList * > imgList, bool printSummary) | |
Thread safe constructor. More... | |
~BundleAdjust () | |
Destroys BundleAdjust object, deallocates pointers (if we have ownership), and frees variables from cholmod library. More... | |
BundleSolutionInfo * | solveCholeskyBR () |
Compute the least squares bundle adjustment solution using Cholesky decomposition. More... | |
QList< ImageList * > | imageLists () |
This method returns the image list used in the bundle adjust. More... | |
bool | isAborted () |
Returns if the BundleAdjust has been aborted. More... | |
An image bundle adjustment object.
BundleAdjust is used to perform a bundle adjustment on overlapping ISIS cubes. Using the collineariy condition, BundleAdjust can construct a system of normal equations and then using the CHOLMOD library, solve that system.
Isis::BundleAdjust::BundleAdjust | ( | BundleSettingsQsp | bundleSettings, |
const QString & | cnetFile, | ||
const QString & | cubeList, | ||
bool | printSummary = true |
||
) |
Construct a BundleAdjust object from the given settings, control network file, and cube list.
bundleSettings | A shared pointer to the BundleSettings to be used. |
cnetFile | The filename of the control network to be used. |
cubeList | The list of filenames of the cubes to be adjusted. |
printSummary | If summaries should be printed each iteration. |
Isis::BundleAdjust::BundleAdjust | ( | BundleSettingsQsp | bundleSettings, |
QString & | cnetFile, | ||
SerialNumberList & | snlist, | ||
bool | printSummary = true |
||
) |
Construct a BundleAdjust object with held cubes.
bundleSettings | A shared pointer to the BundleSettings to be used. |
cnetFile | The filename of the control network to be used. |
cubeList | The list of filenames of the cubes to be adjusted. |
heldList | The list of filenames of the held cubes. Held cubes must be in both heldList and cubeList. |
printSummary | If summaries should be printed each iteration. |
Isis::BundleAdjust::BundleAdjust | ( | BundleSettingsQsp | bundleSettings, |
Control & | cnet, | ||
SerialNumberList & | snlist, | ||
bool | printSummary | ||
) |
Constructs a BundleAdjust object using a Control object.
A new control network object will be created as a copy of the Control's control network.
bundleSettings | A shared pointer to the BundleSettings to be used. |
cnet | The Control object whose control network will be copied. The Control will not be modified by the BundleAdjust. |
snlist | A serial number list containing the cubes to be adjusted. |
printSummary | If summaries should be printed each iteration. |
References Isis::Control::fileName().
Isis::BundleAdjust::BundleAdjust | ( | BundleSettingsQsp | bundleSettings, |
ControlNet & | cnet, | ||
SerialNumberList & | snlist, | ||
bool | printSummary = true |
||
) |
Constructs a BundleAdjust object using a ControlNet object.
A copy of the ControlNet will be used.
bundleSettings | A shared pointer to the BundleSettings to be used. |
cnet | The ControlNet that will be copied. The original ControlNet will not be modified. |
snlist | A serial number list containing the cubes to be adjusted. |
printSummary | If summaries should be printed each iteration. |
Isis::BundleAdjust::BundleAdjust | ( | BundleSettingsQsp | bundleSettings, |
ControlNetQsp | cnet, | ||
const QString & | cubeList, | ||
bool | printSummary = true |
||
) |
Constructs a BundleAdjust from an already created ControlNet within a shared pointer.
bundleSettings | QSharedPointer to the bundle settings to use. |
cnet | QSharedPointer to the control net to adjust. |
cubeList | QString name of list of cubes to create serial numbers for. |
printSummary | Boolean indicating whether to print application output summary. |
Isis::BundleAdjust::BundleAdjust | ( | BundleSettingsQsp | bundleSettings, |
Control & | control, | ||
QList< ImageList * > | imgLists, | ||
bool | printSummary | ||
) |
Thread safe constructor.
bundleSettings | A shared pointer to the BundleSettings to be used. |
control | The Control object whose control network will be copied. The Control will not be modified by the BundleAdjust. |
snlist | A serial number list containing the cubes to be adjusted. |
printSummary | If summaries should be printed each iteration. |
References Isis::SerialNumberList::add(), Isis::Control::fileName(), and Isis::Image::fileName().
Isis::BundleAdjust::~BundleAdjust | ( | ) |
Destroys BundleAdjust object, deallocates pointers (if we have ownership), and frees variables from cholmod library.
|
slot |
Flag to abort when bundle is threaded.
Flag is set outside the bundle thread, typically by the gui thread.
Referenced by Isis::JigsawRunWidget::closeEvent().
|
slot |
Return the updated instrument pointing table for the ith cube in the cube list given to the constructor.
This is only valid for ISIS camera model cubes
i | The index of the cube |
|
slot |
Returns a pointer to the output control network.
|
signal |
|
slot |
Return the ith filename in the cube list file given to constructor.
i | The index of the cube. |
|
signal |
This method returns the image list used in the bundle adjust.
If a QList<ImageList *> was passed into the constructor then it uses that list, otherwise it constructs the QList using the m_serialNumberList
References _FILEINFO_, Isis::ImageList::append(), and Isis::Image::closeCube().
bool Isis::BundleAdjust::isAborted | ( | ) |
Returns if the BundleAdjust has been aborted.
Referenced by Isis::JigsawRunWidget::notifyThreadFinished().
|
slot |
Returns if the BundleAdjust converged.
|
slot |
Returns what iteration the BundleAdjust is currently on.
|
slot |
Returns the iteration summary string.
|
signal |
|
slot |
Return the updated model state for the ith cube in the cube list given to the constructor.
This is only valid for CSM cubes.
i | The index of the cube to get the model state for |
References _FILEINFO_, Isis::Camera::Camera(), Isis::Camera::GetCameraType(), Isis::CSMCamera::getModelState(), and Isis::toString().
|
slot |
Returns the number of images.
References Isis::SerialNumberList::size().
|
slot |
Slot for deltack and jigsaw to output the bundle status.
status | The bundle status string to output. |
References Isis::iApp.
|
signal |
|
signal |
|
slot |
Returns a pointer to the serial number list.
|
slot |
Compute the least squares bundle adjustment solution using Cholesky decomposition.
References _FILEINFO_, Isis::IException::errorType(), Isis::SurfacePoint::GetLatitude(), Isis::SurfacePoint::GetLongitude(), and Isis::SurfacePoint::ResetLocalRadius().
BundleSolutionInfo * Isis::BundleAdjust::solveCholeskyBR | ( | ) |
Compute the least squares bundle adjustment solution using Cholesky decomposition.
@TODO make solveCholesky return a BundleSolutionInfo object and delete this placeholder ???
|
slot |
Return the updated instrument position table for the ith cube in the cube list given to the constructor.
This is only valid for ISIS camera model cubes
i | The index of the cube |
|
signal |
|
signal |