2

Python と MatPlotLib を使用してグレースケールの TIFF ファイルを表示しようとしていますが、

これまでのところ、次のファイルを読みました。

import scipy as N
import gdal
import sys
import matplotlib.pyplot as pyplot

try:
    tif = gdal.Open('filename.tif')
    tifArray = tif.ReadAsArray()
except:
    print 'The file does not exist.'
    sys.exit(0)

band1 = tif.GetRasterBand(1)
band2 = tif.GetRasterBand(2)
band3 = tif.GetRasterBand(3)

band1Array = band1.ReadAsArray()
band2Array = band2.ReadAsArray()
band3Array = band3.ReadAsArray()

でも、他に何をすればいいのかわからない... 私はとても無知です。誰でもこれで私を助けてくれますか?

4

1 に答える 1

9

ファイルを 2 配列に処理したら、2D 配列をプロットする matplotlib の任意の関数 (例: cmap、imshow など) を使用できます。

ビー玉の例の出力は次のとおりです

img=mpimg.imread('MARBLES.TIF ')
imgplot = plt.imshow(img)

画像の band3 のみを表示すると、次のようになります。

imgplot2 = plt.imshow(band3Array)
plt.show()

ビー玉のband3

MPL と 2D 配列関数での画像表示をさらに調べます...

于 2012-04-30T06:07:25.313 に答える