Widget for rigid registration. More...
#include <QmitkSPSAOptimizerView.h>


Public Member Functions | |
| QmitkSPSAOptimizerView (QWidget *parent=0, Qt::WindowFlags f=0) | |
| ~QmitkSPSAOptimizerView () | |
| virtual itk::Object::Pointer | GetOptimizer () |
| virtual itk::Array< double > | GetOptimizerParameters () |
| virtual void | SetOptimizerParameters (itk::Array< double > metricValues) |
| virtual void | SetNumberOfTransformParameters (int transformParameters) |
| virtual QString | GetName () |
| virtual void | SetupUI (QWidget *parent) |
Protected Attributes | |
| Ui::QmitkSPSAOptimizerControls | m_Controls |
| int | m_NumberTransformParameters |
Widget for rigid registration.
Displays options for rigid registration.
Definition at line 33 of file QmitkSPSAOptimizerView.h.
| QmitkSPSAOptimizerView::QmitkSPSAOptimizerView | ( | QWidget * | parent = 0, |
| Qt::WindowFlags | f = 0 |
||
| ) |
Definition at line 22 of file QmitkSPSAOptimizerView.cpp.
: QmitkRigidRegistrationOptimizerGUIBase (parent, f), m_NumberTransformParameters(16) { }
| QmitkSPSAOptimizerView::~QmitkSPSAOptimizerView | ( | ) |
Definition at line 28 of file QmitkSPSAOptimizerView.cpp.
{
}
| QString QmitkSPSAOptimizerView::GetName | ( | ) | [virtual] |
Implements QmitkRigidRegistrationOptimizerGUIBase.
Definition at line 88 of file QmitkSPSAOptimizerView.cpp.
{
return "SPSA";
}
| itk::Object::Pointer QmitkSPSAOptimizerView::GetOptimizer | ( | ) | [virtual] |
Implements QmitkRigidRegistrationOptimizerGUIBase.
Definition at line 32 of file QmitkSPSAOptimizerView.cpp.
References Ui_QmitkSPSAOptimizerControls::m_AlphaSPSA, Ui_QmitkSPSAOptimizerControls::m_ASPSA, Ui_QmitkSPSAOptimizerControls::m_aSPSA, m_Controls, Ui_QmitkSPSAOptimizerControls::m_cSPSA, Ui_QmitkSPSAOptimizerControls::m_GammaSPSA, Ui_QmitkSPSAOptimizerControls::m_IterationsSPSA, Ui_QmitkSPSAOptimizerControls::m_Maximize, Ui_QmitkSPSAOptimizerControls::m_MinimumNumberOfIterationsSPSA, Ui_QmitkSPSAOptimizerControls::m_NumberOfPerturbationsSPSA, Ui_QmitkSPSAOptimizerControls::m_StateOfConvergenceDecayRateSPSA, and Ui_QmitkSPSAOptimizerControls::m_ToleranceSPSA.
{
itk::SPSAOptimizer::Pointer OptimizerPointer = itk::SPSAOptimizer::New();
OptimizerPointer->SetMaximize( m_Controls.m_Maximize->isChecked() );
OptimizerPointer->Seta( m_Controls.m_aSPSA->text().toFloat() );
OptimizerPointer->SetA( m_Controls.m_ASPSA->text().toFloat() );
OptimizerPointer->SetAlpha( m_Controls.m_AlphaSPSA->text().toFloat() );
OptimizerPointer->Setc( m_Controls.m_cSPSA->text().toFloat() );
OptimizerPointer->SetGamma( m_Controls.m_GammaSPSA->text().toFloat() );
OptimizerPointer->SetTolerance(m_Controls.m_ToleranceSPSA->text().toFloat());
OptimizerPointer->SetStateOfConvergenceDecayRate(m_Controls.m_StateOfConvergenceDecayRateSPSA->text().toFloat());
OptimizerPointer->SetMinimumNumberOfIterations(m_Controls.m_MinimumNumberOfIterationsSPSA->text().toInt());
OptimizerPointer->SetNumberOfPerturbations(m_Controls.m_NumberOfPerturbationsSPSA->text().toInt());
OptimizerPointer->SetMaximumNumberOfIterations(m_Controls.m_IterationsSPSA->text().toInt());
return OptimizerPointer.GetPointer();
}
| itk::Array< double > QmitkSPSAOptimizerView::GetOptimizerParameters | ( | ) | [virtual] |
Implements QmitkRigidRegistrationOptimizerGUIBase.
Definition at line 49 of file QmitkSPSAOptimizerView.cpp.
References Ui_QmitkSPSAOptimizerControls::m_AlphaSPSA, Ui_QmitkSPSAOptimizerControls::m_ASPSA, Ui_QmitkSPSAOptimizerControls::m_aSPSA, m_Controls, Ui_QmitkSPSAOptimizerControls::m_cSPSA, Ui_QmitkSPSAOptimizerControls::m_GammaSPSA, Ui_QmitkSPSAOptimizerControls::m_IterationsSPSA, Ui_QmitkSPSAOptimizerControls::m_Maximize, Ui_QmitkSPSAOptimizerControls::m_MinimumNumberOfIterationsSPSA, Ui_QmitkSPSAOptimizerControls::m_NumberOfPerturbationsSPSA, Ui_QmitkSPSAOptimizerControls::m_StateOfConvergenceDecayRateSPSA, and Ui_QmitkSPSAOptimizerControls::m_ToleranceSPSA.
{
itk::Array<double> optimizerValues;
optimizerValues.SetSize(3);
optimizerValues.fill(0);
optimizerValues[0] = m_Controls.m_Maximize->isChecked();
optimizerValues[1] = m_Controls.m_aSPSA->text().toFloat();
optimizerValues[2] = m_Controls.m_ASPSA->text().toFloat();
optimizerValues[3] = m_Controls.m_AlphaSPSA->text().toFloat();
optimizerValues[4] = m_Controls.m_cSPSA->text().toFloat();
optimizerValues[5] = m_Controls.m_GammaSPSA->text().toFloat();
optimizerValues[6] = m_Controls.m_ToleranceSPSA->text().toFloat();
optimizerValues[7] = m_Controls.m_StateOfConvergenceDecayRateSPSA->text().toFloat();
optimizerValues[8] = m_Controls.m_MinimumNumberOfIterationsSPSA->text().toInt();
optimizerValues[9] = m_Controls.m_NumberOfPerturbationsSPSA->text().toInt();
optimizerValues[10] = m_Controls.m_IterationsSPSA->text().toInt();
return optimizerValues;
}
| void QmitkSPSAOptimizerView::SetNumberOfTransformParameters | ( | int | transformParameters ) | [virtual] |
Implements QmitkRigidRegistrationOptimizerGUIBase.
Definition at line 83 of file QmitkSPSAOptimizerView.cpp.
References m_NumberTransformParameters.
{
m_NumberTransformParameters = transformParameters;
}
| void QmitkSPSAOptimizerView::SetOptimizerParameters | ( | itk::Array< double > | metricValues ) | [virtual] |
Implements QmitkRigidRegistrationOptimizerGUIBase.
Definition at line 68 of file QmitkSPSAOptimizerView.cpp.
References Ui_QmitkSPSAOptimizerControls::m_AlphaSPSA, Ui_QmitkSPSAOptimizerControls::m_ASPSA, Ui_QmitkSPSAOptimizerControls::m_aSPSA, m_Controls, Ui_QmitkSPSAOptimizerControls::m_cSPSA, Ui_QmitkSPSAOptimizerControls::m_GammaSPSA, Ui_QmitkSPSAOptimizerControls::m_IterationsSPSA, Ui_QmitkSPSAOptimizerControls::m_Maximize, Ui_QmitkSPSAOptimizerControls::m_MinimumNumberOfIterationsSPSA, Ui_QmitkSPSAOptimizerControls::m_NumberOfPerturbationsSPSA, Ui_QmitkSPSAOptimizerControls::m_StateOfConvergenceDecayRateSPSA, and Ui_QmitkSPSAOptimizerControls::m_ToleranceSPSA.
{
m_Controls.m_Maximize->setChecked(optimizerValues[0]);
m_Controls.m_aSPSA->setText(QString::number(optimizerValues[1]));
m_Controls.m_ASPSA->setText(QString::number(optimizerValues[2]));
m_Controls.m_AlphaSPSA->setText(QString::number(optimizerValues[3]));
m_Controls.m_cSPSA->setText(QString::number(optimizerValues[4]));
m_Controls.m_GammaSPSA->setText(QString::number(optimizerValues[5]));
m_Controls.m_ToleranceSPSA->setText(QString::number(optimizerValues[6]));
m_Controls.m_StateOfConvergenceDecayRateSPSA->setText(QString::number(optimizerValues[7]));
m_Controls.m_MinimumNumberOfIterationsSPSA->setText(QString::number(optimizerValues[8]));
m_Controls.m_NumberOfPerturbationsSPSA->setText(QString::number(optimizerValues[9]));
m_Controls.m_IterationsSPSA->setText(QString::number(optimizerValues[10]));
}
| void QmitkSPSAOptimizerView::SetupUI | ( | QWidget * | parent ) | [virtual] |
Implements QmitkRigidRegistrationOptimizerGUIBase.
Definition at line 93 of file QmitkSPSAOptimizerView.cpp.
References Ui_QmitkSPSAOptimizerControls::m_AlphaSPSA, Ui_QmitkSPSAOptimizerControls::m_ASPSA, Ui_QmitkSPSAOptimizerControls::m_aSPSA, m_Controls, Ui_QmitkSPSAOptimizerControls::m_cSPSA, Ui_QmitkSPSAOptimizerControls::m_GammaSPSA, Ui_QmitkSPSAOptimizerControls::m_IterationsSPSA, Ui_QmitkSPSAOptimizerControls::m_MinimumNumberOfIterationsSPSA, Ui_QmitkSPSAOptimizerControls::m_NumberOfPerturbationsSPSA, Ui_QmitkSPSAOptimizerControls::m_StateOfConvergenceDecayRateSPSA, Ui_QmitkSPSAOptimizerControls::m_ToleranceSPSA, and Ui_QmitkSPSAOptimizerControls::setupUi().
{
m_Controls.setupUi(parent);
QValidator* validatorLineEditInput = new QIntValidator(0, 20000000, this);
m_Controls.m_MinimumNumberOfIterationsSPSA->setValidator(validatorLineEditInput);
m_Controls.m_NumberOfPerturbationsSPSA->setValidator(validatorLineEditInput);
m_Controls.m_IterationsSPSA->setValidator(validatorLineEditInput);
QValidator* validatorLineEditInputFloat = new QDoubleValidator(0, 20000000, 8, this);
m_Controls.m_aSPSA->setValidator(validatorLineEditInputFloat);
m_Controls.m_ASPSA->setValidator(validatorLineEditInputFloat);
m_Controls.m_AlphaSPSA->setValidator(validatorLineEditInputFloat);
m_Controls.m_cSPSA->setValidator(validatorLineEditInputFloat);
m_Controls.m_GammaSPSA->setValidator(validatorLineEditInputFloat);
m_Controls.m_ToleranceSPSA->setValidator(validatorLineEditInputFloat);
m_Controls.m_StateOfConvergenceDecayRateSPSA->setValidator(validatorLineEditInputFloat);
}
Definition at line 56 of file QmitkSPSAOptimizerView.h.
Referenced by GetOptimizer(), GetOptimizerParameters(), SetOptimizerParameters(), and SetupUI().
int QmitkSPSAOptimizerView::m_NumberTransformParameters [protected] |
Definition at line 58 of file QmitkSPSAOptimizerView.h.
Referenced by SetNumberOfTransformParameters().
1.7.2