void HelperClass1<InputImageType, OutputImageType>::ThreadedGenerateData(const OutputImageRegionType& outputRegionForThread, int threadId )
#endif
{
- //std::cout << "HelperClass1::ThreadedGenerateData - IN" << std::endl;
+// std::cout << "HelperClass1::ThreadedGenerateData - IN " << threadId << std::endl;
//Get pointer to the input
typename InputImageType::ConstPointer inputPtr = this->GetInput();
typedef typename OutputImageType::PixelType DisplacementType;
DisplacementType displacement;
inputIt.GoToBegin();
+
+ typename OutputImageType::SizeType size = outputPtr->GetLargestPossibleRegion().GetSize();
//define some temp variables
signed long baseIndex[ImageDimension];
overlap *= 1.0 - distance[dim];
}
upper >>= 1;
+
+ if (neighIndex[dim] >= size[dim])
+ neighIndex[dim] = size[dim] - 1;
}
-
//Set neighbor value only if overlap is not zero
if( (overlap>0.0)) // &&
// (static_cast<unsigned int>(neighIndex[0])<size[0]) &&
++inputIt;
}
- //std::cout << "HelperClass1::ThreadedGenerateData - OUT" << std::endl;
+// std::cout << "HelperClass1::ThreadedGenerateData - OUT " << threadId << std::endl;
}
template<class InputImageType, class OutputImageType > void HelperClass2<InputImageType, OutputImageType>::ThreadedGenerateData(const OutputImageRegionType& outputRegionForThread, int threadId )
#endif
{
- //std::cout << "HelperClass2::ThreadedGenerateData - IN" << std::endl;
+// std::cout << "HelperClass2::ThreadedGenerateData - IN " << threadId << std::endl;
//Get pointer to the input
typename InputImageType::ConstPointer inputPtr = this->GetInput();
}//end while
- //std::cout << "HelperClass2::ThreadedGenerateData - OUT" << std::endl;
+// std::cout << "HelperClass2::ThreadedGenerateData - OUT " << threadId << std::endl;
}//end member
//Update
template <class InputImageType, class OutputImageType> void InvertVFFilter<InputImageType, OutputImageType>::GenerateData()
{
- //std::cout << "InvertVFFilter::GenerateData - IN" << std::endl;
+ // std::cout << "InvertVFFilter::GenerateData - IN" << std::endl;
//Get the properties of the input
typename InputImageType::ConstPointer inputPtr=this->GetInput();
typename HelperClass2Type::Pointer helper2=HelperClass2Type::New();
//Set temporary output as input
+ if(m_NumberOfThreadsIsGiven)helper2->SetNumberOfThreads(m_NumberOfThreads);
helper2->SetInput(temp);
helper2->SetWeights(weights);
helper2->SetEdgePaddingValue(m_EdgePaddingValue);
//Set the output
this->SetNthOutput(0, helper2->GetOutput());
+
+ //std::cout << "InvertVFFilter::GenerateData - OUT" << std::endl;
}