概要
ラスターが格納されたフォルダー (ワークスペース) を指定し、その中にあるラスターのプロパティ (セルサイズや空間参照) などを CSV ファイルに出力するためのサンプル コードです。
サンプル コード
ここでは、ラスターの名称、空間参照、セル数、バンド数、タイプ (格納された値のタイプ) を取得する処理を紹介します。
# ArcPy サイト パッケージ、os モジュールをインポートします。
import arcpy, os
#ラスターが格納されたワークスペースを設定します。
path = r"C:gis_worktest.gdb"
arcpy.env.workspace = path
# 出力先の csv ファイルを書き込みモードで開きます。
f = open("c:/gis_work/RasterList.csv", "w")
# ヘッダーを付与します。
outputLine = u"名称,空間参照,セル数X,セル数Y,バンド数,タイプ n"
f.write(outputLine.encode("SHIFT-JIS"))
# ラスター数分ループします。
rasters = arcpy.ListRasters("*", "ALL")
for ras in rasters:
rname = arcpy.Raster(ras).name
rsrnname = arcpy.Raster(ras).spatialReference.name
rcellW = arcpy.Raster(ras).meanCellWidth
rcellH = arcpy.Raster(ras).meanCellHeight
rband = arcpy.Raster(ras).bandCount
rtype = arcpy.Raster(ras).pixelType
outputLine = rname + "," + rsrnname + "," + str(rcellW) + "," + str(rcellH) + "," + str(rband) + "," + rtype + "n"
f.write(outputLine.encode("SHIFT-JIS"))
# オブジェクト参照を削除します。
del rasters,ras
#ファイルを閉じます。
f.close()
補足情報
ArcPy で画像処理をしてみよう ~その1:ラスタオブジェクトとプロパティ
このナレッジはお役に立ちましたか?
フィードバックをいただきありがとうございます!