diff --git a/fsl/data/image.py b/fsl/data/image.py
index 3cc6071ff72eb39da53a5ed8abcdf806ddd0dda6..dca8d84c17e09ac5c8212482435e61358e38d9a1 100644
--- a/fsl/data/image.py
+++ b/fsl/data/image.py
@@ -1141,9 +1141,9 @@ class Image(Nifti):
 
         ndims = len(shape)
         data  = self[sliceobj]
+        data  = np.array(data, dtype=dtype, copy=False)
 
         if tuple(data.shape) != tuple(shape):
-            data  = np.array(data, dtype=dtype, copy=False)
             zooms = [float(shape[i]) / data.shape[i] for i in range(ndims)]
             data  = ndimage.zoom(data, zooms, **kwargs)