python tif转png_python – Scipy:将RGB TIFF转换为灰度TIFF并在...

我想在TIFF文件中操作RGB波段并在matplotlib上输出灰度图.到目前为止,我有这个代码,但我无法在灰度上得到它:

import scipy as N

import gdal

import sys

import matplotlib.pyplot as pyplot

tif = gdal.Open('filename.tif')

band1 = tif.GetRasterBand(1)

band2 = tif.GetRasterBand(2)

band3 = tif.GetRasterBand(3)

red = band1.ReadAsArray()

green = band2.ReadAsArray()

blue = band3.ReadAsArray()

gray = (0.299*red + 0.587*green + 0.114*blue)

pyplot.figure()

pyplot.imshow(gray)

pylab.show()

这些是数组:

[[255 255 255 ..., 237 237 251]

[255 255 255 ..., 237 237 251]

[255 255 255 ..., 237 237 251]

...,

[237 237 237 ..., 237 237 251]

[237 237 237 ..., 237 237 251]

[242 242 242 ..., 242 242 252]]

[[255 255 255 ..., 239 239 251]

[255 255 255 ..., 239 239 251]

[255 255 255 ..., 239 239 251]

...,

[239 239 239 ..., 239 239 251]

[239 239 239 ..., 239 239 251]

[243 243 243 ..., 243 243 252]]

[[255 255 255 ..., 234 234 250]

[255 255 255 ..., 234 234 250]

[255 255 255 ..., 234 234 250]

...,

[234 234 234 ..., 234 234 250]

[234 234 234 ..., 234 234 250]

[239 239 239 ..., 239 239 251]]

知道我该如何解决这个问题?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值