26 #ifndef LIBRARIES_RECONSTRUCTION_ITERATIVE_ALIGNMENT_ESTIMATOR_H_ 27 #define LIBRARIES_RECONSTRUCTION_ITERATIVE_ALIGNMENT_ESTIMATOR_H_ 53 m_rot_est(rot_estimator),
54 m_shift_est(shift_estimator),
55 m_meritComputer(meritComputer),
56 m_threadPool(threadPool),
57 m_transformer(interpolator) {
58 m_sameEstimators = ((
void*)&m_shift_est == (
void*)&m_rot_est);
69 const T *orig, T *copy,
bool hasSingleOrig);
77 bool m_sameEstimators;
81 template<
typename U,
typename F>
83 const U &newVals,
const F &func);
static void sApplyTransform(ctpl::thread_pool &pool, const Dimensions &dims, const AlignmentEstimation &estimation, const T *orig, T *copy, bool hasSingleOrig)
AlignmentEstimation compute(const T *others, unsigned iters=3)
void loadReference(const T *ref)
IterativeAlignmentEstimator(ARotationEstimator< T > &rot_estimator, AShiftEstimator< T > &shift_estimator, BSplineGeoTransformer< T > &interpolator, AMeritComputer< T > &meritComputer, ctpl::thread_pool &threadPool)