22 #include "CommonTypes.h"
24 #include "ModelInfo.h"
25 #include "Representer.h"
26 #include "StatisticalModel.h"
34 template<
class TPo
int>
49 virtual double operator()(
const TPoint& x,
const TPoint& y)
const = 0;
62 template<
class TPo
int>
77 const TPoint& y)
const = 0;
100 class StatisticalModelKernel:
public MatrixValuedKernel<typename Representer<T>::PointType > {
104 typedef typename RepresenterType::PointType PointType;
108 MatrixValuedKernel<PointType>(model->GetRepresenter()->GetDimensions()), m_statisticalModel(model) {
111 virtual ~StatisticalModelKernel() {
114 inline MatrixType
operator()(
const PointType& x,
const PointType& y)
const {
115 MatrixType m = m_statisticalModel->GetCovarianceAtPoint(x, y);
119 std::string GetKernelInfo()
const {
120 return "StatisticalModelKernel";
131 #endif // __KERNELS_H
virtual double operator()(const TPoint &x, const TPoint &y) const =0
virtual unsigned GetDimension() const
Definition: Kernels.h:82
virtual MatrixType operator()(const TPoint &x, const TPoint &y) const =0
A trivial representer, that does no representation at all, but works directly with vectorial data...
Definition: TrivialVectorialRepresenter.h:83
virtual std::string GetKernelInfo() const =0
MatrixValuedKernel(unsigned dim)
Definition: Kernels.h:69
ScalarValuedKernel()
Definition: Kernels.h:41
virtual std::string GetKernelInfo() const =0
ITK Wrapper for the statismo::StatisticalModel class.
Definition: itkStatisticalModel.h:62