ANIMA  4.0
animaTensorBlockMatcher.h
Go to the documentation of this file.
1 #pragma once
3 
4 namespace anima
5 {
6 
7 template <typename TInputImageType>
8 class TensorBlockMatcher : public anima::BaseAffineBlockMatcher <TInputImageType>
9 {
10 public:
12  virtual ~TensorBlockMatcher() {}
13 
15  {
20  };
21 
23  {
24  None = 0,
27  };
28 
31  typedef typename Superclass::PointType PointType;
36 
37  bool GetMaximizedMetric();
38  void SetSimilarityType(SimilarityDefinition val) {m_SimilarityType = val;}
39 
40  void SetModelRotationType(ModelRotationType val) {m_ModelRotationType = val;}
41 
42 protected:
43  virtual MetricPointer SetupMetric();
44  virtual double ComputeBlockWeight(double val, unsigned int block);
45 
46  virtual void BlockMatchingSetup(MetricPointer &metric, unsigned int block);
47 
48 private:
49  SimilarityDefinition m_SimilarityType;
50  ModelRotationType m_ModelRotationType;
51 };
52 
53 } // end namespace anima
54 
virtual double ComputeBlockWeight(double val, unsigned int block)
BaseAffineBlockMatcher< TInputImageType > Superclass
virtual MetricPointer SetupMetric()
virtual void BlockMatchingSetup(MetricPointer &metric, unsigned int block)
BaseInputTransformType::Pointer BaseInputTransformPointer
Superclass::AgregatorType AgregatorType
Superclass::MetricPointer MetricPointer
InputImageType::PointType PointType
void SetModelRotationType(ModelRotationType val)
OptimizerType::Pointer OptimizerPointer
Superclass::OptimizerPointer OptimizerPointer
Superclass::BaseInputTransformPointer BaseInputTransformPointer
Superclass::PointType PointType
void SetSimilarityType(SimilarityDefinition val)
Superclass::InputImageType InputImageType
Superclass::MetricPointer MetricPointer