itkPointSetToPointSetMetricv4 and EuclideanDistancePointSetToPointSetMetricv4 Help

I’m trying to set up a metric for the EuclideanDistancePointSetToPointSetMetricv4 class

using MetricType = EuclideanDistancePointSetToPointSetMetricv4<FixedPointSetType, MovingPointSetType>;
    MetricType::Pointer metric = MetricType::New();

I’m using this registration method:

using RegistrationType = itk::PointSetToPointSetRegistrationMethod<FixedPointSetType, MovingPointSetType>;

RegistrationType::Pointer registration = RegistrationType::New();

I go to commit the metric like this:

registration->SetMetric(metric);

But I get an error.

cannot convert argument 1 from 'itk::SmartPointer<itk::EuclideanDistancePointSetToPointSetMetricv4<FixedPointSetType,MovingPointSetType,double>>' to 'itk::PointSetToPointSetMetric<itk::PointSet<float,3,itk::DefaultStaticMeshTraits<TPixelType,3,3,float,float,TPixelType>
>,itk::PointSet<TPixelType,3,itk::DefaultStaticMeshTraits<TPixelType,3,3,float,float,TPixelType>>> *'
> 1>        with
> 1>        [
> 1>            TPixelType=float
> 1>        ]

What should I be doing to get this set correctly?
Thanks,
~Shane

I did find something here: https://itk.org/ITKExamples/src/Registration/Metricsv4/PerformRegistrationOnVectorImages/Documentation.html

I think this is might help.

1 Like