X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=filters%2FclitkImageArithmGenericFilter.txx;h=9679d028e4ffa1cd5dd4f846954b79a2c999371d;hb=d1ce705178f497e18fe7bc2c4115001a0755106d;hp=b7804ffdbc1ade1a3603c5bd4455fc9c58168056;hpb=0b7c9b1e1215634b02cbd38d4e4ba101d6111ba8;p=clitk.git diff --git a/filters/clitkImageArithmGenericFilter.txx b/filters/clitkImageArithmGenericFilter.txx index b7804ff..9679d02 100644 --- a/filters/clitkImageArithmGenericFilter.txx +++ b/filters/clitkImageArithmGenericFilter.txx @@ -37,10 +37,7 @@ namespace clitk template template void ImageArithmGenericFilter::InitializeImageType() { - ADD_IMAGE_TYPE(Dim, char); - ADD_IMAGE_TYPE(Dim, uchar); - ADD_IMAGE_TYPE(Dim, short); - ADD_IMAGE_TYPE(Dim, float); + ADD_DEFAULT_IMAGE_TYPES(Dim); } //-------------------------------------------------------------------- @@ -96,7 +93,6 @@ namespace clitk void ImageArithmGenericFilter::UpdateWithInputImageType() { // Read input1 typename ImageType::Pointer input1 = this->template GetInput(0); - typename ImageType::PixelType PixelType; // Set input image iterator typedef itk::ImageRegionIterator IteratorType; @@ -114,7 +110,7 @@ namespace clitk } // Check if overwrite and outputisfloat and pixeltype is not float -> do not overwrite - if (mOverwriteInputImage && mOutputIsFloat && (typeid(PixelType) != typeid(float))) { + if (mOverwriteInputImage && mOutputIsFloat && (typeid(typename ImageType::PixelType) != typeid(float))) { // std::cerr << "Warning. Could not use both mOverwriteInputImage and mOutputIsFloat, because input is " // << typeid(PixelType).name() // << std::endl; @@ -210,7 +206,7 @@ namespace clitk break; case 5: // Absolute difference while (!ito.IsAtEnd()) { - ito.Set(PixelTypeDownCast(fabs(it2.Get()-it1.Get()))); + ito.Set(PixelTypeDownCast(fabs((double)it2.Get()-(double)it1.Get()))); ++it1; ++it2; ++ito; } break;