template<typename OperandT>
class ImFusion::CT::WeightedL2Pow2< OperandT >
Weighted L2 squared norm functional with diagonal weighting matrix.
Implements \(\frac{1}{2} (Ax-b)^\top W (Ax-b)\) where W is a diagonal weighting matrix.
- Template Parameters
-
| OperandT | Expression type for the weighting |
|
|
| WeightedL2Pow2 (const OperandT &operand, std::unique_ptr< LinearResidual > residual) |
| | Constructor with residual.
|
| |
|
| WeightedL2Pow2 (const OperandT &operand, std::unique_ptr< LinearOperator > A, SharedImageSet *b) |
| | Constructor which implicitly constructs a residual.
|
| |
|
| ~WeightedL2Pow2 () override=default |
| | Destructor.
|
| |
|
| Functional (std::unique_ptr< LinearResidual > residual, bool hessianRequiresResidualEval=true) |
| | Constructor with residual. This residual can be nullptr, which is taken as shorthand for the identity.
|
| |
|
| Functional (std::unique_ptr< LinearOperator > A, SharedImageSet *b, bool hessianRequiresResidualEval=true) |
| | Constructor which implicitly constructs a residual that owns the LinearOperator.
|
| |
|
virtual | ~Functional ()=0 |
| | Destructor.
|
| |
| float | eval (const SharedImageSet &in) const |
| | Evaluates the functional \(f(in)\).
|
| |
| Status | gradient (const SharedImageSet &in, SharedImageSet &out, const Selection *sel=nullptr, const ExprBase *exprOut=nullptr) const |
| | Evaluates the gradient \(\nabla f(in)\).
|
| |
|
template<typename ImplName> |
| Status | gradient (const SharedImageSet &in, SharedImageSet &out, const Selection *sel, const ImageMath::ExprBaseTpl< ImplName > *exprOut) |
| | Convenience function which wraps exprOut in sharedPolyWrapper.
|
| |
| std::unique_ptr< LinearOperator > | hessian (const SharedImageSet &in) const |
| | Evaluates the hessian \(H_f(in)\).
|
| |
|
const LinearResidual * | residual () const |
| | Const getter for m_residual.
|
| |
| void | configure (const Properties *p) override |
| | Configure this object instance by de-serializing the given Properties.
|
| |
| void | configuration (Properties *p) const override |
| | Serialize the current object configuration into the given Properties object.
|
| |
| virtual void | configureDefaults () |
| | Retrieve the properties of this object, replaces values with their defaults and sets it again.
|
| |
|
void | registerParameter (ParameterBase *param) |
| | Register the given Parameter or SubProperty, so that it will be configured during configure()/configuration().
|
| |
|
void | unregisterParameter (const ParameterBase *param) |
| | Remove the given Parameter or SubProperty from the list of registered parameters.
|
| |
|
| Configurable (const Configurable &rhs) |
| |
|
| Configurable (Configurable &&rhs) noexcept |
| |
|
Configurable & | operator= (const Configurable &) |
| |
|
Configurable & | operator= (Configurable &&) noexcept |
| |