首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >读取ENVI.dat时出现Python Arcpy.describe问题

读取ENVI.dat时出现Python Arcpy.describe问题
EN

Stack Overflow用户
提问于 2014-11-06 09:51:41
回答 1查看 355关注 0票数 0

这可能看起来微不足道,但我似乎可以跟踪错误,而且我是Python的新手,尽管不是编程的新手。在互联网上看了一会儿,我认为我的问题是.dat ENVI图像文件没有被读取为“描述对象”。但是我怎么才能让它被这样读呢?我可能也需要它来读取标题信息,有什么解决方案吗?

下面是我的代码:

代码语言:javascript
复制
import arcpy #make sure you run the python associated with ArcGIS
import os

filepath = 'filepath'
filename = 'filename'
band_names = range(1,225)

# Path creation
in_folder = filepath + os.sep + 'ENVI'
out_folder = filepath + os.sep + 'GeoTIFF' # preferably an empty folder

# input multiband raster
in_ENVI = in_folder + filename '.dat'
in_raster = raster(in_ENVI)
index = 0

# get raster information specific to each band
desc = arcpy.Describe(in_raster)

################### THIS IS WHERE I GET THE ERROR ##################
Runtime error 
Traceback (most recent call last):
  File "<string>", line 23, in <module>
NameError: name 'raster' is not defined
################### SCRIPT TERMINATED ##############################

for band in desc.children:
    print band
    bandName = band.name
    band_path = os.path.join(in_raster, bandName)
    dest_path = os.path.join(out_folder, filename '_' + band_names(index) + '.tif')
    arcpy.CopyRaster_management(band_path, dest_path, "", "", "", "NONE", "NONE", "")
    index = index + 1
EN

回答 1

Stack Overflow用户

发布于 2014-11-07 02:30:54

好的,实际上我自己弄明白了。下面是我使用的代码。错误实际上不是出现在arcpy.Describe()中,而是出现在arcpy.CopyRaster_management中,因为我没有将band_nameindex转换为字符串。

代码语言:javascript
复制
dest_path = os.path.join(out_folder, filename + str(band_names[index]) + '.tif')
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26770457

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档