Skip to content
Snippets Groups Projects
Commit aaf6cc65 authored by Guillaume Pasero's avatar Guillaume Pasero
Browse files

BUG: fix prolate interpolate image function

parent 13460c74
No related branches found
No related tags found
No related merge requests found
...@@ -201,15 +201,15 @@ public: ...@@ -201,15 +201,15 @@ public:
TOutput val = itk::NumericTraits<TOutput>::Zero; TOutput val = itk::NumericTraits<TOutput>::Zero;
if (A != itk::NumericTraits<TInput>::Zero && vcl_abs(A) != static_cast<TInput>(m_Radius) && m_Radius != 0) if (A != itk::NumericTraits<TInput>::Zero && vcl_abs(A) != static_cast<TInput>(m_Radius) && m_Radius != 0)
{ {
double ival = static_cast<double>(originalProfileSize) * static_cast<double>(vcl_abs(A)) / double ival = static_cast<double>(originalProfileSize - 1) * static_cast<double>(vcl_abs(A)) /
static_cast<double>(m_Radius); static_cast<double>(m_Radius);
double ivalFloor = vcl_floor(ival); double ivalFloor = vcl_floor(ival);
double left = ival - ivalFloor; double left = ival - ivalFloor;
if (ivalFloor < originalProfileSize - 1) if (static_cast<unsigned int>(ivalFloor) + 1 < originalProfileSize)
{ {
val = left * m_OriginalProfile[static_cast<unsigned int>(ivalFloor)] + val = (1.0 - left) * m_OriginalProfile[static_cast<unsigned int>(ivalFloor)] +
(1 - left) * m_OriginalProfile[static_cast<unsigned int>(ivalFloor) + 1]; left * m_OriginalProfile[static_cast<unsigned int>(ivalFloor) + 1];
} }
else else
{ {
......
...@@ -158,6 +158,8 @@ ImageSimulationMethod< TInputVectorData, TSpatialisation, TSimulationStep1, TSim ...@@ -158,6 +158,8 @@ ImageSimulationMethod< TInputVectorData, TSpatialisation, TSimulationStep1, TSim
m_LabelMapToLabelImageFilter->SetInput(m_Spatialisation->GetOutput()); m_LabelMapToLabelImageFilter->SetInput(m_Spatialisation->GetOutput());
m_LabelMapToSimulatedImageFilter->UpdateOutputInformation();
for (unsigned int i = 0; i < m_NumberOfComponentsPerPixel; ++i) for (unsigned int i = 0; i < m_NumberOfComponentsPerPixel; ++i)
{ {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment