diff --git a/modules/img/alg/src/fourier_filters.cc b/modules/img/alg/src/fourier_filters.cc
index a1b355b2d9d7f6c72e5c286b6fb17ea080bb5469..57462ecfeae38dc26f31a210e5fd8b63b334506e 100644
--- a/modules/img/alg/src/fourier_filters.cc
+++ b/modules/img/alg/src/fourier_filters.cc
@@ -58,7 +58,7 @@ public:
       Vec3 d=is.GetSampling().GetPixelSampling();
       Real F=calcF(Point(it),d);
       Real value = (F <= limit_ ? 1.0 : 0.0);
-      is.Value(it)*=value;
+      is.Value(it)*=Val2Val<Real,T>(value);
     }
   }
 
@@ -91,7 +91,7 @@ public:
       Vec3 d=is.GetSampling().GetPixelSampling();
       Real F=calcF(Point(it),d);
       Real value= (F >= limit_ ? 1.0 : 0.0);
-      is.Value(it)*=value;
+      is.Value(it)*=Val2Val<Real,T>(value);
     }
   }
 
@@ -123,7 +123,7 @@ public:
       Vec3 d=is.GetSampling().GetPixelSampling();
       Real F=calcF(Point(it),d);
       Real value=exp(-F*F/(2.0*limit_*limit_));
-      is.Value(it)*=value;
+      is.Value(it)*=Val2Val<Real,T>(value);
     }
   }
 
@@ -155,7 +155,7 @@ public:
       Vec3 d=is.GetSampling().GetPixelSampling();
       Real F=calcF(Point(it),d);
       Real value=1.0-exp(-F*F/(2.0*limit_*limit_));
-      is.Value(it)*=value;
+      is.Value(it)*=Val2Val<Real,T>(value);
     }
   }
 
@@ -195,7 +195,7 @@ public:
         Real F=calcF(Point(it),d);
         Real teff=t_*t_/l2*F*(t_>=0?1.0:-1.0);
         Real value=1.0/(1.0+exp((F-limit_)/(teff)));
-        is.Value(it)*=value;
+        is.Value(it)*=Val2Val<Real,T>(value);
       }
     }
   }
@@ -235,7 +235,7 @@ public:
       Vec3 d=is.GetSampling().GetPixelSampling();
       Real F=calcF(Point(it),d);
       Real value=(1.0/(sqrt(1+pow(F/rad,Real(2.0)*order))));
-      is.Value(it)*=value;
+      is.Value(it)*=Val2Val<Real,T>(value);
     }
   }
 
diff --git a/modules/img/base/src/extent_mask.cc b/modules/img/base/src/extent_mask.cc
index 9551959620941b5da82ffa2a0d64dc653ed80ede..bf8fbb45383bf37219eed374807be2f043de0c7b 100644
--- a/modules/img/base/src/extent_mask.cc
+++ b/modules/img/base/src/extent_mask.cc
@@ -41,7 +41,7 @@ MaskPtr ExtentMask::Clone()
 }
 bool ExtentMask::IsInside(const Vec2& v)
 {
-  return Contains(Point(floor(v[0]),floor(v[1])));
+  return Contains(Point(static_cast<int>(floor(v[0])),static_cast<int>(floor(v[1]))));
 }
 
 void ExtentMask::Shift(const Vec2& v)