每当我在python中打开正射影像的GeoTIFF图像(尝试过PIL,matplotlib,scipy,openCV)时,图像都会闪烁。有些角落正在裁剪,但图像保持其原始形状。如果我手动将tif转换为例如Photoshop中的png并加载它,它确实可以正常工作。因此,似乎PIL在处理tif文件时遇到一些问题,这些文件的对象不能填满整个画布。有没有人有这个问题的解决方案?
原始图片的一部分:
打开后:
答案 0 :(得分:3)
如果你把你正在使用的数字的链接(如果它是免费的),那将是非常好的。我从here下载了一个示例GeoTIFF图像,并使用gdal打开它。
geotiff.ReadAsArray()
的形状为(3, 1024, 2048)
,因此我将其转换为(1024, 2048, 3)
(RGB)并使用imshow
打开它:
import gdal
gdal.UseExceptions()
import matplotlib.pyplot as plt
import numpy as np
geotiff = gdal.Open('/home/vafanda/Downloads/test.tif')
geotiff_arr= geotiff.ReadAsArray()
print np.shape(geotiff_arr)
geotiff_shifted = np.rollaxis(geotiff_arr,0,3)
print "Dimension converted to: "
print np.shape(geotiff_shifted)
plt.imshow(geotiff_shifted)
plt.show()
结果: