发生异常:TypeError'float'对象不可下标

问题描述

我正在尝试使用python获取一组坐标中的像素值 landsat图像,我的坐标是float类型,它不允许我进行相应的计算,但是我看不到错误代码使我抛出“发生异常:TypeError'float'对象不可下标” 我正在使用gdal模块

import os,sys,time,gdal
from gdalconst import *
startTime = time.time()
xvalues = -103.6238888889
yvalues =  19.3344444444
directorio = str (input("ingrese el directorio de la imagen "))
os.chdir (directorio)
gdal.AllRegister()
ds = gdal.Open('AST_L1T_00302242018173601_20180226112641_11826_T.tif',GA_ReadOnly)
if ds is None:
   print ('Could not open image')
   sys.exit(1)
rows = ds.RasterYSize
cols = ds.RasterXSize
bands = ds.RasterCount
transform = ds.GetGeoTransform()
xOrigin = transform[0]
yOrigin = transform[3]
pixelWidth = transform[1]
pixelHeight = transform[5]
for i in range (1):
    x = xvalues[i]
    y = yvalues[i]
    xOffset = int((x - xOrigin) / pixelWidth)
    yOffset = int((y - yOrigin) / pixelHeight)

    s = str(x) + ' ' + str(y) + ' ' + str(xOffset) + ' ' + str(yOffset) + ' '
    for j in range(bands):
        band = ds.GetRasterBand(j+1) 
    data = band.ReadAsArray(xOffset,yOffset,1,1)
    value = data[0,0]
    s = s + str(value) + ' '
print (s)
endTime = time.time()
print ('The script took ' + str(endTime - startTime) + ' seconds')

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...