I am trying to edit .tif rasters in python, but I have some issues regarding the tiff to array conversion. I read there are multiple options for opening rasters (gdal, PIL, matplotlib), but which of those is the best for allowing me to convert to array, edit (apply local filters), then convert back to .tif?
For example, I get a strange result when opening arrays from a .tif raster using PIL library.
The code looks like this:
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import matplotlib.cm as cm
import numpy as np
import pywt as pw
import tkFileDialog as tk
from PIL import Image
def fct(fisier):
img = Image.open(fisier)
arr=np.array(img, dtype=np.float)
plt.imshow(arr, cmap=cm.Greys_r)
plt.show()
print(arr)
return arr, img
file = tk.askopenfile(initialdir='C:/temp', mode='rb')
fct(file)
But the array that is displayd in all white, and has this form:
[[ -2.14748365e+09 -2.14748365e+09 -2.14748365e+09 ..., 0.00000000e+00
0.00000000e+00 6.19762981e+08]
What do I need to do in order to open the tiff raster as an array, so I can edit it further?
No comments:
Post a Comment