How to open float 32-bit images?

I am using this code (source: python - How to save 2D float numpy arrays losslessly into a grayscale image while preserving resolution? - Stack Overflow)

import numpy as np                                               
from PIL import Image

reloaded = np.array(Image.open('uav_image.tif'))

But I got this error:

  File "/home/test/.local/lib/python3.9/site-packages/PIL/Image.py", line 3008, in open
    raise UnidentifiedImageError(
PIL.UnidentifiedImageError: cannot identify image file 'uav_image.tif'

Is this problem of my image? Because other uav images i tested (but RGB, not grayscale) are ok with the above code…