I don't see another conversion to float if `sigma=0` were input. If the rest of the algorithm is expecting a float image, particularly the Cython buffers, an `else` statement may be needed here.